/*
 * VPS-Managed WHMCS Dark Theme v2
 * Matches main site: navy-950 background, glass cards, emerald/blue accents
 * Plus Jakarta Sans font family
 * 
 * Fixes: order form theming, contrast, card classes, product pages
 */

/* ── Google Fonts ── */
@import url('https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700;800&display=swap');

/* ══════════════════════════════════════════════════════════════
   BASE
   ══════════════════════════════════════════════════════════════ */

html, body {
    background-color: #0b1120;
    color: #cbd5e1;
}

body,
input,
button,
select,
textarea {
    font-family: 'Plus Jakarta Sans', 'Segoe UI', system-ui, sans-serif;
    color: #cbd5e1;
}

h1, h2, h3, h4, h5, h6 {
    font-family: 'Plus Jakarta Sans', 'Segoe UI', system-ui, sans-serif;
    font-weight: 700;
    color: #f1f5f9;
}

a {
    color: #60a5fa;
}

a:hover,
a:focus {
    color: #93c5fd;
    text-decoration: none;
}

p, li, td, th, span, div {
    color: #cbd5e1;
}

::selection {
    background-color: rgba(59,130,246,0.3);
    color: #ffffff;
}

/* ══════════════════════════════════════════════════════════════
   HEADER
   ══════════════════════════════════════════════════════════════ */

section#header {
    background-color: #0f172a;
    border-bottom: 1px solid rgba(255,255,255,0.06);
    padding: 10px 0;
}

section#header .top-nav li a {
    color: #94a3b8;
    font-size: 13px;
}

section#header .top-nav li a:hover {
    color: #e2e8f0;
}

section#header .logo img {
    max-height: 36px;
    filter: brightness(1.1);
}

section#header .logo-text {
    font-family: 'Plus Jakarta Sans', sans-serif;
    font-weight: 800;
    color: #ffffff;
    font-size: 2.2em;
}

/* ══════════════════════════════════════════════════════════════
   MAIN NAVIGATION
   ══════════════════════════════════════════════════════════════ */

.navbar-main {
    background-color: #0b1120 !important;
    border-bottom: 1px solid rgba(255,255,255,0.06);
    font-size: 14px;
}

.navbar-main .navbar-nav > li > a {
    color: #94a3b8;
    padding: 10px 15px;
    transition: color 0.2s;
}

.navbar-main .navbar-nav > li > a:hover,
.navbar-main .navbar-nav > li > a:focus,
.navbar-main .navbar-nav > .active > a,
.navbar-main .navbar-nav > .active > a:hover {
    color: #ffffff;
    background-color: rgba(59,130,246,0.08);
}

.navbar-main .navbar-toggle {
    border-color: rgba(255,255,255,0.15);
}

.navbar-main .navbar-toggle .icon-bar {
    background-color: #94a3b8;
}

.navbar-main .dropdown-menu {
    background-color: #111827;
    border: 1px solid rgba(255,255,255,0.08);
    border-radius: 8px;
    box-shadow: 0 10px 30px rgba(0,0,0,0.4);
    padding: 6px 0;
    margin-top: 2px;
}

.navbar-main .dropdown-menu > li > a {
    color: #cbd5e1;
    font-size: 13px;
    padding: 8px 20px;
    transition: all 0.15s;
}

.navbar-main .dropdown-menu > li > a:hover,
.navbar-main .dropdown-menu > li > a:focus {
    color: #ffffff;
    background-color: rgba(59,130,246,0.12);
}

.navbar-main li.account {
    background-color: transparent;
}

/* ══════════════════════════════════════════════════════════════
   HOME BANNER
   ══════════════════════════════════════════════════════════════ */

section#home-banner {
    background: linear-gradient(135deg, #0b1120 0%, #111827 50%, #0f172a 100%);
    padding: 50px 0;
    border-bottom: 1px solid rgba(255,255,255,0.04);
}

section#home-banner h2 {
    color: #f1f5f9;
    font-size: 28px;
    font-weight: 700;
    margin-bottom: 30px;
}

section#home-banner .form-control {
    background-color: rgba(255,255,255,0.05);
    border: 1px solid rgba(255,255,255,0.12);
    color: #e2e8f0;
    border-radius: 12px;
    padding: 12px 20px;
    font-size: 15px;
}

