/* Raioanele Moldovei — atlas. Hârtie, cerneală, linii fine. Accent cinabru = schimbare/selecție; petrol = DOAR propunerea din 2026. */
:root{
  --paper:#F7F6F2; --paper-2:#EEECE5; --paper-3:#E6E3DA; --ink:#1C1B19; --ink-2:#55524B; --ink-3:#8D897F; --rule:#D9D5CB;
  --land:#E9E5DB; --land-2:#DFDACE; --land-hi:#D4CEBF; --water:#9DB0B8;
  --accent:#A8402A; --accent-soft:rgba(168,64,42,.16); --accent-line:rgba(168,64,42,.9);
  --proposal:#2C5A75; --proposal-soft:rgba(44,90,117,.10);
  --uncertain:rgba(85,82,75,.38); --shadow:0 1px 0 rgba(0,0,0,.04), 0 8px 30px rgba(28,27,25,.10);
  --ok:#3D6B47; --warn:#9A6A12;
  --serif:"Source Serif 4", Georgia, "Times New Roman", serif;
  --sans:"IBM Plex Sans", system-ui, -apple-system, "Segoe UI", sans-serif;
  --mono:"IBM Plex Mono", ui-monospace, Consolas, monospace;
  --gutter:clamp(16px,3vw,40px);
}
@media (prefers-color-scheme: dark){ :root:not([data-theme="light"]){
  --paper:#161614; --paper-2:#1F1E1B; --paper-3:#282723; --ink:#ECE9E1; --ink-2:#B3AEA3; --ink-3:#7E796F; --rule:#34322D;
  --land:#2A2925; --land-2:#323029; --land-hi:#3E3B33; --water:#4F6670; --accent:#E07A60; --accent-soft:rgba(224,122,96,.2); --accent-line:rgba(224,122,96,.95);
  --proposal:#7FB2CF; --proposal-soft:rgba(127,178,207,.12); --uncertain:rgba(200,195,185,.32); --shadow:0 8px 30px rgba(0,0,0,.5);
  --ok:#86B48F; --warn:#D6A54B; color-scheme:dark }}
:root[data-theme="dark"]{
  --paper:#161614; --paper-2:#1F1E1B; --paper-3:#282723; --ink:#ECE9E1; --ink-2:#B3AEA3; --ink-3:#7E796F; --rule:#34322D;
  --land:#2A2925; --land-2:#323029; --land-hi:#3E3B33; --water:#4F6670; --accent:#E07A60; --accent-soft:rgba(224,122,96,.2); --accent-line:rgba(224,122,96,.95);
  --proposal:#7FB2CF; --proposal-soft:rgba(127,178,207,.12); --uncertain:rgba(200,195,185,.32); --shadow:0 8px 30px rgba(0,0,0,.5);
  --ok:#86B48F; --warn:#D6A54B; color-scheme:dark }

*{box-sizing:border-box}
html,body{margin:0}
body{background:var(--paper);color:var(--ink);font:16px/1.55 var(--sans);-webkit-font-smoothing:antialiased}
h1,h2,h3{font-family:var(--serif);font-weight:600;margin:0;text-wrap:balance}
p{margin:0}
button{font:inherit;color:inherit}
a{color:inherit;text-underline-offset:2px;text-decoration-color:var(--ink-3)}
:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.eyebrow{font:500 .72rem/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3)}
.mono{font-family:var(--mono);font-variant-numeric:tabular-nums}
.small{font-size:.875rem;color:var(--ink-2)}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}

/* top bar */
.bar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px var(--gutter);border-bottom:1px solid var(--rule)}
.brand{font:600 .78rem/1 var(--sans);letter-spacing:.16em;text-transform:uppercase}
.bar nav{display:flex;gap:18px;align-items:center;font-size:.85rem}
.bar nav a{text-decoration:none;color:var(--ink-2)} .bar nav a:hover{color:var(--ink)}
.lang{display:inline-flex;border:1px solid var(--rule);border-radius:3px;overflow:hidden}
.lang button{border:0;background:none;padding:5px 9px;font:500 .75rem/1 var(--sans);cursor:pointer;color:var(--ink-3)}
.lang button[aria-pressed="true"]{background:var(--ink);color:var(--paper)}

