/* =========================================================
   HAWAK SYSTEM CHECK — Premium UI Enhancement Layer v2.0
   Senior UX/UI — color-correct, consistent, all 3 pages.
   ========================================================= */


/* ── DESIGN TOKENS ──────────────────────────────────────── */
:root {
  --g:   #00d68f;
  --gd:  #08765a;
  --gdim: rgba(0,214,143,.14);
  --gglow: rgba(0,214,143,.35);
  --bl:  #4a8ef5;
  --pu:  #9060e8;
  --s0:  #ffffff;
  --s1:  rgba(255,255,255,.94);
  --s2:  rgba(255,255,255,.78);
  --sb:  rgba(0,214,143,.18);
  --sbs: rgba(0,214,143,.38);
  --fd:  'Segoe UI Variable Text','Segoe UI Variable','Aptos','Segoe UI',sans-serif;
  --fh:  'Segoe UI Variable Display','Segoe UI Variable','Aptos Display','Segoe UI',sans-serif;
  --fm:  'Cascadia Mono','Cascadia Code',Consolas,monospace;
  --eb:  cubic-bezier(.22,.68,0,1.2);
  --es:  cubic-bezier(.4,0,.2,1);
  --rs:  9px; --rm: 14px; --rl: 20px; --rx: 26px;
  --sh1: 0 2px 10px rgba(0,0,0,.07);
  --sh2: 0 8px 28px rgba(0,0,0,.1);
  --sh3: 0 18px 50px rgba(0,0,0,.13);
  --shg: 0 8px 28px rgba(0,214,143,.2);
}

/* v3.0 - Stability Lab
   A bounded, evidence-first stress test within the existing report system. */
