/* ==========================================================================
   BORNO CLOUD - ULTIMATE UNIFIED DARK THEME (FINAL COMPLETE FIX)
   ========================================================================== */
:root {
    --borno-main: #151a1f;        /* Main background */
    --borno-header: #11151a;      /* Deep dark for headers/titles */
    --borno-card: #1d2329;        /* Card & Box backgrounds */
    --borno-cyan: #109682;        /* Brand Cyan */
    --borno-cyan-hover: #0d8271;  /* Hover Cyan */
    --borno-border: #334155;      /* Border colors */
    --borno-input: #161b22;       /* Form inputs */
    --borno-text: #ffffff;        /* Main text */
    --borno-text-muted: #a0aec0;  /* Sub-text */
    --radius-30: 30px;
    --radius-15: 15px;
}

/* 1. GLOBAL BACKGROUNDS & AGGRESSIVE WHITE-WIPEOUT */
body:not(:has(#borno-custom-home)),
body:not(:has(#borno-custom-home)) section#main-body,
body:not(:has(#borno-custom-home)) div.main-content,
body:not(:has(#borno-custom-home)) div.primary-content {
    background-color: var(--borno-main) !important;
    color: var(--borno-text) !important;
}

/* 🔥 THE WHITE-KILLER: Force override WHMCS hardcoded wrappers 🔥 */
body:not(:has(#borno-custom-home)) .bg-white,
body:not(:has(#borno-custom-home)) .bg-light,
body:not(:has(#borno-custom-home)) .bg-color-white,
#order-standard_cart .bg-white,
#order-standard_cart .cart-body,
#order-standard_cart .main-cart-body,
#order-standard_cart .secondary-cart-body,
#order-standard_cart .secondary-cart-sidebar,
#order-standard_cart .domain-step-options.bg-white,
#order-standard_cart .tab-content,
#order-standard_cart .tab-content.bg-white,
#order-standard_cart .tab-pane,
#order-standard_cart .tab-pane.bg-white,
#pills-spotlight {
    background-color: transparent !important;
    color: var(--borno-text) !important;
}

/* PROTECTION FOR HEADER/FOOTER */
body:not(:has(#borno-custom-home)) #header,
body:not(:has(#borno-custom-home)) #footer,
body:not(:has(#borno-custom-home)) header,
body:not(:has(#borno-custom-home)) footer {
    background-color: transparent !important;
}

/* 2. DASHBOARD TILES */
body:not(:has(#borno-custom-home)) .tiles .tile {
    background-color: var(--borno-card) !important;
    border: 1px solid var(--borno-border) !important;
    border-radius: var(--radius-30) !important;
    padding: 20px !important;
    margin-bottom: 15px;
    display: block;
    position: relative;
    overflow: hidden;
    text-decoration: none !important;
}
body:not(:has(#borno-custom-home)) .tile .stat { color: var(--borno-cyan) !important; font-size: 2.5rem !important; font-weight: 700 !important; }
body:not(:has(#borno-custom-home)) .tile .title { color: var(--borno-text) !important; font-weight: 600 !important; font-size: 0.9rem; text-transform: uppercase;}
body:not(:has(#borno-custom-home)) .tile i { color: var(--borno-cyan) !important; opacity: 0.5; }
body:not(:has(#borno-custom-home)) .tile .highlight { height: 6px !important; background-color: var(--borno-cyan) !important; position: absolute; bottom: 0; left: 0; width: 100%; }

/* 3. LOGIN, REGISTER & CLIENT AREA CARDS */
body:not(:has(#borno-custom-home)) .card,
body:not(:has(#borno-custom-home)) .panel {
    background-color: var(--borno-card) !important;
    border: 1px solid var(--borno-border) !important;
    border-radius: var(--radius-15) !important;
}
body:not(:has(#borno-custom-home)) .login-form .card {
    border-radius: var(--radius-30) !important;
}
body:not(:has(#borno-custom-home)) .card-header,
body:not(:has(#borno-custom-home)) .panel-heading {
    background-color: var(--borno-header) !important;
    border-bottom: 1px solid var(--borno-border) !important;
    color: var(--borno-text) !important;
}
body:not(:has(#borno-custom-home)) .card-footer,
body:not(:has(#borno-custom-home)) .panel-footer {
    background-color: var(--borno-header) !important;
    border-top: 1px solid var(--borno-border) !important;
}

/* 4. PRODUCTS */
#order-standard_cart .products .product {
    background-color: var(--borno-card) !important;
    border: 1px solid var(--borno-border) !important;
    border-radius: var(--radius-15) !important;
    color: var(--borno-text) !important;
    margin-bottom: 20px;
    overflow: hidden; 
}
#order-standard_cart .products .product header {
    background-color: var(--borno-header) !important;
    color: var(--borno-text) !important;
    padding: 15px !important;
    border-bottom: 1px solid var(--borno-border) !important;
    border-radius: 0 !important;
}
#order-standard_cart .products .product .product-desc,
#order-standard_cart .products .product .product-pricing {
    background-color: var(--borno-card) !important;
    color: var(--borno-text-muted) !important;
}
#order-standard_cart .products .product header span,
#order-standard_cart .products .product .name,
#order-standard_cart .products .product .price {
    color: var(--borno-text) !important;
}

/* 5. DOMAIN SEARCH & RESULTS */
#order-standard_cart .domain-checker-container {
    background-color: transparent !important;
}
#order-standard_cart .domain-checker-bg {
    background-color: var(--borno-card) !important;
    border: 1px solid var(--borno-border) !important;
    border-radius: var(--radius-15) !important;
    padding: 25px !important;
}
#order-standard_cart .input-group-box {
    background-color: var(--borno-input) !important;
    border: 1px solid var(--borno-border) !important;
    border-radius: 8px !important;
    overflow: hidden;
}
#order-standard_cart .input-group-box .form-control {
    background-color: transparent !important;
    border: none !important;
    color: var(--borno-text) !important;
    box-shadow: none !important;
}
#order-standard_cart .input-group-box .input-group-addon,
#order-standard_cart .input-group-box .input-group-btn {
    background-color: transparent !important;
    border: none !important;
}

/* Domain Pricing Header */
#order-standard_cart .tld-pricing-header {
    background-color: var(--borno-header) !important;
    border: 1px solid var(--borno-border) !important;
    border-bottom: 2px solid var(--borno-cyan) !important;
    color: #ffffff !important; 
    padding: 15px !important;
    border-radius: 10px 10px 0 0 !important;
    margin: 0 !important;
}
#order-standard_cart .tld-pricing-header div,
#order-standard_cart .tld-pricing-header span,
#order-standard_cart .tld-column,
#order-standard_cart .pricing-column {
    background-color: transparent !important; 
    color: #ffffff !important; 
    font-weight: 700 !important;
}

/* "No Domains Found" / Empty State Box */
#order-standard_cart .domain-lookup-result,
#order-standard_cart .domain-lookup-primary-results,
#order-standard_cart .domain-lookup-suggestions,
#order-standard_cart .domain-results-empty,
#order-standard_cart .domain-checker-unavailable,
#order-standard_cart .domain-checker-available,
#order-standard_cart .domain-checker-invalid,
#order-standard_cart .domain-checker-result-headline,
#order-standard_cart .domain-checker-container .panel {
    background-color: var(--borno-card) !important;
    color: var(--borno-text) !important;
    border-color: var(--borno-border) !important;
    border-radius: var(--radius-15) !important;
}

/* "Add Web Hosting" & "Transfer to us" Carts */
#order-standard_cart .domain-promo-box,
#order-standard_cart .domain-promo-box .panel,
#order-standard_cart .mc-promo {
    background-color: var(--borno-card) !important;
    border: 1px solid var(--borno-border) !important;
    border-radius: var(--radius-15) !important;
    color: #ffffff !important;
}
#order-standard_cart .mc-promo .header,
#order-standard_cart .mc-promo .body,
#order-standard_cart .domain-promo-box .panel-body {
    background-color: transparent !important;
    color: #ffffff !important;
}
#order-standard_cart .domain-promo-box h3,
#order-standard_cart .domain-promo-box h4,
#order-standard_cart .domain-promo-box p,
#order-standard_cart .mc-promo .headline,
#order-standard_cart .mc-promo .tagline,
#order-standard_cart .mc-promo li {
    color: #ffffff !important;
}

/* Spotlight TLDs */
#order-standard_cart .spotlight-tlds .spotlight-tld {
    background-color: var(--borno-card) !important;
    border: 1px solid var(--borno-border) !important;
    border-radius: var(--radius-15) !important;
    padding: 15px !important;
    color: var(--borno-text) !important;
    box-shadow: 0 4px 12px rgba(0,0,0,0.15) !important;
}
#order-standard_cart .spotlight-tlds .spotlight-tld span { color: var(--borno-text) !important; }

/* 🔥 FIXED: Domain Selection Options (Hosting > Choose Domain Box) 🔥 */
#order-standard_cart .domain-step-options,
#order-standard_cart .domain-pricing,
#order-standard_cart .tld-row,
#order-standard_cart .sq-wrapper,
#order-standard_cart .domain-selection-options,
#order-standard_cart .domain-selection-options .option {
    background-color: var(--borno-card) !important;
    color: var(--borno-text) !important;
    border-color: var(--borno-border) !important;
}
#order-standard_cart .domain-selection-options .option label {
    color: var(--borno-text) !important;
}
#order-standard_cart .tld-row { border-bottom: 1px solid var(--borno-border) !important; }
#order-standard_cart .domain-step-options {
    border: 1px solid var(--borno-border) !important;
    border-radius: var(--radius-15) !important;
    padding: 15px !important;
    margin-top: 15px !important;
}
#order-standard_cart .domain-checker-container h2,
#order-standard_cart .domain-checker-container p { color: var(--borno-text) !important; }

/* 6. CONFIGURE PRODUCT & SIDEBAR PANELS */
#order-standard_cart .product-info {
    background-color: var(--borno-card) !important;
    border: 1px solid var(--borno-border) !important;
    border-radius: var(--radius-15) !important;
    padding: 20px !important;
    color: var(--borno-text-muted) !important;
}
#order-standard_cart .product-info .product-title {
    color: var(--borno-cyan) !important;
    font-size: 1.5rem;
    font-weight: bold;
}
#order-standard_cart .panel-addon,
#order-standard_cart .panel-default {
    background-color: var(--borno-card) !important;
    border: 1px solid var(--borno-border) !important;
    border-radius: var(--radius-15) !important;
}
#order-standard_cart .panel-addon > .panel-heading,
#order-standard_cart .panel-default > .panel-heading {
    background-color: var(--borno-header) !important;
    color: var(--borno-text) !important;
    border-bottom: 1px solid var(--borno-border) !important;
}
#order-standard_cart .panel-addon > .panel-body,
#order-standard_cart .panel-default > .panel-body {
    background-color: var(--borno-card) !important;
    color: var(--borno-text) !important;
    border-radius: 0 0 var(--radius-15) var(--radius-15) !important;
}

/* 7. VIEW CART & PROMO CODE BOX */
#order-standard_cart .view-cart-items .item {
    background-color: var(--borno-card) !important;
    border: 1px solid var(--borno-border) !important;
    border-radius: var(--radius-15) !important;
    color: var(--borno-text) !important;
    margin-bottom: 15px;
}
#order-standard_cart .view-cart-items-header {
    background-color: var(--borno-header) !important;
    color: var(--borno-text) !important;
    border: 1px solid var(--borno-border) !important;
    border-radius: var(--radius-15) 15px 0 0 !important;
}

/* Promo Code Box */
#order-standard_cart .view-cart-promotion-code,
#order-standard_cart .promo-code-container {
    background-color: var(--borno-card) !important;
    border: 1px dashed var(--borno-cyan) !important;
    border-radius: var(--radius-15) !important;
    padding: 20px !important;
    margin-bottom: 20px !important;
    color: var(--borno-text) !important;
}
#order-standard_cart .view-cart-promotion-code form,
#order-standard_cart .view-cart-promotion-code div,
#order-standard_cart .view-cart-promotion-code h3 {
    background-color: transparent !important;
    color: var(--borno-text) !important;
}
#order-standard_cart .view-cart-promotion-code .form-control {
    background-color: var(--borno-input) !important;
    border: 1px solid var(--borno-border) !important;
    color: var(--borno-text) !important;
}
#order-standard_cart .view-cart-promotion-code button {
    background-color: var(--borno-cyan) !important;
    border: 1px solid var(--borno-cyan) !important;
    color: #ffffff !important;
}

/* 8. ORDER SUMMARY & TOTAL DUE */
#order-standard_cart #orderSummary {
    background-color: transparent !important;
}
#order-standard_cart .summary-container {
    background-color: var(--borno-card) !important;
    border: 1px solid var(--borno-border) !important;
    border-radius: var(--radius-15) !important;
    padding: 20px !important;
    color: var(--borno-text) !important;
}
#order-standard_cart .order-summary h2,
#order-standard_cart .order-summary h3 { color: var(--borno-text) !important; }
#order-standard_cart .summary-totals {
    border-top: 1px solid var(--borno-border) !important;
    border-bottom: 1px solid var(--borno-border) !important;
    padding: 15px 0 !important;
}
#order-standard_cart .total-due-today {
    background-color: var(--borno-header) !important;
    border: 1px solid var(--borno-cyan) !important;
    border-radius: var(--radius-15) !important;
    padding: 20px !important;
    margin-top: 15px !important;
    color: var(--borno-text) !important;
}
#order-standard_cart .total-due-today .amt {
    color: var(--borno-cyan) !important;
    font-size: 1.8rem !important;
    font-weight: bold;
}
#order-standard_cart .order-summary .loader { background-color: rgba(21, 26, 31, 0.9) !important; }

/* 9. PROGRESS TABS */
#order-standard_cart .checkout-steps,
#order-standard_cart .view-cart-tabs {
    background-color: transparent !important;
    border-bottom: 1px solid var(--borno-border) !important;
}
#order-standard_cart .checkout-steps .step,
#order-standard_cart .nav-tabs .nav-link {
    color: var(--borno-text-muted) !important;
    background-color: transparent !important;
    border: none !important;
}
#order-standard_cart .checkout-steps .step.active,
#order-standard_cart .nav-tabs .nav-link.active {
    color: var(--borno-cyan) !important;
    border-bottom: 3px solid var(--borno-cyan) !important;
}