/* stage */
.stage{display:grid;grid-template-columns:minmax(300px,0.82fr) minmax(0,1.4fr);gap:0 clamp(20px,3vw,48px);padding:28px var(--gutter) 0;align-items:start}
.left{display:flex;flex-direction:column;gap:18px;min-width:0;padding-top:8px}
.title-eyebrow{font:500 .8rem/1 var(--mono);letter-spacing:.12em;color:var(--accent)}
h1.title{font-size:clamp(2.1rem,4.2vw,3.6rem);line-height:1.04;letter-spacing:-.012em}
.subtitle{font-family:var(--serif);font-size:clamp(1.05rem,1.4vw,1.22rem);line-height:1.45;color:var(--ink-2);max-width:34ch}

.search{position:relative;max-width:440px}
.search input{width:100%;font:500 1.05rem/1 var(--sans);padding:15px 16px 15px 44px;border:1.5px solid var(--ink);border-radius:3px;background:var(--paper);color:var(--ink)}
.search input::placeholder{color:var(--ink-3);font-weight:400}
.search svg{position:absolute;left:15px;top:50%;transform:translateY(-50%);pointer-events:none}
.sugg{position:absolute;left:0;right:0;top:calc(100% + 4px);background:var(--paper);border:1px solid var(--rule);border-radius:3px;box-shadow:var(--shadow);z-index:30;max-height:320px;overflow:auto;list-style:none;margin:0;padding:4px 0}
.sugg li{padding:9px 14px;cursor:pointer;display:flex;justify-content:space-between;gap:12px;font-size:.95rem}
.sugg li small{color:var(--ink-3);font-size:.78rem;white-space:nowrap}
.sugg li[aria-selected="true"],.sugg li:hover{background:var(--paper-2)}
.chips{display:flex;flex-wrap:wrap;gap:8px;align-items:center;font-size:.85rem;color:var(--ink-3)}
.chip{border:1px solid var(--rule);background:transparent;border-radius:20px;padding:5px 12px;cursor:pointer;color:var(--ink-2);font-size:.85rem}
.chip:hover{border-color:var(--ink-2);color:var(--ink)}

.readout{display:flex;align-items:flex-end;gap:16px;flex-wrap:wrap;border-top:1px solid var(--rule);padding-top:16px;margin-top:4px}
.big{font:700 clamp(3.4rem,6vw,5.4rem)/0.85 var(--serif);font-variant-numeric:tabular-nums;letter-spacing:-.02em}
.big.prop{color:var(--proposal)}
.ro-meta{display:flex;flex-direction:column;gap:4px;padding-bottom:4px;min-width:0}
.ro-unit{font:500 1rem/1.2 var(--sans)}
.ro-year{font:500 .9rem/1 var(--mono);color:var(--ink-2)}
.wth{display:inline-flex;align-items:center;gap:8px;border:1.5px solid var(--accent);color:var(--accent);background:transparent;border-radius:3px;padding:8px 12px;font:600 .74rem/1 var(--sans);letter-spacing:.1em;text-transform:uppercase;cursor:pointer;transition:background .2s}
.wth:hover{background:var(--accent-soft)}
.wth[hidden]{display:none}
.wth .dot{width:7px;height:7px;border-radius:50%;background:var(--accent);animation:pulse 1.6s ease-out 2}
@keyframes pulse{0%{box-shadow:0 0 0 0 var(--accent-soft)}100%{box-shadow:0 0 0 10px transparent}}