.benchmark-lab-grid {
  display: grid;
  grid-template-columns: minmax(0,.8fr) minmax(0,1.35fr);
  gap: 1rem;
  align-items: start;
}
.benchmark-lab-grid > * { min-width: 0; }
.stability-lab {
  position: relative;
  overflow: hidden;
  padding: clamp(1rem,2.3vw,1.5rem);
  border: 1px solid color-mix(in srgb,var(--mint-deep) 32%,var(--line));
  border-radius: 22px;
  background:
    radial-gradient(circle at 92% 4%,rgba(75,108,255,.15),transparent 38%),
    linear-gradient(145deg,rgba(255,255,255,.92),rgba(232,249,245,.78));
  box-shadow: 0 22px 55px rgba(22,73,62,.12),inset 0 1px rgba(255,255,255,.8);
}
.stability-lab::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 4px;
  background: linear-gradient(#715cff,#10c99a,#2e95ff);
}
.stability-lab > header {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  align-items: flex-start;
}
.stability-lab h3 { margin: .22rem 0 .45rem; font-size: clamp(1.25rem,2vw,1.75rem); }
.stability-lab header p:last-child { max-width: 700px; color: var(--muted); }
.stability-safety-chip {
  flex: 0 0 auto;
  padding: .55rem .7rem;
  border: 1px solid rgba(63,96,214,.25);
  border-radius: 999px;
  color: #3651a8;
  background: rgba(235,240,255,.88);
  font: 800 .64rem/1 var(--mono);
  letter-spacing: .06em;
  white-space: nowrap;
}
.stability-guard-grid,.stability-result-grid {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: .7rem;
  margin-top: 1rem;
}
.stability-guard-grid article,.stability-result-grid article {
  min-width: 0;
  padding: .85rem;
  border: 1px solid rgba(35,113,94,.16);
  border-radius: 14px;
  background: rgba(255,255,255,.7);
}
.stability-guard-grid strong,.stability-guard-grid span,.stability-result-grid span,.stability-result-grid strong,.stability-result-grid small { display: block; }
.stability-guard-grid strong { margin-bottom: .28rem; color: var(--ink); font-size: .82rem; }
.stability-guard-grid span,.stability-result-grid small { color: var(--muted); font-size: .72rem; line-height: 1.45; }
.stability-score-note {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: .75rem;
  align-items: start;
  margin-top: .75rem;
  padding: .75rem .85rem;
  border-radius: 14px;
  color: var(--ink);
  background: rgba(40,90,205,.07);
}
.stability-score-note strong { color: #3855ad; }
.stability-score-note p { margin: 0; color: var(--muted); font-size: .78rem; }
.stability-actions { display: flex; flex-wrap: wrap; gap: .65rem; margin-top: 1rem; }
.stability-actions button { min-height: 44px; }
.stability-result {
  margin-top: 1rem;
  padding: 1rem;
  border: 1px solid rgba(31,118,96,.2);
  border-radius: 16px;
  background: rgba(246,252,250,.88);
}
.stability-result-head { display: flex; justify-content: space-between; gap: 1rem; align-items: center; }
.stability-result-head span { font-weight: 800; }
.stability-result-head strong { font: 850 clamp(1.5rem,3vw,2.2rem)/1 var(--display); }
.stability-result-head.passed strong { color: #08765a; }
.stability-result-head.failed strong,.stability-result-head.safety-stopped strong { color: #b34b3e; }
.stability-result-grid article > span { color: #42615a; font: 800 .62rem/1.2 var(--mono); letter-spacing: .08em; }
.stability-result-grid article > strong { margin: .45rem 0 .25rem; color: var(--ink); font-size: .86rem; }
.stability-result-note,.stability-score-meaning { margin: .85rem 0 0; color: var(--muted); font-size: .79rem; }
.stability-diagnosis {
  display: grid;
  grid-template-columns: minmax(0,1.3fr) minmax(0,.65fr) minmax(0,1.25fr);
  gap: .65rem;
  margin-top: .85rem;
}
.stability-diagnosis article {
  padding: .78rem;
  border: 1px solid rgba(179,75,62,.2);
  border-radius: 12px;
  background: rgba(255,245,242,.82);
}
.stability-diagnosis span,.stability-diagnosis strong { display: block; }
.stability-diagnosis span { color: #9a4439; font: 800 .6rem/1.2 var(--mono); letter-spacing: .08em; }
.stability-diagnosis strong { margin-top: .35rem; color: var(--ink); font-size: .74rem; line-height: 1.42; }
.stability-technical { margin-top: .7rem; color: var(--muted); font-size: .72rem; }
.stability-technical summary { cursor: pointer; font-weight: 750; color: var(--ink); }
.stability-technical p { overflow-wrap: anywhere; }
.stability-score-meaning { padding-top: .75rem; border-top: 1px solid rgba(33,91,78,.12); }
.stability-running { display: grid; gap: .65rem; }
.stability-running > div:first-child { display: flex; justify-content: space-between; gap: 1rem; }
.stability-running span,.stability-running small { color: var(--muted); }
.stability-progress { overflow: hidden; height: 9px; border-radius: 999px; background: rgba(25,77,66,.11); }
.stability-progress > span { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg,#715cff,#23b9eb,#10c99a); transition: width .35s ease; }
html[data-theme="dark"] .stability-lab {
  background: radial-gradient(circle at 92% 4%,rgba(82,110,255,.24),transparent 40%),linear-gradient(145deg,rgba(20,39,35,.96),rgba(14,50,43,.88));
  box-shadow: 0 26px 60px rgba(0,0,0,.32),inset 0 1px rgba(255,255,255,.06);
}
html[data-theme="dark"] .stability-safety-chip { color: #bdc9ff; background: rgba(71,91,169,.2); }
html[data-theme="dark"] .stability-guard-grid article,
html[data-theme="dark"] .stability-result-grid article,
html[data-theme="dark"] .stability-result { background: rgba(8,28,24,.62); border-color: rgba(122,219,193,.18); }
html[data-theme="dark"] .stability-score-note { background: rgba(90,112,223,.12); }
html[data-theme="dark"] .stability-score-note strong { color: #bfcaff; }
html[data-theme="dark"] .stability-diagnosis article { background: rgba(85,36,32,.24); border-color: rgba(255,143,126,.22); }
html[data-theme="dark"] .stability-diagnosis span { color: #ffb0a3; }
@media (max-width: 980px) {
  .benchmark-lab-grid { grid-template-columns: 1fr; }
}
@media (max-width: 680px) {
  .stability-lab > header { display: grid; }
  .stability-safety-chip { justify-self: start; white-space: normal; }
  .stability-guard-grid,.stability-result-grid { grid-template-columns: 1fr; }
  .stability-diagnosis { grid-template-columns: 1fr; }
  .stability-score-note { grid-template-columns: 1fr; }
  .stability-actions { display: grid; grid-template-columns: 1fr; }
  .stability-running > div:first-child { display: grid; gap: .2rem; }
}
@media (prefers-reduced-motion: reduce) {
  .stability-progress > span { transition: none; }
}
@media (forced-colors: active) {
  .stability-lab,.stability-result,.stability-guard-grid article,.stability-result-grid article { border: 1px solid CanvasText; background: Canvas; }
}
html[data-theme="dark"] {
  --s0:  #1a2e2b;
  --s1:  rgba(18,32,28,.97);
  --s2:  rgba(18,32,28,.82);
  --sb:  rgba(0,214,143,.13);
  --sbs: rgba(0,214,143,.3);
}

/* ── GLOBAL TYPOGRAPHY ──────────────────────────────────── */
body { font-family: var(--fd) !important; -webkit-font-smoothing: antialiased !important; }
h1,h2,h3,h4 { font-family: var(--fh) !important; }
h1 em {
  background: linear-gradient(125deg,#00d68f 0%,#4a8ef5 52%,#9060e8 100%) !important;
  -webkit-background-clip: text !important; -webkit-text-fill-color: transparent !important;
  background-clip: text !important; font-style: normal !important;
}
.eyebrow { font-family: var(--fm) !important; font-size: .68rem !important; letter-spacing: .1em !important; }

/* subtle animated BG mesh */
body::before {
  content: ''; position: fixed; inset: 0; z-index: -3; pointer-events: none;
  background:
    radial-gradient(ellipse 70% 55% at 8% 2%,  rgba(0,214,143,.055) 0%, transparent 65%),
    radial-gradient(ellipse 55% 45% at 92% 98%, rgba(74,142,245,.055) 0%, transparent 65%);
}

/* ── TOP BAR ────────────────────────────────────────────── */
.topbar {
  height: 72px !important;
  background: rgba(243,245,239,.82) !important;
  backdrop-filter: blur(24px) saturate(200%) !important;
  -webkit-backdrop-filter: blur(24px) saturate(200%) !important;
  border-bottom: 1px solid rgba(0,214,143,.13) !important;
  box-shadow: 0 1px 0 rgba(255,255,255,.55) inset, 0 2px 16px rgba(0,0,0,.05) !important;
  transition: background .3s !important;
}
html[data-theme="dark"] .topbar {
  background: rgba(9,18,16,.9) !important;
  border-bottom-color: rgba(0,214,143,.09) !important;
  box-shadow: 0 4px 24px rgba(0,0,0,.45) !important;
}
.brand-logo {
  box-shadow: 0 0 0 1.5px rgba(0,214,143,.28), 0 0 14px rgba(0,214,143,.16) !important;
  transition: box-shadow .28s !important;
}
.brand-logo:hover { box-shadow: 0 0 0 2px rgba(0,214,143,.52), 0 0 26px rgba(0,214,143,.36) !important; }
.privacy-pill {
  background: rgba(255,255,255,.88) !important; border: 1px solid rgba(0,214,143,.22) !important;
  backdrop-filter: blur(10px) !important; font-family: var(--fd) !important; font-weight: 600 !important;
  box-shadow: var(--sh1) !important;
}
html[data-theme="dark"] .privacy-pill {
  background: rgba(14,26,23,.9) !important; border-color: rgba(0,214,143,.16) !important;
}

/* ── BUTTONS ────────────────────────────────────────────── */
.primary-button {
  background: linear-gradient(145deg,#0d9970,#08765a) !important;
  border: 1px solid rgba(0,214,143,.26) !important; border-radius: 11px !important;
  font-family: var(--fd) !important; font-weight: 700 !important;
  box-shadow: 0 1px 0 rgba(255,255,255,.14) inset, 0 10px 28px rgba(8,118,90,.24) !important;
  transition: transform .2s var(--eb), box-shadow .2s !important;
}
.primary-button:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 1px 0 rgba(255,255,255,.14) inset,0 0 0 3px rgba(0,214,143,.2),0 14px 32px rgba(0,214,143,.3) !important;
}
.primary-button:active { transform: translateY(1px) scale(.98) !important; }

.ghost-button {
  background: rgba(255,255,255,.75) !important; border: 1px solid rgba(0,0,0,.1) !important;
  border-radius: var(--rs) !important; font-family: var(--fd) !important; font-weight: 600 !important;
  transition: background .18s, border-color .18s, transform .18s var(--eb), box-shadow .18s !important;
}
.ghost-button:hover {
  background: #ffffff !important; border-color: rgba(0,214,143,.42) !important;
  transform: translateY(-1px) !important; box-shadow: 0 4px 16px rgba(0,214,143,.14) !important;
}
html[data-theme="dark"] .ghost-button {
  background: rgba(26,44,40,.78) !important; border-color: rgba(255,255,255,.1) !important; color: #cce8de !important;
}
html[data-theme="dark"] .ghost-button:hover {
  background: rgba(28,48,44,.95) !important; border-color: rgba(0,214,143,.35) !important;
}
.ghost-button.danger { color: #c0392b !important; border-color: rgba(192,57,43,.24) !important; }
html[data-theme="dark"] .ghost-button.danger { color: #ff7a70 !important; }

/* ── ORBIT (HERO) ───────────────────────────────────────── */
.orbit-node .orbit-label {
  background: rgba(255,255,255,.1) !important; backdrop-filter: blur(12px) !important;
  border: 1px solid rgba(0,214,143,.38) !important; border-radius: 5px !important;
  box-shadow: 4px 4px 0 var(--g), 0 4px 18px rgba(0,214,143,.2) !important;
  font-family: var(--fm) !important; font-weight: 700 !important;
}
.orbit-core {
  box-shadow: 0 0 0 16px rgba(0,214,143,.06), 0 0 0 32px rgba(0,214,143,.03), 0 0 55px rgba(0,214,143,.22) !important;
}
.ui-check {
  background: linear-gradient(135deg,var(--g),#0aaf78) !important;
  box-shadow: 0 2px 8px rgba(0,214,143,.28) !important;
}
.proof-mark {
  background: linear-gradient(135deg,var(--g),var(--bl)) !important;
  color: #021c16 !important; font-family: var(--fm) !important; font-weight: 800 !important;
  box-shadow: 0 4px 18px rgba(0,214,143,.35) !important;
}

/* ── INSTALL PANEL ──────────────────────────────────────── */
.install-panel {
  background: var(--s1) !important; backdrop-filter: blur(18px) saturate(150%) !important;
  border: 1px solid var(--sb) !important; border-radius: var(--rl) !important;
  box-shadow: var(--sh2), 0 1px 0 rgba(255,255,255,.5) inset !important;
}
html[data-theme="dark"] .install-panel { background: var(--s2) !important; }
.install-steps li > span {
  font-family: var(--fm) !important; font-weight: 700 !important;
  background: linear-gradient(125deg,var(--g),var(--bl)) !important;
  -webkit-background-clip: text !important; -webkit-text-fill-color: transparent !important; background-clip: text !important;
}
.privacy-explainer {
  background: rgba(0,214,143,.055) !important; border: 1px solid rgba(0,214,143,.18) !important; border-radius: 11px !important;
}
html[data-theme="dark"] .privacy-explainer { background: rgba(0,214,143,.08) !important; }

/* ── CAPABILITY GRID ────────────────────────────────────── */
.capability-grid article {
  background: rgba(255,255,255,.86) !important; border: none !important;
  transition: background .22s, transform .22s var(--eb), box-shadow .22s !important; position: relative !important;
}
.capability-grid article:hover {
  background: #fff !important; transform: translateY(-4px) !important; border-radius: 12px !important;
  box-shadow: 0 18px 44px rgba(0,214,143,.15), 0 4px 10px rgba(0,0,0,.07) !important; z-index: 2 !important;
}
html[data-theme="dark"] .capability-grid article { background: rgba(18,32,28,.82) !important; }
html[data-theme="dark"] .capability-grid article:hover { background: rgba(22,38,34,.97) !important; }

/* ── FRONT PROOF GRID (the 3 white cards in screenshot) ─── */
.front-proof-grid article {
  background: rgba(255,255,255,.97) !important; border: 1px solid rgba(0,0,0,.07) !important;
  border-radius: var(--rm) !important; box-shadow: var(--sh1) !important;
  transition: transform .2s var(--eb), box-shadow .2s !important;
}
.front-proof-grid article:hover {
  transform: translateY(-3px) !important; box-shadow: 0 14px 36px rgba(0,214,143,.18) !important;
}
html[data-theme="dark"] .front-proof-grid article {
  background: rgba(22,38,34,.96) !important; border-color: rgba(255,255,255,.07) !important;
  color: #eef9f5 !important;
}

/* ── SITE METRICS ───────────────────────────────────────── */
.site-metrics {
  background: rgba(255,255,255,.9) !important; border: 1px solid rgba(0,214,143,.16) !important;
  border-radius: var(--rm) !important; overflow: hidden !important; box-shadow: var(--sh1) !important;
}
html[data-theme="dark"] .site-metrics { background: rgba(18,32,28,.9) !important; }
.site-metric strong {
  font-family: var(--fh) !important;
  background: linear-gradient(125deg,var(--gd),var(--g)) !important;
  -webkit-background-clip: text !important; -webkit-text-fill-color: transparent !important; background-clip: text !important;
}
html[data-theme="dark"] .site-metric strong {
  background: linear-gradient(125deg,var(--g),#6ff0c4) !important;
  -webkit-background-clip: text !important; -webkit-text-fill-color: transparent !important; background-clip: text !important;
}
.feedback-strip {
  background: rgba(255,255,255,.78) !important; border: 1px solid rgba(0,214,143,.18) !important; border-radius: var(--rm) !important;
}
html[data-theme="dark"] .feedback-strip { background: rgba(18,32,28,.78) !important; }

/* ── SCANNER STATE ──────────────────────────────────────── */
.scanner { filter: drop-shadow(0 0 20px rgba(0,214,143,.45)) !important; }
.scanner-ring {
  border-color: rgba(0,214,143,.14) !important; border-top-color: var(--g) !important;
  box-shadow: 0 0 22px rgba(0,214,143,.3) !important;
}
.scanner-value {
  font-family: var(--fm) !important; font-weight: 700 !important;
  background: linear-gradient(125deg,var(--g),var(--bl)) !important;
  -webkit-background-clip: text !important; -webkit-text-fill-color: transparent !important; background-clip: text !important;
}

/* ── RESULTS HEADING ────────────────────────────────────── */
.results-heading {
  background: var(--s1) !important; backdrop-filter: blur(20px) saturate(160%) !important;
  border: 1px solid var(--sb) !important; border-radius: var(--rl) !important;
  box-shadow: var(--sh2), 0 1px 0 rgba(255,255,255,.55) inset !important;
}
html[data-theme="dark"] .results-heading { background: var(--s2) !important; box-shadow: var(--sh2) !important; }
.score-gauge { filter: drop-shadow(0 0 18px rgba(0,214,143,.28)) !important; }
.score-gauge strong { font-family: var(--fh) !important; }
.score-card {
  background: var(--s1) !important; backdrop-filter: blur(16px) !important;
  border: 1px solid var(--sb) !important; border-radius: var(--rl) !important; box-shadow: var(--sh2) !important;
}
html[data-theme="dark"] .score-card { background: var(--s2) !important; }

/* ── SECTION NAV ────────────────────────────────────────── */
.section-nav {
  background: rgba(255,255,255,.95) !important; backdrop-filter: blur(18px) saturate(180%) !important;
  border: 1px solid rgba(0,214,143,.15) !important; border-radius: var(--rl) !important;
  box-shadow: var(--sh1), 0 1px 0 rgba(255,255,255,.55) inset !important;
}
html[data-theme="dark"] .section-nav { background: rgba(11,20,18,.95) !important; border-color: rgba(0,214,143,.09) !important; }
.section-nav a { font-family: var(--fd) !important; }

/* ── REPORT SECTIONS ────────────────────────────────────── */
.report-section {
  background: rgba(248,251,247,.95) !important; border: 1px solid rgba(0,0,0,.07) !important;
  border-radius: var(--rm) !important; overflow: hidden !important; transition: border-color .2s, box-shadow .2s !important;
}
.report-section[open] { border-color: rgba(0,214,143,.22) !important; box-shadow: 0 10px 34px rgba(0,214,143,.07) !important; }
html[data-theme="dark"] .report-section { background: rgba(13,23,20,.93) !important; border-color: rgba(255,255,255,.06) !important; }
html[data-theme="dark"] .report-section[open] { border-color: rgba(0,214,143,.18) !important; }
.report-section-heading { background: rgba(255,255,255,.95) !important; transition: background .18s !important; }
.report-section-heading:hover { background: #fff !important; }
html[data-theme="dark"] .report-section-heading { background: rgba(17,30,26,.97) !important; }
.report-section-heading strong { font-family: var(--fh) !important; }

/* ── METRIC / DETAIL / CHECK CARDS ─────────────────────── */
.metric-card, .detail-card, .check-card {
  background: rgba(255,255,255,.96) !important; border: 1px solid rgba(0,0,0,.07) !important;
  border-radius: var(--rm) !important; box-shadow: var(--sh1) !important;
  transition: transform .2s var(--eb), box-shadow .2s, border-color .2s !important;
}
.metric-card:hover, .detail-card:hover, .check-card:hover {
  transform: translateY(-2px) !important; border-color: rgba(0,214,143,.26) !important; box-shadow: 0 12px 32px rgba(0,214,143,.12) !important;
}
html[data-theme="dark"] .metric-card, html[data-theme="dark"] .detail-card, html[data-theme="dark"] .check-card {
  background: rgba(17,30,26,.96) !important; border-color: rgba(255,255,255,.07) !important;
}
html[data-theme="dark"] .metric-card:hover, html[data-theme="dark"] .detail-card:hover, html[data-theme="dark"] .check-card:hover {
  border-color: rgba(0,214,143,.24) !important;
}
.metric-card strong { font-family: var(--fh) !important; }
.meter { border-radius: 999px !important; height: 6px !important; background: rgba(0,0,0,.08) !important; overflow: hidden !important; }
html[data-theme="dark"] .meter { background: rgba(255,255,255,.1) !important; }
.meter span {
  background: linear-gradient(90deg,var(--gd),var(--g)) !important; border-radius: 999px !important;
  box-shadow: 0 0 10px rgba(0,214,143,.45) !important; transition: width .9s var(--es) !important;
}

/* ── PRIORITY SUMMARY ───────────────────────────────────── */
.priority-summary article {
  background: rgba(255,255,255,.93) !important; border-radius: 11px !important;
  transition: transform .18s var(--eb), box-shadow .18s !important;
}
.priority-summary article:hover { transform: translateY(-2px) !important; box-shadow: 0 8px 24px rgba(0,0,0,.1) !important; }
html[data-theme="dark"] .priority-summary article { background: rgba(17,30,26,.93) !important; }
.priority-summary strong { font-family: var(--fh) !important; }

/* ── DIAGNOSTIC CONSOLE ─────────────────────────────────── */
.diagnostic-console {
  background: rgba(248,252,250,.98) !important; border: 1px solid rgba(0,214,143,.15) !important;
  border-radius: var(--rx) !important; box-shadow: var(--sh2) !important;
}
html[data-theme="dark"] .diagnostic-console { background: rgba(11,20,18,.98) !important; border-color: rgba(0,214,143,.09) !important; }
.console-tile {
  background: rgba(255,255,255,.98) !important; border: 1px solid rgba(0,0,0,.07) !important;
  border-radius: var(--rm) !important; box-shadow: var(--sh1) !important;
  transition: transform .2s var(--eb), box-shadow .2s, border-color .2s !important;
}
.console-tile:hover { transform: translateY(-3px) !important; border-color: rgba(0,214,143,.26) !important; box-shadow: 0 14px 38px rgba(0,214,143,.14) !important; }
html[data-theme="dark"] .console-tile { background: rgba(17,30,26,.98) !important; border-color: rgba(255,255,255,.07) !important; }
.console-tile > strong { font-family: var(--fh) !important; }

/* ── FIVE-SECOND SUMMARY ────────────────────────────────── */
.five-second-summary {
  background: rgba(255,255,255,.95) !important; border: 1px solid rgba(0,214,143,.17) !important;
  border-radius: var(--rx) !important; box-shadow: var(--sh2) !important;
}
html[data-theme="dark"] .five-second-summary { background: rgba(17,30,26,.95) !important; }
.five-second-score {
  border: 7px solid transparent !important;
  background: linear-gradient(white,white) padding-box, linear-gradient(135deg,var(--g),var(--bl)) border-box !important;
  box-shadow: 0 0 28px rgba(0,214,143,.26) !important;
}
html[data-theme="dark"] .five-second-score {
  background: linear-gradient(#1a2e2b,#1a2e2b) padding-box, linear-gradient(135deg,var(--g),var(--bl)) border-box !important;
}
.five-second-score strong { font-family: var(--fh) !important; }
.five-second-verdict h3 { font-family: var(--fh) !important; }

/* ── NEO ASSISTANT ──────────────────────────────────────── */
.neo-toggle {
  border: 1.5px solid rgba(0,214,143,.52) !important;
  background: radial-gradient(circle at 38% 30%,#fff 0 14%,#d6ffe9 50%,#b6f5e0 100%) !important;
  box-shadow: 0 0 0 7px rgba(0,214,143,.07), 0 0 32px rgba(0,214,143,.3), 0 14px 36px rgba(8,80,60,.22) !important;
  animation: zyra-float 3.2s ease-in-out infinite !important;
}
.neo-panel {
  background: rgba(255,255,255,.99) !important; backdrop-filter: blur(22px) !important;
  border: 1px solid rgba(0,214,143,.26) !important; border-radius: var(--rx) !important;
  box-shadow: 0 0 0 5px rgba(0,214,143,.05), 0 28px 72px rgba(0,0,0,.24) !important;
}
html[data-theme="dark"] .neo-panel { background: rgba(10,18,16,.99) !important; border-color: rgba(0,214,143,.18) !important; }
.neo-header { background: radial-gradient(circle at 14% 12%,rgba(0,214,143,.16),transparent 7rem),rgba(237,251,244,.99) !important; }
html[data-theme="dark"] .neo-header { background: radial-gradient(circle at 14% 12%,rgba(0,214,143,.12),transparent 7rem),rgba(9,17,15,.99) !important; }

/* ── DIALOGS ────────────────────────────────────────────── */
.action-dialog {
  background: rgba(251,255,253,.99) !important; backdrop-filter: blur(28px) !important;
  border: 1px solid rgba(0,214,143,.24) !important; border-radius: var(--rl) !important;
  box-shadow: 0 36px 100px rgba(0,0,0,.38) !important;
}
html[data-theme="dark"] .action-dialog { background: rgba(9,17,15,.99) !important; }
.action-dialog.is-danger { border-color: rgba(192,57,43,.33) !important; }
.retention-dialog {
  background: rgba(251,255,253,.99) !important; backdrop-filter: blur(28px) !important;
  border: 1px solid rgba(74,142,245,.28) !important; border-radius: var(--rx) !important;
  box-shadow: 0 36px 110px rgba(0,0,0,.4) !important;
}
html[data-theme="dark"] .retention-dialog { background: rgba(9,17,15,.99) !important; }

/* ── UPDATE TOAST ───────────────────────────────────────── */
.update-toast {
  background: rgba(250,255,252,.99) !important; border: 1px solid rgba(0,214,143,.33) !important;
  border-radius: var(--rm) !important; backdrop-filter: blur(18px) !important;
  box-shadow: 0 18px 55px rgba(0,0,0,.22) !important;
}
html[data-theme="dark"] .update-toast { background: rgba(9,17,15,.99) !important; border-color: rgba(0,214,143,.2) !important; }
.update-toast-mark { background: linear-gradient(135deg,var(--g),#0aaf78) !important; box-shadow: 0 4px 14px rgba(0,214,143,.35) !important; }

/* ── SITE FOOTER — always dark (design intent) ──────────── */
.site-footer {
  background: radial-gradient(circle at 12% 0,rgba(0,214,143,.11),transparent 22rem),#071f1e !important;
  border-top: 1px solid rgba(0,214,143,.16) !important; color: #b4c9c4 !important;
}
.footer-hawak { color: #ffffff !important; }
.site-footer a { color: var(--g) !important; }
.footer-brand > div { min-width: 0; }
.footer-brand .footer-release {
  width: fit-content; display: inline-flex; align-items: center; gap: .35rem;
  margin-top: .55rem !important; padding: .28rem .5rem; border: 1px solid rgba(0,214,143,.32);
  border-radius: 999px; color: #bff6e1 !important; background: rgba(0,214,143,.08);
  font: 750 .58rem/1 var(--fm) !important; letter-spacing: .045em !important;
}
.footer-release::before { content: ""; width: 6px; height: 6px; border-radius: 50%; background: var(--g); box-shadow: 0 0 9px rgba(0,214,143,.7); }
.footer-release #release-version { color: #fff; }
@keyframes footer-release-blink {
  0%, 100% { border-color: rgba(0,214,143,.28); box-shadow: 0 0 0 rgba(0,214,143,0); }
  50% { border-color: rgba(0,214,143,.78); box-shadow: 0 0 16px rgba(0,214,143,.28); }
}
@keyframes footer-release-dot-blink {
  0%, 100% { opacity: .48; transform: scale(.78); box-shadow: 0 0 4px rgba(0,214,143,.45); }
  50% { opacity: 1; transform: scale(1.18); box-shadow: 0 0 12px rgba(0,214,143,.95); }
}
.footer-release { animation: footer-release-blink 1.8s ease-in-out infinite; }
.footer-release::before { animation: footer-release-dot-blink 1.05s ease-in-out infinite; }
@media (prefers-reduced-motion: reduce) {
  .footer-release, .footer-release::before { animation: none !important; }
}

/* =========================================================
   v9.8 - Zyra evidence assistant clarity and accessibility
   ========================================================= */
.neo-panel { max-height: min(58dvh,500px); display: grid; grid-template-rows: auto minmax(0,1fr) auto; }
.neo-panel[hidden] { display: none !important; }
.neo-header { align-items: flex-start !important; padding: .72rem .85rem .68rem !important; }
.neo-header > div { min-width: 0; }
.neo-header h2 { display: flex; align-items: center; margin-top: .28rem !important; font-size: 1.2rem !important; }
.neo-header .zyra-mark-small { width: 34px; height: 34px; }
.neo-header-note { display: block; max-width: 310px; margin-top: .3rem; color: var(--muted); font-size: .61rem; line-height: 1.35; }
.neo-status { box-shadow: 0 0 0 4px rgba(53,163,121,.1); }
.neo-body { min-height: 0; max-height: none !important; padding: .7rem .8rem .8rem !important; scrollbar-gutter: stable; }
.zyra-trustbar { display: flex; flex-wrap: nowrap; gap: .25rem; margin-bottom: .55rem; }
.zyra-trustbar span {
  display: inline-flex; align-items: center; gap: .22rem; padding: .25rem .38rem;
  border: 1px solid rgba(8,118,90,.18); border-radius: 999px; color: #0b7057;
  background: rgba(0,214,143,.07); font: 750 .49rem/1 var(--fm); letter-spacing: .015em;
}
.zyra-trustbar span::before { content: "\2713"; font-size: .58rem; }
.neo-intro { margin-bottom: .55rem !important; font-size: .72rem !important; }
.neo-score {
  align-items: center !important; margin-bottom: .42rem !important; padding: .6rem .7rem !important;
  border-color: rgba(0,174,116,.22) !important; background: linear-gradient(135deg,rgba(0,214,143,.08),rgba(82,164,255,.055)) !important;
}
.neo-score > span { display: grid; gap: .28rem; }
.neo-score > span small { color: var(--muted); font: 800 .52rem/1 var(--fm); letter-spacing: .1em; }
.neo-score > span strong { color: var(--ink); font: 760 .86rem/1.2 var(--fh); letter-spacing: 0; }
.neo-score > b { color: var(--ink); font: 780 1.8rem/1 var(--fh); }
.neo-score > b small { margin-left: .18rem; color: var(--muted); font: 700 .65rem/1 var(--fm); }
.zyra-evidence-summary { display: grid; grid-template-columns: 1fr 1.35fr; gap: .35rem; margin-bottom: .6rem; }
.zyra-evidence-summary > span { min-width: 0; display: grid; gap: .2rem; padding: .45rem .55rem; border: 1px solid var(--line); border-radius: 9px; background: rgba(255,255,255,.65); }
.zyra-evidence-summary small { color: var(--muted); font-size: .57rem; text-transform: uppercase; letter-spacing: .06em; }
.zyra-evidence-summary strong { overflow-wrap: anywhere; font-size: .72rem; }
.zyra-quick-questions { grid-template-columns: 1fr 1fr; }
.zyra-quick-questions .zyra-topic:has(.zyra-answer) { grid-column: 1 / -1; }
.zyra-suggestions button { position: relative; min-height: 40px; padding: .55rem 1.8rem .55rem .65rem !important; font-size: .68rem !important; font-weight: 690; line-height: 1.25; }
.zyra-suggestions button::after { position: absolute; right: .8rem; top: 50%; float: none !important; transform: translateY(-50%); }
.zyra-suggestions button[aria-expanded="true"]::after { transform: translateY(-50%) rotate(90deg); }
.zyra-more { margin-top: .65rem; border-top: 1px solid var(--line); }
.zyra-more > summary { display: flex; align-items: center; justify-content: space-between; padding: .78rem .15rem .25rem; color: var(--ink); cursor: pointer; font-size: .74rem; font-weight: 760; list-style: none; }
.zyra-more > summary::-webkit-details-marker { display: none; }
.zyra-more > summary span { min-width: 25px; padding: .2rem .38rem; border-radius: 999px; color: var(--gd); background: rgba(0,214,143,.09); text-align: center; font-size: .58rem; }
.zyra-more > .zyra-suggestions { margin-top: .55rem; }
.zyra-answer { padding: .95rem !important; box-shadow: inset 3px 0 0 rgba(60,227,170,.42),0 10px 24px rgba(9,40,39,.06) !important; }
.zyra-answer-meta { display: grid; grid-template-columns: auto 1fr; align-items: center; gap: .25rem .55rem; margin: 0 0 .75rem; padding: .55rem .65rem; border: 1px solid #a9d9c6; border-radius: 9px; background: rgba(255,255,255,.72); }
.zyra-answer-meta strong { grid-row: 1 / 3; width: fit-content; padding: .25rem .42rem; border-radius: 999px; color: #08684f; background: #e6f7ef; font: 800 .55rem/1 var(--fm); text-transform: uppercase; letter-spacing: .04em; }
.zyra-answer-meta span { color: var(--muted); font-size: .64rem; line-height: 1.35; }
.zyra-answer-meta[data-tone="possible"] { border-color: #e0c58d; background: #fffaf0; }
.zyra-answer-meta[data-tone="possible"] strong { color: #7a5410; background: #fff0c8; }
.zyra-answer-meta[data-tone="guidance"] { border-color: #aebfe5; background: #f4f7ff; }
.zyra-answer-meta[data-tone="guidance"] strong { color: #315b9b; background: #e4ecff; }
.zyra-answer-meta[data-tone="unknown"] { border-color: #d4d9d6; background: #f5f7f6; }
.zyra-answer-meta[data-tone="unknown"] strong { color: #5e706d; background: #e8ecea; }
.neo-advice li { padding: .72rem 0 !important; }
.neo-footer { display: grid; gap: .12rem; padding: .48rem .8rem !important; }
.neo-footer span { color: var(--ink); font-size: .57rem; }
.neo-footer span strong { display: inline; margin: 0; color: #8a4c24; }
.neo-footer small { color: var(--muted); font-size: .6rem; }

html[data-theme="dark"] .zyra-trustbar span { color: #9af3d2; background: #17372f; border-color: #3d6e5e; }
html[data-theme="dark"] .zyra-evidence-summary > span,
html[data-theme="dark"] .zyra-answer-meta { background: #162a25; border-color: #3d6257; }
html[data-theme="dark"] .zyra-answer-meta[data-tone="possible"] { background: #342b1a; border-color: #735f31; }
html[data-theme="dark"] .zyra-answer-meta[data-tone="guidance"] { background: #1b293d; border-color: #40577a; }
html[data-theme="dark"] .zyra-answer-meta strong { color: #a5f5d8; background: #1d493c; }
html[data-theme="dark"] .zyra-answer-meta[data-tone="possible"] strong { color: #ffe09b; background: #4b391b; }
html[data-theme="dark"] .zyra-answer-meta[data-tone="guidance"] strong { color: #bad2ff; background: #263d60; }

@media (max-width: 680px) {
  .neo-assistant { width: min(360px,calc(100vw - 1.3rem)) !important; }
  .neo-panel { max-height: min(56dvh,460px); border-radius: 16px !important; }
  .zyra-quick-questions { grid-template-columns: 1fr; }
  .zyra-quick-questions .zyra-topic:has(.zyra-answer) { grid-column: auto; }
}

@media (prefers-reduced-motion: reduce) {
  .neo-toggle, .neo-panel { animation: none !important; }
}

/* ── PRIVACY PAGE POLICY GRID ───────────────────────────── */
.policy-grid { border-radius: var(--rm) !important; overflow: hidden !important; }
.policy-grid article { background: rgba(255,255,255,.92) !important; transition: background .2s !important; }
.policy-grid article:hover { background: #fff !important; }
html[data-theme="dark"] .policy-grid article { background: rgba(17,30,26,.92) !important; }
html[data-theme="dark"] .policy-grid article:hover { background: rgba(21,36,31,.99) !important; }

/* ── MISC CARDS ─────────────────────────────────────────── */
.manufacturer-badge {
  background: rgba(255,255,255,.92) !important; border: 1px solid rgba(0,214,143,.18) !important;
  border-radius: var(--rm) !important; box-shadow: var(--sh1) !important;
}
html[data-theme="dark"] .manufacturer-badge { background: rgba(17,30,26,.92) !important; }
.maintenance-card {
  background: rgba(255,255,255,.94) !important; border: 1px solid rgba(0,0,0,.07) !important;
  border-radius: var(--rm) !important; transition: transform .2s var(--eb), box-shadow .2s, border-color .2s !important;
}
.maintenance-card:hover { transform: translateY(-3px) !important; border-color: rgba(0,214,143,.28) !important; box-shadow: 0 12px 34px rgba(0,214,143,.12) !important; }
html[data-theme="dark"] .maintenance-card { background: rgba(17,30,26,.94) !important; border-color: rgba(255,255,255,.07) !important; }
.score-ledger article {
  background: rgba(255,255,255,.94) !important; border: 1px solid rgba(0,0,0,.07) !important; border-radius: var(--rm) !important;
}
html[data-theme="dark"] .score-ledger article { background: rgba(17,30,26,.94) !important; border-color: rgba(255,255,255,.07) !important; }
.report-guide { background: rgba(0,214,143,.05) !important; border: 1px solid rgba(0,214,143,.19) !important; border-radius: var(--rm) !important; }
html[data-theme="dark"] .report-guide { background: rgba(0,214,143,.07) !important; }
.report-guide > span { background: linear-gradient(135deg,var(--g),#0aaf78) !important; box-shadow: 0 4px 14px rgba(0,214,143,.3) !important; }
.accuracy-note { background: rgba(232,242,247,.88) !important; border-left: 4px solid var(--bl) !important; border-radius: 0 var(--rs) var(--rs) 0 !important; }
html[data-theme="dark"] .accuracy-note { background: rgba(14,25,36,.88) !important; }
.auto-removal-timer {
  background: rgba(255,255,255,.9) !important; border: 1px solid rgba(0,214,143,.22) !important; border-radius: 11px !important; box-shadow: 0 4px 16px rgba(0,214,143,.09) !important;
}
html[data-theme="dark"] .auto-removal-timer { background: rgba(17,30,26,.9) !important; }
.auto-removal-timer strong { font-family: var(--fm) !important; }
.event-timeline { background: rgba(248,252,250,.96) !important; border: 1px solid rgba(0,214,143,.13) !important; border-radius: var(--rm) !important; }
html[data-theme="dark"] .event-timeline { background: rgba(11,20,18,.96) !important; }
.privacy-summary { background: rgba(255,255,255,.94) !important; border: 1px solid rgba(0,0,0,.07) !important; border-radius: var(--rm) !important; }
html[data-theme="dark"] .privacy-summary { background: rgba(17,30,26,.94) !important; }
.unsupported-card { background: rgba(255,255,255,.97) !important; border: 1px solid rgba(0,0,0,.08) !important; border-radius: var(--rx) !important; box-shadow: var(--sh3) !important; }
html[data-theme="dark"] .unsupported-card { background: rgba(17,30,26,.97) !important; }
.quick-response > div { background: rgba(255,255,255,.93) !important; border: 1px solid rgba(0,0,0,.07) !important; border-radius: var(--rm) !important; }
html[data-theme="dark"] .quick-response > div { background: rgba(17,30,26,.93) !important; }
.quick-finding { background: rgba(255,255,255,.97) !important; border-radius: 10px !important; }
html[data-theme="dark"] .quick-finding { background: rgba(17,30,26,.97) !important; }
.insight-card, .event-explanation, .event-empty { background: rgba(255,255,255,.94) !important; border-radius: 11px !important; }
html[data-theme="dark"] .insight-card, html[data-theme="dark"] .event-explanation, html[data-theme="dark"] .event-empty { background: rgba(17,30,26,.94) !important; }
.memory-module-card, .memory-test-actions article, .sensor-source-card, .driver-family-card, .optimizer-card {
  background: rgba(255,255,255,.95) !important; border-radius: 10px !important;
}
html[data-theme="dark"] .memory-module-card, html[data-theme="dark"] .memory-test-actions article,
html[data-theme="dark"] .sensor-source-card, html[data-theme="dark"] .driver-family-card, html[data-theme="dark"] .optimizer-card {
  background: rgba(17,30,26,.95) !important; border-color: rgba(255,255,255,.07) !important;
}

/* ── SCROLLBAR ──────────────────────────────────────────── */
::-webkit-scrollbar { width: 6px; height: 6px; }
::-webkit-scrollbar-track { background: transparent; }
::-webkit-scrollbar-thumb { background: rgba(0,214,143,.28); border-radius: 999px; }
::-webkit-scrollbar-thumb:hover { background: rgba(0,214,143,.52); }

/* ── FOCUS & SELECTION ──────────────────────────────────── */
:focus-visible { outline: 2px solid rgba(0,214,143,.75) !important; outline-offset: 3px !important; border-radius: 5px !important; }
::selection { background: rgba(0,214,143,.26); color: inherit; }

/* ── RESPONSIVE ─────────────────────────────────────────── */
@media (max-width: 768px) {
  body::before { display: none; }
  .topbar { backdrop-filter: blur(16px) !important; }
}

/* ── REDUCED MOTION ─────────────────────────────────────── */
@media (prefers-reduced-motion: reduce) {
  body::before { display: none; }
  .neo-toggle { animation: none !important; }
  *, *::before, *::after { transition-duration: .01ms !important; animation-duration: .01ms !important; }
}

/* ── PRINT ──────────────────────────────────────────────── */
@media print {
  body::before { display: none !important; }
  .topbar, .neo-assistant { display: none !important; }
  .site-footer { background: #fff !important; color: #333 !important; border-top: 1px solid #ccc !important; }
}

/* =========================================================
   v8.5 - complete product-state UX pass
   ========================================================= */
html { accent-color: var(--gd); }
body { min-width: 320px; }
main > section:not([hidden]) { animation: hawak-page-in .32s var(--es) both; }
@keyframes hawak-page-in { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: none; } }

.topbar {
  position: sticky !important; top: 0; z-index: 80;
  padding-inline: clamp(1rem,4vw,4.5rem) !important;
}
.topbar-actions { display: flex; align-items: center; gap: .65rem; }
.global-theme-toggle {
  min-height: 38px; display: inline-flex; align-items: center; gap: .55rem;
  padding: .55rem .72rem; border: 1px solid rgba(0,0,0,.1); border-radius: 999px;
  color: var(--ink); background: rgba(255,255,255,.72); cursor: pointer;
  box-shadow: var(--sh1); transition: transform .18s var(--eb), border-color .18s, background .18s;
}
.global-theme-toggle:hover { transform: translateY(-1px); border-color: rgba(0,214,143,.4); background: #fff; }
.global-theme-toggle > span { width: 15px; height: 15px; border: 2px solid currentColor; border-radius: 50%; box-shadow: inset -5px -3px 0 -2px var(--g); }
.global-theme-toggle strong { font-size: .69rem; white-space: nowrap; }
html[data-theme="dark"] .global-theme-toggle { color: #d8eee6; border-color: rgba(255,255,255,.12); background: rgba(20,36,32,.88); }

.installer { row-gap: clamp(2.5rem,5vw,5rem) !important; }
.installer-copy { padding-top: .7rem; }
.installer h1 { text-wrap: balance; }
.installer .hero-copy { line-height: 1.72; }
.installer .hero-actions { align-items: stretch; gap: .85rem; }
.installer .download-button { min-width: min(100%,360px); min-height: 66px; padding-block: .82rem !important; }
.download-copy { display: grid; gap: .2rem; text-align: left; }
.download-copy strong { font-size: .94rem; line-height: 1.15; }
.download-copy small { color: rgba(255,255,255,.76); font: 500 .63rem/1.2 var(--fm); letter-spacing: .02em; }
.installer .time-note { align-self: center; }
.reconnect-link { margin-top: .25rem; padding: .45rem 0; text-decoration-thickness: 1px; color: var(--gd); }
html[data-theme="dark"] .reconnect-link { color: var(--g) !important; }
.installer-maintenance { padding-top: .85rem; border-top: 1px solid rgba(0,0,0,.07); }
html[data-theme="dark"] .installer-maintenance { border-top-color: rgba(255,255,255,.08); }
.install-panel { position: static; top: auto; }
.install-panel > .eyebrow { display: flex; align-items: center; gap: .55rem; }
.install-panel > .eyebrow::before { content: ""; width: 8px; height: 8px; border-radius: 50%; background: var(--g); box-shadow: 0 0 0 5px rgba(0,214,143,.1); }
.install-steps li { position: relative; padding: 1.3rem 0 !important; }
.install-steps li > span { width: 38px; height: 38px; display: grid; place-items: center; border: 1px solid rgba(0,214,143,.22); border-radius: 10px; background: rgba(0,214,143,.06); }
.install-steps code { overflow-wrap: anywhere; }
.capabilities { margin-top: 0 !important; padding-top: clamp(2.2rem,5vw,4rem) !important; }
.capability-grid { gap: .8rem !important; padding: .8rem; border: 1px solid rgba(0,214,143,.12) !important; border-radius: var(--rl); background: rgba(255,255,255,.38) !important; }
.capability-grid article { border-radius: 12px; }
html[data-theme="dark"] .capability-grid { background: rgba(0,0,0,.12) !important; }

.state-card {
  width: min(760px,100%); padding: clamp(1.4rem,5vw,3rem); border: 1px solid rgba(0,214,143,.18);
  border-radius: var(--rx); background: rgba(255,255,255,.94); box-shadow: var(--sh3); backdrop-filter: blur(18px);
}
html[data-theme="dark"] .state-card { background: rgba(13,25,22,.97); border-color: rgba(0,214,143,.12); }
.scan-state, .error-state { min-height: calc(100vh - 72px) !important; padding: clamp(1rem,4vw,3rem) !important; }
.scan-state-card { display: grid; justify-items: center; }
.scan-state-card > p:last-of-type { color: var(--muted); }
.scan-progress { width: min(520px,100%); height: 8px; margin: 1.4rem 0 1.25rem; overflow: hidden; border-radius: 999px; background: rgba(0,0,0,.08); }
.scan-progress span { display: block; width: 0; height: 100%; border-radius: inherit; background: linear-gradient(90deg,var(--gd),var(--g),var(--bl)); box-shadow: 0 0 18px rgba(0,214,143,.35); transition: width .45s var(--es); }
html[data-theme="dark"] .scan-progress { background: rgba(255,255,255,.09); }
.scan-stage-list { width: min(620px,100%); display: grid; grid-template-columns: repeat(4,1fr); gap: .55rem; margin: 0; padding: 0; list-style: none; }
.scan-stage-list li { display: grid; justify-items: center; gap: .45rem; padding: .7rem .45rem; border: 1px solid var(--line); border-radius: 10px; color: var(--muted); font-size: .66rem; line-height: 1.3; }
.scan-stage-list li span { width: 24px; height: 24px; display: grid; place-items: center; border-radius: 50%; background: rgba(0,0,0,.06); font: 700 .62rem/1 var(--fm); }
.scan-stage-list li.active { color: var(--ink); border-color: rgba(0,214,143,.4); background: rgba(0,214,143,.06); }
.scan-stage-list li.active span { color: #052d23; background: var(--g); box-shadow: 0 0 0 5px rgba(0,214,143,.1); }
.scan-stage-list li.done { color: var(--gd); border-color: rgba(0,214,143,.18); }
.scan-stage-list li.done span { font-size: 0; color: white; background: var(--gd); }
.scan-stage-list li.done span::after { content: "\2713"; font-size: .7rem; }

.error-state-card, .removal-state-card { display: grid; justify-items: center; }
.error-state-card { border-color: rgba(221,101,92,.28); }
.error-state-card #error-message { margin-bottom: .55rem; color: var(--ink); font-weight: 650; }
.error-state-card #error-details { padding: .75rem 1rem; border-radius: 9px; background: rgba(221,101,92,.06); }
.technical-error-disclosure { width: min(760px,100%); margin: .6rem 0; text-align: left; }
.technical-error-disclosure summary { width: fit-content; padding: .55rem .7rem; border: 1px solid var(--line); border-radius: 8px; color: var(--muted); background: rgba(255,255,255,.6); cursor: pointer; font-size: .72rem; font-weight: 650; }
.technical-error { width: 100% !important; margin-bottom: 0 !important; }
.error-actions { width: min(760px,100%); }
.error-actions > * { min-height: 44px; }
.removal-state-card .privacy-summary { box-shadow: none !important; }
.auto-close-note { padding: .7rem 1rem; border-radius: 999px; background: rgba(0,214,143,.08); }

.unsupported-card { position: relative; overflow: hidden; }
.unsupported-card::before { content: ""; position: absolute; inset: 0 0 auto; height: 5px; background: linear-gradient(90deg,var(--g),var(--bl),var(--pu)); }
.desktop-handoff li { min-height: 54px; }

.results-heading { position: relative; overflow: visible !important; }
.results-heading::before { content: ""; position: absolute; inset: 0 auto 0 0; width: 4px; border-radius: var(--rl) 0 0 var(--rl); background: linear-gradient(180deg,var(--g),var(--bl)); }
.results-actions { justify-content: flex-end; }
.results-actions > button, .results-actions summary { min-height: 42px; }
.report-menu-panel { overflow: hidden; border-radius: 11px !important; }
.report-menu-panel button { min-height: 42px; border-radius: 7px; }
.export-identity-option {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: .65rem;
  align-items: start;
  margin: .35rem;
  padding: .75rem;
  color: var(--ink);
  background: color-mix(in srgb, var(--paper) 88%, var(--mint) 12%);
  border: 1px solid var(--line);
  border-radius: 9px;
  cursor: pointer;
}
.export-identity-option input { margin-top: .15rem; accent-color: var(--mint-deep); }
.export-identity-option span { display: grid; gap: .18rem; }
.export-identity-option strong { font-size: .72rem; line-height: 1.25; }
.export-identity-option small { color: var(--muted); font-size: .62rem; line-height: 1.35; }
html[data-theme="dark"] .export-identity-option { color: #eef9f5; background: #1a312b; border-color: #355149; }
html[data-theme="dark"] .export-identity-option small { color: #b8cbc5; }
.section-nav { scroll-margin-top: 80px; }
.report-section-heading { min-height: 64px; }
.report-section-heading strong { line-height: 1.25; }

.neo-toggle { width: 70px !important; height: 70px; }
.neo-panel { transform-origin: 100% 100%; animation: zyra-panel-in .22s var(--es) both; }
@keyframes zyra-panel-in { from { opacity: 0; transform: translateY(8px) scale(.98); } to { opacity: 1; transform: none; } }
.neo-header button { width: 36px; height: 36px; border-radius: 50% !important; }
.neo-header button:hover { background: rgba(0,0,0,.06) !important; }
.zyra-suggestions button { min-height: 44px; }

dialog form { max-height: min(88vh,760px); overflow-y: auto; }
.action-dialog::backdrop, .retention-dialog::backdrop { backdrop-filter: blur(8px) saturate(75%) !important; }
.dialog-actions > *, .retention-options > * { min-height: 46px; }

.site-footer { padding-block: clamp(1.5rem,3vw,2.4rem) !important; }
.footer-message p { max-width: 560px; line-height: 1.55; }
.footer-meta a { margin-bottom: .35rem !important; }

@media (max-width: 960px) {
  .install-panel { position: static; }
  .installer-copy { max-width: none; }
  .results-actions { justify-content: flex-start; }
}
@media (max-width: 680px) {
  .topbar { height: 66px !important; }
  .global-theme-toggle { width: 38px; min-height: 38px; padding: 0; justify-content: center; }
  .global-theme-toggle strong { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
  .privacy-pill { padding-inline: .65rem !important; }
  .installer { padding-top: 2rem !important; }
  .installer h1 { font-size: clamp(2.55rem,13vw,4rem) !important; }
  .installer .hero-actions { width: 100%; }
  .installer .download-button { width: 100%; }
  .capability-grid { padding: .55rem; }
  .scan-stage-list { grid-template-columns: 1fr 1fr; }
  .state-card { border-radius: var(--rl); }
  .error-actions { grid-template-columns: 1fr; }
  .results { padding-top: 1rem !important; }
  .results-heading { padding: 1rem !important; }
  .results-heading h2 { font-size: clamp(1.8rem,10vw,2.8rem) !important; }
  .neo-toggle { width: 60px !important; height: 60px; }
  .neo-orb { width: 50px !important; height: 50px !important; }
}
@media (max-width: 420px) {
  .brand-device { display: none; }
  .scan-stage-list { grid-template-columns: 1fr; }
  .scan-stage-list li { grid-template-columns: auto 1fr; justify-items: start; align-items: center; text-align: left; }
}

/* =========================================================
   v8.8 - stable download layout at every viewport
   ========================================================= */
.installer {
  grid-template-columns: minmax(0, 1.12fr) minmax(360px, .88fr) !important;
  column-gap: clamp(1.5rem, 3.5vw, 3.5rem) !important;
  row-gap: clamp(2rem, 4vw, 3.5rem) !important;
}
.installer-copy,
.install-panel,
.capabilities { min-width: 0; }
.installer h1 {
  max-width: 760px !important;
  font-size: clamp(2.75rem, 4.75vw, 4.65rem) !important;
  line-height: .96 !important;
  letter-spacing: -.055em !important;
  text-wrap: balance;
  overflow-wrap: normal;
  word-break: normal;
}
.installer h1 .headline-main { margin-bottom: clamp(.65rem, 1.3vw, 1.05rem) !important; }
.install-panel {
  position: static !important;
  inset: auto !important;
  align-self: start;
  width: 100%;
  max-height: none;
  overflow: visible;
}
.install-steps li > div { min-width: 0; }
.capabilities,
.site-metrics,
.feedback-strip { position: relative; z-index: 1; }

@media (max-width: 1080px) {
  .installer {
    grid-template-columns: minmax(0, 1fr) !important;
    width: min(100%, 900px);
  }
  .installer-copy { max-width: 780px; }
  .installer h1 {
    max-width: 720px !important;
    font-size: clamp(2.75rem, 7.1vw, 4.25rem) !important;
  }
  .capabilities { grid-column: 1; }
}

@media (max-width: 680px) {
  .installer { width: 100%; padding-inline: clamp(.85rem, 4vw, 1.25rem) !important; }
  .installer h1 {
    max-width: 100% !important;
    font-size: clamp(2.25rem, 11.2vw, 3.35rem) !important;
    line-height: .98 !important;
    letter-spacing: -.045em !important;
  }
  .installer h1 .headline-main { margin-bottom: .8rem !important; }
  .install-panel { padding: 1.1rem !important; border-radius: 13px; }
  .install-steps li {
    grid-template-columns: 38px minmax(0, 1fr) !important;
    gap: .75rem !important;
    padding: 1rem 0 !important;
  }
  .install-steps li > span { width: 36px; height: 36px; font-size: 1rem; }
  .install-steps p { font-size: .82rem; line-height: 1.55; }
  .privacy-explainer { align-items: flex-start; padding: .85rem; }
  .front-proof-grid { grid-template-columns: 1fr; }
}

@media (max-width: 390px) {
  .installer h1 { font-size: clamp(2.05rem, 11vw, 2.7rem) !important; }
  .installer .hero-copy { font-size: .95rem; line-height: 1.65; }
  .download-copy strong { font-size: .88rem; }
}
@media (forced-colors: active) {
  .state-card, .install-panel, .results-heading, .report-section, .neo-panel { border: 1px solid CanvasText !important; }
  .scan-progress span, .results-heading::before, .unsupported-card::before { background: Highlight !important; }
}

/* =========================================================
   v8.6 - two-theme contrast, feedback and status refinement
   ========================================================= */
html[data-theme="light"] { color-scheme: light; }
html[data-theme="dark"] { color-scheme: dark; }

/* Light and Night are the only appearance choices. */
.global-theme-toggle > span {
  position: relative; overflow: hidden; background: #fff8cf;
  border-color: #8a6b00; box-shadow: 0 0 0 3px rgba(255,195,42,.14);
}
html[data-theme="dark"] .global-theme-toggle > span {
  background: #c8e8ff; border-color: #c8e8ff;
  box-shadow: inset 5px -3px 0 0 #1a2e2b, 0 0 0 3px rgba(138,181,255,.12);
}

/* Keep every card readable against its matching theme. */
html[data-theme="light"] .install-panel,
html[data-theme="light"] .brand-compliance span,
html[data-theme="light"] .site-metrics,
html[data-theme="light"] .feedback-strip,
html[data-theme="light"] .trend-card { color: #092827; background: #ffffff !important; }
html[data-theme="dark"] .install-panel,
html[data-theme="dark"] .brand-compliance span,
html[data-theme="dark"] .site-metrics,
html[data-theme="dark"] .feedback-strip,
html[data-theme="dark"] .trend-card { color: #eef9f5; background: #132521 !important; border-color: #355149 !important; }
html[data-theme="dark"] .brand-compliance span,
html[data-theme="dark"] .feedback-strip p,
html[data-theme="dark"] .install-steps p,
html[data-theme="dark"] .privacy-explainer p,
html[data-theme="dark"] .front-proof-grid p,
html[data-theme="dark"] .trend-card p { color: #b9cec6 !important; }
html[data-theme="dark"] .brand-compliance strong,
html[data-theme="dark"] .feedback-strip h3,
html[data-theme="dark"] .install-steps strong,
html[data-theme="dark"] .front-proof-grid h3,
html[data-theme="dark"] .trend-card h4 { color: #f4fffb !important; }

/* Installation instructions: no pale-on-pale code or clipped numbers. */
.install-steps li { align-items: start; }
.install-steps li > span {
  flex: 0 0 auto; color: #08765a !important; background: #e9f8f1 !important;
  -webkit-text-fill-color: currentColor !important; text-shadow: none;
}
html[data-theme="dark"] .install-steps li > span {
  color: #7ff4c8 !important; background: #193b32 !important; border-color: #3a8069 !important;
}
.install-steps code {
  display: inline; padding: .14rem .38rem; color: #153e35; background: #e8f0ec !important;
  border: 1px solid #d1dfd8; border-radius: 5px; font-size: .82em; line-height: 1.7;
  box-decoration-break: clone; -webkit-box-decoration-break: clone;
}
html[data-theme="dark"] .install-steps code {
  color: #ffffff; background: #0b1b18 !important; border-color: #355149;
}
html[data-theme="dark"] .download-button,
html[data-theme="dark"] .download-button strong,
html[data-theme="dark"] .download-button small,
html[data-theme="dark"] .download-button .button-icon {
  color: #ffffff !important; -webkit-text-fill-color: #ffffff !important;
}
html[data-theme="dark"] .download-button small { opacity: .82; }
.platform-note { color: #5d4a19 !important; background: #fff5d6 !important; }
html[data-theme="dark"] .platform-note {
  color: #ffe9a8 !important; background: #302816 !important; border-left-color: #f2bd61 !important;
}

/* Usage and feedback occupy their own rows and cannot cover one another. */
.site-metrics {
  clear: both; width: 100% !important; max-width: none; margin: 1.25rem 0 0 !important;
  grid-template-columns: repeat(2,minmax(0,1fr));
}
.site-metrics > p { text-align: left !important; }
.feedback-strip {
  clear: both; position: relative; z-index: 2; width: 100%; min-height: 104px;
  margin: 1rem 0 0 !important; padding: 1.35rem 1.5rem !important;
  box-shadow: var(--sh1); overflow: visible;
}
.feedback-strip > div { min-width: 0; }
.feedback-strip .eyebrow { color: var(--mint-deep) !important; }
.feedback-button {
  flex: 0 0 auto; min-height: 46px; display: inline-flex; align-items: center; justify-content: center; gap: .55rem;
  padding: .72rem 1rem; border: 1px solid #08765a; border-radius: 9px; color: #fff;
  background: #08765a; box-shadow: 0 7px 20px rgba(8,118,90,.2); font-weight: 750; text-decoration: none;
  transition: transform .18s var(--eb), background .18s, box-shadow .18s;
}
.feedback-button:hover { color: #fff; background: #075f49; transform: translateY(-1px); box-shadow: 0 10px 26px rgba(8,118,90,.28); }
html[data-theme="dark"] .feedback-button { color: #06241c; background: #7ff4c8; border-color: #7ff4c8; }
html[data-theme="dark"] .feedback-button:hover { color: #031b14; background: #a1ffdd; }

/* One visual language for verified and in-progress states. */
.ui-check, .capability-ledger article.available > span, .trend-status {
  color: #fff; background: #08765a !important; box-shadow: 0 2px 8px rgba(8,118,90,.2) !important;
}
html[data-theme="dark"] .ui-check,
html[data-theme="dark"] .capability-ledger article.available > span,
html[data-theme="dark"] .trend-status { color: #06241c; background: #7ff4c8 !important; }
.scan-stage-list li.active span {
  position: relative; font-size: 0 !important; color: transparent !important; background: transparent !important;
  border: 3px solid rgba(8,118,90,.24); box-shadow: none !important; animation: stage-turn .85s linear infinite;
}
.scan-stage-list li.active span::after {
  content: ""; position: absolute; inset: -3px; border: 3px solid transparent; border-top-color: #08765a; border-radius: 50%;
}
html[data-theme="dark"] .scan-stage-list li.active span { border-color: rgba(127,244,200,.22); }
html[data-theme="dark"] .scan-stage-list li.active span::after { border-top-color: #7ff4c8; }
@keyframes stage-turn { to { transform: rotate(360deg); } }

/* First scan is useful evidence, not an empty card. */
.trend-grid { grid-template-columns: repeat(3,minmax(0,1fr)) !important; gap: .8rem !important; }
.trend-card { min-height: 156px; border-radius: 12px; padding: 1rem 1.05rem !important; box-shadow: 0 5px 18px rgba(9,40,39,.04); }
.trend-card-heading { display: flex; align-items: center; gap: .55rem; }
.trend-card-heading h4 { margin: 0 !important; }
.trend-status { flex: 0 0 auto; width: 24px; height: 24px; display: grid; place-items: center; border-radius: 50%; font: 800 .68rem/1 var(--fm); }
.trend-status.unavailable { color: var(--muted); background: #e9efeb !important; box-shadow: none !important; }
html[data-theme="dark"] .trend-status.unavailable { color: #a9bcb6; background: #253a35 !important; }
.trend-card > strong { display: block; margin-top: 1rem; color: var(--ink); font: 750 clamp(1.15rem,2vw,1.5rem)/1.1 var(--fh); }
.trend-card p { line-height: 1.5; }
.history-range { flex-wrap: wrap; overflow: visible !important; }
html[data-theme="dark"] .history-range span { color: #b9cec6; background: #152823; border-color: #355149; }
html[data-theme="dark"] .history-range span.active { color: #8ff6d1; background: #173b32; border-color: #4f9b80; }

@media (max-width: 900px) { .trend-grid { grid-template-columns: repeat(2,minmax(0,1fr)) !important; } }
@media (max-width: 620px) {
  .trend-grid { grid-template-columns: 1fr !important; }
  .feedback-strip { align-items: stretch; flex-direction: column; }
  .feedback-button { width: 100%; }
  .site-metrics { grid-template-columns: 1fr; }
  .site-metric + .site-metric { border-left: 0; border-top: 1px solid var(--line); }
}

/* =========================================================
   v8.7 - sticky report controls and visible action feedback
   ========================================================= */
.results-heading { z-index: 72; }
.report-menu { z-index: 1; }
.report-menu[open] { z-index: 90; }
.report-menu-panel {
  z-index: 100 !important; min-width: 240px !important; max-height: min(390px,60vh);
  overflow-y: auto !important; background: #ffffff !important; border-color: #bdd4ca !important;
  box-shadow: 0 20px 55px rgba(9,40,39,.2) !important;
}
html[data-theme="dark"] .report-menu summary { color: #eef9f5; background: #162823; border-color: #355149; }
html[data-theme="dark"] .report-menu summary::after { border-color: #eef9f5; }
html[data-theme="dark"] .report-menu-panel { color: #eef9f5; background: #132521 !important; border-color: #355149 !important; }
html[data-theme="dark"] .report-menu-panel button { color: #eef9f5; }
html[data-theme="dark"] .report-menu-panel button:hover { background: #203a33; }

.section-nav {
  position: sticky !important; top: 80px !important; z-index: 70 !important;
  box-shadow: 0 12px 34px rgba(9,40,39,.14) !important;
}
.report-section { scroll-margin-top: 160px !important; }

.driver-card-result {
  display: block !important; width: 100%; margin-top: .85rem !important; padding: .8rem .85rem !important;
  border: 1px solid #b9d8ca; border-left: 3px solid #08765a; border-radius: 8px;
  color: #153e35; background: #edf8f2; font-size: .78rem; line-height: 1.5;
}
.driver-card-result[hidden], .storage-drive-result[hidden] { display: none !important; }
.driver-card-result strong { display: block; margin-bottom: .25rem; }
html[data-theme="dark"] .driver-card-result,
html[data-theme="dark"] .storage-drive-result { color: #d8f5ea; background: #152c26; border-color: #3c6859; }
.storage-drive-result { grid-column: 1 / -1; margin-top: 0 !important; }

@media (max-width: 680px) {
  .section-nav { top: 72px !important; }
  .report-section { scroll-margin-top: 146px !important; }
  .report-menu-panel { position: fixed !important; inset: auto .75rem .75rem .75rem !important; width: auto !important; max-height: 55vh; }
}

/* =========================================================
   v8.9 - exact navigation, premium labs and full night theme
   ========================================================= */
.section-nav-primary a:nth-child(13) { --tab-accent: #157f99; --tab-wash: #edf9fc; }
.section-nav a:hover:not([aria-current="true"]) { border-bottom-color: transparent; }
.section-nav a[aria-current="true"] { font-weight: 800; }
.report-section { scroll-margin-top: 178px !important; }

.premium-trust-banner {
  display: grid; grid-template-columns: auto 1fr; align-items: center; gap: .45rem 1rem;
  margin: 0 0 1rem; padding: .9rem 1rem; border: 1px solid #69bfa0; border-radius: 12px;
  color: #0b493a; background: linear-gradient(110deg,#e8fbf3,#f7fffb); box-shadow: 0 8px 24px rgba(8,118,90,.08);
}
.premium-trust-banner span { grid-row: 1 / 3; color: #08765a; font: 850 .6rem/1.35 var(--fm); letter-spacing: .09em; }
.premium-trust-banner strong { font-size: .85rem; line-height: 1.35; }
.premium-trust-banner small { color: #59736a; font-size: .7rem; }

.windows-health-lab,
.safe-repair-lab,
.learning-hub {
  margin-top: 1rem; padding: clamp(1rem,2.5vw,1.4rem); border: 1px solid #bfd9ce; border-radius: 15px;
  background: linear-gradient(145deg,#f8fcfa,#eef8f3); box-shadow: 0 10px 30px rgba(22,60,51,.06);
}
.windows-health-lab > header h3,
.safe-repair-lab > header h3,
.learning-hub > header h3 { margin: .25rem 0 .4rem; font-size: clamp(1.35rem,2.5vw,1.85rem); }
.windows-health-lab > header p:last-child,
.safe-repair-lab > header p:last-child,
.learning-hub > header p:last-child { margin: 0 0 1rem; color: var(--muted); font-size: .8rem; line-height: 1.55; }
.windows-health-grid,
.safe-repair-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: .7rem; }
.windows-health-grid article {
  min-width: 0; display: flex; flex-direction: column; align-items: flex-start; padding: .9rem;
  border: 1px solid #cfdfd8; border-radius: 11px; background: #fff;
}
.windows-health-grid article > span { color: #527069; font: 800 .56rem/1 var(--fm); letter-spacing: .08em; }
.windows-health-grid article > strong { margin: .55rem 0 .4rem; font-size: .88rem; }
.windows-health-grid article > p { flex: 1; margin: 0 0 .8rem; color: var(--muted); font-size: .72rem; line-height: 1.5; }
.windows-health-grid article > button { width: 100%; }
.windows-health-result,
.safe-repair-result { margin-top: .8rem; padding: .9rem; border: 1px solid #73bea2; border-left-width: 4px; border-radius: 9px; background: #fff; }
.windows-health-result strong,
.windows-health-result small,
.safe-repair-result strong { display: block; }
.windows-health-result p,
.safe-repair-result p { margin: .35rem 0; color: var(--muted); font-size: .76rem; line-height: 1.5; }
.windows-health-result small { max-height: 150px; overflow: auto; white-space: pre-wrap; color: var(--muted); font: .64rem/1.5 var(--fm); }
.windows-health-result.warning,
.safe-repair-result.warning { border-color: #d8914d; background: #fff9ef; }
.safe-repair-grid button {
  min-height: 92px; display: grid; align-content: center; justify-items: start; gap: .4rem; padding: .9rem;
  border: 1px solid #bed8cd; border-radius: 11px; color: var(--ink); background: #fff; cursor: pointer;
  font: 750 .8rem/1.2 var(--body); text-align: left; transition: transform .18s,border-color .18s,box-shadow .18s;
}
.safe-repair-grid button:hover { transform: translateY(-2px); border-color: #45a985; box-shadow: 0 9px 22px rgba(20,96,72,.1); }
.safe-repair-grid button small { color: var(--muted); font: 500 .68rem/1.45 var(--body); }
.safe-repair-card { min-width: 0; overflow: hidden; border: 1px solid #bed8cd; border-radius: 11px; background: #fff; }
.safe-repair-card > button { width: 100%; border: 0; border-radius: 0; box-shadow: none !important; }
.safe-repair-card > details { border-top: 1px solid #dce9e3; }
.safe-repair-card > details summary { padding: .58rem .9rem; color: #08765a; cursor: pointer; font: 750 .66rem/1.25 var(--body); }
.safe-repair-card > details p { margin: 0; padding: .18rem .9rem; color: var(--muted); font-size: .64rem; line-height: 1.45; }
.safe-repair-card > details p:last-child { padding-bottom: .8rem; }
.evidence-state { display: inline-flex !important; width: fit-content; margin-bottom: .48rem; padding: .27rem .48rem; border-radius: 999px; color: #07674f; background: #ddf7ed; font: 800 .56rem/1 var(--fm); letter-spacing: .06em; text-transform: uppercase; }
.evidence-state[data-state="unknown"] { color: #785311; background: #fff1c9; }
.evidence-state[data-state="not-supported"] { color: #6b5960; background: #eee8eb; }

.learning-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .7rem; }
.learning-grid details { overflow: hidden; border: 1px solid #cadcd4; border-radius: 11px; background: #fff; }
.learning-grid summary { display: grid; grid-template-columns: 32px 1fr; align-items: center; gap: .7rem; padding: .85rem; cursor: pointer; list-style: none; }
.learning-grid summary::-webkit-details-marker { display: none; }
.learning-grid summary span { width: 30px; height: 30px; display: grid; place-items: center; border-radius: 8px; color: #08765a; background: #e5f8f0; font: 800 .68rem/1 var(--fm); }
.learning-grid summary strong { font-size: .86rem; }
.learning-grid details > div { padding: 0 .9rem .9rem 3.55rem; border-top: 1px solid #e0e9e5; }
.learning-grid h4 { margin: .8rem 0 .2rem; color: #08765a; font-size: .7rem; text-transform: uppercase; letter-spacing: .06em; }
.learning-grid p { margin: 0; color: var(--muted); font-size: .74rem; line-height: 1.55; }
.learning-rule { margin-top: .8rem; padding: .9rem 1rem; border-left: 4px solid #08765a; border-radius: 8px; background: #eaf8f2; }
.learning-rule p { margin: .25rem 0 0; color: var(--muted); font-size: .76rem; line-height: 1.5; }
.history-empty { margin: .8rem 0; padding: .85rem 1rem; border: 1px solid #d8c785; border-left: 4px solid #d4a82e; border-radius: 9px; color: #5d4a18; background: #fff8df; }
.history-empty.verified { color: #0b5a45; border-color: #91cfb8; border-left-color: #18a377; background: #eaf9f3; }
.history-empty p { margin: .25rem 0 0; color: inherit; font-size: .74rem; line-height: 1.5; }
.methodology-line { width: fit-content; margin: .7rem 0 0 !important; padding: .55rem .75rem; border-left: 3px solid #168765; border-radius: 0 7px 7px 0; color: #355f54 !important; background: #eef8f3; font-size: .74rem !important; line-height: 1.4; }
.score-table td small { display: block; margin-top: .32rem; color: var(--muted); font-weight: 500; line-height: 1.4; }
.priority-summary article.policy { border-color: #bdb0dd; background: #f5f1ff; }
.priority-summary article.policy span { color: #655092; }
.report-feedback { display: flex; align-items: center; justify-content: space-between; gap: 1.5rem; margin-top: 1rem; padding: 1.15rem 1.25rem; border: 1px solid #a8d5c4; border-radius: 14px; background: linear-gradient(120deg,#effaf5,#f9fffc); box-shadow: 0 10px 28px rgba(18,83,65,.07); }
.report-feedback h3 { margin: .2rem 0; font-size: 1.05rem; }
.report-feedback p:last-child { margin: 0; color: var(--muted); font-size: .76rem; }
.report-feedback a { flex: 0 0 auto; padding: .72rem 1rem; border-radius: 9px; color: #fff; background: #08765a; font-weight: 750; text-decoration: none; }

/* Night mode uses one coherent surface system across every report lab. */
html[data-theme="dark"] .section-nav-primary a { color: #a9beb7; }
html[data-theme="dark"] .section-nav-primary a > span { color: #718c83; }
html[data-theme="dark"] .section-nav a:hover:not([aria-current="true"]) { color: #d8ebe4; background: #152722; }
html[data-theme="dark"] .section-nav a[aria-current="true"] { color: #8ff6d1; background: #17382f !important; border-bottom-color: #62dcaf; }
html[data-theme="dark"] .premium-trust-banner { color: #effcf7; background: linear-gradient(110deg,#14362d,#10251f); border-color: #356c59; }
html[data-theme="dark"] .premium-trust-banner span { color: #83f0c8; }
html[data-theme="dark"] .premium-trust-banner small { color: #adc4bc; }
html[data-theme="dark"] :is(.maintenance-lab,.windows-health-lab,.safe-repair-lab,.learning-hub,.memory-lab,.storage-evidence,.computer-fit,.capability-ledger,.sensor-lab,.driver-tools,.optimizer-action,.snapshot-panel,.event-correlation,.event-pattern-guide,.accuracy-note) {
  color: #eef9f5 !important; background: #10211d !important; border-color: #345249 !important;
}
html[data-theme="dark"] :is(.maintenance-card,.windows-health-grid article,.safe-repair-grid button,.safe-repair-card,.learning-grid details,.memory-overview-grid article,.memory-module-card,.driver-family-card,.drive-evidence,.drive-evidence-grid > div,.fit-card,.configuration-verdict,.configuration-verdict article,.capability-ledger article,.sensor-lab article,.storage-drive-panel,.speed-test-box,.event-correlation article,.event-pattern-guide article,.snapshot-panel,.history-range span) {
  color: #eef9f5 !important; background: #162a25 !important; border-color: #3a5b51 !important;
}
html[data-theme="dark"] :is(.maintenance-card p,.maintenance-card li,.windows-health-grid p,.safe-repair-grid small,.learning-grid p,.learning-rule p,.memory-lab p,.memory-module-card p,.memory-module-card small,.driver-family-card p,.drive-evidence small,.fit-card li,.configuration-verdict p,.configuration-verdict ol,.capability-ledger small,.sensor-lab p,.sensor-lab small,.storage-drive-panel p) { color: #aec3bb !important; }
html[data-theme="dark"] .learning-grid details > div { border-top-color: #355149; }
html[data-theme="dark"] .learning-grid summary span { color: #8ff6d1; background: #1d4438; }
html[data-theme="dark"] .learning-grid h4 { color: #8ff6d1; }
html[data-theme="dark"] .learning-rule { background: #15372f; border-left-color: #69e2b6; }
html[data-theme="dark"] .history-empty { color: #ffe2a8; background: #3b2f1d; border-color: #806938; }
html[data-theme="dark"] .history-empty.verified { color: #b8ffe5; background: #15372f; border-color: #438e72; }
html[data-theme="dark"] .methodology-line { color: #c6e7db !important; background: #17352d; border-left-color: #70e0b8; }
html[data-theme="dark"] .priority-summary article.policy { color: #eee8ff; background: #302841; border-color: #675a82; }
html[data-theme="dark"] .priority-summary article.policy span { color: #d8c9ff; }
html[data-theme="dark"] .report-feedback { color: #effcf7; background: linear-gradient(120deg,#14332a,#10251f); border-color: #3f7865; }
html[data-theme="dark"] .report-feedback p:last-child { color: #aec3bb; }
html[data-theme="dark"] .windows-health-result,
html[data-theme="dark"] .safe-repair-result { color: #eef9f5; background: #152c26; border-color: #4b8b74; }
html[data-theme="dark"] .windows-health-result.warning,
html[data-theme="dark"] .safe-repair-result.warning { background: #382b1d; border-color: #c99052; }
html[data-theme="dark"] .safe-repair-card > details { border-top-color: #3a5b51; }
html[data-theme="dark"] .safe-repair-card > details summary { color: #83f0c8; }
html[data-theme="dark"] .safe-repair-card > details p { color: #aec3bb; }
html[data-theme="dark"] .evidence-state { color: #b8ffe5; background: #18513f; }
html[data-theme="dark"] .evidence-state[data-state="unknown"] { color: #ffe0a0; background: #4a3518; }

/* v9.0: every diagnostic surface uses the same Night-mode contrast. */
html[data-theme="dark"] .cooling-lab-header,
html[data-theme="dark"] .issue-spotlight,
html[data-theme="dark"] .issue-spotlight > header,
html[data-theme="dark"] .issue-slide,
html[data-theme="dark"] .issue-slide-controls,
html[data-theme="dark"] .insight-card,
html[data-theme="dark"] .sensor-source-card,
html[data-theme="dark"] .issue-slide-evidence > div {
  color: #eef9f5 !important;
  background: #142722 !important;
  border-color: #3a5b51 !important;
}
html[data-theme="dark"] .cooling-lab-header {
  background: linear-gradient(120deg,#17342c,#10231e) !important;
}
html[data-theme="dark"] .issue-spotlight > header,
html[data-theme="dark"] .issue-slide-controls {
  background: #10211d !important;
}
html[data-theme="dark"] .issue-slide .eyebrow,
html[data-theme="dark"] .confidence-label {
  color: #8ff6d1 !important;
  background: #173b32 !important;
  border-color: #4f8c77 !important;
}
html[data-theme="dark"] .issue-slide :is(h4,strong),
html[data-theme="dark"] .cooling-lab-header h3,
html[data-theme="dark"] .sensor-source-card strong,
html[data-theme="dark"] .issue-spotlight > header h3 { color: #f3fffb !important; }
html[data-theme="dark"] .issue-slide > p:not(.eyebrow),
html[data-theme="dark"] .issue-slide-evidence small,
html[data-theme="dark"] .cooling-lab-header p,
html[data-theme="dark"] .sensor-source-card p,
html[data-theme="dark"] .insight-card p { color: #aec3bb !important; }
html[data-theme="dark"] .issue-slide-controls button {
  color: #e9fbf4 !important;
  background: #1a312b !important;
  border-color: #46685d !important;
}
html[data-theme="dark"] .issue-slide-controls button:hover { background: #214239 !important; border-color: #70d6af !important; }

.issue-slide-evidence {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: .7rem;
  margin-top: 1rem;
}
.issue-slide-evidence > div {
  min-width: 0;
  padding: .9rem;
  border: 1px solid #c9ddd4;
  border-radius: 10px;
  background: #f7fbf9;
}
.issue-slide-evidence span { display: block; margin-bottom: .42rem; color: #08765c; font: 800 .56rem/1 var(--mono); letter-spacing: .08em; }
.issue-slide-evidence strong { display: block; font-size: .77rem; line-height: 1.45; overflow-wrap: anywhere; }
.issue-slide-evidence small { display: block; margin-top: .38rem; color: var(--muted); font-size: .64rem; line-height: 1.45; }

@media (max-width: 760px) {
  .report-feedback { align-items: stretch; flex-direction: column; }
  .report-feedback a { width: 100%; text-align: center; }
  .issue-slide-evidence { grid-template-columns: 1fr; }
}

/* v9.1: remaining generated result surfaces follow the selected theme. */
html[data-theme="dark"] :is(
  .memory-test-result,
  .driver-tool-result,
  .optimizer-result,
  .storage-analysis-table-wrap,
  .event-guide-heading,
  .event-resolution,
  .event-resolution pre,
  .speed-result,
  .optimizer-stats article
) {
  color: #eef9f5 !important;
  background: #152923 !important;
  border-color: #41655a !important;
}
html[data-theme="dark"] .memory-test-result.test-failed {
  color: #ffe6e2 !important;
  background: #321d1c !important;
  border-color: #9c514b !important;
}
html[data-theme="dark"] .memory-test-stats span {
  color: #adc4bc !important;
  background: #1a302a !important;
  border-color: #41655a !important;
}
html[data-theme="dark"] :is(.memory-test-result,.driver-tool-result,.optimizer-result,.event-guide-heading,.event-resolution) :is(h3,h4,strong,b) {
  color: #f3fffb !important;
}
html[data-theme="dark"] :is(.memory-test-result,.driver-tool-result,.optimizer-result,.event-guide-heading,.event-resolution) :is(p,small,li) {
  color: #b4c9c1 !important;
}
html[data-theme="dark"] .storage-analysis-table {
  color: #e9f8f3 !important;
  background: #142722 !important;
}
html[data-theme="dark"] .storage-analysis-table :is(th,td) {
  color: #e9f8f3 !important;
  background: #142722 !important;
  border-color: #36564c !important;
}
html[data-theme="dark"] .storage-analysis-table th { color: #8ff6d1 !important; background: #19332c !important; }
html[data-theme="dark"] .optimizer-drive-note {
  color: #ffe5a7 !important;
  background: #382d19 !important;
  border-left-color: #f2bd61 !important;
}
html[data-theme="dark"] p.optimizer-drive-note { color: #ffe5a7 !important; }
html[data-theme="dark"] .optimizer-drive-note :is(strong,p) { color: #ffe5a7 !important; }
html[data-theme="dark"] .event-guide-heading {
  background: linear-gradient(120deg,#15302b,#142a32) !important;
}
html[data-theme="dark"] .crash-code {
  color: #ffd9d5 !important;
  background: #341d1d !important;
  border-color: #9c514b !important;
}
html[data-theme="dark"] .crash-code :is(small,strong,b) { color: #ffaaa2 !important; }
html[data-theme="dark"] .event-resolution > summary { color: #8ff6d1 !important; }
html[data-theme="dark"] .event-resolution pre { color: #d8eee6 !important; background: #0c1b18 !important; }

/* Light is the deterministic first-load theme and remains intentionally clean. */
html[data-theme="light"] :is(.memory-test-result,.driver-tool-result,.optimizer-result,.storage-analysis-table-wrap,.event-resolution) {
  color: #092827;
  background: #ffffff;
}

@media (max-width: 900px) {
  .windows-health-grid,.safe-repair-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .learning-grid { grid-template-columns: 1fr; }
}
@media (max-width: 560px) {
  .premium-trust-banner { grid-template-columns: 1fr; }
  .premium-trust-banner span { grid-row: auto; }
  .windows-health-grid,.safe-repair-grid { grid-template-columns: 1fr; }
  .learning-grid details > div { padding-left: .9rem; }
  .report-section { scroll-margin-top: 158px !important; }
}

/* =========================================================
   v9.2 - modern diagnostic workspace and complete Night mode
   ========================================================= */
.section-nav {
  isolation: isolate;
  border-radius: 18px !important;
  box-shadow: 0 16px 46px rgba(9,40,39,.13), 0 1px 0 rgba(255,255,255,.9) inset !important;
}
.report-scroll-progress {
  position: absolute; z-index: 4; right: 0; bottom: -1px; left: 0; height: 3px;
  overflow: hidden; border-radius: 0 0 18px 18px; background: rgba(8,118,92,.08);
  pointer-events: none;
}
.report-scroll-progress span {
  display: block; width: 0; height: 100%; border-radius: inherit;
  background: linear-gradient(90deg,#0b8668,#26dca7,#4b8cf5);
  box-shadow: 0 0 14px rgba(38,220,167,.5); transition: width .12s linear;
}

.report-section {
  --section-accent: #168565;
  --section-wash: #ecf8f3;
  position: relative;
  border-color: #c9ddd4 !important;
  border-radius: 18px !important;
  background: #fbfdfc !important;
  box-shadow: 0 10px 32px rgba(16,67,54,.055) !important;
  transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}
.report-section:not(.dashboard-shell)::before {
  content: ""; position: absolute; z-index: 2; top: 16px; bottom: 16px; left: 0; width: 4px;
  border-radius: 0 999px 999px 0; background: var(--section-accent);
  box-shadow: 0 0 20px color-mix(in srgb, var(--section-accent) 38%, transparent);
}
.report-section:not(.dashboard-shell)[open] {
  border-color: color-mix(in srgb, var(--section-accent) 28%, #c9ddd4) !important;
  box-shadow: 0 18px 48px rgba(16,67,54,.085) !important;
}
.report-section:not(.dashboard-shell) > .report-section-heading {
  min-height: 78px; padding: 1rem clamp(1.15rem,2.5vw,1.6rem) !important;
  background: rgba(255,255,255,.92) !important;
}
.report-section:not(.dashboard-shell) > .report-section-heading:hover {
  background: var(--section-wash) !important;
}
.report-section-heading small {
  color: var(--section-accent) !important; font: 800 .58rem/1.2 var(--fm) !important;
  letter-spacing: .09em; text-transform: uppercase;
}
.report-section-heading strong { font-size: clamp(1rem,1.8vw,1.2rem) !important; }
.report-section:not(.dashboard-shell) > .report-section-body {
  padding: clamp(1.15rem,3vw,2rem) !important;
  background: linear-gradient(135deg,var(--section-wash),rgba(255,255,255,.25) 34%,transparent 64%);
}
.report-section-body > :first-child { margin-top: 0; }
.report-section-body > :last-child { margin-bottom: 0; }
.report-section :is(.metric-card,.detail-card,.check-card,.optimizer-card,.console-tile) {
  transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}
@media (hover:hover) {
  .report-section :is(.metric-card,.detail-card,.check-card,.optimizer-card,.console-tile):hover {
    transform: translateY(-2px); border-color: color-mix(in srgb,var(--section-accent) 34%,#cbdcd5);
    box-shadow: 0 14px 32px rgba(16,67,54,.09);
  }
}

/* =========================================================
   v9.15 - release UX correction
   Compact Spotlight navigation and a viewport-safe Zyra panel.
   ========================================================= */
.issue-spotlight:focus-visible {
  outline: 3px solid rgba(79,124,255,.34);
  outline-offset: 3px;
}
.issue-spotlight > header {
  align-items: center;
  padding: 1rem 1.15rem !important;
}
.issue-slide-controls {
  flex: 0 0 auto;
  display: grid;
  justify-items: end;
  gap: .48rem;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}
.issue-slide-controls[hidden] { display: none !important; }
.issue-slide-controls > span {
  color: var(--muted);
  font: 750 .67rem/1 var(--mono);
  letter-spacing: .035em;
}
.issue-slide-controls > div {
  display: flex;
  align-items: center;
  gap: .38rem;
}
.issue-slide-controls button {
  min-width: 0 !important;
  min-height: 36px !important;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .38rem;
  padding: .48rem .68rem !important;
  border: 1px solid rgba(54,75,101,.14) !important;
  border-radius: 10px !important;
  color: var(--ink) !important;
  background: rgba(255,255,255,.78) !important;
  box-shadow: 0 5px 14px rgba(40,53,82,.06);
  font-size: .7rem !important;
  line-height: 1;
}
.issue-slide-controls button:hover {
  border-color: rgba(79,124,255,.42) !important;
  background: rgba(239,244,255,.96) !important;
}
.issue-slide-controls button:focus-visible {
  outline: 3px solid rgba(79,124,255,.28);
  outline-offset: 2px;
}
.issue-slide-controls button[aria-pressed="true"] {
  color: #fff !important;
  border-color: #3e67cb !important;
  background: linear-gradient(125deg,#3e72df,#7057d6) !important;
}
.issue-slide-controls button > span[aria-hidden="true"] { font-size: .82rem; }
.issue-slides,.issue-slide { min-height: 0 !important; }
.issue-slide { padding: clamp(1.3rem,3vw,2rem) !important; }

/* The launcher remains unchanged. Only the opened workspace is constrained. */
.neo-assistant {
  right: clamp(.7rem,1.6vw,1.25rem) !important;
  bottom: clamp(.7rem,1.6vw,1.25rem) !important;
  width: min(430px,calc(100vw - 1.4rem)) !important;
  max-height: calc(100dvh - 1.4rem);
}
.neo-panel {
  width: 100%;
  max-height: min(68dvh,640px,calc(100dvh - 92px)) !important;
  display: grid !important;
  grid-template-rows: auto minmax(0,1fr) auto;
  margin-bottom: .65rem !important;
  overflow: hidden !important;
  border-radius: 20px !important;
  background: rgba(249,251,255,.96) !important;
  box-shadow: 0 24px 68px rgba(25,36,67,.22),0 0 0 1px rgba(79,124,255,.1) !important;
  backdrop-filter: blur(18px) saturate(125%) !important;
  -webkit-backdrop-filter: blur(18px) saturate(125%) !important;
}
#neo-panel[hidden] { display: none !important; }
.neo-header {
  min-height: 86px;
  padding: .85rem .9rem !important;
}
.neo-header .zyra-mark-small {
  width: 44px !important;
  height: 44px !important;
}
.neo-header h2 { font-size: 1.2rem !important; }
.neo-header-note {
  max-width: 280px !important;
  font-size: .69rem !important;
  line-height: 1.34 !important;
}
.neo-header > button {
  width: 36px !important;
  height: 36px !important;
  border-radius: 11px !important;
}
.neo-body {
  min-height: 0 !important;
  max-height: none !important;
  padding: .85rem .9rem 1rem !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  overscroll-behavior: contain;
  scrollbar-gutter: stable;
  scrollbar-width: thin;
  scrollbar-color: rgba(44,139,112,.48) transparent;
}
.neo-body::-webkit-scrollbar { width: 8px; }
.neo-body::-webkit-scrollbar-thumb {
  border: 2px solid transparent;
  border-radius: 999px;
  background: rgba(44,139,112,.48);
  background-clip: padding-box;
}
.zyra-command-strip {
  display: grid !important;
  grid-template-columns: minmax(0,1fr) auto;
  align-items: center !important;
  gap: .5rem !important;
  margin-bottom: .7rem !important;
}
.zyra-command-strip .zyra-trustbar {
  min-width: 0;
  flex-wrap: nowrap !important;
  overflow-x: auto !important;
  scrollbar-width: none;
}
.zyra-command-strip .zyra-trustbar::-webkit-scrollbar { display: none; }
.zyra-command-strip .zyra-trustbar span {
  flex: 0 0 auto;
  padding: .3rem .42rem;
  font-size: .54rem;
}
.zyra-mode-switch button {
  min-height: 30px !important;
  padding: .34rem .48rem !important;
  font-size: .62rem !important;
}
.zyra-health-command {
  gap: .68rem !important;
  padding: .78rem !important;
  border-radius: 14px !important;
}
.zyra-score-dial { width: 56px !important; height: 56px !important; }
.zyra-score-dial strong { font-size: 1.28rem !important; }
.zyra-health-command > div:nth-child(2) > strong { font-size: .94rem !important; }
.zyra-health-command p {
  overflow: visible !important;
  font-size: .67rem !important;
  line-height: 1.38 !important;
  text-overflow: clip !important;
  white-space: normal !important;
}
.zyra-section-heading { margin: .82rem 0 .5rem !important; }
.zyra-section-heading h3 { font-size: .98rem !important; }
.zyra-quick-questions { gap: .45rem !important; }
.zyra-quick-questions button {
  min-height: 68px !important;
  gap: .52rem !important;
  padding: .58rem 1.35rem .58rem .58rem !important;
  border-radius: 12px !important;
}
.zyra-quick-questions button strong { font-size: .77rem !important; }
.zyra-quick-questions button small { font-size: .64rem !important; }
.zyra-question-number { width: 32px !important; height: 32px !important; }
.zyra-response { margin-top: .65rem !important; scroll-margin-top: .5rem; }
.zyra-response .zyra-answer {
  padding: .9rem !important;
  border-radius: 14px !important;
}
.zyra-response .zyra-answer h3 { font-size: 1.02rem !important; }
.zyra-answer > p { font-size: .8rem !important; line-height: 1.55 !important; }
.zyra-answer-meta span { font-size: .7rem !important; }
.neo-advice b { font-size: .84rem !important; }
.neo-advice p { font-size: .78rem !important; line-height: 1.52 !important; }
.neo-footer {
  padding: .58rem .9rem !important;
  background: rgba(239,244,252,.97) !important;
  backdrop-filter: none !important;
}
.neo-footer span { font-size: .62rem !important; line-height: 1.38 !important; }
.neo-footer small { font-size: .59rem !important; }

html[data-theme="dark"] .issue-slide-controls button {
  border-color: rgba(255,255,255,.12) !important;
  background: rgba(29,36,51,.86) !important;
}
html[data-theme="dark"] .issue-slide-controls button:hover { background: rgba(50,61,87,.92) !important; }
html[data-theme="dark"] .neo-panel { background: rgba(23,28,40,.97) !important; }
html[data-theme="dark"] .neo-footer { background: rgba(25,31,45,.98) !important; }

@media (max-width: 680px) {
  .issue-spotlight > header { align-items: stretch; flex-direction: column; }
  .issue-slide-controls { width: 100%; justify-items: start; }
  .issue-slide-controls > div { width: 100%; }
  .issue-slide-controls button { flex: 1 1 auto; }
  .neo-assistant { width: min(410px,calc(100vw - 1rem)) !important; right: .5rem !important; bottom: .5rem !important; }
  .neo-panel { max-height: min(72dvh,650px,calc(100dvh - 84px)) !important; }
}
@media (max-width: 430px) {
  .issue-slide-controls button { padding-inline: .52rem !important; }
  .issue-slide-controls button > span:not([aria-hidden="true"]) { font-size: .64rem; }
  .zyra-command-strip { grid-template-columns: 1fr; }
  .zyra-mode-switch { justify-self: start; }
  .zyra-quick-questions { grid-template-columns: 1fr !important; }
  .neo-header-note { max-width: 220px !important; }
}

/* v3.5: action workspace, readable glass surfaces and honest elapsed loading. */
.action-workspace { margin-top: 24px; padding: clamp(18px,3vw,32px); border: 1px solid #87a9ba66; border-radius: 24px; background: linear-gradient(135deg,#e9f7ff88,#ecfff588); color: inherit; }
.action-workspace header { display: flex; gap: 20px; justify-content: space-between; align-items: center; flex-wrap: wrap; }
.action-workspace h3 { font-size: clamp(22px,3vw,30px); margin: 8px 0; }
.action-workspace p { line-height: 1.65; }
.action-trends { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px; margin: 24px 0 12px; }
.action-trends article,.action-item { background: #ffffffb8; border: 1px solid #87a9ba55; border-radius: 16px; padding: 18px; }
.action-trends span { display: block; font-size: 14px; }
.action-trends strong { display: block; font-size: 26px; margin-top: 8px; }
.action-controls { display: flex; flex-wrap: wrap; gap: 16px; margin-top: 24px; }
.action-controls label { display: grid; gap: 8px; flex: 1 1 200px; font-weight: 600; }
.action-controls input,.action-controls select { width: 100%; padding: 14px; border-radius: 12px; border: 1px solid #87a9ba99; background: #fff; color: #14303b; font: inherit; }
.action-list { display: grid; gap: 12px; max-height: 480px; overflow: auto; overscroll-behavior: contain; }
.action-item h4 { margin: 8px 0; font-size: 18px; }
.action-item p { margin: 8px 0; }
[data-theme="dark"] .action-workspace { background: linear-gradient(135deg,#192c3c,#172c29); }
[data-theme="dark"] .action-trends article,[data-theme="dark"] .action-item { background: #101f2bcc; }
[data-theme="dark"] .action-controls input,[data-theme="dark"] .action-controls select { background: #111e29; color: #e6eff5; }
.is-collecting .scan-progress-bar { width: 0; }
.is-collecting .scan-stage-list .active { opacity: 1; background: transparent; }
.is-collecting .scan-progress { display: none; }
@media(max-width:600px) { .action-trends { grid-template-columns: 1fr; } .action-workspace header button { width: 100%; } }
@media print { .action-controls,#support-brief-button { display: none; } .action-list { max-height: none; overflow: visible; } }

/* v3.0 release controls: exact Stability Lab cooldown and lightweight page
   navigation. These stay dependency-free so the existing static/local
   deployment remains unchanged. */
.sr-only {
  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;
}
.stability-cooldown {
  display: inline-flex;
  align-items: center;
  gap: .65rem;
  margin: .75rem 0 0;
  padding: .58rem .75rem;
  border: 1px solid rgba(65,92,190,.2);
  border-radius: 11px;
  color: var(--muted);
  background: rgba(231,237,255,.68);
  font-size: .75rem;
}
.stability-cooldown[hidden] { display: none !important; }
.stability-cooldown strong { color: #3855ad; font: 850 .84rem/1 var(--mono); letter-spacing: .06em; }
html[data-theme="dark"] .stability-cooldown { border-color: rgba(145,164,255,.2); background: rgba(75,92,170,.13); }
html[data-theme="dark"] .stability-cooldown strong { color: #c5ceff; }

.page-utility-dock {
  position: fixed;
  right: clamp(.8rem,1.7vw,1.4rem);
  bottom: clamp(.7rem,1.6vw,1.25rem);
  z-index: 1002;
  display: grid;
  gap: .48rem;
  padding: .5rem;
  border: 1px solid rgba(255,255,255,.64);
  border-radius: 1.5rem;
  background: linear-gradient(145deg,rgba(255,255,255,.72),rgba(231,247,244,.42));
  box-shadow: 0 20px 55px rgba(15,42,62,.18),inset 0 1px 0 rgba(255,255,255,.86);
  backdrop-filter: blur(22px) saturate(145%);
  -webkit-backdrop-filter: blur(22px) saturate(145%);
}
body[data-utility-context="report"] .page-utility-dock {
  right: auto;
  left: clamp(.8rem,1.7vw,1.4rem);
}
body[data-utility-context="report"] .linkedin-follow {
  display: none;
}
.linkedin-follow,.back-to-top {
  position: relative;
  width: 48px;
  height: 48px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(255,255,255,.55);
  border-radius: 16px;
  color: #fff;
  background: linear-gradient(145deg,rgba(31,132,205,.96),rgba(10,87,151,.96));
  box-shadow: 0 10px 24px rgba(10,87,151,.26),inset 0 1px 0 rgba(255,255,255,.34);
  text-decoration: none;
  cursor: pointer;
  transition: transform .18s ease,box-shadow .18s ease,filter .18s ease;
}
.linkedin-follow span { font: 850 1.06rem/1 var(--display); letter-spacing: -.04em; }
.back-to-top { background: linear-gradient(145deg,rgba(35,193,148,.96),rgba(5,116,89,.96)); box-shadow:0 10px 24px rgba(5,116,89,.25),inset 0 1px 0 rgba(255,255,255,.34); }
.back-to-top svg { width: 22px; height: 22px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.policy-back svg { width:1.25rem; height:1.25rem; fill:none; stroke:currentColor; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; transition:transform .18s ease; }
.policy-back:hover svg,.policy-back:focus-visible svg { transform:translateX(-3px); }
.linkedin-follow::after,.back-to-top::after {
  content: attr(data-label);
  position: absolute;
  top: 50%;
  right: calc(100% + .72rem);
  width: max-content;
  max-width: 11rem;
  padding: .45rem .62rem;
  border: 1px solid rgba(255,255,255,.5);
  border-radius: .65rem;
  color: #effffc;
  background: rgba(8,35,48,.86);
  box-shadow: 0 10px 28px rgba(8,27,37,.2);
  font: 760 .7rem/1.15 var(--display);
  opacity: 0;
  pointer-events: none;
  transform: translate(5px,-50%);
  transition: opacity .16s ease,transform .16s ease;
  backdrop-filter: blur(14px);
}
body[data-utility-context="report"] .back-to-top::after { left: calc(100% + .72rem); right: auto; transform: translate(-5px,-50%); }
.linkedin-follow:hover,.linkedin-follow:focus-visible,.back-to-top:hover,.back-to-top:focus-visible { transform: translateY(-2px) scale(1.025); filter: saturate(1.08); }
.linkedin-follow:hover::after,.linkedin-follow:focus-visible::after,.back-to-top:hover::after,.back-to-top:focus-visible::after { opacity: 1; transform: translate(0,-50%); }
.back-to-top[hidden] { display: none !important; }
html[data-theme="dark"] .page-utility-dock { border-color:rgba(170,230,218,.2); background:linear-gradient(145deg,rgba(20,38,52,.76),rgba(7,30,36,.58)); box-shadow:0 20px 55px rgba(0,0,0,.38),inset 0 1px 0 rgba(255,255,255,.12); }
html[data-theme="dark"] .linkedin-follow,html[data-theme="dark"] .back-to-top { border-color: rgba(255,255,255,.18); }
@media (max-width: 680px) {
  .page-utility-dock { right: .55rem; bottom: .55rem; padding:.38rem; border-radius:1.25rem; }
  body[data-utility-context="report"] .page-utility-dock { right:auto; left:.55rem; }
  .linkedin-follow,.back-to-top { width: 44px; height: 44px; border-radius:14px; }
  .linkedin-follow::after,.back-to-top::after { display:none; }
}
@media (prefers-reduced-motion: reduce) {
  .linkedin-follow,.back-to-top { transition: none; }
}
@media (prefers-reduced-motion: reduce) {
  .issue-slide,.neo-panel { animation: none !important; }
}

.report-section[data-section="performance"] { --section-accent:#3979dc; --section-wash:#eef4ff; }
.report-section[data-section="storage"] { --section-accent:#0f9870; --section-wash:#ebfaf4; }
.report-section[data-section="memory-lab"] { --section-accent:#7657d9; --section-wash:#f3f0ff; }
.report-section[data-section="battery"] { --section-accent:#c57b13; --section-wash:#fff7e8; }
.report-section[data-section="driver-actions"] { --section-accent:#1485a1; --section-wash:#edf9fc; }
.report-section[data-section="security"] { --section-accent:#d05750; --section-wash:#fff1ef; }
.report-section[data-section="network"] { --section-accent:#2779c8; --section-wash:#eef7ff; }
.report-section[data-section="optimize"] { --section-accent:#168565; --section-wash:#edf9f4; }
.report-section[data-section="reliability"] { --section-accent:#b14e6c; --section-wash:#fff0f4; }
.report-section[data-section="learning"] { --section-accent:#7657d9; --section-wash:#f4f1ff; }
.report-section[data-section="settings"] { --section-accent:#55716a; --section-wash:#f1f6f4; }
.report-section[data-section="system"] { --section-accent:#147f99; --section-wash:#edf8fb; }

/* Use a single, readable surface system after Night mode is selected. */
html[data-theme="dark"] .section-nav {
  box-shadow: 0 18px 48px rgba(0,0,0,.38), 0 1px 0 rgba(143,246,209,.06) inset !important;
}
html[data-theme="dark"] .report-scroll-progress { background: rgba(143,246,209,.09); }
html[data-theme="dark"] .report-section {
  --section-wash: rgba(89,226,177,.035);
  color: #eef9f5 !important; background: #0f1d19 !important; border-color: #29473e !important;
  box-shadow: 0 14px 40px rgba(0,0,0,.24) !important;
}
html[data-theme="dark"] .report-section:not(.dashboard-shell)[open] {
  border-color: #3e695a !important; box-shadow: 0 22px 54px rgba(0,0,0,.32) !important;
}
html[data-theme="dark"] .report-section:not(.dashboard-shell) > .report-section-heading {
  color: #f1fcf8 !important; background: #142722 !important; border-color: #29473e !important;
}
html[data-theme="dark"] .report-section:not(.dashboard-shell) > .report-section-heading:hover { background: #19332c !important; }
html[data-theme="dark"] .report-section-heading small,
html[data-theme="dark"] .report-section .eyebrow,
html[data-theme="dark"] .report-section .console-live { color: #7eecc5 !important; }
html[data-theme="dark"] .report-section:not(.dashboard-shell) > .report-section-body {
  background: radial-gradient(circle at 4% 0,rgba(72,224,168,.055),transparent 34%),#101f1b !important;
  border-color: #29473e !important;
}

html[data-theme="dark"] :is(
  .console-health,.console-icon,.score-pie,
  .priority-group,.priority-group > summary,.priority-chip,
  .memory-lab > header,.memory-pressure,.memory-pressure.high,
  .score-ledger article,.score-ledger li,.score-card,.score-gauge::before,
  .issue-diagnosis,.issue-diagnosis small,.event-explanation,.event-empty,
  .event-timeline li div,.privacy-summary,.desktop-handoff li,
  .unavailable-info,.optimizer-card,.optimizer-card .ghost-button,
  .storage-drive-action,.drive-evidence > header,.capability-ledger,
  .speed-result,.trend-card,.settings-panel article,.choice-buttons button
) {
  color: #eef9f5 !important; background: #162a25 !important; border-color: #3b5d52 !important;
}
html[data-theme="dark"] .score-pie-ring::before { background: #162a25 !important; }
html[data-theme="dark"] .score-pie-ring { background-color: #263b35; }
html[data-theme="dark"] .console-health { background: #132823 !important; }
html[data-theme="dark"] .console-health span,
html[data-theme="dark"] .console-health small,
html[data-theme="dark"] .console-tile > header span,
html[data-theme="dark"] .console-tile-top span,
html[data-theme="dark"] .drive-evidence-grid span,
html[data-theme="dark"] .drive-evidence > header b,
html[data-theme="dark"] .windows-health-grid article > span { color: #a9c5bb !important; }
html[data-theme="dark"] .console-health strong,
html[data-theme="dark"] .console-icon,
html[data-theme="dark"] .drive-evidence > header span { color: #8ff6d1 !important; }
html[data-theme="dark"] .console-icon { background: #17382f !important; border-color: #3f6f5f !important; }
html[data-theme="dark"] .score-pie :is(strong,p) { color: #eef9f5 !important; }
html[data-theme="dark"] .score-pie span { color: #b8ccc5 !important; }
html[data-theme="dark"] .priority-group { background: #10201c !important; }
html[data-theme="dark"] .priority-group > summary { background: #172b26 !important; }
html[data-theme="dark"] .priority-chip { color: #c8ddd5 !important; background: #203b33 !important; }
html[data-theme="dark"] .priority-group.critical > summary b { background: #a92e2a !important; }
html[data-theme="dark"] .priority-group.important > summary b { background: #8b4c08 !important; }
html[data-theme="dark"] .priority-group.policy > summary b { background: #5b4785 !important; }
html[data-theme="dark"] .priority-group.maintenance > summary b { background: #315caa !important; }
html[data-theme="dark"] .priority-empty { color: #b6cbc3 !important; background: transparent !important; }
html[data-theme="dark"] .check-card-top + h4,
html[data-theme="dark"] .clinical-explanation dd { color: #f3fffb !important; }
html[data-theme="dark"] .clinical-explanation dt,
html[data-theme="dark"] .check-card p,
html[data-theme="dark"] .score-ledger small { color: #b3c9c1 !important; }
html[data-theme="dark"] .issue-diagnosis > summary,
html[data-theme="dark"] .event-resolution > summary { color: #8ff6d1 !important; }
html[data-theme="dark"] .issue-diagnosis small {
  color: #ffe5a7 !important; background: #382d19 !important; border-left-color: #f2bd61 !important;
}
html[data-theme="dark"] .memory-lab > header { background: #152923 !important; }
html[data-theme="dark"] .memory-pressure { color: #9ff5d5 !important; background: #173b32 !important; }
html[data-theme="dark"] .memory-pressure.high { color: #ffe09b !important; background: #3b2c17 !important; border-color: #a97932 !important; }
html[data-theme="dark"] .unavailable-info { color: #9af3d2 !important; background: #18372f !important; }
html[data-theme="dark"] .unavailable-info::after { color: #eef9f5 !important; background: #172b26 !important; border-color: #47675d !important; }
html[data-theme="dark"] .score-ledger li > span { color: #8ff6d1 !important; }
html[data-theme="dark"] .score-ledger li.warning > span { color: #ffd37f !important; }
html[data-theme="dark"] .score-ledger li.critical > span { color: #ffaaa2 !important; }
html[data-theme="dark"] .event-timeline li::before { border-color: #101f1b !important; }
html[data-theme="dark"] .trend-chart line { stroke: #334e45; }
html[data-theme="dark"] .trend-chart circle { fill: #162a25; stroke: #74e0b9; }
html[data-theme="dark"] .trend-chart polyline { stroke: #74e0b9; }
html[data-theme="dark"] .skip-link { color: #071b15; background: #8ff6d1 !important; }
html[data-theme="dark"] .section-nav-primary a > span { color: #a8c8bd !important; }
html[data-theme="dark"] .issue-slide-evidence span,
html[data-theme="dark"] .sensor-source-card > span,
html[data-theme="dark"] .fit-card > span,
html[data-theme="dark"] .configuration-verdict span { color: #8ff6d1 !important; }
html[data-theme="dark"] .tab-guidance {
  color: #b7ccc4 !important; background: #162a25 !important; border-color: #3b5d52 !important;
}
html[data-theme="dark"] .tab-guidance strong { color: #f3fffb !important; }
html[data-theme="dark"] .tab-capacity span { color: #c8ffe9 !important; }

@media (max-width: 760px) {
  .report-section:not(.dashboard-shell) > .report-section-heading { min-height: 68px; }
  .report-section:not(.dashboard-shell) > .report-section-body { padding: 1rem !important; }
  .report-section:not(.dashboard-shell)::before { top: 12px; bottom: 12px; }
}
@media (prefers-reduced-motion: reduce) {
  .report-scroll-progress span,.report-section,.report-section :is(.metric-card,.detail-card,.check-card,.optimizer-card,.console-tile) { transition: none !important; }
}

/* =========================================================
   v9.8 - cohesive application shell and removal completion
   ========================================================= */
body::before {
  content: ""; position: fixed; z-index: -1; inset: 0; pointer-events: none;
  background:
    radial-gradient(circle at 8% 8%, rgba(0,214,143,.08), transparent 27rem),
    radial-gradient(circle at 92% 26%, rgba(82,164,255,.07), transparent 30rem);
}
.topbar { box-shadow: 0 8px 30px rgba(9,40,39,.05); }
.brand-copy strong { font-size: .86rem; }
.privacy-pill { min-height: 38px; display: inline-flex; align-items: center; }
.installer, .results { width: min(100%, 1440px); }
.install-panel, .results-heading, .report-section, .state-card {
  border-color: rgba(36,116,91,.18) !important;
}
.primary-button, .ghost-button, .report-menu > summary { border-radius: 10px !important; }
.primary-button:not(:disabled):hover { transform: translateY(-2px); box-shadow: 0 15px 34px rgba(23,107,82,.24); }
.ghost-button:not(:disabled):hover, .report-menu > summary:hover { transform: translateY(-1px); }
.results-actions { gap: .48rem !important; }
.results-actions > button, .results-actions summary { white-space: nowrap; }
.report-guide, .accuracy-note, .report-feedback { border-radius: 14px !important; }

.removal-state {
  position: relative; isolation: isolate; min-height: calc(100dvh - 72px) !important;
  background: linear-gradient(145deg, rgba(244,251,247,.76), rgba(234,246,240,.9));
}
.removal-state::before {
  content: ""; position: absolute; z-index: -1; width: min(62vw,760px); aspect-ratio: 1;
  border-radius: 50%; background: radial-gradient(circle, rgba(0,214,143,.12), transparent 68%);
}
.removal-state-card {
  width: min(820px,100%); max-height: calc(100dvh - 112px); overflow-y: auto;
  padding: clamp(1.35rem,3.2vw,2.6rem) !important; text-align: center;
}
.removal-state-card .success-symbol {
  width: 58px; height: 58px; display: grid; place-items: center; margin-bottom: .25rem;
  border-radius: 18px; color: #063d2e; background: linear-gradient(145deg,#a8f4d6,#62ddb2);
  box-shadow: 0 12px 28px rgba(0,159,108,.2); font-size: 1.65rem; font-weight: 900;
}
.removal-state-card h2 { margin-bottom: .7rem; font-size: clamp(2rem,5vw,3.4rem) !important; }
.removal-state-card > #removal-message { max-width: 660px; color: var(--muted); font-size: clamp(.92rem,1.6vw,1.05rem); }
.removal-steps {
  width: min(650px,100%); display: grid; grid-template-columns: repeat(3,1fr); gap: .6rem;
  margin: 1.25rem 0; padding: 0; list-style: none;
}
.removal-steps li {
  position: relative; min-width: 0; display: grid; justify-items: center; gap: .45rem;
  padding: .75rem .55rem; border: 1px solid var(--line); border-radius: 11px;
  color: var(--muted); background: rgba(255,255,255,.62); font-size: .7rem;
}
.removal-steps li span { width: 26px; height: 26px; display: grid; place-items: center; border-radius: 50%; background: rgba(9,40,39,.07); }
.removal-steps li.active { color: var(--ink); border-color: rgba(0,174,116,.5); background: rgba(0,214,143,.08); }
.removal-steps li.active span { color: #063d2e; background: var(--g); box-shadow: 0 0 0 5px rgba(0,214,143,.09); }
.removal-steps li.done { color: var(--gd); border-color: rgba(0,174,116,.25); }
.removal-steps li.done span { color: transparent; background: var(--gd); }
.removal-steps li.done span::after { content: "\2713"; position: absolute; color: white; }
.removal-state-card .privacy-summary {
  width: min(690px,100%); margin: .2rem 0 1rem; padding: 1rem 1.15rem !important;
  border-radius: 13px !important; text-align: left; background: rgba(255,255,255,.62) !important;
}
.removal-state-card .privacy-summary h3 { margin-bottom: .55rem; font-size: .92rem; }
.removal-state-card .privacy-summary ul { margin: 0; padding-left: 1.2rem; }
.removal-state-card .privacy-summary li { margin: .28rem 0; color: var(--muted); font-size: .74rem; line-height: 1.5; }
.removal-state-card .auto-close-note { width: min(690px,100%); margin: 0; border: 1px solid rgba(0,174,116,.14); border-radius: 12px !important; }
.close-page-button { min-width: 210px; margin-top: 1rem; }
.close-page-help { max-width: 590px; margin: .7rem 0 0; color: var(--muted); font-size: .72rem; }

html[data-theme="dark"] .removal-state { background: linear-gradient(145deg,#0d1716,#11231e); }
html[data-theme="dark"] .removal-steps li,
html[data-theme="dark"] .removal-state-card .privacy-summary { background: rgba(255,255,255,.035) !important; }

@media (max-width: 680px) {
  .topbar { padding-inline: .75rem !important; }
  .privacy-pill { font-size: 0 !important; width: 38px; justify-content: center; padding: 0 !important; }
  .privacy-pill span { margin: 0; }
  .removal-state { align-items: stretch !important; padding: .65rem !important; }
  .removal-state-card { max-height: calc(100dvh - 80px); border-radius: 16px !important; }
  .removal-steps { grid-template-columns: 1fr; gap: .38rem; }
  .removal-steps li { grid-template-columns: auto 1fr; justify-items: start; align-items: center; text-align: left; }
  .removal-state-card .privacy-summary li { font-size: .7rem; }
  .results-actions > button, .report-menu { flex: 1 1 145px; }
  .report-menu > summary { justify-content: center; }
}

@media (prefers-reduced-motion: reduce) {
  body::before, .removal-state::before { display: none; }
}

/* =========================================================
   v9.10 - Zyra professional local IT support console
   ========================================================= */
.neo-assistant { width: min(400px,calc(100vw - 2rem)) !important; }
.neo-panel {
  max-height: min(60dvh,520px) !important;
  border: 1px solid rgba(23,126,101,.34) !important;
  border-radius: 20px !important;
  background: #f7faf8 !important;
  box-shadow: 0 0 0 1px rgba(255,255,255,.8),0 24px 70px rgba(5,35,32,.24) !important;
}
.neo-header {
  align-items: flex-start !important;
  padding: .78rem .82rem !important;
  color: #f4fff9 !important;
  background: radial-gradient(circle at 18% 0,rgba(43,222,163,.2),transparent 8rem),linear-gradient(135deg,#082e2b 0%,#0b493f 58%,#0a6552 100%) !important;
}
.zyra-header-identity { min-width: 0; display: flex; align-items: center; gap: .7rem; }
.zyra-header-identity > div { min-width: 0; }
.neo-header .zyra-mark-small {
  flex: 0 0 auto; width: 42px !important; height: 42px !important; margin: 0 !important;
  border: 1px solid rgba(116,246,205,.62); box-shadow: 0 0 0 4px rgba(55,224,170,.1),0 0 20px rgba(46,215,167,.2);
}
.neo-header p { display: flex !important; align-items: center; gap: .25rem; margin: 0 !important; color: #9ee5cf !important; font: 800 .52rem/1 var(--fm) !important; letter-spacing: .1em !important; }
.neo-header h2 { margin: .26rem 0 0 !important; color: #fff !important; font-size: 1.03rem !important; letter-spacing: -.015em !important; }
.neo-header-note { max-width: 270px !important; margin-top: .22rem !important; color: rgba(235,255,248,.72) !important; font-size: .6rem !important; }
.neo-header .neo-status { width: 6px; height: 6px; background: #58e5b2; box-shadow: 0 0 0 3px rgba(88,229,178,.15),0 0 10px rgba(88,229,178,.8); }
.neo-header > button {
  flex: 0 0 auto; width: 32px; height: 32px; display: grid; place-items: center; padding: 0;
  border: 1px solid rgba(255,255,255,.12) !important; border-radius: 9px; color: rgba(255,255,255,.82) !important;
  background: rgba(255,255,255,.06) !important; font-size: 1.1rem !important; line-height: 1;
}
.neo-header > button:hover { color: #fff !important; background: rgba(255,255,255,.14) !important; }
.neo-body { padding: .72rem .78rem .85rem !important; background: #f7faf8; }
.zyra-command-strip { display: flex; align-items: center; justify-content: space-between; gap: .45rem; margin-bottom: .55rem; }
.zyra-command-strip .zyra-trustbar { min-width: 0; margin: 0; overflow: hidden; }
.zyra-command-strip .zyra-trustbar span { white-space: nowrap; padding: .24rem .34rem; font-size: .45rem; }
.zyra-mode-switch { flex: 0 0 auto; display: inline-flex; padding: .16rem; border: 1px solid #d3dfd9; border-radius: 8px; background: #fff; }
.zyra-mode-switch button { padding: .28rem .4rem; border: 0; border-radius: 6px; color: var(--muted); background: transparent; cursor: pointer; font-size: .52rem; font-weight: 750; }
.zyra-mode-switch button[aria-pressed="true"], .zyra-mode-switch button:hover { color: #075f49; background: #e7f6f0; }
.zyra-health-command {
  position: relative; display: grid; grid-template-columns: auto minmax(0,1fr) auto; align-items: center; gap: .65rem;
  padding: .7rem; overflow: hidden; border: 1px solid rgba(16,139,103,.24); border-radius: 14px;
  background: linear-gradient(135deg,#fff 0%,#ecfaf4 100%); box-shadow: 0 8px 22px rgba(15,83,67,.07);
}
.zyra-health-command::before { content: ""; position: absolute; inset: 0 auto 0 0; width: 4px; background: #13a77a; }
.zyra-health-command[data-tone="warning"]::before { background: #d39422; }
.zyra-health-command[data-tone="critical"]::before { background: #d95f57; }
.zyra-score-dial { width: 54px; height: 54px; display: grid; place-content: center; border: 5px solid #c9f0e1; border-radius: 50%; background: #fff; text-align: center; }
.zyra-score-dial strong { color: var(--ink); font: 800 1.18rem/.9 var(--fh); }
.zyra-score-dial small { margin-top: .14rem; color: var(--muted); font: 700 .42rem/1 var(--fm); }
.zyra-health-command > div:nth-child(2) { min-width: 0; }
.zyra-health-command > div:nth-child(2) > small { display: block; color: #08765a; font: 800 .48rem/1 var(--fm); letter-spacing: .08em; }
.zyra-health-command > div:nth-child(2) > strong { display: block; margin-top: .28rem; color: var(--ink); font: 780 .86rem/1.1 var(--fh); }
.zyra-health-command p { margin: .25rem 0 0; overflow: hidden; color: var(--muted); font-size: .58rem; line-height: 1.3; text-overflow: ellipsis; white-space: nowrap; }
.zyra-coverage { min-width: 48px; display: grid; gap: .13rem; padding-left: .55rem; border-left: 1px solid #d9e5df; text-align: right; }
.zyra-coverage strong { color: var(--ink); font: 800 .8rem/1 var(--fh); }
.zyra-coverage small { color: var(--muted); font-size: .46rem; }
.zyra-context-row { display: grid; grid-template-columns: 1.35fr 1fr; gap: .35rem; margin: .4rem 0 .7rem; }
.zyra-context-row > span { min-width: 0; display: grid; gap: .18rem; padding: .42rem .5rem; border: 1px solid #dce5e0; border-radius: 9px; background: rgba(255,255,255,.82); }
.zyra-context-row small { color: var(--muted); font: 750 .43rem/1 var(--fm); letter-spacing: .05em; }
.zyra-context-row strong { overflow: hidden; color: var(--ink); font-size: .61rem; text-overflow: ellipsis; white-space: nowrap; }
.zyra-section-heading { display: flex; align-items: end; justify-content: space-between; gap: 1rem; margin-bottom: .38rem; }
.zyra-section-heading small { color: #08765a; font: 800 .46rem/1 var(--fm); letter-spacing: .09em; }
.zyra-section-heading h3 { margin: .16rem 0 0; color: var(--ink); font-size: .84rem; }
.zyra-section-heading > span { color: var(--muted); font-size: .5rem; }
.zyra-quick-questions { grid-template-columns: 1fr 1fr !important; gap: .38rem !important; margin: 0 !important; }
.zyra-quick-questions .zyra-topic { min-width: 0; }
.zyra-quick-questions .zyra-topic:has(.zyra-answer) { grid-column: auto !important; }
.zyra-quick-questions button {
  min-height: 61px !important; display: grid !important; grid-template-columns: auto minmax(0,1fr); align-items: center; gap: .48rem;
  padding: .5rem 1.35rem .5rem .5rem !important; border-radius: 11px !important; background: #fff !important;
  box-shadow: 0 3px 10px rgba(12,58,50,.035); line-height: 1 !important;
}
.zyra-quick-questions button:hover, .zyra-quick-questions button[aria-pressed="true"] { border-color: #4ab892 !important; background: #effaf6 !important; box-shadow: 0 7px 16px rgba(8,118,90,.09); }
.zyra-quick-questions button > span:nth-child(2) { min-width: 0; display: grid; gap: .25rem; }
.zyra-quick-questions button strong { overflow: hidden; color: var(--ink); font-size: .65rem; text-overflow: ellipsis; white-space: nowrap; }
.zyra-quick-questions button small { overflow: hidden; color: var(--muted); font-size: .48rem; font-weight: 550; text-overflow: ellipsis; white-space: nowrap; }
.zyra-question-number { width: 27px; height: 27px; display: grid; place-items: center; border-radius: 8px; color: #08765a; background: #e4f7ef; font: 800 .48rem/1 var(--fm); }
.zyra-response { margin-top: .48rem; }
.zyra-response .zyra-answer { margin: 0; border: 1px solid #8dcdb6 !important; border-radius: 12px !important; background: linear-gradient(145deg,#fff,#eff9f5) !important; }
.zyra-response .zyra-answer h3 { font-size: .86rem; }
.zyra-start-note { margin: .48rem 0 0; padding: .42rem .55rem; border-left: 2px solid #6bc5a4; color: var(--muted); background: rgba(235,248,242,.58); font-size: .53rem; line-height: 1.4; }
.zyra-more { margin-top: .65rem !important; border-top: 1px solid #d8e4de !important; }
.zyra-more > summary { padding: .65rem .08rem .2rem !important; }
.zyra-more > summary > span { display: grid !important; gap: .18rem; min-width: 0 !important; padding: 0 !important; border-radius: 0 !important; color: var(--ink) !important; background: transparent !important; text-align: left !important; font-size: .68rem !important; }
.zyra-more > summary > span small { color: #08765a; font: 800 .44rem/1 var(--fm); letter-spacing: .09em; }
.zyra-more > summary > b { min-width: 25px; padding: .22rem .38rem; border-radius: 999px; color: #08765a; background: #e5f5ef; text-align: center; font-size: .52rem; }
.zyra-search { display: grid; grid-template-columns: 1fr auto; align-items: center; gap: .3rem .5rem; margin-top: .45rem; }
.zyra-search label { color: var(--ink); font-size: .57rem; font-weight: 750; }
.zyra-search input { grid-column: 1 / -1; width: 100%; min-height: 38px; padding: .55rem .65rem; border: 1px solid #cddbd4; border-radius: 9px; color: var(--ink); outline: none; background: #fff; font: 600 .6rem/1 var(--fd); }
.zyra-search input:focus { border-color: #2fa67f; box-shadow: 0 0 0 3px rgba(47,166,127,.12); }
.zyra-search > small { grid-row: 1; grid-column: 2; color: var(--muted); font-size: .48rem; }
.zyra-question-library { gap: .3rem !important; margin: .45rem 0 0 !important; }
.zyra-question-library .zyra-topic[hidden] { display: none; }
.zyra-question-library button { min-height: 38px !important; padding: .48rem 1.5rem .48rem .58rem !important; border-radius: 9px !important; background: rgba(255,255,255,.8) !important; font-size: .6rem !important; }
.zyra-question-library button[aria-pressed="true"] { border-color: #49b58f !important; background: #ebf8f3 !important; }
.zyra-search-empty { margin: .5rem 0 0; padding: .65rem; border: 1px dashed #c7d7d0; border-radius: 9px; color: var(--muted); text-align: center; font-size: .56rem; }
.zyra-welcome { display: grid; justify-items: center; gap: .45rem; padding: 1.5rem 1rem; border: 1px dashed #b8d5c9; border-radius: 14px; color: var(--muted); background: #fff; text-align: center; }
.zyra-welcome-mark { width: 38px; height: 38px; display: grid; place-items: center; border-radius: 11px; color: #08765a; background: #e4f7ef; font: 800 .58rem/1 var(--fm); }
.zyra-welcome strong { color: var(--ink); font-size: .8rem; }
.zyra-welcome p { margin: 0; font-size: .64rem; line-height: 1.5; }
.neo-footer { grid-template-columns: 1fr !important; gap: .2rem !important; padding: .5rem .8rem !important; background: #edf3f0 !important; }
.neo-footer span { font-size: .53rem !important; }
.neo-footer small { display: flex; align-items: center; gap: .35rem; color: #42665c !important; font-size: .5rem !important; }
.neo-footer small .neo-status { flex: 0 0 auto; display: inline-block; width: 6px; height: 6px; border-radius: 50%; background: #20ad7c; box-shadow: 0 0 0 3px rgba(32,173,124,.1); }

html[data-theme="dark"] .neo-panel, html[data-theme="dark"] .neo-body { background: #10201d !important; }
html[data-theme="dark"] .zyra-mode-switch, html[data-theme="dark"] .zyra-health-command,
html[data-theme="dark"] .zyra-context-row > span, html[data-theme="dark"] .zyra-quick-questions button,
html[data-theme="dark"] .zyra-question-library button, html[data-theme="dark"] .zyra-search input,
html[data-theme="dark"] .zyra-welcome { background: #172a26 !important; border-color: #385a50 !important; }
html[data-theme="dark"] .zyra-response .zyra-answer { background: linear-gradient(145deg,#172a26,#13241f) !important; border-color: #3d7160 !important; }
html[data-theme="dark"] .zyra-start-note { background: rgba(37,76,65,.35); }
html[data-theme="dark"] .zyra-question-number, html[data-theme="dark"] .zyra-more > summary > b { color: #9cf0d1; background: #21463b; }
html[data-theme="dark"] .neo-footer { background: #13231f !important; }
html[data-theme="dark"] .neo-footer small { color: #a9c8be !important; }

@media (max-width: 680px) {
  .neo-assistant { width: min(360px,calc(100vw - 1.3rem)) !important; }
  .neo-panel { max-height: min(58dvh,490px) !important; }
  .zyra-quick-questions { grid-template-columns: 1fr 1fr !important; }
  .zyra-health-command { grid-template-columns: auto minmax(0,1fr); }
  .zyra-coverage { display: none; }
}

@media (max-width: 390px) {
  .zyra-command-strip { align-items: stretch; flex-direction: column; }
  .zyra-mode-switch { align-self: flex-start; }
  .zyra-quick-questions { grid-template-columns: 1fr !important; }
}

/* v9.10 usability correction - readable, human-first Zyra content */
.neo-assistant { width: min(470px,calc(100vw - 2rem)) !important; }
.neo-panel {
  max-height: min(76dvh,760px) !important;
  border-radius: 18px !important;
}
.neo-header { padding: .95rem 1rem !important; }
.neo-header .zyra-mark-small { width: 48px !important; height: 48px !important; }
.neo-header p { font-size: .65rem !important; }
.neo-header h2 { margin-top: .3rem !important; font-size: 1.3rem !important; line-height: 1.08 !important; }
.neo-header-note { max-width: 325px !important; margin-top: .3rem !important; font-size: .76rem !important; line-height: 1.4 !important; }
.neo-header > button { width: 38px !important; height: 38px !important; font-size: 1.35rem !important; }
.neo-body { padding: .9rem 1rem 1.05rem !important; }
.zyra-command-strip { margin-bottom: .75rem; }
.zyra-command-strip .zyra-trustbar span { padding: .32rem .48rem; font-size: .62rem; }
.zyra-mode-switch { padding: .2rem; }
.zyra-mode-switch button { min-height: 30px; padding: .34rem .55rem; font-size: .66rem; }
.zyra-health-command { gap: .8rem; padding: .85rem; border-radius: 13px; }
.zyra-score-dial { width: 62px; height: 62px; border-width: 5px; }
.zyra-score-dial strong { font-size: 1.42rem; }
.zyra-score-dial small { font-size: .55rem; }
.zyra-health-command > div:nth-child(2) > small { font-size: .58rem; }
.zyra-health-command > div:nth-child(2) > strong { margin-top: .32rem; font-size: 1rem; }
.zyra-health-command p { margin-top: .32rem; font-size: .7rem; line-height: 1.35; }
.zyra-coverage { min-width: 58px; }
.zyra-coverage strong { font-size: .95rem; }
.zyra-coverage small { font-size: .58rem; }
.zyra-section-heading { margin: .95rem 0 .55rem; }
.zyra-section-heading small { font-size: .56rem; }
.zyra-section-heading h3 { margin-top: .24rem; font-size: 1.03rem; }
.zyra-section-heading > span { font-size: .68rem; }
.zyra-quick-questions { gap: .5rem !important; }
.zyra-quick-questions button {
  min-height: 74px !important;
  gap: .65rem;
  padding: .65rem 1.6rem .65rem .65rem !important;
  border-radius: 12px !important;
}
.zyra-quick-questions button::after, .zyra-question-library button::after { content: "\203A"; }
.zyra-quick-questions button > span:nth-child(2) { gap: .32rem; }
.zyra-quick-questions button strong {
  overflow: visible;
  font-size: .82rem;
  line-height: 1.2;
  text-overflow: clip;
  white-space: normal;
}
.zyra-quick-questions button small {
  overflow: visible;
  font-size: .69rem;
  line-height: 1.25;
  text-overflow: clip;
  white-space: normal;
}
.zyra-question-number { width: 34px; height: 34px; border-radius: 9px; font-size: .6rem; }
.zyra-start-note { margin-top: .7rem; padding: .65rem .75rem; font-size: .72rem; line-height: 1.55; }
.zyra-start-note strong { color: var(--ink); }
.zyra-response { margin-top: .7rem; }
.zyra-response .zyra-answer { padding: 1rem !important; }
.zyra-response .zyra-answer h3 { margin-bottom: .65rem; font-size: 1.08rem; line-height: 1.25; }
.zyra-answer > p { font-size: .84rem; line-height: 1.62; }
.neo-advice b { font-size: .88rem; }
.neo-advice p { font-size: .81rem; line-height: 1.58; }
.zyra-answer-meta { gap: .4rem .65rem; padding: .65rem .7rem; }
.zyra-answer-meta strong { font-size: .62rem; }
.zyra-answer-meta span { font-size: .75rem; line-height: 1.4; }
.zyra-more { margin-top: .85rem !important; }
.zyra-more > summary { padding: .8rem .1rem .3rem !important; }
.zyra-more > summary > span { gap: .24rem !important; font-size: .86rem !important; }
.zyra-more > summary > span small { font-size: .55rem; }
.zyra-more > summary > b { min-width: 31px; padding: .3rem .48rem; font-size: .65rem; }
.zyra-search { margin-top: .65rem; }
.zyra-search label { font-size: .75rem; }
.zyra-search > small { font-size: .65rem; }
.zyra-search input { min-height: 44px; font-size: .76rem; }
.zyra-question-library { grid-template-columns: 1fr 1fr; gap: .42rem !important; margin-top: .6rem !important; }
.zyra-question-library button { min-height: 46px !important; padding: .62rem 1.7rem .62rem .7rem !important; font-size: .75rem !important; line-height: 1.3; }
.zyra-search-empty { font-size: .72rem; }
.neo-footer { padding: .65rem 1rem !important; }
.neo-footer span { font-size: .68rem !important; line-height: 1.45; }
.neo-footer small { font-size: .65rem !important; }

@media (max-width: 680px) {
  .neo-assistant { width: min(430px,calc(100vw - 1.3rem)) !important; }
  .neo-panel { max-height: min(74dvh,680px) !important; }
}

@media (max-width: 520px) {
  .neo-panel { max-height: min(78dvh,680px) !important; }
  .zyra-quick-questions, .zyra-question-library { grid-template-columns: 1fr !important; }
  .zyra-health-command { grid-template-columns: auto minmax(0,1fr); }
  .zyra-coverage { display: none; }
}

/* =========================================================
   v9.12 - App typography and Zyra glass workspace
   ========================================================= */
body[data-font-mode="system"] {
  --fd: system-ui,-apple-system,'Segoe UI',sans-serif;
  --fh: system-ui,-apple-system,'Segoe UI',sans-serif;
  --fm: ui-monospace,'Cascadia Mono',Consolas,monospace;
}
body {
  font-family: var(--fd) !important;
  font-size: 16px;
  line-height: 1.58;
  font-optical-sizing: auto;
  text-rendering: optimizeLegibility;
}
button,input,select,textarea { font-family: var(--fd); }
h1,h2,h3,h4,.brand-copy strong,.footer-hawak {
  font-family: var(--fh) !important;
  font-optical-sizing: auto;
  text-wrap: balance;
}
.report-section p,.metric-card p,.settings-panel p,.learning-hub p,.console-tile p { line-height: 1.62; }
.settings-hint { margin: .7rem 0 0; color: var(--muted); font-size: .76rem; }
.primary-button,.ghost-button,.results-actions button,.report-menu summary { letter-spacing: -.006em; }

.neo-assistant { width: min(460px,calc(100vw - 2rem)) !important; }
.neo-panel {
  position: relative;
  max-height: min(73dvh,720px) !important;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.72) !important;
  border-radius: 24px !important;
  background: linear-gradient(145deg,rgba(250,255,252,.88),rgba(235,249,243,.78)) !important;
  box-shadow: 0 0 0 1px rgba(21,143,106,.18),0 28px 72px rgba(3,35,30,.23),inset 0 1px 0 rgba(255,255,255,.9) !important;
  backdrop-filter: blur(28px) saturate(145%) !important;
  -webkit-backdrop-filter: blur(28px) saturate(145%) !important;
}
.neo-panel::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 0;
  pointer-events: none;
  background: radial-gradient(circle at 92% 0,rgba(88,226,181,.28),transparent 32%),radial-gradient(circle at 0 76%,rgba(130,176,255,.16),transparent 34%);
}
.neo-header {
  position: relative;
  align-items: center !important;
  padding: 1rem 1.05rem !important;
  overflow: hidden;
  color: #f5fff9 !important;
  border-bottom: 1px solid rgba(255,255,255,.16);
  background: linear-gradient(135deg,rgba(5,46,41,.96),rgba(7,103,81,.91)) !important;
  backdrop-filter: blur(18px) saturate(140%);
}
.neo-header::after {
  content: "";
  position: absolute;
  width: 180px;
  height: 180px;
  right: -75px;
  top: -130px;
  pointer-events: none;
  border-radius: 50%;
  background: rgba(112,255,209,.2);
  filter: blur(8px);
}
.neo-header .zyra-mark-small {
  width: 50px !important;
  height: 50px !important;
  border: 1px solid rgba(166,255,225,.72);
  box-shadow: 0 0 0 5px rgba(126,242,204,.1),0 10px 26px rgba(0,0,0,.2);
}
.neo-header p { color: #a9efd8 !important; font: 800 .63rem/1 var(--fm) !important; letter-spacing: .095em !important; }
.neo-header h2 { margin-top: .34rem !important; color: #fff !important; font-size: 1.34rem !important; font-weight: 720 !important; line-height: 1.08 !important; letter-spacing: -.025em !important; }
.neo-header-note { max-width: 330px !important; margin-top: .3rem !important; color: rgba(241,255,250,.78) !important; font-size: .76rem !important; line-height: 1.42 !important; }
.neo-header > button {
  z-index: 1;
  width: 38px !important;
  height: 38px !important;
  border: 1px solid rgba(255,255,255,.2) !important;
  border-radius: 12px !important;
  background: rgba(255,255,255,.1) !important;
  backdrop-filter: blur(10px);
}
.neo-header > button:hover,.neo-header > button:focus-visible { background: rgba(255,255,255,.2) !important; }
.neo-body {
  padding: 1rem !important;
  background: rgba(245,252,248,.54) !important;
  scrollbar-color: rgba(19,153,113,.55) transparent;
}
.zyra-command-strip { margin-bottom: .85rem; }
.zyra-command-strip .zyra-trustbar { display: flex; flex-wrap: wrap; gap: .3rem; }
.zyra-command-strip .zyra-trustbar span {
  padding: .34rem .5rem;
  border: 1px solid rgba(33,155,116,.2);
  border-radius: 999px;
  color: #17654f;
  background: rgba(255,255,255,.58);
  font-size: .61rem;
  backdrop-filter: blur(10px);
}
.zyra-mode-switch { border-color: rgba(31,130,101,.2); border-radius: 10px; background: rgba(255,255,255,.58); backdrop-filter: blur(12px); }
.zyra-mode-switch button { min-height: 32px; padding: .38rem .58rem; font-size: .68rem; }
.zyra-mode-switch button[aria-pressed="true"] { color: #fff; background: #08765a; box-shadow: 0 5px 12px rgba(8,118,90,.2); }
.zyra-health-command {
  gap: .82rem;
  padding: .9rem;
  border: 1px solid rgba(40,148,114,.22);
  border-radius: 16px;
  background: linear-gradient(135deg,rgba(255,255,255,.78),rgba(229,248,240,.64));
  box-shadow: 0 14px 35px rgba(6,60,49,.08),inset 0 1px 0 rgba(255,255,255,.9);
  backdrop-filter: blur(18px);
}
.zyra-score-dial { width: 64px; height: 64px; border-color: rgba(48,194,145,.27); background: rgba(255,255,255,.76); box-shadow: inset 0 0 0 1px rgba(255,255,255,.8); }
.zyra-score-dial strong { font-size: 1.48rem; }
.zyra-health-command > div:nth-child(2) > small { font-size: .59rem; }
.zyra-health-command > div:nth-child(2) > strong { font-size: 1.02rem; }
.zyra-health-command p { font-size: .72rem; }
.zyra-coverage strong { font-size: .98rem; }
.zyra-coverage small { font-size: .6rem; }
.zyra-section-heading { margin: 1rem 0 .6rem; }
.zyra-section-heading small { font-size: .58rem; }
.zyra-section-heading h3 { font-size: 1.08rem; }
.zyra-section-heading > span { font-size: .7rem; }
.zyra-quick-questions { gap: .55rem !important; }
.zyra-quick-questions button {
  min-height: 78px !important;
  border: 1px solid rgba(55,139,112,.22) !important;
  border-radius: 15px !important;
  background: rgba(255,255,255,.64) !important;
  box-shadow: 0 10px 28px rgba(4,48,40,.055),inset 0 1px 0 rgba(255,255,255,.88) !important;
  backdrop-filter: blur(14px);
}
.zyra-quick-questions button:hover,.zyra-quick-questions button[aria-pressed="true"] {
  transform: translateY(-1px);
  border-color: rgba(10,133,96,.55) !important;
  background: rgba(235,251,244,.88) !important;
  box-shadow: 0 14px 28px rgba(6,87,66,.11) !important;
}
.zyra-quick-questions button strong { font-size: .84rem; }
.zyra-quick-questions button small { font-size: .7rem; line-height: 1.35; }
.zyra-question-number { width: 36px; height: 36px; border-radius: 11px; font-size: .61rem; background: rgba(213,246,233,.82); }
.zyra-start-note { border: 1px solid rgba(45,151,117,.18); border-left: 3px solid #35b98c; border-radius: 11px; background: rgba(255,255,255,.48); font-size: .76rem; }
.zyra-response { margin-top: .8rem; }
.zyra-response .zyra-answer {
  padding: 1rem !important;
  border: 1px solid rgba(33,145,110,.3) !important;
  border-radius: 16px !important;
  background: linear-gradient(145deg,rgba(255,255,255,.82),rgba(235,249,243,.68)) !important;
  box-shadow: 0 16px 38px rgba(5,56,45,.09),inset 0 1px 0 rgba(255,255,255,.92) !important;
  backdrop-filter: blur(18px);
}
.zyra-result-heading { display: flex; align-items: center; justify-content: space-between; gap: 1rem; margin-bottom: .62rem; }
.zyra-result-heading span { color: #08765a; font: 800 .59rem/1 var(--fm); letter-spacing: .1em; }
.zyra-result-heading small { color: var(--muted); font-size: .67rem; }
.zyra-answer-meta { margin-bottom: .85rem; border-color: rgba(45,145,113,.24); border-radius: 11px; background: rgba(255,255,255,.58); }
.zyra-response .zyra-answer h3 { margin: 0 0 .7rem; font-size: 1.12rem; line-height: 1.28; }
.zyra-answer > p { font-size: .87rem; line-height: 1.64; }
.neo-advice li { padding: .82rem 0 !important; }
.neo-advice b { font-size: .91rem; }
.neo-advice p { font-size: .84rem; line-height: 1.62; }
.neo-action { color: #076d53; }
.zyra-more { border-top-color: rgba(43,128,101,.2) !important; }
.zyra-more > summary > span { font-size: .89rem !important; }
.zyra-search input,.zyra-question-library button,.zyra-welcome { background: rgba(255,255,255,.62) !important; backdrop-filter: blur(12px); }
.zyra-question-library button { font-size: .77rem !important; }
.neo-footer {
  padding: .7rem 1rem !important;
  border-top: 1px solid rgba(36,132,102,.16);
  background: rgba(235,247,241,.72) !important;
  backdrop-filter: blur(20px);
}
.neo-footer span { font-size: .7rem !important; }
.neo-footer small { font-size: .66rem !important; }

html[data-theme="dark"] .neo-panel { border-color: rgba(149,244,210,.18) !important; background: linear-gradient(145deg,rgba(14,31,28,.9),rgba(10,38,32,.82)) !important; box-shadow: 0 0 0 1px rgba(42,190,143,.2),0 30px 76px rgba(0,0,0,.5) !important; }
html[data-theme="dark"] .neo-body { background: rgba(12,29,25,.58) !important; }
html[data-theme="dark"] .zyra-command-strip .zyra-trustbar span,
html[data-theme="dark"] .zyra-mode-switch,
html[data-theme="dark"] .zyra-health-command,
html[data-theme="dark"] .zyra-quick-questions button,
html[data-theme="dark"] .zyra-question-library button,
html[data-theme="dark"] .zyra-search input,
html[data-theme="dark"] .zyra-start-note,
html[data-theme="dark"] .zyra-response .zyra-answer,
html[data-theme="dark"] .zyra-answer-meta,
html[data-theme="dark"] .zyra-welcome { color: var(--ink); border-color: rgba(121,221,185,.2) !important; background: rgba(22,48,41,.72) !important; }
html[data-theme="dark"] .zyra-result-heading span,html[data-theme="dark"] .neo-action { color: #8de8c5; }
html[data-theme="dark"] .neo-footer { background: rgba(14,36,30,.82) !important; }

@media (max-width: 680px) {
  .neo-assistant { width: min(430px,calc(100vw - 1.3rem)) !important; }
  .neo-panel { max-height: min(72dvh,660px) !important; border-radius: 20px !important; }
}
@media (max-width: 520px) {
  .neo-header { padding: .85rem !important; }
  .neo-header .zyra-mark-small { width: 44px !important; height: 44px !important; }
  .neo-header h2 { font-size: 1.16rem !important; }
  .neo-header-note { font-size: .7rem !important; }
  .neo-body { padding: .8rem !important; }
  .zyra-command-strip { align-items: stretch; flex-direction: column; }
  .zyra-mode-switch { align-self: flex-start; }
  .zyra-quick-questions,.zyra-question-library { grid-template-columns: 1fr !important; }
  .zyra-quick-questions button { min-height: 70px !important; }
}

/* =========================================================
   v9.13 - Antigravity-inspired dimensional workspace
   HAWAK identity, local fonts, original components.
   ========================================================= */
:root {
  --ag-blue: #4f7cff;
  --ag-violet: #8b5cf6;
  --ag-cyan: #22c6dc;
  --ag-green: #16a779;
  --ag-coral: #ff735c;
  --ink: #17202a;
  --muted: #66717f;
  --paper: #f6f7fb;
  --card: rgba(255,255,255,.82);
  --line: rgba(38,50,65,.11);
  --mint: #8df1cf;
  --mint-deep: #087b60;
  --blue: #a9c3ff;
  --shadow: 0 22px 60px rgba(35,45,72,.1);
  --ag-border: rgba(255,255,255,.76);
  --ag-surface: rgba(255,255,255,.72);
  --ag-shadow: 0 22px 70px rgba(37,48,82,.11);
}
html[data-theme="dark"] {
  --ink: #f3f6fb;
  --muted: #aeb8c6;
  --paper: #0e1118;
  --card: rgba(25,29,40,.82);
  --line: rgba(221,231,255,.12);
  --mint: #80e9c7;
  --mint-deep: #77e5c1;
  --blue: #9db9ff;
  --shadow: 0 28px 76px rgba(0,0,0,.42);
  --ag-border: rgba(255,255,255,.13);
  --ag-surface: rgba(25,29,40,.7);
  --ag-shadow: 0 28px 80px rgba(0,0,0,.38);
}
html { background: var(--paper); }
body {
  color: var(--ink);
  background:
    radial-gradient(circle at 8% 7%,rgba(79,124,255,.13),transparent 24rem),
    radial-gradient(circle at 92% 18%,rgba(139,92,246,.11),transparent 25rem),
    radial-gradient(circle at 74% 92%,rgba(22,167,121,.1),transparent 28rem),
    var(--paper) !important;
}
body::before {
  opacity: 1;
  background:
    radial-gradient(circle at 14% 32%,rgba(34,198,220,.08),transparent 20rem),
    radial-gradient(circle at 90% 68%,rgba(255,115,92,.065),transparent 22rem),
    linear-gradient(rgba(255,255,255,.16) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.14) 1px,transparent 1px) !important;
  background-size: auto,auto,72px 72px,72px 72px !important;
  mask-image: linear-gradient(to bottom,black,transparent 88%);
}
html[data-theme="dark"] body {
  background:
    radial-gradient(circle at 8% 7%,rgba(79,124,255,.18),transparent 25rem),
    radial-gradient(circle at 92% 18%,rgba(139,92,246,.17),transparent 26rem),
    radial-gradient(circle at 70% 90%,rgba(22,167,121,.12),transparent 30rem),
    #0e1118 !important;
}
html[data-theme="dark"] body::before {
  background:
    radial-gradient(circle at 14% 32%,rgba(34,198,220,.08),transparent 20rem),
    radial-gradient(circle at 90% 68%,rgba(255,115,92,.07),transparent 22rem),
    linear-gradient(rgba(255,255,255,.022) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.022) 1px,transparent 1px) !important;
}

.topbar {
  height: 76px !important;
  border-bottom: 1px solid var(--line) !important;
  background: rgba(248,250,253,.7) !important;
  box-shadow: 0 1px 0 rgba(255,255,255,.8) inset,0 12px 40px rgba(34,43,72,.055) !important;
  backdrop-filter: blur(26px) saturate(145%) !important;
  -webkit-backdrop-filter: blur(26px) saturate(145%) !important;
}
html[data-theme="dark"] .topbar { background: rgba(13,16,23,.76) !important; box-shadow: 0 14px 44px rgba(0,0,0,.25) !important; }
.brand-logo { border-radius: 13px !important; box-shadow: 0 0 0 1px rgba(79,124,255,.2),0 10px 30px rgba(42,61,112,.18) !important; }
.brand-copy strong { letter-spacing: .105em !important; }
.global-theme-toggle,.privacy-pill {
  min-height: 42px;
  border: 1px solid var(--ag-border) !important;
  background: var(--ag-surface) !important;
  box-shadow: 0 8px 24px rgba(44,54,82,.08),inset 0 1px 0 rgba(255,255,255,.82) !important;
  backdrop-filter: blur(16px) saturate(130%);
}
html[data-theme="dark"] .global-theme-toggle,html[data-theme="dark"] .privacy-pill { box-shadow: 0 12px 30px rgba(0,0,0,.2),inset 0 1px 0 rgba(255,255,255,.08) !important; }

.installer,.hero { position: relative; }
.installer { max-width: 1320px; padding-top: clamp(4rem,7vw,6.8rem); }
.installer::before {
  content: "";
  position: absolute;
  z-index: -1;
  width: clamp(260px,33vw,520px);
  aspect-ratio: 1;
  right: 2%;
  top: 2rem;
  border-radius: 48% 52% 60% 40% / 44% 38% 62% 56%;
  background: conic-gradient(from 160deg,rgba(79,124,255,.18),rgba(139,92,246,.16),rgba(34,198,220,.15),rgba(22,167,121,.14),rgba(79,124,255,.18));
  filter: blur(3px);
  transform: rotate(-9deg);
}
.installer-copy { padding-top: clamp(.5rem,2vw,1.8rem); }
.installer h1,.hero h1 {
  max-width: 900px;
  color: var(--ink);
  font-weight: 690 !important;
  letter-spacing: -.058em !important;
  line-height: .96 !important;
}
.installer h1 em,.hero h1 em {
  background: linear-gradient(105deg,#316eea 0%,#7963e7 36%,#11a486 72%,#eb735f 110%) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
}
.hero-copy { color: var(--muted); line-height: 1.68; }
.eyebrow {
  width: fit-content;
  padding: .42rem .66rem;
  border: 1px solid rgba(79,124,255,.15);
  border-radius: 999px;
  color: #3d5fb6 !important;
  background: rgba(238,243,255,.62);
  font-size: .67rem !important;
  letter-spacing: .105em !important;
}
html[data-theme="dark"] .eyebrow { color: #b6c9ff !important; border-color: rgba(138,169,255,.18); background: rgba(79,124,255,.1); }
.primary-button {
  min-height: 52px;
  border: 1px solid rgba(255,255,255,.24) !important;
  border-radius: 16px !important;
  background: linear-gradient(120deg,#255fdb,#6b58dc 56%,#087f68) !important;
  box-shadow: 0 16px 34px rgba(65,83,173,.23),inset 0 1px 0 rgba(255,255,255,.26) !important;
}
.primary-button:hover { transform: translateY(-2px); box-shadow: 0 20px 42px rgba(65,83,173,.3),inset 0 1px 0 rgba(255,255,255,.3) !important; }
.ghost-button,.report-menu > summary,.choice-buttons button {
  border: 1px solid var(--line) !important;
  border-radius: 14px !important;
  background: var(--ag-surface) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.62),0 8px 22px rgba(39,48,76,.055);
  backdrop-filter: blur(12px);
}
.trust-row > span,.brand-compliance span {
  border: 1px solid var(--line);
  border-radius: 999px;
  padding: .55rem .75rem;
  background: rgba(255,255,255,.5);
  backdrop-filter: blur(10px);
}
html[data-theme="dark"] .trust-row > span,html[data-theme="dark"] .brand-compliance span { background: rgba(255,255,255,.045); }
.brand-compliance { grid-template-columns: repeat(2,minmax(190px,1fr)); }
.platform-note { border: 1px solid rgba(238,172,67,.2); border-left: 3px solid #e9a83e; border-radius: 0 14px 14px 0; background: rgba(255,247,220,.72); }
html[data-theme="dark"] .platform-note { color: #f4d89d; background: rgba(114,75,15,.18); }

.install-panel,.state-card,.results-heading,.unsupported-card,.policy-grid article {
  border: 1px solid var(--ag-border) !important;
  border-radius: 26px !important;
  background: linear-gradient(145deg,rgba(255,255,255,.82),rgba(247,249,255,.66)) !important;
  box-shadow: var(--ag-shadow),inset 0 1px 0 rgba(255,255,255,.9) !important;
  backdrop-filter: blur(24px) saturate(135%);
  -webkit-backdrop-filter: blur(24px) saturate(135%);
}
html[data-theme="dark"] .install-panel,html[data-theme="dark"] .state-card,html[data-theme="dark"] .results-heading,html[data-theme="dark"] .unsupported-card,html[data-theme="dark"] .policy-grid article {
  border-color: var(--ag-border) !important;
  background: linear-gradient(145deg,rgba(31,35,48,.86),rgba(19,23,33,.72)) !important;
  box-shadow: var(--ag-shadow),inset 0 1px 0 rgba(255,255,255,.08) !important;
}
.install-panel { position: relative; overflow: hidden; }
.install-panel::before {
  content: "";
  position: absolute;
  width: 190px;
  height: 190px;
  right: -95px;
  top: -110px;
  border-radius: 50%;
  background: linear-gradient(135deg,rgba(79,124,255,.2),rgba(139,92,246,.16));
  filter: blur(2px);
}
.install-steps li { border-color: var(--line); }
.install-steps li > span { width: 40px; height: 40px; display: grid; place-items: center; border-radius: 13px; color: #355bb3; background: rgba(79,124,255,.1); font-size: .9rem; }
.privacy-explainer { border: 1px solid rgba(34,198,220,.16); border-radius: 16px; background: rgba(232,249,252,.62); }
html[data-theme="dark"] .privacy-explainer { background: rgba(34,198,220,.07); }

.capabilities { border-top: 0; }
.capability-grid { grid-template-columns: repeat(4,minmax(0,1fr)); gap: 1rem; border: 0; background: transparent; }
.capability-grid article,.front-proof-grid article,.site-metrics,.feedback-strip {
  border: 1px solid var(--ag-border) !important;
  border-radius: 22px !important;
  background: var(--ag-surface) !important;
  box-shadow: 0 16px 44px rgba(39,49,80,.075),inset 0 1px 0 rgba(255,255,255,.82) !important;
  backdrop-filter: blur(18px);
}
.capability-grid article { padding: 1.4rem; }
.capability-grid article:hover { background: rgba(255,255,255,.9) !important; transform: translateY(-4px); box-shadow: 0 22px 54px rgba(39,49,80,.13) !important; }
html[data-theme="dark"] .capability-grid article:hover { background: rgba(37,42,57,.92) !important; }
.capability-grid article > span { width: 38px; height: 38px; display: grid; place-items: center; border-radius: 12px; color: #fff; background: linear-gradient(135deg,var(--ag-blue),var(--ag-violet)); }
.capability-grid article:nth-child(4n+2) > span { background: linear-gradient(135deg,var(--ag-violet),#d85aa6); }
.capability-grid article:nth-child(4n+3) > span { background: linear-gradient(135deg,var(--ag-cyan),var(--ag-blue)); }
.capability-grid article:nth-child(4n+4) > span { background: linear-gradient(135deg,var(--ag-green),var(--ag-cyan)); }
.front-proof-grid article { grid-template-columns: auto 1fr; }
.site-metrics { overflow: hidden; }
.feedback-strip { padding: 1.4rem 1.5rem; }
.feedback-button,.report-feedback a { border-radius: 14px !important; background: linear-gradient(120deg,#2567db,#7158dd) !important; box-shadow: 0 12px 28px rgba(72,83,174,.2); }

.results-heading { padding: clamp(1.6rem,4vw,3.2rem) !important; overflow: hidden !important; }
.results-heading::before { width: 6px; background: linear-gradient(180deg,var(--ag-blue),var(--ag-violet),var(--ag-green)) !important; }
.results-heading::after {
  content: "";
  position: absolute;
  z-index: -1;
  width: 320px;
  height: 320px;
  right: -140px;
  top: -190px;
  border-radius: 50%;
  background: conic-gradient(rgba(79,124,255,.22),rgba(139,92,246,.16),rgba(34,198,220,.16),rgba(79,124,255,.22));
}
.section-nav {
  border: 1px solid var(--ag-border) !important;
  border-radius: 22px !important;
  background: rgba(255,255,255,.74) !important;
  box-shadow: 0 18px 50px rgba(35,45,72,.1),inset 0 1px 0 rgba(255,255,255,.86) !important;
  backdrop-filter: blur(24px) saturate(145%) !important;
}
html[data-theme="dark"] .section-nav { background: rgba(20,24,34,.8) !important; box-shadow: 0 22px 58px rgba(0,0,0,.32),inset 0 1px 0 rgba(255,255,255,.07) !important; }
.section-nav-primary a { border-radius: 13px 13px 0 0; }
.section-nav a[aria-current="true"] { color: #315ec8 !important; background: rgba(79,124,255,.09) !important; border-bottom-color: var(--ag-blue) !important; }
html[data-theme="dark"] .section-nav a[aria-current="true"] { color: #b8caff !important; background: rgba(79,124,255,.14) !important; }
.font-mode-toggle,.theme-mode-toggle { background: transparent !important; }

.report-section {
  border: 1px solid var(--ag-border) !important;
  border-radius: 24px !important;
  background: rgba(255,255,255,.58) !important;
  box-shadow: 0 18px 54px rgba(38,48,76,.075),inset 0 1px 0 rgba(255,255,255,.82) !important;
  backdrop-filter: blur(18px);
}
.report-section:not(.dashboard-shell)::before { width: 4px; border-radius: 999px; background: linear-gradient(180deg,var(--section-accent),rgba(139,92,246,.68)); }
.report-section:not(.dashboard-shell) > .report-section-heading { border-radius: 23px; background: rgba(255,255,255,.5) !important; }
.report-section:not(.dashboard-shell)[open] > .report-section-heading { border-radius: 23px 23px 0 0; }
.report-section:not(.dashboard-shell) > .report-section-body { border-top: 1px solid var(--line); background: rgba(250,251,255,.44) !important; }
html[data-theme="dark"] .report-section { background: rgba(24,28,39,.68) !important; }
html[data-theme="dark"] .report-section:not(.dashboard-shell) > .report-section-heading { background: rgba(31,36,48,.54) !important; }
html[data-theme="dark"] .report-section:not(.dashboard-shell) > .report-section-body { background: rgba(18,22,31,.46) !important; }
.report-section :is(.metric-card,.detail-card,.check-card,.optimizer-card,.console-tile),
.score-card,.diagnostic-console,.five-second-summary,.priority-summary,.settings-panel article,.learning-grid details {
  border: 1px solid var(--ag-border) !important;
  border-radius: 18px !important;
  background: rgba(255,255,255,.68) !important;
  box-shadow: 0 12px 34px rgba(39,49,78,.055),inset 0 1px 0 rgba(255,255,255,.78) !important;
}
html[data-theme="dark"] .report-section :is(.metric-card,.detail-card,.check-card,.optimizer-card,.console-tile),
html[data-theme="dark"] .score-card,html[data-theme="dark"] .diagnostic-console,html[data-theme="dark"] .five-second-summary,html[data-theme="dark"] .priority-summary,html[data-theme="dark"] .settings-panel article,html[data-theme="dark"] .learning-grid details { background: rgba(34,39,52,.64) !important; border-color: rgba(255,255,255,.1) !important; }
.accuracy-note,.report-feedback { border: 1px solid var(--ag-border) !important; border-radius: 20px !important; background: rgba(238,245,255,.7) !important; box-shadow: 0 14px 38px rgba(37,49,79,.06); backdrop-filter: blur(16px); }
html[data-theme="dark"] .accuracy-note,html[data-theme="dark"] .report-feedback { background: rgba(38,48,70,.55) !important; }
.site-footer { background: linear-gradient(135deg,#111827,#172554 56%,#073b36) !important; border-top: 1px solid rgba(255,255,255,.1) !important; }

/* Zyra: focused glass answer workspace. The circular launcher is unchanged. */
.neo-assistant { width: min(500px,calc(100vw - 2rem)) !important; }
.neo-panel {
  max-height: min(76dvh,760px) !important;
  border: 1px solid rgba(255,255,255,.72) !important;
  border-radius: 28px !important;
  background: linear-gradient(145deg,rgba(252,253,255,.86),rgba(241,246,255,.73)) !important;
  box-shadow: 0 34px 90px rgba(28,36,66,.24),0 0 0 1px rgba(79,124,255,.11),inset 0 1px 0 rgba(255,255,255,.95) !important;
  backdrop-filter: blur(32px) saturate(155%) !important;
  -webkit-backdrop-filter: blur(32px) saturate(155%) !important;
}
.neo-panel::before { background: radial-gradient(circle at 92% 0,rgba(139,92,246,.25),transparent 34%),radial-gradient(circle at 0 75%,rgba(34,198,220,.13),transparent 36%); }
.neo-header {
  padding: 1.05rem 1.1rem !important;
  border-bottom: 1px solid rgba(255,255,255,.16);
  background: linear-gradient(125deg,rgba(22,30,49,.96),rgba(45,58,104,.92) 52%,rgba(16,106,91,.88)) !important;
}
.neo-header::after { width: 220px; height: 220px; right: -95px; top: -160px; background: conic-gradient(rgba(79,124,255,.34),rgba(139,92,246,.26),rgba(34,198,220,.2)); }
.neo-header p { color: #b9caff !important; }
.neo-header-note { color: rgba(243,247,255,.76) !important; }
.neo-body { padding: 1rem !important; background: rgba(248,250,255,.48) !important; scroll-padding-top: 12px; }
.zyra-command-strip .zyra-trustbar span { color: #3e5da4; border-color: rgba(79,124,255,.16); background: rgba(255,255,255,.58); }
.zyra-mode-switch { border-color: rgba(79,124,255,.16); background: rgba(255,255,255,.58); }
.zyra-mode-switch button[aria-pressed="true"] { background: linear-gradient(120deg,#356ee2,#7359dc); box-shadow: 0 7px 18px rgba(73,86,181,.23); }
.zyra-health-command {
  border-color: rgba(79,124,255,.18);
  background: linear-gradient(135deg,rgba(255,255,255,.78),rgba(235,241,255,.68));
  box-shadow: 0 16px 40px rgba(50,63,107,.09),inset 0 1px 0 rgba(255,255,255,.92);
}
.zyra-health-command::before { background: linear-gradient(180deg,var(--ag-blue),var(--ag-violet)); }
.zyra-health-command[data-tone="warning"]::before { background: linear-gradient(180deg,#f3b24a,var(--ag-coral)); }
.zyra-health-command[data-tone="critical"]::before { background: linear-gradient(180deg,#ff6b68,#b84375); }
.zyra-score-dial { border-color: rgba(79,124,255,.22); background: rgba(255,255,255,.8); }
.zyra-health-command > div:nth-child(2) > small,.zyra-section-heading small,.zyra-result-heading span { color: #3a60bb; }
.zyra-quick-questions button {
  border-color: rgba(63,79,126,.13) !important;
  background: rgba(255,255,255,.64) !important;
  box-shadow: 0 12px 32px rgba(44,55,93,.07),inset 0 1px 0 rgba(255,255,255,.88) !important;
}
.zyra-quick-questions button:hover,.zyra-quick-questions button[aria-pressed="true"] { border-color: rgba(79,124,255,.48) !important; background: rgba(238,243,255,.9) !important; box-shadow: 0 16px 34px rgba(62,78,145,.13) !important; }
.zyra-question-number { color: #355cb6; background: linear-gradient(135deg,rgba(79,124,255,.12),rgba(139,92,246,.11)); }
.zyra-response .zyra-answer {
  border-color: rgba(79,124,255,.24) !important;
  background: linear-gradient(145deg,rgba(255,255,255,.86),rgba(240,245,255,.72)) !important;
  box-shadow: 0 20px 48px rgba(45,57,105,.11),inset 0 1px 0 rgba(255,255,255,.94) !important;
}
.zyra-answer-meta { border-color: rgba(79,124,255,.2); background: rgba(247,249,255,.72); }
.zyra-answer-meta strong { color: #315ab6; background: rgba(79,124,255,.1); }
.zyra-answer-meta[data-tone="possible"] strong { color: #94571c; background: rgba(245,176,74,.14); }
.zyra-answer-meta[data-tone="guidance"] strong { color: #6945bd; background: rgba(139,92,246,.12); }
.neo-action { color: #087a60; }
.zyra-search input,.zyra-question-library button,.zyra-welcome { border-color: rgba(63,79,126,.14) !important; background: rgba(255,255,255,.64) !important; }
.neo-footer { border-top-color: rgba(79,124,255,.13); background: rgba(239,244,255,.75) !important; }

html[data-theme="dark"] .neo-panel { border-color: rgba(255,255,255,.14) !important; background: linear-gradient(145deg,rgba(26,30,42,.9),rgba(16,21,31,.82)) !important; box-shadow: 0 36px 96px rgba(0,0,0,.54),0 0 0 1px rgba(122,151,255,.15),inset 0 1px 0 rgba(255,255,255,.08) !important; }
html[data-theme="dark"] .neo-body { background: rgba(13,17,25,.52) !important; }
html[data-theme="dark"] .zyra-command-strip .zyra-trustbar span,
html[data-theme="dark"] .zyra-mode-switch,
html[data-theme="dark"] .zyra-health-command,
html[data-theme="dark"] .zyra-quick-questions button,
html[data-theme="dark"] .zyra-question-library button,
html[data-theme="dark"] .zyra-search input,
html[data-theme="dark"] .zyra-start-note,
html[data-theme="dark"] .zyra-response .zyra-answer,
html[data-theme="dark"] .zyra-answer-meta,
html[data-theme="dark"] .zyra-welcome { border-color: rgba(166,185,255,.14) !important; background: rgba(35,40,55,.68) !important; }
html[data-theme="dark"] .zyra-quick-questions button:hover,html[data-theme="dark"] .zyra-quick-questions button[aria-pressed="true"] { border-color: rgba(135,163,255,.46) !important; background: rgba(55,64,91,.76) !important; }
html[data-theme="dark"] .zyra-health-command > div:nth-child(2) > small,
html[data-theme="dark"] .zyra-section-heading small,
html[data-theme="dark"] .zyra-result-heading span { color: #afc4ff; }
html[data-theme="dark"] .zyra-answer-meta strong { color: #c1d0ff; background: rgba(79,124,255,.16); }
html[data-theme="dark"] .neo-action { color: #83e5c5; }
html[data-theme="dark"] .neo-footer { background: rgba(25,31,45,.84) !important; }

@media (max-width: 1080px) {
  .capability-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 760px) {
  .installer::before { width: 300px; right: -100px; opacity: .7; }
  .brand-compliance,.front-proof-grid { grid-template-columns: 1fr; }
  .capability-grid { grid-template-columns: 1fr; }
  .results-heading { border-radius: 22px !important; }
  .section-nav { border-radius: 18px !important; }
  .report-section { border-radius: 20px !important; }
  .neo-assistant { width: min(460px,calc(100vw - 1.3rem)) !important; }
  .neo-panel { max-height: min(76dvh,700px) !important; border-radius: 22px !important; }
}
@media (max-width: 520px) {
  .topbar { height: 68px !important; }
  .installer { padding-top: 2.8rem; }
  .installer h1 { font-size: clamp(2.65rem,13vw,4rem) !important; }
  .hero-actions { align-items: stretch; flex-direction: column; }
  .primary-button { width: 100%; }
  .trust-row > span { width: fit-content; }
  .neo-panel { max-height: min(80dvh,720px) !important; }
  .neo-header { padding: .9rem !important; }
  .zyra-quick-questions { grid-template-columns: 1fr !important; }
}
@media (prefers-reduced-motion: reduce) {
  .installer::before,.capability-grid article,.primary-button,.zyra-quick-questions button { transition: none !important; animation: none !important; }
}
@media (forced-colors: active) {
  body,.topbar,.install-panel,.state-card,.results-heading,.section-nav,.report-section,.neo-panel,.neo-header,.neo-body,.neo-footer,
  .capability-grid article,.front-proof-grid article,.site-metrics,.feedback-strip,.zyra-health-command,.zyra-quick-questions button,.zyra-response .zyra-answer {
    color: CanvasText !important;
    border: 1px solid CanvasText !important;
    background: Canvas !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
  }
}

/* v9.15 cascade lock: these opened-panel rules intentionally follow every
   historical theme layer. The circular launcher is not changed. */
.neo-assistant {
  right: clamp(.7rem,1.6vw,1.25rem) !important;
  bottom: clamp(.7rem,1.6vw,1.25rem) !important;
  width: min(430px,calc(100vw - 1.4rem)) !important;
  max-height: calc(100dvh - 1.4rem) !important;
}
.neo-panel {
  width: 100% !important;
  max-height: min(68dvh,640px,calc(100dvh - 92px)) !important;
  display: grid !important;
  grid-template-rows: auto minmax(0,1fr) auto !important;
  margin-bottom: .65rem !important;
  overflow: hidden !important;
  border-radius: 20px !important;
  background: rgba(249,251,255,.96) !important;
  box-shadow: 0 24px 68px rgba(25,36,67,.22),0 0 0 1px rgba(79,124,255,.1) !important;
  backdrop-filter: blur(18px) saturate(125%) !important;
  -webkit-backdrop-filter: blur(18px) saturate(125%) !important;
}
#neo-panel[hidden] { display: none !important; }
.neo-header { min-height: 86px !important; padding: .85rem .9rem !important; }
.neo-header .zyra-mark-small { width: 44px !important; height: 44px !important; }
.neo-header h2 { font-size: 1.2rem !important; }
.neo-header-note { max-width: 280px !important; font-size: .69rem !important; line-height: 1.34 !important; }
.neo-header > button { width: 36px !important; height: 36px !important; border-radius: 11px !important; }
.neo-body {
  min-height: 0 !important;
  max-height: none !important;
  padding: .85rem .9rem 1rem !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  overscroll-behavior: contain !important;
  scrollbar-gutter: stable;
  scrollbar-width: thin;
  scrollbar-color: rgba(44,139,112,.48) transparent;
}
.neo-body::-webkit-scrollbar { width: 8px; }
.neo-body::-webkit-scrollbar-thumb { border: 2px solid transparent; border-radius: 999px; background: rgba(44,139,112,.48); background-clip: padding-box; }
.zyra-command-strip { display: grid !important; grid-template-columns: minmax(0,1fr) auto !important; align-items: center !important; gap: .5rem !important; margin-bottom: .7rem !important; }
.zyra-command-strip .zyra-trustbar { min-width: 0; flex-wrap: nowrap !important; overflow-x: auto !important; scrollbar-width: none; }
.zyra-command-strip .zyra-trustbar::-webkit-scrollbar { display: none; }
.zyra-command-strip .zyra-trustbar span { flex: 0 0 auto; padding: .3rem .42rem; font-size: .54rem; }
.zyra-mode-switch button { min-height: 30px !important; padding: .34rem .48rem !important; font-size: .62rem !important; }
.zyra-health-command { gap: .68rem !important; padding: .78rem !important; border-radius: 14px !important; }
.zyra-score-dial { width: 56px !important; height: 56px !important; }
.zyra-score-dial strong { font-size: 1.28rem !important; }
.zyra-health-command > div:nth-child(2) > strong { font-size: .94rem !important; }
.zyra-health-command p { overflow: visible !important; font-size: .67rem !important; line-height: 1.38 !important; text-overflow: clip !important; white-space: normal !important; }
.zyra-section-heading { margin: .82rem 0 .5rem !important; }
.zyra-section-heading h3 { font-size: .98rem !important; }
.zyra-quick-questions { gap: .45rem !important; }
.zyra-quick-questions button { min-height: 68px !important; gap: .52rem !important; padding: .58rem 1.35rem .58rem .58rem !important; border-radius: 12px !important; }
.zyra-quick-questions button strong { font-size: .77rem !important; }
.zyra-quick-questions button small { font-size: .64rem !important; }
.zyra-question-number { width: 32px !important; height: 32px !important; }
.zyra-response { margin-top: .65rem !important; scroll-margin-top: .5rem; }
.zyra-response .zyra-answer { padding: .9rem !important; border-radius: 14px !important; }
.zyra-response .zyra-answer h3 { font-size: 1.02rem !important; }
.zyra-answer > p { font-size: .8rem !important; line-height: 1.55 !important; }
.zyra-answer-meta span { font-size: .7rem !important; }
.neo-advice b { font-size: .84rem !important; }
.neo-advice p { font-size: .78rem !important; line-height: 1.52 !important; }
.neo-footer { padding: .58rem .9rem !important; background: rgba(239,244,252,.97) !important; backdrop-filter: none !important; }
.neo-footer span { font-size: .62rem !important; line-height: 1.38 !important; }
.neo-footer small { font-size: .59rem !important; }
html[data-theme="dark"] .neo-panel { background: rgba(23,28,40,.97) !important; }
html[data-theme="dark"] .neo-footer { background: rgba(25,31,45,.98) !important; }
@media (max-width: 680px) {
  .neo-assistant { width: min(410px,calc(100vw - 1rem)) !important; right: .5rem !important; bottom: .5rem !important; }
  .neo-panel { max-height: min(72dvh,650px,calc(100dvh - 84px)) !important; }
}
@media (max-width: 430px) {
  .zyra-command-strip { grid-template-columns: 1fr !important; }
  .zyra-mode-switch { justify-self: start; }
  .zyra-quick-questions { grid-template-columns: 1fr !important; }
  .neo-header-note { max-width: 220px !important; }
}
/* v3.8: keep expanded content and the report ending clear of borders/utilities. */
#report-content { padding-bottom: clamp(2rem, 5vw, 4rem); }
#report-content > .report-section > .report-section-body {
  padding-bottom: clamp(1.5rem, 3vw, 2.5rem) !important;
  min-width: 0;
  display: flow-root;
}
#report-content .report-section-body > :last-child { margin-bottom: .5rem; }
#results { padding-bottom: 3rem; }
.site-footer { padding-bottom: max(5rem, env(safe-area-inset-bottom)); }
@media print {
  #report-content, #results { padding-bottom: 0; }
}
