:root{letter-spacing:.18px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font:18px/145% system-ui,Segoe UI,Roboto,sans-serif}#root{width:100%;height:100%}body{margin:0}*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{background:#efece6}:root[data-theme=dark]{background:#0d0d0f}body{background:inherit;touch-action:none;-webkit-user-select:none;user-select:none;overflow:hidden}.main-canvas{z-index:2;display:block;position:fixed;inset:0}.glass-dial{z-index:1;width:var(--gd-size,0px);height:var(--gd-size,0px);transform:translate3d(var(--gd-x,0px), var(--gd-y,0px), 0);pointer-events:none;-webkit-backdrop-filter:blur(18px)saturate(160%);opacity:0;background:radial-gradient(120% 120% at 28% 18%,#ffffff4d,#ffffff0f 42%,#ffffff05 70%);border:1px solid #ffffff52;border-radius:50%;transition:opacity .4s;position:fixed;top:0;left:0;box-shadow:inset 0 1px 1px #ffffff8c,inset 0 -10px 18px #00000024,0 10px 26px #00000038}.glass-dial--ready{opacity:1}:root[data-theme=light] .glass-dial{background:radial-gradient(120% 120% at 28% 18%,#ffffff73,#ffffff24 42%,#ffffff0d 70%);border-color:#ffffff8c;box-shadow:inset 0 1px 1px #ffffffbf,inset 0 -10px 18px #786e5f1a,0 10px 26px #3c322324}.permission-screen{z-index:2;color:#111;-webkit-font-smoothing:antialiased;text-align:center;background:#fafaf8;justify-content:center;align-items:center;padding:2rem;font-family:DM Sans,system-ui,sans-serif;display:flex;position:fixed;inset:0}.permission-screen:before{content:"";pointer-events:none;background:radial-gradient(60% 55% at 50% 42%,#d4500a0f,#d4500a00 70%);position:absolute;inset:0}.permission-card{z-index:1;flex-direction:column;align-items:center;gap:1rem;width:100%;max-width:460px;display:flex;position:relative}.permission-eyebrow{text-transform:uppercase;letter-spacing:.18em;color:#d4500a;margin-top:.25rem;font-size:.72rem;font-weight:700}.permission-title{color:#111;letter-spacing:-.03em;margin-top:-.5rem;font-size:clamp(1.7rem,4.5vw,2.4rem);font-weight:800;line-height:1.05}.permission-body{color:#111;margin-top:-.25rem;font-size:1rem;line-height:1.5}.permission-hint{color:#141414;font-size:.88rem;font-weight:500;line-height:1.5}.permission-error{color:#b3261e;font-size:.86rem;font-weight:500;line-height:1.4}.permission-buttons{flex-direction:column;align-items:center;gap:.75rem;width:100%;margin-top:.75rem;display:flex}.permission-btn-primary,.permission-btn-secondary{cursor:pointer;-webkit-backdrop-filter:blur(24px)saturate(130%);border-radius:2px;padding:.8rem 2.5rem;font-family:DM Sans,system-ui,sans-serif;font-size:.9rem;transition:color .3s,background .3s,border-color .3s,box-shadow .3s,transform .18s cubic-bezier(.34,1.56,.64,1);position:relative}.permission-btn-primary:before,.permission-btn-secondary:before{content:"";border-radius:inherit;pointer-events:none;-webkit-mask-composite:xor;background:linear-gradient(135deg,#fffcf5a6,#ffffff26 30%,#ffffff08 55%,#deecff66 100%);padding:1px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);-webkit-mask-position:0 0,0 0;mask-position:0 0,0 0;-webkit-mask-size:auto,auto;mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.permission-btn-primary:hover,.permission-btn-secondary:hover{transform:translateY(-1px)}.permission-btn-primary:active,.permission-btn-secondary:active{transform:scale(.96)}.permission-btn-primary{background:linear-gradient(#d4500a3d, #d4500a3d), var(--lg-top-fill);color:#d4500a;letter-spacing:.05em;text-transform:uppercase;box-shadow:inset 0 1px 0 var(--lg-top-rim), var(--lg-top-shadow);border:none;font-weight:700}.permission-btn-primary:hover{background:linear-gradient(#d4500a61, #d4500a61), var(--lg-top-fill-hover);box-shadow:inset 0 1px 0 var(--lg-top-rim), var(--lg-top-shadow-hover)}.permission-btn-secondary{border:1px solid var(--lg-top-stroke);background:var(--lg-top-fill);color:var(--lg-top-ink);box-shadow:inset 0 1px 0 var(--lg-top-rim), var(--lg-top-shadow);font-weight:500}.permission-btn-secondary:hover{background:var(--lg-top-fill-hover);box-shadow:inset 0 1px 0 var(--lg-top-rim), var(--lg-top-shadow-hover)}:root[data-theme=dark] .permission-screen{color:#f5f5f7;background:#131317}:root[data-theme=dark] .permission-title,:root[data-theme=dark] .permission-body{color:#f5f5f7}:root[data-theme=dark] .permission-hint{color:#d6d6da}.link-btn{color:#d4500a;cursor:pointer;font-size:inherit;background:0 0;border:none;font-weight:600;text-decoration:underline}.landing-screen{background:#0a0e1a;flex-direction:column;justify-content:center;align-items:center;gap:1.5rem;height:100vh;display:flex}.btn-primary{color:#0a0e1a;cursor:pointer;background:#f59e0b;border:none;border-radius:9999px;padding:.75rem 1.75rem;font-size:1rem;font-weight:600}.btn-primary:hover{background:#d97706}.landing-logo{width:72px;height:auto}.landing-title{color:#fff;letter-spacing:.1em;margin:0;font-family:monospace;font-size:4rem;font-weight:700}.landing-tagline{color:#fff9;margin:0;font-family:monospace;font-size:1.1rem}:root,:root[data-theme=light]{--lg-on-ink:#fafaf8;--lg-top-ink:#181613eb;--lg-top-ink-dim:#181613a8;--lg-top-fill:#faf9f661;--lg-top-fill-hover:#fffdfa80;--lg-top-stroke:#1816131f;--lg-top-rim:#ffffffe6;--lg-top-shadow:0 4px 16px #00000024;--lg-top-shadow-hover:0 6px 22px #0003;--lg-top-inner:#18161314;--lg-top-inner-hover:#18161329;--lg-bottom-ink:#181613eb;--lg-bottom-ink-dim:#181613a8;--lg-bottom-fill:#faf9f661;--lg-bottom-fill-hover:#fffdfa80;--lg-bottom-stroke:#1816131f;--lg-bottom-rim:#ffffffe6;--lg-bottom-shadow:0 4px 16px #00000024;--lg-bottom-shadow-hover:0 6px 22px #0003;--lg-bottom-inner:#18161314;--lg-bottom-inner-hover:#18161329}:root[data-theme=dark]{--lg-on-ink:#131317;--lg-top-ink:#ffffffeb;--lg-top-ink-dim:#ffffffb3;--lg-top-fill:#16161857;--lg-top-fill-hover:#22222670;--lg-top-stroke:#ffffff29;--lg-top-rim:#ffffff40;--lg-top-shadow:0 4px 16px #0006;--lg-top-shadow-hover:0 6px 22px #00000080;--lg-top-inner:#ffffff1f;--lg-top-inner-hover:#ffffff3d;--lg-bottom-ink:#ffffffeb;--lg-bottom-ink-dim:#ffffffb3;--lg-bottom-fill:#16161857;--lg-bottom-fill-hover:#22222670;--lg-bottom-stroke:#ffffff29;--lg-bottom-rim:#ffffff40;--lg-bottom-shadow:0 4px 16px #0006;--lg-bottom-shadow-hover:0 6px 22px #00000080;--lg-bottom-inner:#ffffff1f;--lg-bottom-inner-hover:#ffffff3d}:root:not([data-theme=dark])[data-hud-top=dark]{--lg-top-fill:#fcfaf6c2}:root:not([data-theme=dark])[data-hud-bottom=dark]{--lg-bottom-fill:#fcfaf6c2}:root[data-theme=dark][data-hud-top=light]{--lg-top-fill:#13151bb8}:root[data-theme=dark][data-hud-bottom=light]{--lg-bottom-fill:#13151bb8}.share-btn{color:var(--lg-top-ink);background:linear-gradient(to bottom, #ffffff1a, #fff0 45%), var(--lg-top-fill);border:1px solid var(--lg-top-stroke);cursor:pointer;-webkit-backdrop-filter:blur(18px)saturate(180%);box-shadow:inset 0 1px 0 var(--lg-top-rim), inset 0 -1px 1px #00000014, var(--lg-top-shadow);z-index:20;border-radius:999px;padding:.4rem 1rem;font-family:DM Sans,system-ui,sans-serif;font-size:.85rem;transition:color .3s,background .3s,border-color .3s,box-shadow .3s;position:fixed;top:3.5rem;right:1rem}.share-btn:hover{background:linear-gradient(to bottom, #ffffff1a, #fff0 45%), var(--lg-top-fill-hover);box-shadow:inset 0 1px 0 var(--lg-top-rim), inset 0 -1px 1px #00000014, var(--lg-top-shadow-hover)}.feedback-btn{color:var(--lg-top-ink);background:linear-gradient(to bottom, #ffffff1a, #fff0 45%), var(--lg-top-fill);border:1px solid var(--lg-top-stroke);cursor:pointer;-webkit-backdrop-filter:blur(18px)saturate(180%);box-shadow:inset 0 1px 0 var(--lg-top-rim), inset 0 -1px 1px #00000014, var(--lg-top-shadow);z-index:20;border-radius:999px;padding:.4rem 1rem;font-family:DM Sans,system-ui,sans-serif;font-size:.85rem;text-decoration:none;transition:color .3s,background .3s,border-color .3s,box-shadow .3s;position:fixed;top:6rem;right:1rem}.feedback-btn:hover{background:linear-gradient(to bottom, #ffffff1a, #fff0 45%), var(--lg-top-fill-hover);box-shadow:inset 0 1px 0 var(--lg-top-rim), inset 0 -1px 1px #00000014, var(--lg-top-shadow-hover)}.hud-bottom{z-index:20;flex-wrap:wrap;justify-content:center;align-items:center;gap:.6rem;max-width:calc(100vw - 2rem);display:flex;position:fixed;bottom:1.5rem;left:50%;transform:translate(-50%)}.instrument-select{color:var(--lg-bottom-ink);background:linear-gradient(to bottom, #ffffff1a, #fff0 45%), var(--lg-bottom-fill);border:1px solid var(--lg-bottom-stroke);cursor:pointer;appearance:none;-webkit-backdrop-filter:blur(18px)saturate(180%);box-shadow:inset 0 1px 0 var(--lg-bottom-rim), inset 0 -1px 1px #00000014, var(--lg-bottom-shadow);text-align:center;border-radius:999px;outline:none;padding:.4rem 1.1rem;font-family:DM Sans,system-ui,sans-serif;font-size:.85rem;transition:color .3s,background .3s,border-color .3s,box-shadow .3s}.instrument-select:hover{background:linear-gradient(to bottom, #ffffff1a, #fff0 45%), var(--lg-bottom-fill-hover);box-shadow:inset 0 1px 0 var(--lg-bottom-rim), inset 0 -1px 1px #00000014, var(--lg-bottom-shadow-hover)}.instrument-select option{color:#131317;background:#fff}:root[data-theme=dark] .instrument-select option{color:#fff;background:#111}.instrument-loading{color:var(--lg-bottom-ink-dim);white-space:nowrap;padding:0 .2rem;font-family:DM Sans,system-ui,sans-serif;font-size:.78rem}.octave-control{color:var(--lg-bottom-ink);background:linear-gradient(to bottom, #ffffff1a, #fff0 45%), var(--lg-bottom-fill);border:1px solid var(--lg-bottom-stroke);-webkit-backdrop-filter:blur(18px)saturate(180%);box-shadow:inset 0 1px 0 var(--lg-bottom-rim), inset 0 -1px 1px #00000014, var(--lg-bottom-shadow);border-radius:999px;align-items:center;gap:.3rem;padding:.25rem .45rem;font-family:DM Sans,system-ui,sans-serif;font-size:.85rem;transition:color .3s,background .3s,border-color .3s,box-shadow .3s;display:inline-flex}.octave-value{text-align:center;-webkit-user-select:none;user-select:none;min-width:4.2em}.octave-btn{background:var(--lg-bottom-inner);width:1.6rem;height:1.6rem;color:var(--lg-bottom-ink);cursor:pointer;border:none;border-radius:999px;justify-content:center;align-items:center;font-family:DM Sans,system-ui,sans-serif;font-size:1.05rem;line-height:1;transition:color .3s,background .3s;display:inline-flex}.octave-btn:hover:not(:disabled){background:var(--lg-bottom-inner-hover)}.octave-btn:disabled{opacity:.35;cursor:default}.arp-btn{background:linear-gradient(to bottom, #ffffff1a, #fff0 45%), var(--lg-bottom-fill);border:1px solid var(--lg-bottom-stroke);-webkit-backdrop-filter:blur(18px)saturate(180%);width:auto;height:auto;box-shadow:inset 0 1px 0 var(--lg-bottom-rim), inset 0 -1px 1px #00000014, var(--lg-bottom-shadow);padding:.4rem 1rem;font-size:.85rem;transition:color .3s,background .3s,border-color .3s,box-shadow .3s}.arp-btn:hover:not(:disabled){background:linear-gradient(to bottom, #ffffff1a, #fff0 45%), var(--lg-bottom-fill-hover)}.loop-panel{z-index:20;max-width:calc(100vw - 2rem);color:var(--lg-bottom-ink);flex-direction:column;align-items:center;gap:.5rem;font-family:DM Sans,system-ui,sans-serif;transition:color .3s;display:flex;position:fixed;bottom:4.6rem;left:50%;transform:translate(-50%)}@media (width<=800px){.loop-panel{bottom:7rem}}@media (width<=480px){.loop-panel{bottom:9.5rem}}.loop-slots{flex-wrap:wrap;justify-content:center;align-items:center;gap:.35rem;min-height:1.9rem;display:flex}.loop-empty{opacity:.6;font-size:.8rem}.loop-slot{background:var(--lg-bottom-fill);border:1px solid var(--lg-bottom-stroke);-webkit-backdrop-filter:blur(18px)saturate(180%);min-width:2.6em;box-shadow:inset 0 1px 0 var(--lg-bottom-rim);border-radius:999px;justify-content:center;align-items:center;padding:.25rem .6rem;font-size:.82rem;transition:color .3s,background .3s,border-color .3s,transform .15s;display:inline-flex}.loop-slot--active{background:var(--lg-bottom-ink);color:var(--lg-on-ink);border-color:var(--lg-bottom-ink);transform:translateY(-2px)}.loop-controls{background:linear-gradient(to bottom, #ffffff1a, #fff0 45%), var(--lg-bottom-fill);border:1px solid var(--lg-bottom-stroke);-webkit-backdrop-filter:blur(18px)saturate(180%);box-shadow:inset 0 1px 0 var(--lg-bottom-rim), inset 0 -1px 1px #00000014, var(--lg-bottom-shadow);border-radius:999px;align-items:center;gap:.4rem;padding:.3rem .5rem;transition:background .3s,border-color .3s,box-shadow .3s;display:inline-flex}.loop-btn{color:var(--lg-bottom-ink);background:var(--lg-bottom-inner);cursor:pointer;border:1px solid #0000;border-radius:999px;padding:.35rem .75rem;font-family:DM Sans,system-ui,sans-serif;font-size:.8rem;transition:color .3s,background .3s}.loop-btn:hover:not(:disabled){background:var(--lg-bottom-inner-hover)}.loop-btn:disabled{opacity:.35;cursor:default}.loop-btn--play.is-playing{background:var(--lg-bottom-ink);color:var(--lg-on-ink)}.loop-btn--arm.is-armed{background:var(--lg-bottom-ink);color:var(--lg-on-ink);animation:1.6s ease-in-out infinite loop-arm-pulse}@keyframes loop-arm-pulse{0%,to{opacity:1}50%{opacity:.7}}.loop-saved{flex-direction:column;gap:.3rem;max-width:100%;display:flex}.loop-saved-row{background:var(--lg-bottom-fill);border:1px solid var(--lg-bottom-stroke);border-radius:999px;align-items:center;gap:.4rem;padding:.2rem .5rem .2rem .8rem;font-size:.78rem;display:inline-flex}.loop-saved-name{text-overflow:ellipsis;white-space:nowrap;flex:1;max-width:10rem;overflow:hidden}.loop-bpm{align-items:center;gap:.25rem;display:inline-flex}.loop-bpm-value{text-align:center;-webkit-user-select:none;user-select:none;min-width:4.6em;font-size:.8rem}.record-btn{cursor:pointer;-webkit-backdrop-filter:blur(18px)saturate(180%);box-shadow:inset 0 1px 0 var(--lg-top-rim), inset 0 -1px 1px #00000014, var(--lg-top-shadow);z-index:20;border:1px solid #0000;border-radius:999px;align-items:center;gap:.45rem;padding:.4rem 1rem;font-family:DM Sans,system-ui,sans-serif;font-size:.85rem;transition:color .3s,background .3s,border-color .3s,box-shadow .3s;display:inline-flex;position:fixed;top:1rem;left:1rem}.record-btn:hover{box-shadow:inset 0 1px 0 var(--lg-top-rim), inset 0 -1px 1px #00000014, var(--lg-top-shadow-hover)}.rec-dot{background:var(--lg-top-ink);border:1px solid #1116;border-radius:999px;flex-shrink:0;width:9px;height:9px;transition:background .3s;display:inline-block}.record-btn--idle{color:var(--lg-top-ink);background:linear-gradient(to bottom, #ffffff1a, #fff0 45%), var(--lg-top-fill);border-color:var(--lg-top-stroke)}.record-btn--idle:hover{background:linear-gradient(to bottom, #ffffff1a, #fff0 45%), var(--lg-top-fill-hover)}.record-btn--recording{color:#fff;background:#be1c1cb3;border-color:#ff5a5aa6}.record-btn--recording .rec-dot--live{background:#ff3b3b;border-color:#ffffffd9;animation:1s ease-in-out infinite record-dot-blink}@keyframes record-dot-blink{0%,to{opacity:1}50%{opacity:.15}}@media (prefers-reduced-motion:reduce){.record-btn--recording .rec-dot--live{animation:none}}.record-btn--done{color:#fbbf24;background:#111111b8;border-color:#f59e0b8c}.record-btn--done:hover{color:#fcd34d;background:#221a08e0}.record-progress{z-index:30;background:#dc2626;height:3px;transition:width .1s linear;position:fixed;bottom:0;left:0}.record-progress--video{background:#7c3aed;bottom:3px}.record-progress--audio{background:#059669;bottom:6px}.vid-record-btn{cursor:pointer;-webkit-backdrop-filter:blur(18px)saturate(180%);box-shadow:inset 0 1px 0 var(--lg-top-rim), inset 0 -1px 1px #00000014, var(--lg-top-shadow);z-index:20;white-space:nowrap;border:1px solid #0000;border-radius:999px;align-items:center;gap:.45rem;padding:.4rem 1rem;font-family:DM Sans,system-ui,sans-serif;font-size:.85rem;transition:color .3s,background .3s,border-color .3s,box-shadow .3s;display:inline-flex;position:fixed;top:3.5rem;left:1rem}.vid-record-btn:hover:not(:disabled){box-shadow:inset 0 1px 0 var(--lg-top-rim), inset 0 -1px 1px #00000014, var(--lg-top-shadow-hover)}.vid-record-btn--idle{color:var(--lg-top-ink);background:linear-gradient(to bottom, #ffffff1a, #fff0 45%), var(--lg-top-fill);border-color:var(--lg-top-stroke)}.vid-record-btn--idle:hover{background:linear-gradient(to bottom, #ffffff1a, #fff0 45%), var(--lg-top-fill-hover)}.vid-record-btn--requesting{color:var(--lg-top-ink-dim);background:var(--lg-top-fill);border-color:var(--lg-top-stroke);cursor:wait}.vid-record-btn--recording{color:#fff;background:#6d28d9b8;border-color:#a78bfaa6}.vid-record-btn--recording .rec-dot--live{background:#a78bfa;border-color:#ffffffd9}.audio-export-btn{cursor:pointer;-webkit-backdrop-filter:blur(18px)saturate(180%);box-shadow:inset 0 1px 0 var(--lg-top-rim), inset 0 -1px 1px #00000014, var(--lg-top-shadow);z-index:20;white-space:nowrap;border:1px solid #0000;border-radius:999px;align-items:center;gap:.45rem;padding:.4rem 1rem;font-family:DM Sans,system-ui,sans-serif;font-size:.85rem;transition:color .3s,background .3s,border-color .3s,box-shadow .3s;display:inline-flex;position:fixed;top:8.5rem;left:1rem}.audio-export-btn:hover:not(:disabled){box-shadow:inset 0 1px 0 var(--lg-top-rim), inset 0 -1px 1px #00000014, var(--lg-top-shadow-hover)}.audio-export-btn--idle{color:var(--lg-top-ink);background:linear-gradient(to bottom, #ffffff1a, #fff0 45%), var(--lg-top-fill);border-color:var(--lg-top-stroke)}.audio-export-btn--idle:hover{background:linear-gradient(to bottom, #ffffff1a, #fff0 45%), var(--lg-top-fill-hover)}.audio-export-btn--encoding{color:var(--lg-top-ink-dim);background:var(--lg-top-fill);border-color:var(--lg-top-stroke);cursor:wait}.audio-export-btn--recording{color:#fff;background:#059669b8;border-color:#34d399a6}.audio-export-btn--recording .rec-dot--live{background:#34d399;border-color:#ffffffd9}.replay-controls{z-index:30;flex-direction:column;align-items:center;gap:.75rem;display:flex;position:fixed;bottom:2rem;left:50%;transform:translate(-50%)}.replay-progress{background:#ffffff2e;border-radius:9999px;width:min(60vw,360px);height:4px;overflow:hidden}.replay-progress-fill{background:#f59e0b;height:100%;transition:width .1s linear}.replay-watermark{z-index:30;letter-spacing:.01em;color:#ffffffb8;-webkit-backdrop-filter:blur(8px);background:#00000059;border-radius:999px;padding:.7rem 1.5rem;font-size:1.6rem;text-decoration:none;position:fixed;bottom:1.5rem;right:1.5rem}.replay-watermark strong{color:#fff;font-weight:700}.replay-watermark:hover{color:#fff}:root[data-theme=light] .replay-watermark{color:#000000bf;background:#ffffff73}:root[data-theme=light] .replay-watermark strong,:root[data-theme=light] .replay-watermark:hover{color:#000000eb}.lp4{--lp-bg:#fff;--lp-bg-alt:#f5f5f7;--lp-card:#fff;--lp-ink:#1d1d1f;--lp-gray:#6e6e73;--lp-faint:#86868b;--lp-accent:#d4500a;--lp-hairline:#0000001a;--lp-col-tint:#00000006;--lp-card-shadow:0 2px 10px #0000000a, 0 10px 30px #0000000a;--lp-card-shadow-hover:0 6px 16px #00000012, 0 18px 44px #00000017;background:var(--lp-bg);color:var(--lp-ink);-webkit-font-smoothing:antialiased;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,SF Pro Text,Helvetica Neue,DM Sans,sans-serif;transition:background .35s,color .35s;position:fixed;inset:0;overflow:hidden auto}.lp4[data-theme=dark]{--lp-bg:#0b0b0d;--lp-bg-alt:#0f1013;--lp-card:#17181c;--lp-ink:#f5f5f7;--lp-gray:#a9a9b0;--lp-faint:#7c7c85;--lp-accent:#f2650f;--lp-hairline:#ffffff1a;--lp-col-tint:#ffffff09;--lp-card-shadow:0 2px 10px #0000004d, 0 14px 34px #00000059;--lp-card-shadow-hover:0 6px 16px #0006, 0 20px 48px #00000073}.lp4__corner{z-index:10;align-items:center;gap:14px;display:flex;position:fixed;top:16px;right:18px}.lp4__corner-home{z-index:10;align-items:center;display:inline-flex;position:fixed;top:16px;left:18px}.theme-toggle{cursor:pointer;background:0 0;border:none;border-radius:999px;flex-shrink:0;width:46px;height:25px;padding:0;position:relative}.theme-toggle__track{border-radius:inherit;border:1px solid var(--lp-hairline);background:#00000017;transition:background .25s,border-color .25s;position:absolute;inset:0}.theme-toggle.is-dark .theme-toggle__track{background:#ffffff1a}.theme-toggle__thumb{background:var(--lp-accent);border-radius:50%;justify-content:center;align-items:center;width:19px;height:19px;transition:transform .28s cubic-bezier(.34,1.56,.64,1),background .25s;display:flex;position:absolute;top:2px;left:2px;box-shadow:0 1px 4px #0000004d}.theme-toggle.is-dark .theme-toggle__thumb{background:#1d1d1f;transform:translate(21px)}.theme-toggle__icon{color:#fff;width:12px;height:12px;transition:opacity .2s;position:absolute}.theme-toggle__icon--sun{opacity:1}.theme-toggle__icon--moon,.theme-toggle.is-dark .theme-toggle__icon--sun{opacity:0}.theme-toggle.is-dark .theme-toggle__icon--moon{opacity:1}.lp4__wow{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:100svh;padding:0 22px 76px;display:flex;position:relative}.lp4__wow:before{content:"";pointer-events:none;background:radial-gradient(140% 120% at 50% 42%,#d4500a14,#d4500a0a 45%,#d4500a03 75%,#d4500a00);position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000 62%,#0000008c 82%,#0000 100%);mask-image:linear-gradient(#000 62%,#0000008c 82%,#0000 100%)}.lp4__wow>*{position:relative}.lp4__wow-ctas{margin-top:clamp(36px,6vh,64px);animation:.8s .35s both lp4-rise}.lp4__scroll-cue{cursor:pointer;font:inherit;color:var(--lp-gray);background:0 0;border:none;flex-direction:column;align-items:center;gap:2px;padding:8px 14px;font-size:13px;font-weight:500;transition:color .2s;animation:2.4s ease-in-out infinite lp4-cue;display:flex;position:absolute;bottom:16px;left:50%;transform:translate(-50%)}.lp4__scroll-cue:hover{color:var(--lp-accent)}.lp4__scroll-cue svg{width:20px;height:20px}@keyframes lp4-cue{0%,to{opacity:.65;transform:translate(-50%)}50%{opacity:1;transform:translate(-50%,6px)}}.living-logo{letter-spacing:-.01em;white-space:nowrap;color:var(--lp-ink);-webkit-user-select:none;user-select:none;cursor:default;touch-action:manipulation;font-family:DM Sans,system-ui,sans-serif;font-size:clamp(58px,15.5vw,210px);font-weight:900;line-height:.9;animation:.9s both lp4-logo-in}.living-logo__eyes{display:inline-block;position:relative}.living-logo__eye{transform-origin:50% 68%;border:.115em solid;border-radius:50%;width:.56em;height:.56em;margin:0 .012em;transition:transform 90ms ease-out;display:inline-block;position:relative}.living-logo__pupil{will-change:transform;background:currentColor;border-radius:50%;width:.145em;height:.145em;margin:-.0725em 0 0 -.0725em;position:absolute;top:50%;left:50%}.living-logo__smile{transform-origin:50% 0;width:.6em;height:.2em;transition:transform .3s cubic-bezier(.34,1.56,.64,1);position:absolute;top:100%;left:50%;overflow:visible;transform:translate(-50%)translateY(.055em)}.living-logo__smile path{stroke:var(--lp-accent);stroke-width:11px}.living-logo.is-excited .living-logo__smile{transform:translate(-50%)translateY(.065em)scale(1.22,1.4)}.living-logo.is-excited .living-logo__eye{transform:scale(1.06)}.living-logo__eye.is-blinking{transform:scaleY(.1)}.living-logo__face.is-nodding{animation:.9s cubic-bezier(.3,1.2,.5,1) both ll-nod}@keyframes ll-nod{0%{transform:translateY(0)rotate(0)}28%{transform:translateY(.055em)rotate(-1.4deg)}55%{transform:translateY(-.012em)rotate(.7deg)}78%{transform:translateY(.028em)rotate(-.5deg)}to{transform:translateY(0)rotate(0)}}.living-logo__face.is-poked{animation:.55s cubic-bezier(.34,1.56,.64,1) both ll-poke}@keyframes ll-poke{0%{transform:scale(1)}30%{transform:scale(1.045,.9)}62%{transform:scale(.975,1.04)}to{transform:scale(1)}}@media (width<=640px){.living-logo{font-size:20vw}}@media (prefers-reduced-motion:reduce){.living-logo,.living-logo__face.is-nodding,.living-logo__face.is-poked,.lp4__scroll-cue,.lp4__wow-ctas{animation:none}.living-logo__eye,.living-logo__smile{transition:none}}.lp4__hero{text-align:center;flex-direction:column;align-items:center;max-width:980px;margin:0 auto;padding:clamp(56px,10vh,96px) 22px 76px;display:flex;position:relative}.lp4__hero:before{content:"";pointer-events:none;z-index:0;background:radial-gradient(50% 50% at 50% 0,#d4500a12,#d4500a0b 35%,#d4500a04 65%,#d4500a01 85%,#d4500a00);width:140%;height:120%;position:absolute;top:0;left:50%;transform:translate(-50%)}.lp4__hero>*{z-index:1;position:relative}@keyframes lp4-logo-in{0%{opacity:0;transform:translateY(10px)scale(.92)}to{opacity:1;transform:none}}.lp4__headline{letter-spacing:-.015em;font-size:clamp(40px,7vw,64px);font-weight:600;line-height:1.05;animation:.8s both lp4-rise}.lp4__subhead{max-width:30em;color:var(--lp-gray);margin-top:18px;font-size:clamp(18px,2.4vw,21px);font-weight:400;line-height:1.45;animation:.8s 80ms both lp4-rise}.lp4__ctas{flex-wrap:wrap;justify-content:center;align-items:center;gap:24px;margin-top:28px;animation:.8s .16s both lp4-rise;display:flex}.lp4__pill{cursor:pointer;background:var(--lp-accent);color:#fff;font:inherit;border:none;border-radius:980px;padding:12px 26px;font-size:17px;font-weight:500;transition:filter .2s}.lp4__pill:hover{filter:brightness(1.08)}.lp4__pill:active{filter:brightness(.94)}.lp4__link-btn{cursor:pointer;font:inherit;color:var(--lp-accent);background:0 0;border:none;padding:12px 0;font-size:17px}.lp4__link-btn:hover{text-decoration:underline}.lp4__stage{width:100%;max-width:860px;margin-top:clamp(40px,7vh,64px);animation:.8s .24s both lp4-rise}.hero-dials{width:100%;height:auto;display:block}.hero-dials__label{fill:#ffffff80;text-anchor:middle;dominant-baseline:central;font-size:13px;font-weight:400}.hero-dials__label--on{fill:#fff;font-size:15px;font-weight:600}.hero-dials__center{fill:#fff;text-anchor:middle;dominant-baseline:central;font-size:19px;font-weight:600}.lp4__stage-caption{color:var(--lp-faint);text-align:center;margin-top:16px;font-size:14px}.lp4__section{text-align:center;flex-direction:column;align-items:center;padding:clamp(52px,7.5vh,88px) 22px;display:flex}.lp4__section--alt{background:var(--lp-bg-alt);transition:background .35s}.lp4__h2{letter-spacing:-.01em;font-size:clamp(28px,4.5vw,44px);font-weight:600;line-height:1.1}.lp4__prose{max-width:34em;color:var(--lp-gray);margin-top:18px;font-size:17px;line-height:1.55}.lp4__byline{letter-spacing:.08em;text-transform:uppercase;color:var(--lp-accent);margin-top:14px;font-size:13px;font-weight:600}.lp4__cards{grid-template-columns:repeat(3,1fr);gap:20px;width:100%;max-width:980px;margin-top:44px;display:grid}@media (width<=768px){.lp4__cards{grid-template-columns:1fr}}.lp4__card{background:var(--lp-card);text-align:left;box-shadow:var(--lp-card-shadow);border-radius:18px;padding:36px 28px;transition:background .35s,box-shadow .35s}.lp4__card-icon{width:30px;height:30px;color:var(--lp-accent);margin-bottom:22px;display:block}.lp4__card-icon svg{width:100%;height:100%}.lp4__card-step{letter-spacing:.06em;text-transform:uppercase;color:var(--lp-faint);margin-bottom:6px;font-size:12px;font-weight:600;display:block}.lp4__card-title{margin-bottom:8px;font-size:21px;font-weight:600}.lp4__card-body{color:var(--lp-gray);font-size:15px;line-height:1.5}.lp4__trust{color:var(--lp-faint);flex-wrap:wrap;justify-content:center;align-items:center;gap:8px 20px;margin-top:22px;font-size:13px;animation:.8s .2s both lp4-rise;display:flex}.lp4__trust span{align-items:center;gap:7px;display:inline-flex}.lp4__trust span:before{content:"";background:var(--lp-accent);opacity:.75;border-radius:50%;width:5px;height:5px}.lp4__songs{text-align:center;flex-direction:column;align-items:center;padding:clamp(56px,8vh,92px) 0;display:flex;overflow:hidden}.lp4__songs-head{max-width:640px;padding:0 22px}.lp4__marquee{flex-direction:column;gap:16px;width:100%;margin-top:40px;display:flex;-webkit-mask-image:linear-gradient(90deg,#0000,#000 7% 93%,#0000);mask-image:linear-gradient(90deg,#0000,#000 7% 93%,#0000)}.lp4__marquee-row{will-change:transform;gap:16px;width:max-content;display:flex}.lp4__marquee-row--a{animation:46s linear infinite lp4-marquee-a}.lp4__marquee-row--b{animation:52s linear infinite lp4-marquee-b}@keyframes lp4-marquee-a{0%{transform:translate(0)}to{transform:translate(-50%)}}@keyframes lp4-marquee-b{0%{transform:translate(-50%)}to{transform:translate(0)}}.lp4__song-chip{background:var(--lp-card);border:1px solid var(--lp-hairline);box-shadow:var(--lp-card-shadow);white-space:nowrap;border-radius:980px;flex-shrink:0;align-items:baseline;gap:10px;padding:12px 22px;display:inline-flex}.lp4__song-title{color:var(--lp-ink);font-size:16px;font-weight:600}.lp4__song-artist{color:var(--lp-faint);font-size:13px}.lp4__songs-cta{margin-top:36px;padding:0 22px}.lp4__features{grid-template-columns:repeat(3,1fr);gap:20px;width:100%;max-width:980px;margin-top:40px;display:grid}@media (width<=768px){.lp4__features{grid-template-columns:1fr}}.lp4__feature{background:var(--lp-card);border:1px solid var(--lp-hairline);text-align:left;box-shadow:var(--lp-card-shadow);border-radius:18px;padding:30px 26px}.lp4__feature-icon{width:26px;height:26px;color:var(--lp-accent);margin-bottom:16px;display:block}.lp4__feature-icon svg{width:100%;height:100%}.lp4__feature-title{color:var(--lp-ink);margin-bottom:6px;font-size:18px;font-weight:600}.lp4__feature-body{color:var(--lp-gray);font-size:14px;line-height:1.5}.lp4__cta-band-wrap{padding:0 22px clamp(48px,7vh,84px)}.lp4__cta-band{background:linear-gradient(150deg, var(--lp-accent), #a23b05 100%);color:#fff;text-align:center;border-radius:28px;flex-direction:column;align-items:center;max-width:980px;margin:0 auto;padding:clamp(52px,8vh,88px) 24px;display:flex}.lp4__cta-band .lp4__h2{color:#fff}.lp4__cta-band-sub{color:#ffffffe6;max-width:30em;margin-top:12px;font-size:17px;line-height:1.5}.lp4__cta-band .lp4__ctas{margin-top:26px}.lp4__cta-band .lp4__pill{color:var(--lp-accent);background:#fff}.lp4__cta-band .lp4__link-btn{color:#ffffffeb}@media (prefers-reduced-motion:reduce){.lp4__marquee-row--a,.lp4__marquee-row--b{animation:none}}.lp4__pricing-grid{text-align:left;grid-template-columns:repeat(3,1fr);gap:20px;width:100%;max-width:980px;margin-top:44px;display:grid}@media (width<=768px){.lp4__pricing-grid{grid-template-columns:1fr}}.lp4__pricing-card{background:var(--lp-card);border:1px solid var(--lp-hairline);box-shadow:var(--lp-card-shadow);border-radius:18px;padding:32px 28px;transition:background .35s,box-shadow .35s,border-color .35s}.lp4__pricing-card--highlight{background:linear-gradient(180deg, #d4500a17, var(--lp-card) 65%);border-color:#d4500a59}.lp4__pricing-head{align-items:center;gap:.6rem;display:flex}.lp4__pricing-name{color:var(--lp-ink);font-size:21px;font-weight:600}.lp4__pricing-badge{color:var(--lp-accent);text-transform:uppercase;letter-spacing:.08em;background:#d4500a1a;border:1px solid #d4500a40;border-radius:999px;padding:.12rem .55rem;font-size:10px;font-weight:700}.lp4__pricing-price{letter-spacing:-.01em;color:var(--lp-ink);margin-top:18px;font-size:28px;font-weight:600}.lp4__pricing-period{color:var(--lp-gray);margin-left:.15rem;font-size:14px;font-weight:500}.lp4__pricing-features{flex-direction:column;gap:.65rem;margin-top:22px;list-style:none;display:flex}.lp4__pricing-features li{color:var(--lp-gray);padding-left:1.3rem;font-size:15px;line-height:1.4;position:relative}.lp4__pricing-features li:before{content:"✓";color:var(--lp-accent);font-weight:700;position:absolute;left:0}.lp4__pricing-cta{cursor:pointer;background:var(--lp-accent);color:#fff;width:100%;font:inherit;border:none;border-radius:999px;margin-top:24px;padding:11px 20px;font-size:15px;font-weight:600;transition:filter .2s}.lp4__pricing-cta:hover:not(:disabled){filter:brightness(1.08)}.lp4__pricing-cta:active:not(:disabled){filter:brightness(.94)}.lp4__pricing-cta:disabled{opacity:.6;cursor:default}.lp4__pricing-current{text-align:center;color:var(--lp-gray);margin-top:24px;font-size:14px;font-weight:600}.lp4__pricing-toggle{border:1px solid var(--lp-hairline);background:var(--lp-card);border-radius:999px;gap:4px;margin-top:28px;padding:4px;display:inline-flex}.lp4__pricing-toggle-btn{cursor:pointer;color:var(--lp-gray);font:inherit;background:0 0;border:none;border-radius:999px;align-items:center;gap:.45rem;padding:7px 18px;font-size:14px;font-weight:600;transition:background .2s,color .2s;display:inline-flex}.lp4__pricing-toggle-btn.is-active{background:var(--lp-ink);color:var(--lp-bg)}.lp4__pricing-toggle-save{color:var(--lp-accent);text-transform:uppercase;letter-spacing:.06em;background:#d4500a1a;border:1px solid #d4500a40;border-radius:999px;padding:.12rem .5rem;font-size:10px;font-weight:700}.lp4__pricing-toggle-btn.is-active .lp4__pricing-toggle-save{color:var(--lp-bg);background:#ffffff24;border-color:#0000}.lp4__pricing-note{color:var(--lp-accent);margin-top:6px;font-size:13px;font-weight:500}.lp4__pricing-note--muted{color:var(--lp-gray)}.lp4__pricing-note--link{cursor:pointer;font:inherit;background:0 0;border:none;padding:0;text-decoration:underline}.lp4__cmp-scroll{width:100%;max-width:1020px;margin-top:40px;overflow-x:auto}.lp4__cmp{background:var(--lp-card);border:1px solid var(--lp-hairline);min-width:720px;box-shadow:var(--lp-card-shadow);text-align:left;border-radius:20px;overflow:hidden}.lp4__cmp-row{border-top:1px solid var(--lp-hairline);grid-template-columns:1.35fr 1fr 1fr 1fr;display:grid}.lp4__cmp-row--head{border-top:none}.lp4__cmp-lead{color:var(--lp-ink);align-items:center;padding:14px 20px 14px 28px;font-size:14px;font-weight:500;display:flex}.lp4__cmp-cell{color:var(--lp-gray);align-items:center;padding:14px 20px;font-size:14px;display:flex}.lp4__cmp-check{color:var(--lp-ink);font-weight:600}.lp4__cmp-dash{color:var(--lp-faint)}.lp4__cmp .is-plus{background:var(--lp-col-tint);border-left:1px solid var(--lp-hairline);border-right:1px solid var(--lp-hairline)}.lp4__cmp-plan{flex-direction:column;align-items:flex-start;gap:6px;padding:28px 20px 24px;display:flex}.lp4__cmp-name{color:var(--lp-ink);font-size:15px;font-weight:600}.lp4__cmp-price{letter-spacing:-.02em;color:var(--lp-ink);font-size:30px;font-weight:600;animation:.3s lp4-price-pop}@keyframes lp4-price-pop{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.lp4__cmp-price{animation:none}}.lp4__cmp-price--muted{color:var(--lp-gray);font-size:15px;font-weight:500;line-height:36px;animation:none}.lp4__cmp-period{color:var(--lp-gray);margin-left:.1rem;font-size:13px;font-weight:500}.lp4__cmp-sub{color:var(--lp-faint);min-height:2.2em;font-size:12.5px;line-height:1.45}.lp4__cmp-cta{width:100%;margin-top:8px;padding:9px 16px;font-size:14px}.lp4__cmp-plan .lp4__pricing-current{text-align:left;margin-top:8px}.lp4__pricing-name-row{align-items:center;gap:.55rem;display:flex}.lp4__pricing-name-row .lp4__pricing-badge{white-space:nowrap}.lp4__lock{width:44px;height:44px;color:var(--lp-accent);margin-bottom:22px}.lp4__lock svg{width:100%;height:100%}.lp4__footer{background:var(--lp-bg-alt);border-top:1px solid var(--lp-hairline);transition:background .35s,border-color .35s}.lp4__footer-inner{max-width:980px;color:var(--lp-faint);flex-wrap:wrap;justify-content:space-between;gap:12px;margin:0 auto;padding:18px 22px;font-size:12px;display:flex}.lp4__footer-inner a{color:inherit}.lp4__checkout-overlay{z-index:40;background:color-mix(in srgb, var(--lp-bg) 55%, transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);justify-content:center;align-items:center;padding:24px;animation:.35s both lp4-checkout-fade;display:flex;position:fixed;inset:0}.lp4__confetti{pointer-events:none;position:fixed;inset:0}.lp4__checkout-card{background:var(--lp-card);border:1px solid var(--lp-hairline);width:100%;max-width:430px;box-shadow:var(--lp-card-shadow-hover);text-align:center;border-radius:28px;padding:44px 40px 36px;animation:.5s cubic-bezier(.2,.9,.3,1.15) 50ms both lp4-checkout-pop;position:relative}.lp4__checkout-title{letter-spacing:-.02em;justify-content:center;gap:.24em;margin:0;font-size:clamp(30px,5vw,38px);font-weight:700;display:flex}.lp4__checkout-word{display:inline-flex}.lp4__checkout-word--accent{color:var(--lp-accent)}.lp4__checkout-char{animation:.6s cubic-bezier(.2,1.6,.35,1) both lp4-char-pop;display:inline-block}@keyframes lp4-char-pop{0%{opacity:0;transform:translateY(.65em)scale(.6)rotate(-8deg)}to{opacity:1;transform:translateY(0)scale(1)rotate(0)}}.lp4__checkout-card .lp4__smile-accent path{animation:.8s .45s both lp4-smile-draw}.lp4__checkout-lede{color:var(--lp-ink);margin:20px 0 0;font-size:17px;line-height:1.5}.lp4__checkout-fine{color:var(--lp-gray);margin:12px 0 0;font-size:13px;line-height:1.55}.lp4__checkout-cta{max-width:260px}.lp4__checkout-later{cursor:pointer;font:inherit;color:var(--lp-faint);background:0 0;border:none;margin:14px auto 0;font-size:13px;transition:color .2s;display:block}.lp4__checkout-later:hover{color:var(--lp-ink)}.lp4__checkout-toast{z-index:40;background:var(--lp-card);border:1px solid var(--lp-hairline);box-shadow:var(--lp-card-shadow);color:var(--lp-gray);border-radius:999px;align-items:center;gap:10px;padding:10px 18px;font-size:13px;animation:.3s both lp4-checkout-fade;display:flex;position:fixed;bottom:28px;left:50%;transform:translate(-50%)}.lp4__checkout-toast-close{cursor:pointer;color:var(--lp-faint);background:0 0;border:none;padding:0 2px;font-size:16px;line-height:1}@keyframes lp4-checkout-fade{0%{opacity:0}to{opacity:1}}@keyframes lp4-checkout-pop{0%{opacity:0;transform:scale(.92)translateY(14px)}to{opacity:1;transform:scale(1)translateY(0)}}@keyframes lp4-smile-draw{0%{stroke-dashoffset:60px}to{stroke-dashoffset:0}}.lp4 [data-reveal]{opacity:0;transition:opacity .7s,transform .7s;transform:translateY(16px)}.lp4 [data-reveal].is-in{opacity:1;transform:none}.lp4 [data-reveal] :is(.lp4__card,.lp4__feature,.lp4__pricing-card){opacity:0;transition:opacity .55s,transform .5s cubic-bezier(.3,1.25,.5,1),background .35s,box-shadow .3s,border-color .3s;transform:translateY(26px)scale(.98)}.lp4 [data-reveal].is-in :is(.lp4__card,.lp4__feature,.lp4__pricing-card){opacity:1;transform:none}.lp4 [data-reveal].is-in :is(.lp4__card,.lp4__feature,.lp4__pricing-card):nth-child(2){transition-delay:.1s}.lp4 [data-reveal].is-in :is(.lp4__card,.lp4__feature,.lp4__pricing-card):nth-child(3){transition-delay:.2s}.lp4 [data-reveal].is-in :is(.lp4__card,.lp4__feature,.lp4__pricing-card):hover{box-shadow:var(--lp-card-shadow-hover);transition-delay:0s;transform:translateY(-6px)}.lp4__card:hover .lp4__card-icon{transform-origin:50% 85%;animation:.7s lp4-wiggle}.lp4__feature:hover .lp4__feature-icon{animation:.55s cubic-bezier(.34,1.56,.64,1) lp4-bounce}.lp4__card-step{transition:color .25s}.lp4__card:hover .lp4__card-step{color:var(--lp-accent)}@keyframes lp4-wiggle{0%{transform:rotate(0)}25%{transform:rotate(-10deg)}55%{transform:rotate(8deg)}80%{transform:rotate(-4deg)}to{transform:rotate(0)}}@keyframes lp4-bounce{0%{transform:none}40%{transform:translateY(-7px)scale(1.12)}75%{transform:translateY(1px)scale(.96)}to{transform:none}}.lp4__marquee:hover .lp4__marquee-row{animation-play-state:paused}.lp4__song-chip{transition:transform .25s cubic-bezier(.34,1.56,.64,1),border-color .25s,box-shadow .25s}.lp4__song-chip:hover{border-color:var(--lp-accent);box-shadow:var(--lp-card-shadow-hover);transform:translateY(-4px)rotate(-1.2deg)}.lp4__song-chip:nth-child(2n):hover{transform:translateY(-4px)rotate(1.2deg)}.lp4__smile-accent{width:46px;height:14px;color:var(--lp-accent);margin:16px auto 0;display:block;overflow:visible}.lp4__smile-accent path{stroke:currentColor;stroke-width:5.5px;fill:none;stroke-linecap:round;stroke-dasharray:60;stroke-dashoffset:60px}.lp4 [data-reveal].is-in .lp4__smile-accent path{stroke-dashoffset:0;transition:stroke-dashoffset .8s .35s}.lp4__cta-band .living-logo{color:#fff;margin-bottom:.42em;font-size:clamp(40px,5.5vw,64px);animation:none}.lp4__cta-band .living-logo__smile path{stroke:#fff}@keyframes lp4-rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.lp4 [data-reveal],.lp4 [data-reveal] :is(.lp4__card,.lp4__feature,.lp4__pricing-card){opacity:1;transition:none;transform:none}.lp4__card:hover .lp4__card-icon,.lp4__feature:hover .lp4__feature-icon{animation:none}.lp4__song-chip{transition:none}.lp4__song-chip:hover,.lp4__song-chip:nth-child(2n):hover,.lp4 [data-reveal].is-in :is(.lp4__card,.lp4__feature,.lp4__pricing-card):hover{transform:none}.lp4__smile-accent path{stroke-dashoffset:0;transition:none;animation:none}.lp4__checkout-overlay,.lp4__checkout-card,.lp4__checkout-char,.lp4__checkout-toast,.lp4__headline,.lp4__subhead,.lp4__ctas,.lp4__stage{animation:none}}.landing-v2{color:#111;-webkit-font-smoothing:antialiased;font-family:DM Sans,system-ui,sans-serif;position:fixed;inset:0}.landing-v2__canvas{z-index:0;display:block;position:fixed;inset:0}.landing-v2__tagline{color:#111;font-size:.95rem;font-weight:400}.landing-v2__actions{flex-direction:column;align-items:center;gap:.75rem;display:flex}.landing-v2__btn-google{color:#111;cursor:pointer;background:#fff;border:1px solid #0000001f;border-radius:2px;align-items:center;gap:.75rem;padding:.8rem 2rem;font-family:DM Sans,system-ui,sans-serif;font-size:.9rem;font-weight:500;transition:border-color .15s,box-shadow .15s;display:flex}.landing-v2__btn-google:hover{border-color:#d4500a;box-shadow:0 0 0 1px #d4500a}.landing-v2__privacy{color:#111;letter-spacing:.02em;font-size:.78rem;font-weight:500}.onboarding-shell{--lp-bg:#fff;--lp-bg-alt:#f5f5f7;--lp-card:#fff;--lp-ink:#1d1d1f;--lp-gray:#6e6e73;--lp-accent:#d4500a;--lp-hairline:#0000001a;--lp-col-tint:#00000006;--lp-card-shadow:0 2px 10px #0000000a, 0 10px 30px #0000000a;--lp-card-shadow-hover:0 6px 16px #00000012, 0 18px 44px #00000017;background:var(--lp-bg);color:var(--lp-ink);-webkit-font-smoothing:antialiased;flex-direction:column;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,SF Pro Text,Helvetica Neue,DM Sans,sans-serif;transition:background .35s,color .35s;display:flex;position:fixed;inset:0;overflow-y:auto}.onboarding-shell[data-theme=dark]{--lp-bg:#0b0b0d;--lp-bg-alt:#0f1013;--lp-card:#17181c;--lp-ink:#f5f5f7;--lp-gray:#a9a9b0;--lp-accent:#f2650f;--lp-hairline:#ffffff1a;--lp-col-tint:#ffffff09;--lp-card-shadow:0 2px 10px #0000004d, 0 14px 34px #00000059;--lp-card-shadow-hover:0 6px 16px #0006, 0 20px 48px #00000073}.onboarding-shell:before{content:"";pointer-events:none;background:radial-gradient(60% 55% at 50% 42%,#d4500a0f,#d4500a00 70%);position:fixed;inset:0}.onboarding-header{z-index:1;justify-content:space-between;align-items:center;width:100%;max-width:600px;margin:0 auto;padding:1.75rem 2rem 0;display:flex;position:relative}.onboarding-header__end{align-items:center;gap:1rem;display:flex}.onboarding-progress{align-items:center;gap:.5rem;display:flex}.onboarding-progress__dot{border:1.5px solid var(--lp-hairline);background:0 0;border-radius:999px;width:7px;height:7px;transition:background .2s,border-color .2s,width .2s}.onboarding-progress__dot.is-done{background:color-mix(in srgb, var(--lp-accent) 35%, transparent);border-color:#0000}.onboarding-progress__dot.is-active{background:var(--lp-accent);border-color:#0000;width:22px}.onboarding-main{z-index:1;flex:1;justify-content:center;align-items:center;padding:2rem;display:flex;position:relative}.onboarding-step{text-align:center;flex-direction:column;align-items:center;gap:1.25rem;width:100%;max-width:560px;display:flex}@keyframes onboarding-rise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.onboarding-step>*{animation:.6s both onboarding-rise}.onboarding-step>:first-child{animation-delay:0s}.onboarding-step>:nth-child(2){animation-delay:60ms}.onboarding-step>:nth-child(3){animation-delay:.12s}.onboarding-step>:nth-child(4){animation-delay:.18s}.onboarding-step>:nth-child(5){animation-delay:.24s}@media (prefers-reduced-motion:reduce){.onboarding-step>*{animation:none}}.onboarding-eyebrow{text-transform:uppercase;letter-spacing:.18em;color:var(--lp-accent);font-size:.72rem;font-weight:700}.onboarding-title{color:var(--lp-ink);letter-spacing:-.02em;margin-top:-.5rem;font-size:clamp(1.7rem,4.5vw,2.4rem);font-weight:700;line-height:1.05}.onboarding-subtitle{color:var(--lp-gray);margin-top:-.5rem;font-size:1rem}.user-type-grid{flex-direction:column;gap:.625rem;width:100%;margin-top:.5rem;display:flex}.user-type-card{background:var(--lp-card);border:1px solid var(--lp-hairline);box-shadow:var(--lp-card-shadow);cursor:pointer;text-align:left;color:var(--lp-ink);border-radius:14px;align-items:center;gap:1rem;padding:1rem 1.25rem;font-family:inherit;transition:border-color .2s,box-shadow .2s,transform .2s;display:flex}.user-type-card:hover{border-color:var(--lp-accent);transform:translateY(-2px);box-shadow:0 10px 30px #d4500a29}.user-type-card:active{transform:translateY(0)}.user-type-emoji{flex-shrink:0;font-size:1.6rem}.user-type-text{flex:1}.user-type-label{font-size:1rem;font-weight:600;display:block}.user-type-description{color:var(--lp-gray);margin-top:.1rem;font-size:.85rem;display:block}.user-type-arrow{color:var(--lp-gray);flex-shrink:0;font-size:1.1rem;transition:transform .2s,color .2s}.user-type-card:hover .user-type-arrow{color:var(--lp-accent);transform:translate(4px)}.tips-list{text-align:left;flex-direction:column;gap:.625rem;width:100%;margin-top:.5rem;list-style:none;display:flex}.tip-item{background:var(--lp-card);border:1px solid var(--lp-hairline);color:var(--lp-ink);box-shadow:var(--lp-card-shadow);border-radius:12px;align-items:flex-start;gap:.875rem;padding:.9rem 1.1rem;font-size:.95rem;line-height:1.45;transition:border-color .2s,box-shadow .2s,transform .2s;display:flex}.tip-item:hover{border-color:var(--lp-accent);transform:translateY(-2px);box-shadow:0 10px 30px #d4500a24}.tip-icon{flex-shrink:0;font-size:1.2rem}.pricing-cards{grid-template-columns:1fr 1fr 1fr;gap:1rem;width:100%;margin-top:.5rem;display:grid}.pricing-card{background:var(--lp-card);border:1px solid var(--lp-hairline);text-align:left;box-shadow:var(--lp-card-shadow);border-radius:16px;padding:1.4rem;transition:border-color .2s,box-shadow .2s,transform .2s}.pricing-card:hover{transform:translateY(-3px);box-shadow:0 12px 34px #0000001a}.pricing-card--pro{background:linear-gradient(180deg, #d4500a0d, #d4500a03), var(--lp-card);border-color:#d4500a59}.pricing-card--pro:hover{border-color:var(--lp-accent);box-shadow:0 12px 34px #d4500a2e}.pricing-card h3{color:var(--lp-ink);letter-spacing:-.01em;align-items:center;gap:.5rem;margin-bottom:1rem;font-size:1.1rem;font-weight:700;display:flex}.pro-badge{color:#d4500a;text-transform:uppercase;letter-spacing:.08em;background:#d4500a1a;border:1px solid #d4500a40;border-radius:999px;padding:.12rem .5rem;font-size:.6rem;font-weight:700}.pricing-card-price{color:var(--lp-ink);letter-spacing:-.02em;margin-bottom:1rem;font-size:1.5rem;font-weight:700}.pricing-card-period{color:var(--lp-gray);margin-left:.15rem;font-size:.85rem;font-weight:600}.pricing-card ul{flex-direction:column;gap:.55rem;list-style:none;display:flex}.pricing-card li{color:var(--lp-gray);align-items:flex-start;gap:.5rem;font-size:.85rem;line-height:1.35;display:flex}.check{color:var(--lp-accent);flex-shrink:0;font-weight:700}.onboarding-btn{background:var(--lp-accent);color:#fff;cursor:pointer;border:none;border-radius:980px;margin-top:.5rem;padding:12px 28px;font-family:inherit;font-size:17px;font-weight:500;transition:filter .2s,transform .2s,box-shadow .2s}.onboarding-btn:hover{filter:brightness(1.08);transform:translateY(-2px);box-shadow:0 10px 24px #d4500a47}.onboarding-btn:active{filter:brightness(.94);transform:translateY(0)}@media (width<=720px){.pricing-cards{grid-template-columns:1fr}}.learn-nav-btn{color:var(--lg-top-ink);background:linear-gradient(to bottom, #ffffff1a, #fff0 45%), var(--lg-top-fill);border:1px solid var(--lg-top-stroke);cursor:pointer;-webkit-backdrop-filter:blur(18px)saturate(180%);box-shadow:inset 0 1px 0 var(--lg-top-rim), inset 0 -1px 1px #00000014, var(--lg-top-shadow);z-index:20;border-radius:999px;padding:.4rem 1rem;font-family:DM Sans,system-ui,sans-serif;font-size:.85rem;transition:color .3s,background .3s,border-color .3s,box-shadow .3s;position:fixed;top:6rem;left:1rem}.learn-nav-btn:hover{background:linear-gradient(to bottom, #ffffff1a, #fff0 45%), var(--lg-top-fill-hover)}.learn-page{-webkit-overflow-scrolling:touch;touch-action:pan-y;-webkit-user-select:text;user-select:text;--lrn-bg:#faf6f0;--lrn-bg-warm:#f1e7d9;--lrn-ink:#1c1712;--lrn-ink-soft:#574e45;--lrn-muted:#948a7d;--lrn-accent:#d4500a;--lrn-accent-deep:#a23b05;--lrn-accent-bright:#f26516;--lrn-card:#fff;--lrn-hairline:#402c161a;--lrn-hairline-strong:#402c162b;background:radial-gradient(120% 62% at 100% -4%, #d4500a1c, transparent 55%), radial-gradient(88% 48% at -6% 10%, #f2651614, transparent 52%), var(--lrn-bg);height:100vh;color:var(--lrn-ink);box-sizing:border-box;padding:2.75rem 1.5rem 6rem;font-family:DM Sans,system-ui,sans-serif;position:relative;overflow-y:auto}.learn-page:after,.learn-page:before,.learn-page__blobs,.learn-page__blob{display:none}.learn-page__inner{z-index:1;max-width:760px;margin:0 auto;position:relative}.learn-header{margin-bottom:2.25rem}.learn-back-btn{color:var(--lrn-muted);cursor:pointer;background:0 0;border:none;margin-bottom:2rem;padding:0;font-family:inherit;font-size:.85rem;font-weight:500;transition:color .15s}.learn-back-btn:hover{color:var(--lrn-accent)}.learn-eyebrow{text-transform:uppercase;letter-spacing:.22em;color:var(--lrn-accent);margin:0 0 .7rem;font-size:.72rem;font-weight:700}.learn-title{letter-spacing:-.04em;color:var(--lrn-ink);text-wrap:balance;overflow-wrap:break-word;margin:0;font-size:clamp(2.4rem,7vw,3.6rem);font-weight:900;line-height:1}.learn-title em{color:var(--lrn-accent);font-style:normal}.froo-echo{color:var(--lrn-accent)}.froo-echo__la{font-size:calc(1em - var(--i) * .05em);opacity:calc(.5 - var(--i) * .08);margin-left:.3em;display:inline-block}.froo-echo__inner{animation:2.2s ease-in-out infinite froo-la;animation-delay:calc(var(--i) * .16s);will-change:transform, opacity;display:inline-block}@keyframes froo-la{0%,to{opacity:.5;transform:translateY(.05em)}50%{opacity:1;transform:translateY(-.07em)}}@media (prefers-reduced-motion:reduce){.froo-echo__inner{opacity:.8;animation:none;transform:none}}.learn-subtitle{color:var(--lrn-ink-soft);max-width:42ch;margin:1rem 0 0;font-size:1.02rem;line-height:1.5}.learn-meter{margin-top:1.9rem}.learn-meter__track{background:var(--lrn-bg-warm);border:1px solid var(--lrn-hairline);border-radius:999px;height:10px;overflow:hidden}.learn-meter__fill{background:linear-gradient(90deg, var(--lrn-accent-bright), var(--lrn-accent));border-radius:999px;height:100%;transition:width .7s cubic-bezier(.22,1,.36,1);box-shadow:0 1px 8px #d4500a73}.learn-meter__stats{font-variant-numeric:tabular-nums;align-items:baseline;gap:1.15rem;margin-top:.75rem;display:flex}.learn-meter__count{color:var(--lrn-ink);font-size:.85rem;font-weight:700}.learn-meter__count span,.learn-meter__stars span{color:var(--lrn-muted);font-weight:500}.learn-meter__stars{color:var(--lrn-accent);letter-spacing:.02em;font-size:.85rem;font-weight:700}.review-banner{background:var(--lrn-ink);color:#fbf3ea;cursor:pointer;border:none;border-radius:16px;justify-content:space-between;align-items:center;gap:1rem;width:100%;margin-bottom:1.5rem;padding:.95rem 1.25rem;font-family:inherit;transition:background .15s,transform .15s;display:flex;box-shadow:0 6px 18px #1c171229}.review-banner:hover{background:var(--lrn-accent-deep);transform:translateY(-1px)}.review-banner__title{font-size:.9rem;font-weight:700}.review-banner__cta{opacity:.8;white-space:nowrap;font-size:.82rem;font-weight:500}.upnext{text-align:left;color:#fff6ee;cursor:pointer;background:linear-gradient(150deg, var(--lrn-accent-bright) 0%, var(--lrn-accent) 44%, var(--lrn-accent-deep) 100%);border:none;border-radius:22px;width:100%;margin-bottom:2.75rem;padding:1.6rem 1.7rem;font-family:inherit;transition:transform .18s cubic-bezier(.22,1,.36,1),box-shadow .18s;display:block;position:relative;overflow:hidden;box-shadow:0 18px 40px #d4500a4d}.upnext:after{content:"";pointer-events:none;background:radial-gradient(circle,#ffffff4d,#0000 70%);width:55%;height:170%;position:absolute;top:-45%;right:-8%}.upnext:hover{transform:translateY(-2px);box-shadow:0 26px 54px #d4500a61}.upnext>*{z-index:1;position:relative}.upnext__eyebrow{text-transform:uppercase;letter-spacing:.2em;color:#fff6eee6;align-items:center;gap:.55rem;margin:0 0 .75rem;font-size:.7rem;font-weight:700;display:flex}.upnext__kind{letter-spacing:.14em;background:#ffffff38;border-radius:999px;padding:.16rem .5rem;font-size:.6rem}.upnext__artist{text-transform:uppercase;letter-spacing:.14em;color:#fff6eeeb;margin:0 0 .25rem;font-size:.74rem;font-weight:700}.upnext__title{letter-spacing:-.02em;margin:0;font-size:clamp(1.7rem,5vw,2.35rem);font-weight:900;line-height:1.04}.upnext__subtitle{color:#fff6eedb;max-width:40ch;margin:.55rem 0 0;font-size:.95rem;line-height:1.45}.upnext__chips{flex-wrap:wrap;gap:.35rem;margin-top:1rem;display:flex}.upnext__bottom{align-items:center;gap:1rem;margin-top:1.4rem;display:flex}.upnext__go{color:var(--lrn-accent-deep);background:#fff;border-radius:999px;align-items:center;gap:.45rem;padding:.7rem 1.45rem;font-size:.95rem;font-weight:800;display:inline-flex;box-shadow:0 6px 16px #78280038}.upnext__meta{color:#fff6eed1;font-size:.78rem;font-weight:600}.chip-on-accent{color:#fff6ee;letter-spacing:.02em;white-space:nowrap;font-variant-numeric:tabular-nums;background:#ffffff2e;border:1px solid #ffffff4d;border-radius:999px;padding:.16rem .6rem;font-size:.75rem;font-weight:700}.journey{position:relative}.journey__label{text-transform:uppercase;letter-spacing:.22em;color:var(--lrn-muted);margin:0 0 1.4rem;font-size:.72rem;font-weight:700}.journey__list{margin:0;padding:0;list-style:none}.journey__item{--nc:calc(1.4rem + 11px);grid-template-columns:30px 1fr;gap:1.1rem;padding-bottom:.85rem;display:grid;position:relative}.journey__rail{position:relative}.journey__rail:before,.journey__rail:after{content:"";border-radius:999px;width:3px;position:absolute;left:50%;transform:translate(-50%)}.journey__rail:before{background:var(--lrn-hairline-strong);top:0;bottom:0}.journey__rail:after{background:linear-gradient(180deg, var(--lrn-accent-deep), var(--lrn-accent-bright));height:0;top:0}.journey__item.is-complete .journey__rail:after{height:100%}.journey__item.is-next .journey__rail:after{height:var(--nc)}.journey__item:first-child .journey__rail:before,.journey__item:first-child .journey__rail:after{top:var(--nc)}.journey__item:first-child.is-complete .journey__rail:after{height:calc(100% - var(--nc))}.journey__item:first-child.is-next .journey__rail:after{height:0}.journey__item:last-child .journey__rail:before{height:var(--nc);bottom:auto}.journey__item:last-child.is-complete .journey__rail:after{height:var(--nc)}.journey__node{z-index:1;background:var(--lrn-bg);border:3px solid var(--lrn-hairline-strong);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;display:flex;position:absolute;top:1.4rem;left:50%;transform:translate(-50%)}.journey__item.is-complete .journey__node{background:var(--lrn-accent);border-color:var(--lrn-accent)}.journey__node-check{width:11px;height:11px;display:none}.journey__item.is-complete .journey__node-check{display:block}.journey__item.is-next .journey__node{border-color:var(--lrn-accent);background:var(--lrn-card);box-shadow:0 0 0 5px #d4500a26}.journey__item.is-next .journey__node:before{content:"";background:var(--lrn-accent);border-radius:50%;width:8px;height:8px}.jcard{text-align:left;width:100%;color:inherit;cursor:pointer;background:var(--lrn-card);border:1px solid var(--lrn-hairline);border-radius:16px;font-family:inherit;transition:transform .15s,box-shadow .15s,border-color .15s,background .15s;display:block;position:relative;box-shadow:0 2px 10px #402c160d}.jcard:hover{border-color:var(--lrn-hairline-strong);transform:translateY(-2px);box-shadow:0 12px 26px #402c161a}.journey__item.is-next .jcard{border-color:#d4500a59;box-shadow:0 8px 22px #d4500a1f}.jcard--technique{box-shadow:none;background:0 0;border-style:dashed;align-items:center;gap:.9rem;padding:.85rem 1.05rem;display:flex}.jcard--technique:hover{background:var(--lrn-card);border-style:solid;box-shadow:0 8px 20px #402c1614}.jcard__badge{width:36px;height:36px;color:var(--lrn-accent);background:#d4500a1a;border-radius:11px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.jcard__badge svg{width:18px;height:18px}.jcard__drill-main{flex:1;min-width:0}.jcard__kind{text-transform:uppercase;letter-spacing:.16em;color:var(--lrn-muted);margin-bottom:.1rem;font-size:.62rem;font-weight:700}.jcard__drill-title{letter-spacing:-.01em;color:var(--lrn-ink);font-size:.99rem;font-weight:700}.jcard__drill-status{flex-shrink:0;align-items:center;display:flex}.jcard--song{padding:1.2rem 1.35rem}.jcard__song-head{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.jcard__artist{text-transform:uppercase;letter-spacing:.16em;color:var(--lrn-accent);margin:0 0 .25rem;font-size:.66rem;font-weight:700}.jcard__title{letter-spacing:-.02em;color:var(--lrn-ink);margin:0;font-size:1.4rem;font-weight:900;line-height:1.1}.jcard__chips{flex-wrap:wrap;gap:.3rem;margin-top:.85rem;display:flex}.jcard__diff{text-transform:uppercase;letter-spacing:.1em;white-space:nowrap;border-radius:999px;flex-shrink:0;padding:.24rem .55rem;font-size:.6rem;font-weight:700}.jcard__diff--beginner{color:var(--lrn-accent-deep);background:#d4500a1a}.jcard__diff--intermediate{color:var(--lrn-accent-deep);background:#d4500a2e}.jcard__diff--advanced{background:var(--lrn-accent);color:#fff}.chord-chip{color:var(--lrn-ink);background:var(--lrn-bg-warm);border:1px solid var(--lrn-hairline);letter-spacing:.02em;white-space:nowrap;font-variant-numeric:tabular-nums;border-radius:999px;padding:.16rem .55rem;font-size:.74rem;font-weight:700}.jcard__status{border-top:1px solid var(--lrn-hairline);justify-content:space-between;align-items:center;gap:.75rem;margin-top:1rem;padding-top:.9rem;display:flex}.jcard__cta{color:var(--lrn-accent);align-items:center;gap:.35rem;font-size:.83rem;font-weight:800;display:inline-flex}.jcard__bpm{color:var(--lrn-muted);font-variant-numeric:tabular-nums;font-size:.72rem;font-weight:600}.lesson-card__stars{gap:.12rem;font-size:.9rem;display:flex}.lesson-card__star{color:#402c1629}.lesson-card__star.is-earned{color:var(--lrn-accent)}@media (width<=480px){.journey__item{grid-template-columns:24px 1fr;gap:.8rem}.jcard__title{font-size:1.22rem}.upnext{padding:1.4rem 1.35rem}}@media (prefers-reduced-motion:reduce){.learn-meter__fill,.upnext,.jcard,.review-banner{transition:none}}.lesson-start-screen{z-index:30;-webkit-backdrop-filter:blur(10px);background:#14100a59;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.lesson-start-card{background:linear-gradient(to bottom, #ffffff1a, #fff0 45%), var(--lg-top-fill);border:1px solid var(--lg-top-stroke);width:calc(100vw - 2rem);max-width:430px;color:var(--lg-top-ink);-webkit-backdrop-filter:blur(24px)saturate(130%);box-shadow:inset 0 1px 0 var(--lg-top-rim), inset 0 -1px 1px #00000014, 0 24px 70px #00000059;border-radius:22px;padding:2.25rem 2rem 2rem;font-family:DM Sans,system-ui,sans-serif;transition:color .3s,background .3s,border-color .3s}.lesson-start__eyebrow{text-transform:uppercase;letter-spacing:.2em;color:#d4500a;margin:0 0 .55rem;font-size:.7rem;font-weight:700}.lesson-start__title{letter-spacing:-.025em;color:var(--lg-top-ink);margin:0 0 .4rem;font-size:1.75rem;font-weight:900}.lesson-start__subtitle{color:var(--lg-top-ink-dim);margin:0 0 1.1rem;font-size:.9rem;line-height:1.5}.lesson-start__progression{flex-wrap:wrap;align-items:center;gap:.35rem;margin:0 0 1.25rem;display:flex}.lesson-start__bpm{color:var(--lg-top-ink-dim);letter-spacing:.04em;margin-left:.4rem;font-size:.72rem;font-weight:700}.lesson-start__progression .chord-chip{color:var(--lg-top-ink);background:var(--lg-top-inner);border-color:var(--lg-top-stroke)}.lesson-start__steps{border-top:1px solid var(--lg-top-inner);flex-direction:column;gap:.55rem;margin:0 0 1.5rem;padding:1rem 0 0;list-style:none;display:flex}.lesson-start__steps li{color:var(--lg-top-ink);gap:.6rem;font-size:.88rem;line-height:1.4;display:flex}.lesson-start__steps li span{color:#d4500a;font-variant-numeric:tabular-nums;flex-shrink:0;font-weight:900}.lesson-start__btn{border:1px solid var(--lg-top-stroke);background:var(--lg-top-ink);width:100%;color:var(--lg-on-ink);cursor:pointer;border-radius:999px;padding:.9rem;font-family:DM Sans,system-ui,sans-serif;font-size:1rem;font-weight:700;transition:background .15s,color .15s,transform .15s;box-shadow:inset 0 1px #ffffff2e,0 8px 22px #00000040}.lesson-start__btn:hover{color:#fff;background:#d4500a;transform:translateY(-1px)}.lesson-exit-btn{color:var(--lg-top-ink);background:linear-gradient(to bottom, #ffffff1a, #fff0 45%), var(--lg-top-fill);border:1px solid var(--lg-top-stroke);cursor:pointer;z-index:40;-webkit-backdrop-filter:blur(18px)saturate(180%);box-shadow:inset 0 1px 0 var(--lg-top-rim), inset 0 -1px 1px #00000014, var(--lg-top-shadow);border-radius:999px;padding:.35rem .9rem;font-family:DM Sans,system-ui,sans-serif;font-size:.8rem;font-weight:500;transition:color .3s,background .3s,border-color .3s,box-shadow .3s;position:fixed;top:1rem;right:1rem}.lesson-exit-btn:hover{background:linear-gradient(to bottom, #ffffff1a, #fff0 45%), var(--lg-top-fill-hover);box-shadow:inset 0 1px 0 var(--lg-top-rim), inset 0 -1px 1px #00000014, var(--lg-top-shadow-hover)}.lesson-hud{pointer-events:none;z-index:25;flex-direction:column;align-items:center;font-family:DM Sans,system-ui,sans-serif;display:flex;position:fixed;inset:0}.lesson-hud--preview{justify-content:flex-start;gap:.5rem;padding-top:1.5rem}.lesson-hud__preview-eyebrow{text-transform:uppercase;letter-spacing:.18em;color:#f59e0b;font-family:monospace;font-size:.72rem;font-weight:700}.lesson-hud__listen{color:#fff;text-shadow:0 1px 6px #0009;font-family:DM Sans,system-ui,sans-serif;font-size:1.1rem;font-weight:700}.lesson-hud__preview-hint{color:#fff9;text-shadow:0 1px 4px #0009;font-family:DM Sans,system-ui,sans-serif;font-size:.88rem}.lesson-hud--practice{text-align:center;justify-content:flex-start;gap:.6rem;padding-top:1.5rem}.lesson-hud__practice-dots{justify-content:center;gap:8px;margin-top:12px;display:flex}.lesson-hud--countdown{justify-content:center;gap:.9rem}.lesson-countdown{letter-spacing:-.04em;color:#d4500a;text-shadow:0 0 70px #d4500a8c;font-size:clamp(5rem,20vw,11rem);font-weight:900;line-height:1}.lesson-hud__first-chord{color:#ffffffbf;text-shadow:0 1px 8px #000000b3;margin:0;font-size:1rem}.lesson-hud__first-chord strong{color:#fff;font-size:1.25rem;font-weight:900}.lesson-hud--attempt{justify-content:space-between;padding:1.25rem 1.5rem 1.5rem}.lesson-hud__top{flex-direction:column;align-items:center;gap:.7rem;display:flex}.lesson-hud__steps{gap:.4rem;display:flex}.lesson-hud__dot{background:#ffffff38;border-radius:999px;width:8px;height:8px;transition:background .2s}.lesson-hud__dot.is-active{background:#d4500a}.lesson-hud__dot.is-done{background:#d4500a73}.lesson-hud__instruction{letter-spacing:-.01em;color:#fff;text-align:center;text-shadow:0 2px 12px #000000b3;margin:0;font-size:clamp(1.05rem,3vw,1.4rem);font-weight:700}.lesson-hud__lock{color:#f59e0b;background:#14100ab3;border-radius:999px;margin:.5rem 0 0;padding:.25rem .8rem;font-size:.8rem;font-weight:700}.lesson-hud__cheer{letter-spacing:-.01em;color:#34d399;text-shadow:0 1px 8px #0009;background:#061812b8;border:1px solid #34d39959;border-radius:999px;margin:.5rem 0 0;padding:.3rem .95rem;font-size:.95rem;font-weight:800;animation:.32s cubic-bezier(.34,1.56,.64,1) lesson-cheer-pop}@keyframes lesson-cheer-pop{0%{opacity:0;transform:translateY(6px)scale(.85)}to{opacity:1;transform:translateY(0)scale(1)}}.lesson-hud__hint{color:#fff9;text-align:center;text-shadow:0 1px 6px #0009;max-width:40ch;margin:.25rem 0 0;font-size:.85rem}.lesson-hud__target{text-transform:uppercase;letter-spacing:.1em;color:#f59e0b;text-shadow:0 1px 6px #0009;margin:.6rem 0 0;font-size:.72rem;font-weight:700}.lesson-hud__chords{flex-direction:column;align-items:center;gap:.3rem;display:flex}.lesson-hud__chord-now{letter-spacing:-.03em;color:#fff;text-shadow:0 4px 30px #000000bf,0 0 60px #d4500a59;font-size:clamp(3.2rem,11vw,5.5rem);font-weight:900;line-height:1}.lesson-hud__chord-next{color:#fff9;text-shadow:0 1px 6px #000000b3;font-size:.85rem}.lesson-hud__chord-next strong{color:#fff;font-size:1rem;font-weight:700}.lesson-hud__bars{flex-direction:column;gap:.5rem;width:100%;max-width:360px;display:flex}.lesson-hud__bar-row{align-items:center;gap:.6rem;display:flex}.lesson-hud__bar-label{text-transform:uppercase;letter-spacing:.1em;color:#ffffff73;text-align:right;width:2.8rem;font-size:.7rem;font-weight:700}.lesson-hud__bar-value{color:#ffffffa6;font-variant-numeric:tabular-nums;width:2rem;font-size:.72rem;font-weight:700}.lesson-hud__bar-track{background:#ffffff1f;border-radius:999px;flex:1;height:5px;overflow:hidden}.lesson-hud__bar-fill{border-radius:999px;height:100%;transition:width .1s linear}.lesson-hud__bar-fill.is-good{background:#d4500a}.lesson-hud__bar-fill.is-mid{background:#d4500a8c}.lesson-hud__bar-fill.is-low{background:#ffffff59}.lesson-hud__bar-fill--time{background:#ffffff4d}.step-result{z-index:35;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.step-result__backdrop{-webkit-backdrop-filter:blur(4px);background:#14100aa8;position:absolute;inset:0}.step-result__card{z-index:1;color:#1c1c1e;text-align:center;-webkit-backdrop-filter:blur(30px)saturate(200%);background:linear-gradient(165deg,#ffffff8c,#fff3 45%,#ffffff52 100%);border:1px solid #ffffff80;border-radius:22px;width:calc(100vw - 2rem);max-width:380px;padding:2rem 2rem 1.75rem;font-family:DM Sans,system-ui,sans-serif;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffffb3,inset 0 -1px #0000000a,0 24px 70px #0006}.step-result__card:before{content:"";pointer-events:none;background:linear-gradient(75deg,#0000 35%,#ffffff8c 50%,#0000 65%);width:55%;height:220%;position:absolute;top:-50%;left:-20%;transform:rotate(8deg)}.step-result__card>*{z-index:1;position:relative}.step-result__step-label{text-transform:uppercase;letter-spacing:.18em;color:#6e6e73;margin-bottom:.75rem;font-size:.7rem;font-weight:700}.step-result__score{letter-spacing:-.04em;font-variant-numeric:tabular-nums;font-size:5rem;font-weight:900;line-height:1}.step-result__score--pass{color:#d4500a}.step-result__score--fail{color:#1414144d}.step-result__verdict{margin:.5rem 0 1.25rem;font-size:.95rem;font-weight:500}.step-result__verdict--pass{color:#1c1c1e}.step-result__verdict--fail{color:#6e6e73}.step-result__breakdown{border-top:1px solid #1414141a;border-bottom:1px solid #1414141a;flex-direction:column;gap:.35rem;margin-bottom:1.25rem;padding:.75rem .25rem;display:flex}.step-result__breakdown-row{color:#6e6e73;justify-content:space-between;font-size:.85rem;display:flex}.step-result__breakdown-row span:last-child{color:#1c1c1e;font-variant-numeric:tabular-nums;font-weight:700}.step-result__actions{gap:.75rem;display:flex}.step-result__btn{cursor:pointer;border:none;border-radius:999px;flex:1;padding:.75rem;font-family:DM Sans,system-ui,sans-serif;font-size:.9rem;font-weight:700;transition:background .15s,color .15s,opacity .15s}.step-result__btn--ghost{color:#1c1c1e;-webkit-backdrop-filter:blur(12px)saturate(160%);background:linear-gradient(160deg,#ffffff3d,#ffffff0f);border:1px solid #14141424}.step-result__btn--ghost:hover{background:linear-gradient(160deg,#ffffff5c,#ffffff1f);border-color:#1c1c1e}.step-result__btn--primary,.step-result__btn--next{color:#fafaf8;background:linear-gradient(160deg,#2c2c2e,#050505 60%,#1c1c1e 100%);box-shadow:inset 0 1px #fff3,0 6px 16px #00000040}.step-result__btn--primary:hover:not(:disabled),.step-result__btn--next:hover:not(:disabled){background:linear-gradient(160deg,#e8630f,#9c3c05 60%,#d4500a 100%)}.step-result__btn--primary:disabled,.step-result__btn--next:disabled{opacity:.3;cursor:default}.lesson-complete{z-index:35;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.lesson-complete__backdrop{-webkit-backdrop-filter:blur(6px);background:#14100ab8;position:absolute;inset:0}.lesson-complete__card{z-index:1;color:#1c1c1e;text-align:center;-webkit-backdrop-filter:blur(30px)saturate(200%);background:linear-gradient(165deg,#ffffff8c,#fff3 45%,#ffffff52 100%);border:1px solid #ffffff80;border-radius:22px;width:calc(100vw - 2rem);max-width:470px;max-height:calc(100vh - 3rem);padding:2.25rem 2rem 2rem;font-family:DM Sans,system-ui,sans-serif;position:relative;overflow-y:auto;box-shadow:inset 0 1px #ffffffb3,inset 0 -1px #0000000a,0 24px 70px #0006}.lesson-complete__eyebrow{text-transform:uppercase;letter-spacing:.2em;color:#8e8e93;margin:0 0 .4rem;font-size:.7rem;font-weight:700}.lesson-complete__title{letter-spacing:-.025em;margin:0;font-size:1.7rem;font-weight:900}.lesson-complete__artist{color:#6e6e73;margin:.2rem 0 0;font-size:.88rem}.lesson-complete__stars{justify-content:center;gap:.35rem;margin:1.1rem 0 .3rem;font-size:2.4rem;line-height:1;display:flex}.lesson-complete__star{color:#1414141f}.lesson-complete__star.is-earned{color:#d4500a}.lesson-complete__total{color:#1c1c1e;font-variant-numeric:tabular-nums;font-size:.95rem;font-weight:700}.lesson-complete__improve{color:#6e6e73;margin:.3rem 0 0;font-size:.78rem}.lesson-complete__table{border-collapse:collapse;text-align:left;width:100%;margin:1.4rem 0 1.5rem;font-size:.85rem}.lesson-complete__table td{color:#141414bf;border-bottom:1px solid #14141414;padding:.45rem .4rem}.lesson-complete__table-step{white-space:nowrap;color:#14141447;width:1.5rem;font-weight:900}.lesson-complete__table-score{text-align:right;font-variant-numeric:tabular-nums;font-weight:700}.lesson-complete__table-score.is-pass{color:#d4500a}.lesson-complete__table-score.is-fail{color:#14141459}.lesson-complete__actions{gap:.75rem;display:flex}.lesson-complete__btn{cursor:pointer;border:none;border-radius:999px;flex:1;padding:.85rem .6rem;font-family:DM Sans,system-ui,sans-serif;font-size:.88rem;font-weight:700;transition:background .15s,border-color .15s}.lesson-complete__btn--secondary{color:#1c1c1e;-webkit-backdrop-filter:blur(12px)saturate(160%);background:linear-gradient(160deg,#ffffff3d,#ffffff0f);border:1px solid #14141424}.lesson-complete__btn--secondary:hover{background:linear-gradient(160deg,#ffffff5c,#ffffff1f);border-color:#1c1c1e}.lesson-complete__btn--primary{color:#fafaf8;background:linear-gradient(160deg,#2c2c2e,#050505 60%,#1c1c1e 100%);box-shadow:inset 0 1px #fff3,0 6px 16px #00000040}.lesson-complete__btn--primary:hover{background:linear-gradient(160deg,#e8630f,#9c3c05 60%,#d4500a 100%)}.nod-hint{z-index:10;background:var(--lg-top-fill);color:var(--lg-top-ink);-webkit-backdrop-filter:blur(18px)saturate(180%);border:1px solid var(--lg-top-stroke);box-shadow:inset 0 1px 0 var(--lg-top-rim), var(--lg-top-shadow);letter-spacing:.02em;pointer-events:none;border-radius:999px;padding:.3rem .85rem;font-family:DM Sans,system-ui,sans-serif;font-size:.78rem;font-weight:500;position:fixed;top:1rem;left:50%;transform:translate(-50%)}.tutorial-overlay{z-index:50;pointer-events:none;-webkit-font-smoothing:antialiased;background:0 0;flex-direction:column;justify-content:flex-start;align-items:center;padding-top:8rem;font-family:DM Sans,system-ui,sans-serif;display:flex;position:fixed;inset:0}.tutorial-skip{background:var(--lg-top-fill);border:1px solid var(--lg-top-stroke);color:var(--lg-top-ink);cursor:pointer;pointer-events:all;-webkit-backdrop-filter:blur(18px)saturate(180%);box-shadow:inset 0 1px 0 var(--lg-top-rim), var(--lg-top-shadow);border-radius:999px;margin-top:.75rem;padding:.4rem .9rem;font-size:.85rem;transition:color .3s,background .3s,border-color .3s}.tutorial-skip:hover{background:var(--lg-top-fill-hover)}.tutorial-card{background:linear-gradient(to bottom, #ffffff1a, #fff0 45%), var(--lg-top-fill);border:1px solid var(--lg-top-stroke);text-align:center;-webkit-backdrop-filter:blur(24px)saturate(130%);width:calc(100vw - 3rem);max-width:420px;box-shadow:inset 0 1px 0 var(--lg-top-rim), inset 0 -1px 1px #00000014, var(--lg-top-shadow);pointer-events:all;border-radius:1.25rem;flex-direction:column;align-items:center;gap:.6rem;padding:1.5rem 2rem;display:flex}.tutorial-step-count{text-transform:uppercase;letter-spacing:.18em;color:var(--lg-top-ink-dim);margin:0;font-size:.72rem;font-weight:700}.tutorial-headline{color:var(--lg-top-ink);letter-spacing:-.02em;margin:0;font-size:clamp(1.2rem,4vw,1.6rem);font-weight:800;line-height:1.1}.tutorial-body{color:var(--lg-top-ink);opacity:.85;margin:0;font-size:.95rem;line-height:1.5}.tutorial-dots{gap:.5rem;margin-top:.25rem;display:flex}.tutorial-dot{background:var(--lg-top-inner-hover);border-radius:50%;width:8px;height:8px}.tutorial-dot--active{background:#d4500a}.tutorial-card--complete{justify-content:center;padding:1.5rem}.tutorial-checkmark{color:#34a853;font-size:4rem;line-height:1;animation:.35s cubic-bezier(.34,1.56,.64,1) both checkmark-pop}@keyframes checkmark-pop{0%{opacity:0;transform:scale(.3)}to{opacity:1;transform:scale(1)}}.froo{color:var(--lg-top-ink);-webkit-user-select:none;user-select:none;pointer-events:none;filter:drop-shadow(0 2px 6px #0000002e);line-height:0;transition:color .3s;display:inline-block;position:relative}.froo__svg{width:100%;height:auto;display:block}.froo__shell{fill:var(--lg-top-fill);transition:fill .3s}.froo__pendulum{transform-box:view-box;transform-origin:50% 53.4%;animation:froo-tick var(--froo-tick,3.6s) ease-in-out infinite}@keyframes froo-tick{0%,to{transform:rotate(-11deg)}50%{transform:rotate(11deg)}}.froo__eye{transform-box:fill-box;transform-origin:50%;transition:transform 90ms ease-out}.froo__eye.is-blinking{transform:scaleY(.15)}.froo__eye-arc,.froo.is-happy .froo__eye-dot{display:none}.froo.is-happy .froo__eye-arc{display:block}.froo__smile{transform-box:fill-box;transform-origin:50% 0;transition:transform .3s cubic-bezier(.34,1.56,.64,1)}.froo.is-happy .froo__smile{transform:scale(1.15,1.3)}.froo.is-nodding{animation:.8s cubic-bezier(.3,1.2,.5,1) both froo-nod}@keyframes froo-nod{0%{transform:translateY(0)rotate(0)}28%{transform:translateY(3px)rotate(-2deg)}55%{transform:translateY(-1px)rotate(1deg)}78%{transform:translateY(1.5px)rotate(-.7deg)}to{transform:translateY(0)rotate(0)}}@media (prefers-reduced-motion:reduce){.froo.is-nodding,.froo__pendulum{animation:none}}.froo-guide{z-index:25;align-items:flex-end;gap:.7rem;max-width:min(300px,100vw - 2rem);font-family:DM Sans,system-ui,sans-serif;animation:.45s cubic-bezier(.34,1.56,.64,1) both froo-guide-in;display:flex;position:fixed;bottom:1.25rem;left:1rem}@keyframes froo-guide-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.froo-guide__poke{cursor:pointer;background:0 0;border:none;flex-shrink:0;padding:0;transition:transform .18s cubic-bezier(.34,1.56,.64,1)}.froo-guide__poke:disabled{cursor:default}.froo-guide__poke:hover:not(:disabled){transform:translateY(-2px)}.froo-guide__poke:active:not(:disabled){transform:scale(.92)}.froo-guide__bubble{background:linear-gradient(to bottom, #ffffff1a, #fff0 45%), var(--lg-bottom-fill);border:1px solid var(--lg-bottom-stroke);color:var(--lg-bottom-ink);-webkit-backdrop-filter:blur(24px)saturate(130%);box-shadow:inset 0 1px 0 var(--lg-bottom-rim), inset 0 -1px 1px #00000014, var(--lg-bottom-shadow);transform-origin:0 100%;border-radius:1.1rem;margin-bottom:.35rem;padding:.55rem .95rem;animation:.3s cubic-bezier(.34,1.56,.64,1) both froo-bubble-in;position:relative}@keyframes froo-bubble-in{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.froo-guide__bubble:before{content:"";background:var(--lg-bottom-fill);border-left:1px solid var(--lg-bottom-stroke);border-bottom:1px solid var(--lg-bottom-stroke);-webkit-backdrop-filter:blur(24px)saturate(130%);width:9px;height:9px;position:absolute;bottom:13px;left:-4.5px;transform:rotate(45deg)}.froo-guide__bubble:has(.froo-guide__close){padding-right:1.7rem}.froo-guide__text{margin:0;font-size:.82rem;line-height:1.45}.froo-guide__ok{color:var(--lg-bottom-ink);background:var(--lg-bottom-inner);cursor:pointer;border:none;border-radius:999px;margin-top:.45rem;padding:.25rem .75rem;font-family:inherit;font-size:.78rem;transition:background .3s}.froo-guide__ok:hover{background:var(--lg-bottom-inner-hover)}.froo-guide__close{width:1.2rem;height:1.2rem;color:var(--lg-bottom-ink-dim);cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;font-size:.95rem;line-height:1;transition:color .3s,background .3s;display:inline-flex;position:absolute;top:.25rem;right:.35rem}.froo-guide__close:hover{color:var(--lg-bottom-ink);background:var(--lg-bottom-inner)}@media (width<=480px){.froo-guide{bottom:12.5rem}}.profile-btn{width:2rem;height:2rem;color:var(--lg-top-ink);background:linear-gradient(to bottom, #ffffff1a, #fff0 45%), var(--lg-top-fill);border:1px solid var(--lg-top-stroke);cursor:pointer;-webkit-backdrop-filter:blur(18px)saturate(180%);box-shadow:inset 0 1px 0 var(--lg-top-rim), inset 0 -1px 1px #00000014, var(--lg-top-shadow);z-index:20;border-radius:50%;justify-content:center;align-items:center;padding:0;transition:color .3s,background .3s,border-color .3s,box-shadow .3s;display:inline-flex;position:fixed;top:1rem;right:1rem}.profile-btn:hover{background:linear-gradient(to bottom, #ffffff1a, #fff0 45%), var(--lg-top-fill-hover);box-shadow:inset 0 1px 0 var(--lg-top-rim), inset 0 -1px 1px #00000014, var(--lg-top-shadow-hover)}.profile-btn--nav{width:2rem;height:2rem;color:var(--lp-ink);border-color:var(--lp-hairline);-webkit-backdrop-filter:none;box-shadow:none;background:#7f7f7f1f;flex-shrink:0;position:relative;top:auto;right:auto}.profile-btn--nav:hover{color:var(--lp-ink);border-color:var(--lp-ink);box-shadow:none;background:#7f7f7f33}.avatar{-webkit-user-select:none;user-select:none;border-radius:50%;flex:none;justify-content:center;align-items:center;font-family:DM Sans,system-ui,sans-serif;font-weight:700;display:inline-flex;overflow:hidden}.avatar__img{object-fit:cover;width:100%;height:100%;display:block}.avatar__icon{width:62%;height:62%}.profile-drawer .avatar{background:var(--pd-accent-tint);color:var(--pd-accent)}.profile-drawer-scrim{z-index:60;-webkit-backdrop-filter:blur(6px);opacity:0;pointer-events:none;background:#14100a73;transition:opacity .25s;position:fixed;inset:0}.profile-drawer-scrim.is-open{opacity:1;pointer-events:auto}.profile-drawer{--pd-ink:#1c1c1e;--pd-gray:#6e6e73;--pd-faint:#1c1c1e8c;--pd-accent:#d4500a;--pd-accent-tint:#d4500a1a;--pd-hairline:#1414141a;--pd-hairline-soft:#14141412;--pd-surface:linear-gradient(165deg, #ffffffc7, #ffffff85 45%, #ffffffa8 100%);--pd-surface-solid:#f5efe4;--pd-edge:#ffffff8c;--pd-top-glint:#ffffffb3;--pd-sheen:#ffffff47;--pd-glass-btn:linear-gradient(160deg, #ffffff57, #ffffff1a);--pd-glass-btn-hover:linear-gradient(160deg, #ffffff80, #fff3);--pd-glass-btn-border:#14141429;--pd-error:#b3261e;--lp-accent:var(--pd-accent);--lp-hairline:var(--pd-hairline);z-index:61;background:var(--pd-surface);-webkit-backdrop-filter:blur(30px)saturate(200%);border:1px solid var(--pd-edge);width:min(18rem,100vw - 1.5rem);color:var(--pd-ink);box-shadow:inset 0 1px 0 var(--pd-top-glint), inset 0 -1px 0 #0000000a, 0 24px 70px #00000073;transform-origin:calc(100% - 1.6rem) 1.6rem;opacity:0;visibility:hidden;border-radius:24px;outline:none;flex-direction:column;font-family:DM Sans,system-ui,sans-serif;transition:transform .22s ease-in,opacity .16s ease-in,visibility 0s .22s;display:flex;position:fixed;top:.75rem;bottom:.75rem;right:.75rem;overflow:hidden;transform:scale(.1)}.profile-drawer[data-theme=dark]{--pd-ink:#f5f5f7;--pd-gray:#a9a9b0;--pd-faint:#f5f5f78c;--pd-accent:#f2650f;--pd-accent-tint:#f2650f29;--pd-hairline:#ffffff1f;--pd-hairline-soft:#ffffff14;--pd-surface:linear-gradient(165deg, #24252acc, #131317ad 45%, #1b1c21bd 100%);--pd-surface-solid:#17181c;--pd-edge:#ffffff24;--pd-top-glint:#ffffff1f;--pd-sheen:#ffffff14;--pd-glass-btn:linear-gradient(160deg, #ffffff1f, #ffffff0a);--pd-glass-btn-hover:linear-gradient(160deg, #fff3, #ffffff14);--pd-glass-btn-border:#ffffff2e;--pd-error:#ff8a80}@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.profile-drawer{background:var(--pd-surface-solid)}}.profile-drawer:before{content:"";background:linear-gradient(100deg, transparent 62%, var(--pd-sheen) 79%, transparent 96%);pointer-events:none;position:absolute;inset:0}.profile-drawer>*{z-index:1;position:relative}.profile-drawer.is-open{opacity:1;visibility:visible;transition:transform .45s cubic-bezier(.3,1.36,.44,1),opacity .2s ease-out,visibility;transform:scale(1)}@media (prefers-reduced-motion:reduce){.profile-drawer,.profile-drawer-scrim{transition:none}}.profile-drawer__header{border-bottom:1px solid var(--pd-hairline);flex-direction:column;gap:.7rem;padding:1.1rem 1.1rem .9rem;display:flex}.profile-drawer__identity{align-items:center;gap:.8rem;display:flex}.profile-drawer__who{flex:1;min-width:0}.profile-drawer__name{letter-spacing:-.01em;text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:.9rem;font-weight:600;overflow:hidden}.profile-drawer__email{color:var(--pd-gray);text-overflow:ellipsis;white-space:nowrap;margin:.1rem 0 0;font-size:.72rem;overflow:hidden}.profile-drawer__email--wrap{white-space:normal}.profile-drawer__close{width:1.8rem;height:1.8rem;color:var(--pd-faint);cursor:pointer;background:0 0;border:none;border-radius:50%;flex:none;justify-content:center;align-self:flex-start;align-items:center;font-size:1.3rem;line-height:1;transition:color .15s,background .15s;display:inline-flex}.profile-drawer__close:hover{color:var(--pd-ink);background:var(--pd-hairline-soft)}.profile-drawer__panel{-webkit-overflow-scrolling:touch;flex:1;padding:0 1.1rem 1.1rem;overflow-y:auto}.profile-drawer__section{padding:.95rem 0 .4rem}.profile-drawer__section+.profile-drawer__section{border-top:1px solid var(--pd-hairline-soft)}.profile-drawer__section-title{text-transform:uppercase;letter-spacing:.14em;color:var(--pd-gray);margin:0 0 .45rem;font-size:.62rem;font-weight:600}.profile-drawer__note{color:var(--pd-gray);margin:.2rem 0 .75rem;font-size:.78rem;line-height:1.45}.profile-drawer__row{border-bottom:1px solid var(--pd-hairline-soft);justify-content:space-between;align-items:center;gap:.7rem;padding:.6rem 0;display:flex}.profile-drawer__row:last-child{border-bottom:none}.profile-drawer__row-text{min-width:0}.profile-drawer__row-label{margin:0;font-size:.82rem;font-weight:500}.profile-drawer__row-hint{color:var(--pd-gray);text-overflow:ellipsis;white-space:nowrap;margin:.1rem 0 0;font-size:.7rem;overflow:hidden}.profile-drawer__row-btn{color:var(--pd-ink);background:var(--pd-glass-btn);border:1px solid var(--pd-glass-btn-border);cursor:pointer;-webkit-backdrop-filter:blur(12px)saturate(160%);border-radius:999px;flex:none;padding:.3rem .8rem;font-family:inherit;font-size:.76rem;font-weight:600;text-decoration:none;transition:border-color .15s,background .15s;display:inline-block}.profile-drawer__row-btn:hover{border-color:var(--pd-ink);background:var(--pd-glass-btn-hover)}.profile-drawer .signin-prompt__google,.profile-drawer .signin-prompt__email-input{color:var(--pd-ink);background:var(--pd-glass-btn);border:1px solid var(--pd-glass-btn-border);-webkit-backdrop-filter:blur(12px)saturate(160%);transition:border-color .15s,background .15s}.profile-drawer .signin-prompt__google:hover{border-color:var(--pd-ink);background:var(--pd-glass-btn-hover)}.profile-drawer .signin-prompt__email-input::placeholder{color:var(--pd-faint)}.profile-drawer .signin-prompt__email-input:focus{border-color:var(--pd-accent)}.profile-drawer .signin-prompt__email-submit{color:#fafaf8;background:linear-gradient(160deg,#2c2c2e,#050505 60%,#1c1c1e 100%);border:1px solid #ffffff2e;transition:background .15s;box-shadow:inset 0 1px #fff3,0 6px 16px #00000040}.profile-drawer .signin-prompt__email-submit:hover:not(:disabled){background:linear-gradient(160deg,#e8630f,#9c3c05 60%,#d4500a 100%);border-color:#ffffff2e}.profile-drawer .signin-prompt__divider{color:var(--pd-faint)}.profile-drawer .signin-prompt__email-error{color:var(--pd-error)}.profile-drawer .signin-prompt__email-sent{color:var(--pd-gray)}.my-song-panel .my-song-import{flex-direction:column;gap:.5rem;display:flex}.my-song-input,.my-song-textarea{font:inherit;color:var(--pd-ink);background:var(--pd-glass-btn);border:1px solid var(--pd-glass-btn-border);border-radius:10px;padding:.5rem .7rem}.my-song-textarea{resize:vertical;min-height:8rem}.my-song-delete{color:var(--pd-error)}.my-song-error{color:var(--pd-error);white-space:normal}.sheet-overlay{background:var(--pd-glass-btn);border:1px solid var(--pd-glass-btn-border);border-radius:12px;max-height:60vh;padding:.75rem;font-family:DM Sans,system-ui,sans-serif;overflow-y:auto}.sheet-line{white-space:pre-wrap;min-height:1.4em}.sheet-token{vertical-align:top;padding-top:1.1em;display:inline-block;position:relative}.sheet-chord{color:var(--pd-accent);white-space:nowrap;font-size:.85em;font-weight:600;position:absolute;top:0;left:0}.auth-popup-page{color:#111;background:#faf6ee;flex-direction:column;justify-content:center;align-items:center;gap:1rem;min-height:100vh;font-family:DM Sans,system-ui,sans-serif;font-size:.95rem;display:flex}.signin-prompt__google{color:#111;cursor:pointer;background:#fff;border:1px solid #1113;border-radius:999px;justify-content:center;align-items:center;gap:.5rem;padding:.55rem 1rem;font-size:.9rem;font-weight:600;display:inline-flex}.signin-prompt__google:hover{border-color:#1116}.signin-prompt__divider{color:#1116;text-align:center;margin:.15rem 0;font-size:.75rem;font-weight:600}.signin-prompt__email-form{flex-direction:column;gap:.5rem;display:flex}.signin-prompt__email-input{color:#111;background:#fff;border:1px solid #1113;border-radius:999px;padding:.55rem 1rem;font-family:inherit;font-size:.9rem}.signin-prompt__email-input:focus{border-color:#1116;outline:none}.signin-prompt__email-submit{color:#111;cursor:pointer;background:#fff;border:1px solid #1113;border-radius:999px;justify-content:center;align-items:center;gap:.5rem;padding:.55rem 1rem;font-size:.9rem;font-weight:600;display:inline-flex}.signin-prompt__email-submit:hover{border-color:#1116}.signin-prompt__email-submit:disabled{opacity:.6;cursor:default}.signin-prompt__email-error{color:#b3261e;text-align:center;margin:0;font-size:.78rem}.signin-prompt__email-sent{color:#111111b3;text-align:center;margin:0;font-size:.85rem}.play-wall{z-index:100;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#1119;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.play-wall__card{color:#111;text-align:center;background:#faf6ee;border-radius:20px;flex-direction:column;align-items:center;gap:.5rem;width:min(22rem,100vw - 2rem);padding:2rem 1.8rem;font-family:DM Sans,system-ui,sans-serif;display:flex;box-shadow:0 20px 60px #00000080}.play-wall__title{margin:.75rem 0 0;font-size:1.3rem;font-weight:700}.play-wall__body{color:#111111b3;margin:0 0 .5rem;font-size:.9rem}.play-wall__actions{flex-direction:column;gap:.5rem;width:100%;display:flex}.share-btn,.record-btn,.vid-record-btn,.audio-export-btn,.learn-nav-btn,.feedback-btn,.profile-btn,.octave-control,.arp-btn,.loop-controls,.loop-slot,.tutorial-skip,.nod-hint,.instrument-select{-webkit-backdrop-filter:blur(24px)saturate(130%)}.share-btn,.record-btn,.vid-record-btn,.audio-export-btn,.learn-nav-btn,.feedback-btn,.profile-btn,.octave-control,.arp-btn,.loop-controls,.loop-slot,.tutorial-skip,.nod-hint{transition:color .3s,background .3s,border-color .3s,box-shadow .3s,transform .18s cubic-bezier(.34,1.56,.64,1)}.octave-control,.arp-btn,.loop-controls,.loop-slot,.tutorial-skip{position:relative}.share-btn:before,.record-btn:before,.vid-record-btn:before,.audio-export-btn:before,.learn-nav-btn:before,.feedback-btn:before,.profile-btn:before,.octave-control:before,.arp-btn:before,.loop-controls:before,.loop-slot:before,.tutorial-skip:before,.nod-hint:before{content:"";border-radius:inherit;pointer-events:none;-webkit-mask-composite:xor;background:linear-gradient(135deg,#fffcf5a6,#ffffff26 30%,#ffffff08 55%,#deecff66 100%);padding:1px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);-webkit-mask-position:0 0,0 0;mask-position:0 0,0 0;-webkit-mask-size:auto,auto;mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.share-btn:hover,.record-btn:hover,.vid-record-btn:hover:not(:disabled),.audio-export-btn:hover:not(:disabled),.learn-nav-btn:hover,.feedback-btn:hover,.profile-btn:hover,.arp-btn:hover,.tutorial-skip:hover{transform:translateY(-1px)}.share-btn:active,.record-btn:active,.vid-record-btn:active:not(:disabled),.audio-export-btn:active:not(:disabled),.learn-nav-btn:active,.feedback-btn:active,.profile-btn:active,.arp-btn:active,.tutorial-skip:active{transform:scale(.95)}.octave-btn,.loop-btn{transition:color .3s,background .3s,transform .15s cubic-bezier(.34,1.56,.64,1)}.octave-btn:active:not(:disabled),.loop-btn:active:not(:disabled){transform:scale(.88)}@media (prefers-reduced-motion:reduce){.share-btn,.record-btn,.vid-record-btn,.audio-export-btn,.learn-nav-btn,.feedback-btn,.profile-btn,.octave-control,.arp-btn,.loop-controls,.loop-slot,.tutorial-skip,.octave-btn,.loop-btn,.permission-btn-primary,.permission-btn-secondary{transition-property:color,background,border-color,box-shadow}.share-btn:hover,.record-btn:hover,.vid-record-btn:hover,.audio-export-btn:hover,.learn-nav-btn:hover,.feedback-btn:hover,.profile-btn:hover,.arp-btn:hover,.tutorial-skip:hover,.permission-btn-primary:hover,.permission-btn-secondary:hover{transform:none}}.lock-chip{letter-spacing:.06em;text-transform:uppercase;background:var(--lg-top-ink);color:var(--lg-on-ink);border-radius:999px;align-items:center;margin-left:.15rem;padding:.22rem .5rem;font-size:.62rem;font-weight:600;line-height:1;display:inline-flex}.loop-btn--locked .lock-chip{background:var(--lg-bottom-ink);padding:.18rem .42rem;font-size:.58rem}.loop-teaser{z-index:20;border:1px solid var(--lg-bottom-stroke);cursor:pointer;color:var(--lg-bottom-ink);background:var(--lg-bottom-fill);-webkit-backdrop-filter:blur(24px)saturate(130%);border-radius:999px;align-items:center;gap:.35rem;padding:.45rem .9rem;font-family:DM Sans,system-ui,sans-serif;font-size:.82rem;transition:background .3s,color .3s;display:inline-flex;position:fixed;bottom:4.6rem;left:50%;transform:translate(-50%)}.loop-teaser:hover{background:var(--lg-bottom-fill-hover)}.loop-teaser .lock-chip{background:var(--lg-bottom-ink)}.upsheet-overlay{z-index:60;-webkit-backdrop-filter:blur(6px);background:#00000059;justify-content:center;align-items:center;padding:1rem;animation:.25s ease-out upsheet-fade;display:flex;position:fixed;inset:0}.upsheet{width:min(30rem,100%);max-height:calc(100vh - 2rem);color:var(--lg-top-ink);background:linear-gradient(to bottom, #ffffff1f, #fff0 40%), var(--lg-top-fill);border:1px solid var(--lg-top-stroke);-webkit-backdrop-filter:blur(28px)saturate(180%);box-shadow:inset 0 1px 0 var(--lg-top-rim), inset 0 -1px 1px #00000014, 0 18px 48px #0000004d;border-radius:22px;padding:1.6rem 1.5rem 1.2rem;font-family:DM Sans,system-ui,sans-serif;animation:.3s cubic-bezier(.22,1.2,.36,1) upsheet-rise;position:relative;overflow-y:auto}@keyframes upsheet-fade{0%{opacity:0}}@keyframes upsheet-rise{0%{opacity:0;transform:translateY(14px)scale(.97)}}@media (prefers-reduced-motion:reduce){.upsheet-overlay,.upsheet{animation:none}}.upsheet__close{width:1.8rem;height:1.8rem;color:var(--lg-top-ink-dim);cursor:pointer;background:0 0;border:none;border-radius:999px;font-size:1.15rem;line-height:1;position:absolute;top:.7rem;right:.8rem}.upsheet__close:hover{color:var(--lg-top-ink)}.upsheet__title{letter-spacing:-.01em;margin:.8rem 0 .35rem;font-size:1.35rem;font-weight:650}.upsheet__body{color:var(--lg-top-ink-dim);margin:0 0 1.1rem;font-size:.9rem;line-height:1.5}.upsheet__hero{border:1px solid var(--lg-top-ink-dim);box-shadow:inset 0 1px 0 var(--lg-top-rim);background:#ffffff0f;border-radius:16px;flex-direction:column;padding:1rem 1rem .85rem;display:flex}.upsheet__plan-head{justify-content:space-between;align-items:baseline;margin-bottom:.5rem;display:flex}.upsheet__plan-name{font-size:1.05rem;font-weight:650}.upsheet__plan-price{color:var(--lg-top-ink-dim);font-size:.85rem}.upsheet__perks{color:var(--lg-top-ink-dim);flex:1;margin:0 0 .9rem;padding:0;font-size:.82rem;line-height:1.55;list-style:none}.upsheet__perks li{padding-left:1.25em;position:relative}.upsheet__perks li:before{content:"✓";color:var(--lg-top-ink);font-weight:700;position:absolute;left:0}.upsheet__assure{text-align:center;color:var(--lg-top-ink-dim);margin:.55rem 0 0;font-size:.72rem}.upsheet__alt{border:1px solid var(--lg-top-stroke);text-align:left;cursor:pointer;width:100%;color:var(--lg-top-ink-dim);background:0 0;border-radius:12px;margin-top:.7rem;padding:.55rem .8rem;font-family:inherit;font-size:.78rem;line-height:1.4;transition:background .2s,color .2s;display:block}.upsheet__alt:hover:not(:disabled){color:var(--lg-top-ink);background:#ffffff14}.upsheet__alt:disabled{opacity:.55;cursor:default}.upsheet__alt strong{color:var(--lg-top-ink);font-weight:650}.upsheet__cta{border:1px solid var(--lg-top-stroke);cursor:pointer;color:var(--lg-top-ink);background:0 0;border-radius:999px;padding:.45rem .8rem;font-family:inherit;font-size:.8rem;font-weight:600;transition:background .2s,color .2s}.upsheet__cta:hover:not(:disabled){background:#ffffff1a}.upsheet__cta--rec{background:var(--lg-top-ink);color:var(--lg-on-ink);border-color:#0000}.upsheet__cta--rec:hover:not(:disabled){background:var(--lg-top-ink);opacity:.88}.upsheet__cta:disabled{opacity:.55;cursor:default}.upsheet__foot{justify-content:space-between;margin-top:1rem;display:flex}.upsheet__link{color:var(--lg-top-ink);text-underline-offset:3px;cursor:pointer;background:0 0;border:none;padding:.2rem 0;font-family:inherit;font-size:.78rem;text-decoration:underline}.upsheet__link--dim{color:var(--lg-top-ink-dim);text-decoration:none}.wheel-editor{width:min(26rem,100%)}.wheel-editor label{color:var(--lg-top-ink-dim);flex-direction:column;gap:.3rem;margin-bottom:1rem;font-size:.78rem;display:flex}.wheel-editor input,.wheel-editor select{color:var(--lg-top-ink);border:1px solid var(--lg-top-stroke);background:#ffffff0f;border-radius:10px;padding:.4rem .6rem;font-family:inherit;font-size:.9rem}.wheel-editor-row{align-items:center;gap:.6rem;padding:.35rem 0;display:flex}.wheel-editor-slice{width:1.4rem;color:var(--lg-top-ink-dim);text-align:center;font-size:.78rem}.wheel-editor-row select{flex:1}.wheel-editor-actions{justify-content:flex-end;gap:.6rem;margin-top:1.2rem;display:flex}.wheel-editor-actions button{border:1px solid var(--lg-top-stroke);color:var(--lg-top-ink);cursor:pointer;background:#ffffff0f;border-radius:10px;padding:.45rem .9rem;font-family:inherit;font-size:.85rem}.wheel-editor-actions button:hover{background:#ffffff1a}
