:root{color-scheme:dark;font-synthesis:none;text-rendering:optimizelegibility;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{background:#080e0b;min-width:20rem}body{color:#f4f0e7;background:radial-gradient(circle at 22% 8%,#f07c361a,#0000 34rem),linear-gradient(145deg,#101812,#070b09 68%);min-width:20rem;min-height:100dvh;margin:0;overflow-x:clip}button,input{font:inherit}button,a,input[type=range]{-webkit-tap-highlight-color:transparent}a{color:inherit}.stage{--paper:#f4f0e7;--muted:#aaa99f;--line:#f4f0e724;--accent:#ff7134;--observer-x:21%;--observer-y:75%;min-height:100dvh;position:relative}.experience-shell{width:min(100%,112rem);margin-inline:auto;padding:clamp(1rem,2.6vw,2.6rem)}.control-deck{gap:clamp(1.4rem,3vw,3rem);min-width:0;display:grid}.simulation-pane,.explanation-pane{min-width:0}.hero-copy{grid-template-columns:1fr auto;align-items:end;gap:.45rem 1rem;margin-bottom:clamp(1rem,2vw,1.6rem);display:grid}.hero-copy nav{grid-column:1/-1;margin-bottom:clamp(.7rem,2vw,1.4rem)}.hero-copy nav a{color:#f4f0e7d1;letter-spacing:.18em;text-transform:uppercase;border-bottom:1px solid #f4f0e773;padding-block:.3rem;font-size:.72rem;font-weight:700;text-decoration:none;display:inline-block}.hero-copy nav a:hover{border-color:var(--accent);color:#fff}:where(.hero-copy nav a,.trace-aperture,.trace-nav button,.coda-footer button):focus-visible{outline-offset:4px;outline:3px solid #fff8e8}.hero-kicker,.reading-kicker,.arrival-caption,.control-heading label,.model-number{color:#d7c3ab;letter-spacing:.15em;text-transform:uppercase;font-size:clamp(.65rem,1.1vw,.76rem);font-weight:720}.hero-kicker{grid-column:1/-1;margin:0}.hero-copy h1{letter-spacing:-.055em;text-wrap:balance;text-shadow:0 .12em .3em #00000047;max-width:13ch;margin:0;font-size:clamp(2.25rem,6.4vw,5.6rem);font-weight:690;line-height:.9}.instruction{color:#f4f0e7bf;text-align:right;max-width:17rem;margin:0;font-size:clamp(.92rem,1.4vw,1.12rem);line-height:1.45}.bench-wrap{isolation:isolate;aspect-ratio:5/3;background:#315f91;border:1px solid #f4f0e72e;border-radius:clamp(.8rem,1.6vw,1.35rem);width:100%;position:relative;overflow:hidden;box-shadow:0 1.8rem 5rem #00000047,inset 0 1px #ffffff2e}.optical-bench{width:100%;height:100%;display:block}.bench-sky{fill:url(#sky-depth)}.atmospheric-shells{fill:none;stroke:#ffffff1c;stroke-width:2px}.atmospheric-shells path:nth-child(2n){stroke-opacity:.55}.bench-horizon{fill:#0a160f;stroke:#ffdcab24;stroke-width:2px}.bench-ray{stroke-linecap:round;pointer-events:none}.bench-ray-soft{stroke:url(#beam-light);filter:url(#soft-glow)}.bench-ray-core{stroke:#fffbe6;filter:url(#small-glow)}.bench-path{stroke:#ffd08f;filter:url(#soft-glow)}.bench-transmitted{stroke:var(--sun-color);filter:url(#small-glow)}.bench-scattering line{stroke:#86b9ff;stroke-linecap:round;filter:url(#small-glow)}.bench-packet{stroke-linecap:round;filter:url(#small-glow)}.bench-sun-bloom{fill:url(#sun-halo);filter:url(#soft-glow)}.bench-sun-disc{stroke:#ffffffb3;stroke-width:3px;filter:url(#small-glow)}.bench-receiver .receiver-aura{fill:#fff1d71a;stroke:#fff1d766;stroke-width:2px}.bench-receiver .receiver-ring{fill:#0f161294;stroke:#fff8e8;stroke-width:5px}.bench-receiver .receiver-body{fill:#09100c;stroke:#ffffff40;stroke-width:3px}.bench-receiver .receiver-lens{fill:#fffdf1;filter:url(#small-glow)}.bench-receiver line{stroke:#fff8e8e0;stroke-width:2px}.bench-received-halo{fill:var(--sun-color);opacity:.12;filter:url(#soft-glow)}.bench-received circle[data-bench-received-swatch]{stroke:#ffffffd1;stroke-width:3px}.bench-received text,.bench-caption{fill:#ffffffb3;letter-spacing:.13em;font-family:Inter,ui-sans-serif,system-ui,sans-serif;font-size:14px}.bench-received-strong{font-weight:700;fill:#fff!important;letter-spacing:0!important;font-size:17px!important}.bench-caption{font-size:13px}.trace-aperture{z-index:5;aspect-ratio:1;width:clamp(2.75rem,8.2%,5.5rem);color:inherit;cursor:pointer;background:0 0;border:0;border-radius:50%;padding:0;position:absolute;top:76.1%;left:20.83%;translate:-50% -50%}.trace-focus-ring{border:1px solid #0000;border-radius:50%;position:absolute;inset:8%}.trace-aperture:hover .trace-focus-ring,.trace-aperture:focus-visible .trace-focus-ring,.stage.is-trace-ready .trace-focus-ring{border-color:#fff8e8d1;box-shadow:0 0 1.4rem #ffd89a6b}.receiver-hint{color:#ffffffe0;letter-spacing:.08em;text-align:center;text-transform:uppercase;opacity:.76;pointer-events:none;background:#070e0ab8;border:1px solid #fff8e840;border-radius:.25rem;width:max-content;max-width:11rem;padding:.28rem .45rem;font-size:clamp(.52rem,.8vw,.64rem);font-weight:700;line-height:1.25;position:absolute;bottom:calc(100% + .3rem);left:calc(100% + .4rem);translate:0}.stage.is-trace-ready .receiver-hint,.trace-aperture:hover .receiver-hint,.trace-aperture:focus-visible .receiver-hint{opacity:1;translate:0}.portal-field{z-index:4;pointer-events:none;position:absolute;inset:0;overflow:hidden}.portal-particle{width:var(--size);aspect-ratio:1;background:var(--sun-color);opacity:0;border-radius:50%;position:absolute;top:76.1%;left:20.83%;box-shadow:0 0 1rem}.portal-particle:nth-child(3n){width:calc(var(--size) * 2.8);aspect-ratio:5;background:#fff5d9;border-radius:0}.portal-particle:nth-child(4n){background:#83b6ff}.sun-control{border:1px solid var(--line);background:#ffffff0a;border-radius:.8rem;margin-top:1rem;padding:clamp(.9rem,1.8vw,1.25rem)}.control-heading{justify-content:space-between;align-items:baseline;gap:1rem;margin-bottom:.65rem;display:flex}.control-heading label{color:var(--paper)}.rail-value{color:var(--accent);font-variant-numeric:tabular-nums;font-family:ui-monospace,Cascadia Mono,monospace;font-size:clamp(1.25rem,2.2vw,1.75rem);font-weight:750}.sun-control input[type=range]{width:100%;min-height:2.75rem;accent-color:var(--accent);cursor:ew-resize;margin:0}.sun-control input[type=range]:focus-visible{outline-offset:3px;outline:3px solid #fff8e8}.control-scale{color:#f4f0e780;letter-spacing:.11em;text-transform:uppercase;justify-content:space-between;font-size:.64rem;font-weight:650;display:flex}.explanation-pane{border:1px solid var(--line);background:#0d1610e0;border-radius:1rem;align-self:start;padding:clamp(1.2rem,2.3vw,2rem);box-shadow:0 1.5rem 5rem #0003}.reading-head{border-bottom:1px solid var(--line);padding-bottom:clamp(1.2rem,2.5vw,2rem)}.reading-kicker{margin:0 0 .7rem}.rail-output{color:#f7f1e5;max-width:42ch;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.2rem,2.1vw,1.7rem);line-height:1.45;display:block}.horizon-reveal{border-left:3px solid var(--accent);color:#fff7e8;max-height:8rem;opacity:var(--horizon-reveal);background:#ff713417;gap:.25rem;margin:0 0 1rem;padding:.8rem .9rem;display:grid}.horizon-reveal strong{font-size:1rem}.horizon-reveal span{color:#f4f0e7a6;font-size:.8rem}.horizon-reveal[aria-hidden=true]{border-width:0;max-height:0;margin:0;padding-block:0;overflow:hidden}.rail{gap:clamp(1.25rem,2.7vw,2.2rem);margin-top:clamp(1.25rem,2.7vw,2.2rem);display:grid}.arrival{min-width:0;margin:0}.arrival-caption{margin-bottom:.75rem}.arrival-ribbon{border-bottom:1px solid #f4f0e752;grid-template-columns:repeat(6,minmax(0,1fr));align-items:end;gap:.32rem;height:5rem;padding-top:.3rem;display:grid}.arrival-band{align-items:end;height:100%;display:flex}.arrival-band-fill{width:100%;min-height:.18rem;height:calc(var(--band-t) * 100%);background:var(--tint);box-shadow:0 0 1rem color-mix(in srgb, var(--tint), transparent 55%);border-radius:.18rem .18rem 0 0;display:block}.arrival-scale{color:#f4f0e787;justify-content:space-between;gap:1rem;margin-top:.45rem;font-size:.67rem;display:flex}.received-colour{border:1px solid var(--line);background:#ffffff08;border-radius:.65rem;align-items:center;gap:.85rem;padding:.85rem;display:flex}.received-swatch{aspect-ratio:1;background:var(--sun-color);width:2.7rem;box-shadow:0 0 1.4rem color-mix(in srgb, var(--sun-color), transparent 40%);border:2px solid #ffffffbf;border-radius:50%;flex:none}.received-colour small,.received-colour strong{display:block}.received-colour small{color:var(--muted);letter-spacing:.09em;text-transform:uppercase;font-size:.65rem}.received-colour strong{margin-top:.2rem;font-size:.92rem}.plain-guide{border-top:1px solid var(--line);padding-top:clamp(1.2rem,2.5vw,2rem)}.plain-guide h2{letter-spacing:-.03em;max-width:22ch;margin:0;font-size:clamp(1.25rem,2.3vw,1.8rem);font-weight:650;line-height:1.08}.plain-guide ul{gap:0;margin:1rem 0 0;padding:0;list-style:none;display:grid}.plain-guide li{border-top:1px solid var(--line);gap:.35rem;padding:.9rem 0;display:grid}.plain-guide strong{color:#fff8ea;font-size:.92rem;line-height:1.35}.plain-guide span{color:#f4f0e7ab;max-width:52ch;font-size:.8rem;line-height:1.55}.science-panel{border-top:1px solid var(--line);padding-top:clamp(1.2rem,2.5vw,2rem)}.science-heading h2{letter-spacing:-.035em;margin:0;font-size:clamp(1.35rem,2.6vw,2.1rem);font-weight:650;line-height:1.05}.model-strip{gap:0;margin:1.2rem 0 0;padding:0;list-style:none;display:grid}.model-strip li{border-top:1px solid var(--line);gap:.42rem;padding:1rem 0;display:grid}.model-number{color:var(--accent);font-size:.62rem}.model-strip strong{flex-wrap:wrap;justify-content:space-between;gap:.5rem;font-size:.98rem;display:flex}.model-strip output{color:var(--accent);font-variant-numeric:tabular-nums}.model-plain{color:#f4f0e7c2;max-width:54ch;margin:0;font-size:.82rem;line-height:1.55}.model-strip code{overflow-wrap:anywhere;color:#fff8ea;font-family:ui-monospace,Cascadia Mono,monospace;font-size:clamp(.78rem,1.5vw,.98rem);font-weight:650;line-height:1.55}.model-strip small{color:#f4f0e7a3;font-size:.78rem;line-height:1.5}.rail-note{border-top:1px solid var(--line);color:#f4f0e77a;margin:0;padding-top:1rem;font-size:.72rem;line-height:1.5}.visually-hidden{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.footprint-coda{--coda-paper:#e9e8e2;--coda-ink:#16171b;--coda-signal:#e94f37;--coda-electric:#465aff;z-index:20;color:var(--coda-ink);background:radial-gradient(circle at 82% 14%, #465aff21, transparent 28%), radial-gradient(circle at 15% 88%, #e94f371f, transparent 24%), var(--coda-paper);clip-path:circle(0 at var(--observer-x) var(--observer-y));opacity:0;position:fixed;inset:0;overflow-y:auto}.footprint-coda[hidden],.trace-card[hidden]{display:none}.stage.is-coda-open .footprint-coda{clip-path:circle(155vmax at var(--observer-x) var(--observer-y));opacity:1}.coda-grid{pointer-events:none;background-image:linear-gradient(#16171b0f 1px,#0000 1px),linear-gradient(90deg,#16171b0f 1px,#0000 1px);background-size:2rem 2rem;position:absolute;inset:0;mask-image:linear-gradient(#000,#0000 86%)}.coda-shell{z-index:1;width:min(100%,92rem);min-height:100%;padding:max(1rem, env(safe-area-inset-top)) max(1rem, env(safe-area-inset-right)) max(1rem, env(safe-area-inset-bottom)) max(1rem, env(safe-area-inset-left));grid-template-columns:minmax(0,1fr);grid-template-areas:"header""intro""deck""footer";gap:clamp(1rem,4vw,2rem);margin-inline:auto;display:grid;position:relative}.coda-header{border-bottom:1px solid #16171b3d;grid-area:header;justify-content:space-between;align-items:center;gap:1rem;padding-bottom:.75rem;display:flex}.coda-wordmark,.coda-local,.coda-index,.coda-boundary,.trace-card-number{letter-spacing:.11em;text-transform:uppercase;margin:0;font-family:ui-monospace,Cascadia Mono,monospace;font-size:clamp(.62rem,2vw,.76rem)}.coda-wordmark{font-weight:700}.coda-local{color:#16171b94}.coda-intro{grid-area:intro;max-width:40rem}.coda-index{color:var(--coda-signal)}.coda-intro h2{letter-spacing:-.055em;text-wrap:balance;max-width:11ch;margin:.65rem 0 0;font-family:Georgia,Times New Roman,serif;font-size:clamp(2.6rem,12vw,6.6rem);font-weight:400;line-height:.88}.coda-intro h2:focus{outline:none}.coda-lede{max-width:48ch;margin:1rem 0 0;font-size:clamp(.9rem,2.6vw,1.1rem);line-height:1.55}.coda-warning{border-left:.18rem solid var(--coda-signal);color:#16171bc7;max-width:48ch;margin:.85rem 0 0;padding-left:.85rem;font-weight:650;line-height:1.5}.coda-boundary{color:#16171b9e;border-top:1px solid #16171b33;max-width:54ch;margin:1rem 0 0;padding-top:.75rem;line-height:1.5}.trace-deck{grid-area:deck;min-width:0}.trace-card{border-top:.32rem solid var(--coda-signal);background:#fff9;flex-direction:column;justify-content:center;min-height:18rem;padding:clamp(1rem,4vw,2rem);display:flex;position:relative;box-shadow:0 1.4rem 4rem #16171b1a}.trace-card-number{color:var(--coda-signal)}.trace-card h3{letter-spacing:-.035em;max-width:19ch;margin:.8rem 0 0;font-size:clamp(1.3rem,5vw,2.35rem);font-weight:560;line-height:1.04}.trace-hero{color:var(--coda-electric);letter-spacing:-.06em;margin:auto 0;font-family:Georgia,Times New Roman,serif;font-size:clamp(3.2rem,15vw,7.4rem);line-height:.9}.trace-copy,.trace-micro{margin:.8rem 0 0}.trace-copy{color:#16171ba8;max-width:50ch;line-height:1.5}.trace-advice{color:#16171bd1;background:#ffffff6b;border:1px solid #16171b2e;max-width:52ch;margin:1rem 0 0;padding:.85rem 1rem;font-weight:650;line-height:1.5}.trace-micro{color:#16171b80;font-family:ui-monospace,Cascadia Mono,monospace;font-size:.66rem}.trace-facts,.zero-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem;margin:1rem 0 0;display:grid}.trace-facts div,.zero-grid p{border-top:1px solid #16171b38;min-width:0;margin:0;padding-top:.7rem}.trace-facts dt{color:#16171b80;letter-spacing:.08em;text-transform:uppercase;font-size:.62rem}.trace-facts dd{overflow-wrap:anywhere;margin:.3rem 0 0;font-size:clamp(.85rem,3vw,1.16rem);line-height:1.25}.zero-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.zero-grid strong,.zero-grid span{display:block}.zero-grid strong{color:var(--coda-signal);font-family:Georgia,Times New Roman,serif;font-size:clamp(2.8rem,10vw,5rem);font-weight:400;line-height:1}.zero-grid span{color:#16171b94;letter-spacing:.07em;text-transform:uppercase;font-size:.65rem}.trace-nav{grid-template-columns:1fr auto 1fr;align-items:center;gap:.8rem;margin-top:.9rem;display:grid}.trace-nav button,.coda-footer button{min-width:var(--coda-button-min,0);min-height:2.75rem;color:var(--coda-ink);letter-spacing:.08em;text-transform:uppercase;cursor:pointer;background:0 0;border:0;border-bottom:1px solid;padding:.6rem 0;font-size:.7rem}.trace-nav button:first-child{text-align:left}.trace-nav button:last-child{text-align:right}.trace-nav button:disabled{cursor:default;opacity:.3}.trace-nav output{font-variant-numeric:tabular-nums;font-family:ui-monospace,Cascadia Mono,monospace;font-size:.7rem}.coda-footer{--coda-button-min:min(10rem, 100%);flex-wrap:wrap;grid-area:footer;justify-content:space-between;gap:.8rem 1.25rem;display:flex}.coda-erase{color:var(--coda-signal)!important}@media (width>=44rem) and (width<=59.99rem){.model-strip{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.model-strip li{align-content:start}}@media (width>=60rem){.experience-shell{min-height:100dvh}.control-deck{grid-template-columns:minmax(0,3fr) minmax(23rem,2fr);align-items:start}.simulation-pane{align-self:start;position:sticky;top:clamp(1rem,2.6vw,2.6rem)}.hero-copy h1{font-size:clamp(3rem,4.5vw,5.3rem)}.explanation-pane{margin-top:0}.coda-shell{grid-template:"header header""intro deck"minmax(0,1fr)"footer footer"/minmax(18rem,.82fr) minmax(26rem,1.18fr);align-items:center;gap:clamp(1.5rem,3vw,3.5rem)}.trace-deck{border-left:1px solid #16171b3d;align-self:center;padding-left:clamp(1.5rem,3vw,3rem)}.trace-card{min-height:min(52vh,32rem)}}@media (width>=60rem) and (height<=54rem){.experience-shell{padding-block:clamp(.75rem,1.7vh,1.15rem)}.control-deck{min-height:calc(100dvh - clamp(1.5rem,3.4vh,2.3rem))}.simulation-pane{grid-template-rows:max-content minmax(0,1fr) max-content;row-gap:clamp(.65rem,1.4vh,.95rem);height:calc(100dvh - clamp(1.5rem,3.4vh,2.3rem));display:grid}.hero-copy{min-height:max-content;margin-bottom:0}.hero-copy nav{margin-bottom:.3rem}.hero-copy h1{font-size:clamp(2.5rem,4.2vw,4.2rem)}.bench-wrap{aspect-ratio:5/3;background:var(--sky-color);place-self:center;width:auto;max-width:100%;height:100%;min-height:0}.sun-control{margin-top:0;padding:.65rem .9rem}.control-heading{margin-bottom:.15rem}}@media (width<=43.99rem){.experience-shell{padding:.85rem}.hero-copy{grid-template-columns:1fr}.hero-copy h1{max-width:12ch}.instruction{text-align:left;max-width:none}.bench-wrap{border-radius:.7rem}.bench-caption,.bench-received-strong{opacity:0}.bench-received>text:not(.bench-received-strong){opacity:.92;letter-spacing:.04em;font-size:26px;font-weight:700}.sun-control{padding:.85rem}.explanation-pane{padding:1rem}.trace-facts-wide{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=23rem){.hero-copy h1{font-size:2.15rem}.hero-kicker{font-size:.6rem}.coda-local{display:none}}.stage.is-scrubbing .optical-bench *,.stage.is-scrubbing .arrival-band-fill,.stage.is-scrubbing .received-swatch{transition:none}@media (prefers-reduced-motion:no-preference){.footprint-coda{transition:clip-path .72s cubic-bezier(.76,0,.24,1),opacity .18s linear}.receiver-hint,.trace-focus-ring,.arrival-band-fill,.horizon-reveal{transition:opacity .2s ease-out,translate .2s ease-out,box-shadow .2s ease-out,height .2s ease-out}.stage.is-portal-opening .portal-particle{animation:.9s cubic-bezier(.18,.8,.24,1) both portal-burst;animation-delay:var(--delay)}.stage.is-pulsing .bench-packet{animation:.62s ease-out both signal-pulse}}@keyframes portal-burst{0%{opacity:0;transform:translate(-50%,-50%)scale(.3)}22%{opacity:.9}to{opacity:0;transform:translate(calc(-50% + var(--tx)), calc(-50% + var(--ty))) rotate(var(--rot)) scale(1.2)}}@keyframes signal-pulse{0%,to{filter:url(#small-glow)}45%{filter:url(#small-glow)brightness(1.45)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}@media (forced-colors:active){.bench-wrap,.explanation-pane,.sun-control,.received-colour{border:1px solid canvastext}.trace-aperture{border:2px solid buttontext}}
