:root{
  --ink:#141414; --paper:#fafaf8; --mut:#4d4d49; --line:#d6d5ce;
  --red:#c2201a; --red-dk:#8f1511; --red-text:#a81b15; --soft:#efeee8; --ok:#2f6b4f; --amb:#a9741c;
  --card:#fff; --card-2:#fcfcfa; --inv-bg:#191915; --inv-fg:#fff;
  --ok-ink:#1d5c33; --amb-ink:#5e4d12; --mut-2:#6b6b66; --unseen:#b9b6ae; --bar-h:48px;
  color-scheme:light;
}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){
  --ink:#ecebe6; --paper:#121210; --mut:#bdbcb5; --line:#393833;
  --red-dk:#ff9a90; --red-text:#ff9a90; --soft:#22211e; --ok:#5fae88; --amb:#d9a54a;
  --card:#1b1a17; --card-2:#1e1d1a; --inv-bg:#2c2b27; --inv-fg:#fff;
  --ok-ink:#86d1ab; --amb-ink:#e6be6e; --mut-2:#9a9993; --unseen:#5d5c56;
  color-scheme:dark;
}}
:root[data-theme="dark"]{
  --ink:#ecebe6; --paper:#121210; --mut:#bdbcb5; --line:#393833;
  --red-dk:#ff9a90; --red-text:#ff9a90; --soft:#22211e; --ok:#5fae88; --amb:#d9a54a;
  --card:#1b1a17; --card-2:#1e1d1a; --inv-bg:#2c2b27; --inv-fg:#fff;
  --ok-ink:#86d1ab; --amb-ink:#e6be6e; --mut-2:#9a9993; --unseen:#5d5c56;
  color-scheme:dark;
}


*{box-sizing:border-box}
html{scroll-behavior:smooth;overflow-x:hidden}
body{margin:0;background:var(--paper);color:var(--ink);
  font:17px/1.65 -apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif;
  -webkit-font-smoothing:antialiased;overflow-x:hidden}
.skip{position:fixed;left:8px;top:8px;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;background:var(--inv-bg);color:var(--inv-fg);z-index:99}
.skip:focus{width:auto;height:auto;padding:.6rem 1rem;margin:0;overflow:visible;clip-path:none}
/* time bar */
#tbar{position:fixed;top:0;left:0;right:0;height:44px;background:var(--paper);
  border-bottom:1px solid var(--line);z-index:50;display:flex;align-items:center;
  padding:0 1rem;gap:.8rem}
#tfill{position:absolute;left:0;top:0;bottom:0;background:rgba(194,32,26,.09);width:0;transition:width .2s linear}
#tlabel{font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;font-weight:700;position:relative;white-space:nowrap}
#tlabel b{font:800 .82rem/1 ui-monospace,"DejaVu Sans Mono",Menlo,monospace;color:var(--red-dk);letter-spacing:.02em;text-transform:none}
@media(max-width:430px){#tlabel .pre{display:none}}
#langsw{margin-left:auto;position:relative;display:flex;gap:.4rem}
#langsw button{font:inherit;font-size:.78rem;font-weight:700;letter-spacing:.06em;border:1px solid var(--line);
  background:transparent;color:var(--mut);padding:.25rem .7rem;border-radius:99px;cursor:pointer}
#langsw button[aria-pressed="true"]{background:var(--inv-bg);color:var(--inv-fg);border-color:var(--inv-bg)}
main{max-width:720px;margin:0 auto;padding:0 1.2rem}
/* hero */
#hero{min-height:100svh;display:flex;flex-direction:column;justify-content:center;
  padding:6rem 1.2rem 3rem;max-width:820px;margin:0 auto;position:relative}
.dot{width:120px;height:120px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#e0392f,#c2201a 55%,#8f1511);
  box-shadow:0 12px 40px rgba(194,32,26,.35);margin-bottom:2.2rem;flex:none}
#hero h1{font-size:clamp(2.6rem,8vw,4.6rem);line-height:1.02;margin:0 0 1.4rem;font-weight:800;letter-spacing:-.02em}
#hero p.lead{font-size:clamp(1.1rem,2.6vw,1.35rem);line-height:1.5;color:var(--ink);max-width:34em;margin:0}
#hero .kick{font-size:.85rem;letter-spacing:.14em;text-transform:uppercase;color:var(--red-dk);font-weight:700;margin:0 0 1rem}
/* sections */
section{padding:3.6rem 0 1rem;border-top:1px solid var(--line)}
section:first-of-type{border-top:0}
h2{font-size:clamp(1.5rem,4vw,2.1rem);line-height:1.15;letter-spacing:-.01em;margin:0 0 .4rem;font-weight:800}
.stamp{font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;color:var(--red-dk);font-weight:700;margin:0 0 1.2rem}
p{margin:0 0 1.1rem;max-width:38em}
.note{font-size:.85rem;color:var(--mut)}
a{color:var(--red-dk);text-decoration-color:rgba(194,32,26,.35);text-underline-offset:3px}
a:hover{color:var(--red-text)}
blockquote{margin:1.6rem 0;padding:1.2rem 1.4rem;background:var(--soft);border-left:4px solid var(--red);
  font-size:1.12rem;line-height:1.55}
