@font-face{font-family:DM Sans;font-style:normal;font-weight:100 1000;font-display:swap;src:url(/play/assets/dm-sans-latin-wght-normal-Xz1IZZA0.woff2)format("woff2")}@font-face{font-family:Fraunces;font-style:normal;font-weight:100 900;font-display:swap;src:url(/play/assets/fraunces-latin-wght-normal-ukD16Tqj.woff2)format("woff2")}@font-face{font-family:Fraunces;font-style:italic;font-weight:100 900;font-display:swap;src:url(/play/assets/fraunces-latin-wght-italic-Py8at3oI.woff2)format("woff2")}:root{color:#f9f5e8;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--safe-top:env(safe-area-inset-top,0px);--safe-right:env(safe-area-inset-right,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--safe-left:env(safe-area-inset-left,0px);--edge:clamp(20px, 4.5vw, 36px);--scene-edge:24px;--bar-top:14px;--bar-height:max(48px, 2.0625rem);--overlay-top:calc(var(--safe-top) + var(--bar-top) + var(--bar-height) + 24px);--course-bottom:calc(var(--safe-bottom) + 18px);--footer-bound:calc(var(--course-bottom) + max(48px, 2.4375rem + 24px) + 16px);--welcome-rest:98px;--welcome-bound:calc(var(--safe-bottom) + var(--welcome-rest));--welcome-dimmer:linear-gradient(180deg, #0b252700 15%, #0b25270d 32%, #0b2527a8 64%, #0b2527c7);--cream:#f8eccd;--ink:#28483e;background:#102f35;font-family:DM Sans,sans-serif;font-weight:400}*{box-sizing:border-box}html,body,#root{overscroll-behavior:none;width:100%;min-width:0;height:100%;margin:0;overflow:hidden}body{-webkit-text-size-adjust:100%}button,input{font:inherit}button,a,input{-webkit-tap-highlight-color:transparent}button{cursor:pointer;border:0}button:disabled{cursor:default;opacity:.6}button,a{touch-action:manipulation}button svg,a svg{flex-shrink:0}button:focus-visible{outline-offset:5px;outline:3px solid #f5d58f}a:focus-visible{outline-offset:5px;outline:3px solid #f5d58f}input:focus-visible{outline-offset:5px;outline:3px solid #f5d58f}a{color:inherit}h1,h2,h3,p{margin-top:0}h1,h2{font-family:Fraunces,Georgia,serif;font-weight:400}::selection{color:#183e35;background:#f4dfac}.app-shell{width:100%;height:100vh;height:100svh;isolation:isolate;height:100dvh;position:relative;overflow:hidden}.game-screen,.flight-world,.flight-canvas{width:100%;height:100%;position:absolute;top:0;bottom:0;left:0;right:0}.game-screen{overflow:hidden}.flight-world{isolation:isolate;background:#102f35}.flight-world:before{content:"";z-index:1;background:var(--scene-dimmer,transparent);pointer-events:none;position:absolute;top:0;bottom:0;left:0;right:0}.app-shell[data-phase=idle],.app-shell[data-phase=calibrating],.app-shell[data-pending=true]:not([data-phase=paused]){--scene-dimmer:var(--welcome-dimmer)}.app-shell[data-phase=paused]{--scene-dimmer:#133331c7}.app-shell[data-phase=complete][data-pending=false]{--scene-dimmer:linear-gradient(180deg, #0b252733, #0b252766 40%, #0b2527c7)}.app-shell[data-course-selection=true]{--welcome-bound:max(calc(var(--safe-bottom) + var(--welcome-rest)), var(--footer-bound))}.flight-canvas{display:block}.app-shell[data-mode=demo][data-phase=playing] .flight-canvas{touch-action:none;cursor:ns-resize}.app-topbar{z-index:4;top:calc(var(--safe-top) + var(--bar-top));left:calc(var(--safe-left) + var(--edge));right:calc(var(--safe-right) + var(--edge));pointer-events:none;justify-content:space-between;align-items:center;gap:16px;min-height:48px;display:flex;position:absolute}.app-topbar>*{pointer-events:auto}.app-topbar:before{content:"";z-index:-1;height:calc(var(--safe-top) + 118px);pointer-events:none;background:linear-gradient(#0b252773,#0b252700);position:fixed;top:0;bottom:auto;left:0;right:0}.brand{color:#f7f1de;letter-spacing:-1.6px;text-shadow:0 1px 16px #103b3c30;background:0 0;border:0;align-items:center;min-width:48px;min-height:48px;padding:0;font-family:Fraunces,Georgia,serif;font-size:2.0625rem;font-weight:500;line-height:1;text-decoration:none;display:inline-flex}.brand-period,.brand>span{color:#efcd92}.topbar-actions{flex-shrink:0;align-items:center;gap:8px;margin-left:auto;display:flex}.icon-button{color:#f0f0dc;background:#173d43a6;border:1px solid #e6e9d957;border-radius:50%;justify-content:center;align-items:center;width:48px;min-width:48px;height:48px;padding:0;transition:background .18s,border-color .18s,transform .18s;display:inline-flex}.icon-button:active{background:#e5edce30;transform:scale(.96)}.flight-status{color:#e1e9d8;pointer-events:none;text-shadow:0 1px 12px #103b3c55;flex:1;min-width:0;font-size:.8125rem;line-height:1.5}.flight-status .world-label{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.flight-status>small{color:#d4e0ce;font-size:.6875rem;display:block}.flight-stats{flex-wrap:wrap;align-items:center;gap:14px;min-width:0;display:flex}.flight-energy{background:#09272ccc;border:1px solid #e7e7cf70;border-radius:6px;flex:0 clamp(68px,22vw,112px);width:clamp(68px,22vw,112px);min-width:68px;height:7px;display:block;overflow:hidden;box-shadow:0 1px 8px #08262b40}.flight-energy>span{border-radius:inherit;background:#f4dfac;height:100%;transition:width .12s linear,background .2s;display:block}.flight-energy[data-low=true]>span{background:#efb482}.flight-lives{flex-shrink:0;align-items:center;gap:8px;min-height:24px;display:inline-flex}.life-light{background:#e4d8ac12;border:1px solid #e4d8ac69;border-radius:50%;width:8px;height:8px;display:block}.life-light.available{background:#f2dfa8;border-color:#f2dfa8;box-shadow:0 0 9px #f2dfa866}.demo-label{color:#dce4d5;font-size:.6875rem}.gate-counter{white-space:nowrap;align-items:center;gap:6px;display:inline-flex}.gate-counter svg{color:#f0d69e;flex-shrink:0}.app-shell[data-flight-style=corridor] .life-light.available{background:#c1f1ec;border-color:#c1f1ec;box-shadow:0 0 9px #a4e4e455}.share-result{flex-direction:column;align-items:center;width:100%;display:flex}.share-status{overflow-wrap:anywhere;max-width:min(100%,24rem);font-size:.75rem;line-height:1.5}.share-status:empty{display:none}.settings-privacy{color:#bdcfce;text-underline-offset:4px;background:#ffffff08;border-radius:14px;min-width:48px;min-height:48px;margin:16px auto 0;padding:10px 16px;font-size:.8125rem;text-decoration:underline;display:block}.settings-privacy:active{color:#f8eccd;background:#ffffff14}.privacy-policy h3{color:#f4edda;margin:28px 0 12px;font-size:1rem;font-weight:500}.privacy-policy a{color:#f5d58f;text-underline-offset:3px;overflow-wrap:anywhere;background:#ffffff08;border-radius:12px;align-items:center;min-width:48px;max-width:100%;min-height:48px;padding:10px 12px;display:inline-flex}.privacy-policy a:active{background:#ffffff18}.privacy-links{gap:8px;margin-top:24px;display:grid}.privacy-links a{width:100%}.privacy-policy .privacy-updated{font-size:.75rem}.app-shell[data-home-choice=true] .flight-world{background:radial-gradient(at 50% 10%,#294750,#142c36 65%,#10252e)}.app-shell[data-home-choice=true] .flight-world:before{background:0 0}.app-shell[data-home-choice=true] .flight-canvas{visibility:hidden}.flight-choices{z-index:2;inset:calc(var(--safe-top) + var(--bar-top) + var(--bar-height) + 28px) calc(var(--safe-right) + var(--edge)) calc(var(--safe-bottom) + 28px) calc(var(--safe-left) + var(--edge));overscroll-behavior:contain;flex-direction:column;justify-content:flex-start;align-items:center;display:flex;position:absolute;overflow-y:auto}.flight-choices h1{text-align:center;flex-shrink:0;margin:auto 0 24px;font-size:clamp(1.75rem,5vw,2.5rem);line-height:1.2}.flight-choice-grid{flex-shrink:0;grid-template-columns:1fr;gap:12px;width:min(100%,420px);margin-bottom:auto;display:grid}.flight-choice{--choice-art-size:clamp(60px,6vw,84px);color:#fff1d8;text-align:left;isolation:isolate;background:linear-gradient(110deg,#604652,#795b64);border:1px solid #edc9ae66;border-radius:22px;align-items:center;gap:12px;width:100%;min-width:0;min-height:clamp(120px,19vh,176px);padding:20px;transition:transform .18s,border-color .18s,background .18s;display:flex;position:relative;overflow:hidden;box-shadow:0 3px 12px #071d2314}.flight-choice:after{content:"";z-index:-1;background:linear-gradient(90deg,#523d4bde,#0000 80%);position:absolute;top:0;bottom:0;left:0;right:0}.flight-choice.choice-lightway{color:#e5f6f1;background:linear-gradient(110deg,#234354,#355b6b);border-color:#a3d9d366}.choice-lightway:after{background:linear-gradient(90deg,#203e50de,#0000 80%)}.flight-choice.choice-clouds{color:#243f50;background:linear-gradient(110deg,#bdcfd0,#d8ded3);border-color:#dae9e570}.choice-clouds:after{background:linear-gradient(90deg,#c9d8d5ed,#0000 80%)}.choice-clouds .choice-hill-back{fill:#98b5bd}.choice-clouds .choice-hill-front{fill:#7693a2}.choice-clouds .choice-start{color:#3b5d70}.choice-landscape{z-index:-2;width:var(--choice-art-size);height:calc(var(--choice-art-size) * .833333);color:#fff1d8;opacity:.8;pointer-events:none;position:absolute;top:auto;bottom:12px;left:auto;right:14px}.choice-hill-back{fill:#835f69}.choice-hill-front{fill:#533e55}.choice-lightway .choice-hill-back{fill:#31566c}.choice-lightway .choice-hill-front{fill:#203e57}.choice-copy{min-width:0;max-width:calc(100% - var(--choice-art-size) - 4px);flex-direction:column;flex:1;gap:7px;display:flex}.choice-copy strong{overflow-wrap:anywhere;font-family:Fraunces,Georgia,serif;font-size:1.75rem;font-weight:400;line-height:1.15}.choice-copy>span{overflow-wrap:anywhere;max-width:24ch;font-size:.8125rem;line-height:1.5}.choice-start{color:#f4d79b;opacity:.85;pointer-events:none;border:1px solid;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;display:flex;position:absolute;top:12px;right:12px}.choice-lightway .choice-start{color:#b0e9e4}.flight-choice:active{transform:scale(.985)}@media (hover:hover){.flight-choice:hover{border-color:#f5dfa5b3;transform:translateY(-1px)}}@media (min-width:700px),(orientation:landscape){.flight-choice-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;width:min(100%,1120px)}.flight-choice{min-height:clamp(210px,48vh,420px);padding:28px}}@media (max-height:619px){.flight-choices{top:calc(var(--safe-top) + var(--bar-top) + var(--bar-height) + 14px);bottom:calc(var(--safe-bottom) + 16px);justify-content:flex-start}.flight-choices h1{margin-bottom:14px;font-size:1.625rem}.flight-choice{border-radius:20px;min-height:clamp(104px,18vh,170px);padding:14px}.choice-landscape{height:44px}.flight-choice-grid{gap:12px}}@media (orientation:landscape) and (max-height:400px){.flight-choices{top:calc(var(--safe-top) + var(--bar-top) + var(--bar-height) + 10px)}.flight-choices h1{clip-path:inset(50%);width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.flight-choice{--choice-art-size:0px;align-items:flex-start;min-height:140px;padding:44px 12px 12px}.choice-landscape{display:none}.choice-copy{width:100%;max-width:100%}.choice-copy strong{word-break:normal;font-size:1.125rem;line-height:1.2}.choice-copy>span{font-size:.75rem}.choice-start{width:28px;height:28px;position:absolute;top:10px;right:10px}}@media (prefers-reduced-motion:reduce){.flight-choice{transition:none}}.app-shell[data-flight-style=obstacles][data-phase=playing] .app-topbar:before{background:linear-gradient(#e8f0f1b3,#0000)}.app-shell[data-flight-style=obstacles][data-phase=playing] .flight-stats{color:#233e50;background:#edf3efeb;border-radius:24px;padding:8px 12px}.app-shell[data-flight-style=obstacles][data-phase=playing] .icon-button{color:#233e50;background:#edf3efeb;border-color:#45677a55}.app-shell[data-flight-style=obstacles][data-phase=playing] .demo-label{color:#415f70}.app-shell[data-flight-style=obstacles][data-phase=playing] .flight-guidance{color:#233e50;background:#edf3efeb}.app-shell[data-flight-style=obstacles][data-phase=playing] .guidance-symbol{color:#456b7c}.app-shell[data-flight-style=obstacles][data-phase=playing] .demo-control{color:#233e50;background:#edf3efeb;border-radius:24px;padding:0 12px}.app-shell[data-flight-style=obstacles][data-phase=playing] .demo-control input{accent-color:#41677c}.gate-counter{font-variant-numeric:tabular-nums;font-size:.8125rem;font-weight:500}.gate-counter>span{color:#cbd8c9;margin-left:-3px;font-weight:400}.gate-counter strong{font-variant-numeric:tabular-nums;font-size:.8125rem;font-weight:500}.gate-counter strong span{color:#cbd8c9;font-weight:400}.scene-overlay{z-index:2;color:#faf2df;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;pointer-events:none;flex-direction:column;align-items:center;display:flex;position:absolute;top:0;bottom:0;left:0;right:0;overflow-y:auto}.welcome-overlay{inset:var(--overlay-top) calc(var(--safe-right) + var(--scene-edge)) var(--welcome-bound) calc(var(--safe-left) + var(--scene-edge));pointer-events:auto}.welcome-content{text-align:center;pointer-events:auto;flex:none;width:min(100%,420px);margin-top:auto}.scene-eyebrow{color:#e0e7d9;letter-spacing:.17em;text-transform:uppercase;margin:0 0 14px;font-size:.6875rem;font-weight:500;line-height:1.5;display:block}.scene-overlay h1,.scene-overlay h2{letter-spacing:-1.35px;overflow-wrap:anywhere;text-wrap:balance;text-shadow:0 2px 20px #113c3b30;margin:0 0 24px;font-size:clamp(2.125rem,7.6vw,3rem);line-height:1.1}.scene-overlay h1 em,.scene-overlay h2 em{color:#f3dba6;font-weight:400}.scene-overlay p{color:#e2e9dd;overflow-wrap:anywhere;text-wrap:pretty;max-width:340px;margin:0 auto 24px;font-size:.875rem;line-height:1.65}.primary-button{min-width:min(100%,14.25rem);max-width:100%;min-height:56px;color:var(--ink);background:var(--cream);white-space:normal;overflow-wrap:anywhere;text-align:center;border-radius:32px;justify-content:center;align-items:center;gap:10px;padding:16px 25px;font-size:.9375rem;font-weight:600;line-height:1.4;transition:background .18s,transform .18s;display:inline-flex;box-shadow:0 6px 24px #12363024}.primary-button:active:not(:disabled){background:#efddb5;transform:scale(.98)}.scene-link{color:#e5ecdf;overflow-wrap:anywhere;text-align:center;background:#16383e73;border:1px solid #dce9dc40;border-radius:26px;justify-content:center;align-items:center;gap:7px;min-width:48px;max-width:100%;min-height:48px;margin:9px auto 0;padding:10px 16px;font-size:.875rem;line-height:1.5;text-decoration:none;transition:background .18s,border-color .18s,transform .18s;display:flex}.scene-link:active{color:#fff3cd;background:#284a4d;border-color:#eddfb96b;transform:scale(.98)}.quiet-link{margin-top:0}.course-switcher{z-index:3;bottom:var(--course-bottom);width:max-content;min-width:48px;min-height:48px;max-width:calc(100% - var(--safe-left) - var(--safe-right) - 40px);color:#e7ecdf;text-align:center;background:#16383e73;border:1px solid #dce9dc40;border-radius:25px;justify-content:center;align-items:center;gap:9px;padding:11px 16px;font-size:.875rem;line-height:1.5;transition:background .18s,border-color .18s;display:inline-flex;position:absolute;left:50%;transform:translate(-50%)}.course-switcher:active{color:#fff3cd;background:#284a4d;border-color:#eddfb96b}.course-switcher>span{overflow-wrap:anywhere;min-width:0}.course-switcher strong{font-size:inherit;font-weight:500}.course-switcher small{color:#bdcdbb;font-size:.6875rem}.course-switcher svg{flex-shrink:0}.welcome-content .route-caption{color:#cbd8c9;margin:16px auto 0;font-size:.8125rem;line-height:1.5}.calibration-overlay{bottom:calc(var(--safe-bottom) + 76px)}.calibration-overlay .welcome-content{max-width:360px}.calibration-track{background:#e2e8d927;border-radius:4px;width:min(180px,72%);height:4px;margin:26px auto 14px;overflow:hidden}.calibration-track>span{border-radius:inherit;background:#f1d49d;height:100%;transition:width .12s linear;display:block}.calibration-hint{color:#e2ead8;min-height:23px;font-size:.8125rem;line-height:1.7;display:block}.calibration-overlay .scene-link{margin-top:15px}.calibration-overlay .calibration-demo{margin-top:6px}.flight-guidance{z-index:2;bottom:calc(var(--safe-bottom) + 38px);width:min(440px,calc(100% - var(--safe-left) - var(--safe-right) - 40px));color:#f2efd9;text-align:left;pointer-events:none;background:#0b2527a6;border-radius:22px;justify-content:center;align-items:center;gap:10px;height:calc(3em + 12px);min-height:44px;padding:6px 14px;font-size:.8125rem;line-height:1.5;transition:opacity .18s;display:flex;position:absolute;left:50%;transform:translate(-50%)}.flight-guidance[data-visible=false]{opacity:0}.guidance-symbol{color:#e4d5a5;flex-shrink:0;display:flex}.guidance-content{min-width:0;display:block}.guidance-content strong{font-weight:400}.guidance-content small{color:#d5dfd1;margin-top:3px;font-size:.75rem;line-height:1.5;display:block}.world-progress{z-index:2;pointer-events:none;background:#c3d2af1a;height:3px;position:absolute;bottom:0;left:0;right:0}.world-progress>span{background:#ded6a1;height:100%;transition:width .1s linear;display:block}.demo-control{z-index:3;bottom:calc(var(--safe-bottom) + 22px);width:min(380px, calc(100% - var(--safe-left) - var(--safe-right) - 48px));color:#e4e9d9;align-items:center;gap:14px;font-size:.75rem;line-height:1.5;display:flex;position:absolute;left:50%;transform:translate(-50%)}.demo-control input{accent-color:#f1dcaa;cursor:ns-resize;flex:1;width:100%;min-width:48px;height:48px;margin:0}.app-shell[data-mode=demo][data-phase=playing] .flight-guidance{bottom:calc(var(--safe-bottom) + 87px)}@media (max-width:359px){.demo-control{flex-wrap:wrap;justify-content:space-between;gap:0}.demo-control input{flex:0 0 100%;order:1}.app-shell[data-mode=demo][data-phase=playing] .flight-guidance{bottom:calc(var(--safe-bottom) + 125px)}}.centered-overlay{z-index:3;inset:var(--overlay-top) calc(var(--safe-right) + var(--scene-edge)) calc(var(--safe-bottom) + 30px) calc(var(--safe-left) + var(--scene-edge));pointer-events:auto}.pause-card,.results-card{text-align:center;flex:none;width:min(100%,380px);margin-block-start:auto;margin-block-end:auto}.pause-card h2,.results-card h2{font-size:clamp(2.125rem,7vw,2.75rem)}.pause-card p{max-width:300px}.result-score{justify-content:center;align-items:center;gap:13px;margin:22px 0;display:flex}.result-score>svg{color:#f3dba6;flex-shrink:0}.result-score strong{color:#f3dba6;letter-spacing:-3px;font-family:Fraunces,Georgia,serif;font-size:4.75rem;font-weight:400;line-height:1}.result-score>span{color:#d1ddca;text-align:left;font-family:Fraunces,Georgia,serif;font-size:1.5625rem;line-height:1.2}.result-score small{margin-top:4px;font-family:DM Sans,sans-serif;font-size:.75rem;line-height:1.6;display:block}.result-score .result-sweet{color:#e0d5ae;align-items:center;gap:5px;margin-top:6px;display:flex}.results-card .result-note{max-width:290px;margin-bottom:12px;font-size:.8125rem}.results-card .result-distance-label{color:#d2dfd4;margin:0 auto 8px;font-size:.8125rem}.results-card .result-best{color:#e2e9dd;margin:0 auto;font-size:.8125rem}.storage-note{font-size:.75rem!important}.result-overlay{top:max(var(--overlay-top),26%)}.result-overlay .results-card{gap:18px;width:min(100%,380px);margin:0 auto auto;display:grid}.result-summary,.result-actions{min-width:0}.result-overlay h2{margin-bottom:12px;font-size:clamp(1.75rem,6.5vw,2.375rem)}.result-overlay .scene-eyebrow{margin-bottom:8px}.result-overlay .result-score{margin:14px 0 8px}.result-overlay .result-score:not(.song-score) strong{font-size:min(4.75rem,22vw)}.result-overlay .result-score:not(.song-score)>span{font-size:min(1.5625rem,8vw)}.result-actions{gap:8px;display:grid}.result-actions .primary-button,.result-actions .scene-link{width:100%;min-width:0;margin:0}.result-actions .scene-link{font-size:.875rem}.result-actions .course-switcher{width:100%;max-width:100%;margin:0;font-size:.875rem;position:static;transform:none}.song-score strong>span{letter-spacing:-1px;margin-left:4px;font-size:.45em}.results-card .song-score-label{margin:0 auto 8px;font-size:.8125rem}.game-dialog{width:min(100%,480px);max-width:100%;max-height:calc(100% - var(--safe-top) - 24px);color:#294a3f;background:#f5f3e9;border:1px solid #ffffff40;border-bottom:0;border-radius:28px 28px 0 0;margin:auto auto 0;padding:0;position:fixed;top:auto;bottom:0;left:0;right:0;overflow:hidden;box-shadow:0 -12px 70px #122e3929}.game-dialog[open]{flex-direction:column;display:flex}.dialog-fallback-backdrop{justify-content:center;align-items:flex-end;padding:0!important}.dialog-fallback-backdrop .game-dialog[open]{flex-shrink:0;margin:0!important;display:flex!important}.dialog-header{flex-shrink:0;justify-content:space-between;align-items:center;gap:16px;min-height:82px;padding:22px 24px 12px;display:flex}.dialog-header h2{letter-spacing:-.65px;overflow-wrap:anywhere;min-width:0;margin:0;font-size:1.75rem;line-height:1.2}.dialog-body{min-height:0;padding:8px 24px calc(var(--safe-bottom) + 28px);overscroll-behavior:contain;-webkit-overflow-scrolling:touch;overflow-y:auto}.setting-section{border-bottom:1px solid #314e3614;padding:18px 0}.setting-section:last-child{border-bottom:0;padding-bottom:0}.setting-section h3{color:#6d7c64;letter-spacing:.1em;text-transform:uppercase;margin:0 0 13px;font-size:.6875rem;font-weight:600;line-height:1.5}.language-options{border:1px solid #2e4c351a;border-radius:27px;flex-wrap:wrap;gap:3px;width:fit-content;min-width:0;max-width:100%;margin:0;padding:3px;display:flex}.language-option{cursor:pointer;position:relative}.language-option>span{color:#607356;border-radius:23px;justify-content:center;align-items:center;min-width:72px;min-height:48px;padding:10px 18px;font-size:.875rem;line-height:1.5;display:flex}.language-option:active>span{background:#ffffff14}.language-option input:focus-visible+span{outline-offset:3px;outline:3px solid #a87736}.setting-row{color:#31503f;text-align:left;background:0 0;justify-content:space-between;align-items:center;gap:14px;width:100%;min-height:52px;padding:8px 0;font-size:.875rem;line-height:1.6;text-decoration:none;display:flex}.setting-row>span{flex:1;min-width:0;display:block}.setting-row>span:last-child{color:#62765c;flex:none;font-size:.75rem}.setting-row strong{font-weight:500;display:block}.setting-row small{color:#62765c;font-size:.75rem;display:block}.setting-row>svg{flex-shrink:0}.setting-row:active{background:#ffffff0d}.game-dialog button:focus-visible{outline-color:#a87736}.game-dialog a:focus-visible{outline-color:#a87736}.game-dialog .primary-button{color:#f9efcf;width:100%;box-shadow:none;background:#365743;margin-top:24px}.help-copy{color:#536b51;font-size:.875rem;line-height:1.8}.help-copy p{margin:0 0 16px}.help-copy p:last-child{margin-bottom:0}.help-copy strong{color:#31503f;font-weight:600}.privacy-note{color:#61735c;align-items:flex-start;gap:9px;margin:22px 0 0;font-size:.75rem;line-height:1.7;display:flex}.privacy-note svg{flex-shrink:0;margin-top:3px}.tiny-lock{border:1.5px solid;border-radius:2px;flex-shrink:0;width:10px;height:8px;margin:7px 2px 0;display:block;position:relative}.tiny-lock:before{content:"";border:1.5px solid;border-bottom:0;border-radius:5px 5px 0 0;width:5px;height:5px;position:absolute;top:-6px;left:1px}.journey-nav{gap:10px;padding:10px 0 0;display:grid}.journey-choice{color:#536d4d;text-align:left;background:0 0;border:1px solid #0000;border-radius:17px;align-items:center;gap:15px;width:100%;min-width:0;min-height:78px;padding:14px;transition:background .18s,border-color .18s;display:flex}.journey-choice:disabled{opacity:.65}.journey-number{color:#77916b;border:1px solid #c3cfb6;border-radius:50%;flex-shrink:0;place-items:center;width:38px;height:38px;font-family:Fraunces,Georgia,serif;font-size:1.1875rem;display:grid}.journey-choice.selected .journey-number{color:#f6edcf;background:#54744f;border-color:#54744f}.journey-choice.completed:not(.selected) .journey-number{background:#e0e8d5}.journey-copy{flex:1;min-width:0;display:block}.journey-copy strong{color:#3d5d40;font-size:.875rem;font-weight:500;line-height:1.5;display:block}.journey-copy small{color:#65775c;margin-top:4px;font-size:.75rem;line-height:1.6;display:block}.journey-status{color:#59764e}.error-message{z-index:8;top:calc(var(--safe-top) + 112px);width:min(440px, calc(100% - var(--safe-left) - var(--safe-right) - 32px));max-height:calc(100% - var(--safe-top) - var(--safe-bottom) - 150px);color:#754c36;background:#fff1e2;border:1px solid #efdcc5;border-radius:17px;align-items:flex-start;gap:10px;padding:15px 12px 15px 16px;font-size:.8125rem;line-height:1.65;display:flex;position:absolute;left:50%;overflow-y:auto;transform:translate(-50%);box-shadow:0 8px 30px #0c2c392b}.error-message>svg{flex-shrink:0;margin-top:3px}.error-message>span{flex:1}.error-message button{width:48px;min-width:48px;height:48px;color:inherit;background:0 0;border-radius:50%;flex-shrink:0;place-items:center;margin:-9px -6px -9px 0;padding:0;display:grid}.error-message button:active{background:#754c3614}.error-copy{min-width:0}.error-message .error-demo-link{width:auto;height:auto;min-height:48px;color:inherit;font-size:inherit;text-align:left;text-underline-offset:3px;border:0;border-radius:8px;justify-content:flex-start;align-items:center;gap:6px;margin:4px 0 -6px;padding:8px 4px;line-height:1.45;text-decoration:underline;display:inline-flex}.error-demo-link svg{flex-shrink:0}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (hover:hover){.icon-button:hover{background:#31555a;border-color:#e6e9d980}.primary-button:hover:not(:disabled){background:#fff1ce;transform:translateY(-1px)}.scene-link:hover{color:#fff3cd;background:#284a4d;border-color:#eddfb96b}button.course-switcher:hover{color:#fff1ce;background:#163936e6}.dialog-header .icon-button:hover{background:#dfe6d6}.game-dialog .primary-button:hover:not(:disabled){background:#45694f}.setting-row:hover{color:#28483e}.journey-choice:hover:not(:disabled){background:#e7ecdf}}@media (min-width:700px) and (min-height:620px){:root{--bar-top:24px;--bar-height:max(48px,2.3125rem);--course-bottom:calc(var(--safe-bottom) + 28px);--welcome-rest:112px}.brand{font-size:2.3125rem}.calibration-overlay{bottom:calc(var(--safe-bottom) + 90px)}.scene-overlay h1,.scene-overlay h2{font-size:3rem}.welcome-content{width:min(100%,440px)}.scene-overlay p{font-size:.9375rem}.flight-guidance{bottom:calc(var(--safe-bottom) + 46px)}.game-dialog{max-height:min(720px, calc(100% - var(--safe-top) - var(--safe-bottom) - 72px));border:1px solid #ffffff50;border-radius:26px;margin:auto;top:0;bottom:0;left:0;right:0}.dialog-fallback-backdrop{align-items:center}.dialog-body{padding-bottom:28px}}@media (max-height:700px) and (orientation:portrait){:root{--welcome-rest:82px;--course-bottom:calc(var(--safe-bottom) + 13px)}.scene-overlay h1,.scene-overlay h2{margin-bottom:11px;font-size:2.1875rem}.scene-overlay p{margin-bottom:18px;font-size:.8125rem;line-height:1.55}.scene-eyebrow{margin-bottom:10px;font-size:.625rem}.primary-button{min-height:52px;padding-block-start:14px;padding-block-end:14px}.scene-link{margin-top:5px}.calibration-overlay{bottom:calc(var(--safe-bottom) + 30px)}.calibration-track{margin-top:20px}.calibration-overlay .scene-link{margin-top:8px}.result-score{margin-block-start:15px;margin-block-end:15px}.result-score strong{font-size:4rem}.results-card .result-note{margin-bottom:15px}}@media (max-width:360px){:root{--edge:18px;--scene-edge:20px;--bar-height:max(48px,1.875rem)}.brand{font-size:1.875rem}.scene-overlay h1,.scene-overlay h2{letter-spacing:-.9px;font-size:2rem}.scene-overlay p{font-size:.8125rem}.primary-button{min-width:min(100%,13.625rem);font-size:.875rem}.flight-stats{gap:13px}.flight-status{font-size:.75rem}.flight-guidance{max-width:calc(100% - var(--safe-left) - var(--safe-right) - 32px);font-size:.75rem}.guidance-content small{font-size:.6875rem}.dialog-header,.dialog-body{padding-inline-start:20px;padding-inline-end:20px}}@media (orientation:landscape) and (max-height:619px){:root{--edge:22px;--bar-top:9px;--bar-height:max(48px,1.875rem);--overlay-top:calc(var(--safe-top) + var(--bar-top) + var(--bar-height) + 8px);--course-bottom:calc(var(--safe-bottom) + 14px);--welcome-dimmer:linear-gradient(110deg,#0b252700 15%,#0b25273d 40%,#0b2527c7 76%)}.brand{font-size:1.875rem}.welcome-overlay,.calibration-overlay{inset:var(--overlay-top) calc(var(--safe-right) + 8%) calc(var(--safe-bottom) + 42px) calc(var(--safe-left) + 44%)}.welcome-content{max-width:360px;margin-block-start:auto;margin-block-end:auto}.scene-overlay h1,.scene-overlay h2{margin-bottom:10px;font-size:clamp(1.75rem,4.6vw,2.375rem);line-height:1.08}.scene-overlay p{margin-bottom:15px;font-size:.8125rem;line-height:1.5}.scene-eyebrow{margin-bottom:9px;font-size:.625rem}.primary-button{min-width:min(100%,13.625rem);min-height:48px;padding:12px 22px;font-size:.875rem}.scene-link{margin-top:2px}.course-switcher{left:calc(var(--safe-left) + 26%);max-width:calc(44% - var(--safe-left) - 40px);padding-inline-start:13px;padding-inline-end:13px}.calibration-track{margin:18px auto 9px}.calibration-hint{font-size:.75rem}.calibration-overlay .scene-link{margin-top:3px}.centered-overlay{bottom:calc(var(--safe-bottom) + 16px)}.pause-card h2{font-size:1.875rem}.pause-card p{margin-bottom:12px;font-size:.75rem}.flight-guidance{bottom:calc(var(--safe-bottom) + 20px)}.demo-control{bottom:calc(var(--safe-bottom) + 8px)}.app-shell[data-mode=demo][data-phase=playing] .flight-guidance{bottom:calc(var(--safe-bottom) + 58px)}.game-dialog{width:min(480px, calc(100% - var(--safe-left) - var(--safe-right) - 40px));max-height:calc(100% - var(--safe-top) - var(--safe-bottom) - 24px);border:1px solid #ffffff40;border-radius:23px;margin:auto;top:0;bottom:0;left:0;right:0}.dialog-fallback-backdrop{align-items:center}.dialog-header{min-height:69px;padding-top:14px}.dialog-body{padding-bottom:22px}.error-message{top:calc(var(--safe-top) + 70px)}}@media (orientation:landscape) and (max-height:374px){:root{--course-bottom:calc(var(--safe-bottom) + 9px)}.welcome-overlay,.calibration-overlay{bottom:calc(var(--safe-bottom) + 14px)}.welcome-content h1,.welcome-content h2{font-size:1.75rem}.welcome-content p{margin-bottom:10px;font-size:.75rem}.welcome-content .scene-eyebrow{display:none}.calibration-overlay{left:calc(var(--safe-left) + var(--scene-edge));right:calc(var(--safe-right) + var(--scene-edge))}.calibration-overlay .welcome-content{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:center;gap:8px 24px;width:100%;max-width:720px;display:grid}.calibration-overlay h2{grid-area:1/1;margin:0;font-size:1.75rem}.calibration-overlay p{grid-area:2/1;max-width:none;margin:0;font-size:.875rem;line-height:1.5}.calibration-overlay .calibration-track{grid-area:3/1;margin:2px auto 0}.calibration-overlay .scene-link{grid-area:1/2/span 3;align-self:center;width:100%;margin:0}.calibration-overlay .calibration-demo{grid-row:1;align-self:end}.calibration-overlay .calibration-demo+.scene-link{grid-row:2;align-self:start}.app-shell[data-mode=demo][data-phase=playing] .flight-guidance{display:none}}@media (orientation:portrait) and (max-height:619px){.result-overlay{top:var(--overlay-top);bottom:calc(var(--safe-bottom) + 16px)}.result-overlay .results-card{gap:12px;margin-block-start:auto;margin-block-end:auto}.result-overlay h2{margin-bottom:8px;font-size:clamp(1.625rem,8vw,2rem);line-height:1.1}.result-overlay .scene-eyebrow{margin-bottom:6px}.result-overlay .result-score{margin:10px 0 6px}.result-overlay .result-score strong,.result-overlay .result-score:not(.song-score) strong{font-size:4rem}.result-overlay .result-distance-label,.result-overlay .song-score-label{margin-bottom:6px}.result-overlay .result-best{margin-bottom:0}.result-overlay .result-note{margin-bottom:8px}}@media (orientation:landscape) and (max-height:619px){.result-overlay{top:var(--overlay-top);left:calc(var(--safe-left) + var(--scene-edge));right:calc(var(--safe-right) + var(--scene-edge))}.result-overlay .results-card{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:20px;width:min(100%,720px);margin-block-start:auto;margin-block-end:auto}.result-overlay h2{letter-spacing:-.5px;margin-bottom:8px;font-size:1.5rem;line-height:1.15}.result-overlay .scene-eyebrow{margin-bottom:4px}.result-overlay .result-score{margin:8px 0 4px}.result-overlay .result-score strong,.result-overlay .result-score:not(.song-score) strong{font-size:3rem}.result-overlay .result-score:not(.song-score)>span{font-size:1.3125rem}.result-overlay .result-distance-label,.result-overlay .song-score-label{margin-bottom:6px;font-size:.75rem;line-height:1.5}.result-overlay .result-best,.result-overlay .result-note{margin-bottom:0;font-size:.75rem;line-height:1.5}.result-overlay .result-actions{gap:8px}.result-actions .primary-button,.result-actions .scene-link,.result-actions .course-switcher{padding-inline-start:12px;padding-inline-end:12px}}.game-dialog{color:#f2eddf;background:#19343e;border-color:#bdd8d52b;box-shadow:0 20px 80px #061a2466}.game-dialog::backdrop{background:#071c2ab3}.dialog-header{padding-bottom:18px}.dialog-header .icon-button{color:#e6efea;background:#ffffff0d;border-color:#c7dcda55}.dialog-header .icon-button:active{background:#ffffff24}.dialog-body{padding-top:0}.setting-section{border:0;padding:12px 0 22px}.setting-section h3{color:#c2d3d0;text-transform:none;letter-spacing:0;font-size:.8125rem;font-weight:400}.language-options{border-color:#c7dcda30;border-radius:16px;width:100%;padding:4px}.language-option{flex:1}.language-option>span{color:#d5e2de;border-radius:12px}.language-option input:checked+span{color:#233f40;background:#f8eccd}.language-option input:focus-visible+span{outline-color:#f5d58f}.setting-row{color:#f2eddf;border-top:1px solid #bdd8d51f;min-height:60px;padding:16px 0}.setting-row>span:last-child{color:inherit;font-size:inherit}.game-dialog .primary-button{color:#28483e;background:#f8eccd}.help-copy{color:#ccdbd7;line-height:1.7}.help-copy p{margin-bottom:24px}.help-copy strong{color:#f4edda;margin-bottom:5px;font-weight:500;display:inline-block}.game-dialog button:focus-visible{outline-color:#f5d58f}.game-dialog a:focus-visible{outline-color:#f5d58f}.journey-choice{color:#d1dfda}.journey-choice.selected{color:#f8eccd;background:#ffffff0d;border-color:#c7dcda40}.journey-copy strong{color:#f2eddf}.journey-copy small,.journey-status{color:#c2d3d0}.journey-number{color:#c2d3d0;border-color:#c7dcda40}.journey-choice.selected .journey-number,.journey-choice.completed:not(.selected) .journey-number{color:#f8eccd;background:#ffffff14;border-color:#c7dcda40}@media (hover:hover){.dialog-header .icon-button:hover,.journey-choice:hover:not(:disabled){background:#ffffff0d}.game-dialog .primary-button:hover:not(:disabled){background:#fff1ce}.setting-row:hover,.settings-privacy:hover{color:#f8eccd}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}@font-face{font-family:Nunito;src:url(/play/fonts/nunito-latin-800.woff2)format("woff2");font-weight:800;font-style:normal;font-display:swap}.note-theme,.note-theme body,.note-theme #root{color:#111;background:#fff}.note-app,.note-sheet{color:#111;background:#fff;font-family:DM Sans,system-ui,sans-serif;font-size:1.125rem;font-weight:400;line-height:1.45}.note-app *,.note-sheet *{box-sizing:border-box}.note-app h1,.note-app h2,.note-app h3,.note-sheet h1,.note-sheet h2,.note-sheet h3{letter-spacing:-.035em;font-family:inherit;font-weight:560}.note-app button,.note-sheet button,.note-app input{font:inherit;color:inherit}.note-app p,.note-sheet p{margin:0}.note-app button:focus-visible{outline-offset:5px;outline:2px solid #111}.note-sheet button:focus-visible{outline-offset:5px;outline:2px solid #111}.note-sheet a:focus-visible{outline-offset:5px;outline:2px solid #111}.note-app input:focus-visible{outline-offset:5px;outline:2px solid #111}.note-app ::selection,.note-sheet ::selection{color:#fff;background:#111}.note-app{--note-edge:24px;--note-top:max(20px, env(safe-area-inset-top,0px));--note-bottom:max(24px, env(safe-area-inset-bottom,0px));--note-left:max(24px, env(safe-area-inset-left,0px));--note-right:max(24px, env(safe-area-inset-right,0px));width:100%;height:100vh;height:100svh;isolation:isolate;height:100dvh;position:relative;overflow:hidden}.note-button,.note-text-button,.note-icon-button{cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;border:0;justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.note-app .note-button{color:#fff;background:#111;border:1.5px solid #111;border-radius:999px;gap:10px;width:100%;min-height:56px;padding:12px 24px;font-size:1.25rem;font-weight:550;line-height:1.35}.note-app .note-button-secondary{color:#111;background:#fff}.note-app .note-button:active{color:#fff;background:#303030}.note-app .note-button-secondary:active{color:#111;background:#eee}.note-text-button{background:0 0;border-radius:12px;min-width:80px;min-height:48px;padding:10px 16px;font-size:1.125rem;line-height:1.4}.note-text-button:active{background:#f2f2f2}.note-icon-button{background:0 0;border-radius:50%;width:48px;min-width:48px;height:48px;padding:0}.note-home{width:min(100%,488px);height:100%;padding:var(--note-top) var(--note-right) var(--note-bottom) var(--note-left);overscroll-behavior:contain;grid-template-rows:max-content minmax(min-content,1fr) max-content;row-gap:clamp(16px,2.8svh,26px);margin:0 auto;display:grid;overflow-y:auto}.note-home-header{grid-template-columns:minmax(0,1fr) 48px;align-items:center;gap:12px;min-height:48px;display:grid}.note-brand{letter-spacing:-.055em;min-width:0;font-family:Fraunces,Georgia,serif;font-size:clamp(1.6rem,7.3vw,2.125rem);font-weight:400;line-height:1.15}.note-app .note-settings{color:#fff;background:#111;align-self:start}.note-settings:active{background:#303030}.note-home-intro{align-content:center;justify-items:center;gap:12px;min-width:0;display:grid}.note-home-illustration{object-fit:contain;width:min(100%,320px);height:clamp(92px,19svh,160px);display:block}.note-home-instruction{text-align:center;text-wrap:balance;font-size:1.125rem;font-weight:450;line-height:1.4}.note-listening-hero>svg{display:block;overflow:visible}.note-home-actions{width:100%;min-width:0;margin:0 auto}.note-course-list{gap:14px;display:grid}.note-course-button{color:#111;text-align:left;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:#fff;border:1.75px solid #111;border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 12px;width:100%;min-width:0;min-height:104px;padding:14px 18px;display:flex}.note-course-copy{flex:1 0 min(100%,8rem);gap:4px;min-width:0;display:grid}.note-course-name{letter-spacing:-.025em;overflow-wrap:anywhere;font-size:1.375rem;font-weight:600;line-height:1.25}.note-course-detail{color:#444;overflow-wrap:anywhere;font-size:.9375rem;line-height:1.4}.note-course-preview{flex:0 auto;width:clamp(92px,30vw,144px);max-width:100%;height:auto;display:block}.note-course-button:active{color:#fff;background:#111}.note-course-button:active .note-course-detail{color:#fff}.note-home-secondary{justify-content:center;align-items:center;min-height:48px;padding-top:16px;display:flex}.note-rotation-hint{text-align:center;justify-content:center;align-items:center;gap:8px;font-size:1rem;line-height:1.4;display:flex}.note-rotation-hint svg{flex:0 0 22px}.note-best{text-align:center;font-size:1.125rem;line-height:1.5}.note-listening{width:100%;height:100%;padding:calc(var(--note-top) + 48px) var(--note-right) calc(var(--note-bottom) + 32px) var(--note-left);grid-template-rows:minmax(min-content,1fr) minmax(190px,1.4fr) auto auto;place-items:center;gap:16px;display:grid;position:relative;overflow-y:auto}.note-listening h1{text-align:center;text-wrap:balance;max-width:410px;margin:0;font-size:clamp(1.5rem,5.8vw,1.875rem);font-weight:500;line-height:1.35}.note-listening-hero{grid-row:2;justify-content:center;align-items:center;display:flex}.note-listening .note-error{grid-row:3}.note-cancel{grid-row:4}.note-game-field{top:calc(var(--note-top) + 88px);right:0;bottom:var(--note-bottom);position:absolute;left:0;overflow:hidden}.note-game-field>canvas{width:100%;height:100%;display:block}.note-hud{z-index:2;top:var(--note-top);right:var(--note-right);left:var(--note-left);grid-template-columns:minmax(48px,1fr) minmax(100px,148px) minmax(48px,1fr);align-items:center;gap:16px;min-height:56px;display:grid;position:absolute}.note-score{font-variant-numeric:tabular-nums;font-size:1.6875rem;font-weight:550;line-height:1}.note-energy-group{grid-template-rows:auto 12px;gap:5px;width:100%;display:grid}.note-energy-label{text-align:center;font-size:1rem;line-height:1.3}.note-energy-meter{border:1px solid #111;border-radius:99px;width:100%;height:12px;padding:2px;display:block;overflow:hidden}.note-energy-meter>span{background:#111;border-radius:99px;height:100%;display:block}.note-app .note-pause{color:#fff;background:#111;justify-self:end}.note-pause-space{justify-self:end;width:48px;height:48px}.note-pause-panel{z-index:3;top:calc(var(--note-top) + 80px);width:min(calc(100% - var(--note-left) - var(--note-right)), 400px);max-height:calc(100% - var(--note-top) - var(--note-bottom) - 80px);text-align:center;background:#fff;padding:16px 0 24px;position:absolute;left:50%;overflow-y:auto;transform:translate(-50%)}.note-pause-panel h1{margin:0 0 16px;font-size:2rem;line-height:1.2}.note-pause-actions{gap:12px;display:grid}.note-error{text-align:center;overflow-wrap:anywhere;max-width:480px;font-size:1.0625rem;line-height:1.55;margin:0 auto 20px!important}.note-result{width:100%;height:100%;padding:calc(var(--note-top) + 32px) var(--note-right) var(--note-bottom) var(--note-left);grid-template-rows:minmax(min-content,1fr) auto;place-items:center;gap:24px;display:grid;overflow-y:auto}.note-result-summary{text-align:center;align-self:center}.note-result-summary h1{margin:0 0 24px;font-weight:600;line-height:1}.note-result-course{letter-spacing:-.025em;margin-bottom:20px;font-size:1.25rem;font-weight:500;line-height:1.35;display:block}.note-result-number{font-variant-numeric:tabular-nums;letter-spacing:-.055em;font-size:clamp(5rem,23vw,7rem);display:block}.note-result-unit{letter-spacing:-.025em;margin-top:12px;font-size:1.5625rem;font-weight:450;display:block}.note-result-actions{text-align:center;gap:12px;width:min(100%,400px);display:grid}.note-result-actions>.note-text-button{justify-self:center}.note-share-notice{min-height:0;font-size:1rem;line-height:1.45}.note-share-notice:empty{display:none}.note-small-notice{max-width:320px;font-size:1rem;line-height:1.45;margin:12px auto 0!important}.note-demo-control{z-index:4;bottom:var(--note-bottom);left:var(--note-left);right:var(--note-right);background:#fff;grid-template-columns:auto minmax(90px,260px);align-items:center;gap:8px 16px;padding:8px 12px;font-size:1rem;display:grid;position:absolute}.note-demo-control input{accent-color:#111;width:100%;min-height:48px}.note-demo-control span{grid-column:1/-1;font-size:.875rem}.note-app[data-demo=true] .note-game-field{bottom:calc(var(--note-bottom) + 96px)}.note-sheet{width:100%;max-width:none;height:100vh;height:100svh;border:0;height:100dvh;max-height:none;margin:0;padding:0;position:fixed;top:0;bottom:0;left:0;right:0;overflow:hidden}.note-sheet::backdrop{background:#fff}.note-sheet[open]{flex-direction:column;display:flex}.note-sheet-header{min-height:calc(max(20px, env(safe-area-inset-top,0px)) + 64px);padding:calc(max(20px, env(safe-area-inset-top,0px)) + 8px) max(72px, env(safe-area-inset-right,0px)) 8px max(72px, env(safe-area-inset-left,0px));flex-shrink:0;justify-content:center;align-items:center;display:flex;position:relative}.note-sheet-header h2{text-align:center;margin:0;font-size:clamp(1.5rem,6vw,1.875rem);line-height:1.2}.note-back{left:max(16px, env(safe-area-inset-left,0px));position:absolute;bottom:8px}.note-back svg{transform:rotate(180deg)}.note-sheet-body{width:min(100%,680px);padding:40px max(24px, env(safe-area-inset-right,0px)) max(32px, env(safe-area-inset-bottom,0px)) max(24px, env(safe-area-inset-left,0px));overscroll-behavior:contain;-webkit-overflow-scrolling:touch;margin:0 auto;overflow-y:auto}.note-settings-content{gap:20px;display:grid}.note-language{border:0;min-width:0;margin:0 0 8px;padding:0}.note-language legend{margin-bottom:12px;font-size:1.125rem}.note-language>div{border:1px solid #111;border-radius:99px;grid-template-columns:1fr 1fr;display:grid;overflow:hidden}.note-language button{background:#fff;border:0;border-radius:0;min-width:0;min-height:52px;padding:10px 16px;font-size:1.125rem}.note-language button[aria-pressed=true]{color:#fff;background:#111}.note-settings-row{text-align:left;background:0 0;border:0;justify-content:space-between;align-items:center;gap:16px;width:100%;min-height:64px;padding:12px 0;display:flex;font-size:1.25rem!important}.note-help{gap:40px;display:grid}.note-help-environment{font-size:1.0625rem;line-height:1.6}.note-help-row{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.note-help-picture{flex:0 0 112px;width:112px;height:112px;display:block;overflow:visible}.note-help-row p{overflow-wrap:anywhere;flex:10rem;min-width:0;font-size:1.125rem;line-height:1.55}.note-help-row p span{display:block}.note-sheet .privacy-policy{color:#111;font-size:1.0625rem;line-height:1.6}.note-sheet .privacy-policy p{margin:0 0 18px}.note-sheet .privacy-policy h3{color:#111;margin:30px 0 12px;font-size:1.25rem;font-weight:600}.note-sheet .privacy-policy strong{color:#111}.note-sheet .privacy-policy a{color:#111;text-underline-offset:3px;text-decoration:underline}.note-sheet .privacy-policy .privacy-updated{color:#555;font-size:1rem}.note-sheet .privacy-links{border:0;gap:4px;margin-top:24px;display:grid}.note-sheet .privacy-links a{background:0 0;border:0;align-items:center;min-height:48px;padding:8px 0;display:flex}.note-sheet-fallback{z-index:100;background:#fff;position:fixed;top:0;bottom:0;left:0;right:0}@media (orientation:landscape) and (max-height:619px){.note-app{--note-top:max(12px, env(safe-area-inset-top,0px));--note-bottom:max(16px, env(safe-area-inset-bottom,0px));--note-left:max(32px, env(safe-area-inset-left,0px));--note-right:max(32px, env(safe-area-inset-right,0px))}.note-home{grid-template-rows:max-content minmax(min-content,1fr);grid-template-columns:minmax(0,.9fr) minmax(260px,1.1fr);gap:12px 24px;width:min(100%,1000px)}.note-home-header{grid-column:1/-1}.note-brand{font-size:2rem}.note-home-intro{grid-area:2/1;gap:8px}.note-home-illustration{width:min(100%,300px);height:clamp(72px,26svh,120px)}.note-home-instruction{font-size:1.0625rem}.note-home-actions{grid-area:2/2;align-self:center}.note-course-list{gap:clamp(8px,1.7svh,12px)}.note-course-button{border-radius:10px;gap:6px 8px;min-height:clamp(68px,14svh,92px);padding:6px 12px}.note-course-copy{flex-basis:min(100%,7.4rem);gap:3px}.note-course-name{font-size:1.125rem}.note-course-detail{font-size:.9375rem;line-height:1.3}.note-course-preview{width:clamp(84px,14vw,128px)}.note-home-secondary{min-height:40px;padding-top:8px}.note-listening{padding:calc(var(--note-top) + 20px) calc(var(--note-right) + 24px) calc(var(--note-bottom) + 20px) calc(var(--note-left) + 24px);grid-template-rows:minmax(min-content,1fr) auto;grid-template-columns:minmax(160px,.9fr) minmax(0,1.1fr);gap:8px 32px}.note-listening h1{grid-area:1/2;align-self:center;max-width:400px;font-size:1.625rem}.note-listening-hero{grid-area:1/1/3}.note-listening .note-error,.note-cancel{grid-area:2/2}.note-game-field{top:calc(var(--note-top) + 68px)}.note-hud{grid-template-columns:minmax(48px,1fr) minmax(120px,180px) minmax(48px,1fr);min-height:48px}.note-score{font-size:1.6875rem}.note-energy-group{grid-template-rows:auto 10px;gap:3px}.note-energy-meter{height:10px;padding:1px}.note-pause-panel{top:calc(var(--note-top) + 58px);width:min(calc(100% - var(--note-left) - var(--note-right)), 420px);max-height:calc(100% - var(--note-top) - var(--note-bottom) - 58px);padding:12px 0 20px}.note-pause-panel h1{margin-bottom:12px;font-size:1.75rem}.note-pause-actions{grid-template-columns:1fr 1fr;gap:12px}.note-pause-actions .note-button{padding-inline-start:16px;padding-inline-end:16px;font-size:1.125rem}.note-result{padding:calc(var(--note-top) + 24px) calc(var(--note-right) + 24px) calc(var(--note-bottom) + 12px) calc(var(--note-left) + 24px);grid-template-rows:minmax(min-content,1fr);grid-template-columns:minmax(0,1fr) minmax(240px,1fr);gap:40px}.note-result-number{font-size:clamp(4.75rem,23vh,6.25rem)}.note-result-unit{margin-top:8px;font-size:1.4375rem}.note-result-course{margin-bottom:16px;font-size:1.125rem}.note-result-summary h1{margin-bottom:20px}.note-result-actions{gap:12px;max-width:360px}.note-result .note-best{font-size:1.0625rem}.note-sheet-header{min-height:calc(max(12px, env(safe-area-inset-top,0px)) + 56px);padding-top:calc(max(12px, env(safe-area-inset-top,0px)) + 4px);padding-bottom:4px}.note-sheet-header h2{font-size:1.75rem}.note-sheet-body{padding-top:24px}.note-help{gap:28px}}@media (max-width:359px){.note-app{--note-left:max(20px, env(safe-area-inset-left,0px));--note-right:max(20px, env(safe-area-inset-right,0px))}.note-brand{font-size:1.5rem}.note-course-button{gap:6px 10px;padding:10px 12px}.note-course-name{font-size:1.125rem}.note-course-detail{font-size:.9375rem}.note-course-preview{width:86px}.note-hud{grid-template-columns:48px minmax(90px,1fr) 48px;gap:12px}.note-help-row{gap:12px}.note-help-picture{flex-basis:88px;width:88px;height:106px}.note-help-row p{font-size:1.0625rem}.note-rotation-hint{font-size:.9375rem}}@media (max-height:740px) and (orientation:portrait){.note-home{row-gap:16px}.note-home-illustration{height:clamp(72px,16svh,118px)}.note-course-list{gap:12px}.note-course-button{min-height:88px;padding-block-start:10px;padding-block-end:10px}.note-home-secondary{min-height:44px;padding-top:12px}}@media (max-height:619px) and (orientation:portrait){.note-home{row-gap:8px}.note-home-intro{gap:8px}.note-home-illustration{height:72px}.note-home-instruction{font-size:1.0625rem}.note-course-list{gap:9px}.note-course-button{min-height:80px;padding:9px 14px}.note-home-secondary{min-height:36px;padding-top:4px}.note-listening{padding-top:calc(var(--note-top) + 20px);padding-bottom:var(--note-bottom);grid-template-rows:minmax(min-content,1fr) minmax(190px,1.1fr) auto auto;gap:8px}.note-result{padding-top:var(--note-top);gap:12px}.note-result-number{font-size:5rem}.note-result-summary h1{margin-bottom:16px}}@media (prefers-reduced-motion:reduce){.note-app *,.note-sheet *{scroll-behavior:auto!important}}.note-app h1,.note-app h2,.note-app h3,.note-sheet h1,.note-sheet h2,.note-sheet h3{font-family:Nunito,DM Sans,sans-serif;font-weight:800}.note-app .note-button{min-height:60px;font-family:Nunito,DM Sans,sans-serif;font-size:1.1875rem;font-weight:800}.note-app .note-button-secondary{border-color:#c5c5c1;min-height:54px;font-family:DM Sans,system-ui,sans-serif;font-weight:500}.note-home{grid-template-rows:48px minmax(min-content,1fr) auto;grid-template-columns:minmax(0,1fr);gap:12px;width:min(100%,430px)}.note-home-header{grid-area:1/1;justify-content:flex-end;display:flex}.note-home-intro{flex-direction:column;grid-area:2/1;justify-content:center;align-items:center;gap:17px;display:flex}.note-app .note-home-title{letter-spacing:-.055em;text-align:center;margin:0;font-size:clamp(2.75rem,12vw,3.375rem);line-height:.95}.note-home-hero{flex-shrink:0;width:138px;height:195px;display:block}.note-home-instruction{letter-spacing:-.03em;font-family:Nunito,DM Sans,sans-serif;font-size:1.25rem;font-weight:800;line-height:1.2}.note-app .note-start{width:min(100%,220px);min-height:70px;margin-top:2px;font-size:1.3125rem}.note-home-footer{text-align:center;grid-area:3/1;justify-items:center;gap:12px;padding-top:12px;display:grid}.note-quiet,.note-rotation-hint{color:#606060;font-size:.875rem;line-height:1.5}.note-rotation-hint{gap:6px}.note-rotation-hint svg{flex-basis:19px;width:19px;height:19px}.note-chooser{width:min(100%,480px);height:100%;padding:var(--note-top) var(--note-right) var(--note-bottom) var(--note-left);flex-direction:column;margin:0 auto;display:flex}.note-chooser-header{flex-shrink:0;min-height:48px;margin-left:-12px}.note-chooser-body{overscroll-behavior:contain;flex:1;min-height:0;padding-top:22px;padding-bottom:12px;overflow-y:auto}.note-app .note-chooser h1{letter-spacing:-.035em;margin:0 0 24px;font-size:1.875rem;line-height:1.15}.note-category-tabs{background:#f0f0ed;border-radius:18px;grid-template-columns:1fr 1fr;gap:4px;margin-bottom:28px;padding:4px;display:grid}.note-category-tabs button{color:#555;cursor:pointer;touch-action:manipulation;background:0 0;border:0;border-radius:14px;min-width:0;min-height:48px;padding:8px 10px;font-size:1rem;font-weight:500;line-height:1.3}.note-category-tabs button[aria-selected=true]{color:#fff;background:#111}.note-course-list{gap:14px}.note-course-button{border-width:1.5px;border-radius:20px;flex-wrap:nowrap;gap:14px;min-height:106px;padding:18px}.note-course-copy{flex:1;gap:5px}.note-course-name{letter-spacing:-.025em;overflow-wrap:normal;font-family:Nunito,DM Sans,sans-serif;font-size:1.3125rem;font-weight:800;line-height:1.25}.note-course-detail{color:#606060;font-size:.875rem}.note-course-preview{flex:none;width:106px;max-width:36%;height:auto}.note-song-button{min-height:114px}.note-song-button .note-course-name{font-size:1.25rem}.note-song-button .note-course-preview{width:90px;max-width:30%}.note-chooser-foot{color:#606060;font-size:.9375rem;line-height:1.5;margin-top:24px!important}.note-coming-soon{align-items:center;gap:9px;display:flex}.note-coming-soon svg{flex-shrink:0;width:15px;height:24px;display:block}.note-challenge{width:min(100%,520px);height:100%;padding:var(--note-top) var(--note-right) var(--note-bottom) var(--note-left);grid-template-rows:48px minmax(min-content,1fr) auto;gap:16px;margin:0 auto;display:grid;overflow-y:auto}.note-challenge-main{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:15px;padding-block-start:12px;padding-block-end:12px;display:flex}.note-challenge-eyebrow{color:#606060;font-size:.9375rem}.note-app .note-challenge h1{letter-spacing:-.035em;font-size:2rem;line-height:1.16}.note-challenge .note-course-preview{flex-shrink:0;width:190px;height:82px}.note-challenge-score{color:#606060;flex-direction:column;align-items:center;gap:4px;font-size:1rem;display:flex}.note-challenge-score strong{color:#121212;letter-spacing:-.04em;font-family:Nunito,DM Sans,sans-serif;font-size:3.25rem;font-weight:800;line-height:1.1}.note-challenge-instruction{font-size:1.125rem}.note-challenge-start{width:min(100%,360px)}.note-challenge .note-small-notice{max-width:360px;line-height:1.5}.note-share-fallback{gap:8px;width:100%;display:grid}.note-share-link-label{text-align:left;color:#606060;gap:6px;font-size:.875rem;display:grid}.note-share-link{color:#121212;width:100%;min-width:0;min-height:48px;font:inherit;background:#fff;border:1px solid #aaa;border-radius:12px;padding:12px}.note-browser-recovery{color:#606060;max-width:400px;font-size:.9375rem;line-height:1.5}.note-app-download{color:#606060;font-size:1rem}@media (orientation:landscape) and (max-height:619px){.note-challenge{grid-template-rows:48px minmax(min-content,1fr) auto;gap:4px;width:min(100%,800px)}.note-challenge-main{grid-template-rows:auto auto auto auto;grid-template-columns:1fr 1fr;gap:6px 24px;padding-block-start:0;padding-block-end:0;display:grid}.note-challenge-eyebrow{grid-area:1/1}.note-app .note-challenge h1{grid-area:2/1;font-size:1.75rem}.note-challenge .note-course-preview{grid-area:3/1;width:160px;height:56px}.note-challenge-score{grid-area:1/2/3}.note-challenge-score strong{font-size:2.75rem}.note-challenge-instruction{grid-area:3/2;font-size:1rem}.note-challenge-start{grid-area:4/2;min-height:52px}.note-challenge-main>.note-text-button{grid-area:4/1}.note-challenge-main>.note-small-notice,.note-challenge-main>.note-error,.note-challenge-main>.note-browser-recovery{grid-column:1/-1}}.note-chooser .note-error{margin-top:20px!important}.note-listening{padding:var(--note-top) var(--note-right) var(--note-bottom) var(--note-left);grid-template-rows:minmax(min-content,1fr) auto;grid-template-columns:1fr;justify-items:center;gap:18px;display:grid}.note-listening-main{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:22px;min-width:0;display:flex}.note-listening-hero{grid-area:auto}.note-listening-hero svg{width:150px;height:237px}.note-listening h1{letter-spacing:-.035em;grid-area:auto;font-size:2.125rem;font-weight:800;line-height:1.15}.note-listening-hint{color:#606060;max-width:300px;font-size:1.0625rem;line-height:1.5}.note-listening .note-error{grid-area:auto;margin-bottom:0!important}.note-cancel{color:#555;grid-area:2/1}.note-score{font-family:Nunito,DM Sans,sans-serif;font-size:1.9375rem;font-weight:800}.note-energy-label{color:#606060;font-size:.875rem}.note-energy-meter{background:#e7e7e3;border:0;height:8px;padding:0}.note-energy-group{grid-template-rows:auto 8px;gap:6px}.note-pause-panel h1{font-size:2.125rem}.note-result-summary h1{font-weight:800}.note-result-heading{justify-content:center;align-items:center;gap:10px;margin-bottom:10px;display:flex}.note-result-heading svg{flex-shrink:0;width:32px;height:51px}.note-result-course{max-width:320px;margin:0;font-size:1.25rem;font-weight:800;line-height:1.3}.note-result-number{font-size:clamp(5rem,26vw,6.75rem);font-weight:800}.note-result-number[data-song=true]{font-size:clamp(3.5rem,20vw,5rem)}.note-result-total{letter-spacing:-.03em;white-space:nowrap;font-size:.55em;font-weight:500}.note-result-unit{font-family:DM Sans,system-ui,sans-serif;font-size:1.1875rem;font-weight:400;line-height:1.4}.note-language legend{color:#606060;font-size:.9375rem}.note-language>div{background:#f0f0ed;border:0;border-radius:18px;gap:4px;padding:4px}.note-language button{background:0 0;border-radius:14px;min-height:48px;font-size:1.0625rem}.note-settings-row{border-bottom:1px solid #e5e5e2;min-height:72px;font-size:1.1875rem!important}@media (max-width:359px){.note-app .note-chooser h1{font-size:1.75rem}.note-course-button{gap:12px;min-height:88px;padding:15px}.note-course-name{font-size:1.1875rem}.note-course-preview{width:86px}.note-song-button .note-course-name{font-size:1.125rem}.note-song-button .note-course-preview{width:76px}.note-result-course{font-size:1.125rem}}@media (max-height:740px) and (orientation:portrait){.note-home{gap:8px}.note-home-intro{gap:13px}.note-home-hero{width:106px;height:153px}.note-app .note-home-title{font-size:2.75rem}.note-home-instruction{font-size:1.125rem}.note-app .note-start{width:200px;min-height:64px;font-size:1.25rem}.note-home-footer{gap:8px;padding-top:8px}.note-chooser-body{padding-top:16px}.note-app .note-chooser h1{margin-bottom:18px}.note-category-tabs{margin-bottom:20px}.note-course-list{gap:12px}.note-course-button:not(.note-song-button){min-height:80px;padding-block-start:13px;padding-block-end:13px}.note-chooser-foot{font-size:.875rem;margin-top:19px!important}.note-listening-main{gap:18px}.note-listening-hero svg{width:126px;height:199px}.note-listening h1{font-size:1.875rem}}@media (max-height:619px) and (orientation:portrait){.note-home-intro{gap:10px}.note-home-hero{width:96px;height:130px}.note-home-footer{padding-top:4px}.note-listening-main{gap:16px}.note-listening-hero svg{width:108px;height:170px}.note-result-heading{margin-bottom:6px}.note-result-heading svg{width:25px;height:40px}}@media (orientation:landscape) and (max-height:619px){.note-home{grid-template-rows:48px minmax(min-content,1fr) auto;grid-template-columns:1fr;gap:8px;width:min(100%,800px)}.note-home-header{grid-column:1}.note-home-intro{grid-area:2/1;grid-template-rows:auto auto;grid-template-columns:1fr 1fr;align-content:center;justify-items:center;gap:8px 28px;display:grid}.note-app .note-home-title{grid-area:1/1;font-size:clamp(2.1rem,7vw,2.75rem)}.note-home-hero{grid-area:2/1;width:82px;height:120px}.note-home-instruction{grid-area:1/2;align-self:end;font-size:1.1875rem}.note-app .note-start{grid-area:2/2;align-self:start;width:min(100%,220px);min-height:60px}.note-home-footer{grid-area:3/1;padding-top:0}.note-home-footer .note-rotation-hint{display:none}.note-chooser{width:min(100%,780px)}.note-chooser-body{padding-top:10px}.note-app .note-chooser h1{margin-bottom:18px;font-size:1.75rem}.note-category-tabs{margin-bottom:20px}.note-listening{padding:var(--note-top) var(--note-right) var(--note-bottom) var(--note-left);grid-template-rows:minmax(min-content,1fr) auto;grid-template-columns:1fr;gap:8px;display:grid}.note-listening-main{grid-template-rows:1fr auto auto 1fr;grid-template-columns:minmax(100px,.7fr) minmax(0,1.3fr);gap:10px 28px;width:min(100%,680px);display:grid}.note-listening-hero{grid-area:1/1/5}.note-listening-hero svg{width:112px;height:177px}.note-listening h1{grid-area:2/2;font-size:1.875rem}.note-listening-hint{grid-area:3/2;align-self:start;font-size:1rem}.note-listening .note-error{grid-area:4/2;align-self:start}.note-cancel{grid-area:2/1}.note-pause-panel h1{font-size:1.875rem}}