/* 10. FORMS, INPUTS & UTILITIES */
body:not(:has(#borno-custom-home)) .form-control,
body:not(:has(#borno-custom-home)) select,
body:not(:has(#borno-custom-home)) input[type="text"],
body:not(:has(#borno-custom-home)) input[type="password"],
body:not(:has(#borno-custom-home)) input[type="email"],
body:not(:has(#borno-custom-home)) textarea {
    background-color: var(--borno-input) !important;
    border: 1px solid var(--borno-border) !important;
    color: var(--borno-text) !important;
    border-radius: 8px !important;
}
body:not(:has(#borno-custom-home)) .form-control:focus {
    border-color: var(--borno-cyan) !important;
    box-shadow: 0 0 0 2px rgba(16, 150, 130, 0.2) !important;
}
body:not(:has(#borno-custom-home)) .input-group-text,
body:not(:has(#borno-custom-home)) .input-group-addon,
body:not(:has(#borno-custom-home)) .btn-reveal-pw {
    background-color: var(--borno-header) !important;
    border: 1px solid var(--borno-border) !important;
    color: var(--borno-cyan) !important;
}

/* 11. GLOBAL BUTTONS */
body:not(:has(#borno-custom-home)) .btn-primary,
body:not(:has(#borno-custom-home)) .btn-success,
#order-standard_cart .btn-checkout,
#order-standard_cart .btn-order,
#order-standard_cart .btn-order-now,
#btnDomainSearch {
    background-color: var(--borno-cyan) !important;
    border-color: var(--borno-cyan) !important;
    border-radius: 10px !important;
    color: #ffffff !important;
    font-weight: 600 !important;
    transition: all 0.3s ease !important;
}
body:not(:has(#borno-custom-home)) .btn-primary:hover,
body:not(:has(#borno-custom-home)) .btn-success:hover,
#order-standard_cart .btn-checkout:hover,
#order-standard_cart .btn-order:hover,
#order-standard_cart .btn-order-now:hover,
#btnDomainSearch:hover {
    background-color: var(--borno-cyan-hover) !important;
    border-color: var(--borno-cyan-hover) !important;
}

/* Miscellaneous Fixes */
body:not(:has(#borno-custom-home)) label,
#order-standard_cart p { color: var(--borno-text-muted) !important; }
body:not(:has(#borno-custom-home)) .table thead th {
    background-color: var(--borno-header) !important;
    color: var(--borno-cyan) !important;
    border: none !important;
}
body:not(:has(#borno-custom-home)) .table,
body:not(:has(#borno-custom-home)) .table td {
    background-color: var(--borno-card) !important;
    color: var(--borno-text) !important;
    border-color: var(--borno-border) !important;
}