blockquote cite{display:block;font-size:.82rem;font-style:normal;color:var(--mut);margin-top:.7rem}
/* definition box */
.defbox{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:1.3rem 1.5rem;margin:1.8rem 0;font-size:.95rem}
.defbox .dt{font-size:.72rem;letter-spacing:.11em;text-transform:uppercase;font-weight:700;color:var(--red-dk);margin-bottom:.5rem}
/* thesis */
#teza{background:var(--inv-bg);color:#f4f3ef;margin:3.5rem -1.2rem 0;padding:3rem 1.2rem;border-top:0}
#teza .inner{max-width:720px;margin:0 auto}
#teza h2{color:var(--inv-fg)}
#teza .stamp{color:#ff8a80}
#teza p{color:#d8d7d0}
#teza strong{color:var(--inv-fg)}
/* tables → cards */
table{width:100%;border-collapse:collapse;margin:1.6rem 0;font-size:.92rem}
caption{text-align:left;font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;font-weight:700;color:var(--mut);padding-bottom:.6rem}
th{text-align:left;font-size:.72rem;letter-spacing:.09em;text-transform:uppercase;color:var(--mut);
  border-bottom:2px solid var(--ink);padding:.5rem .6rem .5rem 0}
td{border-bottom:1px solid var(--line);padding:.65rem .6rem .65rem 0;vertical-align:top}
td:last-child,th:last-child{padding-right:0}
.num{font-variant-numeric:tabular-nums;font-weight:700;white-space:nowrap}
.yes{color:var(--ok-ink);font-weight:700}.no{color:var(--red-dk);font-weight:700}.part{color:var(--amb-ink);font-weight:700}
@media(max-width:600px){
  table.cards,table.cards tbody{display:block}
  table.cards thead{display:none}
  table.cards tr{display:block;border:1px solid var(--line);border-radius:8px;padding:.9rem 1rem;margin-bottom:.9rem;background:var(--card)}
  table.cards td{display:block;border:0;padding:.2rem 0}
  table.cards td[data-l]::before{content:attr(data-l);display:block;font-size:.68rem;letter-spacing:.09em;
    text-transform:uppercase;color:var(--mut);font-weight:700;margin-top:.5rem}
}
/* counter */
#contor{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:2rem 1.6rem;margin:2rem 0;text-align:center}
#anul{font-size:clamp(3.2rem,11vw,5.5rem);font-weight:800;letter-spacing:-.03em;line-height:1;color:var(--red-text);
  font-variant-numeric:tabular-nums;display:block}
#contor .cap{font-size:.8rem;letter-spacing:.11em;text-transform:uppercase;color:var(--mut);font-weight:700;margin-bottom:.6rem}
#contor .der{font-size:.85rem;color:var(--mut);max-width:32em;margin:1rem auto 0}
/* timeline strip */
.axa{display:flex;margin:2rem 0;border:1px solid var(--line);border-radius:10px;overflow:hidden;font-size:.78rem;font-weight:700}
.axa div{padding:.8rem .6rem;text-align:center;line-height:1.3}
.axa .a1{flex:0 0 26%;background:var(--red);color:var(--inv-fg)}
.axa .a2{flex:1;background:var(--card);color:var(--mut)}
.axa .a2 span{font-weight:400}

/* glossary tooltips */
.term{font:inherit;color:inherit;background:transparent;border:0;border-bottom:1px dotted var(--red-dk);padding:0 .05rem;cursor:help;position:relative;text-decoration:none}
.term:focus{outline:2px solid rgba(194,32,26,.28);outline-offset:2px;border-radius:3px}
.term::after{content:attr(data-tip);position:absolute;left:50%;bottom:calc(100% + .55rem);transform:translateX(-50%);min-width:220px;max-width:min(320px,86vw);background:var(--inv-bg);color:var(--inv-fg);font-size:.78rem;line-height:1.35;font-weight:500;padding:.65rem .75rem;border-radius:8px;box-shadow:0 14px 35px rgba(0,0,0,.18);opacity:0;pointer-events:none;z-index:80;white-space:normal;text-align:left}
.term::before{content:"";position:absolute;left:50%;bottom:calc(100% + .25rem);transform:translateX(-50%);border:.32rem solid transparent;border-top-color:var(--inv-bg);opacity:0;z-index:81}
.term:hover::after,.term:focus-visible::after,.term.open::after,.term:hover::before,.term:focus-visible::before,.term.open::before{opacity:1}

