:root{color-scheme:dark;font-family:Avenir Next,Segoe UI,sans-serif;line-height:1.5;font-weight:400;--shell-width: min(1360px, calc(100vw - 32px) );--shell-v-pad: 16px;--shell-gap: 14px;--panel-pad: 16px;--panel-radius: 22px;--hero-pad-y: 14px;--hero-pad-x: 18px;--hero-radius: 22px;--hero-logo-width: clamp(108px, 10vw, 150px);--button-height: 44px;--stage-height: clamp(320px, 54svh, 620px);--plot-height: 188px;background:radial-gradient(circle at top left,rgba(130,240,210,.14),transparent 34%),radial-gradient(circle at top right,rgba(244,179,95,.1),transparent 28%),linear-gradient(180deg,#09111d,#050a12);color:#e4edf7;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}html,body{min-height:100%}body{margin:0;min-height:100svh}button,input,textarea,select{font:inherit}.page-shell{width:var(--shell-width);min-height:100svh;margin:0 auto;padding:var(--shell-v-pad) 0;display:grid;grid-template-rows:auto minmax(0,1fr);gap:var(--shell-gap)}.hero,.panel{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:linear-gradient(180deg,#0a111ee6,#070c14c7);border:1px solid rgba(148,166,189,.14);box-shadow:0 24px 56px #00000038}.hero{border-radius:var(--hero-radius);padding:var(--hero-pad-y) var(--hero-pad-x);overflow:hidden;position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px 18px;align-items:center;min-height:clamp(98px,12svh,126px)}.hero:after{content:"";position:absolute;inset:auto -12px -48px auto;width:168px;height:168px;border-radius:50%;background:radial-gradient(circle,rgba(130,240,210,.18),transparent 68%);pointer-events:none}.hero-copy{min-width:0;display:grid;gap:6px;z-index:1}.hero-kicker,.formula-title{text-transform:uppercase;letter-spacing:.14em;font-size:.64rem;color:#8fa6bf}.hero-kicker{margin:0}.hero-copy h1,.panel-head h2,.results-plot-head h3{font-family:Iowan Old Style,Palatino Linotype,serif;font-weight:700;letter-spacing:-.03em;margin:0}.hero-copy h1{font-size:clamp(1.9rem,3vw,2.8rem);line-height:.94;max-width:12ch}.hero-text,.panel-detail,.panel-note,.stage-footer,.legend{color:#bed0e2}.hero-text{max-width:42rem;margin:0;font-size:.96rem}.hero-topbar{justify-self:end;align-self:start;z-index:1}.hero-logo{width:var(--hero-logo-width);height:auto;opacity:.92;filter:drop-shadow(0 8px 24px rgba(0,0,0,.22))}.hero-formulas{grid-column:1 / -1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;z-index:1}.formula-row{display:grid;gap:4px;padding:10px 12px;border-radius:14px;background:#0c131fd6;border:1px solid rgba(148,166,189,.14);min-height:0}.formula-row code{display:block;margin:0;font-family:SFMono-Regular,Menlo,monospace;font-size:.92rem;color:#f7fbff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.experience{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(320px,.95fr);gap:var(--shell-gap);min-height:0;align-items:start}.panel{border-radius:var(--panel-radius);padding:var(--panel-pad);min-height:0}.stage-panel{display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:12px}.panel-head{display:grid;gap:8px;min-width:0}.stage-head{grid-template-columns:minmax(0,1fr) minmax(220px,28ch);align-items:end;column-gap:16px}.panel-head h2{font-size:clamp(1.18rem,1.45vw,1.55rem);line-height:1}.panel-head.compact{grid-template-columns:minmax(0,1fr) auto;align-items:start;column-gap:12px}.controls-head{align-items:center}.panel-detail{max-width:28rem;margin:0;font-size:.88rem;line-height:1.45;justify-self:end}.simulation-stage{width:100%;height:var(--stage-height);min-height:var(--stage-height);border-radius:20px;overflow:hidden;cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;background:linear-gradient(180deg,#0e1625e6,#070c15f5),radial-gradient(circle at 20% 10%,rgba(130,240,210,.12),transparent 22%);border:1px solid rgba(148,166,189,.12);box-shadow:inset 0 1px #ffffff08;transition:border-color .18s ease,box-shadow .18s ease}.simulation-stage canvas{display:block;width:100%;height:100%}.simulation-stage.is-dragging{cursor:grabbing}body[data-auto-state=running] .simulation-stage{border-color:#82f0d23d;box-shadow:inset 0 1px #ffffff08,0 0 0 1px #82f0d20f}.stage-footer,.legend,.button-grid,.stats-grid{display:grid}.stage-footer{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;font-size:.82rem;line-height:1.4}.info-rail{display:grid;grid-template-rows:auto auto minmax(0,1fr);gap:12px;align-content:stretch}.rail-section{display:grid;gap:12px;min-height:0}.rail-section+.rail-section{padding-top:12px;border-top:1px solid rgba(148,166,189,.12)}.button-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}button{min-height:var(--button-height);border-radius:999px;border:1px solid transparent;cursor:pointer;transition:transform .14s ease,border-color .14s ease,background-color .14s ease,box-shadow .18s ease,color .14s ease}button:hover{transform:translateY(-1px)}button:active{transform:translateY(0)}button:focus-visible{outline:2px solid rgba(130,240,210,.45);outline-offset:2px}.ghost-button{background:#0f1725c2;border-color:#94a6bd24;color:#e4edf7}.solid-button{background:linear-gradient(180deg,#1f324deb,#121d2deb);color:#f8fbff}.solid-button.alt{background:linear-gradient(180deg,#2a485af5,#162631f5)}.accent-button{background:linear-gradient(135deg,#82f0d2,#4bc7ff);color:#08121d;font-weight:700;box-shadow:0 10px 28px #4bc7ff2e}.accent-button[data-state=running]{background:linear-gradient(135deg,#94f5da,#56d7ff);box-shadow:0 0 0 1px #82f0d238,0 14px 34px #4bc7ff33}.status-chip{padding:8px 12px;border-radius:999px;font-size:.83rem;font-weight:600;border:1px solid rgba(148,166,189,.18);transition:background-color .16s ease,color .16s ease,border-color .16s ease,box-shadow .16s ease}.status-chip[data-state=paused]{background:#7488a01f;color:#c5d0dc}.status-chip[data-state=running]{background:#82f0d229;color:#9cf7df;border-color:#82f0d247;box-shadow:0 0 0 1px #82f0d214;animation:statusPulse 1.6s ease-in-out infinite}.panel-note{margin:0;font-size:.82rem;line-height:1.45}.inline-note{max-width:17rem;text-align:right}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}#estimate-note{transition:color .18s ease,opacity .18s ease}#estimate-note[data-state=live]{color:#d7f8ef}.stats-panel{align-content:start}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 14px;margin:0}.stats-grid div{min-width:0;padding-top:8px;border-top:1px solid rgba(148,166,189,.12)}.stats-grid dt{font-size:.76rem;line-height:1.35;color:#8fa6bf}.stats-grid dd{margin:6px 0 0;font-size:clamp(1.12rem,1.5vw,1.5rem);font-weight:700;letter-spacing:-.03em;color:#f6fbff;transform-origin:left center}body[data-auto-state=running] .stats-grid dd{text-shadow:0 0 22px rgba(130,240,210,.08)}.stats-grid dd.is-fresh{animation:metricFlash .52s ease}.stats-grid .wide{grid-column:1 / -1}#pi-estimate{font-size:clamp(1.28rem,1.75vw,1.72rem)}.results-plot{grid-template-rows:auto minmax(0,1fr)}.plot-panel{align-content:stretch}.results-plot-head{display:grid;gap:8px;align-content:start}.results-plot-head h3{margin-top:2px;font-size:1rem;font-weight:600;color:#f6fbff}.legend{grid-auto-flow:column;justify-content:start;align-items:center;gap:14px;font-size:.78rem}.legend-item{display:inline-flex;align-items:center;gap:8px;white-space:nowrap}.legend-line{width:24px;height:2px;display:inline-block;border-radius:999px}.legend-line.estimate{background:#82f0d2}.legend-line.truth{background:#f4b35f}.plot-canvas{width:100%;height:var(--plot-height);min-height:var(--plot-height);max-height:var(--plot-height);border-radius:16px;display:block;background:#080e18b8}@keyframes statusPulse{0%,to{box-shadow:0 0 0 1px #82f0d214}50%{box-shadow:0 0 0 1px #82f0d21a,0 0 0 6px #82f0d214}}@keyframes metricFlash{0%{color:#f6fbff;transform:scale(1)}35%{color:#82f0d2;transform:scale(1.025);text-shadow:0 0 18px rgba(130,240,210,.22)}to{color:#f6fbff;transform:scale(1)}}@media(max-height:820px)and (min-width:1025px){:root{--shell-v-pad: 12px;--shell-gap: 12px;--panel-pad: 14px;--hero-pad-y: 12px;--hero-pad-x: 16px;--hero-logo-width: clamp(96px, 9vw, 128px);--button-height: 40px;--stage-height: clamp(280px, 48svh, 460px);--plot-height: 168px}.hero{min-height:clamp(92px,11svh,112px)}.hero-copy h1{font-size:clamp(1.72rem,2.6vw,2.35rem)}.hero-text{font-size:.9rem}.formula-row{padding:8px 10px}.formula-row code{font-size:.86rem}.stage-head{grid-template-columns:minmax(0,1fr) minmax(200px,24ch)}.panel-detail{font-size:.82rem}.stage-footer{font-size:.78rem}.stats-grid dd{font-size:clamp(1.02rem,1.25vw,1.32rem)}#pi-estimate{font-size:clamp(1.18rem,1.45vw,1.48rem)}}@media(max-width:1180px){.experience{grid-template-columns:minmax(0,1.35fr) minmax(300px,.95fr)}.stage-head,.panel-head.compact{grid-template-columns:1fr}.panel-detail,.inline-note{justify-self:start;max-width:none;text-align:left}.legend{grid-auto-flow:row;justify-items:start}}@media(max-width:1024px){:root{--shell-width: min(100vw - 24px, 1280px);--shell-v-pad: 18px;--panel-pad: 18px;--stage-height: clamp(320px, 54vh, 520px);--plot-height: 204px}.page-shell{min-height:auto}.hero{grid-template-columns:1fr}.hero-topbar{justify-self:start}.hero-formulas,.experience,.stage-footer,.button-grid,.stats-grid{grid-template-columns:1fr}.experience,.panel,.stage-panel,.info-rail{min-height:auto}.info-rail{grid-template-rows:none}.simulation-stage{min-height:var(--stage-height);height:var(--stage-height)}.plot-canvas{min-height:var(--plot-height);max-height:var(--plot-height);height:var(--plot-height)}}@media(max-width:720px){:root{--shell-width: min(100vw - 16px, 1280px);--shell-v-pad: 14px;--shell-gap: 10px;--panel-pad: 16px;--hero-pad-y: 14px;--hero-pad-x: 14px;--button-height: 44px;--stage-height: clamp(280px, 48vh, 420px);--plot-height: 190px}.hero{min-height:auto}.hero-copy h1{font-size:clamp(1.7rem,11vw,2.3rem)}.hero-logo{width:min(42vw,140px)}.formula-row code{white-space:normal}.stage-footer{font-size:.8rem}}@media(prefers-reduced-motion:reduce){button,.simulation-stage,.status-chip,#estimate-note,.stats-grid dd{transition:none;animation:none}button:hover,button:active{transform:none}}
