:root{color-scheme:dark;--bg:#10191c;--panel:#152226;--line:#2a3b40;--text:#eef2ec;--muted:#a0b2b5;--teal:#a8efce;--orange:#ffad78}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--bg);color:var(--text);font:15px/1.6 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}a{color:inherit;text-decoration:none}a:hover{color:var(--teal)}header,main,footer{max-width:1380px;margin:auto}header{padding:28px 44px;display:flex;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{font-size:18px}.brand span{color:#698286;margin:0 15px}.brand b{font-weight:500}nav{display:flex;gap:30px;font-size:13px}main{padding:0 44px}.intro{padding:64px 0 48px}.eyebrow,.section-label{font:11px/1.6 ui-monospace,monospace;letter-spacing:1.7px;color:var(--muted)}.dot{display:inline-block;width:7px;height:7px;background:var(--teal);border-radius:50%;margin-right:8px}h1{font-size:clamp(55px,6.8vw,94px);font-weight:450;line-height:1.04;letter-spacing:-5px;margin:25px 0 28px}h1 em{font-family:Georgia,serif;font-weight:400;color:var(--teal)}.intro-bottom{display:flex;justify-content:space-between;align-items:end}.intro-bottom p{margin:0;font-size:18px;color:#c3cfcf}.intro-bottom .aside{font-size:13px;color:var(--muted)}h2{font-size:32px;line-height:1.2;font-weight:450;letter-spacing:-1px;margin:12px 0 18px}p{color:var(--muted)}.lab{border:1px solid var(--line);border-radius:18px;overflow:hidden;background:#131f23}.lab-head{display:flex;align-items:center;justify-content:space-between;padding:28px 30px 0}.lab-head h2{margin-bottom:10px}.tag{border:1px solid #456054;border-radius:20px;color:var(--teal);padding:7px 12px;font:10px ui-monospace,monospace;letter-spacing:1px}.lab-description{max-width:800px;margin:0;padding:0 30px 24px}.experiment{display:grid;grid-template-columns:minmax(0,1fr) 285px;border-block:1px solid var(--line)}.stage{background:#0c1519;min-width:0;display:flex;flex-direction:column}.stage-top,.stage-bottom{font:10px ui-monospace,monospace;color:var(--muted);display:flex;align-items:center;gap:10px;padding:18px 22px}.stage-top{justify-content:space-between}.stage-top i{display:inline-block;width:7px;height:7px;border-radius:50%;margin-right:5px}.teal{background:var(--teal)}.orange{background:var(--orange);margin-left:15px}canvas{width:100%;height:390px;display:block;touch-action:pan-y;flex:1}.stage-bottom{margin-top:auto}.stage-bottom>span{flex:1}button{font:inherit;color:var(--text);border:1px solid #3b4b4f;background:#1d2b30;border-radius:6px;padding:8px 11px;cursor:pointer}button:hover{background:#30464a}button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid var(--teal);outline-offset:4px}button:disabled{opacity:.6;cursor:wait}.controls{border-left:1px solid var(--line);padding:22px}.control-heading{display:flex;justify-content:space-between;margin-bottom:20px;font-size:16px}.control-heading span{color:var(--teal)}label{display:flex;justify-content:space-between;font-size:12px;margin:13px 0 5px}output{color:var(--teal);font-family:ui-monospace,monospace}input[type=range]{width:100%;accent-color:var(--teal);height:16px;cursor:pointer}.check{justify-content:start;align-items:center;gap:7px;color:var(--muted)}input[type=checkbox]{accent-color:var(--teal)}.presets{display:flex;gap:5px;margin:20px 0 12px}.presets button{font-size:10px;flex:1;padding:7px 3px}.primary{width:100%;background:var(--teal);color:#12281f;font-size:12px;border:0;padding:12px 5px;font-weight:600}.primary:hover{background:#c8ffdf}#optimization{font-size:11px;line-height:1.5;min-height:48px;margin:10px 0 0}.metrics{display:grid;grid-template-columns:repeat(4,1fr);padding:24px 30px;gap:25px}.metrics>div{display:flex;flex-direction:column}.metrics span{font:10px ui-monospace,monospace;color:var(--muted);letter-spacing:1px}.metrics strong{font-weight:400;font-size:34px;color:var(--teal);margin:7px 0}.metrics small{font-size:10px;color:var(--muted)}.model-note{border-top:1px solid var(--line);font-size:11px;padding:18px 30px;margin:0}.model-note b{color:#d3ddda}.proposal{display:grid;grid-template-columns:1fr 2.1fr;gap:40px;padding:85px 0 65px}.proposal p{max-width:820px}.large{font-size:21px;color:#d0dbd9}.roadmap,.math,.architecture{border-top:1px solid var(--line);padding:42px 0 55px}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:32px;margin-top:30px}.cards article>span{font:10px ui-monospace,monospace;color:var(--teal)}h3{font-size:21px;font-weight:500;letter-spacing:-.4px}.cards p{font-size:13px}.math h2{margin-top:26px}.formula{display:grid;grid-template-columns:1fr 1.2fr;gap:30px;border-top:1px solid var(--line);padding:22px 0;align-items:center}.formula p{font-size:12px;max-width:410px;margin-bottom:0}.formula b{font-weight:500}.formula code{color:var(--teal);font-size:14px;line-height:1.9;overflow-wrap:anywhere}.sources{font-size:12px}.sources a,.architecture a{color:var(--teal);border-bottom:1px solid #435951}.architecture{display:grid;grid-template-columns:1fr 1fr;gap:80px}.architecture p{font-size:14px}.architecture a{font-size:12px}.control-list>div{border-bottom:1px solid var(--line);padding:15px 0;display:flex;gap:15px;font-size:12px}.control-list b{min-width:90px;font-weight:500}.control-list span{color:var(--muted)}.next{background:#20332f;border-radius:12px;padding:35px;margin:0 0 65px}.next>div{display:grid;grid-template-columns:repeat(3,1fr);gap:35px}.next p{font-size:13px}.next b{color:var(--teal);line-height:2.5}footer{padding:25px 44px;display:flex;justify-content:space-between;color:var(--muted);font-size:11px;border-top:1px solid var(--line)}@media(max-width:1000px){main{padding:0 24px}header{padding:24px}.experiment{grid-template-columns:1fr 250px}.cards{grid-template-columns:1fr 1fr}.architecture{gap:35px}canvas{height:360px}.stage-top{flex-wrap:wrap}.stage-bottom{flex-wrap:wrap}.stage-bottom>span{flex-basis:100%}}@media(max-width:700px){h1{letter-spacing:-3px}.intro{padding-top:40px}.intro-bottom{display:block}.intro-bottom .aside{margin-top:20px}nav{gap:15px;font-size:11px}.brand{font-size:15px}.brand span{margin:0 8px}.experiment{grid-template-columns:1fr}.controls{border-left:0;border-top:1px solid var(--line)}.lab-head{display:block;padding:22px}.tag{display:inline-block;margin:0 0 15px}.lab-description{padding:0 22px 22px}.metrics{grid-template-columns:1fr 1fr;gap:20px;padding:24px}.proposal{grid-template-columns:1fr;gap:18px;padding:55px 0 35px}.formula,.architecture{grid-template-columns:1fr;gap:20px}.formula code{font-size:12px}.cards{gap:22px}.next>div{grid-template-columns:1fr;gap:5px}.next{padding:25px}footer{padding:22px;flex-wrap:wrap;gap:15px}canvas{height:300px;flex:auto}.stage-top{font-size:9px;padding:16px 12px}.stage-bottom{padding:16px 12px}.intro-bottom p{font-size:16px}h2{font-size:28px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
/* Keep canvas layout independent of its device-pixel backing dimensions. */
canvas{flex:0 0 auto;height:420px;min-height:0}
@media(max-width:700px){canvas{height:300px}}

/* OhDeven footer matches the homepage identity and surface treatment. */
.site-footer {
  --amb-albedo: var(--graphite);
  --amb-shade: .63;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 28px;
  padding: 30px clamp(20px, 4vw, 62px);
  color: #bfc4c0;
  font-size: 13px;
}

.site-footer nav {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 14px 24px;
}

.site-footer a { text-underline-offset: 4px; }
.site-footer a:hover { color: #fff; }

.footer-identity {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 12px 18px;
}

.site-footer .footer-brand {
  color: #f4f5f2;
  font-size: clamp(28px, 3vw, 40px);
  text-decoration: none;
}

.site-footer .footer-brand .portrait-letter { border-width: 1.5px; }

.footer-pay-me { margin-right: 3px; }

.footer-archive-link {
  --amb-albedo: #354432;
  display: inline-flex;
  align-items: center;
  gap: 9px;
  padding: 10px 15px;
  color: var(--signal);
  font-weight: 800;
  letter-spacing: .025em;
  text-decoration: none;
  transition: transform .18s ease, color .18s ease;
}

.footer-archive-link::after {
  content: "→";
  transition: transform .18s ease;
}


.site-footer { --graphite:#282c31; --signal:#bbff5a; --violet:#7368ff; --coral:#ff704d; max-width:none; margin-top:64px; border:0; }
.site-footer .brand > span { margin:0; color:inherit; }
.site-footer .brand .portrait-d { margin-left:.12em; }
.site-footer .brand .brand-punctuation { margin-left:.08em; color:var(--signal); }
.site-footer a:focus-visible { outline:2px solid var(--signal); outline-offset:4px; }
@media(max-width:720px) { .site-footer { flex-direction:column; align-items:flex-start; padding:24px; gap:22px; } .site-footer nav { gap:12px 18px; } .site-footer nav a { display:inline-flex; align-items:center; min-height:44px; } }