/* survival plan visual */
.survival{max-width:920px;margin-left:calc((720px - min(920px,100vw - 2.4rem))/2);margin-right:calc((720px - min(920px,100vw - 2.4rem))/2)}
.survival-shell{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:1rem;margin:1.8rem 0;box-shadow:0 18px 55px rgba(20,20,20,.06)}
.phase-tabs{display:grid;grid-template-columns:repeat(4,1fr);gap:.45rem;margin-bottom:1rem}
.phase-tabs button{font:inherit;font-size:.82rem;font-weight:800;border:1px solid var(--line);background:var(--paper);border-radius:999px;padding:.62rem .45rem;cursor:pointer;color:var(--mut)}
.phase-tabs button[aria-selected="true"]{background:var(--inv-bg);color:var(--inv-fg);border-color:var(--inv-bg)}
.phase-panel{display:none}.phase-panel.active{display:block}
.phase-head{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;border-bottom:1px solid var(--line);padding:.2rem 0 .8rem;margin-bottom:1rem}
.phase-head h3{font-size:1.25rem;line-height:1.2;margin:0}.phase-head .phase-time{font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;color:var(--red-dk);font-weight:800;white-space:nowrap}
.action-columns{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.action-box{background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:1rem}
.action-box h4{font-size:.77rem;letter-spacing:.11em;text-transform:uppercase;color:var(--mut);margin:.05rem 0 .7rem}
.action-box ul{list-style:none;margin:0;padding:0}.action-box li{display:grid;grid-template-columns:1.45rem 1fr;gap:.55rem;margin:.62rem 0;line-height:1.35}.action-box li::before{content:"";width:.62rem;height:.62rem;border-radius:50%;background:var(--red);margin-top:.42rem;box-shadow:0 0 0 4px rgba(194,32,26,.09)}
.do-now{background:var(--inv-bg);color:var(--inv-fg);border-radius:14px;padding:1rem;margin-top:1rem;display:grid;grid-template-columns:1.2fr 1fr;gap:1rem;align-items:center}
.do-now b{font-size:1.25rem;line-height:1.1}.do-now span{color:#ddd}.do-now a{color:var(--inv-fg);text-decoration-color:rgba(255,255,255,.5)}
.kit-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.6rem;margin-top:1rem}.kit-grid label{display:flex;gap:.45rem;align-items:flex-start;background:var(--card);border:1px solid var(--line);border-radius:10px;padding:.7rem;font-size:.84rem;line-height:1.25}.kit-grid input{margin-top:.1rem;accent-color:var(--red-text)}
.buy-guide{border-top:1px solid var(--line);margin-top:1rem;padding-top:1rem}
.buy-guide .viz-title{font-size:1rem}.buy-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:.65rem;margin-top:.8rem}.buy-card{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:.85rem;display:flex;flex-direction:column;gap:.45rem}.buy-card.primary{background:var(--paper);border-color:rgba(194,32,26,.35)}.buy-card h4{font-size:.78rem;letter-spacing:.09em;text-transform:uppercase;color:var(--red-dk);margin:0}.buy-card h4 a{font-size:inherit;letter-spacing:inherit;margin-top:0}.buy-card p{font-size:.82rem;line-height:1.35;margin:0;color:var(--mut)}.buy-card .price{font-size:.76rem;font-weight:850;color:var(--ink)}.buy-card a{font-size:.75rem;font-weight:850;letter-spacing:.07em;text-transform:uppercase;margin-top:auto}.buy-note{font-size:.8rem;color:var(--mut);line-height:1.4;margin:.75rem 0 0}
@media(max-width:780px){.survival{max-width:720px;margin-left:0;margin-right:0}.action-columns,.do-now{grid-template-columns:1fr}.phase-tabs{grid-template-columns:1fr 1fr}.kit-grid{grid-template-columns:1fr 1fr}}
@media(max-width:480px){.kit-grid{grid-template-columns:1fr}.phase-tabs button{font-size:.78rem;padding:.55rem .35rem}.phase-head{display:block}.phase-head .phase-time{display:block;margin-top:.25rem}}

/* pace lab */
.pace-lab{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:1.4rem;margin:2rem 0;box-shadow:0 18px 55px rgba(20,20,20,.06)}
.pace-top{display:grid;grid-template-columns:1fr 1.4fr;gap:1.3rem;align-items:center}.pace-year{font-size:clamp(3rem,10vw,5.6rem);line-height:.95;font-weight:900;letter-spacing:-.04em;color:var(--red-text);font-variant-numeric:tabular-nums}.pace-label{font-size:.76rem;letter-spacing:.12em;text-transform:uppercase;color:var(--mut);font-weight:800;margin-bottom:.45rem}.pace-kicker{font-size:.95rem;line-height:1.4;color:var(--mut)}
.pace-control{margin-top:1.2rem}.pace-control label{display:flex;justify-content:space-between;gap:1rem;font-size:.82rem;font-weight:800;color:var(--mut);text-transform:uppercase;letter-spacing:.08em}.pace-control input[type="range"]{width:100%;margin:.85rem 0;accent-color:var(--red-text)}
.pace-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:.65rem}.pace-kpis div{border:1px solid var(--line);border-radius:12px;padding:.75rem;background:var(--paper)}.pace-kpis strong{font-size:1.35rem;display:block;font-variant-numeric:tabular-nums}.pace-kpis span{font-size:.78rem;color:var(--mut)}
.pace-marks{position:relative;height:54px;border-bottom:2px solid var(--ink);margin:1.4rem .25rem 1rem}.pace-mark{position:absolute;bottom:-.38rem;transform:translateX(-50%);width:.72rem;height:.72rem;border-radius:50%;background:var(--ink)}.pace-mark .mark-label{position:absolute;bottom:1.05rem;left:50%;transform:translateX(-50%);font-size:.7rem;font-weight:800;line-height:1.15;text-align:center;min-width:5.8rem;color:var(--mut)}.pace-mark.hot{background:var(--red)}.pace-mark.hot .mark-label{color:var(--red-dk)}.pace-ref{font-size:.8rem;line-height:1.4;color:var(--mut);margin:.2rem 0 1rem}
.place-notes{display:grid;grid-template-columns:repeat(3,1fr);gap:.7rem;margin-top:1rem}.place-notes a,.place-notes div{display:block;background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:.8rem;font-size:.82rem;line-height:1.35;color:var(--ink);text-decoration:none}.place-notes b{display:block;color:var(--red-dk);margin-bottom:.15rem}
@media(max-width:760px){.pace-top,.pace-kpis,.place-notes{grid-template-columns:1fr}.pace-marks{height:86px}.pace-mark span{font-size:.66rem;min-width:4.8rem}}

/* evidence matrix */
.study-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.85rem;margin:1.4rem 0}.study-card{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:1rem}.study-card .tag{font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;font-weight:800;color:var(--red-dk);margin-bottom:.45rem}.study-card h3{font-size:1.02rem;line-height:1.25;margin:.1rem 0 .45rem}.study-card p{font-size:.88rem;line-height:1.45;margin:0;color:var(--mut)}
@media(max-width:680px){.study-grid{grid-template-columns:1fr}}


