/* IR bleeding risk: clinical reference interface (same family as the skin cancer planner).
   Neutral ground, white working surfaces, near-black ink, one petrol accent.
   Colour carries meaning only: risk category, stop (amber-brown), act/discuss (red), check (amber), fine (green). */
@font-face { font-family: "Source Sans 3"; src: url("../fonts/source-sans-3-latin.woff2") format("woff2"); font-weight: 200 900; font-style: normal; font-display: swap; }

:root {
  --frame: #f3f4f6;
  --surface: #ffffff;
  --surface-2: #f0f2f5;
  --ink: #14202e;
  --ink-2: #3d4957;
  --ink-3: #5a6573;
  --rule: #e2e6eb;
  --rule-strong: #c5cdd6;
  --accent: #0f5c63;
  --accent-hover: #0b4a50;
  --accent-soft: #eaf2f3;
  --focus: #2a5bd7;
  --ok: #2f6b40;
  --ok-bg: #eef6f0;
  --stop: #8a4a12;
  --act: #a3263a;
  --act-bg: #fbeef0;
  --check: #5c4500;
  --check-bg: #fbf6e9;
  --check-line: #e6d3a0;
  --cat-vlow: #22313f;
  --cat-low: #22313f;
  --cat-high: #22313f;
  --on-verdict: rgba(255, 255, 255, .86);
  --selection: #cfe3e5;
  --fs-xs: .75rem;
  --fs-sm: .8125rem;
  --fs-md: .875rem;
  --fs-body: 1rem;
  --fs-lg: 1.125rem;
  --fs-xl: 1.375rem;
  --fs-2xl: 1.75rem;
  --r-sm: 4px;
  --r-md: 6px;
  --r-lg: 8px;
  --font: "Source Sans 3", "Segoe UI", system-ui, -apple-system, Roboto, sans-serif;
  color-scheme: light;
}