/* dossier */
.dossier{display:flex;flex-direction:column;gap:14px;min-width:0}
.dossier[hidden]{display:none}
.dos-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}
.dos-name{font:600 clamp(1.7rem,3vw,2.4rem)/1.05 var(--serif)}
.dos-sub{font-size:.85rem;color:var(--ink-3);margin-top:4px}
.x{border:0;background:none;cursor:pointer;color:var(--ink-3);font-size:1.4rem;line-height:1;padding:4px}
.answer{font-family:var(--serif);font-size:1.18rem;line-height:1.45}
.answer b{font-weight:700;color:var(--accent)}
.answer .prop{color:var(--proposal)}
.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;border-block:1px solid var(--rule);padding:12px 0}
.stats div{display:flex;flex-direction:column;gap:4px;min-width:0}
.stats b{font:700 1.7rem/1 var(--serif);font-variant-numeric:tabular-nums}
.stats span{font-size:.72rem;line-height:1.25;color:var(--ink-3)}
.tl{list-style:none;margin:0;padding:0;position:relative;max-height:min(46vh,460px);overflow:auto;padding-right:6px}
.tl li{display:grid;grid-template-columns:4.2rem 16px minmax(0,1fr);gap:0 10px;padding:7px 0;cursor:pointer;border-radius:2px}
.tl li:hover{background:var(--paper-2)}
.tl li.on{background:var(--accent-soft)}
.tl .yr{font:500 .8rem/1.4 var(--mono);color:var(--ink-2);text-align:right;padding-top:1px}
.tl .mk{position:relative}
.tl .mk::before{content:"";position:absolute;left:7px;top:-7px;bottom:-7px;width:1.5px;background:var(--rule)}
.tl li:first-child .mk::before{top:9px} .tl li:last-child .mk::before{bottom:calc(100% - 9px)}
.tl .mk i{position:absolute;left:3px;top:5px;width:10px;height:10px;border-radius:50%;background:var(--paper);border:2px solid var(--ink)}
.tl li.gone .mk i{border-color:var(--accent);background:var(--accent);border-radius:1px;transform:rotate(45deg)}
.tl li.prop .mk i{border-color:var(--proposal);border-style:dashed}
.tl li.gap .mk i{border-color:var(--ink-3);background:var(--ink-3)}
.tl .tx{font-size:.92rem;line-height:1.35;min-width:0}
.tl .tx small{display:block;color:var(--ink-3);font-size:.75rem}
.tl li.prop .tx{color:var(--proposal)}
.tag{display:inline-block;font:600 .6rem/1 var(--sans);letter-spacing:.08em;text-transform:uppercase;padding:3px 5px 2px;border:1px solid currentColor;border-radius:2px;vertical-align:2px;margin-left:4px;white-space:nowrap}
.tag.c{color:var(--ink-3)} .tag.p{color:var(--proposal)} .tag.u{color:var(--warn)}
.dos-actions{display:flex;gap:10px;flex-wrap:wrap}
.btn{border:1px solid var(--ink);background:transparent;border-radius:3px;padding:9px 14px;font:500 .85rem/1 var(--sans);cursor:pointer}
.btn:hover{background:var(--paper-2)}
.btn.solid{background:var(--ink);color:var(--paper)} .btn.solid:hover{opacity:.9}