.wide-viz{max-width:920px;margin-left:calc((720px - min(920px,100vw - 2.4rem))/2);margin-right:calc((720px - min(920px,100vw - 2.4rem))/2)}
.vizbox{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:1.15rem;margin:1.6rem 0;box-shadow:0 18px 55px rgba(20,20,20,.055)}
.viz-kicker{font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;font-weight:800;color:var(--red-dk);margin-bottom:.35rem}
.viz-title{font-weight:850;line-height:1.2;font-size:1.08rem}
.viz-note{font-size:.82rem;color:var(--mut);line-height:1.4;margin:.45rem 0 0}
.viz-source{font-size:.76rem;color:var(--mut);line-height:1.35;margin:.85rem 0 0}
.mood-card{display:grid;grid-template-columns:1fr 1fr;gap:.7rem;margin:1.4rem 0}
.mood-card>div{border:1px solid var(--line);border-radius:13px;background:var(--card);padding:.9rem}
.mood-card span{display:block;font-size:.68rem;letter-spacing:.11em;text-transform:uppercase;color:var(--mut);font-weight:800;margin-bottom:.35rem}
.mood-card b{font-size:1.02rem;line-height:1.28}
.mood-card .indicative{border-color:rgba(194,32,26,.45);box-shadow:inset 0 0 0 1px rgba(194,32,26,.08)}
.coverage-map{margin-top:2rem}
.coverage-track{display:flex;gap:.35rem;align-items:stretch;margin:1rem 0 .9rem;min-height:86px}
.coverage-seg{appearance:none;border:1px solid var(--line);background:var(--paper);border-radius:13px;padding:.75rem .55rem;cursor:pointer;font:inherit;text-align:left;color:var(--mut);flex:var(--w) 0 0;min-width:0;position:relative;overflow:hidden}
.coverage-seg span{display:block}.coverage-seg .seg-time{font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;font-weight:900;color:var(--ink)}
.coverage-seg .seg-lab{font-size:.78rem;line-height:1.25;margin-top:.3rem}
.coverage-seg.filled{background:var(--red);border-color:var(--red-text);color:var(--inv-fg)}.coverage-seg.filled .seg-time{color:var(--inv-fg)}
.coverage-seg.pin{background:var(--inv-bg);color:var(--inv-fg);border-color:var(--inv-bg)}.coverage-seg.pin .seg-time{color:var(--inv-fg)}
.coverage-seg.gap{background:repeating-linear-gradient(135deg,var(--card) 0,var(--card) 8px,var(--soft) 8px,var(--soft) 14px)}
.coverage-seg[aria-pressed="true"]{outline:3px solid rgba(194,32,26,.22);outline-offset:2px}
.coverage-details{border:1px solid var(--line);border-radius:14px;background:var(--paper);padding:1rem;min-height:92px}
.cover-detail{display:none}.cover-detail.active{display:block}.cover-detail p{font-size:.92rem;line-height:1.45;margin:0}.cover-detail p+p{margin-top:.45rem}
.demand-viz .demand-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:.65rem;margin:1rem 0}
.demand-metric{background:var(--paper);border:1px solid var(--line);border-radius:13px;padding:.85rem}
.demand-metric strong{display:block;font-size:clamp(1.55rem,5vw,2.4rem);line-height:1;color:var(--red-text);font-variant-numeric:tabular-nums}
.demand-metric span{font-size:.78rem;line-height:1.25;color:var(--mut);display:block;margin-top:.35rem}
.demand-need{border-top:1px solid var(--line);padding-top:.9rem;margin-top:.8rem}.demand-need p{margin:0;font-size:.92rem;line-height:1.45}
.unit-viz .unit-groups{display:grid;grid-template-columns:1fr 1fr;gap:.85rem;margin-top:1rem}
.unit-group{border:1px solid var(--line);border-radius:14px;padding:.9rem;background:var(--paper)}
.unit-head{display:flex;justify-content:space-between;gap:.8rem;align-items:flex-start;margin-bottom:.65rem}
.unit-head b{font-size:.92rem;line-height:1.25}.unit-head strong{font-size:1.25rem;line-height:1;font-variant-numeric:tabular-nums;color:var(--red-dk);white-space:nowrap}
.dotgrid{display:grid;grid-template-columns:repeat(auto-fill,7px);gap:3px;align-content:start;min-height:28px}.dotgrid i{display:block;width:7px;height:7px;border-radius:50%;background:var(--line)}
.unit-group.done .dotgrid i{background:var(--ok-ink)}.unit-group.work .dotgrid i{background:var(--amb-ink)}.unit-group.wait .dotgrid i{background:var(--red)}.unit-group.unseen .dotgrid i{background:var(--unseen)}
.unit-caption{font-size:.78rem;line-height:1.35;color:var(--mut);margin-top:.75rem}
.reloc-viz .reloc-rows{display:grid;gap:.75rem;margin-top:1rem}.reloc-row{display:grid;grid-template-columns:minmax(8rem,.8fr) 1.5fr minmax(9rem,1fr);gap:.75rem;align-items:center}
.reloc-lab{font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;font-weight:800;color:var(--mut)}
.reloc-bar{height:28px;border-radius:999px;background:var(--soft);border:1px solid var(--line);position:relative;overflow:hidden}.reloc-bar::before{content:"";display:block;height:100%;width:var(--w);background:var(--red)}
.reloc-row.open .reloc-bar{background:repeating-linear-gradient(135deg,var(--card) 0,var(--card) 8px,var(--soft) 8px,var(--soft) 14px)}.reloc-row.open .reloc-bar::before{background:var(--inv-bg)}
.reloc-text{font-size:.9rem;line-height:1.3}
.decision-sim .sim-intro{font-size:.9rem;line-height:1.45;color:var(--mut);margin:.55rem 0 0}.sim-toggles{display:grid;grid-template-columns:repeat(4,1fr);gap:.6rem;margin:1rem 0}.sim-toggle{font:inherit;text-align:left;border:1px solid var(--line);background:var(--paper);border-radius:14px;padding:.85rem;cursor:pointer;min-height:116px;color:var(--ink);transition:background .18s ease,color .18s ease,border-color .18s ease}.sim-toggle[aria-pressed="true"]{background:var(--inv-bg);color:var(--inv-fg);border-color:var(--inv-bg)}.sim-toggle .sim-source{display:block;font-size:.68rem;letter-spacing:.09em;text-transform:uppercase;font-weight:800;color:var(--red-dk);margin-top:.45rem}.sim-toggle[aria-pressed="true"] .sim-source{color:#ffb5ae}.sim-result{border:1px solid var(--line);background:var(--paper);border-radius:15px;padding:1rem}.sim-states{display:grid;grid-template-columns:repeat(3,1fr);gap:.65rem}.sim-state{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:.85rem}.sim-state .sim-dim{display:block;font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;font-weight:850;color:var(--mut);margin-bottom:.35rem}.sim-state strong{display:block;font-size:1rem;line-height:1.25}.sim-state small{display:block;font-size:.72rem;line-height:1.35;color:var(--mut);margin-top:.45rem}.sim-orient{border-top:1px solid var(--line);padding-top:.85rem;margin:.85rem 0 0;font-size:.9rem;line-height:1.45;color:var(--mut)}.sim-orient span{display:block}.case-bridge{font-size:.9rem;color:var(--mut);margin:1rem 0 .75rem}.case-studies{display:grid;gap:.75rem;margin:1.2rem 0}.case-studies details{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:.85rem;transition:border-color .18s ease,box-shadow .18s ease}.case-studies details[open]{border-color:rgba(194,32,26,.35);box-shadow:0 12px 32px rgba(20,20,20,.05)}.case-studies summary{cursor:pointer;font-weight:850;line-height:1.3}.case-studies summary:focus-visible{outline:2px solid rgba(194,32,26,.3);outline-offset:4px;border-radius:6px}.case-studies summary::-webkit-details-marker{color:var(--red-dk)}.case-studies .case-summary{font-size:.88rem;color:var(--mut);line-height:1.42;margin:.45rem 0 0}.case-studies .case-deep{border-top:1px solid var(--line);margin-top:.75rem;padding-top:.75rem}.case-studies p{font-size:.9rem;line-height:1.45;margin:0 0 .7rem}.case-studies p:last-child{margin-bottom:0}
.final-beat{background:var(--inv-bg);color:var(--inv-fg);border-radius:18px;padding:1.35rem 1.45rem;margin:2rem 0 0}.final-beat p{margin:0;color:#eee}.final-beat strong{color:var(--inv-fg)}
.source-credit{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:1rem;margin:1rem 0 1.3rem}.source-credit p{font-size:.88rem;line-height:1.45;margin:0;color:var(--mut)}
.imagination-coda{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:1rem;margin-top:1.3rem;margin-bottom:0;box-shadow:0 16px 45px rgba(20,20,20,.045)}
.imagination-coda .stamp{margin:0 0 .85rem;color:var(--red-dk)}
.imagination-coda h3{font-size:1.08rem;line-height:1.25;margin:.1rem 0 .6rem}
.imagination-coda p{font-size:.9rem;line-height:1.48;margin:0 0 .85rem;color:var(--mut)}
.imagination-coda figure{margin:1rem 0 0}
.imagination-coda img{width:100%;height:auto;border:1px solid var(--line);border-radius:12px;display:block;background:var(--soft)}
.imagination-coda figcaption{font-size:.78rem;color:var(--mut);line-height:1.4;margin-top:.5rem}
.imagination-coda .fiction-tag{font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;font-weight:850;color:var(--red-dk);margin:0 0 .5rem}
@media(max-width:780px){.wide-viz{max-width:720px;margin-left:0;margin-right:0}.coverage-track{display:grid;grid-template-columns:1fr}.coverage-seg{min-height:74px}.unit-viz .unit-groups,.demand-viz .demand-metrics{grid-template-columns:1fr}.reloc-row{grid-template-columns:1fr}.sim-toggles,.sim-states{grid-template-columns:1fr}.sim-toggle{min-height:0}.mood-card{grid-template-columns:1fr}}

/* resp2 heatmap starts */.resp2{position:relative;margin:1.4rem 0;font-family:inherit}
.resp2 .r2-grid{display:grid;grid-template-columns:1.15fr 1fr 1fr 1fr 1fr;border:1px solid var(--line);border-radius:14px;overflow:hidden;background:var(--card)}
.resp2 .r2-cell{border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:.7rem .6rem;min-height:78px;display:flex;flex-direction:column;justify-content:center;gap:.34rem}
.resp2 .r2-cell:nth-child(5n){border-right:0}
.resp2 .r2-grid>.r2-cell:nth-last-child(-n+5){border-bottom:0}
.resp2 .r2-head{background:var(--inv-bg);color:var(--inv-fg);min-height:0;font-size:.66rem;letter-spacing:.11em;text-transform:uppercase;font-weight:800;justify-content:flex-start}
.resp2 .r2-rowhead{font-weight:800;font-size:.9rem;background:var(--card-2)}
.resp2 .r2-inst{font:inherit;font-weight:800;font-size:.9rem;color:var(--ink);background:none;border:0;padding:0;text-align:left;cursor:help;border-bottom:2px dotted var(--mut);line-height:1.2}
.resp2 button.r2-status{font:inherit;text-align:left;background:none;border:0;padding:.15rem;margin:-.15rem;border-radius:8px;cursor:pointer;display:flex;flex-direction:column;gap:.4rem}
.resp2 button.r2-status:focus-visible{outline:2px solid rgba(194,32,26,.4);outline-offset:2px}
.resp2 .r2-word{font-size:.66rem;letter-spacing:.06em;text-transform:uppercase;font-weight:800;color:var(--mut)}
/* glyph */
.resp2 .g{width:26px;height:26px;flex:none;position:relative;border-radius:6px}
.resp2 [data-s="full"] .g{background:var(--ok)}
.resp2 [data-s="full"] .r2-word{color:var(--ok)}
.resp2 [data-s="partial"] .g{background:linear-gradient(90deg,var(--amb) 50%,var(--card) 50%);box-shadow:inset 0 0 0 2px var(--amb)}
.resp2 [data-s="frame"] .g{background:var(--card);box-shadow:inset 0 0 0 3px var(--amb)}
.resp2 [data-s="point"] .g{background:var(--card);box-shadow:inset 0 0 0 2px var(--amb)}
.resp2 [data-s="point"] .g::after{content:"";position:absolute;inset:8px;border-radius:50%;background:var(--amb)}
.resp2 [data-s="cond"] .g{background:var(--card);border-radius:50%;box-shadow:inset 0 0 0 3px var(--amb);border:0}
.resp2 [data-s="cond"] .g{background-image:none}
.resp2 [data-s="cond"] .g{outline:2px dashed var(--amb);outline-offset:-9px}
.resp2 [data-s="partial"] .r2-word,.resp2 [data-s="frame"] .r2-word,.resp2 [data-s="point"] .r2-word,.resp2 [data-s="cond"] .r2-word{color:var(--amb)}
.resp2 [data-s="gap"] .g{background:repeating-linear-gradient(135deg,transparent 0 5px,rgba(194,32,26,.16) 5px 7px);box-shadow:inset 0 0 0 2px var(--red)}
.resp2 [data-s="gap"] .r2-word{color:var(--red-dk)}
.resp2 [data-s="na"] .g{background:none;border-radius:0}
.resp2 [data-s="na"] .g::after{content:"";position:absolute;left:3px;right:3px;top:12px;height:3px;background:var(--line)}
.resp2 [data-s="na"] .r2-word{color:var(--mut-2)}
/* void column emphasis */
.resp2 .r2-grid>.r2-cell[data-void="1"]{background:var(--card-2)}
/* tooltip */
.resp2 .r2-tip{position:absolute;z-index:20;max-width:260px;background:var(--inv-bg);color:var(--inv-fg);font-size:.8rem;line-height:1.4;padding:.6rem .7rem;border-radius:10px;box-shadow:0 14px 34px rgba(20,20,20,.22);opacity:0;transform:translateY(4px);pointer-events:none;transition:opacity .12s ease,transform .12s ease}
.resp2 .r2-tip.on{opacity:1;transform:none}
.resp2 .r2-tip b{display:block;font-size:.66rem;letter-spacing:.08em;text-transform:uppercase;color:#ffb5ae;margin-bottom:.25rem}
/* legend */
.resp2 .r2-legend{display:flex;flex-wrap:wrap;gap:.5rem .95rem;margin:.8rem 0 0;font-size:.72rem;color:var(--mut)}
.resp2 .r2-legend>span{display:inline-flex;align-items:center;gap:.4rem}
.resp2 .r2-legend .g{width:16px;height:16px}
.resp2 .r2-src{font-size:.78rem;color:var(--mut);line-height:1.45;margin:.7rem 0 0}
@media(max-width:640px){
  .resp2 .r2-grid{grid-template-columns:1fr 1fr;font-size:.9rem}
  .resp2 .r2-head:not(:first-child){display:none}
  .resp2 .r2-cell{min-height:0}
  .resp2 .r2-rowhead{grid-column:1 / -1;background:var(--inv-bg);color:var(--inv-fg)}
  .resp2 .r2-inst{color:var(--inv-fg);border-bottom-color:var(--inv-fg)}
  .resp2 button.r2-status::before{display:block;font-size:.6rem;letter-spacing:.08em;text-transform:uppercase;color:var(--mut);font-weight:800;margin-bottom:.15rem}
  html:not(.en) .resp2 button.r2-status::before{content:attr(data-col-ro)}
  html.en .resp2 button.r2-status::before{content:attr(data-col-en)}
}
@media(prefers-reduced-motion:reduce){.resp2 .r2-tip{transition:none}}
/* resp2 heatmap ends */

/* sources */
#surse ol{padding-left:1.2rem;font-size:.88rem}
#surse li{margin-bottom:.7rem}
#surse h3{font-size:.8rem;letter-spacing:.11em;text-transform:uppercase;color:var(--mut);margin:1.8rem 0 .6rem}
footer{border-top:1px solid var(--line);margin-top:3rem;padding:2rem 1.2rem 3rem;text-align:center;font-size:.82rem;color:var(--mut)}
/* reveal */
.js .rv{opacity:0;transform:translateY(14px);transition:opacity .6s ease,transform .6s ease}
.js .rv.in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .rv{opacity:1;transform:none;transition:none}
  #tfill{transition:none}
}
[data-lang]:lang(en){display:none}
html.en [data-lang]:lang(ro){display:none}
html.en [data-lang]:lang(en){display:revert}
html.en :is(p,blockquote,div)[data-lang]:lang(en){display:block}
html.en :is(span,b,strong)[data-lang]:lang(en){display:inline}
html.en tr[data-lang]:lang(en){display:table-row}
html.en li[data-lang]:lang(en){display:list-item}
@media(max-width:600px){html.en table.cards tr[data-lang]:lang(en){display:block}}
@media(prefers-reduced-motion:reduce){.sim-toggle,.case-studies details{transition:none}}

/* ===== ZT visual layer: bulină motif · after-clock · page-map · after-rail ===== */
/* recurring bulină at every section head */
.stamp{position:relative;padding-left:1.2rem}
.stamp::before{content:"";position:absolute;left:0;top:.05em;width:.72rem;height:.72rem;border-radius:50%;
  background:var(--red);box-shadow:inset 0 0 0 2.5px var(--red-dk)}
#teza .stamp::before{background:#ff8a80;box-shadow:inset 0 0 0 2.5px #c2201a}

/* after-clock dot in the top bar */
#ttime{width:.72rem;height:.72rem;border-radius:50%;background:var(--red);box-shadow:inset 0 0 0 2.5px var(--red-dk);
  color:transparent;overflow:hidden;white-space:nowrap;flex:none}

/* executive summary + page map */
#pescurt{max-width:820px;margin:2.4rem auto 0;padding:0 1.2rem}
#pescurt .ps-card{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:1.7rem 1.6rem}
#pescurt .ps-kick{font-size:.72rem;letter-spacing:.13em;text-transform:uppercase;font-weight:700;color:var(--red-dk);
  margin:0 0 .8rem;display:flex;align-items:center;gap:.5rem}
