@font-face{font-family:Fixel;src:url('./fonts/FixelVariable.woff2') format('woff2');font-weight:100 900;font-display:swap}
:root{--floor:#d8ed82;--ink:#20231e;--paper:#f9f7ed;--orange:#f67c47;--purple:#b8a5d5;--shadow:7px;--app-screen:100svh;color:var(--ink);font-family:Fixel,Arial,sans-serif;font-synthesis:none}
*{box-sizing:border-box}body{margin:0;background:var(--floor)}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible{outline:3px dashed var(--ink);outline-offset:8px}button{border:0}button:disabled{cursor:wait}[hidden]{display:none!important}.world{height:var(--app-screen);min-height:680px;position:relative;overflow:hidden;isolation:isolate}.floor{position:absolute;inset:0;z-index:-1;background-image:radial-gradient(#50643c30 .8px,transparent .8px);background-size:20px 20px}.floor:after{content:"";position:absolute;inset:19px;border:1px solid #20231e25;pointer-events:none}.header{position:absolute;top:58px;left:4.2%;right:4.2%;display:flex;align-items:center;justify-content:space-between;gap:40px}.brand{display:flex;align-items:center;gap:10px;font-size:25px;font-weight:850;letter-spacing:-1.2px;height:40px}.brand svg{width:27px;height:27px;fill:currentColor;transform:rotate(-9deg)}.brand>span{font-size:12px;align-self:flex-start;letter-spacing:0;margin-left:-6px}.header nav{display:flex;gap:38px;margin-left:auto;margin-right:40px}.nav-button{background:transparent;padding:11px 0;font-size:14px;font-weight:600}.nav-button>span{font-size:10px;margin-left:8px;vertical-align:top;opacity:.6}.button{position:relative;display:inline-flex;align-items:center;justify-content:space-between;gap:32px;min-height:59px;padding:0 25px;background:var(--paper);border:2px solid var(--ink);box-shadow:var(--shadow) var(--shadow) 0 var(--ink);font-size:14px;font-weight:650;white-space:nowrap;transition:background .16s,transform .12s,box-shadow .12s}.button:hover{background:#fffef5}.button.is-held{background:#f0e8ff}.button.is-pressed{transform:translate(var(--shadow),var(--shadow));box-shadow:0 0 0 var(--ink)}.menu-button{min-height:42px;width:46px;padding:0;justify-content:center;--shadow:4px}.menu-lines{width:16px;height:8px;border-top:2px solid;border-bottom:2px solid}.hero{position:absolute;top:25%;left:50%;transform:translateX(-50%);width:max-content;max-width:80%;text-align:center}.eyebrow{width:max-content;margin:0 auto 29px;font-size:10px;font-weight:600;letter-spacing:1.7px;display:flex;align-items:center;gap:9px;line-height:18px}.live-dot{display:inline-block;width:6px;height:6px;background:currentColor;border-radius:50%;flex-shrink:0}h1{font-size:clamp(68px,6.9vw,122px);line-height:1.02;letter-spacing:-.075em;font-weight:760;margin:0}.title-line{display:table;margin:0 auto;position:relative}.title-line+.title-line{margin-top:5px}.period{color:#d05f3b}.description{display:table;margin:29px auto 0;font-size:15px;line-height:1.7;font-weight:450;letter-spacing:-.2px}.hero-actions{display:flex;justify-content:center;gap:26px;margin-top:62px}.primary{background:var(--ink);color:var(--paper);box-shadow:7px 7px 0 #f67c47;border-color:var(--ink)}.primary:hover{background:#343a2c}.primary.is-held{background:#3c4830}.primary.is-pressed{box-shadow:0 0 0 #f67c47}.primary svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8}.secondary{background:transparent}.secondary>span+span{display:grid;place-items:center;width:19px;height:19px;border:1.5px solid;border-radius:50%;font-size:12px}.hero-caption{display:flex;gap:8px;justify-content:center;margin-top:25px;font-size:8px;letter-spacing:1px;opacity:.55}.prop{position:absolute;border:2px solid var(--ink);box-shadow:8px 9px 0 var(--ink)}.radio{left:7%;top:55%;width:158px;padding:12px;background:var(--purple);transform:rotate(-12deg);border-radius:10px}.radio-top{display:flex;justify-content:space-between;gap:10px;font-family:monospace;font-size:7px;font-weight:700}.radio-face{display:flex;justify-content:space-between;margin:15px 0 12px;gap:12px}.speaker{width:81px;height:75px;border:2px solid;border-radius:50%;background:repeating-linear-gradient(0deg,var(--ink) 0 2px,transparent 2px 5px)}.radio-controls{display:flex;flex-direction:column;align-items:center;gap:7px}.dial{width:25px;height:25px;border-radius:50%;border:2px solid;background:var(--paper);box-shadow:2px 2px 0;position:relative}.dial:after{content:"";position:absolute;width:2px;height:7px;background:var(--ink);top:2px;left:9px}.radio-controls i{width:15px;height:5px;background:var(--ink);border-radius:1px}.radio-bottom{border-top:1px solid;padding-top:7px;display:flex;justify-content:space-between;font-size:8px;font-weight:750;letter-spacing:1px}.crate{right:6%;top:59%;width:144px;height:137px;background:var(--orange);transform:rotate(11deg);padding:13px}.crate:before{content:"";position:absolute;top:0;bottom:0;left:48%;width:20px;border-left:1px solid #20231e55;border-right:1px solid #20231e55;background:#fff1}.crate-label{position:relative;display:block;font-size:25px;font-weight:800;line-height:.96;letter-spacing:-1.5px}.crate-mark{position:absolute;bottom:24px;right:12px;font-size:30px;font-weight:700}.crate-id{position:absolute;bottom:9px;font-family:monospace;font-size:5px;letter-spacing:.1px}.floor-mark{position:absolute;opacity:.35;font-family:monospace;font-size:22px}.mark-one{left:22%;top:20%}.mark-two{right:23%;top:79%}.coordinates{position:absolute;right:4.2%;top:39%;writing-mode:vertical-rl;font-size:9px;font-family:monospace;letter-spacing:1px;opacity:.5}.footer{position:absolute;bottom:42px;left:4.2%;right:4.2%;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:10px}.companion-status{display:flex;align-items:center;gap:9px;letter-spacing:1px;min-width:220px}.instruction{display:flex;align-items:center;gap:10px;font-size:11px;opacity:.65}.instruction svg{width:14px;height:17px;fill:none;stroke:currentColor;stroke-width:1.5;transform:rotate(-12deg)}.debug-toggle{background:transparent;font-size:9px;letter-spacing:1px;padding:8px 0}.debug-toggle span{margin-left:12px}.debug-toggle[aria-pressed=true]{text-decoration:underline}#scene{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:30}.panel{position:absolute;right:6%;top:22%;width:360px;max-width:80vw;background:var(--paper);border:2px solid;box-shadow:10px 10px 0;padding:27px;z-index:40}.panel-index{font-size:8px;letter-spacing:1.2px}.panel h2{font-size:35px;line-height:1.05;letter-spacing:-1.7px;margin:23px 0 17px}.panel p{font-size:13px;line-height:1.7;margin:0 0 24px}.panel-close{min-height:47px;width:100%;font-size:12px;padding:0 16px;--shadow:4px}.toast{position:absolute;left:50%;bottom:91px;transform:translate(-50%,8px);padding:11px 18px;background:var(--ink);color:var(--paper);font-size:11px;opacity:0;transition:opacity .2s,transform .2s;z-index:45;pointer-events:none}.toast.visible{opacity:1;transform:translate(-50%,0)}.desktop-note{display:none}.no-script{position:absolute;bottom:85px;left:30px;font-size:12px}
@media(min-width:1700px){.hero{top:26%}.radio{left:10%;top:54%}.crate{right:9%}}@media(max-height:800px) and (min-width:1000px){.hero{top:23%}h1{font-size:clamp(65px,6.4vw,94px)}.eyebrow{margin-bottom:22px}.description{margin-top:22px}.hero-actions{margin-top:60px}.radio{left:4%;width:132px}.speaker{width:65px;height:65px}.crate{right:4%;width:120px;height:125px}.crate-label{font-size:23px}.hero-caption{margin-top:19px}}
@media(max-width:1050px){.radio{left:4%;top:67%;width:120px;padding:9px}.speaker{width:59px;height:59px}.radio-controls{gap:4px}.radio-top{font-size:6px}.radio-face{gap:7px;margin:10px 0}.radio-bottom{font-size:6px}.crate{right:5%;top:68%;width:110px;height:110px}.crate-label{font-size:22px}.crate-mark{font-size:23px}.crate-id{font-size:4px}.hero{top:27%;max-width:85%}h1{font-size:8vw}.header nav{margin-right:10px;gap:22px}.instruction{display:none}}
@media(pointer:coarse),(max-width:700px){.desktop-note{display:block;position:absolute;left:50%;bottom:90px;transform:translateX(-50%);width:90%;text-align:center;font-size:12px;line-height:1.6}.header{top:30px}.brand{font-size:20px}.brand svg{width:22px}.header nav{display:none}.hero{top:28%;max-width:92%}.eyebrow{font-size:7px;letter-spacing:.8px}h1{font-size:9vw}.description{font-size:12px}.hero-actions{gap:15px;flex-wrap:wrap}.button{min-height:49px;padding:0 16px;font-size:12px;gap:18px}.menu-button{min-height:38px;padding:0}.radio,.crate,.hero-caption,.coordinates{display:none}.footer{bottom:30px;font-size:8px}.companion-status{min-width:0;font-size:8px}.debug-toggle{font-size:7px}.panel{right:8%;top:18%;padding:22px}.toast{bottom:135px;width:max-content;max-width:90%;text-align:center}}
