/* ==========================================================================
   Der Durchbruch — Navier–Stokes
   Cinematische Ebene über mzone-ui. Eigene Tokens, eigenes Layout.
   ========================================================================== */

:root{
  --void:#04060b;
  --void-2:#070b13;
  --panel:rgba(11,17,27,.72);
  --panel-2:rgba(9,14,23,.88);
  --panel-3:rgba(14,21,33,.6);
  --line:rgba(122,152,192,.15);
  --line-2:rgba(122,152,192,.3);
  --text:#c7d2e2;
  --text-strong:#eef3fa;
  --muted:#7d8ca0;
  --faint:#586577;
  --plasma-1:#3d7bff;
  --plasma-2:#25cdb8;
  --plasma-3:#ffb347;
  --plasma-4:#fff3d6;
  --hot:#ff3b2f;
  --hot-soft:rgba(255,59,47,.14);
  --serif:"Instrument Serif",Georgia,serif;
  --sans:"Space Grotesk",Inter,system-ui,sans-serif;
  --body:"Inter",system-ui,-apple-system,sans-serif;
  --mono:"IBM Plex Mono",ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
  --math:"STIX Two Math","Cambria Math","Latin Modern Math","DejaVu Serif",Georgia,serif;
  --shell:1180px;
  color-scheme:dark;
}

*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

body.mz-body{
  margin:0;
  background:var(--void);
  color:var(--text);
  font:400 16px/1.65 var(--body);
  font-feature-settings:"ss01","cv11";
  overflow-x:hidden;
  --mz-bg:var(--void);
  --mz-surface:rgba(11,17,27,.72);
  --mz-surface-alt:rgba(9,14,23,.88);
  --mz-border:var(--line);
  --mz-border-soft:rgba(122,152,192,.09);
  --mz-text:var(--text);
  --mz-text-strong:var(--text-strong);
  --mz-text-muted:var(--muted);
  --mz-accent:#ff5a3c;
  --mz-font:var(--body);
  --mz-mono:var(--mono);
}

.m{font-family:var(--math);font-style:normal;font-feature-settings:"ss01";letter-spacing:.01em}
sub,.m sub{font-size:.62em}
sup,.m sup{font-size:.62em}

/* ---------------------------------------------------------------- Canvas */
#gl{
  position:fixed;inset:0;width:100vw;height:100vh;z-index:0;
  display:block;touch-action:pan-y;cursor:grab;
}
#gl:active{cursor:grabbing}
body[data-scene="calm"] #gl{opacity:.34}
body[data-scene="cascade"] #gl{opacity:1}
body[data-scene="hero"] #gl{opacity:1}
#gl{transition:opacity .9s ease}
.grain{
  position:fixed;inset:-50%;z-index:2;pointer-events:none;opacity:.055;
  background-image:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPScxNDAnIGhlaWdodD0nMTQwJz48ZmlsdGVyIGlkPSduJz48ZmVUdXJidWxlbmNlIHR5cGU9J2ZyYWN0YWxOb2lzZScgYmFzZUZyZXF1ZW5jeT0nLjg1JyBudW1PY3RhdmVzPScyJy8+PC9maWx0ZXI+PHJlY3Qgd2lkdGg9JzEwMCUyNScgaGVpZ2h0PScxMDAlMjUnIGZpbHRlcj0ndXJsKCUyM24pJy8+PC9zdmc+");
  animation:grain 6s steps(6) infinite;
}
@keyframes grain{
  0%{transform:translate(0,0)}20%{transform:translate(-3%,2%)}40%{transform:translate(2%,-3%)}
  60%{transform:translate(-2%,-2%)}80%{transform:translate(3%,1%)}100%{transform:translate(0,0)}
}
.vignette{
  position:fixed;inset:0;z-index:1;pointer-events:none;
  background:
    radial-gradient(120% 90% at 50% 8%,transparent 40%,rgba(4,6,11,.55) 100%),
    linear-gradient(180deg,rgba(4,6,11,.5) 0%,transparent 22%,transparent 74%,rgba(4,6,11,.82) 100%);
}

.mz-scroll-progress{
  position:fixed;top:0;left:0;height:2px;z-index:60;
  background:linear-gradient(90deg,var(--plasma-1),var(--plasma-2),var(--plasma-3),var(--plasma-4));
  box-shadow:0 0 14px rgba(61,123,255,.6);
  transition:width .08s linear;
}