/* map */
.mapwrap{position:relative;min-width:0}
.mapbox{position:relative;width:100%;aspect-ratio:0.9/1;max-height:calc(100vh - 250px);min-height:420px}
#map{position:absolute;inset:0;width:100%;height:100%;display:block;touch-action:manipulation}
#map .unit{fill:var(--land);stroke:none;cursor:pointer;transition:fill .25s}
#map .unit.city{fill:var(--land-2)}
#map .unit.hover{fill:var(--land-hi)}
#map .unit.sel{fill:var(--accent-soft)}
#map .unit.lb{fill:url(#hatch-lb)}
#map .unit.prop{fill:var(--paper)}
#map .unit.prop.r-reg-nord,#map .unit.prop.r-reg-centru,#map .unit.prop.r-reg-sud{fill:var(--proposal-soft)}
#map .borders{fill:none;stroke:var(--ink-3);stroke-width:.7;stroke-linejoin:round;vector-effect:non-scaling-stroke}
#map .borders.c{stroke-dasharray:3 2}
#map .parent{fill:none;stroke:var(--ink-2);stroke-width:1.6;vector-effect:non-scaling-stroke}
#map .outline{fill:none;stroke:var(--ink);stroke-width:1.4;vector-effect:non-scaling-stroke}
#map .nistru{fill:none;stroke:var(--water);stroke-width:1.6;vector-effect:non-scaling-stroke}
#map .ghost{fill:none;stroke:var(--ink-3);stroke-width:.5;opacity:.45;vector-effect:non-scaling-stroke}
#map .propb{fill:none;stroke:var(--proposal);stroke-width:1.8;stroke-dasharray:6 4;vector-effect:non-scaling-stroke}
#map .chg-in{fill:none;stroke:var(--accent-line);stroke-width:2;vector-effect:non-scaling-stroke}
#map .chg-out{fill:none;stroke:var(--accent-line);stroke-width:2;vector-effect:non-scaling-stroke}
#map .unc{fill:url(#hatch-c);pointer-events:none}
#map .selo{fill:none;stroke:var(--accent);stroke-width:2.2;vector-effect:non-scaling-stroke;pointer-events:none}
#map .terr{fill:none;stroke:var(--ink);stroke-width:2;stroke-dasharray:1 0;vector-effect:non-scaling-stroke;pointer-events:none}
#map .loc{fill:var(--accent);stroke:var(--paper);stroke-width:1.5;vector-effect:non-scaling-stroke}
#map .centre{fill:var(--ink);opacity:.75}
#map text.lab{font:500 9.5px/1 var(--sans);fill:var(--ink-2);text-anchor:middle;pointer-events:none;paint-order:stroke;stroke:var(--paper);stroke-width:2.6px;stroke-linejoin:round}
#map text.lab.big{font-size:12.5px;font-weight:600;letter-spacing:.14em;fill:var(--proposal)}
#map text.lab.gone{fill:var(--accent);text-decoration:line-through}
#map.gapmode .unit{fill:var(--paper-3)}
.mapflags{position:absolute;top:8px;left:8px;display:flex;flex-direction:column;gap:6px;align-items:flex-start;pointer-events:none;z-index:2}
.flag{font:600 .66rem/1 var(--sans);letter-spacing:.12em;text-transform:uppercase;padding:6px 8px 5px;border-radius:2px;background:var(--paper)}
.flag.c{border:1px solid var(--ink-3);color:var(--ink-2)}
.flag.p{border:1.5px dashed var(--proposal);color:var(--proposal)}
.flag.g{border:1px solid var(--ink-3);color:var(--ink-3)}
.flag[hidden]{display:none}
.maptip{position:absolute;pointer-events:none;background:var(--paper);border:1px solid var(--rule);box-shadow:var(--shadow);border-radius:3px;padding:8px 10px;font-size:.82rem;line-height:1.35;max-width:240px;z-index:5;opacity:0;transition:opacity .12s}
.maptip b{font-family:var(--serif);font-size:1rem}
.maptip.on{opacity:1}
.mapnote{position:absolute;right:8px;bottom:6px;font-size:.7rem;color:var(--ink-3);text-align:right;z-index:2;pointer-events:none}
.gapcard{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;pointer-events:none;z-index:3}
.gapcard div{background:var(--paper);border:1px solid var(--rule);padding:16px 18px;max-width:300px;font-size:.9rem;box-shadow:var(--shadow)}
.gapcard[hidden]{display:none}

/* compare curtain */
.curtain{position:absolute;inset:0;pointer-events:none;z-index:4}
.curtain[hidden]{display:none}
.curtain .handle{position:absolute;top:0;bottom:0;width:0;border-left:1.5px solid var(--ink);pointer-events:auto;cursor:ew-resize}
.curtain .handle::after{content:"⇆";position:absolute;top:50%;left:-17px;width:32px;height:32px;margin-top:-16px;border-radius:50%;background:var(--ink);color:var(--paper);display:flex;align-items:center;justify-content:center;font-size:15px}
.cmp-lab{position:absolute;top:10px;font:600 .8rem/1.2 var(--sans);background:var(--paper);padding:6px 9px;border:1px solid var(--rule);border-radius:2px}
.cmp-lab b{font:700 1.3rem/1 var(--serif);display:block}
.cmp-lab.l{left:10px} .cmp-lab.r{right:10px;text-align:right}

