/*
 * OTTPROVIDERS Professional
 * Light interface for WHMCS 8.12.1 / Twenty-One.
 */

:root {
    --otp-navy-950: #153364;
    --otp-navy-900: #0b172a;
    --otp-navy-800: #13233b;
    --otp-blue-700: #075fc8;
    --otp-blue-600: #0b73e0;
    --otp-blue-500: #1689f3;
    --otp-cyan-500: #13b8d4;
    --otp-green-600: #159462;
    --otp-red-600: #cf3f4f;
    --otp-amber-600: #ba7513;
    --otp-slate-950: #111827;
    --otp-slate-800: #27364a;
    --otp-slate-700: #415169;
    --otp-slate-600: #627189;
    --otp-slate-500: #7c8aa0;
    --otp-slate-300: #cad3df;
    --otp-slate-200: #dfe5ed;
    --otp-slate-100: #edf1f6;
    --otp-slate-50: #f6f8fb;
    --otp-white: #ffffff;
    --otp-radius-sm: 8px;
    --otp-radius-md: 12px;
    --otp-radius-lg: 16px;
    --otp-shadow-sm: 0 2px 8px rgba(21, 51, 100, .045);
    --otp-shadow-md: 0 12px 32px rgba(21, 51, 100, .08);
    --otp-shadow-focus: 0 0 0 3px rgba(11, 115, 224, .14);
}

html {
    min-height: 100%;
    background: var(--otp-navy-950);
}

body.otp-theme {
    min-height: 100vh;
    background: var(--otp-slate-50);
    color: var(--otp-slate-800);
    font-family: "Open Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    font-size: 15px;
    line-height: 1.6;
    -webkit-font-smoothing: antialiased;
}

.otp-theme a {
    color: var(--otp-blue-700);
    transition: color .16s ease, background-color .16s ease, border-color .16s ease, box-shadow .16s ease, transform .16s ease;
}

.otp-theme a:hover {
    color: var(--otp-blue-600);
    text-decoration: none;
}

.otp-theme ::selection {
    background: rgba(19, 184, 212, .22);
    color: var(--otp-navy-950);
}

.otp-theme .container {
    width: 100%;
    max-width: 1240px;
}

.otp-theme h1,
.otp-theme h2,
.otp-theme h3,
.otp-theme h4,
.otp-theme h5,
.otp-theme h6 {
    color: var(--otp-slate-950);
    font-weight: 700;
    letter-spacing: -.025em;
}

.otp-theme .text-muted {
    color: var(--otp-slate-600) !important;
}

/* Header */
.otp-theme .header {
    position: relative;
    z-index: 1040;
    background: var(--otp-white);
    box-shadow: 0 1px 0 var(--otp-slate-200);
}

.otp-theme .header.is-scrolled {
    box-shadow: 0 8px 28px rgba(21, 51, 100, .1);
}

.otp-theme .topbar {
    min-height: 38px;
    padding: 0;
    background: var(--otp-navy-950);
    color: rgba(255, 255, 255, .74);
    border: 0;
}

.otp-theme .topbar .btn,
.otp-theme .topbar .input-group-text {
    min-height: 38px;
    padding: 7px 11px;
    background: transparent;
    border: 0;
    border-radius: 0;
    color: rgba(255, 255, 255, .74);
    font-size: 12px;
}

.otp-theme .topbar .btn:hover,
.otp-theme .topbar .btn:focus,
.otp-theme .topbar .btn-active-client {
    color: var(--otp-white);
    box-shadow: none;
}

.otp-theme .topbar .btn-active-client span {
    padding-bottom: 2px;
    border-bottom: 1px dashed rgba(255, 255, 255, .5);
}

.otp-theme .topbar #accountNotifications > i {
    color: var(--otp-cyan-500);
    margin-right: 5px;
}

.otp-theme .header > .navbar.navbar-light {
    min-height: 76px;
    padding: 12px 0;
    background: var(--otp-white);
}

.otp-theme .navbar-brand {
    display: inline-flex;
    align-items: center;
    min-height: 44px;
    color: var(--otp-navy-950) !important;
    font-size: 19px;
    font-weight: 800;
    letter-spacing: -.035em;
}

.otp-theme .navbar-brand .logo-img {
    width: auto;
    max-width: 215px;
    max-height: 48px;
}

.otp-theme .header .search .form-control {
    width: 290px;
    height: 44px;
    padding-left: 6px;
    background: var(--otp-slate-50);
    border-color: var(--otp-slate-200);
    border-left: 0;
    border-radius: 0 var(--otp-radius-sm) var(--otp-radius-sm) 0;
    color: var(--otp-slate-800);
    font-size: 13px;
}

.otp-theme .header .search .input-group-prepend .btn {
    width: 45px;
    height: 44px;
    background: var(--otp-slate-50);
    border: 1px solid var(--otp-slate-200);
    border-right: 0;
    border-radius: var(--otp-radius-sm) 0 0 var(--otp-radius-sm);
    color: var(--otp-slate-500);
}

.otp-theme .header .search .form-control:focus {
    background: var(--otp-white);
    border-color: var(--otp-blue-500);
    box-shadow: none;
}

.otp-theme .header .toolbar .nav-link {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    padding: 0;
    background: var(--otp-slate-50);
    border: 1px solid var(--otp-slate-200);
    border-radius: var(--otp-radius-sm);
    color: var(--otp-slate-700);
}

.otp-theme .header .toolbar .nav-link:hover {
    background: #eef7ff;
    border-color: #b9ddff;
    color: var(--otp-blue-700);
}

.otp-theme .header .toolbar .badge {
    position: absolute;
    top: -5px;
    right: -5px;
    min-width: 20px;
    min-height: 20px;
    padding: 3px 6px;
    background: var(--otp-cyan-500);
    border: 2px solid var(--otp-white);
    color: var(--otp-navy-950);
    font-size: 10px;
    font-weight: 800;
}

.otp-theme .main-navbar-wrapper {
    min-height: 52px;
    padding: 0;
    background: var(--otp-navy-900);
    border: 0;
}

.otp-theme .main-navbar-wrapper .navbar-nav > .nav-item > .nav-link,
.otp-theme .main-navbar-wrapper #nav > li > a,
.otp-theme .main-navbar-wrapper .navbar-nav.ml-auto > li > a {
    position: relative;
    display: flex;
    align-items: center;
    min-height: 52px;
    padding: 0 15px;
    color: rgba(255, 255, 255, .78);
    font-size: 13px;
    font-weight: 600;
}

.otp-theme .main-navbar-wrapper .navbar-nav > .nav-item > .nav-link::after,
.otp-theme .main-navbar-wrapper #nav > li > a::after,
.otp-theme .main-navbar-wrapper .navbar-nav.ml-auto > li > a::after {
    bottom: 0;
}

.otp-theme .main-navbar-wrapper .navbar-nav > .nav-item > .nav-link:hover,
.otp-theme .main-navbar-wrapper .navbar-nav > .nav-item.active > .nav-link,
.otp-theme .main-navbar-wrapper .navbar-nav > .nav-item.show > .nav-link,
.otp-theme .main-navbar-wrapper #nav > li > a:hover,
.otp-theme .main-navbar-wrapper #nav > li.active > a,
.otp-theme .main-navbar-wrapper #nav > li.show > a,
.otp-theme .main-navbar-wrapper .navbar-nav.ml-auto > li > a:hover,
.otp-theme .main-navbar-wrapper .navbar-nav.ml-auto > li.active > a,
.otp-theme .main-navbar-wrapper .navbar-nav.ml-auto > li.show > a {
    background: rgba(255, 255, 255, .045);
    color: var(--otp-white);
}

.otp-theme .main-navbar-wrapper .navbar-nav > .nav-item.active > .nav-link::before,
.otp-theme .main-navbar-wrapper #nav > li.active > a::before,
.otp-theme .main-navbar-wrapper .navbar-nav.ml-auto > li.active > a::before {
    position: absolute;
    right: 15px;
    bottom: 0;
    left: 15px;
    height: 3px;
    background: var(--otp-cyan-500);
    content: "";
}

.otp-theme .dropdown-menu {
    padding: 8px;
    border: 1px solid var(--otp-slate-200);
    border-radius: var(--otp-radius-md);
    box-shadow: var(--otp-shadow-md);
}

.otp-theme .dropdown-item {
    padding: 9px 12px;
    border-radius: 7px;
    color: var(--otp-slate-700);
    font-size: 13px;
}

.otp-theme .dropdown-item:hover,
.otp-theme .dropdown-item:focus,
.otp-theme .dropdown-item.active {
    background: #edf6ff;
    color: var(--otp-blue-700);
}

/* Breadcrumb and layout */
.otp-theme .master-breadcrumb {
    min-height: 49px;
    padding: 0;
    background: var(--otp-white);
    border-bottom: 1px solid var(--otp-slate-200);
}

.otp-theme .master-breadcrumb .breadcrumb {
    min-height: 49px;
    margin: 0;
    padding: 14px 0;
    background: transparent;
    color: var(--otp-slate-600);
    font-size: 12px;
}

.otp-theme .master-breadcrumb .breadcrumb a {
    color: var(--otp-slate-600);
}

.otp-theme .master-breadcrumb .breadcrumb-item.active {
    color: var(--otp-slate-800);
    font-weight: 600;
}