/* ---------------------------------------------------------------- Topbar */
.topbar{
  position:fixed;top:0;left:0;right:0;z-index:50;
  display:flex;align-items:center;gap:24px;
  padding:12px clamp(16px,3vw,40px);
  background:linear-gradient(180deg,rgba(4,6,11,.82),rgba(4,6,11,.28) 70%,transparent);
  backdrop-filter:blur(12px) saturate(1.2);
  -webkit-backdrop-filter:blur(12px) saturate(1.2);
  border-bottom:1px solid rgba(122,152,192,.08);
}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--text-strong);
  font:500 15px/1 var(--sans);letter-spacing:.01em;flex:0 0 auto}
.brand__mark{width:16px;height:16px;border-radius:50%;
  background:conic-gradient(from 0deg,var(--plasma-1),var(--plasma-2),var(--plasma-3),var(--plasma-4),var(--plasma-1));
  box-shadow:0 0 14px rgba(61,123,255,.7),0 0 26px rgba(255,179,71,.35);
  animation:spin 9s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
.brand__name em{font-style:normal;color:var(--muted);font-weight:400}
.topnav{flex:1 1 auto;justify-content:center;gap:4px;flex-wrap:wrap}
.topnav a{font:400 13px/1 var(--sans);color:var(--muted);text-decoration:none;
  padding:7px 11px;border-radius:999px;transition:color .2s,background .2s}
.topnav a:hover,.topnav a:focus-visible{color:var(--text-strong);background:rgba(122,152,192,.1)}
.topbar__meta{flex:0 0 auto}
@media (max-width:1080px){.topnav{display:none}}
@media (max-width:560px){.brand__name em{display:none}}

/* ---------------------------------------------------------------- Shell */
.shell{position:relative;z-index:10;max-width:var(--shell);margin:0 auto;
  padding:0 clamp(16px,4vw,48px) 0}

.chapter{position:relative;padding:clamp(72px,11vh,150px) 0;
  scroll-margin-top:70px}
.chapter::before{
  content:"";position:absolute;inset:-2px calc(50% - 50vw);z-index:-1;pointer-events:none;
  background:radial-gradient(90% 70% at 50% 40%,rgba(4,6,11,.86),rgba(4,6,11,.62) 62%,rgba(4,6,11,.2) 100%);
}
.hero::before{
  content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;
  background:
    linear-gradient(90deg,rgba(4,6,11,.84) 0%,rgba(4,6,11,.55) 36%,rgba(4,6,11,.05) 64%,transparent 100%),
    radial-gradient(70% 60% at 22% 58%,rgba(4,6,11,.55),transparent 72%);
}
.chapter--tight{padding-top:clamp(40px,6vh,70px)}
.chapter--wide::before{background:radial-gradient(100% 80% at 50% 45%,rgba(4,6,11,.42),rgba(4,6,11,.18) 70%,transparent)}
.chapter--footer{padding-bottom:60px}

.section-head{max-width:52em;margin-bottom:clamp(28px,4vw,52px)}
.mz-eyebrow{font-family:var(--mono);font-size:12px;letter-spacing:.28em;text-transform:uppercase;
  color:var(--plasma-2);margin:0 0 16px;font-weight:500}
.mz-eyebrow--muted{color:var(--muted)}
.mz-eyebrow--special{color:var(--plasma-3)}
.mz-h2{font:400 clamp(34px,5.4vw,62px)/1.02 var(--serif);letter-spacing:-.015em;
  color:var(--text-strong);margin:0 0 18px}
.mz-h3{font:500 clamp(19px,2.2vw,25px)/1.2 var(--sans);letter-spacing:-.01em;
  color:var(--text-strong);margin:0 0 10px}
.mz-subtitle{font-size:clamp(16px,1.7vw,19px);line-height:1.6;color:var(--muted);margin:0;max-width:44em}
.mz-lead{font-size:clamp(17px,1.9vw,21px);line-height:1.6;color:var(--text)}
.mz-prose p{margin:0 0 1.05em;max-width:44em}
.mz-prose p:last-child{margin-bottom:0}
.mz-meta{display:grid;grid-template-columns:auto 1fr;gap:6px 20px;margin:0}
.mz-meta__key{color:var(--faint);font-size:13.5px}
.mz-meta__value{color:var(--text);font-size:13.5px;margin:0}

/* ---------------------------------------------------------------- Hero */
.hero{position:relative;min-height:100svh;display:flex;flex-direction:column;justify-content:center;
  padding:clamp(90px,14vh,150px) 0 clamp(60px,10vh,110px)}
.hero__grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);
  gap:clamp(28px,5vw,72px);align-items:end}
.hero__title{font:400 clamp(58px,11vw,150px)/.86 var(--serif);letter-spacing:-.03em;
  color:var(--text-strong);margin:0 0 26px}
