/* ==========================================================================
   RCK Nova — WHMCS child theme for Twenty-One
   Loaded automatically after Twenty-One's theme.min.css
   ========================================================================== */

@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600&family=Space+Grotesk:wght@500;600;700&display=swap');

:root {
    --nova-bg: #06080e;
    --nova-surface: #0c1019;
    --nova-surface-2: #121826;
    --nova-surface-3: #19212f;
    --nova-border: #1f2939;
    --nova-border-strong: #2c3a50;
    --nova-text: #e7ecf5;
    --nova-muted: #8d98ae;
    --nova-accent: #00e1ff;
    --nova-accent-2: #8b5cf6;
    --nova-accent-ink: #001218;
    --nova-success: #22d39a;
    --nova-warning: #ffb547;
    --nova-danger: #ff4d6d;
    --nova-gradient: linear-gradient(120deg, var(--nova-accent) 0%, var(--nova-accent-2) 100%);
    --nova-radius: 14px;
    --nova-radius-sm: 9px;
    --nova-shadow: 0 10px 40px -12px rgba(0, 0, 0, .7);
    --nova-glow: 0 0 0 1px rgba(0, 225, 255, .35), 0 8px 30px -6px rgba(0, 225, 255, .45);
}

/* ---------- Base ---------- */
html, body {
    background: var(--nova-bg) !important;
    color: var(--nova-text);
    font-family: 'Inter', system-ui, -apple-system, sans-serif;
    -webkit-font-smoothing: antialiased;
}
h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6,
.card-title, .navbar-brand, .pricing-card-title {
    font-family: 'Space Grotesk', 'Inter', sans-serif;
    color: var(--nova-text);
    letter-spacing: -.02em;
}
a { color: var(--nova-accent); }
a:hover { color: #7cf0ff; text-decoration: none; }
hr { border-color: var(--nova-border); }
.text-muted, small.text-muted, .help-block { color: var(--nova-muted) !important; }
::selection { background: var(--nova-accent); color: var(--nova-accent-ink); }

#main-body, .primary-bg-color, section#main-body { background: transparent !important; }
#main-body { padding-top: 2rem; padding-bottom: 3rem; }

/* scrollbar */
* { scrollbar-color: var(--nova-border-strong) var(--nova-bg); }
::-webkit-scrollbar { width: 10px; height: 10px; }
::-webkit-scrollbar-track { background: var(--nova-bg); }
::-webkit-scrollbar-thumb { background: var(--nova-border-strong); border-radius: 10px; }

/* ---------- Header ---------- */
header.header,
.header {
    background: rgba(6, 8, 14, .82) !important;
    backdrop-filter: blur(14px) saturate(140%);
    -webkit-backdrop-filter: blur(14px) saturate(140%);
    border-bottom: 1px solid var(--nova-border);
    position: sticky;
    top: 0;
    z-index: 1030;
}
.header .topbar {
    background: transparent !important;
    border-bottom: 1px solid var(--nova-border);
    color: var(--nova-muted);
}
.header .topbar .btn,
.header .topbar a { color: var(--nova-muted) !important; }
.header .topbar a:hover { color: var(--nova-text) !important; }
.header .navbar,
.header .main-navbar-wrapper,
.navbar-light { background: transparent !important; }
.header .navbar-brand { color: var(--nova-text) !important; font-weight: 700; font-size: 1.35rem; }
.header .navbar-brand .logo-img { max-height: 40px; }
.navbar-light .navbar-nav .nav-link {
    color: var(--nova-muted) !important;
    font-weight: 500;
    border-radius: var(--nova-radius-sm);
    transition: color .15s, background .15s;
}
.navbar-light .navbar-nav .nav-link:hover,
.navbar-light .navbar-nav .active > .nav-link,
.navbar-light .navbar-nav .show > .nav-link {
    color: var(--nova-text) !important;
    background: var(--nova-surface-2);
}
.navbar-light .navbar-toggler { border-color: var(--nova-border-strong); color: var(--nova-text); }
.navbar-light .navbar-toggler-icon { filter: invert(1); }
.header .search .form-control,
.header .input-group .form-control { background: var(--nova-surface) !important; }
.header .cart-btn .badge,
.header .badge-info { background: var(--nova-gradient) !important; color: #fff; }

/* breadcrumb */
.master-breadcrumb { background: transparent !important; border-bottom: 1px solid var(--nova-border); }
.breadcrumb { background: transparent !important; margin: 0; }
.breadcrumb-item, .breadcrumb-item a { color: var(--nova-muted); }
.breadcrumb-item.active { color: var(--nova-text); }
.breadcrumb-item + .breadcrumb-item::before { color: var(--nova-border-strong); }

/* ---------- Hero ---------- */
.nova-hero {
    position: relative;
    overflow: hidden;
    padding: 7rem 0 5rem;
    background: radial-gradient(1200px 500px at 50% -10%, rgba(139, 92, 246, .28), transparent 60%),
                radial-gradient(900px 400px at 85% 10%, rgba(0, 225, 255, .18), transparent 60%),
                var(--nova-bg) !important;
    border-bottom: 1px solid var(--nova-border);
}
.nova-hero-inline { border-radius: var(--nova-radius); border: 1px solid var(--nova-border); padding: 5rem 1.5rem; margin-bottom: 3rem; }
.nova-hero-grid {
    position: absolute; inset: 0;
    background-image:
        linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px);
    background-size: 48px 48px;
    mask-image: radial-gradient(ellipse at 50% 30%, #000 30%, transparent 75%);
    -webkit-mask-image: radial-gradient(ellipse at 50% 30%, #000 30%, transparent 75%);
}
.nova-hero-glow {
    position: absolute; left: 50%; top: 58%;
    width: 640px; height: 240px; transform: translateX(-50%);
    background: var(--nova-gradient); filter: blur(120px); opacity: .22;
    animation: novaPulse 7s ease-in-out infinite;
}
@keyframes novaPulse { 0%,100% { opacity: .16; } 50% { opacity: .3; } }
.nova-pill {
    display: inline-flex; align-items: center; gap: .5rem;
    padding: .35rem .9rem; border-radius: 999px;
    background: rgba(255,255,255,.04); border: 1px solid var(--nova-border-strong);
    color: var(--nova-muted); font-size: .82rem; font-weight: 500;
}
.nova-dot {
    width: 8px; height: 8px; border-radius: 50%; background: var(--nova-success);
    box-shadow: 0 0 0 0 rgba(34, 211, 154, .7); animation: novaPing 2s infinite;
}
@keyframes novaPing { 0% { box-shadow: 0 0 0 0 rgba(34,211,154,.6); } 70% { box-shadow: 0 0 0 9px rgba(34,211,154,0); } 100% { box-shadow: 0 0 0 0 rgba(34,211,154,0); } }
.nova-hero-title {
    font-size: clamp(2.4rem, 6vw, 4.4rem); font-weight: 700; line-height: 1.04;
    margin: 1.4rem 0 1.1rem; letter-spacing: -.04em;
}
.nova-gradient-text {
    background: var(--nova-gradient); -webkit-background-clip: text; background-clip: text;
    color: transparent;
}
.nova-hero-sub { color: var(--nova-muted); font-size: 1.15rem; max-width: 620px; margin: 0 auto 2.2rem; }

.nova-domain-form { max-width: 720px; margin: 0 auto; }
.nova-domain-box {
    display: flex; align-items: center; gap: .5rem;
    background: rgba(12, 16, 25, .85); border: 1px solid var(--nova-border-strong);
    border-radius: 16px; padding: .45rem .45rem .45rem 1.1rem;
    box-shadow: var(--nova-shadow); transition: border-color .2s, box-shadow .2s;
}
.nova-domain-box:focus-within { border-color: var(--nova-accent); box-shadow: var(--nova-glow); }
.nova-domain-icon { color: var(--nova-muted); }
.nova-domain-box .form-control {
    flex: 1; background: transparent !important; border: 0 !important; box-shadow: none !important;
    font-size: 1.1rem; height: 50px; padding-left: .25rem;
}
.nova-domain-actions { display: flex; gap: .4rem; }
.nova-domain-actions .btn { height: 50px; padding: 0 1.4rem; border-radius: 11px; }
.nova-hero-stats {
    display: grid; grid-template-columns: repeat(4, 1fr); gap: 1rem;
    max-width: 720px; margin: 3rem auto 0;
}
.nova-hero-stats div { display: flex; flex-direction: column; }
.nova-hero-stats strong { font-family: 'Space Grotesk', sans-serif; font-size: 1.5rem; color: var(--nova-text); }
.nova-hero-stats span { color: var(--nova-muted); font-size: .85rem; }

/* ---------- Homepage sections ---------- */
.nova-section { margin: 1rem 0 4.5rem; }
.nova-section-head { text-align: center; margin-bottom: 2.5rem; }
.nova-section-head h2 { font-size: clamp(1.7rem, 3vw, 2.4rem); font-weight: 700; margin-top: .5rem; }
.nova-eyebrow {
    text-transform: uppercase; letter-spacing: .14em; font-size: .75rem; font-weight: 600;
    background: var(--nova-gradient); -webkit-background-clip: text; background-clip: text; color: transparent;
}
.nova-feature, .nova-product, .nova-shortcut {
    background: linear-gradient(180deg, var(--nova-surface-2), var(--nova-surface));
    border: 1px solid var(--nova-border); border-radius: var(--nova-radius);
    transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease;
}
.nova-feature { padding: 1.6rem; height: 100%; margin-bottom: 1.5rem; }
.nova-feature:hover, .nova-product:hover, .nova-shortcut:hover {
    transform: translateY(-4px); border-color: var(--nova-border-strong); box-shadow: var(--nova-shadow);
}
.nova-feature-icon {
    width: 46px; height: 46px; border-radius: 12px; display: grid; place-items: center;
    background: rgba(0, 225, 255, .1); color: var(--nova-accent); font-size: 1.15rem; margin-bottom: 1.1rem;
    border: 1px solid rgba(0, 225, 255, .25);
}
.nova-feature h3 { font-size: 1.1rem; font-weight: 600; margin-bottom: .45rem; }
.nova-feature p { color: var(--nova-muted); margin: 0; font-size: .94rem; }

.nova-product { position: relative; padding: 2rem 1.8rem; height: 100%; display: flex; flex-direction: column; }
.nova-product h3 { font-size: 1.45rem; font-weight: 700; }
.nova-product p { color: var(--nova-muted); flex: 1; }
.nova-product.is-featured { border-color: transparent; background:
    linear-gradient(var(--nova-surface-2), var(--nova-surface-2)) padding-box,
    var(--nova-gradient) border-box; border: 1px solid transparent; box-shadow: 0 20px 60px -20px rgba(139,92,246,.45); }
.nova-product-badge {
    position: absolute; top: -12px; right: 1.4rem; padding: .25rem .7rem; border-radius: 999px;
    background: var(--nova-gradient); color: #fff; font-size: .72rem; font-weight: 700; letter-spacing: .05em; text-transform: uppercase;
}

.nova-shortcut {
    display: flex; flex-direction: column; align-items: center; gap: .8rem;
    padding: 1.8rem 1rem; margin-bottom: 1.5rem; color: var(--nova-text) !important; text-align: center; font-weight: 500;
}
.nova-shortcut i { font-size: 1.6rem; color: var(--nova-accent); }

.nova-cta {
    display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 1.5rem;
    padding: 2.5rem; border-radius: 20px; border: 1px solid var(--nova-border-strong);
    background: radial-gradient(600px 200px at 0% 0%, rgba(0,225,255,.16), transparent 70%),
                radial-gradient(600px 200px at 100% 100%, rgba(139,92,246,.22), transparent 70%),
                var(--nova-surface);
}
.nova-cta h2 { margin: 0 0 .3rem; font-weight: 700; }
.nova-cta p { margin: 0; color: var(--nova-muted); }

/* ---------- Buttons ---------- */
.btn { border-radius: var(--nova-radius-sm); font-weight: 600; transition: all .18s ease; }
.btn-primary, .btn-success, .btn-checkout, .btn-order-now {
    background: var(--nova-gradient) !important; border: 0 !important; color: #fff !important;
    box-shadow: 0 6px 20px -8px rgba(0, 225, 255, .6);
}
.btn-primary:hover, .btn-success:hover, .btn-checkout:hover, .btn-order-now:hover,
.btn-primary:focus, .btn-success:focus {
    filter: brightness(1.12); transform: translateY(-1px); box-shadow: var(--nova-glow);
}
.btn-default, .btn-secondary, .btn-light {
    background: var(--nova-surface-3) !important; border: 1px solid var(--nova-border-strong) !important; color: var(--nova-text) !important;
}
.btn-default:hover, .btn-secondary:hover, .btn-light:hover { border-color: var(--nova-accent) !important; }
.btn-outline-primary, .btn-outline-light {
    color: var(--nova-text) !important; border: 1px solid var(--nova-border-strong) !important; background: transparent !important;
}
.btn-outline-primary:hover, .btn-outline-light:hover { border-color: var(--nova-accent) !important; color: var(--nova-accent) !important; background: rgba(0,225,255,.06) !important; }
.btn-danger { background: var(--nova-danger) !important; border: 0 !important; }
.btn-link { color: var(--nova-accent); }

/* ---------- Cards / panels ---------- */
.card, .panel, .client-home-cards .card, .card-sidebar, .well {
    background: var(--nova-surface) !important;
    border: 1px solid var(--nova-border) !important;
    border-radius: var(--nova-radius) !important;
    color: var(--nova-text);
    box-shadow: none;
}
.card-header, .card-footer, .panel-heading, .panel-footer {
    background: var(--nova-surface-2) !important;
    border-color: var(--nova-border) !important;
    color: var(--nova-text);
}
.card-header .card-title, .card-title { color: var(--nova-text); }
.card-sidebar .card-header { background: transparent !important; }
.card-sidebar .card-header .card-title i { color: var(--nova-accent); }

/* list groups (sidebars) */
.list-group-item {
    background: transparent !important; color: var(--nova-muted) !important;
    border-color: var(--nova-border) !important;
}
.list-group-item-action:hover, .list-group-item:hover { background: var(--nova-surface-2) !important; color: var(--nova-text) !important; }
.list-group-item.active {
    background: rgba(0, 225, 255, .08) !important; color: var(--nova-accent) !important;
    border-left: 3px solid var(--nova-accent) !important;
}
.list-group-item .badge { background: var(--nova-surface-3); color: var(--nova-text); }

/* client area tiles */
.tiles .tile {
    background: var(--nova-surface) !important; border: 1px solid var(--nova-border) !important;
    border-radius: var(--nova-radius); color: var(--nova-text); transition: border-color .2s, transform .2s;
}
.tiles .tile:hover { border-color: var(--nova-accent) !important; transform: translateY(-3px); }
.tiles .tile i { color: var(--nova-accent) !important; opacity: .9; }
.tiles .tile .stat { color: var(--nova-text) !important; font-family: 'Space Grotesk', sans-serif; }
.tiles .tile .title { color: var(--nova-muted) !important; }
.tiles .tile .highlight { background: var(--nova-gradient) !important; }

/* ---------- Forms ---------- */
.form-control, .custom-select, select.form-control, textarea.form-control,
.input-group-text, .select2-selection, .bootstrap-switch {
    background-color: var(--nova-surface-2) !important;
    border: 1px solid var(--nova-border-strong) !important;
    color: var(--nova-text) !important;
    border-radius: var(--nova-radius-sm);
}
.form-control::placeholder { color: #5f6b80; }
.form-control:focus, .custom-select:focus {
    border-color: var(--nova-accent) !important;
    box-shadow: 0 0 0 3px rgba(0, 225, 255, .18) !important;
}
.form-control:disabled, .form-control[readonly] { background: var(--nova-surface) !important; color: var(--nova-muted) !important; }
label, .control-label, .col-form-label { color: var(--nova-text); font-weight: 500; }
.custom-control-label::before { background: var(--nova-surface-2); border-color: var(--nova-border-strong); }
.custom-control-input:checked ~ .custom-control-label::before { background: var(--nova-accent); border-color: var(--nova-accent); }

/* ---------- Tables ---------- */
.table, .table-list, table.dataTable {
    color: var(--nova-text) !important; background: transparent !important;
}
.table th, .table td, .table thead th { border-color: var(--nova-border) !important; }
.table thead th, .table-list thead th, table.dataTable thead th {
    background: var(--nova-surface-2) !important; color: var(--nova-muted) !important;
    text-transform: uppercase; font-size: .75rem; letter-spacing: .06em; font-weight: 600;
}
.table-striped tbody tr:nth-of-type(odd) { background: rgba(255,255,255,.015) !important; }
.table-hover tbody tr:hover, .table-list > tbody > tr:hover > td { background: var(--nova-surface-2) !important; color: var(--nova-text); }
.table-list > tbody > tr > td { background: var(--nova-surface) !important; }
.dataTables_wrapper .dataTables_info, .dataTables_wrapper .dataTables_length,
.dataTables_wrapper .dataTables_filter { color: var(--nova-muted) !important; }
.dataTables_wrapper .dataTables_paginate .paginate_button { color: var(--nova-muted) !important; }
.dataTables_wrapper .dataTables_paginate .paginate_button.current {
    background: var(--nova-surface-3) !important; border-color: var(--nova-border-strong) !important; color: var(--nova-text) !important;
}
.page-link { background: var(--nova-surface); border-color: var(--nova-border); color: var(--nova-muted); }
.page-item.active .page-link { background: var(--nova-accent); border-color: var(--nova-accent); color: var(--nova-accent-ink); }
.page-item.disabled .page-link { background: var(--nova-surface); border-color: var(--nova-border); }

/* ---------- Status labels ---------- */
.label, .badge { border-radius: 999px; font-weight: 600; padding: .3em .7em; }
.label.status, .status { border: 1px solid transparent; }
.status-active, .status-paid, .status-open, .status-completed, .label-success, .badge-success {
    background: rgba(34, 211, 154, .12) !important; color: var(--nova-success) !important; border-color: rgba(34,211,154,.3) !important;
}
.status-pending, .status-unpaid, .status-answered, .status-customer-reply, .label-warning, .badge-warning {
    background: rgba(255, 181, 71, .12) !important; color: var(--nova-warning) !important; border-color: rgba(255,181,71,.3) !important;
}
.status-suspended, .status-terminated, .status-cancelled, .status-overdue, .status-closed, .status-fraud,
.label-danger, .badge-danger {
    background: rgba(255, 77, 109, .12) !important; color: var(--nova-danger) !important; border-color: rgba(255,77,109,.3) !important;
}
.label-info, .badge-info, .badge-primary { background: rgba(0, 225, 255, .12) !important; color: var(--nova-accent) !important; }

/* ---------- Alerts ---------- */
.alert { border-radius: var(--nova-radius-sm); border: 1px solid; }
.alert-info { background: rgba(0, 225, 255, .07); border-color: rgba(0,225,255,.25); color: #9cefff; }
.alert-success { background: rgba(34, 211, 154, .07); border-color: rgba(34,211,154,.25); color: #8ff0c9; }
.alert-warning { background: rgba(255, 181, 71, .07); border-color: rgba(255,181,71,.25); color: #ffd28e; }
.alert-danger, .alert-error { background: rgba(255, 77, 109, .07); border-color: rgba(255,77,109,.25); color: #ff9aac; }

/* ---------- Dropdowns, modals, popovers ---------- */
.dropdown-menu {
    background: var(--nova-surface-2) !important; border: 1px solid var(--nova-border-strong) !important;
    border-radius: var(--nova-radius-sm); box-shadow: var(--nova-shadow);
}
.dropdown-item { color: var(--nova-muted) !important; }
.dropdown-item:hover, .dropdown-item:focus, .dropdown-item.active { background: var(--nova-surface-3) !important; color: var(--nova-text) !important; }
.dropdown-divider { border-color: var(--nova-border) !important; }
.modal-content { background: var(--nova-surface) !important; border: 1px solid var(--nova-border-strong); border-radius: var(--nova-radius); color: var(--nova-text); }
.modal-header, .modal-footer { border-color: var(--nova-border) !important; }
.modal-backdrop.show { opacity: .75; }
.close { color: var(--nova-text); text-shadow: none; opacity: .6; }
.popover, .tooltip-inner { background: var(--nova-surface-3); color: var(--nova-text); }
.nav-tabs { border-color: var(--nova-border); }
.nav-tabs .nav-link { color: var(--nova-muted); border: 0; }
.nav-tabs .nav-link.active, .nav-tabs .nav-item.show .nav-link {
    background: transparent; color: var(--nova-text); border-bottom: 2px solid var(--nova-accent);
}
.progress { background: var(--nova-surface-3); }
.progress-bar { background: var(--nova-gradient); }

/* ---------- Store / cart (standard_cart) ---------- */
#order-standard_cart .header-lined h1,
#order-standard_cart .sub-heading span { background: var(--nova-bg) !important; color: var(--nova-text) !important; }
#order-standard_cart .sub-heading { border-color: var(--nova-border) !important; }
#order-standard_cart .product, #order-standard_cart .products .product {
    background: var(--nova-surface) !important; border: 1px solid var(--nova-border) !important; border-radius: var(--nova-radius) !important;
}
#order-standard_cart .products .product header { background: var(--nova-surface-2) !important; border-radius: var(--nova-radius) var(--nova-radius) 0 0; }
#order-standard_cart .products .product header span { color: var(--nova-text) !important; }
#order-standard_cart .products .product div.product-desc { color: var(--nova-muted); }
#order-standard_cart .products .product div.product-pricing span.price { color: var(--nova-text) !important; font-family: 'Space Grotesk', sans-serif; }
#order-standard_cart .order-summary, #order-standard_cart .summary-container {
    background: var(--nova-surface-2) !important; border: 1px solid var(--nova-border) !important; border-radius: var(--nova-radius);
}
#order-standard_cart .order-summary h2 { background: transparent !important; color: var(--nova-text) !important; }
#order-standard_cart .order-summary .total-due-today .amt { color: var(--nova-accent) !important; }
#order-standard_cart .view-cart-items-header, #order-standard_cart .view-cart-items .item {
    background: var(--nova-surface) !important; border-color: var(--nova-border) !important; color: var(--nova-text);
}
#order-standard_cart .view-cart-items-header { background: var(--nova-surface-2) !important; }
#order-standard_cart .field-container, #order-standard_cart .panel-addon {
    background: var(--nova-surface) !important; border-color: var(--nova-border) !important;
}
#order-standard_cart .panel-addon-selected { border-color: var(--nova-accent) !important; }
#order-standard_cart .panel-addon .panel-add { background: var(--nova-surface-3) !important; color: var(--nova-text); }
#order-standard_cart .domain-checker-container {
    background: linear-gradient(120deg, rgba(0,225,255,.12), rgba(139,92,246,.18)) !important; border-radius: var(--nova-radius);
}

/* ---------- Footer ---------- */
footer.footer, .footer {
    background: var(--nova-surface) !important;
    border-top: 1px solid var(--nova-border);
    color: var(--nova-muted);
    padding-top: 2.5rem;
}
.footer .nav-link, .footer a { color: var(--nova-muted) !important; }
.footer .nav-link:hover, .footer a:hover { color: var(--nova-accent) !important; }
.footer .copyright { color: #5f6b80; }
.footer .btn { background: var(--nova-surface-2) !important; border-color: var(--nova-border-strong) !important; color: var(--nova-muted) !important; }

/* ---------- Misc ---------- */
.header-lined h1, .header-lined h2 { color: var(--nova-text); }
.bg-white, .bg-light { background: var(--nova-surface) !important; }
.border, .border-top, .border-bottom { border-color: var(--nova-border) !important; }
pre, code { background: var(--nova-surface-2); color: #7cf0ff; border-radius: 6px; }
.ticket-reply, .ticket-reply .posted-by, .kb-article-content, .announcement-single {
    background: var(--nova-surface) !important; border-color: var(--nova-border) !important; color: var(--nova-text);
}
.ticket-reply.staff { border-left: 3px solid var(--nova-accent) !important; }

/* ---------- Responsive ---------- */
@media (max-width: 767.98px) {
    .nova-hero { padding: 4.5rem 0 3.5rem; }
    .nova-domain-box { flex-wrap: wrap; padding: .6rem; }
    .nova-domain-icon { display: none; }
    .nova-domain-box .form-control { flex-basis: 100%; }
    .nova-domain-actions { width: 100%; }
    .nova-domain-actions .btn { flex: 1; }
    .nova-hero-stats { grid-template-columns: repeat(2, 1fr); }
    .nova-cta { padding: 1.8rem; text-align: center; justify-content: center; }
}

@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after { animation: none !important; transition: none !important; }
}

/* ---------- Hero: TLD chips + advanced search ---------- */
.nova-domain-meta {
    display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: .5rem;
    margin-top: 1.1rem;
}
.nova-tld {
    padding: .3rem .75rem; border-radius: 999px; font-size: .85rem; color: var(--nova-muted);
    background: rgba(255,255,255,.03); border: 1px solid var(--nova-border);
}
.nova-tld strong { color: var(--nova-text); margin-right: .3rem; }
.nova-tld-link { font-size: .85rem; margin-left: .4rem; }
.nova-domain-box.nova-advanced { align-items: stretch; }
.nova-domain-box textarea.form-control { min-height: 50px; resize: vertical; padding-top: .8rem; }
.nova-advanced-opts {
    display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: .6rem; margin-top: .9rem;
    color: var(--nova-muted);
}
.nova-advanced-opts .btn-group .btn { background: var(--nova-surface-2) !important; border: 1px solid var(--nova-border-strong) !important; color: var(--nova-text) !important; }
.nova-advanced-opts label { margin: 0; font-weight: 400; color: var(--nova-muted); }
#frmDomainHomepage .captcha-container, #frmDomainHomepage #default-captcha-domainchecker { margin-top: 1rem; color: var(--nova-muted); }

/* ==========================================================================
   RCK Nova — custom layout components
   ========================================================================== */

/* ---------- Announcement strip ---------- */
.nova-announce {
    background: linear-gradient(90deg, rgba(0,225,255,.12), rgba(139,92,246,.18));
    border-bottom: 1px solid var(--nova-border);
    font-size: .86rem; color: var(--nova-text); text-align: center; padding: .5rem 0;
}
.nova-announce a { font-weight: 600; margin-left: .4rem; }
.nova-announce-tag {
    display: inline-block; padding: .05rem .5rem; margin-right: .5rem; border-radius: 999px;
    background: var(--nova-gradient); color: #fff; font-size: .7rem; font-weight: 700; text-transform: uppercase;
}

/* ---------- Header ---------- */
.nova-header { border-bottom: 1px solid var(--nova-border); }
.nova-nav { padding: .85rem 0 !important; flex-wrap: wrap; }
.nova-brand { display: inline-flex; align-items: center; gap: .6rem; color: var(--nova-text) !important; text-decoration: none !important; }
.nova-brand .logo-img { max-height: 38px; }
.nova-brand-mark {
    width: 36px; height: 36px; border-radius: 10px; display: grid; place-items: center;
    background: var(--nova-gradient); color: #fff; font-size: 1rem;
    box-shadow: 0 6px 20px -6px rgba(0,225,255,.6);
}
.nova-brand-name { font-family: 'Space Grotesk', sans-serif; font-weight: 700; font-size: 1.2rem; letter-spacing: -.02em; }

.nova-nav-main .nav-link {
    color: var(--nova-muted) !important; font-weight: 500; font-size: .95rem;
    padding: .5rem .85rem !important; border-radius: 8px; transition: color .15s, background .15s;
}
.nova-nav-main .nav-link:hover, .nova-nav-main .show > .nav-link, .nova-nav-main .active > .nav-link {
    color: var(--nova-text) !important; background: var(--nova-surface-2);
}
.nova-nav .dropdown-toggle::after { border-top-color: currentColor; opacity: .6; vertical-align: .15em; }
.nova-nav-badge { margin-left: .35rem; padding: .05rem .4rem; border-radius: 999px; font-size: .7rem; background: var(--nova-surface-3); color: var(--nova-text); }

.nova-dropdown { padding: .5rem; min-width: 220px; margin-top: .6rem !important; }
.nova-dropdown .dropdown-item { border-radius: 8px; padding: .5rem .75rem; font-size: .92rem; }
.nova-mega-menu { min-width: 520px; display: none; grid-template-columns: 1fr 1fr; gap: .35rem; padding: .6rem; }
.nova-mega.show .nova-mega-menu { display: grid; }
.nova-mega-item {
    display: flex; gap: .8rem; align-items: flex-start; padding: .75rem; border-radius: 10px;
    color: var(--nova-text) !important; transition: background .15s;
}
.nova-mega-item:hover { background: var(--nova-surface-3); }
.nova-mega-item strong { display: block; font-size: .95rem; }
.nova-mega-item small { display: block; color: var(--nova-muted); font-size: .8rem; margin-top: .1rem; }
.nova-mega-icon {
    flex: 0 0 38px; height: 38px; border-radius: 10px; display: grid; place-items: center;
    background: rgba(0,225,255,.1); color: var(--nova-accent); border: 1px solid rgba(0,225,255,.25);
}

.nova-nav-actions { display: flex; align-items: center; gap: .5rem; margin-left: auto; }
.nova-nav .navbar-collapse { order: 2; }
.nova-nav-actions { order: 3; }
@media (min-width: 1200px) {
    .nova-nav .navbar-collapse { order: 1; }
    .nova-nav { flex-wrap: nowrap; }
}
.nova-search {
    align-items: center; gap: .5rem; height: 38px; padding: 0 .8rem; border-radius: 10px;
    background: var(--nova-surface); border: 1px solid var(--nova-border); color: var(--nova-muted); margin: 0;
}
.nova-search input { background: transparent; border: 0; outline: 0; color: var(--nova-text); width: 150px; font-size: .88rem; }
.nova-search:focus-within { border-color: var(--nova-accent); }
.nova-icon-btn {
    position: relative; width: 38px; height: 38px; border-radius: 10px; display: inline-grid; place-items: center;
    background: var(--nova-surface); border: 1px solid var(--nova-border); color: var(--nova-text) !important; cursor: pointer;
}
.nova-icon-btn:hover { border-color: var(--nova-accent); }
.nova-icon-dot {
    position: absolute; top: -6px; right: -6px; min-width: 18px; height: 18px; padding: 0 5px; border-radius: 999px;
    background: var(--nova-gradient); color: #fff; font-size: .68rem; font-weight: 700; display: grid; place-items: center;
}
.nova-icon-dot.is-empty { display: none; }
.nova-link-btn { color: var(--nova-muted) !important; font-weight: 600; padding: .4rem .7rem; }
.nova-link-btn:hover { color: var(--nova-text) !important; }
.nova-cta-btn { padding: .5rem 1rem; }
.nova-account .nav-link { color: var(--nova-text) !important; background: var(--nova-surface); border: 1px solid var(--nova-border); border-radius: 10px; padding: .45rem .85rem !important; font-weight: 500; }
.nova-account .nav-item + .nav-item { margin-left: .4rem; }
.nova-admin-bar { background: rgba(255,181,71,.1); border-top: 1px solid rgba(255,181,71,.25); color: var(--nova-warning); font-size: .85rem; padding: .4rem 0; }
.nova-admin-bar a { color: var(--nova-warning) !important; font-weight: 600; }

@media (max-width: 1199.98px) {
    .nova-nav .navbar-collapse { flex-basis: 100%; }
    .nova-nav .navbar-collapse.show, .nova-nav .navbar-collapse.collapsing {
        margin-top: .8rem; padding: .8rem; border-radius: var(--nova-radius);
        background: var(--nova-surface); border: 1px solid var(--nova-border);
    }
    .nova-mega-menu { min-width: 0; grid-template-columns: 1fr; position: static !important; transform: none !important; }
    .nova-mobile-account { margin-top: .8rem; padding-top: .8rem; border-top: 1px solid var(--nova-border); }
    .nova-mobile-account .btn + .btn { margin-top: .5rem; }
}

/* ---------- Page head (inner pages) ---------- */
.nova-page-head {
    position: relative; padding: 2.2rem 0 1.8rem; border-bottom: 1px solid var(--nova-border);
    background: radial-gradient(700px 200px at 10% 0%, rgba(139,92,246,.16), transparent 70%),
                radial-gradient(600px 200px at 90% 0%, rgba(0,225,255,.10), transparent 70%);
}
.nova-page-head .master-breadcrumb { border: 0; }
.nova-page-head .breadcrumb { padding: 0; font-size: .85rem; }
.nova-page-title { font-size: clamp(1.6rem, 3vw, 2.3rem); font-weight: 700; margin: .5rem 0 0; }
.nova-full #main-body, #main-body.nova-main-full { padding: 0 !important; }

/* ---------- Bands & generic ---------- */
.nova-band { padding: 5rem 0; }
.nova-band-alt { background: linear-gradient(180deg, transparent, rgba(255,255,255,.015) 20%, rgba(255,255,255,.015) 80%, transparent); border-top: 1px solid var(--nova-border); border-bottom: 1px solid var(--nova-border); }
.nova-section-head p { color: var(--nova-muted); max-width: 560px; margin: .6rem auto 0; }
.nova-h2 { font-size: clamp(1.7rem, 3vw, 2.3rem); font-weight: 700; margin: .5rem 0 1rem; }
.nova-hero-ctas { display: flex; gap: .7rem; flex-wrap: wrap; }
.nova-cta-btns { display: flex; gap: .7rem; flex-wrap: wrap; }

/* ---------- Page hero (marketing pages) ---------- */
.nova-page-hero {
    position: relative; overflow: hidden; padding: 6rem 0 5rem; border-bottom: 1px solid var(--nova-border);
    background: radial-gradient(900px 400px at 20% -10%, rgba(139,92,246,.26), transparent 60%),
                radial-gradient(700px 400px at 90% 20%, rgba(0,225,255,.16), transparent 60%);
}
.nova-page-hero .nova-hero-title { font-size: clamp(2.2rem, 5vw, 3.8rem); }

.nova-mock-window, .nova-auth-terminal {
    position: relative; background: rgba(12,16,25,.9); border: 1px solid var(--nova-border-strong);
    border-radius: 16px; box-shadow: var(--nova-shadow), 0 0 80px -30px rgba(0,225,255,.4); overflow: hidden;
}
.nova-term-bar { display: flex; gap: 6px; align-items: center; padding: .7rem .9rem; border-bottom: 1px solid var(--nova-border); background: var(--nova-surface-2); }
.nova-term-bar span { width: 11px; height: 11px; border-radius: 50%; background: #ff5f57; }
.nova-term-bar span:nth-child(2) { background: #febc2e; }
.nova-term-bar span:nth-child(3) { background: #28c840; }
.nova-term-bar em { margin-left: .6rem; font-style: normal; font-size: .8rem; color: var(--nova-muted); }
.nova-auth-terminal pre, .nova-term-lg pre {
    margin: 0; padding: 1.2rem 1.3rem; background: transparent !important; color: var(--nova-text);
    font-size: .88rem; line-height: 1.7; font-family: 'JetBrains Mono', ui-monospace, Menlo, Consolas, monospace;
}
.t-ok { color: var(--nova-success); } .t-dim { color: var(--nova-muted); } .t-acc { color: var(--nova-accent); }
.t-cursor { animation: novaBlink 1s steps(1) infinite; color: var(--nova-accent); }
@keyframes novaBlink { 50% { opacity: 0; } }
.nova-mock-body { padding: 1.4rem; }
.nova-mock-row { display: flex; justify-content: space-between; align-items: center; padding: .7rem 0; border-bottom: 1px solid var(--nova-border); }
.nova-mock-row strong { color: var(--nova-accent); font-family: 'Space Grotesk', sans-serif; }
.nova-chip-ok { font-size: .75rem; padding: .15rem .6rem; border-radius: 999px; background: rgba(34,211,154,.12); color: var(--nova-success); border: 1px solid rgba(34,211,154,.3); }
.nova-mock-bar { height: 8px; border-radius: 99px; background: var(--nova-surface-3); margin: 1.2rem 0 .5rem; overflow: hidden; }
.nova-mock-bar span { display: block; height: 100%; background: var(--nova-gradient); border-radius: 99px; }
.nova-mock-body small { color: var(--nova-muted); }

/* ---------- Path cards (homepage) ---------- */
.nova-path {
    display: block; height: 100%; padding: 2.2rem; border-radius: 20px; color: var(--nova-text) !important;
    background: radial-gradient(500px 220px at 0% 0%, rgba(0,225,255,.12), transparent 70%), var(--nova-surface);
    border: 1px solid var(--nova-border); transition: transform .2s, border-color .2s, box-shadow .2s;
}
.nova-path-alt { background: radial-gradient(500px 220px at 100% 0%, rgba(139,92,246,.18), transparent 70%), var(--nova-surface); }
.nova-path:hover { transform: translateY(-4px); border-color: var(--nova-border-strong); box-shadow: var(--nova-shadow); }
.nova-path-icon { width: 54px; height: 54px; border-radius: 14px; display: grid; place-items: center; font-size: 1.4rem; background: var(--nova-gradient); color: #fff; margin-bottom: 1.3rem; }
.nova-path h3 { font-size: 1.6rem; font-weight: 700; }
.nova-path p { color: var(--nova-muted); }
.nova-path ul, .nova-plan-features { list-style: none; padding: 0; margin: 1.2rem 0; }
.nova-path li, .nova-plan-features li { padding: .3rem 0; color: var(--nova-text); }
.nova-path li i, .nova-plan-features li i { color: var(--nova-success); margin-right: .5rem; font-size: .85rem; }
.nova-path-link { font-weight: 600; color: var(--nova-accent); }
.nova-path:hover .nova-path-link i { transform: translateX(4px); }
.nova-path-link i { transition: transform .2s; }

/* ---------- Plan cards ---------- */
.nova-plan {
    position: relative; height: 100%; display: flex; flex-direction: column; padding: 2rem 1.7rem;
    border-radius: 18px; background: var(--nova-surface); border: 1px solid var(--nova-border);
    transition: transform .2s, border-color .2s;
}
.nova-plan:hover { transform: translateY(-4px); border-color: var(--nova-border-strong); }
.nova-plan.is-featured {
    background: linear-gradient(var(--nova-surface-2), var(--nova-surface-2)) padding-box, var(--nova-gradient) border-box;
    border: 1px solid transparent; box-shadow: 0 24px 70px -24px rgba(139,92,246,.55);
}
.nova-plan-name { font-size: 1.15rem; font-weight: 600; color: var(--nova-muted); }
.nova-plan-price { margin: .4rem 0 .6rem; }
.nova-plan-price strong { font-family: 'Space Grotesk', sans-serif; font-size: 2.6rem; font-weight: 700; color: var(--nova-text); letter-spacing: -.03em; }
.nova-plan-price span { color: var(--nova-muted); margin-left: .25rem; }
.nova-plan-features { flex: 1; border-top: 1px solid var(--nova-border); padding-top: 1rem; }
.nova-empty { text-align: center; padding: 3rem; border: 1px dashed var(--nova-border-strong); border-radius: 18px; color: var(--nova-muted); }
.nova-empty i { font-size: 2rem; color: var(--nova-accent); margin-bottom: 1rem; }

/* ---------- FAQ ---------- */
.nova-faq { max-width: 760px; margin: 0 auto; }
.nova-faq details { border: 1px solid var(--nova-border); border-radius: 12px; background: var(--nova-surface); margin-bottom: .7rem; padding: 0 1.2rem; }
.nova-faq summary { cursor: pointer; padding: 1.1rem 0; font-weight: 600; list-style: none; display: flex; justify-content: space-between; }
.nova-faq summary::-webkit-details-marker { display: none; }
.nova-faq summary::after { content: '+'; color: var(--nova-accent); font-size: 1.3rem; line-height: 1; }
.nova-faq details[open] summary::after { content: '−'; }
.nova-faq details p { color: var(--nova-muted); padding-bottom: 1.1rem; margin: 0; }

/* ---------- VPS use cases / About ---------- */
.nova-usecase { display: flex; align-items: center; gap: .8rem; padding: 1.1rem; margin-bottom: 1rem; border-radius: 12px; background: var(--nova-surface); border: 1px solid var(--nova-border); font-weight: 500; }
.nova-usecase i { color: var(--nova-accent); font-size: 1.2rem; width: 24px; text-align: center; }
.nova-about-stats strong { display: block; font-family: 'Space Grotesk', sans-serif; font-size: 2.6rem; font-weight: 700; background: var(--nova-gradient); -webkit-background-clip: text; background-clip: text; color: transparent; }
.nova-about-stats span { color: var(--nova-muted); }
.nova-about-stats > div { margin-bottom: 1.5rem; }
.nova-value { display: flex; gap: 1rem; padding: 1.3rem; margin-bottom: 1rem; border-radius: 14px; background: var(--nova-surface); border: 1px solid var(--nova-border); }
.nova-value > i { flex: 0 0 44px; height: 44px; border-radius: 12px; display: grid; place-items: center; background: rgba(0,225,255,.1); color: var(--nova-accent); }
.nova-value h3 { font-size: 1.05rem; margin: 0 0 .25rem; }
.nova-value p { color: var(--nova-muted); margin: 0; }

/* ---------- Login ---------- */
.nova-auth { display: grid; grid-template-columns: 1fr 1fr; min-height: calc(100vh - 110px); }
.nova-auth-side {
    position: relative; overflow: hidden; display: flex; align-items: center; padding: 4rem;
    border-right: 1px solid var(--nova-border);
    background: radial-gradient(700px 400px at 0% 0%, rgba(139,92,246,.3), transparent 60%),
                radial-gradient(600px 400px at 100% 100%, rgba(0,225,255,.18), transparent 60%), var(--nova-bg);
}
.nova-auth-side-inner { position: relative; max-width: 480px; }
.nova-auth-side h2 { font-size: clamp(2rem, 3vw, 2.8rem); font-weight: 700; margin: 1.2rem 0 .8rem; letter-spacing: -.03em; }
.nova-auth-side p { color: var(--nova-muted); font-size: 1.05rem; }
.nova-auth-points { list-style: none; padding: 0; margin: 1.6rem 0 2rem; }
.nova-auth-points li { padding: .45rem 0; color: var(--nova-text); }
.nova-auth-points i { color: var(--nova-accent); width: 22px; margin-right: .5rem; }
.nova-auth-main { display: flex; align-items: center; justify-content: center; padding: 3rem 1.5rem; }
.nova-auth-card { width: 100%; max-width: 420px; }
.nova-auth-title { font-size: 2rem; font-weight: 700; margin-bottom: .3rem; }
.nova-auth-sub { color: var(--nova-muted); margin-bottom: 2rem; }
.nova-auth-forgot { font-size: .85rem; color: var(--nova-muted); }
.nova-input { position: relative; display: flex; align-items: center; }
.nova-input > i { position: absolute; left: 1rem; z-index: 5; color: var(--nova-muted); pointer-events: none; }
.nova-input .form-control { height: 50px; padding-left: 2.7rem; border-radius: 12px !important; }
.nova-input.input-group .form-control { border-top-right-radius: 0 !important; border-bottom-right-radius: 0 !important; }
.nova-reveal { height: 50px; background: var(--nova-surface-2) !important; border: 1px solid var(--nova-border-strong) !important; border-left: 0 !important; color: var(--nova-muted) !important; border-radius: 0 12px 12px 0 !important; }
.nova-check { display: flex; align-items: center; gap: .5rem; color: var(--nova-muted); font-weight: 400; margin: .3rem 0 1.4rem; cursor: pointer; }
.nova-check input { accent-color: var(--nova-accent); width: 16px; height: 16px; }
.nova-auth-switch { text-align: center; color: var(--nova-muted); margin-top: 1.6rem; }
.nova-auth-switch a { font-weight: 600; }
.nova-auth-linked { margin-top: 1rem; }
@media (max-width: 991.98px) {
    .nova-auth { grid-template-columns: 1fr; }
    .nova-auth-side { display: none; }
}

/* ---------- Client dashboard ---------- */
.nova-dash { padding: 2.5rem 0 4rem; }
.nova-dash-hero {
    display: flex; justify-content: space-between; align-items: flex-end; flex-wrap: wrap; gap: 1.5rem;
    padding: 2.2rem; margin-bottom: 1.8rem; border-radius: 20px; border: 1px solid var(--nova-border);
    background: radial-gradient(600px 220px at 0% 0%, rgba(139,92,246,.22), transparent 70%),
                radial-gradient(500px 200px at 100% 100%, rgba(0,225,255,.12), transparent 70%), var(--nova-surface);
}
.nova-dash-hero h1 { font-size: clamp(1.7rem, 3vw, 2.4rem); font-weight: 700; margin: .4rem 0 .3rem; }
.nova-dash-hero p { color: var(--nova-muted); margin: 0; }
.nova-dash-actions { display: flex; gap: .6rem; flex-wrap: wrap; }
.nova-stats > div { margin-bottom: 1.5rem; }
.nova-stat {
    position: relative; display: flex; flex-direction: column; padding: 1.4rem; border-radius: 16px; height: 100%;
    background: var(--nova-surface); border: 1px solid var(--nova-border); color: var(--nova-text) !important;
    transition: transform .2s, border-color .2s;
}
.nova-stat:hover { transform: translateY(-3px); border-color: var(--nova-border-strong); }
.nova-stat.is-alert { border-color: rgba(255,181,71,.35); }
.nova-stat-icon { width: 40px; height: 40px; border-radius: 11px; display: grid; place-items: center; margin-bottom: 1rem; }
.c-cyan { background: rgba(0,225,255,.12); color: var(--nova-accent); }
.c-green { background: rgba(34,211,154,.12); color: var(--nova-success); }
.c-violet { background: rgba(139,92,246,.15); color: #b39bff; }
.c-amber { background: rgba(255,181,71,.12); color: var(--nova-warning); }
.nova-stat-num { font-family: 'Space Grotesk', sans-serif; font-size: 2.2rem; font-weight: 700; line-height: 1; }
.nova-stat-label { color: var(--nova-muted); margin-top: .35rem; font-size: .9rem; }
.nova-stat-flag { position: absolute; top: 1.2rem; right: 1.2rem; font-size: .7rem; font-weight: 700; text-transform: uppercase; padding: .15rem .55rem; border-radius: 999px; background: rgba(255,181,71,.15); color: var(--nova-warning); }
.nova-panels .card { margin-bottom: 1.5rem; }
.nova-panels .card-header { background: transparent !important; }
.nova-panels .card-footer:empty { display: none; }
.nova-rail-card { padding: 1.4rem; margin-bottom: 1.5rem; border-radius: 16px; background: var(--nova-surface); border: 1px solid var(--nova-border); }
.nova-rail-card h3 { font-size: 1.1rem; margin: .8rem 0 .1rem; }
.nova-rail-card h4 { font-size: .8rem; text-transform: uppercase; letter-spacing: .1em; color: var(--nova-muted); margin-bottom: .8rem; font-family: 'Inter', sans-serif; font-weight: 600; }
.nova-avatar { width: 56px; height: 56px; border-radius: 16px; display: grid; place-items: center; background: var(--nova-gradient); color: #fff; font-family: 'Space Grotesk', sans-serif; font-weight: 700; font-size: 1.3rem; text-transform: uppercase; }
.nova-rail-link { display: flex; align-items: center; gap: .7rem; padding: .55rem .6rem; margin: 0 -.6rem; border-radius: 8px; color: var(--nova-text) !important; font-size: .93rem; }
.nova-rail-link:hover { background: var(--nova-surface-2); }
.nova-rail-link i { width: 18px; color: var(--nova-accent); text-align: center; }
.nova-rail-promo { background: radial-gradient(300px 160px at 100% 0%, rgba(139,92,246,.25), transparent 70%), var(--nova-surface); }
.nova-rail-promo h4 { color: var(--nova-text); }
.nova-rail-promo p { color: var(--nova-muted); font-size: .9rem; }

/* ---------- Footer ---------- */
.nova-footer { padding: 4.5rem 0 0 !important; background: var(--nova-surface) !important; }
.nova-footer h6 { font-family: 'Inter', sans-serif; text-transform: uppercase; letter-spacing: .12em; font-size: .75rem; color: var(--nova-text); margin-bottom: 1.1rem; }
.nova-footer-blurb { color: var(--nova-muted); max-width: 320px; margin: 1.1rem 0 1.3rem; }
.nova-footer-links { list-style: none; padding: 0; margin: 0; }
.nova-footer-links li { margin-bottom: .6rem; }
.nova-footer-links a { color: var(--nova-muted) !important; font-size: .93rem; }
.nova-footer-links a:hover { color: var(--nova-text) !important; }
.nova-social { list-style: none; padding: 0; display: flex; gap: .5rem; }
.nova-social a { width: 36px; height: 36px; border-radius: 10px; display: grid; place-items: center; background: var(--nova-surface-2); border: 1px solid var(--nova-border); color: var(--nova-muted) !important; }
.nova-social a:hover { color: var(--nova-accent) !important; border-color: var(--nova-accent); }
.nova-status-chip { display: inline-flex; align-items: center; gap: .5rem; padding: .4rem .8rem; border-radius: 999px; font-size: .85rem; background: rgba(34,211,154,.08); border: 1px solid rgba(34,211,154,.25); color: var(--nova-success) !important; }
.nova-footer-bottom { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 1rem; padding: 1.6rem 0; margin-top: 1.5rem; border-top: 1px solid var(--nova-border); }
.nova-locale-btn { background: var(--nova-surface-2); border: 1px solid var(--nova-border); color: var(--nova-muted); border-radius: 10px; padding: .4rem .8rem; font-size: .85rem; }
.nova-locale-btn .iti-flag { display: inline-block; vertical-align: middle; margin-right: .3rem; }

/* sticky header no longer needs topbar spacing */
.header .topbar { display: none; }

/* ---------- Header fit fixes ---------- */
.nova-brand, .nova-nav-main .nav-link, .nova-nav-actions, .nova-nav-actions .btn, .nova-link-btn, .nova-account .nav-link { white-space: nowrap; }
.nova-brand { flex-shrink: 0; margin-right: 1rem; }
.nova-nav-actions { flex-shrink: 0; }
@media (min-width: 1200px) {
    .nova-nav-main .nav-link { padding: .5rem .6rem !important; font-size: .9rem; }
}
@media (max-width: 1439.98px) {
    .nova-search { display: none !important; }
}
#Primary_Navbar-Home { display: none !important; }      /* logo already links home */
@media (min-width: 1200px) { .nova-header > .container { max-width: 1320px; } }
@media (max-width: 1599.98px) { .nova-search { display: none !important; } }
.nova-panels .card-header { border-bottom: 1px solid var(--nova-border) !important; }
.client-home-cards .card, .client-home-cards .card-header, .client-home-cards .list-group-item,
.client-home-cards .card-footer { border-color: var(--nova-border) !important; }
.client-home-cards .card[class*="card-accent-"] { border-top: 2px solid var(--nova-accent) !important; }


/* ==========================================================================
   RCK Nova — auto-generated dark overrides for every light color in
   Twenty-One and Standard Cart (regenerated from WHMCS 9 sources)
   ========================================================================== */
/* ---- generated from standard_cart ---- */
html body.nova #order-standard_cart label, html body.nova #order-standard_cart p.domain-renewal-desc, html body.nova .service-renewals .div-renewal-period-label { color: var(--nova-muted) !important; }
html body.nova #order-standard_cart .sub-heading { border-top-color: var(--nova-border) !important; }
html body.nova #order-standard_cart .domain-checker-advanced .multiselect { color: var(--nova-text) !important; }
html body.nova #order-standard_cart .domain-checker-advanced label { color: var(--nova-text) !important; }
html body.nova #order-standard_cart .domain-checker-advanced input[type="checkbox"] { background: var(--nova-surface) !important; }
html body.nova #order-standard_cart .products .product { background: var(--nova-surface) !important; border-color: var(--nova-border) !important; }
html body.nova #order-standard_cart .products .product header { background: var(--nova-surface) !important; }
html body.nova #order-standard_cart .products .product header span { color: var(--nova-text) !important; }
html body.nova #order-standard_cart .products .product header .qty { color: var(--nova-muted) !important; }
html body.nova #order-standard_cart .panel-addon .panel-body label { color: var(--nova-text) !important; }
html body.nova #order-standard_cart .panel-addon .panel-price { background-color: var(--nova-surface-2) !important; }
html body.nova #order-standard_cart .domain-selection-options .option { background-color: var(--nova-surface) !important; }
html body.nova #order-standard_cart .domain-selection-options .option-selected { background-color: var(--nova-surface-2) !important; }
html body.nova #order-standard_cart .domain-checker-available { color: var(--nova-muted) !important; }
html body.nova #order-standard_cart .transfer-eligible { color: var(--nova-muted) !important; }
html body.nova #order-standard_cart .transfer-not-eligible { color: var(--nova-muted) !important; background-color: var(--nova-surface) !important; }
html body.nova #order-standard_cart .product-info { background-color: var(--nova-surface) !important; border-top-color: var(--nova-border) !important; border-bottom-color: var(--nova-border) !important; }
html body.nova #order-standard_cart .summary-container { background-color: var(--nova-surface) !important; }
html body.nova #order-standard_cart .order-summary .summary-totals { border-top-color: var(--nova-border) !important; border-bottom-color: var(--nova-border) !important; }
html body.nova #order-standard_cart .apply-credit-container { background-color: var(--nova-surface-2) !important; }
html body.nova #order-standard_cart .cc-input-container { background-color: var(--nova-surface) !important; border-color: var(--nova-border) !important; }
html body.nova #order-standard_cart .cc-input-container .existing-cc-grid { color: var(--nova-muted) !important; }
html body.nova #order-standard_cart .field, html body.nova #order-standard_cart .form-control { border-color: var(--nova-border) !important; color: var(--nova-muted) !important; background-color: var(--nova-surface) !important; }
html body.nova #order-standard_cart .field[disabled], html body.nova #order-standard_cart .field[readonly], html body.nova #order-standard_cart .form-control[disabled], html body.nova #order-standard_cart .form-control[readonly] { background-color: var(--nova-surface) !important; }
html body.nova #order-standard_cart .field-help-text { color: var(--nova-muted) !important; }
html body.nova #order-standard_cart .view-cart-items .item { background-color: var(--nova-surface) !important; }
html body.nova #order-standard_cart .view-cart-items .item:nth-child(even) { background-color: var(--nova-surface-2) !important; }
html body.nova #order-standard_cart .view-cart-items .item-domain { color: var(--nova-text) !important; }
html body.nova #order-standard_cart .order-summary .subtotal { border-bottom-color: var(--nova-border) !important; }
html body.nova #order-standard_cart .order-summary .bordered-totals { border-bottom-color: var(--nova-border) !important; }
html body.nova #order-standard_cart .order-summary .recurring-charges { color: var(--nova-muted) !important; }
html body.nova #order-standard_cart .view-cart-tabs .nav-tabs a[aria-selected="true"], html body.nova #order-standard_cart .view-cart-tabs .nav-tabs a[aria-expanded="true"] { border-color: var(--nova-border) !important; background-color: var(--nova-surface) !important; }
html body.nova #order-standard_cart .view-cart-tabs .tab-content { background-color: var(--nova-surface) !important; }
html body.nova #order-standard_cart .view-cart-promotion-code { background-color: var(--nova-surface) !important; border-color: var(--nova-border) !important; }
html body.nova #order-standard_cart .view-cart-gateway-checkout { background-color: var(--nova-surface-2) !important; }
html body.nova div.domainresults div:not(.btn-group) { background-color: var(--nova-surface-2) !important; }
html body.nova .domain-checker-container .input-group-box { background-color: var(--nova-surface) !important; }
html body.nova .domain-checker-available { color: var(--nova-muted) !important; }
html body.nova .domain-pricing .tld-row { border-bottom-color: var(--nova-border) !important; }
html body.nova .domain-pricing .tld-pricing-header .col-xs-2, html body.nova .domain-pricing .tld-pricing-header .col-sm-2, html body.nova .domain-pricing .tld-pricing-header .col-xs-4, html body.nova .domain-pricing .tld-pricing-header .col-sm-4 { background-color: var(--nova-surface-2) !important; }
html body.nova .domain-pricing .tld-pricing-header div:nth-child(odd) { background-color: var(--nova-surface) !important; }
html body.nova .spotlight-tlds { background-color: var(--nova-surface) !important; }
html body.nova .spotlight-tld { background-color: var(--nova-surface) !important; border-color: var(--nova-border) !important; color: var(--nova-muted) !important; }
html body.nova .spotlight-tld .unavailable, html body.nova .spotlight-tld .invalid { background-color: var(--nova-surface-2) !important; border-color: var(--nova-border) !important; }
html body.nova .suggested-domains .domain-lookup-suggestions-message, html body.nova .suggested-domains .domain-lookup-suggestions-loader { background-color: var(--nova-surface) !important; }
html body.nova .domain-promo-box { background-color: var(--nova-surface) !important; border-color: var(--nova-border) !important; color: var(--nova-text) !important; }
html body.nova .domain-promo-box .small { color: var(--nova-muted) !important; }
html body.nova .domain-renewals, html body.nova .service-renewals { border-top-color: var(--nova-border) !important; }
html body.nova .domain-renewals, html body.nova .service-renewals, html body.nova .addon-renewals .service-renewal { background-color: var(--nova-surface) !important; }
html body.nova .domain-renewals .domain-renewal, html body.nova .service-renewals .service-renewal { border-bottom-color: var(--nova-border) !important; }
html body.nova .domain-renewals .domain-renewal:nth-child(even), html body.nova .service-renewals .service-renewal:nth-child(even), html body.nova .addon-renewals .service-renewal:nth-child(even) { background-color: var(--nova-surface) !important; }
html body.nova .service-renewals .div-renewal-ineligible { color: var(--nova-muted) !important; }
html body.nova .addon-renewals > div { border-color: var(--nova-border) !important; }
html body.nova #order-standard_cart .addon-promo-container { border-color: var(--nova-border) !important; }
html body.nova #order-standard_cart .mc-promo { background-color: var(--nova-surface) !important; border-color: var(--nova-border) !important; }
html body.nova #order-standard_cart .mc-promo .body { border-top-color: var(--nova-border) !important; background-color: var(--nova-surface) !important; }
html body.nova #order-standard_cart .mc-promo.weebly .expander, html body.nova #order-standard_cart .mc-promo.weebly .price { color: var(--nova-muted) !important; }
html body.nova #order-standard_cart .mc-promo.sitelockvpn .expander, html body.nova #order-standard_cart .mc-promo.sitelockvpn .price { color: var(--nova-muted) !important; }
html body.nova #order-standard_cart .default-captcha { background-color: var(--nova-surface) !important; border-color: var(--nova-border) !important; color: var(--nova-muted) !important; }
html body.nova #order-standard_cart .account-select-container { border-right-color: var(--nova-border) !important; }
html body.nova #order-standard_cart .account-select-container div.account { background: var(--nova-surface) !important; border-color: var(--nova-border) !important; }
html body.nova #order-standard_cart .account-select-container div.account.active { background: var(--nova-surface) !important; }
html body.nova .product-recommendations .product-recommendation { background-color: var(--nova-surface) !important; border-color: var(--nova-border) !important; }
html body.nova .product-recommendations .product-recommendation .body { border-top-color: var(--nova-border) !important; background-color: var(--nova-surface) !important; }

/* ---- generated from twenty-one theme ---- */
html body.nova caption { color: var(--nova-muted) !important; }
html body.nova .blockquote-footer { color: var(--nova-muted) !important; }
html body.nova .img-thumbnail { background-color: var(--nova-surface) !important; border-color: var(--nova-border) !important; }
html body.nova .figure-caption { color: var(--nova-muted) !important; }
html body.nova pre { color: var(--nova-text) !important; }
html body.nova .table { color: var(--nova-text) !important; }
html body.nova .table th, html body.nova .table td { border-top-color: var(--nova-border) !important; }
html body.nova .table thead th { border-bottom-color: var(--nova-border) !important; }
html body.nova .table tbody + tbody { border-top-color: var(--nova-border) !important; }
html body.nova .table-bordered { border-color: var(--nova-border) !important; }
html body.nova .table-bordered th, html body.nova .table-bordered td { border-color: var(--nova-border) !important; }
html body.nova .table-hover tbody tr:hover { color: var(--nova-text) !important; }
html body.nova .table-primary, html body.nova .table-primary > th, html body.nova .table-primary > td { background-color: var(--nova-surface-2) !important; }
html body.nova .table-secondary, html body.nova .table-secondary > th, html body.nova .table-secondary > td { background-color: var(--nova-surface-2) !important; }
html body.nova .table-secondary th, html body.nova .table-secondary td, html body.nova .table-secondary thead th, html body.nova .table-secondary tbody + tbody { border-color: var(--nova-border) !important; }
html body.nova .table-light, html body.nova .table-light > th, html body.nova .table-light > td { background-color: var(--nova-surface) !important; }
html body.nova .table-light th, html body.nova .table-light td, html body.nova .table-light thead th, html body.nova .table-light tbody + tbody { border-color: var(--nova-border) !important; }
html body.nova .table .thead-light th { color: var(--nova-muted) !important; background-color: var(--nova-surface-2) !important; border-color: var(--nova-border) !important; }
html body.nova .form-control { color: var(--nova-muted) !important; background-color: var(--nova-surface) !important; border-color: var(--nova-border) !important; }
html body.nova .form-control:focus { color: var(--nova-muted) !important; background-color: var(--nova-surface) !important; }
html body.nova .form-control::-moz-placeholder { color: var(--nova-muted) !important; }
html body.nova .form-control::placeholder { color: var(--nova-muted) !important; }
html body.nova .form-control:disabled, html body.nova .form-control[readonly] { background-color: var(--nova-surface-2) !important; }
html body.nova select.form-control:focus::-ms-value { color: var(--nova-muted) !important; background-color: var(--nova-surface) !important; }
html body.nova .form-control-plaintext { color: var(--nova-text) !important; }
html body.nova .form-check-input[disabled] ~ .form-check-label, html body.nova .form-check-input:disabled ~ .form-check-label { color: var(--nova-muted) !important; }
html body.nova .btn-light { background-color: var(--nova-surface) !important; border-color: var(--nova-border) !important; }
html body.nova .btn-light:hover { background-color: var(--nova-surface-2) !important; border-color: var(--nova-border) !important; }
html body.nova .btn-light:focus, html body.nova .btn-light.focus { background-color: var(--nova-surface-2) !important; border-color: var(--nova-border) !important; box-shadow: none !important; }
html body.nova .btn-light.disabled, html body.nova .btn-light:disabled { background-color: var(--nova-surface) !important; border-color: var(--nova-border) !important; }
html body.nova .btn-light:not(:disabled):not(.disabled):active, html body.nova .btn-light:not(:disabled):not(.disabled).active, html body.nova .show > .btn-light.dropdown-toggle { background-color: var(--nova-surface-2) !important; border-color: var(--nova-border) !important; }
html body.nova .btn-light:not(:disabled):not(.disabled):active:focus, html body.nova .btn-light:not(:disabled):not(.disabled).active:focus, html body.nova .show > .btn-light.dropdown-toggle:focus { box-shadow: none !important; }
html body.nova .btn-outline-light { border-color: var(--nova-border) !important; }
html body.nova .btn-outline-light:hover { background-color: var(--nova-surface) !important; border-color: var(--nova-border) !important; }
html body.nova .btn-outline-light:focus, html body.nova .btn-outline-light.focus { box-shadow: none !important; }
html body.nova .btn-outline-light:not(:disabled):not(.disabled):active, html body.nova .btn-outline-light:not(:disabled):not(.disabled).active, html body.nova .show > .btn-outline-light.dropdown-toggle { background-color: var(--nova-surface) !important; border-color: var(--nova-border) !important; }
html body.nova .btn-outline-light:not(:disabled):not(.disabled):active:focus, html body.nova .btn-outline-light:not(:disabled):not(.disabled).active:focus, html body.nova .show > .btn-outline-light.dropdown-toggle:focus { box-shadow: none !important; }
html body.nova .dropdown-menu { color: var(--nova-text) !important; background-color: var(--nova-surface) !important; }
html body.nova .dropdown-divider { border-top-color: var(--nova-border) !important; }
html body.nova .dropdown-item { color: var(--nova-text) !important; }
html body.nova .dropdown-item:hover, html body.nova .dropdown-item:focus { color: var(--nova-text) !important; background-color: var(--nova-surface) !important; }
html body.nova .dropdown-item.disabled, html body.nova .dropdown-item:disabled { color: var(--nova-muted) !important; }
html body.nova .dropdown-header { color: var(--nova-muted) !important; }
html body.nova .dropdown-item-text { color: var(--nova-text) !important; }
html body.nova .input-group-text { color: var(--nova-muted) !important; background-color: var(--nova-surface-2) !important; border-color: var(--nova-border) !important; }
html body.nova .custom-control-input[disabled] ~ .custom-control-label, html body.nova .custom-control-input:disabled ~ .custom-control-label { color: var(--nova-muted) !important; }
html body.nova .custom-control-input[disabled] ~ .custom-control-label::before, html body.nova .custom-control-input:disabled ~ .custom-control-label::before { background-color: var(--nova-surface-2) !important; }
html body.nova .custom-control-label::before { background-color: var(--nova-surface) !important; border-color: var(--nova-border) !important; }
html body.nova .custom-switch .custom-control-input:checked ~ .custom-control-label::after { background-color: var(--nova-surface) !important; }
html body.nova .custom-select { color: var(--nova-muted) !important; border-color: var(--nova-border) !important; }
html body.nova .custom-select:focus::-ms-value { color: var(--nova-muted) !important; background-color: var(--nova-surface) !important; }
html body.nova .custom-select:disabled { color: var(--nova-muted) !important; background-color: var(--nova-surface-2) !important; }
html body.nova .custom-file-input[disabled] ~ .custom-file-label, html body.nova .custom-file-input:disabled ~ .custom-file-label { background-color: var(--nova-surface-2) !important; }
html body.nova .custom-file-label { color: var(--nova-muted) !important; background-color: var(--nova-surface) !important; border-color: var(--nova-border) !important; }
html body.nova .custom-file-label::after { color: var(--nova-muted) !important; background-color: var(--nova-surface-2) !important; }
html body.nova .custom-range:focus::-webkit-slider-thumb { box-shadow: none !important; }
html body.nova .custom-range:focus::-moz-range-thumb { box-shadow: none !important; }
html body.nova .custom-range:focus::-ms-thumb { box-shadow: none !important; }
html body.nova .custom-range::-webkit-slider-runnable-track { background-color: var(--nova-surface-2) !important; }
html body.nova .custom-range::-moz-range-track { background-color: var(--nova-surface-2) !important; }
html body.nova .custom-range::-ms-fill-lower { background-color: var(--nova-surface-2) !important; }
html body.nova .custom-range::-ms-fill-upper { background-color: var(--nova-surface-2) !important; }
html body.nova .nav-link.disabled { color: var(--nova-muted) !important; }
html body.nova .nav-tabs { border-bottom-color: var(--nova-border) !important; }
html body.nova .nav-tabs .nav-link.disabled { color: var(--nova-muted) !important; }
html body.nova .nav-tabs .nav-link.active, html body.nova .nav-tabs .nav-item.show .nav-link { color: var(--nova-muted) !important; background-color: var(--nova-surface) !important; border-color: var(--nova-border) !important; }
html body.nova .navbar-light .navbar-brand { color: var(--nova-text) !important; }
html body.nova .navbar-light .navbar-brand:hover, html body.nova .navbar-light .navbar-brand:focus { color: var(--nova-text) !important; }
html body.nova .navbar-light .navbar-nav .nav-link { color: var(--nova-text) !important; }
html body.nova .navbar-light .navbar-nav .nav-link:hover, html body.nova .navbar-light .navbar-nav .nav-link:focus { color: var(--nova-text) !important; }
html body.nova .navbar-light .navbar-nav .nav-link.disabled { color: var(--nova-text) !important; }
html body.nova .navbar-light .navbar-nav .show > .nav-link, html body.nova .navbar-light .navbar-nav .active > .nav-link, html body.nova .navbar-light .navbar-nav .nav-link.show, html body.nova .navbar-light .navbar-nav .nav-link.active { color: var(--nova-text) !important; }
html body.nova .navbar-light .navbar-toggler { color: var(--nova-text) !important; }
html body.nova .navbar-light .navbar-text { color: var(--nova-text) !important; }
html body.nova .navbar-light .navbar-text a { color: var(--nova-text) !important; }
html body.nova .navbar-light .navbar-text a:hover, html body.nova .navbar-light .navbar-text a:focus { color: var(--nova-text) !important; }
html body.nova .card, html body.nova .mc-promo-manage, html body.nova .mc-promo-login { background-color: var(--nova-surface) !important; }
html body.nova .breadcrumb { background-color: var(--nova-surface-2) !important; }
html body.nova .breadcrumb-item + .breadcrumb-item::before { color: var(--nova-muted) !important; }
html body.nova .breadcrumb-item.active { color: var(--nova-muted) !important; }
html body.nova .page-link { background-color: var(--nova-surface) !important; border-color: var(--nova-border) !important; }
html body.nova .page-link:hover { background-color: var(--nova-surface-2) !important; border-color: var(--nova-border) !important; }
html body.nova .page-item.disabled .page-link { color: var(--nova-muted) !important; background-color: var(--nova-surface) !important; border-color: var(--nova-border) !important; }
html body.nova .badge-light { background-color: var(--nova-surface) !important; }
html body.nova a.badge-light:hover, html body.nova a.badge-light:focus { background-color: var(--nova-surface-2) !important; }
html body.nova a.badge-light:focus, html body.nova a.badge-light.focus { box-shadow: none !important; }
html body.nova .jumbotron { background-color: var(--nova-surface-2) !important; }
html body.nova .alert-primary { background-color: var(--nova-surface-2) !important; }
html body.nova .alert-secondary { background-color: var(--nova-surface-2) !important; border-color: var(--nova-border) !important; }
html body.nova .alert-secondary hr { border-top-color: var(--nova-border) !important; }
html body.nova .alert-light { background-color: var(--nova-surface) !important; }
html body.nova .alert-dark { background-color: var(--nova-surface-2) !important; border-color: var(--nova-border) !important; }
html body.nova .alert-dark hr { border-top-color: var(--nova-border) !important; }
html body.nova .progress { background-color: var(--nova-surface-2) !important; }
html body.nova .list-group-item-action { color: var(--nova-muted) !important; }
html body.nova .list-group-item-action:hover, html body.nova .list-group-item-action:focus { color: var(--nova-muted) !important; background-color: var(--nova-surface) !important; }
html body.nova .list-group-item-action:active { color: var(--nova-text) !important; background-color: var(--nova-surface-2) !important; }
html body.nova .list-group-item { background-color: var(--nova-surface) !important; }
html body.nova .list-group-item.disabled, html body.nova .list-group-item:disabled { color: var(--nova-muted) !important; background-color: var(--nova-surface) !important; }
html body.nova .list-group-item-primary { color: var(--nova-text) !important; background-color: var(--nova-surface-2) !important; }
html body.nova .list-group-item-primary.list-group-item-action:hover, html body.nova .list-group-item-primary.list-group-item-action:focus { color: var(--nova-text) !important; }
html body.nova .list-group-item-secondary { color: var(--nova-text) !important; background-color: var(--nova-surface-2) !important; }
html body.nova .list-group-item-secondary.list-group-item-action:hover, html body.nova .list-group-item-secondary.list-group-item-action:focus { color: var(--nova-text) !important; }
html body.nova .list-group-item-success { color: var(--nova-text) !important; }
html body.nova .list-group-item-success.list-group-item-action:hover, html body.nova .list-group-item-success.list-group-item-action:focus { color: var(--nova-text) !important; }
html body.nova .list-group-item-info { color: var(--nova-text) !important; }
html body.nova .list-group-item-info.list-group-item-action:hover, html body.nova .list-group-item-info.list-group-item-action:focus { color: var(--nova-text) !important; }
html body.nova .list-group-item-light { color: var(--nova-muted) !important; background-color: var(--nova-surface) !important; }
html body.nova .list-group-item-light.list-group-item-action:hover, html body.nova .list-group-item-light.list-group-item-action:focus { color: var(--nova-muted) !important; }
html body.nova .list-group-item-dark { color: var(--nova-text) !important; }
html body.nova .list-group-item-dark.list-group-item-action:hover, html body.nova .list-group-item-dark.list-group-item-action:focus { color: var(--nova-text) !important; }
html body.nova .close { color: var(--nova-text) !important; }
html body.nova .close:hover { color: var(--nova-text) !important; }
html body.nova .toast { background-color: var(--nova-surface) !important; }
html body.nova .toast-header { color: var(--nova-muted) !important; background-color: var(--nova-surface) !important; }
html body.nova .modal-content { background-color: var(--nova-surface) !important; }
html body.nova .modal-header { border-bottom-color: var(--nova-border) !important; }
html body.nova .modal-footer { border-top-color: var(--nova-border) !important; }
html body.nova .popover { background-color: var(--nova-surface) !important; }
html body.nova .bs-popover-top > .arrow::after, html body.nova .bs-popover-auto[x-placement^=top] > .arrow::after { border-top-color: var(--nova-border) !important; }
html body.nova .bs-popover-right > .arrow::after, html body.nova .bs-popover-auto[x-placement^=right] > .arrow::after { border-right-color: var(--nova-border) !important; }
html body.nova .bs-popover-bottom > .arrow::after, html body.nova .bs-popover-auto[x-placement^=bottom] > .arrow::after { border-bottom-color: var(--nova-border) !important; }
html body.nova .bs-popover-bottom .popover-header::before, html body.nova .bs-popover-auto[x-placement^=bottom] .popover-header::before { border-bottom-color: var(--nova-border) !important; }
html body.nova .bs-popover-left > .arrow::after, html body.nova .bs-popover-auto[x-placement^=left] > .arrow::after { border-left-color: var(--nova-border) !important; }
html body.nova .popover-header { background-color: var(--nova-surface) !important; border-bottom-color: var(--nova-border) !important; }
html body.nova .carousel-indicators li { background-color: var(--nova-surface) !important; }
html body.nova .bg-light { background-color: var(--nova-surface) !important; }
html body.nova a.bg-light:hover, html body.nova a.bg-light:focus, html body.nova button.bg-light:hover, html body.nova button.bg-light:focus { background-color: var(--nova-surface-2) !important; }
html body.nova .bg-white { background-color: var(--nova-surface) !important; }
html body.nova .border { border-color: var(--nova-border) !important; }
html body.nova .border-top { border-top-color: var(--nova-border) !important; }
html body.nova .border-right { border-right-color: var(--nova-border) !important; }
html body.nova .border-bottom { border-bottom-color: var(--nova-border) !important; }
html body.nova .border-left { border-left-color: var(--nova-border) !important; }
html body.nova .border-light { border-color: var(--nova-border) !important; }
html body.nova .border-white { border-color: var(--nova-border) !important; }
html body.nova .text-secondary { color: var(--nova-muted) !important; }
html body.nova a.text-secondary:hover, html body.nova a.text-secondary:focus { color: var(--nova-muted) !important; }
html body.nova .text-dark { color: var(--nova-text) !important; }
html body.nova a.text-dark:hover, html body.nova a.text-dark:focus { color: var(--nova-text) !important; }
html body.nova .text-body { color: var(--nova-text) !important; }
html body.nova .text-muted { color: var(--nova-muted) !important; }
html body.nova .text-black-50 { color: var(--nova-text) !important; }
html body.nova .select-account { border-top-color: var(--nova-border) !important; }
html body.nova .select-account a { border-bottom-color: var(--nova-border) !important; }
html body.nova .select-account a:hover { background-color: var(--nova-surface) !important; }
html body.nova .continue-container { background-color: var(--nova-surface) !important; border-color: var(--nova-border) !important; }
html body.nova .invite-box { background-color: var(--nova-surface) !important; border-color: var(--nova-border) !important; }
html body.nova a.admin-inline-edit { color: var(--nova-muted) !important; }
html body.nova a.admin-inline-edit:hover { color: var(--nova-text) !important; }
html body.nova .primary-bg-color { background-color: var(--nova-surface) !important; }
html body.nova header.header { background-color: var(--nova-surface) !important; }
html body.nova header.header .user-icon { color: var(--nova-muted) !important; }
html body.nova header.header .toolbar .nav-link { border-color: var(--nova-border) !important; }
html body.nova header.header .toolbar .nav-link:hover { color: var(--nova-muted) !important; }
html body.nova header.header .search { border-color: var(--nova-border) !important; }
html body.nova header.header .navbar a { color: var(--nova-text) !important; }
html body.nova .master-breadcrumb { background-color: var(--nova-surface-2) !important; }
@media (min-width: 768px) {
  html body.nova .btn-return-to-admin { background-color: var(--nova-surface-2) !important; }
}
html body.nova .btn-return-to-admin .floating { background-color: var(--nova-surface-2) !important; }
html body.nova .input-group .btn-reveal-pw:hover, html body.nova .input-group .btn-reveal-pw:active { background-color: var(--nova-surface) !important; border-color: var(--nova-border) !important; }
html body.nova .modal .modal-header { background-color: var(--nova-surface-2) !important; }
html body.nova .modal-localisation .item-selector .item { border-color: var(--nova-border) !important; }
html body.nova .modal-localisation .item-selector .item:hover { background-color: var(--nova-surface-2) !important; color: var(--nova-text) !important; }
html body.nova .modal-localisation .item-selector .item.active { background-color: var(--nova-surface-2) !important; border-color: var(--nova-border) !important; color: var(--nova-text) !important; }
html body.nova .btn-default { background-color: var(--nova-surface) !important; border-color: var(--nova-border) !important; }
html body.nova .btn-default:focus, html body.nova .btn-default.focus { background-color: var(--nova-surface-2) !important; }
html body.nova .btn-default:hover { background-color: var(--nova-surface-2) !important; }
html body.nova .btn-default:active, html body.nova .btn-default.active, html body.nova .open > .dropdown-toggle.btn-default { background-color: var(--nova-surface-2) !important; }
html body.nova .btn-default:active:hover, html body.nova .btn-default.active:hover, html body.nova .open > .dropdown-toggle.btn-default:hover, html body.nova .btn-default:active:focus, html body.nova .btn-default.active:focus, html body.nova .open > .dropdown-toggle.btn-default:focus, html body.nova .btn-default:active.focus, html body.nova .btn-default.active.focus, html body.nova .open > .dropdown-toggle.btn-default.focus { background-color: var(--nova-surface-2) !important; }
html body.nova .btn-default.disabled { border-color: var(--nova-border) !important; }
html body.nova .btn-default.disabled:hover, html body.nova .btn-default[disabled]:hover, html body.nova fieldset[disabled] .btn-default:hover, html body.nova .btn-default.disabled:focus, html body.nova .btn-default[disabled]:focus, html body.nova fieldset[disabled] .btn-default:focus, html body.nova .btn-default.disabled.focus, html body.nova .btn-default[disabled].focus, html body.nova fieldset[disabled] .btn-default.focus { background-color: var(--nova-surface) !important; border-color: var(--nova-border) !important; }
html body.nova .card-accent-silver { border-top-color: var(--nova-border) !important; }
html body.nova .responsive-tabs-sm .nav-item a:hover { background-color: var(--nova-surface) !important; }
@media (max-width: 767.98px) {
  html body.nova .responsive-tabs-sm { border-left-color: var(--nova-border) !important; background: var(--nova-surface) !important; border-top-color: var(--nova-border) !important; border-right-color: var(--nova-border) !important; }
  html body.nova .responsive-tabs-sm .nav-item { border-bottom-color: var(--nova-border) !important; }
  html body.nova .responsive-tabs-sm .nav-item a.active { background-color: var(--nova-surface) !important; }
  html body.nova .responsive-tabs-sm-connector .channel { background: var(--nova-surface) !important; border-right-color: var(--nova-border) !important; }
  html body.nova .responsive-tabs-sm-connector .bottom-border { border-bottom-color: var(--nova-border) !important; }
  html body.nova .responsive-tabs-sm-connector.store .channel { border-left-color: var(--nova-border) !important; }
}
html body.nova .sidebar .list-group-item { border-color: var(--nova-border) !important; }
html body.nova .sidebar .list-group-item .badge { background-color: var(--nova-surface) !important; }
html body.nova .sidebar .list-group-item > i.far.fa-circle { color: var(--nova-muted) !important; }
html body.nova .home-domain-search .tld-logos { color: var(--nova-muted) !important; }
html body.nova .home-domain-search .input-group-wrapper { background-color: var(--nova-surface) !important; border-color: var(--nova-border) !important; }
html body.nova .home-domain-search .input-group-wrapper .advanced-input label { color: var(--nova-text) !important; }
html body.nova .action-icon-btns a { color: var(--nova-muted) !important; background-color: var(--nova-surface) !important; }
html body.nova .action-icon-btns a:hover { color: var(--nova-text) !important; }
html body.nova .client-home-cards .card-header { background-color: var(--nova-surface) !important; }
html body.nova .client-home-cards .list-group { border-top-color: var(--nova-border) !important; border-bottom-color: var(--nova-border) !important; }
html body.nova .client-home-cards .list-group .list-group-item { border-bottom-color: var(--nova-border) !important; }
html body.nova .client-home-cards small { color: var(--nova-muted) !important; }
html body.nova .tiles .tile { background-color: var(--nova-surface) !important; border-right-color: var(--nova-border) !important; }
html body.nova .tiles .tile .title { color: var(--nova-muted) !important; }
html body.nova .tiles .tile:hover { background-color: var(--nova-surface) !important; }
@media (max-width: 1199.98px) {
  html body.nova .tiles div:nth-child(1) > .tile, html body.nova .tiles div:nth-child(2) > .tile { border-bottom-color: var(--nova-border) !important; }
}
html body.nova .twofa-setup .activation-msg { border-color: var(--nova-border) !important; }
html body.nova .twofa-setup .backup-code { background-color: var(--nova-surface-2) !important; color: var(--nova-text) !important; }
html body.nova .twofa-module { border-color: var(--nova-border) !important; }
html body.nova .popover-user-notifications { border-color: var(--nova-border) !important; }
html body.nova .popover-user-notifications ul li { border-bottom-color: var(--nova-border) !important; }
html body.nova .popover-user-notifications ul li a:hover { background-color: var(--nova-surface) !important; }
html body.nova .verification-banner { background-color: var(--nova-surface) !important; border-bottom-color: var(--nova-border) !important; color: var(--nova-text) !important; }
html body.nova .verification-banner .fas, html body.nova .verification-banner .fal, html body.nova .verification-banner .far { color: var(--nova-muted) !important; }
html body.nova .md-editor { border-color: var(--nova-border) !important; }
html body.nova .md-editor > .btn-toolbar { background-color: var(--nova-surface) !important; }
html body.nova .md-editor > textarea.markdown-editor, html body.nova .md-editor > .md-preview { border-top-color: var(--nova-border) !important; border-bottom-color: var(--nova-border) !important; background-color: var(--nova-surface) !important; }
html body.nova .markdown-editor-status { color: var(--nova-muted) !important; }
html body.nova .md-preview h1, html body.nova .markdown-content h1 { color: var(--nova-text) !important; }
html body.nova .md-preview h2, html body.nova .markdown-content h2 { color: var(--nova-text) !important; }
html body.nova .md-preview h3, html body.nova .markdown-content h3 { color: var(--nova-text) !important; }
html body.nova .md-preview h4, html body.nova .markdown-content h4 { color: var(--nova-text) !important; }
html body.nova .md-preview blockquote, html body.nova .markdown-content blockquote { border-left-color: var(--nova-border) !important; }
html body.nova .md-preview table, html body.nova .markdown-content table { background-color: var(--nova-surface) !important; border-color: var(--nova-border) !important; }
html body.nova .md-preview table > thead > tr > th, html body.nova .markdown-content table > thead > tr > th { background-color: var(--nova-surface) !important; border-color: var(--nova-border) !important; }
html body.nova .md-preview table > tbody > tr > td, html body.nova .markdown-content table > tbody > tr > td { border-color: var(--nova-border) !important; }
html body.nova .store-order-container .store-domain-tabs li a { background-color: var(--nova-surface) !important; border-bottom-color: var(--nova-border) !important; }
html body.nova .store-order-container .store-domain-tabs li.active a { background-color: var(--nova-surface) !important; }
html body.nova .store-order-container .store-domain-tab-content { border-color: var(--nova-border) !important; }
html body.nova .store-order-container .domain-validation { color: var(--nova-muted) !important; }
html body.nova .promo-container { background-color: var(--nova-surface) !important; }
html body.nova .promo-banner { background-color: var(--nova-surface) !important; }
html body.nova .promo-banner.ox a { color: var(--nova-muted) !important; }
html body.nova .client-home-cards div[menuitemname=ThreesixtymonitoringLogin] .threesixtymonitoring-metrics-row > div:not(:last-child) { border-right-color: var(--nova-border) !important; }
html body.nova .client-home-cards div[menuitemname=ThreesixtymonitoringLogin] .threesixtymonitoring-title { color: var(--nova-muted) !important; }
html body.nova .upgrade .product-to-be-upgraded { background-color: var(--nova-surface) !important; }
html body.nova .upgrade .products .product { background-color: var(--nova-surface) !important; }
html body.nova .upgrade .products .product ul { border-left-color: var(--nova-border) !important; border-right-color: var(--nova-border) !important; }
html body.nova .upgrade .products .product .footer { border-color: var(--nova-border) !important; }
html body.nova .upgrade .products .product ul li { border-bottom-color: var(--nova-border) !important; }
html body.nova .upgrade .products .product ul li span { color: var(--nova-text) !important; }
html body.nova .announcements .announcement article { background-color: var(--nova-surface) !important; border-left-color: var(--nova-border) !important; }
html body.nova .kb-category a:hover { background-color: var(--nova-surface) !important; }
html body.nova .kb-article-item:hover { background-color: var(--nova-surface) !important; }
html body.nova .kb-article-item small { color: var(--nova-muted) !important; }
html body.nova .ticket-reply .rating span.star:before, html body.nova .ticket-reply .rating-done span.star:before { color: var(--nova-muted) !important; }
html body.nova .view-ticket .card-body, html body.nova .view-ticket .mc-promo-manage .content, html body.nova .mc-promo-manage .view-ticket .content, html body.nova .view-ticket .mc-promo-login .content, html body.nova .mc-promo-login .view-ticket .content { border-bottom-color: var(--nova-border) !important; }
html body.nova .view-ticket .posted-by { color: var(--nova-muted) !important; background-color: var(--nova-surface) !important; }
html body.nova .view-ticket .attachments { border-top-color: var(--nova-border) !important; }
html body.nova .view-ticket .attachment-list li span { border-color: var(--nova-border) !important; }
html body.nova .view-ticket .attachment-list li figure { background-color: var(--nova-surface) !important; }
html body.nova .ticketfeedbackstaffcont { background-color: var(--nova-surface-2) !important; }
html body.nova #registration label { color: var(--nova-muted) !important; }
html body.nova #registration .sub-heading { border-top-color: var(--nova-border) !important; }
html body.nova #registration .sub-heading span { background-color: var(--nova-surface) !important; }
html body.nova #registration .field, html body.nova #registration .form-control { border-color: var(--nova-border) !important; color: var(--nova-muted) !important; background: var(--nova-surface) !important; }
html body.nova #registration .field[disabled], html body.nova #registration .field[readonly], html body.nova #registration .form-control[disabled], html body.nova #registration .form-control[readonly] { background-color: var(--nova-surface) !important; }
html body.nova #registration .field-help-text { color: var(--nova-muted) !important; }
html body.nova div.credit-card { background-color: var(--nova-surface) !important; border-color: var(--nova-border) !important; }
html body.nova .auth3d-area { border-color: var(--nova-border) !important; }
html body.nova .submit-3d { border-color: var(--nova-border) !important; }
html body.nova div.credit-card .logo-discover { color: var(--nova-text) !important; }
html body.nova tr.masspay-total td { background-color: var(--nova-surface-2) !important; }
html body.nova div.product-details div.product-icon { background-color: var(--nova-surface-2) !important; }
html body.nova div.product-details-tab-container { border-color: var(--nova-border) !important; background-color: var(--nova-surface) !important; }
html body.nova .featured-tld { background-color: var(--nova-surface) !important; }
html body.nova .featured-tld .price { background-color: var(--nova-surface) !important; color: var(--nova-muted) !important; }
html body.nova .domain-pricing .tld-row { border-bottom-color: var(--nova-border) !important; }
html body.nova .domain-pricing .tld-pricing-header .col-xs-2, html body.nova .domain-pricing .tld-pricing-header .col-sm-2, html body.nova .domain-pricing .tld-pricing-header .col-xs-4, html body.nova .domain-pricing .tld-pricing-header .col-sm-4 { background-color: var(--nova-surface-2) !important; }
html body.nova .domain-pricing .tld-pricing-header div:nth-child(odd) { background-color: var(--nova-surface) !important; }
html body.nova .dataTables_wrapper table.table-list { border-color: var(--nova-border) !important; }
html body.nova .dataTables_wrapper table.table-list thead th.sorting_asc, html body.nova .dataTables_wrapper table.table-list thead th.sorting_desc { background-color: var(--nova-surface) !important; }
html body.nova .pagination > li > a, html body.nova .pagination > li > span { color: var(--nova-text) !important; }
html body.nova table.table-list thead th { background-color: var(--nova-surface) !important; border-bottom-color: var(--nova-border) !important; color: var(--nova-text) !important; }
html body.nova .table-list > tbody > tr > td a.border-left { border-left-color: var(--nova-border) !important; }
html body.nova .table-list > tbody > tr > td { background-color: var(--nova-surface) !important; }
html body.nova .table-list > tbody > tr:hover > td { background-color: var(--nova-surface) !important; }
html body.nova table.table-solid-bottom-border-light-gray { border-bottom-color: var(--nova-border) !important; }

/* ==========================================================================
   RCK Nova — dark mode for native controls + order form (Standard Cart)
   ========================================================================== */
:root { color-scheme: dark; }
html body.nova textarea,
html body.nova select,
html body.nova input[type="text"], html body.nova input[type="email"], html body.nova input[type="password"],
html body.nova input[type="number"], html body.nova input[type="search"], html body.nova input[type="tel"],
html body.nova input[type="url"], html body.nova input[type="date"] {
    background-color: var(--nova-surface-2) !important;
    border: 1px solid var(--nova-border-strong) !important;
    color: var(--nova-text) !important;
    border-radius: var(--nova-radius-sm);
}
html body.nova textarea:focus, html body.nova select:focus, html body.nova input:focus {
    border-color: var(--nova-accent) !important;
    box-shadow: 0 0 0 3px rgba(0, 225, 255, .18) !important;
    outline: 0;
}
html body.nova ::placeholder { color: #5f6b80 !important; opacity: 1; }
html body.nova input[type="checkbox"], html body.nova input[type="radio"] { accent-color: var(--nova-accent); }

/* iCheck radio/checkbox sprites (white images) -> dark with cyan accent */
html body.nova [class*="iradio_"], html body.nova [class*="icheckbox_"] {
    filter: invert(1) hue-rotate(180deg) brightness(1.1) saturate(1.4);
}

/* Order form: option rows, selected state, cards, summary */
html body.nova #order-standard_cart .domain-selection-options .option {
    border: 1px solid var(--nova-border) !important; border-radius: var(--nova-radius) !important; margin-bottom: .6rem;
}
html body.nova #order-standard_cart .domain-selection-options .option-selected {
    border-color: var(--nova-accent) !important; box-shadow: 0 0 0 1px rgba(0,225,255,.25) !important;
}
html body.nova #order-standard_cart .domain-selection-options .option label { color: var(--nova-text) !important; }
html body.nova #order-standard_cart .panel-addon-selected,
html body.nova #order-standard_cart .product-selected,
html body.nova #order-standard_cart .selected { border-color: var(--nova-accent) !important; }
html body.nova #order-standard_cart .multiselect,
html body.nova #order-standard_cart .btn-group > .multiselect {
    background: var(--nova-surface-3) !important; color: var(--nova-text) !important; border: 1px solid var(--nova-border-strong) !important;
}
html body.nova .multiselect-container, html body.nova .multiselect-container > li > a { background: var(--nova-surface-2) !important; color: var(--nova-text) !important; }
html body.nova #order-standard_cart .header-lined h1,
html body.nova #order-standard_cart h1, html body.nova #order-standard_cart h2,
html body.nova #order-standard_cart h3, html body.nova #order-standard_cart .font-size-36 { color: var(--nova-text) !important; background: transparent !important; }
html body.nova #order-standard_cart .order-summary { border-radius: var(--nova-radius) !important; overflow: hidden; }
html body.nova #order-standard_cart .order-summary .summary-container { background: var(--nova-surface-2) !important; }
html body.nova #order-standard_cart .order-summary .total-due-today,
html body.nova #order-standard_cart .order-summary .total-due-today .amt { color: var(--nova-accent) !important; }
html body.nova #order-standard_cart .prepend-icon .field-icon, html body.nova #order-standard_cart .field-icon { color: var(--nova-muted) !important; }
html body.nova #order-standard_cart .sub-heading { border-color: var(--nova-border) !important; }
html body.nova #order-standard_cart .sub-heading span { background: var(--nova-bg) !important; color: var(--nova-muted) !important; }
html body.nova #order-standard_cart .well, html body.nova #order-standard_cart .alert-warning.info-text-sm { background: var(--nova-surface) !important; border-color: var(--nova-border) !important; }
/* RCK: dark search box for tables */
.dataTables_wrapper .dataTables_filter label,
.dataTables_wrapper .dataTables_filter{background:none!important}
.dataTables_wrapper .dataTables_filter input{
  background:#0b1426 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2322d3ee' stroke-width='2.5' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='m20 20-3.5-3.5'/%3E%3C/svg%3E") no-repeat 12px center!important;
  background-size:16px 16px!important;
  padding-left:38px!important;
  border:1px solid rgba(120,170,255,.18)!important;border-radius:10px!important;color:#e6eefb!important}
.dataTables_wrapper .dataTables_filter input:focus{border-color:#22d3ee!important;box-shadow:0 0 0 3px rgba(34,211,238,.16)!important;outline:none}

/* RCK: dark domain pricing table */
#order-standard_cart .domain-pricing .tld-pricing-header,
.domain-pricing .tld-pricing-header{background:#0f2340!important;color:#cfe0f7!important}
.domain-pricing .tld-row,
.domain-pricing .tld-row.highlighted,
.domain-pricing .tld-row:nth-child(even),
.domain-pricing .tld-row > div{background:#0b1426!important;color:#e6eefb!important;border-color:rgba(120,170,255,.12)!important}
.domain-pricing .tld-row:nth-child(even),
.domain-pricing .tld-row.highlighted{background:#0f1a30!important}
.domain-pricing .tld-row:hover{background:rgba(59,130,246,.10)!important}
.domain-pricing .tld-row strong,.domain-pricing .tld-row .two-row-center{color:#e6eefb!important}
.domain-pricing .tld-row small,.domain-pricing .tld-row .text-muted{color:#8ea3c2!important}
.tld-filters a,.tld-filters .badge{background:rgba(255,255,255,.06)!important;color:#cbd8ec!important;border:1px solid rgba(120,170,255,.18)!important;border-radius:8px!important}
.tld-filters a.badge-success,.tld-filters a.active,.tld-filters .badge-success{background:linear-gradient(135deg,#22d3ee,#3b82f6)!important;color:#fff!important;border-color:transparent!important}

/* RCK: clean domain pricing table (v2) */
.domain-pricing .tld-pricing-header,
.domain-pricing .tld-pricing-header > div,
.domain-pricing .tld-pricing-header div{background:transparent!important;border:0!important;box-shadow:none!important;color:#8ea3c2!important;
  text-transform:uppercase;letter-spacing:.1em;font-size:12px!important;font-weight:700}
.domain-pricing .tld-pricing-header{border-bottom:1px solid rgba(120,170,255,.18)!important}
.domain-pricing .tld-row,
.domain-pricing .tld-row.highlighted,
.domain-pricing .tld-row:nth-child(even),
.domain-pricing .tld-row > div,
.domain-pricing .tld-row div{background:transparent!important;border:0!important;box-shadow:none!important}
.domain-pricing .tld-row{border-bottom:1px solid rgba(120,170,255,.08)!important;display:flex;align-items:center;transition:background .15s}
.domain-pricing .tld-row > div{display:flex;align-items:center;justify-content:center;min-height:52px}
.domain-pricing .tld-row > div:first-child{justify-content:flex-start;padding-left:22px!important}
.domain-pricing .tld-row:hover{background:rgba(59,130,246,.08)!important}
.domain-pricing{background:rgba(14,24,46,.6)!important;border:1px solid rgba(120,170,255,.14)!important;border-radius:16px!important;overflow:hidden}

/* RCK: domain pricing table (v3 fix) */
.domain-pricing{background:transparent!important;border:0!important;border-radius:0!important;overflow:visible}
.domain-pricing .tld-row > div{display:block!important;min-height:0!important;padding-left:15px!important}
.domain-pricing .tld-row > div:first-child{padding-left:22px!important}
.domain-pricing .tld-row{align-items:center;min-height:54px;background:rgba(14,24,46,.55)!important}
.domain-pricing .tld-row:hover{background:rgba(59,130,246,.10)!important}
.domain-pricing .tld-row > div:last-child > .row{display:flex!important;width:100%;margin:0!important}
.domain-pricing .tld-row > div:last-child > .row > div{flex:1;text-align:center;padding:16px 0!important;color:#cbd8ec!important}
#order-standard_cart .domain-pricing .tld-pricing-header,
#order-standard_cart .domain-pricing .tld-pricing-header div{background:transparent!important}
.domain-pricing .tld-pricing-header{background:rgba(15,35,64,.6)!important;border-radius:12px 12px 0 0}