section#home-banner .form-control:focus {
    border-color: rgba(59,130,246,0.5);
    box-shadow: 0 0 0 3px rgba(59,130,246,0.15);
    background-color: rgba(255,255,255,0.07);
}

section#home-banner .form-control::placeholder {
    color: #64748b;
}

section#home-banner .input-group-btn .btn {
    background: linear-gradient(135deg, #3b82f6, #6366f1);
    border: none;
    color: #ffffff;
    font-weight: 600;
    border-radius: 12px;
    padding: 12px 28px;
    transition: all 0.2s;
}

section#home-banner .input-group-btn .btn:hover {
    background: linear-gradient(135deg, #2563eb, #4f46e5);
}

section#home-banner .input-group-btn .transfer {
    background: transparent;
    border: 1px solid rgba(255,255,255,0.15);
    color: #94a3b8;
    border-radius: 12px;
}

section#home-banner .input-group-btn .transfer:hover {
    border-color: rgba(255,255,255,0.3);
    color: #ffffff;
    background: rgba(255,255,255,0.05);
}

.home-shortcuts {
    background-color: #0b1120;
    padding: 30px 0;
}

.home-shortcuts .lead {
    color: #94a3b8;
    font-size: 16px;
}

.home-shortcuts li a {
    background-color: rgba(255,255,255,0.03);
    border: 1px solid rgba(255,255,255,0.06);
    border-radius: 12px;
    padding: 20px;
    display: block;
    transition: all 0.2s;
    text-decoration: none;
}

.home-shortcuts li a:hover {
    background-color: rgba(59,130,246,0.08);
    border-color: rgba(59,130,246,0.2);
    transform: translateY(-2px);
}

.home-shortcuts li a i {
    color: #10b981;
    font-size: 24px;
}

.home-shortcuts li a p {
    color: #e2e8f0;
    margin-top: 8px;
    font-size: 13px;
    font-weight: 500;
}

.home-shortcuts li a p span {
    color: #94a3b8;
}

/* ══════════════════════════════════════════════════════════════
   MAIN BODY
   ══════════════════════════════════════════════════════════════ */

section#main-body {
    background-color: #0f172a;
    padding: 25px 0;
}

.main-content {
    min-height: 300px;
}

/* ── Page Header ── */
.page-header {
    border-bottom: 1px solid rgba(255,255,255,0.06);
    padding-bottom: 15px;
    margin-bottom: 25px;
}

.page-header h1 {
    color: #f1f5f9;
    font-size: 24px;
    font-weight: 700;
}

.page-header p.tagline {
    color: #94a3b8;
    font-size: 14px;
    margin-top: 5px;
}

/* ── Header Lined (WHMCS section headers) ── */
.header-lined {
    border-bottom: 1px solid rgba(255,255,255,0.06);
    margin-bottom: 20px;
}

.header-lined h1,
.header-lined h2,
.header-lined h3 {
    color: #f1f5f9;
    font-size: 22px;
}

/* ── Breadcrumb ── */
.breadcrumb {
    background-color: transparent;
    padding: 0;
    margin: 0 0 10px 0;
}

.breadcrumb > li + li::before {
    color: #64748b;
}

.breadcrumb a,
.breadcrumb > .active {
    color: #94a3b8;
    font-size: 13px;
}

.breadcrumb a:hover {
    color: #e2e8f0;
}

/* ══════════════════════════════════════════════════════════════
   PANELS (Bootstrap 3)
   ══════════════════════════════════════════════════════════════ */

.panel {
    background-color: rgba(255,255,255,0.03);
    border: 1px solid rgba(255,255,255,0.06);
    border-radius: 12px;
    color: #cbd5e1;
    box-shadow: 0 1px 3px rgba(0,0,0,0.2);
}

.panel-heading {
    background-color: rgba(255,255,255,0.04);
    border-bottom: 1px solid rgba(255,255,255,0.06);
    border-radius: 12px 12px 0 0;
    color: #f1f5f9;
    font-weight: 600;
}

.panel-title {
    color: #f1f5f9;
}

.panel-title > a {
    color: #e2e8f0;
}

.panel-title > a:hover {
    color: #ffffff;
}

.panel-body {
    padding: 15px;
    color: #cbd5e1;
}