#pescurt .ps-kick::before{content:"";width:.72rem;height:.72rem;border-radius:50%;background:var(--red);
  box-shadow:inset 0 0 0 2.5px var(--red-dk)}
#pescurt .ps-lead{font-size:1.06rem;line-height:1.5;margin:0 0 1.3rem;max-width:none}
#pescurt .ps-figs{display:grid;grid-template-columns:repeat(3,1fr);gap:.7rem;margin:0 0 1.5rem;padding:0;list-style:none}
#pescurt .ps-figs li{background:var(--soft);border-radius:10px;padding:.85rem .7rem;text-align:center}
#pescurt .ps-figs strong{display:block;font-size:1.5rem;font-weight:800;letter-spacing:-.02em;color:var(--red-dk);
  font-variant-numeric:tabular-nums;line-height:1.05}
#pescurt .ps-figs .cap{display:block;font-size:.73rem;color:var(--mut);margin-top:.3rem;line-height:1.28}
#pescurt .ps-mapt{font-size:.72rem;letter-spacing:.11em;text-transform:uppercase;font-weight:700;color:var(--mut);
  margin:.2rem 0 .9rem}
#pescurt .ps-map{display:grid;grid-template-columns:repeat(4,1fr);gap:0;list-style:none;padding:0;margin:0}
#pescurt .ps-map li{position:relative;padding-right:.7rem}
#pescurt .ps-map li::before{content:"";position:absolute;left:0;top:.32rem;width:.72rem;height:.72rem;border-radius:50%;
  background:var(--paper);box-shadow:inset 0 0 0 2.5px var(--red-dk);z-index:2}