.otp-theme #main-body {
    min-height: 590px;
    padding: 40px 0 76px;
    background: var(--otp-slate-50);
}

.otp-theme .header-lined {
    margin: 0 0 26px;
    padding: 0 0 16px;
    border-bottom: 1px solid var(--otp-slate-200);
}

.otp-theme .header-lined h1 {
    margin: 0;
    color: var(--otp-slate-950);
    font-size: 27px;
    font-weight: 750;
}

.otp-theme .header-lined small {
    color: var(--otp-slate-600);
}

/* Cards, panels and sidebar */
.otp-theme .card,
.otp-theme .panel,
.otp-theme .well {
    background: var(--otp-white);
    border: 1px solid var(--otp-slate-200);
    border-radius: var(--otp-radius-md);
    box-shadow: var(--otp-shadow-sm);
}

.otp-theme .card {
    overflow: hidden;
}

.otp-theme .card-header {
    min-height: 55px;
    padding: 15px 18px;
    background: var(--otp-white);
    border-bottom: 1px solid var(--otp-slate-200);
}

.otp-theme .card-header .card-title {
    color: var(--otp-slate-950);
    font-size: 14px;
    font-weight: 700;
    letter-spacing: -.01em;
}

.otp-theme .card-header .card-title > i:first-child {
    color: var(--otp-blue-600);
}

.otp-theme .card-body {
    padding: 20px;
}

.otp-theme .card-footer {
    padding: 13px 18px;
    background: #fbfcfe;
    border-top: 1px solid var(--otp-slate-200);
}

.otp-theme .card-sidebar {
    margin-bottom: 18px !important;
    border-radius: var(--otp-radius-md);
}

.otp-theme .card-sidebar .card-header {
    background: var(--otp-navy-900);
    border: 0;
}

.otp-theme .card-sidebar .card-header .card-title,
.otp-theme .card-sidebar .card-header .card-title i {
    color: var(--otp-white);
}

.otp-theme .card-sidebar .card-minimise {
    color: rgba(255, 255, 255, .62) !important;
    font-size: 11px;
}

.otp-theme .card-sidebar .list-group-item {
    padding: 12px 15px;
    background: var(--otp-white);
    border-color: var(--otp-slate-100);
    color: var(--otp-slate-700);
    font-size: 13px;
}

.otp-theme .card-sidebar .list-group-item:hover {
    background: #f3f8fe;
    color: var(--otp-blue-700);
}

.otp-theme .card-sidebar .list-group-item.active {
    background: #ebf5ff;
    border-color: #d6eaff;
    color: var(--otp-blue-700);
    font-weight: 700;
}

.otp-theme .card-sidebar .sidebar-menu-item-icon-wrapper {
    width: 23px;
    color: var(--otp-slate-500);
}

.otp-theme .card-sidebar .list-group-item.active .sidebar-menu-item-icon-wrapper {
    color: var(--otp-blue-600);
}

.otp-theme .badge {
    border-radius: 999px;
    font-weight: 700;
}

/* Buttons and forms */
.otp-theme .btn {
    min-height: 40px;
    padding: 9px 16px;
    border-radius: var(--otp-radius-sm);
    font-size: 13px;
    font-weight: 700;
    line-height: 20px;
    box-shadow: none;
}

.otp-theme .btn-sm,
.otp-theme .btn-xs {
    min-height: 32px;
    padding: 6px 11px;
    font-size: 12px;
}

.otp-theme .btn-primary {
    background: var(--otp-blue-600);
    border-color: var(--otp-blue-600);
    color: var(--otp-white);
}

.otp-theme .btn-primary:hover,
.otp-theme .btn-primary:focus,
.otp-theme .btn-primary:not(:disabled):not(.disabled):active {
    background: var(--otp-blue-700);
    border-color: var(--otp-blue-700);
    color: var(--otp-white);
    box-shadow: 0 7px 18px rgba(11, 115, 224, .22);
    transform: translateY(-1px);
}

.otp-theme .btn-default,
.otp-theme .btn-secondary,
.otp-theme .btn-outline-primary {
    background: var(--otp-white);
    border-color: var(--otp-slate-300);
    color: var(--otp-slate-700);
}

.otp-theme .btn-default:hover,
.otp-theme .btn-secondary:hover,
.otp-theme .btn-outline-primary:hover {
    background: #eff7ff;
    border-color: #a9d4fd;
    color: var(--otp-blue-700);
}

.otp-theme .btn-success { background: var(--otp-green-600); border-color: var(--otp-green-600); color: var(--otp-white); }
.otp-theme .btn-danger { background: var(--otp-red-600); border-color: var(--otp-red-600); color: var(--otp-white); }
.otp-theme a.btn-success:hover,
.otp-theme a.btn-success:focus,
.otp-theme a.btn-danger:hover,
.otp-theme a.btn-danger:focus { color: var(--otp-white); }

.otp-theme label,
.otp-theme .form-control-label {
    margin-bottom: 7px;
    color: var(--otp-slate-700);
    font-size: 12px;
    font-weight: 700;
}

.otp-theme .form-control,
.otp-theme .custom-select,
.otp-theme select.form-control,
.otp-theme textarea.form-control {
    min-height: 43px;
    padding: 9px 12px;
    background: var(--otp-white);
    border: 1px solid var(--otp-slate-300);
    border-radius: var(--otp-radius-sm);
    color: var(--otp-slate-800);
    font-size: 14px;
    box-shadow: none;
}

.otp-theme textarea.form-control { min-height: 110px; }

.otp-theme .form-control:focus,
.otp-theme .custom-select:focus,
.otp-theme select.form-control:focus,
.otp-theme textarea.form-control:focus {
    background: var(--otp-white);
    border-color: var(--otp-blue-500);
    box-shadow: var(--otp-shadow-focus);
}

.otp-theme .input-group-text {
    background: var(--otp-slate-50);
    border-color: var(--otp-slate-300);
    color: var(--otp-slate-500);
}

.otp-theme .input-group-merge .input-group-prepend .input-group-text {
    border-radius: var(--otp-radius-sm) 0 0 var(--otp-radius-sm);
}

.otp-theme .input-group-merge .form-control {
    border-radius: 0 var(--otp-radius-sm) var(--otp-radius-sm) 0;
}

.otp-theme .custom-control-input:checked ~ .custom-control-label::before {
    background: var(--otp-blue-600);
    border-color: var(--otp-blue-600);
}

/* Alerts */
.otp-theme .alert {
    padding: 14px 17px;
    border: 1px solid transparent;
    border-radius: var(--otp-radius-sm);
    font-size: 13px;
}

