/* ROOTIUM GUARDIAN V31 — single, surface-aware client-area theme.
   Consistent foreground/background pairs. Do not globally recolour span, div,
   payment iframes, or third-party widgets. Checkout is in rootium-v29-cart.css. */
:root {
  --ri-bg:#070e1b; --ri-nav:#091525; --ri-panel:#101f31;
  --ri-panel-alt:#182e42; --ri-raised:#20384c; --ri-field:#0c2033;
  --ri-border:#355569; --ri-border-soft:#294254;
  --ri-heading:#edf9f4; --ri-text:#d0e2e4; --ri-muted:#abc1cd;
  --ri-mint:#74f3b5; --ri-mint-soft:#bafada; --ri-cyan:#78d8ee;
  --ri-ink:#0b2d26; --ri-danger:#ffb6bd; --ri-focus:#b3ffe0;
  --ri-radius:16px;
}
html {background:var(--ri-bg)}
body.rootium-whmcs-rootium {
  background:radial-gradient(ellipse 60% 460px at 5% 0%,#0e302d 0%,transparent 74%),
             radial-gradient(ellipse 50% 450px at 98% 16%,#112740 0%,transparent 75%),var(--ri-bg);
  color:var(--ri-text); color-scheme:dark;
  font-family:"Sora",system-ui,-apple-system,"Segoe UI",sans-serif;line-height:1.6;
}
.rootium-whmcs-rootium *, .rootium-whmcs-rootium *::before,.rootium-whmcs-rootium *::after {box-sizing:border-box}
.rootium-whmcs-rootium :is(h1,h2,h3,h4,h5,h6,.header-lined h1,.card-title,.panel-title,.modal-title) {color:var(--ri-heading);letter-spacing:-.025em}
.rootium-whmcs-rootium :is(p,li,dt,dd,.description,.help-text,.form-text,.help-block) {color:inherit}
.rootium-whmcs-rootium :is(.text-muted,small,.small,.help-block,.form-text) {color:var(--ri-muted)!important}
.rootium-whmcs-rootium a {color:var(--ri-mint);text-underline-offset:3px}
.rootium-whmcs-rootium a:hover {color:var(--ri-cyan)}
.rootium-whmcs-rootium :is(a,button,input,select,textarea,[tabindex]):focus-visible {outline:3px solid var(--ri-focus)!important;outline-offset:3px}
.rootium-whmcs-rootium .container {max-width:1320px}
.rootium-whmcs-rootium #main-body {min-height:55vh;padding:34px 0 56px}
.rootium-whmcs-rootium #main-body .primary-content {min-width:0}
.rootium-whmcs-rootium #header,.rootium-whmcs-rootium #header .navbar,
.rootium-whmcs-rootium #header .main-navbar-wrapper {background:var(--ri-nav)!important;border-color:var(--ri-border-soft)!important}
.rootium-whmcs-rootium #header {border-bottom:1px solid var(--ri-border-soft)}
.rootium-whmcs-rootium #header .navbar-brand {display:flex;align-items:center;min-width:0;padding:7px 0}
.rootium-whmcs-rootium #header .navbar-brand::before {display:none!important}
.rootium-whmcs-rootium .ri-official-logo {width:auto;max-width:194px;max-height:54px;height:54px;object-fit:contain;object-position:left center}
.rootium-whmcs-rootium #header :is(.navbar-nav a,.nav-link,.dropdown-toggle) {color:#d2e4e6!important}
.rootium-whmcs-rootium #header :is(.navbar-nav a,.nav-link,.dropdown-toggle):hover {color:var(--ri-mint)!important}
.rootium-whmcs-rootium #header .main-navbar-wrapper {border-top:1px solid var(--ri-border-soft)}
.rootium-whmcs-rootium #header .main-navbar-wrapper .nav-item > a {border-radius:9px}
.rootium-whmcs-rootium #header .main-navbar-wrapper .nav-item.active > a {background:#173f38;color:var(--ri-mint-soft)!important}
.rootium-whmcs-rootium .ri-sale-strip {background:linear-gradient(90deg,#10382d,#102d40);color:#c6ebdf;border-bottom:1px solid #2b6b5e;font-size:12px}
.rootium-whmcs-rootium .ri-sale-strip .container {display:flex;flex-wrap:wrap;align-items:center;gap:14px;min-height:42px}
.rootium-whmcs-rootium .ri-sale-strip :is(b,strong) {color:var(--ri-mint-soft)}
.rootium-whmcs-rootium .ri-sale-strip a {margin-left:auto;background:var(--ri-mint);border-radius:99px;padding:5px 13px;color:var(--ri-ink)!important;font-weight:700}
.rootium-whmcs-rootium .master-breadcrumb,.rootium-whmcs-rootium .breadcrumb {background:#0c1c2c!important;color:#abc7cc!important;border-color:var(--ri-border-soft)}
.rootium-whmcs-rootium .breadcrumb .breadcrumb-item,.rootium-whmcs-rootium .breadcrumb .breadcrumb-item.active {color:#b7cfd3}
.rootium-whmcs-rootium :is(.card,.panel,.panel-default,.well,.jumbotron,.tile,.tiles .tile,.logincontainer,.product-info,.table-container,.list-group,.modal-content,.dropdown-menu,.popover,.domain-checker-container,.domain-lookup-results,.kb-article,.bg-light) {
  background:var(--ri-panel)!important;color:var(--ri-text);border:1px solid var(--ri-border-soft);
}
.rootium-whmcs-rootium :is(.card,.panel,.well,.tile,.modal-content,.logincontainer,.product-info) {border-radius:var(--ri-radius);box-shadow:0 12px 28px #0002}
.rootium-whmcs-rootium :is(.card-header,.panel-heading,.modal-header,.card-footer,.panel-footer,.modal-footer) {background:var(--ri-panel-alt)!important;color:var(--ri-heading);border-color:var(--ri-border-soft)!important}
.rootium-whmcs-rootium :is(.card-body,.panel-body,.modal-body,.popover-body) {background:transparent;color:var(--ri-text)}
.rootium-whmcs-rootium :is(.dropdown-menu,.popover,.modal-content) {background:var(--ri-panel)!important;box-shadow:0 16px 45px #0007}
.rootium-whmcs-rootium :is(.dropdown-item,.list-group-item,.nav-tabs .nav-link,.nav-pills .nav-link) {background:var(--ri-panel)!important;color:var(--ri-text)!important;border-color:var(--ri-border-soft)!important}
.rootium-whmcs-rootium :is(.dropdown-item,.list-group-item,.nav-tabs .nav-link,.nav-pills .nav-link):hover {background:var(--ri-raised)!important;color:var(--ri-mint-soft)!important}
.rootium-whmcs-rootium :is(.dropdown-item,.list-group-item,.nav-tabs .nav-link,.nav-pills .nav-link).active {background:#1b493f!important;color:var(--ri-mint-soft)!important}
.rootium-whmcs-rootium :is(.form-control,.custom-select,.select2-container--default .select2-selection--single,.input-group-text,textarea.form-control,select.form-control) {
  background:var(--ri-field)!important;color:#e0f1ed!important;border:1px solid #547184!important;border-radius:9px;min-height:42px;box-shadow:none;
}
.rootium-whmcs-rootium :is(input.form-control,textarea.form-control) { -webkit-text-fill-color:#e0f1ed!important}
.rootium-whmcs-rootium :is(input.form-control,textarea.form-control)::placeholder {color:#a6bfc9!important;opacity:1}
.rootium-whmcs-rootium :is(.form-control,.custom-select):focus {background:#112b3c!important;border-color:var(--ri-mint)!important;box-shadow:0 0 0 3px #74f3b525!important}
.rootium-whmcs-rootium select option {background:var(--ri-panel)!important;color:#e2f0ed!important}
.rootium-whmcs-rootium input:-webkit-autofill {box-shadow:0 0 0 1000px var(--ri-field) inset!important;-webkit-text-fill-color:#e0f1ed!important}
.rootium-whmcs-rootium :is(.form-control,.custom-select):disabled {opacity:.75;background:#203044!important}
.rootium-whmcs-rootium :is(.form-check-label,.control-label,.radio label,.checkbox label,.field-container label,.form-group label) {color:#d5e7e7}
.rootium-whmcs-rootium :is(input[type=checkbox],input[type=radio]) {accent-color:var(--ri-mint)}
.rootium-whmcs-rootium :is(.btn-primary,.btn-success,.btn-checkout) {background:var(--ri-mint)!important;color:var(--ri-ink)!important;border:1px solid #80edb7!important;font-weight:750;border-radius:10px}
.rootium-whmcs-rootium :is(.btn-primary,.btn-success,.btn-checkout):hover {background:#a0f8c9!important;color:#073329!important;border-color:#a0f8c9!important}
.rootium-whmcs-rootium :is(.btn-primary,.btn-success,.btn-checkout) :is(span,small,i) {color:inherit!important}
.rootium-whmcs-rootium :is(.btn-default,.btn-secondary,.btn-outline-light) {background:#21394d!important;color:#d9ebea!important;border:1px solid #477080!important;border-radius:10px}
.rootium-whmcs-rootium :is(.btn-default,.btn-secondary,.btn-outline-light):hover {background:#2a4c5a!important;color:#f0fbf6!important}
.rootium-whmcs-rootium :is(.btn-danger,.alert-danger) {border-color:#91505b}
.rootium-whmcs-rootium .btn-link {color:var(--ri-mint)}
.rootium-whmcs-rootium :is(.alert,.alert-info,.alert-warning,.alert-success,.alert-danger) {border-radius:12px;padding:14px 18px}
.rootium-whmcs-rootium .alert-info {background:#123b50;color:#d4edf7;border:1px solid #477c97}
.rootium-whmcs-rootium .alert-warning {background:#473619;color:#fff0c7;border:1px solid #94743f}
.rootium-whmcs-rootium .alert-success {background:#164537;color:#dbffe8;border:1px solid #419b75}
.rootium-whmcs-rootium .alert-danger {background:#4d2531;color:#ffe0e5;border:1px solid #a75c68}
.rootium-whmcs-rootium .alert :is(a,p,small,span,strong) {color:inherit}
.rootium-whmcs-rootium :is(.badge-primary,.badge-success) {background:#225d46;color:#c2ffdd}
.rootium-whmcs-rootium :is(.table,.table-striped,.table-bordered,.dataTable,.table-responsive) {color:var(--ri-text);background:var(--ri-panel)!important;border-color:var(--ri-border-soft)}
.rootium-whmcs-rootium :is(.table,.dataTable) :is(thead,thead th,thead td) {background:#1d3749!important;color:var(--ri-heading)!important;border-color:var(--ri-border)}
.rootium-whmcs-rootium :is(.table,.dataTable) tbody tr {background:var(--ri-panel)!important;color:var(--ri-text)}
.rootium-whmcs-rootium :is(.table,.dataTable) tbody tr:nth-child(even) {background:#182b3d!important}
.rootium-whmcs-rootium :is(.table,.dataTable) tbody :is(td,th) {background:transparent!important;color:inherit;border-color:var(--ri-border-soft)}
.rootium-whmcs-rootium :is(.table,.dataTable) tbody tr:hover {background:#244253!important}
.rootium-whmcs-rootium :is(.pagination .page-link,.dataTables_paginate a) {background:var(--ri-panel);color:var(--ri-mint);border-color:var(--ri-border)}
.rootium-whmcs-rootium .pagination .active .page-link {background:#28614e;color:#e6fff1}
.rootium-whmcs-rootium :is(.bg-white,.white-bg,.white-background) {background:#e7f2f2!important;color:#193542!important;color-scheme:light}
.rootium-whmcs-rootium :is(.bg-white,.white-bg,.white-background) :is(p,small,span,strong,td,th,label,li,h1,h2,h3,h4,h5,h6,.text-muted) {color:#193542!important}
.rootium-whmcs-rootium :is(.bg-white,.white-bg,.white-background) a {color:#08634f}
.rootium-whmcs-rootium .modal-backdrop {background:#01060e}
.rootium-whmcs-rootium :is(.iti__country-list,.iti-mobile .iti--container) {background:var(--ri-panel);color:var(--ri-text)}
.rootium-whmcs-rootium :is(.select2-dropdown,.select2-results) {background:var(--ri-panel);color:var(--ri-text);border-color:var(--ri-border)}
.rootium-whmcs-rootium :is(.select2-results__option--highlighted,.select2-results__option[aria-selected=true]) {background:#27604c!important;color:#fff!important}
.rootium-whmcs-rootium .ri-portal-hero {display:flex;align-items:center;justify-content:space-between;gap:20px;overflow:hidden;position:relative;padding:clamp(24px,4vw,45px);margin:0 0 24px;border-radius:22px;border:1px solid #377765;background:radial-gradient(circle at 82% 40%,#205c50a6,transparent 35%),linear-gradient(120deg,#102b35,#0d1729 77%)}
.rootium-whmcs-rootium .ri-portal-hero-content {z-index:1;max-width:710px}
.rootium-whmcs-rootium .ri-eyebrow {color:var(--ri-mint);font-size:12px;letter-spacing:.12em;font-weight:750;margin-bottom:10px}
.rootium-whmcs-rootium .ri-portal-hero h1 {font-size:clamp(25px,3vw,39px);line-height:1.18;margin:0 0 12px}
.rootium-whmcs-rootium .ri-portal-hero p {font-size:15px;color:#c0d8dd;max-width:590px;margin:0 0 24px}
.rootium-whmcs-rootium .ri-portal-actions {display:flex;flex-wrap:wrap;gap:12px}
.rootium-whmcs-rootium .ri-portal-actions .btn {padding:11px 16px}
.rootium-whmcs-rootium .ri-hero-shield {flex:0 0 170px;align-self:center;filter:drop-shadow(0 0 35px #3fca9670)}
.rootium-whmcs-rootium .ri-hero-shield img {display:block;width:170px;height:170px;object-fit:contain}
.rootium-whmcs-rootium .tiles .tile {min-height:128px;padding:22px;border:1px solid #315467!important;transition:border-color .2s,transform .2s;text-decoration:none}
.rootium-whmcs-rootium .tiles .tile:hover {transform:translateY(-2px);border-color:var(--ri-mint)!important}
.rootium-whmcs-rootium .tiles .tile .stat {font-size:30px;color:var(--ri-heading)}
.rootium-whmcs-rootium .tiles .tile .title {color:var(--ri-muted)}
.rootium-whmcs-rootium .tiles .tile :is(.fas,.far) {color:var(--ri-mint)}
.rootium-whmcs-rootium .ri-footer-grid {display:grid;grid-template-columns:2fr repeat(3,1fr);gap:22px;margin:20px 0 28px}
.rootium-whmcs-rootium .ri-footer-grid > div {min-width:0}
.rootium-whmcs-rootium .ri-footer-grid h4 {font-size:14px;margin:0 0 12px}
.rootium-whmcs-rootium .ri-footer-grid p {font-size:13px;color:var(--ri-muted);margin:12px 0}
.rootium-whmcs-rootium .ri-footer-grid a {display:block;color:#bbd3d8;font-size:13px;margin:7px 0}
.rootium-whmcs-rootium .ri-footer-grid a:hover {color:var(--ri-mint)}
.rootium-whmcs-rootium .ri-footer-brand {width:168px;max-height:44px;object-fit:contain;object-position:left center}
.rootium-whmcs-rootium #footer {background:#081421!important;border-top:1px solid var(--ri-border-soft);color:#bacfd5}
.rootium-whmcs-rootium #footer .copyright {color:#98b1bd}
.rootium-whmcs-rootium .ri-static-link .nav-link {white-space:nowrap}
@media(max-width:1199px){.rootium-whmcs-rootium #header #mainNavbar{padding:12px 0}.rootium-whmcs-rootium .ri-sale-strip .container{justify-content:center}.rootium-whmcs-rootium .ri-sale-strip a{margin-left:0}}
@media(max-width:768px){.rootium-whmcs-rootium #main-body{padding-top:20px}.rootium-whmcs-rootium .ri-hero-shield{display:none}.rootium-whmcs-rootium .ri-footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.rootium-whmcs-rootium .tiles .tile{min-height:110px;padding:15px}.rootium-whmcs-rootium .ri-official-logo{max-width:156px;height:44px}.rootium-whmcs-rootium .ri-sale-strip .container span{display:none}}
@media(max-width:460px){.rootium-whmcs-rootium .ri-footer-grid{grid-template-columns:1fr 1fr;gap:12px}.rootium-whmcs-rootium .ri-portal-hero{padding:20px 18px}.rootium-whmcs-rootium .ri-portal-actions .btn{flex:1 1 100%;white-space:normal}.rootium-whmcs-rootium :is(.table-responsive,.dataTables_wrapper){max-width:100%;overflow-x:auto}}
@media(prefers-reduced-motion:reduce){.rootium-whmcs-rootium *, .rootium-whmcs-rootium *::before {animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
/* Account, invoices, tickets and domains: the same surface language. */
.rootium-whmcs-rootium :is(.ticket-reply,.ticket-reply .message,.ticket-reply .message-content,.invoice-container,.invoice-summary,.domain-pricing,.domain-list,.domain-overview,.client-area-details,.account-management,.kb-search,.knowledgebase-search) {background:var(--ri-panel)!important;color:var(--ri-text);border-color:var(--ri-border-soft)}
.rootium-whmcs-rootium :is(.ticket-reply,.invoice-container,.domain-overview,.kb-search) {border-radius:var(--ri-radius)}
.rootium-whmcs-rootium :is(.ticket-reply .user,.ticket-reply .date,.ticket-reply .date-time,.ticket-reply .message-date,.domain-list .text-muted) {color:var(--ri-muted)!important}
.rootium-whmcs-rootium :is(.invoice-summary,.invoice-summary .total,.invoice-container .invoice-header) {background:var(--ri-panel-alt)!important;color:var(--ri-heading)}
.rootium-whmcs-rootium :is(.dataTables_filter label,.dataTables_length label,.search-filter label) {color:var(--ri-text)}
.rootium-whmcs-rootium .dataTables_wrapper .dataTables_info {color:var(--ri-muted)}
.rootium-whmcs-rootium .ticket-reply .message {padding:14px;border-radius:12px}
.rootium-whmcs-rootium :is(.logincontainer,.logincontainer .card,.register-form,.password-reset-container) {max-width:100%;color:var(--ri-text)}
.rootium-whmcs-rootium :is(.status-active,.text-success) {color:var(--ri-mint)!important}
.rootium-whmcs-rootium :is(.status-pending,.text-warning) {color:#ffe09d!important}
.rootium-whmcs-rootium :is(.status-suspended,.text-danger) {color:#ffb2be!important}
.rootium-whmcs-rootium :is(.table-responsive,.dataTables_wrapper) {border-radius:12px}

/* V30 — service pages and customer notifications. Consistent surface pairs,
   including WHMCS panel headings, linked service names and Bootstrap popovers. */
body.rootium-whmcs-rootium {
  --ri-notice-surface:#1a384a;
  --ri-notice-row:#203f50;
  --ri-notice-hover:#2b5262;
  --ri-notice-border:#598598;
  --ri-notice-text:#eefaf7;
}
/* WHMCS often inserts dark link colours into product titles and service detail headings. */
body.rootium-whmcs-rootium :is(
  #tableServicesList td:nth-child(2),
  #tableServicesList td:nth-child(2) strong,
  #tableServicesList td:nth-child(2) a,
  .service-details h1,.service-details h2,.service-details h3,
  .product-details h1,.product-details h2,.product-details h3,
  .product-details .product-name,
  .product-details .product-title,
  .product-details .product-details-header,
  .product-status,
  #tabOverview .product-name,#tabOverview .product-title,
  .client-home-cards .card-title,
  .client-home-cards .card-header h3,
  .client-home-cards .list-group-item strong,
  .table-list td strong,.table-list td b,
  .table-list tbody td:first-child a
) {color:var(--ri-heading)!important;opacity:1!important;}
body.rootium-whmcs-rootium #tableServicesList tbody td:nth-child(2) a,
body.rootium-whmcs-rootium .service-details a:not(.btn),
body.rootium-whmcs-rootium .product-details a:not(.btn) {color:var(--ri-mint-soft)!important;}
body.rootium-whmcs-rootium #tableServicesList tbody td:nth-child(2) a:hover,
body.rootium-whmcs-rootium .service-details a:not(.btn):hover {color:var(--ri-cyan)!important;}
body.rootium-whmcs-rootium :is(.service-details,.product-details,#tabOverview,.service-overview,.product-details-tab-container,.product-details .service-info) {color:var(--ri-text)}
body.rootium-whmcs-rootium :is(.service-details,.product-details,#tabOverview) :is(.text-muted,small,.small) {color:var(--ri-muted)!important}
body.rootium-whmcs-rootium :is(.service-details,.product-details,#tabOverview) :is(.panel-title,.card-title,.product-title,dt,strong) {color:var(--ri-heading)!important}
body.rootium-whmcs-rootium :is(.service-details,.product-details,#tabOverview) :is(.panel-heading,.card-header) {background:var(--ri-panel-alt)!important;color:var(--ri-heading)!important}
body.rootium-whmcs-rootium :is(.service-details,.product-details,#tabOverview) :is(.panel-body,.card-body,dd) {color:var(--ri-text)}
/* Notification trigger: brighter, distinct from dark navigation. */
body.rootium-whmcs-rootium #header .topbar {background:#142d3e!important;border-bottom:1px solid #4a7183!important}
body.rootium-whmcs-rootium #header .topbar .container {color:#e4f7f1}
body.rootium-whmcs-rootium #accountNotifications {
  display:inline-flex;align-items:center;gap:9px;padding:9px 14px;min-height:42px;
  border:1px solid #668f99!important;border-radius:12px;
  background:#254b5d!important;color:var(--ri-notice-text)!important;
  font-weight:650;box-shadow:0 2px 10px #0003;
}
body.rootium-whmcs-rootium #accountNotifications:hover,
body.rootium-whmcs-rootium #accountNotifications[aria-describedby] {background:#306174!important;border-color:#96cfcc!important;color:#fff!important}
body.rootium-whmcs-rootium #accountNotifications .ri-notification-count {
  display:inline-flex;align-items:center;justify-content:center;min-width:25px;height:25px;
  padding:0 6px;border-radius:999px;background:var(--ri-mint);color:#073225!important;
  font-size:12px;font-weight:800;
}
body.rootium-whmcs-rootium #accountNotifications .ri-notification-count.is-empty {background:#587689;color:#f0fbfa!important}
body.rootium-whmcs-rootium #accountNotifications :is(i,span) {color:inherit}
/* Bootstrap popover is appended under the body rather than the header. */
body.rootium-whmcs-rootium .popover,
body.rootium-whmcs-rootium .popover[role=tooltip] {
  max-width:min(390px,calc(100vw - 24px));width:340px;
  border:1px solid var(--ri-notice-border)!important;
  border-radius:14px;background:var(--ri-notice-surface)!important;
  color:var(--ri-notice-text)!important;
  box-shadow:0 18px 50px #0009;
}
body.rootium-whmcs-rootium .popover :is(.popover-header,.popover-title) {
  background:#2a5263!important;color:#f3fff9!important;
  border-bottom:1px solid var(--ri-notice-border)!important;
  font-size:15px;font-weight:750;
}
body.rootium-whmcs-rootium .popover :is(.popover-body,.popover-content) {
  background:var(--ri-notice-surface)!important;color:var(--ri-notice-text)!important;
  padding:12px;
}
body.rootium-whmcs-rootium .popover :is(p,span,strong,small,div,li) {color:inherit}
body.rootium-whmcs-rootium .popover .arrow::after {border-bottom-color:var(--ri-notice-surface)!important}
body.rootium-whmcs-rootium :is(.popover .client-alerts,#accountNotificationsContent .client-alerts) {
  margin:0;padding:0;list-style:none;background:transparent!important;color:var(--ri-notice-text)!important;
}
body.rootium-whmcs-rootium :is(.popover .client-alerts li,#accountNotificationsContent .client-alerts li) {
  padding:0!important;margin:0 0 7px;background:var(--ri-notice-row)!important;
  border:1px solid #577e90!important;border-radius:10px;list-style:none;
}
body.rootium-whmcs-rootium :is(.popover .client-alerts li:last-child,#accountNotificationsContent .client-alerts li:last-child) {margin-bottom:0}
body.rootium-whmcs-rootium :is(.popover .client-alerts a,#accountNotificationsContent .client-alerts a) {
  display:flex;align-items:flex-start;gap:10px;padding:13px 14px;
  background:transparent!important;color:var(--ri-notice-text)!important;
  text-decoration:none!important;font-weight:550;line-height:1.55;
}
body.rootium-whmcs-rootium :is(.popover .client-alerts a:hover,#accountNotificationsContent .client-alerts a:hover) {background:var(--ri-notice-hover)!important;border-radius:10px}
body.rootium-whmcs-rootium :is(.popover .client-alerts .message,#accountNotificationsContent .client-alerts .message) {
  flex:1;min-width:0;overflow-wrap:anywhere;color:var(--ri-notice-text)!important;
}
body.rootium-whmcs-rootium :is(.popover .client-alerts .message *,#accountNotificationsContent .client-alerts .message *) {color:inherit!important}
body.rootium-whmcs-rootium :is(.popover .client-alerts i,#accountNotificationsContent .client-alerts i) {color:var(--ri-mint-soft)!important;flex:0 0 auto;margin-top:3px}
body.rootium-whmcs-rootium :is(.popover .client-alerts .none,#accountNotificationsContent .client-alerts .none) {
  padding:15px;color:#e4f5f2!important;text-align:center;
}
/* Severity notices — bright readable messages rather than blackish alerts. */
body.rootium-whmcs-rootium :is(.alert,.notification,.notification-item,.client-alert,.announcement-banner) {line-height:1.55}
body.rootium-whmcs-rootium .alert:not(.alert-danger):not(.alert-warning):not(.alert-success):not(.alert-info) {
  background:#254556!important;color:#effbf7!important;border:1px solid #608b9c!important;
}
body.rootium-whmcs-rootium .alert-info {background:#204b63!important;color:#effaff!important;border:1px solid #6da9bf!important}
body.rootium-whmcs-rootium .alert-warning {background:#59451f!important;color:#fff4d6!important;border:1px solid #d0a755!important}
body.rootium-whmcs-rootium .alert-success {background:#20533f!important;color:#eaffef!important;border:1px solid #65b98c!important}
body.rootium-whmcs-rootium .alert-danger {background:#63313d!important;color:#fff0f1!important;border:1px solid #d48c99!important}
body.rootium-whmcs-rootium .alert :is(h1,h2,h3,h4,h5,h6,a,p,span,strong,small,li) {color:inherit!important}
body.rootium-whmcs-rootium .alert a {text-decoration:underline;font-weight:700}
body.rootium-whmcs-rootium .alert :is(.btn,.btn-primary,.btn-default) {text-decoration:none}
/* Quick actions: navigation only; no new backend/API operations. */
body.rootium-whmcs-rootium .ri-quick-access {margin:0 0 25px}
body.rootium-whmcs-rootium .ri-section-heading {display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin:0 0 12px}
body.rootium-whmcs-rootium .ri-section-heading h2 {margin:0;font-size:19px;color:var(--ri-heading)}
body.rootium-whmcs-rootium .ri-section-heading p {margin:0;color:var(--ri-muted);font-size:13px}
body.rootium-whmcs-rootium .ri-quick-grid {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
body.rootium-whmcs-rootium .ri-quick-link {
  display:flex;gap:12px;align-items:center;min-height:88px;padding:17px;
  border:1px solid #416579;background:linear-gradient(135deg,#1a3548,#12293a);
  border-radius:14px;color:var(--ri-heading)!important;text-decoration:none!important;
  transition:background .2s,border-color .2s,transform .2s;
}
body.rootium-whmcs-rootium .ri-quick-link:hover {background:#244b55;border-color:var(--ri-mint);transform:translateY(-2px)}
body.rootium-whmcs-rootium .ri-quick-link .ri-quick-icon {
  display:inline-flex;align-items:center;justify-content:center;width:39px;height:39px;
  border-radius:11px;background:#245846;color:var(--ri-mint-soft);flex:0 0 39px;
}
body.rootium-whmcs-rootium .ri-quick-link strong {display:block;color:#f1faf7!important;font-size:14px;line-height:1.35}
body.rootium-whmcs-rootium .ri-quick-link small {display:block;color:#bbd5dc!important;font-size:12px;margin-top:3px}
body.rootium-whmcs-rootium .ri-service-toolbar {display:flex;flex-wrap:wrap;gap:10px;margin:0 0 20px}
body.rootium-whmcs-rootium .ri-service-toolbar a {display:inline-flex;align-items:center;gap:8px;padding:9px 13px;background:#1c4050;color:#e5f8f1!important;border:1px solid #50798a;border-radius:10px;text-decoration:none!important;font-weight:600}
body.rootium-whmcs-rootium .ri-service-toolbar a:hover {background:#2b5a5b;border-color:var(--ri-mint)}
@media(max-width:950px){body.rootium-whmcs-rootium .ri-quick-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:500px){body.rootium-whmcs-rootium .ri-quick-grid{grid-template-columns:1fr}body.rootium-whmcs-rootium .popover{max-width:calc(100vw - 20px)}body.rootium-whmcs-rootium #accountNotifications{padding:8px 10px}}
@media(prefers-reduced-motion:reduce){body.rootium-whmcs-rootium .ri-quick-link{transition:none}body.rootium-whmcs-rootium .ri-quick-link:hover{transform:none}}

/* ROOTIUM V31 / READABILITY SYSTEM — the final core rules, no extra CSS files.
   Match foreground to the actual surface. Limit rules to known WHMCS components;
   do not globally recolour descendants or embedded payment-provider iframes. */
body.rootium-whmcs-rootium {
  --ri-readable:#e1eff0;
  --ri-readable-muted:#bdd3dc;
  --ri-surface-heading:#f0faf7;
  --ri-light-surface:#eaf4f2;
  --ri-light-ink:#15313e;
  --ri-light-link:#075744;
  font-size:15px;
}
body.rootium-whmcs-rootium #main-body,
body.rootium-whmcs-rootium #main-body :is(.primary-content,.secondary-content),
body.rootium-whmcs-rootium #main-body :is(.tab-content,.tab-pane,.content-panel) {
  color:var(--ri-readable);line-height:1.65;
}
body.rootium-whmcs-rootium #main-body :is(h1,h2,h3,h4,h5,h6) {line-height:1.34}
body.rootium-whmcs-rootium #main-body :is(.header-lined h1,.header-lined h2,.panel-title,.card-title,.table-title) {
  color:var(--ri-surface-heading)!important;
}
body.rootium-whmcs-rootium #main-body :is(.text-dark,.text-black,.text-body,.text-secondary) {
  color:var(--ri-readable)!important;
}
body.rootium-whmcs-rootium #main-body :is(.text-muted,.help-block,.form-text,.text-help,.description) {
  color:var(--ri-readable-muted)!important;opacity:1;
}
body.rootium-whmcs-rootium #main-body :is(.panel,.card,.well,.product-details,.service-details,.product-status,.product-info,.invoice-container,.ticket-reply,.domain-overview) {
  color:var(--ri-readable);
}
body.rootium-whmcs-rootium #main-body :is(.panel-heading,.card-header,.panel-title,.card-title,.modal-title,.table thead th) {
  color:var(--ri-surface-heading)!important;
}
/* Service heading was dark-on-dark because WHMCS's .product-status carries its own backgrounds and headings. */
body.rootium-whmcs-rootium :is(.product-status,.product-status .product-icon,.product-status .product-status-text,
  .product-details .product-details-header,.service-details .service-details-header,
  .product-details .product-header,.product-details .service-info,.product-details .service-overview) {
  background:#1a3548!important;color:var(--ri-readable)!important;border-color:#527589!important;
}
body.rootium-whmcs-rootium :is(.product-status .product-icon h3,.product-status .product-icon h4,
  .product-status .product-name,.product-status .product-title,.product-details h3,.product-details h4,
  .product-details .product-name,.product-details .product-title,#tableServicesList td strong) {
  color:var(--ri-surface-heading)!important;opacity:1!important;text-shadow:none!important;
}
body.rootium-whmcs-rootium .product-status .product-status-text {
  border-radius:10px;font-weight:750;padding:8px 12px;
}
body.rootium-whmcs-rootium .product-details .product-status :is(.fa-stack,.fa-stack i) {color:var(--ri-mint-soft)}
body.rootium-whmcs-rootium #tableServicesList tbody td:nth-child(2) :is(strong,a),
body.rootium-whmcs-rootium :is(.service-details,.product-details) :is(a:not(.btn),.text-link) {
  color:var(--ri-mint-soft)!important;
}
body.rootium-whmcs-rootium #tableServicesList tbody td:nth-child(2) strong {color:var(--ri-surface-heading)!important}
body.rootium-whmcs-rootium #tableServicesList tbody tr {cursor:pointer}
body.rootium-whmcs-rootium #tableServicesList tbody tr:focus-within,
body.rootium-whmcs-rootium #tableServicesList tbody tr:hover {background:#29475a!important}
body.rootium-whmcs-rootium #tableServicesList tbody tr :is(td,td strong) {opacity:1}
/* Services, dashboard tiles, invoices, account tables and pagination. */
body.rootium-whmcs-rootium :is(.tiles .tile .title,.tiles .tile .stat,
  .client-home-cards .card-body,.domain-details .card-body,.invoice-summary,
  .billing-summary,.summary-container,.table-list td,.table-list th) {opacity:1!important}
body.rootium-whmcs-rootium :is(.table-list,.table-list tbody,.table-list tbody tr,.dataTables_wrapper,
  .dataTables_wrapper .row,.dataTables_wrapper .dataTables_info) {color:var(--ri-readable)}
body.rootium-whmcs-rootium :is(.table-list tbody td,.dataTable tbody td,.table tbody td) {
  color:var(--ri-readable)!important;
}
body.rootium-whmcs-rootium :is(.table-list tbody td,.dataTable tbody td,.table tbody td) :is(.text-muted,small,.small) {
  color:var(--ri-readable-muted)!important;
}
body.rootium-whmcs-rootium :is(.dataTables_empty,.dataTables_info,.dataTables_length,.dataTables_filter,
  .table-container #tableLoading,.dataTables_wrapper label) {color:var(--ri-readable-muted)!important}
body.rootium-whmcs-rootium :is(.pagination .page-item.disabled .page-link,
  .dataTables_wrapper .paginate_button.disabled) {
  background:#223b4c!important;color:#c4dbe2!important;border-color:#567485!important;opacity:.8;
}
body.rootium-whmcs-rootium :is(.dataTables_wrapper .paginate_button.current,
  .dataTables_wrapper .paginate_button:hover) {background:#245945!important;color:#e6fff0!important}
body.rootium-whmcs-rootium :is(.label,.badge,.status,.status-label) {
  display:inline-block;line-height:1.35;font-weight:700;border-radius:7px;padding:5px 9px;
}
body.rootium-whmcs-rootium :is(.label-default,.badge-secondary,.status-pending,.status-pendingtransfer) {
  background:#334b5c!important;color:#ebf6f7!important;
}
body.rootium-whmcs-rootium :is(.label-success,.badge-success,.status-active) {
  background:#1e5942!important;color:#c7ffdf!important;
}
body.rootium-whmcs-rootium :is(.label-warning,.badge-warning,.status-suspended) {
  background:#604a24!important;color:#fff0c4!important;
}
body.rootium-whmcs-rootium :is(.label-danger,.badge-danger,.status-cancelled,.status-terminated,.status-expired) {
  background:#63333e!important;color:#ffe3e5!important;
}
/* All ordinary WHMCS controls use readable values and distinct outlines. */
body.rootium-whmcs-rootium :is(.form-control,.custom-select,.select2-selection,
  .select2-selection__rendered,.input-group-text,.bootstrap-select>.dropdown-toggle,
  .chosen-container-single .chosen-single) {
  color:#e5f3f0!important;border-color:#608394!important;
}
body.rootium-whmcs-rootium :is(.form-control:disabled,.form-control[readonly],
  .custom-select:disabled,.input-group-text) {
  background:#264050!important;color:#d0e2e7!important;-webkit-text-fill-color:#d0e2e7!important;
}
body.rootium-whmcs-rootium :is(.form-control::placeholder,textarea::placeholder,input::placeholder) {
  color:#aecbd3!important;opacity:1!important;
}
body.rootium-whmcs-rootium :is(.form-group label,.field-container label,.control-label,.checkbox label,
  .radio label,.form-check-label,.col-form-label,.input-group label) {color:#e5f3f0!important}
body.rootium-whmcs-rootium :is(.select2-results__option,.select2-selection__placeholder,
  .dropdown-menu .dropdown-item,.dropdown-menu .dropdown-header) {color:var(--ri-readable)!important}
body.rootium-whmcs-rootium :is(.select2-results__option--highlighted,.dropdown-item:hover) {
  background:#2b5b59!important;color:#fff!important;
}
body.rootium-whmcs-rootium :is(.list-group-item,.nav-tabs .nav-link,.nav-pills .nav-link,.sidebar .list-group-item) {
  color:var(--ri-readable)!important;
}
body.rootium-whmcs-rootium :is(.nav-tabs .nav-link.active,.nav-pills .nav-link.active,
  .list-group-item.active) {color:#eafff4!important;background:#245745!important}
/* WHMCS modal/notification surface pairings; avoid dark-on-dark utility text. */
body.rootium-whmcs-rootium :is(.modal-content,.modal-dialog .modal-body,.modal-header,.modal-footer,
  .popover,.popover-header,.popover-body,.tooltip-inner,.toast,.toast-header,.toast-body) {
  color:var(--ri-readable)!important;
}
body.rootium-whmcs-rootium :is(.toast,.toast-header,.toast-body) {
  background:#204354!important;border-color:#7293a0!important;
}
body.rootium-whmcs-rootium .tooltip-inner {
  background:#234e59!important;color:#f6fffa!important;border:1px solid #8dcdbd;
  font-size:13px;max-width:310px;padding:9px 12px;
}
body.rootium-whmcs-rootium .popover :is(.message,.message a,.notification,.notification-item) {
  color:#effbf7!important;
}
body.rootium-whmcs-rootium :is(.modal-header.bg-primary,.modal-header.bg-info) {
  background:#244e57!important;color:#f5fffa!important;
}
body.rootium-whmcs-rootium :is(.modal-header.bg-primary,.modal-header.bg-info) :is(h1,h2,h3,h4,h5,button) {
  color:#f5fffa!important;
}
body.rootium-whmcs-rootium :is(.alert,.notification,.notification-item) :is(.text-muted,small,.small) {
  color:inherit!important;opacity:.95;
}
/* Progress, tabs, domain statuses and action links remain legible. */
body.rootium-whmcs-rootium :is(.progress,.progress-bar-container) {background:#294357!important}
body.rootium-whmcs-rootium .progress-bar {background:#45b985!important;color:#082c21!important;font-weight:700}
body.rootium-whmcs-rootium :is(.domain-available,.available,.text-success) {color:#9bffcb!important}
body.rootium-whmcs-rootium :is(.domain-unavailable,.unavailable,.text-danger) {color:#ffc2c9!important}
body.rootium-whmcs-rootium :is(.text-warning,.warning) {color:#ffe4a8!important}
body.rootium-whmcs-rootium :is(.badge-info,.label-info) {background:#24566b!important;color:#e7f9ff!important}
/* Explicit LIGHT islands must never inherit global white-text utilities. */
body.rootium-whmcs-rootium #main-body :is(.bg-white,.white-bg,.white-background,.ri-light-surface) {
  background:var(--ri-light-surface)!important;color:var(--ri-light-ink)!important;color-scheme:light;
}
body.rootium-whmcs-rootium #main-body :is(.bg-white,.white-bg,.white-background,.ri-light-surface)
  :is(h1,h2,h3,h4,h5,h6,p,span,strong,b,label,li,dt,dd,small,th,td,.text-dark,.text-body,.text-muted,.text-secondary) {
  color:var(--ri-light-ink)!important;
}
body.rootium-whmcs-rootium #main-body :is(.bg-white,.white-bg,.white-background,.ri-light-surface) a:not(.btn) {
  color:var(--ri-light-link)!important;
}
body.rootium-whmcs-rootium #main-body :is(.bg-white,.white-bg,.white-background,.ri-light-surface)
  :is(input,select,textarea) {background:#fff!important;color:#15313e!important;-webkit-text-fill-color:#15313e!important;color-scheme:light}
/* Differentiate disabled from unavailable without losing readability. */
body.rootium-whmcs-rootium :is(.btn:disabled,.btn.disabled,[aria-disabled="true"]) {opacity:.72}
body.rootium-whmcs-rootium .ri-quick-link:focus-visible,
body.rootium-whmcs-rootium .ri-service-toolbar a:focus-visible {outline:3px solid var(--ri-focus)!important;outline-offset:3px}
@media(max-width:767px){
  body.rootium-whmcs-rootium #main-body {font-size:15px;line-height:1.65}
  body.rootium-whmcs-rootium :is(.table-list,.dataTable) {min-width:610px}
  body.rootium-whmcs-rootium :is(.table-container,.dataTables_wrapper,.table-responsive) {max-width:100%;overflow-x:auto}
  body.rootium-whmcs-rootium :is(.form-control,.custom-select,.btn,.input-group-text) {min-height:44px}
  body.rootium-whmcs-rootium .ri-service-toolbar a {min-height:44px}
}

body.rootium-whmcs-rootium #tableServicesList .ri-service-name {color:#f0faf7!important;font-weight:750;font-size:15px}
