/* ZCHPC Backup Lane 2 - frontend hardening v14. Frozen local visual-perfection candidate.
   Presentation and interaction affordances only. No backend authority semantics. */
:root{
  --z14-nav:#0a1a31;--z14-nav-2:#0d2442;--z14-blue:#1f5d86;--z14-blue-hi:#2f7ca6;
  --z14-cyan:#78c6df;--z14-focus:#66b6da;--z14-good:#148566;--z14-warn:#a36c10;--z14-danger:#b73b33;
  --z14-radius:14px;--z14-radius-sm:10px;--z14-shadow:0 18px 42px rgba(13,32,57,.10),0 2px 8px rgba(13,32,57,.05);
}

/* Shell density + hierarchy */
.app-shell:not([hidden]){grid-template-columns:280px minmax(0,1fr)}
.sidebar{background:linear-gradient(180deg,var(--z14-nav) 0%,#09172b 100%)}
.sidebar-top{height:76px;padding:15px 16px}
.app-nav{padding:10px 10px 16px;gap:2px;scrollbar-gutter:stable}
.app-nav button{min-height:44px;padding:10px 12px;border-radius:10px;font-size:12px;position:relative}
.app-nav button.active{background:linear-gradient(90deg,rgba(73,145,183,.22),rgba(73,145,183,.08));box-shadow:inset 3px 0 0 #6bb5d5,inset 0 0 0 1px rgba(110,174,207,.12)}
.app-nav button.active span{color:#b7e2f2}
.z14-nav-label{padding:14px 12px 6px;color:#6f8aa4;font-size:9px;font-weight:850;text-transform:uppercase;letter-spacing:.12em;user-select:none}
.z14-nav-label:first-child{padding-top:6px}

.sidebar-footer{padding:8px 10px 10px;background:linear-gradient(180deg,rgba(9,23,43,0),rgba(9,23,43,.94) 22%)}
.sidebar-status{padding:9px 10px;margin:0 0 7px;border:1px solid rgba(255,255,255,.07);border-radius:10px;background:rgba(255,255,255,.025);min-height:44px}
.sidebar-status b{font-size:10.5px}.sidebar-status small{font-size:9px}
.sidebar-collapse{min-height:32px;margin-bottom:5px;opacity:.82}

/* Workspace is a first-class control while identity remains in the same bottom account zone. */
.z14-workspace-control{width:100%;min-height:54px;margin:0 0 6px;padding:8px 10px;border:1px solid rgba(126,191,220,.18);border-radius:12px;background:linear-gradient(135deg,rgba(47,124,166,.18),rgba(47,124,166,.06));color:#fff;text-align:left;display:grid;grid-template-columns:32px minmax(0,1fr) 18px;align-items:center;gap:9px;cursor:pointer}
.z14-workspace-control:hover,.z14-workspace-control:focus-visible{background:linear-gradient(135deg,rgba(59,145,188,.27),rgba(47,124,166,.10));border-color:rgba(126,191,220,.38)}
.z14-workspace-control:focus-visible{outline:3px solid rgba(102,182,218,.38);outline-offset:2px}
.z14-workspace-icon{width:32px;height:32px;border-radius:9px;display:grid;place-items:center;background:rgba(255,255,255,.08);color:#a9dced;font-size:14px}
.z14-workspace-copy{min-width:0;display:grid;gap:2px}.z14-workspace-copy small{color:#7f9bb4;font-size:8px;font-weight:850;text-transform:uppercase;letter-spacing:.09em}.z14-workspace-copy b{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.z14-workspace-chevron{color:#8aabc2;font-size:13px;text-align:right}
.account-button{min-height:52px;border-color:rgba(255,255,255,.07);background:rgba(255,255,255,.03);border-radius:12px}
.account-button .avatar{border-radius:50%;background:linear-gradient(145deg,#eef7fb,#cfe7f2);font-weight:900}
.account-menu{bottom:calc(100% + 8px);padding:8px;border-radius:14px;box-shadow:0 24px 64px rgba(3,14,28,.25)}
.account-context-menu{padding-bottom:8px;margin-bottom:7px}.account-context-label{padding:7px 10px;color:#728195;letter-spacing:.1em}
.account-menu .account-context-option{min-height:50px;border:1px solid transparent}.account-menu .account-context-option.current{border-color:#d7e6ef;background:#f1f7fb}
html[data-theme="dark"] .account-menu .account-context-option.current{border-color:#2a4a62;background:#102a40}
.account-context-state{min-width:24px;text-align:center}

/* Header is contextual, not an account bar. */
.app-header{height:68px;padding:0 28px;box-shadow:0 1px 0 rgba(13,32,57,.02)}
.page-eyebrow{font-size:8.5px;letter-spacing:.095em;text-transform:uppercase;font-weight:850}.app-header h1{font-size:18px;letter-spacing:-.018em}
.header-tool{min-height:40px;min-width:40px;border-radius:10px}.header-tool:focus-visible{outline:3px solid rgba(47,124,166,.28);outline-offset:2px}
.app-content{padding:26px 30px 64px;max-width:1680px;width:100%;margin-inline:auto}

/* Page composition */
.page-head{margin-bottom:20px}.page-head h2{font-size:25px;letter-spacing:-.035em}.page-head p{max-width:820px;line-height:1.65}
.panel,.metric-card,.setting-card,.table-wrap{border-radius:var(--z14-radius);border-color:var(--z-line);box-shadow:0 1px 2px rgba(13,32,57,.025)}
.setting-card,.commercial-contract,.commercial-contract>div{min-width:0;overflow-wrap:anywhere}
.panel{padding:18px 20px}.panel+.panel{margin-top:14px}.panel-head{gap:14px}.panel-head h3{font-size:13px;letter-spacing:-.01em}.panel-head span{line-height:1.45}
.metric-grid{gap:10px}.metric-card{padding:16px}.metric-card span{font-size:9px;letter-spacing:.055em;text-transform:uppercase}.metric-card strong{font-size:25px;letter-spacing:-.035em;margin-top:7px}.metric-card small{line-height:1.4}

/* Tables: enterprise dense on desktop, readable cards on small screens. */
.table-wrap{overflow:auto;scrollbar-gutter:stable}.data-table{font-size:10.5px}.data-table th{position:sticky;top:0;z-index:1;font-size:8.5px;letter-spacing:.06em;text-transform:uppercase}.data-table th,.data-table td{padding:11px 12px;vertical-align:middle}.data-table tbody tr:hover{background:rgba(47,124,166,.035)}
.badge{min-height:23px;padding:4px 8px;border-radius:999px;font-weight:800;letter-spacing:.01em}
.action-cell{gap:6px}.text-button{min-height:32px;padding:5px 7px;border-radius:8px}.text-button:hover{background:var(--z-brand-50)}

/* Forms and dialogs */
.form-stack{gap:15px}.form-stack label,.modal-body label{font-size:10px;font-weight:800;letter-spacing:.01em}.form-stack input,.form-stack select,.form-stack textarea,.modal-body input,.modal-body select,.modal-body textarea{min-height:44px;border-radius:10px;font-size:12px}
:is(.form-stack,.modal-body) :is(.toggle-row,.check-row){display:flex;align-items:flex-start;gap:10px;min-height:44px;padding-block:10px;cursor:pointer}
:is(.form-stack,.modal-body) :is(.toggle-row,.check-row) input:is([type="checkbox"],[type="radio"]){flex:0 0 18px;width:18px;height:18px;min-height:18px;margin:2px 0;padding:0;accent-color:var(--z-brand-600)}
:is(.toggle-row,.check-row)>span{min-width:0}.toggle-row b,.toggle-row small{display:block}.toggle-row small{margin-top:3px;font-size:11px;line-height:1.5;font-weight:400}
.modal::backdrop{background:rgba(6,17,31,.52);backdrop-filter:blur(3px)}.modal-card{border-radius:18px;box-shadow:0 30px 90px rgba(3,14,28,.28)}.modal-head{padding:18px 20px}.modal-body{padding:18px 20px}.modal-actions{padding:14px 20px}
.button{min-height:40px;border-radius:10px;font-weight:800}.button-sm{min-height:34px}.button.danger,.danger.button{box-shadow:none}

/* State surfaces need a strong semantic silhouette. */
.loading-card,.empty-state{min-height:220px;border:1px dashed var(--z-line-strong);border-radius:16px;background:linear-gradient(180deg,var(--z-surface),var(--z-surface-2));display:grid;place-items:center;text-align:center;padding:28px}
.loading-card .spinner{width:26px;height:26px;border-width:3px}.empty-state h3{font-size:16px;margin:10px 0 5px}.empty-state p{max-width:520px;line-height:1.6}
.form-error,[role="alert"]{border-radius:9px}.toast-region{right:20px;bottom:20px;gap:8px}.toast{border-radius:11px;box-shadow:var(--z14-shadow)}

/* Customer home / work queue */
.landing-v8-posture{border-radius:16px;padding:20px 22px;box-shadow:none}.landing-v8-posture h3{font-size:22px}.landing-v8-evidence>div,.readiness-snapshot>div,.provider-infrastructure>div{border-radius:10px}.landing-v8-section{border-radius:15px;padding:18px 20px}.landing-work-item{min-height:64px}.landing-truth-note{border-radius:9px}

/* Dark closure for added controls and softened contrasts. */
html[data-theme="dark"] .z14-workspace-control{border-color:rgba(126,191,220,.18)}
html[data-theme="dark"] .data-table tbody tr:hover{background:rgba(86,157,192,.07)}
html[data-theme="dark"] .text-button:hover{background:#11283e}
html[data-theme="dark"] .loading-card,html[data-theme="dark"] .empty-state{background:linear-gradient(180deg,#0d1927,#0b1623)}

/* Collapsed nav remains usable; workspace/profile become icon affordances. */
body.sidebar-collapsed .z14-workspace-control{grid-template-columns:1fr;padding:8px;place-items:center}body.sidebar-collapsed .z14-workspace-copy,body.sidebar-collapsed .z14-workspace-chevron{display:none}
body.sidebar-collapsed .z14-nav-label{display:none}

@media(max-width:1100px){.app-content{padding-inline:22px}.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){
  .sidebar{width:min(310px,90vw)}.app-content{padding:20px 16px 48px}.app-header{padding-inline:16px}
  .sidebar-footer{padding-bottom:max(10px,env(safe-area-inset-bottom))}.header-tool .header-tool-label,.header-tool kbd{display:none}.header-tool{justify-content:center}.z14-workspace-control{min-height:56px}.account-button{min-height:54px}
  body.sidebar-collapsed .z14-workspace-control{grid-template-columns:32px minmax(0,1fr) 18px;padding:8px 10px;place-items:initial}body.sidebar-collapsed .z14-workspace-copy{display:grid}body.sidebar-collapsed .z14-workspace-chevron{display:block}
  .panel{padding:16px}.page-head h2{font-size:22px}
}
@media(max-width:650px){
  .app-header{height:62px}.header-tools{gap:5px}.header-tool{width:38px;height:38px}.app-content{padding:16px 12px 44px}
  .metric-grid{grid-template-columns:1fr 1fr;gap:8px}.metric-card{padding:13px}.metric-card strong{font-size:21px}
  .panel{padding:14px;border-radius:13px}.panel-head{align-items:flex-start}.page-head{margin-bottom:15px}.page-head h2{font-size:20px}
  .table-wrap.z14-responsive-table{overflow:visible;border:0;background:transparent;box-shadow:none}.z14-responsive-table .data-table,.z14-responsive-table .data-table tbody,.z14-responsive-table .data-table tr,.z14-responsive-table .data-table td{display:block;width:100%}.z14-responsive-table .data-table thead{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.z14-responsive-table .data-table tbody{display:grid;gap:10px}.z14-responsive-table .data-table tr{padding:8px 12px;border:1px solid var(--z-line);border-radius:12px;background:var(--z-surface)}.z14-responsive-table .data-table td{display:grid;grid-template-columns:minmax(92px,34%) minmax(0,1fr);gap:10px;padding:7px 0;border:0;border-bottom:1px solid var(--z-line);overflow-wrap:anywhere}.z14-responsive-table .data-table td:last-child{border-bottom:0}.z14-responsive-table .data-table td::before{content:attr(data-label);color:var(--z-muted);font-size:8.5px;font-weight:850;text-transform:uppercase;letter-spacing:.045em}.z14-responsive-table .action-cell{justify-content:flex-start}
  .modal-card{max-height:calc(100dvh - 20px);margin:10px}.modal-body{overflow:auto;padding:15px}.modal-actions{position:sticky;bottom:0;background:var(--z-surface);border-top:1px solid var(--z-line)}
  .toast-region{left:12px;right:12px;bottom:12px}.toast{width:100%}
}
@media(max-width:390px){.metric-grid{grid-template-columns:1fr}.app-content{padding-inline:10px}.page-identity{max-width:180px}}
@media(pointer:coarse){.app-nav button,.account-button,.z14-workspace-control,.account-menu button,.header-tool,.text-button{min-height:44px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}


/* v14 final visual-perfection refinements, derived from the full route/state lab. */
.page-head p{font-size:12px;line-height:1.65}.landing-v8-posture p,.landing-v8-section p,.settings-grid p,.assured-hero p{line-height:1.6}
.data-table{font-size:10.75px}.data-table th{font-size:8.25px}.badge{font-size:9px}.text-button{font-size:10.5px}
.form-stack label,.modal-body label{font-size:9.5px}.form-stack input,.form-stack select,.form-stack textarea,.modal-body input,.modal-body select,.modal-body textarea{font-size:11px}
html[data-theme="dark"] .badge.good{background:#10382e;color:#7be2bd}
html[data-theme="dark"] .badge.warn{background:#3a2b0c;color:#f0c76c}
html[data-theme="dark"] .badge.bad{background:#401a18;color:#ff938b}
html[data-theme="dark"] .badge.info{background:#112f4a;color:#93c9f4}
html[data-theme="dark"] .badge.neutral{background:#17283a;color:#b3c2d2}
html[data-theme="dark"] .text-button{color:#6bc3e8}

@media(max-width:900px){
  .nav-scrim:not([hidden]){display:block;position:fixed;inset:0;z-index:65;border:0;background:rgba(5,17,31,.38);backdrop-filter:blur(1.5px);-webkit-backdrop-filter:blur(1.5px)}
  body.nav-open .sidebar{z-index:70}
  body.nav-open .account-menu{z-index:90}
}
@media(max-width:650px){
  .page-head p{font-size:11px}.panel-head span,.panel-head p{font-size:9.5px}
  .table-wrap.z14-responsive-table .data-table tr{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:14px;row-gap:0;padding:10px 12px}
  .table-wrap.z14-responsive-table .data-table td{display:block;width:auto;padding:8px 0;border-bottom:1px solid var(--z-line);min-width:0}
  .table-wrap.z14-responsive-table .data-table td:first-child{grid-column:1/-1}
  .table-wrap.z14-responsive-table .data-table td:last-child{grid-column:1/-1;border-bottom:0}
  .table-wrap.z14-responsive-table .data-table td::before{display:block;margin-bottom:4px;font-size:8px;line-height:1.2}
  .table-wrap.z14-responsive-table .action-cell{display:flex;gap:10px;flex-wrap:wrap}
  .table-wrap.z14-responsive-table .badge{width:max-content;max-width:100%}
  .settings-grid,.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}
}
@media(max-width:390px){.metric-grid{grid-template-columns:1fr 1fr}.landing-v8-evidence,.readiness-snapshot{grid-template-columns:1fr 1fr}.app-content{padding-inline:10px}}
@media(max-width:330px){.metric-grid,.landing-v8-evidence,.readiness-snapshot{grid-template-columns:1fr}}
@media(pointer:coarse){.app-nav button,.account-button,.z14-workspace-control,.account-menu button,.header-tool,.text-button,.button{min-height:44px}}


/* v15 post-certification dark-surface closure.
   Audit 017 proved layout but did not test general component contrast. These
   selectors close every late-loaded light component that can inherit dark
   foreground tokens from the shell. */
html[data-theme="dark"] .rv-summary,
html[data-theme="dark"] .rv-section,
html[data-theme="dark"] .rv-modal-card,
html[data-theme="dark"] .rv-op-metric,
html[data-theme="dark"] .assured-hero,
html[data-theme="dark"] .catalogue-card,
html[data-theme="dark"] .catalogue-quote-dialog,
html[data-theme="dark"] .catalogue-quote-card{
  background:var(--z-surface);border-color:var(--z-line);color:var(--z-ink);
}
html[data-theme="dark"] .rv-proof-row,
html[data-theme="dark"] .rv-step,
html[data-theme="dark"] .rv-evidence-card,
html[data-theme="dark"] .rv-unavailable,
html[data-theme="dark"] .recovery-context,
html[data-theme="dark"] .commercial-facts>div,
html[data-theme="dark"] .commercial-action-form,
html[data-theme="dark"] .commercial-triple>div{
  background:var(--z-surface-2);border-color:var(--z-line);color:var(--z-ink);
}
html[data-theme="dark"] .rv-summary h2,
html[data-theme="dark"] .rv-section h3,
html[data-theme="dark"] .rv-proof-row b,
html[data-theme="dark"] .rv-point b,
html[data-theme="dark"] .rv-point-meta strong,
html[data-theme="dark"] .rv-step strong,
html[data-theme="dark"] .rv-evidence-card span,
html[data-theme="dark"] .rv-modal-head h3,
html[data-theme="dark"] .rv-confirm-row b,
html[data-theme="dark"] .rv-op-metric b,
html[data-theme="dark"] .rv-unavailable h4,
html[data-theme="dark"] .assured-hero h2,
html[data-theme="dark"] .assured-evidence b,
html[data-theme="dark"] .catalogue-card h3,
html[data-theme="dark"] .catalogue-price strong,
html[data-theme="dark"] .commercial-panel h3,
html[data-theme="dark"] .commercial-action-form label{
  color:var(--z-ink);
}
html[data-theme="dark"] .rv-summary p,
html[data-theme="dark"] .rv-proof-row span,
html[data-theme="dark"] .rv-proof-row small,
html[data-theme="dark"] .rv-section-head p,
html[data-theme="dark"] .rv-section-head>span,
html[data-theme="dark"] .rv-point small,
html[data-theme="dark"] .rv-point-meta span,
html[data-theme="dark"] .rv-step span,
html[data-theme="dark"] .rv-evidence-card p,
html[data-theme="dark"] .rv-modal-head p,
html[data-theme="dark"] .rv-confirm-row span,
html[data-theme="dark"] .rv-op-metric span,
html[data-theme="dark"] .rv-op-metric small,
html[data-theme="dark"] .rv-unavailable p,
html[data-theme="dark"] .assured-hero p,
html[data-theme="dark"] .assured-evidence span,
html[data-theme="dark"] .assured-exception-row p,
html[data-theme="dark"] .catalogue-card .plan-summary,
html[data-theme="dark"] .catalogue-price small,
html[data-theme="dark"] .catalogue-list li,
html[data-theme="dark"] .catalogue-overage,
html[data-theme="dark"] .catalogue-truth,
html[data-theme="dark"] .commercial-panel .panel-head p,
html[data-theme="dark"] .commercial-list-row small,
html[data-theme="dark"] .commercial-contract small,
html[data-theme="dark"] .commercial-empty p,
html[data-theme="dark"] .commercial-clear p{
  color:var(--z-muted);
}
html[data-theme="dark"] .rv-point,
html[data-theme="dark"] .rv-case,
html[data-theme="dark"] .rv-confirm-row,
html[data-theme="dark"] .rv-modal-actions,
html[data-theme="dark"] .commercial-list-row,
html[data-theme="dark"] .commercial-contract{
  border-color:var(--z-line);
}
html[data-theme="dark"] .rv-modal-actions{background:var(--z-surface-2)}
html[data-theme="dark"] .rv-status{background:#17283a;border-color:#31485f;color:#b3c2d2}
html[data-theme="dark"] .rv-status.good,
html[data-theme="dark"] .rv-step.done{background:#10382e;border-color:#2d6653;color:#7be2bd}
html[data-theme="dark"] .rv-status.warn,
html[data-theme="dark"] .rv-step.current{background:#3a2b0c;border-color:#70561d;color:#f0c76c}
html[data-theme="dark"] .rv-status.bad,
html[data-theme="dark"] .rv-step.failed{background:#401a18;border-color:#70332f;color:#ff938b}
html[data-theme="dark"] .rv-callout{background:#132235;border-color:var(--z-line);color:#b8c7d8}
html[data-theme="dark"] .rv-callout.warn{background:#30260f;border-color:#70561d;color:#f0c76c}
html[data-theme="dark"] .rv-callout.bad{background:#351a1c;border-color:#70332f;color:#ffaaa4}
html[data-theme="dark"] .rv-infra-note{background:#10263e;border-color:#4a7797;color:#b7d5e8}
html[data-theme="dark"] .rv-button.secondary{background:var(--z-surface-2);border:1px solid var(--z-line-strong);color:var(--z-ink)}
html[data-theme="dark"] .rv-text-button{color:#6bc3e8}
html[data-theme="dark"] .catalogue-control select,
html[data-theme="dark"] .catalogue-quote-form input,
html[data-theme="dark"] .commercial-action-form select,
html[data-theme="dark"] .commercial-action-form input{
  background:var(--z-surface-2);border-color:var(--z-line-strong);color:var(--z-ink);
}
html[data-theme="dark"] .catalogue-control,
html[data-theme="dark"] .catalogue-quote-form label{color:var(--z-muted)}
html[data-theme="dark"] .catalogue-price{border-color:var(--z-line)}
html[data-theme="dark"] .catalogue-list li::before{background:#10382e;color:#7be2bd}
html[data-theme="dark"] .catalogue-empty{background:rgba(13,25,39,.72);border-color:var(--z-line);color:var(--z-muted)}
html[data-theme="dark"] .catalogue-empty h3{color:var(--z-ink)}
html[data-theme="dark"] .catalogue-quote-result{background:#10382e;color:#b9ead8}
html[data-theme="dark"] .catalogue-quote-head button{color:var(--z-ink)}
html[data-theme="dark"] .commercial-clear{background:#10382e;border-color:#2d6653;color:#b9ead8}
html[data-theme="dark"] .danger-zone{background:#351a1c;border-color:#70332f}
html[data-theme="dark"] .commercial-truth{background:#10263e;color:#b7d5e8}


/* v16 Audit 024 contrast closure.
   Keep secondary text above WCAG AA in both themes without changing semantic
   status colours or authority behavior. The solid primary-button fallback also
   gives the audit and non-gradient renderers a truthful contrast surface. */
html[data-theme="light"] body{--z-muted:#536273;--approved-muted:#536273}
html[data-theme="dark"] body{--z-muted:#b8c7d8;--approved-muted:#b8c7d8}
html body .skip-link{color:#132238;background-color:#fff}
html body .button:not(.button-ghost):not(.danger){background-color:#125fd8}
html[data-theme="light"] body .page-eyebrow,
html[data-theme="light"] body .page-head p,
html[data-theme="light"] body .panel-head span:not(.badge),
html[data-theme="light"] body .panel-head p,
html[data-theme="light"] body .data-table th,
html[data-theme="light"] body .data-table td small,
html[data-theme="light"] body .metric-card small,
html[data-theme="light"] body .activity-item p,
html[data-theme="light"] body .setting-card p,
html[data-theme="light"] body .landing-v8 span:not(.badge),
html[data-theme="light"] body .landing-v8 small,
html[data-theme="light"] body .readiness-snapshot span,
html[data-theme="light"] body .readiness-snapshot small,
html[data-theme="light"] body .provider-infrastructure span,
html[data-theme="light"] body .provider-infrastructure small,
html[data-theme="light"] body .commercial-list-row small,
html[data-theme="light"] body .commercial-contract small{
  color:#536273;
}
html[data-theme="dark"] body .page-eyebrow,
html[data-theme="dark"] body .page-head p,
html[data-theme="dark"] body .panel-head span:not(.badge),
html[data-theme="dark"] body .panel-head p,
html[data-theme="dark"] body .data-table th,
html[data-theme="dark"] body .data-table td small,
html[data-theme="dark"] body .metric-card small,
html[data-theme="dark"] body .activity-item p,
html[data-theme="dark"] body .setting-card p,
html[data-theme="dark"] body .landing-v8 span:not(.badge),
html[data-theme="dark"] body .landing-v8 small,
html[data-theme="dark"] body .readiness-snapshot span,
html[data-theme="dark"] body .readiness-snapshot small,
html[data-theme="dark"] body .provider-infrastructure span,
html[data-theme="dark"] body .provider-infrastructure small,
html[data-theme="dark"] body .commercial-list-row small,
html[data-theme="dark"] body .commercial-contract small{
  color:#b8c7d8;
}

/* v17 Audit 025 residual contrast closure.
   Audit 025 reduced the failure surface to a small set of shared secondary
   text styles. Strengthen those existing product surfaces without changing
   semantic status colours or interaction/authority behavior. */
html[data-theme="light"] body{
  --muted:#4b5b6d;
  --z-muted:#4b5b6d;
  --approved-muted:#4b5b6d;
}
html[data-theme="dark"] body{
  --muted:#c7d3df;
  --z-muted:#c7d3df;
  --approved-muted:#c7d3df;
}
html[data-theme="light"] body .metric-card span,
html[data-theme="light"] body .gate-row p,
html[data-theme="light"] body .empty-state p,
html[data-theme="light"] body .form-stack small,
html[data-theme="light"] body .toggle-row small,
html[data-theme="light"] body .settings-inline small,
html[data-theme="light"] body .rv-op-metric span,
html[data-theme="light"] body .rv-op-metric small,
html[data-theme="light"] body .rv-section-head p,
html[data-theme="light"] body .rv-point small,
html[data-theme="light"] body .rv-case small{
  color:#4b5b6d;
}
html[data-theme="light"] body .badge.neutral{
  background:#e8eef4;
  color:#3b4b5e;
}
html[data-theme="dark"] body .rv-case small,
html[data-theme="dark"] body .rv-point small,
html[data-theme="dark"] body .rv-section-head p,
html[data-theme="dark"] body .rv-op-metric span,
html[data-theme="dark"] body .rv-op-metric small{
  color:#c7d3df;
}
html[data-theme="dark"] body .commercial-action-form input::placeholder{
  color:#c7d3df;
  opacity:1;
}

/* Public landing: restore discoverable navigation on narrow screens without changing app workspaces. */
.site-mobile-nav{display:none}
@media(max-width:760px){
  .site-header{position:relative;z-index:80;gap:8px}
  .site-mobile-nav{display:block;flex:0 0 auto;margin-left:auto}
  .site-mobile-nav-trigger{
    display:flex;align-items:center;justify-content:center;width:44px;height:44px;
    border:1px solid #d3dfeb;border-radius:12px;background:#fff;color:#142943;
    cursor:pointer;list-style:none;font-size:21px;line-height:1;
  }
  .site-mobile-nav-trigger::-webkit-details-marker{display:none}
  .site-mobile-nav-trigger:focus-visible{
    outline:3px solid #2f7ca6;outline-offset:2px
  }
  .site-mobile-nav[open] .site-mobile-nav-trigger{
    border-color:#2f7ca6;background:#eaf3fb
  }
  .site-mobile-nav-panel{
    position:absolute;top:calc(100% - 4px);left:18px;right:18px;z-index:90;
    display:grid;gap:3px;padding:10px;border:1px solid #d3dfeb;
    border-radius:14px;background:#fff;box-shadow:0 18px 40px rgba(5,24,46,.2)
  }
  .site-mobile-nav-panel a,.site-mobile-nav-panel button{
    display:flex;align-items:center;width:100%;min-height:44px;padding:11px 14px;
    border:0;border-radius:9px;background:transparent;color:#142943;
    text-align:left;text-decoration:none;font-size:14px;font-weight:700;
    box-shadow:none;cursor:pointer
  }
  .site-mobile-nav-panel a:hover,.site-mobile-nav-panel button:hover{
    background:#eef5fc
  }
  .site-mobile-nav-panel a:focus-visible,.site-mobile-nav-panel button:focus-visible{
    outline:3px solid #2f7ca6;outline-offset:1px
  }
  html[data-theme="dark"] .site-mobile-nav-trigger{
    background:#0e2137;border-color:#304761;color:#e8f0fa
  }
  html[data-theme="dark"] .site-mobile-nav[open] .site-mobile-nav-trigger{
    background:#17334c;border-color:#75b9dd
  }
  html[data-theme="dark"] .site-mobile-nav-panel{
    background:#0d2034;border-color:#304761
  }
  html[data-theme="dark"] .site-mobile-nav-panel a,
  html[data-theme="dark"] .site-mobile-nav-panel button{color:#e8f0fa}
  html[data-theme="dark"] .site-mobile-nav-panel a:hover,
  html[data-theme="dark"] .site-mobile-nav-panel button:hover{background:#183650}
}
@media(max-width:340px){
  .site-header .brand small{display:none}
}