.otp-theme .alert-info { background: #eef8ff; border-color: #cce9ff; color: #125a88; }
.otp-theme .alert-success { background: #edf9f4; border-color: #c6ecdd; color: #176844; }
.otp-theme .alert-warning { background: #fff8e9; border-color: #f4dfaf; color: #765015; }
.otp-theme .alert-danger { background: #fff0f2; border-color: #f3ccd2; color: #8a2936; }

/* Data tables */
.otp-theme .table-container,
.otp-theme .dataTables_wrapper {
    color: var(--otp-slate-700);
}

.otp-theme .dataTables_wrapper table.table-list,
.otp-theme table.table-list {
    width: 100% !important;
    margin: 0 !important;
    border: 0;
    border-collapse: separate;
    border-spacing: 0;
}

.otp-theme table.table-list.w-hidden {
    display: table !important;
}

.otp-theme table.table-list thead th,
.otp-theme .dataTables_wrapper table.table-list thead th {
    padding: 12px 14px;
    background: #f8fafc;
    border: 0;
    border-bottom: 1px solid var(--otp-slate-200);
    color: var(--otp-slate-600);
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .075em;
    text-align: left;
    text-transform: uppercase;
    white-space: nowrap;
}

.otp-theme table.table-list tbody td,
.otp-theme .dataTables_wrapper table.table-list tbody td {
    padding: 15px 14px;
    background: var(--otp-white);
    border: 0;
    border-bottom: 1px solid var(--otp-slate-100);
    color: var(--otp-slate-700);
    font-size: 13px;
    vertical-align: middle;
}

.otp-theme table.table-list tbody tr:last-child td { border-bottom: 0; }
.otp-theme table.table-list tbody tr:hover td { background: #f9fbfd; }

.otp-theme .dataTables_wrapper .dataTables_filter {
    margin: 0 0 14px;
}

.otp-theme .dataTables_wrapper .dataTables_filter label {
    margin: 0;
    font-size: 0;
}

.otp-theme .dataTables_wrapper .dataTables_filter .form-control {
    width: 220px;
    height: 40px;
    padding: 8px 12px 8px 37px !important;
    background-color: var(--otp-white);
    border-radius: var(--otp-radius-sm);
    font-size: 13px;
}

.otp-theme .dataTables_wrapper .dataTables_info,
.otp-theme .dataTables_wrapper .dataTables_length {
    padding-top: 15px;
    color: var(--otp-slate-600);
    font-size: 12px;
}

.otp-theme .dataTables_wrapper .dataTables_paginate {
    padding-top: 13px;
}

.otp-theme .pagination .page-link {
    min-width: 34px;
    padding: 7px 10px;
    border-color: var(--otp-slate-200);
    color: var(--otp-slate-700);
    font-size: 12px;
    text-align: center;
}

.otp-theme .pagination .page-item.active .page-link {
    background: var(--otp-blue-600);
    border-color: var(--otp-blue-600);
    color: var(--otp-white);
}

.otp-theme .status {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 5px 9px;
    border-radius: 999px;
    font-size: 11px;
    font-weight: 700;
    line-height: 1.2;
}

.otp-theme .status > span:first-child {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: currentColor;
}

.otp-theme .status-active,
.otp-theme .status-paid,
.otp-theme .status-completed { background: #e8f7f0; color: #137349; }
.otp-theme .status-pending,
.otp-theme .status-unpaid { background: #fff4dd; color: #97600e; }
.otp-theme .status-suspended,
.otp-theme .status-overdue { background: #fff0e9; color: #b64d25; }
.otp-theme .status-cancelled,
.otp-theme .status-terminated,
.otp-theme .status-refunded { background: #edf0f4; color: #5d6b7e; }

/* Services */
.otp-page-toolbar {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 24px;
    margin-bottom: 24px;
}

.otp-eyebrow {
    display: block;
    margin-bottom: 5px;
    color: var(--otp-blue-600);
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.otp-page-toolbar h2 {
    margin: 0 0 5px;
    font-size: 27px;
}

.otp-page-toolbar p {
    margin: 0;
    color: var(--otp-slate-600);
    font-size: 13px;
}

.otp-toolbar-action {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    white-space: nowrap;
}

.otp-data-card {
    border-radius: var(--otp-radius-lg) !important;
    box-shadow: var(--otp-shadow-md) !important;
}

.otp-data-card-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: 72px;
    padding: 14px 18px;
    border-bottom: 1px solid var(--otp-slate-200);
}

.otp-data-card-title {
    display: flex;
    align-items: center;
    gap: 12px;
}

.otp-data-card-title > div {
    display: flex;
    flex-direction: column;
}

.otp-data-card-title strong {
    color: var(--otp-slate-950);
    font-size: 14px;
}

.otp-data-card-title small {
    color: var(--otp-slate-500);
    font-size: 11px;
}

.otp-data-card-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    background: #eaf5ff;
    border-radius: 10px;
    color: var(--otp-blue-600);
}

.otp-live-indicator,
.otp-footer-status {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    color: var(--otp-slate-500);
    font-size: 10px;
    font-weight: 700;
    letter-spacing: .035em;
    text-transform: uppercase;
}

.otp-live-indicator > span,
.otp-footer-status > span {
    width: 7px;
    height: 7px;
    background: #23bd7a;
    border-radius: 50%;
    box-shadow: 0 0 0 3px rgba(35, 189, 122, .14);
}

.otp-table-wrap {
    padding: 0 18px 18px;
}

.otp-services-page .dataTables_wrapper .dataTables_filter {
    margin-top: 14px;
}

.otp-services-table th:first-child,
.otp-services-table td:first-child {
    width: 58px;
    text-align: center !important;
}

.otp-service-avatar {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    background: #eef6ff;
    border-radius: 10px;
    color: var(--otp-blue-600);
    font-size: 11px;
}

.otp-service-avatar img { max-width: 24px; }

.otp-service-name > a:first-child {
    display: block;
    margin-bottom: 3px;
    color: var(--otp-slate-950);
    font-weight: 700;
}

.otp-service-domain {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    color: var(--otp-slate-500) !important;
    font-size: 11px;
}

.otp-service-domain:hover { color: var(--otp-blue-600) !important; }
.otp-service-domain-empty { font-style: italic; }

.otp-service-price strong,
.otp-service-price span {
    display: block;
}

.otp-service-price strong { color: var(--otp-slate-950); font-size: 14px; }
.otp-service-price span { color: var(--otp-slate-500); font-size: 10px; }
.otp-service-date i { margin-right: 5px; color: var(--otp-slate-500); }
.otp-service-state { white-space: nowrap; }
.otp-row-arrow { margin-left: 11px; color: var(--otp-slate-300); font-size: 10px; }

.otp-table-loading {
    padding: 28px;
    color: var(--otp-slate-500);
    font-size: 12px;
}

.otp-table-loading i { margin-right: 7px; color: var(--otp-blue-600); }

/* Service details */
.otp-page-clientareaproductdetails .product-details > .row {
    align-items: stretch;
}

.otp-page-clientareaproductdetails .product-status {
    height: 100%;
    min-height: 250px;
    overflow: hidden;
    background: var(--otp-navy-900);
    border-radius: var(--otp-radius-md);
}

.otp-page-clientareaproductdetails .product-icon {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 205px;
    padding: 30px;
    background-color: var(--otp-navy-900);
    background-image: radial-gradient(circle at 50% 0, rgba(19, 184, 212, .21), transparent 58%);
}

.otp-page-clientareaproductdetails .product-icon .fa-circle { color: var(--otp-blue-600); }
.otp-page-clientareaproductdetails .product-icon h3 { margin: 14px 0 4px; color: var(--otp-white); font-size: 21px; }
.otp-page-clientareaproductdetails .product-icon h4 { margin: 0; color: rgba(255, 255, 255, .58); font-size: 12px; font-weight: 600; }
.otp-page-clientareaproductdetails .product-status-text { padding: 10px; background: rgba(255, 255, 255, .07); color: var(--otp-white); font-size: 11px; font-weight: 800; letter-spacing: .09em; }

.otp-product-facts {
    display: grid;
    grid-template-columns: 1fr 1fr;
    height: 100%;
    align-content: stretch;
    gap: 1px;
    overflow: hidden;
    background: var(--otp-slate-200);
    border: 1px solid var(--otp-slate-200);
    border-radius: var(--otp-radius-md);
}

.otp-product-fact {
    display: flex;
    min-height: 78px;
    padding: 14px 16px;
    flex-direction: column;
    justify-content: center;
    background: var(--otp-white);
}

.otp-product-fact > span {
    display: block;
    margin-bottom: 4px;
    color: var(--otp-slate-500);
    font-size: 9px;
    font-weight: 800;
    letter-spacing: .065em;
    text-transform: uppercase;
}

.otp-product-fact > strong { color: var(--otp-slate-950); font-size: 13px; font-weight: 700; }
.otp-product-fact-alert { background: #fff6f0; }
.otp-product-fact-alert > strong { color: #a94a24; }

.otp-service-access {
    margin: 25px 0;
    padding: 24px;
    background: var(--otp-white);
    border: 1px solid var(--otp-slate-200);
    border-radius: var(--otp-radius-lg);
    box-shadow: var(--otp-shadow-md);
}

.otp-section-heading {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 24px;
    margin-bottom: 20px;
    padding-bottom: 18px;
    border-bottom: 1px solid var(--otp-slate-200);
}

.otp-section-heading h3 {
    margin: 0 0 4px;
    font-size: 20px;
}

.otp-section-heading p {
    margin: 0;
    color: var(--otp-slate-600);
    font-size: 12px;
}

.otp-secure-badge {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 7px 10px;
    background: #eaf8f2;
    border-radius: 999px;
    color: #11714a;
    font-size: 10px;
    font-weight: 800;
    white-space: nowrap;
}

.otp-access-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}

.otp-access-card {
    padding: 16px;
    background: #fbfcfe;
    border: 1px solid var(--otp-slate-200);
    border-radius: var(--otp-radius-md);
}

.otp-access-card-wide { grid-column: 1 / -1; }

.otp-access-card > label {
    display: block;
    margin-bottom: 9px;
    color: var(--otp-slate-600);
    font-size: 10px;
    letter-spacing: .06em;
    text-transform: uppercase;
}

.otp-access-card-title {
    display: flex;
    align-items: center;
    gap: 11px;
    margin-bottom: 12px;
}

.otp-access-card-title > div {
    display: flex;
    flex-direction: column;
}

.otp-access-card-title strong { color: var(--otp-slate-950); font-size: 13px; }
.otp-access-card-title small { color: var(--otp-slate-500); font-size: 10px; }

.otp-access-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 38px;
    height: 38px;
    background: #eaf5ff;
    border-radius: 10px;
    color: var(--otp-blue-600);
}

.otp-copy-field {
    display: flex;
    align-items: stretch;
    min-width: 0;
}

.otp-copy-field input,
.otp-copy-field textarea {
    min-width: 0;
    flex: 1 1 auto;
    min-height: 42px;
    padding: 9px 11px;
    background: var(--otp-white);
    border: 1px solid var(--otp-slate-300);
    border-radius: var(--otp-radius-sm) 0 0 var(--otp-radius-sm);
    color: var(--otp-slate-800);
    font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
    font-size: 11px;
    line-height: 1.45;
    resize: none;
}

.otp-copy-field button,
.otp-copy-field a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    min-width: 43px;
    padding: 8px 11px;
    background: var(--otp-white);
    border: 1px solid var(--otp-slate-300);
    border-left: 0;
    color: var(--otp-slate-600);
    font-size: 11px;
    font-weight: 700;
    cursor: pointer;
}

.otp-copy-field > *:last-child {
    border-radius: 0 var(--otp-radius-sm) var(--otp-radius-sm) 0;
}

.otp-copy-field button:hover,
.otp-copy-field a:hover {
    background: #eef7ff;
    color: var(--otp-blue-700);
}

.otp-copy-field button.is-copied {
    background: #e9f8f1;
    color: var(--otp-green-600);
}

.otp-copy-field .otp-secret-toggle { min-width: 40px; padding: 8px; }
.otp-copy-field-area textarea { min-height: 85px; border-radius: var(--otp-radius-sm) 0 0 var(--otp-radius-sm); }

.otp-resource-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
    margin-top: 14px;
}

.otp-resource-card {
    position: relative;
    display: grid;
    grid-template-columns: 36px 1fr;
    gap: 2px 10px;
    padding: 15px;
    overflow: hidden;
    background: var(--otp-navy-900);
    border-radius: var(--otp-radius-md);
}

.otp-resource-icon {
    grid-row: 1 / span 2;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    background: rgba(19, 184, 212, .13);
    border-radius: 9px;
    color: var(--otp-cyan-500);
}

.otp-resource-card > div { display: flex; flex-direction: column; }
.otp-resource-card strong { color: var(--otp-white); font-size: 12px; }
.otp-resource-card small { color: rgba(255, 255, 255, .53); font-size: 9px; }
.otp-resource-card input { position: absolute; width: 1px; height: 1px; opacity: 0; }
.otp-resource-card button { grid-column: 1 / -1; margin-top: 12px; padding: 8px 10px; background: rgba(255, 255, 255, .08); border: 1px solid rgba(255, 255, 255, .11); border-radius: 7px; color: rgba(255, 255, 255, .82); font-size: 10px; font-weight: 700; cursor: pointer; }
.otp-resource-card button:hover { background: rgba(255, 255, 255, .14); color: var(--otp-white); }

.otp-apps-panel {
    margin-top: 18px;
    padding-top: 18px;
    border-top: 1px solid var(--otp-slate-200);
}

.otp-apps-heading {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 20px;
    margin-bottom: 13px;
}

.otp-apps-heading h4 { margin: 0; font-size: 16px; }
.otp-apps-heading > small { color: var(--otp-slate-500); font-size: 10px; }

.otp-app-links {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 10px;
}

.otp-app-links a {
    display: flex;
    align-items: center;
    gap: 10px;
    min-width: 0;
    padding: 12px;
    background: #fbfcfe;
    border: 1px solid var(--otp-slate-200);
    border-radius: 10px;
    color: var(--otp-slate-700);
}

.otp-app-links a:hover {
    background: #f0f7ff;
    border-color: #badafb;
    color: var(--otp-blue-700);
    transform: translateY(-1px);
}

.otp-app-links a > i { flex: 0 0 auto; color: var(--otp-blue-600); font-size: 19px; }
.otp-app-links a > span { display: flex; min-width: 0; flex-direction: column; font-size: 11px; font-weight: 700; }
.otp-app-links a small { overflow: hidden; color: var(--otp-slate-500); font-size: 8px; font-weight: 600; text-overflow: ellipsis; white-space: nowrap; }

.otp-page-clientareaproductdetails .nav-tabs {
    gap: 5px;
    border-bottom: 1px solid var(--otp-slate-200);
}

.otp-page-clientareaproductdetails .nav-tabs .nav-link {
    padding: 10px 13px;
    border: 0;
    border-bottom: 2px solid transparent;
    color: var(--otp-slate-600);
    font-size: 12px;
    font-weight: 700;
}

.otp-page-clientareaproductdetails .nav-tabs .nav-link.active {
    background: transparent;
    border-bottom-color: var(--otp-blue-600);
    color: var(--otp-blue-700);
}

.otp-page-clientareaproductdetails .product-details-tab-container {
    padding: 22px;
    border: 1px solid var(--otp-slate-200);
    border-top: 0;
    border-radius: 0 0 var(--otp-radius-md) var(--otp-radius-md);
}

/* Dashboard */
.otp-dashboard-intro {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 24px;
    margin-bottom: 22px;
    padding: 22px 24px;
    background: var(--otp-white);
    border: 1px solid var(--otp-slate-200);
    border-left: 4px solid var(--otp-cyan-500);
    border-radius: var(--otp-radius-md);
    box-shadow: var(--otp-shadow-sm);
}

.otp-dashboard-intro h2 { margin: 0 0 5px; font-size: 23px; }
.otp-dashboard-intro p { margin: 0; color: var(--otp-slate-600); font-size: 12px; }
.otp-dashboard-intro .btn { display: inline-flex; align-items: center; gap: 8px; white-space: nowrap; }

.otp-theme .tiles {
    overflow: hidden;
    background: var(--otp-white);
    border: 1px solid var(--otp-slate-200);
    border-radius: var(--otp-radius-lg);
    box-shadow: var(--otp-shadow-md);
}

.otp-theme .tiles .tile {
    position: relative;
    min-height: 132px;
    padding: 24px 20px;
    background: var(--otp-white);
    border-right: 1px solid var(--otp-slate-200);
    color: var(--otp-slate-700);
    text-align: left;
}

.otp-theme .tiles .col-6:last-child .tile { border-right: 0; }
.otp-theme .tiles .tile:hover { background: #f7fbff; }
.otp-theme .tiles .tile > i { position: absolute; top: 25px; right: 19px; color: #c8d5e4; font-size: 24px; }
.otp-theme .tiles .tile .stat { color: var(--otp-slate-950); font-size: 30px; font-weight: 800; line-height: 1; }
.otp-theme .tiles .tile .title { margin-top: 10px; color: var(--otp-slate-600); font-size: 11px; font-weight: 700; letter-spacing: .045em; text-transform: uppercase; }
.otp-theme .tiles .tile .highlight { right: auto; bottom: 0; left: 20px; width: 34px; height: 3px; border-radius: 3px 3px 0 0; }

.otp-theme .client-home-cards .card {
    margin-bottom: 20px;
}

.otp-theme .client-home-cards .list-group-item {
    padding: 13px 17px;
    border-color: var(--otp-slate-100);
    color: var(--otp-slate-700);
    font-size: 13px;
}

.otp-theme .client-home-cards .list-group-item:hover { background: #f7fbff; color: var(--otp-blue-700); }

/* Public homepage */
.otp-home-section {
    padding: 34px 0 20px;
}

.otp-home-section + .otp-home-section {
    padding-top: 44px;
    border-top: 1px solid var(--otp-slate-200);
}

.otp-home-section-heading {
    max-width: 620px;
    margin: 0 auto 24px;
    text-align: center;
}

.otp-home-section-heading h2 {
    margin: 0 0 7px;
    font-size: 25px;
}

.otp-home-section-heading p {
    margin: 0;
    color: var(--otp-slate-600);
    font-size: 12px;
}

.otp-theme .home-domain-search {
    position: relative;
    overflow: hidden;
    background: var(--otp-navy-900);
}

.otp-theme .home-domain-search::before {
    position: absolute;
    top: -180px;
    right: -100px;
    width: 430px;
    height: 430px;
    background: radial-gradient(circle, rgba(19, 184, 212, .19), transparent 67%);
    content: "";
    pointer-events: none;
}

.otp-theme .home-domain-search h2 { color: var(--otp-white); font-size: 31px; }
.otp-theme .home-domain-search p { color: rgba(255, 255, 255, .64); }
.otp-theme .home-domain-search .input-group-wrapper { padding: 6px; background: var(--otp-white); border-radius: var(--otp-radius-md); box-shadow: 0 15px 35px rgba(0, 0, 0, .22); }
.otp-theme .home-domain-search .form-control { min-height: 51px; border: 0; }
.otp-theme .home-domain-search .btn { min-height: 51px; }

.otp-theme .card-columns.home .card {
    border-top: 3px solid var(--otp-blue-600);
    box-shadow: var(--otp-shadow-sm);
}

.otp-theme .card-columns.home .card:hover {
    border-top-color: var(--otp-cyan-500);
    box-shadow: var(--otp-shadow-md);
    transform: translateY(-2px);
}

.otp-theme .card-columns.home .pricing-card-title { font-size: 19px; }

.otp-theme .action-icon-btns a {
    min-height: 150px;
    padding: 22px 12px;
    background: var(--otp-white);
    border: 1px solid var(--otp-slate-200);
    border-radius: var(--otp-radius-md);
    color: var(--otp-slate-700);
    font-size: 12px;
    font-weight: 700;
    box-shadow: var(--otp-shadow-sm);
}

.otp-theme .action-icon-btns a:hover {
    border-color: #b8daf9;
    color: var(--otp-blue-700);
    box-shadow: var(--otp-shadow-md);
    transform: translateY(-2px);
}

.otp-theme .action-icon-btns .ico-container {
    width: 56px;
    height: 56px;
    margin-bottom: 14px;
    background: #eaf5ff;
    border: 0;
    border-radius: 14px;
    color: var(--otp-blue-600);
    line-height: 56px;
}

.otp-theme .action-icon-btns .ico-container i { font-size: 24px; }

/* Login and registration */
.otp-auth-shell {
    display: grid;
    grid-template-columns: minmax(0, .92fr) minmax(430px, 1.08fr);
    max-width: 980px;
    min-height: 590px;
    margin: 10px auto 25px;
    overflow: hidden;
    background: var(--otp-white);
    border: 1px solid var(--otp-slate-200);
    border-radius: 20px;
    box-shadow: 0 24px 65px rgba(21, 51, 100, .13);
}

.otp-auth-aside {
    position: relative;
    display: flex;
    padding: 54px 48px;
    overflow: hidden;
    flex-direction: column;
    justify-content: center;
    background: var(--otp-navy-900);
    color: rgba(255, 255, 255, .7);
}

.otp-auth-aside::before,
.otp-auth-aside::after {
    position: absolute;
    border-radius: 50%;
    content: "";
    pointer-events: none;
}

.otp-auth-aside::before {
    top: -150px;
    right: -160px;
    width: 390px;
    height: 390px;
    background: radial-gradient(circle, rgba(19, 184, 212, .23), transparent 69%);
}

.otp-auth-aside::after {
    bottom: -210px;
    left: -170px;
    width: 430px;
    height: 430px;
    background: radial-gradient(circle, rgba(11, 115, 224, .23), transparent 67%);
}

.otp-auth-mark {
    position: relative;
    z-index: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 46px;
    height: 46px;
    margin-bottom: 20px;
    background: var(--otp-cyan-500);
    border-radius: 12px;
    color: var(--otp-navy-950);
    font-size: 15px;
}

.otp-auth-kicker {
    position: relative;
    z-index: 1;
    margin-bottom: 9px;
    color: var(--otp-cyan-500);
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .15em;
}

.otp-auth-aside h2 {
    position: relative;
    z-index: 1;
    max-width: 360px;
    margin: 0 0 13px;
    color: var(--otp-white);
    font-size: 30px;
    line-height: 1.22;
}

.otp-auth-aside > p {
    position: relative;
    z-index: 1;
    max-width: 365px;
    margin: 0;
    color: rgba(255, 255, 255, .59);
    font-size: 12px;
}

.otp-auth-features {
    position: relative;
    z-index: 1;
    display: grid;
    gap: 15px;
    margin-top: 36px;
}

.otp-auth-features > div {
    display: flex;
    align-items: center;
    gap: 12px;
}

.otp-auth-features > div > i {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 35px;
    height: 35px;
    background: rgba(255, 255, 255, .07);
    border: 1px solid rgba(255, 255, 255, .09);
    border-radius: 9px;
    color: var(--otp-cyan-500);
}

.otp-auth-features span { display: flex; flex-direction: column; }
.otp-auth-features strong { color: var(--otp-white); font-size: 11px; }
.otp-auth-features small { color: rgba(255, 255, 255, .47); font-size: 9px; }

.otp-auth-panel {
    display: flex;
    padding: 52px 58px;
    flex-direction: column;
    justify-content: center;
}

.otp-auth-heading { margin-bottom: 27px; }
.otp-auth-heading h1 { margin: 0 0 6px; font-size: 27px; }
.otp-auth-heading p { margin: 0; color: var(--otp-slate-600); font-size: 12px; }
.otp-auth-panel .form-group { margin-bottom: 18px; }
.otp-auth-panel .form-control { min-height: 48px; }
.otp-auth-panel .input-group-text { min-width: 47px; justify-content: center; }
.otp-auth-panel .btn-reveal-pw { min-height: 48px; border-left: 0; border-radius: 0 var(--otp-radius-sm) var(--otp-radius-sm) 0; }
.otp-auth-panel #inputPassword { border-radius: 0; }
.otp-forgot-link { margin-bottom: 7px; color: var(--otp-blue-700); font-size: 10px; font-weight: 700; }
.otp-auth-options { margin: 2px 0 18px; }
.otp-remember { display: inline-flex; align-items: center; gap: 8px; margin: 0 !important; color: var(--otp-slate-600) !important; font-size: 11px !important; cursor: pointer; }
.otp-remember input { width: 15px; height: 15px; accent-color: var(--otp-blue-600); }
.otp-login-button { display: flex; align-items: center; justify-content: space-between; min-height: 48px !important; padding: 12px 17px !important; }
.otp-auth-register { display: flex; align-items: center; justify-content: center; gap: 5px; margin-top: 19px; color: var(--otp-slate-500); font-size: 10px; }
.otp-auth-register a { font-weight: 800; }

.otp-theme .login-form .mw-540 {
    max-width: 500px;
    margin-right: auto;
    margin-left: auto;
    border: 0;
    border-top: 4px solid var(--otp-blue-600);
    border-radius: var(--otp-radius-lg);
    box-shadow: 0 20px 50px rgba(21, 51, 100, .11);
}

.otp-theme .login-form .card-body { padding: 42px !important; }
.otp-theme .login-form h6.h3 { font-size: 25px; }
.otp-theme .login-form .btn-primary { min-width: 135px; }
.otp-theme .login-form .card-footer { padding: 16px 42px !important; }

.otp-theme #registration {
    padding: 25px;
    background: var(--otp-white);
    border: 1px solid var(--otp-slate-200);
    border-radius: var(--otp-radius-lg);
    box-shadow: var(--otp-shadow-md);
}

.otp-theme #registration .sub-heading {
    height: auto;
    margin: 28px 0 20px;
    padding-bottom: 10px;
    border-top: 0;
    border-bottom: 1px solid var(--otp-slate-200);
    text-align: left;
}

.otp-theme #registration .sub-heading span {
    position: static;
    padding: 0;
    background: transparent;
    color: var(--otp-slate-950);
    font-size: 15px;
    font-weight: 700;
}

/* Knowledgebase, tickets, invoices and generic content */
.otp-theme .kb-search,
.otp-theme .ticket-reply,
.otp-theme .view-ticket,
.otp-theme .invoice-container,
.otp-theme .domain-pricing,
.otp-theme .announcements .announcement article {
    border-radius: var(--otp-radius-md);
}

.otp-theme .kb-category,
.otp-theme .kb-article-item {
    background: var(--otp-white);
    border: 1px solid var(--otp-slate-200);
    border-radius: var(--otp-radius-sm);
}

.otp-theme .kb-category:hover,
.otp-theme .kb-article-item:hover { background: #f7fbff; border-color: #bdddf9; }

.otp-theme .view-ticket .card-body { border-color: var(--otp-slate-200); }
.otp-theme .view-ticket .posted-by { background: #f7f9fc; color: var(--otp-slate-600); }
.otp-theme .invoice-container { border: 1px solid var(--otp-slate-200); box-shadow: var(--otp-shadow-md); }

/* Order form */
.otp-theme #order-standard_cart .products .product,
.otp-theme #order-standard_cart .product-info,
.otp-theme #order-standard_cart .summary-container,
.otp-theme #order-standard_cart .view-cart-items,
.otp-theme #order-standard_cart .domain-selection-options {
    border: 1px solid var(--otp-slate-200);
    border-radius: var(--otp-radius-md);
    box-shadow: var(--otp-shadow-sm);
}

.otp-theme #order-standard_cart .products .product { overflow: hidden; }
.otp-theme #order-standard_cart .products .product:hover { box-shadow: var(--otp-shadow-md); transform: translateY(-2px); }
.otp-theme #order-standard_cart .products .product header { background: var(--otp-navy-900); color: var(--otp-white); }
.otp-theme #order-standard_cart .products .product .price { color: var(--otp-blue-700); }
.otp-theme #order-standard_cart .order-summary { overflow: hidden; border-radius: var(--otp-radius-md); box-shadow: var(--otp-shadow-md); }
.otp-theme #order-standard_cart .domain-checker-bg { background: var(--otp-navy-900); border-radius: var(--otp-radius-lg); }

/* Footer */
.otp-theme footer.footer {
    margin: 0;
    padding: 42px 0 20px;
    background: var(--otp-navy-950);
    border: 0;
    color: rgba(255, 255, 255, .62);
}

.otp-footer-main {
    display: grid;
    grid-template-columns: 1fr auto;
    align-items: center;
    gap: 38px;
    padding-bottom: 28px;
}

.otp-footer-brand { max-width: 350px; }

.otp-footer-logo {
    display: inline-flex;
    align-items: center;
    margin-bottom: 10px;
    color: var(--otp-white) !important;
    font-size: 18px;
    font-weight: 800;
}

.otp-footer-logo img {
    width: auto;
    max-width: 200px;
    max-height: 44px;
    filter: brightness(0) invert(1);
}

.otp-footer-brand p { margin: 0; color: rgba(255, 255, 255, .49); font-size: 11px; }
.otp-footer-actions { display: flex; flex-direction: column; align-items: flex-end; gap: 9px; }
.otp-theme footer.footer .nav-link { padding: 5px 9px; color: rgba(255, 255, 255, .68); font-size: 11px; font-weight: 600; }
.otp-theme footer.footer .nav-link:hover { color: var(--otp-white); }
.otp-theme footer.footer .otp-locale-button { min-height: 32px; padding: 5px 9px; background: rgba(255, 255, 255, .06); border: 1px solid rgba(255, 255, 255, .1); color: rgba(255, 255, 255, .73); font-size: 10px; }

.otp-footer-bottom {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    padding-top: 18px;
    border-top: 1px solid rgba(255, 255, 255, .09);
}

.otp-theme footer.footer .copyright { color: rgba(255, 255, 255, .43); font-size: 10px; }
.otp-theme footer.footer .otp-footer-status { color: rgba(255, 255, 255, .43); }

/* Responsive */
@media (max-width: 1199.98px) {
    .otp-theme .main-navbar-wrapper .navbar-collapse { padding: 12px 0 17px; }
    .otp-theme .main-navbar-wrapper .navbar-nav > .nav-item > .nav-link,
    .otp-theme .main-navbar-wrapper #nav > li > a,
    .otp-theme .main-navbar-wrapper .navbar-nav.ml-auto > li > a { min-height: 43px; padding: 0 12px; border-radius: 7px; }
    .otp-theme .main-navbar-wrapper .navbar-nav > .nav-item.active > .nav-link::before,
    .otp-theme .main-navbar-wrapper #nav > li.active > a::before,
    .otp-theme .main-navbar-wrapper .navbar-nav.ml-auto > li.active > a::before { top: 10px; right: auto; bottom: 10px; left: 0; width: 3px; height: auto; }
    .otp-app-links { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (max-width: 991.98px) {
    .otp-theme #main-body { padding-top: 30px; }
    .otp-theme .tiles .tile { border-bottom: 1px solid var(--otp-slate-200); }
    .otp-resource-grid { grid-template-columns: 1fr; }
    .otp-footer-main { grid-template-columns: 1fr; text-align: center; }
    .otp-footer-brand { margin: 0 auto; }
    .otp-footer-actions { align-items: center; }
    .otp-auth-shell { grid-template-columns: 1fr; max-width: 620px; }
    .otp-auth-aside { min-height: 315px; padding: 38px 44px; }
    .otp-auth-aside h2 { font-size: 25px; }
    .otp-auth-features { grid-template-columns: repeat(3, 1fr); gap: 10px; margin-top: 24px; }
    .otp-auth-features > div { align-items: flex-start; }
    .otp-auth-features small { display: none; }
    .otp-auth-panel { padding: 44px 50px; }
}

@media (max-width: 767.98px) {
    .otp-theme .header > .navbar.navbar-light { min-height: 66px; }
    .otp-theme .navbar-brand .logo-img { max-width: 170px; max-height: 40px; }
    .otp-theme .master-breadcrumb .breadcrumb { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
    .otp-theme #main-body { padding: 24px 0 55px; }
    .otp-page-toolbar { align-items: flex-start; flex-direction: column; }
    .otp-dashboard-intro { align-items: flex-start; flex-direction: column; }
    .otp-dashboard-intro .btn { width: 100%; justify-content: center; }
    .otp-toolbar-action { width: 100%; justify-content: center; }
    .otp-live-indicator { display: none; }
    .otp-data-card-header { min-height: 64px; }
    .otp-table-wrap { padding: 0 12px 12px; }
    .otp-services-table thead { display: none; }
    .otp-services-table,
    .otp-services-table tbody,
    .otp-services-table tr,
    .otp-services-table td { display: block; width: 100% !important; }
    .otp-services-table tr { position: relative; margin: 12px 0; padding: 13px 14px 10px 66px; background: var(--otp-white); border: 1px solid var(--otp-slate-200); border-radius: var(--otp-radius-md); }
    .otp-services-table tbody tr:hover td { background: transparent; }
    .otp-services-table tbody td { padding: 5px 0 !important; background: transparent !important; border: 0 !important; text-align: left !important; }
    .otp-services-table td.otp-service-leading { position: absolute; top: 14px; left: 14px; width: 40px !important; }
    .otp-services-table .otp-service-price,
    .otp-services-table .otp-service-date,
    .otp-services-table .otp-service-state { display: inline-flex; align-items: center; margin-right: 12px; }
    .otp-services-table .otp-service-price strong,
    .otp-services-table .otp-service-price span { display: inline; margin-right: 4px; }
    .otp-services-table .otp-row-arrow { position: absolute; top: 26px; right: 13px; }
    .otp-theme .dataTables_wrapper .dataTables_filter { float: none; width: 100%; }
    .otp-theme .dataTables_wrapper .dataTables_filter label,
    .otp-theme .dataTables_wrapper .dataTables_filter .form-control { width: 100%; }
    .otp-theme .dataTables_wrapper .dataTables_info { padding: 10px 0; text-align: center; }
    .otp-theme .dataTables_wrapper .dataTables_paginate { float: none; text-align: center; }
    .otp-access-grid { grid-template-columns: 1fr; }
    .otp-access-card-wide { grid-column: auto; }
    .otp-section-heading { flex-direction: column; }
    .otp-app-links { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .otp-product-facts { margin-top: 16px; }
    .otp-theme .login-form .card-body { padding: 32px 24px !important; }
    .otp-theme .login-form .card-footer { padding: 15px 24px !important; }
    .otp-auth-aside { min-height: 285px; padding: 32px 30px; }
    .otp-auth-features { grid-template-columns: 1fr; }
    .otp-auth-features > div:nth-child(n+3) { display: none; }
    .otp-auth-panel { padding: 38px 30px; }
}

@media (max-width: 575.98px) {
    body.otp-theme { font-size: 14px; }
    .otp-theme .container { padding-right: 17px; padding-left: 17px; }
    .otp-theme .header .toolbar .nav-item { margin-left: 7px !important; }
    .otp-theme .header .toolbar .nav-link { width: 40px; height: 40px; }
    .otp-theme .home-domain-search .p-5 { padding: 38px 16px !important; }
    .otp-theme .home-domain-search h2 { font-size: 24px; }
    .otp-theme .card-body { padding: 16px; }
    .otp-service-access { padding: 17px; }
    .otp-copy-field button span,
    .otp-copy-field a span { display: none; }
    .otp-resource-card button { min-height: 38px; }
    .otp-app-links { grid-template-columns: 1fr; }
    .otp-apps-heading { align-items: flex-start; flex-direction: column; }
    .otp-theme .tiles .tile { min-height: 114px; padding: 19px 15px; }
    .otp-theme .tiles .tile > i { top: 21px; right: 14px; font-size: 20px; }
    .otp-theme .tiles .tile .stat { font-size: 26px; }
    .otp-auth-shell { border-radius: 15px; }
    .otp-auth-aside h2 { font-size: 22px; }
    .otp-auth-panel { padding: 33px 22px; }
    .otp-footer-bottom { flex-direction: column; text-align: center; }
}

/* V2.5 dashboard concept — scoped to the client home page. */
.otp-v25-dashboard { margin-bottom: 30px; }

.otp-v25-hero {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: 290px;
    margin-bottom: 34px;
    padding: 44px 48px;
    overflow: hidden;
    background:
        radial-gradient(circle at 88% 10%, rgba(54, 169, 255, .24), transparent 24rem),
        linear-gradient(135deg, #153364 0%, #19457f 58%, #1469b8 100%);
    border: 1px solid rgba(12, 46, 90, .3);
    border-radius: 20px;
    box-shadow: 0 24px 55px rgba(21, 51, 100, .18);
}

.otp-v25-hero::after {
    position: absolute;
    right: -110px;
    bottom: -190px;
    width: 410px;
    height: 410px;
    border: 1px solid rgba(255, 255, 255, .12);
    border-radius: 50%;
    content: "";
}

.otp-v25-hero-content { position: relative; z-index: 2; max-width: 670px; }
.otp-v25-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 15px;
    color: rgba(255, 255, 255, .82);
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .13em;
    text-transform: uppercase;
}
.otp-v25-eyebrow > span { width: 7px; height: 7px; background: #55e6bd; border-radius: 50%; box-shadow: 0 0 0 5px rgba(85, 230, 189, .13); }
.otp-v25-hero h2 { margin: 0 0 12px; color: #fff; font-size: 34px; line-height: 1.18; letter-spacing: -.04em; }
.otp-v25-hero p { max-width: 590px; margin: 0; color: rgba(255, 255, 255, .78); font-size: 14px; line-height: 1.75; }
.otp-v25-hero-actions { display: flex; flex-wrap: wrap; gap: 11px; margin-top: 26px; }
.otp-v25-hero-actions .btn { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; gap: 9px; padding: 10px 17px; border-radius: 10px; font-size: 12px; font-weight: 700; }
.otp-v25-btn-light { background: #fff; border: 1px solid #fff; color: #153364 !important; box-shadow: 0 10px 24px rgba(6, 25, 54, .18); }
.otp-v25-btn-light:hover { background: #eef6ff; border-color: #eef6ff; color: #153364 !important; transform: translateY(-1px); }
.otp-v25-btn-ghost { background: rgba(255, 255, 255, .08); border: 1px solid rgba(255, 255, 255, .32); color: #fff !important; }
.otp-v25-btn-ghost:hover { background: rgba(255, 255, 255, .15); border-color: rgba(255, 255, 255, .55); color: #fff !important; }

.otp-v25-hero-mark { position: relative; z-index: 1; display: flex; flex: 0 0 165px; align-items: center; justify-content: center; width: 165px; height: 165px; margin-right: 20px; }
.otp-v25-hero-orbit { position: absolute; inset: 0; border: 1px solid rgba(255, 255, 255, .19); border-radius: 50%; }
.otp-v25-hero-orbit::before,
.otp-v25-hero-orbit::after { position: absolute; border: 1px solid rgba(255, 255, 255, .12); border-radius: 50%; content: ""; }
.otp-v25-hero-orbit::before { inset: 18px; }
.otp-v25-hero-orbit::after { inset: 37px; }
.otp-v25-hero-icon { display: inline-flex; align-items: center; justify-content: center; width: 74px; height: 74px; background: #fff; border-radius: 22px; color: #153364; font-size: 25px; box-shadow: 0 20px 45px rgba(4, 26, 61, .24); transform: rotate(-5deg); }
.otp-v25-hero-icon i { transform: rotate(5deg); }

.otp-v25-section-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 18px; margin: 0 0 16px; }
.otp-v25-section-heading .otp-eyebrow { margin-bottom: 3px; color: #1469b8; }
.otp-v25-section-heading h3 { margin: 0; color: #172033; font-size: 19px; letter-spacing: -.025em; }
.otp-v25-section-heading > a { display: inline-flex; align-items: center; gap: 7px; padding-bottom: 2px; color: #075fc8; font-size: 12px; font-weight: 700; }
.otp-v25-section-heading > a:hover { color: #153364; }

.otp-v25-stats { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
.otp-v25-stat-card {
    position: relative;
    display: flex;
    align-items: center;
    min-height: 128px;
    padding: 20px;
    overflow: hidden;
    background: #fff;
    border: 1px solid #dce3ed;
    border-radius: 15px;
    color: #27364a !important;
    box-shadow: 0 7px 22px rgba(21, 51, 100, .055);
}
.otp-v25-stat-card::after { position: absolute; right: 0; bottom: 0; left: 0; height: 3px; background: #1677e8; content: ""; opacity: 0; transform: scaleX(.45); transition: opacity .18s ease, transform .18s ease; }
.otp-v25-stat-card:hover { border-color: #b7c9df; color: #27364a !important; box-shadow: 0 15px 34px rgba(21, 51, 100, .11); transform: translateY(-3px); }
.otp-v25-stat-card:hover::after { opacity: 1; transform: scaleX(1); }
.otp-v25-stat-icon { display: inline-flex; flex: 0 0 46px; align-items: center; justify-content: center; width: 46px; height: 46px; margin-right: 14px; background: #eaf3ff; border: 1px solid #d3e7ff; border-radius: 13px; color: #075fc8; font-size: 17px; }
.otp-v25-stat-domains .otp-v25-stat-icon { background: #e9f8f4; border-color: #ccece2; color: #0b7655; }
.otp-v25-stat-tickets .otp-v25-stat-icon { background: #f1edff; border-color: #ded5ff; color: #6449bd; }
.otp-v25-stat-invoices .otp-v25-stat-icon { background: #fff4e3; border-color: #f2dfbd; color: #8a5700; }
.otp-v25-stat-copy { display: flex; min-width: 0; flex-direction: column; }
.otp-v25-stat-copy strong { margin-bottom: 3px; color: #172033; font-size: 25px; line-height: 1; }
.otp-v25-stat-copy > span { color: #35445a; font-size: 12px; font-weight: 800; }
.otp-v25-stat-copy small { margin-top: 2px; color: #627189; font-size: 10px; }
.otp-v25-stat-arrow { position: absolute; right: 15px; color: #aab6c6; font-size: 10px; }

.otp-v25-activity-heading { margin-top: 32px; }
.otp-v25-home-panels .card { border-color: #dce3ed; border-radius: 15px; box-shadow: 0 7px 22px rgba(21, 51, 100, .05); }
.otp-v25-home-panels .card-header { min-height: 60px; padding: 17px 19px; background: linear-gradient(180deg, #fff, #fbfcfe); }
.otp-v25-home-panels .card-header .card-title { color: #172033; }
.otp-v25-home-panels .card-header .card-title > i:first-child { display: inline-flex; align-items: center; justify-content: center; width: 30px; height: 30px; margin-right: 5px; background: #eaf3ff; border-radius: 9px; color: #075fc8; }
.otp-v25-home-panels .list-group-item { min-height: 48px; padding: 13px 18px; border-color: #edf1f6; color: #415169; }
.otp-v25-home-panels .list-group-item:hover { background: #f6f9fd; color: #075fc8; }
.otp-v25-home-panels .card-footer:empty { display: none; }

@media (max-width: 1199.98px) {
    .otp-v25-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 767.98px) {
    .otp-v25-hero { min-height: 0; padding: 34px 28px; border-radius: 17px; }
    .otp-v25-hero-mark { display: none; }
    .otp-v25-hero h2 { font-size: 29px; }
    .otp-v25-section-heading { align-items: flex-start; flex-direction: column; }
}

@media (max-width: 575.98px) {
    .otp-v25-hero { padding: 29px 21px; }
    .otp-v25-hero-actions { flex-direction: column; }
    .otp-v25-hero-actions .btn { width: 100%; }
    .otp-v25-stats { grid-template-columns: 1fr; gap: 10px; }
    .otp-v25-stat-card { min-height: 105px; }
}

/* ==========================================================
   OTTPROVIDERS Professional V2.2 refinements
   Contrast, compact search, service pages and ticket thread
   ========================================================== */

:root {
    --otp-text-strong: #101827;
    --otp-text: #344258;
    --otp-text-soft: #64748b;
    --otp-border: #dbe3ec;
    --otp-border-soft: #e9eef4;
}

/* Typography and contrast: avoid pale headings/text inherited from WHMCS */
.otp-theme,
.otp-theme .card-body,
.otp-theme .panel-body,
.otp-theme .tab-content,
.otp-theme .list-group-item,
.otp-theme table,
.otp-theme td {
    color: var(--otp-text);
}

.otp-theme h1,
.otp-theme h2,
.otp-theme h3,
.otp-theme h4,
.otp-theme h5,
.otp-theme h6,
.otp-theme .card-title,
.otp-theme .panel-title {
    color: var(--otp-text-strong);
}

.otp-theme .text-muted,
.otp-theme small.text-muted,
.otp-theme .help-block,
.otp-theme .form-text {
    color: var(--otp-text-soft) !important;
}

.otp-theme .bg-primary h1,
.otp-theme .bg-primary h2,
.otp-theme .bg-primary h3,
.otp-theme .bg-primary h4,
.otp-theme .bg-primary h5,
.otp-theme .bg-primary h6,
.otp-theme .bg-dark h1,
.otp-theme .bg-dark h2,
.otp-theme .bg-dark h3,
.otp-theme .bg-dark h4,
.otp-theme .bg-dark h5,
.otp-theme .bg-dark h6,
.otp-theme .bg-primary .card-title,
.otp-theme .bg-dark .card-title {
    color: #fff !important;
}

/* Compact global header search */
.otp-theme .header form.form-inline.ml-auto {
    margin-left: auto !important;
    margin-right: 14px;
}

.otp-theme .header .search {
    width: 218px;
    max-width: 218px;
}

.otp-theme .header .search .form-control {
    width: 174px;
    height: 40px;
    min-height: 40px;
    padding: 7px 10px 7px 3px;
    background: #f8fafc;
    border-color: var(--otp-border);
    font-size: 12px;
}

.otp-theme .header .search .input-group-prepend .btn {
    width: 42px;
    height: 40px;
    min-height: 40px;
    background: #f8fafc;
    border-color: var(--otp-border);
}

.otp-theme .header .search:focus-within .form-control,
.otp-theme .header .search:focus-within .input-group-prepend .btn {
    background: #fff;
    border-color: #9cccf8;
}

/* DataTables search: smaller and aligned with data card */
.otp-theme .dataTables_wrapper .dataTables_filter {
    margin: 12px 0 10px;
}

.otp-theme .dataTables_wrapper .dataTables_filter .form-control {
    width: 190px;
    height: 36px;
    min-height: 36px;
    padding-top: 6px !important;
    padding-bottom: 6px !important;
    border-color: var(--otp-border);
    font-size: 12px;
}

/* Services list: more polished, less table-heavy */
.otp-services-page .otp-page-toolbar {
    margin-bottom: 18px;
}

.otp-services-page .otp-page-toolbar h2 {
    margin-bottom: 4px;
    color: var(--otp-text-strong);
    font-size: 25px;
}

.otp-services-page .otp-data-card {
    overflow: visible;
    border-color: var(--otp-border) !important;
    box-shadow: 0 8px 28px rgba(15, 23, 42, .055) !important;
}

.otp-services-page .otp-data-card-header {
    min-height: 66px;
    background: #fff;
    border-bottom-color: var(--otp-border-soft);
}

.otp-services-table tbody tr {
    cursor: pointer;
    transition: background-color .16s ease, transform .16s ease;
}

.otp-services-table tbody tr:hover td {
    background: #f7fbff !important;
}

.otp-service-name > a:first-child {
    color: var(--otp-text-strong);
    font-size: 13px;
    font-weight: 750;
}

.otp-service-price strong,
.otp-service-date,
.otp-service-state {
    color: var(--otp-text);
}

/* Product details: lighter identity panel + clearer information hierarchy */
.otp-page-clientareaproductdetails .otp-product-overview-card {
    overflow: visible;
    border-color: var(--otp-border);
    border-radius: 16px;
    box-shadow: 0 10px 30px rgba(15, 23, 42, .055);
}

.otp-page-clientareaproductdetails .otp-product-overview-card > .card-body {
    padding: 18px;
}

.otp-page-clientareaproductdetails .otp-product-details-shell > .row {
    margin-right: -8px;
    margin-left: -8px;
}

.otp-page-clientareaproductdetails .otp-product-identity-col,
.otp-page-clientareaproductdetails .otp-product-facts-col {
    padding-right: 8px;
    padding-left: 8px;
}

.otp-page-clientareaproductdetails .product-status {
    min-height: 100%;
    background: linear-gradient(145deg, #f7fbff 0%, #eef6ff 100%);
    border: 1px solid #d7e8f9;
    border-radius: 13px;
    box-shadow: none;
}

.otp-page-clientareaproductdetails .product-icon {
    min-height: 190px;
    padding: 26px 20px 22px;
    background: transparent;
}

.otp-page-clientareaproductdetails .product-icon .fa-circle {
    color: #dceeff;
}

.otp-page-clientareaproductdetails .product-icon .fa-inverse {
    color: var(--otp-blue-700) !important;
}

.otp-page-clientareaproductdetails .product-icon h3 {
    margin-top: 13px;
    color: var(--otp-text-strong);
    font-size: 20px;
}

.otp-page-clientareaproductdetails .product-icon h4 {
    color: var(--otp-text-soft);
    font-size: 11px;
}

.otp-page-clientareaproductdetails .product-status-text {
    padding: 10px 12px;
    background: rgba(255,255,255,.68);
    border-top: 1px solid #d7e8f9;
    color: var(--otp-blue-700);
    font-size: 10px;
}

.otp-page-clientareaproductdetails .otp-product-facts {
    gap: 0;
    background: #fff;
    border-color: var(--otp-border);
    border-radius: 13px;
}

.otp-page-clientareaproductdetails .otp-product-fact {
    min-height: 76px;
    border-right: 1px solid var(--otp-border-soft);
    border-bottom: 1px solid var(--otp-border-soft);
}

.otp-page-clientareaproductdetails .otp-product-fact:nth-child(2n) {
    border-right: 0;
}

.otp-page-clientareaproductdetails .otp-product-fact > span {
    color: var(--otp-text-soft);
}

.otp-page-clientareaproductdetails .otp-product-fact > strong {
    color: var(--otp-text-strong);
}

.otp-page-clientareaproductdetails .product-actions-wrapper {
    margin-top: 10px;
}

.otp-page-clientareaproductdetails .product-actions-wrapper > div + div {
    margin-top: 8px;
}

.otp-page-clientareaproductdetails .nav-tabs {
    gap: 5px;
    padding: 5px;
    background: #eef2f7;
    border: 0;
    border-radius: 11px;
}

.otp-page-clientareaproductdetails .nav-tabs .nav-link {
    min-height: 38px;
    padding: 9px 13px;
    border: 0 !important;
    border-radius: 8px;
    color: var(--otp-text-soft);
}

.otp-page-clientareaproductdetails .nav-tabs .nav-link:hover {
    background: rgba(255,255,255,.65);
    color: var(--otp-text-strong);
}

.otp-page-clientareaproductdetails .nav-tabs .nav-link.active {
    background: #fff;
    color: var(--otp-blue-700);
    box-shadow: 0 2px 7px rgba(15, 23, 42, .08);
}

.otp-page-clientareaproductdetails .product-details-tab-container {
    margin-top: 12px;
    padding: 22px;
    border: 1px solid var(--otp-border);
    border-radius: 13px;
    box-shadow: 0 4px 18px rgba(15, 23, 42, .035);
}

/* Ticket conversation: clean chat layout */
.otp-page-viewticket .otp-ticket-thread {
    overflow: visible;
    background: transparent;
    border: 0;
    box-shadow: none;
}

.otp-page-viewticket .otp-ticket-header {
    margin-bottom: 18px;
    padding: 18px 20px !important;
    background: #fff;
    border: 1px solid var(--otp-border);
    border-radius: 14px;
    box-shadow: 0 5px 20px rgba(15, 23, 42, .04);
}

.otp-page-viewticket .otp-ticket-title {
    margin: 0 0 8px;
    color: var(--otp-text-strong);
    font-size: 19px;
}

.otp-page-viewticket .otp-ticket-subject {
    margin: 0;
    color: var(--otp-text-soft);
    font-size: 12px;
}

.otp-page-viewticket .otp-ticket-subject strong {
    color: var(--otp-text);
}

.otp-page-viewticket .otp-ticket-message-row {
    padding: 0;
    margin-bottom: 13px;
    border: 0 !important;
}

.otp-page-viewticket .ticket-reply {
    max-width: 88%;
    margin-right: auto;
    overflow: hidden;
    background: #fff;
    border: 1px solid var(--otp-border);
    border-radius: 14px 14px 14px 4px;
    box-shadow: 0 4px 18px rgba(15, 23, 42, .035);
}

.otp-page-viewticket .ticket-reply.staff {
    margin-right: 0;
    margin-left: auto;
    background: #f1f7ff;
    border-color: #cfe3fa;
    border-radius: 14px 14px 4px 14px;
}

.otp-page-viewticket .ticket-reply .posted-by {
    padding: 9px 13px;
    background: #f8fafc;
    border-bottom: 1px solid var(--otp-border-soft);
    color: var(--otp-text-soft);
    font-size: 10px;
}

.otp-page-viewticket .ticket-reply.staff .posted-by {
    background: #e8f2ff;
    border-bottom-color: #d7e8f9;
}

.otp-page-viewticket .ticket-reply .posted-by-name {
    color: var(--otp-text-strong);
    font-weight: 800;
}

.otp-page-viewticket .ticket-reply .message {
    padding: 14px 16px !important;
    color: var(--otp-text);
    font-size: 13px;
    line-height: 1.65;
}

.otp-page-viewticket .ticket-reply .message p:last-child {
    margin-bottom: 0;
}

.otp-page-viewticket .ticket-reply .attachments {
    padding: 11px 14px !important;
    background: rgba(248,250,252,.75);
    border-top: 1px solid var(--otp-border-soft);
}

.otp-page-viewticket .requestor-badge {
    padding: 4px 8px;
    background: #eef2f7;
    border-radius: 999px;
    color: var(--otp-text-soft);
    font-size: 9px;
}

.otp-page-viewticket .ticket-reply.staff .requestor-badge {
    background: #dcecff;
    color: var(--otp-blue-700);
}

.otp-page-viewticket .otp-ticket-composer {
    margin-top: 22px;
    overflow: visible;
    border-color: var(--otp-border);
    border-radius: 15px;
    box-shadow: 0 7px 26px rgba(15, 23, 42, .05);
}

.otp-page-viewticket .otp-ticket-composer .card-body {
    padding: 20px;
}

.otp-page-viewticket .otp-ticket-composer .card-title {
    margin-bottom: 18px;
    font-size: 18px;
}

.otp-page-viewticket .otp-ticket-composer textarea.form-control {
    min-height: 170px;
    background: #fbfcfe;
}

@media (max-width: 1199.98px) {
    .otp-theme .header form.form-inline.ml-auto {
        margin-right: 8px;
    }
}

@media (max-width: 767.98px) {
    .otp-services-page .otp-page-toolbar {
        align-items: stretch;
    }

    .otp-services-page .otp-toolbar-action {
        width: 100%;
        justify-content: center;
    }

    .otp-theme .dataTables_wrapper .dataTables_filter,
    .otp-theme .dataTables_wrapper .dataTables_filter label,
    .otp-theme .dataTables_wrapper .dataTables_filter .form-control {
        width: 100%;
    }

    .otp-page-clientareaproductdetails .otp-product-facts {
        grid-template-columns: 1fr;
        margin-top: 12px;
    }

    .otp-page-clientareaproductdetails .otp-product-fact,
    .otp-page-clientareaproductdetails .otp-product-fact:nth-child(2n) {
        border-right: 0;
    }

    .otp-page-clientareaproductdetails .nav-tabs {
        display: flex;
        flex-wrap: nowrap;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }

    .otp-page-clientareaproductdetails .nav-tabs .nav-item {
        flex: 0 0 auto;
    }

    .otp-page-viewticket .ticket-actions {
        float: none !important;
        display: flex;
        gap: 7px;
        margin-top: 12px !important;
    }

    .otp-page-viewticket .ticket-reply {
        max-width: 96%;
    }

    .otp-page-viewticket .otp-ticket-composer .card-body {
        padding: 16px;
    }
}

/* Corrections confirmed against the installed dashboard in Chrome. */
.otp-theme .topbar { background: var(--otp-navy-950) !important; }
.otp-theme .otp-v25-hero h2 { color: #ffffff !important; }
.otp-theme .otp-v25-home-panels .label-success {
    background: #dff5e9 !important;
    color: #09653b !important;
}
.otp-theme .otp-v25-home-panels .label-placeholder {
    background: #ececf0 !important;
    color: #3f4145 !important;
}
.otp-theme .otp-v25-home-panels .label[style*="#ff6600"] {
    background: #fff0d8 !important;
    color: #744600 !important;
}
.otp-theme.otp-page-clientareahome .btn-success {
    background: #0f7b4e;
    border-color: #0f7b4e;
    color: #ffffff;
}
.otp-theme footer.footer .otp-footer-brand p,
.otp-theme footer.footer .copyright,
.otp-theme footer.footer .otp-footer-status {
    color: rgba(255, 255, 255, .74) !important;
}
