
/* ==========================================================================
   DB Hosting — NovaHost Rebuild
   Original site-wide presentation for public, customer, checkout and admin UI.
   ========================================================================== */
:root{
  --nh-bg:#0d131a;
  --nh-bg2:#121a23;
  --nh-bg3:#182330;
  --nh-panel:#151f2a;
  --nh-line:#24364a;
  --nh-line2:#34516c;
  --nh-blue:#4a9ee8;
  --nh-blue2:#79c7f1;
  --nh-ink:#eef5fb;
  --nh-muted:#91a8bb;
  --nh-muted2:#617689;
  --nh-green:#4fd39a;
  --nh-warn:#f2b84b;
  --nh-red:#ed6a6a;
  --nh-radius:16px;
  --nh-shadow:0 24px 70px rgba(0,0,0,.28);
}

/* Site foundation */
body.nh-public,body.nh-app,body.nh-admin{
  background:var(--nh-bg)!important;
  color:var(--nh-ink)!important;
  font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
body.nh-public a,body.nh-app a,body.nh-admin a{transition:.2s ease}
body.nh-public .qx-wrap,body.nh-app .qx-wrap,body.nh-admin .qx-wrap,
body.nh-public .db-universal-nav,body.nh-app .db-universal-nav,body.nh-admin .db-universal-nav{
  width:min(1220px,calc(100% - 40px));
}

/* Unified navigation */
body.nh-public .db-universal-header,
body.nh-app .db-universal-header,
body.nh-admin .db-universal-header{
  background:rgba(13,19,26,.96)!important;
  border-bottom:1px solid var(--nh-line)!important;
  backdrop-filter:blur(18px);
}
body.nh-public .db-universal-brand,
body.nh-app .db-universal-brand,
body.nh-admin .db-universal-brand{color:#fff!important}
body.nh-public .db-universal-mark,
body.nh-app .db-universal-mark,
body.nh-admin .db-universal-mark{
  background:linear-gradient(135deg,var(--nh-blue),#2c6fa8)!important;
  color:#07131f!important;
  box-shadow:0 8px 26px rgba(74,158,232,.18);
}
body.nh-public .db-nav-menu a,
body.nh-app .db-nav-menu a,
body.nh-admin .db-nav-menu a{color:#aebfd0!important}
body.nh-public .db-nav-menu a:hover,
body.nh-app .db-nav-menu a:hover,
body.nh-admin .db-nav-menu a:hover{background:#182432!important;color:#fff!important}
body.nh-public .db-nav-menu .db-nav-primary,
body.nh-app .db-nav-menu .db-nav-primary,
body.nh-admin .db-nav-menu .db-nav-primary{
  background:var(--nh-blue)!important;color:#07131f!important
}
body.nh-public .db-nav-toggle,
body.nh-app .db-nav-toggle,
body.nh-admin .db-nav-toggle{
  background:#151f2a!important;border-color:#31475d!important;color:#fff!important
}

/* New NovaHost homepage */
.nh-hero{
  position:relative;
  overflow:hidden;
  padding:100px 0 86px;
  background:
    radial-gradient(circle at 82% 12%,rgba(74,158,232,.14),transparent 28%),
    linear-gradient(145deg,#0d131a,#101822 58%,#111d29);
  border-bottom:1px solid var(--nh-line);
}
.nh-hero:before{
  content:"";position:absolute;inset:0;
  background-image:
    linear-gradient(rgba(74,158,232,.055) 1px,transparent 1px),
    linear-gradient(90deg,rgba(74,158,232,.055) 1px,transparent 1px);
  background-size:58px 58px;
  mask-image:linear-gradient(90deg,#000,transparent 72%);
  pointer-events:none;
}
.nh-hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:1.02fr .98fr;gap:68px;align-items:center}
.nh-eyebrow{
  display:inline-flex;align-items:center;gap:9px;
  padding:7px 12px;border-radius:999px;
  background:rgba(74,158,232,.09);border:1px solid rgba(74,158,232,.25);
  color:var(--nh-blue2);font-size:12px;font-weight:800;letter-spacing:.07em;text-transform:uppercase;
}
.nh-eyebrow:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--nh-green)}
.nh-hero h1{
  margin:22px 0 22px;
  max-width:760px;
  font-size:clamp(52px,6.8vw,82px);
  line-height:.98;letter-spacing:-.062em;
  color:#f7fbff;
}
.nh-hero h1 span{color:var(--nh-blue2)}
.nh-lead{max-width:650px;color:#9db2c4;font-size:18px;line-height:1.75}
.nh-hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin:30px 0 28px}
.nh-btn{
  display:inline-flex;align-items:center;justify-content:center;
  padding:13px 19px;border-radius:10px;font-weight:850;text-decoration:none;
  border:1px solid var(--nh-line2);color:#d9e7f1;
}
.nh-btn-primary{background:var(--nh-blue);border-color:var(--nh-blue);color:#07131f}
.nh-btn-primary:hover{background:var(--nh-blue2);border-color:var(--nh-blue2)}
.nh-btn-secondary:hover{border-color:var(--nh-blue);color:var(--nh-blue2)}
.nh-proof{display:flex;gap:18px;flex-wrap:wrap;color:#839aae;font-size:13px}
.nh-proof span:before{content:"✓";color:var(--nh-green);font-weight:900;margin-right:7px}

/* Hosting command-centre visual */
.nh-console{
  background:var(--nh-bg2);border:1px solid var(--nh-line);border-radius:20px;
  box-shadow:var(--nh-shadow);overflow:hidden;
}
.nh-console-top{display:flex;justify-content:space-between;align-items:center;padding:14px 18px;background:#17212c;border-bottom:1px solid var(--nh-line)}
.nh-console-dots{display:flex;gap:6px}.nh-console-dots i{width:9px;height:9px;border-radius:50%;background:#415469}
.nh-live{font-size:11px;color:var(--nh-green);font-weight:800}
.nh-console-body{padding:18px}
.nh-console-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.nh-console-stat{background:var(--nh-bg3);border:1px solid var(--nh-line);border-radius:12px;padding:14px}
.nh-console-stat small{display:block;color:var(--nh-muted2);font-size:10px;text-transform:uppercase;letter-spacing:.08em}
.nh-console-stat strong{display:block;font-size:24px;margin:4px 0 0;color:#fff}
.nh-console-stat em{display:block;color:var(--nh-green);font-style:normal;font-size:10px}
.nh-console-main{display:grid;grid-template-columns:1.35fr .65fr;gap:10px;margin-top:10px}
.nh-activity,.nh-health{background:var(--nh-bg3);border:1px solid var(--nh-line);border-radius:12px;padding:15px}
.nh-activity-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}
.nh-activity-head strong{font-size:13px}.nh-activity-head span{font-size:10px;color:var(--nh-blue2)}
.nh-bars{height:120px;display:flex;align-items:flex-end;gap:7px}
.nh-bars i{flex:1;border-radius:4px 4px 0 0;background:linear-gradient(180deg,var(--nh-blue),rgba(74,158,232,.18));border-top:2px solid var(--nh-blue2)}
.nh-health-row{display:flex;justify-content:space-between;align-items:center;padding:9px 0;border-bottom:1px solid var(--nh-line);font-size:11px}
.nh-health-row:last-child{border-bottom:0}.nh-health-row span{color:var(--nh-muted)}.nh-health-row b{color:var(--nh-green)}
.nh-recent{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:10px}
.nh-recent-card{display:flex;justify-content:space-between;gap:12px;background:#111923;border:1px solid var(--nh-line);border-radius:10px;padding:12px}
.nh-recent-card small{display:block;color:var(--nh-muted2)}.nh-recent-card strong{font-size:12px}.nh-recent-card span{font-size:11px;color:var(--nh-green)}

/* Service strip */
.nh-strip{background:#111821;border-bottom:1px solid var(--nh-line)}
.nh-strip-grid{display:grid;grid-template-columns:repeat(4,1fr)}
.nh-strip-item{padding:19px 20px;border-right:1px solid var(--nh-line)}
.nh-strip-item:last-child{border-right:0}
.nh-strip-item small{display:block;color:var(--nh-muted2);text-transform:uppercase;letter-spacing:.08em;font-size:10px}
.nh-strip-item strong{display:block;margin-top:3px;color:#e9f2f9;font-size:13px}

/* Feature architecture */
.nh-section{padding:92px 0;background:var(--nh-bg)}
.nh-section.alt{background:#111821;border-top:1px solid var(--nh-line);border-bottom:1px solid var(--nh-line)}
.nh-section-head{max-width:720px;margin-bottom:38px}
.nh-kicker{color:var(--nh-blue);font-size:11px;text-transform:uppercase;letter-spacing:.14em;font-weight:900}
.nh-section h2{color:#f3f8fc;font-size:clamp(36px,4vw,54px);line-height:1.05;letter-spacing:-.045em;margin:9px 0 13px}
.nh-section-head p{color:var(--nh-muted);font-size:17px}
.nh-feature-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.nh-feature-card{
  min-height:230px;background:var(--nh-panel);border:1px solid var(--nh-line);border-radius:16px;padding:22px;
  transition:transform .25s ease,border-color .25s ease,background .25s ease;
}
.nh-feature-card:hover{transform:translateY(-4px);border-color:var(--nh-line2);background:#182432}
.nh-feature-icon{width:42px;height:42px;border-radius:11px;background:rgba(74,158,232,.1);border:1px solid rgba(74,158,232,.2);display:grid;place-items:center;color:var(--nh-blue);font-weight:900;margin-bottom:34px}
.nh-feature-card h3{color:#edf5fb;margin:0 0 8px;font-size:19px}.nh-feature-card p{color:#8298aa;margin:0;font-size:14px}

/* Control centre section */
.nh-control-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:60px;align-items:center}
.nh-control-list{display:flex;flex-direction:column;gap:10px;margin-top:24px}
.nh-control-item{background:#151f2a;border:1px solid var(--nh-line);border-radius:12px;padding:15px 16px}
.nh-control-item strong{display:block;color:#e9f2f9}.nh-control-item span{display:block;color:#8298aa;font-size:13px;margin-top:3px}
.nh-control-screen{background:#0f161f;border:1px solid var(--nh-line);border-radius:18px;box-shadow:var(--nh-shadow);overflow:hidden}
.nh-control-screen-head{padding:14px 18px;background:#17212c;border-bottom:1px solid var(--nh-line);display:flex;justify-content:space-between}
.nh-control-screen-body{padding:18px}
.nh-control-row{display:grid;grid-template-columns:1.2fr .8fr .8fr;gap:10px;margin-bottom:10px}
.nh-control-box{background:#182330;border:1px solid var(--nh-line);border-radius:11px;padding:14px}
.nh-control-box small{color:var(--nh-muted2);display:block}.nh-control-box strong{color:#fff;font-size:15px}.nh-control-box b{color:var(--nh-green);font-size:11px}

/* Existing sections restyled */
body.nh-public .qx-section{background:var(--nh-bg)!important;color:var(--nh-ink)!important}
body.nh-public .qx-soft{background:#111821!important}
body.nh-public .qx-kicker{color:var(--nh-blue)!important}
body.nh-public .qx-heading{color:#f3f8fc!important}
body.nh-public .qx-sub{color:var(--nh-muted)!important}
body.nh-public .qx-price{
  background:var(--nh-panel)!important;border-color:var(--nh-line)!important;color:var(--nh-ink)!important;
  border-radius:16px!important;box-shadow:0 14px 34px rgba(0,0,0,.15)!important;
}
body.nh-public .qx-price.featured{
  background:#192633!important;border:1px solid var(--nh-blue)!important;transform:none!important;
  box-shadow:0 18px 46px rgba(74,158,232,.1)!important
}
body.nh-public .qx-price h3,body.nh-public .qx-cost{color:#fff!important}
body.nh-public .qx-price li,body.nh-public .qx-price.featured li{color:#92a8ba!important}
body.nh-public .qx-price .qx-primary,body.nh-public .qx-price.featured .qx-primary{
  background:var(--nh-blue)!important;color:#07131f!important;border-color:var(--nh-blue)!important
}
body.nh-public .qx-badge{background:rgba(74,158,232,.12)!important;color:var(--nh-blue2)!important}
body.nh-public .qx-web-card{
  background:var(--nh-panel)!important;border-color:var(--nh-line)!important;color:#fff!important;border-radius:16px!important
}
body.nh-public .qx-web-image,body.nh-public .qx-web-card:nth-child(2) .qx-web-image{
  background:linear-gradient(145deg,#102536,#1b4f72)!important
}
body.nh-public .qx-browser{background:#0e151d!important;border-color:#38536b!important}
body.nh-public .qx-browser-body{background:#16212c!important;color:#dce9f3!important}
body.nh-public .qx-web-content h3{color:#f1f6fa!important}
body.nh-public .qx-web-content p{color:#8fa5b7!important}
body.nh-public .qx-web-content .qx-web-cart-btn{
  background:var(--nh-blue)!important;border-color:var(--nh-blue)!important;color:#07131f!important
}
body.nh-public .qx-special{background:#0b1117!important}
body.nh-public .qx-code-window{background:#0b1117!important;border-color:var(--nh-line)!important}
body.nh-public .qx-form{
  background:var(--nh-panel)!important;border-color:var(--nh-line)!important;box-shadow:none!important
}
body.nh-public .qx-form input,body.nh-public .qx-form textarea,body.nh-public .qx-form select{
  background:#0f171f!important;border-color:#31475b!important;color:#eef5fb!important
}

/* Inner public pages */
body.nh-public .qx-page-hero{
  background:
    radial-gradient(circle at 84% 12%,rgba(74,158,232,.12),transparent 28%),
    linear-gradient(145deg,#0d131a,#111b26)!important;
  color:#eef5fb!important;border-color:var(--nh-line)!important
}
body.nh-public .qx-page-hero h1{color:#f5f9fc!important}
body.nh-public .qx-page-hero p{color:#94aabd!important}
body.nh-public .qx-page-visual,
body.nh-public .qx-template-card,
body.nh-public .qx-feature-card{
  background:var(--nh-panel)!important;border-color:var(--nh-line)!important;color:#eef5fb!important;
  box-shadow:0 12px 32px rgba(0,0,0,.16)!important
}
body.nh-public .qx-page-visual-head{color:#fff!important;border-color:var(--nh-line)!important}
body.nh-public .qx-page-mini{background:#182330!important;border-color:var(--nh-line)!important;color:#e8f1f8!important}
body.nh-public .qx-template-body h3,body.nh-public .qx-feature-card h3{color:#fff!important}
body.nh-public .qx-template-body p,body.nh-public .qx-feature-card p{color:#8da3b5!important}
body.nh-public .qx-template-actions .qx-primary{background:var(--nh-blue)!important;color:#07131f!important;border-color:var(--nh-blue)!important}
body.nh-public .qx-template-actions .qx-outline{background:transparent!important;color:#c8d8e5!important;border-color:var(--nh-line2)!important}
body.nh-public .qx-cta-band{background:#132131!important;border-color:#2b4b66!important}

/* Customer/auth/checkout/payment application pages */
body.nh-app .qx-page{background:var(--nh-bg)!important;color:#eef5fb!important}
body.nh-app .qx-page h1,body.nh-app .qx-page h2,body.nh-app .qx-page h3,body.nh-app .qx-page h4{color:#f3f8fc!important}
body.nh-app .qx-sub,body.nh-app .qx-muted,body.nh-app .admin-muted{color:var(--nh-muted)!important}
body.nh-app article,body.nh-app .qx-panel,body.nh-app .client-summary-card,
body.nh-app .billing-panel,body.nh-app .cb-card,body.nh-app .payment-option,
body.nh-app .website-package,body.nh-app .admin-card{
  background:var(--nh-panel)!important;border-color:var(--nh-line)!important;color:#eef5fb!important;
  box-shadow:0 10px 30px rgba(0,0,0,.12)!important
}
body.nh-app input,body.nh-app textarea,body.nh-app select{
  background:#0f171f!important;color:#eef5fb!important;border-color:#31475b!important
}
body.nh-app .qx-btn,body.nh-app .button,body.nh-app button:not(.db-nav-toggle){
  background:var(--nh-blue)!important;color:#07131f!important;border-color:var(--nh-blue)!important
}
body.nh-app .qx-btn-secondary{background:transparent!important;color:#cbd9e5!important;border-color:var(--nh-line2)!important}
body.nh-app table{background:var(--nh-panel)!important;color:#eef5fb!important}
body.nh-app table th{background:#182330!important;color:#a9bdcc!important;border-color:var(--nh-line)!important}
body.nh-app table td{border-color:var(--nh-line)!important}
body.nh-app code{background:#0d141b;color:var(--nh-blue2);padding:2px 5px;border-radius:5px}

/* Admin — same family, denser control-panel treatment */
body.nh-admin .qx-page{background:#0e151d!important;color:#eef5fb!important}
body.nh-admin .qx-page h1,body.nh-admin .qx-page h2,body.nh-admin .qx-page h3{color:#f3f8fc!important}
body.nh-admin .qx-sub,body.nh-admin .hm-note,body.nh-admin .admin-muted{color:#8298aa!important}
body.nh-admin .hm-card,body.nh-admin .admin-card,body.nh-admin .admin-summary-card,
body.nh-admin .qx-panel,body.nh-admin .theme-card{
  background:#151f2a!important;border-color:var(--nh-line)!important;color:#eef5fb!important;
  box-shadow:0 10px 28px rgba(0,0,0,.12)!important
}
body.nh-admin .admin-table-wrap{border-color:var(--nh-line)!important}
body.nh-admin table{color:#eaf2f8!important}
body.nh-admin table th{background:#182330!important;color:#a9bdcc!important;border-color:var(--nh-line)!important}
body.nh-admin table td{border-color:var(--nh-line)!important}
body.nh-admin input,body.nh-admin textarea,body.nh-admin select{
  background:#0f171f!important;color:#eef5fb!important;border-color:#31475b!important
}
body.nh-admin .qx-btn{background:var(--nh-blue)!important;color:#07131f!important;border-color:var(--nh-blue)!important}
body.nh-admin .qx-btn-secondary{background:transparent!important;color:#c8d7e3!important;border-color:var(--nh-line2)!important}
body.nh-admin .admin-filter{background:#151f2a!important;border-color:var(--nh-line)!important;color:#aabfce!important}
body.nh-admin .admin-filter.active{background:var(--nh-blue)!important;color:#07131f!important}
body.nh-admin .hm-badge{border-color:var(--nh-line2)!important}

/* Legal */
body.nh-public .legal-wrap{color:#dce8f1!important}
body.nh-public .legal-wrap h1,body.nh-public .legal-wrap h2{color:#f4f8fb!important}
body.nh-public .legal-note{background:#151f2a!important;border-color:var(--nh-line)!important;color:#dce8f1!important}

/* Footer */
body.nh-public .qx-footer{
  background:#090e13!important;color:#718698!important;border-top:1px solid var(--nh-line)!important
}
body.nh-public .qx-footer h4{color:#eaf2f8!important}
body.nh-public .qx-footer a{color:#869bad!important}
body.nh-public .qx-footer a:hover{color:var(--nh-blue2)!important}
body.nh-public .qx-footer .qx-brand{color:#fff!important}
body.nh-public .qx-copy{border-color:var(--nh-line)!important}

/* Consistent alerts */
body.nh-app .qx-alert,body.nh-admin .qx-alert{border-radius:12px!important}
body.nh-app .qx-alert-success,body.nh-admin .qx-alert-success{background:#10281f!important;border-color:#235f49!important;color:#a9f0cf!important}
body.nh-app .qx-alert-error,body.nh-admin .qx-alert-error{background:#2a1719!important;border-color:#67333a!important;color:#ffc4c7!important}

@media(max-width:980px){
  .nh-hero-grid,.nh-control-grid{grid-template-columns:1fr}
  .nh-feature-grid{grid-template-columns:1fr 1fr}
  .nh-console-main{grid-template-columns:1fr}
}
@media(max-width:760px){
  .nh-hero{padding:68px 0 56px}.nh-hero h1{font-size:48px}
  .nh-strip-grid{grid-template-columns:1fr 1fr}
  .nh-strip-item{border-bottom:1px solid var(--nh-line)}
  .nh-feature-grid{grid-template-columns:1fr}
  .nh-console-stats{grid-template-columns:1fr 1fr}
  .nh-recent{grid-template-columns:1fr}
}
@media(max-width:900px){
  body.nh-public .db-nav-menu,body.nh-app .db-nav-menu,body.nh-admin .db-nav-menu{
    background:#101720!important;border-color:var(--nh-line)!important
  }
}


/* V2 lifecycle alignment */
.nh-lifecycle-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
  align-items:stretch;
}
.nh-lifecycle-box{
  min-width:0;
  min-height:112px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:flex-start;
  gap:4px;
  padding:15px 14px;
  border:1px solid var(--nh-line);
  border-radius:12px;
  background:#182330;
}
.nh-lifecycle-box small{
  display:block;
  color:#91a8bb;
  font-size:10px;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.nh-lifecycle-box strong{
  display:block;
  color:#f4f8fc;
  font-size:15px;
  line-height:1.25;
  overflow-wrap:anywhere;
}
.nh-lifecycle-box span{
  display:block;
  color:#a9bdcc;
  font-size:11px;
  line-height:1.35;
}

/* Customer service timeline: keep marker/text columns aligned */
body.nh-app .v2-timeline{
  display:grid;
  gap:0;
}
body.nh-app .v2-step{
  display:grid!important;
  grid-template-columns:20px minmax(0,1fr);
  gap:12px!important;
  align-items:start;
  min-height:58px;
  padding:0 0 18px!important;
}
body.nh-app .v2-step>span{
  width:14px!important;
  height:14px!important;
  margin:4px 0 0 2px!important;
  flex:none!important;
}
body.nh-app .v2-step:not(:last-child):after{
  left:8px!important;
  top:20px!important;
  bottom:0!important;
}
body.nh-app .v2-step strong{color:#f3f8fc!important}
body.nh-app .v2-step small{color:#a9bdcc!important;margin-top:3px}

/* Admin contrast pass — tables, billing and customer management */
body.nh-admin{
  --nh-admin-text:#edf4fa;
  --nh-admin-secondary:#c2d0dc;
  --nh-admin-muted:#9fb1c0;
}
body.nh-admin .qx-page,
body.nh-admin .billing-panel,
body.nh-admin .billing-stat,
body.nh-admin .admin-card,
body.nh-admin .hm-card{
  color:var(--nh-admin-text)!important;
}
body.nh-admin p,
body.nh-admin label,
body.nh-admin td,
body.nh-admin li{
  color:var(--nh-admin-secondary)!important;
}
body.nh-admin strong,
body.nh-admin b,
body.nh-admin h1,
body.nh-admin h2,
body.nh-admin h3,
body.nh-admin h4{
  color:#f6f9fc!important;
}
body.nh-admin small,
body.nh-admin .qx-muted,
body.nh-admin .hm-note,
body.nh-admin .admin-muted,
body.nh-admin .billing-ref{
  color:var(--nh-admin-muted)!important;
}
body.nh-admin a:not(.qx-btn):not(.button):not(.db-universal-brand):not(.db-nav-menu a){
  color:#8cccf4!important;
}
body.nh-admin a:not(.qx-btn):not(.button):hover{
  color:#c9e9fb!important;
}

/* Billing page had hard-coded white cards intended for the old light theme */
body.nh-admin .billing-stat,
body.nh-admin .billing-panel{
  background:#151f2a!important;
  border-color:var(--nh-line)!important;
}
body.nh-admin .billing-stat small{color:#aabcca!important}
body.nh-admin .billing-stat strong{color:#fff!important}
body.nh-admin .billing-table{
  background:#151f2a!important;
  color:#dce7ef!important;
}
body.nh-admin .billing-table th{
  background:#1a2633!important;
  color:#c0cfdb!important;
  border-color:#304256!important;
}
body.nh-admin .billing-table td{
  color:#dce7ef!important;
  border-color:#293b4d!important;
}
body.nh-admin .billing-table tbody tr:hover{
  background:#192634!important;
}
body.nh-admin .billing-table td small{color:#a7b8c6!important}
body.nh-admin .billing-ref{color:#aebdca!important}

/* Customers table had a hard-coded white wrapper */
body.nh-admin form>div[style*="background:white"],
body.nh-admin div[style*="background:white"]{
  background:#151f2a!important;
  border-color:var(--nh-line)!important;
}
body.nh-admin table td,
body.nh-admin table td b,
body.nh-admin table td strong{
  opacity:1!important;
}
body.nh-admin table td{color:#dce7ef!important}
body.nh-admin table td small{color:#a7b8c6!important}
body.nh-admin table a{color:#8cccf4!important}
body.nh-admin input[type="checkbox"]{
  accent-color:var(--nh-blue);
}

@media(max-width:900px){
  .nh-lifecycle-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:520px){
  .nh-lifecycle-grid{grid-template-columns:1fr}
  .nh-lifecycle-box{min-height:88px}
}


/* V2 BILLING PAGE — dark text on light billing surfaces
   This intentionally overrides the previous global admin contrast pass
   only where Billing uses light cards/table backgrounds. */
body.nh-admin .billing-stat,
body.nh-admin .billing-panel{
  background:#ffffff!important;
  border-color:#d8e0e7!important;
  color:#17212b!important;
}
body.nh-admin .billing-stat small{
  color:#536273!important;
}
body.nh-admin .billing-stat strong{
  color:#111820!important;
}
body.nh-admin .billing-panel h1,
body.nh-admin .billing-panel h2,
body.nh-admin .billing-panel h3,
body.nh-admin .billing-panel h4,
body.nh-admin .billing-panel strong,
body.nh-admin .billing-panel b,
body.nh-admin .billing-panel label,
body.nh-admin .billing-panel p{
  color:#17212b!important;
}
body.nh-admin .billing-table{
  background:#ffffff!important;
  color:#1b2732!important;
}
body.nh-admin .billing-table th{
  background:#eef2f5!important;
  color:#263442!important;
  border-color:#d7dfe6!important;
}
body.nh-admin .billing-table td{
  background:#ffffff!important;
  color:#202c37!important;
  border-color:#e0e6eb!important;
}
body.nh-admin .billing-table tbody tr:hover td{
  background:#f4f7f9!important;
}
body.nh-admin .billing-table td small,
body.nh-admin .billing-ref,
body.nh-admin .billing-table .qx-muted{
  color:#536273!important;
}
body.nh-admin .billing-table a{
  color:#135f96!important;
}
body.nh-admin .billing-table a:hover{
  color:#0a4168!important;
}


/* ==========================================================================
   V2.1 NovaHost — Checkout / Cart Checkout consistency
   Overrides the older light checkout stylesheet when Nova is active.
   ========================================================================== */
body.nh-app .checkout-shell{
  background:var(--nh-bg)!important;
  color:var(--nh-ink)!important;
}
body.nh-app .checkout-hero{
  background:
    radial-gradient(circle at 82% 10%,rgba(74,158,232,.14),transparent 30%),
    linear-gradient(145deg,#0d131a,#101822 58%,#111d29)!important;
  color:var(--nh-ink)!important;
  border-bottom:1px solid var(--nh-line)!important;
}
body.nh-app .checkout-kicker{color:var(--nh-blue2)!important}
body.nh-app .checkout-hero h1,
body.nh-app .checkout-hero h2{color:#f7fbff!important}
body.nh-app .checkout-hero p{color:#9db2c4!important}
body.nh-app .checkout-step{
  background:#151f2a!important;
  border-color:#2e4358!important;
  color:#91a8bb!important;
}
body.nh-app .checkout-step.active{
  background:rgba(74,158,232,.16)!important;
  border-color:var(--nh-blue)!important;
  color:#dff2ff!important;
}

/* Main checkout cards and summary */
body.nh-app .checkout-card,
body.nh-app .payment-option,
body.nh-app .ready-card{
  background:var(--nh-panel)!important;
  border:1px solid var(--nh-line)!important;
  color:var(--nh-ink)!important;
  box-shadow:0 16px 42px rgba(0,0,0,.20)!important;
}
body.nh-app .checkout-card h2,
body.nh-app .checkout-card h3,
body.nh-app .payment-option h3,
body.nh-app .ready-card h2{
  color:#f5f9fc!important;
}
body.nh-app .checkout-card p,
body.nh-app .payment-option p,
body.nh-app .ready-card p,
body.nh-app .checkout-summary small{
  color:#a7b8c6!important;
}
body.nh-app .checkout-summary .price{
  color:#f7fbff!important;
}
body.nh-app .checkout-list li{
  color:#b4c4d1!important;
  border-color:#293b4d!important;
}

/* Checkout fields: light input surface for maximum readability */
body.nh-app .checkout-form label{
  color:#dce7ef!important;
  font-weight:750!important;
}
body.nh-app .checkout-form input,
body.nh-app .checkout-form select,
body.nh-app .checkout-form textarea{
  background:#f8fafc!important;
  color:#17212b!important;
  border:1px solid #cfd8e3!important;
  caret-color:#17212b!important;
  box-shadow:none!important;
}
body.nh-app .checkout-form input::placeholder,
body.nh-app .checkout-form textarea::placeholder{
  color:#687789!important;
  opacity:1!important;
}
body.nh-app .checkout-form input:focus,
body.nh-app .checkout-form select:focus,
body.nh-app .checkout-form textarea:focus{
  background:#fff!important;
  color:#101820!important;
  border-color:var(--nh-blue)!important;
  outline:2px solid rgba(74,158,232,.20)!important;
  outline-offset:1px!important;
}

/* Domain/product selectors inside checkout */
body.nh-app .cart-domain{
  background:#182330!important;
  border-color:#2b4055!important;
  color:#dce7ef!important;
}
body.nh-app .cart-domain p,
body.nh-app .cart-item p{
  color:#a7b8c6!important;
}
body.nh-app .cart-item{
  border-color:#293b4d!important;
}
body.nh-app .cart-price{color:#f6f9fc!important}

/* Buttons */
body.nh-app .checkout-btn{
  background:var(--nh-blue)!important;
  color:#07131f!important;
  border:1px solid var(--nh-blue)!important;
}
body.nh-app .checkout-btn:hover{
  background:var(--nh-blue2)!important;
  border-color:var(--nh-blue2)!important;
}
body.nh-app .checkout-btn.secondary{
  background:#182330!important;
  color:#dce7ef!important;
  border-color:#34516c!important;
}
body.nh-app .checkout-btn.secondary:hover{
  border-color:var(--nh-blue)!important;
  color:#fff!important;
}

/* Payment chooser details */
body.nh-app .payment-badge{
  background:rgba(74,158,232,.12)!important;
  color:var(--nh-blue2)!important;
  border:1px solid rgba(74,158,232,.22)!important;
}
body.nh-app .checkout-order-ref{
  background:#182330!important;
  color:#dff2ff!important;
  border:1px solid #2b4055!important;
}

/* Alerts remain semantically coloured but fit dark Nova surfaces */
body.nh-app .checkout-alert.error{
  background:rgba(237,106,106,.10)!important;
  border-color:rgba(237,106,106,.34)!important;
  color:#ffb4b4!important;
}
body.nh-app .checkout-alert.success{
  background:rgba(79,211,154,.10)!important;
  border-color:rgba(79,211,154,.28)!important;
  color:#9ce7c4!important;
}

/* Order-complete detail rows */
body.nh-app .detail-row{
  border-color:#293b4d!important;
}
body.nh-app .detail-row span{
  color:#9fb2c3!important;
}
body.nh-app .detail-row strong{
  color:#eef5fb!important;
}

@media(max-width:860px){
  body.nh-app .checkout-card,
  body.nh-app .payment-option,
  body.nh-app .ready-card{box-shadow:none!important}
}
