@font-face{font-family:Fraunces;font-style:normal;font-weight:300 900;font-display:swap;src:url(fonts/fraunces-normal-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:Fraunces;font-style:normal;font-weight:300 900;font-display:swap;src:url(fonts/fraunces-normal-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:200 900;font-display:swap;src:url(fonts/source-serif-4-normal-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:200 900;font-display:swap;src:url(fonts/source-serif-4-normal-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Source Serif 4";font-style:italic;font-weight:200 900;font-display:swap;src:url(fonts/source-serif-4-italic-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Source Serif 4";font-style:italic;font-weight:200 900;font-display:swap;src:url(fonts/source-serif-4-italic-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"IBM Plex Sans";font-style:normal;font-weight:500;font-display:swap;src:url(fonts/ibmplexsans-normal-500-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"IBM Plex Sans";font-style:normal;font-weight:500;font-display:swap;src:url(fonts/ibmplexsans-normal-500-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}

/* Țânțarul tigru: tokens. Field = mean January temperature; warm (amber) above −1 °C, cold (blue) below. */
:root,html[data-theme="dark"]{
  --bg:#0b0f13;--panel:#121820;--panel-2:#1a2230;--ink:#f1efe9;--ink-2:#dcd8cf;--muted:#bdb8ad;
  --line:#2c3644;--line-soft:#1b232e;--accent:#f4bd5a;--accent-ink:#141006;--focus:#ffd58a;
  --edge:#fff6e3;--west:#9fd0ff;--rec:#fffaf0;--halo:#0b0f13;--nb-rec:#d9d4c8;--county:rgba(240,236,228,.22);--ro-line:rgba(240,236,228,.75);--nb-line:rgba(240,236,228,.18);
  --st-est:rgba(244,189,90,.62);--st-intro:rgba(244,189,90,.30);--st-abs:rgba(130,170,210,.42);--hatch:rgba(240,236,228,.40);--visited:rgba(220,214,204,.55);
  --serif:"Source Serif 4",Georgia,serif;--display:Fraunces,"Source Serif 4",Georgia,serif;--sans:"IBM Plex Sans",system-ui,sans-serif;color-scheme:dark}
html[data-theme="light"]{
  --bg:#f5f1e8;--panel:#fcfaf5;--panel-2:#ece6d9;--ink:#15130f;--ink-2:#2a2620;--muted:#4a443a;
  --line:#c9c0ae;--line-soft:#e0d9ca;--accent:#8a4a05;--accent-ink:#fffaf2;--focus:#1a56b0;
  --edge:#15130f;--west:#0b4f8a;--rec:#15130f;--halo:#fcfaf5;--nb-rec:#5a5348;--county:rgba(21,19,15,.22);--ro-line:rgba(21,19,15,.7);--nb-line:rgba(21,19,15,.2);
  --st-est:rgba(184,104,20,.55);--st-intro:rgba(184,104,20,.25);--st-abs:rgba(40,90,140,.35);--hatch:rgba(21,19,15,.38);--visited:rgba(21,19,15,.45);color-scheme:light}
@media (prefers-color-scheme:light){:root:not([data-theme="dark"]){--bg:#f5f1e8;--panel:#fcfaf5;--panel-2:#ece6d9;--ink:#15130f;--ink-2:#2a2620;--muted:#4a443a;--line:#c9c0ae;--line-soft:#e0d9ca;--accent:#8a4a05;--accent-ink:#fffaf2;--focus:#1a56b0;--edge:#15130f;--west:#0b4f8a;--rec:#15130f;--halo:#fcfaf5;--nb-rec:#5a5348;--county:rgba(21,19,15,.22);--ro-line:rgba(21,19,15,.7);--nb-line:rgba(21,19,15,.2);--st-est:rgba(184,104,20,.55);--st-intro:rgba(184,104,20,.25);--st-abs:rgba(40,90,140,.35);--hatch:rgba(21,19,15,.38);--visited:rgba(21,19,15,.45);color-scheme:light}}
*{box-sizing:border-box}
[hidden]{display:none!important}
svg[hidden]{display:none}
html{background:var(--bg);-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font:400 1.06rem/1.62 var(--serif);-webkit-font-smoothing:antialiased;overflow-x:hidden}
a{color:var(--accent)}
:focus-visible{outline:2px solid var(--focus);outline-offset:2px}
.skip{position:absolute;left:-999px;top:0}.skip:focus{left:12px;top:8px;z-index:50;background:var(--panel);padding:8px 12px;border-radius:8px}
.topbar{position:fixed;top:0;left:0;right:0;z-index:30;height:44px;display:flex;align-items:center;gap:8px;padding:0 12px;font:500 .86rem/1 var(--sans);background:var(--bg);border-bottom:1px solid var(--line-soft)}
.topbar .brand{color:var(--ink);text-decoration:none;display:flex;align-items:center;gap:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
.brand-mark{width:20px;height:20px;flex:none}
.topnav{display:flex;gap:2px;margin-left:10px}
.topnav a{color:var(--muted);text-decoration:none;padding:6px 7px;border-radius:6px;white-space:nowrap}
.topnav a:hover{color:var(--ink)}
.topbar .spacer{flex:1}
.topbar .chip{color:var(--muted);text-decoration:none;border:1px solid var(--line);border-radius:99px;padding:5px 9px}
.topbar .chip[aria-current]{color:var(--ink);border-color:var(--muted)}
.icon-btn{width:34px;height:34px;border-radius:50%;border:1px solid var(--line);background:transparent;color:var(--ink);display:grid;place-items:center;cursor:pointer;flex:none}
@media (max-width:1180px){.topnav{display:none}}

/* layout: desktop = stage left, story right; phone = stage keeps the top 40% of the screen, story below */
.wrap{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);padding-top:44px}
.stage{position:sticky;top:44px;height:calc(var(--vh,1vh)*100 - 44px);border-right:1px solid var(--line-soft);overflow:hidden;background:var(--bg)}
.stage canvas{position:absolute;inset:0;width:100%;height:100%;display:block;touch-action:pan-y;cursor:crosshair}
.story{padding:0 clamp(18px,4vw,56px) 40vh;max-width:680px}
@media (max-width:899px){
  .wrap{display:block}
  .stage{position:sticky;top:44px;height:calc(var(--vh,1vh)*40);z-index:5;border-right:0;border-bottom:1px solid var(--line)}
  .story{padding:0 16px 30vh;max-width:none}
}
.step{padding:30px 0 8px;min-height:64vh;border-bottom:1px solid var(--line-soft)}
@media (max-width:899px){.step{min-height:0;padding:22px 0 18px}.step[data-rec="anim"],.step[data-win="anim"]{min-height:90vh}}
.step:last-of-type{border-bottom:0}
.hero{padding-top:36px;min-height:auto}
h1{font:600 clamp(1.9rem,3.6vw,3.05rem)/1.06 var(--display);letter-spacing:-.012em;margin:0 0 16px;text-wrap:balance}
h2{font:600 1.5rem/1.2 var(--display);margin:0 0 12px;scroll-margin-top:60px;text-wrap:balance}
@media (max-width:899px){h1{font-size:1.75rem}h2,.step[id],h3[id]{scroll-margin-top:calc(var(--vh,1vh)*40 + 56px)}}
h3{font:600 1.04rem/1.3 var(--sans);margin:18px 0 6px}
.anchor{margin-left:8px;color:var(--muted);text-decoration:none;font-size:.75em;opacity:0}
h2:hover .anchor,.anchor:focus{opacity:1}
@media (hover:none){.anchor{opacity:.55}}
.kicker{font:600 .76rem/1.3 var(--sans);letter-spacing:.08em;text-transform:uppercase;color:var(--accent);margin:0 0 10px}
.deck{font-size:1.18rem;line-height:1.52;color:var(--ink-2);margin:0 0 16px}
.step p{margin:0 0 .9em}
.note{font:500 .92rem/1.5 var(--sans);color:var(--muted)}
.method p{font-size:.98rem}

/* figures */
.fig{margin:16px 0 18px}
.fig svg{width:100%;height:auto;display:block}
.fig figcaption,.photo figcaption{font:500 .84rem/1.4 var(--sans);color:var(--muted);margin-top:6px}
.fig .bar{fill:var(--muted);opacity:.55}.fig .hi{fill:var(--accent)}
.fig .v{font:600 11px var(--sans);fill:var(--ink);text-anchor:middle}
.fig .t{font:500 11px var(--sans);fill:var(--muted);text-anchor:middle}
.fig .rl{font:600 12px var(--sans);fill:var(--ink)}
.fig .ax{font:500 11px var(--sans);fill:var(--muted);text-anchor:middle}
.fig .tk{stroke-width:1.1;opacity:.55}.fig .tk.west{stroke:var(--muted)}.fig .tk.nb{stroke:var(--ink-2)}.fig .tk.ro{stroke:var(--accent);opacity:.9}
.fig .edge{stroke:var(--ink);stroke-width:1.4}.fig .west{stroke:var(--west);stroke-width:1.4;stroke-dasharray:4 3}
.fig .el{font:600 11px var(--sans);fill:var(--ink)}.fig .wl{font:600 11px var(--sans);fill:var(--west)}
.photo{margin:16px 0}
.photo img{width:100%;height:auto;border-radius:10px;display:block}

/* stage furniture */
.win{position:absolute;top:10px;left:10px;z-index:3;font:600 .8rem/1.3 var(--sans);color:var(--ink);background:var(--panel);border:1px solid var(--line-soft);border-radius:8px;padding:5px 9px;max-width:calc(100% - 20px)}
.legend{position:absolute;left:10px;bottom:10px;z-index:3;font:500 .76rem/1.25 var(--sans);color:var(--ink-2);background:var(--panel);border:1px solid var(--line-soft);border-radius:10px;padding:8px 10px;max-width:250px}
.legend p{margin:3px 0;display:flex;align-items:center;gap:7px}
.legend .ramp span:first-child{display:block;margin-bottom:4px;color:var(--ink)}
.legend .bar{display:block;height:8px;border-radius:4px;background:linear-gradient(90deg,#16223e 0%,#243a5c 25%,#465c70 40%,#605c50 47%,#966c30 55%,#cd8c34 70%,#eeb254 85%,#fad68c 100%)}
html[data-theme="light"] .legend .bar{background:linear-gradient(90deg,#7a92b2 0%,#9eb4cc 25%,#c4d0da 40%,#ded6c4 47%,#e8c48c 55%,#dea052 70%,#c87a2e 85%,#a8581e 100%)}
.legend .ticks{display:flex;justify-content:space-between;margin-top:2px;color:var(--muted)}
.legend .ticks b{font-weight:500}
.legend i{flex:none;display:inline-block}
.k-line{width:18px;height:0;border-top:2px solid var(--edge)}
.k-rec{width:9px;height:9px;border-radius:50%;background:var(--rec);box-shadow:0 0 0 1.5px var(--halo),0 0 0 2.5px var(--line)}
.k-photo{width:9px;height:9px;border-radius:50%;border:1.5px solid var(--rec)}
.k-nb{width:6px;height:6px;border-radius:50%;background:var(--nb-rec)}
.k-ecdc-0{width:14px;height:10px;background:var(--st-est)}.k-ecdc-1{width:14px;height:10px;background:var(--st-intro)}.k-ecdc-2{width:14px;height:10px;background:var(--st-abs)}
.k-ecdc-3{width:14px;height:10px;background:repeating-linear-gradient(135deg,var(--hatch) 0 1.5px,transparent 1.5px 5px);border:1px solid var(--line)}
.k-visited-0{width:8px;height:8px;border-radius:50%;border:1.2px solid var(--visited)}.k-visited-1{width:10px;height:10px;border-radius:50%;background:var(--rec)}
.k-west-0{width:18px;height:0;border-top:2px dashed var(--west)}
.stage[data-mode="visited"] .legend .k-rec,.stage[data-mode="visited"] .legend .k-photo{opacity:.4}
@media (max-width:899px){.legend{display:none}.stage[data-mode="ecdc"] .legend,.stage[data-mode="visited"] .legend{display:block;max-width:200px;padding:6px 8px}.stage[data-mode] .legend .ramp,.stage[data-mode] .legend>p{display:none}.win{font-size:.74rem;padding:4px 7px}}
.play{position:absolute;right:10px;top:10px;z-index:4;min-height:40px;border-radius:99px;border:1px solid var(--line);background:var(--panel);color:var(--ink);font:600 .82rem var(--sans);padding:0 14px;cursor:pointer}
@media (max-width:899px){.play{top:auto;bottom:8px;right:8px}}
.card{position:absolute;z-index:6;width:min(320px,calc(100% - 16px));background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:12px 14px 10px;font:500 .86rem/1.45 var(--sans);color:var(--ink);box-shadow:0 8px 24px rgba(0,0,0,.28);overflow:auto;overscroll-behavior:contain}
@media (max-width:899px){.card{width:auto;font-size:.82rem;padding:10px 12px 8px}}
.card .ttl,.result .ttl{margin:0 0 6px;font:600 1rem/1.25 var(--sans);padding-right:30px}
.card .ttl span,.result .ttl span{font-weight:500;color:var(--muted)}
.card p{margin:0 0 6px}
.card .lead{font-weight:600}
.card .x{position:absolute;top:4px;right:4px;width:36px;height:36px;border-radius:50%;border:0;background:transparent;color:var(--muted);font-size:1.3rem;cursor:pointer}
.card .clear{border:0;background:transparent;color:var(--accent);font:600 .82rem var(--sans);padding:6px 0;cursor:pointer;text-decoration:underline}

/* picker */
.picker{position:relative;margin:12px 0}
.picker label{display:block;font:600 .86rem var(--sans);margin-bottom:6px}
.picker input{width:100%;min-height:46px;border-radius:12px;border:1px solid var(--line);background:var(--panel);color:var(--ink);font:500 1rem var(--sans);padding:10px 12px}
.sugg{list-style:none;margin:4px 0 0;padding:4px;border:1px solid var(--line);border-radius:12px;background:var(--panel);max-height:300px;overflow:auto;font:500 .95rem/1.3 var(--sans)}
.sugg li{padding:10px;border-radius:8px;cursor:pointer;min-height:44px}
.sugg li:hover{background:var(--panel-2)}
.sugg li span{color:var(--muted);font-size:.86em}
.sugg li.none{color:var(--muted);cursor:default}
.result{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:14px 16px;margin:12px 0;font:500 .95rem/1.5 var(--sans)}
.result p{margin:0 0 8px}
.share{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0 4px}
.sbtn{width:40px;height:40px;border-radius:50%;border:1px solid var(--line);background:transparent;color:var(--ink);display:inline-grid;place-items:center;cursor:pointer;text-decoration:none}
.sbtn.ok{border-color:var(--accent);color:var(--accent)}
.sources{font:500 .86rem/1.5 var(--sans);color:var(--muted);padding-left:1.2em}
.sources li{margin:0 0 6px}
.sources a{color:var(--ink-2)}
.site-footer{display:flex;flex-wrap:wrap;gap:10px 18px;padding:18px 0 40px;font:500 .84rem var(--sans);color:var(--muted)}
.site-footer a{color:var(--muted)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:9px 16px;border-radius:99px;border:1px solid var(--line);background:transparent;color:var(--ink);font:600 .9rem/1.1 var(--sans);text-decoration:none;cursor:pointer}
.btn.primary{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}
/* share pages */
.spage-main{max-width:720px;margin:0 auto;padding:64px 16px 0}
.spage-main h1{font-size:clamp(1.6rem,4vw,2.4rem)}
.spage-main figure{margin:0 0 14px}.spage-main figure img{width:100%;height:auto;border-radius:12px;display:block}
.spage-main p{margin:0 0 .8em}
@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}

.key-m{display:none}
@media (max-width:899px){.key-m{display:flex;flex-wrap:wrap;gap:6px 14px;font:500 .8rem/1.3 var(--sans);color:var(--ink-2);margin:0 0 12px}.key-m span{display:inline-flex;align-items:center;gap:6px}.key-m .kb{flex-basis:100%;display:grid;grid-template-columns:1fr auto auto auto;gap:6px;align-items:center}.key-m .bar{display:block;height:8px;border-radius:4px;background:linear-gradient(90deg,#16223e 0%,#243a5c 25%,#465c70 40%,#605c50 47%,#966c30 55%,#cd8c34 70%,#eeb254 85%,#fad68c 100%)}html[data-theme="light"] .key-m .bar{background:linear-gradient(90deg,#7a92b2 0%,#9eb4cc 25%,#c4d0da 40%,#ded6c4 47%,#e8c48c 55%,#dea052 70%,#c87a2e 85%,#a8581e 100%)}.key-m b{font-weight:500;color:var(--muted)}}

.card .more{display:none}
@media (max-width:899px){.card p:not(.lead):not(.w):not(.ttl),.card .share,.card .clear{display:none}.card .more{display:inline-block;font:600 .8rem var(--sans);color:var(--accent);margin-top:2px}}
