:root{
  --bg:#f3f1ec;--surface:#fffefb;--fg:#141a2b;--mut:#454b5c;--line:#d5d2c9;--line-soft:#e6e3db;
  --acc:#1d3a7a;--acc-soft:#e3e8f4;--gold:#9a6d12;
  --property:#b0602a;--detention:#45597a;--investigation:#7a3b6c;--length:#2a7470;--fairtrial:#3a66a8;--enforcement:#77722a;
  --privatelife:#b35470;--psychiatric:#7f6db0;--expression:#4b8546;--liberty:#86603f;--other:#8b8b8b;
  --ghost:#1d3a7a;--band:#ebe8e0;--band2:#f7f5f0;
  --col:40rem;--wide:76rem;
  --serif:'Fraunces',Georgia,'Times New Roman',serif;--sans:'Source Sans 3',system-ui,-apple-system,'Segoe UI',sans-serif;
  color-scheme:light;
}
html.dark{
  --bg:#0e1322;--surface:#161c2e;--fg:#eceef4;--mut:#b9bfcf;--line:#323a52;--line-soft:#232a3f;
  --acc:#9fb8ff;--acc-soft:#1f2a4a;--gold:#e2b552;
  --property:#e58f4f;--detention:#8aa3cc;--investigation:#c777b5;--length:#5cc0b8;--fairtrial:#79a6ef;--enforcement:#c5bd5a;
  --privatelife:#ef8da8;--psychiatric:#b3a3e6;--expression:#86c97e;--liberty:#c49a75;--other:#9a9a9a;
  --ghost:#9fb8ff;--band:#1b2236;--band2:#141a2b;
  color-scheme:dark;
}
*{box-sizing:border-box}
[hidden]{display:none!important}
svg[hidden]{display:none}
html{-webkit-text-size-adjust:100%;scroll-padding-top:56px}
body{margin:0;background:var(--bg);color:var(--fg);font:400 1.0625rem/1.6 var(--sans)}
a{color:var(--acc);text-underline-offset:.18em}
a:hover{text-decoration-thickness:2px}
:focus-visible{outline:3px solid var(--acc);outline-offset:2px;border-radius:3px}
.skip{position:absolute;left:-999px;top:0;background:var(--surface);padding:.5rem 1rem;z-index:50}
.skip:focus{left:.5rem;top:.5rem}
h1,h2,h3{font-family:var(--serif);font-weight:640;line-height:1.15;letter-spacing:-.01em;margin:0 0 .6em}
h1{font-size:clamp(1.95rem,1.2rem + 2.7vw,3.3rem);max-width:24ch}
h2{font-size:clamp(1.45rem,1.1rem + 1.2vw,2.05rem);max-width:30ch}
h3{font-size:1.2rem;margin-top:1.6em}
p{margin:0 0 1em}
.num,td.num,th.num{font-variant-numeric:tabular-nums;text-align:right}
.wrap{max-width:var(--col);margin:0 auto;padding:0 1rem}
.wide{max-width:var(--wide);margin:0 auto;padding:0 1rem}
/* topbar */
.topbar{position:sticky;top:0;z-index:20;display:flex;align-items:center;gap:.6rem;height:44px;padding:0 .8rem;background:color-mix(in srgb,var(--bg) 94%,transparent);border-bottom:1px solid var(--line-soft)}
.home{display:flex;align-items:center;gap:.4rem;color:var(--fg);text-decoration:none;font-weight:600;font-size:.92rem;white-space:nowrap}
.motif{width:22px;height:22px;color:var(--fg)}
.topnav{display:flex;gap:1rem;overflow:hidden;font-size:.9rem;white-space:nowrap}
.topnav a{color:var(--mut);text-decoration:none}
.topnav a:hover{color:var(--fg)}
.spacer{flex:1}
.chip{font-size:.85rem;font-weight:600;color:var(--fg);text-decoration:none;border:1px solid var(--line);border-radius:999px;padding:.12rem .62rem}
.icon-btn{display:grid;place-items:center;width:34px;height:34px;border:1px solid var(--line);border-radius:50%;background:transparent;color:var(--fg);cursor:pointer}
.progress{position:absolute;left:0;bottom:-1px;height:2px;width:100%;background:var(--gold);transform-origin:0 50%;transform:scaleX(0)}
@media (max-width:900px){.topnav{display:none}}
/* rail */
.rail{position:fixed;right:10px;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;gap:9px;z-index:15}
.rail-dot{position:relative;display:block;width:12px;height:12px}
.rail-dot .dot{display:block;width:7px;height:7px;margin:2.5px;border-radius:50%;background:var(--line)}
.rail-dot[aria-current] .dot{background:var(--gold);transform:scale(1.25)}
.rail-label{position:absolute;right:18px;top:50%;transform:translateY(-50%);white-space:nowrap;font-size:.8rem;background:var(--surface);color:var(--fg);border:1px solid var(--line);padding:.1rem .45rem;border-radius:6px;opacity:0;pointer-events:none}
.rail-dot:hover .rail-label,.rail-dot:focus-visible .rail-label{opacity:1}
@media (max-width:1280px){.rail{display:none}}
@media print{.rail,.topbar,.share-row{display:none}}
/* hero */
.hero{padding:2.4rem 0 .6rem}
.kicker{font-size:.86rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--gold);margin-bottom:.7rem}
.deck{font-size:1.17rem;line-height:1.55;max-width:44rem}
.deck b{font-weight:700}
.stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.6rem 1.4rem;list-style:none;padding:0;margin:1.4rem 0 0;max-width:56rem}
.stats li{border-top:2px solid var(--fg);padding-top:.5rem;font-size:.95rem;color:var(--mut);line-height:1.35}
.stats li:nth-child(2){border-top:2px dashed var(--ghost)}
.stats li:nth-child(3){border-top-color:var(--gold)}
.stats b{display:block;font-family:var(--serif);font-size:clamp(1.45rem,1.1rem + 1.3vw,2.1rem);font-weight:640;color:var(--fg);line-height:1.1;margin-bottom:.2rem}
/* river */
.riverblock{padding:1.2rem 0 2.6rem}
.pickbox{margin:.4rem 0 .8rem}
.pick-label{font-weight:700;margin:0 0 .45rem}
.picks{display:flex;flex-wrap:wrap;gap:.4rem}
.pick{font:inherit;font-size:.93rem;font-weight:600;display:inline-flex;align-items:center;gap:.4rem;padding:.38rem .8rem;min-height:40px;border-radius:999px;border:1px solid var(--line);background:var(--surface);color:var(--fg);cursor:pointer}
.pick:hover{border-color:var(--acc)}
.pick[aria-pressed=true]{border-color:var(--fg);box-shadow:inset 0 0 0 1px var(--fg)}
.hint{font-size:.88rem;color:var(--mut);margin:.45rem 0 0}
.river-grid{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(16rem,1fr);gap:1.2rem;align-items:start}
@media (max-width:960px){.river-grid{grid-template-columns:1fr}}
.figure-box{background:var(--surface);border:1px solid var(--line-soft);border-radius:14px;padding:.9rem .9rem .6rem;margin:0;position:relative}
.figure-box h2{font-size:1.08rem;font-family:var(--sans);font-weight:700;letter-spacing:0;margin:0 0 .2rem;max-width:none}
.fig-sub{font-size:.88rem;color:var(--mut);margin:0 0 .4rem}
.chart{width:100%;height:auto;display:block;font-family:var(--sans)}
.chart text{fill:var(--mut);font-size:12px}
.chart .v{fill:var(--fg);font-weight:600}
.chart .grid{stroke:var(--line-soft)}
.river .yr{font-size:13px}
.river .band{stroke:var(--surface);stroke-width:.6;transition:opacity .25s}
.river.focus .band{opacity:.18}
.river.focus .band.on{opacity:1}
.river .ghost{fill:url(#hatch);stroke:var(--ghost);stroke-width:1.2;stroke-dasharray:3 3;opacity:.7}
.river .hatch{stroke:var(--ghost);stroke-width:1;opacity:.35}
.river .cut{fill:none;stroke:var(--ghost);stroke-width:1.4}
.river .cutlab,.chart .cutlab{fill:var(--fg);font-weight:700;font-size:12px}
.river .scale line{stroke:var(--fg);stroke-width:1.4}
.river .scale text{fill:var(--fg);font-size:12px;font-weight:600}
.b-property{fill:var(--property);background:var(--property)}.b-detention{fill:var(--detention);background:var(--detention)}
.b-investigation{fill:var(--investigation);background:var(--investigation)}.b-length{fill:var(--length);background:var(--length)}
.b-fairtrial{fill:var(--fairtrial);background:var(--fairtrial)}.b-enforcement{fill:var(--enforcement);background:var(--enforcement)}
.b-privatelife{fill:var(--privatelife);background:var(--privatelife)}.b-psychiatric{fill:var(--psychiatric);background:var(--psychiatric)}
.b-expression{fill:var(--expression);background:var(--expression)}.b-liberty{fill:var(--liberty);background:var(--liberty)}.b-other{fill:var(--other);background:var(--other)}
.sw{display:inline-block;width:11px;height:11px;border-radius:3px;vertical-align:-1px;flex:none}
.ghostsw{background:repeating-linear-gradient(45deg,transparent 0 2px,var(--ghost) 2px 3px);border:1px dashed var(--ghost)}
.fig-key{display:flex;flex-wrap:wrap;gap:.3rem .9rem;font-size:.84rem;color:var(--mut);margin:.5rem 0 .3rem}
.fig-key .lg,.fig-key span{display:inline-flex;align-items:center;gap:.35rem}
.card{background:var(--surface);border:1px solid var(--line-soft);border-radius:14px;padding:1rem 1.1rem;position:sticky;top:56px}
.card h3{margin:0 0 .4rem;font-size:1.25rem;display:flex;gap:.5rem;align-items:center}
.card .sub{color:var(--mut);font-size:.92rem;margin:0}
.card p{margin:0 0 .65rem;font-size:.98rem;line-height:1.45}
.card .big{font-family:var(--serif);font-size:1.5rem;line-height:1.2;margin:.2rem 0 .1rem}
.card .note{margin-top:.6rem}
.strip{position:relative;height:30px;margin:.2rem 0 1.6rem;border-bottom:1px solid var(--line)}
.strip .iqr{position:absolute;bottom:8px;height:12px;border-radius:6px;background:var(--acc-soft);border:1px solid var(--acc)}
.strip .med{position:absolute;bottom:4px;width:3px;height:20px;background:var(--fg);border-radius:2px}
.strip .ax{position:absolute;bottom:-18px;font-size:.75rem;color:var(--mut)}
.card-tools{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;margin-top:.7rem}
.btn{font:inherit;font-size:.92rem;font-weight:600;padding:.42rem .85rem;border-radius:999px;border:1px solid var(--line);background:var(--surface);color:var(--fg);cursor:pointer;min-height:40px;text-decoration:none;display:inline-flex;align-items:center}
.btn:hover{border-color:var(--acc)}
.btn.primary{background:var(--acc);border-color:var(--acc);color:var(--bg)}
.note{font-size:.88rem;color:var(--mut)}
/* share row */
.share-row{display:flex;align-items:center;flex-wrap:wrap;gap:.35rem;margin:.6rem 0 0}
.share-row .lbl{font-size:.86rem;color:var(--mut);margin-right:.2rem}
.share-row a,.share-row button{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;border:1px solid var(--line-soft);background:transparent;color:var(--fg);cursor:pointer;padding:0}
.share-row a:hover,.share-row button:hover{border-color:var(--acc);color:var(--acc)}
.share-row svg{width:19px;height:19px}
@media (pointer:coarse){.share-row a,.share-row button{width:44px;height:44px}}
.status{font-size:.86rem;color:var(--mut);min-height:1.2em;margin:.2rem 0 0}
/* blocks */
.block{padding:2.6rem 0;border-top:1px solid var(--line-soft)}
.aside{background:var(--band);border-radius:12px;padding:1rem 1.2rem;font-size:.97rem;margin-top:1.2rem}
.aside h3{margin-top:0;font-size:1.1rem}
/* open problems */
.openlist{list-style:none;padding:0;margin:.6rem 0 .8rem}
.op{display:grid;grid-template-columns:minmax(0,1fr) 7rem 3.6rem;gap:.7rem;align-items:center;padding:.45rem 0;border-bottom:1px solid var(--line-soft)}
.op[data-extra]{display:none}
.openlist.open .op[data-extra]{display:grid}
.op-lab{font-size:.95rem;line-height:1.3}
.op-lab small{display:block;font-size:.78rem;color:var(--mut);margin-top:.1rem}
.op-bar{height:9px;border-radius:5px;background:var(--line-soft);position:relative;overflow:hidden}
.op-bar i{position:absolute;inset:0 auto 0 0;border-radius:5px;background:var(--mut)}
.op.enh .op-bar i{background:var(--acc)}
.op.old .op-yrs{font-weight:700;color:var(--fg)}
.op-yrs{font-size:.86rem;color:var(--mut);text-align:right;font-variant-numeric:tabular-nums}
.enhsw{background:var(--acc)}.stdsw{background:var(--mut)}.oldsw{background:transparent;border:2px solid var(--fg)}
.op.old{box-shadow:inset 3px 0 0 var(--fg);padding-left:.5rem}
.op.dim{opacity:.35}
@media (max-width:520px){.op{grid-template-columns:minmax(0,1fr) 3.2rem}.op-bar{grid-column:1/-1;grid-row:2}}
/* charts in blocks */
.chart rect.bar{fill:var(--acc);opacity:.55}
.chart .paidline{fill:none;stroke:var(--gold);stroke-width:2.4}
.chart .cmpt{fill:var(--fg)}
.chart .shade{fill:var(--acc-soft);opacity:.55}
/* path */
.path{list-style:none;padding:0;margin:.4rem 0 0;border-left:2px solid var(--gold)}
.path li{position:relative;padding:.1rem 0 .8rem 1rem}
.path li::before{content:'';position:absolute;left:-6px;top:.5rem;width:10px;height:10px;border-radius:50%;background:var(--gold)}
.path .when{display:block;font-weight:700;font-size:.9rem}
/* tables */
.tablewrap{overflow-x:auto;border:1px solid var(--line-soft);border-radius:12px;background:var(--surface);margin:1rem 0 .6rem}
table{border-collapse:collapse;width:100%;font-size:.93rem}
th,td{padding:.48rem .7rem;border-bottom:1px solid var(--line-soft);text-align:left;vertical-align:top}
thead th{font-weight:700;font-size:.85rem;color:var(--mut);background:var(--band2)}
tbody th{font-weight:600}
table.sum tbody th{display:flex;gap:.45rem;align-items:center}
tr[data-extra]{display:none}
table.open tr[data-extra]{display:table-row}
.tests th{width:34%}
.verdict{display:inline-block;font-size:.8rem;font-weight:700;padding:.08rem .5rem;border-radius:999px;border:1px solid var(--line);white-space:nowrap}
.v-cade,.v-fails{border-color:var(--property);color:var(--property)}
.v-confirmată,.v-holds{border-color:var(--length);color:var(--length)}
.v-parțial,.v-partly{border-color:var(--gold);color:var(--gold)}
ul.plain{padding-left:1.1rem}
ul.plain li{margin:.35rem 0}
.dl{display:flex;flex-wrap:wrap;gap:.5rem}
.sources li{word-break:break-word}
footer{border-top:1px solid var(--line);padding:1.6rem 1rem 3rem;display:flex;flex-wrap:wrap;gap:.6rem 1.4rem;justify-content:center;font-size:.9rem;color:var(--mut)}
footer a{color:var(--mut)}
@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
@media (max-width:640px){.stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem .7rem}.stats b{font-size:1.2rem}.stats li{font-size:.78rem}}