.hero__line{display:block}
.hero__line--big{
  background:linear-gradient(100deg,var(--plasma-1) 0%,var(--plasma-2) 38%,var(--plasma-3) 72%,var(--plasma-4) 100%);
  -webkit-background-clip:text;background-clip:text;color:transparent;
  filter:drop-shadow(0 0 42px rgba(61,123,255,.28));
}
.hero__lead{max-width:34em;margin:0 0 28px}
.hero__actions{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:34px}
.hero__meta{max-width:34em;border-top:1px solid var(--line);padding-top:18px}

.hero__hud{align-self:end}
.hud{
  position:relative;border:1px solid var(--line-2);border-radius:14px;
  background:linear-gradient(160deg,rgba(13,20,32,.86),rgba(7,11,19,.92));
  backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
  padding:18px 18px 16px;box-shadow:0 30px 80px -40px rgba(0,0,0,.9),inset 0 1px 0 rgba(255,255,255,.04);
  overflow:hidden;
}
.hud::after{content:"";position:absolute;inset:0;pointer-events:none;
  background:radial-gradient(80% 60% at 90% 0%,rgba(255,179,71,.12),transparent 60%)}
.hud__head{display:flex;align-items:center;gap:8px;font:500 11px/1 var(--mono);
  letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-bottom:16px}
.hud__dot{width:7px;height:7px;border-radius:50%;background:var(--plasma-2);
  box-shadow:0 0 10px var(--plasma-2);animation:pulse 2.4s ease-in-out infinite}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:.35}}
.hud__clock{margin-left:auto;color:var(--plasma-3)}
.hud__stage{display:flex;align-items:baseline;gap:10px;margin-bottom:14px}
.hud__stage-label{font:500 11px/1 var(--mono);letter-spacing:.2em;color:var(--faint);text-transform:uppercase}
.hud__stage-value{font:400 clamp(40px,6vw,64px)/1 var(--serif);color:var(--text-strong)}
.hud__rows{display:grid;gap:2px}
.hud__row{display:grid;grid-template-columns:1fr auto auto;align-items:baseline;gap:8px;
  padding:6px 0;border-top:1px solid rgba(122,152,192,.09)}
.hud__row span{font:400 12.5px/1 var(--body);color:var(--muted)}
.hud__row b{font:500 15px/1 var(--mono);color:var(--text-strong)}
.hud__row i{font:400 11px/1 var(--mono);color:var(--faint);font-style:normal;width:2.4em;text-align:right}
.hud__bar{height:3px;border-radius:2px;background:rgba(122,152,192,.14);margin:14px 0 10px;overflow:hidden}
.hud__bar span{display:block;height:100%;width:4%;
  background:linear-gradient(90deg,var(--plasma-2),var(--plasma-3),var(--hot));transition:width .12s linear}
.hud__note{font:400 12.5px/1.5 var(--body);color:var(--muted);margin:0}

.scrollcue{position:absolute;left:50%;bottom:22px;transform:translateX(-50%);
  display:flex;align-items:center;gap:10px;font:500 11px/1 var(--mono);
  letter-spacing:.24em;text-transform:uppercase;color:var(--faint)}
.scrollcue span{width:34px;height:1px;background:linear-gradient(90deg,transparent,var(--plasma-2));
  position:relative;overflow:hidden}
.scrollcue span::after{content:"";position:absolute;inset:0;background:var(--plasma-4);
  animation:cue 2.4s ease-in-out infinite}
@keyframes cue{0%{transform:translateX(-100%)}60%,100%{transform:translateX(100%)}}

@media (max-width:880px){
  .hero__grid{grid-template-columns:1fr}
  .hero__hud{max-width:420px}
}

/* ---------------------------------------------------------------- Buttons */
.mz-btn{display:inline-flex;align-items:center;gap:8px;cursor:pointer;
  font:500 13.5px/1 var(--sans);letter-spacing:.02em;color:#07090f;
  background:linear-gradient(100deg,var(--plasma-3),var(--plasma-4));
  border:1px solid transparent;border-radius:999px;padding:11px 20px;text-decoration:none;
  transition:transform .18s ease,box-shadow .25s ease,background .25s ease}
