/* ==========================================================================
   SeloraCloud — "Selora" theme for WHMCS 9 (twenty-one base)
   Deep Ocean dark redesign via custom.css (official override point).
   Every Bootstrap-4 token the base theme uses is remapped to the
   SeloraCloud brand palette. No template files modified.
   ========================================================================== */

/* --------------------------------------------------------------------------
   0. Fonts (self-hosted in theme fonts/)
   -------------------------------------------------------------------------- */
@font-face {
    font-family: 'Space Grotesk';
    font-style: normal; font-weight: 300 700; font-display: swap;
    src: url('../fonts/SpaceGroteskVar.woff2') format('woff2');
}
@font-face {
    font-family: 'JetBrains Mono';
    font-style: normal; font-weight: 300 700; font-display: swap;
    src: url('../fonts/JetBrainsMonoVar.woff2') format('woff2');
}

/* --------------------------------------------------------------------------
   1. Token remap — drive the whole base theme dark
   -------------------------------------------------------------------------- */
:root {
    --white: #0c131c;

    /* neutral ramp -> deep ocean navy */
    --neutral-50:  #e8f1f4;
    --neutral-100: #cfe0e8;
    --neutral-200: #93a8b8;
    --neutral-300: #5f7688;
    --neutral-400: #47606f;
    --neutral-500: #2a4258;
    --neutral-600: #1a2836;
    --neutral-700: #131e2b;
    --neutral-800: #0c131c;
    --neutral-900: #070c12;
    --neutral-950: #04070b;

    /* primary ramp -> teal */
    --primary-50:  #effefb;
    --primary-100: #c8fff4;
    --primary-200: #93fde9;
    --primary-300: #5eead4;
    --primary-400: #2dd4bf;
    --primary-500: #14c9b8;
    --primary-600: #0fb5a6;
    --primary-700: #0d9488;
    --primary-800: #0f766e;
    --primary-900: #115e59;
    --primary-950: #042f2e;

    --primary: var(--primary-600);
    --primary-lifted: var(--primary-500);
    --primary-accented: var(--primary-700);

    --secondary: var(--neutral-500);
    --secondary-lifted: var(--neutral-400);
    --secondary-accented: var(--neutral-600);

    /* info -> sky */
    --info: #38bdf8;
    --info-lifted: #0ea5e9;
    --info-accented: #0284c7;

    /* success stays green, warning amber, error red — tuned for dark bg */
    --success: #34d399;
    --success-lifted: #10b981;
    --success-accented: #059669;
    --notice: #a78bfa;
    --notice-lifted: #8b5cf6;
    --notice-accented: #7c3aed;
    --warning: #fbbf24;
    --warning-lifted: #f59e0b;
    --warning-accented: #d97706;
    --error: #f87171;
    --error-lifted: #ef4444;
    --error-accented: #dc2626;

    --grayscale: var(--neutral-700);
    --grayscale-lifted: var(--neutral-600);
    --grayscale-accented: var(--neutral-500);

    /* base theme surface/body tokens */
    --body-bg: #060a10;
    --body-color: #93a8b8;
    --surface: #0c131c;
    --surface-hover: rgba(125, 211, 252, 0.05);
    --border-hair: #1a2836;

    /* typography */
    --font-display: 'Space Grotesk', var(--font-family-sans-serif);
    --font-mono: 'JetBrains Mono', ui-monospace, monospace;

    /* aliases used by landing components (Deep Ocean names) */
    --text: #e8f1f4;
    --text-muted: #93a8b8;
    --text-faint: #5f7688;
    --border: #1a2836;
    --border-strong: #2a4258;
    --border-faint: rgba(125, 211, 252, 0.10);
    --surface: #0c131c;
    --surface-2: #101a25;
    --radius: 14px;
    --radius-sm: 8px;
    --radius-lg: 20px;
    --shadow-pop: 0 24px 60px -20px rgba(0, 0, 0, 0.8), 0 0 0 1px rgba(125, 211, 252, 0.10);
    --font-display: 'Space Grotesk', 'Montserrat', sans-serif;
}


/* --------------------------------------------------------------------------
   2. Body & texture
   -------------------------------------------------------------------------- */
body, .primary-bg-color {
    background:
        radial-gradient(60% 50% at 78% 38%, rgba(45, 212, 191, 0.07), transparent 70%),
        #070b12 !important;
    overflow-x: hidden;
    color: #9fb4c4;
    font-family: 'Montserrat', var(--font-family-sans-serif);
}
body::before {
    content: ""; position: fixed; inset: 0; z-index: 0; pointer-events: none;
    background-image: url(data:image/png;base64,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);
    background-repeat: repeat;
    opacity: .55;
}
body::after {
    content: ""; position: fixed; inset: 0; z-index: 0; pointer-events: none; opacity: .45;
    background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3CfeComponentTransfer%3E%3CfeFuncA type='linear' slope='0.045'/%3E%3C/feComponentTransfer%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}
#app, header.header, main, footer, .main-content { position: relative; z-index: 1; }
::selection { background: rgba(45, 212, 191, 0.30); color: #e8f1f4; }

/* --------------------------------------------------------------------------
   3. Typography
   -------------------------------------------------------------------------- */
h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4 {
    font-family: var(--font-display);
    color: #e8f1f4;
    letter-spacing: -0.015em;
    text-wrap: balance;
}
.display-4 { font-family: var(--font-display); }

/* mono for numbers & ids */
.price, .amount, .recurring, .total, .subtotal, .credit, .balance,
#currency, .invoiceid, .orderno, .domain, .badge, .label {
    font-family: var(--font-mono) !important;
    font-variant-numeric: tabular-nums;
    letter-spacing: 0;
}

/* --------------------------------------------------------------------------
   4. Cards & surfaces
   -------------------------------------------------------------------------- */