#pescurt .ps-map li:first-child::before{background:var(--red)}
#pescurt .ps-map li::after{content:"";position:absolute;left:.72rem;top:.63rem;right:0;height:2px;
  background:repeating-linear-gradient(90deg,var(--red-dk) 0 5px,transparent 5px 9px);opacity:.5}
#pescurt .ps-map li:last-child::after{display:none}
#pescurt .ps-map a{display:block;text-decoration:none;color:inherit;padding-top:1.35rem}
#pescurt .ps-map .t{font:700 .7rem/1 ui-monospace,"DejaVu Sans Mono",monospace;color:var(--red-dk);
  display:block;margin-bottom:.25rem}
#pescurt .ps-map .l{display:block;font-size:.82rem;line-height:1.25;color:var(--ink);font-weight:600}
#pescurt .ps-map a:hover .l{color:var(--red-dk)}
@media(max-width:560px){
  #pescurt .ps-figs{grid-template-columns:1fr;gap:.5rem}
  #pescurt .ps-figs li{display:flex;align-items:baseline;gap:.7rem;text-align:left}
  #pescurt .ps-figs strong{font-size:1.3rem}
  #pescurt .ps-map{grid-template-columns:1fr;gap:0}
  #pescurt .ps-map li{padding:.15rem 0 .15rem 1.25rem}
  #pescurt .ps-map li::before{top:.5rem}
  #pescurt .ps-map li::after{left:.31rem;top:1.15rem;bottom:-.15rem;right:auto;width:2px;height:auto;
    background:repeating-linear-gradient(180deg,var(--red-dk) 0 5px,transparent 5px 9px)}
  #pescurt .ps-map a{padding-top:.15rem}
}