*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; scroll-padding-top: 16px; }
body { margin: 0; background: var(--frame); color: var(--ink); font: 400 var(--fs-body)/1.5 var(--font); font-variant-numeric: tabular-nums lining-nums; -webkit-font-smoothing: antialiased; }
a { color: var(--accent); }
:focus-visible { outline: 2px solid var(--focus); outline-offset: 2px; border-radius: var(--r-sm); }
[hidden] { display: none !important; }
h1, h2, h3 { text-wrap: balance; }
.sr-only { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; padding: 0; margin: -1px; }
.skip { position: absolute; left: 16px; top: -60px; background: var(--ink); color: #fff; padding: 8px 12px; border-radius: var(--r-md); z-index: 30; }
.skip:focus { top: 12px; }
.muted { color: var(--ink-3); font-weight: 400; }
::selection { background: var(--selection); color: var(--ink); }
* { scrollbar-width: thin; scrollbar-color: var(--rule-strong) transparent; }
input[type=number] { -moz-appearance: textfield; appearance: textfield; }
input[type=number]::-webkit-inner-spin-button, input[type=number]::-webkit-outer-spin-button { -webkit-appearance: none; margin: 0; }
::placeholder { color: var(--ink-3); }

/* Buttons */
.btn { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 40px; padding: 0 16px; border-radius: var(--r-md); border: 1px solid transparent; background: transparent; color: var(--ink); font: 600 var(--fs-md)/1 var(--font); cursor: pointer; transition: background-color .15s, border-color .15s, color .15s; }
.btn-quiet { color: var(--ink-2); }
.btn-quiet:hover { background: var(--surface-2); color: var(--ink); }
.btn-secondary { border-color: var(--rule-strong); background: var(--surface); }
.btn-secondary:hover { border-color: var(--ink-3); }
.btn-secondary.is-done { border-color: var(--accent); color: var(--accent); }
.btn-primary { background: var(--accent); color: #fff; }
.btn-primary:hover { background: var(--accent-hover); }
.btn:disabled { color: var(--ink-3); border-color: var(--rule); background: var(--surface-2); cursor: not-allowed; }

/* App bar */
.appbar { background: var(--surface); border-bottom: 1px solid var(--rule); }
.appbar-inner { max-width: 1280px; margin: 0 auto; padding: 12px 32px; display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.wordmark h1 { margin: 0; font-size: var(--fs-lg); font-weight: 700; line-height: 1.25; }
.wordmark p { margin: 0; font-size: var(--fs-sm); color: var(--ink-3); }
.appbar-actions { display: flex; gap: 4px; align-items: center; flex: none; }
.disclaimer { max-width: 1280px; margin: 0 auto; padding: 12px 32px 0; font-size: var(--fs-sm); color: var(--ink-2); }
.disclaimer strong { color: var(--ink); }
.about { background: var(--surface); border-bottom: 1px solid var(--rule); }
.about-inner { max-width: 1280px; margin: 0 auto; padding: 16px 32px; font-size: var(--fs-md); color: var(--ink-2); }
.about-inner h2 { margin: 0 0 6px; font-size: var(--fs-body); color: var(--ink); }
.about-inner p { margin: 0 0 8px; max-width: 80ch; }

/* Layout */
.layout { max-width: 1280px; margin: 0 auto; padding: 16px 32px 40px; display: grid; grid-template-columns: minmax(380px, 520px) minmax(0, 1fr); gap: 24px; align-items: start; }
.sheet, .plan { background: var(--surface); border: 1px solid var(--rule); border-radius: var(--r-lg); }
.sheet { padding: 0 24px 8px; }
.sheet-head { padding: 20px 0 16px; border-bottom: 1px solid var(--rule); }
.sheet-head h2, .plan-head h2 { margin: 0; font-size: var(--fs-xl); font-weight: 600; line-height: 1.2; }
.privacy { display: flex; align-items: center; gap: 6px; margin: 6px 0 0; font-size: var(--fs-sm); color: var(--ink-3); }
.privacy svg { width: 16px; height: 16px; flex: none; }
.block { border: 0; margin: 0; padding: 20px 0; border-bottom: 1px solid var(--rule); min-width: 0; }
#plannedOnly .block:last-child { border-bottom: 0; }
legend { float: left; width: 100%; padding: 0; margin: 0 0 12px; display: flex; gap: 10px; align-items: baseline; font-size: var(--fs-body); font-weight: 600; }
.block > :not(legend) { clear: both; }
.step { color: var(--ink-3); font-weight: 600; font-size: var(--fs-md); min-width: 12px; }
.hint { color: var(--ink-3); font-size: var(--fs-sm); margin: 0 0 10px; }

/* Segmented controls */
.seg { display: flex; flex-wrap: wrap; gap: 6px; }
.seg-item { position: relative; cursor: pointer; flex: 1 1 auto; }
.seg-item input, .chip input { position: absolute; opacity: 0; pointer-events: none; }
.seg-item > span { display: flex; flex-direction: column; align-items: center; justify-content: center; min-height: 44px; padding: 4px 12px; border: 1px solid var(--rule-strong); border-radius: var(--r-md); background: var(--surface); font-weight: 600; font-size: var(--fs-md); line-height: 1.2; text-align: center; transition: border-color .15s, background-color .15s, color .15s; }
.seg-item small { font-size: var(--fs-xs); font-weight: 400; color: var(--ink-3); margin-top: 2px; }
.seg-item:hover > span { border-color: var(--ink-3); }
.seg-item input:checked + span { background: var(--accent); border-color: var(--accent); color: #fff; }
.seg-item input:checked + span small { color: #d5e6e8; }
.seg-item input:focus-visible + span { outline: 2px solid var(--focus); outline-offset: 2px; }
.seg-wrap { display: grid; grid-template-columns: 1fr 1fr; }
.seg-wrap .seg-item:first-child { grid-column: 1 / -1; }
.seg-group { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.cat-vlow input:checked + span { background: var(--cat-vlow); border-color: var(--cat-vlow); }
.cat-low input:checked + span { background: var(--cat-low); border-color: var(--cat-low); }
.cat-high input:checked + span { background: var(--cat-high); border-color: var(--cat-high); }
.cat-row { margin-top: 14px; }
.proc-hint { margin: 6px 0 0; font-size: var(--fs-sm); color: var(--ink-3); }
.seg-tight .seg-item > span { min-height: 40px; padding: 4px 8px; }

/* Fields */
.field { display: grid; gap: 6px; font-size: var(--fs-sm); font-weight: 600; color: var(--ink-2); }
.field small { font-weight: 400; font-size: var(--fs-sm); color: var(--ink-3); }
select, input[type=number], input[type=search] { width: 100%; min-height: 44px; padding: 8px 12px; border: 1px solid var(--rule-strong); border-radius: var(--r-md); background: var(--surface); color: var(--ink); font: 400 var(--fs-body)/1.3 var(--font); }
select:hover, input[type=number]:hover, input[type=search]:hover { border-color: var(--ink-3); }
input[type=number]:focus, input[type=search]:focus { border-color: var(--accent); outline: none; box-shadow: 0 0 0 3px var(--accent-soft), 0 0 0 1px var(--accent); }
.values { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; }

/* Questions */
.qs { display: grid; gap: 14px; }
.q-text { margin: 0 0 6px; font-size: var(--fs-md); font-weight: 600; }
.q-text small { display: block; font-weight: 400; color: var(--ink-3); font-size: var(--fs-sm); }
.follow { margin-top: 14px; padding: 12px; background: var(--surface-2); border-radius: var(--r-md); }
.t5 { margin: 0 0 10px; padding-left: 18px; font-size: var(--fs-sm); color: var(--ink-2); }
.t5 li { margin-bottom: 3px; }

/* Drug chips */
.drug-grid { display: grid; gap: 10px; }
.drug-group-name { margin: 0 0 4px; font-size: var(--fs-xs); font-weight: 600; letter-spacing: .04em; text-transform: uppercase; color: var(--ink-3); }
.drug-group { display: flex; flex-wrap: wrap; gap: 6px; align-items: flex-start; }
.drug-group-name { flex: 0 0 100%; }
.chip { position: relative; cursor: pointer; }
.chip > span { display: inline-flex; align-items: center; gap: 6px; min-height: 40px; padding: 6px 12px; border: 1px solid var(--rule-strong); border-radius: var(--r-md); background: var(--surface); font-size: var(--fs-md); font-weight: 600; }
.chip small { font-weight: 400; color: var(--ink-3); }
.chip:hover > span { border-color: var(--ink-3); }
.chip input:checked + span { background: var(--accent-soft); border-color: var(--accent); box-shadow: inset 0 0 0 1px var(--accent); color: var(--accent); }
.chip input:focus-visible + span { outline: 2px solid var(--focus); outline-offset: 2px; }
.chip-none { justify-self: start; }

/* Plan */
.plan { position: sticky; top: 16px; padding: 0 24px 20px; max-height: calc(100vh - 32px); overflow: auto; }
.plan-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 20px 0 16px; border-bottom: 1px solid var(--rule); position: sticky; top: 0; background: var(--surface); z-index: 1; }
.empty { padding: 32px 0; color: var(--ink-2); }
.empty p { margin: 0 0 6px; }
.verdict { margin: 16px 0 10px; padding: 14px 16px 13px; border-radius: var(--r-md); color: #fff; }
.verdict-label { margin: 0; font-size: var(--fs-2xl); font-weight: 700; line-height: 1.15; letter-spacing: -.01em; }
.verdict-sub { margin: 3px 0 0; font-size: var(--fs-md); color: var(--on-verdict); }
.verdict-vlow { background: var(--cat-vlow); }
.verdict-low { background: var(--cat-low); }
.verdict-high { background: var(--cat-high); }
.verdict-excluded, .verdict-emergency { background: var(--ink); }
.pending { margin: 10px 0 4px; padding: 10px 12px 8px; border: 1px solid var(--check-line); background: var(--check-bg); border-radius: var(--r-md); color: var(--check); font-size: var(--fs-md); }
.pending p { margin: 0 0 6px; }
.pending-note { font-weight: 400; }
.pending ul { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 6px; }
.pending-link { min-height: 32px; padding: 0 10px; border: 1px solid var(--check-line); border-radius: var(--r-sm); background: var(--surface); color: var(--check); font: 600 var(--fs-sm)/1 var(--font); cursor: pointer; transition: border-color .15s, background-color .15s; }
.pending-link:hover { border-color: var(--check); }
.is-flagged { animation: flag 1.6s cubic-bezier(.16, 1, .3, 1); border-radius: var(--r-md); }
@keyframes flag { 0% { box-shadow: 0 0 0 3px var(--check-line), 0 0 0 9px var(--check-bg); } 100% { box-shadow: 0 0 0 3px transparent, 0 0 0 9px transparent; } }
.psec { margin-top: 22px; }
.psec h3 { margin: 0 0 4px; font-size: var(--fs-body); font-weight: 700; color: var(--ink); }
.pls { list-style: none; margin: 0; padding: 0; }
.pl { display: grid; grid-template-columns: 20px minmax(0, 1fr) auto; column-gap: 10px; padding: 10px 0; border-bottom: 1px solid var(--rule); }
.pl:last-child { border-bottom: 0; }
.pl-icon { width: 16px; height: 16px; margin-top: 4px; color: var(--ink-3); }
.pl-icon svg { display: block; width: 16px; height: 16px; fill: currentColor; }
.pl-body { display: grid; gap: 1px; min-width: 0; }
.pl-drug { font-weight: 700; font-size: var(--fs-md); color: var(--ink-2); }
.pl-text { font-size: var(--fs-body); }
.pl-ref { align-self: start; font-size: var(--fs-xs); color: var(--ink-3); white-space: nowrap; padding-top: 4px; }
.tone-stop .pl-icon { color: var(--stop); }
.tone-stop .pl-text { font-weight: 600; }
.tone-act, .tone-check { margin: 4px 0; padding: 10px 12px 10px 8px; border-bottom: 0; border-radius: var(--r-md); }
.tone-act { background: var(--act-bg); }
.tone-act .pl-icon, .tone-act .pl-text { color: var(--act); }
.tone-act .pl-text { font-weight: 600; }
.tone-check { background: var(--check-bg); }
.tone-check .pl-icon, .tone-check .pl-text { color: var(--check); }
.tone-ok .pl-icon { color: var(--ok); }
.tone-note .pl-text { color: var(--ink-2); font-size: var(--fs-md); }
.tone-plain .pl-icon { color: var(--rule-strong); }
.res { display: inline-block; margin-left: 8px; padding: 1px 7px; border-radius: 999px; font-size: var(--fs-xs); font-weight: 700; vertical-align: 1px; }
.res-pass { background: var(--ok-bg); color: var(--ok); }
.res-fail { background: var(--act-bg); color: var(--act); }
.res-warn { background: var(--check-bg); color: var(--check); }
.contacts dl { margin: 0; display: grid; grid-template-columns: max-content 1fr; gap: 4px 12px; font-size: var(--fs-md); }
.contacts dt { font-weight: 600; }
.contacts dd { margin: 0; color: var(--ink-2); }

.foot { max-width: 1280px; margin: 0 auto; padding: 0 32px 32px; font-size: var(--fs-xs); color: var(--ink-3); }

.planbar { display: none; }
@media (max-width: 900px) {
  .planbar { position: fixed; left: 12px; right: 12px; bottom: max(12px, env(safe-area-inset-bottom)); z-index: 20; display: flex; justify-content: space-between; align-items: center; gap: 12px; min-height: 48px; padding: 0 16px; border-radius: var(--r-md); color: #fff; font-weight: 700; text-decoration: none; box-shadow: 0 4px 16px rgba(20, 32, 46, .25); background: var(--ink); }
  .planbar[hidden] { display: none !important; }
  .planbar-vlow { background: var(--cat-vlow); }
  .planbar-low { background: var(--cat-low); }
  .planbar-high { background: var(--cat-high); }
  .planbar-go { display: inline-flex; align-items: center; gap: 4px; font-weight: 600; font-size: var(--fs-md); }
  .planbar-go svg { width: 16px; height: 16px; }
  .foot { padding-bottom: 88px; }
  .appbar-inner, .disclaimer, .about-inner, .foot { padding-left: 16px; padding-right: 16px; }
  .layout { grid-template-columns: 1fr; padding: 12px 16px 32px; gap: 16px; }
  .plan { position: static; max-height: none; overflow: visible; }
  .plan-head { position: static; }
  .sheet, .plan { padding-left: 16px; padding-right: 16px; }
}
@media (max-width: 520px) {
  .wordmark p { display: none; }
  .values { grid-template-columns: 1fr 1fr; }
  .contacts dl { grid-template-columns: 1fr; }
  .contacts dd { margin-bottom: 6px; }
  .pl { grid-template-columns: 20px minmax(0, 1fr); }
  .pl-ref { grid-column: 2; padding-top: 2px; }
}
@media (prefers-reduced-motion: reduce) { .is-flagged { animation: none; outline: 2px solid var(--check-line); } html { scroll-behavior: auto; } }
@media print {
  .appbar-actions, .sheet, .skip, #copyBtn { display: none !important; }
  .layout { display: block; padding: 0; }
  .plan { position: static; max-height: none; border: 0; }
}
#fs-setting:has(+ #plannedOnly[hidden]) { border-bottom: 0; padding-bottom: 8px; }
.review-banner { max-width: 1280px; margin: 10px auto 0; padding: 10px 32px; background: var(--check-bg); border-top: 1px solid var(--check-line); border-bottom: 1px solid var(--check-line); color: var(--check); font-size: var(--fs-md); font-weight: 600; }
@media (max-width: 900px) { .review-banner { padding-left: 16px; padding-right: 16px; } }

/* ---- View tabs: Simple (nurse) | Full (operator), 29 Oct 2026 ---- */
.viewtabs { max-width: 1280px; margin: 12px auto 0; padding: 0 32px; display: grid; grid-template-columns: repeat(2, minmax(0, 220px)); gap: 6px; }
.viewtab { display: flex; flex-direction: column; align-items: flex-start; gap: 2px; min-height: 48px; padding: 7px 14px; border: 1px solid var(--rule-strong); border-radius: var(--r-md); background: var(--surface); color: var(--ink); font: 700 var(--fs-body)/1.15 var(--font); text-align: left; cursor: pointer; }
.viewtab small { font-size: var(--fs-xs); font-weight: 400; color: var(--ink-3); }
.viewtab:hover { border-color: var(--ink-3); }
.viewtab[aria-pressed="true"] { background: var(--accent); border-color: var(--accent); color: #fff; }
.viewtab[aria-pressed="true"] small { color: #d5e6e8; }
.viewtab:focus-visible { outline: 2px solid var(--focus); outline-offset: 2px; }

.drug-search { margin: 4px 0 6px; }
.drug-hits { list-style: none; margin: 0 0 10px; padding: 0; display: flex; flex-wrap: wrap; gap: 6px; }
.drug-hit { display: inline-flex; flex-direction: column; align-items: flex-start; min-height: 40px; padding: 5px 12px; border: 1px solid var(--accent); border-radius: var(--r-md); background: var(--accent-soft); color: var(--accent); font: 600 var(--fs-md)/1.2 var(--font); cursor: pointer; text-align: left; }
.drug-hit small { font-weight: 400; color: var(--ink-2); }
.drug-hit.is-ticked { background: var(--accent); color: #fff; }
.drug-hit.is-ticked small { color: #d5e6e8; }
.drug-nohit { font-size: var(--fs-sm); color: var(--ink-3); }

.who-banner { margin: 0 0 14px; padding: 11px 14px; border-radius: var(--r-md); border: 1px solid var(--rule-strong); background: var(--surface-2); font-weight: 600; }
.who-banner small { display: block; font-weight: 400; color: var(--ink-2); margin-top: 2px; }
.who-banner.who-nurse { border-color: var(--ok); background: var(--ok-bg); color: var(--ok); }
.who-banner.who-consultant { border-color: var(--check-line); background: var(--check-bg); color: var(--check); }
.who-banner.who-haematology { border-color: var(--act); background: var(--act-bg); color: var(--act); }
.who-banner.who-incomplete { color: var(--ink); }

.meds { list-style: none; margin: 0; padding: 0; border-top: 1px solid var(--rule); }
.med { padding: 12px 0; border-bottom: 1px solid var(--rule); }
.med-head { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: 6px 12px; }
.med-name { margin: 0; font-size: var(--fs-lg); font-weight: 700; }
.med-name small { font-size: var(--fs-sm); font-weight: 400; color: var(--ink-3); margin-left: 6px; }
.badge { display: inline-block; padding: 3px 9px; border-radius: 999px; font-size: var(--fs-xs); font-weight: 700; letter-spacing: .01em; border: 1px solid currentColor; white-space: nowrap; }
.badge-nurse { color: var(--ok); background: var(--ok-bg); }
.badge-consultant { color: var(--check); background: var(--check-bg); }
.badge-haematology { color: var(--act); background: var(--act-bg); }
.badge-answer { color: var(--ink-2); background: var(--surface-2); }
.med-grid { display: grid; grid-template-columns: 104px 1fr; gap: 4px 12px; margin: 8px 0 0; }
.med-grid dt { font-size: var(--fs-sm); color: var(--ink-3); font-weight: 600; padding-top: 1px; }
.med-grid dd { margin: 0; }
.med-grid dd p { margin: 0 0 3px; }
.med-why { margin: 6px 0 0; font-size: var(--fs-sm); color: var(--check); }
.ref { font-size: var(--fs-xs); color: var(--ink-3); white-space: nowrap; }
.needs { list-style: none; margin: 0; padding: 0; }
.needs li { display: grid; grid-template-columns: auto 1fr; gap: 8px; align-items: start; padding: 8px 0; border-bottom: 1px solid var(--rule); }
.needs li:last-child { border-bottom: 0; }
.allthresh summary { cursor: pointer; font-size: var(--fs-sm); color: var(--accent); font-weight: 600; padding: 6px 0; }
@media (max-width: 900px) { .viewtabs { padding: 0 16px; grid-template-columns: 1fr 1fr; } }
@media (max-width: 720px) {
  .med-grid { grid-template-columns: 1fr; gap: 0; }
  .med-grid dt { margin-top: 6px; }
}
@media print {
  .viewtabs, .appbar-actions, .sheet, .planbar, .skip { display: none !important; }
}

/* ---- Brief view: compact layout, Next bar, outline (v0.4, 29 Oct 2026) ---- */
.next-step { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px 12px; margin: 14px 0 4px; padding: 10px 12px; border: 1px solid var(--rule-strong); border-left-width: 4px; border-radius: var(--r-md); background: var(--surface-2); }
.next-step p { margin: 0; font-weight: 600; flex: 1 1 260px; }
.next-step .btn { min-height: 36px; }
.next-ok { border-color: var(--ok); background: var(--ok-bg); color: var(--ok); }
.next-cons { border-color: var(--check-line); border-left-color: var(--check); background: var(--check-bg); color: var(--check); }
.next-haem { border-color: var(--act); background: var(--act-bg); color: var(--act); }
.next-todo { border-left-color: var(--accent); }
.outline { margin-top: 6px; }
.outline-sec { padding: 12px 0; border-bottom: 1px dashed var(--rule-strong); }
.outline-sec h3 { margin: 0 0 2px; }
.outline-sec p { margin: 0; font-size: var(--fs-md); }
.t5wrap summary { cursor: pointer; font-size: var(--fs-sm); font-weight: 600; color: var(--accent); margin: 0 0 8px; }
.t5wrap[open] summary { margin-bottom: 6px; }
.values-toggle { margin-top: 2px; }

@media (min-width: 901px) {
  body[data-view="brief"] .layout { grid-template-columns: minmax(420px, 600px) minmax(0, 1fr); }
}
/* Questions sit on one line with their answers in Brief, where there's room */
@media (min-width: 521px) {
  body[data-view="brief"] .qs { gap: 8px; }
  body[data-view="brief"] .qs .q { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 300px); gap: 10px; align-items: center; }
  body[data-view="brief"] .qs .q-text { margin: 0; }
  body[data-view="brief"] .qs .seg-item > span { min-height: 38px; padding: 3px 8px; }
  body[data-view="brief"] .block { padding: 14px 0; }
}

/* Questions for the nurse to ask; risk category as a fact in Brief (v0.5) */
.askbox { margin: 0 0 14px; padding: 12px 14px; border: 1px solid var(--check-line); border-left: 4px solid var(--check); border-radius: var(--r-md); background: var(--check-bg); }
.askbox h3 { margin: 0 0 6px; font-size: var(--fs-body); font-weight: 700; color: var(--check); }
.askbox h3 + ol { margin-top: 0; }
.askbox ol { margin: 0 0 8px; padding-left: 20px; }
.askbox ol:last-child { margin-bottom: 0; }
.askbox li { margin: 0 0 6px; font-size: var(--fs-body); font-weight: 600; color: var(--ink); line-height: 1.4; }
.cat-fact { grid-column: 1 / -1; margin: 0; padding: 9px 12px; border-radius: var(--r-md); color: #fff; font-weight: 700; }
.cat-fact small { display: block; font-weight: 400; font-size: var(--fs-xs); color: var(--on-verdict); }
.cat-fact-vlow { background: var(--cat-vlow); }
.cat-fact-low { background: var(--cat-low); }
.cat-fact-high { background: var(--cat-high); }
.askbox .basis { display: block; margin-top: 3px; font-size: var(--fs-sm); font-weight: 400; color: var(--ink-2); }

.verdict-label { color: #fff; }
.verdict .verdict-label::after { content: ''; }
.btn-danger { border-color: var(--act); background: var(--act); color: #fff; }
.btn-danger:hover { filter: brightness(.92); }
.newconfirm { display: inline-flex; align-items: center; gap: 6px; font-size: var(--fs-md); font-weight: 600; color: var(--act); }
.newconfirm[hidden] { display: none; }
.full-asks { margin-top: 8px; }
body.plan-in-view .planbar { display: none !important; }
.full-asks ol { margin: 4px 0 0; padding-left: 20px; }
.full-asks li { margin: 0 0 8px; }
.full-asks .basis { display: block; margin-top: 2px; font-size: var(--fs-sm); color: var(--ink-2); }
.proto { padding: 10px 16px; text-align: center; background: var(--act); color: #fff; font-size: var(--fs-md); }
.proto strong { color: #fff; text-transform: uppercase; letter-spacing: .04em; }
@media print { .proto { background: none; color: #000; border-bottom: 2px solid #000; } .proto strong { color: #000; } }