.mz-btn:hover{transform:translateY(-1px);box-shadow:0 12px 34px -14px rgba(255,179,71,.8)}
.mz-btn:focus-visible{outline:2px solid var(--plasma-2);outline-offset:3px}
.mz-btn--ghost{background:transparent;color:var(--text);border-color:var(--line-2)}
.mz-btn--ghost:hover{background:rgba(122,152,192,.1);box-shadow:none}
.mz-btn[aria-pressed="true"]{background:linear-gradient(100deg,var(--hot),var(--plasma-3));color:#0a0503}

.mz-control{display:flex;flex-direction:column;gap:7px;font:400 12.5px/1.3 var(--body);color:var(--muted)}
.mz-control__label{font:500 11.5px/1.2 var(--mono);letter-spacing:.08em;color:var(--muted);
  text-transform:uppercase;display:flex;justify-content:space-between;gap:12px}
.mz-control__value{color:var(--plasma-3);font:500 11.5px/1 var(--mono);letter-spacing:.04em}
.mz-range{-webkit-appearance:none;appearance:none;width:100%;height:3px;border-radius:2px;
  background:linear-gradient(90deg,var(--plasma-1),var(--plasma-2) 55%,var(--plasma-3));
  outline:none;cursor:pointer}
.mz-range::-webkit-slider-thumb{-webkit-appearance:none;width:16px;height:16px;border-radius:50%;
  background:var(--plasma-4);border:2px solid #0a0f18;box-shadow:0 0 12px rgba(255,243,214,.7);cursor:grab}
.mz-range::-moz-range-thumb{width:14px;height:14px;border-radius:50%;background:var(--plasma-4);
  border:2px solid #0a0f18;box-shadow:0 0 12px rgba(255,243,214,.7);cursor:grab}
.mz-range:focus-visible{outline:2px solid var(--plasma-2);outline-offset:4px}

.mz-controls{display:flex;align-items:center;gap:14px;flex-wrap:wrap}

/* ---------------------------------------------------------------- Plate */
.plate{position:relative;margin:0 0 clamp(30px,4vw,54px);padding:clamp(18px,2.4vw,30px);
  border:1px solid var(--line);border-radius:18px;
  background:linear-gradient(165deg,rgba(12,19,30,.8),rgba(6,10,17,.9));
  backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);
  box-shadow:0 40px 100px -60px rgba(0,0,0,.9),inset 0 1px 0 rgba(255,255,255,.035)}
.plate figcaption{font:400 13.5px/1.6 var(--body);color:var(--muted);max-width:74em;
  margin-top:18px;border-top:1px solid rgba(122,152,192,.1);padding-top:14px}
.plate figcaption b{color:var(--text-strong);font-weight:600}

.eqrow{display:flex;align-items:stretch;justify-content:center;gap:clamp(4px,1.2vw,14px);
  flex-wrap:wrap;padding:clamp(10px,2vw,26px) 0}
.eqop{font-size:clamp(24px,3.4vw,42px);color:var(--faint);display:flex;align-items:center;padding-bottom:22px}
.term{appearance:none;background:transparent;border:1px solid transparent;border-radius:12px;
  padding:10px 12px 8px;display:flex;flex-direction:column;align-items:center;gap:8px;cursor:pointer;
  transition:background .2s,border-color .2s,transform .2s;min-width:88px}
.term:hover{background:rgba(122,152,192,.07);border-color:var(--line)}
.term:focus-visible{outline:2px solid var(--plasma-2);outline-offset:2px}
.term[aria-pressed="true"]{background:rgba(61,123,255,.14);border-color:rgba(61,123,255,.5)}
.term__sym{font-size:clamp(24px,3.4vw,42px);color:var(--text-strong);line-height:1}
.term__name{font:500 11px/1.2 var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.term--hot .term__sym{color:var(--plasma-3)}
.term[aria-pressed="true"] .term__sym{color:var(--plasma-4)}
.eqrow--sub{justify-content:center;gap:14px;padding:0 0 6px;flex-wrap:wrap}
.eqrow--sub .m{font-size:clamp(15px,1.8vw,19px);color:var(--muted)}
.eqrow--sub .eqop{padding-bottom:0;font-size:16px}

.termreadout{margin-top:18px;border-top:1px solid rgba(122,152,192,.12);padding-top:16px;
  display:grid;grid-template-columns:minmax(140px,.4fr) 1fr;gap:20px;align-items:start}
.termreadout__title{font:500 15px/1.3 var(--sans);color:var(--plasma-3);margin:0}
.termreadout__body{font:400 14.5px/1.65 var(--body);color:var(--text);margin:0;max-width:56em}
@media (max-width:640px){.termreadout{grid-template-columns:1fr;gap:8px}}

/* ---------------------------------------------------------------- Split */
.split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(24px,4vw,56px);
  align-items:start;margin-bottom:clamp(30px,4vw,54px)}
.aside-note{border-left:2px solid var(--plasma-1);padding:2px 0 2px 16px;color:var(--muted);
  font-size:14.5px}
.aside-note b{color:var(--text-strong)}
@media (max-width:880px){.split{grid-template-columns:1fr}}

.lab{border:1px solid var(--line);border-radius:16px;overflow:hidden;
  background:linear-gradient(165deg,rgba(12,19,30,.86),rgba(6,10,17,.94))}
.lab__head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;
  padding:14px 16px 10px;border-bottom:1px solid rgba(122,152,192,.1)}
.lab__title{font:500 13px/1 var(--sans);color:var(--text-strong);letter-spacing:.02em}
.lab__sub{font:400 11px/1 var(--mono);color:var(--faint);letter-spacing:.1em}
.lab canvas{display:block;width:100%;height:auto;background:#04060b}
.lab__foot{display:grid;grid-template-columns:1fr 1fr;gap:18px;padding:16px}
@media (max-width:560px){.lab__foot{grid-template-columns:1fr}}

/* ---------------------------------------------------------------- Alts */
.altgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:clamp(30px,4vw,50px)}
.alt{position:relative;border:1px solid var(--line);border-radius:16px;padding:22px 22px 20px;
  background:linear-gradient(160deg,rgba(12,19,30,.8),rgba(6,10,17,.9));overflow:hidden}
.alt::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--line-2)}
.alt--safe::before{background:linear-gradient(180deg,var(--plasma-1),var(--plasma-2))}
.alt--claim::before{background:linear-gradient(180deg,var(--plasma-3),var(--hot))}
.alt--claim{box-shadow:inset 0 0 60px -30px rgba(255,59,47,.5)}
.alt__letter{font:400 34px/1 var(--serif);color:var(--faint);display:block;margin-bottom:6px}
.alt--claim .alt__letter{color:var(--plasma-3)}
.alt__title{font:500 17px/1.25 var(--sans);color:var(--text-strong);margin:0 0 8px}
.alt__body{font:400 14px/1.6 var(--body);color:var(--muted);margin:0}
.alt__tag{position:absolute;top:18px;right:18px;font:500 10.5px/1 var(--mono);letter-spacing:.14em;
  text-transform:uppercase;color:var(--faint);border:1px solid var(--line);border-radius:999px;padding:5px 9px}
