:root{font-family:var(--brand-font-body);color:var(--brand-text);background:var(--brand-background)}*{box-sizing:border-box}body{margin:0;overflow:hidden}#viewport{touch-action:none;width:100%;height:100%;position:fixed;inset:0}header,main,footer,#bench,#toast{z-index:1;position:fixed}header{background:linear-gradient(180deg, var(--brand-background), transparent);justify-content:space-between;align-items:center;gap:24px;padding:22px 28px;display:flex;inset:0 0 auto}.brand-link{color:var(--brand-text);align-items:center;gap:18px;min-width:0;text-decoration:none;display:flex}.brand-wordmark{font:700 19px/1 var(--brand-font-display);letter-spacing:-.025em;white-space:nowrap}#brand-logo{object-fit:contain;width:min(170px,32vw);max-height:45px}.brand-label{border-left:1px solid var(--brand-border);font:700 10px/1.45 var(--brand-font-body);letter-spacing:.15em;color:var(--brand-muted);padding-left:17px}[hidden]{display:none!important}button{border:1px solid var(--brand-accent);background:var(--brand-accent);color:var(--brand-accent-text);font:700 13px/1.2 var(--brand-font-body);cursor:pointer;border-radius:7px;padding:10px 16px;transition:transform .15s,box-shadow .15s}button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 7px 20px #0004}button:focus-visible,a:focus-visible{outline:3px solid var(--brand-accent);outline-offset:4px}button:disabled{opacity:.55;cursor:default}main{width:min(470px,100vw - 48px);color:var(--brand-text);background:color-mix(in srgb, var(--brand-background) 87%, transparent);border:1px solid var(--brand-border);border-top:4px solid var(--brand-accent);-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);border-radius:10px;max-height:46dvh;padding:28px;top:18vh;left:clamp(24px,6vw,88px);overflow:auto;box-shadow:0 15px 45px #0004}.eyebrow{color:var(--brand-accent);font:700 10px/1.3 var(--brand-font-body);letter-spacing:.18em}h1{font:700 clamp(34px, 3.8vw, 56px)/1.05 var(--brand-font-display);letter-spacing:-.04em;margin:17px 0}h1 em{color:var(--brand-accent);font-style:normal}.lede{color:var(--brand-muted);font-size:15px;line-height:1.6}.card{border:1px solid var(--brand-border);background:var(--brand-surface);border-radius:7px;gap:7px;margin-top:25px;padding:16px 18px;font-size:13px;line-height:1.45;display:grid}.card b{color:var(--brand-accent);text-transform:uppercase;letter-spacing:.13em;font-size:10px}.card span{color:var(--brand-muted)}#bench{width:min(360px,42vw);max-height:calc(100dvh - 190px);color:var(--brand-text);background:color-mix(in srgb, var(--brand-background) 87%, transparent);border:1px solid var(--brand-border);border-top:4px solid var(--brand-accent);-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);border-radius:10px;padding:18px;top:96px;right:clamp(16px,2vw,26px);overflow:auto;box-shadow:0 15px 45px #0004}#settings{gap:8px;margin-bottom:14px;display:grid}#settings h2{font:700 10px/1.3 var(--brand-font-body);letter-spacing:.18em;color:var(--brand-accent);margin:0}#settings button{text-align:left;width:100%}#settings button[aria-pressed=true]{box-shadow:inset 0 0 0 2px var(--brand-accent-text)}#readout{border:1px solid var(--brand-border);background:var(--brand-surface);border-radius:7px;grid-template-columns:max-content 1fr;gap:4px 14px;margin:0;padding:14px 16px;font-size:12px;display:grid}#readout dt{color:var(--brand-muted);letter-spacing:.06em;text-transform:uppercase;align-self:center;font-size:10px}#readout dd{color:var(--brand-text);font-variant-numeric:tabular-nums;overflow-wrap:anywhere;margin:0}#stations{gap:2px;margin:18px 0 0;padding:0;list-style:none;display:grid}#stations li{color:var(--brand-muted);border-radius:5px;grid-template-columns:20px max-content 1fr;align-items:baseline;gap:4px 10px;padding:6px 8px;font-size:12px;display:grid}#stations .mark{color:var(--brand-muted);font-size:13px}#stations b{color:var(--brand-muted);font-weight:600}#stations .hint{color:var(--brand-muted);opacity:.75}#stations li.done{background:color-mix(in srgb, var(--brand-accent) 12%, transparent)}#stations li.done .mark,#stations li.done b{color:var(--brand-accent)}#stations li.done .hint{display:none}footer{color:var(--brand-text);background:var(--brand-background);border:1px solid var(--brand-border);border-radius:7px;padding:10px 13px;font-size:12px;bottom:20px;left:28px}#toast{background:var(--brand-background);border:1px solid var(--brand-border);max-width:280px;color:var(--brand-text);opacity:0;border-radius:7px;padding:12px 14px;transition:opacity .2s,transform .2s;bottom:22px;right:26px;transform:translateY(8px)}#toast.visible{opacity:1;transform:none}@media (width<=900px){main{max-height:28dvh}#bench{width:auto;max-height:40dvh;inset:auto clamp(16px,2vw,26px) 74px clamp(24px,6vw,88px)}}@media (width<=650px){header{gap:12px;padding:16px}.brand-label{display:none}main{width:calc(100vw - 32px);max-height:26dvh;padding:20px;top:14vh;left:16px}#bench{padding:14px;bottom:66px;left:16px;right:16px}footer{text-align:center;bottom:14px;left:16px;right:16px}#toast{right:16px}}@media (prefers-reduced-motion:reduce){button,#toast{transition:none}}#panel-controls{border:1px solid var(--brand-border);border-radius:12px;margin:0 0 16px;padding:12px}#panel-controls summary{cursor:pointer;padding:6px 0;font-weight:700}#panel-controls details{border-top:1px solid var(--brand-border);margin-top:12px;padding-top:8px}#panel-controls button{margin:4px;padding:8px;font-size:12px}#panel-controls p{white-space:pre-line;font-size:13px;line-height:1.5}body.panel-preview main,body.panel-preview #bench,body.panel-preview header,body.panel-preview footer{display:none}#panel-focus{z-index:3;position:fixed;bottom:18px;right:28px}.desktop-reticle{z-index:2;pointer-events:none;grid-template-rows:28px auto auto;place-content:center;justify-items:center;gap:10px;display:grid;position:fixed;inset:0}.desktop-reticle svg{fill:none;width:28px;height:28px;stroke:var(--brand-text);stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 2px #000000a6);opacity:.85;transition:opacity .12s,transform .12s}.desktop-reticle [data-glyph]{display:none}.desktop-reticle[data-state=idle] [data-glyph=idle],.desktop-reticle[data-state=use] [data-glyph=use],.desktop-reticle[data-state=grab] [data-glyph=grab],.desktop-reticle[data-state=holding] [data-glyph=holding],.desktop-reticle[data-state=far] [data-glyph=far]{display:block}.desktop-reticle[data-state=idle] svg{opacity:.5}.desktop-reticle[data-state=grab] svg{stroke:var(--brand-accent);opacity:1;transform:scale(1.06)}.desktop-reticle[data-state=holding] svg{stroke:var(--brand-accent);opacity:1}.desktop-reticle[data-state=far] svg{opacity:.38}.desktop-reticle-label,.desktop-reticle-hint{text-align:center;text-shadow:0 1px 3px #000c;min-height:1em;margin:0}.desktop-reticle-label{font:600 13px/1.3 var(--brand-font-body);color:var(--brand-text)}.desktop-reticle-hint{font:700 10px/1.4 var(--brand-font-body);letter-spacing:.14em;text-transform:uppercase;color:var(--brand-muted)}.desktop-reticle[data-state=idle] .desktop-reticle-label,.desktop-reticle[data-state=idle] .desktop-reticle-hint{opacity:0}.desktop-capture{z-index:2;text-align:center;pointer-events:none;max-width:min(42ch,90vw);color:var(--brand-text);border:1px solid color-mix(in srgb, var(--brand-border) 60%, transparent);background:color-mix(in srgb, var(--brand-background) 78%, transparent);-webkit-backdrop-filter:blur(6px);border-radius:14px;flex-direction:column;align-items:center;gap:10px;padding:18px 26px;display:flex;position:fixed;top:62%;left:50%;transform:translate(-50%,-50%)}.desktop-capture-title{font:700 clamp(17px, 2.4vw, 23px)/1.15 var(--brand-font-display);letter-spacing:-.02em}.desktop-capture-lines{font:700 10px/1.8 var(--brand-font-body);letter-spacing:.14em;text-transform:uppercase;color:var(--brand-muted)}body.xr-active .desktop-reticle,body.xr-active .desktop-capture{display:none}@media (prefers-reduced-motion:reduce){.desktop-reticle svg{transition:none}}#desk{z-index:1;background:color-mix(in srgb,var(--brand-background) 94%,transparent);border:1px solid var(--brand-border);border-top:4px solid var(--brand-accent);border-radius:10px;gap:14px;width:min(340px,40vw);max-height:calc(100dvh - 150px);padding:16px;display:grid;position:fixed;top:88px;right:clamp(12px,1.6vw,22px);overflow:auto;box-shadow:0 15px 45px #0004}#desk h2{font:700 11px/1.3 var(--brand-font-body);letter-spacing:.16em;text-transform:uppercase;color:var(--brand-accent);margin:0 0 8px}#desk section,#desk form{gap:8px;display:grid}#desk textarea,#desk input:not([type=file]){width:100%;font:14px/1.45 var(--brand-font-body);color:var(--brand-text);background:var(--brand-surface);border:1px solid var(--brand-border);resize:vertical;border-radius:7px;padding:9px 10px}#desk textarea:focus,#desk input:focus{outline:2px solid var(--brand-accent);outline-offset:1px}#command-form{grid-template-columns:1fr auto}#device-form{grid-template-columns:1fr}#desk select{width:100%;font:14px/1.45 var(--brand-font-body);color:var(--brand-text);background:var(--brand-surface);border:1px solid var(--brand-border);border-radius:7px;padding:8px 10px}.device-list{gap:6px;margin:0;padding:0;list-style:none;display:grid}.device-list:empty{display:none}.device-list li{color:var(--brand-text);flex-wrap:wrap;align-items:center;gap:6px;font-size:13px;display:flex}.device-list li span{flex:100%}.device-list button{padding:5px 9px;font-size:12px}.row{flex-wrap:wrap;gap:8px;display:flex}.chips{flex-wrap:wrap;gap:6px;display:flex}.chips button{padding:6px 10px;font-size:12px}button.secondary,.file-button{color:var(--brand-accent);border:1px solid var(--brand-accent);background:0 0}button.ghost{color:var(--brand-muted);border:1px solid var(--brand-border);background:0 0}.file-button{font:700 13px/1.2 var(--brand-font-body);cursor:pointer;border-radius:7px;align-items:center;padding:10px 16px;display:inline-flex}.hint,.muted{color:var(--brand-muted);margin:0;font-size:12px;line-height:1.45}#voice-commands{color:var(--brand-muted);margin-top:8px;font-size:12px;line-height:1.45}#voice-commands summary{cursor:pointer;color:var(--brand-accent);font-weight:600}#voice-commands dl{margin:6px 0 0}#voice-commands dt{color:inherit;margin-top:6px;font-weight:700}#voice-commands dd{margin:2px 0 0}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}footer{color:var(--brand-muted);background:linear-gradient(0deg,var(--brand-background),transparent);pointer-events:none;padding:10px 20px;font-size:12px;inset:auto 0 0}body.xr-active #desk,body.xr-active footer{display:none}body.dragging #viewport{outline:4px dashed var(--brand-accent);outline-offset:-8px}@media (width<=760px){#desk{width:calc(100vw - 24px);max-height:42dvh;top:auto;bottom:40px}}.header-actions{align-items:center;gap:10px;display:flex}body.desk-hidden #desk,body.xr-active #toggle-desk{display:none}.coach{z-index:3;width:min(560px,100vw - 32px);color:var(--brand-text);background:color-mix(in srgb,var(--brand-background) 96%,transparent);border:1px solid var(--brand-accent);border-radius:14px;gap:8px;padding:12px 14px 14px 18px;transition:border-color .25s,box-shadow .25s;display:grid;position:fixed;bottom:52px;left:50%;transform:translate(-50%);box-shadow:0 14px 40px #0006}body:not(.desk-hidden) .coach{left:calc(50vw - min(340px,40vw)/2 - 12px)}.coach-top{align-items:center;gap:12px;display:flex}.coach-count{font:700 10px/1 var(--brand-font-body);letter-spacing:.16em;text-transform:uppercase;color:var(--brand-muted);white-space:nowrap}.coach-track{background:color-mix(in srgb,var(--brand-text) 14%,transparent);border-radius:2px;flex:1;height:4px;overflow:hidden}.coach-track span{background:var(--brand-accent);border-radius:2px;width:0;height:100%;transition:width .5s,background-color .25s;display:block}.coach-end{width:28px;height:28px;font:400 20px/1 var(--brand-font-body);color:var(--brand-muted);background:0 0;border:1px solid #0000;border-radius:7px;flex:none;place-items:center;padding:0;display:grid}.coach-end:hover:not(:disabled){box-shadow:none;color:var(--brand-text);border-color:var(--brand-border);transform:none}.coach-body{align-items:center;gap:14px;display:flex}.coach-line{flex:1;align-items:center;min-height:2.9em;margin:0;font-size:15px;line-height:1.45;display:flex}.coach-line b{color:var(--brand-accent);font-weight:700}.coach-skip{flex:none;padding:8px 14px}.coach.enter{animation:.38s cubic-bezier(.2,.8,.2,1) coach-in}.coach.is-done{border-color:#30d158;box-shadow:0 14px 40px #0006,0 0 0 3px #30d15838}.coach.is-done .coach-line b{color:#30d158}.coach.is-done .coach-track span{background:#30d158}@keyframes coach-in{0%{opacity:0;transform:translate(-50%,10px)}to{opacity:1;transform:translate(-50%)}}.tour-focus{position:relative}.tour-focus:after{content:"";border:2px solid var(--brand-accent);pointer-events:none;border-radius:8px;animation:1.6s ease-in-out infinite tour-focus;position:absolute;inset:-6px}@keyframes tour-focus{50%{opacity:.3}}.tour-scrim{z-index:4;background:color-mix(in srgb,var(--brand-background) 62%,transparent);animation:.3s tour-fade;position:fixed;inset:0}.tour-card{z-index:5;width:min(520px,100vw - 32px);max-height:calc(100dvh - 48px);color:var(--brand-text);background:var(--brand-background);border:1px solid var(--brand-border);border-top:4px solid var(--brand-accent);border-radius:14px;padding:26px 28px 24px;animation:.4s cubic-bezier(.2,.8,.2,1) tour-card-in;position:fixed;top:50%;left:50%;overflow:auto;transform:translate(-50%,-50%);box-shadow:0 24px 70px #0008}.tour-card .eyebrow{margin:0 0 8px}.tour-card h2{font:700 clamp(24px,3vw,30px)/1.15 var(--brand-font-display);letter-spacing:-.02em;margin:0 0 8px}.tour-card-lede{color:var(--brand-muted);margin:0 0 16px;font-size:15px;line-height:1.55}.tour-card[data-card=finish]{width:min(860px,100vw - 32px)}.tour-card-sections{gap:18px 32px;margin:0 0 16px;display:grid}.tour-card[data-card=finish] .tour-card-sections{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.tour-card[data-card=finish] .tour-card-sections section:first-child{grid-row:span 2}.tour-card-sections h3{font:700 10px/1.3 var(--brand-font-body);letter-spacing:.16em;text-transform:uppercase;color:var(--brand-muted);margin:0 0 6px}.tour-card-sections dl{border-top:1px solid color-mix(in srgb,var(--brand-border) 45%,transparent);grid-template-columns:max-content 1fr;margin:0;display:grid}.tour-card-sections dt,.tour-card-sections dd{border-bottom:1px solid color-mix(in srgb,var(--brand-border) 45%,transparent);margin:0;padding:8px 0;font-size:14px;line-height:1.4}.tour-card-sections dt{color:var(--brand-accent);white-space:nowrap;padding-right:18px;font-weight:700}.tour-card-sections dd{color:var(--brand-text)}.tour-card-sections .hint{margin:8px 0 0}.tour-card .hint{margin:0 0 16px}.tour-card-actions{flex-wrap:wrap;gap:10px;display:flex}.tour-card-actions button{flex:160px;padding:12px 16px;font-size:14px}.tour-glyph{border:1.5px solid;border-radius:50%;place-items:center;width:17px;height:17px;margin-right:4px;font-size:11px;line-height:1;display:inline-grid}@keyframes tour-card-in{0%{opacity:0;transform:translate(-50%,calc(14px - 50%))scale(.98)}to{opacity:1;transform:translate(-50%,-50%)}}@keyframes tour-fade{0%{opacity:0}}body.landing .coach,body.landing .tour-card,body.landing .tour-scrim,body.xr-active .coach,body.xr-active .tour-card,body.xr-active .tour-scrim{display:none}.landing-tour{color:var(--brand-muted);margin:22px 0 0;font-size:13px;line-height:1.5}@media (width<=760px){.coach,body:not(.desk-hidden) .coach{top:76px;bottom:auto;left:50%}.tour-card-sections dl{grid-template-columns:1fr}.tour-card-sections dt{border-bottom:0;padding-bottom:0}.tour-card[data-card=finish] .tour-card-sections section:first-child{grid-row:auto}}@media (prefers-reduced-motion:reduce){.coach.enter,.tour-card{animation:.25s tour-fade}.tour-focus:after{animation:none}.coach,.coach-track span{transition:none}}#landing{z-index:5;background:var(--brand-background);color:var(--brand-text);place-items:center;padding:48px 24px;display:grid;position:fixed;inset:0;overflow:auto}.landing-inner{text-align:center;justify-items:center;width:min(640px,100%);display:grid}#landing .eyebrow{margin:0}#landing h1{margin:14px 0 18px;font-size:clamp(40px,6vw,64px)}#landing .lede{max-width:54ch;margin:0 0 34px;font-size:16px}#launch{border-radius:9px;padding:16px 36px;font-size:16px}.launch-note{min-height:1.45em;color:var(--brand-muted);margin:14px 0 0;font-size:13px;line-height:1.45}button.link{color:var(--brand-accent);text-underline-offset:3px;background:0 0;border:0;margin-top:6px;padding:6px 8px;font-weight:600;text-decoration:underline}button.link:hover:not(:disabled){box-shadow:none;transform:none}.landing-steps{border-top:1px solid var(--brand-border);text-align:left;grid-template-columns:repeat(3,1fr);gap:24px;width:100%;margin:48px 0 0;padding:28px 0 0;list-style:none;display:grid}.landing-steps li{align-content:start;gap:6px;display:grid}.landing-steps b{font:700 10px/1.3 var(--brand-font-body);letter-spacing:.16em;text-transform:uppercase;color:var(--brand-accent)}.landing-steps span{color:var(--brand-muted);font-size:13px;line-height:1.5}body.landing header,body.landing #desk,body.landing footer,body.landing #toast,body:not(.landing) #landing{display:none}@media (width<=650px){#landing{padding:36px 16px}.landing-steps{grid-template-columns:1fr;gap:16px;margin-top:36px}}:root{--brand-background:#101b24;--brand-surface:#203541;--brand-text:#f1f8fa;--brand-muted:#c7d8dc;--brand-accent:#a7e2d4;--brand-accent-text:#102b30;--brand-border:#76959c;--brand-font-body:"Trebuchet MS", sans-serif;--brand-font-display:"Georgia", serif}
