/* =========================================
   Ultra Dark Mode — WHMCS Overrides
   /templates/ultra4/css/ultra-dark.css
   Version: 2.0.0
   Date: 2026-04-14

   Light is default (existing WHMCS styles).
   Dark mode only applies when html lacks data-theme="light".
   ========================================= */

/* ==========================================================
   DARK MODE — only when toggle is set to dark
   ========================================================== */

/* Admin return button — visible in light mode */
[data-theme="light"] .ultra-nav .ultra-nav-right .ultra-admin-btn {
  background: rgba(0,0,0,0.06) !important;
  color: #4a4a5a !important;
}
[data-theme="light"] .ultra-nav .ultra-nav-right .ultra-admin-btn:hover {
  background: rgba(0,0,0,0.1) !important;
  color: #1a1a2e !important;
}

/* Logo swap */
.ultra-logo img.ultra-logo-light { display: none; }
[data-theme="light"] .ultra-logo img.ultra-logo-dark { display: none !important; }
[data-theme="light"] .ultra-logo img.ultra-logo-light { display: block !important; }

/* Base */
html:not([data-theme="light"]) body { background-color: #0c1929 !important; color: rgba(255,255,255,0.85) !important; }
html:not([data-theme="light"]) section#main-body a { color: #4da6e8; }
html:not([data-theme="light"]) section#main-body a:hover { color: #6dc0f7; }
html:not([data-theme="light"]) h1, html:not([data-theme="light"]) h2,
html:not([data-theme="light"]) h3, html:not([data-theme="light"]) h4,
html:not([data-theme="light"]) h5, html:not([data-theme="light"]) h6 { color: #fff !important; }
html:not([data-theme="light"]) hr { border-top-color: rgba(255,255,255,0.08) !important; }

/* Layout */
html:not([data-theme="light"]) section#main-body { background-color: #0f1c2e !important; color: rgba(255,255,255,0.85) !important; }
html:not([data-theme="light"]) section#footer { background-color: #0c1929 !important; border-top-color: rgba(255,255,255,0.08) !important; color: rgba(255,255,255,0.5) !important; }
html:not([data-theme="light"]) section#footer .back-to-top i { background-color: rgba(255,255,255,0.08) !important; color: rgba(255,255,255,0.5) !important; }

/* Breadcrumb */
html:not([data-theme="light"]) div.header-lined h1 { color: #fff !important; border-bottom-color: rgba(255,255,255,0.08) !important; }
html:not([data-theme="light"]) div.header-lined .breadcrumb { background: transparent !important; }
html:not([data-theme="light"]) div.header-lined .breadcrumb li a,
html:not([data-theme="light"]) .breadcrumb > li + li::before { color: rgba(255,255,255,0.5) !important; }
html:not([data-theme="light"]) .breadcrumb > .active { color: rgba(255,255,255,0.85) !important; }

/* Panels */
html:not([data-theme="light"]) .panel { background-color: #0f1c2e !important; border-color: rgba(255,255,255,0.08) !important; }
html:not([data-theme="light"]) .panel-default > .panel-heading { background-color: #0c1929 !important; border-bottom-color: rgba(255,255,255,0.08) !important; color: #fff !important; }
html:not([data-theme="light"]) .panel-body { color: rgba(255,255,255,0.85) !important; }
html:not([data-theme="light"]) .panel-footer { background-color: #0c1929 !important; border-top-color: rgba(255,255,255,0.08) !important; }

/* Tables */
html:not([data-theme="light"]) .table { color: rgba(255,255,255,0.85) !important; }
html:not([data-theme="light"]) .table > thead > tr > th { background-color: #0c1929 !important; border-bottom-color: rgba(255,255,255,0.08) !important; color: #fff !important; }
html:not([data-theme="light"]) .table > tbody > tr > td,
html:not([data-theme="light"]) .table > tbody > tr > th { border-top-color: rgba(255,255,255,0.08) !important; }
html:not([data-theme="light"]) .table-striped > tbody > tr:nth-of-type(odd) { background-color: rgba(255,255,255,0.02) !important; }
html:not([data-theme="light"]) .table-hover > tbody > tr:hover { background-color: rgba(255,255,255,0.04) !important; }
html:not([data-theme="light"]) .table-bordered { border-color: rgba(255,255,255,0.08) !important; }
html:not([data-theme="light"]) .table-bordered > thead > tr > th,
html:not([data-theme="light"]) .table-bordered > tbody > tr > td,
html:not([data-theme="light"]) .table-bordered > tfoot > tr > td { border-color: rgba(255,255,255,0.08) !important; }

/* Forms */
html:not([data-theme="light"]) .form-control { background-color: rgba(255,255,255,0.06) !important; border-color: rgba(255,255,255,0.12) !important; color: rgba(255,255,255,0.85) !important; }
html:not([data-theme="light"]) [id$="_filter"] input.form-control { background-color: #fff !important; color: #333 !important; border-color: #ccc !important; }
html:not([data-theme="light"]) #tableServicesList_filter input,
html:not([data-theme="light"]) #tableDomainsList_filter input,
html:not([data-theme="light"]) #tableInvoicesList_filter input,
html:not([data-theme="light"]) #tableTicketsList_filter input,
html:not([data-theme="light"]) div[id$="_filter"] input.form-control.input-sm { background-color: #fff !important; color: #333 !important; border-color: #ccc !important; }
html:not([data-theme="light"]) .form-control:focus { border-color: #1a7fd4 !important; box-shadow: 0 0 0 2px rgba(26,127,212,0.2) !important; }
html:not([data-theme="light"]) .form-control::placeholder { color: rgba(255,255,255,0.5) !important; }
html:not([data-theme="light"]) .input-group-addon { background-color: #0c1929 !important; border-color: rgba(255,255,255,0.12) !important; color: rgba(255,255,255,0.5) !important; }
html:not([data-theme="light"]) label { color: rgba(255,255,255,0.85) !important; }
html:not([data-theme="light"]) select.form-control { background-color: rgba(255,255,255,0.06) !important; }
html:not([data-theme="light"]) select.form-control option { background-color: #0f1c2e; color: rgba(255,255,255,0.85); }

/* Buttons */
html:not([data-theme="light"]) .btn-default { background-color: rgba(255,255,255,0.06) !important; border-color: rgba(255,255,255,0.12) !important; color: rgba(255,255,255,0.85) !important; }
html:not([data-theme="light"]) .btn-default:hover { background-color: rgba(255,255,255,0.1) !important; color: #fff !important; }
html:not([data-theme="light"]) .btn-link { color: #4da6e8 !important; }
html:not([data-theme="light"]) .btn-link:hover { color: #6dc0f7 !important; }

/* Alerts */
html:not([data-theme="light"]) .alert-info { background-color: rgba(41,128,185,0.15) !important; border-color: rgba(41,128,185,0.3) !important; color: #6dc0f7 !important; }
html:not([data-theme="light"]) .alert-success { background-color: rgba(39,174,96,0.15) !important; border-color: rgba(39,174,96,0.3) !important; color: #5dde9e !important; }
html:not([data-theme="light"]) .alert-warning { background-color: rgba(243,156,18,0.15) !important; border-color: rgba(243,156,18,0.3) !important; color: #f7c948 !important; }
html:not([data-theme="light"]) .alert-danger { background-color: rgba(231,76,60,0.15) !important; border-color: rgba(231,76,60,0.3) !important; color: #f1948a !important; }
html:not([data-theme="light"]) .alert a { color: inherit !important; text-decoration: underline !important; }

/* List Groups & Sidebar */
html:not([data-theme="light"]) .list-group-item { background-color: #0f1c2e !important; border-color: rgba(255,255,255,0.08) !important; color: rgba(255,255,255,0.85) !important; }
html:not([data-theme="light"]) .list-group-item:hover { background-color: rgba(255,255,255,0.04) !important; }
html:not([data-theme="light"]) a.list-group-item { color: #4da6e8 !important; }
html:not([data-theme="light"]) a.list-group-item.active { background-color: #1a7fd4 !important; border-color: #1a7fd4 !important; color: #fff !important; }
html:not([data-theme="light"]) .list-group-item .badge { background-color: transparent !important; color: rgba(255,255,255,0.5) !important; }
html:not([data-theme="light"]) .sidebar .panel { background-color: #0f1c2e !important; }
html:not([data-theme="light"]) .sidebar .panel-heading { background-color: #0c1929 !important; color: #fff !important; }

/* Knowledgebase */
html:not([data-theme="light"]) .article-content, html:not([data-theme="light"]) .kb-article-content { color: rgba(255,255,255,0.85) !important; }
html:not([data-theme="light"]) .article-content p, html:not([data-theme="light"]) .kb-article-content p { color: rgba(255,255,255,0.85) !important; }
html:not([data-theme="light"]) .article-content code, html:not([data-theme="light"]) .kb-article-content code { background-color: rgba(255,255,255,0.06) !important; color: #e06c75 !important; border-color: rgba(255,255,255,0.08) !important; }
html:not([data-theme="light"]) .article-content pre, html:not([data-theme="light"]) .kb-article-content pre { background-color: #0c1929 !important; border-color: rgba(255,255,255,0.08) !important; color: rgba(255,255,255,0.85) !important; }
html:not([data-theme="light"]) .article-content blockquote { border-left-color: #1a7fd4 !important; color: rgba(255,255,255,0.5) !important; }
html:not([data-theme="light"]) .article-rating { border-top-color: rgba(255,255,255,0.08) !important; }
html:not([data-theme="light"]) .related-articles a { color: #4da6e8 !important; }

/* Pagination */
html:not([data-theme="light"]) .pagination > li > a,
html:not([data-theme="light"]) .pagination > li > span { background-color: #0f1c2e !important; border-color: rgba(255,255,255,0.08) !important; color: #4da6e8 !important; }
html:not([data-theme="light"]) .pagination > li > a:hover { background-color: rgba(255,255,255,0.04) !important; }
html:not([data-theme="light"]) .pagination > .active > a { background-color: #1a7fd4 !important; border-color: #1a7fd4 !important; color: #fff !important; }
html:not([data-theme="light"]) .pagination > .disabled > a { background-color: #0c1929 !important; color: rgba(255,255,255,0.5) !important; }

/* Tabs */
html:not([data-theme="light"]) .nav-tabs { border-bottom-color: rgba(255,255,255,0.08) !important; }
html:not([data-theme="light"]) .nav-tabs > li > a { color: rgba(255,255,255,0.5) !important; }
html:not([data-theme="light"]) .nav-tabs > li > a:hover { border-color: rgba(255,255,255,0.08) !important; background-color: rgba(255,255,255,0.04) !important; }
html:not([data-theme="light"]) .nav-tabs > li.active > a { background-color: #0f1c2e !important; border-color: rgba(255,255,255,0.08) !important; border-bottom-color: #0f1c2e !important; color: #fff !important; }
html:not([data-theme="light"]) .tab-content { background-color: #0f1c2e !important; }

/* Modals */
html:not([data-theme="light"]) .modal-content { background-color: #0f1c2e !important; border-color: rgba(255,255,255,0.08) !important; }
html:not([data-theme="light"]) .modal-header { border-bottom-color: rgba(255,255,255,0.08) !important; }
html:not([data-theme="light"]) .modal-header .close { color: rgba(255,255,255,0.5) !important; }
html:not([data-theme="light"]) .modal-footer { border-top-color: rgba(255,255,255,0.08) !important; }

/* Dropdowns */
html:not([data-theme="light"]) .dropdown-menu { background-color: #0f1c2e !important; border-color: rgba(255,255,255,0.08) !important; }
html:not([data-theme="light"]) .dropdown-menu > li > a { color: rgba(255,255,255,0.85) !important; }
html:not([data-theme="light"]) .dropdown-menu > li > a:hover { background-color: rgba(255,255,255,0.04) !important; color: #fff !important; }
html:not([data-theme="light"]) .dropdown-menu .divider { background-color: rgba(255,255,255,0.08) !important; }

/* Wells */
html:not([data-theme="light"]) .well { background-color: #0c1929 !important; border-color: rgba(255,255,255,0.08) !important; color: rgba(255,255,255,0.85) !important; }
html:not([data-theme="light"]) .jumbotron { background-color: #0c1929 !important; color: rgba(255,255,255,0.85) !important; }
html:not([data-theme="light"]) .progress { background-color: rgba(255,255,255,0.08) !important; }
html:not([data-theme="light"]) .label-default { background-color: rgba(255,255,255,0.1) !important; color: rgba(255,255,255,0.85) !important; }

/* Client area */
html:not([data-theme="light"]) .invoice-container { background-color: #0f1c2e !important; }
html:not([data-theme="light"]) .invoice-header { border-bottom-color: rgba(255,255,255,0.08) !important; }
html:not([data-theme="light"]) .domain-lookup-result { border-color: rgba(255,255,255,0.08) !important; }
html:not([data-theme="light"]) .ticket-reply { border-color: rgba(255,255,255,0.08) !important; background-color: #0f1c2e !important; }
html:not([data-theme="light"]) .ticket-reply-staff { background-color: rgba(26,127,212,0.06) !important; }
html:not([data-theme="light"]) .ticket-reply .ticket-meta { color: rgba(255,255,255,0.5) !important; border-bottom-color: rgba(255,255,255,0.08) !important; }

/* Landing page (logged-out homepage) */
html:not([data-theme="light"]) .ul-section-title { color: #fff !important; }
html:not([data-theme="light"]) .ul-section-sub { color: rgba(255,255,255,0.5) !important; }
html:not([data-theme="light"]) .ul-plan { background: rgba(255,255,255,0.04) !important; border-color: rgba(255,255,255,0.08) !important; }
html:not([data-theme="light"]) .ul-plan:hover { border-color: rgba(26,127,212,0.3) !important; box-shadow: 0 4px 16px rgba(0,0,0,0.2) !important; }
html:not([data-theme="light"]) .ul-plan-name { color: #fff !important; }
html:not([data-theme="light"]) .ul-plan-desc { color: rgba(255,255,255,0.5) !important; }
html:not([data-theme="light"]) .ul-plan-icon.blue { background: rgba(59,130,246,0.12) !important; }
html:not([data-theme="light"]) .ul-plan-icon.orange { background: rgba(254,159,13,0.12) !important; }
html:not([data-theme="light"]) .ul-plan-icon.green { background: rgba(34,197,94,0.12) !important; }
html:not([data-theme="light"]) .ul-plan-icon.purple { background: rgba(139,92,246,0.12) !important; }
html:not([data-theme="light"]) .ul-plan-icon.teal { background: rgba(6,182,212,0.12) !important; }
html:not([data-theme="light"]) .ul-plan-icon.red { background: rgba(239,68,68,0.12) !important; }
html:not([data-theme="light"]) .ul-kb-item { background: rgba(255,255,255,0.04) !important; border-color: rgba(255,255,255,0.08) !important; }
html:not([data-theme="light"]) .ul-kb-item:hover { background: rgba(255,255,255,0.06) !important; border-color: rgba(255,255,255,0.12) !important; }
html:not([data-theme="light"]) .ul-kb-item-text { color: rgba(255,255,255,0.85) !important; }
html:not([data-theme="light"]) .ul-kb-cat { color: rgba(255,255,255,0.3) !important; }
html:not([data-theme="light"]) .ul-card-group-title { color: #fff !important; }
html:not([data-theme="light"]) .ul-tool { background: rgba(255,255,255,0.04) !important; border-color: rgba(255,255,255,0.08) !important; }
html:not([data-theme="light"]) .ul-tool:hover { background: rgba(255,255,255,0.06) !important; border-color: rgba(255,255,255,0.12) !important; }
html:not([data-theme="light"]) .ul-tool-name { color: #fff !important; }
html:not([data-theme="light"]) .ul-tool-desc { color: rgba(255,255,255,0.5) !important; }
html:not([data-theme="light"]) .ul-tool-icon { background: rgba(59,130,246,0.12) !important; }

/* ==========================================================
   Ultra Custom Homepage (logged-in client area)
   ========================================================== */

/* KB Search */
html:not([data-theme="light"]) .ultra-kb-input { background: rgba(255,255,255,0.06) !important; border-color: rgba(255,255,255,0.12) !important; color: #fff !important; box-shadow: none !important; }
html:not([data-theme="light"]) .ultra-kb-input::placeholder { color: rgba(255,255,255,0.4) !important; }
html:not([data-theme="light"]) .ultra-kb-input:focus { border-color: #1b79cf !important; box-shadow: 0 0 0 3px rgba(27,121,207,0.15) !important; }

/* Section labels */
html:not([data-theme="light"]) .ultra-section-label { color: rgba(255,255,255,0.4) !important; }

/* Quick Actions */
html:not([data-theme="light"]) .ultra-qa { background: rgba(255,255,255,0.04) !important; border-color: rgba(255,255,255,0.08) !important; color: #fff !important; box-shadow: none !important; }
html:not([data-theme="light"]) .ultra-qa:hover { border-color: #1b79cf !important; box-shadow: 0 4px 12px rgba(0,0,0,0.2) !important; color: #fff !important; }
html:not([data-theme="light"]) .ultra-qa-text { color: #fff !important; }
html:not([data-theme="light"]) .ultra-qa-desc { color: rgba(255,255,255,0.5) !important; }

/* Panels (custom ultra-panel) */
html:not([data-theme="light"]) .ultra-panel { background: #0f1c2e !important; border-color: rgba(255,255,255,0.08) !important; box-shadow: none !important; }
html:not([data-theme="light"]) .ultra-panel .panel-heading { background: #0c1929 !important; border-bottom-color: rgba(255,255,255,0.08) !important; }
html:not([data-theme="light"]) .ultra-panel .panel-title { color: #fff !important; }
html:not([data-theme="light"]) .ultra-panel .panel-title i { color: rgba(255,255,255,0.5) !important; }
html:not([data-theme="light"]) .ultra-panel .panel-body { color: rgba(255,255,255,0.85) !important; }
html:not([data-theme="light"]) .ultra-panel .panel-footer { background: #0f1c2e !important; }
html:not([data-theme="light"]) .ultra-panel .list-group-item { color: rgba(255,255,255,0.85) !important; border-bottom-color: rgba(255,255,255,0.06) !important; }
html:not([data-theme="light"]) .ultra-panel .list-group-item:hover { background: rgba(255,255,255,0.04) !important; }
html:not([data-theme="light"]) .ultra-panel .list-group-item small,
html:not([data-theme="light"]) .ultra-panel .list-group-item .text-last-updated { color: rgba(255,255,255,0.4) !important; }
html:not([data-theme="light"]) .ultra-panel .list-group-item .text-domain { color: #4da6e8 !important; }
html:not([data-theme="light"]) .ultra-panel .label-success { background: rgba(34,197,94,0.15) !important; color: #5dde9e !important; }

/* Addon panels */
html:not([data-theme="light"]) .ultra-addon-panel .panel { background: #0f1c2e !important; border-color: rgba(255,255,255,0.08) !important; box-shadow: none !important; }
html:not([data-theme="light"]) .ultra-addon-panel .panel-heading { background: #0c1929 !important; border-bottom-color: rgba(255,255,255,0.08) !important; }
html:not([data-theme="light"]) .ultra-addon-panel .panel-title { color: #fff !important; }
html:not([data-theme="light"]) .ultra-addon-panel .panel-body { color: rgba(255,255,255,0.85) !important; }
html:not([data-theme="light"]) .ultra-addon-panel .panel-footer { background: #0f1c2e !important; }

/* Card action links */
html:not([data-theme="light"]) .ultra-card-action { color: #4da6e8 !important; }
html:not([data-theme="light"]) .ultra-card-action:hover { background: rgba(77,166,232,0.1) !important; }
html:not([data-theme="light"]) .ultra-card-action i { color: #4da6e8 !important; }

/* Quick links / quick tabs */
html:not([data-theme="light"]) .ultra-ql-card { border-color: rgba(255,255,255,0.08) !important; background: rgba(255,255,255,0.04) !important; }
html:not([data-theme="light"]) .ultra-qt-tabs .nav-tabs > li > a { color: rgba(255,255,255,0.5) !important; }

/* Sidebar panels (WHMCS default) */
html:not([data-theme="light"]) .col-md-3.sidebar .panel { background: #0f1c2e !important; border-color: rgba(255,255,255,0.08) !important; }
html:not([data-theme="light"]) .col-md-3.sidebar .panel-heading { background: #0c1929 !important; border-bottom-color: rgba(255,255,255,0.08) !important; }
html:not([data-theme="light"]) .col-md-3.sidebar .panel-body { color: rgba(255,255,255,0.85) !important; }
html:not([data-theme="light"]) .col-md-3.sidebar .list-group-item { background: #0f1c2e !important; border-color: rgba(255,255,255,0.06) !important; color: rgba(255,255,255,0.85) !important; }
html:not([data-theme="light"]) .col-md-3.sidebar .list-group-item:hover { background: rgba(255,255,255,0.04) !important; }
html:not([data-theme="light"]) .col-md-3.sidebar a.list-group-item { color: #4da6e8 !important; }
html:not([data-theme="light"]) .col-md-3.sidebar a.list-group-item.active { background: #1a7fd4 !important; border-color: #1a7fd4 !important; color: #fff !important; }

/* General text in main content */
html:not([data-theme="light"]) .main-content p { color: rgba(255,255,255,0.7) !important; }
html:not([data-theme="light"]) .main-content strong { color: rgba(255,255,255,0.9) !important; }
html:not([data-theme="light"]) .main-content .text-muted { color: rgba(255,255,255,0.5) !important; }

/* Domain search Transfer button */
html:not([data-theme="light"]) [id="btnTransfer"],
html:not([data-theme="light"]) [value="Transfer"],
html:not([data-theme="light"]) input[class*="transfer"] {
  background-color: rgba(255,255,255,0.1) !important;
  border: 1px solid rgba(255,255,255,0.2) !important;
  color: #fff !important;
}
html:not([data-theme="light"]) [id="btnTransfer"]:hover,
html:not([data-theme="light"]) [value="Transfer"]:hover,
html:not([data-theme="light"]) input[class*="transfer"]:hover {
  background-color: rgba(255,255,255,0.18) !important;
  border-color: rgba(255,255,255,0.35) !important;
  color: #fff !important;
}
html:not([data-theme="light"]) section#home-banner {
  background-color: #0f1c2e !important;
  color: #fff !important;
}
html:not([data-theme="light"]) section#home-banner h2 {
  color: #fff !important;
}
html:not([data-theme="light"]) section#home-banner .form-control {
  background: rgba(255,255,255,0.06) !important;
  border-color: rgba(255,255,255,0.12) !important;
  color: #fff !important;
}

/* Welcome hero buttons */
html:not([data-theme="light"]) .ultra-welcome a.ultra-btn-light { color: #fff !important; }
html:not([data-theme="light"]) .ultra-welcome a.ultra-btn-gold { color: #1a2332 !important; }

/* Info banner (cPanel/Webmail link) */
html:not([data-theme="light"]) .alert-bordered-left { background: rgba(41,128,185,0.1) !important; border-color: rgba(41,128,185,0.3) !important; color: rgba(255,255,255,0.85) !important; }
html:not([data-theme="light"]) .alert-bordered-left a { color: #4da6e8 !important; }

/* ==========================================================
   WHMCS Homepage Widgets (domain search, store, shortcuts)
   ========================================================== */

/* Home banner (domain search) */
html:not([data-theme="light"]) section#home-banner { background-color: #0f1c2e !important; }
html:not([data-theme="light"]) section#home-banner h2 { color: #fff !important; }
html:not([data-theme="light"]) section#home-banner .form-control { background: rgba(255,255,255,0.06) !important; border-color: rgba(255,255,255,0.12) !important; color: #fff !important; }

/* Home shortcuts */
html:not([data-theme="light"]) .home-shortcuts { background: #0c1929 !important; }
html:not([data-theme="light"]) .home-shortcuts .lead { color: rgba(255,255,255,0.7) !important; }
html:not([data-theme="light"]) .home-shortcuts ul li a { color: rgba(255,255,255,0.85) !important; }
html:not([data-theme="light"]) .home-shortcuts ul li a i { color: rgba(255,255,255,0.5) !important; }
html:not([data-theme="light"]) .home-shortcuts ul li a p { color: rgba(255,255,255,0.7) !important; }

/* Store / marketplace panels (domain registration, Weebly, etc.) */
html:not([data-theme="light"]) .store-panel,
html:not([data-theme="light"]) .panel.panel-default,
html:not([data-theme="light"]) .panel.panel-primary { background: #0f1c2e !important; border-color: rgba(255,255,255,0.08) !important; }
html:not([data-theme="light"]) .panel.panel-default > .panel-heading,
html:not([data-theme="light"]) .panel.panel-primary > .panel-heading { background: #0c1929 !important; color: #fff !important; border-bottom-color: rgba(255,255,255,0.08) !important; }
html:not([data-theme="light"]) .panel.panel-default > .panel-body,
html:not([data-theme="light"]) .panel.panel-primary > .panel-body { background: #0f1c2e !important; color: rgba(255,255,255,0.85) !important; }
html:not([data-theme="light"]) .panel.panel-default > .panel-footer,
html:not([data-theme="light"]) .panel.panel-primary > .panel-footer { background: #0c1929 !important; border-top-color: rgba(255,255,255,0.08) !important; }

/* Store product cards */
html:not([data-theme="light"]) .store-product { background: #0f1c2e !important; border-color: rgba(255,255,255,0.08) !important; }
html:not([data-theme="light"]) .store-product h3 { color: #fff !important; }
html:not([data-theme="light"]) .store-product p { color: rgba(255,255,255,0.6) !important; }

/* Page header */
html:not([data-theme="light"]) .header-lined h1 { color: #fff !important; }
html:not([data-theme="light"]) .header-lined { border-bottom-color: rgba(255,255,255,0.08) !important; }

/* Containers that might have white bg */
html:not([data-theme="light"]) .container .row .col-md-9,
html:not([data-theme="light"]) .container .row .col-xs-12 { color: rgba(255,255,255,0.85) !important; }

/* Generic white bg overrides for any remaining elements */
html:not([data-theme="light"]) .bg-white { background: #0f1c2e !important; }
html:not([data-theme="light"]) .well { background: #0c1929 !important; border-color: rgba(255,255,255,0.08) !important; }

/* Store promo banners within panels */
html:not([data-theme="light"]) .store-promo,
html:not([data-theme="light"]) .weebly-promo { background: #0f1c2e !important; }

/* Domain checker results */
html:not([data-theme="light"]) #domainSearchResults .domain-available { color: #5dde9e !important; }
html:not([data-theme="light"]) #domainSearchResults .domain-unavailable { color: #f1948a !important; }
html:not([data-theme="light"]) #domainSearchResults .result-row { border-color: rgba(255,255,255,0.08) !important; }

/* Marketplace/store page sections */
html:not([data-theme="light"]) .market-connect-btn { background: rgba(255,255,255,0.06) !important; border-color: rgba(255,255,255,0.12) !important; color: #fff !important; }

/* Text colors for general content areas */
html:not([data-theme="light"]) p, html:not([data-theme="light"]) li { color: rgba(255,255,255,0.7); }
html:not([data-theme="light"]) strong, html:not([data-theme="light"]) b { color: rgba(255,255,255,0.9); }
html:not([data-theme="light"]) small, html:not([data-theme="light"]) .text-muted { color: rgba(255,255,255,0.5) !important; }

/* Logged-in store widget overrides (Weebly banner, etc) */
html:not([data-theme="light"]) .order-homepage .panel { background: #0f1c2e !important; border-color: rgba(255,255,255,0.08) !important; }
html:not([data-theme="light"]) .order-homepage .panel-heading { background: #0c1929 !important; border-bottom-color: rgba(255,255,255,0.08) !important; color: #fff !important; }
html:not([data-theme="light"]) .order-homepage .panel-body { color: rgba(255,255,255,0.85) !important; }

/* Page header / breadcrumb on inner pages */
html:not([data-theme="light"]) .page-header { border-bottom-color: rgba(255,255,255,0.08) !important; }
html:not([data-theme="light"]) .page-header h1 { color: #fff !important; }

/* ==========================================================
   Client Area Tables (Products, Invoices, Domains, etc.)
   ========================================================== */
/* Table rows — dark bg instead of white */
html:not([data-theme="light"]) .table > tbody > tr { background-color: #0f1c2e !important; }
html:not([data-theme="light"]) .table > tbody > tr > td { color: rgba(255,255,255,0.85) !important; border-top-color: rgba(255,255,255,0.06) !important; }
html:not([data-theme="light"]) .table-striped > tbody > tr:nth-of-type(even) { background-color: rgba(255,255,255,0.02) !important; }
html:not([data-theme="light"]) .table-striped > tbody > tr:nth-of-type(odd) { background-color: #0f1c2e !important; }
html:not([data-theme="light"]) .table > thead > tr { background-color: #0c1929 !important; }

/* DataTables wrapper (search box, entries info, pagination) */
html:not([data-theme="light"]) .dataTables_wrapper .dataTables_info { color: rgba(255,255,255,0.5) !important; }
html:not([data-theme="light"]) .dataTables_wrapper .dataTables_length label,
html:not([data-theme="light"]) .dataTables_wrapper .dataTables_filter label { color: rgba(255,255,255,0.7) !important; }
html:not([data-theme="light"]) .dataTables_wrapper .dataTables_length select,
html:not([data-theme="light"]) .dataTables_wrapper .dataTables_length select { background: rgba(255,255,255,0.06) !important; border-color: rgba(255,255,255,0.12) !important; color: #fff !important; }
html:not([data-theme="light"]) .dataTables_wrapper .dataTables_paginate .paginate_button { color: rgba(255,255,255,0.7) !important; background: transparent !important; border-color: rgba(255,255,255,0.08) !important; }
html:not([data-theme="light"]) .dataTables_wrapper .dataTables_paginate .paginate_button.current { background: #1a7fd4 !important; color: #fff !important; border-color: #1a7fd4 !important; }
html:not([data-theme="light"]) .dataTables_wrapper .dataTables_paginate .paginate_button:hover { background: rgba(255,255,255,0.06) !important; color: #fff !important; }
html:not([data-theme="light"]) .dataTables_wrapper .dataTables_paginate .paginate_button.disabled { color: rgba(255,255,255,0.3) !important; }

/* Table header bar (blue "Showing X entries" bar) */
html:not([data-theme="light"]) .table-container .dataTables_wrapper > div:first-child { background: #0c1929 !important; }

/* Status labels */
html:not([data-theme="light"]) .label-success { background: rgba(34,197,94,0.15) !important; color: #5dde9e !important; }
html:not([data-theme="light"]) .label-danger { background: rgba(231,76,60,0.15) !important; color: #f1948a !important; }
html:not([data-theme="light"]) .label-warning { background: rgba(243,156,18,0.15) !important; color: #f7c948 !important; }
html:not([data-theme="light"]) .label-info { background: rgba(41,128,185,0.15) !important; color: #6dc0f7 !important; }
html:not([data-theme="light"]) .label-default { background: rgba(255,255,255,0.1) !important; color: rgba(255,255,255,0.7) !important; }
html:not([data-theme="light"]) .label-primary { background: rgba(26,127,212,0.2) !important; color: #4da6e8 !important; }

/* "Cancelled" status — muted */
html:not([data-theme="light"]) .label-status-cancelled,
html:not([data-theme="light"]) span.label[class*="Cancelled"] { background: rgba(255,255,255,0.08) !important; color: rgba(255,255,255,0.5) !important; }

/* Manage Product / Action buttons in tables */
html:not([data-theme="light"]) .table .btn-primary { background: #1a7fd4 !important; border-color: #1a7fd4 !important; color: #fff !important; }
html:not([data-theme="light"]) .table .btn-primary:hover { background: #2196f3 !important; border-color: #2196f3 !important; }
html:not([data-theme="light"]) .table .btn-default { background: rgba(255,255,255,0.06) !important; border-color: rgba(255,255,255,0.12) !important; color: rgba(255,255,255,0.85) !important; }

/* Table links (domain names, product names) */
html:not([data-theme="light"]) .table a { color: #4da6e8 !important; }
html:not([data-theme="light"]) .table a:hover { color: #6dc0f7 !important; }

/* Table sort icons */
html:not([data-theme="light"]) .table thead .sorting::after,
html:not([data-theme="light"]) .table thead .sorting_asc::after,
html:not([data-theme="light"]) .table thead .sorting_desc::after { color: rgba(255,255,255,0.4) !important; }

/* Table checkboxes / icons */
html:not([data-theme="light"]) .table td i { color: rgba(255,255,255,0.5) !important; }
html:not([data-theme="light"]) .table td i.text-success,
html:not([data-theme="light"]) .table td .fa-check-square { color: #5dde9e !important; }

/* Ultra-custom DataTable overrides (match .main-content specificity) */
html:not([data-theme="light"]) .main-content table.dataTable thead th { color: rgba(255,255,255,0.5) !important; border-bottom-color: rgba(255,255,255,0.08) !important; }
html:not([data-theme="light"]) .main-content table.dataTable tbody td { color: rgba(255,255,255,0.85) !important; border-bottom-color: rgba(255,255,255,0.06) !important; }
html:not([data-theme="light"]) .main-content table.dataTable tbody tr { background: #0f1c2e !important; }
html:not([data-theme="light"]) .main-content table.dataTable tbody tr:hover td { background: rgba(255,255,255,0.04) !important; }
html:not([data-theme="light"]) .main-content table.dataTable tbody td a { color: #4da6e8 !important; }
html:not([data-theme="light"]) .main-content .dataTables_length,
html:not([data-theme="light"]) .main-content .dataTables_info { color: rgba(255,255,255,0.5) !important; }
html:not([data-theme="light"]) .main-content .dataTables_length label { color: rgba(255,255,255,0.5) !important; }
html:not([data-theme="light"]) .main-content .dataTables_length select { background: rgba(255,255,255,0.06) !important; border-color: rgba(255,255,255,0.12) !important; color: #fff !important; }
html:not([data-theme="light"]) .main-content .dataTables_paginate .paginate_button { background: rgba(255,255,255,0.04) !important; border-color: rgba(255,255,255,0.1) !important; color: rgba(255,255,255,0.7) !important; }
html:not([data-theme="light"]) .main-content .dataTables_paginate .paginate_button.current { background: #1a7fd4 !important; border-color: #1a7fd4 !important; color: #fff !important; }
html:not([data-theme="light"]) .main-content .dataTables_paginate .paginate_button:hover:not(.current) { background: rgba(255,255,255,0.08) !important; border-color: #4da6e8 !important; color: #4da6e8 !important; }

/* DataTables search/filter input */
/* dataTables_filter input — white bg for search icon visibility, rule in ultra-custom.css */
html:not([data-theme="light"]) .main-content .dataTables_filter label { color: rgba(255,255,255,0.7) !important; }

/* Kill white cell backgrounds */
html:not([data-theme="light"]) .table-list > tbody > tr > td { background-color: #0f1c2e !important; }
html:not([data-theme="light"]) .table-list > tbody > tr:nth-of-type(even) > td { background-color: rgba(255,255,255,0.02) !important; }
html:not([data-theme="light"]) .table > tbody > tr > td { background-color: transparent !important; }

/* Nuclear: force ALL table cell text white in dark mode */
html:not([data-theme="light"]) table td,
html:not([data-theme="light"]) table th,
html:not([data-theme="light"]) table td *,
html:not([data-theme="light"]) table th *,
html:not([data-theme="light"]) .main-content table td,
html:not([data-theme="light"]) .main-content table th,
html:not([data-theme="light"]) .main-content table.dataTable td,
html:not([data-theme="light"]) .main-content table.dataTable th,
html:not([data-theme="light"]) .main-content table.dataTable tbody td,
html:not([data-theme="light"]) .main-content table.dataTable thead th { color: rgba(255,255,255,0.85) !important; }

/* Pagination at bottom */
html:not([data-theme="light"]) .pagination > li > a { background: #0f1c2e !important; border-color: rgba(255,255,255,0.08) !important; color: rgba(255,255,255,0.7) !important; }
html:not([data-theme="light"]) .pagination > li > a:hover { background: rgba(255,255,255,0.06) !important; color: #fff !important; }
html:not([data-theme="light"]) .pagination > .active > a { background: #1a7fd4 !important; border-color: #1a7fd4 !important; color: #fff !important; }
html:not([data-theme="light"]) .pagination > .disabled > a,
html:not([data-theme="light"]) .pagination > .disabled > span { background: rgba(255,255,255,0.03) !important; border-color: rgba(255,255,255,0.06) !important; color: rgba(255,255,255,0.3) !important; }

/* ==========================================================
   Sidebar — match ultra-custom.css specificity to override
   ========================================================== */
html:not([data-theme="light"]) .sidebar .panel,
html:not([data-theme="light"]) .sidebar .panel-sidebar,
html:not([data-theme="light"]) .sidebar .panel-default { background: #0f1c2e !important; border-color: rgba(255,255,255,0.08) !important; box-shadow: none !important; }
html:not([data-theme="light"]) .sidebar .panel .panel-heading,
html:not([data-theme="light"]) .sidebar .panel-sidebar .panel-heading,
html:not([data-theme="light"]) .sidebar .panel-default .panel-heading { background: #0c1929 !important; border-bottom-color: rgba(255,255,255,0.08) !important; }
html:not([data-theme="light"]) .sidebar .panel .panel-title,
html:not([data-theme="light"]) .sidebar .panel-sidebar .panel-title,
html:not([data-theme="light"]) .sidebar .panel-default .panel-title { color: #fff !important; }
html:not([data-theme="light"]) .sidebar .panel .panel-title i { color: rgba(255,255,255,0.5) !important; }
html:not([data-theme="light"]) .sidebar .panel .panel-body,
html:not([data-theme="light"]) .sidebar .panel-default .panel-body { color: rgba(255,255,255,0.85) !important; background: #0f1c2e !important; }
html:not([data-theme="light"]) .sidebar .panel-sidebar .panel-body strong { color: #fff !important; }
html:not([data-theme="light"]) .sidebar .panel-sidebar .panel-body em { color: rgba(255,255,255,0.6) !important; }
html:not([data-theme="light"]) .sidebar .panel .panel-body a { color: #4da6e8 !important; }
html:not([data-theme="light"]) .sidebar .panel .panel-body label { color: rgba(255,255,255,0.85) !important; }
html:not([data-theme="light"]) .sidebar .panel .panel-footer { background: #0f1c2e !important; border-top-color: rgba(255,255,255,0.08) !important; }
html:not([data-theme="light"]) .sidebar .panel .btn { color: rgba(255,255,255,0.85) !important; border-color: rgba(255,255,255,0.12) !important; background: rgba(255,255,255,0.06) !important; }
html:not([data-theme="light"]) .sidebar .panel .btn-success { background: rgba(255,255,255,0.06) !important; color: rgba(255,255,255,0.85) !important; border-color: rgba(255,255,255,0.12) !important; }
html:not([data-theme="light"]) .sidebar .panel .btn-success:hover { border-color: #4da6e8 !important; color: #4da6e8 !important; background: rgba(77,166,232,0.08) !important; }
html:not([data-theme="light"]) .sidebar .panel .list-group-item { color: rgba(255,255,255,0.85) !important; border-bottom-color: rgba(255,255,255,0.06) !important; background: #0f1c2e !important; }
html:not([data-theme="light"]) .sidebar .panel .list-group-item:hover { background: rgba(255,255,255,0.04) !important; color: #4da6e8 !important; }
html:not([data-theme="light"]) .sidebar .panel .list-group-item i { color: rgba(255,255,255,0.4) !important; }
html:not([data-theme="light"]) .sidebar .panel .list-group-item:hover i { color: #4da6e8 !important; }
html:not([data-theme="light"]) .sidebar .panel .list-group-item.active { background: #1a7fd4 !important; color: #fff !important; border-color: #1a7fd4 !important; }
html:not([data-theme="light"]) .sidebar .panel .list-group-item.active i { color: #fff !important; }

/* ==========================================================
   Weebly / Store promo widget — ALL panel body content
   ========================================================== */
html:not([data-theme="light"]) .panel-body,
html:not([data-theme="light"]) .panel-body *,
html:not([data-theme="light"]) .panel-body p,
html:not([data-theme="light"]) .panel-body span,
html:not([data-theme="light"]) .panel-body div,
html:not([data-theme="light"]) .panel-body li,
html:not([data-theme="light"]) .panel-body td,
html:not([data-theme="light"]) .panel-body label { color: rgba(255,255,255,0.85) !important; }
html:not([data-theme="light"]) .panel-body a { color: #4da6e8 !important; }
html:not([data-theme="light"]) .panel-body a:hover { color: #6dc0f7 !important; }
html:not([data-theme="light"]) .panel-body h1,
html:not([data-theme="light"]) .panel-body h2,
html:not([data-theme="light"]) .panel-body h3,
html:not([data-theme="light"]) .panel-body h4 { color: #fff !important; }
html:not([data-theme="light"]) .panel-body .text-muted,
html:not([data-theme="light"]) .panel-body small { color: rgba(255,255,255,0.5) !important; }
/* MarketConnect store widgets (Weebly, etc.) — override white inner bg */
html:not([data-theme="light"]) .marketconnect-promo,
html:not([data-theme="light"]) .marketconnect-promo * { color: rgba(255,255,255,0.85) !important; }
html:not([data-theme="light"]) .marketconnect-promo a { color: #4da6e8 !important; }
html:not([data-theme="light"]) .panel-body [style*="background"],
html:not([data-theme="light"]) .panel-body .promo-body,
html:not([data-theme="light"]) .panel-body .mc-promo-body,
html:not([data-theme="light"]) .panel-body > div { background: transparent !important; }
html:not([data-theme="light"]) .panel-body > div *,
html:not([data-theme="light"]) .panel-body > div p,
html:not([data-theme="light"]) .panel-body > div a { color: rgba(255,255,255,0.85) !important; }
html:not([data-theme="light"]) .panel-body > div a:hover { color: #6dc0f7 !important; }

/* Store/MarketConnect landing pages & promo widgets (Weebly, etc.) */
html:not([data-theme="light"]) .landing-page .hero { color: #fff !important; background: transparent !important; }
html:not([data-theme="light"]) .landing-page .hero h2,
html:not([data-theme="light"]) .landing-page .hero h3 { color: #fff !important; }
html:not([data-theme="light"]) .landing-page .product-options { background-color: #0f1c2e !important; color: rgba(255,255,255,0.85) !important; }
html:not([data-theme="light"]) .landing-page .content-block { background: #0f1c2e !important; color: rgba(255,255,255,0.85) !important; }
html:not([data-theme="light"]) .landing-page .content-block h3 { color: #fff !important; }
html:not([data-theme="light"]) .landing-page .content-block p { color: rgba(255,255,255,0.7) !important; }

/* Homepage MarketConnect promo cards — kill white inner bg */
html:not([data-theme="light"]) .order-homepage .panel .panel-body { background: #0f1c2e !important; }
html:not([data-theme="light"]) .order-homepage .panel .panel-body * { color: rgba(255,255,255,0.85) !important; }
html:not([data-theme="light"]) .order-homepage .panel .panel-body a { color: #4da6e8 !important; }
html:not([data-theme="light"]) .order-homepage .panel .panel-body img { background: transparent !important; }
/* Any nested div with white bg inside panel-body */
html:not([data-theme="light"]) .panel .panel-body div[style*="background-color: rgb(255, 255, 255)"],
html:not([data-theme="light"]) .panel .panel-body div[style*="background:#fff"],
html:not([data-theme="light"]) .panel .panel-body div[style*="background: #fff"],
html:not([data-theme="light"]) .panel .panel-body div[style*="background-color:#fff"],
html:not([data-theme="light"]) .panel .panel-body div[style*="background-color: #fff"],
html:not([data-theme="light"]) .panel .panel-body div[style*="background-color:#ffffff"],
html:not([data-theme="light"]) .panel .panel-body div[style*="background-color: #ffffff"],
html:not([data-theme="light"]) .panel .panel-body div[style*="background: white"] { background: transparent !important; }

/* ==========================================================
   Promo card buttons — blue/green text on blue/green bg = unreadable
   ========================================================== */
html:not([data-theme="light"]) .ultra-promo-review a,
html:not([data-theme="light"]) .ultra-promo-review .btn,
html:not([data-theme="light"]) .ultra-promo-attracta a,
html:not([data-theme="light"]) .ultra-promo-attracta .btn { color: #fff !important; }
html:not([data-theme="light"]) .panel-body a.btn,
html:not([data-theme="light"]) .panel-body .btn-link { color: #fff !important; }
html:not([data-theme="light"]) .panel-body a[href*="get-started"],
html:not([data-theme="light"]) .panel-body a[href*="review"],
html:not([data-theme="light"]) .panel-body a[href*="weebly"] { color: #fff !important; }

/* Generic: any link styled as a button inside a colored panel */
html:not([data-theme="light"]) .panel-body .btn-success,
html:not([data-theme="light"]) .panel-body .btn-info,
html:not([data-theme="light"]) .panel-body .btn-warning { color: #fff !important; }

/* "Get Started" and "Leave a Review" links in promo cards */
html:not([data-theme="light"]) .ultra-promo-card a { color: #fff !important; }
html:not([data-theme="light"]) .ultra-promo-card .ultra-promo-header a { color: #fff !important; }

/* WHMCS navbar dropdown */
html:not([data-theme="light"]) .navbar-main .dropdown-menu { background-color: #0f1c2e !important; }

/* ==========================================================
   Theme Toggle Button (copied from ultra-style.css since
   ultra-style.css is not loaded on WHMCS pages)
   ========================================================== */
.ultra-theme-toggle {
  position: fixed !important; bottom: 24px !important; left: 24px !important; z-index: 9998 !important;
  width: 72px !important; height: 36px !important; border-radius: 18px !important;
  cursor: pointer !important; user-select: none;
  transition: background 0.4s ease, border-color 0.4s ease;
  border: 1px solid rgba(255,255,255,0.1) !important; padding: 0 !important;
  background: #0c1929 !important;
  margin: 0 !important; box-sizing: border-box !important;
}
.ultra-theme-toggle .toggle-label {
  position: absolute !important; top: 50% !important; transform: translateY(-50%) !important;
  font-size: 13px !important;
  transition: all 0.35s ease;
  right: 12px !important; left: auto !important;
  color: rgba(255,255,255,0.2) !important;
  margin: 0 !important; padding: 0 !important;
}
.ultra-theme-toggle .toggle-knob {
  position: absolute !important; top: 3px !important; left: 4px !important;
  width: 28px !important; height: 28px !important; border-radius: 50% !important;
  display: flex !important; align-items: center !important; justify-content: center !important;
  transition: all 0.4s cubic-bezier(0.68, -0.15, 0.27, 1.15);
  font-size: 13px !important;
  background: #1a7fd4 !important;
  color: #fff !important;
  box-shadow: 0 2px 8px rgba(26,127,212,0.4) !important;
  margin: 0 !important; padding: 0 !important;
}
[data-theme="light"] .ultra-theme-toggle {
  background: #f0f2f5 !important;
  border-color: #d0d5dc !important;
}
[data-theme="light"] .ultra-theme-toggle .toggle-label {
  right: auto !important; left: 12px !important;
  color: #ccc !important;
}
[data-theme="light"] .ultra-theme-toggle .toggle-knob {
  left: calc(100% - 34px) !important;
  background: #fff !important;
  color: #ffa00e !important;
  box-shadow: 0 2px 6px rgba(0,0,0,0.12) !important;
}
@media print { .ultra-theme-toggle { display: none !important; } }
@media (max-width: 480px) {
  .ultra-theme-toggle { bottom: 16px !important; left: 16px !important; width: 64px !important; height: 32px !important; border-radius: 16px !important; }
  .ultra-theme-toggle .toggle-knob { width: 24px !important; height: 24px !important; font-size: 11px !important; top: 3px !important; left: 4px !important; }
  .ultra-theme-toggle .toggle-label { font-size: 11px !important; }
  [data-theme="light"] .ultra-theme-toggle .toggle-knob { left: calc(100% - 28px) !important; }
}