.panel-default > .panel-heading {
    background-color: rgba(255,255,255,0.04);
    border-color: rgba(255,255,255,0.06);
    color: #e2e8f0;
}

.panel-primary {
    border-color: rgba(59,130,246,0.3);
}

.panel-primary > .panel-heading {
    background-color: rgba(59,130,246,0.15);
    border-color: rgba(59,130,246,0.3);
    color: #93c5fd;
}

.panel-success {
    border-color: rgba(16,185,129,0.3);
}

.panel-success > .panel-heading {
    background-color: rgba(16,185,129,0.15);
    border-color: rgba(16,185,129,0.3);
    color: #6ee7b7;
}

.panel-info {
    border-color: rgba(99,102,241,0.3);
}

.panel-info > .panel-heading {
    background-color: rgba(99,102,241,0.15);
    border-color: rgba(99,102,241,0.3);
    color: #a5b4fc;
}

.panel-warning {
    border-color: rgba(245,158,11,0.3);
}

.panel-warning > .panel-heading {
    background-color: rgba(245,158,11,0.15);
    border-color: rgba(245,158,11,0.3);
    color: #fcd34d;
}

.panel-danger {
    border-color: rgba(239,68,68,0.3);
}

.panel-danger > .panel-heading {
    background-color: rgba(239,68,68,0.15);
    border-color: rgba(239,68,68,0.3);
    color: #fca5a5;
}

.panel-footer {
    background-color: rgba(255,255,255,0.02);
    border-top: 1px solid rgba(255,255,255,0.06);
    border-radius: 0 0 12px 12px;
}

/* ══════════════════════════════════════════════════════════════
   CARDS (Bootstrap 4 - used by WHMCS order form)
   ══════════════════════════════════════════════════════════════ */

.card,
.panel.card,
.card.card-default {
    background-color: rgba(255,255,255,0.03) !important;
    border: 1px solid rgba(255,255,255,0.06) !important;
    border-radius: 12px !important;
    color: #cbd5e1 !important;
    box-shadow: 0 1px 3px rgba(0,0,0,0.2);
}

.card-header,
.card.card-default > .card-header,
.panel-heading.card-header {
    background-color: rgba(255,255,255,0.04) !important;
    border-bottom: 1px solid rgba(255,255,255,0.06) !important;
    color: #f1f5f9 !important;
    font-weight: 600;
    border-radius: 12px 12px 0 0 !important;
}

.card-header .panel-title,
.card-header h3 {
    color: #f1f5f9 !important;
}

.card-body,
.card.card-default > .card-body,
.panel-body.card-body {
    color: #cbd5e1 !important;
    padding: 15px;
}

.card-footer {
    background-color: rgba(255,255,255,0.02) !important;
    border-top: 1px solid rgba(255,255,255,0.06) !important;
    border-radius: 0 0 12px 12px !important;
    color: #cbd5e1 !important;
}

.card-sidebar {
    margin-bottom: 15px;
}

/* ══════════════════════════════════════════════════════════════
   ORDER FORM (standard_cart) - CRITICAL
   ══════════════════════════════════════════════════════════════ */

#order-standard_cart {
    color: #cbd5e1;
}

/* Fix white product backgrounds */
#order-standard_cart .products .product {
    background: rgba(255,255,255,0.03) !important;
    border: 1px solid rgba(255,255,255,0.06) !important;
    border-radius: 12px !important;
    color: #cbd5e1;
    transition: border-color 0.2s, box-shadow 0.2s;
}

#order-standard_cart .products .product:hover {
    border-color: rgba(59,130,246,0.2);
    box-shadow: 0 4px 12px rgba(0,0,0,0.2);
}

#order-standard_cart .products .product header {
    background: rgba(255,255,255,0.04) !important;
    border-bottom: 1px solid rgba(255,255,255,0.06) !important;
    color: #f1f5f9;
    border-radius: 12px 12px 0 0;
    padding: 15px 20px;
}

#order-standard_cart .products .product header h3,
#order-standard_cart .products .product header .headline {
    color: #f1f5f9 !important;
    font-weight: 700;
    font-size: 16px;
}

#order-standard_cart .products .product header .tagline {
    color: #94a3b8 !important;
    font-size: 13px;
}

