/* Caverio additions v3 · 2026-09-17 · design-v3-20260917. Loads after caverio-additions.css (iteration two).
   Simple on top, deep underneath. Type scale: large = the read, why-now, blocker, waiting-for (serif 20 to 26 px);
   medium = evidence values, timing, summaries (13.5 to 15 px); small = labels, feet (12 px, the floor for anything a
   user must read); sources and definitions may be 11 px only inside the collapsed Evidence & definitions. */
:root{
  --cv-t-l:22px; --cv-t-l-top:21px; --cv-t-m:14px; --cv-t-s:12px;
  --cv-sep:rgba(233,237,231,.16);
}
body{font-size:14px}
.k{font-family:var(--cv-font-data);font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--cv-bone-62);flex-shrink:0}
.intro p{font-size:15px;color:var(--cv-bone-70)}
.intro .status{font-size:12px}
.footer{font-size:12px}

/* ---------- grouped rung strip: W T · M P E ---------- */
.rs3{display:flex;align-items:stretch;gap:10px;flex-wrap:wrap;width:100%}
.rs3 .grp{display:flex;gap:8px;align-items:center;flex-wrap:wrap;position:relative;min-width:0}
.rs3 .sep{width:1px;align-self:stretch;background:var(--cv-sep);margin:0 2px;flex-shrink:0}
.rs3 .rg{display:inline-flex;align-items:center;gap:6px;min-width:0;position:relative}
.rs3 .r{font:inherit;display:inline-flex;align-items:center;justify-content:center;height:22px;width:22px;border-radius:3px;border:1px solid transparent;background:var(--cv-bone-06);color:var(--cv-bone-40);font-family:var(--cv-font-data);font-size:12px;font-weight:500;cursor:help;padding:0;flex-shrink:0;position:relative}
.rs3 .r b{font-weight:500}
.rs3 .ok .r{color:var(--cv-field)}
.rs3 .W.ok .r{background:var(--cv-dim-window)}.rs3 .M.ok .r{background:var(--cv-dim-money)}.rs3 .P.ok .r{background:var(--cv-dim-people)}.rs3 .E.ok .r{background:var(--cv-bone)}.rs3 .T.ok .r{background:var(--cv-dim-trade)}
.rs3 .fail .r{background:transparent;box-shadow:inset 0 -2px 0 var(--red)}
.rs3 .W.fail .r{border-color:var(--cv-amber-line);color:var(--cv-amber)}.rs3 .M.fail .r{border-color:var(--cv-green-line);color:var(--cv-green)}.rs3 .P.fail .r{border-color:var(--cv-ochre-line);color:var(--cv-ochre)}.rs3 .T.fail .r{border-color:var(--cv-bone-18);color:var(--cv-bone-70)}
.rs3 .E.fail.deteriorate .r{background:var(--cv-dim-exposure);color:var(--cv-field);box-shadow:none}
.rs3 .unk .r{background:var(--cv-unknown-hatch);border-color:var(--cv-bone-12);color:var(--cv-bone-62)}
.rs3 .watch .r{background:transparent;border:1px dashed var(--cv-blue-line);color:var(--blue)}
.rs3 .rw{font-size:13px;color:var(--cv-bone-70);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rs3 .rw em{font-style:normal;color:var(--ink);font-weight:500}
.rs3 .fail .rw{color:var(--ink)}
.rs3 .unk .rw{color:var(--cv-bone-62)}
.rs3-full{flex-direction:column;gap:8px}
.rs3-full .grp{display:grid;gap:8px 10px;justify-content:space-between}.rs3-full .grp.act{grid-template-columns:auto auto}.rs3-full .grp.evi{grid-template-columns:auto auto auto}
.rs3-full .sep{width:100%;height:1px;align-self:auto;margin:0}
.rs3-full .rg{align-items:flex-start;gap:8px}
.rs3-full .rw{display:flex;flex-direction:column;white-space:normal;overflow:visible;line-height:1.25;font-size:14px}
.rs3-full .rw em{font-size:12px;font-weight:400;color:var(--cv-bone-62);font-family:var(--cv-font-data);letter-spacing:.03em;text-transform:uppercase}
.rs3-full .r{margin-top:2px}
.rs3-short .rw{font-size:12.5px}
.rs3-bare .r{height:18px;width:18px;font-size:12px;border-radius:2px}
.rs3-bare .grp{gap:3px}
/* hover / tap: name and reason, from the builder's words */
.rs3 .r::after{content:attr(data-tip);position:absolute;left:0;top:calc(100% + 6px);min-width:220px;max-width:320px;padding:8px 10px;border-radius:6px;background:var(--cv-raised);border:1px solid var(--cv-bone-18);color:var(--ink);font-family:var(--font);font-size:12px;font-weight:400;line-height:1.4;text-align:left;white-space:normal;z-index:9;display:none;box-shadow:0 8px 24px rgba(0,0,0,.35)}
.rs3 .r:hover::after,.rs3 .r:focus-visible::after,.rs3 .r.tip::after{display:block}
.rs3 .r:focus-visible{outline:1px solid var(--cv-bone-40);outline-offset:1px}

/* first-use legend strip, dismissible */
.legend{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin:16px 0 0;padding:10px 14px;border:1px solid var(--cv-bone-12);border-radius:8px;background:var(--cv-bone-04);font-size:13px;color:var(--cv-bone-70)}
.legend[hidden]{display:none}
.legend .g{display:inline-flex;align-items:center;gap:10px;flex-wrap:wrap}
.legend .g em{font-style:normal;font-family:var(--cv-font-data);font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--cv-bone-62)}
.legend .g span{display:inline-flex;align-items:center;gap:5px;white-space:nowrap}
.legend i{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:3px;font-family:var(--cv-font-data);font-size:12px;color:var(--cv-field);font-style:normal}
.legend i.W{background:var(--cv-dim-window)}.legend i.T{background:var(--cv-dim-trade)}.legend i.M{background:var(--cv-dim-money)}.legend i.P{background:var(--cv-dim-people)}.legend i.E{background:var(--cv-bone)}
.legend .sep{width:1px;height:18px;background:var(--cv-sep)}
.legend button{font:inherit;font-size:12.5px;margin-left:auto;background:none;border:1px solid var(--cv-bone-18);color:var(--cv-bone-70);border-radius:5px;padding:5px 10px;cursor:pointer;min-height:32px}
.legend button:hover{color:var(--ink)}

