:root{--bg:#0f0e0d;--bg-raised:#181614;--bg-input:#23201d;--line:#2e2a26;--text:#ece6dc;--text-dim:#a39a8f;--text-faint:#6f675e;--accent:#ffcf96;--ok:#9fd1a5;--bad:#f19a8a;--radius:14px;--serif:"Iowan Old Style", "Palatino Linotype", Palatino, "Book Antiqua", Georgia, serif;--sans:ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--mono:ui-monospace, "SF Mono", Menlo, Consolas, monospace;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{background:var(--bg);min-height:100%;color:var(--text);font:15px/1.55 var(--sans);-webkit-font-smoothing:antialiased;margin:0}a{color:inherit}h1,h2{font-family:var(--serif);letter-spacing:-.01em;margin:0;font-weight:500}.eyebrow{letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin:0 0 .35rem;font-size:.72rem}.tags{flex-wrap:wrap;gap:.35rem;margin:.75rem 0 0;padding:0;list-style:none;display:flex}.tags li{border:1px solid var(--line);color:var(--text-dim);border-radius:999px;padding:.1rem .55rem;font-size:.72rem}.index{max-width:1180px;margin:0 auto;padding:clamp(2rem,6vw,5rem) 16px 4rem}.hero{max-width:44rem;margin-bottom:clamp(2rem,5vw,3.5rem)}.hero h1{background:radial-gradient(circle at 20% 30%,#fff4e4,#ffcf96 45%,#a7876a);color:#0000;-webkit-background-clip:text;background-clip:text;margin-bottom:1rem;font-size:clamp(2.6rem,7vw,4.6rem);line-height:1}.lede{color:var(--text-dim);margin:0;font-size:1.1rem}.support{border:1px solid;border-radius:999px;margin:1.25rem 0 0;padding:.25rem .7rem;font-size:.8rem;display:inline-block}.support.ok{color:var(--ok)}.support.bad{color:var(--bad)}.grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,320px),1fr));gap:1.25rem;margin:0;padding:0;list-style:none;display:grid}.card{background:var(--bg-raised);border:1px solid var(--line);border-radius:var(--radius);flex-direction:column;height:100%;text-decoration:none;transition:transform .25s,border-color .25s;display:flex;overflow:hidden}.card:hover,.card:focus-visible{border-color:#4a433c;transform:translateY(-3px)}.card-art{aspect-ratio:16/10}.card-body{padding:1.1rem 1.2rem 1.3rem}.card-body h2{margin-bottom:.4rem;font-size:1.45rem}.card-body p:not(.eyebrow){color:var(--text-dim);margin:0}.foot{color:var(--text-faint);margin-top:3rem;font-size:.85rem}.experiment{grid-template-columns:minmax(0,1fr) 340px;height:100dvh;display:grid}.stage{background:#000;min-width:0;position:relative}.stage-canvas{touch-action:none;width:100%;height:100%;display:block}.stats{font:11px/1 var(--mono);color:#ffffffbf;pointer-events:none;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#00000059;border-radius:6px;padding:5px 8px;position:absolute;bottom:10px;left:12px}.stage-error{background:#140f0e;padding:2rem;position:absolute;inset:0;overflow:auto}.stage-error h2{color:var(--bad);margin-bottom:1rem}.stage-error pre{font:12px/1.5 var(--mono);white-space:pre-wrap;color:var(--text-dim)}.panel{border-left:1px solid var(--line);background:var(--bg-raised);padding:1.25rem 1.1rem 2rem;overflow-y:auto}.panel-header h1{font-size:1.8rem;line-height:1.15}.panel-header .summary{color:var(--text-dim);margin:.5rem 0 0;font-size:.92rem}.back{color:var(--text-dim);margin-bottom:1.1rem;font-size:.85rem;text-decoration:none;display:inline-block}.back:hover{color:var(--text)}.panel-params{margin-top:1.25rem}.panel-notes{border-top:1px solid var(--line);margin-top:1.75rem;padding-top:1.25rem}.panel-notes h2{margin-bottom:.6rem;font-size:1.15rem}.panel-notes p{color:var(--text-dim);margin:0 0 .8rem;font-size:.88rem}.lit-type-dom{font-family:var(--serif);white-space:nowrap;color:#0000;caret-color:#fff;cursor:text;outline:none;margin:0;font-size:clamp(44px,9.5vw,150px);font-weight:700;line-height:1;position:absolute;top:46%;left:50%;transform:translate(-50%,-50%)}.lit-type-dom::selection{background:#ffcf9659}.lit-type-dom.reveal{color:#ff28288c}.params-group{border:1px solid var(--line);border-radius:10px;margin:0 0 .85rem;padding:.55rem .8rem .7rem}.params-group legend{letter-spacing:.12em;text-transform:uppercase;color:var(--text-faint);padding:0 .35rem;font-size:.72rem}.param{grid-template-columns:7.2rem minmax(0,1fr) auto;align-items:center;gap:.6rem;min-height:1.9rem;font-size:.82rem;display:grid}.param-name{color:var(--text-dim)}.param output{font:11px var(--mono);color:var(--text-faint);text-align:right;min-width:3.2rem}.param select,.param input[type=color],.param input[type=text]{grid-column:span 2}.param-bool input{justify-self:start}.param input[type=range]{width:100%;accent-color:var(--accent)}.param input[type=text]{background:var(--bg-input);min-width:0;color:var(--text);border:1px solid var(--line);font:inherit;border-radius:6px;padding:.2rem .45rem}.param select{background:var(--bg-input);color:var(--text);border:1px solid var(--line);font:inherit;border-radius:6px;padding:.2rem .35rem}.param input[type=color]{border:1px solid var(--line);background:0 0;border-radius:6px;width:100%;height:1.5rem;padding:0}.param input[type=checkbox]{accent-color:var(--accent)}.param-button{background:var(--bg-input);width:100%;color:var(--text-dim);border:1px solid var(--line);font:inherit;cursor:pointer;border-radius:8px;padding:.45rem;font-size:.82rem}.param-button:hover{color:var(--text)}@media (max-width:820px){.experiment{grid-template-columns:1fr;height:auto}.stage{height:62dvh}.panel{border-left:0;border-top:1px solid var(--line)}}@media (prefers-reduced-motion:reduce){.card{transition:none}}