#order-standard_cart .products .product .product-pricing .price {
    color: #f1f5f9 !important;
    font-weight: 700;
    font-size: 20px;
}

#order-standard_cart .products .product .product-pricing .cycle {
    color: #94a3b8 !important;
    font-size: 13px;
}

#order-standard_cart .products .product .product-desc,
#order-standard_cart .products .product .product-info,
#order-standard_cart .products .product .feature-value {
    color: #cbd5e1 !important;
    font-size: 13px;
    line-height: 1.6;
}

/* Fix order form labels (were #666 = invisible on dark) */
#order-standard_cart label,
#order-standard_cart p.domain-renewal-desc,
.service-renewals .div-renewal-period-label {
    color: #e2e8f0 !important;
    font-weight: 500;
}

/* Fix order form sub-headings */
#order-standard_cart .sub-heading {
    border-top-color: rgba(255,255,255,0.06) !important;
}

#order-standard_cart .sub-heading span,
#order-standard_cart .sub-heading-borderless span {
    color: #94a3b8 !important;
    background-color: #0f172a;
}

/* Fix sidebar in order form */
#order-standard_cart .cart-sidebar,
#order-standard_cart .sidebar-collapsed {
    color: #cbd5e1;
}

#order-standard_cart .cart-sidebar .list-group-item {
    border-color: rgba(255,255,255,0.04) !important;
    color: #cbd5e1;
    background: transparent;
}

#order-standard_cart .cart-sidebar .list-group-item:hover,
#order-standard_cart .cart-sidebar .list-group-item.active {
    background: rgba(59,130,246,0.08);
    color: #93c5fd;
}

/* Fix order form selects and dropdowns */
#order-standard_cart select,
#order-standard_cart .custom-select {
    background-color: rgba(255,255,255,0.05) !important;
    color: #e2e8f0 !important;
    border: 1px solid rgba(255,255,255,0.12) !important;
    border-radius: 8px;
}

#order-standard_cart select option {
    background-color: #111827;
    color: #e2e8f0;
}

/* Fix domain search results */
#order-standard_cart .domain-results-table,
#order-standard_cart .domain-checker-container .form-control {
    color: #e2e8f0;
}

/* Fix billing cycle selectors */
#order-standard_cart .billing-cycle-container label {
    color: #cbd5e1;
}

/* Fix checkout summary */
#order-standard_cart .order-summary {
    background: rgba(255,255,255,0.03);
    border: 1px solid rgba(255,255,255,0.06);
    border-radius: 12px;
}

/* Fix iCheck/radio styling for dark theme */
#order-standard_cart .iradio_square-blue,
#order-standard_cart .icheckbox_square-blue {
    background-color: rgba(255,255,255,0.05);
    border-color: rgba(255,255,255,0.15);
}

/* ══════════════════════════════════════════════════════════════
   GLOBAL FORCE-OVERRIDE: Kill all dark text on dark bg
   WHMCS parent CSS uses hardcoded #333, #666, #555 etc
   This section catches everything the parent theme misses
   ══════════════════════════════════════════════════════════════ */

#order-standard_cart,
#order-standard_cart *,
#order-standard_cart *::before,
#order-standard_cart *::after {
    border-color: rgba(255,255,255,0.06);
}

#order-standard_cart h1,
#order-standard_cart h2,
#order-standard_cart h3,
#order-standard_cart h4,
#order-standard_cart h5,
#order-standard_cart h6 {
    color: #f1f5f9 !important;
}

#order-standard_cart p,
#order-standard_cart span,
#order-standard_cart div,
#order-standard_cart li,
#order-standard_cart td,
#order-standard_cart th,
#order-standard_cart a,
#order-standard_cart label,
#order-standard_cart small,
#order-standard_cart strong,
#order-standard_cart em,
#order-standard_cart dt,
#order-standard_cart dd {
    color: #cbd5e1 !important;
}

#order-standard_cart a:hover {
    color: #93c5fd !important;
}

#order-standard_cart .headline,
#order-standard_cart .tagline,
#order-standard_cart .product-title,
#order-standard_cart .product-name {
    color: #f1f5f9 !important;
}

#order-standard_cart .price,
#order-standard_cart .amount,
#order-standard_cart .total {
    color: #f1f5f9 !important;
}