/* time machine */
.machine{padding:10px var(--gutter) 0}
.mhead{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:4px}
.mctl{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.mctl .btn{padding:7px 12px;font-size:.8rem}
.mctl .btn[aria-pressed="true"]{background:var(--ink);color:var(--paper)}
.chartbox{position:relative;overflow-x:auto;overflow-y:hidden}
#chart{display:block;width:100%;min-width:640px;height:auto;touch-action:pan-y;cursor:ew-resize;user-select:none}
#chart text{font-family:var(--sans)}
#chart .step{fill:none;stroke:var(--ink);stroke-width:2.2}
#chart .step.j{stroke:var(--accent)}
#chart .step.p{stroke:var(--proposal);stroke-dasharray:5 4}
#chart .rise{stroke:var(--ink-3);stroke-width:1}
#chart .tick{fill:var(--ink-3);font-size:10.5px}
#chart .grid{stroke:var(--rule);stroke-width:.6}
#chart .cur{stroke:var(--accent);stroke-width:1.5}
#chart .curb{stroke:var(--proposal);stroke-width:1.5}
#chart .knob{fill:var(--accent);stroke:var(--paper);stroke-width:2}
#chart .knob.b{fill:var(--proposal)}
#chart .rmark{fill:var(--ink-3)} #chart .rmark.major{fill:var(--accent)}
#chart .story{cursor:pointer}
#chart .story text{font:600 10px var(--sans);fill:var(--accent)}
#chart .anchor{fill:var(--ink)} #chart .recon{fill:var(--paper-2);stroke:var(--ink);stroke-width:1.3}
.conf{display:flex;height:6px;margin:2px 0 0;border-radius:1px;overflow:hidden}
.legend{display:flex;flex-wrap:wrap;gap:6px 18px;font-size:.75rem;color:var(--ink-3);padding:8px 0 4px}
.legend i{display:inline-block;width:16px;height:9px;margin-right:6px;vertical-align:-1px;border-radius:1px}

/* drawer (unit panel / explainer / story) */
.drawer{position:fixed;top:0;right:0;bottom:0;width:min(440px,100vw);background:var(--paper);border-left:1px solid var(--rule);box-shadow:var(--shadow);z-index:50;transform:translateX(105%);transition:transform .32s cubic-bezier(.2,.7,.2,1);display:flex;flex-direction:column}
.drawer.open{transform:none}
.drawer:not(.open){visibility:hidden;transition:transform .32s cubic-bezier(.2,.7,.2,1),visibility 0s .32s}
.drawer .dh{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:18px 20px 12px;border-bottom:1px solid var(--rule);padding-top:calc(18px + env(safe-area-inset-top,0px))}
.drawer .db{overflow:auto;padding:16px 20px 32px;display:flex;flex-direction:column;gap:18px;padding-bottom:calc(32px + env(safe-area-inset-bottom,0px))}
.drawer h2{font-size:1.7rem;line-height:1.1}
.drawer h3{font:600 .72rem/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);margin-bottom:8px}
.drawer p{font-size:.95rem;line-height:1.55}
.drawer .ex p+p{margin-top:10px}
.drawer .ex h4{font:600 .7rem/1 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--accent);margin:14px 0 4px}
.kv{display:grid;grid-template-columns:auto minmax(0,1fr);gap:6px 14px;font-size:.9rem}
.kv dt{color:var(--ink-3)} .kv dd{margin:0}
.life{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:0}
.life li{display:grid;grid-template-columns:5.6rem minmax(0,1fr);gap:10px;padding:7px 0;border-bottom:1px solid var(--rule);font-size:.9rem}
.life .yr{font:500 .8rem/1.5 var(--mono);color:var(--ink-2)}
.life li.gone{color:var(--accent)}
.life li.prop{color:var(--proposal)}
.lifebar{position:relative;height:14px;background:var(--paper-2);border-radius:1px;margin:4px 0 2px}
.lifebar i{position:absolute;top:0;bottom:0;background:var(--ink);border-radius:1px}
.lifebar i.p{background:transparent;border:1.5px dashed var(--proposal)}
.lifeaxis{display:flex;justify-content:space-between;font:400 .68rem/1 var(--mono);color:var(--ink-3)}
.photo img{width:100%;aspect-ratio:3/2;object-fit:cover;border-radius:2px;background:var(--land);display:block}
.photo figcaption{font-size:.78rem;color:var(--ink-3);margin-top:6px;line-height:1.4}
.photo figure{margin:0}
.srcs{list-style:none;margin:0;padding:0;font-size:.82rem;display:flex;flex-direction:column;gap:6px}
.srcs li{padding-left:14px;position:relative;line-height:1.4}
.srcs li::before{content:"";position:absolute;left:0;top:.55em;width:6px;height:6px;border:1px solid var(--ink-3);border-radius:50%}
.srcs li.primar::before{background:var(--ink-3)}
.scrim{position:fixed;inset:0;background:rgba(20,20,18,.18);z-index:45;opacity:0;pointer-events:none;transition:opacity .25s}
.scrim.on{opacity:1;pointer-events:auto}
.storynav[hidden]{display:none}
.storynav{display:flex;justify-content:space-between;align-items:center;gap:10px;border-top:1px solid var(--rule);padding:12px 20px calc(12px + env(safe-area-inset-bottom,0px))}
.dots{display:flex;gap:6px} .dots i{width:7px;height:7px;border-radius:50%;background:var(--rule)} .dots i.on{background:var(--accent)}