/* the after-rail: scroll = time after the quake */
#afterrail{position:fixed;right:26px;top:50%;transform:translateY(-50%);z-index:40;display:none;
  width:20px;height:min(64vh,620px);opacity:.74;transition:opacity .15s ease}
#afterrail:hover,#afterrail:focus-within{opacity:1}
#afterrail .track{position:absolute;left:9px;top:0;bottom:0;width:2px;background:var(--line)}
#afterrail .fill{position:absolute;left:9px;top:0;width:2px;height:0;background:var(--red);transition:height .18s linear}
#afterrail ol{list-style:none;margin:0;padding:0;position:absolute;inset:0}
#afterrail li{position:absolute;left:0;transform:translateY(-50%)}
#afterrail button{all:unset;cursor:pointer;display:block;width:20px;height:20px;position:relative}
#afterrail .bd{position:absolute;left:50%;top:50%;width:9px;height:9px;border-radius:50%;transform:translate(-50%,-50%);
  background:var(--paper);box-shadow:inset 0 0 0 2px var(--line);transition:all .18s ease}
#afterrail li.done .bd{background:var(--red-dk);box-shadow:none;width:8px;height:8px}
#afterrail li.active .bd{background:var(--red);width:15px;height:15px;box-shadow:0 0 0 5px rgba(194,32,26,.16)}
#afterrail .lbl{position:absolute;right:28px;top:50%;transform:translateY(-50%);white-space:nowrap;background:var(--inv-bg);
  color:var(--inv-fg);font-size:.75rem;font-weight:600;padding:.34rem .62rem;border-radius:7px;opacity:0;pointer-events:none;
  transition:opacity .15s ease;box-shadow:0 10px 30px rgba(0,0,0,.18)}