#order-standard_cart .cycle,
#order-standard_cart .setup-fee,
#order-standard_cart .text-muted {
    color: #94a3b8 !important;
}

#order-standard_cart .desc,
#order-standard_cart .description,
#order-standard_cart .product-desc {
    color: #cbd5e1 !important;
}

#order-standard_cart input[type="text"],
#order-standard_cart input[type="email"],
#order-standard_cart input[type="password"],
#order-standard_cart input[type="tel"],
#order-standard_cart input[type="number"],
#order-standard_cart input[type="search"],
#order-standard_cart textarea {
    color: #e2e8f0 !important;
}

#order-standard_cart select {
    color: #e2e8f0 !important;
}

#order-standard_cart select option {
    background-color: #111827 !important;
    color: #e2e8f0 !important;
}

#order-standard_cart .panel-heading,
#order-standard_cart .card-header {
    background-color: rgba(255,255,255,0.04) !important;
    color: #f1f5f9 !important;
}

#order-standard_cart .panel,
#order-standard_cart .card {
    background-color: rgba(255,255,255,0.03) !important;
    color: #cbd5e1 !important;
}

#order-standard_cart .panel-body,
#order-standard_cart .card-body {
    color: #cbd5e1 !important;
}

#order-standard_cart .modal-header,
#order-standard_cart .modal-title,
#order-standard_cart .modal-body {
    color: #e2e8f0 !important;
}

#order-standard_cart .modal-content {
    background-color: #111827 !important;
}

#order-standard_cart .domain-results-table td,
#order-standard_cart .domain-results-table th {
    color: #cbd5e1 !important;
}

#order-standard_cart .breakdown-price {
    color: #f1f5f9 !important;
}

/* ══════════════════════════════════════════════════════════════
   TABLES
   ══════════════════════════════════════════════════════════════ */

.table {
    color: #cbd5e1;
}

.table > thead > tr > th {
    background-color: rgba(255,255,255,0.04);
    border-bottom: 1px solid rgba(255,255,255,0.08);
    color: #e2e8f0;
    font-weight: 600;
    font-size: 13px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    padding: 10px 12px;
}

.table > tbody > tr > td {
    border-top: 1px solid rgba(255,255,255,0.04);
    padding: 10px 12px;
    vertical-align: middle;
    color: #cbd5e1;
}

.table > tbody > tr:hover > td {
    background-color: rgba(59,130,246,0.04);
}

.table-striped > tbody > tr:nth-of-type(odd) {
    background-color: rgba(255,255,255,0.02);
}

/* ══════════════════════════════════════════════════════════════
   FORMS
   ══════════════════════════════════════════════════════════════ */

.form-control {
    background-color: rgba(255,255,255,0.05);
    border: 1px solid rgba(255,255,255,0.12);
    border-radius: 8px;
    color: #e2e8f0;
    padding: 8px 14px;
    font-size: 14px;
    transition: all 0.2s;
}

.form-control:focus {
    border-color: rgba(59,130,246,0.5);
    box-shadow: 0 0 0 3px rgba(59,130,246,0.15);
    background-color: rgba(255,255,255,0.07);
    color: #ffffff;
}

.form-control::placeholder {
    color: #64748b;
}

select.form-control {
    background-color: rgba(255,255,255,0.05);
    color: #cbd5e1;
    appearance: none;
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%2394a3b8' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e");
    background-repeat: no-repeat;
    background-position: right 10px center;
    background-size: 16px 12px;
}

select.form-control option {
    background-color: #111827;
    color: #e2e8f0;
}

textarea.form-control {
    resize: vertical;
    min-height: 100px;
}

label,
.control-label {
    color: #e2e8f0;
    font-weight: 500;
    font-size: 13px;
}

.form-group .help-block {
    color: #94a3b8;
    font-size: 12px;
}

/* ══════════════════════════════════════════════════════════════
   BUTTONS
   ══════════════════════════════════════════════════════════════ */

.btn {
    border-radius: 8px;
    font-weight: 600;
    font-size: 14px;
    padding: 8px 20px;
    transition: all 0.2s;
    border: none;
}