.card, .panel, .well, .modal-content, .dropdown-menu,
.alert, .client-alerts, .list-group-item {
    background-color: #0c131c;
    border-color: var(--border-hair);
    color: #93a8b8;
}
.card { border-radius: 14px; box-shadow: 0 10px 30px -14px rgba(0,0,0,.6); }
.card-header, .panel-heading {
    background-color: rgba(16, 26, 37, 0.6);
    border-bottom: 1px solid var(--border-hair);
    color: #e8f1f4;
    font-family: var(--font-display);
    border-radius: 14px 14px 0 0 !important;
}
.card-footer, .panel-footer { background: transparent; border-top: 1px solid var(--border-hair); }
.list-group-item { border-color: rgba(26, 40, 54, 0.6); }
.list-group-item:hover { background: var(--surface-hover); }
a, .card-link { color: #2dd4bf; }
a:hover, .card-link:hover { color: #5eead4; }
.close { color: #93a8b8; text-shadow: none; opacity: .8; }
.close:hover { color: #e8f1f4; }

/* --------------------------------------------------------------------------
   5. Header/nav
   -------------------------------------------------------------------------- */
header.header .topbar, .topbar {
    background: rgba(9, 15, 23, 0.9) !important;
    border-bottom: 1px solid var(--border-hair) !important;
}
header.header .main-navbar-wrapper, .navbar.main-navbar-wrapper {
    background: rgba(7, 12, 18, 0.92);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    border-bottom: 1px solid var(--border-hair);
}
.topbar a { color: #93a8b8; }
.topbar a:hover { color: #e8f1f4; }
.main-navbar-wrapper .navbar-nav .nav-link { color: #93a8b8; }
.main-navbar-wrapper .navbar-nav .nav-link:hover,
.main-navbar-wrapper .navbar-nav .active .nav-link { color: #e8f1f4; }
.main-navbar-wrapper .navbar-brand img { height: 36px; }
.navbar-toggler { border-color: var(--border-hair); }
.navbar-toggler-icon { filter: invert(1) brightness(1.4); }


/* --------------------------------------------------------------------------
   6. Buttons
   -------------------------------------------------------------------------- */
.btn { border-radius: 8px; font-weight: 600; transition: all .15s ease; }
.btn-primary, .btn-success {
    background-color: #0fb5a6;
    border-color: #0fb5a6;
    color: #04211d;
    box-shadow: 0 8px 22px -10px rgba(45, 212, 191, 0.35);
}
.btn-primary:hover, .btn-primary:focus, .btn-primary:not(:disabled):not(.disabled):active,
.btn-success:hover, .btn-success:focus {
    background-color: #14c9b8;
    border-color: #14c9b8;
    color: #04211d;
    box-shadow: 0 12px 30px -10px rgba(45, 212, 191, 0.45);
    transform: translateY(-1px);
}
.btn-primary:active { transform: translateY(0) scale(.99); }
.btn-default, .btn-outline-primary, .btn-secondary {
    background: transparent;
    border: 1px solid #2a4258;
    color: #e8f1f4;
}
.btn-default:hover, .btn-outline-primary:hover, .btn-secondary:hover {
    background: var(--surface-hover);
    border-color: #0fb5a6;
    color: #5eead4;
}
.btn-link { color: #2dd4bf; }
.btn-link:hover { color: #5eead4; }
.btn:focus-visible, a:focus-visible {
    outline: 2px solid rgba(45, 212, 191, 0.5);
    outline-offset: 2px;
}

/* --------------------------------------------------------------------------
   7. Forms
   -------------------------------------------------------------------------- */
.form-control, input.form-control, select.form-control, textarea.form-control {
    background-color: #090f17;
    border: 1px solid #1a2836;
    color: #e8f1f4;
    border-radius: 8px;
    height: 44px;
    transition: border-color .15s, box-shadow .15s;
}
.form-control:focus {
    background-color: #0c131c;
    border-color: #0fb5a6;
    box-shadow: 0 0 0 3px rgba(15, 181, 166, 0.16);
    color: #e8f1f4;
}
.form-control::placeholder { color: #47606f; }
label, .form-label { color: #93a8b8; font-weight: 500; }
.form-control::-webkit-autofill {
    -webkit-box-shadow: 0 0 0 1000px #090f17 inset;
    -webkit-text-fill-color: #e8f1f4;
}
.input-group-text {
    background: #0c131c; border-color: #1a2836; color: #5f7688;
}
.custom-control-input:checked ~ .custom-control-label::before {
    background-color: #0fb5a6; border-color: #0fb5a6;
}

/* --------------------------------------------------------------------------
   8. Tables
   -------------------------------------------------------------------------- */
.table, .table td, .table th { border-color: rgba(26, 40, 54, 0.7); color: #93a8b8; }
.table thead th {
    border-bottom: 1px solid #1a2836;
    color: #5f7688;
    font-family: var(--font-mono);
    font-size: .72rem;
    letter-spacing: .1em;
    text-transform: uppercase;
    font-weight: 500;
}
.table-hover tbody tr:hover td { background: var(--surface-hover); color: #e8f1f4; }

/* --------------------------------------------------------------------------
   9. Badges/alerts
   -------------------------------------------------------------------------- */
.badge, .label { border-radius: 6px; font-size: .7rem; padding: .35em .6em; }
.badge-success, .label-success { background: rgba(52,211,153,.13); color: #34d399; }
.badge-warning, .label-warning { background: rgba(251,191,36,.13); color: #fbbf24; }
.badge-danger, .label-danger { background: rgba(248,113,113,.13); color: #f87171; }
.badge-info, .label-info { background: rgba(56,189,248,.13); color: #38bdf8; }
.badge-default, .label-default, .badge-secondary { background: rgba(125,211,252,.09); color: #93a8b8; }
.badge-primary { background: rgba(45,212,191,.13); color: #2dd4bf; }

.alert { border-radius: 12px; border: 1px solid var(--border-hair); border-left-width: 3px; }
.alert-success { border-left-color: #34d399; }
.alert-info { border-left-color: #38bdf8; }
.alert-warning { border-left-color: #fbbf24; }
.alert-danger { border-left-color: #f87171; }
.alert strong, .alert-heading { color: #e8f1f4; }

/* --------------------------------------------------------------------------
   10. Login page
   -------------------------------------------------------------------------- */
.login-form .card {
    background: linear-gradient(180deg, rgba(16,26,37,.75), rgba(12,19,28,.95));
    border: 1px solid #1a2836;
    border-radius: 20px;
    box-shadow: 0 24px 60px -20px rgba(0,0,0,.8);
    position: relative;
    overflow: hidden;
}
.login-form .card::before {
    content: ""; position: absolute; top: 0; left: 10%; right: 10%; height: 1px;
    background: linear-gradient(90deg, transparent, rgba(45,212,191,.4), transparent);
}
h3.login-title, .card-body h3 { letter-spacing: -.01em; }

/* --------------------------------------------------------------------------
   11. Store/cart specifics
   -------------------------------------------------------------------------- */
.product .product-price, .pricing-onetime, .pricing-recurring { font-family: var(--font-mono); }
.store-cards .card { transition: border-color .18s, transform .18s, box-shadow .18s; }
.store-cards .card:hover { border-color: #2a4258; transform: translateY(-3px); }

/* domain search */
.domain-checker-container input, .domain-checker-pane input {
    background: #090f17 !important;
    border-color: #1a2836 !important;
    color: #e8f1f4 !important;
}
.domain-checker-available { color: #34d399 !important; }
.domain-checker-unavailable { color: #f87171 !important; }

/* --------------------------------------------------------------------------
   12. Footer, modals, misc
   -------------------------------------------------------------------------- */
footer.footer, .footer {
    background: #070c12;
    border-top: 1px solid var(--border-hair);
    color: #5f7688;
}
footer a { color: #93a8b8; }
footer a:hover { color: #5eead4; }

.modal-backdrop { background: rgba(3, 6, 10, 0.75); }
.modal-content { border-radius: 16px; }
.modal-header, .modal-footer { border-color: var(--border-hair); }
.modal-header .modal-title { color: #e8f1f4; }

.dropdown-menu { box-shadow: 0 24px 60px -20px rgba(0,0,0,.8); border-radius: 10px; }
.dropdown-item { color: #93a8b8; }
.dropdown-item:hover { background: var(--surface-hover); color: #e8f1f4; }

.breadcrumb { background: transparent; }
.breadcrumb-item a { color: #5f7688; }
.breadcrumb-item.active { color: #93a8b8; }

.pagination .page-link {
    background: transparent; border-color: #1a2836; color: #93a8b8;
}
.pagination .page-item.active .page-link {
    background: #0fb5a6; border-color: #0fb5a6; color: #04211d;
}
.pagination .page-link:hover { background: var(--surface-hover); color: #5eead4; }

/* KB articles */
.kb-categories, .kb-article { color: #93a8b8; }
blockquote {
    border-left: 3px solid #0fb5a6;
    background: rgba(45, 212, 191, 0.04);
    padding: 12px 18px;
    border-radius: 0 8px 8px 0;
    color: #93a8b8;
}
pre, code {
    background: #090f17; color: #5eead4;
    border: 1px solid #1a2836; border-radius: 8px;
    font-family: var(--font-mono);
}

/* progress/spinners */
.progress { background: #0c131c; border-radius: 8px; }
.progress-bar { background: #0fb5a6; }

/* nav pills/tabs */
.nav-tabs .nav-link { color: #93a8b8; border-color: transparent; }
.nav-tabs .nav-link.active {
    color: #5eead4;
    background: transparent;
    border-bottom: 2px solid #0fb5a6;
}
.nav-pills .nav-link { color: #93a8b8; border-radius: 8px; }
.nav-pills .nav-link.active { background: rgba(45,212,191,.12); color: #5eead4; }

/* client area sidebar */
#main-body .sidebar .list-group-item {
    background: transparent;
    border-color: rgba(26, 40, 54, 0.5);
    color: #93a8b8;
}
#main-body .sidebar .list-group-item.active {
    background: linear-gradient(90deg, rgba(45,212,191,.12), transparent 80%);
    border-left: 2px solid #0fb5a6;
    color: #5eead4;
}

/* step wizard (cart) */
.step-wizard .nav-item .nav-link { color: #5f7688; }
.step-wizard .nav-item.active .nav-link { color: #5eead4; }

/* mobile */
@media (max-width: 767px) {
    .card { border-radius: 12px; }
    header.header .logo img { height: 28px; }
}

/* print (invoices) stays light */
@media print {
    body, .primary-bg-color { background: #fff !important; color: #111 !important; }
    body::before, body::after, header, footer { display: none !important; }
    .card, .panel { border: none !important; box-shadow: none !important; }
}

/* --------------------------------------------------------------------------
   13. Hosting landing page components (hosting.php)
   -------------------------------------------------------------------------- */
/* ==========================================================================
   v3 landing components (custom hosting page — matches marketing site)
   ========================================================================== */
.sc-landing { --sc-accent: #2dd4bf; --sc-accent-2: #7dd3fc; }
.sc-hero { display: grid; grid-template-columns: 1.05fr .95fr; gap: 44px; align-items: center; padding: 56px 0 40px; }
@media (max-width: 900px) { .sc-hero { grid-template-columns: 1fr; } }
.sc-hero h1 { font-family: var(--font-display); font-size: clamp(1.9rem, 4vw, 2.9rem); font-weight: 700; letter-spacing: -.02em; line-height: 1.12; color: var(--text); margin: 10px 0 16px; }
.sc-hero h1 .grad { background: linear-gradient(92deg, #99f6e4, #2dd4bf 45%, #7dd3fc); -webkit-background-clip: text; background-clip: text; color: transparent; }
.sc-eyebrow { font-family: var(--font-mono); font-size: .72rem; letter-spacing: .12em; text-transform: uppercase; color: var(--text-faint); margin: 0; }
.sc-eyebrow::before { content: "// "; color: var(--sc-accent); }
.sc-sub { color: var(--text-muted); font-size: 1.02rem; max-width: 52ch; margin-bottom: 24px; }

.sc-stats { display: flex; gap: 36px; flex-wrap: wrap; margin-top: 30px; }
.sc-stat b { display: block; font-family: var(--font-mono); font-size: 1.4rem; font-weight: 600; color: var(--text); }
.sc-stat span { font-size: .78rem; color: var(--text-faint); }

/* terminal card */
.sc-term { background: var(--surface); border: 1px solid var(--border-strong); border-radius: var(--radius-lg); overflow: hidden; font-family: var(--font-mono); font-size: .78rem; box-shadow: 0 24px 80px -24px rgba(0,0,0,.8), 0 0 90px -30px rgba(45,212,191,.25); }
.sc-term-head { display: flex; gap: 6px; align-items: center; padding: 11px 14px; border-bottom: 1px solid var(--border); background: var(--surface-2); }
.sc-term-head i { width: 10px; height: 10px; border-radius: 50%; display: block; }
.sc-term-head i:nth-child(1) { background: #f87171; }
.sc-term-head i:nth-child(2) { background: #fbbf24; }
.sc-term-head i:nth-child(3) { background: #4ade80; }
.sc-term-head span { margin-left: 8px; color: var(--text-faint); font-size: .7rem; }
.sc-term-body { padding: 18px 16px 20px; line-height: 1.8; color: var(--text-muted); }
.sc-term-body .p { color: #5eead4; }
.sc-term-body .ok { color: #34d399; }
.sc-term-body .cm { color: var(--text-faint); }
.sc-caret { display: inline-block; width: 8px; height: 14px; background: #5eead4; vertical-align: -2px; animation: sc-blink 1.1s steps(1) infinite; }
@keyframes sc-blink { 50% { opacity: 0; } }

/* feature grid */
.sc-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
@media (max-width: 980px) { .sc-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 640px) { .sc-grid { grid-template-columns: 1fr; } }
.sc-card { background: linear-gradient(180deg, rgba(16,26,37,.5), rgba(12,19,28,.92)); border: 1px solid var(--border); border-radius: var(--radius); padding: 22px 20px; transition: border-color .18s, transform .18s; }
.sc-card:hover { border-color: var(--border-strong); transform: translateY(-2px); }
.sc-tile { width: 36px; height: 36px; border-radius: 9px; display: flex; align-items: center; justify-content: center; background: rgba(45,212,191,.12); color: #5eead4; border: 1px solid rgba(45,212,191,.25); margin-bottom: 12px; font-size: 14px; }
.sc-card h3 { font-family: var(--font-display); font-size: 1.02rem; color: var(--text); margin: 0 0 6px; }
.sc-card p { color: var(--text-muted); font-size: .88rem; margin: 0; }

/* plans */
.sc-plans { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 18px; }
.sc-plan { background: linear-gradient(180deg, rgba(16,26,37,.5), rgba(12,19,28,.92)); border: 1px solid var(--border); border-radius: var(--radius); padding: 24px 22px; display: flex; flex-direction: column; gap: 10px; transition: border-color .18s, transform .18s, box-shadow .18s; }
.sc-plan:hover { border-color: var(--border-strong); transform: translateY(-2px); box-shadow: var(--shadow-pop); }
.sc-plan .sc-plan-name { font-family: var(--font-display); font-weight: 600; color: var(--text); font-size: 1.06rem; }
.sc-plan .sc-plan-desc { color: var(--text-muted); font-size: .86rem; flex: 1; }
.sc-plan .sc-price { font-family: var(--font-mono); font-variant-numeric: tabular-nums; color: var(--text); font-size: 1.45rem; font-weight: 600; }
.sc-plan .sc-price small { color: var(--text-faint); font-size: .74rem; font-weight: 400; }

/* section header */
.sc-sec { padding: 44px 0; }
.sc-sec-head { margin-bottom: 26px; }
.sc-sec-head h2 { font-family: var(--font-display); font-size: clamp(1.3rem, 2.6vw, 1.8rem); font-weight: 700; color: var(--text); margin: 6px 0 8px; letter-spacing: -.015em; }
.sc-sec-head p { color: var(--text-muted); margin: 0; max-width: 60ch; }

/* CTA band */
.sc-cta { margin: 40px 0 12px; padding: 34px 30px; border: 1px solid var(--border); border-radius: var(--radius-lg); background: linear-gradient(120deg, rgba(45,212,191,.08), rgba(125,211,252,.05)); display: flex; justify-content: space-between; align-items: center; gap: 20px; flex-wrap: wrap; }
.sc-cta h3 { font-family: var(--font-display); color: var(--text); margin: 0 0 6px; }
.sc-cta p { color: var(--text-muted); margin: 0; }

/* landing page: ensure no horizontal scroll */
.sc-landing { overflow-x: clip; max-width: 100%; }
.xn-body-main { overflow-x: clip; }


/* --------------------------------------------------------------------------
   14. Footer — ported from seloracloud.com marketing site (same markup)
   -------------------------------------------------------------------------- */
footer.sc-footer {
    margin-top: 72px;
    background: #090f17;
    border-top: 1px solid var(--border-hair);
    padding: 0;
}
.sc-footer .footer-in { max-width: 1200px; margin: 0 auto; padding: 0 24px; }
.sc-footer .footer-in.newsletter {
    display: flex; justify-content: space-between; align-items: center; gap: 24px; flex-wrap: wrap;
    padding-top: 44px; padding-bottom: 44px;
    border-bottom: 1px solid var(--border-hair);
}
.sc-footer .footer-in.newsletter h3 { margin: 0; font-size: 1.4rem; color: #e8f1f4; font-family: var(--font-display); }
.sc-footer .footer-in.content {
    display: grid; grid-template-columns: 1.2fr 2fr; gap: 48px;
    padding-top: 48px; padding-bottom: 48px;
}
@media (max-width: 860px) { .sc-footer .footer-in.content { grid-template-columns: 1fr; } }
.sc-footer .footer-content .site-logo img { height: 34px; }
.sc-footer .footer-content > p { color: #5f7688; font-size: .9rem; margin-top: 14px; max-width: 34ch; }
.sc-footer .footer-in-r { display: grid; grid-template-columns: repeat(3, 1fr); gap: 32px; }
@media (max-width: 640px) { .sc-footer .footer-in-r { grid-template-columns: 1fr 1fr; } }
.sc-footer .footer-links { display: flex; flex-direction: column; gap: 9px; }
.sc-footer .footer-links h4 {
    font-family: var(--font-mono); font-size: .7rem; text-transform: uppercase; letter-spacing: .12em;
    color: #5f7688; margin: 0 0 6px; font-weight: 500;
}
.sc-footer .footer-link { color: #93a8b8; font-size: .9rem; }
.sc-footer .footer-link:hover { color: #5eead4; text-decoration: none; }
.sc-footer .footer-in.credits {
    display: flex; justify-content: space-between; align-items: center; gap: 16px; flex-wrap: wrap;
    padding-top: 22px; padding-bottom: 26px;
    border-top: 1px solid var(--border-hair);
}
.sc-footer .footer-in.credits p { margin: 0; font-size: .82rem; color: #5f7688; }
.sc-footer .inp-icon { position: relative; }
.sc-footer .inp-icon input {
    padding-left: 40px; min-width: 260px;
    background: #0c131c; border: 1px solid var(--border-hair); color: #e8f1f4; border-radius: 8px; height: 44px;
}
.sc-footer .inp-icon i { position: absolute; left: 14px; top: 50%; transform: translateY(-50%); color: #5f7688; font-size: .85rem; pointer-events: none; }
.sc-footer .flex-row { display: flex; gap: 18px; align-items: center; flex-wrap: wrap; }

/* --------------------------------------------------------------------------
   FIX: spinner overlay never hides (#fullpage-overlay ID beats .w-hidden class)
   -------------------------------------------------------------------------- */
#fullpage-overlay.w-hidden, #fullpage-overlay.hidden { display: none !important; }


/* ==========================================================================
   15. Full dark consistency — override base-theme hardcoded light surfaces
   (header, breadcrumb, homepage hero, domain search, accent tiles) so the
   billing site matches seloracloud.com end to end.
   ========================================================================== */

/* header + nav band */
header.header,
.header {
    background: rgba(7, 12, 18, 0.96) !important;
    border-bottom: 1px solid var(--border-hair) !important;
}
header.header .navbar,
.main-navbar-wrapper {
    background: transparent !important;
    border: none !important;
}
/* brand logo: brighten the pale half for legibility on dark */
.navbar-brand img { filter: brightness(1.05); }

/* breadcrumb band */
nav.master-breadcrumb,
.master-breadcrumb {
    background: #090f17 !important;
    border-top: 1px solid var(--border-hair);
    border-bottom: 1px solid var(--border-hair) !important;
}
.master-breadcrumb .breadcrumb { background: transparent; margin: 0; padding: 10px 0; }
.master-breadcrumb .breadcrumb-item a,
.master-breadcrumb .breadcrumb-item { color: #5f7688; }
.master-breadcrumb .breadcrumb-item.active { color: #93a8b8; }
.master-breadcrumb .breadcrumb-item + .breadcrumb-item::before { color: #2a4258; }

/* nav link contrast fix — base theme sets `header.header .navbar a{color:#444}`
   which outranks a bare `a` rule, and these links are <a class="pr-4"> (no .nav-link),
   so we must match with equal-or-higher specificity. */
header.header .navbar a,
header.header .navbar .navbar-nav a,
.main-navbar-wrapper .navbar-nav a,
.main-navbar-wrapper .nav-link {
    color: #93a8b8 !important;
}
header.header .navbar a:hover,
header.header .navbar a:focus,
.main-navbar-wrapper .navbar-nav a:hover,
.main-navbar-wrapper .nav-link:hover,
.main-navbar-wrapper .nav-item.active > a {
    color: #5eead4 !important;
    text-decoration: none !important;
}
/* topbar buttons (notifications / account) */
header.header .topbar .btn,
.topbar .btn { color: #93a8b8 !important; }
header.header .topbar .btn:hover { color: #e8f1f4 !important; }
/* dropdown menus inside header */
header.header .dropdown-menu a,
.navbar .dropdown-menu a { color: #93a8b8 !important; }
header.header .dropdown-menu a:hover,
.navbar .dropdown-menu a:hover { color: #5eead4 !important; background: rgba(125,211,252,.06) !important; }
/* search box in header */
header.header .input-group.search .btn { color: #5f7688 !important; }
.main-navbar-wrapper .navbar-toggler { border-color: #2a4258; }
.main-navbar-wrapper .navbar-toggler-icon {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3e%3cpath stroke='%2393a8b8' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}

/* homepage hero / domain search panel */
.home-domain-search,
.home-domain-search.bg-white,
.bg-white.home-domain-search {
    background: transparent !important;
    color: #93a8b8 !important;
}
.home-domain-search h1, .home-domain-search h2, .home-domain-search h3 { color: #e8f1f4 !important; }
.home-domain-search .input-group-wrapper,
.input-group-wrapper {
    background: #0c131c !important;
    border: 1px solid #1a2836 !important;
    border-radius: 14px !important;
    box-shadow: 0 10px 40px -16px rgba(0,0,0,.7);
}
.input-group-wrapper textarea,
.input-group-wrapper input,
.home-domain-search textarea,
.home-domain-search input[type="text"],
.home-domain-search input[type="search"] {
    background: transparent !important;
    border: none !important;
    color: #e8f1f4 !important;
    box-shadow: none !important;
}
.input-group-wrapper textarea::placeholder,
.home-domain-search input::placeholder { color: #47606f !important; }
.input-group-wrapper .input-group-prepend,
.input-group-wrapper .input-group-append { background: transparent !important; }
.home-domain-search .btn-primary,
.input-group-wrapper .btn-primary {
    background: #0fb5a6 !important; border-color: #0fb5a6 !important; color: #04211d !important;
}
.home-domain-search .btn-success {
    background: rgba(45,212,191,.12) !important; border: 1px solid #2a4258 !important; color: #5eead4 !important;
}
.home-domain-search .btn-success:hover { background: rgba(45,212,191,.2) !important; }

/* TLD / length selectors + safe-search on the hero */
.home-domain-search label, .home-domain-search .text-muted,
.home-domain-search select, .home-domain-search .custom-control-label { color: #93a8b8 !important; }
.home-domain-search select {
    background: #0c131c !important; color: #e8f1f4 !important; border: 1px solid #1a2836 !important; border-radius: 8px;
}

/* captcha block inside the hero */
.domainchecker-homepage-captcha, .captchaimage { color: #93a8b8 !important; }
.domainchecker-homepage-captcha p { color: #93a8b8 !important; }
.domainchecker-homepage-captcha img { border-radius: 8px; border: 1px solid #1a2836; }
.domainchecker-homepage-captcha input.form-control,
.domainchecker-homepage-captcha #inputCaptcha {
    background: #0c131c !important; border: 1px solid #1a2836 !important; color: #e8f1f4 !important;
}

/* "View all pricing" link alignment */
.home-domain-search a[href*="domain/pricing"] { color: #5eead4 !important; }

/* accent tiles (How can we help / Your Account cards) */
[class*="card-accent-"] {
    background: #0c131c !important;
    border: 1px solid #1a2836 !important;
    border-radius: 12px !important;
    color: #93a8b8 !important;
    transition: border-color .18s, transform .18s;
}
[class*="card-accent-"]:hover { border-color: #2a4258 !important; transform: translateY(-2px); }
[class*="card-accent-"] h5, [class*="card-accent-"] h4, [class*="card-accent-"] .h5,
[class*="card-accent-"] strong, [class*="card-accent-"] b { color: #e8f1f4 !important; }
[class*="card-accent-"] i, [class*="card-accent-"] .fa, [class*="card-accent-"] .fas,
[class*="card-accent-"] .far { color: #2dd4bf !important; }
[class*="card-accent-"] small, [class*="card-accent-"] .text-muted { color: #5f7688 !important; }

/* knowledgebase search box in header (was dark block on light) */
header.header .input-group.search input,
.input-group.search .form-control {
    background: #0c131c !important; border: 1px solid #1a2836 !important; color: #e8f1f4 !important;
}
header.header .input-group.search .input-group-text,
.input-group.search .input-group-prepend .input-group-text {
    background: #0c131c !important; border: 1px solid #1a2836 !important; color: #5f7688 !important;
}

/* any residual bootstrap light utilities used by the theme */
.bg-white, .bg-light { background-color: #0c131c !important; }
.text-dark { color: #e8f1f4 !important; }
.border, .border-top, .border-bottom { border-color: var(--border-hair) !important; }


/* header inline buttons (search etc.) — solid, not translucent-white */
header.header .btn.btn-primary {
    background: #0fb5a6 !important;
    border-color: #0fb5a6 !important;
    color: #04211d !important;
}
/* cart badge stays legible */
header.header .badge { background: #0fb5a6; color: #04211d; }


/* ==========================================================================
   16. LAYOUT REPAIRS — the deployed all.min.css breaks Bootstrap basics:
   .container has width:100% + 40px padding, auto-margins commented out and
   box-sizing computes content-box → every page overflows 80px and content
   is off-center. Restore proper Bootstrap-4 container behavior.
   ========================================================================== */
*, *::before, *::after { box-sizing: border-box !important; }

.container {
    width: 100% !important;
    max-width: 1240px !important;
    margin-right: auto !important;
    margin-left: auto !important;
    padding-right: 20px !important;
    padding-left: 20px !important;
}
/* IMPORTANT: do NOT force display:block on .container — Bootstrap needs
   .navbar>.container to stay flex, otherwise the header stacks into 3 rows.
   Only neutralize the deployed theme's stray `display:flex;justify-content:
   space-between` that it added to EVERY .container (which broke grid rows). */
.container { display: block; }
.navbar > .container,
.navbar .container,
header.header .navbar .container,
.main-navbar-wrapper .container {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    justify-content: flex-start !important;
}
/* keep the nav toolbar pushed right, brand left */
.navbar > .container > .navbar-brand { margin-right: auto; }
.navbar > .container > .navbar-collapse { flex-basis: auto; }
header.header .topbar > .container,
footer .container, footer.sc-footer .container { display: block !important; }

.container-fluid { box-sizing: border-box; }

/* rows keep their negative margins inside containers */
.row { margin-right: -15px; margin-left: -15px; }

/* ---------- white inputs left behind on register/pwreset/contact ---------- */
input.form-control, textarea.form-control, select.form-control,
input.field, textarea.field, select.field,
input[type="text"], input[type="email"], input[type="password"],
input[type="number"], input[type="tel"], input[type="url"], input[type="search"],
textarea, select {
    background-color: #090f17 !important;
    border: 1px solid #1a2836 !important;
    color: #e8f1f4 !important;
    border-radius: 8px !important;
}
input.form-control:focus, textarea.form-control:focus, select.form-control:focus,
input.field:focus, textarea.field:focus, input:focus, textarea:focus, select:focus {
    border-color: #0fb5a6 !important;
    box-shadow: 0 0 0 3px rgba(15, 181, 166, .16) !important;
}
input::placeholder, textarea::placeholder { color: #47606f !important; }
textarea#message, textarea { min-height: 110px; }

/* intl-tel-input dropdowns + flags */
.iti__country-list { background: #0c131c !important; border: 1px solid #2a4258 !important; color: #93a8b8 !important; }
.iti__country.iti__highlight { background: rgba(125,211,252,.08) !important; }
.iti__divider { border-color: #1a2836 !important; }

/* bootstrap-switch "No" handle (dark-on-dark) */
.bootstrap-switch .bootstrap-switch-handle-off,
.bootstrap-switch .bootstrap-switch-handle-on { color: #e8f1f4 !important; }
.bootstrap-switch-default, .bootstrap-switch .bootstrap-switch-default {
    background: #15202e !important; color: #93a8b8 !important;
}
.bootstrap-switch-on { background: #0fb5a6 !important; color: #04211d !important; }
.bootstrap-switch { border-color: #2a4258 !important; border-radius: 8px !important; }

/* light grey column strips (col-xs-4 bg #f5f5f5 found on register) */
.col-xs-4, .col-4 { background: transparent !important; }
.bg-f5f5f5, [style*="background-color: rgb(245"] { background: transparent !important; }

/* ---------- button text on teal must stay dark-ink (intentional) ----------
   The audit flags 'dark text' on .btn-primary — that's our teal button with
   dark ink; contrast is fine (teal #0fb5a6 luminance vs #04211d ≈ 7:1).
   Ensure nothing overrides it to white-on-white: */
.btn-primary, .btn.btn-primary, input.btn-primary, button.btn-primary {
    color: #04211d !important;
    background-color: #0fb5a6 !important;
    border-color: #0fb5a6 !important;
}
.btn-primary:hover, .btn.btn-primary:hover { background-color: #14c9b8 !important; border-color: #14c9b8 !important; }

/* warning/secondary buttons keep legible ink */
.btn-warning { background: rgba(251,191,36,.14) !important; border: 1px solid rgba(251,191,36,.4) !important; color: #fbbf24 !important; }
.btn-success.badge, a.badge-success { color: #34d399 !important; }

/* ---------- domain checker homepage (index) ---------- */
.home-domain-search .btn-group .btn, .domain-checker .btn { border-radius: 8px; }
.input-group-wrapper .input-group-text { background: transparent !important; border: none !important; color: #5f7688 !important; }

/* ---------- tables inside store pages ---------- */
.store-table th, .pricing-table th { color: #5f7688 !important; }

/* ---------- language/currency chooser buttons in footer/header ---------- */
.modal-localisation .item { color: #93a8b8 !important; border: 1px solid #1a2836 !important; border-radius: 8px !important; }
.modal-localisation .item:hover { border-color: #0fb5a6 !important; color: #5eead4 !important; }
.modal-localisation .item.active { background: rgba(45,212,191,.12) !important; border-color: #0fb5a6 !important; color: #5eead4 !important; }

/* ---------- misc contrast ---------- */
.text-muted { color: #93a8b8 !important; }
.text-light { color: #e8f1f4 !important; }
hr { border-color: #1a2836 !important; }
code { background: #090f17 !important; color: #5eead4 !important; }


/* ==========================================================================
   17. FINAL PASS — mobile header logo, badge styles, html overflow
   ========================================================================== */

/* header logo was rendering at natural size (392x121) → overflow on every page */
header.header .navbar-brand,
.navbar-brand {
    display: flex !important;
    align-items: center;
    flex-shrink: 1;
    min-width: 0;
}
header.header img, .navbar-brand img, img.logo-img, .logo-img {
    max-height: 38px !important;
    width: auto !important;
    height: auto !important;
    max-width: 160px !important;
    object-fit: contain;
}
@media (max-width: 575px) {
    header.header img, .navbar-brand img, img.logo-img { max-height: 30px !important; max-width: 130px !important; }
}

/* safety net: never allow horizontal document scroll */
html { overflow-x: hidden; }

/* success badge: tinted, not solid green */
a.badge.badge-secondary.badge-success,
.badge.badge-success,
a.badge-success {
    background: rgba(52, 211, 153, 0.14) !important;
    color: #34d399 !important;
    border: 1px solid rgba(52, 211, 153, 0.35);
}

/* row-eq-height columns: contain on small screens */
@media (max-width: 767px) {
    .row.row-eq-height, .row { margin-right: -10px; margin-left: -10px; }
    .row > [class*="col-"] { padding-right: 10px; padding-left: 10px; }
    .row > [class*="col-"] { max-width: 100%; overflow-wrap: break-word; }
}

/* long unbroken strings (domains, invoice ids) must wrap */
td, th, .domain, .invoiceid { overflow-wrap: anywhere; }


/* ==========================================================================
   18. ORDER FORMS + DOMAIN PRICING — these pages inject their own
   all.min.css AFTER custom.css (orderform head), and the pricing table
   uses high-specificity theme selectors. Match/exceed them here.
   ========================================================================== */

/* --- standard_cart order form (products, summary, tabs, domain options) --- */
#order-standard_cart .products .product,
#order-standard_cart .product,
div.product.clearfix,
.product.clearfix {
    background: #0c131c !important;
    border: 1px solid #1a2836 !important;
    border-radius: 14px !important;
    color: #93a8b8 !important;
}
#order-standard_cart .product header,
.product > header,
.product header {
    background: rgba(16, 26, 37, .6) !important;
    color: #e8f1f4 !important;
    border-bottom: 1px solid #1a2836 !important;
    border-radius: 14px 14px 0 0 !important;
}
#order-standard_cart .summary-container,
.summary-container {
    background: #0c131c !important;
    border: 1px solid #1a2836 !important;
    border-radius: 14px !important;
    color: #93a8b8 !important;
}
#order-standard_cart .summary-container .summary-txt,
.summary-container div, .summary-container span, .summary-container p { color: #93a8b8; }
#order-standard_cart .summary-container .total { color: #e8f1f4 !important; }
#order-standard_cart .nav-tabs, #order-standard_cart .nav-pills { border-color: #1a2836 !important; }
#order-standard_cart .nav-link.active,
a.nav-link.active {
    background: rgba(45, 212, 191, .1) !important;
    color: #5eead4 !important;
    border-color: #0fb5a6 !important;
}
#order-standard_cart .tab-content,
div.tab-content {
    background: transparent !important;
    color: #93a8b8 !important;
}
#order-standard_cart .domain-selection-options,
#order-standard_cart .domain-suggestions,
#order-standard_cart .order-summary,
#order-standard_cart #productConfigurableOptions,
#order-standard_cart .config-header {
    background: #0c131c !important;
    border-color: #1a2836 !important;
    color: #93a8b8 !important;
    border-radius: 10px !important;
}
#order-standard_cart label, #order-standard_cart .field-label { color: #93a8b8 !important; }
#order-standard_cart input[type=text], #order-standard_cart input[type=email],
#order-standard_cart input[type=password], #order-standard_cart textarea, #order-standard_cart select {
    background: #090f17 !important; border: 1px solid #1a2836 !important; color: #e8f1f4 !important;
}
/* pricing/cycle rows inside product */
.product .pricing, .product .product-desc, .product-desc { color: #93a8b8 !important; }
.product .pricing b, .product .pricing span { color: #e8f1f4 !important; }

/* --- domain pricing table (theme.min.css paints th white with ID-ish specificity) --- */
table.table-list thead th,
table.table-list thead td,
.table-list thead th {
    background: transparent !important;
    color: #5f7688 !important;
    border-color: #1a2836 !important;
}
table.table-list td, table.table-list tr td {
    background: transparent !important;
    color: #93a8b8 !important;
    border-color: rgba(26, 40, 54, .7) !important;
}
table.table-list tr:hover td { background: rgba(125, 211, 252, .05) !important; }
table.table-list { background: #0c131c !important; border: 1px solid #1a2836 !important; border-radius: 12px; overflow: hidden; }
/* DataTables chrome */
.dataTables_wrapper .dataTables_length select,
.dataTables_wrapper .dataTables_filter input {
    background: #090f17 !important; border: 1px solid #1a2836 !important; color: #e8f1f4 !important; border-radius: 8px;
}
.dataTables_wrapper .dataTables_info, .dataTables_wrapper .dataTables_length label,
.dataTables_wrapper .dataTables_filter label { color: #5f7688 !important; }
a.page-link {
    background: transparent !important; border-color: #1a2836 !important; color: #93a8b8 !important;
}
.page-item.active a.page-link, a.page-link.active {
    background: #0fb5a6 !important; border-color: #0fb5a6 !important; color: #04211d !important;
}
/* domain transfer/register cart panels */
#order-standard_cart .domain-box, #order-standard_cart .tld-pricing,
.tld-pricing-header, .tld-row { background: #0c131c !important; color: #93a8b8 !important; border-color: #1a2836 !important; }
.tld-pricing-header div, .tld-row td { color: #93a8b8 !important; }


/* ==========================================================================
   19. ORDER-FORM DOMAIN REGISTER leftovers (found by live audit):
   .input-group-box, .default-captcha, .tld-column, .row.no-gutters strips
   ========================================================================== */
#order-standard_cart .input-group.input-group-box,
.input-group.input-group-box {
    background: #0c131c !important;
    border: 1px solid #1a2836 !important;
    border-radius: 12px !important;
    color: #93a8b8 !important;
}
.input-group-box .input-group-text, .input-group-box span { background: transparent !important; color: #5f7688 !important; border: none !important; }

#order-standard_cart .default-captcha,
.default-captcha, div[class*="default-captcha"] {
    background: #0c131c !important;
    border: 1px solid #1a2836 !important;
    border-radius: 12px !important;
    color: #93a8b8 !important;
}
.default-captcha img { border-radius: 8px; border: 1px solid #1a2836; }

.tld-column, .col-md-4.tld-column {
    background: #0c131c !important;
    color: #93a8b8 !important;
    border-color: #1a2836 !important;
}
#order-standard_cart .row.no-gutters,
.row.no-gutters.tld-pricing-header,
.row.no-gutters {
    background: transparent !important;
    color: #93a8b8 !important;
}
.row.no-gutters > [class*="col-"] { background: #0c131c !important; border-color: #1a2836 !important; color: #93a8b8 !important; }
.row.no-gutters > [class*="col-"] b, .row.no-gutters > [class*="col-"] strong { color: #e8f1f4 !important; }

/* domain results list */
#order-standard_cart .domain-disclaimer, #order-standard_cart .suggestions,
.domain-suggestion-row, .domain-checker-results { background: transparent !important; color: #93a8b8 !important; }
.domain-suggestion-row td { border-color: rgba(26,40,54,.7) !important; }

/* domain register promo box (last light surface found by live audit) */
.domain-promo-box, div.domain-promo-box {
    background: #0c131c !important;
    border: 1px solid #1a2836 !important;
    border-radius: 12px !important;
    color: #93a8b8 !important;
}
.domain-promo-box h1, .domain-promo-box h2, .domain-promo-box h3,
.domain-promo-box h4, .domain-promo-box h5, .domain-promo-box strong { color: #e8f1f4 !important; }
.domain-promo-box p, .domain-promo-box span, .domain-promo-box label { color: #93a8b8 !important; }


/* ==========================================================================
   20. NEW HOMEPAGE + DOMAINS SUBPAGE
   ========================================================================== */
/* hero (homepage + domains page share the pattern) */
.sc-home-hero, .sc-domains-hero {
    padding: 72px 0 48px;
    position: relative;
}
.sc-home-hero .container, .sc-domains-hero .container { max-width: 1100px; }
.sc-home-hero h1, .sc-domains-hero h1 {
    font-family: var(--font-display);
    font-size: clamp(2rem, 4.5vw, 3.1rem);
    font-weight: 700;
    letter-spacing: -.02em;
    line-height: 1.12;
    color: #e8f1f4;
    margin: 10px 0 16px;
    max-width: none;
}
.sc-home-hero h1 .grad, .sc-domains-hero h1 .grad {
    background: linear-gradient(92deg, #99f6e4, #2dd4bf 45%, #7dd3fc);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
}
.sc-sub { color: #93a8b8; font-size: 1.04rem; max-width: 56ch; margin-bottom: 26px; }
.sc-hero-actions { display: flex; gap: 12px; flex-wrap: wrap; }
.sc-hero-actions .btn-lg { padding: 13px 26px; font-size: 1rem; }
.sc-hero-stats { display: flex; gap: 40px; flex-wrap: wrap; margin-top: 40px; }
.sc-stat b {
    display: block;
    font-family: var(--font-mono);
    font-size: 1.5rem; font-weight: 600;
    color: #e8f1f4;
    font-variant-numeric: tabular-nums;
}
.sc-stat span { font-size: .8rem; color: #5f7688; }

/* plan cards on homepage (product groups) */
.sc-plan-row { margin-top: 8px; }
.sc-plan-card {
    height: 100%;
    display: flex; flex-direction: column;
    background: linear-gradient(180deg, rgba(16,26,37,.5), rgba(12,19,28,.92)) !important;
    border: 1px solid #1a2836 !important;
    border-radius: 14px !important;
    transition: border-color .18s, transform .18s, box-shadow .18s;
}
.sc-plan-card:hover {
    border-color: #2a4258 !important;
    transform: translateY(-3px);
    box-shadow: 0 24px 60px -20px rgba(0,0,0,.8);
}
.sc-plan-card .card-body { display: flex; flex-direction: column; gap: 10px; height: 100%; }
.sc-plan-card .pricing-card-title { font-family: var(--font-display); color: #e8f1f4; }
.sc-plan-card p { color: #93a8b8; flex: 1; }
.sc-plan-card .btn { margin-top: auto; }

/* CTA band */
.sc-cta-band {
    margin: 40px 0 12px;
    padding: 32px 30px;
    border: 1px solid #1a2836;
    border-radius: 16px;
    background: linear-gradient(120deg, rgba(45,212,191,.08), rgba(125,211,252,.05));
    display: flex; justify-content: space-between; align-items: center; gap: 20px; flex-wrap: wrap;
}
.sc-cta-band h3 { font-family: var(--font-display); color: #e8f1f4; margin: 0 0 6px; }
.sc-cta-band p { color: #93a8b8; margin: 0; }

/* domains page search box */
.sc-domain-box {
    background: #0c131c;
    border: 1px solid #2a4258;
    border-radius: 16px;
    padding: 22px;
    box-shadow: 0 24px 80px -24px rgba(0,0,0,.8), 0 0 90px -30px rgba(45,212,191,.25);
    max-width: 860px;
    margin: 0 auto;
}
.sc-domain-inputrow {
    display: flex; align-items: flex-start; gap: 12px;
    background: #090f17;
    border: 1px solid #1a2836;
    border-radius: 12px;
    padding: 12px 14px;
}
.sc-domain-inputrow > i.fa-search { color: #5f7688; margin-top: 8px; }
.sc-domain-inputrow textarea {
    flex: 1;
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    color: #e8f1f4 !important;
    resize: vertical;
    min-height: 48px;
    font-size: .95rem;
}
.sc-domain-inputrow textarea:focus { outline: none; }
.sc-domain-inputrow .btn { flex-shrink: 0; }
.sc-domain-options {
    display: flex; justify-content: space-between; align-items: center; gap: 14px;
    flex-wrap: wrap; margin-top: 16px;
}
.sc-domain-options .btn-group, .sc-domain-options .multiselect-container { max-width: 260px; }
.sc-domain-options .btn-group > button {
    background: #0c131c !important;
    border: 1px solid #2a4258 !important;
    color: #93a8b8 !important;
    border-radius: 8px !important;
}
.sc-domain-pricing-link { text-align: center; margin-top: 18px; }
.sc-domain-pricing-link a { color: #5eead4; font-size: .9rem; }

/* captcha on the domains page */
.sc-domains-hero .captchaimage img, .sc-domains-hero #inputCaptchaImage {
    border-radius: 8px; border: 1px solid #1a2836;
}
.sc-domains-hero input[name="code"] {
    background: #090f17 !important; border: 1px solid #1a2836 !important; color: #e8f1f4 !important;
    border-radius: 8px !important; max-width: 220px;
}

/* multiselect dropdown dark (bootstrap-multiselect plugin) */
.multiselect-container {
    background: #0c131c !important;
    border: 1px solid #2a4258 !important;
    border-radius: 10px !important;
}
.multiselect-container .multiselect-item a { color: #93a8b8 !important; }
.multiselect-container .multiselect-item:hover > a,
.multiselect-container .multiselect-item.active > a { background: rgba(125,211,252,.08) !important; color: #e8f1f4 !important; }
.multiselect-container .multiselect-item .form-check-label { color: #93a8b8 !important; }
.multiselect-container .multiselect-filter .form-control {
    background: #090f17 !important; border-color: #1a2836 !important; color: #e8f1f4 !important;
}

/* homepage icon tiles keep accent color variety but themed bg */
.action-icon-btns [class*="card-accent-"] i,
.action-icon-btns [class*="card-accent-"] .fa,
.action-icon-btns [class*="card-accent-"] .fas,
.action-icon-btns [class*="card-accent-"] .far { font-size: 1.3rem; }


/* ==========================================================================
   21. HEADER CONTROLS — unified search group + themed cart button
   ========================================================================== */
/* search group as one pill control */
header.header .search,
header.header .input-group.search {
    border: 1px solid #2a4258 !important;
    border-radius: 8px !important;
    background: #0c131c !important;
    overflow: hidden;
    height: 42px;
}
.input-group.search .form-control {
    border: none !important;
    background: transparent !important;
    box-shadow: none !important;
    height: 40px !important;
    border-radius: 0 !important;
    color: #e8f1f4 !important;
    font-size: .9rem;
}
.input-group.search .form-control::placeholder { color: #5f7688 !important; }
.input-group.search .input-group-prepend,
.input-group.search .input-group-append { background: transparent !important; border: none !important; }
header.header .input-group.search .btn,
.input-group.search .btn {
    background: transparent !important;
    border: none !important;
    border-radius: 0 !important;
    color: #5eead4 !important;
    height: 40px;
    padding: 0 14px;
}
header.header .input-group.search .btn:hover,
.input-group.search .btn:hover { background: rgba(45, 212, 191, .12) !important; }
.input-group.search:focus-within { border-color: #0fb5a6; box-shadow: 0 0 0 3px rgba(15,181,166,.15); }

/* cart button: themed box, no light outline */
.cart-btn, .btn.nav-link.cart-btn, a.cart-btn {
    background: #0c131c !important;
    border: 1px solid #2a4258 !important;
    border-radius: 8px !important;
    color: #93a8b8 !important;
    height: 42px;
    width: 46px;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    position: relative;
}
.cart-btn:hover { border-color: #0fb5a6 !important; color: #5eead4 !important; }
.cart-btn .badge, #cartItemCount {
    position: absolute;
    top: -7px; right: -7px;
    background: #0fb5a6 !important;
    color: #04211d !important;
    border: 2px solid #070b12;
    border-radius: 50%;
    font-family: var(--font-mono);
    font-size: .62rem;
    line-height: 1;
    padding: 3px 4px;
    min-width: 18px;
}

/* logo: crisp, uncropped */
.navbar-brand img.logo-img { image-rendering: -webkit-optimize-contrast; }


/* ==========================================================================
   22. CLIENT AREA DASHBOARD — stat tiles, home panel headers, light buttons
   (theme.min.css paints these white with 0,2,0 specificity)
   ========================================================================== */
.tiles .tile, .tile {
    background: #0c131c !important;
    border-right: 1px solid #1a2836 !important;
    border-bottom: 1px solid #1a2836 !important;
    transition: background .2s ease;
}
.tiles .tile:hover, .tile:hover { background: #101a25 !important; }
.tiles .tile .stat, .tile .stat {
    color: #2dd4bf;
    font-family: var(--font-mono);
    font-variant-numeric: tabular-nums;
}
.tiles .tile .title, .tile .title { color: #93a8b8 !important; letter-spacing: .08em; }
.tiles .tile i, .tile i { color: #2a4258 !important; }
.tiles .tile:hover i, .tile:hover i { color: #2dd4bf !important; }
.tiles .tile .highlight, .tile .highlight { opacity: .9; }
.bg-color-blue { background-color: #38bdf8 !important; }
.bg-color-green { background-color: #34d399 !important; }
.bg-color-red { background-color: #f87171 !important; }
.bg-color-gold { background-color: #fbbf24 !important; }
.tiles .row > div:last-child .tile { border-right: 0 !important; }

/* home panel headers (white bg + white btn text = invisible titles) */
.client-home-cards .card-header,
.client-home-cards .mc-promo-login .panel-heading,
.client-home-cards .mc-promo-manage .panel-heading {
    background: rgba(16, 26, 37, .65) !important;
    border-bottom: 1px solid #1a2836 !important;
}
.client-home-cards .card-header .btn,
.client-home-cards .card-header a,
.client-home-cards .card-header .card-title {
    color: #e8f1f4 !important;
}
.client-home-cards .card-header .btn:hover { color: #5eead4 !important; background: transparent !important; }
.client-home-cards .card-header i, .client-home-cards .card-header .fas, .client-home-cards .card-header .far {
    color: #2dd4bf !important;
}
.client-home-cards .card { background: #0c131c !important; border-color: #1a2836 !important; }
.client-home-cards .card-body { background: transparent !important; color: #93a8b8 !important; }
.client-home-cards .list-group { border-top: 1px solid #1a2836 !important; border-bottom: 1px solid #1a2836 !important; }
.client-home-cards .list-group .list-group-item { border-bottom: 1px solid rgba(26,40,54,.7) !important; background: transparent !important; color: #93a8b8 !important; }
.client-home-cards .list-group .list-group-item a { color: #2dd4bf !important; }
.client-home-cards small { color: #5f7688 !important; }
.client-home-cards .card-footer { background: transparent !important; border-top: 1px solid #1a2836 !important; }
.client-home-cards .card-footer a, .client-home-cards .card-footer small a { color: #93a8b8 !important; }

/* light/white buttons (Transfer etc.) */
.btn-light, .btn-white, .btn.btn-light, .btn.btn-white {
    background: transparent !important;
    border: 1px solid #2a4258 !important;
    color: #e8f1f4 !important;
}
.btn-light:hover, .btn-white:hover { background: rgba(125,211,252,.06) !important; border-color: #0fb5a6 !important; color: #5eead4 !important; }

/* sidebar panels: ensure headers/links themed */
.sidebar .card-header, .sidebar .panel-heading { background: rgba(16,26,37,.65) !important; color: #e8f1f4 !important; border-color: #1a2836 !important; }
.sidebar .list-group-item { background: transparent !important; border-color: rgba(26,40,54,.6) !important; color: #93a8b8 !important; }
.sidebar .list-group-item a { color: #93a8b8 !important; }
.sidebar .list-group-item a:hover { color: #5eead4 !important; }

/* SeloraCloud: dark-theme dropdown dividers (stock Bootstrap paints them
   near-white #e9ecef, which reads as a stray white line on dark menus). */
.dropdown-divider { border-top-color: var(--border, #1a2836) !important; }
.navbar .dropdown-divider, header.header .dropdown-divider { border-top-color: var(--border, #1a2836) !important; }