/* ---------- Strike card: six answers ---------- */
.sk{gap:10px}
.sk .why{font-size:var(--cv-why-now)}
.sk.top .why{font-size:var(--cv-t-l-top)}
.rd{margin:0;display:flex;gap:8px;align-items:baseline;font-size:var(--cv-t-m);line-height:1.4;flex-wrap:wrap}
.rd .pl{font-weight:600;color:var(--ink);white-space:nowrap}
.rd .rr{color:var(--cv-bone-70);flex:1 1 200px;min-width:0}
.nx{margin:0;display:flex;gap:8px;align-items:baseline;font-size:13px;line-height:1.4;color:var(--cv-bone-70)}
.sk .ft{font-size:12px}
.sk.top .ft{font-size:12.5px}
.sk.sec .why{font-size:15px;font-family:var(--cv-font-editorial);font-weight:400}
.sk.sec .rd{font-size:13px}
.sk.sec .nx{font-size:12.5px}.sk.sec .nx .t{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.sk.sec .rs3 .r{height:20px;width:20px;font-size:11px}
.sk.sec .rs3{gap:8px}.sk.sec .rs3 .grp{gap:7px}
.wk .rs3{margin:2px 0}
.wk .ft span{color:var(--cv-bone-62)}
/* phone: the top three in one column, the six in two; type never below 12 px */
@media(max-width:700px){
  .tier{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .tier.top{grid-template-columns:1fr;gap:10px}
  .sk{padding:12px 12px 10px 14px;gap:8px}
  .sk.top{padding:14px 14px 12px 16px;gap:10px}
  .sk.top .why{font-size:19px}
  .sk.sec .why{font-size:14px}
  .sk.sec .id .ctx{display:none}
  .sk.sec .rd{font-size:12.5px}.sk.sec .rd .rr{flex-basis:100%}
  .sk.sec .rs3{flex-direction:column;gap:6px}.sk.sec .rs3 .sep{width:100%;height:1px;align-self:auto;margin:0}
  .sk.sec .rs3 .grp{gap:6px}
  .sk.sec .rs3 .rw{font-size:12px}
  .sk.sec .nx{font-size:12px}
  .sk .ft{font-size:12px}
  .sk.top .rs3{gap:8px}
  .sk.top .rs3-full .grp{gap:8px 12px}
  .sk.top .rs3-full .rw{font-size:12.5px}
  .rs3 .r::after{max-width:min(320px,80vw)}
  .legend{gap:10px}.legend button{margin-left:0}
}

/* ---------- Now ---------- */
.nc{gap:11px}
.nc .why{font-size:var(--cv-why-now)}
.nc.compact .why{font-size:16px}
.nc.compact .rd{font-size:13px}
.nc .ft{font-size:12px}

/* ---------- Situation: decision brief ---------- */
.brief{padding:26px 0 24px;border-bottom:1px solid var(--line);display:flex;flex-direction:column;gap:18px;position:relative}
.brief .id b{font-size:26px;font-weight:500}
.brief .id .ctx{font-size:14px}
.brief .id{flex-wrap:wrap}.brief .id .ctx{white-space:normal;overflow:visible;text-overflow:clip}
.dq{display:grid;grid-template-columns:150px minmax(0,1fr);gap:14px 18px;margin:0;max-width:860px}
.dq dt{font-family:var(--cv-font-data);font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--cv-bone-62);padding-top:6px}
.dq dd{margin:0;font-size:15px;line-height:1.45;color:var(--cv-bone-70)}
.dq dd.big{font-family:var(--cv-font-editorial);font-size:var(--cv-t-l);line-height:1.3;color:var(--ink)}
.dq dd.big span{color:var(--cv-bone-70)}
.dq dd.big .pl{font-weight:500;color:var(--ink)}
.dq dd.big small{display:block;font-family:var(--font);font-size:14px;color:var(--cv-bone-70);margin-top:4px;line-height:1.45}
.dq dd.big.fail::before{content:"";display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--red);margin-right:10px;vertical-align:3px}
.dq dd.big.unk{color:var(--cv-bone-70)}
.dq dd.unk{color:var(--cv-bone-70)}
.rl{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px 22px}
.rl li{display:flex;gap:10px;align-items:flex-start;font-size:var(--cv-t-m);color:var(--ink)}
.rl li em{font-style:normal;color:var(--cv-bone-62);font-weight:400;font-family:var(--cv-font-data);font-size:12px;letter-spacing:.06em;text-transform:uppercase}
.rl li span{display:flex;flex-direction:column;gap:1px;min-width:0}.rl li span em{display:block}.rl li span b{font-weight:500;font-size:15px}
.rl li small{font-size:13px;color:var(--cv-bone-62);line-height:1.4}
.rl li.fail small{color:var(--cv-bone-70)}
.rl .r{display:inline-flex;align-items:center;justify-content:center;height:24px;width:24px;border-radius:4px;border:1px solid transparent;background:var(--cv-bone-06);color:var(--cv-bone-40);font-family:var(--cv-font-data);font-size:12px;flex-shrink:0;margin-top:1px;font-style:normal}
.rl .ok .r{color:var(--cv-field)}
.rl .W.ok .r{background:var(--cv-dim-window)}.rl .M.ok .r{background:var(--cv-dim-money)}.rl .P.ok .r{background:var(--cv-dim-people)}.rl .E.ok .r{background:var(--cv-bone)}.rl .T.ok .r{background:var(--cv-dim-trade)}
.rl .fail .r{background:transparent;box-shadow:inset 0 -2px 0 var(--red)}
.rl .W.fail .r{border-color:var(--cv-amber-line);color:var(--cv-amber)}.rl .M.fail .r{border-color:var(--cv-green-line);color:var(--cv-green)}.rl .P.fail .r{border-color:var(--cv-ochre-line);color:var(--cv-ochre)}.rl .T.fail .r{border-color:var(--cv-bone-18);color:var(--cv-bone-70)}
.rl .E.fail.deteriorate .r{background:var(--cv-dim-exposure);color:var(--cv-field);box-shadow:none}
.rl .unk .r{background:var(--cv-unknown-hatch);border-color:var(--cv-bone-12);color:var(--cv-bone-62)}
.rl .watch .r{background:transparent;border:1px dashed var(--cv-blue-line);color:var(--blue)}
.sit section{padding:24px 0 10px}
.sit h2{font-size:12px}.sit h2 small{font-size:12px}
.sit .lead{font-size:16px}
.sit .lead.num-l{font-family:var(--cv-font-data);font-weight:500;letter-spacing:-.01em;font-size:15px}
.sit .s{font-size:13px}
/* money vs attention two-line verdict */
.verdict{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 24px;max-width:760px;margin-bottom:8px}
.verdict div{display:flex;flex-direction:column;gap:2px}
.verdict em{font-style:normal;font-family:var(--cv-font-data);font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--cv-bone-62)}
.verdict b{font-size:16px;font-weight:500;color:var(--ink)}
.verdict b.strong{color:var(--cv-green)}
.verdict b.unknown{color:var(--cv-bone-62)}
.ma .ev li{font-size:13.5px}
.ma .ev li .t{font-size:12px}
/* exposure rows a touch larger */
.xr .row{font-size:12.5px}
.xr .row .lab{font-size:12px}
/* tradability rows */
.tm .row{font-size:13px}
/* evidence & definitions, collapsed by default */
details.evid{display:block;margin-top:4px}
details.evid summary{cursor:pointer;list-style:none;font-size:13.5px;color:var(--cv-bone-70);display:flex;gap:10px;align-items:baseline;padding:8px 0}
details.evid summary::-webkit-details-marker{display:none}
details.evid summary::before{content:"→";display:inline-block;width:14px;color:var(--cv-bone-40)}
details.evid[open] summary::before{content:"↓"}
details.evid summary small{color:var(--cv-bone-40);font-size:12px}
details.evid .evbody{display:flex;flex-direction:column;gap:8px;font-size:11px;color:var(--cv-bone-40);max-width:860px;padding:6px 0 10px}
details.evid .ev{grid-template-columns:110px minmax(0,1fr)}
details.evid .ev .clk{font-size:11px}
details.evid .defs p{font-size:11.5px}
details.evid .unkl p{margin:4px 0 0;line-height:1.5}
@media(max-width:700px){
  .brief .id b{font-size:22px}
  .dq{grid-template-columns:1fr;gap:4px 0}
  .dq dt{margin-top:12px;padding-top:0}
  .dq dd.big{font-size:20px}
  .verdict{grid-template-columns:1fr}
  .rl li{font-size:13.5px}
  details.evid .ev{grid-template-columns:1fr}
}