#afterrail .lbl .tt{font:700 .68rem/1 ui-monospace,"DejaVu Sans Mono",monospace;color:#ff8a80;margin-right:.45rem}
#afterrail button:hover .lbl,#afterrail button:focus-visible .lbl{opacity:1}
#afterrail li.active .lbl{background:#8f1511}
#afterrail .cap{display:none}
@media(min-width:76rem){#afterrail{display:block}}
@media(prefers-reduced-motion:reduce){#afterrail .fill,#afterrail .bd,#afterrail .lbl{transition:none}}

/* hero dot: faint seismic ring, motion-guarded */
@media(prefers-reduced-motion:no-preference){
  #hero .dot{position:relative}
  #hero .dot::after{content:"";position:absolute;inset:0;border-radius:50%;animation:zt-seism 3.4s ease-out infinite}
  @keyframes zt-seism{0%{box-shadow:0 0 0 0 rgba(194,32,26,.32)}70%{box-shadow:0 0 0 36px rgba(194,32,26,0)}
    100%{box-shadow:0 0 0 0 rgba(194,32,26,0)}}
}
/* ===== end ZT visual layer ===== */


.static-language-links a{display:inline-flex;align-items:center;min-height:34px;padding:.35rem .7rem;text-decoration:none;color:inherit}.static-language-links a[aria-current="page"]{background:var(--ink);color:var(--paper);border-radius:999px}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*::before,*::after{animation:none!important;transition:none!important}}
/* ---- v2: one-row top bar ---- */
#tbar{height:var(--bar-h);gap:.7rem;padding:0 max(1rem,env(safe-area-inset-right)) 0 max(1rem,env(safe-area-inset-left))}
#tbar>*:not(#tfill){position:relative}
#tbar .home{font-size:.8rem;font-weight:700;letter-spacing:.01em;color:var(--ink);text-decoration:none;white-space:nowrap;flex:none}
#tbar .home:hover{color:var(--red-text)}
#tlabel{display:flex;align-items:center;gap:.4rem;flex:none}
.topnav{display:flex;gap:.1rem;overflow-x:auto;scrollbar-width:none;min-width:3.5rem;flex:0 1 auto}
.topnav::-webkit-scrollbar{display:none}
.topnav a{display:inline-flex;align-items:center;min-height:34px;padding:.3rem .6rem;border-radius:99px;white-space:nowrap;
  font-size:.8rem;font-weight:600;color:var(--mut);text-decoration:none}
.topnav a:hover{color:var(--ink)}
.topnav a[aria-current="true"]{color:var(--ink);background:var(--soft)}
#tbar .spacer{flex:1 1 0}
#tbar .chip{display:inline-flex;align-items:center;min-height:34px;padding:.3rem .75rem;border:1px solid var(--line);border-radius:99px;
  font-size:.78rem;font-weight:700;color:var(--ink);text-decoration:none;white-space:nowrap;flex:none}
#tbar .chip:hover{border-color:var(--ink)}
.icon-btn{width:36px;height:36px;border-radius:50%;border:1px solid var(--line);background:transparent;color:var(--ink);
  display:inline-grid;place-items:center;cursor:pointer;flex:none;padding:0}
.icon-btn:hover{border-color:var(--ink)}
.icon-btn svg{display:block}
.icon-btn svg[hidden]{display:none}
#tbar a:focus-visible,#tbar button:focus-visible,.to-top:focus-visible{outline:2px solid var(--red-text);outline-offset:2px}
@media(max-width:560px){#tlabel{display:none}}
@media(max-width:420px){#tbar{gap:.45rem}#tbar .chip .long{display:none}}
@media(min-width:421px){#tbar .chip .short{display:none}}
section[id],header[id]{scroll-margin-top:calc(var(--bar-h) + .75rem)}
#hero h1:focus{outline:none}
/* ---- v2: back to top ---- */
.to-top{position:fixed;right:max(1rem,env(safe-area-inset-right));bottom:max(1rem,env(safe-area-inset-bottom));z-index:45;
  width:48px;height:48px;border-radius:50%;border:1px solid var(--line);background:var(--card);color:var(--ink);
  display:grid;place-items:center;cursor:pointer;box-shadow:0 8px 24px rgba(20,20,20,.14);font:inherit;
  opacity:0;visibility:hidden;transform:translateY(8px);transition:opacity .2s ease,transform .2s ease,visibility 0s linear .2s}
.to-top.on{opacity:1;visibility:visible;transform:none;transition:opacity .2s ease,transform .2s ease}
.to-top:hover{border-color:var(--ink)}
@media(prefers-reduced-motion:reduce){.to-top,.to-top.on{transition:none}}
@media print{#tbar,#afterrail,.to-top{display:none}}
footer{padding-bottom:5.5rem}
/* ---- v2: static legend glyphs and small utilities (no inline styles) ---- */
.mt-1{margin-top:1rem}
.m-0{margin:0}
.r2-legend .g.lg-ok{background:var(--ok)}
.r2-legend .g.lg-part{background:linear-gradient(90deg,var(--amb) 50%,var(--card) 50%);box-shadow:inset 0 0 0 2px var(--amb)}
.r2-legend .g.lg-cond{background:var(--card);border-radius:50%;box-shadow:inset 0 0 0 3px var(--amb);outline:2px dashed var(--amb);outline-offset:-6px}
.r2-legend .g.lg-gap{background:repeating-linear-gradient(135deg,transparent 0 4px,rgba(194,32,26,.16) 4px 6px);box-shadow:inset 0 0 0 2px var(--red)}
.r2-legend .g.lg-na{position:relative}
.r2-legend .g.lg-na>span{position:absolute;left:2px;right:2px;top:7px;height:2px;background:var(--line);display:block}
figure img{height:auto}
/* ---- 404 ---- */
.notfound{min-height:100svh;display:flex;flex-direction:column;justify-content:center;max-width:640px;padding:3rem 1.2rem}
.notfound .dot{width:72px;height:72px;margin-bottom:1.6rem}
.notfound h1{font-size:clamp(2rem,6vw,3rem);line-height:1.05;margin:0 0 1rem;letter-spacing:-.02em}
table.cards caption{caption-side:top}
@media(max-width:780px){table.cards caption{display:block;width:100%}}