.btn-primary {
    background: linear-gradient(135deg, #3b82f6, #6366f1);
    color: #ffffff;
}

.btn-primary:hover,
.btn-primary:focus,
.btn-primary:active {
    background: linear-gradient(135deg, #2563eb, #4f46e5);
    color: #ffffff;
}

.btn-default {
    background-color: rgba(255,255,255,0.06);
    border: 1px solid rgba(255,255,255,0.12);
    color: #cbd5e1;
}

.btn-default:hover,
.btn-default:focus {
    background-color: rgba(255,255,255,0.1);
    border-color: rgba(255,255,255,0.2);
    color: #ffffff;
}

.btn-success {
    background: linear-gradient(135deg, #10b981, #059669);
    color: #ffffff;
}

.btn-success:hover {
    background: linear-gradient(135deg, #059669, #047857);
    color: #ffffff;
}

.btn-danger {
    background: linear-gradient(135deg, #ef4444, #dc2626);
    color: #ffffff;
}

.btn-danger:hover {
    background: linear-gradient(135deg, #dc2626, #b91c1c);
}

.btn-warning {
    background: linear-gradient(135deg, #f59e0b, #d97706);
    color: #ffffff;
}

.btn-lg {
    padding: 12px 28px;
    font-size: 15px;
    border-radius: 10px;
}

.btn-sm {
    padding: 5px 14px;
    font-size: 13px;
}

/* Order Now button in product cards */
.btn-order-now,
.btn.btn-success.btn-sm.btn-order-now {
    background: linear-gradient(135deg, #10b981, #059669);
    color: #ffffff;
    font-weight: 600;
}

.btn-order-now:hover {
    background: linear-gradient(135deg, #059669, #047857);
    color: #ffffff;
}

/* ══════════════════════════════════════════════════════════════
   SIDEBAR
   ══════════════════════════════════════════════════════════════ */

.sidebar .panel {
    margin-bottom: 8px;
}

.sidebar .panel .panel-body {
    padding: 10px 12px;
}

/* ══════════════════════════════════════════════════════════════
   LIST GROUPS
   ══════════════════════════════════════════════════════════════ */

.list-group-item {
    background-color: transparent;
    border-color: rgba(255,255,255,0.04);
    color: #cbd5e1;
    padding: 8px 15px;
}

.list-group-item:hover {
    background-color: rgba(255,255,255,0.03);
}

.list-group-item-action {
    color: #cbd5e1;
}

.list-group-item-action:hover {
    background-color: rgba(255,255,255,0.03);
    color: #e2e8f0;
}

a.list-group-item.active,
a.list-group-item.active:hover,
.list-group-item-action.active {
    background-color: rgba(59,130,246,0.15);
    border-color: rgba(59,130,246,0.3);
    color: #93c5fd;
}

/* ══════════════════════════════════════════════════════════════
   BADGES & LABELS
   ══════════════════════════════════════════════════════════════ */

.badge {
    background-color: rgba(59,130,246,0.2);
    color: #93c5fd;
    font-weight: 600;
    border-radius: 6px;
    padding: 3px 8px;
    font-size: 11px;
}

.label {
    border-radius: 6px;
    font-weight: 600;
    font-size: 11px;
    padding: 3px 8px;
}

.label-primary {
    background-color: rgba(59,130,246,0.2);
    color: #93c5fd;
}

.label-success {
    background-color: rgba(16,185,129,0.2);
    color: #6ee7b7;
}

.label-warning {
    background-color: rgba(245,158,11,0.2);
    color: #fcd34d;
}

.label-danger {
    background-color: rgba(239,68,68,0.2);
    color: #fca5a5;
}

.label-info {
    background-color: rgba(99,102,241,0.2);
    color: #a5b4fc;
}

/* ══════════════════════════════════════════════════════════════
   PAGINATION
   ══════════════════════════════════════════════════════════════ */

.pagination > li > a,
.pagination > li > span {
    background-color: rgba(255,255,255,0.04);
    border: 1px solid rgba(255,255,255,0.08);
    color: #94a3b8;
    border-radius: 8px;
    margin: 0 2px;
}

.pagination > li > a:hover {
    background-color: rgba(59,130,246,0.1);
    border-color: rgba(59,130,246,0.3);
    color: #ffffff;
}

.pagination > .active > a,
.pagination > .active > span {
    background: linear-gradient(135deg, #3b82f6, #6366f1);
    border-color: transparent;
    color: #ffffff;
}

/* ══════════════════════════════════════════════════════════════
   ALERTS
   ══════════════════════════════════════════════════════════════ */

.alert {
    border-radius: 10px;
    border: none;
    font-size: 14px;
}

.alert-success {
    background-color: rgba(16,185,129,0.1);
    color: #6ee7b7;
    border-left: 3px solid #10b981;
}

.alert-info {
    background-color: rgba(59,130,246,0.1);
    color: #93c5fd;
    border-left: 3px solid #3b82f6;
}

.alert-warning {
    background-color: rgba(245,158,11,0.1);
    color: #fcd34d;
    border-left: 3px solid #f59e0b;
}

.alert-danger {
    background-color: rgba(239,68,68,0.1);
    color: #fca5a5;
    border-left: 3px solid #ef4444;
}

/* ══════════════════════════════════════════════════════════════
   MODALS
   ══════════════════════════════════════════════════════════════ */

.modal-content {
    background-color: #111827;
    border: 1px solid rgba(255,255,255,0.08);
    border-radius: 12px;
}

.modal-header {
    border-bottom: 1px solid rgba(255,255,255,0.06);
    padding: 15px 20px;
}

.modal-header .close {
    color: #94a3b8;
    opacity: 1;
}

.modal-header .close:hover {
    color: #ffffff;
}

.modal-title {
    color: #f1f5f9;
}

.modal-body {
    color: #cbd5e1;
}

.modal-footer {
    border-top: 1px solid rgba(255,255,255,0.06);
}

.modal-backdrop {
    background-color: rgba(0,0,0,0.6);
}

/* ══════════════════════════════════════════════════════════════
   FOOTER
   ══════════════════════════════════════════════════════════════ */

section#footer {
    background-color: #070b16;
    border-top: 1px solid rgba(255,255,255,0.04);
    color: #94a3b8;
    padding: 20px;
    font-size: 13px;
}

section#footer a {
    color: #94a3b8;
}

section#footer a:hover {
    color: #e2e8f0;
}

section#footer .back-to-top {
    color: #3b82f6;
}

section#footer .back-to-top:hover {
    color: #60a5fa;
}

/* ══════════════════════════════════════════════════════════════
   WELL, PROGRESS, TABS, DROPDOWNS
   ══════════════════════════════════════════════════════════════ */

.well {
    background-color: rgba(255,255,255,0.03);
    border: 1px solid rgba(255,255,255,0.06);
    border-radius: 10px;
    color: #cbd5e1;
    box-shadow: none;
}

.progress {
    background-color: rgba(255,255,255,0.06);
    border-radius: 6px;
    height: 8px;
}

.progress-bar {
    background: linear-gradient(135deg, #3b82f6, #6366f1);
    border-radius: 6px;
}

.progress-bar-success {
    background: linear-gradient(135deg, #10b981, #059669);
}

.progress-bar-warning {
    background: linear-gradient(135deg, #f59e0b, #d97706);
}

.progress-bar-danger {
    background: linear-gradient(135deg, #ef4444, #dc2626);
}

/* Tabs */
.nav-tabs {
    border-bottom: 1px solid rgba(255,255,255,0.06);
}

.nav-tabs > li > a {
    color: #94a3b8;
    border: none;
    border-bottom: 2px solid transparent;
    border-radius: 0;
    font-weight: 500;
    font-size: 14px;
}

.nav-tabs > li > a:hover {
    color: #e2e8f0;
    background-color: transparent;
    border-bottom-color: rgba(255,255,255,0.1);
}

.nav-tabs > li.active > a,
.nav-tabs > li.active > a:hover {
    color: #60a5fa;
    background-color: transparent;
    border-bottom-color: #3b82f6;
}

.tab-content {
    padding-top: 15px;
}

/* Dropdown */
.dropdown-menu {
    background-color: #111827;
    border: 1px solid rgba(255,255,255,0.08);
    border-radius: 8px;
    box-shadow: 0 10px 30px rgba(0,0,0,0.4);
}

.dropdown-menu > li > a {
    color: #cbd5e1;
}

.dropdown-menu > li > a:hover {
    background-color: rgba(59,130,246,0.1);
    color: #ffffff;
}

.dropdown-menu .divider {
    background-color: rgba(255,255,255,0.06);
}

/* Tooltip */
.tooltip-inner {
    background-color: #1e293b;
    color: #e2e8f0;
    border: 1px solid rgba(255,255,255,0.1);
    border-radius: 6px;
}

.tooltip-arrow {
    border-color: #1e293b;
}

/* Popover */
.popover {
    background-color: #111827;
    border: 1px solid rgba(255,255,255,0.08);
    border-radius: 10px;
}

.popover-title {
    background-color: rgba(255,255,255,0.04);
    color: #f1f5f9;
    border-bottom-color: rgba(255,255,255,0.06);
}

.popover-content {
    color: #cbd5e1;
}

/* ══════════════════════════════════════════════════════════════
   TEXT COLOR UTILITIES
   ══════════════════════════════════════════════════════════════ */

.text-success { color: #10b981 !important; }
.text-danger { color: #ef4444 !important; }
.text-warning { color: #f59e0b !important; }
.text-info { color: #6366f1 !important; }
.text-primary { color: #3b82f6 !important; }
.text-muted { color: #94a3b8 !important; }

small, .small {
    color: #94a3b8 !important;
}

/* ══════════════════════════════════════════════════════════════
   WHMCS SPECIFIC
   ══════════════════════════════════════════════════════════════ */

#fullpage-overlay {
    background-color: rgba(10,15,30,0.85);
}

#fullpage-overlay .outer-wrapper .inner-wrapper {
    background-color: #111827;
    border-radius: 12px;
    border: 1px solid rgba(255,255,255,0.08);
}

.client-alerts li a {
    color: #cbd5e1;
    border-bottom: 1px solid rgba(255,255,255,0.04);
}

.client-alerts li a:hover {
    background-color: rgba(255,255,255,0.03);
}

/* Client Area Dashboard */
.client-home-stats .panel {
    text-align: center;
}

.client-home-stats .stat-value {
    font-size: 24px;
    font-weight: 700;
    color: #f1f5f9;
}

.client-home-stats .stat-label {
    color: #94a3b8;
    font-size: 13px;
}

/* Invoice */
.invoice-table .total {
    font-weight: 700;
    color: #f1f5f9;
    font-size: 16px;
}

/* Support Ticket */
.ticket-reply {
    border-left: 3px solid #3b82f6;
    padding-left: 15px;
    margin-bottom: 15px;
}

/* SSL/Security */
.input-group-addon {
    background-color: rgba(255,255,255,0.04);
    border: 1px solid rgba(255,255,255,0.12);
    color: #94a3b8;
}

.has-error .form-control {
    border-color: rgba(239,68,68,0.5);
}

.has-error .control-label {
    color: #fca5a5;
}

.has-success .form-control {
    border-color: rgba(16,185,129,0.3);
}

.input-group .form-control:first-child {
    border-radius: 8px 0 0 8px;
}

.input-group .btn:last-child {
    border-radius: 0 8px 8px 0;
}

/* ══════════════════════════════════════════════════════════════
   MISC
   ══════════════════════════════════════════════════════════════ */

hr {
    border-top: 1px solid rgba(255,255,255,0.06);
}

blockquote {
    border-left: 3px solid #3b82f6;
    color: #94a3b8;
}

code {
    background-color: rgba(255,255,255,0.06);
    color: #a5b4fc;
    border-radius: 4px;
    padding: 2px 6px;
}

pre {
    background-color: rgba(255,255,255,0.03);
    border: 1px solid rgba(255,255,255,0.06);
    border-radius: 8px;
    color: #cbd5e1;
}

kbd {
    background-color: rgba(255,255,255,0.08);
    color: #e2e8f0;
    border-radius: 4px;
}

/* ══════════════════════════════════════════════════════════════
   RESPONSIVE
   ══════════════════════════════════════════════════════════════ */

@media (max-width: 767px) {
    .navbar-main .navbar-nav .open .dropdown-menu > li > a {
        color: #cbd5e1;
    }
    .navbar-main .navbar-nav .open .dropdown-menu > li > a:hover {
        color: #ffffff;
        background-color: rgba(59,130,246,0.1);
    }
    section#home-banner h2 {
        font-size: 22px;
    }
}