/* sections below */
.below{padding:72px var(--gutter) 40px;display:grid;gap:72px}
.sec{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:24px 56px;border-top:1px solid var(--ink);padding-top:22px}
.sec h2{font-size:clamp(1.5rem,2.6vw,2.1rem);line-height:1.15}
.sec .body{display:flex;flex-direction:column;gap:14px;max-width:70ch;min-width:0}
.sec .body p{line-height:1.65}
.sec .body h3{font:600 .75rem/1 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3);margin-top:12px}
.sec table{border-collapse:collapse;width:100%;font-size:.86rem}
.sec th{font:500 .68rem/1.2 var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);text-align:left;padding:8px 10px 6px 0;border-bottom:1px solid var(--rule)}
.sec td{padding:8px 10px 8px 0;border-bottom:1px solid var(--rule);vertical-align:top}
.tblw{overflow-x:auto}
.confrow{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:2px}
.confrow div{padding:8px;font-size:.76rem;line-height:1.3;border-radius:1px;min-width:0}
.confrow b{display:block;font:600 .95rem/1.1 var(--mono)}
.cA{background:var(--ink);color:var(--paper)} .cB{background:var(--ink-3);color:var(--paper)}
.cC{background:repeating-linear-gradient(45deg,var(--land-hi) 0 2px,transparent 2px 6px),var(--land);color:var(--ink)}
.cP{background:var(--proposal-soft);color:var(--proposal);outline:1.5px dashed var(--proposal);outline-offset:-1.5px}
footer{padding:28px var(--gutter) calc(40px + env(safe-area-inset-bottom,0px));border-top:1px solid var(--rule);font-size:.8rem;color:var(--ink-3);display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}

/* share modal */
.modal{position:fixed;inset:0;z-index:60;display:flex;align-items:center;justify-content:center;padding:20px;background:rgba(20,20,18,.45)}
.modal[hidden]{display:none}
.modal .mbox{background:var(--paper);border-radius:4px;padding:18px;max-width:min(560px,100%);max-height:100%;overflow:auto;display:flex;flex-direction:column;gap:12px}
.modal img{width:100%;height:auto;border:1px solid var(--rule)}
.modal .row{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.modal input{flex:1;min-width:0;font:400 .85rem var(--mono);padding:8px;border:1px solid var(--rule);background:var(--paper-2);color:var(--ink)}

@media (max-width:900px){
  .stage{grid-template-columns:minmax(0,1fr);padding-top:18px}
  .mapbox{aspect-ratio:1/1;min-height:0;max-height:none}
  .sec{grid-template-columns:minmax(0,1fr)}
  .stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .tl{max-height:none}
  .drawer{top:auto;left:0;width:100%;height:min(78vh,720px);border-left:0;border-top:1px solid var(--rule);transform:translateY(105%);border-radius:10px 10px 0 0}
  .drawer.open{transform:none}
  .confrow{grid-template-columns:repeat(2,minmax(0,1fr))}
  .bar nav a.hide-m{display:none}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