.alt--claim .alt__tag{color:var(--plasma-3);border-color:rgba(255,179,71,.4);background:rgba(255,179,71,.08)}
.footnote{font:400 13px/1.6 var(--body);color:var(--faint);margin-top:16px;max-width:62em}
@media (max-width:640px){.altgrid{grid-template-columns:1fr}}

/* ---------------------------------------------------------------- Cascade */
.cascade{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);
  gap:clamp(20px,3vw,40px);align-items:stretch;margin-bottom:clamp(34px,5vw,64px)}
.cascade__stage{position:relative;min-height:clamp(420px,64vh,680px);border-radius:20px;
  border:1px solid rgba(122,152,192,.22);overflow:hidden;cursor:grab;touch-action:pan-y;
  background:
    radial-gradient(70% 60% at 50% 46%,rgba(61,123,255,.1),transparent 70%),
    linear-gradient(180deg,rgba(6,10,18,.28),rgba(4,6,11,.5));
  box-shadow:inset 0 0 120px -40px rgba(61,123,255,.35)}
.cascade__stage::after{content:"";position:absolute;inset:0;pointer-events:none;
  background:repeating-linear-gradient(0deg,rgba(122,152,192,.05) 0 1px,transparent 1px 44px),
             repeating-linear-gradient(90deg,rgba(122,152,192,.05) 0 1px,transparent 1px 44px);
  mask-image:radial-gradient(80% 80% at 50% 50%,#000 30%,transparent 100%)}
.cascade__hud{position:absolute;z-index:3;font:400 11px/1.4 var(--mono);color:var(--faint);
  letter-spacing:.1em;text-transform:uppercase;display:flex;flex-direction:column;gap:4px}
.cascade__hud b{font:500 16px/1 var(--mono);color:var(--text-strong);letter-spacing:0;text-transform:none}
.cascade__hud--tl{top:16px;left:18px}
.cascade__hud--tr{top:16px;right:18px;text-align:right}
.cascade__hud--bl{bottom:16px;left:18px}
.cascade__hud--br{bottom:16px;right:18px;text-align:right}
.cascade__hud--br b{color:var(--plasma-3)}
.cascade__caption{position:absolute;left:18px;right:18px;bottom:58px;z-index:3;
  font:400 13.5px/1.55 var(--body);color:var(--text);max-width:40em;
  text-shadow:0 2px 18px rgba(4,6,11,.95)}
.cascade__caption b{color:var(--plasma-4)}

.cascade__panel{border:1px solid var(--line);border-radius:20px;padding:clamp(18px,2.2vw,26px);
  background:linear-gradient(165deg,rgba(12,19,30,.86),rgba(6,10,17,.94));
  display:flex;flex-direction:column;gap:18px;backdrop-filter:blur(10px)}
.cascade__range{margin-top:2px}
.cascade__readouts{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.mz-stat{border:1px solid rgba(122,152,192,.14);border-radius:12px;padding:12px 13px;
  background:rgba(6,10,17,.5)}
.mz-stat__label{font:500 10.5px/1 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--faint);margin-bottom:8px}
.mz-stat__value{font:400 22px/1 var(--mono);color:var(--text-strong);display:flex;align-items:baseline;gap:5px}
.mz-stat__unit{font-size:12px;color:var(--muted)}
.mz-stat--warn .mz-stat__value{color:var(--plasma-3)}
.cascade__formula{font-size:clamp(13px,1.5vw,16px);color:var(--text);line-height:1.8;
  border-top:1px solid rgba(122,152,192,.12);border-bottom:1px solid rgba(122,152,192,.12);padding:14px 0}
.cascade__explain{font:400 13.5px/1.6 var(--body);color:var(--muted);margin:0}
@media (max-width:920px){.cascade{grid-template-columns:1fr}}

.triple{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.mz-card{border:1px solid var(--line);border-radius:16px;padding:20px 20px 18px;
  background:linear-gradient(160deg,rgba(12,19,30,.78),rgba(6,10,17,.9));margin:0}
.mz-card--accent{box-shadow:inset 3px 0 0 var(--plasma-2),inset 0 0 50px -34px rgba(37,205,184,.6)}
.mz-card__label{font:500 10.5px/1 var(--mono);letter-spacing:.18em;text-transform:uppercase;
  color:var(--plasma-2);margin-bottom:12px}
.mz-card p{font:400 14px/1.62 var(--body);color:var(--muted);margin:0}
@media (max-width:820px){.triple{grid-template-columns:1fr}}

/* ---------------------------------------------------------------- Criteria */
.criteria{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);gap:clamp(20px,3vw,40px);
  align-items:start}
.criteria__chart{border:1px solid var(--line);border-radius:18px;overflow:hidden;
  background:linear-gradient(165deg,rgba(12,19,30,.86),rgba(6,10,17,.94))}
.criteria__chart .lab__head{padding:16px 18px 12px}
.criteria__chart canvas{display:block;width:100%;height:auto}
.criteria__ctrls{padding:14px 18px 18px;border-top:1px solid rgba(122,152,192,.1)}
.criteria__ctrls .mz-control{flex:1 1 220px}
.criteria__clock{font:400 13px/1 var(--mono);color:var(--plasma-3);margin-left:auto}
.criteria__list{display:flex;flex-direction:column;gap:12px}
.criterion{border:1px solid var(--line);border-radius:14px;padding:16px 18px;
  background:linear-gradient(160deg,rgba(12,19,30,.72),rgba(6,10,17,.88));
  transition:border-color .25s,transform .25s}
.criterion:hover{transform:translateX(3px);border-color:var(--line-2)}
.criterion--on{border-color:rgba(255,179,71,.45);box-shadow:inset 0 0 44px -30px rgba(255,179,71,.7)}
.criterion__name{font:500 15px/1.3 var(--sans);color:var(--text-strong);margin:0 0 8px}
.criterion__year{font:400 11px/1 var(--mono);color:var(--faint);margin-left:6px}
.criterion__math{font-size:15px;color:var(--plasma-3);margin:0 0 8px}
.criterion__body{font:400 13.5px/1.6 var(--body);color:var(--muted);margin:0}
@media (max-width:920px){.criteria{grid-template-columns:1fr}}

/* ---------------------------------------------------------------- Proof */
.proofgrid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(260px,.5fr);gap:clamp(20px,3vw,40px);
  align-items:start}
.mz-tabs__list{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:18px}
.mz-tabs__tab{appearance:none;cursor:pointer;font:500 13px/1 var(--sans);color:var(--muted);
  background:transparent;border:1px solid var(--line);border-radius:999px;padding:9px 16px;
  transition:color .2s,background .2s,border-color .2s}
.mz-tabs__tab:hover{color:var(--text-strong)}
.mz-tabs__tab[aria-selected="true"]{color:#07090f;background:linear-gradient(100deg,var(--plasma-3),var(--plasma-4));border-color:transparent}
.proofsteps{list-style:none;counter-reset:s;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}
.proofsteps li{counter-increment:s;position:relative;padding:16px 0 16px 52px;
  border-top:1px solid rgba(122,152,192,.11);font:400 14.5px/1.65 var(--body);color:var(--muted)}
.proofsteps li:first-child{border-top:0}
.proofsteps li::before{content:counter(s,decimal-leading-zero);position:absolute;left:0;top:16px;
  font:400 15px/1 var(--mono);color:var(--plasma-2)}
.proofsteps li b{color:var(--text-strong);font-weight:600}
.lean__code{border:1px solid var(--line);border-radius:12px;background:rgba(4,6,11,.85);overflow:auto}
.lean__code pre{margin:0;padding:18px;font:400 12.5px/1.75 var(--mono);color:#bcd0e6;white-space:pre}
.lean__code .kw{color:var(--plasma-2)}
.lean__code .cm{color:var(--faint);font-style:italic}
.lean__facts{list-style:none;margin:16px 0 0;padding:0;display:flex;flex-direction:column;gap:8px}
.lean__facts li{font:400 13.5px/1.6 var(--body);color:var(--muted);padding-left:18px;position:relative}
.lean__facts li::before{content:"→";position:absolute;left:0;color:var(--plasma-1)}
.lean__facts b{color:var(--text-strong)}
.notes{list-style:none;margin:0;padding:0}
.notes li{padding:15px 0;border-top:1px solid rgba(122,152,192,.11);font:400 14px/1.65 var(--body);
  color:var(--muted)}
.notes li:first-child{border-top:0}
.notes b{color:var(--text-strong)}
.proofgrid__side{display:flex;flex-direction:column;gap:16px;position:sticky;top:80px}
@media (max-width:920px){.proofgrid{grid-template-columns:1fr}.proofgrid__side{position:static}}

/* ---------------------------------------------------------------- Dispute */
.dispute{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.dispute__card{border:1px solid var(--line);border-radius:16px;padding:20px;
  background:linear-gradient(160deg,rgba(12,19,30,.78),rgba(6,10,17,.9));
  display:flex;flex-direction:column;gap:10px;min-height:190px}
.dispute__card--hot{border-color:rgba(255,59,47,.4);box-shadow:inset 0 0 60px -34px rgba(255,59,47,.7)}
.dispute__card--data{border-color:rgba(61,123,255,.35)}
.dispute__who{font:500 16px/1.25 var(--sans);color:var(--text-strong)}
.dispute__what{font:400 13.5px/1.6 var(--body);color:var(--muted);flex:1 1 auto}
.dispute__stance{font:italic 400 14.5px/1.5 var(--serif);color:var(--plasma-3);
  border-top:1px solid rgba(122,152,192,.12);padding-top:10px}
.dispute__card--hot .dispute__stance{color:var(--hot)}
@media (max-width:820px){.dispute{grid-template-columns:1fr}}

/* ---------------------------------------------------------------- Seven */
.seven{list-style:none;margin:0;padding:0;display:grid;
  grid-template-columns:repeat(7,minmax(0,1fr));gap:14px}
.seven__item{display:flex;flex-direction:column;gap:12px;padding:18px 16px;border-radius:14px;
  border:1px solid var(--line);background:linear-gradient(160deg,rgba(12,19,30,.7),rgba(6,10,17,.88));
  transition:transform .25s,border-color .25s}
.seven__item:hover{transform:translateY(-3px);border-color:var(--line-2)}
.seven__ring{width:34px;height:34px;border-radius:50%;border:1.6px solid var(--faint);position:relative}
.seven__item--solved .seven__ring{background:var(--text-strong);border-color:var(--text-strong)}
.seven__item--claim .seven__ring{background:var(--plasma-3);border-color:var(--plasma-3);
  box-shadow:0 0 0 5px rgba(255,179,71,.16),0 0 26px rgba(255,179,71,.6)}
.seven__name{font:400 18px/1.2 var(--serif);color:var(--text-strong)}
.seven__status{font:400 12.5px/1.45 var(--body);color:var(--muted)}
.seven__item--claim .seven__status{color:var(--plasma-3)}
.seven__item--solved .seven__status{color:var(--text)}
@media (max-width:900px){.seven{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:520px){.seven{grid-template-columns:1fr}
  .seven__item{flex-direction:row;align-items:center}.seven__ring{flex:0 0 auto}}

.prize{margin-top:clamp(30px,4vw,50px);display:flex;align-items:center;gap:clamp(20px,4vw,50px);
  border:1px solid var(--line);border-radius:18px;padding:clamp(20px,3vw,34px);
  background:linear-gradient(100deg,rgba(255,179,71,.08),rgba(6,10,17,.9) 60%)}
.prize__figure{font:400 clamp(34px,6vw,68px)/1 var(--serif);color:var(--plasma-3);
  text-shadow:0 0 50px rgba(255,179,71,.4);white-space:nowrap}
.prize__text{font:400 14.5px/1.65 var(--body);color:var(--muted);margin:0;max-width:44em}
@media (max-width:640px){.prize{flex-direction:column;align-items:flex-start;gap:14px}}

/* ---------------------------------------------------------------- Chronik */
.chronik{position:relative;margin:0;padding:0;list-style:none}
.chronik::before{content:"";position:absolute;left:calc(var(--date-w,130px) + 14px);top:6px;bottom:6px;
  width:1px;background:linear-gradient(180deg,transparent,var(--line-2) 8%,var(--line-2) 92%,transparent)}
.mz-timeline__item{position:relative;display:grid;grid-template-columns:var(--date-w,130px) 1fr;
  gap:30px;padding:16px 0}
.mz-timeline__date{font:400 15px/1.4 var(--mono);color:var(--faint);text-align:right;padding-top:2px}
.mz-timeline__body{position:relative;font:400 14.5px/1.65 var(--body);color:var(--muted)}
.mz-timeline__body::before{content:"";position:absolute;left:-24px;top:8px;width:9px;height:9px;
  border-radius:50%;background:var(--void);border:1.6px solid var(--muted);transform:translateX(-.5px)}
.mz-timeline__body b{color:var(--text-strong)}
.chronik__item--claim .mz-timeline__date{color:var(--plasma-3)}
.chronik__item--claim .mz-timeline__body::before{background:var(--plasma-3);border-color:var(--plasma-3);
  box-shadow:0 0 18px rgba(255,179,71,.8)}
.chronik__item--now .mz-timeline__body::before{background:var(--plasma-2);border-color:var(--plasma-2);
  box-shadow:0 0 18px rgba(37,205,184,.8)}
.chronik__item--now .mz-timeline__date{color:var(--plasma-2)}
@media (max-width:640px){
  .chronik::before{left:5px}
  .mz-timeline__item{grid-template-columns:1fr;gap:4px;padding-left:26px}
  .mz-timeline__date{text-align:left}
  .mz-timeline__body::before{left:-25px}
}

/* ---------------------------------------------------------------- Footer */
.appendix{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(240px,.7fr);gap:clamp(24px,4vw,56px);
  align-items:start}
.sources{list-style:none;margin:0;padding:0}
.sources li{padding:11px 0;border-top:1px solid rgba(122,152,192,.1);
  font:400 13.5px/1.6 var(--body);color:var(--muted)}
.sources li:first-child{border-top:0}
.sources em{color:var(--text);font-style:italic}
.colophon{margin-top:clamp(28px,4vw,48px);padding-top:20px;border-top:1px solid var(--line);
  font:400 12.5px/1.7 var(--mono);color:var(--faint);max-width:74em}
@media (max-width:820px){.appendix{grid-template-columns:1fr}}

/* ---------------------------------------------------------------- Reveal */
.reveal{opacity:0;transform:translateY(24px);transition:opacity .8s cubic-bezier(.22,.61,.36,1),
  transform .8s cubic-bezier(.22,.61,.36,1)}
.reveal.is-in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){
  .reveal{opacity:1;transform:none;transition:none}
  .grain,.brand__mark,.scrollcue span::after,.hud__dot{animation:none}
}

/* ---------------------------------------------------------------- Glitch accent */
.hud__stage-value.flash{animation:flash .5s ease}
@keyframes flash{0%{color:var(--plasma-4);text-shadow:0 0 30px var(--plasma-3)}100%{}}

/* ------------------------------------------------------- Singularität / Blow-up */
.sing-flash{
  position:fixed; inset:0; z-index:44; pointer-events:none; opacity:0;
  background:radial-gradient(60% 60% at 50% 46%,#fffdf6 0%,#ffe6b0 34%,rgba(255,120,60,.35) 62%,transparent 100%);
  mix-blend-mode:screen; will-change:opacity;
}
.sing-label{
  position:fixed; left:50%; top:50%; z-index:46; pointer-events:none;
  transform:translate(-50%,-50%); text-align:center; opacity:0; will-change:opacity;
}
.sing-label span{
  display:block; font:400 clamp(34px,7.2vw,96px)/.95 var(--serif); letter-spacing:-.01em;
  color:var(--plasma-4);
  text-shadow:0 0 26px rgba(255,243,214,.9),0 0 70px rgba(255,179,71,.75),0 0 140px rgba(255,59,47,.55);
}
.sing-label em{
  display:block; margin-top:14px; font:500 clamp(10px,1.3vw,13px)/1 var(--mono);
  letter-spacing:.34em; text-transform:uppercase; color:var(--plasma-3); font-style:normal;
  text-shadow:0 0 24px rgba(255,179,71,.8);
}
@media (prefers-reduced-motion:reduce){
  .sing-flash{display:none}
}
