:root{color-scheme:dark;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:#07090b;color:#f5f1e9;font-synthesis:none;--paper:#f5f1e9;--muted:#aaa69e;--line:rgba(255,255,255,.17);--gold:#f4bd62;--cyan:#55d5e8}*{box-sizing:border-box}[hidden]{display:none!important}.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}html,body{margin:0;min-width:320px;min-height:100%;overflow-x:hidden}body{min-height:100svh;background:radial-gradient(circle at 70% 20%,#1d2425 0,#0b0e10 37%,#07090b 72%)}button,input,a{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible,canvas:focus-visible{outline:2px solid #ffe0a2;outline-offset:3px}#app{min-height:100svh}.topbar{position:fixed;z-index:30;inset:0 0 auto;height:62px;display:flex;align-items:center;justify-content:space-between;padding:0 max(20px,env(safe-area-inset-right)) 0 max(20px,env(safe-area-inset-left));border-bottom:1px solid rgba(255,255,255,.08);background:#07090b8f;backdrop-filter:blur(18px)}.wordmark{display:inline-flex;align-items:center;gap:12px;color:var(--paper);text-decoration:none;font-size:10px;font-weight:700;letter-spacing:.18em}.mark{display:flex;align-items:end;gap:2px;width:18px;height:18px;transform:rotate(-8deg)}.mark i{display:block;width:4px;border:1px solid var(--gold);border-radius:99px}.mark i:nth-child(1){height:11px}.mark i:nth-child(2){height:17px}.mark i:nth-child(3){height:13px}.topbar-status{display:flex;align-items:center;gap:9px;color:#a6a198;font:600 9px/1 ui-monospace,monospace;letter-spacing:.16em}.privacy-light{width:6px;height:6px;border-radius:50%;background:#85a178;box-shadow:0 0 12px #85a178}.entry{min-height:100svh;display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,.8fr);align-items:center;padding:104px max(7vw,24px) 48px;overflow:hidden}.entry-copy{position:relative;z-index:2;max-width:850px}.eyebrow{margin:0 0 18px;color:#a6a198;font:650 9px/1.2 ui-monospace,monospace;letter-spacing:.21em}h1,h2{font-family:Iowan Old Style,Baskerville,Georgia,serif;font-weight:400;letter-spacing:-.045em}h1{margin:0;font-size:clamp(56px,7.4vw,118px);line-height:.88}.lede{max-width:650px;margin:31px 0 0;color:#c0bbb2;font-size:clamp(16px,1.45vw,21px);line-height:1.65}.entry-actions{display:flex;gap:12px;margin-top:34px}.button{min-height:48px;padding:0 19px;border:1px solid var(--line);border-radius:3px;display:inline-flex;align-items:center;justify-content:center;gap:22px;color:var(--paper);background:#ffffff0a;text-decoration:none;cursor:pointer}.button-primary{min-width:220px;justify-content:space-between;color:#17130d;background:#e6b55b;border-color:#e6b55b;font-weight:750}.button-quiet{color:#d2cdc4;background:#0608093d}.privacy-note{display:flex;align-items:center;gap:12px;max-width:610px;margin-top:27px;color:#918d86;font-size:11px;line-height:1.5}.privacy-note strong{color:#bbb6ad}.privacy-note svg{flex:0 0 25px;width:25px;fill:none;stroke:#908b83;stroke-width:1.3}.mobile-hint{display:none;margin:15px 0 0;color:#aaa69e;font-size:11px}.entry-art{position:relative;height:min(70vw,720px);display:grid;place-items:center}.signal-ring{width:min(36vw,520px);aspect-ratio:1;border:1px solid rgba(85,213,232,.25);border-radius:50%;box-shadow:0 0 120px #55d5e81a,inset 0 0 100px #f4bd6212;animation:breathe 5s ease-in-out infinite}.hand-line{position:absolute;width:min(20vw,280px);height:min(34vw,440px);border:1px solid;border-radius:48% 48% 42% 42%;filter:drop-shadow(0 0 18px currentColor);opacity:.55}.hand-line:before,.hand-line:after{content:"";position:absolute;inset:12%;border:1px solid currentColor;border-radius:inherit}.hand-line-a{color:var(--gold);transform:translate(-32%,-4%) rotate(-20deg)}.hand-line-b{color:var(--cyan);transform:translate(38%,8%) rotate(22deg)}@keyframes breathe{50%{transform:scale(1.04);opacity:.66}}.instrument{display:none;min-height:100svh;padding:74px 12px max(12px,env(safe-area-inset-bottom))}#app[data-mode=play] .entry{display:none}#app[data-mode=play] .instrument{display:block}.stage-shell{position:relative;width:100%;height:calc(100svh - 142px);min-height:520px;overflow:hidden;border:1px solid rgba(255,255,255,.16);background:#050709;box-shadow:0 25px 100px #00000080}#camera-video,.camera-fallback,#tracking-overlay{position:absolute;inset:0;width:100%;height:100%}#camera-video{z-index:1;display:block;object-fit:contain;transform:scaleX(-1);background:#050709}.camera-fallback{z-index:0;display:grid;place-items:center;color:#ffffff38;font:600 9px ui-monospace,monospace;letter-spacing:.28em;background:radial-gradient(circle at 50% 45%,rgba(85,213,232,.1),transparent 28%),linear-gradient(120deg,#080b0d,#10171a)}.camera-fallback i{position:absolute;width:40vmin;aspect-ratio:1;border:1px solid rgba(255,255,255,.07);border-radius:50%}.camera-fallback i:nth-of-type(2){width:62vmin}.camera-fallback i:nth-of-type(3){width:84vmin}#tracking-overlay{z-index:3;display:block;cursor:crosshair;touch-action:none}.glass{z-index:5;border:1px solid rgba(255,255,255,.14);background:#05080a6b;backdrop-filter:blur(12px);box-shadow:0 12px 36px #00000029}.stage-head{pointer-events:none;position:absolute;inset:18px 18px auto;display:flex;align-items:flex-start;justify-content:space-between;padding:13px 14px}.stage-head .eyebrow{margin:0 0 3px}.stage-head strong{font:400 31px/1 Georgia,serif;color:var(--gold)}.stage-head strong+span{margin-left:10px;color:#d0cbc2;font:500 9px ui-monospace,monospace;letter-spacing:.11em}.hand-readout{pointer-events:auto;display:flex;align-items:center;gap:9px;color:#dfdad1;font:600 9px ui-monospace,monospace;letter-spacing:.08em}.icon-button{width:38px;height:38px;border:1px solid var(--line);border-radius:50%;color:var(--paper);background:#0000005c;cursor:pointer}.mode-controls{position:absolute;z-index:6;top:96px;right:18px;display:flex;align-items:center;gap:12px;padding:9px}.switch-control{display:flex;align-items:center;gap:9px;min-height:34px;color:#e1ddd5;font-size:10px;cursor:pointer}.switch-control input{position:absolute;opacity:0}.switch-control i{position:relative;width:38px;height:22px;border:1px solid #77736b;border-radius:20px}.switch-control:focus-within i{outline:2px solid #ffe0a2;outline-offset:3px}.switch-control i:after{content:"";position:absolute;top:3px;left:3px;width:14px;height:14px;border-radius:50%;background:#aaa69e;transition:.18s}.switch-control input:checked+i{border-color:var(--gold)}.switch-control input:checked+i:after{left:19px;background:var(--gold)}.tap-button{min-height:34px;border:1px solid rgba(85,213,232,.46);color:#d8fbff;background:#04232857;font:700 9px ui-monospace,monospace;letter-spacing:.1em;cursor:pointer}.tap-button kbd{margin-left:8px;color:#9ca6a6;font:inherit}.layer-rack{position:absolute;z-index:7;inset:auto 14px 14px;display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.layer-strip{position:relative;min-width:0;height:112px;padding:10px;border:1px solid rgba(255,255,255,.14);background:#04070980;backdrop-filter:blur(11px);overflow:hidden}.layer-strip.is-active{border-color:#55d5e8bf;box-shadow:inset 0 0 24px #55d5e814}.layer-strip[data-status=recording]{border-color:#ff7662;box-shadow:inset 0 0 28px #ff46321c}.layer-title{display:flex;align-items:center;gap:9px}.layer-title b{color:var(--cyan);font:600 13px ui-monospace,monospace}.layer-strip:first-child .layer-title b{color:var(--gold)}.layer-title span{overflow:hidden;color:#d4cfc6;font:600 8px ui-monospace,monospace;letter-spacing:.07em;text-overflow:ellipsis;white-space:nowrap}.layer-strip canvas{display:block;width:100%;height:38px;margin-top:6px}.layer-actions{position:absolute;z-index:2;right:7px;bottom:7px;display:flex;gap:3px}.layer-actions button{min-height:27px;border:0;color:#cac5bc;background:#ffffff12;font-size:8px;cursor:pointer}.layer-actions button:disabled{opacity:.28;cursor:default}.layer-strip>i{position:absolute;inset:auto 0 0;width:0;height:2px;background:var(--cyan)}.layer-strip:first-child>i{background:var(--gold)}.transport-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:58px;padding:8px 3px}.transport-bar>p{margin:0;color:#aaa69e;font-size:10px}.transport-actions{display:flex;align-items:center;gap:5px}.transport-actions button{min-height:38px;padding:0 11px;border:1px solid var(--line);color:#d9d4cb;background:#ffffff09;font-size:9px;cursor:pointer}.transport-actions #play-pause{display:flex;gap:7px;align-items:center}.transport-actions .record-button{border-color:#ff766273}.record-button i{display:inline-block;width:7px;height:7px;margin-right:7px;border-radius:50%;background:#ff7662}.take-dialog{width:min(680px,calc(100vw - 28px));padding:0;border:1px solid rgba(255,255,255,.18);color:var(--paper);background:#101416;box-shadow:0 30px 120px #000000b8}.take-dialog::backdrop{background:#000000c2;backdrop-filter:blur(8px)}.take-dialog form{padding:30px}.take-dialog h2{margin:0 0 18px;font-size:42px}.take-dialog video,.take-dialog audio{width:100%;margin:8px 0 12px}.take-dialog p{color:#aaa69e}.dialog-actions{display:flex;gap:9px;margin-top:20px}@media(max-width:800px){.mobile-hint{display:block}.entry{grid-template-columns:1fr}.entry-art{position:absolute;inset:9% -14% auto auto;width:90vw;opacity:.45}.instrument{padding-inline:7px}.stage-shell{height:calc(100svh - 190px);min-height:520px}.layer-rack{grid-template-columns:repeat(2,1fr)}.layer-strip{height:86px}.layer-strip canvas{height:24px}.transport-bar{align-items:flex-start;flex-direction:column}.transport-actions{width:100%;overflow-x:auto}.transport-actions button{flex:0 0 auto}}@media(max-width:520px){.topbar{height:56px;padding-inline:14px}.topbar-status{display:none}.entry{padding:88px 19px 28px;align-items:end}h1{font-size:clamp(53px,16vw,79px)}.lede{font-size:15px;line-height:1.55}.entry-actions{flex-direction:column;align-items:stretch}.button-primary{min-width:0}.instrument{padding-top:64px}.stage-shell{height:calc(100svh - 202px);min-height:530px}.stage-head{inset:8px 8px auto;padding:9px}.stage-head strong{font-size:25px}.hand-readout>span{max-width:116px;text-align:right;font-size:7px}.mode-controls{top:76px;right:8px}.switch-control>span{display:none}.layer-rack{inset:auto 6px 6px;gap:5px}.layer-strip{height:92px;padding:7px}.layer-title span{font-size:6px}.transport-actions{padding-bottom:3px}.transport-bar>p{min-height:23px}.dialog-actions{flex-direction:column}}@media(orientation:landscape)and (max-height:560px){.instrument{padding-top:62px}.stage-shell{height:calc(100svh - 122px);min-height:300px}.layer-strip{height:78px}.layer-strip canvas{height:18px}.stage-head{inset:7px 7px auto}.mode-controls{top:69px;right:7px}.transport-bar{min-height:54px;flex-direction:row}.transport-bar>p{max-width:42%}}#app[data-camera=false] #camera-video,#app[data-camera=true] .camera-fallback{display:none}.entry-status{min-height:18px;margin:12px 0 0;color:#ffb6a8;font-size:11px}.glass{background:#05080abd}.layer-strip{background:#040709b8}.layer-actions button{background:#040709d1}.mode-controls{max-width:min(760px,calc(100% - 36px));flex-wrap:wrap;justify-content:flex-end;background:#05080adb}.voice-picker{display:flex;gap:3px}.voice-picker button,.utility-button{min-height:34px;padding:0 10px;border:1px solid rgba(255,255,255,.2);color:#d9d4cb;background:#00000085;font:650 8px ui-monospace,monospace;letter-spacing:.05em;cursor:pointer}.voice-picker button.is-selected{border-color:var(--gold);color:#17130d;background:var(--gold)}.master-control{display:flex;align-items:center;gap:8px;color:#eee8de;font:650 8px ui-monospace,monospace;letter-spacing:.08em}.master-control input{width:90px;accent-color:var(--gold)}.utility-button{color:#d8fbff;border-color:#55d5e852}.tutorial-card{position:absolute;z-index:8;left:18px;bottom:140px;width:min(390px,calc(100% - 36px));padding:17px 18px;background:#05080ae6;border-color:#f4bd6261;pointer-events:auto}.tutorial-card .eyebrow{margin:10px 0 7px}.tutorial-card h2{margin:0;color:#fff8ec;font:400 clamp(23px,2.4vw,34px)/1.05 Iowan Old Style,Baskerville,Georgia,serif;letter-spacing:-.025em}.tutorial-card>p:last-of-type{margin:10px 0 0;color:#d1ccc3;font-size:12px;line-height:1.5}.tutorial-head{display:flex;align-items:center;justify-content:space-between;color:var(--gold);font:700 8px ui-monospace,monospace;letter-spacing:.12em}.tutorial-head button{border:0;color:#e1ddd5;background:transparent;font:600 9px ui-monospace,monospace;text-decoration:underline;cursor:pointer}.calibration-meter{height:4px;margin-top:14px;background:#ffffff1f;overflow:hidden}.calibration-meter i{display:block;width:0;height:100%;background:linear-gradient(90deg,var(--cyan),#fff);transition:width .08s linear}@media(max-width:800px){.mode-controls{left:8px;right:8px;max-width:none;justify-content:flex-start}.voice-picker{width:100%}.voice-picker button{flex:1}.master-control{margin-right:auto}.tutorial-card{left:8px;bottom:190px;width:min(360px,calc(100% - 16px));padding:13px}.tutorial-card h2{font-size:24px}}@media(max-width:520px){.mode-controls{top:72px;gap:5px;padding:6px}.voice-picker button{padding-inline:6px;font-size:7px}.master-control span{display:none}.master-control input{width:75px}.utility-button,.tap-button{min-height:30px;padding-inline:7px;font-size:7px}.tutorial-card{bottom:197px}.tutorial-card>p:last-of-type{font-size:10px}.tutorial-card h2{font-size:21px}}.stage-head{background:#05080ae6}.stage-head .eyebrow{color:#d8d3ca}.tutorial-live>p:last-child{margin:10px 0 0;color:#d1ccc3;font-size:12px;line-height:1.5}.tutorial-head button{min-height:28px;padding:6px 3px}.calibration-meter{height:6px}.master-control{min-height:34px}.master-control input{height:28px}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}#tutorial-title:focus-visible{outline:2px solid #ffe0a2;outline-offset:5px}#fluid-stage{position:absolute;inset:0;z-index:2;display:block;width:100%;height:100%;pointer-events:none}#app:not([data-fluid=true]) #fluid-stage{display:none}#app[data-fluid=true][data-camera=false] #fluid-stage{opacity:.62}#app[data-mode=play] .instrument{user-select:none;-webkit-user-select:none}#app[data-fluid=true][data-camera=true] #camera-video{opacity:0}#app[data-fluid=true] .camera-fallback{opacity:.35}.setup-tip{margin:16px 0 0;color:#9c978f;font-size:11px;line-height:1.5}.tutorial-actions{display:flex;gap:12px}#lesson-start{color:#ffe0a2}.echo-controls{display:flex;align-items:center;gap:6px}.echo-count{min-width:72px;color:#9fe7f1;font:650 8px ui-monospace,monospace;letter-spacing:.08em;text-align:center}.utility-button.is-selected{border-color:var(--cyan);color:#07161a;background:var(--cyan)}.utility-button:disabled{opacity:.35;cursor:default}#app:not([data-advanced=true]) .layer-rack,#app:not([data-advanced=true]) #loop-tap,#app:not([data-advanced=true]) #play-pause,#app:not([data-advanced=true]) #undo,#app:not([data-advanced=true]) #clear-all{display:none}#app:not([data-advanced=true]) .tutorial-card{bottom:72px}#app[data-mode=play] .instrument{display:block;padding:0;min-height:100svh}.stage-shell{position:fixed;inset:0;width:100%;height:100svh;min-height:0;border:0;box-shadow:none}#camera-video{object-fit:cover}.stage-head{inset:74px auto auto 18px;background:#05080a9e}.mode-controls{top:74px;right:14px}.layer-rack{position:fixed;inset:auto 14px 66px}.layer-strip{height:74px;padding:8px;background:#0407098c}.layer-strip canvas{height:20px;margin-top:4px}.layer-actions{right:5px;bottom:5px}.layer-actions button{min-height:22px}.transport-bar{position:fixed;z-index:8;inset:auto 0 0;min-height:52px;padding:6px max(14px,env(safe-area-inset-right)) max(6px,env(safe-area-inset-bottom)) max(14px,env(safe-area-inset-left));background:#07090b9e;backdrop-filter:blur(14px);border-top:1px solid rgba(255,255,255,.08)}.tutorial-card{bottom:158px}@media(max-width:800px){.transport-bar{flex-direction:row;align-items:center}.transport-bar>p{display:none}.layer-rack{inset:auto 8px 62px;grid-template-columns:repeat(4,1fr);gap:5px}.layer-strip{height:64px;padding:6px}.layer-strip canvas{height:13px}.stage-head{inset:70px auto auto 8px}.tutorial-card{bottom:140px}}@media(max-width:520px){.layer-rack{grid-template-columns:repeat(2,1fr)}.layer-strip{height:60px}.stage-shell{height:100svh;min-height:0}.tutorial-card{bottom:200px}}@media(orientation:landscape)and (max-height:560px){.stage-shell{height:100svh;min-height:0}.layer-rack{grid-template-columns:repeat(4,1fr)}.layer-strip{height:56px}.tutorial-card{bottom:130px}}