/* 12 px floor for every label a user reads (sources and definitions stay 11 px inside the collapsed section) */
.sectionlabel{font-size:12px}.sectionlabel small{font-size:12px}
.lbl,.tm .row .lab,.hs dt,.logic .st{font-size:12px}
.tracks .axis{font-size:12px}.tracks .tl{font-size:13px}
.key{font-size:12px}
.vz figcaption{font-size:12px}
.ma .ev li .t{font-size:12px}
.xr .dots em{font-size:12px}
.uc i,.uc i em,.uc i small{font-size:12px}
.intro .status{font-size:12px}
.drawer h3{font-size:12px}.drawer th{font-size:11px}
@media(max-width:700px){.sk.sec .id .cap{font-size:12px}.sk .ft{font-size:12px}.rs-m .rn{font-size:12px}}
@media(max-width:700px){.sk.sec .nx{flex-wrap:wrap;gap:2px 8px}.sk.sec .nx .t{flex-basis:100%;-webkit-line-clamp:4}}

.dq dd .rl{padding-top:4px}
.xr{max-width:560px}
.tm .row{grid-template-columns:180px 160px 1fr}
.nc .rs3-full .grp{justify-content:start;gap:8px 40px}
@media(max-width:700px){.tm .row{grid-template-columns:1fr}.rl{grid-template-columns:1fr}}
