:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--white:#fff;--bg:#f6efe0;--bg-soft:#efe4cd;--ink:#191c2c;--ink-soft:#5c5a6e;--ink-faint:#7b7587;--line:#e6dcc3;--navy:#12162a;--navy-deep:#0a0d1a;--navy-soft:#232a44;--green:#2f8f66;--green-dark:#1f6e4d;--blue:#4d9dff;--blue-dark:#2f7fe8;--orange:#ff8a3d;--orange-dark:#e86c1d;--purple:#9a5bff;--purple-dark:#7c3aed;--pink:#ff5c93;--pink-dark:#e83f78;--gold:#c8992e;--gold-dark:#9c7420;--gold-light:#e7c264;--red:#c0483f;--chord-locked-edge:#9aa2ae;--locked:#ded4b8;--locked-ink:#8f8874;--lineup-metal:#b8892f;--lineup-metal-soft:#e6c98a;--lineup-plate:#fbf4e4;--lineup-plate-edge:#e6d7b4;--progress-fill:#d9a23a;--progress-fill-end:#b87c1c;--progress-fill-alt:#e0803c;--progress-fill-alt-end:#c25f1d;--path-accent:#b7bcc6;--path-accent-dark:#767c88;--path-accent-light:#eef0f3;--r-sm:12px;--r-md:18px;--r-lg:28px;--r-xl:36px;--shadow-sm:0 2px 8px #191c2c12;--shadow-md:0 8px 24px #191c2c1c;--shadow-lg:0 16px 40px #191c2c29;--font-display:"Playfair Display", Georgia, "Times New Roman", serif;--font-body:"DM Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--nav-w:240px;--surface:#fffcf4;--surface-muted:#efe4cd;--on-navy:#ede4cf;--on-navy-soft:#a7a3bc}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--green-dark:#5cc69a;--bg:#0e1120;--bg-soft:#1a1f36;--ink:#f3ecd9;--ink-soft:#c5c0d4;--ink-faint:#837fa0;--line:#2c3352;--surface:#171b30;--surface-muted:#232a44;--white:#171b30;--chord-locked-edge:#6e7686;--path-accent:var(--gold);--path-accent-dark:var(--gold-dark);--path-accent-light:var(--gold-light);--progress-fill:#e7c264;--progress-fill-end:#b8901f;--lineup-metal:#e7c264;--lineup-metal-soft:#f3e0ad;--lineup-plate:#141a2e;--lineup-plate-edge:#3b4266;--progress-fill-alt:#8ea2e0;--progress-fill-alt-end:#5f74bd}:root[data-theme=rain]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#e9eaed;--bg-soft:#dfe1e5;--surface:#f4f5f7;--surface-muted:#e6e8eb;--line:#d7dade;--chord-locked-edge:#a4acb6;--progress-fill:#4f83a8;--progress-fill-end:#35617f;--lineup-metal:#8a97a6;--lineup-metal-soft:#cdd5dd;--lineup-plate:#eef1f4;--lineup-plate-edge:#cfd6dd;--progress-fill-alt:#58a39c;--progress-fill-alt-end:#3b7b75}:root[data-theme=dark][data-sky=starlight]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0d0f2b;--bg-soft:#1a1c44;--ink:#eef0ff;--ink-soft:#bcc0e8;--ink-faint:#8287bd;--line:#2b2f66;--surface:#151838;--surface-muted:#21254f;--white:#151838;--chord-locked-edge:#7278ad;--gold:#7fd8f2;--gold-dark:#3fa9cc;--gold-light:#cdf2ff;--path-accent:#7fd8f2;--path-accent-dark:#3fa9cc;--path-accent-light:#cdf2ff;--progress-fill:#8fe0f5;--progress-fill-end:#3f9fc8;--lineup-metal:#b9ecff;--lineup-metal-soft:#e4f8ff;--lineup-plate:#0e1b38;--lineup-plate-edge:#2f4a7a;--progress-fill-alt:#b9a6f0;--progress-fill-alt-end:#6f56bf}:root[data-theme=dark][data-sky=blossom]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#3d2a35;--bg-soft:#4a3441;--ink:#fff0f6;--ink-soft:#e6c4d4;--ink-faint:#b892a5;--line:#664a5a;--surface:#4b3542;--surface-muted:#58404e;--white:#4b3542;--chord-locked-edge:#a4849a;--gold:#f7bcd4;--gold-dark:#e58fb4;--gold-light:#ffe2ee;--path-accent:#f7bcd4;--path-accent-dark:#e58fb4;--path-accent-light:#ffe2ee;--progress-fill:#f9c6dc;--progress-fill-end:#e08aae;--lineup-metal:#ffd6e7;--lineup-metal-soft:#fff0f6;--lineup-plate:#3a2531;--lineup-plate-edge:#7a5468;--progress-fill-alt:#d9b3f0;--progress-fill-alt-end:#a476c9}:root[data-theme=dark][data-sky=meadow]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#3a4130;--bg-soft:#454d39;--ink:#f7f5e4;--ink-soft:#d6d8bb;--ink-faint:#a3a786;--line:#5b6448;--surface:#444c37;--surface-muted:#4f5840;--white:#444c37;--chord-locked-edge:#9ca083;--gold:#e4e59a;--gold-dark:#c2c56a;--gold-light:#f7f6d4;--path-accent:#e4e59a;--path-accent-dark:#c2c56a;--path-accent-light:#f7f6d4;--progress-fill:#e0e39a;--progress-fill-end:#a9b259;--lineup-metal:#eceab8;--lineup-metal-soft:#f8f7de;--lineup-plate:#353c2c;--lineup-plate-edge:#6b7556;--progress-fill-alt:#b9d39a;--progress-fill-alt-end:#7fa15c}:root[data-theme=dark][data-sky=cyberbloom]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#170b10;--bg-soft:#241219;--ink:#fbeef2;--ink-soft:#d9b8c6;--ink-faint:#9d7888;--line:#43222f;--surface:#22111a;--surface-muted:#2d1722;--white:#22111a;--chord-locked-edge:#8a6272;--gold:#f06aa6;--gold-dark:#d23e84;--gold-light:#ffc4dc;--path-accent:#f06aa6;--path-accent-dark:#d23e84;--path-accent-light:#ffc4dc;--progress-fill:#f38bb8;--progress-fill-end:#d23e84;--lineup-metal:#ffc4dc;--lineup-metal-soft:#ffe6f0;--lineup-plate:#1d0e15;--lineup-plate-edge:#5a2a3e;--progress-fill-alt:#55c9d0;--progress-fill-alt-end:#2c8f9e}:root[data-theme=dark][data-sky=blackcat]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#3a0f17;--bg-soft:#4a1520;--ink:#fbecee;--ink-soft:#e8c0c7;--ink-faint:#b98892;--line:#6e2432;--surface:#4a1520;--surface-muted:#58202b;--white:#4a1520;--chord-locked-edge:#a3707b;--gold:#e8c26a;--gold-dark:#c79a3a;--gold-light:#f8e2a6;--path-accent:#e8c26a;--path-accent-dark:#c79a3a;--path-accent-light:#f8e2a6;--progress-fill:#efcd7a;--progress-fill-end:#c79a3a;--lineup-metal:#f3dc9c;--lineup-metal-soft:#fbefcf;--lineup-plate:#33101a;--lineup-plate-edge:#7a2a38;--progress-fill-alt:#e0677a;--progress-fill-alt-end:#b03a4f}:root[data-sky=snow]{--chart-string:#6f7fa0;--chart-fret:#97a4bf}:root[data-theme=light][data-sky=snow]{--bg:#e8edf5;--bg-soft:#dde4ef;--surface:#f8fafd;--surface-muted:#edf1f7;--white:#f8fafd;--line:#d2dae7;--ink:#1c2439;--ink-soft:#3a445e;--ink-faint:#535e7c;--chord-locked-edge:#a6b2c7;--gold:#7fa6d6;--gold-dark:#33598f;--gold-light:#dbe8f7;--path-accent:#7fa6d6;--path-accent-dark:#3a6299;--path-accent-light:#dbe8f7;--progress-fill:#8db2e0;--progress-fill-end:#3f6ba6;--lineup-metal:#b7c7dc;--lineup-metal-soft:#e6eef8;--lineup-plate:#f3f6fa;--lineup-plate-edge:#d2dae7;--progress-fill-alt:#9ccac0;--progress-fill-alt-end:#3c756c}:root[data-theme=light][data-sky=plainLight]{--path-accent:#d4a53a;--path-accent-dark:#9c7420;--path-accent-light:#f6e7bf;--bg:#f5f5f6;--bg-soft:#ececee;--surface:#fff;--surface-muted:#f0f0f2;--white:#fff;--line:#e1e1e5;--lineup-plate:#fafafa;--lineup-plate-edge:#e1e1e5}:root[data-theme=dark][data-sky=plainDark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#121214;--bg-soft:#1b1b1e;--ink:#f2f2f4;--ink-soft:#b9b9c0;--ink-faint:#85858d;--line:#2e2e33;--surface:#1c1c1f;--surface-muted:#26262a;--white:#1c1c1f;--lineup-plate:#18181b;--lineup-plate-edge:#34343a}*{box-sizing:border-box}html,body,#root{height:100%}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;-webkit-tap-highlight-color:transparent}button,a,input,select,textarea,label,summary,[role=button],[role=tab]{touch-action:manipulation}body{background:var(--bg);color:var(--ink);font-family:var(--font-body);-webkit-font-smoothing:antialiased;margin:0;overflow-x:hidden}h1,h2,h3,h4{font-family:var(--font-display);font-synthesis:none;color:var(--ink);margin:0;font-weight:600}h1{font-weight:700}p{margin:0}button,input,select,textarea{font-family:var(--font-body)}button{cursor:pointer}.brand-title{font-family:var(--font-display);font-synthesis:none;letter-spacing:0}a{color:inherit;text-decoration:none}img,svg{display:block}.app-shell{min-height:100%;display:flex}.app-main{min-width:0;padding-bottom:calc(86px + env(safe-area-inset-bottom,0px));padding-top:env(safe-area-inset-top,0px);flex:1;position:relative;overflow-x:clip}@media (width>=900px) and (height>=501px){.app-main{margin-left:var(--nav-w);padding-bottom:0}}.page{z-index:1;max-width:1040px;margin:0 auto;padding:28px 20px 80px;position:relative}.btn{font-family:var(--font-body);letter-spacing:.02em;box-shadow:var(--shadow-sm);border:none;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:15px 30px;font-size:16px;font-weight:600;transition:transform .15s,box-shadow .15s,filter .15s;display:inline-flex}.btn:active{transform:translateY(1px)scale(.98)}.btn-primary{background:linear-gradient(180deg, var(--gold-light) 0%, var(--gold) 100%);color:var(--navy-deep);box-shadow:0 6px 0 var(--gold-dark), var(--shadow-md)}@media (hover:hover){.btn-primary:hover{filter:brightness(1.04);transform:translateY(-1px)}}.btn-primary:active{box-shadow:0 3px 0 var(--gold-dark);transform:translateY(3px)}.btn-secondary{background:var(--surface);color:var(--ink);border:2px solid var(--line);box-shadow:0 4px 0 var(--line)}@media (hover:hover){.btn-secondary:hover{border-color:var(--ink-faint)}}.btn-secondary:active{box-shadow:0 2px 0 var(--line);transform:translateY(2px)}.btn:disabled{filter:grayscale(.6);opacity:.55;cursor:not-allowed;transform:none!important}.btn-block{width:100%}.btn-lg{padding:18px 36px;font-size:18px}.pill{border-radius:999px;align-items:center;gap:6px;padding:6px 14px;font-size:13px;font-weight:700;display:inline-flex}.card{background:var(--surface);border-radius:var(--r-lg);box-shadow:var(--shadow-md);padding:24px}.profile-hero,.profile-stat-card,.profile-score-card,.game-card,.performance-card,.settings-section,.checkpoint-card,.chord-practice-card,.complete-step,.lesson-shell,.lesson-node,.fingerpicking-pattern,.strumming-pattern,.ear-training-card,.slicer-card,.progress-card,.home-card,.learn-card{background:var(--surface)}.section-heading{font-family:var(--font-body);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);font-size:15px;font-weight:700}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}@keyframes pop-in{0%{opacity:0;transform:scale(.6)}70%{opacity:1;transform:scale(1.08)}to{transform:scale(1)}}@keyframes float-y{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes fade-up{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes shimmer-pulse{0%,to{box-shadow:0 0 #33c98a80}50%{box-shadow:0 0 0 14px #33c98a00}}.page-loading{place-items:center;min-height:50vh;display:grid}.page-loading-spinner{border:3px solid color-mix(in srgb, var(--ink) 14%, transparent);border-top-color:var(--gold);opacity:0;border-radius:50%;width:30px;height:30px;animation:.2s .3s forwards page-loading-in,.8s linear infinite page-loading-spin}@keyframes page-loading-in{to{opacity:1}}@keyframes page-loading-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.page-loading-spinner{animation:.2s .3s forwards page-loading-in,2.4s linear infinite page-loading-spin}}.page-load-error{text-align:center;justify-items:center;gap:12px;padding-top:12vh;display:grid}.page-load-error p{color:var(--ink-soft);max-width:34ch;font-weight:600}html.in-game :is(.global-raindrops,.snow-fall,.blossom-fall){display:none}@media (pointer:coarse){input:not([type=checkbox]):not([type=radio]):not([type=range]),textarea,select{font-size:max(16px,1em)!important}.pattern-card .pattern-card-title-btn{align-items:center;min-height:40px;display:flex}.pattern-card-more{min-height:40px;padding:8px 6px}.journey-more{min-height:40px;padding:8px 4px}.profile-name-btn{min-height:40px}.journey-week-days{justify-content:space-between}.journey-week-days button{flex:1 1 0;min-width:32px;max-width:40px;height:38px}.walk-skip,.share-song-back,.tt-end{min-height:40px;padding-inline:8px}.game-card:active,.home-continue-card:active,.home-warmup-card:active{transform:scale(.98)}.info-tooltip-icon{position:relative}.info-tooltip-icon:after{content:"";position:absolute;inset:-12px}.transition-nudge-close{min-width:40px;min-height:40px}input[type=range]{min-height:32px}}@media (width<=899px),(height<=500px){.app-main{padding-left:env(safe-area-inset-left,0px);padding-right:env(safe-area-inset-right,0px)}}@media (height<=500px){.app-main{padding-bottom:calc(52px + env(safe-area-inset-bottom,0px))}.game-countdown-host{bottom:calc(48px + env(safe-area-inset-bottom,0px))!important}}html.kb-open .navbar-bottom,html.kb-open .tpb{display:none}@media (width<=899px),(height<=500px){html.in-game{--bottom-nav-h:0px}html.in-game .navbar-bottom{display:none}html.in-game .app-main{padding-bottom:env(safe-area-inset-bottom,0px)}html.in-game .slicer-fullscreen{bottom:0}html.in-game .game-countdown-host{bottom:env(safe-area-inset-bottom,0px)!important}}.profile-avatar-badge{-webkit-user-select:none;user-select:none;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.profile-avatar-badge-sm{width:30px;height:30px}.profile-avatar-badge-md{width:76px;height:76px}@media (width<=520px){.profile-avatar-badge-md{width:56px;height:56px}}.info-tooltip{vertical-align:middle;display:inline-flex;position:relative}.info-tooltip-icon{box-sizing:border-box;border:1.5px solid color-mix(in srgb, currentColor 36%, transparent);width:16px;height:16px;color:inherit;font-family:var(--font-body);cursor:help;background:0 0;border-radius:50%;place-items:center;padding:0;font-size:10.5px;font-style:normal;font-weight:800;line-height:1;transition:background-color .12s,border-color .12s;display:inline-grid}.info-tooltip-icon:focus-visible,.info-tooltip.is-open .info-tooltip-icon{background:color-mix(in srgb, currentColor 14%, transparent);border-color:color-mix(in srgb, currentColor 70%, transparent)}.info-tooltip-bubble{background:var(--ink);width:max-content;max-width:220px;color:var(--bg);border-radius:var(--r-sm);box-shadow:var(--shadow-md);text-align:left;opacity:0;visibility:hidden;pointer-events:none;z-index:20;padding:8px 12px;font-size:12px;font-weight:600;line-height:1.4;transition:opacity .12s,transform .12s;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%)translateY(4px)}.info-tooltip-bubble:after{content:"";border:5px solid #0000;border-top-color:var(--ink);position:absolute;top:100%;left:50%;transform:translate(-50%)}.info-tooltip-icon:focus-visible+.info-tooltip-bubble{opacity:1;visibility:visible;transform:translate(-50%)translateY(0)}.info-tooltip-down .info-tooltip-bubble{top:calc(100% + 8px);bottom:auto;transform:translate(-50%)translateY(-4px)}.info-tooltip-down .info-tooltip-bubble:after{border-top-color:#0000;border-bottom-color:var(--ink);top:auto;bottom:100%}.info-tooltip-down .info-tooltip-icon:focus-visible+.info-tooltip-bubble{transform:translate(-50%)translateY(0)}.info-tooltip-down.info-tooltip-left .info-tooltip-bubble{transform:translate(0)translateY(-4px)}.info-tooltip-down.info-tooltip-left .info-tooltip-icon:focus-visible+.info-tooltip-bubble{transform:translate(0)translateY(0)}.info-tooltip-left .info-tooltip-bubble{left:0;transform:translate(0)translateY(4px)}.info-tooltip-left .info-tooltip-bubble:after{left:10px;transform:none}.info-tooltip-left .info-tooltip-icon:focus-visible+.info-tooltip-bubble{transform:translate(0)translateY(0)}.info-tooltip-right .info-tooltip-bubble{left:auto;right:0;transform:translate(0)translateY(4px)}.info-tooltip-right .info-tooltip-bubble:after{left:auto;right:10px;transform:none}.info-tooltip-right .info-tooltip-icon:focus-visible+.info-tooltip-bubble{transform:translate(0)translateY(0)}.info-tooltip-down.info-tooltip-right .info-tooltip-bubble{transform:translate(0)translateY(-4px)}.info-tooltip-down.info-tooltip-right .info-tooltip-icon:focus-visible+.info-tooltip-bubble{transform:translate(0)translateY(0)}.info-tooltip.is-open .info-tooltip-bubble{opacity:1;visibility:visible;transform:translate(-50%)translateY(0)}.info-tooltip-left.is-open .info-tooltip-bubble,.info-tooltip-down.info-tooltip-left.is-open .info-tooltip-bubble,.info-tooltip-right.is-open .info-tooltip-bubble,.info-tooltip-down.info-tooltip-right.is-open .info-tooltip-bubble{transform:translate(0)translateY(0)}@media (hover:hover){.info-tooltip-icon:hover{background:color-mix(in srgb, currentColor 14%, transparent);border-color:color-mix(in srgb, currentColor 70%, transparent)}.info-tooltip-icon:hover+.info-tooltip-bubble{opacity:1;visibility:visible;transform:translate(-50%)translateY(0)}.info-tooltip-down .info-tooltip-icon:hover+.info-tooltip-bubble{transform:translate(-50%)translateY(0)}.info-tooltip-down.info-tooltip-left .info-tooltip-icon:hover+.info-tooltip-bubble,.info-tooltip-left .info-tooltip-icon:hover+.info-tooltip-bubble,.info-tooltip-right .info-tooltip-icon:hover+.info-tooltip-bubble,.info-tooltip-down.info-tooltip-right .info-tooltip-icon:hover+.info-tooltip-bubble{transform:translate(0)translateY(0)}}.navbar-side{display:none}.navbar-bottom{height:calc(68px + env(safe-area-inset-bottom,0px));padding:0 env(safe-area-inset-right,0px) env(safe-area-inset-bottom,0px) env(safe-area-inset-left,0px);background:var(--surface);border-top:1px solid var(--line);z-index:40;display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -4px 16px #191c2c14}.navbar-bottom-link{color:var(--ink-faint);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:2px;font-size:11px;font-weight:700;display:flex}.navbar-bottom-link span:first-child{place-items:center;width:30px;height:30px;font-size:20px;display:inline-grid}.navbar-bottom-link-active{color:var(--gold-dark)}:root[data-theme][data-sky=cyberbloom] .navbar-bottom{background:linear-gradient(#22111a,#13080d);border-top-color:#43222f}:root[data-theme][data-sky=meadow] .navbar-bottom{background:linear-gradient(#414a33,#2c3223);border-top-color:#5b6448}:root[data-theme][data-sky=plainDark] .navbar-bottom{background:#18181b;border-top-color:#2e2e33}:root[data-theme][data-sky=blackcat] .navbar-bottom{background:linear-gradient(#4a1520,#2a0a10);border-top-color:#6e2432}:root[data-theme][data-sky=snow] .navbar-bottom{background:linear-gradient(#46557e,#2b3657);border-top-color:#5d6c96}:root[data-sky=snow] .navbar-bottom-link{color:#cdd6ea}:root[data-sky=snow] .navbar-bottom-link-active{color:#fff}:root[data-theme][data-sky=blossom] .navbar-bottom{background:linear-gradient(#5a3c4d,#3a2631);border-top-color:#7a5468}:root[data-theme][data-sky=starlight] .navbar-bottom{background:linear-gradient(#241a52,#120d2e);border-top-color:#3a2a7a}@media (width>=900px) and (height>=501px){.navbar-bottom{display:none}.navbar-side{width:var(--nav-w);background:var(--surface);border-right:1px solid var(--line);z-index:40;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--line) transparent;flex-direction:column;padding:28px 18px;display:flex;position:fixed;top:0;bottom:0;left:0;overflow:hidden auto}.navbar-side>*{flex-shrink:0}.navbar-stat{position:relative}.navbar-stats .info-tooltip{position:static}.navbar-stats .info-tooltip-bubble{width:auto;max-width:none;left:0;right:0}.navbar-stats .info-tooltip-bubble:after{display:none}.navbar-brand{align-items:center;gap:10px;padding:0 10px 28px;display:flex}.navbar-logo{object-fit:contain;flex-shrink:0;width:32px;height:32px}.navbar-title{font-family:var(--font-display);color:var(--ink);font-size:20px;font-weight:600;line-height:1.2}.navbar-links{flex-direction:column;flex:1 0 auto;gap:4px;margin:0;padding:0;list-style:none;display:flex}.navbar-link{border-radius:var(--r-md);color:var(--ink-soft);align-items:center;gap:12px;padding:13px 14px;font-size:15px;font-weight:700;transition:background .15s,color .15s,transform .15s;display:flex}.navbar-link-icon{flex-shrink:0;place-items:center;width:30px;font-size:20px;display:inline-grid}@media (hover:hover){.navbar-link:hover{background:var(--bg-soft);transform:translate(2px)}}.navbar-link-active{color:var(--gold-dark);background:linear-gradient(#c8992e38,#c8992e1a);box-shadow:inset 0 0 0 1px #c8992e4d}.navbar-stats{border-top:1px solid var(--line);flex-direction:column;gap:8px;padding-top:16px;display:flex}.navbar-stat{border-radius:var(--r-md);background:var(--bg-soft);align-items:center;gap:8px;padding:10px 14px;font-size:14px;font-weight:700;display:flex}.navbar-stat-streak{color:var(--orange-dark)}.navbar-stat-fretbitz{color:var(--gold-dark)}:root[data-sky=plainLight] .navbar-stat-streak .info-tooltip-icon{color:color-mix(in srgb, currentColor 72%, #000)}}:root[data-theme=dark] .navbar-bottom{background:var(--navy);border-top:1px solid #ffffff14;box-shadow:0 -4px 16px #00000059}:root[data-theme=dark] .navbar-bottom-link{color:var(--on-navy-soft)}:root[data-theme=dark] .navbar-bottom-link-active{color:var(--gold-light)}@media (width>=900px) and (height>=501px){:root[data-theme=dark] .navbar-side{background:var(--navy);border-right:1px solid #ffffff14}:root[data-theme=dark] .navbar-title{color:var(--on-navy)}:root[data-theme=dark] .navbar-link{color:var(--on-navy-soft)}@media (hover:hover){:root[data-theme=dark] .navbar-link:hover{color:var(--on-navy);background:#ffffff0f}}:root[data-theme=dark] .navbar-link-active{color:var(--gold-light);background:linear-gradient(#e7c26447,#e7c2641f);box-shadow:inset 0 0 0 1px #e7c26459}:root[data-theme=dark] .navbar-stats{border-top:1px solid #ffffff1a}:root[data-theme=dark] .navbar-stat{background:#ffffff0f}:root[data-theme=dark] .navbar-stat-streak{color:#ff9d5c}:root[data-theme=dark] .navbar-stat-fretbitz{color:var(--gold-light)}}:root[data-theme=rain] .navbar-bottom{background:#4f5761;border-top:1px solid #ffffff1a;box-shadow:0 -4px 16px #10141a66}:root[data-theme=rain] .navbar-bottom-link{color:#c3cad3}:root[data-theme=rain] .navbar-bottom-link-active{color:#eaf1fa}@media (width>=900px) and (height>=501px){:root[data-theme=rain] .navbar-side{background:#4f5761;border-right:1px solid #ffffff1a}:root[data-theme=rain] .navbar-title{color:#f2f5f8}:root[data-theme=rain] .navbar-link{color:#c3cad3}@media (hover:hover){:root[data-theme=rain] .navbar-link:hover{color:#f2f5f8;background:#ffffff14}}:root[data-sky=starlight] .navbar-side{background:linear-gradient(#241a52 0%,#1b1442 52%,#120d2e 100%);border-right:1px solid #3a2a7a}@media (hover:hover){:root[data-sky=starlight] .navbar-link:hover{color:#eaf6ff;background:#7fd8f21f}}:root[data-sky=starlight] .navbar-link-active{color:#cdf2ff;background:linear-gradient(#7fd8f242,#7fd8f21a);box-shadow:inset 0 0 0 1px #7fd8f259}:root[data-sky=starlight] .navbar-stat{background:#7fd8f21f}:root[data-sky=cyberbloom] .navbar-side{background:linear-gradient(#22111a 0%,#190b12 55%,#12070c 100%);border-right:1px solid #43222f}@media (hover:hover){:root[data-sky=cyberbloom] .navbar-link:hover{color:#fbeef2;background:#f06aa61a}}:root[data-sky=cyberbloom] .navbar-link-active{color:#ffc4dc;background:linear-gradient(#f06aa642,#f06aa61a);box-shadow:inset 0 0 0 1px #f06aa666,-1px 0 #ff3c5a66,1px 0 #55c9d066}:root[data-sky=cyberbloom] .navbar-stat{background:#f06aa61a}:root[data-sky=meadow] .navbar-side{background:linear-gradient(#414a33 0%,#353c2b 55%,#2a3022 100%);border-right:1px solid #5b6448}@media (hover:hover){:root[data-sky=meadow] .navbar-link:hover{color:#f7f5e4;background:#e4e59a1a}}:root[data-sky=meadow] .navbar-link-active{color:#f7f6d4;background:linear-gradient(#e4e59a3d,#e4e59a1a);box-shadow:inset 0 0 0 1px #e4e59a59}:root[data-sky=meadow] .navbar-stat{background:#e4e59a1a}:root[data-sky=blackcat] .navbar-side{background:linear-gradient(#4a1520 0%,#36101a 55%,#260a10 100%);border-right:1px solid #6e2432}@media (hover:hover){:root[data-sky=blackcat] .navbar-link:hover{color:#fbecee;background:#e8c26a1a}}:root[data-sky=blackcat] .navbar-link-active{color:#f8e2a6;background:linear-gradient(#e8c26a3d,#e8c26a1a);box-shadow:inset 0 0 0 1px #e8c26a61}:root[data-sky=blackcat] .navbar-stat{background:#e8c26a1a}:root[data-sky=snow] .navbar-side{background:linear-gradient(#4f5e89 0%,#3f4c73 55%,#2d3859 100%);border-right:1px solid #6a79a3}:root[data-sky=snow] .navbar-title{color:#f4f7fc}:root[data-sky=snow] .navbar-link{color:#d3dbeb}@media (hover:hover){:root[data-sky=snow] .navbar-link:hover{color:#f4f7fc;background:#dbe8f71f}}:root[data-sky=snow] .navbar-link-active{color:#fff;background:linear-gradient(#dbe8f733,#dbe8f714);box-shadow:inset 0 0 0 1px #dbe8f766}:root[data-sky=snow] .navbar-stats{border-top-color:#dbe8f738}:root[data-sky=snow] .navbar-stat{background:#dbe8f71f}:root[data-sky=snow] .navbar-stat-streak{color:#ffcaa6}:root[data-sky=snow] .navbar-stat-fretbitz{color:#dbe8f7}:root[data-sky=snow] .navbar-account,:root[data-sky=snow] .navbar-copyright{color:#c9d3e8}:root[data-sky=plainDark] .navbar-side{background:#18181b;border-right:1px solid #2e2e33}:root[data-sky=blossom] .navbar-side{background:linear-gradient(#5a3c4d 0%,#47303d 52%,#34232d 100%);border-right:1px solid #7a5468}@media (hover:hover){:root[data-sky=blossom] .navbar-link:hover{color:#fff0f6;background:#f7bcd41f}}:root[data-sky=blossom] .navbar-link-active{color:#ffe2ee;background:linear-gradient(#f7bcd447,#f7bcd41f);box-shadow:inset 0 0 0 1px #f7bcd466}:root[data-sky=blossom] .navbar-stat{background:#f7bcd41f}:root[data-theme=rain] .navbar-link-active{color:#eaf1fa;background:linear-gradient(#e2eeff3d,#e2eeff1a);box-shadow:inset 0 0 0 1px #e2eeff4d}:root[data-theme=rain] .navbar-stats{border-top:1px solid #ffffff1f}:root[data-theme=rain] .navbar-stat{background:#ffffff14}:root[data-theme=rain] .navbar-stat-streak{color:#e8b48d}:root[data-theme=rain] .navbar-stat-fretbitz{color:#dbe6f2}}.nav-icon{width:24px;height:24px;transition:transform .18s;display:block}@media (hover:hover){.navbar-link:hover .nav-icon,.navbar-bottom-link:hover .nav-icon{transform:rotate(-6deg)scale(1.08)}}.navbar-link-active .nav-icon,.navbar-bottom-link-active .nav-icon{transform:scale(1.1)}.navbar-bottom-link .nav-icon{width:22px;height:22px}:root{--bottom-nav-h:0px}@media (width<=899px),(height<=500px){:root{--bottom-nav-h:68px}}.navbar-bottom{scrollbar-width:none;overflow-x:auto}.navbar-bottom::-webkit-scrollbar{display:none}.navbar-bottom-link{white-space:nowrap;min-width:38px;padding:0 1px}.navbar-bottom-link>span:last-child{letter-spacing:-.01em;text-overflow:ellipsis;max-width:100%;font-size:10px;overflow:hidden}@media (width<=400px){.navbar-bottom-link>span:last-child{letter-spacing:-.02em;font-size:9.4px}}@media (width<=350px){.navbar-bottom-link>span:last-child{font-size:8.6px}}@media (height<=500px){:root{--bottom-nav-h:48px}.navbar-bottom{height:calc(48px + env(safe-area-inset-bottom,0px))}.navbar-bottom-link>span:last-child{display:none}}@media (width<=599px) and (height>=501px){:root{--bottom-nav-h:76px}.navbar-bottom{height:calc(76px + env(safe-area-inset-bottom,0px));scroll-snap-type:x proximity}.navbar-bottom-link{scroll-snap-align:start;flex:1 0 64px;gap:4px;min-width:64px}.navbar-bottom-link span:first-child{width:32px;height:32px}.navbar-bottom-link .nav-icon{width:28px;height:28px}.navbar-bottom-link>span:last-child{letter-spacing:0;font-size:11.5px}.navbar-bottom[data-more=right]{-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 34px),#0000);mask-image:linear-gradient(90deg,#000 calc(100% - 34px),#0000)}.navbar-bottom[data-more=left]{-webkit-mask-image:linear-gradient(270deg,#000 calc(100% - 34px),#0000);mask-image:linear-gradient(270deg,#000 calc(100% - 34px),#0000)}.navbar-bottom[data-more=both]{-webkit-mask-image:linear-gradient(90deg,#0000,#000 34px calc(100% - 34px),#0000);mask-image:linear-gradient(90deg,#0000,#000 34px calc(100% - 34px),#0000)}}.navbar-more{display:none}@media (width<=511px) and (height>=501px){.navbar-bottom{overflow:visible;-webkit-mask-image:none!important;mask-image:none!important}.navbar-bottom-link-extra{display:none}.navbar-bottom-link{flex:1 1 0;min-width:0}.navbar-more{flex:1 1 0;min-width:0;display:flex;position:relative}.navbar-more-btn{width:100%;font:inherit;cursor:pointer;background:0 0;border:0;font-weight:700}}.navbar-more-menu{z-index:45;background:var(--surface);border:1px solid var(--line);border-radius:16px;min-width:170px;padding:6px;animation:.16s ease-out both navbar-more-in;display:grid;position:absolute;bottom:calc(100% + 8px);right:6px;box-shadow:0 12px 28px #14162847}@keyframes navbar-more-in{0%{opacity:0;transform:translateY(6px)}}@media (prefers-reduced-motion:reduce){.navbar-more-menu{animation:none}}.navbar-more-link{color:var(--ink);border-radius:12px;align-items:center;gap:12px;padding:10px 12px;font-size:15px;font-weight:800;text-decoration:none;display:flex}.navbar-more-link:focus-visible{background:var(--bg-soft)}@media (hover:hover){.navbar-more-link:hover{background:var(--bg-soft)}}.navbar-more-link.is-active{color:var(--gold-dark);background:color-mix(in srgb, var(--gold) 14%, transparent)}.navbar-more-icon{place-items:center;width:30px;height:30px;display:inline-grid}:root[data-theme=dark] .navbar-more-menu{background:var(--navy);border-color:#ffffff1a}:root[data-theme=dark] .navbar-more-link{color:var(--on-navy)}@media (hover:hover){:root[data-theme=dark] .navbar-more-link:hover{background:#ffffff0f}}:root[data-theme=dark] .navbar-more-link.is-active{color:var(--gold-light)}:root[data-sky=snow] .navbar-more-menu{background:#3a4870;border-color:#5d6c96}:root[data-theme][data-sky=starlight] .navbar-more-menu{background:#1f1747;border-color:#3a2a7a}:root[data-theme][data-sky=cyberbloom] .navbar-more-menu{background:#22111a;border-color:#43222f}:root[data-theme][data-sky=meadow] .navbar-more-menu{background:#3d4530;border-color:#5b6448}:root[data-theme][data-sky=blackcat] .navbar-more-menu{background:#43131d;border-color:#6e2432}:root[data-theme][data-sky=blossom] .navbar-more-menu{background:#52384a;border-color:#7a5468}:root[data-theme][data-sky=plainDark] .navbar-more-menu{background:#1c1c1f;border-color:#2e2e33}:root[data-theme=rain] .navbar-more-menu{background:#4f5761;border-color:#ffffff1f}:root[data-theme=rain] .navbar-more-link{color:#e3e8ee}@media (hover:hover){:root[data-theme=rain] .navbar-more-link:hover{background:#ffffff14}}:root[data-theme=rain] .navbar-more-link.is-active{color:#eaf1fa;background:#e2eeff29}:root[data-sky=snow] .navbar-more-link{color:#eef2fa}@media (hover:hover){:root[data-sky=snow] .navbar-more-link:hover{background:#dbe8f71f}}:root[data-sky=snow] .navbar-more-link.is-active{color:#fff;background:#dbe8f733}@media (width>=600px) and (width<=899px) and (height>=501px){:root{--bottom-nav-h:80px}.navbar-bottom{height:calc(80px + env(safe-area-inset-bottom,0px))}.navbar-bottom-link{gap:5px}.navbar-bottom-link span:first-child{width:34px;height:34px}.navbar-bottom-link .nav-icon{width:30px;height:30px}.navbar-bottom-link>span:last-child{letter-spacing:0;font-size:13px}}@media (width>=900px) and (height>=501px) and (pointer:coarse){.navbar-side{padding-top:22px;padding-bottom:22px;overflow-y:auto}.navbar-brand{padding-bottom:20px}.navbar-links{gap:7px}.navbar-link{gap:14px;padding:clamp(11px,1.8vh,17px) 16px;font-size:17px}.navbar-link-icon{width:34px}.navbar-link .nav-icon{width:28px;height:28px}}.lesson-node{background:0 0;flex-direction:column;align-items:center;gap:8px;width:100px;display:flex}.lesson-node-btn{background:var(--surface);width:84px;height:84px;box-shadow:inset 0 0 0 1px var(--line);border:none;border-radius:50%;justify-content:center;align-items:center;padding:0;transition:transform .15s,box-shadow .15s,background .15s;display:flex;position:relative}.lesson-node-checkpoint .lesson-node-btn{border-radius:30px;width:96px;height:96px;transform:rotate(45deg)}.lesson-node-checkpoint .lesson-node-face{transform:rotate(-45deg)}.lesson-node-unlocked .lesson-node-btn,.lesson-node-current .lesson-node-btn{background:linear-gradient(160deg, var(--path-accent-light), var(--path-accent));box-shadow:none}@media (hover:hover){.lesson-node-unlocked .lesson-node-btn:hover,.lesson-node-current .lesson-node-btn:hover{transform:translateY(-3px)scale(1.05)}}.lesson-node-unlocked .lesson-node-btn:active,.lesson-node-current .lesson-node-btn:active{transform:scale(.97)}.lesson-node-completed .lesson-node-btn{background:var(--surface);box-shadow:inset 0 0 0 3px var(--path-accent)}.lesson-node-locked .lesson-node-btn{box-shadow:none;cursor:not-allowed;background:#dfe2e8}.lesson-node-btn:disabled{cursor:not-allowed}.lesson-node-face{justify-content:center;align-items:center;font-size:26px;display:flex;position:relative}.lesson-node-symbol{font-family:var(--font-body);color:var(--navy-deep);font-size:22px;font-weight:700}.lesson-node-completed .lesson-node-symbol{color:var(--path-accent-dark)}.lesson-node-icon{font-size:30px}.lesson-node-check{color:var(--path-accent-dark);font-size:32px;font-weight:700}.lesson-node-lock{opacity:.7;font-size:26px}.lesson-node-pulse{border:3px solid var(--path-accent);border-radius:50%;animation:1.8s ease-out infinite node-pulse;position:absolute;inset:-8px}@keyframes node-pulse{0%{opacity:.9;transform:scale(.9)}to{opacity:0;transform:scale(1.35)}}.lesson-node-title{color:var(--ink-soft);text-align:center;font-size:12.5px;font-weight:700;line-height:1.25}.lesson-node-current .lesson-node-title{color:var(--ink)}.lesson-node-chip{background:var(--ink);color:#fff;letter-spacing:.08em;border-radius:999px;margin-top:-2px;padding:3px 10px;font-size:10px;font-weight:700}:root[data-theme=dark] .lesson-node-btn{box-shadow:inset 0 0 0 1px #ffffff1f}:root[data-theme=dark] .lesson-node-completed .lesson-node-btn{background:#1b1b1e}:root[data-theme=dark] .lesson-node-locked .lesson-node-btn{box-shadow:none;background:#303035}:root[data-theme=dark] .lesson-node-lock{opacity:.55}:root[data-theme=dark] .lesson-node-chip{color:#111113;background:#f2f2f4}.lesson-node{position:relative}.lesson-node-cat{display:none}:root[data-sky=blackcat] .lesson-node-cat{pointer-events:none;z-index:2;filter:drop-shadow(0 2px 3px #0a02058c);width:46px;display:block;position:absolute;top:0;left:50%;transform:translate(-50%,-74%)}:root[data-sky=blackcat] .lesson-node-checkpoint .lesson-node-cat{transform:translate(-50%,-96%)}.lesson-node-cat svg{width:100%;height:auto;display:block;overflow:visible}.lesson-node-cat-body{fill:#0c0708;stroke:#8e1d2b;stroke-width:1.6px;stroke-linejoin:round}.lesson-node-cat-tail{fill:none;stroke:#0c0708;stroke-width:5px;stroke-linecap:round;transform-box:view-box;transform-origin:46px 58px;animation:3.4s ease-in-out infinite node-cat-tail}.lesson-node-cat-eyes ellipse{fill:#fbf7f2}.lesson-node-cat-pupils ellipse{fill:#0c0708}.lesson-node-cat-nose{fill:#fbf7f2}.lesson-node-cat-bell{fill:#e8c26a;stroke:#8a6424;stroke-width:.8px}@keyframes node-cat-tail{0%,to{transform:rotate(0)}50%{transform:rotate(-12deg)}}@media (prefers-reduced-motion:reduce){.lesson-node-cat-tail{animation:none}}:root[data-sky=blackcat] .lesson-node-check{background:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='-12%20-15%2024%2028'%3E%3Cg%20fill='%23e2b24f'%3E%3Cellipse%20cx='0'%20cy='5'%20rx='7.4'%20ry='6.2'/%3E%3Cellipse%20cx='-7.4'%20cy='-4'%20rx='2.8'%20ry='3.6'/%3E%3Cellipse%20cx='-2.6'%20cy='-9.4'%20rx='2.8'%20ry='3.6'/%3E%3Cellipse%20cx='2.6'%20cy='-9.4'%20rx='2.8'%20ry='3.6'/%3E%3Cellipse%20cx='7.4'%20cy='-4'%20rx='2.8'%20ry='3.6'/%3E%3C/g%3E%3C/svg%3E") 50%/contain no-repeat;width:36px;height:36px;font-size:0}:root[data-sky=snow] .lesson-node-completed .lesson-node-btn{box-shadow:inset 0 0 0 3px var(--path-accent), 0 0 12px #c4dcf6e6}:root[data-sky=snow] .lesson-node-completed .lesson-node-btn:before,:root[data-sky=snow] .lesson-node-completed .lesson-node-btn:after{content:"";border-radius:inherit;pointer-events:none;position:absolute;inset:0}:root[data-sky=snow] .lesson-node-completed .lesson-node-btn:before{background:linear-gradient(150deg,#ffffffa6,#fff0 34%)}:root[data-sky=snow] .lesson-node-completed .lesson-node-btn:after{background:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20100%20100'%3E%3Cdefs%3E%20%3Cfilter%20id='g'%20x='0'%20y='0'%20width='100'%20height='100'%20filterUnits='userSpaceOnUse'%3E%3CfeTurbulence%20type='fractalNoise'%20baseFrequency='0.9'%20numOctaves='3'%20seed='4'/%3E%3CfeColorMatrix%20values='0%200%200%200%200.8%200%200%200%200%200.87%200%200%200%200%200.95%200%200%200%202.4%20-1.12'/%3E%3CfeGaussianBlur%20stdDeviation='0.35'/%3E%3C/filter%3E%20%3Cfilter%20id='p'%20x='0'%20y='0'%20width='100'%20height='100'%20filterUnits='userSpaceOnUse'%3E%3CfeTurbulence%20type='fractalNoise'%20baseFrequency='0.06'%20numOctaves='4'%20seed='12'/%3E%3CfeColorMatrix%20values='0%200%200%200%200.97%200%200%200%200%200.99%200%200%200%200%201%200%200%200%204.2%20-1.65'/%3E%3CfeGaussianBlur%20stdDeviation='0.7'/%3E%3C/filter%3E%20%3Cfilter%20id='s'%20x='0'%20y='0'%20width='100'%20height='100'%20filterUnits='userSpaceOnUse'%3E%3CfeTurbulence%20type='fractalNoise'%20baseFrequency='1.6'%20numOctaves='1'%20seed='21'/%3E%3CfeColorMatrix%20values='0%200%200%200%201%200%200%200%200%201%200%200%200%200%201%200%200%200%209%20-6.1'/%3E%3C/filter%3E%20%3CradialGradient%20id='r'%3E%3Cstop%20offset='0.48'%20stop-color='%23fff'%20stop-opacity='0'/%3E%3Cstop%20offset='0.8'%20stop-color='%23fff'%20stop-opacity='0.8'/%3E%3Cstop%20offset='0.9'%20stop-color='%23fff'/%3E%3C/radialGradient%3E%20%3Cmask%20id='m'%3E%3Crect%20width='100'%20height='100'%20fill='url(%23r)'/%3E%3C/mask%3E%3C/defs%3E%20%3Cg%20mask='url(%23m)'%3E%3Crect%20width='100'%20height='100'%20filter='url(%23g)'/%3E%3Crect%20width='100'%20height='100'%20filter='url(%23p)'/%3E%3Crect%20width='100'%20height='100'%20filter='url(%23s)'/%3E%3C/g%3E%3C/svg%3E") 50%/100% 100% no-repeat}:root[data-sky=snow] .lesson-node-completed .lesson-node-btn:has(.lesson-node-check-v1):after{transform:rotate(90deg)}:root[data-sky=snow] .lesson-node-completed .lesson-node-btn:has(.lesson-node-check-v2):after{transform:rotate(180deg)}:root[data-sky=snow] .lesson-node-completed .lesson-node-btn:has(.lesson-node-check-v3):after{transform:rotate(270deg)}.learning-path{width:100%;max-width:560px;margin:0 auto;position:relative}.learning-path-svg{z-index:1;width:100%;height:100%;position:absolute;inset:0}.learning-path-line-bg{stroke:#ffffff73;stroke-width:14px;stroke-linecap:round;filter:drop-shadow(0 1px 2px #3c1e2838)}.learning-path-line-done{stroke:#fff;stroke-width:14px;stroke-linecap:round;filter:drop-shadow(0 1px 2px #3c1e2838)}.path-section-banner{z-index:2;justify-content:center;padding:10px 0;display:flex;position:absolute;left:0;right:0}.path-section-banner-inner{text-align:center;border-radius:var(--r-lg);max-width:340px;box-shadow:var(--shadow-sm);background:#ffffffe0;padding:12px 20px}.path-section-eyebrow{letter-spacing:.14em;text-transform:uppercase;color:color-mix(in srgb, var(--section-color) 62%, #000);background:color-mix(in srgb, var(--section-color) 14%, white);border-radius:999px;margin-bottom:8px;padding:4px 12px;font-size:11px;font-weight:700;display:inline-block}.path-section-banner-inner h2{margin-bottom:4px;font-size:22px}.path-section-banner-inner p{color:var(--ink-soft);font-size:13.5px;font-weight:600}.path-node-slot{z-index:3;background:0 0;animation:.5s both path-node-in;position:absolute;transform:translate(-50%,-50%)}@keyframes path-node-in{0%{opacity:0;transform:translate(-50%,calc(14px - 50%))}to{opacity:1;transform:translate(-50%,-50%)}}@media (width>=640px){.learning-path{max-width:620px}}.path-node-slot .lesson-node-title{color:var(--ink);background:#ffffffd9;border-radius:999px;padding:2px 9px;box-shadow:0 1px 3px #1414281f}:root[data-theme=dark] .learning-path-line-bg{stroke:#ffffff29;filter:drop-shadow(0 1px 3px #0009)}:root[data-theme=dark] .learning-path-line-done{stroke:#d9d9de;filter:drop-shadow(0 1px 3px #0009)}:root[data-theme=dark] .path-section-banner-inner{background:#18181beb;box-shadow:0 4px 16px #00000080,inset 0 0 0 1px #ffffff12}:root[data-theme=dark] .path-section-eyebrow{background:color-mix(in srgb, var(--section-color) 22%, #18181b);color:color-mix(in srgb, var(--section-color) 55%, #fff)}:root[data-theme=dark] .path-section-banner-inner p{color:#b4b4bc}.path-strands{display:none}:root[data-sky=blossom] .path-strands{display:inline}:root[data-sky=blossom] .learning-path-line-bg,:root[data-sky=blossom] .learning-path-line-done{display:none}.path-strands path{stroke-linecap:round}.path-strand-s1{stroke-width:24px;stroke:#f6bcd2}.path-strand-g1{stroke-width:20px;stroke:#56394a}.path-strand-s2{stroke-width:15px;stroke:#f9cadc}.path-strand-g2{stroke-width:12px;stroke:#5c3e50}.path-strand-s3{stroke-width:8px;stroke:#fbd6e4}.path-strand-g3{stroke-width:5px;stroke:#624456}.path-strand-s4{stroke-width:1.8px;stroke:#ffe8f1}.path-strands-all{opacity:.5;filter:drop-shadow(0 0 4px #f6b4d080)}.path-strands-done{opacity:1;filter:drop-shadow(0 0 5px #ffc4ded9)drop-shadow(0 0 16px #f096be80)}.path-strands-done .path-strand-g1,.path-strands-done .path-strand-g2,.path-strands-done .path-strand-g3{stroke:#6a4a5d}:root[data-sky=cyberbloom] .path-section-banner-inner{background:#22111af0;box-shadow:0 4px 16px #00000080,inset 0 0 0 1px #f06aa647}:root[data-sky=cyberbloom] .path-section-banner-inner p{color:#d9b8c6}:root[data-sky=meadow] .path-section-banner-inner{background:#444c37f0;box-shadow:0 4px 16px #0f140a73,inset 0 0 0 1px #e4e59a38}:root[data-sky=meadow] .path-section-eyebrow{background:color-mix(in srgb, var(--section-color) 24%, #444c37)}:root[data-sky=meadow] .path-section-banner-inner p{color:#d6d8bb}:root[data-sky=blackcat] .path-section-banner-inner{background:#4a1520f0;box-shadow:0 4px 16px #14030880,inset 0 0 0 1px #e8c26a40}:root[data-sky=blackcat] .path-section-eyebrow{background:color-mix(in srgb, var(--section-color) 24%, #4a1520)}:root[data-sky=blackcat] .path-section-banner-inner p{color:#e8c0c7}:root[data-sky=snow] .path-section-banner-inner{background:#f8fafdf0;box-shadow:0 4px 16px #3c507829,inset 0 0 0 1px #7fa6d647}:root[data-sky=blossom] .path-section-banner-inner{background:#4f3645f0;box-shadow:0 4px 16px #1e0c1673,inset 0 0 0 1px #f7bcd438}:root[data-sky=blossom] .path-section-eyebrow{background:color-mix(in srgb, var(--section-color) 24%, #4f3645)}:root[data-sky=blossom] .path-section-banner-inner p{color:#e6c4d4}:root[data-theme=dark] .path-node-slot .lesson-node-title{color:#ececef;background:#18181be6;box-shadow:0 1px 4px #00000080}.path-led{display:none}:root[data-sky=cyberbloom] .path-led{display:inline}:root[data-sky=cyberbloom] .learning-path-line-done{stroke:#0000;filter:none}.path-led path{stroke-linecap:round}.path-led-cyan{stroke:#55c9d0;stroke-width:7px;stroke-dasharray:.1 13;stroke-dashoffset:6.5px;filter:drop-shadow(0 0 4px #55c9d0e6)}.path-led-pink{stroke:#ff6fae;stroke-width:9px;stroke-dasharray:.1 13;filter:drop-shadow(0 0 5px #ff6faef2)drop-shadow(0 0 12px #ff6fae80);animation:1.6s linear infinite path-led-flow}@keyframes path-led-flow{to{stroke-dashoffset:-26px}}@media (prefers-reduced-motion:reduce){.path-led-pink{animation:none}}.path-dots{display:none}:root[data-sky=meadow] .path-dots{display:inline}:root[data-sky=meadow] .learning-path-line-done{stroke:#0000;filter:none}.path-dots path{stroke-linecap:round}.path-dots-big{stroke:#fbf8e2;stroke-width:5.5px;stroke-dasharray:.1 14;filter:drop-shadow(0 0 3px #fffad7f2)drop-shadow(0 0 9px #fff4be8c);animation:3.4s ease-in-out infinite path-dots-twinkle}.path-dots-small{stroke:#fffbe8;stroke-width:3px;stroke-dasharray:.1 14;stroke-dashoffset:7px;opacity:.85;filter:drop-shadow(0 0 2px #fffad7e6);animation:3.4s ease-in-out 1.7s infinite path-dots-twinkle}@keyframes path-dots-twinkle{50%{opacity:.5}}@media (prefers-reduced-motion:reduce){.path-dots path{animation:none}}.path-node-slot.is-focused{z-index:3}.path-node-ring{border:3px solid var(--gold,#e8b44a);pointer-events:none;border-radius:50%;width:110px;height:110px;margin:-55px 0 0 -55px;animation:1.2s ease-out .4s 4 both path-focus;position:absolute;top:42px;left:50%}@keyframes path-focus{0%{opacity:1;transform:scale(.7)}to{opacity:0;transform:scale(1.35)}}@media (prefers-reduced-motion:reduce){.path-node-ring{opacity:.8;animation:none}}:root[data-sky=blackcat] .learning-path-line-bg,:root[data-sky=blackcat] .learning-path-line-done{display:none}.path-paws{z-index:1;pointer-events:none;width:100%;position:absolute;top:0;left:0;overflow:visible}.path-paw{fill:#e8c26a;opacity:.2}.path-paw-done{fill:#f3d587;opacity:.95;filter:drop-shadow(0 0 3px #ffd27866)}:root[data-sky=blackcat] .path-section-banner-inner{position:relative}.path-section-cat{display:none}:root[data-sky=blackcat] .path-section-cat{pointer-events:none;filter:drop-shadow(0 2px 3px #0a020580);width:78px;height:58px;display:block;position:absolute;top:-34px;right:14px}.path-section-cat svg{width:100%;height:100%;display:block;overflow:visible}.section-cat-body{fill:#0c0708;stroke:#8e1d2b;stroke-width:1.4px;stroke-linejoin:round}.section-cat-tail{fill:none;stroke:#0c0708;stroke-width:4.6px;stroke-linecap:round}.section-cat-eye{fill:#fbf7f2}.section-cat-pupil{fill:#0c0708}.section-cat-glint,.section-cat-nose{fill:#fbf7f2}.section-cat-line{fill:none;stroke:#fbf7f2;stroke-width:1.4px;stroke-linecap:round;stroke-linejoin:round}.section-cat-fine{stroke-width:.9px}.section-cat-blush{fill:#b8354a;opacity:.75}.section-cat-mouth{fill:#3a0710;stroke:#8e1d2b;stroke-width:.8px}.section-cat-fang{fill:#fbf7f2}.section-cat-tongue{fill:#ee8ea4}.section-cat-belly{fill:#33171d}.section-cat-leg-edge{fill:none;stroke:#8e1d2b;stroke-width:6.6px;stroke-linecap:round}.section-cat-leg{fill:none;stroke:#0c0708;stroke-width:4px;stroke-linecap:round}.section-cat-pad{fill:#d9707f}.section-cat-bell{fill:#e8c26a;stroke:#8a6424;stroke-width:.7px}.section-cat-heart{fill:#e8c26a}.section-cat-zzz{fill:none;stroke:#e8c26a;stroke-width:1.2px;stroke-linejoin:round;stroke-linecap:round;animation:3.6s ease-in-out infinite section-cat-zzz}@keyframes section-cat-zzz{0%,to{opacity:.95;transform:translateY(0)}50%{opacity:.55;transform:translateY(-2px)}}.section-cat-blink{transform-box:fill-box;transform-origin:50%;animation:5.2s ease-in-out infinite section-cat-blink}@keyframes section-cat-blink{0%,93%,to{transform:scaleY(1)}96%{transform:scaleY(.1)}}.section-cat-swish{transform-box:view-box;transform-origin:12px 32px;animation:3.2s ease-in-out infinite section-cat-swish}@keyframes section-cat-swish{0%,to{transform:rotate(0)}50%{transform:rotate(-9deg)}}@media (prefers-reduced-motion:reduce){.section-cat-zzz,.section-cat-blink,.section-cat-swish{animation:none}}.path-section-snowman{display:none}:root[data-sky=snow] .path-section-banner-inner{position:relative}:root[data-sky=snow] .path-section-snowman{pointer-events:none;filter:drop-shadow(0 2px 2.5px #3c548233);display:block;position:absolute;bottom:100%}:root[data-sky=snow] .path-section-snowman.is-behind{filter:none}.path-section-snowman svg{display:block;overflow:visible}.snowman-wave{transform-box:fill-box;transform-origin:0 100%;animation:1.3s ease-in-out infinite alternate snowman-wave}@keyframes snowman-wave{0%{transform:rotate(-12deg)}to{transform:rotate(10deg)}}.snowman-pat{transform-box:fill-box;transform-origin:0%;animation:.8s ease-in-out infinite alternate snowman-pat}@keyframes snowman-pat{to{transform:rotate(-8deg)}}.snowman-notes{animation:2.8s ease-in-out infinite snowman-bob}@keyframes snowman-bob{50%{opacity:.7;transform:translateY(-3px)}}.snowman-peek{animation:4s ease-in-out infinite snowman-peek}@keyframes snowman-peek{0%,55%,to{transform:translateY(0)}70%,85%{transform:translateY(2.5px)}}.snowman-flakes{animation:3.6s ease-in infinite snowman-flakes}@keyframes snowman-flakes{0%{opacity:0;transform:translateY(-4px)}25%{opacity:1}85%{opacity:1}to{opacity:0;transform:translateY(5px)}}.snowman-zzz path{animation:3s ease-in-out infinite snowman-zzz}.snowman-zzz path:nth-child(2){animation-delay:.5s}.snowman-zzz path:nth-child(3){animation-delay:1s}@keyframes snowman-zzz{0%{opacity:0;transform:translateY(3px)}30%,70%{opacity:1}to{opacity:0;transform:translate(2px,-3px)}}.snowman-steam path{animation:2.2s ease-in-out infinite snowman-steam}.snowman-steam path:nth-child(2){animation-delay:.7s}@keyframes snowman-steam{0%{opacity:0;transform:translateY(2px)}40%{opacity:.95}to{opacity:0;transform:translateY(-3px)}}@media (prefers-reduced-motion:reduce){.snowman-wave,.snowman-pat,.snowman-notes,.snowman-peek,.snowman-flakes,.snowman-zzz path,.snowman-steam path{animation:none}}.day-bird{opacity:var(--op,.5);animation:day-bird-cross var(--dur,26s) linear infinite;animation-delay:var(--delay,0s);will-change:transform;position:absolute;left:0}@keyframes day-bird-cross{0%{transform:translate(-10vw)}to{transform:translate(110vw)}}.day-bird-shape{display:block}.day-bird-up,.day-bird-down{animation:day-bird-flap var(--flap,.5s) steps(1, end) infinite}.day-bird-down{animation-name:day-bird-flap-alt}@keyframes day-bird-flap{0%,49%{opacity:1}50%,to{opacity:0}}@keyframes day-bird-flap-alt{0%,49%{opacity:0}50%,to{opacity:1}}@media (prefers-reduced-motion:reduce){.day-bird,.day-bird-up,.day-bird-down{animation:none}.day-bird-down{opacity:0}}.pluck-board{flex-direction:column;align-items:center;gap:8px;display:flex}.pluck-board svg{display:block;overflow:visible}.pluck-board-lg svg{width:230px;height:auto}.pluck-board-md svg{width:168px;height:auto}.pluck-board-xl svg{width:300px;height:auto}.pluck-board-nut{fill:var(--ink)}.pluck-board-fretline{stroke:var(--line);stroke-width:1.5px}.pluck-board-position{fill:var(--ink-soft);font-size:11px;font-weight:700}.pluck-board-string{stroke:var(--ink-soft);transition:stroke .15s}.pluck-board-string-muted{stroke:var(--ink-faint);stroke-dasharray:3 4;opacity:.5}.pluck-board-string-ringing{stroke:var(--gold-dark);animation:.5s ease-out pluck-board-vibrate}@keyframes pluck-board-vibrate{0%{filter:drop-shadow(0 0 #e7c26400);transform:translate(0)}12%{filter:drop-shadow(0 0 4px #e7c264e6);transform:translate(-2.2px)}28%{transform:translate(1.8px)}44%{transform:translate(-1.2px)}62%{transform:translate(.8px)}80%{transform:translate(-.4px)}to{filter:drop-shadow(0 0 #e7c26400);transform:translate(0)}}.pluck-board-string-dim{opacity:.22}.pluck-board-string-spotlit{stroke:var(--gold-dark);filter:drop-shadow(0 0 5px #e7c264cc);stroke-width:3px!important}.pluck-board-pluckmark{fill:var(--green);font-size:10px;font-weight:700}.pluck-board-pluckmark-live{fill:var(--gold-dark);font-size:13px}.pluck-board-nopluck{fill:var(--ink-faint);opacity:.6;font-size:9px}.pluck-board-finger{fill:var(--bg-soft);stroke:var(--gold-dark);stroke-width:1.4px}.pluck-board-finger-live{fill:var(--gold-dark)}.pluck-board-finger-letter{fill:var(--ink);font-size:8.5px;font-style:italic;font-weight:800}.pluck-board-mute{fill:var(--ink-faint);font-size:15px;font-weight:700}.pluck-board-open{fill:none;stroke:var(--green);stroke-width:2px}.pluck-board-dot,.pluck-board-barre{fill:var(--green)}.pluck-board-barre-lit{fill:var(--gold-dark)}.pluck-board-dot-label{fill:#fff;font-size:9px;font-weight:700}.pluck-board-unused{fill:var(--ink-faint);opacity:.75;font-size:15px;font-weight:800}.pluck-board-label{fill:var(--ink-soft);letter-spacing:.06em;font-size:9px;font-weight:700}.pluck-board-label-muted{fill:var(--ink-faint);opacity:.6}.pluck-board-hit{fill:#0000;cursor:pointer}.pluck-board-hit:focus-visible{fill:#e7c2642e;outline:none}.pluck-board-hit-muted{cursor:help}.pluck-board-hint{color:var(--ink-soft);text-align:center;margin:0;font-size:12px;font-weight:700}@media (prefers-reduced-motion:reduce){.pluck-board-string-ringing{animation:none}}.reward-burst{z-index:130;pointer-events:none;place-items:center;display:grid;position:fixed;inset:0}.reward-burst-stage{width:0;height:0;position:relative}.reward-burst-coin{animation:reward-burst-throw var(--dur,1.3s) cubic-bezier(.16, .7, .3, 1) var(--delay,0s) both;display:block;position:absolute;top:0;left:0}@keyframes reward-burst-throw{0%{opacity:0;transform:translate(0)rotate(0)scale(.4)}12%{opacity:1}55%{transform:translate(var(--dx), var(--dy)) rotate(calc(var(--rot) * .6)) scale(1);opacity:1}to{transform:translate(var(--dx), calc(var(--dy) + var(--fall))) rotate(var(--rot)) scale(.85);opacity:0}}.reward-burst-amount{white-space:nowrap;border:2px solid var(--gold-dark);background:#100c06d1;border-radius:999px;align-items:center;gap:8px;padding:10px 20px;animation:1.5s cubic-bezier(.2,.9,.3,1) both reward-burst-amount;display:flex;position:absolute;top:0;left:0;transform:translate(-50%,-50%);box-shadow:0 8px 26px #0006}.reward-burst-amount strong{font-family:var(--font-body);color:var(--gold-light,#f3e0ad);font-size:34px;line-height:1}@keyframes reward-burst-amount{0%{opacity:0;transform:translate(-50%,-50%)scale(.3)}18%{opacity:1;transform:translate(-50%,-50%)scale(1.14)}30%{opacity:1;transform:translate(-50%,-50%)scale(1)}72%{opacity:1;transform:translate(-50%,-62%)scale(1)}to{opacity:0;transform:translate(-50%,-110%)scale(.95)}}@media (prefers-reduced-motion:reduce){.reward-burst-coin{display:none}.reward-burst-amount{animation:1.5s both reward-burst-fade}@keyframes reward-burst-fade{0%,80%{opacity:1;transform:translate(-50%,-50%)}to{opacity:0;transform:translate(-50%,-50%)}}}.ccp-card,.ccp-ask,.ccp-lesson{z-index:1;position:relative}.ccp-card{text-align:left;border:2px dashed var(--gold-dark);border-radius:var(--r-lg);background:color-mix(in srgb, var(--gold) 9%, var(--surface));width:100%;color:var(--ink);cursor:pointer;align-items:center;gap:16px;margin-bottom:20px;padding:16px 18px;transition:transform .15s,box-shadow .15s;display:flex}@media (hover:hover){.ccp-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}}.ccp-card-icon{flex:none;font-size:26px}.ccp-card-text{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.ccp-card-eyebrow{letter-spacing:.12em;text-transform:uppercase;color:var(--gold-dark);font-size:10.5px;font-weight:800}.ccp-card-text strong{font-size:15.5px}.ccp-card-sub{color:var(--ink-soft);font-size:12.5px;font-weight:600;line-height:1.45}.ccp-card-reward{background:var(--gold-dark);color:#1c1405;border-radius:999px;flex:none;align-items:center;gap:5px;padding:6px 12px;font-size:13px;font-weight:800;display:inline-flex}:root[data-sky=snow] .ccp-card-reward{color:#fff}.ccp-ask{border-radius:var(--r-lg);background:var(--surface);box-shadow:var(--shadow-md);border:2px solid var(--gold-dark);text-align:center;margin-bottom:20px;padding:24px}.ccp-ask h3{margin:0 0 6px;font-size:19px}.ccp-ask p{color:var(--ink-soft);margin:0 0 16px;font-size:13px;font-weight:600}.ccp-ask-actions{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.ccp-lesson{border-radius:var(--r-lg);background:var(--surface);box-shadow:var(--shadow-md);border:2px solid var(--gold-dark);margin-bottom:20px;padding:18px 20px 20px}.ccp-lesson-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.ccp-dots{gap:6px;display:flex}.ccp-dot{background:var(--line);cursor:pointer;border:none;border-radius:999px;width:24px;height:6px;padding:0;transition:background .2s,width .2s}.ccp-dot-done{background:color-mix(in srgb, var(--gold-dark) 55%, var(--line))}.ccp-dot-current{background:var(--gold-dark);width:38px}.ccp-skip{color:var(--ink-soft);cursor:pointer;background:0 0;border:none;font-size:13px;font-weight:700;text-decoration:underline}.ccp-lesson-body{flex-wrap:wrap;align-items:flex-start;gap:26px;display:flex}.ccp-lesson-board{flex-direction:column;flex:none;align-items:center;gap:6px;display:flex}.ccp-chord-name{color:var(--gold-dark);margin:0;font-size:12.5px;font-weight:800}.ccp-lesson-copy{flex-direction:column;flex:1;gap:10px;min-width:270px;display:flex}.ccp-step-count{letter-spacing:.1em;text-transform:uppercase;color:var(--gold-dark);margin:0;font-size:11px;font-weight:800}.ccp-lesson-copy h3{margin:0;font-size:19px}.ccp-text{color:var(--ink-soft);margin:0;font-size:13.5px;font-weight:500;line-height:1.6;animation:.3s ease-out ccp-fade}@keyframes ccp-fade{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.ccp-nav{gap:10px;margin-top:auto;padding-top:8px;display:flex}.ccp-nav .btn:disabled{opacity:.45;cursor:not-allowed}@media (prefers-reduced-motion:reduce){.ccp-text{animation:none}}.ccp-ask,.ccp-lesson{scroll-margin:12px 0 var(--bottom-nav-h,0px)}.quests-card{z-index:1;background:var(--surface);border-radius:var(--r-xl);box-shadow:var(--shadow-md);margin-bottom:18px;padding:0;position:relative;overflow:hidden}.quests-strip{text-align:left;cursor:pointer;width:100%;color:var(--ink);background:0 0;border:none;align-items:center;gap:11px;padding:16px 18px;font-family:inherit;display:flex}@media (hover:hover){.quests-strip:hover{background:var(--bg-soft)}}.quests-strip-icon{font-size:18px}.quests-strip-title{font-size:15.5px;font-weight:800}.quests-strip-count{color:var(--ink-soft);background:var(--bg-soft);border-radius:999px;padding:3px 10px;font-size:12.5px;font-weight:700}.quests-strip-ready{color:var(--gold-dark);background:color-mix(in srgb, var(--gold) 18%, var(--surface));border:1px solid color-mix(in srgb, var(--gold-dark) 40%, transparent);border-radius:999px;align-items:center;gap:4px;padding:3px 10px;font-size:12.5px;font-weight:800;display:inline-flex}.quests-strip-chevron{color:var(--ink-soft);margin-left:auto;font-size:10px}.quests-strip-chips{flex-wrap:wrap;align-items:center;gap:6px;min-width:0;display:flex}.quests-strip-chip{color:var(--ink-soft);background:var(--bg-soft);white-space:nowrap;border-radius:999px;padding:3px 10px;font-size:12.5px;font-weight:700}.quests-strip-chip.is-done{color:var(--green-dark,var(--green));background:color-mix(in srgb, var(--green) 14%, var(--surface))}.quests-strip-dot{background:var(--gold);width:9px;height:9px;box-shadow:0 0 0 3px color-mix(in srgb, var(--gold) 25%, transparent);border-radius:50%;flex:none;margin-left:auto}.quests-strip-dot+.quests-strip-chevron{margin-left:0}.quests-heading{letter-spacing:.1em;text-transform:uppercase;color:var(--gold-dark);margin:4px 0 2px;font-size:11px;font-weight:800}.quests-panel .home-warmup-card{box-shadow:none;background:var(--bg-soft);border-color:#0000;margin:0 0 12px;padding:12px 14px}.quests-panel .transition-nudge{border-radius:var(--r-lg);box-shadow:inset 0 0 0 1.5px color-mix(in srgb, var(--gold-dark) 40%, transparent);margin:0 0 12px;padding:12px 14px;animation:none}.quests-panel .transition-nudge-title{font-size:15px}.quests-panel .ccp-card{margin:12px 0 0;padding:12px 14px}.quests-panel{padding:10px 18px 16px}.quests-sub{color:var(--ink-soft);max-width:52ch;margin:0;font-size:12.5px;font-weight:600;line-height:1.45}.quests-list{flex-direction:column;gap:8px;margin:10px 0 0;padding:0;list-style:none;display:flex}.quest{border-radius:var(--r-md);background:var(--bg-soft);border:2px solid #0000;align-items:center;gap:12px;padding:12px 14px;display:flex}.quest-complete{border-color:var(--gold-dark)}.quest-claimed{opacity:.6}.quest-icon{flex:none;font-size:21px}.quest-body{flex:1;min-width:0}.quest-title{color:var(--ink);margin:0;font-size:14px;font-weight:800}.quest-detail{color:var(--ink-soft);margin:2px 0 0;font-size:12px;font-weight:600;line-height:1.4}.quest-bar-row{align-items:center;gap:9px;max-width:300px;margin-top:7px;display:flex}.quest-bar{background:color-mix(in srgb, var(--ink) 12%, transparent);border-radius:999px;flex:1;height:5px;overflow:hidden}.quest-bar-fill{background:var(--gold-dark);border-radius:999px;height:100%;transition:width .3s;display:block}.quest-complete .quest-bar-fill{background:var(--green)}.quest-progress{color:var(--ink-soft);white-space:nowrap;flex:none;font-size:11px;font-weight:700}.quest-reward{flex-direction:column;flex:none;align-items:center;gap:5px;min-width:74px;display:flex}.quest-reward-amount{color:var(--gold-dark);white-space:nowrap;align-items:center;gap:4px;font-size:12px;font-weight:800;display:inline-flex}.quest-claim{padding:6px 15px;font-size:12.5px}.quest-claim:disabled{opacity:.45;cursor:not-allowed}.quest-open-tag{text-transform:uppercase;letter-spacing:.05em;color:var(--ink-faint);font-size:11px;font-weight:800}.quest-claimed-tag{text-transform:uppercase;letter-spacing:.05em;color:var(--green-dark);font-size:11px;font-weight:800}.quests-foot{color:var(--ink-soft);margin:12px 0 0;font-size:12px;font-weight:600;line-height:1.5}.quests-sub-short{display:none}@media (width<=899px),(height<=500px){.quests-card{scroll-margin-bottom:calc(96px + env(safe-area-inset-bottom,0px))}}@media (width<=560px){.quests-panel{padding:10px 12px 12px}.quests-strip{gap:9px;padding:14px 13px}.quests-strip-title{font-size:14px}.quests-sub-long{display:none}.quests-sub-short{display:inline}.quests-sub{font-size:12px}.quests-list{gap:6px;margin-top:8px}.quest{grid-template-columns:26px minmax(0,1fr) auto;grid-template-areas:"icon title reward""icon detail detail""icon bar status";align-items:center;gap:2px 10px;padding:10px 12px;display:grid}.quest-body,.quest-reward{display:contents}.quest-icon{grid-area:icon;align-self:start;margin-top:1px;font-size:19px}.quest-title{grid-area:title;font-size:13.5px;line-height:1.3}.quest-detail{grid-area:detail;margin:0;font-size:11.5px;line-height:1.35}.quest-bar-row{grid-area:bar;max-width:none;margin-top:4px}.quest-reward-amount{grid-area:reward;justify-self:end}:is(.quest-claim,.quest-open-tag,.quest-claimed-tag){grid-area:status;justify-self:end;margin-top:4px}.quest-claim{padding:5px 13px;font-size:12px}}.transition-nudge{z-index:1;border-radius:var(--r-xl);background:color-mix(in srgb, var(--gold) 14%, var(--surface));box-shadow:var(--shadow-md), inset 0 0 0 1.5px color-mix(in srgb, var(--gold-dark) 45%, transparent);align-items:center;gap:14px;margin-bottom:18px;padding:16px 18px;animation:.45s cubic-bezier(.2,1.3,.4,1) both transition-nudge-in;display:flex;position:relative}@keyframes transition-nudge-in{0%{opacity:0;transform:translateY(10px)scale(.98)}}.transition-nudge-icon{flex:none;font-size:28px}.transition-nudge-body{flex:1;min-width:0}.transition-nudge-title{color:var(--ink);margin:0;font-size:17px;font-weight:900}.transition-nudge-text{color:var(--ink-soft);margin:3px 0 0;font-size:13px;font-weight:600;line-height:1.45}.transition-nudge-actions{flex:none;align-items:center;gap:6px;display:flex}.transition-nudge-close{color:var(--ink-faint);cursor:pointer;background:0 0;border:0;padding:6px;font-size:14px}@media (width<=560px){.transition-nudge{flex-wrap:wrap}.transition-nudge-actions{justify-content:space-between;width:100%}}.transition-nudge-text strong{color:var(--ink);font-weight:800}.home-page{position:relative}.app-main:has(.home-page){background-color:#96d4f3;background-image:linear-gradient(#fff4d9 0%,#ffe2ae 12.5%,#ffc99b 25%,#f9b2a4 37.5%,#e4aec4 50%,#c0b6dd 62.5%,#9cbfe8 75%,#84c5ef 87.5%,#96d4f3 100%);background-image:linear-gradient(in oklab 180deg, #fff4d9 0%, #ffe2ae 12.5%, #ffc99b 25%, #f9b2a4 37.5%, #e4aec4 50%, #c0b6dd 62.5%, #9cbfe8 75%, #84c5ef 87.5%, #96d4f3 100%);background-repeat:no-repeat;background-size:100% 100%;overflow-x:clip}.home-sunbeams{pointer-events:none;z-index:0;width:100vw;height:620px;margin-left:-50vw;position:absolute;top:0;left:50%;right:auto;overflow:hidden}.home-sunbeam{height:124%;width:var(--w,110px);transform:rotate(var(--tilt,14deg));filter:blur(17px);animation:home-beam-breathe var(--dur,12s) ease-in-out infinite alternate;animation-delay:var(--delay,0s);background:linear-gradient(#fffdf0bf,#fff6d633 50%,#0000 85%);position:absolute;top:-12%}@keyframes home-beam-breathe{0%{opacity:var(--op,.45)}to{opacity:calc(var(--op,.45) * .4)}}.home-motes{pointer-events:none;z-index:0;width:100vw;height:6200px;margin-left:-50vw;position:absolute;top:0;left:50%;right:auto;overflow:hidden}.home-mote{animation:home-mote-float var(--dur,18s) ease-in-out infinite;animation-delay:var(--delay,0s);background:radial-gradient(circle,#fffae2 0%,#ffd88a8c 55%,#0000 100%);border-radius:50%;position:absolute}@keyframes home-mote-float{0%{opacity:0;transform:translate(0)scale(.9)}15%{opacity:var(--op,.8)}50%{transform:translate(26px,-44px)scale(1.2)}85%{opacity:var(--op,.8)}to{opacity:0;transform:translate(52px,-92px)scale(.85)}}.home-clouds{pointer-events:none;z-index:0;width:100vw;height:6200px;margin-left:-50vw;position:absolute;top:0;left:50%;right:auto;overflow:hidden}.home-cloud{opacity:var(--op,.85);animation:home-cloud-drift var(--dur,30s) linear infinite;animation-delay:var(--delay,0s);display:block;position:absolute;left:0}@keyframes home-cloud-drift{0%{transform:translate(calc(-100% - 40px))}to{transform:translate(calc(100vw + 40px))}}.home-cloud-shape{animation:home-cloud-bob var(--bob,9s) ease-in-out infinite alternate;animation-delay:var(--delay,0s);display:block}@keyframes home-cloud-bob{0%{transform:translateY(-7px)scale(1)}to{transform:translateY(7px)scale(1.035)}}.home-raindrops{pointer-events:none;z-index:0;position:fixed;inset:0;overflow:hidden}.home-raindrop{width:2px;opacity:var(--op,.5);animation:home-rain-fall var(--dur,1s) linear infinite;animation-delay:var(--delay,0s);background:linear-gradient(#0000,#deeafaf2);border-radius:2px;position:absolute;top:0}@keyframes home-rain-fall{0%{transform:translateY(-25vh)rotate(13deg)}to{transform:translateY(115vh)rotate(13deg)}}.home-lightning{pointer-events:none;z-index:0;animation:1.6s ease-out forwards home-lightning-flash;position:fixed;inset:0}@keyframes home-lightning-flash{0%{background:#e2eeff00}4%{background:#e2eeff80}9%{background:#e2eeff0f}14%{background:#e2eeff61}24%{background:#e2eeff0a}to{background:#e2eeff00}}.home-lightning-bolt{width:var(--w,120px);filter:drop-shadow(0 0 5px #e8f4ff)drop-shadow(0 0 18px #a0d0ffd9)drop-shadow(0 0 44px #78b4ff73);height:auto;animation:1.6s ease-out forwards home-lightning-bolt;position:absolute;top:0}@keyframes home-lightning-bolt{0%{opacity:0}3%{opacity:1}10%{opacity:.08}15%{opacity:.95}27%{opacity:0}to{opacity:0}}.home-rain-toggle{border-radius:var(--r-md);color:#eef1f5;background:#79828f;align-items:center;gap:6px;padding:10px 14px;font-size:13px;font-weight:700;transition:background .15s,color .15s;display:flex;box-shadow:0 2px 10px #14181e4d}.home-rain-toggle-active{color:#14202e;background:linear-gradient(#9fb4cc,#8299b4)}@media (prefers-reduced-motion:reduce){.home-cloud,.home-raindrop,.home-mote,.home-sunbeam,.home-lightning,.home-lightning-bolt,.home-sparkle,.home-space-star,.home-astronaut,.home-shooting-star{animation:none}}.home-header,.home-continue-card,.learning-path{z-index:1;position:relative}.home-header{z-index:2}.home-eyebrow,.home-header h1,.home-stat,.home-continue-card h3{color:#241f3d}.home-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px;display:flex}.home-eyebrow{margin-bottom:2px;font-size:14px;font-weight:700}.home-header h1{font-size:34px}.home-header-stats{gap:10px;display:flex}.home-stat{border-radius:var(--r-md);box-shadow:var(--shadow-sm);background:#fff;align-items:center;gap:8px;padding:10px 16px;display:flex}@media (width<=599px){.home-header-stats{width:100%}.home-stat{flex:1;min-width:0;padding:10px 12px}}.home-stat-icon{font-size:20px}.home-stat div{flex-direction:column;line-height:1.15;display:flex}.home-stat strong{font-family:var(--font-display);font-variant-numeric:lining-nums;font-size:16px}.home-stat span{color:var(--ink-soft);font-size:11px;font-weight:700}.home-stat{position:relative}.home-stat-info{display:none}@media (width<=899px),(height<=500px){.home-stat div{gap:5px;line-height:1.1}.home-stat-info{display:block;position:absolute;top:5px;right:5px}.home-stat-info .info-tooltip-icon{color:color-mix(in srgb, var(--gold) 70%, currentColor);position:relative}:root[data-theme=light] .home-stat-info .info-tooltip-icon{color:var(--gold-dark)}.home-stat-info .info-tooltip-icon:before{content:"";position:absolute;inset:-9px}:root .home-stat .info-tooltip .info-tooltip-bubble{width:max-content;max-width:min(240px,100vw - 48px);color:var(--bg);font-size:12px;font-weight:600}}.home-stat>.home-stat-icon{font-size:20px;line-height:1}@media (width<=599px){.home-stat{text-align:center;grid-template-columns:minmax(0,1fr) auto auto minmax(0,1fr);grid-template-areas:".icon num.""label label label label";align-content:center;align-items:center;gap:3px 0;padding:15px 6px 11px;display:grid}.home-stat>.home-stat-icon{margin-right:6px}.home-stat>div{display:contents}.home-stat>.home-stat-icon{grid-area:icon;place-items:center;font-size:18px;display:grid}.home-stat>.home-stat-icon .fretbit-icon{width:18px;height:18px}.home-stat strong{grid-area:num;font-size:18px;line-height:1.1}.home-stat>div>span{white-space:nowrap;grid-area:label;font-size:clamp(10px,3vw,11.5px);line-height:1.2}.home-stat-info{top:4px;right:4px}.home-header-stats{flex-wrap:wrap}.home-rain-toggle{flex:100%;justify-content:center;padding:8px 14px}}@media (width<=360px){.home-stat{padding-inline:4px}.home-stat strong{font-size:15px}}.home-continue-card{border-radius:var(--r-lg);width:100%;box-shadow:var(--shadow-md);background:linear-gradient(120deg,#eafcf4,#eaf3ff);border:none;justify-content:space-between;align-items:center;margin-bottom:20px;padding:20px 24px;transition:transform .15s;display:flex}@media (hover:hover){.home-continue-card:hover{transform:translateY(-2px)}}.home-continue-label{letter-spacing:.06em;text-transform:uppercase;color:var(--green-dark);margin-bottom:4px;font-size:12px;font-weight:700}.home-continue-card h3{font-size:22px}.home-continue-arrow{color:var(--green-dark);font-size:26px}:root[data-theme=dark] .app-main:has(.home-page){background-color:#0f1326;background-image:linear-gradient(#010102 0%,#05060d 10%,#0a0d1a 18%,#0f1326 25%,#12162a 32% 48%,#161c34 62%,#1c233e 76%,#232b4c 88%,#2b3460 100%);background-image:linear-gradient(in oklab 180deg, #010102 0%, #05060d 10%, #0a0d1a 18%, #0f1326 25%, #12162a 32%, #12162a 48%, #161c34 62%, #1c233e 76%, #232b4c 88%, #2b3460 100%);background-repeat:no-repeat;background-size:100% 100%}:root[data-theme=dark] .home-space-stars{pointer-events:none;z-index:0;width:100vw;height:3900px;margin-left:-50vw;position:absolute;top:0;left:50%;right:auto;overflow:hidden}:root[data-theme=dark] .home-space-star{animation:home-sparkle-twinkle var(--dur,4s) ease-in-out infinite;animation-delay:var(--delay,0s);background:#fff;border-radius:50%;position:absolute;box-shadow:0 0 4px 1px #fff,0 0 9px 3px #ffffffa6,0 0 18px 4px #bed2ff66}:root[data-theme=dark] .home-astronaut{z-index:0;opacity:.92;filter:drop-shadow(0 0 10px #ffffff40);animation:9s ease-in-out infinite home-astronaut-float;position:absolute}@keyframes home-astronaut-float{0%,to{transform:translate(0)rotate(-6deg)}50%{transform:translate(-10px,18px)rotate(4deg)}}:root[data-theme=dark] .home-sparkles{pointer-events:none;z-index:0;--stars-end:8400px;width:100vw;height:11000px;-webkit-mask-image:linear-gradient(180deg, black 0px, black 2400px, #000000bf calc(var(--stars-end) - 1500px), transparent var(--stars-end));mask-image:linear-gradient(180deg, black 0px, black 2400px, #000000bf calc(var(--stars-end) - 1500px), transparent var(--stars-end));-webkit-mask-image:linear-gradient(180deg, black 0px, black 2400px, #000000bf calc(var(--stars-end) - 1500px), transparent var(--stars-end));margin-left:-50vw;position:absolute;top:3900px;left:50%;right:auto;overflow:hidden}:root[data-theme=dark] .home-sparkle{color:#fff6dd;-webkit-user-select:none;user-select:none;opacity:var(--op,.6);text-shadow:0 0 6px #fffae6,0 0 16px #ffdc8ce6,0 0 30px #e7c2648c;animation:home-sparkle-twinkle var(--dur,3.2s) ease-in-out infinite;animation-delay:var(--delay,0s);line-height:1;position:absolute}@keyframes home-sparkle-twinkle{0%,to{opacity:var(--op,.6)}50%{opacity:calc(var(--op,.6) * .22)}}:root[data-theme=dark] .home-night-birds{z-index:0;pointer-events:none;width:100vw;height:340px;margin-left:-50vw;position:absolute;bottom:0;left:50%;right:auto;overflow:hidden}:root[data-theme=dark] .home-shooting-stars{pointer-events:none;z-index:0;width:100vw;height:11000px;margin-left:-50vw;position:absolute;top:0;left:50%;right:auto;overflow:hidden}.home-shooting-star{z-index:0;pointer-events:none;background:#fff;border-radius:50%;width:3px;height:3px;position:absolute;box-shadow:0 0 6px 1px #ffffffe6}.home-shooting-star:after{content:"";background:linear-gradient(90deg,#0000,#ffffffd9);width:90px;height:1.5px;position:absolute;top:50%;right:100%;transform:translateY(-50%)}.home-shooting-star-anim{transform:rotate(var(--angle,25deg));animation:home-shooting-star-move var(--dur,1.2s) linear forwards;animation-delay:var(--sdelay,0s);opacity:0}@keyframes home-shooting-star-move{0%{transform:rotate(var(--angle,25deg)) translate(0, 0);opacity:0}8%{opacity:1}85%{opacity:1}to{transform:rotate(var(--angle,25deg)) translate(var(--dist,320px), 0);opacity:0}}:root[data-theme=dark] .home-eyebrow,:root[data-theme=dark] .home-header h1,:root[data-theme=dark] .home-stat,:root[data-theme=dark] .home-continue-card h3{color:#f2f2f4}:root[data-theme=dark] .home-stat{background:#1b1b1e;box-shadow:0 2px 10px #00000080}:root[data-theme=dark] .home-stat span{color:#a8a8b0}:root[data-theme=dark] .home-continue-card{background:linear-gradient(120deg,#1d1d20,#26262b);box-shadow:0 8px 24px #0000008c,inset 0 0 0 1px #ffffff0f}:root[data-sky=blossom] .home-stat{background:#4f3645}:root[data-sky=blossom] .home-stat span{color:#e6c4d4}:root[data-sky=blossom] .home-continue-card{background:linear-gradient(120deg,#56394a,#654456);box-shadow:0 8px 24px #1e0c1680,inset 0 0 0 1px #f7bcd438}:root[data-theme=dark][data-sky=starlight] .app-main:has(.home-page){background-color:#070919;background-image:linear-gradient(#1b1d4d 0%,#181a45 14%,#14163a 30%,#111230 48%,#0e0f28 66%,#0a0b1f 82%,#070919 100%);background-image:linear-gradient(in oklab 180deg, #1b1d4d 0%, #181a45 14%, #14163a 30%, #111230 48%, #0e0f28 66%, #0a0b1f 82%, #070919 100%);background-repeat:no-repeat;background-size:100% 100%;overflow-x:clip}:root[data-theme=dark][data-sky=cyberbloom] .app-main:has(.home-page){background-color:#170b10;background-image:none;background-repeat:no-repeat;background-size:100% 100%;overflow-x:clip}:root[data-sky=cyberbloom] .home-eyebrow{color:#55c9d0}:root[data-sky=cyberbloom] .home-header h1{color:#fbeef2;text-shadow:-1px 0 #ff3c5a99,1px 0 #50c8ff99}:root[data-sky=cyberbloom] .home-stat{background:#22111a}:root[data-sky=cyberbloom] .home-continue-card{background:linear-gradient(120deg,#2a1420,#331927);box-shadow:0 8px 24px #00000080,inset 0 0 0 1px #f06aa64d}:root[data-sky=cyberbloom] .home-continue-label,:root[data-sky=cyberbloom] .home-continue-arrow{color:#f38bb8}:is(:root[data-theme][data-sky=plainLight] .app-main:has(.home-page),:root[data-theme][data-sky=plainDark] .app-main:has(.home-page)){background:var(--bg)}:root[data-sky=plainLight] .home-eyebrow{color:var(--ink-soft)}:root[data-sky=plainLight] .home-header h1{color:var(--ink)}:root[data-sky=plainLight] .home-continue-card{box-shadow:var(--shadow-md), inset 0 0 0 1px color-mix(in srgb, var(--gold) 35%, transparent);background:linear-gradient(120deg,#fdf6e3,#f8ecd0)}:root[data-sky=plainLight] .home-continue-label,:root[data-sky=plainLight] .home-continue-arrow{color:var(--gold-dark)}:root[data-theme=dark][data-sky=meadow] .app-main:has(.home-page){background-color:#2c3223;background-image:linear-gradient(in oklab 180deg, #4a5238 0%, #414a33 22%, #3b432f 45%, #363d2b 70%, #2c3223 100%);background-repeat:no-repeat;background-size:100% 100%;overflow-x:clip}:root[data-sky=meadow] .home-eyebrow{color:#dfe2a8}:root[data-sky=meadow] .home-header h1{color:#f7f5e4}:root[data-sky=meadow] .home-continue-label,:root[data-sky=meadow] .home-continue-arrow{color:#e4e59a}:root[data-sky=meadow] .home-stat{background:#444c37}:root[data-sky=meadow] .home-stat span{color:#d6d8bb}:root[data-sky=meadow] .home-continue-card{background:linear-gradient(120deg,#4b5439,#56603f);box-shadow:0 8px 24px #0f140a73,inset 0 0 0 1px #e4e59a40}:root[data-theme=dark][data-sky=blackcat] .app-main:has(.home-page){background-color:#2e0b12;background-image:linear-gradient(in oklab 180deg, #4d1622 0%, #45131e 20%, #3e1019 45%, #370e16 70%, #2e0b12 100%);background-repeat:no-repeat;background-size:100% 100%;overflow-x:clip}:root[data-sky=blackcat] .home-eyebrow{color:#f1cf7e}:root[data-sky=blackcat] .home-header h1{color:#fbecee}:root[data-sky=blackcat] .home-stat{background:#4a1520}:root[data-sky=blackcat] .home-stat span{color:#e8c0c7}:root[data-sky=blackcat] .home-continue-card{background:linear-gradient(120deg,#551a26,#63202e);box-shadow:0 8px 24px #14030880,inset 0 0 0 1px #e8c26a4d}:root[data-sky=blackcat] .home-continue-label,:root[data-sky=blackcat] .home-continue-arrow{color:#f1cf7e}:root[data-theme=light][data-sky=snow] .app-main:has(.home-page){background:var(--bg);overflow-x:clip}:root[data-sky=snow] .home-eyebrow{color:#34416a}:root[data-sky=snow] .home-header h1{color:#1c2640}:root[data-sky=snow] .home-stat{background:#f8fafde0}:root[data-sky=snow] .home-continue-card{box-shadow:var(--shadow-md), inset 0 0 0 1px #7fa6d659;background:linear-gradient(120deg,#f8fafd,#e9f0f9)}:root[data-sky=snow] .home-continue-label,:root[data-sky=snow] .home-continue-arrow{color:var(--gold-dark)}:root[data-theme=dark][data-sky=blossom] .app-main:has(.home-page){background-color:#33232c;background-image:linear-gradient(in oklab 180deg, #54394a 0%, #4b3441 18%, #43303b 40%, #3d2b36 62%, #362630 82%, #2f2029 100%);background-repeat:no-repeat;background-size:100% 100%;overflow-x:clip}:root[data-sky=blossom] .home-eyebrow{color:#f3c2d6}:root[data-sky=blossom] .home-header h1{color:#fff0f6}:root[data-sky=starlight] .home-eyebrow{color:#a9d9ee}:root[data-sky=starlight] .home-header h1{color:#eaf6ff}:root[data-theme=rain] .app-main:has(.home-page){background-color:#79828f;background-image:linear-gradient(#12151af2 0,#1a1e25e0 170px,#2c323b8c 320px,#3c434d33 420px,#0000 520px),linear-gradient(#1d2127 0%,#262b33 7%,#333941 15%,#424953 26%,#4f5761 40%,#5c646f 56%,#69717c 72%,#727b86 88%,#79828f 100%);background-repeat:no-repeat;background-size:100% 100%}:root[data-theme=rain] .home-eyebrow,:root[data-theme=rain] .home-header h1{color:#eef1f5}:root[data-theme=rain] .home-stat{background:#58616d;box-shadow:0 2px 10px #14181e4d}:root[data-theme=rain] .home-stat,:root[data-theme=rain] .home-continue-card h3{color:#f2f4f7}:root[data-theme=rain] .home-stat span{color:#e3e8ee}:root[data-theme=rain] .home-continue-card{background:linear-gradient(120deg,#616a76,#737c88);box-shadow:0 8px 24px #10141a66,inset 0 0 0 1px #ffffff12}:root[data-theme=rain] .home-continue-label,:root[data-theme=rain] .home-continue-arrow{color:#d7dee7}:root[data-theme=rain] .path-section-banner-inner{color:#f2f4f7;background:#56606b;box-shadow:0 6px 20px #10141a59}:root[data-theme=rain] .path-section-banner-inner h2{color:#f6f8fa}:root[data-theme=rain] .path-section-banner-inner p{color:#e1e6ec}.home-birds{z-index:0;pointer-events:none;width:100vw;height:6200px;margin-left:-50vw;position:absolute;top:0;left:50%;right:auto;overflow:hidden}.home-warmup-card{border-radius:var(--r-lg);border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-md);color:var(--ink);align-items:center;gap:14px;margin-bottom:36px;padding:14px 18px;text-decoration:none;transition:transform .15s,border-color .15s;display:flex}@media (hover:hover){.home-warmup-card:hover{border-color:var(--gold-dark);transform:translateY(-2px)}}.home-warmup-icon{background:color-mix(in srgb, var(--gold) 18%, var(--surface));width:40px;height:40px;color:var(--gold-dark);border-radius:50%;flex:none;place-items:center;font-size:20px;font-weight:800;display:grid}.home-warmup-card.is-done .home-warmup-icon{background:color-mix(in srgb, var(--green) 18%, var(--surface));color:var(--green-dark,var(--green))}.home-warmup-text{flex:1;gap:1px;min-width:0;display:grid}.home-warmup-label{letter-spacing:.08em;text-transform:uppercase;color:var(--gold-dark);font-size:11px;font-weight:800}.home-warmup-text strong{font-family:var(--font-display);font-size:18px;line-height:1.2}.home-warmup-chords{color:var(--ink-soft);letter-spacing:.03em;font-size:12.5px;font-weight:700}.home-warmup-go{color:var(--gold-dark);flex:none;justify-items:end;gap:2px;font-size:13px;font-weight:800;display:grid}.home-warmup-card.is-done .home-warmup-go{color:var(--ink-faint)}.home-warmup-stars{letter-spacing:1px;font-size:12px}.home-warmup-stars i{color:var(--line);font-style:normal}.home-warmup-stars i.is-on{color:var(--gold)}@media (width<=480px){.home-warmup-card{gap:12px;padding:12px 14px}.home-warmup-text strong{font-size:16px}}.chord-diagram{flex-direction:column;align-items:center;gap:8px;margin:0;display:inline-flex}.chord-diagram-sm svg{width:84px;height:104px}.chord-diagram-md svg{width:128px;height:158px}.chord-diagram-lg svg{width:180px;height:222px}.chord-diagram-string{stroke:var(--chart-string,#d7d3e8);stroke-width:2px}.chord-diagram-fretline{stroke:var(--chart-fret,#e6e3f2);stroke-width:2px}.chord-diagram-nut{fill:var(--ink)}.chord-diagram-mute{fill:var(--red);font-size:15px;font-weight:700}.chord-diagram-open{fill:none;stroke:var(--green);stroke-width:2.5px}.chord-diagram-dot{fill:var(--green)}.chord-diagram-finger{fill:#fff;font-size:12px;font-weight:700;font-family:var(--font-body)}.chord-diagram-barre{fill:var(--green);opacity:.28}.chord-diagram-strings-label{fill:var(--ink-faint);letter-spacing:.15em;font-size:9px;font-weight:700}.chord-diagram-position{fill:var(--ink);font-size:15px;font-weight:800;font-family:var(--font-body)}.chord-diagram-highlight .chord-diagram-dot,.chord-diagram-highlight .chord-diagram-barre{fill:var(--purple)}.chord-diagram-highlight .chord-diagram-open{stroke:var(--purple)}.chord-diagram-caption{font-family:var(--font-body);color:var(--ink);font-size:15px;font-weight:700}.waveform-canvas{border-radius:var(--r-md);background:var(--bg-soft);width:100%;height:90px}.confidence-bar{align-items:center;gap:10px;width:100%;display:flex}.confidence-bar-track{background:var(--bg-soft);border-radius:999px;flex:1;height:14px;overflow:hidden}.confidence-bar-fill{border-radius:999px;height:100%;transition:width .12s linear,background .2s}.confidence-bar-low{background:linear-gradient(90deg, #ffb0b0, var(--red))}.confidence-bar-medium{background:linear-gradient(90deg, #ffd48a, var(--gold))}.confidence-bar-high{background:linear-gradient(90deg, #8ef0c4, var(--green))}.confidence-bar-label{text-align:right;text-transform:uppercase;letter-spacing:.04em;min-width:58px;font-size:12px;font-weight:700}.confidence-bar-label-low{color:var(--red)}.confidence-bar-label-medium{color:var(--gold-dark)}.confidence-bar-label-high{color:var(--green-dark)}.confidence-bar-label-waiting{color:var(--ink-soft)}.chord-card{perspective:1400px;box-sizing:border-box;min-height:296px}.chord-card-inner{width:100%;height:100%;transform-style:preserve-3d;transition:transform .55s cubic-bezier(.2,.7,.3,1);position:relative}.chord-card-flipped .chord-card-inner{transform:rotateY(180deg)}.chord-card-face{box-sizing:border-box;backface-visibility:hidden;background:var(--surface);border-radius:var(--r-lg);border:3px solid var(--gold-dark);box-shadow:var(--shadow-sm), 0 0 0 1px #0000001a;flex-direction:column;padding:14px 16px;transition:border-color .2s;display:flex;position:absolute;inset:0;overflow:hidden}.chord-card-front{text-align:center;color:var(--ink);justify-content:center;align-items:center;gap:8px}.chord-card-symbol{font-family:var(--font-body);letter-spacing:.01em;color:var(--ink);font-size:22px;font-weight:700}@media (hover:hover){.chord-card:hover .chord-card-face{filter:brightness(1.02)}}.chord-card-front:active{transform:scale(.99)}.chord-card-back{gap:8px;min-height:100%;position:relative;transform:rotateY(180deg)}.chord-card-back-head{flex:none;align-items:center;gap:8px;display:flex}.chord-card-back-name{color:var(--ink-soft);min-width:0;font-size:13px;font-weight:700}.chord-card-tag{background:var(--chord-accent,var(--line));color:var(--chord-accent-text,var(--ink));border:1px solid #0000002e;border-radius:999px;padding:2px 10px;font-weight:700}.chord-card-practice-actions{flex:none;gap:8px;display:flex}.chord-card-practice-actions .btn{flex:1;min-width:0;padding:10px 8px;font-size:13px}.chord-card-status{flex-direction:column;gap:6px;min-height:0;display:flex;overflow:hidden}.chord-card-status .waveform-canvas{border-radius:var(--r-sm);height:34px}.chord-card-status p{margin:0;line-height:1.35}.chord-card-hint{color:var(--ink-soft);font-size:12.5px;font-weight:700}.chord-card-status .lesson-error{margin:0;font-size:12.5px}.chord-card-facts{border-bottom:1px solid var(--line);flex-direction:column;flex:none;gap:4px;margin:0;padding-bottom:8px;display:flex}.chord-card-facts div{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.chord-card-facts dt{color:var(--ink-soft);text-transform:uppercase;letter-spacing:.04em;font-size:11.5px;font-weight:700}.chord-card-facts dd{color:var(--ink);letter-spacing:.02em;margin:0;font-size:13.5px;font-weight:700}.chord-card-dots-off{opacity:.18}.chord-card-feedback{font-size:13px;font-weight:700}.chord-card-flipped .chord-card-back{box-shadow:var(--shadow-lg), 0 0 0 1px #0000001a}@media (prefers-reduced-motion:reduce){.chord-card-inner{transition:none}}.chord-card-lock{background:var(--bg-soft);color:var(--ink-soft);border-radius:999px;padding:2px 9px;font-size:11.5px;font-weight:700}.chord-card-locked .chord-card-face{border-color:var(--chord-locked-edge)}.search-field{max-width:480px;position:relative}.search-field-icon{opacity:.6;pointer-events:none;font-size:14px;position:absolute;top:50%;left:14px;transform:translateY(-50%)}.search-field input{box-sizing:border-box;border-radius:var(--r-lg);border:2px solid var(--line);background:var(--surface);width:100%;color:var(--ink);font-family:var(--font-body);padding:12px 14px 12px 38px;font-size:15px;font-weight:600}.search-field input:focus{border-color:var(--path-accent);outline:none}.search-field input::-webkit-search-cancel-button{appearance:none}.search-field-clear{background:var(--bg-soft);width:24px;height:24px;color:var(--ink-soft);cursor:pointer;border:none;border-radius:50%;place-items:center;padding:0;font-size:11px;font-weight:700;display:grid;position:absolute;top:50%;right:10px;transform:translateY(-50%)}@media (hover:hover){.search-field-clear:hover{background:var(--line);color:var(--ink)}}@media (pointer:coarse){.search-field input{font-size:16px}}.library-page-sub{color:var(--ink-soft);max-width:520px;margin:6px 0 24px;font-weight:600}.library-search-row{flex-wrap:wrap;align-items:center;gap:8px 16px;margin-bottom:26px;display:flex}.library-search-row .search-field{flex:340px}.library-search-status{min-height:1em;color:var(--ink-soft);margin:0;font-size:13.5px;font-weight:700}.library-section{margin-bottom:36px}.library-section-title{align-items:center;gap:10px;margin:0 0 14px;font-size:20px;display:flex}.library-section-count{background:var(--bg-soft);color:var(--ink-soft);border-radius:999px;padding:2px 11px;font-size:13px;font-weight:700}.library-page-empty{background:var(--surface);border-radius:var(--r-lg);text-align:center;color:var(--ink-soft);box-shadow:var(--shadow-sm);padding:32px;font-weight:700}.library-page-grid{grid-template-columns:repeat(auto-fill,minmax(212px,1fr));gap:14px;display:grid}@media (width<=599px){.library-page-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.library-page-grid .chord-card{min-height:262px}.library-page-grid .chord-card-face{border-width:2.5px;padding:10px}.library-page-grid .chord-card-front{gap:6px}.library-page-grid .chord-diagram-md svg{width:min(128px,100%);height:auto}.library-page-grid .chord-card-symbol{font-size:20px}.library-page-grid .chord-card-back{gap:7px}.library-page-grid .chord-card-back-head{flex-wrap:wrap;gap:4px 6px}.library-page-grid .chord-card-back-name{font-size:12px;line-height:1.25}.library-page-grid .chord-card-facts{gap:3px;padding-bottom:6px}.library-page-grid .chord-card-facts div{flex-wrap:wrap;gap:0 8px}.library-page-grid .chord-card-facts dt{font-size:10.5px}.library-page-grid .chord-card-facts dd{font-size:12.5px}.library-page-grid .chord-card-practice-actions{flex-direction:column;gap:6px}.library-page-grid .chord-card-practice-actions .btn{padding:8px 6px;font-size:12.5px}.library-page-grid .chord-card-hint,.library-page-grid .chord-card-feedback,.library-page-grid .chord-card-status .lesson-error{font-size:11.5px}}@media (width<=340px){.library-page-grid .chord-card{min-height:304px}}.pattern-card{background:var(--surface);border-radius:var(--r-lg);box-shadow:var(--shadow-md);text-align:left;border:2px solid #0000;flex-direction:column;gap:8px;padding:16px;transition:transform .15s,box-shadow .15s,border-color .15s;display:flex}@media (hover:hover){.pattern-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-3px)}}.pattern-card-playing{border-color:var(--gold-dark);box-shadow:var(--shadow-lg)}.pattern-card{scroll-margin:12px 0 var(--bottom-nav-h,0px)}.pattern-card-playing{grid-column:1/-1}@media (hover:hover){.pattern-card-playing:hover{transform:none}}.pattern-card-playing .pattern-card-actions{margin-top:0}.pattern-card-head{flex-wrap:wrap;gap:6px;display:flex}.pattern-card-tag{background:var(--bg-soft);color:var(--ink-soft);white-space:nowrap;border-radius:999px;padding:3px 9px;font-size:11px;font-weight:700}.pattern-card-diff-beginner{background:color-mix(in srgb, var(--green) 16%, var(--surface));color:color-mix(in srgb, var(--green) 62%, #000)}.pattern-card-diff-intermediate{background:color-mix(in srgb, var(--orange) 18%, var(--surface));color:color-mix(in srgb, var(--orange) 62%, #000)}.pattern-card-diff-advanced{background:color-mix(in srgb, var(--red) 16%, var(--surface));color:color-mix(in srgb, var(--red) 75%, #000)}:root[data-theme=dark] .pattern-card-diff-beginner{color:color-mix(in srgb, var(--green) 58%, #fff)}:root[data-theme=dark] .pattern-card-diff-intermediate{color:var(--orange)}:root[data-theme=dark] .pattern-card-diff-advanced{color:color-mix(in srgb, var(--red) 70%, #fff)}.pattern-card-tag-meter{background:color-mix(in srgb, var(--gold) 18%, var(--surface));color:var(--gold-dark)}.pattern-card-title{margin:0;font-size:17px}.pattern-card-tagline{color:var(--ink-soft);margin:0;font-size:12.5px;font-weight:600;line-height:1.45}.pattern-card-strip{border-radius:var(--r-sm,8px);background:var(--bg-soft);height:40px;margin-top:4px;position:relative;overflow:hidden}.pattern-card-beatline{background:var(--line);width:1px;position:absolute;top:0;bottom:0}.pattern-card-note{background:var(--surface);border:1.5px solid var(--gold-dark);width:21px;height:21px;color:var(--gold-dark);border-radius:50%;place-items:center;font-size:10.5px;font-style:italic;font-weight:800;display:grid;position:absolute;top:50%;transform:translate(-50%,-50%)}.pattern-card-note-accent{background:var(--gold-dark);color:#3a2c08;border-color:var(--gold-dark)}:root[data-sky=snow] .pattern-card-note-accent{color:#fff}.pattern-card-strip-dense .pattern-card-note{border-width:1.2px;width:16px;height:16px;font-size:8.5px}.pattern-card-counts{height:15px;color:var(--ink-faint);margin:2px 0 0;font-size:10.5px;font-weight:700;position:relative}.pattern-card-counts span{line-height:15px;position:absolute;top:0;transform:translate(-50%)}.pattern-card-actions{align-items:center;gap:10px;margin-top:auto;padding-top:6px;display:flex}.pattern-card-play{padding:8px 14px;font-size:13px}.fp-chart{border-radius:var(--r-md);background:var(--bg-soft);align-items:flex-start;gap:18px;margin:4px 0 2px;padding:14px 16px;animation:.25s ease-out fp-chart-in;display:flex}@keyframes fp-chart-in{0%{opacity:0;transform:translateY(-4px)}}.fp-chart .pluck-board{flex:none}.fp-chart .pluck-board svg{width:160px}.fp-chart-side{flex-direction:column;flex:1;gap:10px;min-width:0;display:flex}.fp-chart-label{color:var(--ink-soft);margin:0;font-size:12.5px;font-weight:800}.fp-chart-steps{grid-template-columns:repeat(auto-fill,minmax(34px,1fr));gap:4px 2px;margin:0;padding:0;list-style:none;display:grid}.fp-chart-steps.is-dense{grid-template-columns:repeat(auto-fill,minmax(26px,1fr));gap:3px 1px}.fp-chart-step{border-radius:10px;flex-direction:column;align-items:center;gap:3px;padding:4px 0 5px;display:flex}.fp-chart-step.is-now{background:color-mix(in srgb, var(--gold) 24%, transparent)}.fp-chart-count{color:var(--ink-faint);font-size:10.5px;font-weight:800;line-height:1}.fp-chart-finger{border:1.5px solid var(--gold-dark);background:var(--surface);width:23px;height:23px;color:var(--ink);border-radius:50%;place-items:center;font-size:11.5px;font-weight:800;display:grid}.fp-chart-step.is-now .fp-chart-finger{background:var(--gold-dark);color:#fff}.is-dense .fp-chart-step{border-radius:8px;padding:3px 0 4px}.is-dense .fp-chart-finger{border-width:1.3px;width:20px;height:20px;font-size:10.5px}.is-dense .fp-chart-count{font-size:9.5px}.is-dense .fp-chart-string{font-size:11px}.fp-chart-string{color:var(--ink);font-size:12px;font-weight:800;line-height:1}.fp-chart-legend{color:var(--ink-soft);margin:0;font-size:12px;font-weight:600;line-height:1.45}.fp-chart-legend b{color:var(--ink)}.fp-chart-tip{color:var(--ink-soft);margin:0;font-size:12.5px;font-weight:600;line-height:1.5}.fp-chart-tip strong{color:var(--ink)}@media (width<=560px){.fp-chart{grid-template:"board label""board steps"1fr"legend legend""tip tip"/auto minmax(0,1fr);gap:8px 12px;padding:12px 10px;display:grid}.fp-chart-side{display:contents}.fp-chart .pluck-board{grid-area:board}.fp-chart .pluck-board svg{width:min(168px,46vw)}.fp-chart-label{grid-area:label;font-size:11.5px}.fp-chart-steps,.fp-chart-steps.is-dense{grid-area:steps;grid-template-columns:minmax(0,1fr);align-self:start;gap:2px}.fp-chart-steps.is-dense{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:4px}.fp-chart-step,.is-dense .fp-chart-step{flex-direction:row;justify-content:flex-start;gap:7px;padding:2px 6px}.fp-chart-count,.is-dense .fp-chart-count{text-align:center;width:1.1em;font-size:11px}.is-dense .fp-chart-step{gap:5px;padding:2px 3px}.fp-chart-legend{grid-area:legend}.fp-chart-tip{grid-area:tip}}@media (prefers-reduced-motion:reduce){.fp-chart{animation:none}}.fpw-launch{text-align:left;border:2px solid var(--gold-dark);border-radius:var(--r-lg);background:color-mix(in srgb, var(--gold) 10%, var(--surface));width:100%;max-width:680px;color:var(--ink);cursor:pointer;align-items:center;gap:16px;padding:18px 20px;transition:transform .15s,box-shadow .15s;display:flex}@media (hover:hover){.fpw-launch:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}}.fpw-launch-icon{flex:none;font-size:26px;animation:2.4s ease-in-out infinite fpw-wave}@keyframes fpw-wave{0%,to{transform:rotate(-8deg)}50%{transform:rotate(8deg)}}.fpw-launch-text{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.fpw-launch-text strong{font-size:15.5px}.fpw-launch-text span{color:var(--ink-soft);font-size:12.5px;font-weight:600;line-height:1.45}.fpw-launch-go{color:var(--gold-dark);white-space:nowrap;flex:none;font-size:13px;font-weight:800}.fpw{scroll-margin:12px 0 var(--bottom-nav-h,0px);background:var(--surface);border-radius:var(--r-lg);box-shadow:var(--shadow-md);border:2px solid var(--gold-dark);max-width:820px;padding:18px 20px 20px}.fpw-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.fpw-dots{gap:7px;display:flex}.fpw-dot{background:var(--line);cursor:pointer;border:none;border-radius:999px;width:26px;height:6px;padding:0;transition:background .2s,width .2s}.fpw-dot-done{background:color-mix(in srgb, var(--gold-dark) 55%, var(--line))}.fpw-dot-current{background:var(--gold-dark);width:40px}.fpw-close{background:var(--bg-soft);width:30px;height:30px;color:var(--ink);cursor:pointer;border:none;border-radius:50%;flex:none;place-items:center;font-size:13px;font-weight:700;display:grid}.fpw-body{flex-wrap:wrap;align-items:flex-start;gap:26px;display:flex}.fpw-stage{flex-direction:column;flex:none;align-items:center;gap:12px;display:flex}.fpw-chips{flex-wrap:wrap;justify-content:center;gap:7px;display:flex}.fpw-chip{background:var(--bg-soft);color:var(--ink-soft);border-radius:999px;padding:6px 13px;font-size:13px;font-weight:800;transition:transform .15s,background .15s,color .15s}.fpw-chip-live{background:var(--gold-dark);color:#3a2c08;transform:scale(1.12)}:root[data-sky=snow] :is(.fpw-chip-live,.fpw-finger-letter){color:#fff}.fpw-copy{flex-direction:column;flex:1;gap:10px;min-width:280px;display:flex}.fpw-step-count{letter-spacing:.1em;text-transform:uppercase;color:var(--gold-dark);margin:0;font-size:11px;font-weight:800}.fpw-title{margin:0;font-size:19px}.fpw-text{color:var(--ink-soft);margin:0;font-size:13.5px;font-weight:500;line-height:1.6;animation:.35s ease-out fpw-fade-in}@keyframes fpw-fade-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.fpw-fingers{flex-direction:column;gap:5px;margin:0;padding:0;list-style:none;display:flex}.fpw-fingers li{color:var(--ink-soft);align-items:center;gap:9px;font-size:12.5px;font-weight:600;display:flex}.fpw-finger-letter{background:var(--gold-dark);color:#3a2c08;border-radius:50%;flex:none;place-items:center;width:22px;height:22px;font-size:11px;font-style:italic;font-weight:800;display:grid}.fpw-replay{align-self:flex-start;padding:9px 16px;font-size:13px}.fpw-nav{gap:10px;margin-top:auto;padding-top:8px;display:flex}.fpw-nav .btn{padding:10px 20px}.fpw-nav .btn:disabled{opacity:.45;cursor:not-allowed}.fpw-legend{color:var(--ink-soft);margin:0;font-size:11.5px;font-weight:700;display:none}@media (width<=640px) and (orientation:portrait){.fpw{padding:12px 12px 14px}.fpw-head{margin-bottom:8px}.fpw-body{grid-template:"stage count""stage title""stage replay"1fr"text text""legend legend""fingers fingers""nav nav"/minmax(92px,30vw) minmax(0,1fr);align-items:start;gap:6px 12px;display:grid}.fpw-stage{grid-area:stage;gap:6px;width:auto}.fpw-stage .pluck-board-xl svg{width:100%;max-width:120px;height:auto}.fpw .pluck-board-hint{display:none}.fpw-chips{gap:4px}.fpw-chip{padding:3px 8px;font-size:12px}.fpw-copy{display:contents}.fpw-step-count{grid-area:count}.fpw-title{grid-area:title;font-size:16.5px;line-height:1.25}.fpw-replay{grid-area:replay;align-self:start;padding:8px 12px;font-size:12.5px}.fpw-text{grid-area:text;font-size:13px;line-height:1.5}.fpw-legend{grid-area:legend;display:block}.fpw-fingers{grid-area:fingers;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 10px;display:grid}.fpw-fingers li{gap:6px;font-size:12px}.fpw-nav{grid-area:nav;margin-top:2px;padding-top:2px}.fpw-nav .btn{flex:1;padding:10px 12px}}@media (width<=360px) and (orientation:portrait){.fpw{padding:10px 10px 12px}.fpw-body{grid-template-columns:minmax(84px,29vw) minmax(0,1fr);gap:5px 10px}.fpw-stage .pluck-board-xl svg{max-width:100px}.fpw-title{font-size:15.5px}.fpw-text{font-size:12.5px;line-height:1.45}.fpw-fingers li{font-size:11.5px}.fpw-nav .btn{padding:9px 10px}}@media (height<=500px) and (orientation:landscape){.fpw{padding:10px 14px 12px}.fpw-head{margin-bottom:6px}.fpw-body{flex-wrap:nowrap;gap:18px}.fpw-stage{gap:6px}.fpw-stage .pluck-board-xl svg{width:auto;height:min(190px,100dvh - 150px)}.fpw .pluck-board-hint{display:none}.fpw-chip{padding:3px 9px;font-size:12px}.fpw-copy{grid-template-columns:auto minmax(0,1fr);grid-template-areas:"count count""title title""text text""legend legend""fingers fingers""replay nav";align-content:start;gap:5px 10px;min-width:0;display:grid}.fpw-step-count{grid-area:count}.fpw-title{grid-area:title;font-size:16px}.fpw-text{grid-area:text;font-size:13px;line-height:1.45}.fpw-legend{grid-area:legend;display:block}.fpw-fingers{grid-area:fingers;grid-template-columns:repeat(2,minmax(0,1fr));gap:3px 12px;display:grid}.fpw-fingers li{font-size:12px}.fpw-replay{grid-area:replay;align-self:center;padding:8px 12px;font-size:12.5px}.fpw-nav{grid-area:nav;justify-content:flex-end;margin:0;padding:0}.fpw-nav .btn{padding:8px 16px}}@media (prefers-reduced-motion:reduce){.fpw-launch-icon,.fpw-text{animation:none}}.maker-guide-backdrop{z-index:120;background:#080a14b3;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.maker-guide{background:var(--surface);border-radius:var(--r-xl);width:min(880px,100%);max-height:calc(100dvh - 40px);box-shadow:var(--shadow-lg);padding:26px;position:relative;overflow-y:auto}.maker-guide-close{border:1px solid var(--line);background:var(--bg-soft);width:32px;height:32px;color:var(--ink-soft);cursor:pointer;border-radius:50%;font-size:13px;position:absolute;top:14px;right:14px}@media (hover:hover){.maker-guide-close:hover{color:var(--ink)}}.maker-guide-eyebrow{letter-spacing:.1em;text-transform:uppercase;color:var(--gold-dark);margin:0 0 12px;font-size:11px;font-weight:800}.maker-guide-dots{gap:6px;margin-bottom:18px;display:flex}.maker-guide-dot{background:var(--line);cursor:pointer;border:none;border-radius:999px;width:30px;height:5px;padding:0}.maker-guide-dot-done{background:color-mix(in srgb, var(--gold-dark) 55%, var(--line))}.maker-guide-dot-current{background:var(--gold-dark)}.maker-guide-body{flex-wrap:wrap;align-items:flex-start;gap:24px;display:flex}.maker-guide-demo{background:var(--bg-soft);border-radius:var(--r-lg);flex-direction:column;flex:none;justify-content:center;width:300px;min-height:210px;padding:18px;display:flex}.maker-guide-copy{flex:1;min-width:280px}.maker-guide-step{letter-spacing:.06em;text-transform:uppercase;color:var(--ink-faint);margin:0 0 4px;font-size:11px;font-weight:800}.maker-guide-copy h3{margin:0 0 8px;font-size:20px}.maker-guide-text{color:var(--ink);margin:0 0 18px;font-size:14.5px;font-weight:600;line-height:1.55}.maker-guide-nav{gap:10px;display:flex}.maker-guide-mock{flex-wrap:wrap;gap:10px;display:flex}.maker-guide-slot{flex-direction:column;gap:4px;display:flex}.maker-guide-mock-chords{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.maker-guide-mock-chords .maker-guide-slot{align-items:stretch;min-width:0}.maker-guide-mock-chords .maker-guide-slot span{white-space:nowrap;text-align:center}.maker-guide-mock-chords .maker-guide-select{text-align:center;min-width:0;padding:9px 4px}.maker-guide-slot-wide{flex:1;min-width:150px}.maker-guide-slot span{text-transform:uppercase;letter-spacing:.04em;color:var(--ink-soft);font-size:10.5px;font-weight:700}.maker-guide-select{border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);color:var(--ink);min-width:62px;padding:9px 14px;font-size:15px;font-weight:800}.maker-guide-select-on{border-color:var(--gold-dark);color:var(--gold-dark)}.maker-guide-range{background:var(--line);border-radius:999px;height:6px;margin-top:13px;position:relative}.maker-guide-range i{background:var(--gold-dark);border-radius:999px;width:46%;position:absolute;top:0;bottom:0;left:0}.maker-guide-range:after{content:"";background:var(--gold-dark);border-radius:50%;width:15px;height:15px;position:absolute;top:50%;left:46%;transform:translate(-50%,-50%)}.maker-guide-mock-note{color:var(--ink-soft);width:100%;margin:4px 0 0;font-size:12px;font-weight:700}.maker-guide-board{justify-content:center;display:flex}.maker-guide-open{border:1px solid var(--gold-dark);background:color-mix(in srgb, var(--gold) 14%, var(--surface));color:var(--gold-dark);cursor:pointer;border-radius:999px;align-items:center;gap:7px;padding:8px 15px;font-family:inherit;font-size:13px;font-weight:800;display:inline-flex}@media (hover:hover){.maker-guide-open:hover{background:color-mix(in srgb, var(--gold) 26%, var(--surface))}}@media (width<=720px){.maker-guide-backdrop{padding:12px}.maker-guide{max-height:calc(100dvh - 24px);padding:16px 14px 14px}.maker-guide-close{top:10px;right:10px}.maker-guide-eyebrow{margin-bottom:8px}.maker-guide-dots{margin-bottom:12px}.maker-guide-body{gap:12px}.maker-guide-demo{width:100%;min-height:0;padding:12px}.maker-guide-copy{min-width:0}.maker-guide-copy h3{margin-bottom:4px;font-size:18px}.maker-guide-text{margin-bottom:14px;font-size:14px;line-height:1.45}.maker-guide-nav .btn{flex:1;padding:12px 18px}.maker-guide-board .pluck-board-lg svg{width:auto;height:clamp(130px,100dvh - 390px,270px)}}@media (height<=500px) and (orientation:landscape){.maker-guide-backdrop{padding:10px}.maker-guide{width:min(760px,100%);max-height:calc(100dvh - 20px);padding:12px 16px}.maker-guide-close{top:8px;right:8px}.maker-guide-eyebrow{margin-bottom:6px}.maker-guide-dots{margin-bottom:10px}.maker-guide-body{flex-wrap:nowrap;align-items:center;gap:16px}.maker-guide-demo{width:46%;min-height:0;padding:10px}.maker-guide-copy{min-width:0}.maker-guide-copy h3{margin-bottom:4px;font-size:18px}.maker-guide-text{margin-bottom:12px;font-size:14px;line-height:1.45}.maker-guide-nav .btn{padding:10px 18px}.maker-guide-board .pluck-board{gap:4px}.maker-guide-board .pluck-board-lg svg{width:auto;height:calc(100dvh - 150px)}}.chord-slot{flex-direction:column;gap:5px;display:flex;position:relative}.chord-slot-label-short{display:none}.chord-slot-label{letter-spacing:.05em;text-transform:uppercase;color:var(--ink-soft);font-size:11px;font-weight:800}.chord-slot-button{border:2px solid var(--line);border-radius:var(--r-md);background:var(--surface);min-width:108px;color:var(--ink);cursor:pointer;justify-content:space-between;align-items:center;gap:10px;padding:12px 14px;font-family:inherit;transition:border-color .15s;display:flex}.chord-slot-button[aria-expanded=true]{border-color:var(--gold-dark)}@media (hover:hover){.chord-slot-button:hover{border-color:var(--gold-dark)}}.chord-slot-symbol{font-family:var(--font-body);font-size:24px;line-height:1.1}.chord-slot-empty .chord-slot-symbol{color:var(--ink-faint)}.chord-slot-caret{color:var(--ink-soft);font-size:10px}.chord-slot-pop{z-index:20;border-radius:var(--r-lg);background:var(--surface);border:1px solid var(--line);width:min(330px,80vw);box-shadow:var(--shadow-lg);padding:12px;position:absolute;top:calc(100% + 6px);left:0}.chord-slot-grid{grid-template-columns:repeat(auto-fill,minmax(62px,1fr));gap:6px;max-height:232px;margin-top:10px;padding:3px;display:grid;overflow-y:auto}.chord-slot-option{border:1px solid var(--line);border-radius:var(--r-md);background:var(--bg-soft);color:var(--ink);font-family:var(--font-body);cursor:pointer;padding:9px 4px;font-size:15px}@media (hover:hover){.chord-slot-option:hover{border-color:var(--gold-dark)}}.chord-slot-option.selected{border-color:var(--gold-dark);background:color-mix(in srgb, var(--gold) 22%, var(--surface));color:var(--gold-dark)}.chord-slot-option-clear{color:var(--ink-faint)}.chord-slot-none{color:var(--ink-soft);margin:10px 2px 2px;font-size:12.5px;font-weight:600}.capo-slot-value{font-family:var(--font-body);white-space:nowrap;font-size:17px;font-weight:800;line-height:1.1}.capo-slot-pop{width:min(320px,100vw - 32px)}.capo-slot-grid{grid-template-columns:repeat(4,minmax(0,1fr));max-height:none;overflow:visible}.capo-slot-grid .chord-slot-option{white-space:nowrap;padding:10px 2px;font-size:14px;font-weight:700}.fingerpicking-title-row{flex-wrap:wrap;align-items:center;gap:10px 14px;margin-bottom:10px;display:flex}.fingerpicking-title-row h1{margin:0}.fingerpicking-eyebrow{letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft);margin:0 0 2px;font-size:12px;font-weight:800}.fingerpicking-page h1{margin:0 0 10px}.fingerpicking-intro{color:var(--ink-soft);max-width:660px;margin:0 0 30px;font-weight:500;line-height:1.65}.fingerpicking-intro em{color:var(--ink);font-style:italic}.fingerpicking-section{margin-bottom:40px}.fingerpicking-section-title{margin:0 0 12px;font-size:19px}.fingerpicking-body{color:var(--ink-soft);max-width:680px;margin:0 0 16px;font-weight:500;line-height:1.6}.fingerpicking-body strong{color:var(--ink);font-weight:700}.fingerpicking-small{font-size:13px}.fingerpicking-fingers{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px;display:grid}.fingerpicking-finger{background:var(--surface);border-radius:var(--r-md);box-shadow:var(--shadow-sm);flex-direction:column;gap:4px;padding:14px;display:flex}.fingerpicking-finger-letter{background:var(--gold-dark);color:#3a2c08;border-radius:50%;place-items:center;width:30px;height:30px;margin-bottom:4px;font-size:15px;font-style:italic;font-weight:800;display:grid}.fingerpicking-finger strong{font-size:14px}.fingerpicking-finger-job{color:var(--ink-soft);font-size:12.5px;font-weight:600;line-height:1.45}.fingerpicking-demo{background:var(--surface);border-radius:var(--r-lg);box-shadow:var(--shadow-sm);flex-wrap:wrap;gap:24px;padding:22px;display:flex}.fingerpicking-demo-board{flex:none}.fingerpicking-demo-side{flex-direction:column;flex:1;gap:12px;min-width:260px;display:flex}.fingerpicking-chord-switch{flex-wrap:wrap;gap:8px;margin:0 0 12px;display:flex}.fingerpicking-chord-switch button,.fingerpicking-filter button,.fingerpicking-repeat button{border:1px solid var(--line);background:var(--surface);color:var(--ink);cursor:pointer;border-radius:999px;padding:7px 14px;font-size:13px;font-weight:700}.fingerpicking-chord-switch button.selected,.fingerpicking-filter button.selected,.fingerpicking-repeat button.selected{border-color:var(--gold-dark);background:color-mix(in srgb, var(--gold) 20%, var(--surface));color:var(--gold-dark)}.fingerpicking-string-list{flex-direction:column;gap:3px;margin:0;padding:0;list-style:none;display:flex}.fingerpicking-string-list li{color:var(--ink);align-items:center;gap:10px;font-size:12.5px;font-weight:600;display:flex}.fingerpicking-string-muted{color:var(--ink-faint)}.fingerpicking-string-name{background:var(--bg-soft);border-radius:6px;place-items:center;width:22px;height:22px;font-size:11px;font-weight:800;display:grid}.fingerpicking-string-state{color:inherit;opacity:.85}.fingerpicking-notice{border-radius:var(--r-md);background:color-mix(in srgb, var(--orange) 14%, var(--surface));border:1px solid color-mix(in srgb, var(--orange) 40%, transparent);color:var(--ink);margin:0;padding:10px 13px;font-size:12.5px;font-weight:600;line-height:1.5}.fingerpicking-steps{max-width:680px;color:var(--ink-soft);flex-direction:column;gap:9px;margin:0;padding-left:22px;font-weight:500;line-height:1.55;display:flex}.fingerpicking-steps strong{color:var(--ink);font-weight:700}.fingerpicking-filter{flex-wrap:wrap;gap:8px;margin:0 0 18px;display:flex}.fingerpicking-grid{grid-template-columns:repeat(auto-fill,minmax(268px,1fr));gap:14px;display:grid}.fingerpicking-maker-chords{flex-wrap:wrap;gap:12px;margin-bottom:18px;display:flex}.fingerpicking-maker-slot{color:var(--ink-soft);flex-direction:column;gap:5px;font-size:11.5px;font-weight:700;display:flex}.fingerpicking-maker-tempo{justify-content:flex-end;min-width:190px}.fingerpicking-maker-tempo input{accent-color:var(--gold-dark)}.fingerpicking-maker-body{flex-wrap:wrap;align-items:flex-start;gap:22px;display:flex}.fingerpicking-maker-board{background:var(--surface);border-radius:var(--r-lg);box-shadow:var(--shadow-sm);flex-direction:column;flex:none;justify-content:center;padding:16px;display:flex}.fingerpicking-maker-board-inner{flex-direction:column;align-items:center;gap:8px;min-width:0;display:flex}.fingerpicking-maker-now{color:var(--gold-dark);margin:0;font-size:12.5px;font-weight:800}.fingerpicking-suggestions{overscroll-behavior:contain;scrollbar-width:thin;flex-direction:column;flex:1;gap:12px;min-width:300px;max-height:560px;margin:0;padding:3px;list-style:none;display:flex;overflow-y:auto}.fingerpicking-suggestion{background:var(--surface);border-radius:var(--r-lg);box-shadow:var(--shadow-sm);border:2px solid #0000;padding:16px}.fingerpicking-suggestion-top{border-color:var(--gold-dark)}.fingerpicking-suggestion-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.fingerpicking-suggestion-head h3{margin:2px 0 0;font-size:16px}.fingerpicking-suggestion-head .btn{white-space:nowrap;padding:8px 14px;font-size:13px}.fingerpicking-suggestion-tagline{color:var(--ink-soft);margin:2px 0 0;font-size:12.5px;font-weight:600}.fingerpicking-best{letter-spacing:.08em;text-transform:uppercase;color:var(--gold-dark);font-size:10.5px;font-weight:800;display:inline-block}.fingerpicking-reasons{color:var(--ink-soft);flex-direction:column;gap:5px;margin:10px 0 0;padding-left:18px;font-size:12.5px;font-weight:500;line-height:1.5;display:flex}.fingerpicking-detail-close{background:var(--bg-soft);width:32px;height:32px;color:var(--ink);cursor:pointer;border:none;border-radius:50%;place-items:center;font-size:14px;font-weight:700;display:grid;position:absolute;top:14px;right:14px}@media (width<=620px){.fingerpicking-demo{gap:16px;padding:16px}.fingerpicking-maker-body{gap:16px}.fingerpicking-suggestions{max-height:420px}}.fingerpicking-basics{background:var(--surface);border-radius:var(--r-lg);box-shadow:var(--shadow-sm);margin-bottom:44px;padding:18px 20px}.fingerpicking-basics-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:24px;display:grid}.fingerpicking-basics-col{min-width:0}.fingerpicking-minor-title{color:var(--ink);margin:0 0 6px;font-size:14px}.fingerpicking-basics .fingerpicking-body{margin-bottom:10px}.fingerpicking-basics .fingerpicking-fingers{grid-template-columns:repeat(auto-fit,minmax(118px,1fr));gap:8px}.fingerpicking-basics .fingerpicking-finger{box-shadow:none;background:var(--bg-soft);padding:9px 10px}.fingerpicking-basics .fingerpicking-finger-letter{width:22px;height:22px;font-size:12px;font-style:normal}.fingerpicking-basics .fingerpicking-finger strong{font-size:12.5px}.fingerpicking-basics .fingerpicking-finger-job{font-size:11px}.fingerpicking-demo-compact{background:var(--bg-soft);box-shadow:none;align-items:center;gap:14px;padding:12px}.fingerpicking-demo-compact .fingerpicking-demo-side{gap:8px;min-width:150px}.fingerpicking-demo-compact .fingerpicking-chord-switch button{padding:5px 11px;font-size:12px}.fingerpicking-feature{margin-bottom:56px}.fingerpicking-feature-title{letter-spacing:-.01em;margin:0 0 8px;font-size:27px}.fingerpicking-lead{max-width:700px;font-size:15px}.fingerpicking-feature .fpw-launch{max-width:100%;padding:24px 26px}.fingerpicking-feature .fpw-launch-icon{font-size:34px}.fingerpicking-feature .fpw-launch-text strong{font-size:18px}.fingerpicking-feature .fpw-launch-text span{font-size:13.5px}.fingerpicking-feature .fpw{max-width:100%}.fingerpicking-feature .fingerpicking-grid{grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:16px}@media (width<=620px){.fingerpicking-feature-title{font-size:22px}.fingerpicking-basics{padding:14px}}.fingerpicking-capo .capo-slot-button{min-width:132px}.fingerpicking-maker-slot>span{font-size:12px}.fingerpicking-speed{justify-content:flex-end}.fingerpicking-speed-btn{border:2px solid var(--line);border-radius:var(--r-md);background:var(--surface);color:var(--ink);font-family:var(--font-body);cursor:pointer;white-space:nowrap;padding:13px 16px;font-size:14px;font-weight:800}.fingerpicking-speed-btn.selected{border-color:var(--gold-dark);background:color-mix(in srgb, var(--gold) 20%, var(--surface));color:var(--gold-dark)}.fingerpicking-now{flex-direction:column;justify-content:center;align-items:center;gap:2px;min-height:76px;display:flex}.fingerpicking-now-bar{letter-spacing:.1em;text-transform:uppercase;color:var(--ink-faint);font-size:11px;font-weight:800}.fingerpicking-now-seq{flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;display:flex}.fingerpicking-now-seq-chord{background:var(--bg-soft);color:var(--ink-soft);border-radius:999px;padding:5px 11px;font-size:15px;font-weight:800;transition:color .18s,background .18s}.fingerpicking-now-current{background:color-mix(in srgb, var(--gold) 22%, var(--surface));border:2px solid var(--gold-dark);color:var(--gold-dark);font-family:var(--font-display,var(--font-body));padding:7px 18px;font-size:32px;font-weight:700;line-height:1.05;animation:.32s ease-out fingerpicking-now-pop}@keyframes fingerpicking-now-pop{0%{opacity:.5;transform:scale(.82)}to{opacity:1;transform:scale(1)}}@media (width<=560px){.fingerpicking-maker-board{box-sizing:border-box;flex:100%;min-width:0;max-width:100%}.fingerpicking-maker-board .pluck-board-xl svg{width:100%;max-width:300px}.fingerpicking-maker-board .pluck-board-hint{white-space:normal;text-align:center}.fingerpicking-maker-chords{grid-template-columns:repeat(4,minmax(0,1fr));align-items:end;gap:12px 8px;display:grid}.fingerpicking-maker-chords .chord-slot{gap:4px;min-width:0}.fingerpicking-maker-chords .chord-slot-label{letter-spacing:.03em;font-size:10px}.fingerpicking-maker-chords .chord-slot-button{gap:4px;width:100%;min-width:0;padding:9px 8px}.fingerpicking-maker-chords .chord-slot-symbol{font-size:19px}.fingerpicking-maker-chords{position:relative}.fingerpicking-maker-chords .chord-slot{position:static}.fingerpicking-maker-chords .chord-slot-pop,.fingerpicking-maker-chords .chord-slot:nth-child(n) .chord-slot-pop{width:auto;left:0;right:0}.fingerpicking-maker .fingerpicking-maker-controls{box-shadow:none;background:0 0;gap:12px;padding:0}.fingerpicking-maker .fingerpicking-maker-settings{box-shadow:none;background:0 0;grid-template-columns:repeat(12,minmax(0,1fr));align-items:end;gap:12px 8px;padding:0;display:grid}.fingerpicking-maker .fingerpicking-maker-settings>.fingerpicking-maker-slot{grid-column:span 5;min-width:0;font-size:10.5px}.fingerpicking-maker .fingerpicking-maker-settings>.fingerpicking-maker-slot>span{white-space:nowrap;text-overflow:ellipsis;font-size:10.5px;overflow:hidden}.fingerpicking-maker .fingerpicking-maker-settings>.fingerpicking-maker-tempo{flex:none;grid-column:span 4;min-width:0}.fingerpicking-maker .fingerpicking-maker-settings>.fingerpicking-speed{grid-column:span 3}.fingerpicking-maker .fingerpicking-maker-settings .capo-slot-button{gap:6px;width:100%;min-width:0;padding:9px 10px}.fingerpicking-maker .fingerpicking-maker-settings .capo-slot-value{font-size:14px}.fingerpicking-maker .fingerpicking-maker-settings .fingerpicking-speed-btn{white-space:normal;width:100%;padding:10px 4px;font-size:12px;line-height:1.15}.fingerpicking-maker-board{padding:10px 12px 12px}.fingerpicking-maker-board-inner{gap:6px}.fingerpicking-maker-board .pluck-board-xl svg{width:auto;max-width:100%;height:290px}.fingerpicking-suggestions{max-height:none;overflow:visible}}@media (width<=560px) and (height<=700px){.fingerpicking-maker-board .pluck-board-xl svg{height:236px}.fingerpicking-maker-board .pluck-board-hint{font-size:11px}}.fingerpicking-suggestions{max-height:none;overflow:visible}.fingerpicking-maker-body{grid-template:"board settings""board step"1fr/minmax(0,1fr) minmax(0,1fr);align-items:start;gap:16px 22px;display:grid}.fingerpicking-maker-body>.fingerpicking-maker-board{grid-area:board;align-self:stretch;min-width:0}.fingerpicking-maker-body>.fingerpicking-maker-controls{grid-area:settings}.fingerpicking-maker-body>.fingerpicking-pattern-step{grid-area:step}.fingerpicking-maker-controls{border-radius:var(--r-lg);background:var(--surface);min-width:0;box-shadow:var(--shadow-sm);gap:14px;padding:14px 16px;display:grid}.fingerpicking-maker-controls .fingerpicking-maker-chords{margin-bottom:0}.fingerpicking-maker-settings{flex-wrap:wrap;align-items:flex-end;gap:12px 14px;display:flex}.fingerpicking-chosen-strip{margin-top:12px}.fingerpicking-repeat{flex-wrap:wrap;align-items:center;gap:8px;margin-top:12px;display:flex}.fingerpicking-repeat-label{color:var(--ink-soft);margin-right:2px;font-size:12.5px;font-weight:700}.fingerpicking-maker-controls+.fingerpicking-notice{margin-top:14px}.fingerpicking-maker-settings>.fingerpicking-maker-tempo{flex:150px;min-width:150px}.fingerpicking-maker-settings .fingerpicking-maker-tempo input{width:100%}@media not all and (width<=719px) and (orientation:portrait){.fingerpicking-maker-body>.fingerpicking-maker-controls{z-index:3;position:relative;container-type:inline-size}.fingerpicking-maker-body .fingerpicking-maker-settings{grid-template-columns:minmax(0,1fr);align-items:stretch;gap:14px;display:grid}.fingerpicking-maker-body .fingerpicking-maker-settings>.fingerpicking-maker-slot{min-width:0}.fingerpicking-maker-body .fingerpicking-maker-settings .capo-slot-button{width:100%}.fingerpicking-maker-body .fingerpicking-maker-settings .fingerpicking-speed{align-items:flex-start}.fingerpicking-maker-body .fingerpicking-maker-chords{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.fingerpicking-maker-body .fingerpicking-maker-chords .chord-slot{min-width:0}.fingerpicking-maker-body .fingerpicking-maker-chords .chord-slot-button{width:100%;min-width:0;padding:10px 12px}.fingerpicking-maker-body .fingerpicking-maker-chords .chord-slot-symbol{font-size:20px}.fingerpicking-maker-body .fingerpicking-maker-chords .chord-slot:nth-child(2n) .chord-slot-pop{left:auto;right:0}@container (width>=380px){.fingerpicking-maker-body .fingerpicking-maker-chords{grid-template-columns:repeat(4,minmax(0,1fr))}.fingerpicking-maker-body .fingerpicking-maker-chords .chord-slot:nth-child(2n) .chord-slot-pop{left:0;right:auto}.fingerpicking-maker-body .fingerpicking-maker-chords .chord-slot:nth-child(n+3) .chord-slot-pop{left:auto;right:0}}.fingerpicking-maker-body>.fingerpicking-pattern-step{align-self:stretch}.fingerpicking-maker-body .fingerpicking-suggestion-chosen{flex:1 0 auto}.fingerpicking-maker-body .fingerpicking-pick-prompt{flex:1;align-content:center;gap:10px;padding:28px}.fingerpicking-maker-body .fingerpicking-pick-prompt h3{font-size:26px}.fingerpicking-maker-body .fingerpicking-pick-prompt p{max-width:36ch;font-size:15px}}@media (width<=719px) and (orientation:portrait){.fingerpicking-maker-body{grid-template-rows:none;grid-template-columns:minmax(0,1fr);grid-template-areas:"settings""board""step"}}@media (width>=720px) and (height<=560px),(orientation:landscape) and (height<=560px){.fingerpicking-maker-body>.fingerpicking-maker-board{justify-content:flex-start}.fingerpicking-maker-body .fingerpicking-maker-board-inner{position:sticky;top:10px}}@media (width>=900px){.fingerpicking-maker-board{padding:18px 20px}.fingerpicking-maker-board .pluck-board-xl svg{width:auto;max-width:100%;height:min(600px,100dvh - 230px)}}@media (width>=561px) and (width<=899px){.fingerpicking-maker-board .pluck-board-xl svg{width:auto;max-width:100%;height:min(460px,100dvh - 220px)}}.fingerpicking-pattern-step{flex-direction:column;flex:280px;gap:12px;min-width:0;display:flex}.fingerpicking-pick-prompt{border-radius:var(--r-lg);background:var(--surface);border:2px dashed color-mix(in srgb, var(--gold-dark) 55%, var(--line));justify-items:start;gap:8px;padding:20px;display:grid}.fingerpicking-pick-prompt h3{margin:0;font-size:20px}.fingerpicking-pick-prompt p{color:var(--ink-soft);margin:0;font-size:14px;font-weight:600;line-height:1.5}.fingerpicking-pick-prompt .btn{margin-top:6px}.fingerpicking-pick-label{letter-spacing:.1em;text-transform:uppercase;color:var(--gold-dark)!important;font-size:11.5px!important;font-weight:800!important}.fingerpicking-change{color:var(--gold-dark);font:inherit;cursor:pointer;background:0 0;border:0;place-self:flex-start start;margin-top:10px;padding:6px 0;font-size:13.5px;font-weight:800;text-decoration:underline}.fingerpicking-suggestion-chosen .fingerpicking-reasons{margin-bottom:0}.fingerpicking-picker-backdrop{z-index:120;background:#0a0d1a99;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.fingerpicking-picker{overscroll-behavior:contain;border-radius:var(--r-xl);background:var(--surface);width:100%;max-width:560px;max-height:calc(100dvh - 32px);box-shadow:var(--shadow-lg);padding:22px 18px 18px;position:relative;overflow-y:auto}.fingerpicking-picker h2{margin:0 40px 2px 4px;font-size:22px}.fingerpicking-picker-sub{color:var(--ink-soft);margin:0 0 12px 4px;font-size:13px;font-weight:600}.fingerpicking-picker-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.fingerpicking-picker-item{border:2px solid var(--line);border-radius:var(--r-md);background:var(--bg-soft);width:100%;color:var(--ink);font:inherit;text-align:left;cursor:pointer;gap:3px;padding:12px 14px;display:grid}@media (hover:hover){.fingerpicking-picker-item:hover{border-color:var(--gold-dark)}}.fingerpicking-picker-item.is-chosen{border-color:var(--gold-dark);background:color-mix(in srgb, var(--gold) 14%, var(--surface))}.fingerpicking-picker-name{flex-wrap:wrap;align-items:center;gap:8px;font-size:15.5px;font-weight:800;display:flex}.fingerpicking-picker-name em{font-style:normal}.fingerpicking-picker-current{background:var(--gold-dark);color:#fff;letter-spacing:.04em;text-transform:uppercase;border-radius:999px;padding:1px 8px;font-size:10.5px;font-weight:800}.fingerpicking-picker-tagline{color:var(--ink-soft);font-size:13px;font-weight:600}.fingerpicking-picker-reason{color:var(--ink-faint);font-size:12px;font-weight:500;line-height:1.4}.fingerpicking-suggestion-head .fingerpicking-loop-btn{justify-items:center;display:inline-grid}.fingerpicking-loop-btn>span{grid-area:1/1}.fingerpicking-loop-btn>.is-idle{visibility:hidden}.fingerpicking-level{font-family:var(--font-body);vertical-align:2px;margin-left:2px;font-style:normal}.fingerpicking-suggestion-head h3 .fingerpicking-level{font-size:10.5px}.fingerpicking-maker-lead{white-space:nowrap;text-overflow:ellipsis;max-width:none;overflow:hidden}.fingerpicking-maker-lead-short{display:none}@media (width<=720px){.fingerpicking-maker-lead{font-size:clamp(12.5px,3.9vw,16px)}.fingerpicking-maker-lead-long{display:none}.fingerpicking-maker-lead-short{display:inline}}.fingerpicking-pick-actions{flex-wrap:wrap;align-items:center;gap:10px;margin-top:6px;display:flex}.fingerpicking-pick-prompt .fingerpicking-pick-actions .btn{margin-top:0}.fingerpicking-chosen-actions{flex-wrap:wrap;align-items:center;gap:4px 18px;margin-top:10px;display:flex}.fingerpicking-chosen-actions .fingerpicking-change{margin-top:0}.fingerpicking-save-btn{margin-left:auto;padding:7px 14px;font-size:13.5px}.fingerpicking-save-form{flex-wrap:wrap;align-items:center;gap:8px 10px;margin-top:12px;display:flex}.fingerpicking-save-label{color:var(--ink-soft);flex:1 0 100%;font-size:12px;font-weight:800}.fingerpicking-save-input{border:2px solid var(--line);border-radius:var(--r-sm);background:var(--bg-soft);min-width:0;color:var(--ink);font:inherit;flex:180px;padding:9px 12px;font-size:14.5px;font-weight:700}.fingerpicking-save-input:focus{border-color:var(--gold-dark);outline:none}.fingerpicking-save-go{padding:8px 18px}.fingerpicking-save-form .fingerpicking-change{margin-top:0}.fingerpicking-save-note{color:var(--ink-soft);margin:8px 0 0;font-size:13px;font-weight:700}.fingerpicking-save-note.is-full{color:var(--red);flex:1 0 100%;margin:0}.fingerpicking-saved-empty strong{color:var(--ink)}.fingerpicking-saved-row{grid-template-columns:minmax(0,1fr) auto;gap:6px;display:grid}.fingerpicking-saved-chords{letter-spacing:.02em;color:var(--gold-dark);font-size:14px;font-weight:800}.fingerpicking-saved-delete{border:2px solid var(--line);border-radius:var(--r-md);background:var(--bg-soft);width:44px;color:var(--ink-soft);font:inherit;cursor:pointer;font-size:14px;font-weight:800}.fingerpicking-saved-delete:focus-visible{border-color:var(--red);color:var(--red)}@media (hover:hover){.fingerpicking-saved-delete:hover{border-color:var(--red);color:var(--red)}}.fingerpicking-saved-confirm{border-radius:var(--r-md);background:color-mix(in srgb, var(--red) 12%, var(--surface));color:var(--ink);flex-wrap:wrap;grid-column:1/-1;align-items:center;gap:6px 12px;padding:8px 12px;font-size:13.5px;font-weight:700;display:flex}.fingerpicking-saved-confirm span{overflow-wrap:anywhere;flex:auto;min-width:0}.fingerpicking-saved-confirm .btn{padding:6px 14px;font-size:13px}.fingerpicking-saved-confirm .fingerpicking-change{margin-top:0}.fingerpicking-saved-box{border-radius:var(--r-lg);background:var(--surface);border:2px solid var(--line);gap:8px;margin-top:14px;padding:16px 18px;display:grid}.fingerpicking-saved-box h3{margin:0;font-size:18px}.fingerpicking-saved-lead{color:var(--ink-soft);margin:0;font-size:13.5px;font-weight:600;line-height:1.5}.fingerpicking-saved-actions{flex-wrap:wrap;gap:8px 10px;margin-top:4px;display:flex}.fingerpicking-saved-actions .btn{padding:9px 16px;font-size:14px}.fingerpicking-saved-box .fingerpicking-save-form{margin-top:2px}.fingerpicking-saved-box .fingerpicking-save-note{margin:0}.confetti-burst{pointer-events:none;z-index:6;width:0;height:0;position:absolute;top:0;left:50%}.confetti-piece{width:var(--w);height:calc(var(--w) * .5);background:var(--c);opacity:0;animation:confetti-pop var(--dur) cubic-bezier(.15, .7, .3, 1) var(--delay) forwards;border-radius:2px;position:absolute;top:0;left:0}@keyframes confetti-pop{0%{opacity:1;transform:translate(0)rotate(0)scale(.5)}35%{opacity:1;transform:translate(calc(var(--dx) * .75), var(--rise)) rotate(calc(var(--rot) * .5)) scale(1)}to{opacity:0;transform:translate(var(--dx), var(--fall)) rotate(var(--rot)) scale(.9)}}@media (prefers-reduced-motion:reduce){.confetti-burst{display:none}}.achv-backdrop{z-index:70;background:#0a0d1a9e;place-items:center;padding:20px;animation:.2s ease-out achv-backdrop-in;display:grid;position:fixed;inset:0}@keyframes achv-backdrop-in{0%{opacity:0}to{opacity:1}}.achv-card{border-radius:var(--r-lg);background:var(--surface);width:min(380px,100%);box-shadow:var(--shadow-lg);border:2px solid var(--gold-dark);text-align:center;flex-direction:column;align-items:center;gap:8px;padding:30px 26px 26px;animation:.45s cubic-bezier(.34,1.56,.64,1) both achv-card-in;display:flex;position:relative}@keyframes achv-card-in{0%{opacity:0;transform:scale(.82)translateY(14px)}to{opacity:1;transform:scale(1)translateY(0)}}.achv-confetti{pointer-events:none;width:100%;height:0;position:absolute;top:0;left:50%;transform:translate(-50%)}.achv-eyebrow{letter-spacing:.14em;text-transform:uppercase;color:var(--gold-dark);margin:0;font-size:12px;font-weight:800}.achv-badge{background:linear-gradient(150deg, var(--gold), var(--gold-dark));width:96px;height:96px;box-shadow:0 0 0 6px color-mix(in srgb, var(--gold) 26%, transparent);border-radius:50%;place-items:center;margin:6px 0 2px;animation:.6s cubic-bezier(.34,1.56,.64,1) .12s both achv-badge-pop;display:grid}@keyframes achv-badge-pop{0%{opacity:0;transform:scale(.4)rotate(-22deg)}to{opacity:1;transform:scale(1)rotate(0)}}.achv-badge-icon{font-size:44px;line-height:1}.achv-name{margin:2px 0 0;font-size:22px}.achv-desc{color:var(--ink-soft);margin:0;font-size:13.5px;font-weight:500;line-height:1.5}.achv-reward{background:color-mix(in srgb, var(--gold) 18%, var(--surface));color:var(--gold-dark);border-radius:999px;align-items:center;gap:6px;margin:4px 0 0;padding:7px 14px;font-size:13.5px;font-weight:800;display:inline-flex}.achv-close{width:100%;margin-top:10px}@media (prefers-reduced-motion:reduce){.achv-card,.achv-badge,.achv-backdrop{animation:none}}@media (width<=1000px) and (height<=500px) and (orientation:landscape){.achv-backdrop{padding:12px}.achv-card{grid-template-rows:1fr repeat(5,auto) 1fr;grid-template-columns:auto minmax(0,1fr);grid-template-areas:"badge.""badge eyebrow""badge name""badge desc""badge reward""badge close""badge.";justify-items:center;gap:6px 24px;width:min(560px,100%);padding:20px 26px;display:grid}.achv-eyebrow{grid-area:eyebrow}.achv-badge{grid-area:badge;align-self:center;margin:0}.achv-name{grid-area:name}.achv-desc{grid-area:desc}.achv-reward{grid-area:reward}.achv-close{grid-area:close;margin-top:6px}}.tpb{z-index:400;left:50%;bottom:calc(14px + env(safe-area-inset-bottom,0px));color:#fff8ec;white-space:nowrap;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);pointer-events:none;background:#12121ee6;border-radius:999px;align-items:center;gap:7px;max-width:calc(100vw - 24px);padding:5px 12px 5px 10px;font-size:12.5px;font-weight:600;animation:.3s ease-out both tpb-in;display:flex;position:fixed;transform:translate(-50%);box-shadow:0 6px 16px #0000004d,inset 0 0 0 1px #ffffff24}@media (width>=900px) and (height>=501px){.tpb{left:calc(50% + var(--nav-w,240px) / 2)}}@media (width<=899px),(height<=500px){.tpb{bottom:calc(92px + env(safe-area-inset-bottom,0px))}}@keyframes tpb-in{0%{opacity:0;transform:translate(-50%,8px)}}.tpb-dot{background:#ff5c7a;border-radius:50%;width:7px;height:7px;animation:1.4s ease-out infinite tpb-pulse;box-shadow:0 0 #ff5c7ab3}@keyframes tpb-pulse{to{box-shadow:0 0 0 7px #ff5c7a00}}.tpb-text{text-overflow:ellipsis;overflow:hidden}.tpb-text strong{color:#f6d27a}.tpb-time{font-variant-numeric:tabular-nums;font-size:13px;font-weight:900}.tpb-off{pointer-events:auto;color:#fff;width:24px;height:24px;font:inherit;cursor:pointer;background:#ffffff29;border:0;border-radius:50%;place-items:center;margin-left:2px;padding:0;font-size:11px;font-weight:800;display:grid}@media (hover:hover){.tpb-off:hover{background:#ffffff47}}@media (pointer:coarse){.tpb-off{position:relative}.tpb-off:after{content:"";position:absolute;inset:-9px}}.tpb-backdrop{z-index:410;background:#080a148c;place-items:center;padding:20px;animation:.2s both tpb-fade;display:grid;position:fixed;inset:0}@keyframes tpb-fade{0%{opacity:0}}.tpb-card{border-radius:var(--r-xl,22px);background:var(--surface);width:100%;max-width:380px;color:var(--ink);box-shadow:var(--shadow-lg);text-align:center;padding:26px 24px}.tpb-card h2{margin:2px 0 8px}.tpb-card p{color:var(--ink-soft);margin:0 0 16px;font-weight:600;line-height:1.5}.tpb-card p strong{color:var(--ink)}.tpb-eyebrow{letter-spacing:.1em;text-transform:uppercase;font-size:12px;font-weight:800;color:var(--gold-dark)!important;margin:0!important}.tpb-actions{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.tpb-price{white-space:nowrap}.tpb-price .fretbit-icon{vertical-align:-2px;margin-right:2px;display:inline-block}@media (prefers-reduced-motion:reduce){.tpb,.tpb-dot{animation:none}}.salon-avatar{border-radius:var(--r-lg);height:auto;display:block;overflow:hidden}.pack-modal-backdrop{z-index:100;background:#0a0d1a99;place-items:center;padding:20px;animation:.2s both pack-modal-fade-in;display:grid;position:fixed;inset:0}@keyframes pack-modal-fade-in{0%{opacity:0}to{opacity:1}}.pack-modal{background:var(--surface);border-radius:var(--r-xl);box-shadow:var(--shadow-lg);text-align:center;width:100%;max-width:360px;padding:32px 28px}.pack-modal-opening{flex-direction:column;align-items:center;gap:18px;padding:20px 0;display:flex}.pack-modal-box-wrap{width:120px;height:120px;animation:.28s ease-in-out infinite pack-modal-shake,1.1s ease-in-out infinite pack-modal-glow;position:relative}.pack-modal-box{transform-origin:50%;place-items:center;width:50%;height:100%;font-size:52px;display:grid;position:absolute;top:0;overflow:hidden}.pack-modal-box-left{border-radius:var(--r-lg) 0 0 var(--r-lg);left:0}.pack-modal-box-right{border-radius:0 var(--r-lg) var(--r-lg) 0;right:0}.pack-modal-box{background-repeat:no-repeat;background-size:200% 100%;width:calc(50% + 1px)}.pack-modal-box-left{background-position:0 0}.pack-modal-box-right{background-position:100% 0}.pack-modal-box-icon{text-align:center;width:120px;line-height:120px;position:absolute}.pack-modal-box-left .pack-modal-box-icon{left:0}.pack-modal-box-right .pack-modal-box-icon{right:0}.pack-modal-tear-flash{opacity:0;background:radial-gradient(#fff 0%,#fff5d2d9 45%,#fff5d200 75%);width:6px;height:0;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.pack-modal-ripping{animation:none}.pack-modal-ripping .pack-modal-box-left{animation:.62s cubic-bezier(.3,0,.2,1) forwards pack-modal-rip-left}.pack-modal-ripping .pack-modal-box-right{animation:.62s cubic-bezier(.3,0,.2,1) forwards pack-modal-rip-right}.pack-modal-ripping .pack-modal-tear-flash{animation:.62s ease-out forwards pack-modal-tear}@keyframes pack-modal-rip-left{0%{opacity:1;transform:translate(0)rotate(0)}30%{opacity:1;transform:translate(-12px,-4px)rotate(-8deg)}to{opacity:0;transform:translate(-60vw,30vh)rotate(-55deg)}}@keyframes pack-modal-rip-right{0%{opacity:1;transform:translate(0)rotate(0)}30%{opacity:1;transform:translate(12px,-4px)rotate(8deg)}to{opacity:0;transform:translate(60vw,30vh)rotate(55deg)}}@keyframes pack-modal-tear{0%{opacity:0;width:8px;height:0}35%{opacity:1;width:90px;height:300px}to{opacity:0;width:520px;height:520px}}@keyframes pack-modal-shake{0%,to{transform:translate(0)rotate(-5deg)}25%{transform:translate(-3px,1px)rotate(4deg)}50%{transform:translate(2px,-2px)rotate(-3deg)}75%{transform:translate(3px,1px)rotate(5deg)}}@keyframes pack-modal-glow{0%,to{filter:drop-shadow(0 0 2px #ffffff40)}50%{filter:drop-shadow(0 0 18px #fff9)}}.pack-modal-opening-label{color:var(--ink-soft);margin:0;font-weight:700}.pack-modal-reveal{flex-direction:column;align-items:center;gap:8px;animation:.4s cubic-bezier(.34,1.56,.64,1) both pack-modal-pop;display:flex}@keyframes pack-modal-pop{0%{opacity:0;transform:scale(.6)translateY(20px)}to{opacity:1;transform:scale(1)translateY(0)}}.pack-modal-reveal-eyebrow{text-transform:uppercase;letter-spacing:.06em;color:var(--gold-dark);margin:0 0 6px;font-size:12px;font-weight:700}.pack-modal-reveal-name{margin:6px 0 0;font-size:22px}.pack-modal-reveal-tags{gap:6px;margin:4px 0 6px;display:flex}.pack-modal-reveal-rarity{background:color-mix(in srgb, var(--chip-color) 18%, var(--surface));color:var(--chip-color);border-radius:999px;padding:3px 10px;font-size:11px;font-weight:700}.pack-modal-reveal-pack{background:var(--bg-soft);color:var(--ink-soft);border-radius:999px;padding:3px 10px;font-size:11px;font-weight:700}.pack-modal-reveal-flavor{color:var(--ink-soft);margin:0 0 6px;font-size:13px;font-weight:600}.pack-modal-reveal-comp{color:var(--gold-dark);justify-content:center;align-items:center;gap:5px;margin:0 0 6px;font-size:12.5px;font-weight:700;display:flex}.pack-modal-reveal-actions{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:8px;display:flex}@media (prefers-reduced-motion:reduce){.pack-modal-box-wrap,.pack-modal-box,.pack-modal-tear-flash,.pack-modal-reveal{animation:none}}.pack-modal-backdrop{background:radial-gradient(ellipse at 50% 42%, color-mix(in srgb, var(--pack-a) 58%, #0b0d1a) 0%, color-mix(in srgb, var(--pack-b) 42%, #07080f) 60%, color-mix(in srgb, var(--pack-b) 26%, #05060c) 100%);overflow:hidden}@property --pack-ray-turn{syntax:"<angle>";inherits:false;initial-value:0deg}.pack-stage-rays{pointer-events:none;--pack-ray:#ffffff1a;background:repeating-conic-gradient(from var(--pack-ray-turn) at 50% 42%, var(--pack-ray) 0deg 7.5deg, transparent 7.5deg 22.5deg);animation:18s linear infinite pack-rays;position:absolute;inset:0;-webkit-mask-image:radial-gradient(circle at 50% 42%,#000 0 25vmax,#0000008c 55vmax,#0006 85vmax);mask-image:radial-gradient(circle at 50% 42%,#000 0 25vmax,#0000008c 55vmax,#0006 85vmax)}@keyframes pack-rays{to{--pack-ray-turn:360deg}}.pack-stage-ripping .pack-stage-rays,.pack-stage-reveal .pack-stage-rays{--pack-ray:color-mix(in srgb, var(--rarity) 30%, #ffffff29);animation-duration:7s}.pack-stage-dup .pack-stage-rays{--pack-ray:#ffd66e24}.pack-stage-sparkles{pointer-events:none;position:absolute;inset:0}.pack-stage-sparkles span{left:calc(6% + var(--i) * 6.6%);color:#fff4c8;font-size:calc(10px + (var(--i) % 4) * 5px);opacity:0;animation:pack-spark 4.2s ease-in calc(var(--i) * -.31s) infinite;text-shadow:0 0 8px #fff0bee6;position:absolute;bottom:-24px}@keyframes pack-spark{0%{opacity:0;transform:translateY(0)rotate(0)}15%{opacity:.9}to{opacity:0;transform:translateY(-105vh)rotate(160deg)}}.pack-modal{z-index:1;background:color-mix(in srgb, var(--surface) 88%, transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border:1.5px solid color-mix(in srgb, var(--pack-a) 50%, #fff3);max-width:460px;padding:clamp(24px,5vw,38px) clamp(18px,4vw,32px);position:relative}.pack-stage-shaking .pack-modal,.pack-stage-ripping .pack-modal{box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border-color:#0000}.pack-modal-reveal-info{display:contents}.pack-stage-reveal .pack-modal{overscroll-behavior:contain;max-height:calc(100dvh - 40px);overflow-y:auto}.pack-modal-box-wrap{width:min(62vw,240px);height:min(62vw,240px);animation:.28s ease-in-out infinite pack-modal-shake,1.1s ease-in-out infinite pack-modal-glow,1.8s ease-in both pack-build}.pack-modal-box{font-size:min(26vw,104px)}.pack-modal-box-left{box-shadow:inset 3px 0 #ffffff59,inset 0 3px #ffffff59,inset 0 -3px #ffffff59}.pack-modal-box-right{box-shadow:inset -3px 0 #ffffff59,inset 0 3px #ffffff59,inset 0 -3px #ffffff59}.pack-modal-box-icon{width:min(62vw,240px);line-height:min(62vw,240px)}@keyframes pack-build{0%{scale:.7}to{scale:1.08}}.pack-modal-opening-label{color:#fff8e6;letter-spacing:.02em;text-shadow:0 2px 10px #00000080;font-size:18px}.pack-modal-reveal-critter{place-items:center;margin:4px 0;display:grid;position:relative}.pack-modal-reveal-critter:before{content:"";background:radial-gradient(circle, color-mix(in srgb, var(--rarity) 55%, transparent) 0%, transparent 68%);z-index:-1;border-radius:50%;animation:2.4s ease-in-out infinite alternate pack-halo;position:absolute;inset:-18%}@keyframes pack-halo{0%{opacity:.6;transform:scale(.94)}to{opacity:1;transform:scale(1.05)}}.pack-modal-reveal{animation:.55s cubic-bezier(.34,1.56,.64,1) both pack-modal-pop}.pack-modal-reveal-eyebrow{letter-spacing:.14em;font-size:15px}.pack-modal-reveal-name{font-size:clamp(24px,6vw,32px)}.pack-modal-reveal-flavor{max-width:34ch;font-size:14.5px}.pack-dup-badge{color:#2a1d06;letter-spacing:.08em;text-transform:uppercase;background:#f2b53a;border-radius:999px;margin:0;padding:6px 22px;font-size:clamp(20px,5vw,26px);font-weight:900;animation:.5s cubic-bezier(.34,1.56,.64,1) .2s both pack-dup-stamp;transform:rotate(-3deg);box-shadow:0 6px #b27e16,0 0 24px #f2b53a99}@keyframes pack-dup-stamp{0%{opacity:0;transform:rotate(-3deg)scale(2.2)}to{opacity:1;transform:rotate(-3deg)scale(1)}}.pack-dup-critter{filter:saturate(.85)}.pack-dup-owned{color:var(--ink);margin:0;font-size:16px;font-weight:700}.pack-dup-refund{background:color-mix(in srgb, var(--gold) 18%, var(--surface));border:2px solid var(--gold);border-radius:18px;justify-items:center;gap:2px;margin:8px 0 4px;padding:14px 26px;animation:1.2s ease-in-out .6s 3 pack-dup-pulse;display:grid}.pack-dup-refund span{letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);font-size:13px;font-weight:800}.pack-dup-refund strong{font-family:var(--font-body);color:var(--gold-dark);align-items:center;gap:8px;font-size:clamp(30px,8vw,40px);display:inline-flex}.pack-dup-refund em{color:var(--ink-soft);font-size:12.5px;font-style:normal;font-weight:600}@keyframes pack-dup-pulse{50%{box-shadow:0 0 26px color-mix(in srgb, var(--gold) 60%, transparent);transform:scale(1.05)}}@media (prefers-reduced-motion:reduce){.pack-stage-rays,.pack-stage-sparkles span,.pack-modal-reveal-critter:before,.pack-dup-badge,.pack-dup-refund{animation:none}.pack-stage-sparkles{display:none}}@media (width<=1000px) and (height<=500px) and (orientation:landscape){.pack-stage-reveal .pack-modal{max-width:660px;padding:16px 24px}.pack-modal-reveal{grid-template:"critter."1fr"critter top""critter info""critter."1fr/auto minmax(0,1fr);align-items:center;gap:4px 24px;display:grid}.pack-modal-reveal>.pack-modal-reveal-critter{grid-area:critter}.pack-modal-reveal-critter:before{inset:-6%}.pack-modal-reveal>:is(.pack-modal-reveal-eyebrow,.pack-dup-badge){grid-area:top;justify-self:center}.pack-modal-reveal-info{flex-direction:column;grid-area:info;align-items:center;gap:6px;display:flex}.pack-modal-reveal-name{margin:0;font-size:26px}.pack-modal-reveal-actions{flex-wrap:nowrap;margin-top:4px}.pack-modal-reveal-actions .btn{white-space:nowrap}.pack-dup-badge{padding:4px 16px;font-size:18px;box-shadow:0 4px #b27e16,0 0 18px #f2b53a80}.pack-dup-owned{font-size:14px}.pack-dup-refund{gap:0;margin:2px 0;padding:6px 18px}.pack-dup-refund span{font-size:11px}.pack-dup-refund strong{font-size:24px}.pack-dup-refund em{font-size:11.5px}}@media (prefers-reduced-motion:reduce){.pack-modal-box-wrap,.pack-modal-reveal,.pack-modal-tear-flash,.pack-modal-ripping .pack-modal-box-left,.pack-modal-ripping .pack-modal-box-right,.pack-modal-ripping .pack-modal-tear-flash{animation:none}}.settings-page{max-width:820px}.settings-page h1{margin-top:4px}.settings-intro{color:var(--ink-soft);margin:6px 0 24px;font-weight:600}.settings-section{border-radius:var(--r-xl);box-shadow:var(--shadow-md);padding:24px}.settings-section h2{margin-bottom:16px;font-size:21px}.theme-group+.theme-group{margin-top:22px}.theme-group-title{font-family:var(--font-body);letter-spacing:.12em;text-transform:uppercase;color:var(--gold-dark);margin:0 0 10px;font-size:12px;font-weight:800}.theme-options{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.theme-option{text-align:left;min-width:0;color:var(--ink);background:var(--surface);border:2px solid var(--line);border-radius:var(--r-md);align-content:start;gap:6px;padding:12px;font-size:13.5px;display:grid}.theme-option.selected{border-color:var(--gold-dark);box-shadow:0 0 0 2px color-mix(in srgb, var(--gold) 30%, transparent)}.theme-option strong{font-family:var(--font-body)}.theme-option>.theme-option-desc{color:var(--ink-soft);font-size:12px;font-weight:600;line-height:1.35}.theme-preview{border:1px solid var(--line);background:#f8f8fb;border-radius:10px;height:44px;display:block}.theme-preview-light{background:linear-gradient(#fff3d6 0%,#ffb08a 35%,#e2a9c9 65%,#8fb8dd 100%)}.theme-preview-dark{border-color:#232a4a;padding:0;overflow:hidden}.theme-preview-dark svg{width:100%;height:100%;display:block}.theme-preview-rain{background:linear-gradient(#7e8084 0%,#9c9ea2 100%);position:relative;overflow:hidden}.theme-preview-rain:before{content:"";background-image:repeating-linear-gradient(200deg,#0000 0 6px,#ffffff8c 6px 7px,#0000 7px 14px);position:absolute;inset:0}.theme-preview-starlight{border-color:#2b2f66;padding:0;overflow:hidden}.theme-preview-starlight svg{width:100%;height:100%;display:block}.theme-preview-blossom{border-color:#664a5a;padding:0;overflow:hidden}.theme-preview-blossom svg{width:100%;height:100%;display:block}.theme-preview-cyberbloom{border-color:#43222f;padding:0;overflow:hidden}.theme-preview-cyberbloom svg{width:100%;height:100%;display:block}.theme-preview-meadow{border-color:#5b6448;padding:0;overflow:hidden}.theme-preview-meadow svg{width:100%;height:100%;display:block}.theme-preview-plainLight,.theme-preview-plainDark{position:relative;overflow:hidden}.theme-preview-plainLight{background:linear-gradient(135deg,#fff 0%,#f2f2f4 60%,#e8e8ec 100%);border-color:#e1e1e5}.theme-preview-plainDark{background:linear-gradient(135deg,#232327 0%,#161618 60%,#0e0e10 100%);border-color:#2e2e33}.settings-note{color:var(--ink-faint);margin-top:16px;font-size:13px;font-weight:700}.settings-copyright{color:var(--ink-faint);text-align:center;margin:32px 0 8px;font-size:12px}.settings-copyright a{color:inherit;font-weight:700}:root[data-sky=snow] :is(.settings-note,.settings-copyright){color:var(--ink-soft)}@media (width<=700px){.theme-options{grid-template-columns:repeat(2,1fr)}}@media (width<=520px){.settings-section{padding:16px}.theme-options{grid-template-columns:1fr}.theme-option{grid-template-columns:54px 1fr;align-items:center}.theme-option>.theme-option-desc{grid-column:2}.theme-preview{grid-row:span 2;height:54px}}.theme-group-title{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.theme-group-price{background:color-mix(in srgb, var(--gold) 16%, var(--surface));color:var(--gold-dark);letter-spacing:.04em;text-transform:none;border-radius:999px;align-items:center;gap:3px;padding:2px 8px;font-size:11.5px;display:inline-flex}.theme-free-banner{background:color-mix(in srgb, var(--green,#33c98a) 14%, var(--surface));border:1.5px dashed color-mix(in srgb, var(--green,#33c98a) 55%, transparent);color:var(--ink);border-radius:12px;margin:-2px 0 10px;padding:9px 12px;font-size:13.5px;font-weight:700}.theme-tag{background:color-mix(in srgb, var(--gold) 22%, var(--surface));color:var(--gold-dark);white-space:nowrap;border-radius:999px;margin-left:6px;padding:1px 8px;font-size:11px;font-style:normal;font-weight:800}.theme-tag-lock{background:var(--bg-soft);color:var(--ink-soft);align-items:center;gap:3px;display:inline-flex}.theme-option-locked{cursor:default}.theme-option-locked .theme-preview{filter:saturate(.9)}.theme-option-locked.is-previewing{border-color:#ff5c7a;box-shadow:0 0 0 2px #ff5c7a40}.theme-option-actions{flex-wrap:wrap;gap:6px;margin-top:2px;display:flex}.theme-btn{border:1.5px solid var(--line);background:var(--bg-soft);min-height:40px;color:var(--ink);font:inherit;cursor:pointer;border-radius:999px;flex:auto;justify-content:center;align-items:center;gap:4px;padding:0 12px;font-size:13px;font-weight:800;display:inline-flex}@media (hover:hover){.theme-btn:hover:not(:disabled){border-color:var(--gold-dark)}}.theme-btn-buy{background:var(--gold);border-color:var(--gold-dark);color:#2a1d06}.theme-btn-buy:disabled{background:var(--bg-soft);border-color:var(--line);color:var(--ink-faint);cursor:not-allowed}.theme-btn-free{background:var(--green,#33c98a);border-color:color-mix(in srgb, var(--green,#33c98a) 70%, #000);color:#fff}@media (width<=520px){.theme-option-actions{grid-column:1/-1}}.theme-btn-end{color:#ff5c7a;border-color:#ff5c7a}.theme-preview-blackcat{border-color:#6e2432;padding:0;overflow:hidden}.theme-preview-blackcat svg{width:100%;height:100%;display:block}.theme-preview-snow{border-color:#c7d1e2;padding:0;overflow:hidden}.theme-preview-snow svg{width:100%;height:100%;display:block}.settings-legal{margin-top:24px}.settings-legal h2{margin-bottom:8px}.settings-legal-text{color:var(--ink-soft);margin:0 0 14px;font-weight:600;line-height:1.5}.settings-legal-links{flex-wrap:wrap;gap:10px;display:flex}.walk-card{z-index:1;border-radius:var(--r-lg);background:var(--surface);color:var(--ink);box-shadow:var(--shadow-md), inset 0 0 0 1.5px color-mix(in srgb, var(--gold) 45%, transparent);text-align:center;margin-bottom:20px;padding:22px 24px 20px;scroll-margin-top:12px;animation:.35s ease-out both walk-in;position:relative}@keyframes walk-in{0%{opacity:0;transform:translateY(8px)}}@media (prefers-reduced-motion:reduce){.walk-card{animation:none}}.walk-card h2{margin:4px 0 8px;font-size:24px}.walk-card p{max-width:58ch;color:var(--ink-soft);margin:0 auto 12px;font-weight:600;line-height:1.5}.walk-icon{font-size:44px;margin:0!important}.walk-step{letter-spacing:.12em;text-transform:uppercase;font-size:12px;font-weight:800;color:var(--gold-dark)!important;margin:0 auto!important}.walk-dots{justify-content:center;gap:6px;margin-bottom:10px;display:flex}.walk-dots span{background:var(--line);border-radius:50%;width:8px;height:8px}.walk-dots span.is-done{background:color-mix(in srgb, var(--gold-dark) 55%, var(--line))}.walk-dots span.is-on{background:var(--gold-dark);border-radius:999px;width:22px}.walk-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;margin-top:6px;display:flex}.walk-skip{color:var(--ink-faint);font:inherit;cursor:pointer;background:0 0;border:0;font-size:13px;font-weight:700;text-decoration:underline}.walk-card-welcome{text-align:left;flex-wrap:wrap;align-items:center;gap:12px 18px;padding:18px 22px;display:flex}.walk-card-welcome .walk-icon{font-size:38px;line-height:1}.walk-welcome-text{flex:260px;min-width:0}.walk-card-welcome h2{margin:0 0 4px;font-size:20px}.walk-card-welcome p{max-width:none;margin:0}.walk-card-welcome .walk-actions{flex:none;margin:0}@media (width<=560px){.walk-card-welcome{align-items:flex-start;gap:12px;padding:14px 16px}.walk-card-welcome .walk-icon{font-size:28px}.walk-welcome-text{flex:1 1 0}.walk-card-welcome h2{font-size:18px}.walk-card-welcome p{font-size:14px;line-height:1.45}.walk-card-welcome .walk-actions{flex-wrap:nowrap;flex:100%;gap:8px}.walk-card-welcome .walk-actions .btn{white-space:nowrap;flex:1;min-height:44px;padding:10px 12px;font-size:14.5px}}.walk-preview-loading{min-height:120px}.walk-maker{margin:4px 0 10px}.walk-maker .pluck-board{transform-origin:top;margin-bottom:-40px;transform:scale(.8)}.walk-games{grid-template-columns:repeat(5,1fr);gap:8px;margin:4px 0 12px;display:grid}.walk-game{text-align:center;color:var(--ink-soft);gap:3px;font-size:11.5px;font-weight:600;display:grid}.walk-game strong{color:var(--ink);font-size:12.5px}.walk-game-art{border-radius:12px;height:92px;display:block;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1.5px #d8b25a}.walk-game-art .game-card-art{width:100%;height:100%;position:absolute;inset:0}.walk-packs{grid-template-columns:repeat(auto-fill,minmax(118px,1fr));gap:8px;margin:4px 0 12px;display:grid}.walk-starters{flex-wrap:wrap;justify-content:center;gap:8px;margin:2px 0 10px;display:flex}.walk-starter{background:var(--bg-soft);color:var(--ink);white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:3px 11px 3px 5px;font-size:12.5px;font-weight:800;display:inline-flex}.walk-starter em{color:var(--green-dark,var(--green));font-size:11px;font-style:normal;font-weight:800}.walk-packs-label{color:var(--ink)!important;margin:0 0 6px!important;font-size:13px!important;font-weight:800!important}.walk-pack{color:#fff6dd;font:inherit;cursor:pointer;background:linear-gradient(160deg, var(--a), var(--b));border:1.5px solid #f0d69699;border-radius:14px;justify-items:center;gap:2px;padding:14px 8px 10px;transition:transform .15s,box-shadow .15s;display:grid}@media (hover:hover){.walk-pack:hover{transform:translateY(-3px);box-shadow:0 8px 20px #0000004d}}.walk-pack-icon{font-size:30px}.walk-pack strong{font-size:13px}.walk-pack em{letter-spacing:.08em;text-transform:uppercase;color:#f6e2ae;font-size:11px;font-style:normal;font-weight:800}.walk-claimed{color:var(--gold-dark)!important;font-weight:800!important}.walk-themes{gap:14px;margin:6px 0 12px;display:grid}.walk-theme-group{gap:8px;display:grid}.walk-theme-group-title{letter-spacing:.1em;text-transform:uppercase;color:var(--gold-dark);margin:0;font-size:12px;font-weight:800}.walk-theme-group-title em{letter-spacing:0;text-transform:none;color:var(--green,#33c98a);font-style:normal}.walk-theme-row{grid-template-columns:repeat(auto-fit,minmax(96px,1fr));gap:8px;display:grid}.walk-theme{border:2px solid var(--line);background:var(--surface);color:var(--ink);font:inherit;cursor:pointer;text-align:center;border-radius:12px;gap:5px;padding:6px;font-size:12.5px;font-weight:800;display:grid}.walk-theme .theme-preview{border-radius:8px;height:38px}.walk-theme.is-previewing{border-color:#ff5c7a;box-shadow:0 0 0 2px #ff5c7a40}.walk-theme.is-picked{border-color:var(--green,#33c98a)}.walk-theme:disabled:not(.is-picked){opacity:.45;cursor:default}.walk-theme-choose{justify-self:center;margin-bottom:6px}.walk-theme-hint{text-align:center;color:var(--ink-faint);margin:0;font-size:12.5px;font-weight:700}@media (width<=640px){.walk-card:not(.walk-card-welcome){padding:18px 16px 16px}.walk-card h2{font-size:21px}.walk-maker .pluck-board{margin-bottom:-110px;transform:scale(.62)}.walk-games{grid-template-columns:repeat(3,1fr)}.walk-game-art{height:72px}.walk-actions{flex-wrap:nowrap;gap:8px}.walk-actions .btn{min-height:44px;padding:10px 18px;font-size:15px}.walk-actions .btn-lg{padding:10px 22px}.walk-actions .walk-skip{white-space:nowrap;padding-inline:4px;font-size:12.5px}}.walk-new-friend{align-items:center;gap:14px;margin:6px 0 4px;display:flex}.walk-new-friend .walk-claimed{margin:0}@media (width<=520px){.walk-new-friend{text-align:center;flex-direction:column;gap:6px}}.games-page-sub{color:var(--ink-soft);margin:6px 0 18px;font-weight:600}.game-card:after{content:"";z-index:3;border-radius:inherit;pointer-events:none;border:1.5px solid #d8b25a;transition:border-color .15s,box-shadow .15s;position:absolute;inset:0;box-shadow:inset 0 0 0 4px #0000,inset 0 0 0 5px #eccc8061}@media (hover:hover){.game-card:hover:after{border-color:#f0cf7e;box-shadow:inset 0 0 0 4px #0000,inset 0 0 0 5px #f6de9699,inset 0 0 22px #f0cf7e2e}}.games-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:18px;display:grid}.game-card{isolation:isolate;border-radius:var(--r-lg);box-shadow:var(--shadow-md);flex-direction:column;min-height:330px;transition:transform .15s,box-shadow .15s;display:flex;position:relative;overflow:hidden}@media (hover:hover){.game-card:hover{box-shadow:0 4px 22px #d8b25a47, var(--shadow-lg);transform:translateY(-4px)}}.game-card-art-shuffler>svg{object-fit:cover;width:100%;height:100%;display:block}.game-card-art-shuffler{overflow:hidden}.shuffler-art-envelope{filter:drop-shadow(0 6px 10px #3c1e1940);width:34%;position:absolute;top:7%;left:5%;transform:rotate(-9deg)}.shuffler-art-cd{filter:drop-shadow(0 8px 12px #3c1e1947);width:68%;position:absolute;top:3%;right:-2%;transform:rotate(5deg)}.game-card-art-shuffler .shuffler-art-notes{width:100%;height:100%;position:absolute;inset:0}.shuffler-art-cd .disc-spinning{animation-duration:9s}.game-card-art-salon{background:linear-gradient(#261a40,#46284f 55%,#6e3a57);overflow:hidden}.salon-art-lights,.salon-art-sparkles{width:100%;height:100%;position:absolute;inset:0}.salon-art-bulb{animation:2.4s ease-in-out infinite salon-art-bulb}@keyframes salon-art-bulb{0%,to{opacity:1}50%{opacity:.62}}.salon-art-firefly{transform-box:fill-box;animation:5.5s ease-in-out infinite salon-art-firefly}@keyframes salon-art-firefly{0%,to{opacity:.2;transform:translate(0)}40%{opacity:1;transform:translate(5px,-7px)}70%{opacity:.5;transform:translate(-3px,-3px)}}.salon-art-sparkles{z-index:5;pointer-events:none}.salon-art-polaroid{aspect-ratio:100/158;background:linear-gradient(160deg,#fdfcf9,#f1eee8);border-radius:2px;width:31%;position:absolute;box-shadow:0 1px 2px #0a041066,0 8px 18px #0a041073,0 0 16px #ffc47829}.salon-art-photo{aspect-ratio:240/330;background:#d9d4cc;position:absolute;top:6%;left:6.5%;right:6.5%;overflow:hidden;box-shadow:inset 0 0 0 1px #0000000f}.salon-art-photo .salon-avatar{border-radius:0;width:100%;height:auto;display:block}.salon-art-polaroid-0{z-index:3;top:30%;left:5%;transform:rotate(-12deg)}.salon-art-polaroid-1{z-index:2;top:3%;left:33%;transform:rotate(9deg)}.salon-art-polaroid-2{z-index:1;top:24%;left:61%;transform:rotate(-6deg)}.salon-art-develop{opacity:0;background:linear-gradient(170deg,#5b574b,#3e3b33);animation:12s ease-in-out infinite salon-art-develop;position:absolute;inset:0}@keyframes salon-art-develop{0%{opacity:0}2.5%{opacity:.96}8%{opacity:.94}42%{opacity:0}to{opacity:0}}.salon-art-polaroid-1 .salon-art-develop{animation-delay:-8s}.salon-art-polaroid-2 .salon-art-develop{animation-delay:-4s}.salon-art-flash{z-index:4;pointer-events:none;opacity:0;animation:12s ease-out infinite salon-art-flash;position:absolute;inset:0}.salon-art-flash-0{background:radial-gradient(38% 34% at 20% 48%,#ffffffeb,#ffffff73 50%,#fff0 100%)}.salon-art-flash-1{background:radial-gradient(38% 34% at 48% 22%,#ffffffeb,#ffffff73 50%,#fff0 100%);animation-delay:-8s}.salon-art-flash-2{background:radial-gradient(38% 34% at 76% 42%,#ffffffeb,#ffffff73 50%,#fff0 100%);animation-delay:-4s}@keyframes salon-art-flash{0%{opacity:0}1%{opacity:1}5%{opacity:0}to{opacity:0}}.salon-art-sparkle{transform-box:fill-box;transform-origin:50%;animation:2.6s ease-in-out infinite salon-art-sparkle}@keyframes salon-art-sparkle{0%,to{opacity:0;transform:scale(.3)}45%,55%{opacity:1;transform:scale(1)}}@media (prefers-reduced-motion:reduce){.salon-art-develop,.salon-art-flash,.salon-art-sparkle,.salon-art-bulb,.salon-art-firefly{animation:none}}.game-card-art{z-index:0;width:100%;height:100%;transition:transform .4s;position:absolute;inset:0}@media (hover:hover){.game-card:hover .game-card-art{transform:scale(1.06)}}.game-card-scrim{z-index:1;background:linear-gradient(#080a120f 0%,#080a1229 22%,#080a1270 46%,#080a12c2 72%,#080a12e6 100%);position:absolute;inset:0}.game-card-body{z-index:2;flex-direction:column;flex:1;justify-content:flex-end;padding:26px;display:flex;position:relative}.game-card h2{color:#fff;margin:0 0 6px;font-size:21px}.game-card-tagline-short{display:none}.game-card p{color:#ffffffd1;margin:0;font-size:14px;font-weight:600;line-height:1.5}.game-card-score{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);border-radius:var(--r-md);background:#ffffff14;border:1px solid #d8b25a80;justify-content:space-between;align-items:center;margin-top:18px;padding:10px 14px;display:flex}.game-card-score span{letter-spacing:.14em;color:#f3dca0;text-transform:uppercase;letter-spacing:.04em;font-size:11px;font-weight:800}.game-card-score strong{font-family:var(--font-body);color:#f6e2ae;font-size:19px}.game-card-art-transition{background:#d8d8d6;overflow:hidden}.game-card-art-transition>svg{width:100%;height:100%;display:block;position:absolute;inset:0}.partition-art-arm{transform-origin:0 0;animation:1.3s ease-in-out infinite alternate partition-art-sway}@keyframes partition-art-sway{0%{transform:translateY(-1px)rotate(-2deg)}to{transform:translateY(1.8px)rotate(2.5deg)}}.partition-art-strings{animation:2.6s linear infinite partition-art-shimmer}@keyframes partition-art-shimmer{0%,44%,64%,to{transform:translateY(0)}48%{transform:translateY(.45px)}52%{transform:translateY(-.4px)}56%{transform:translateY(.3px)}60%{transform:translateY(-.15px)}}@media (prefers-reduced-motion:reduce){.partition-art-arm,.partition-art-strings{animation:none}}.tt-morph-finger-3{animation:5.6s infinite tt-morph-ring-x}.tt-morph-finger-3 .tt-morph-finger-y{animation:5.6s infinite tt-morph-ring-y}@keyframes tt-morph-ring-x{0%,26%{animation-timing-function:cubic-bezier(.3,.55,.4,1);transform:translate(0)}48%,74%{animation-timing-function:cubic-bezier(.6,0,.7,.45);transform:translate(40px)}96%,to{transform:translate(0)}}@keyframes tt-morph-ring-y{0%,26%{animation-timing-function:cubic-bezier(.6,0,.7,.45);transform:translateY(0)}48%,74%{animation-timing-function:cubic-bezier(.3,.55,.4,1);transform:translateY(-23px)}96%,to{transform:translateY(0)}}.tt-morph-dot{animation:5.6s ease-in-out infinite tt-morph-dot}@keyframes tt-morph-dot{0%,26%,96%,to{fill:#670626}48%,74%{fill:#bad797}}.tt-morph-num{animation:5.6s ease-in-out infinite tt-morph-num}@keyframes tt-morph-num{0%,26%,96%,to{fill:#fff}48%,74%{fill:#1f2c16}}.tt-morph-halo{animation:5.6s ease-in-out infinite tt-morph-halo}.tt-art-pendulum{transform-box:fill-box;transform-origin:50% 100%;animation:1.4s ease-in-out infinite alternate tt-art-tick}@keyframes tt-art-tick{0%{transform:rotate(-22deg)}to{transform:rotate(22deg)}}.tt-art-hand{transform-box:fill-box;transform-origin:50% 85.7%;animation:5.6s linear infinite tt-art-sweep}@keyframes tt-art-sweep{to{transform:rotate(360deg)}}.tt-art-loop path{animation:1.6s linear infinite tt-art-flow}@keyframes tt-art-flow{to{stroke-dashoffset:-22px}}@keyframes tt-morph-halo{0%,26%,96%,to{fill:#670626;opacity:.32}48%,74%{fill:#bad797;opacity:.6}}.tt-morph-from{animation:5.6s ease-in-out infinite tt-morph-out}.tt-morph-to{animation:5.6s ease-in-out infinite tt-morph-in}@keyframes tt-morph-out{0%,30%,92%,to{opacity:1}36%,86%{opacity:0}}@keyframes tt-morph-in{0%,38%,84%,to{opacity:0}44%,78%{opacity:1}}@media (prefers-reduced-motion:reduce){.tt-morph-finger-3,.tt-morph-finger-3 .tt-morph-finger-y,.tt-morph-dot,.tt-morph-num,.tt-morph-halo,.tt-morph-from,.tt-morph-to,.tt-art-pendulum,.tt-art-hand,.tt-art-loop path{animation:none}.tt-morph-dot{fill:#670626}.tt-morph-num{fill:#fff}.tt-morph-halo{fill:#670626;opacity:.32}.tt-morph-to{opacity:0}}@media (width<=599px){.tt-art-metronome,.tt-art-stopwatch{display:none}.tt-art-chart{--tt-chart-scale:1.42;transform-box:view-box;transform-origin:160px 17px;transform:translateY(-8px) scale(var(--tt-chart-scale))}}@media (width<=389px){.tt-art-chart{--tt-chart-scale:1.36}}@media (width<=374px){.tt-art-chart{--tt-chart-scale:1.28}}@media (width<=359px){.tt-art-chart{--tt-chart-scale:1.2}}@media (width<=339px){.tt-art-chart{--tt-chart-scale:1.12}}@media (width<=599px){.games-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.game-card{border-radius:18px;min-height:238px}.game-card:last-child:nth-child(odd){grid-column:1/-1;min-height:210px}.game-card-body{padding:12px}.game-card h2{margin-bottom:4px;font-size:15.5px;line-height:1.2}.game-card p{-webkit-line-clamp:3;-webkit-box-orient:vertical;font-size:12px;line-height:1.35;display:-webkit-box;overflow:hidden}.game-card-tagline-long{display:none}.game-card-tagline-short{display:inline}.game-card-score{border-radius:10px;margin-top:8px;padding:6px 9px}.game-card-score span{letter-spacing:.02em;font-size:10px}.game-card-score strong{font-size:15px}}.slicer-art-bob{transform-box:fill-box;transform-origin:50%;animation:3.2s ease-in-out infinite alternate slicer-art-bob}.slicer-art-bob-b{animation-duration:2.7s;animation-delay:-1.1s}.slicer-art-bob-c{animation-duration:3.6s;animation-delay:-2s}@keyframes slicer-art-bob{0%{transform:translateY(5px)rotate(-3deg)}to{transform:translateY(-7px)rotate(4deg)}}.slicer-art-pop{transform-box:fill-box;transform-origin:50%;animation:4.8s ease-out infinite slicer-art-pop}@keyframes slicer-art-pop{0%,52%{opacity:1;transform:none}57%{opacity:1;transform:scale(1.22)}64%{opacity:0;transform:scale(1.5)}90%{opacity:0;transform:scale(.6)}to{opacity:1;transform:none}}.slicer-art-whiteout{opacity:0;animation:4.8s ease-out infinite slicer-art-whiteout}@keyframes slicer-art-whiteout{0%,52%{opacity:0}58%{opacity:.85}64%,to{opacity:0}}.slicer-art-flash{transform-box:fill-box;transform-origin:50%;opacity:0;animation:4.8s ease-out infinite slicer-art-flash}@keyframes slicer-art-flash{0%,53%{opacity:0;transform:scale(.3)}57%{opacity:1;transform:scale(1.5)}67%,to{opacity:0;transform:scale(2.6)}}.slicer-art-spark{opacity:0;animation:4.8s cubic-bezier(.15,.75,.3,1) infinite slicer-art-spark}@keyframes slicer-art-spark{0%,54%{opacity:0;transform:translate(0)scale(0)}57%{opacity:1}66%{transform:translate(var(--dx), var(--dy)) scale(1);opacity:1}76%,to{transform:translate(calc(var(--dx) * 1.25), calc(var(--dy) * 1.25 + 18px)) scale(.6);opacity:0}}.slicer-art-eyes{transform-box:fill-box;transform-origin:50%;animation:5.2s infinite slicer-art-blink}@keyframes slicer-art-blink{0%,44%,50%,to{transform:none}47%{transform:scaleY(.12)}}.slicer-art-moon{animation:4s ease-in-out infinite alternate slicer-art-moon}@keyframes slicer-art-moon{0%{opacity:.75}to{opacity:1}}@media (prefers-reduced-motion:reduce){.slicer-art-bob,.slicer-art-pop,.slicer-art-whiteout,.slicer-art-flash,.slicer-art-spark,.slicer-art-eyes,.slicer-art-moon{animation:none}}.chord-category-selector{border:1px solid var(--line);border-radius:var(--r-md);text-align:left;margin:16px 0;padding:14px}.chord-category-selector legend{color:var(--ink);padding:0 6px;font-weight:700}.chord-category-options{flex-wrap:wrap;gap:8px;display:flex}.chord-category-options button{border:1px solid var(--line);background:var(--surface);color:var(--ink);cursor:pointer;border-radius:999px;padding:8px 12px;font-size:12px;font-weight:700}.chord-category-options button.selected{color:#6f2948;background:#ffd9e5;border-color:#e98ba8;box-shadow:0 0 0 2px #e98ba833}.chord-category-options button.empty,.chord-category-picker-row .btn.empty{opacity:.55}.chord-category-notice{border-radius:var(--r-md);background:color-mix(in srgb, var(--orange) 14%, var(--surface));border:1px solid color-mix(in srgb, var(--orange) 40%, transparent);color:var(--ink);margin:10px 0 0;padding:9px 12px;font-size:12.5px;font-weight:600;line-height:1.45}.chord-category-hint{color:var(--ink-soft);margin:8px 0 0;font-size:12px;font-weight:700;line-height:1.45}.chord-category-selector>.chord-category-hint:last-child{margin:14px 0 0}.chord-category-picker{margin-top:12px}.chord-category-picker-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.chord-category-picker-row .btn{padding:7px 12px;font-size:12px}.chord-category-count{color:var(--ink-soft);font-size:12px;font-weight:700}.chord-category-flash{color:var(--green-dark);font-size:12px;font-weight:700}.chord-category-grid{grid-template-columns:repeat(auto-fill,minmax(58px,1fr));gap:6px;max-height:210px;margin-top:10px;padding-right:4px;display:grid;overflow-y:auto}.chord-category-chip{border:1px solid var(--line);border-radius:var(--r-sm,8px);background:var(--surface);color:var(--ink);cursor:pointer;padding:7px 4px;font-size:12px;font-weight:700}.chord-category-chip.selected{color:#6f2948;background:#ffd9e5;border-color:#e98ba8}.game-avatar{width:var(--ga-size);height:var(--ga-size);pointer-events:none;-webkit-user-select:none;user-select:none;place-items:center;display:inline-grid;position:relative}.game-avatar-body{z-index:2;transform-origin:50% 90%;display:block;position:relative}.game-avatar-idle .game-avatar-body,.game-avatar-ready .game-avatar-body{animation:2.4s ease-in-out infinite ga-bob}.game-avatar-tier-2.game-avatar-idle .game-avatar-body{animation:2.2s ease-in-out infinite ga-bob-tilt}.game-avatar-tier-3.game-avatar-idle .game-avatar-body,.game-avatar-tier-4.game-avatar-idle .game-avatar-body{animation:3s ease-in-out infinite ga-float}.game-avatar-tier-5 .game-avatar-body{animation:3.4s ease-in-out infinite ga-float}.game-avatar-tier-5.game-avatar-ready .game-avatar-body{animation:.9s cubic-bezier(.2,1.4,.4,1) both ga-drop-in,3.4s ease-in-out .9s infinite ga-float}@keyframes ga-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-4%)}}@keyframes ga-bob-tilt{0%,to{transform:translateY(0)rotate(-3deg)}50%{transform:translateY(-5%)rotate(3deg)}}@keyframes ga-float{0%,to{transform:translateY(0)scale(1)}50%{transform:translateY(-8%)scale(1.02)}}@keyframes ga-drop-in{0%{opacity:0;transform:translateY(-140%)scale(.6)}to{opacity:1;transform:translateY(0)scale(1)}}.game-avatar-correct .game-avatar-body{animation:.6s cubic-bezier(.2,1.4,.4,1) both ga-hop}.game-avatar-combo .game-avatar-body{animation:1s cubic-bezier(.2,1.2,.4,1) both ga-spin-hop}.game-avatar-mistake .game-avatar-body{filter:saturate(.7);animation:.7s ease-in-out both ga-wobble}.game-avatar-victory .game-avatar-body{animation:1.1s ease-in-out infinite ga-cheer}.game-avatar-personalBest .game-avatar-body{animation:1.1s cubic-bezier(.2,1.2,.4,1) infinite ga-spin-hop}.game-avatar-tier-4.game-avatar-victory .game-avatar-body,.game-avatar-tier-5.game-avatar-victory .game-avatar-body{animation:1.3s ease-in-out infinite ga-big-cheer}@keyframes ga-hop{0%{transform:translateY(0)scale(1)}40%{transform:translateY(-22%)scale(1.06,.96)}70%{transform:translateY(0)scale(1.08,.92)}to{transform:none}}@keyframes ga-spin-hop{0%{transform:translateY(0)rotate(0)}45%{transform:translateY(-30%)rotate(180deg)scale(1.1)}80%{transform:translateY(0)rotate(360deg)}to{transform:rotate(360deg)}}@keyframes ga-wobble{0%,to{transform:rotate(0)}25%{transform:rotate(-9deg)translateY(3%)}55%{transform:rotate(7deg)}80%{transform:rotate(-3deg)}}@keyframes ga-cheer{0%,to{transform:translateY(0)scale(1)}30%{transform:translateY(-16%)scale(1.05,.97)}60%{transform:translateY(0)scale(1.06,.94)}}@keyframes ga-big-cheer{0%,to{transform:translateY(0)rotate(0)}25%{transform:translateY(-24%)rotate(-8deg)scale(1.08)}50%{transform:translateY(0)rotate(0)}75%{transform:translateY(-14%)rotate(8deg)}}.game-avatar-aura{z-index:1;background:radial-gradient(circle, color-mix(in srgb, var(--ga-accent) 55%, transparent) 0%, transparent 65%);border-radius:50%;animation:2.2s ease-in-out infinite ga-pulse;position:absolute;inset:-12%}@keyframes ga-pulse{0%,to{opacity:.55;transform:scale(.94)}50%{opacity:1;transform:scale(1.06)}}.game-avatar-rays{z-index:0;background:repeating-conic-gradient(from 0deg, #ffe69659 0 10deg, transparent 10deg 30deg);border-radius:50%;animation:14s linear infinite ga-spin;position:absolute;inset:-30%;-webkit-mask:radial-gradient(circle,#000 20%,#0000 70%);mask:radial-gradient(circle,#000 20%,#0000 70%)}@keyframes ga-spin{to{transform:rotate(360deg)}}.game-avatar-orbit{z-index:3;animation:5s linear infinite ga-spin;position:absolute;inset:-6%}.game-avatar-orbit i{clip-path:polygon(50% 0,62% 38%,100% 50%,62% 62%,50% 100%,38% 62%,0 50%,38% 38%);background:#fff4c8;width:9%;height:9%;position:absolute;top:-2%;left:45.5%}.game-avatar-orbit i:nth-child(2){transform-origin:50% 555%;transform:rotate(120deg)}.game-avatar-orbit i:nth-child(3){transform-origin:50% 555%;background:var(--ga-accent);transform:rotate(240deg)}.game-avatar-burst{z-index:4;position:absolute;inset:0}.game-avatar-burst i{--a:calc(var(--k) * 36deg);background:#ffd25a;border-radius:50%;width:8%;height:8%;animation:.8s ease-out both ga-burst;position:absolute;top:45%;left:50%}.game-avatar-burst i:nth-child(3n){background:var(--ga-accent)}.game-avatar-burst i:nth-child(3n+1){background:#fff}.game-avatar-victory .game-avatar-burst i,.game-avatar-personalBest .game-avatar-burst i{animation-duration:1.4s;animation-iteration-count:infinite}@keyframes ga-burst{0%{transform:translate(-50%, -50%) rotate(var(--a)) translateY(0) scale(.4);opacity:1}to{transform:translate(-50%, -50%) rotate(var(--a)) translateY(-78%) scale(1);opacity:0}}.game-avatar-sweat{z-index:4;font-weight:900;font-size:calc(var(--ga-size) * .22);color:#6fa8ff;animation:.7s ease-out both ga-hop;position:absolute;top:0;right:4%}.game-avatar-label{z-index:5;white-space:nowrap;background:var(--surface,#fff);color:var(--ink,#222);border-radius:999px;padding:2px 10px;font-size:12px;font-weight:800;position:absolute;bottom:-14%;left:50%;transform:translate(-50%);box-shadow:0 2px 8px #0003}@media (prefers-reduced-motion:reduce){.game-avatar *{animation:none!important}}.game-countdown{z-index:30;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);pointer-events:none;background:#0a0d1a8c;flex-direction:column;justify-content:center;align-items:center;gap:6px;display:flex;position:absolute;inset:0}.game-countdown-label{letter-spacing:.08em;text-transform:uppercase;color:#ffffffd9;margin:0;font-size:15px;font-weight:700}.game-countdown-number{font-family:var(--font-display,var(--font-body));color:#fff;text-shadow:0 6px 24px #00000073;font-size:108px;font-weight:700;line-height:1;animation:.7s ease-out game-countdown-pop}.game-countdown-go{color:var(--gold,#e7c264);font-size:72px}@keyframes game-countdown-pop{0%{opacity:0;transform:scale(1.6)}25%{opacity:1;transform:scale(1)}to{opacity:.55;transform:scale(.88)}}@media (prefers-reduced-motion:reduce){.game-countdown-number{animation:none}}@media (width<=520px){.game-countdown-number{font-size:84px}.game-countdown-go{font-size:56px}}.game-countdown-host{z-index:30;position:fixed;inset:0}@media (width>=900px) and (height>=501px){.game-countdown-host{left:var(--nav-w)}}@media (width<=899px),(height<=500px){.game-countdown-host{bottom:calc(76px + env(safe-area-inset-bottom,0px))}}@media (width>=600px) and (width<=899px) and (height>=501px){.game-countdown-host{bottom:calc(80px + env(safe-area-inset-bottom,0px))}}.game-countdown-avatar{margin-bottom:10px}.journey-strip{border-radius:var(--r-lg);background:var(--bg-soft);border:1px solid color-mix(in srgb, var(--gold-dark) 30%, var(--line));text-align:left;align-items:flex-start;gap:12px;width:100%;max-width:460px;margin:4px auto 18px;padding:12px 14px;display:flex}.journey-strip-avatar{flex:none}.journey-strip ul{min-width:0;color:var(--ink-soft);flex:1;gap:5px;margin:0;padding:0;font-size:13px;font-weight:700;list-style:none;display:grid}.journey-strip li{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.journey-strip a{color:var(--gold-dark);font-weight:800}.journey-strip-extra{color:var(--ink);font-weight:800}.journey-strip-earned{color:var(--gold-dark);font-weight:800}.journey-strip-bar{background:color-mix(in srgb, var(--ink) 10%, transparent);border-radius:999px;flex:1;min-width:60px;height:6px;overflow:hidden}.journey-strip-bar i{background:var(--gold-dark);border-radius:999px;height:100%;display:block}.journey-strip em{color:var(--ink-faint);font-size:12px;font-style:normal}.journey-strip-next{color:var(--ink)}.slicer-page{max-width:720px}.slicer-topbar{align-items:center;gap:16px;margin-bottom:16px;display:flex}.slicer-topbar h1{flex:1;font-size:24px}.slicer-stat{background:var(--surface);color:var(--ink);box-shadow:var(--shadow-sm);border-radius:999px;padding:8px 16px;font-size:14px;font-weight:700}.slicer-hud{gap:10px;margin-bottom:14px;display:flex}.slicer-hud-overlay{z-index:5;margin:0;position:absolute;top:14px;left:14px;right:66px}.slicer-hud-item{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border-radius:var(--r-md);background:#0e081894;border:1px solid #ffffff2e;flex-direction:column;flex:1;gap:2px;padding:8px 14px;display:flex}.slicer-hud-item span{color:#ffffffb8;text-transform:uppercase;font-size:10px;font-weight:700}.slicer-hud-item strong{font-family:var(--font-body);color:#fff;font-size:16px}.slicer-fullscreen{z-index:30;position:fixed;inset:0}@media (width>=900px) and (height>=501px){.slicer-fullscreen{left:var(--nav-w)}}@media (width<=899px),(height<=500px){.slicer-fullscreen{bottom:calc(76px + env(safe-area-inset-bottom,0px))}}@media (width>=600px) and (width<=899px) and (height>=501px){.slicer-fullscreen{bottom:calc(80px + env(safe-area-inset-bottom,0px))}}.slicer-arena.slicer-arena-full{width:100%;height:100%;box-shadow:none;border-radius:0}.slicer-exit{z-index:6;color:#1a1a2e;cursor:pointer;width:40px;height:40px;box-shadow:var(--shadow-sm);background:#ffffffe6;border:none;border-radius:50%;place-items:center;font-size:16px;font-weight:700;display:grid;position:absolute;top:14px;right:14px}@media (hover:hover){.slicer-exit:hover{background:#fff}}.slicer-arena{border-radius:var(--r-xl);height:min(70vh,560px);box-shadow:var(--shadow-md);background:#f4e8de;position:relative;overflow:hidden}.slicer-difficulties{flex-wrap:wrap;justify-content:center;gap:10px;margin:10px 0 16px;display:flex}.slicer-difficulty{border:2px solid var(--line);border-radius:var(--r-md);background:var(--bg-soft);min-width:120px;color:var(--ink);padding:12px 14px;font-weight:700}.slicer-difficulty small{color:var(--ink-soft);margin-top:3px;font-size:11px;display:block}.slicer-difficulty.selected{border-color:var(--green);background:color-mix(in srgb, var(--green) 18%, var(--surface));color:var(--ink)}.slicer-difficulty.selected small{color:var(--ink-soft)}.scene-cafe{z-index:0;width:100%;height:100%;display:block;position:absolute;inset:0}.slicer-fruit{will-change:transform;place-items:center;width:152px;height:152px;display:grid;position:absolute}.slicer-fruit svg{width:100%;height:100%;overflow:visible}.slicer-fruit-label{z-index:1;color:#241d1d;font-family:var(--font-body);letter-spacing:.01em;white-space:nowrap;background:#fffffff2;border:2px solid #241d1d24;border-radius:999px;padding:4px 14px;font-size:23px;font-weight:800;position:absolute;box-shadow:0 2px 7px #0000004d}.slicer-fruit-slicing{pointer-events:none;width:152px;height:152px;position:absolute;transform:translate(-50%,-50%)}.slicer-burst-body{animation:.42s cubic-bezier(.2,.8,.3,1) forwards slicer-burst-body;position:absolute;inset:0}.slicer-burst-body svg{width:100%;height:100%;overflow:visible}@keyframes slicer-burst-body{0%{opacity:1;filter:brightness();transform:scale(1)}35%{opacity:1;filter:brightness(1.9);transform:scale(1.22)}to{opacity:0;filter:brightness(2.4);transform:scale(1.5)}}.slicer-burst-flash{aspect-ratio:1;pointer-events:none;background:radial-gradient(circle,#ffe9aaf2 0%,#ffce6e80 45%,#ffc86400 72%);border-radius:50%;width:40%;margin:-20% 0 0 -20%;animation:.4s ease-out forwards slicer-burst-flash;position:absolute;top:50%;left:50%}@keyframes slicer-burst-flash{0%{opacity:0;transform:scale(.3)}25%{opacity:1;transform:scale(1.5)}to{opacity:0;transform:scale(2.6)}}.slicer-burst-dot{width:11px;height:11px;animation:slicer-burst-dot .62s cubic-bezier(.15, .75, .3, 1) var(--d,0s) forwards;pointer-events:none;background:radial-gradient(circle at 35% 32%,#fff3c9 0%,#ffcf6a 45%,#e0a02c 100%);border-radius:50%;margin:-5.5px 0 0 -5.5px;position:absolute;top:50%;left:50%;box-shadow:0 0 8px #ffd06ee6}@keyframes slicer-burst-dot{0%{opacity:0;transform:translate(0)scale(0)}18%{opacity:1}60%{transform:translate(var(--dx), var(--dy)) scale(var(--s,1));opacity:1}to{transform:translate(calc(var(--dx) * 1.25), calc(var(--dy) * 1.25 + 34px)) scale(calc(var(--s,1) * .6));opacity:0}}@media (prefers-reduced-motion:reduce){.slicer-burst-body,.slicer-burst-flash,.slicer-burst-dot{animation-duration:10ms}}.slicer-miss-flash{z-index:4;pointer-events:none;background:#ff5c5c2e;animation:.35s ease-out forwards slicer-flash;position:absolute;inset:0}@keyframes slicer-flash{0%{opacity:1}to{opacity:0}}.slicer-final-score{font-family:var(--font-body);color:var(--ink)!important;font-size:22px!important}.slicer-new-best{color:var(--gold-dark)!important;font-weight:700!important}.slicer-feedback{text-align:center;color:#fff;text-shadow:0 2px 2px #00000040;font-weight:700;position:absolute;bottom:16px;left:0;right:0}.slicer-page{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--ink:#4a3326;--ink-soft:#6b5446;--ink-faint:#8f7a6c;--surface:#fbf4e8;--bg-soft:#f4e3d6;--line:#d9bfae;--green:#d4413f;--green-dark:#a82f2d;--purple:#d4413f;--purple-dark:#a82f2d;--blue:#c98a4e;--blue-dark:#8a5a2c;--gold:#c98a4e;--gold-dark:#8a5a2c;--gold-light:#f3dcc0;--pink:#c98f96;--pink-dark:#a86a72;width:100%;max-width:none;color:var(--ink);position:relative}.app-main:has(.slicer-page){background:#f4e8de!important}.app-main:has(.slicer-page) :is(.night-stars,.starlight-sky,.blossom-sky,.meadow-sky,.cyber-sky,.blackcat-sky,.blackcat-peek,.snow-sky,.snow-fall,.glass-sky,.rain-drops){display:none}.slicer-world{z-index:0;pointer-events:none;position:fixed;inset:0}@media (width>=900px) and (height>=501px){.slicer-world{left:var(--nav-w)}}.slicer-world .scene-cafe{position:absolute;inset:0}.slicer-page>:not(.slicer-world){z-index:1;position:relative}.slicer-page .slicer-topbar h1{background:#fbf4e8;border:2px solid #4a3326;border-radius:14px 18px 12px 16px;flex:none;width:fit-content;margin-right:auto;padding:2px 16px;font-style:italic;color:#4a3326!important}.slicer-page :is(.lesson-shell-back,.slicer-stat){color:#4a3326;background:#fbf4e8;border:2px solid #4a3326}.slicer-page .game-menu-card{color:#4a3326;background:#fbf4e8f0;border:2.5px solid #4a3326;border-radius:26px 32px 24px 30px;max-width:980px;margin-inline:auto;padding:clamp(18px,3vw,34px);box-shadow:7px 8px #4a332638}.slicer-page .game-menu-card h2{color:#4a3326;font-style:italic}.slicer-page .game-menu-card h2:after{content:"";background:repeating-linear-gradient(90deg,#d4413f 0 12px,#fbf4e8 12px 18px);border-radius:3px;width:90px;height:6px;margin:6px auto 0;display:block}.slicer-page .btn-primary{color:#fff8ee;background:#d4413f;border:2px solid #4a3326;box-shadow:3px 4px #4a3326}.slicer-page .btn-primary:disabled{box-shadow:none;background:#d9bfae}.slicer-page .btn-secondary{color:#4a3326;background:#fbf4e8;border:2px solid #4a3326}.slicer-page .slicer-difficulty{color:#4a3326;background:#f9ede0;border:2px solid #d9bfae;border-radius:16px 20px 14px 18px}.slicer-page .slicer-difficulty.selected{background:#f7d9d6;border-color:#d4413f;box-shadow:2px 3px #4a3326}.slicer-page .game-pool-count{color:#6b5446}.slicer-fruit-spin{place-items:center;display:grid;position:absolute;inset:0}.slicer-fruit-spin>*{width:100%;height:100%}.slicer-tip{background:#fff7ea;border:2px dashed #c98a4e;border-radius:12px;margin:0 auto 8px;padding:8px 14px;font-size:14px;font-weight:700;display:inline-block}@media (height<=500px){.slicer-fullscreen{z-index:45;bottom:0}.slicer-fruit{width:104px;height:104px}.slicer-fruit-label{padding:2px 10px;font-size:18px}.slicer-hud-overlay{gap:6px;top:8px;left:8px;right:56px}.slicer-hud-item{flex-direction:row;align-items:baseline;gap:6px;padding:3px 10px}.slicer-hud-item strong{font-size:14px}.slicer-exit{width:38px;height:38px;top:8px;right:8px}.slicer-feedback{font-size:14px}}.slicer-exit{color:#4a3326;background:#fbf4e8;border:2px solid #4a3326;left:14px;right:auto;box-shadow:2px 2px #4a33268c}@media (hover:hover){.slicer-exit:hover{background:#fffaf0}}.slicer-hud-overlay{left:66px;right:14px}.slicer-hud-item{-webkit-backdrop-filter:none;backdrop-filter:none;background:#fbf4e8;border:2px solid #4a3326;border-radius:14px 18px 12px 16px;box-shadow:3px 3px #4a332680}.slicer-hud-item span{color:#8a6a55;letter-spacing:.08em;font-weight:800}.slicer-hud-item strong{font-family:var(--font-display);color:#4a3326;font-variant-numeric:lining-nums tabular-nums;font-size:19px;font-style:italic}.slicer-hud-lives strong{font-family:var(--font-body);color:#c8374b;letter-spacing:2px;font-style:normal}@media (width<=899px),(height<=500px){.slicer-exit{width:38px;height:38px;top:8px;left:8px;right:auto}.slicer-hud-overlay{top:8px;left:54px;right:8px}.slicer-hud-item strong{font-size:16px}}@media (height<=500px){.slicer-hud-item strong{font-size:14px}}@media (width<=560px),(width<=1000px) and (height<=500px) and (orientation:landscape){.slicer-page .game-menu-card>.lesson-step-actions:last-child{bottom:calc(14px + env(safe-area-inset-bottom,0px));z-index:3;flex-wrap:nowrap;position:sticky}.slicer-page .game-menu-card>.lesson-step-actions:last-child .btn{white-space:nowrap;padding-inline:16px}}@media (width<=560px){.slicer-page .game-menu-card>.lesson-step-actions:last-child{background:var(--surface);flex-wrap:wrap;align-self:stretch;gap:10px;padding-top:10px}.slicer-page .game-menu-card>.lesson-step-actions:last-child .btn{flex:1 1 0;min-width:0}.slicer-page .game-menu-card>.lesson-step-actions:last-child .btn-secondary{white-space:normal;padding:10px 8px;font-size:14.5px;line-height:1.2}.slicer-page .game-menu-card>.lesson-step-actions:last-child .btn-primary{flex-basis:100%;order:-1}}.slicer-exit{top:calc(14px + env(safe-area-inset-top,0px));right:calc(14px + env(safe-area-inset-right,0px))}.slicer-hud-overlay{top:calc(14px + env(safe-area-inset-top,0px));left:calc(14px + env(safe-area-inset-left,0px));right:calc(66px + env(safe-area-inset-right,0px))}@media (width<=899px),(height<=500px){.slicer-exit{top:calc(8px + env(safe-area-inset-top,0px));left:calc(8px + env(safe-area-inset-left,0px));right:auto}.slicer-hud-overlay{top:calc(8px + env(safe-area-inset-top,0px));left:calc(54px + env(safe-area-inset-left,0px));right:calc(8px + env(safe-area-inset-right,0px))}}.song-spinner{flex-direction:column;align-items:center;gap:10px;display:flex}.song-spinner-label{color:var(--ink-soft);text-transform:uppercase;letter-spacing:.05em;margin:0;font-size:13px;font-weight:700}.song-spinner-window{border-radius:var(--r-lg);background:var(--surface);min-width:140px;min-height:96px;box-shadow:var(--shadow-md);border:3px solid var(--line);place-items:center;padding:14px 26px;transition:border-color .25s,box-shadow .25s,transform .25s cubic-bezier(.34,1.56,.64,1);display:grid}.song-spinner-spinning{filter:blur(.4px)}.song-spinner-spinning .song-spin-value{animation:.12s linear infinite song-spin-jitter}.song-spinner-settled{border-color:var(--gold);box-shadow:var(--shadow-lg), 0 0 0 4px #c8992e2e;animation:.4s cubic-bezier(.34,1.56,.64,1) song-spin-land;transform:scale(1.05)}@keyframes song-spin-jitter{0%{transform:translateY(0)}50%{transform:translateY(-2px)}to{transform:translateY(0)}}@keyframes song-spin-land{0%{transform:scale(.92)}60%{transform:scale(1.08)}to{transform:scale(1.05)}}.song-spin-value{font-family:var(--font-display);color:var(--ink);text-align:center;white-space:nowrap;font-size:24px;font-weight:600}@media (width<=420px){.song-spinner-window{box-sizing:border-box;max-width:100%;padding:12px 16px}.song-spin-value{white-space:normal;font-size:21px;line-height:1.2}}@media (prefers-reduced-motion:reduce){.song-spinner-spinning .song-spin-value,.song-spinner-settled{animation:none}}.partition-page{--side-a:#9b7fe0;--side-a-dark:#5f42a8;--side-b:#4fbfb8;--side-b-dark:#23807a;width:100%;max-width:none}.partition-arena{background:var(--surface);border-radius:var(--r-xl);box-shadow:var(--shadow-md);text-align:center;flex-direction:column;align-items:center;gap:12px;padding:28px 22px;transition:box-shadow .4s;animation:.4s cubic-bezier(.22,.9,.3,1) both partition-arena-in;display:flex;position:relative;overflow:hidden}.partition-arena:before{content:"";pointer-events:none;background:radial-gradient(70% 60% at 50% 0%, color-mix(in srgb, var(--arena-accent,var(--gold)) 22%, transparent) 0%, transparent 70%);transition:background .45s;position:absolute;inset:0}.partition-arena>*{position:relative}.partition-arena[data-side=A]{--arena-accent:var(--side-a)}.partition-arena[data-side=B]{--arena-accent:var(--side-b)}.partition-arena[data-phase=pick]{--arena-accent:var(--gold)}.partition-arena[data-phase=drumroll]{--arena-accent:var(--orange)}.partition-arena[data-phase=reveal]{--arena-accent:var(--green)}@keyframes partition-arena-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}.partition-swap{width:100%;animation:.36s cubic-bezier(.22,.9,.3,1) both partition-swap-in}@keyframes partition-swap-in{0%{opacity:0;transform:translate(26px)scale(.98)}to{opacity:1;transform:none}}.partition-arena h2{margin:0;font-size:24px}.partition-eyebrow{letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);margin:0;font-size:12px;font-weight:700}.partition-sub{color:var(--ink-soft);margin:0 0 6px;font-weight:600}.partition-card{background:var(--bg-soft);border:2px solid var(--line);border-radius:var(--r-lg);flex-direction:column;gap:10px;width:100%;padding:16px 14px;display:flex;position:relative;overflow:visible}.partition-card[data-progression=A]{border-color:color-mix(in srgb, var(--side-a) 55%, var(--line))}.partition-card[data-progression=B]{border-color:color-mix(in srgb, var(--side-b) 55%, var(--line))}.partition-card[data-progression=A] .partition-card-label{color:var(--side-a-dark)}.partition-card[data-progression=B] .partition-card-label{color:var(--side-b-dark)}.partition-card-picked{border-color:var(--green);box-shadow:0 0 0 3px color-mix(in srgb, var(--green) 22%, transparent)}.partition-card-head{flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;display:flex}.partition-card-label{font-size:15px;font-weight:700}.partition-badge{border-radius:999px;padding:2px 10px;font-size:11.5px;font-weight:700}.partition-badge-pick{background:color-mix(in srgb, var(--green) 20%, var(--surface));color:var(--green-dark)}.partition-badge-crowd{background:color-mix(in srgb, var(--gold) 26%, var(--surface));color:var(--gold-dark)}.partition-chords{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.partition-chord{flex-direction:column;align-items:center;gap:4px;display:flex}.partition-chord-bar{color:var(--ink-soft);background:var(--surface);border-radius:999px;padding:1px 9px;font-size:11px;font-weight:700}@media (width<=520px){.partition-chords{grid-template-columns:repeat(2,minmax(0,1fr))}}.partition-pair{grid-template-columns:1fr 1fr;gap:14px;width:100%;display:grid}@media (width<=620px){.partition-pair{grid-template-columns:1fr}}.partition-card-compact .partition-chords{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.partition-chip{background:var(--surface);border:2px solid var(--line);border-radius:var(--r-md);font-family:var(--font-body);min-width:52px;padding:8px 12px;font-size:17px;font-weight:700}.partition-names{color:var(--ink-soft);margin:0;font-size:13px;font-weight:700}.partition-pick-btn{width:100%}.partition-drumroll-title{min-height:34px}.partition-dots i{font-style:normal;animation:.9s ease-in-out infinite partition-dot;display:inline-block}.partition-dots i:nth-child(2){animation-delay:.15s}.partition-dots i:nth-child(3){animation-delay:.3s}@keyframes partition-dot{0%,to{opacity:.35;transform:translateY(0)}50%{opacity:1;transform:translateY(-5px)}}.partition-card-shaking{animation:.18s linear infinite partition-shake}@keyframes partition-shake{0%{transform:translate(0)rotate(0)}25%{transform:translate(-1.5px,1px)rotate(-.4deg)}75%{transform:translate(1.5px,-1px)rotate(.4deg)}to{transform:translate(0)rotate(0)}}.partition-reveal-title{animation:.5s cubic-bezier(.2,1.4,.4,1) both partition-pop}@keyframes partition-pop{0%{opacity:0;transform:scale(.7)}to{opacity:1;transform:scale(1)}}.partition-result{align-items:center;gap:10px;display:flex}.partition-result-bar{background:var(--surface);border-radius:999px;flex:1;height:14px;overflow:hidden}.partition-result-fill{background:linear-gradient(90deg, color-mix(in srgb, var(--arena-accent,var(--green)) 50%, #fff), var(--green));transform-origin:0;border-radius:999px;height:100%;animation:.9s cubic-bezier(.2,.9,.3,1) both partition-fill}.partition-card[data-progression=A] .partition-result-fill{background:linear-gradient(90deg, color-mix(in srgb, var(--side-a) 45%, #fff), var(--side-a-dark))}.partition-card[data-progression=B] .partition-result-fill{background:linear-gradient(90deg, color-mix(in srgb, var(--side-b) 45%, #fff), var(--side-b-dark));animation-delay:.16s}@keyframes partition-fill{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.partition-result-pct{font-family:var(--font-body);text-align:right;min-width:52px;font-size:22px}.partition-result-unknown{text-align:center;opacity:.5;width:100%;font-size:28px}.partition-actions{flex-wrap:wrap;justify-content:center;gap:12px;margin-top:6px;display:flex}@media (prefers-reduced-motion:reduce){.partition-card-shaking,.partition-dots i,.partition-reveal-title,.partition-result-fill,.partition-arena,.partition-swap{animation:none}}.partition-outcome-winner{color:var(--green-dark)}.partition-outcome-loser{color:var(--orange-dark,var(--orange))}.partition-outcome-tie{color:var(--ink)}.partition-arena[data-phase=spin],.partition-arena[data-phase=theme],.partition-arena[data-phase=choose],.partition-arena[data-phase=predict]{--arena-accent:var(--gold)}.partition-spin-title{letter-spacing:.04em;margin:0}.partition-spin-value{font-family:var(--font-display,inherit);font-size:26px;font-weight:800}.partition-theme-big{font-family:var(--font-display,inherit);letter-spacing:.06em;text-transform:uppercase;color:var(--gold-dark);margin:6px 0 0;font-size:clamp(26px,5vw,40px);font-weight:800;animation:.6s cubic-bezier(.2,1.4,.4,1) both partition-theme-pop}.partition-theme-emoji{margin:0;font-size:44px;animation:.6s cubic-bezier(.2,1.4,.4,1) .15s both partition-theme-pop}@keyframes partition-theme-pop{0%{opacity:0;transform:scale(.6)}to{opacity:1;transform:scale(1)}}.partition-theme-chip{color:var(--gold-dark);background:color-mix(in srgb, var(--gold) 16%, var(--surface));border:1px solid color-mix(in srgb, var(--gold-dark) 40%, transparent);border-radius:999px;margin:0;padding:4px 12px;font-size:13px;font-weight:800}.partition-streak-stat{white-space:nowrap}.partition-chord{transition:transform .2s,opacity .2s}.partition-chord.is-current{transform:translateY(-4px)scale(1.06)}.partition-chord.is-current .partition-chord-bar{background:var(--arena-accent,var(--gold));color:#fff}.partition-chord.is-heard{opacity:.55}.partition-chord.is-heard .partition-chord-bar{background:var(--green);color:#fff}.partition-arena h2 em{color:var(--gold-dark);font-style:normal}.partition-big-pair{grid-template-columns:1fr 1fr;gap:14px;width:100%;display:grid}.partition-big-pair-slim .partition-big-card{min-height:130px}.partition-big-card{--side:var(--side-a);border-radius:var(--r-lg);background:var(--surface);border:2px solid color-mix(in srgb, var(--side) 55%, transparent);color:var(--ink);font:inherit;cursor:pointer;flex-direction:column;align-items:center;gap:10px;padding:16px 10px 14px;transition:transform .15s,box-shadow .15s,border-color .15s;display:flex}.partition-big-card.partition-side-B{--side:var(--side-b)}@media (hover:hover){.partition-big-card:hover{border-color:var(--side);box-shadow:0 6px 22px color-mix(in srgb, var(--side) 30%, transparent);transform:translateY(-3px)}}.partition-big-letter{color:#fff;background:var(--side);border-radius:50%;place-items:center;width:46px;height:46px;font-size:24px;font-weight:900;display:grid}.partition-big-symbols{color:var(--ink-soft);font-size:14px;font-weight:800}.partition-big-card .partition-chords{flex-wrap:wrap;justify-content:center;gap:4px}.partition-bars{gap:10px;width:100%;max-width:440px;display:grid}.partition-bar-row{--side:var(--side-a);grid-template-columns:32px 1fr 52px;align-items:center;gap:10px;display:grid}.partition-bar-row.partition-side-B{--side:var(--side-b)}.partition-bar-letter{color:var(--side);font-size:18px;font-weight:900}.partition-bar{background:var(--bg-soft);border-radius:999px;height:16px;overflow:hidden}.partition-bar-fill{height:100%;width:var(--pct);background:var(--side);border-radius:999px;animation:1.1s cubic-bezier(.2,.9,.3,1) both partition-bar-grow;display:block}@keyframes partition-bar-grow{0%{width:0}}.partition-bar-pct{text-align:right;font-size:18px}.partition-bar-row.is-winner .partition-bar-pct{color:var(--side)}.partition-votes-note{color:var(--ink-faint);margin:0;font-size:12px;font-weight:700}.partition-predict-yes{color:var(--green-dark,var(--green));animation:.5s cubic-bezier(.2,1.4,.4,1) both partition-theme-pop}.partition-predict-no{color:var(--ink-soft)}.partition-offline{border-radius:var(--r-md);background:var(--bg-soft);border:1px dashed var(--line);max-width:460px;padding:14px 16px}.partition-offline h2{margin:0 0 6px;font-size:18px}.partition-offline p{color:var(--ink-soft);margin:0;font-size:13px;font-weight:600;line-height:1.5}.partition-favorite-q{margin:8px 0;font-size:17px;font-weight:800}.partition-done{justify-items:center;gap:6px;display:grid}.partition-streak-line{margin:4px 0 0;font-weight:700}.partition-earned{color:var(--gold-dark);margin:0;font-weight:800}@media (width<=560px){.partition-big-pair{grid-template-columns:1fr}}.app-main:has(.partition-page){background-color:#f3ead3!important;background-image:radial-gradient(120% 80% at 50% 0,#fbf5e4 0%,#f3ead3 60%,#e9ddc0 100%)!important;background-repeat:no-repeat!important;background-size:100% 100%!important}.app-main:has(.partition-page) :is(.night-stars,.starlight-sky,.blossom-sky,.meadow-sky,.cyber-sky,.blackcat-sky,.blackcat-peek,.snow-sky,.snow-fall,.glass-sky,.rain-drops){display:none}.partition-page{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--ink:#1d1817;--ink-soft:#5a4d42;--ink-faint:#8a7a68;--surface:#fbf6e8;--bg-soft:#efe4cb;--line:#d8c9a8;--gold:#c9a23a;--gold-dark:#9a7a22;--gold-light:#efd98a;--side-a:#d8432c;--side-a-dark:#9e2a18;--side-b:#3c3431;--side-b-dark:#1d1817;--green:#6f8a3a;--green-dark:#4f6a22;--orange:#d8432c;color:var(--ink)}.partition-page .slicer-topbar h1{font-family:var(--font-display,inherit);letter-spacing:.01em;color:var(--ink)!important}.partition-page :is(.game-menu-card,.partition-arena){background:var(--surface);border:2px solid var(--ink);border-radius:14px 18px 12px 16px;box-shadow:5px 6px #1d1817d9}.partition-page .partition-arena:before{opacity:.35}.partition-page .btn-primary{background:var(--side-a);color:#fbf6e8;border:2px solid var(--ink);box-shadow:3px 3px 0 var(--ink)}@media (hover:hover){.partition-page .btn-primary:hover{background:#c23a24}}.partition-page .btn-secondary{background:var(--surface);color:var(--ink);border:2px solid var(--ink);box-shadow:3px 3px 0 var(--ink)}.partition-page .partition-big-card{border:2px solid var(--ink);box-shadow:4px 4px 0 var(--ink)}@media (hover:hover){.partition-page .partition-big-card:hover{box-shadow:6px 7px 0 var(--ink)}}.partition-page .partition-theme-big{color:var(--side-a)}.partition-page .slicer-stat,.partition-page .lesson-shell-back{background:var(--surface);color:var(--ink);border:2px solid var(--ink)}.partition-page :is(.chord-category-options button,.chord-category-chip).selected{border-color:var(--ink);background:var(--side-a);color:#fbf6e8;box-shadow:2px 2px 0 var(--ink)}.partition-play-note{border:2px dashed var(--ink);background:var(--bg-soft);border-radius:12px;max-width:480px;margin:0;padding:8px 14px;font-size:13.5px;font-weight:700}.partition-page .partition-arena{justify-content:center;min-height:calc(100dvh - 170px);padding:36px clamp(18px,4vw,56px)}.partition-page .partition-big-pair{gap:clamp(16px,3vw,40px)}.partition-page .partition-big-card{gap:16px;padding:22px clamp(14px,2.5vw,34px) 20px}.partition-page .partition-big-card .partition-chords{grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(10px,2vw,28px);width:100%;display:grid}.partition-page .partition-big-card .partition-chord{gap:8px}@media (width<=760px){.partition-page .partition-big-card .partition-chords{grid-template-columns:repeat(2,minmax(0,1fr))}}.partition-page .partition-arena[data-phase=choose] .partition-big-pair{grid-template-columns:1fr;max-width:1100px}.partition-page .partition-arena[data-phase=choose] .partition-big-card{text-align:left;grid-template-rows:auto 1fr;grid-template-columns:auto 1fr;align-items:center;column-gap:clamp(18px,3vw,40px);display:grid}.partition-page .partition-arena[data-phase=choose] .partition-big-symbols{justify-self:start}.partition-page .partition-arena[data-phase=choose] .partition-big-card .partition-chords{justify-items:center}.partition-page .partition-big-card .partition-chords{flex-wrap:wrap;justify-content:center;align-items:flex-start;gap:clamp(10px,1.6vw,22px);width:auto;display:flex}.partition-page .partition-big-card .partition-chord .chord-diagram-sm svg{width:100px;height:124px}.partition-page .partition-arena[data-phase=choose] .partition-big-pair{width:100%;max-width:860px;margin-inline:auto}.partition-page .partition-arena[data-phase=choose] .partition-big-card .partition-chords{justify-self:start}@media (width<=760px){.partition-page .partition-big-card .partition-chords{grid-template-columns:repeat(2,auto);justify-content:center;display:grid}}.partition-page .partition-arena[data-phase=choose] .partition-big-pair{justify-items:center}.partition-page .partition-arena[data-phase=choose] .partition-big-card{grid-template-rows:auto auto;row-gap:10px;width:fit-content;max-width:100%;padding-inline:clamp(18px,3vw,40px)}@media (width<=560px){.partition-page .partition-arena[data-phase=choose] .partition-big-card{text-align:center;grid-template-columns:1fr;justify-items:center;width:100%}.partition-page .partition-arena[data-phase=choose] .partition-big-letter{grid-row:auto}.partition-page .partition-arena[data-phase=choose] :is(.partition-big-symbols,.partition-big-card .partition-chords){justify-self:center}.partition-page .partition-big-card .partition-chords{row-gap:6px}}.partition-page .partition-arena[data-phase=choose] .partition-big-pair{grid-template-columns:repeat(2,minmax(0,1fr));justify-items:stretch;max-width:1180px}.partition-page .partition-arena[data-phase=choose] .partition-big-card{text-align:center;flex-direction:column;align-items:center;row-gap:10px;width:auto;max-width:none;padding-inline:clamp(12px,1.6vw,22px);display:flex}.partition-page .partition-arena[data-phase=choose] .partition-big-letter{grid-row:auto}.partition-page .partition-arena[data-phase=choose] :is(.partition-big-symbols,.partition-big-card .partition-chords){justify-self:center}.partition-page .partition-arena[data-phase=choose] .partition-big-card .partition-chords{grid-template-columns:repeat(4,auto);justify-content:center;gap:clamp(6px,1vw,14px);display:grid}.partition-page .partition-arena[data-phase=choose] .partition-big-card .partition-chord .chord-diagram-sm svg{width:clamp(70px,6.4vw,92px);height:auto}@media (width<=1180px){.partition-page .partition-arena[data-phase=choose] .partition-big-card .partition-chords{grid-template-columns:repeat(2,auto)}}@media (width<=700px){.partition-page .partition-arena[data-phase=choose] .partition-big-pair{grid-template-columns:1fr}.partition-page .partition-arena[data-phase] .partition-big-card{padding-inline:10px}.partition-page .partition-arena[data-phase] .partition-big-card .partition-chords{grid-template-columns:repeat(4,minmax(0,1fr));justify-content:stretch;gap:6px;width:100%;display:grid}.partition-page .partition-arena[data-phase] .partition-big-card .partition-chord{gap:5px;min-width:0}.partition-page .partition-arena[data-phase] .partition-big-card .partition-chord .chord-diagram{background:#fffdf9;border:2px solid #281e1ed9;border-radius:10px;width:100%;margin:0;padding:6px 3px 4px}.partition-page .partition-arena[data-phase] .partition-big-card .partition-chord .chord-diagram-sm svg{width:100%;height:auto}.partition-page .partition-arena[data-phase] .partition-big-card .chord-diagram-string{stroke:#8f8a86}.partition-page .partition-arena[data-phase] .partition-big-card .chord-diagram-fretline{stroke:#bdb7b2}.partition-page .partition-arena[data-phase] .partition-big-card .chord-diagram-nut{fill:#241c1c}.partition-page .partition-arena[data-phase] .partition-big-card .chord-diagram-caption{color:#241c1c;font-size:12px}}@media (width<=420px){.page.partition-page{padding-inline:12px}.partition-page .partition-arena{padding-inline:10px}.partition-page .partition-arena[data-phase] .partition-big-card .partition-chords{gap:4px}.partition-page .partition-arena[data-phase] .partition-big-card .partition-chord .chord-diagram{padding-inline:2px}}.partition-votebox{width:min(230px,62vw);margin:4px auto -6px}.partition-votebox svg{width:100%;height:auto;display:block;overflow:visible}.partition-votebox-shadow{fill:#0000002e;animation:partition-box-shadow var(--count-ms,2.6s) linear both}.partition-votebox-body{transform-box:fill-box;transform-origin:50% 100%;animation:partition-box-rumble var(--count-ms,2.6s) linear both}.partition-votebox-lid{fill:#fff3dc;stroke:var(--ink);stroke-width:3px;stroke-linejoin:round}.partition-votebox-slot{fill:var(--ink)}.partition-votebox-side{fill:#ecd9b8;stroke:var(--ink);stroke-width:3px;stroke-linejoin:round}.partition-votebox-front{fill:#fffaf0;stroke:var(--ink);stroke-width:3px}.partition-votebox-band{fill:var(--side-a);stroke:var(--ink);stroke-width:2.5px}.partition-votebox-band-text{font:900 11px var(--font-body);letter-spacing:.3em;fill:#fff}.partition-votebox-q{font:700 64px var(--font-display);fill:var(--side-b-dark);stroke:var(--ink);stroke-width:2px;paint-order:stroke}.partition-votebox-shine{stroke:#fff;stroke-width:5px;stroke-linecap:round;opacity:.8}.partition-slip{transform-box:fill-box;transform-origin:50%;animation:1.1s cubic-bezier(.5,0,.9,.6) infinite both partition-slip-in}.partition-slip rect{fill:#fff;stroke:var(--ink);stroke-width:2.2px}.partition-slip path{fill:none;stroke-width:2.4px;stroke-linecap:round;stroke-linejoin:round}.partition-slip-A path{stroke:var(--side-a-dark)}.partition-slip-B path{stroke:var(--side-b-dark)}.partition-slip-A rect{fill:color-mix(in srgb, var(--side-a) 22%, #fff)}.partition-slip-B rect{fill:color-mix(in srgb, var(--side-b) 22%, #fff)}@keyframes partition-slip-in{0%{transform:translate(var(--x), -118px) rotate(var(--r));opacity:0}15%{opacity:1}75%{opacity:1;transform:translate(6px,-40px)rotate(0)}to{opacity:0;transform:translate(6px,-30px)rotate(0)scale(.6)}}.partition-votebox-pop{font:700 22px var(--font-display);fill:var(--side-a-dark);opacity:0;animation:1.2s ease-out infinite partition-pop-q}@keyframes partition-pop-q{0%{opacity:0;transform:translateY(6px)scale(.6)}30%{opacity:1;transform:translateY(0)scale(1.1)}to{opacity:0;transform:translateY(-10px)scale(.9)}}.partition-votebox-pop{transform-box:fill-box;transform-origin:50%}@keyframes partition-box-rumble{0%{transform:rotate(0)}6%{transform:rotate(-2deg)}12%{transform:rotate(2deg)}18%{transform:rotate(-2deg)}24%{transform:rotate(2.5deg)}30%{transform:rotate(-3deg)}35%{transform:rotate(3deg)}40%{transform:rotate(-3.5deg)}45%{transform:rotate(4deg)translateY(-1px)}50%{transform:rotate(-4.5deg)}54%{transform:rotate(5deg)translateY(-2px)}58%{transform:rotate(-5.5deg)}62%{transform:rotate(6deg)translateY(-3px)}66%{transform:rotate(-6.5deg)}70%{transform:rotate(7deg)translateY(-4px)}73%{transform:rotate(-7deg)}76%{transform:rotate(7.5deg)translateY(-5px)}79%{transform:rotate(-8deg)}82%{transform:rotate(8deg)translateY(-6px)}85%{transform:rotate(-8.5deg)}88%{transform:rotate(8.5deg)translateY(-7px)}91%{transform:rotate(-9deg)}94%{transform:rotate(9deg)translateY(-8px)}97%{transform:rotate(0)scale(1.04,.94)}to{transform:rotate(0)scale(1.1)}}@keyframes partition-box-shadow{0%,45%{transform:scaleX(1)}90%{transform:scaleX(.85)}to{transform:scaleX(1.05)}}.partition-votebox-shadow{transform-box:fill-box;transform-origin:50%}.partition-results{gap:12px;width:100%;max-width:560px;display:grid}.partition-result-row{--side:var(--side-a);--side-dark:var(--side-a-dark);text-align:left;background:color-mix(in srgb, var(--side) 10%, var(--surface));border:2px solid color-mix(in srgb, var(--side) 45%, var(--line));animation:.45s cubic-bezier(.3,1.3,.5,1) both partition-result-in;animation-delay:calc(var(--row,0) * .12s);border-radius:16px;gap:8px;padding:12px 14px;display:grid}.partition-result-row.partition-side-B{--side:var(--side-b);--side-dark:var(--side-b-dark)}.partition-result-row.is-winner{border-color:var(--side-dark);box-shadow:3px 3px 0 var(--side-dark)}@keyframes partition-result-in{0%{opacity:0;transform:scale(.92)translateY(8px)}}.partition-result-head{flex-wrap:wrap;align-items:center;gap:6px 10px;display:flex}.partition-result-head .partition-bar-letter{background:var(--side);color:#fff;border-radius:50%;place-items:center;width:28px;height:28px;font-size:15px;display:grid}.partition-result-chords{color:var(--ink);letter-spacing:.01em;font-size:17px;font-weight:800}.partition-result-tag{background:var(--side-dark);color:#fff;letter-spacing:.04em;text-transform:uppercase;border-radius:999px;padding:2px 10px;font-size:11.5px;font-weight:800}.partition-result-crown{margin-left:auto;font-size:18px}.partition-result-body{grid-template-columns:auto 1fr;align-items:center;gap:12px;display:grid}.partition-result-charts{gap:4px;display:flex}.partition-result-charts .chord-diagram{background:#fffdf9;border:1.5px solid #281e1eb3;border-radius:7px;padding:3px 2px 1px}.partition-result-charts .chord-diagram-sm svg{width:40px;height:auto}.partition-result-charts .chord-diagram-string{stroke:#8f8a86}.partition-result-charts .chord-diagram-fretline{stroke:#bdb7b2}.partition-result-charts .chord-diagram-nut{fill:#241c1c}.partition-result-meter{grid-template-columns:1fr 52px;align-items:center;gap:10px;display:grid}.partition-result-row .partition-bar-fill{background:linear-gradient(90deg, color-mix(in srgb, var(--side) 55%, #fff), var(--side-dark))}.partition-result-row.is-winner .partition-bar-pct{color:var(--side-dark)}@media (width<=520px){.partition-result-body{grid-template-columns:1fr;gap:8px}.partition-result-charts{justify-content:flex-start}.partition-result-charts .chord-diagram-sm svg{width:44px}.partition-result-chords{font-size:15.5px}}@media (prefers-reduced-motion:reduce){.partition-votebox-body,.partition-votebox-shadow,.partition-slip,.partition-votebox-pop,.partition-result-row{animation:none}.partition-slip{opacity:0}}.celebration{pointer-events:none;z-index:0;position:absolute;inset:0;overflow:hidden}.celebration-particle{opacity:0;border-radius:3px;animation-name:celebration-fall;animation-timing-function:cubic-bezier(.22,1,.36,1);animation-fill-mode:forwards;position:absolute;top:-20px}@keyframes celebration-fall{0%{opacity:1;transform:translate(0)rotate(0)}to{transform:translate(var(--drift), 420px) rotate(var(--rotate));opacity:0}}.envelope{width:100%;max-width:360px;margin:0 auto}.envelope svg{width:100%;height:auto;display:block;overflow:visible}.envelope-sealed .envelope-body,.envelope-sealed .envelope-strip{animation:2.4s ease-in-out infinite envelope-bob}.envelope-still .envelope-body,.envelope-still .envelope-strip{animation:none}@keyframes envelope-bob{50%{transform:translateY(-4px)}}.envelope-packing .envelope-letter{animation:1.7s cubic-bezier(.45,0,.35,1) .3s both envelope-case-in}@keyframes envelope-case-in{0%{transform:translateY(-165px)}84%{transform:translateY(4px)}to{transform:translateY(0)}}.envelope-packing .envelope-emboss{animation:.4s 1.9s both envelope-fade-in}@keyframes envelope-fade-in{0%{opacity:0}}.envelope-flap,.envelope-flap-open{transform-origin:120px 4px}.envelope-flap-closing{animation:.5s cubic-bezier(.3,1.2,.5,1) both envelope-flap-close}@keyframes envelope-flap-close{0%{transform:scaleY(.02)}}.envelope-stamp{transform-origin:120px 124px;animation:.35s cubic-bezier(.3,1.5,.5,1) both envelope-stamp-in}.envelope:has(.envelope-flap-closing) .envelope-stamp{animation-delay:.45s}@keyframes envelope-stamp-in{0%{opacity:0;transform:scale(1.5)}}.envelope-opened .envelope-stamp{animation:.3s ease-in forwards envelope-stamp-off}@keyframes envelope-stamp-off{to{opacity:0;transform:scale(.6)}}.envelope-opened .envelope-flap{animation:.3s ease-in .2s forwards envelope-flap-lift}@keyframes envelope-flap-lift{to{transform:scaleY(.02)}}.envelope-opened .envelope-flap-open{animation:.35s ease-out .45s both envelope-flap-up}@keyframes envelope-flap-up{0%{transform:scaleY(.02)}}.envelope-opened .envelope-letter{animation:.9s cubic-bezier(.3,1.1,.5,1) .8s forwards envelope-case-out}@keyframes envelope-case-out{to{transform:translateY(-240px)}}.envelope-opened .envelope-emboss,.envelope-torn .envelope-emboss{opacity:0;transition:opacity .3s .6s}.envelope-strip{transform-box:fill-box;transform-origin:100%;animation:.55s cubic-bezier(.5,0,.8,.4) forwards envelope-strip-off}@keyframes envelope-strip-off{to{opacity:0;transform:translate(40px,-90px)rotate(18deg)}}.envelope-letter{transition:transform .9s cubic-bezier(.3,1.2,.5,1) .45s}.envelope-torn .envelope-letter{transform:translateY(-240px)}@media (prefers-reduced-motion:reduce){.envelope-sealed .envelope-body,.envelope-sealed .envelope-strip,.envelope-packing .envelope-letter,.envelope-packing .envelope-emboss,.envelope-flap-closing,.envelope-stamp,.envelope-opened .envelope-flap-open{animation:none}.envelope-opened .envelope-stamp,.envelope-opened .envelope-flap,.envelope-opened .envelope-letter{animation-duration:10ms;animation-delay:0s}.envelope-letter{transition:none}.envelope-strip{animation-duration:10ms}}.cd-case-disc{transition:transform .9s cubic-bezier(.3,1.25,.5,1)}.cd-case-disc.is-out{transform:translate(118px)}.cd-case-art{width:100%;height:auto;display:block;overflow:visible}.disc-face{transform-box:view-box;transform-origin:0 0}.disc-spinning{animation:2.4s linear infinite disc-spin}@keyframes disc-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.cd-case-disc{transition:none}.disc-spinning{animation:none}}.packager{--pk-ink:#5b2f2a;--pk-text:#3b2a26;--pk-soft:#7a6258;--pk-rose:#e27a9c;--pk-blush:#fde6ee;box-sizing:border-box;text-align:center;width:100%;max-width:720px;color:var(--pk-text);border:2.5px solid var(--pk-ink);box-shadow:4px 4px 0 var(--pk-ink);background:#fff8ef;border-radius:26px;flex-direction:column;align-items:center;gap:12px;margin:18px auto;padding:22px 20px 20px;display:flex}.packager-eyebrow{letter-spacing:.16em;text-transform:uppercase;color:var(--pk-rose);margin:0;font-size:11.5px;font-weight:800}.packager h2{font-family:var(--font-display);color:var(--pk-text);margin:0;font-size:26px}.packager-steps{flex-wrap:wrap;justify-content:center;gap:6px;margin:2px 0 0;padding:0;list-style:none;display:flex}.packager-steps li{color:#a08a7e;background:#fff;border:2px solid #e7d9cb;border-radius:999px;align-items:center;gap:6px;padding:4px 12px 4px 5px;font-size:12.5px;font-weight:800;display:inline-flex}.packager-steps li span{background:#efe4d8;border-radius:50%;place-items:center;width:20px;height:20px;font-size:11px;display:grid}.packager-steps li.is-now{border-color:var(--pk-ink);background:var(--pk-blush);color:var(--pk-text)}.packager-steps li.is-now span{background:var(--pk-rose);color:#fff}.packager-steps li.is-done{color:#4f7a3e;border-color:#bcd8a8}.packager-steps li.is-done span{color:#2f5a22;background:#d5eac6}.packager-stage{place-items:center;width:100%;min-height:240px;padding:4px 0;display:grid}.packager-disc{width:min(240px,62vw);animation:.5s cubic-bezier(.3,1.4,.5,1) both packager-pop}.packager-disc svg{width:100%;height:auto;display:block}.packager-case{width:min(280px,72vw);animation:.5s cubic-bezier(.3,1.4,.5,1) both packager-pop}.packager-envelope{width:min(300px,74vw)}.packager-stage-envelope .packager-envelope{width:min(250px,62vw)}.packager-replay{cursor:pointer;background:0 0;border:0;padding:0;display:block}.packager-replay:focus-visible{outline:3px solid var(--pk-rose);outline-offset:4px;border-radius:12px}.packager-stage-done .packager-envelope{animation:.5s cubic-bezier(.3,1.4,.5,1) both packager-pop}@keyframes packager-pop{0%{opacity:0;transform:scale(.86)rotate(-6deg)}}.packager-hint{max-width:460px;color:var(--pk-soft);margin:0;font-size:14px;font-weight:600;line-height:1.45}.packager-options{grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:10px;width:100%;display:grid}.packager-options-stamp{grid-template-columns:repeat(auto-fill,minmax(78px,1fr))}.packager-option{min-width:0;font:inherit;color:#6b5249;cursor:pointer;background:#fff;border:2px solid #eadfd2;border-radius:16px;flex-direction:column;justify-content:flex-end;align-items:center;gap:4px;padding:8px 6px 6px;font-size:11.5px;font-weight:800;transition:transform .12s,border-color .12s;display:flex}.packager-option>svg{width:100%;max-width:88px;height:auto;display:block}.packager-option .envelope{width:100%;max-width:70px}.packager-option span{line-height:1.2}@media (hover:hover){.packager-option:hover{transform:translateY(-2px)}}.packager-option.is-on{border-color:var(--pk-ink);background:var(--pk-blush);color:var(--pk-text);box-shadow:2px 2px 0 var(--pk-ink)}.packager-option:focus-visible{outline:3px solid var(--pk-rose);outline-offset:2px}.packager-nav,.packager-finish{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:4px;display:flex}.packager .btn.btn-primary{background:var(--pk-rose);color:#fff;border:2.5px solid var(--pk-ink);box-shadow:0 4px 0 var(--pk-ink)}.packager .btn.btn-secondary{color:var(--pk-text);border:2px solid var(--pk-ink);box-shadow:none;background:#fff}.packager .btn.btn-secondary:disabled{opacity:1;color:#3f6a2f;background:#eaf5e2;border-color:#9fc488}.packager-send{justify-items:center;gap:8px;width:100%;max-width:480px;display:grid}.packager-send p{color:var(--pk-soft);margin:0;font-size:13.5px;font-weight:600}.packager-link{box-sizing:border-box;width:100%;color:var(--pk-text);font:inherit;background:#fff;border:2px solid #e2d4c6;border-radius:12px;padding:10px 12px;font-size:13px}.packager-change{color:#a0667b;font:inherit;cursor:pointer;background:0 0;border:0;margin-top:2px;padding:6px;font-size:13px;font-weight:800;text-decoration:underline}.packager-ask{background:#fffaf7;border:2px dashed #e2c9d2;border-radius:16px;justify-items:center;gap:8px;padding:12px 16px;display:grid}.packager-ask p{color:var(--pk-text);margin:0;font-size:15px;font-weight:800}.packager-ask-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;display:flex}.packager-ask-actions .packager-change{margin:0}.packager-saved{color:#3f6a2f;background:#eaf5e2;border-radius:999px;margin:0;padding:8px 14px;font-size:14px;font-weight:800}@media (width<=560px){.packager{border-radius:22px;padding:18px 12px 16px}.packager h2{font-size:22px}.packager-steps li{padding:3px 9px 3px 4px;font-size:11.5px}.packager-stage{min-height:0}.packager-options,.packager-options-stamp{grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.packager-option{border-radius:13px;padding:6px 4px 5px;font-size:10px}}@media (prefers-reduced-motion:reduce){.packager-disc,.packager-case,.packager-stage-done .packager-envelope{animation:none}.packager-option{transition:none}}.share-song-backdrop{z-index:100;background:#0a0d1a99;place-items:center;padding:16px;animation:.2s both share-song-fade-in;display:grid;position:fixed;inset:0}@keyframes share-song-fade-in{0%{opacity:0}to{opacity:1}}.share-song-modal{overscroll-behavior:contain;width:100%;max-width:720px;max-height:calc(100dvh - 32px);position:relative;overflow-y:auto}.share-song-modal .packager{margin:0}.share-song-close{z-index:2;color:#5b2f2a;cursor:pointer;background:#fff;border:2px solid #5b2f2a;border-radius:50%;place-items:center;width:34px;height:34px;font-size:14px;display:grid;position:absolute;top:12px;right:12px}.strum-pattern{flex-wrap:wrap;justify-content:center;align-items:center;gap:14px;display:flex}.strum-arrow{background:var(--bg-soft);width:76px;height:76px;color:var(--ink-soft);border-radius:22px;justify-content:center;align-items:center;font-size:32px;font-weight:700;transition:transform .18s,background .18s,color .18s,box-shadow .18s;display:inline-flex}.strum-pattern-sm .strum-arrow{border-radius:13px;width:46px;height:46px}.strum-arrow svg{width:60%;height:60%;display:block}.strum-arrow-down{color:var(--blue-dark)}.strum-arrow-up{color:var(--pink-dark)}.strum-arrow-muted{color:var(--ink-soft)}.strum-arrow-active{box-shadow:var(--shadow-md);background:#fff;transform:scale(1.18)translateY(-4px)}.strum-arrow-active.strum-arrow-down{background:#e7f2ff}.strum-arrow-active.strum-arrow-up{background:#ffe8f0}.songwriter-page{--step-accent:var(--gold);--step-accent-dark:var(--gold-dark);--step-name:"Shuffling"}.songwriter-page[data-step=menu]{--step-name:"Song Shuffler"}.songwriter-page[data-step=spin-vibe],.songwriter-page[data-step=spin-setting],.songwriter-page[data-step=challenge]{--step-accent:#e8c15a;--step-accent-dark:#a97f16;--step-name:"Your challenge"}.songwriter-page[data-step=sound]{--step-accent:#a98fe0;--step-accent-dark:#6b4fb5;--step-name:"Your sound"}.songwriter-page[data-step=style],.songwriter-page[data-step=pattern-spin],.songwriter-page[data-step=teach]{--step-accent:#f09070;--step-accent-dark:#c2573a;--step-name:"How you play it"}.songwriter-page[data-step=twist-spin],.songwriter-page[data-step=twist]{--step-accent:#e88fc0;--step-accent-dark:#b04f86;--step-name:"Song twist"}.songwriter-page[data-step=lyrics]{--step-accent:#6fa8e8;--step-accent-dark:#3a6fb0;--step-name:"Lyrics"}.songwriter-page[data-step=perform]{--step-accent:#5fd0c0;--step-accent-dark:#25857a;--step-name:"Play it"}.songwriter-page[data-step=done],.songwriter-page[data-step=book]{--step-accent:#6fc98a;--step-accent-dark:#2f8a52;--step-name:"Your song"}.songwriter-page:before{content:"";z-index:0;pointer-events:none;background:radial-gradient(60% 70% at 50% 18%, color-mix(in srgb, var(--step-accent) 34%, transparent) 0%, transparent 72%);width:100vw;height:520px;margin-left:-50vw;transition:background .5s;position:absolute;top:0;left:50%}.songwriter-page>*{z-index:1;position:relative}.songwriter-card{border-top:3px solid var(--step-accent-dark);gap:18px;min-height:380px;animation:.42s cubic-bezier(.22,.9,.3,1) both songwriter-card-in;position:relative;overflow:hidden}@keyframes songwriter-card-in{0%{opacity:0;transform:translateY(16px)scale(.985)}to{opacity:1;transform:none}}.songwriter-card:before{content:var(--step-name);border:1px solid color-mix(in srgb, var(--step-accent-dark) 45%, transparent);background:color-mix(in srgb, var(--step-accent) 16%, var(--surface));color:var(--step-accent-dark);letter-spacing:.1em;text-transform:uppercase;border-radius:999px;padding:3px 12px;font-size:10px;font-weight:800;position:absolute;top:14px;left:50%;transform:translate(-50%)}.songwriter-card>:first-child{margin-top:22px}@media (prefers-reduced-motion:reduce){.songwriter-card{animation:none}}.songwriter-pool-count{color:var(--ink-soft);font-size:12.5px;font-weight:700;margin:4px 0 0!important}.song-chord-row{flex-wrap:wrap;justify-content:center;align-items:center;gap:14px;display:flex}.song-chord-row:before{content:none}.song-chord-row-final{gap:10px}.song-chord-slot{background:var(--surface);border-radius:var(--r-md);box-shadow:var(--shadow-sm);flex-direction:column;align-items:center;gap:6px;padding:10px;display:flex}.song-chord-slot-symbol{font-family:var(--font-display);color:var(--ink);font-size:16px;font-weight:600}.song-chord-slot-empty{background:var(--bg-soft);border-radius:var(--r-md);border:2px dashed var(--line);width:90px;height:110px;font-family:var(--font-display);color:var(--ink-faint);place-items:center;font-size:28px;display:grid}.song-spin-chord{flex-direction:column;align-items:center;gap:6px;display:flex}.song-spin-pattern{letter-spacing:.08em;font-size:30px}.song-summary-strip{flex-wrap:wrap;justify-content:center;gap:10px;width:100%;display:flex}.song-summary-chip{background:var(--bg-soft);border-radius:var(--r-md);flex-direction:column;align-items:center;gap:2px;padding:8px 16px;display:flex}.song-summary-chip-label{text-transform:uppercase;letter-spacing:.06em;color:var(--ink-faint);font-size:10px;font-weight:700}.song-summary-chip-value{font-family:var(--font-display);color:var(--ink);font-size:15px;font-weight:600}.songwriter-reveal{flex-direction:column;gap:20px;display:flex}.songwriter-final-card{text-align:center;align-items:stretch}.songwriter-final-card h2{text-align:center}.songwriter-congrats-badge{margin-bottom:4px;font-size:40px;line-height:1}.songwriter-congrats-sub{margin:0 0 6px}.song-final-grid{flex-direction:column;align-items:center;gap:22px;display:flex}.song-final-item{flex-direction:column;align-items:center;gap:8px;display:flex}.song-final-label{text-transform:uppercase;letter-spacing:.06em;color:var(--ink-faint);font-size:11px;font-weight:700}.song-final-item strong{font-family:var(--font-display);color:var(--ink);font-size:22px}.songwriter-regenerate-row{flex-wrap:wrap;justify-content:center;gap:8px;margin-top:8px;display:flex}.songwriter-regenerate-row .btn{padding:9px 14px;font-size:12.5px}.songwriter-lyrics-card{align-items:stretch}.songwriter-lyrics-box{border:2px solid var(--line);border-radius:var(--r-md);width:100%;font-family:var(--font-body);color:var(--ink);background:var(--surface);resize:vertical;padding:16px;font-size:15px;line-height:1.6}.songwriter-lyrics-box:focus{border-color:var(--gold);outline:none}@media (width<=560px){.song-chord-row{gap:8px}.song-chord-slot-empty{width:64px;height:84px;font-size:20px}}.songwriter-card-wide{max-width:860px}.song-step-eyebrow{letter-spacing:.1em;text-transform:uppercase;color:var(--gold-dark);margin:0;font-size:12px;font-weight:800}.song-setup-label{color:var(--ink);margin:14px 0 6px;font-size:14px;font-weight:800}.song-challenge-chip{color:var(--gold-dark);background:color-mix(in srgb, var(--gold) 14%, var(--surface));border:1px solid color-mix(in srgb, var(--gold-dark) 35%, transparent);border-radius:999px;align-self:center;margin:0 0 6px;padding:4px 12px;font-size:12.5px;font-weight:800}.song-spin-locked{margin:0;font-size:18px;font-weight:800}.song-challenge-big{font-size:clamp(24px,4.4vw,34px);line-height:1.2;animation:.55s cubic-bezier(.2,1.4,.4,1) both song-pop}.song-challenge-big span{color:var(--gold-dark)}.song-twist-big{max-width:30ch;margin-inline:auto;font-size:clamp(20px,3.4vw,26px);line-height:1.3;animation:.55s cubic-bezier(.2,1.4,.4,1) both song-pop}.song-spin-twist{max-width:34ch;font-size:17px;font-weight:800;display:inline-block}@keyframes song-pop{0%{opacity:0;transform:scale(.7)}to{opacity:1;transform:scale(1)}}.song-style{border-radius:var(--r-lg);border:2px solid var(--line);background:var(--surface);color:var(--ink);font:inherit;text-align:center;cursor:pointer;justify-items:center;gap:4px;padding:14px 10px;transition:border-color .15s,transform .15s,box-shadow .15s;display:grid}.song-style span:last-child{color:var(--ink-soft);font-size:12px;font-weight:600;line-height:1.35}.song-style-emoji{font-size:26px}@media (hover:hover){.song-style:hover{border-color:var(--gold-dark);transform:translateY(-2px)}}.song-style-row{grid-template-columns:1fr 1fr;gap:12px;width:100%;display:grid}.song-style{padding:22px 12px}.song-style strong{font-size:18px}.song-sound-pair{grid-template-columns:1fr 1fr;gap:14px;width:100%;display:grid}.song-sound-card{--side:#9b7fe0;border-radius:var(--r-lg);background:var(--surface);border:2px solid color-mix(in srgb, var(--side) 45%, transparent);justify-items:center;gap:10px;padding:14px 10px;transition:border-color .2s,box-shadow .2s;display:grid}.song-sound-card.song-side-B{--side:#4fbfb8}.song-sound-card.is-live{border-color:var(--side);box-shadow:0 0 0 4px color-mix(in srgb, var(--side) 22%, transparent)}.song-sound-head{align-items:center;gap:8px;display:flex}.song-sound-letter{background:var(--side);color:#fff;border-radius:50%;place-items:center;width:32px;height:32px;font-weight:900;display:grid}.song-sound-head strong{font-size:17px}.song-hear{border:1px solid var(--line);background:var(--bg-soft);color:var(--ink);cursor:pointer;border-radius:999px;width:30px;height:30px;font-size:12px}.song-sound-chords{flex-wrap:wrap;justify-content:center;gap:4px;display:flex}.song-sound-chord{transition:transform .2s,opacity .2s}.song-sound-chord.is-current{transform:translateY(-4px)scale(1.06)}.song-sound-chord.is-heard{opacity:.5}.song-sound-status{color:var(--ink-soft);margin:0;font-size:13px;font-weight:800}.song-sound-card.is-played .song-sound-status{color:var(--green-dark,var(--green))}.song-capo{flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;margin-top:12px;font-weight:800;display:flex}.song-capo-spin{font-weight:800}.song-link{color:var(--ink-soft);font:inherit;cursor:pointer;background:0 0;border:0;font-size:13px;font-weight:700;text-decoration:underline}.song-teacher,.song-strum{text-align:center;grid-template-columns:minmax(0,1fr);justify-items:center;gap:12px;width:100%;display:grid}.songwriter-page .pluck-board,.songwriter-page .pluck-board-xl svg{max-width:100%}.song-teacher-stages{gap:8px;display:flex}.song-teacher-stages span{background:var(--bg-soft);width:26px;height:26px;color:var(--ink-faint);border-radius:50%;place-items:center;font-size:12px;font-weight:800;display:grid}.song-teacher-stages span.is-on{background:var(--gold-dark);color:#fff}.song-teacher-body{text-align:left;grid-template-columns:auto 1fr;align-items:center;gap:20px;display:grid}.song-teacher-copy h2{margin:0 0 6px}.song-teacher-copy p{margin:0 0 8px}.song-teacher-actions{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.song-teacher-copy .song-teacher-actions{justify-content:flex-start;margin-bottom:10px}.song-teacher-card{width:100%;max-width:360px}.song-strum-glyphs{letter-spacing:.08em;margin:0;font-size:28px;font-weight:800}.song-listening{color:var(--gold-dark);margin:0;font-weight:800}.song-feedback{color:var(--ink-soft);margin:0;font-weight:700}.song-feedback.is-good{color:var(--green-dark,var(--green))}.song-twist-reminder{border-radius:var(--r-md);background:var(--bg-soft);margin:0;padding:8px 12px;font-size:14px;font-weight:700}.song-title-field{text-align:left;gap:4px;width:100%;font-size:13px;font-weight:800;display:grid}.song-title-field input{font:inherit;border-radius:var(--r-md);border:1px solid var(--line);background:var(--surface);color:var(--ink);padding:10px 12px;font-size:18px;font-weight:700}.song-title-ideas{flex-wrap:wrap;gap:6px;width:100%;display:flex}.song-title-ideas button{border:1px dashed var(--line);color:var(--ink-soft);font:inherit;cursor:pointer;background:0 0;border-radius:999px;padding:3px 10px;font-size:12px;font-weight:700}.song-section{text-align:left;gap:6px;width:100%;display:grid}.song-section-head{align-items:baseline;gap:10px;display:flex}.song-section-head strong{white-space:nowrap;font-size:15px}.song-section-head em{white-space:nowrap}@media (width<=440px){.song-section-head{flex-wrap:wrap;row-gap:2px}.song-section-head span:not(.song-section-times){flex-basis:100%;order:3}}.song-section-head span{color:var(--ink-soft);font-size:13px;font-weight:600}.song-section-head em{color:var(--ink-faint);margin-left:auto;font-size:12px;font-style:normal;font-weight:800}.song-section-head em.is-full{color:var(--green-dark,var(--green))}.song-section textarea{font:inherit;border-radius:var(--r-md);border:1px solid var(--line);background:var(--surface);color:var(--ink);resize:vertical;padding:10px 12px;font-size:15px;line-height:1.6}.song-perform-facts{color:var(--ink-soft);margin:0;font-weight:700}.song-perform-passes{gap:12px;width:100%;display:grid}.song-perform-pass{border-radius:var(--r-md);background:var(--bg-soft);text-align:left;padding:12px 14px}.song-perform-label{letter-spacing:.08em;text-transform:uppercase;color:var(--ink-faint);font-size:12px;font-weight:800}.song-perform-chords{flex-wrap:wrap;gap:6px;margin:6px 0;display:flex}.song-perform-chord{background:var(--surface);border:2px solid var(--line);border-radius:999px;padding:5px 12px;font-weight:800;transition:transform .2s}.song-perform-chord.is-current{border-color:var(--gold-dark);transform:scale(1.12)}.song-perform-chord.is-hit{border-color:var(--green);color:var(--green-dark,var(--green))}.song-perform-chord.is-miss{opacity:.5;text-decoration:line-through}.song-perform-words{white-space:pre-wrap;margin:0;font-weight:600;line-height:1.6}.song-done-banner{text-align:center;margin:0;font-size:28px;font-weight:900;animation:.55s cubic-bezier(.2,1.4,.4,1) both song-pop}.song-done-earned{text-align:center;color:var(--gold-dark);margin:0 0 10px;font-weight:800}.song-card{border-radius:var(--r-xl);background:var(--surface);box-shadow:var(--shadow-md), inset 0 0 0 1.5px color-mix(in srgb, var(--gold) 45%, transparent);gap:10px;padding:24px;display:grid;position:relative}.song-card-eyebrow{letter-spacing:.08em;text-transform:uppercase;color:var(--gold-dark);margin:0;font-size:12px;font-weight:800}.song-card-title{margin:0;font-size:30px}.song-card-facts{gap:4px;margin:0;padding:0;font-weight:700;list-style:none;display:grid}.song-card-facts span{width:24px;display:inline-block}.song-card-facts em{color:var(--ink-faint);font-style:normal;font-weight:600}.song-card-chords{flex-wrap:wrap;gap:6px;display:flex}.song-card-twist{border-radius:var(--r-md);background:var(--bg-soft);margin:0;padding:10px 12px;font-weight:600}.song-card-lyrics{gap:10px;display:grid}.song-card-lyrics h3{letter-spacing:.08em;text-transform:uppercase;color:var(--ink-faint);margin:0;font-size:12px}.song-card-lyrics p{white-space:pre-wrap;margin:2px 0 0;font-weight:600;line-height:1.6}.song-card-perf{color:var(--ink-soft);margin:0;font-weight:700}.song-book{border-radius:var(--r-xl);background:var(--surface);box-shadow:var(--shadow-md);margin-top:18px;padding:18px 20px}.song-book h2{margin:0 0 10px;font-size:20px}.song-book-empty{color:var(--ink-soft);margin:0;font-weight:600}.song-book ul{gap:8px;margin:0;padding:0;list-style:none;display:grid}.song-book li{align-items:center;gap:8px;display:flex}.song-book-open{text-align:left;border-radius:var(--r-md);border:1px solid var(--line);background:var(--bg-soft);color:var(--ink);font:inherit;cursor:pointer;flex:1;gap:2px;padding:10px 14px;display:grid}.song-book-open span{color:var(--ink-soft);font-size:12.5px;font-weight:600}.song-book-delete{color:var(--ink-faint);cursor:pointer;background:0 0;border:0;padding:8px;font-size:14px}@media (width<=620px){.song-sound-pair,.song-style-row{grid-template-columns:1fr}.song-teacher-body{text-align:center;grid-template-columns:1fr;justify-items:center}}.app-main:has(.songwriter-page){background:#fbf1e2!important}.app-main:has(.songwriter-page) :is(.night-stars,.starlight-sky,.blossom-sky,.meadow-sky,.cyber-sky,.blackcat-sky,.blackcat-peek,.snow-sky,.snow-fall,.glass-sky,.rain-drops){display:none}.song-world{z-index:0;pointer-events:none;position:fixed;inset:0}@media (width>=900px) and (height>=501px){.song-world{left:var(--nav-w)}}.song-world-scene{width:100%;height:100%;animation:1.2s both song-world-in;position:absolute;inset:0}@keyframes song-world-in{0%{opacity:0}}.song-world .haze-drift{transform-origin:50%;animation:18s ease-in-out infinite alternate haze-drift}@keyframes haze-drift{0%{transform:translate(-12px,6px)scale(1)}to{transform:translate(14px,-8px)scale(1.03)}}.songwriter-page:before{display:none}.songwriter-page{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--ink:#3d2a26;--ink-soft:#7a5a50;--ink-faint:#a88a7e;--surface:#fffaf4d1;--bg-soft:#ffeee2bf;--line:#d6a08c59;--gold:#f08a6a;--gold-dark:#d8604a;--gold-light:#fbd3c4;--green:#8a9e58;--green-dark:#6f8244;--step-accent:#f4a0a8;--step-accent-dark:#d8604a;color:var(--ink)}.songwriter-page .slicer-topbar h1{letter-spacing:.01em;font-weight:700;color:var(--ink)!important}.songwriter-page :is(.game-menu-card,.songwriter-card,.song-card,.song-book){background:var(--surface);-webkit-backdrop-filter:blur(14px)saturate(1.15);backdrop-filter:blur(14px)saturate(1.15);border:1px solid #ffffffb3;border-radius:24px;box-shadow:0 18px 50px #c86e502e}.songwriter-page .btn-primary{color:#fffaf4;background:linear-gradient(135deg,#f27a5a,#f4a0a8);border:none;box-shadow:0 6px 18px #f27a5a59}@media (hover:hover){.songwriter-page .btn-primary:hover{filter:brightness(1.05)}}.songwriter-page .btn-secondary{color:var(--ink);box-shadow:none;background:#fffaf4e6;border:1px solid #d6a08c73}.songwriter-page .slicer-stat,.songwriter-page .lesson-shell-back{color:var(--ink);background:#fffaf4d9;border:1px solid #d6a08c73}.songwriter-page .chord-category-options button.selected,.songwriter-page .chord-category-chip.selected{color:#6a2a1c;background:#fbd3c4;border-color:#f08a6a}.song-stage{z-index:1;border-radius:22px;padding:4px 4px 10px;position:relative;overflow:hidden}@media (width<=560px),(width<=1000px) and (height<=500px) and (orientation:landscape){.song-stage,.songwriter-card{overflow:clip}}.song-practice-note{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);text-align:center;max-width:560px;color:var(--ink-soft);background:#fffaf4d9;border:1px solid #ffffffb3;border-radius:14px;margin:16px auto 0;padding:10px 16px;font-size:13px;font-weight:700}.swirl-curtain{z-index:20;pointer-events:none;border-radius:inherit;place-items:center;display:grid;position:absolute;inset:0;overflow:hidden}.swirl-curtain svg{will-change:transform;flex:none;transform:scale(0)}.swirl-curtain svg.is-rolling{animation:1s cubic-bezier(.55,.05,.35,1) both swirl-roll}@keyframes swirl-roll{0%{transform:scale(0)rotate(-240deg)}45%{transform:scale(1)rotate(-20deg)}55%{transform:scale(1)rotate(20deg)}to{transform:scale(0)rotate(260deg)}}@media (prefers-reduced-motion:reduce){.swirl-curtain{display:none}}.maker-player{justify-items:center;gap:10px;width:100%;display:grid}.song-teacher-lead{max-width:52ch;color:var(--ink-soft);margin:0;font-weight:600}.song-done-avatar{place-items:center;display:grid}.song-book li:has(.song-book-confirm){flex-wrap:wrap}.song-book-confirm{background:color-mix(in srgb, #e0564a 10%, var(--surface));border:1.5px solid #e0564a73;border-radius:12px;flex-wrap:wrap;flex-basis:100%;justify-content:space-between;align-items:center;gap:10px;margin-top:8px;padding:10px 12px;display:flex}.song-book-confirm p{margin:0;font-size:14px}.song-book-confirm div{gap:8px;display:flex}.song-book-confirm .btn{padding:6px 14px;font-size:14px}.song-book-confirm .song-book-confirm-delete{color:#fff;background:#d6453a;border-color:#d6453a}.song-challenge-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;display:flex}.song-structure-name{margin:0;font-size:clamp(26px,5vw,34px)}.song-structure-map{counter-reset:part;flex-wrap:wrap;justify-content:center;gap:6px;margin:4px 0 6px;padding:0;list-style:none;display:flex}.song-structure-map li{background:var(--bg-soft);border:1.5px solid var(--line);border-radius:999px;padding:6px 12px;font-size:14px;font-weight:800;position:relative}.song-structure-map li+li:before{content:"→";color:var(--ink-faint);font-size:11px;position:absolute;top:50%;left:-12px;transform:translateY(-50%)}.song-structure-map li+li{margin-left:8px}.song-part-chorus{background:color-mix(in srgb, #f2a0b4 30%, var(--surface))!important;border-color:#e58aa2!important}.song-part-pre{background:color-mix(in srgb, #f6d27a 30%, var(--surface))!important;border-color:#e7b94a!important}.song-part-bridge{background:color-mix(in srgb, #9ac7f0 30%, var(--surface))!important;border-color:#74aee6!important}.song-part-intro,.song-part-outro{background:color-mix(in srgb, #b9d99a 30%, var(--surface))!important;border-color:#97c270!important}.song-structure-map-sm{justify-content:flex-start;margin:0 0 12px}.song-structure-map-sm li{padding:4px 10px;font-size:12px}@media (width<=440px){.song-structure-map-sm{scrollbar-width:none;box-sizing:border-box;flex-wrap:nowrap;place-self:stretch stretch;width:100%;min-width:0;max-width:100%;padding:2px 2px 4px;overflow-x:auto}.song-structure-map-sm::-webkit-scrollbar{display:none}.song-structure-map-sm li{flex:none}}.song-section-times{color:var(--gold-dark);margin-left:4px;font-size:12px;font-weight:800}.song-perform-pass.is-playing{outline:2px solid var(--gold);outline-offset:3px;border-radius:12px}.song-book .song-book-shelf{grid-template-columns:repeat(auto-fill,minmax(118px,1fr));gap:14px 12px}.song-book-shelf>li{flex-direction:column;align-items:stretch;gap:0;display:flex;position:relative}.song-book-envelope{color:var(--ink);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:16px;flex-direction:column;align-items:center;gap:8px;padding:8px 6px 10px;transition:transform .15s;display:flex}@media (hover:hover){.song-book-envelope:hover:not(:disabled){transform:translateY(-3px)rotate(-1.5deg)}}.song-book-envelope:focus-visible{outline:3px solid var(--gold);outline-offset:2px}.song-book-envelope:disabled{cursor:default}.song-book-envelope .envelope{width:100%;max-width:132px}.song-book-title{font-family:var(--font-display);text-align:center;overflow-wrap:anywhere;font-size:14.5px;line-height:1.25}.song-book-shelf .song-book-delete{background:var(--surface);width:28px;height:28px;box-shadow:var(--shadow-sm);border-radius:50%;padding:0;font-size:12px;position:absolute;top:0;right:0}.song-book-shelf>li.is-opening .song-book-envelope{opacity:.35}.song-book-unbox{z-index:120;background:#140c108c;place-items:center;padding:20px;animation:.25s both song-book-unbox-in;display:grid;position:fixed;inset:0}@keyframes song-book-unbox-in{0%{opacity:0}}.song-book-unbox-stage{justify-items:center;gap:10px;width:min(300px,72vw);animation:.4s cubic-bezier(.3,1.4,.5,1) both song-book-unbox-pop;display:grid}@keyframes song-book-unbox-pop{0%{opacity:0;transform:scale(.7)}}.song-book-unbox-stage .envelope{filter:drop-shadow(0 16px 26px #00000059);max-width:none}.song-book-unbox-title{font-family:var(--font-display);color:#fff8ef;text-align:center;text-shadow:0 2px 8px #0006;margin:0;font-size:22px;font-weight:700}@media (prefers-reduced-motion:reduce){.song-book-unbox,.song-book-unbox-stage{animation:none}}.song-book-shelf>li:has(.song-book-confirm){flex-flow:wrap;grid-column:1/-1;align-items:flex-start}.song-book-shelf>li:has(.song-book-confirm) .song-book-envelope{width:132px}.song-strum-chords{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.song-strum-chord{min-width:44px;color:var(--ink);background:#fffaf4e6;border:2px solid #d6a08c73;border-radius:999px;padding:6px 12px;font-size:15px;font-weight:800;transition:transform .15s,background .15s}.song-strum-chord.is-now{color:#fffaf4;background:linear-gradient(135deg,#f27a5a,#f4a0a8);border-color:#0000;transform:scale(1.12)}.song-sound-row{justify-items:center;gap:4px;width:100%;display:grid}.song-sound-row+.song-sound-row{margin-top:6px}.song-sound-row-label{letter-spacing:.08em;text-transform:uppercase;color:var(--ink-faint);font-size:11px;font-weight:800}.song-sound-chords{flex-wrap:nowrap;width:100%}.song-sound-chord{flex:0 84px;min-width:0}.song-sound-chord .chord-diagram{gap:4px;width:100%}.song-sound-chord .chord-diagram-sm svg{width:100%;height:auto}.song-card-chords{flex-wrap:nowrap}.song-card-chords>.chord-diagram{flex:0 84px;gap:4px;min-width:0}.song-card-chords .chord-diagram-sm svg{width:100%;height:auto}.song-card-chord-set{gap:4px;display:grid}.song-card-chord-set+.song-card-chord-set{margin-top:8px}.song-card-chord-label{letter-spacing:.06em;text-transform:uppercase;color:var(--ink-faint);font-size:11.5px;font-weight:800}.song-perform-sets{gap:10px;width:100%;display:grid}.song-perform-set{border-radius:var(--r-md);background:var(--surface);border:2px solid var(--line);text-align:left;padding:10px 14px}.song-perform-set.is-playing{border-color:var(--gold)}.song-perform-set .song-perform-label{text-transform:none;letter-spacing:0;color:var(--ink-soft);font-size:13px}.song-perform-chords{flex-wrap:nowrap}.song-perform-chord{text-align:center;white-space:nowrap;flex:0 auto;min-width:0}@media (width<=420px){.song-perform-chords{gap:4px}.song-perform-chord{padding:5px 9px;font-size:14px}}.song-hear-btn{place-items:center;display:inline-grid}.song-hear-btn>span{grid-area:1/1}.song-hear-btn>.is-idle{visibility:hidden}.song-sound-card .song-teacher-actions{flex-wrap:nowrap;align-items:stretch}.song-sound-card .song-teacher-actions .song-hear-btn{flex:none}.song-sound-card .song-teacher-actions .btn-primary{white-space:normal;text-align:center;flex:0 auto;min-width:0;line-height:1.2}@media (width<=560px){.song-sound-card .song-teacher-actions{gap:8px}.song-sound-card .song-teacher-actions .btn{padding:12px 16px;font-size:15px}}.song-book-cd{width:min(340px,88%);margin:0 auto 12px}@media (height<=500px) and (orientation:landscape){.song-book-cd{width:min(260px,60%)}}.polaroid-stage{flex-direction:column;align-items:center;gap:20px;display:flex}.polaroid-flash{z-index:90;pointer-events:none;background:#fff;animation:.42s ease-out forwards polaroid-flash;position:fixed;inset:0}@keyframes polaroid-flash{0%{opacity:0}12%{opacity:.95}to{opacity:0}}.polaroid{background:#fbfaf6;border-radius:4px;margin:0;padding:14px 14px 0;transform:rotate(-2deg);box-shadow:0 10px 30px #0a081473,inset 0 0 0 1px #0000000f}.polaroid-window{aspect-ratio:240/330;background:#2a2a2e;width:280px;position:relative;overflow:hidden}.polaroid-window .salon-avatar{border-radius:0;width:100%}.polaroid-caption{text-align:center;font-family:var(--font-body);color:#4a4038;padding:14px 4px 20px;font-size:15px;font-weight:700}.polaroid-eject{animation:.9s cubic-bezier(.2,.8,.3,1) both polaroid-eject}@keyframes polaroid-eject{0%{opacity:0;transform:translateY(-46px)rotate(-2deg)scale(.96)}60%{opacity:1}to{opacity:1;transform:translateY(0)rotate(-2deg)scale(1)}}.polaroid-emulsion{background:#4a4a52;animation:2.4s ease-in forwards polaroid-develop;position:absolute;inset:0}@keyframes polaroid-develop{0%{opacity:1}25%{opacity:.94}to{opacity:0}}.polaroid-developing .salon-avatar{animation:2.4s ease-in forwards polaroid-tone}@keyframes polaroid-tone{0%{filter:grayscale()contrast(.5)brightness(.8)}55%{filter:grayscale(.5)contrast(.8)brightness(.95)}to{filter:none}}.polaroid-actions{flex-wrap:wrap;justify-content:center;gap:20px 14px;display:flex}@media (prefers-reduced-motion:reduce){.polaroid-flash,.polaroid-eject,.polaroid-emulsion,.polaroid-developing .salon-avatar{animation:none}.polaroid-emulsion{display:none}}.salon-page{max-width:1000px}.salon-spin-card .salon-spin-value{font-family:var(--font-body);color:var(--gold-dark);font-size:30px}.salon-stage{flex-wrap:wrap;align-items:flex-start;gap:24px;display:flex}.salon-canvas{flex:none;width:340px}.salon-canvas .salon-avatar{width:100%;box-shadow:var(--shadow-md)}.salon-theme-tag{color:var(--ink-soft);margin:12px 0 0;font-size:13px;font-weight:600;line-height:1.45}.salon-theme-tag strong{color:var(--gold-dark);font-size:15px;display:block}.salon-panel{background:var(--surface);border-radius:var(--r-xl);min-width:300px;box-shadow:var(--shadow-md);flex:1;padding:18px 20px}.salon-panel-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:8px 12px;display:flex}.salon-step-count{letter-spacing:.1em;text-transform:uppercase;color:var(--ink-faint);margin:0 0 4px;font-size:11px;font-weight:800}.salon-panel h2{margin:0;font-size:22px}.salon-actions{flex-wrap:wrap;gap:10px;display:flex}.salon-done-actions{justify-content:center}.salon-done-panel>.game-avatar{margin:0 auto;display:grid}.salon-done-panel>.salon-step-count{text-align:center}.salon-panel-head .salon-actions{gap:8px}.salon-panel-head .salon-actions .btn{padding:8px 14px;font-size:13px}.salon-hint{color:var(--ink-soft);margin:8px 0 10px;font-size:13.5px;font-weight:600;line-height:1.5}.is-round .salon-hint{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.salon-hint-nudge{color:var(--gold-dark);font-weight:800;animation:.3s both salon-nudge-in}.salon-hint-nudge.is-almost{color:var(--green-dark,var(--green))}.salon-hint-short{display:none}@keyframes salon-nudge-in{0%{opacity:0;transform:translateY(-3px)}}.salon-options{--pv:120px;--chart:60px;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0;padding:0;list-style:none;display:grid}.salon-option{border:2px solid var(--line);border-radius:var(--r-lg);background:var(--bg-soft);flex-direction:column;align-items:center;gap:5px;min-width:0;padding:8px 6px 9px;transition:border-color .18s,background .18s;display:flex}.salon-option-chosen{border-color:var(--green);background:color-mix(in srgb, var(--green) 14%, var(--surface))}.salon-option-preview{width:min(100%, calc(var(--pv) * 104 / 92));aspect-ratio:104/92;border-radius:var(--r-md);background:var(--surface);border:1px solid var(--line);flex:none;display:block;overflow:hidden}.salon-option-preview-hair{width:min(100%, calc(var(--pv) * 104 / 132));aspect-ratio:104/132}.salon-option-preview .salon-avatar{border-radius:0;width:100%}.salon-option-chosen .salon-option-preview{border-color:var(--green)}.salon-option-name{text-overflow:ellipsis;white-space:nowrap;max-width:100%;color:var(--ink);text-align:center;font-size:13px;font-weight:800;line-height:1.2;overflow:hidden}.salon-option-play{justify-content:center;align-items:center;gap:6px;max-width:100%;display:flex}.salon-option .chord-diagram svg{width:var(--chart);height:auto}.salon-option-chord{font-family:var(--font-body);color:var(--gold-dark);white-space:nowrap;font-size:17px;font-weight:800}.salon-options-nocharts .salon-option-chord{font-size:19px}.salon-page.is-round{padding-bottom:16px}.salon-canvas.is-round{align-self:flex-start;width:min(340px,72.7273dvh - 123.636px);position:sticky;top:16px}.salon-options{--pv:clamp(64px, calc(50dvh - 232px), 120px)}.salon-options-nocharts{--pv:clamp(64px, calc(50dvh - 180px), 132px)}.salon-canvas-step{display:none}@media (width<=760px){.salon-stage{flex-direction:column}.salon-canvas{width:100%;max-width:340px;margin:0 auto}}.salon-share-url{border:1px solid var(--line);border-radius:var(--r-md);background:var(--bg-soft);width:100%;color:var(--ink-soft);margin-bottom:14px;padding:10px 12px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12.5px}.salon-world{z-index:0;pointer-events:none;background-color:#2f2045;background-image:var(--salon-lights-a), var(--salon-bunting), var(--salon-lights-b), radial-gradient(circle at 12% 78%, #ffcf7a38, transparent 18%), radial-gradient(circle at 88% 30%, #ff9fb82e, transparent 20%), radial-gradient(circle at 60% 94%, #ffd6a82e, transparent 16%), radial-gradient(ellipse at 50% 40%, #ffb86b29, transparent 64%), linear-gradient(#261a40, #46284f 55%, #6e3a57);background-position:-40px -2px,-90px 62px,-200px calc(100% - 20px),0 0,0 0,0 0,0 0,0 0;background-repeat:repeat-x,repeat-x,repeat-x,no-repeat,no-repeat,no-repeat,no-repeat,no-repeat;background-size:320px 90px,320px 44px,320px 90px,auto,auto,auto,auto,auto;position:fixed;inset:0}@media (width>=900px) and (height>=501px){.salon-world{left:var(--nav-w)}}.salon-page>:not(.salon-world){z-index:1;position:relative}.salon-page .slicer-topbar h1{color:#fff7f1}.salon-page .salon-theme-tag{color:#fff7f1c7}.salon-page .salon-theme-tag strong{color:#f6cdd8}.salon-page .salon-canvas-step,.salon-page .salon-canvas.is-round .salon-canvas-step{color:#fff7f1}.salon-page .salon-canvas-step span{color:#fff7f1a8}.salon-page .salon-panel{--surface:#fffaf5;--bg-soft:#fbefe8;--line:#ead6cd;--ink:#2b1b1e;--ink-soft:#5b3f47;--ink-faint:#8a6b73;--gold-dark:#8a3a5c;--green-dark:#2f7a55;color:var(--ink);background:var(--salon-cream);border:2.5px solid var(--salon-ink);box-shadow:4px 4px 0 var(--salon-ink)}.salon-page .game-menu-card.salon-menu{box-shadow:none;background:0 0;border:none}.salon-page{--salon-ink:#2b1b1e;--salon-pink:#f6cdd8;--salon-rose:#e27a9c;--salon-cream:#fff7f1;--salon-plum:#6f2948}.game-menu-card.salon-menu{background-color:#2f2045;background-image:var(--salon-lights-a), var(--salon-bunting), var(--salon-lights-b), radial-gradient(circle at 16% 72%, #ffcf7a3d, transparent 14%), radial-gradient(circle at 88% 26%, #ff9fb833, transparent 16%), radial-gradient(circle at 62% 92%, #ffd6a833, transparent 14%), radial-gradient(ellipse at 50% 45%, #ffb86b33, transparent 62%), linear-gradient(#261a40, #46284f 55%, #6e3a57);border:2.5px solid var(--salon-ink);min-height:0;box-shadow:5px 5px 0 var(--salon-ink);color:var(--salon-ink);background-position:-40px -2px,-90px 62px,-200px calc(100% - 20px),0 0,0 0,0 0,0 0,0 0;background-repeat:repeat-x,repeat-x,repeat-x,no-repeat,no-repeat,no-repeat,no-repeat,no-repeat;background-size:320px 90px,320px 44px,320px 90px,auto,auto,auto,auto,auto;flex-direction:row;gap:30px;padding:44px 30px 30px}.salon-menu-photo{background:linear-gradient(160deg,#fdfcf9,#f1eee8);border-radius:3px;flex:none;align-self:center;width:216px;padding:11px 11px 40px;position:relative;transform:rotate(-4deg);box-shadow:0 1px 2px #0a041066,0 10px 22px #0a041073,0 0 22px #ffc4782e}.salon-menu-film{aspect-ratio:240/300;background:#d9d4cc;overflow:hidden;box-shadow:inset 0 0 0 1px #0000000f}.salon-menu-film svg{width:100%;height:auto;display:block}.salon-menu-pin{z-index:1;background:linear-gradient(90deg,#b88450,#e8c08a 50%,#c9975f);border-radius:3px;width:12px;height:32px;margin-left:-6px;position:absolute;top:-16px;left:50%;box-shadow:0 2px 3px #00000059}.salon-menu-pin:after{content:"";background:#6d6a66;border-radius:2px;height:3px;position:absolute;top:12px;left:-1px;right:-1px}.salon-menu-card{text-align:center;background:var(--salon-cream);border:2.5px solid var(--salon-ink);border-radius:22px;flex-direction:column;flex:auto;align-items:center;gap:10px;max-width:540px;padding:30px 26px 26px;display:flex;position:relative}.salon-menu-card:before{content:"";background:radial-gradient(circle at 50% 100%, var(--salon-cream) 0 5px, var(--salon-ink) 5.5px 7px, transparent 7.5px) 0 0 / 15px 12px repeat-x;height:12px;position:absolute;top:-12px;left:16px;right:16px}.salon-menu .salon-menu-eyebrow{letter-spacing:.16em;text-transform:uppercase;color:var(--salon-plum);margin:0;font-size:11.5px;font-weight:800}.salon-menu h2{color:var(--salon-ink)}.salon-menu .salon-menu-card p{color:#5b3f47}.salon-menu .salon-menu-card .salon-menu-eyebrow{color:var(--salon-plum)}.salon-menu .chord-category-selector{background:#fffdfb;border:2px dashed #2b1b1e52}.salon-menu .chord-category-selector legend,.salon-menu .chord-category-hint,.salon-menu .chord-category-count{color:var(--salon-ink)}.salon-menu .chord-category-options button,.salon-menu .chord-category-chip{border:2px solid var(--salon-ink);color:var(--salon-ink);background:#fff}.salon-menu .chord-category-options button.selected,.salon-menu .chord-category-chip.selected{background:var(--salon-pink);border-color:var(--salon-ink);color:var(--salon-plum);box-shadow:2px 2px 0 var(--salon-ink)}.salon-menu .salon-menu-card .game-pool-count{color:#7a5a63}.salon-menu .salon-menu-go{color:#fff;border:2.5px solid var(--salon-ink);box-shadow:0 4px 0 var(--salon-ink);background:#c4507a}@media (hover:hover){.salon-menu .salon-menu-go:hover:not(:disabled){filter:brightness(1.05)}}.salon-menu .salon-menu-go:active:not(:disabled){box-shadow:0 1px 0 var(--salon-ink);transform:translateY(3px)}.salon-charts{border:2px solid var(--salon-ink);background:#fff;border-radius:999px;padding:3px;display:inline-flex}.salon-charts-btn{color:var(--salon-ink);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:999px;padding:7px 14px;font-size:13px;font-weight:800}.salon-charts-btn.is-on{background:var(--salon-pink);color:var(--salon-plum);box-shadow:inset 0 0 0 1.5px var(--salon-ink)}.salon-charts-btn:focus-visible{outline:3px solid var(--salon-rose);outline-offset:2px}.salon-menu .salon-menu-book{border:2px solid var(--salon-ink);color:var(--salon-ink);font:inherit;cursor:pointer;box-shadow:2px 2px 0 var(--salon-ink);background:#fff;border-radius:999px;padding:9px 18px;font-size:14px;font-weight:800}@media (hover:hover){.salon-menu .salon-menu-book:hover{background:var(--salon-pink)}}.salon-menu .salon-menu-book:focus-visible{outline:3px solid var(--salon-rose);outline-offset:2px}.salon-label-short{display:none}.salon-spin-card .salon-menu-card{max-width:480px}.salon-spin-card .song-spinner-label{color:var(--salon-plum)}.salon-spin-card .song-spinner-window{border:2.5px solid var(--salon-ink);box-shadow:3px 3px 0 var(--salon-ink);background:#fff}.salon-spin-card .salon-spin-value{color:var(--salon-plum);font-family:var(--font-display);font-weight:700}@media (width<=700px){.game-menu-card.salon-menu{flex-direction:column;gap:22px;padding:40px 14px 18px}.salon-menu-photo{width:176px;padding:9px 9px 32px}.salon-menu-card{width:100%;padding:26px 16px 20px}}@media (width<=760px){.salon-panel{min-width:0}}@media (width<=760px) and (orientation:portrait){.salon-page.is-round{height:calc(100dvh - env(safe-area-inset-bottom,0px));padding:calc(6px + env(safe-area-inset-top,0px)) 8px 8px;flex-direction:column;display:flex;position:relative;overflow:hidden}.salon-page.is-round .slicer-topbar{top:calc(4px + env(safe-area-inset-top,0px));left:calc(8px + env(safe-area-inset-left,0px));z-index:7;margin:0;position:absolute}.salon-page.is-round .slicer-topbar h1,.salon-page.is-round .slicer-topbar .slicer-stat{display:none}.salon-page.is-round .slicer-topbar .lesson-shell-back{width:32px;height:32px}.salon-page.is-round .salon-stage{flex:1;grid-template-rows:minmax(0,1fr) minmax(0,1fr);align-items:stretch;gap:6px;min-height:0;display:grid;position:relative}.salon-canvas.is-round{grid-template-rows:auto minmax(0,1fr) auto;align-self:stretch;justify-items:center;gap:3px;width:auto;max-width:none;min-height:0;margin:0;display:grid;position:static}.salon-canvas.is-round .salon-canvas-side{display:contents}.salon-canvas.is-round .salon-theme-tag{text-align:center;text-overflow:ellipsis;white-space:nowrap;grid-row:1;max-width:calc(100% - 84px);margin:0;font-size:12.5px;line-height:32px;overflow:hidden}.salon-canvas.is-round .salon-theme-tag strong{font-size:13.5px;display:inline}.salon-canvas.is-round .salon-theme-tag span{display:none}.salon-canvas.is-round .salon-avatar{grid-row:2;width:auto;max-width:100%;height:100%;min-height:0}.salon-canvas.is-round .salon-canvas-step{max-width:100%;font-family:var(--font-display);text-overflow:ellipsis;white-space:nowrap;color:var(--ink);grid-row:3;margin:0;font-size:15px;font-weight:700;line-height:1.25;display:block;overflow:hidden}.salon-canvas-step span{font-family:var(--font-body);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-faint);margin-right:6px;font-size:10.5px;font-weight:800}.salon-page.is-round .salon-panel{border-radius:var(--r-lg);flex-direction:column;min-height:0;padding:6px;display:flex}.salon-panel-head>div:first-child{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.salon-panel-head .salon-actions{z-index:6;pointer-events:none;justify-content:space-between;display:flex;position:absolute;bottom:calc(50% + 30px);left:0;right:0}.salon-panel-head .salon-actions .btn{pointer-events:auto;min-height:32px;padding:5px 11px;font-size:12.5px}.salon-label-long{display:none}.salon-label-short{display:inline}.salon-hint{text-align:center;flex:none;margin:0 2px 5px;font-size:12px;line-height:1.4}.salon-hint-long{display:none}.salon-hint-short{display:inline}.salon-options{--chart:36px;flex:1;grid-template-rows:repeat(2,minmax(0,1fr));gap:6px;min-height:0}.salon-option{border-radius:var(--r-md);grid-template:"pv play"minmax(0,1fr)"name name"/minmax(0,1fr) auto;place-items:center;gap:2px 3px;min-height:0;padding:5px 4px;display:grid}.salon-option-preview{grid-area:pv}.salon-option-name{grid-area:name;font-size:10.5px}.salon-option-play{flex-direction:column;grid-area:play;gap:1px}.salon-option-preview,.salon-option-preview-hair{width:auto;max-width:100%;height:100%;min-height:0;max-height:100%}.salon-option-preview .salon-avatar{width:100%;height:100%}.salon-option-chord{font-size:13.5px;line-height:1.1}.salon-options-nocharts .salon-option{grid-template:"pv"minmax(0,1fr)"name""play"/minmax(0,1fr)}.salon-options-nocharts .salon-option-chord{font-size:16px}.salon-page.is-round .salon-stage:has(.salon-options:not(.salon-options-nocharts)){grid-template-rows:minmax(0,2fr) minmax(0,3fr)}.salon-page.is-round .salon-stage:has(.salon-options:not(.salon-options-nocharts)) .salon-panel-head .salon-actions{bottom:calc(60% + 30px)}.salon-options:not(.salon-options-nocharts){--chart:clamp(40px, calc(19.1dvh - 49px - .191 * (env(safe-area-inset-top,0px) + env(safe-area-inset-bottom,0px))), 80px);grid-template-rows:repeat(3,minmax(0,1fr));grid-template-columns:repeat(2,minmax(0,1fr))}.salon-options:not(.salon-options-nocharts) .salon-option{grid-template-areas:"pv chart""name chord";column-gap:4px}.salon-options:not(.salon-options-nocharts) .salon-option-play{display:contents}.salon-options:not(.salon-options-nocharts) .chord-diagram{grid-area:chart;overflow:hidden}.salon-options:not(.salon-options-nocharts) .chord-diagram svg{margin:calc(var(--chart) * -.036) 0 calc(var(--chart) * -.155)}.salon-options:not(.salon-options-nocharts) .chord-diagram-finger{font-size:14px}.salon-options:not(.salon-options-nocharts) .salon-option-name{justify-self:stretch;font-size:11.5px}.salon-options:not(.salon-options-nocharts) .salon-option-chord{grid-area:chord}}@media (orientation:landscape) and (height<=600px){.salon-page.is-round{padding-top:10px;padding-bottom:8px}.salon-page.is-round .slicer-topbar{margin-bottom:8px}.salon-page.is-round .slicer-topbar h1{font-size:20px}.salon-page.is-round .slicer-topbar .lesson-shell-back{width:34px;height:34px}.salon-stage{flex-flow:row;gap:14px}.salon-canvas.is-round{width:auto;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;flex:none;margin:0;padding:0;display:block;position:static}.salon-canvas.is-round .salon-avatar{width:auto;height:min(100dvh - 104px,300px)}.salon-canvas.is-round .salon-canvas-side{display:block}.salon-canvas.is-round .salon-theme-tag{text-align:left;max-width:24ch;margin-top:6px;font-size:11.5px;display:block}.salon-canvas.is-round .salon-theme-tag span,.salon-canvas-step{display:none}.salon-panel{min-width:0;padding:10px 12px}.salon-panel-head>div:first-child{clip:auto;white-space:normal;width:auto;height:auto;margin:0;position:static;overflow:visible}.salon-panel-head{justify-content:space-between;align-items:center}.salon-panel .salon-step-count{display:none}.salon-panel h2{font-size:19px}.salon-panel-head .salon-actions{margin:0}.salon-hint{text-align:left;margin:4px 0 8px;font-size:12.5px}.salon-options{--chart:44px;--pv:clamp(44px, calc(100dvh - 244px), 120px);grid-template-columns:repeat(6,minmax(0,1fr));gap:6px}.salon-options-nocharts{--pv:clamp(44px, calc(100dvh - 192px), 132px)}.salon-options:has(.salon-option-preview-hair){--pv:clamp(44px, calc(100dvh - 252px), 120px)}.salon-options-nocharts:has(.salon-option-preview-hair){--pv:clamp(44px, calc(100dvh - 200px), 132px)}.salon-option{gap:3px;padding:6px 3px 7px}.salon-option-name{font-size:11px}.salon-option-play{gap:4px}.salon-option-chord{font-size:14px}}.game-menu-card.salon-book-card{padding:40px 24px 24px;display:block}.salon-book{border:2.5px solid var(--salon-ink,#2b1b1e);max-width:620px;box-shadow:5px 5px 0 var(--salon-ink,#2b1b1e);color:var(--salon-ink,#2b1b1e);background:#fbf3e6 radial-gradient(#2b1b1e12 1px,#0000 1.4px) 0 0/14px 14px;border-radius:18px;margin:0 auto;padding:22px 22px 18px;position:relative}.salon-book-head{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:16px;display:flex}.salon-book .salon-book-head .salon-menu-eyebrow{letter-spacing:.16em;text-transform:uppercase;color:var(--salon-plum,#6f2948);margin:0;font-size:11.5px;font-weight:800}.salon-book .salon-book-head h2{color:var(--salon-ink,#2b1b1e);margin:2px 0 0;font-size:24px}.salon-book .salon-book-count{color:#7a5a63;margin:2px 0 0;font-size:13px;font-weight:700}.salon-book-back{border:2px solid var(--salon-ink,#2b1b1e);color:var(--salon-ink,#2b1b1e);font:inherit;cursor:pointer;box-shadow:2px 2px 0 var(--salon-ink,#2b1b1e);background:#fff;border-radius:999px;flex:none;padding:8px 14px;font-size:13.5px;font-weight:800}.salon-book .salon-book-empty{text-align:center;color:#5b3f47;border:2px dashed #2b1b1e4d;border-radius:14px;margin:4px auto;padding:26px 16px;font-size:14.5px;font-weight:600;line-height:1.55}.salon-book-page{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 16px;margin:0;padding:0;list-style:none;display:grid}.salon-book-slot{justify-content:center;min-width:0;display:flex;position:relative}.salon-book-ghost{outline-offset:-2px;border-radius:8px;outline:2px dashed #2b1b1e29;width:min(100%,200px);padding:8px 8px 0;display:block}.salon-book-ghost-pic{aspect-ratio:240/330;display:block}.salon-book-ghost-cap{font-family:var(--font-display);padding:6px 4px 9px;font-size:15px;font-weight:700;display:block}.salon-book-photo{width:min(100%,200px);transform:rotate(var(--tilt,0deg));background:linear-gradient(160deg,#fffefb,#f3f0ea);border-radius:3px;margin:0;padding:8px 8px 0;position:relative;box-shadow:0 1px 2px #0a04104d,0 8px 16px #0a04102e}.salon-book-photo:before{content:"";z-index:1;background:var(--tape,#f6cdd8);opacity:.85;width:56px;height:18px;margin-left:-28px;position:absolute;top:-9px;left:50%;transform:rotate(-4deg);box-shadow:0 1px 1px #00000014}.salon-book-open{cursor:pointer;background:#d9d4cc;border:0;width:100%;padding:0;display:block}.salon-book-open .salon-avatar{border-radius:0;width:100%;height:auto}.salon-book-open:focus-visible{outline:3px solid var(--salon-rose,#e27a9c);outline-offset:2px}.salon-book .salon-book-photo figcaption{font-family:var(--font-display);text-align:center;text-overflow:ellipsis;white-space:nowrap;color:var(--salon-ink,#2b1b1e);padding:6px 4px 9px;font-size:15px;font-weight:700;overflow:hidden}.salon-book-remove{z-index:2;border:2px solid var(--salon-ink,#2b1b1e);width:28px;height:28px;color:var(--salon-ink,#2b1b1e);cursor:pointer;box-shadow:1px 1px 0 var(--salon-ink,#2b1b1e);background:#fff;border-radius:50%;place-items:center;padding:0;font-size:12px;font-weight:900;display:grid;position:absolute;top:-10px;right:-10px}.salon-book-remove:focus-visible{background:#fbe3e3}@media (hover:hover){.salon-book-remove:hover{background:#fbe3e3}}.salon-book-confirm{z-index:3;border:2px solid var(--salon-ink,#2b1b1e);box-shadow:3px 3px 0 var(--salon-ink,#2b1b1e);text-align:center;background:#fffaf5;border-radius:12px;gap:7px;padding:12px 10px;display:grid;position:absolute;inset:8px 8px auto}.salon-book .salon-book-confirm p{color:#5b3f47;margin:0;font-size:13px;font-weight:600;line-height:1.45}.salon-book .salon-book-confirm strong{color:var(--salon-ink,#2b1b1e);font-size:15px;display:block}.salon-book-yes,.salon-book-keep{border:2px solid var(--salon-ink,#2b1b1e);font:inherit;cursor:pointer;border-radius:999px;padding:7px 10px;font-size:13px;font-weight:800}.salon-book-yes{color:#fff;background:#c4507a}.salon-book-keep{color:var(--salon-ink,#2b1b1e);background:#fff}.salon-book-nav{color:var(--salon-ink,#2b1b1e);justify-content:center;align-items:center;gap:14px;margin-top:18px;font-size:14px;font-weight:800;display:flex}.salon-book-nav button{border:2px solid var(--salon-ink,#2b1b1e);width:38px;height:38px;color:var(--salon-ink,#2b1b1e);cursor:pointer;box-shadow:2px 2px 0 var(--salon-ink,#2b1b1e);background:#fff;border-radius:50%;font-size:22px;line-height:1}.salon-book-nav button:disabled{opacity:.35;cursor:default;box-shadow:none}.salon-book-lightbox{z-index:120;background:#140a18a8;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.salon-book-big{background:linear-gradient(160deg,#fffefb,#f3f0ea);border-radius:4px;width:min(320px,100%);max-height:calc(100dvh - 32px);margin:0;padding:12px 12px 0;animation:.2s ease-out salon-book-pop;position:relative;overflow:auto;box-shadow:0 16px 40px #00000073}@keyframes salon-book-pop{0%{opacity:0;transform:scale(.94)}}.salon-book-big .salon-avatar{border-radius:0;width:100%;height:auto}.salon-book-big figcaption{text-align:center;color:#5b3f47;gap:3px;padding:12px 6px 16px;font-size:14px;font-weight:600;display:grid}.salon-book-big figcaption strong{font-family:var(--font-display);color:#2b1b1e;overflow-wrap:anywhere;font-size:24px}.salon-book-close{z-index:1;color:#2b1b1e;cursor:pointer;background:#fff;border:2px solid #2b1b1e;border-radius:50%;width:34px;height:34px;font-size:14px;font-weight:900;position:absolute;top:6px;right:6px}.salon-book-save{flex-wrap:wrap;justify-content:center;align-items:center;gap:8px 10px;margin:4px 0 12px;display:flex}.salon-book-form label{text-align:center;color:var(--ink-soft);flex:1 0 100%;font-size:13px;font-weight:800}.salon-book-form input{border:2px solid var(--line);border-radius:var(--r-sm);background:var(--bg-soft);min-width:0;max-width:240px;color:var(--ink);font:inherit;flex:160px;padding:9px 12px;font-size:15px;font-weight:700}.salon-book-form input:focus{border-color:var(--gold-dark);outline:none}.polaroid-stage .salon-book-save{margin:0}.polaroid-stage .salon-book-saved{color:#bfeccf}.polaroid-stage .salon-book-full,.polaroid-stage .salon-book-form label,.polaroid-stage .salon-book-cancel{color:#fff7f1db}.salon-book-cancel{color:var(--ink-soft);font:inherit;cursor:pointer;background:0 0;border:0;padding:6px 4px;font-size:13.5px;font-weight:700;text-decoration:underline}.salon-book-saved{color:var(--green-dark,var(--green));margin:0;font-size:14px;font-weight:800}.salon-book-full{text-align:center;max-width:34ch;color:var(--ink-soft);margin:0;font-size:13.5px;font-weight:700}@media (width<=520px){.game-menu-card.salon-book-card{padding:34px 10px 14px}.salon-book{padding:16px 12px 14px}.salon-book .salon-book-head h2{font-size:20px}.salon-book-page{gap:18px 12px}.salon-book-photo,.salon-book-ghost{padding:6px 6px 0}.salon-book .salon-book-photo figcaption,.salon-book-ghost-cap{padding:5px 2px 7px;font-size:13px}.salon-book-confirm{padding:9px 7px;inset:4px 4px auto}.salon-book .salon-book-confirm p{font-size:12px}}@media (prefers-reduced-motion:reduce){.salon-book-big{animation:none}}.transition-page{max-width:760px}.tt-setup{text-align:center}.tt-pickers{grid-template-columns:1fr auto 1fr;align-items:end;gap:12px;width:100%;margin-top:8px;display:grid}.tt-pickers .chord-slot-caret{border-right:2.5px solid var(--ink);border-bottom:2.5px solid var(--ink);flex:none;width:9px;height:9px;margin:0 4px 4px 0;font-size:0;transform:rotate(45deg)}.tt-pickers .chord-slot-button[aria-expanded=true] .chord-slot-caret{margin:4px 4px 0 0;transform:rotate(-135deg)}.tt-swap{border:1px solid var(--line);background:var(--bg-soft);width:48px;height:48px;color:var(--ink);cursor:pointer;border-radius:50%;margin-bottom:6px;font-size:22px;transition:transform .2s,border-color .2s}@media (hover:hover){.tt-swap:hover{border-color:var(--gold-dark);transform:rotate(180deg)}}.tt-preview{justify-content:center;align-items:center;gap:14px;margin-top:8px;display:flex}.tt-pair-arrow{color:var(--gold-dark);font-size:26px;font-weight:900}.tt-master{margin:6px 0 0;font-size:24px}.tt-level{color:var(--ink-soft);margin:0;font-size:14px;font-weight:600}.tt-setup-actions{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.tt-recs,.tt-mine{border-radius:var(--r-xl);background:var(--surface);box-shadow:var(--shadow-md);margin-top:18px;padding:18px 20px}.tt-recs h3{margin:0 0 10px;font-size:15px}.tt-rec-row{flex-wrap:wrap;gap:8px;display:flex}.tt-rec{text-align:left;border-radius:var(--r-md);border:1px solid color-mix(in srgb, var(--gold-dark) 40%, transparent);background:color-mix(in srgb, var(--gold) 10%, var(--surface));color:var(--ink);font:inherit;cursor:pointer;gap:2px;padding:10px 14px;display:grid}.tt-rec span{color:var(--ink-soft);font-size:12px;font-weight:600}.tt-mine h2{margin:0 0 10px;font-size:20px}.tt-mine-empty{color:var(--ink-soft);margin:0;font-weight:600}.tt-mine ul{gap:8px;margin:0;padding:0;list-style:none;display:grid}.tt-mine-row{align-items:center;gap:10px;display:flex}.tt-mine-main{text-align:left;border-radius:var(--r-md);border:1px solid var(--line);background:var(--bg-soft);min-width:0;color:var(--ink);font:inherit;cursor:pointer;flex:1;gap:2px;padding:10px 14px;display:grid}.tt-mine-main strong{font-size:16px}.tt-mine-main span{color:var(--ink-soft);font-size:12.5px;font-weight:600}.tt-spark{flex:none;align-items:flex-end;gap:2px;width:58px;height:30px;display:flex}.tt-spark i{background:var(--gold-dark);opacity:.8;border-radius:2px 2px 0 0;flex:1}.tt-mine-remove{color:var(--ink-faint);cursor:pointer;background:0 0;border:0;padding:8px}.tt-session{text-align:center}.tt-progress{width:100%;color:var(--ink-soft);gap:6px;font-size:13px;font-weight:700;display:grid}.tt-progress strong{color:var(--ink)}.tt-progress-bar{background:var(--bg-soft);border-radius:999px;height:8px;overflow:hidden}.tt-progress-bar span{background:linear-gradient(90deg, var(--gold), var(--gold-dark));border-radius:999px;height:100%;transition:width .3s;display:block}.tt-round{letter-spacing:.1em;text-transform:uppercase;color:var(--gold-dark);margin:0;font-size:12px;font-weight:800}.tt-intro{justify-items:center;gap:10px;display:grid}.tt-intro p{max-width:46ch;margin:0}.tt-stage{justify-items:center;gap:10px;width:100%;display:grid}.tt-pair{align-items:center;gap:12px;display:flex}.tt-pair-chord{background:var(--bg-soft);color:var(--ink-soft);border-radius:999px;padding:6px 16px;font-size:18px;font-weight:800;transition:all .2s}.tt-pair-chord.is-target{background:var(--gold-dark);color:#fff;transform:scale(1.12)}.tt-prompt{font-size:clamp(26px,5vw,36px);font-weight:900;font-family:var(--font-display,inherit);margin:0}.tt-diagram{place-items:center;min-height:170px;display:grid}.tt-diagram-off{color:var(--ink-faint);border:1px dashed var(--line);border-radius:var(--r-md);padding:20px;font-size:13px;font-weight:700}.tt-feedback{margin:0;font-weight:800}.tt-feedback-good{color:var(--green-dark,var(--green))}.tt-feedback-warm{color:var(--ink-soft)}.tt-feedback-combo{color:var(--gold-dark);font-size:20px;animation:.4s cubic-bezier(.2,1.4,.4,1) both tt-pop}@keyframes tt-pop{0%{transform:scale(.8)}60%{transform:scale(1.12)}}.tt-beats span{background:var(--bg-soft);border:1px solid var(--line);border-radius:50%;width:14px;height:14px;transition:background .1s}.tt-beats span.is-on{background:var(--gold-dark);border-color:var(--gold-dark)}.tt-counts{color:var(--ink-soft);justify-content:center;gap:14px;font-size:14px;font-weight:800;display:flex}.tt-end{color:var(--ink-faint);font:inherit;cursor:pointer;background:0 0;border:0;font-size:13px;font-weight:700;text-decoration:underline}.tt-results{text-align:center}.tt-results-eyebrow{letter-spacing:.1em;text-transform:uppercase;color:var(--gold-dark);margin:0;font-size:12px;font-weight:800}.tt-results-grid{grid-template-columns:repeat(4,1fr);gap:10px;width:100%;display:grid}.tt-results-grid div{border-radius:var(--r-md);background:var(--bg-soft);gap:2px;padding:12px 6px;display:grid}.tt-results-grid strong{font-size:24px}.tt-results-grid span{color:var(--ink-soft);font-size:11.5px;font-weight:700}.tt-compare{color:var(--ink-soft);margin:0;font-weight:600}.tt-milestone{color:var(--gold-dark);margin:0;font-weight:800}.tt-coins{color:var(--gold-dark);margin:0;font-size:17px;font-weight:800}.tt-results h3{margin:8px 0 0}@media (width<=560px){.tt-pickers{justify-content:center;align-items:center;gap:8px;display:flex}.tt-pickers .chord-slot{flex-direction:row;flex:1 1 0;align-items:center;gap:6px;min-width:0}.tt-pickers .chord-slot-label{flex:none;font-size:12px}.tt-pickers .chord-slot-label-long{display:none}.tt-pickers .chord-slot-label-short{display:inline}.tt-pickers .chord-slot-button{flex:1;min-width:0;padding:9px 10px}.tt-pickers .chord-slot-symbol{font-size:21px}.tt-pickers .chord-slot:last-child .chord-slot-pop{left:auto;right:0}.tt-swap{flex:none;width:38px;height:38px;margin:0;font-size:18px}.tt-results-grid{grid-template-columns:repeat(2,1fr)}}.tt-session{position:relative}.tt-avatar{position:absolute;top:10px;right:12px}@media (width<=560px){.tt-avatar{top:6px;right:6px;transform:scale(.8)}}.tt-next-up{color:var(--gold-dark);margin:0;font-weight:800}.tt-intro-detail{color:var(--ink-soft);margin:0;font-size:13px;font-weight:700}.tt-diagram-off button{border:1px solid var(--gold-dark);color:var(--gold-dark);font:inherit;cursor:pointer;background:0 0;border-radius:999px;margin:8px auto 0;padding:4px 12px;font-weight:800;display:block}.tt-results-stages{gap:6px;width:100%;max-width:420px;margin:0;padding:0;list-style:none;display:grid}.tt-results-stages li{border-radius:var(--r-md);background:var(--bg-soft);justify-content:space-between;padding:8px 12px;font-weight:700;display:flex}.tt-results-stages li.is-cleared em{color:var(--gold-dark)}.tt-results-stages em{font-style:normal;font-weight:800}.transition-page{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--ink:#111;--ink-soft:#4a4a4a;--ink-faint:#7a7a7a;--surface:#fafaf8e6;--bg-soft:#ececea;--line:#cfcfcd;--gold:#8a8a8a;--gold-dark:#1a1a1a;--gold-light:#e0e0de;--green:#1a1a1a;--green-dark:#1a1a1a;width:100%;max-width:none;color:var(--ink);position:relative}.app-main:has(.transition-page){background:#d8d8d6!important}.app-main:has(.transition-page) :is(.night-stars,.starlight-sky,.blossom-sky,.meadow-sky,.cyber-sky,.blackcat-sky,.blackcat-peek,.snow-sky,.snow-fall,.glass-sky,.rain-drops){display:none}.tt-world{z-index:0;pointer-events:none;position:fixed;inset:0}@media (width>=900px) and (height>=501px){.tt-world{left:var(--nav-w)}}.tt-world svg{width:100%;height:100%;display:block}.tt-world .birds-drift{animation:22s ease-in-out infinite alternate tt-birds}@keyframes tt-birds{0%{transform:translate(-14px,6px)}to{transform:translate(16px,-10px)}}.transition-page>:not(.tt-world){z-index:1;position:relative}.transition-page .slicer-topbar h1{background:#fafaf8e6;border:1.5px solid #111;flex:none;width:fit-content;margin-right:auto;padding:2px 14px;color:#111!important}.transition-page :is(.game-menu-card,.tt-recs,.tt-mine){background:var(--surface);-webkit-backdrop-filter:blur(6px)grayscale();backdrop-filter:blur(6px)grayscale();border:1.5px solid #111;border-radius:4px;box-shadow:6px 6px #00000038}.transition-page .tt-session,.transition-page .tt-results,.transition-page .tt-setup{justify-content:center;width:100%;max-width:1100px;min-height:calc(100dvh - 190px);margin-inline:auto}.transition-page .btn-primary{color:#fafaf8;background:#111;border:1.5px solid #111;box-shadow:3px 3px #00000040}.transition-page .btn-secondary,.transition-page .slicer-stat,.transition-page .lesson-shell-back{color:#111;background:#fafaf8;border:1.5px solid #111}.transition-page .tt-from-text{color:var(--tt-from)}.transition-page .tt-to-text{color:var(--tt-to-ink)}.transition-page .tt-pair-chord.tt-from{color:var(--tt-from);border:2px solid var(--tt-from);background:#fafaf8}.transition-page .tt-pair-chord.tt-to{color:var(--tt-to-ink);border:2px solid var(--tt-to-ink);background:color-mix(in srgb, var(--tt-to) 22%, #fafaf8)}.transition-page .tt-pair-chord.tt-from.is-target{background:var(--tt-from);color:#fff}.transition-page .tt-pair-chord.tt-to.is-target{background:var(--tt-to);color:#111;border-color:#111}.transition-page .tt-prompt.tt-from{color:var(--tt-from)}.transition-page .tt-prompt.tt-to{color:var(--tt-to-ink)}.transition-page :is(.tt-diagram,.tt-preview>span).tt-from .chord-diagram-dot{fill:var(--tt-from)}.transition-page :is(.tt-diagram,.tt-preview>span).tt-to .chord-diagram-dot{fill:var(--tt-to)}.transition-page .tt-diagram.tt-from{box-shadow:inset 0 0 0 2px color-mix(in srgb, var(--tt-from) 40%, transparent);border-radius:8px;padding:6px}.transition-page .tt-diagram.tt-to{box-shadow:inset 0 0 0 2px color-mix(in srgb, var(--tt-to) 40%, transparent);border-radius:8px;padding:6px}.transition-page .tt-progress-bar span{background:linear-gradient(90deg, var(--tt-from), var(--tt-to))}.transition-page .tt-feedback-combo{color:var(--tt-from)}.transition-page .tt-beats span.is-on{background:var(--tt-to);border-color:var(--tt-to)}.transition-page :is(.tt-diagram,.tt-chart){--c:var(--tt-to)}.transition-page :is(.tt-diagram,.tt-chart).tt-from{--c:var(--tt-from)}.transition-page .tt-diagram:not(.is-hidden),.transition-page .tt-chart{box-shadow:0 0 0 5px color-mix(in srgb, var(--c) 30%, transparent), 0 0 34px 6px color-mix(in srgb, var(--c) 55%, transparent), 8px 10px 0 #00000040;background:#fdfdfb;border:2.5px solid #111;border-radius:16px;place-items:center;padding:18px 28px 12px;animation:2.6s ease-in-out infinite alternate tt-chart-glow;display:inline-grid}.transition-page .tt-diagram.tt-from:not(.is-hidden),.transition-page .tt-diagram.tt-to:not(.is-hidden){padding:18px 28px 12px}@keyframes tt-chart-glow{to{box-shadow:0 0 0 5px color-mix(in srgb, var(--c) 40%, transparent), 0 0 48px 12px color-mix(in srgb, var(--c) 70%, transparent), 8px 10px 0 #00000040}}.transition-page .tt-diagram .chord-diagram-lg svg{width:230px;height:284px}.transition-page .tt-chart .chord-diagram-md svg{width:140px;height:173px}.transition-page :is(.tt-diagram,.tt-chart) .chord-diagram-string{stroke:#9a9a9a;stroke-width:2.2px}.transition-page :is(.tt-diagram,.tt-chart) .chord-diagram-fretline{stroke:#c4c4c4}.transition-page :is(.tt-diagram,.tt-chart) .chord-diagram-nut{fill:#111}.transition-page :is(.tt-diagram,.tt-chart) .chord-diagram-dot{fill:var(--c);filter:drop-shadow(0 0 5px var(--c))}.transition-page :is(.tt-diagram,.tt-chart) .chord-diagram-open{stroke:#111}.transition-page :is(.tt-diagram,.tt-chart) .chord-diagram-barre{fill:var(--c);opacity:.35}.transition-page :is(.tt-diagram,.tt-chart) .chord-diagram-caption{font-family:var(--font-display);color:var(--c);text-shadow:0 0 14px color-mix(in srgb, var(--c) 60%, transparent);font-size:34px;line-height:1}.transition-page .tt-chart .chord-diagram-caption{font-size:26px}.transition-page .tt-diagram{min-height:0;margin:10px 0 6px}@media (prefers-reduced-motion:reduce){.transition-page :is(.tt-diagram,.tt-chart){animation:none}}.transition-page .tt-pair{gap:18px}.transition-page .tt-pair-chord{font-family:var(--font-display);text-align:center;border-width:2.5px;border-radius:16px;min-width:76px;padding:6px 26px;font-size:30px}.transition-page .tt-pair-chord.tt-from{box-shadow:0 0 16px color-mix(in srgb, var(--tt-from) 35%, transparent)}.transition-page .tt-pair-chord.tt-to{box-shadow:0 0 16px color-mix(in srgb, var(--tt-to) 35%, transparent)}.transition-page .tt-pair-chord.tt-from.is-target{box-shadow:0 0 0 4px color-mix(in srgb, var(--tt-from) 30%, transparent), 0 0 30px 4px var(--tt-from);text-shadow:0 0 10px #ffffffb3}.transition-page .tt-pair-chord.tt-to.is-target{box-shadow:0 0 0 4px color-mix(in srgb, var(--tt-to) 30%, transparent), 0 0 30px 4px var(--tt-to);text-shadow:none}.transition-page .tt-pair-arrow{font-size:28px}.transition-page :is(.tt-diagram,.tt-chart) .chord-diagram-caption{margin-top:-22px}.transition-page :is(.tt-diagram,.tt-chart){--c-ink:var(--tt-to-ink)}.transition-page :is(.tt-diagram,.tt-chart).tt-from{--c-ink:var(--tt-from)}.transition-page :is(.tt-diagram,.tt-chart) .chord-diagram-caption{color:var(--c-ink)}.transition-page :is(.tt-diagram,.tt-chart).tt-to .chord-diagram-finger{fill:#111}.transition-page :is(.tt-diagram,.tt-chart).tt-to .chord-diagram-dot{stroke:var(--tt-to-ink);stroke-width:1.5px}.tt-how{flex-wrap:wrap;justify-content:center;gap:8px;margin:2px 0 4px;display:flex}.tt-how span{background:#fafaf8;border:1.5px solid #111;border-radius:999px;padding:5px 12px;font-size:13px;font-weight:700}.tt-how strong{font-size:15px}.tt-rounds{gap:8px;width:100%;margin:0 0 8px;padding:0;list-style:none;display:flex}.tt-round-pip{color:#6a6a6a;background:#f1f1ef;border:1.5px solid #bdbdbb;border-radius:10px;flex:1;align-items:center;gap:6px;min-width:0;padding:7px 10px;font-size:12px;font-weight:800;display:flex}.tt-round-pip em{white-space:nowrap;text-overflow:ellipsis;font-style:normal;overflow:hidden}.tt-round-pip.is-now{color:#111;background:#fff;border-color:#111;box-shadow:3px 3px #0000002e}.tt-round-pip.is-done{color:#111}.tt-round-pip.is-clean{background:linear-gradient(90deg, color-mix(in srgb, var(--tt-from) 18%, #fafaf8), color-mix(in srgb, var(--tt-to) 35%, #fafaf8));border-color:#111}@media (width<=560px){.tt-round-pip em{display:none}.tt-round-pip{justify-content:center}}.tt-round-intro{padding:10px 0 4px;animation:.35s both tt-rise}.tt-round-label{letter-spacing:.12em;text-transform:uppercase;color:#4a4a4a;font-size:12px;font-weight:800}.tt-two{align-items:baseline;gap:12px;line-height:1;display:flex}.tt-two strong{font-family:var(--font-display);color:#111;text-shadow:5px 5px 0 color-mix(in srgb, var(--tt-to) 70%, transparent);font-size:clamp(88px,14vw,132px)}.tt-two span{letter-spacing:.14em;text-transform:uppercase;font-size:clamp(22px,3.4vw,32px);font-weight:900}.tt-intro-path{font-family:var(--font-display);margin:0;font-size:clamp(30px,5vw,44px);font-weight:700}.tt-intro-goal{color:#333;font-weight:700}.tt-keep{background:#fff;border:1.5px dashed #111;border-radius:12px;padding:8px 16px;font-weight:700}.tt-thats-it{font-size:18px;font-weight:900}@keyframes tt-rise{0%{opacity:0;transform:translateY(10px)}}.tt-countdown-wrap{width:100%;min-height:360px;position:relative}.tt-countdown-wrap .game-countdown{-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0}.tt-countdown-wrap .game-countdown-label{color:var(--ink-soft)}.tt-countdown-wrap .game-countdown-number{color:var(--ink);text-shadow:none}.tt-countdown-wrap .game-countdown-go{color:var(--gold-dark)}.tt-play{gap:14px;width:100%;display:grid}.tt-play-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.tt-play-round{letter-spacing:.08em;text-transform:uppercase;font-size:13px;font-weight:800}.tt-badge-two{color:#fafaf8;background:#111;border-radius:999px;padding:5px 14px;font-size:14px;font-weight:800}.tt-badge-two strong{color:var(--tt-to);font-size:18px}.tt-track{height:104px;margin:4px 6% 0;position:relative}.tt-track-line{background:#d6d6d4;border-radius:4px;height:8px;position:absolute;top:68px;left:0;right:0;overflow:hidden}.tt-track-line span{height:100%;width:calc(var(--pos) * 50%);background:linear-gradient(90deg, var(--tt-from), var(--tt-to));transition:width .6s cubic-bezier(.3,1.4,.5,1);display:block}.tt-node{top:52px;left:calc(var(--i) * 50%);text-align:center;min-width:58px;font-family:var(--font-display);background:#fafaf8;border:2.5px solid #111;border-radius:12px;padding:6px 12px;font-size:22px;font-weight:700;line-height:1;transition:transform .3s,box-shadow .3s;position:absolute;transform:translate(-50%)}.tt-node.tt-from{color:var(--tt-from)}.tt-node.tt-to{color:var(--tt-to-ink)}.tt-node.is-passed.tt-from{background:var(--tt-from);color:#fff}.tt-node.is-passed.tt-to,.tt-node.is-here.tt-to{background:var(--tt-to);color:#111}.tt-node.is-here.tt-from{background:var(--tt-from);color:#fff}.tt-node.is-here{transform:translate(-50%)scale(1.08)}.tt-node.is-next{animation:.7s ease-in-out infinite alternate tt-next}@keyframes tt-next{to{box-shadow:0 0 22px 4px color-mix(in srgb, var(--tt-to) 80%, transparent);transform:translate(-50%)scale(1.14)}}.tt-node.is-next.tt-from{animation-name:tt-next-from}@keyframes tt-next-from{to{box-shadow:0 0 22px 4px color-mix(in srgb, var(--tt-from) 60%, transparent);transform:translate(-50%)scale(1.14)}}.tt-runner{top:-8px;left:calc(var(--pos) * 50%);pointer-events:none;transition:left .6s cubic-bezier(.3,1.4,.5,1);position:absolute;transform:translate(-50%)}.tt-play-main{grid-template-columns:1fr auto;align-items:center;gap:clamp(16px,3vw,40px);display:grid}@media (width<=760px) and (width>=561px){.tt-play-main{grid-template-columns:1fr;justify-items:center}}.tt-cue{text-align:center;align-content:center;justify-items:center;gap:6px;min-height:250px;display:grid}.tt-cue p{margin:0}.tt-cue-flash{letter-spacing:.08em;color:#111;font-size:clamp(34px,6vw,56px);font-weight:900;animation:.45s ease-out both tt-flash}@keyframes tt-flash{0%{opacity:0;transform:scale(1.6)}60%{opacity:1;transform:scale(.95)}}.tt-cue-chord{font-family:var(--font-display);font-size:clamp(76px,12vw,120px);font-weight:700;line-height:1}.tt-cue-chord.tt-from{color:var(--tt-from);text-shadow:0 0 26px color-mix(in srgb, var(--tt-from) 35%, transparent)}.tt-cue-chord.tt-to{color:var(--tt-to-ink);text-shadow:0 0 26px color-mix(in srgb, var(--tt-to) 90%, transparent)}.is-listening .tt-cue-chord{animation:1s ease-in-out infinite alternate tt-breathe}@keyframes tt-breathe{to{transform:scale(1.06)}}.tt-cue-tick{color:#111;font-size:.6em}.is-found .tt-cue-chord{animation:.4s ease-out both tt-pop}.tt-cue-text{color:#333;font-size:16px;font-weight:700}.tt-cue-quality{color:#111;background:var(--tt-to);border:2px solid #111;border-radius:10px;padding:2px 16px;font-size:26px;font-weight:900;animation:.4s ease-out both tt-flash;transform:rotate(-2deg)}.tt-timer{font-family:var(--font-body);font-variant-numeric:tabular-nums;font-size:18px;font-weight:800}.tt-combo{color:var(--tt-from);font-weight:900;animation:.35s ease-out both tt-pop}.tt-strum{align-items:center;gap:6px;height:34px;display:flex}.tt-strum i{background:#111;border-radius:2px;width:4px;height:100%;animation:.5s ease-in-out infinite alternate tt-strum;display:block}.tt-strum i:nth-child(2){animation-delay:80ms}.tt-strum i:nth-child(3){animation-delay:.16s}.tt-strum i:nth-child(4){animation-delay:.24s}@keyframes tt-strum{0%{transform:scaleY(.3)}to{transform:scaleY(1)}}.tt-beats{gap:6px;display:flex}.tt-beats span{background:#fafaf8;border:2px solid #111;border-radius:50%;width:14px;height:14px}.transition-page .tt-play-main .tt-diagram{margin:0}.tt-round-done{padding:8px 0;animation:.35s both tt-rise}.tt-round-done h2{font-size:clamp(30px,5vw,44px)}.tt-done-stats{flex-wrap:wrap;justify-content:center;gap:12px;display:flex}.tt-done-stats span{background:#fff;border:2px solid #111;border-radius:12px;padding:8px 16px;font-weight:700}.tt-done-stats strong{margin-right:4px;font-size:22px}.tt-done-quality{font-size:17px;font-weight:800}@media (prefers-reduced-motion:reduce){.tt-play *,.tt-round-intro,.tt-round-done{animation:none!important}}.transition-page .tt-session{justify-content:flex-start;padding-top:clamp(18px,3vw,30px)}.transition-page :is(.game-menu-card,.tt-recs,.tt-mine){box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}@media (width<=560px){.transition-page .tt-preview{gap:8px}.transition-page .tt-chart{padding:10px 12px 8px}.transition-page .tt-chart .chord-diagram-md svg{width:min(28vw,110px);height:auto}.transition-page .tt-chart .chord-diagram-caption{font-size:20px}.tt-track{height:96px;margin:16px 34px 0}.tt-node{min-width:46px;padding:5px 9px;font-size:19px;top:50px}.tt-track-line{top:64px}.tt-runner{top:-2px}.tt-runner .game-avatar,.tt-runner svg{max-width:48px}}.tt-timed-note{color:#fafaf8;max-width:46ch;box-shadow:0 0 0 3px color-mix(in srgb, var(--tt-to) 70%, transparent);background:#111;border-radius:12px;margin:0;padding:10px 16px;font-size:15px;font-weight:600;animation:.35s .15s both tt-rise}.tt-timed-note strong{color:var(--tt-to)}.tt-ready{letter-spacing:.1em;text-transform:uppercase;color:var(--tt-from);margin:0;font-size:13px;font-weight:900;animation:.8s ease-in-out infinite alternate tt-breathe}@media (width<=560px){.transition-page .tt-diagram:not(.is-hidden){box-sizing:border-box;max-width:100%;padding:10px 14px 8px!important}.transition-page .tt-diagram .chord-diagram-lg svg{width:min(180px,48vw);height:auto}.transition-page .tt-diagram .chord-diagram-caption{margin-top:-14px;font-size:26px}.tt-cue{min-height:0}.tt-cue-chord{font-size:clamp(56px,18vw,76px)}.transition-page .tt-session{padding:14px 12px}}@media (height<=500px){.transition-page .tt-session{min-height:0;padding:10px 14px}.tt-rounds{display:none}.tt-play{gap:6px}.tt-track{height:72px;margin-top:0}.tt-node{padding:4px 9px;font-size:17px;top:38px}.tt-track-line{top:50px}.tt-runner{top:-10px}.tt-play-main{grid-template-columns:1fr auto;align-items:center}.tt-cue{gap:2px;min-height:0}.tt-cue-chord{font-size:56px}.tt-cue-flash{font-size:30px}.transition-page .tt-diagram .chord-diagram-lg svg{width:120px;height:auto}.transition-page .tt-diagram:not(.is-hidden){padding:8px 12px 4px!important}.transition-page .tt-diagram .chord-diagram-caption{display:none}}@media (width<=560px){.tt-play-main{grid-template-columns:1fr auto;align-items:center;gap:8px}.transition-page .tt-play-main .tt-diagram .chord-diagram-lg svg{width:min(128px,34vw)}.transition-page .tt-play-main .tt-diagram:not(.is-hidden){padding:8px 8px 4px!important}.transition-page .tt-play-main .tt-diagram .chord-diagram-caption{margin-top:-10px;font-size:20px}.tt-cue-text{font-size:14px}.tt-track{height:88px}}@media (height<=500px){.tt-play{grid-template-columns:1fr auto;grid-template-areas:"head chart""track chart""cue chart";align-items:center;column-gap:18px}.tt-play-head{grid-area:head}.tt-track{grid-area:track}.tt-play-main{display:contents}.tt-cue{grid-area:cue}.tt-play-main .tt-diagram{grid-area:chart;align-self:center}.transition-page .tt-play-main .tt-diagram .chord-diagram-lg svg{width:124px}}@media (width<=560px),(width<=1000px) and (height<=500px) and (orientation:landscape){.tt-intro>.btn-primary:last-child{bottom:calc(14px + env(safe-area-inset-bottom,0px));z-index:3;position:sticky}}@media (width<=1000px) and (height<=500px) and (orientation:landscape){.tt-round-intro{gap:6px}.tt-two strong{font-size:64px}.tt-two span{font-size:20px}.tt-intro-path{font-size:28px}.tt-round-done{gap:6px}.tt-round-done h2{font-size:28px}}.tt-get-ready{margin:2px 0 6px;font-size:26px}.tt-auto{background:#1111111f;border-radius:999px;width:min(260px,70%);height:5px;margin:10px auto 4px;overflow:hidden}.tt-auto>span{border-radius:inherit;width:0;height:100%;animation:tt-auto var(--ms,3s) linear forwards;background:#111;display:block}@keyframes tt-auto{to{width:100%}}@media (prefers-reduced-motion:reduce){.tt-auto>span{opacity:.35;width:100%;animation:none}}.tt-up-next{margin:4px 0 0;font-weight:800}.tt-skip-wait{color:inherit;font:inherit;opacity:.75;cursor:pointer;background:0 0;border:0;margin-top:6px;padding:6px 12px;font-size:13.5px;font-weight:700;text-decoration:underline}.tt-skip-wait:focus-visible{opacity:1}@media (hover:hover){.tt-skip-wait:hover{opacity:1}}.tt-setup{scroll-margin-top:calc(12px + env(safe-area-inset-top,0px))}.tt-pickers.is-picked .chord-slot-button{animation:1.1s ease-out tt-picked}@keyframes tt-picked{0%{box-shadow:0 0 0 0 color-mix(in srgb, var(--gold) 70%, transparent);border-color:var(--gold-dark)}35%{box-shadow:0 0 0 7px color-mix(in srgb, var(--gold) 35%, transparent);border-color:var(--gold-dark)}to{box-shadow:0 0 #0000}}@media (prefers-reduced-motion:reduce){.tt-pickers.is-picked .chord-slot-button{animation:none}}.progress-bar-outer{background:var(--bg-soft);border-radius:999px;width:100%;position:relative;overflow:hidden}.progress-bar-fill{border-radius:999px;height:100%;transition:width .7s cubic-bezier(.22,1,.36,1)}.progress-bar-label{color:var(--ink-soft);font-size:11px;font-weight:700;position:absolute;top:50%;right:10px;transform:translateY(-50%)}:root[data-theme=dark] .progress-bar-outer{background:color-mix(in srgb, var(--ink) 16%, transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--ink) 10%, transparent)}.progress-page-sub{color:var(--ink-soft);margin:6px 0 24px;font-weight:600}.progress-stat-grid{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:14px;margin-bottom:20px;display:grid}.progress-stat-card{background:var(--surface);border-radius:var(--r-lg);box-shadow:var(--shadow-sm);align-items:center;gap:14px;padding:18px;display:flex}.progress-stat-icon{border-radius:14px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;font-size:20px;display:flex}.progress-stat-card strong{font-family:var(--font-body);font-size:20px;display:block}.progress-stat-card span{color:var(--ink-soft);font-size:12px;font-weight:700}.progress-duo{grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px;display:grid}.progress-card{background:var(--surface);border-radius:var(--r-lg);box-shadow:var(--shadow-sm);margin-bottom:16px;padding:22px;position:relative;overflow:hidden}.progress-duo .progress-card{margin-bottom:0}.progress-card:before{content:"";background:color-mix(in srgb, var(--gold) 70%, transparent);height:3px;position:absolute;top:0;left:0;right:0}.progress-card-next:before{background:linear-gradient(90deg, color-mix(in srgb, var(--progress-fill-alt) 20%, transparent) 0%, var(--progress-fill-alt) 42%, var(--progress-fill-alt-end) 58%, color-mix(in srgb, var(--progress-fill-alt) 20%, transparent) 100%)}.progress-card-flag{border:1px solid color-mix(in srgb, var(--gold-dark) 45%, transparent);background:color-mix(in srgb, var(--gold) 14%, var(--surface));color:var(--gold-dark);letter-spacing:.09em;text-transform:uppercase;border-radius:999px;margin-bottom:8px;padding:3px 10px;font-size:10px;font-weight:800;display:inline-block}.progress-card-next .progress-card-flag{border-color:color-mix(in srgb, var(--progress-fill-alt) 50%, transparent);background:color-mix(in srgb, var(--progress-fill-alt) 14%, var(--surface));color:var(--progress-fill-alt-end)}:root[data-theme=dark] .progress-card-next .progress-card-flag{color:var(--progress-fill-alt)}.progress-card h3{text-transform:uppercase;letter-spacing:.08em;color:var(--ink-faint);margin-bottom:6px;font-size:12px}.progress-card-section-title{font-family:var(--font-display);color:var(--ink);margin-bottom:14px;font-size:21px}.progress-card-hint{color:var(--ink-soft);margin-top:8px;font-size:12.5px;font-weight:600}.progress-bars{flex-direction:column;display:flex}.progress-bar-row{border-bottom:1px solid color-mix(in srgb, var(--gold-dark) 22%, transparent);grid-template-columns:150px 1fr 48px;align-items:center;gap:12px;padding:11px 0;display:grid}.progress-bar-row:last-child{border-bottom:none}.progress-bar-row-here{border-radius:var(--r-md);background:color-mix(in srgb, var(--gold) 9%, transparent);margin:0 -12px;padding:11px 12px}.progress-bar-row-here .progress-bar-row-label{color:var(--ink)}.progress-bar-row-tag{letter-spacing:.08em;text-transform:uppercase;color:var(--gold-dark);margin-top:2px;font-size:9.5px;font-style:normal;font-weight:800;display:block}.progress-bar-row-done .progress-bar-row-label{color:var(--ink-faint)}.progress-bar-row-done .progress-bar-row-count{color:var(--gold-dark);font-size:14px}.progress-bar-row-done .progress-bar-row-fill{background:linear-gradient(90deg, var(--gold), var(--gold-dark))}.progress-bar-row-label{color:var(--ink-soft);font-size:13px;font-weight:700;line-height:1.3}.progress-bar-row-track{background:var(--bg-soft);border-radius:999px;height:10px;overflow:hidden}.progress-bar-row-fill{background:linear-gradient(90deg, var(--progress-fill), var(--progress-fill-end));border-radius:999px;height:100%;transition:width .6s}.progress-bar-row-count{text-align:right;color:var(--ink-soft);font-size:12px;font-weight:700}@media (width<=820px){.progress-duo{grid-template-columns:1fr}}@media (width<=480px){.progress-bar-row{grid-template-columns:104px 1fr 34px;gap:9px}}.journey-heading{font-family:var(--font-body);letter-spacing:.12em;text-transform:uppercase;color:var(--gold-dark);align-items:center;gap:10px;margin:28px 0 12px;font-size:13px;font-weight:800;display:flex}.journey-heading span{background:var(--gold-dark);color:#fff;letter-spacing:0;border-radius:50%;place-items:center;width:24px;height:24px;font-size:12px;display:grid}.journey-heading:after{content:"";background:color-mix(in srgb, var(--gold-dark) 40%, transparent);border-radius:2px;flex:1;height:2px}:root[data-sky=snow] .journey-heading{color:#24477a}.journey-heading:first-of-type{margin-top:8px}.journey-hero{border-radius:var(--r-lg);background:linear-gradient(120deg, color-mix(in srgb, var(--gold) 16%, var(--surface)), var(--surface));box-shadow:var(--shadow-sm), inset 0 0 0 1.5px color-mix(in srgb, var(--gold) 40%, transparent);align-items:center;gap:18px;margin-bottom:16px;padding:20px 22px;display:flex}.journey-hero .profile-avatar-badge-md{width:92px;height:92px}.journey-hero-text{flex:1;gap:4px;min-width:0;display:grid}.journey-hero-eyebrow{letter-spacing:.06em;text-transform:uppercase;color:var(--ink-soft);margin:0;font-size:12px;font-weight:800}.journey-hero h2{margin:0;font-size:26px}.journey-hero-sub{color:var(--ink-soft);margin:0 0 4px;font-weight:700}.journey-hero-hint{color:var(--ink-faint);margin:2px 0 0;font-size:12px;font-weight:600}.journey-week-days{gap:6px;margin:8px 0 14px;display:flex}.journey-week-days button{cursor:pointer;font:inherit;width:34px;height:34px;color:var(--ink-faint);background:var(--bg-soft);border:1px solid var(--line);border-radius:50%;place-items:center;font-size:12px;font-weight:800;display:grid}.journey-week-days button.is-on{background:var(--gold-dark);border-color:var(--gold-dark);color:#fff;box-shadow:0 0 10px color-mix(in srgb, var(--gold) 45%, transparent)}.journey-week-stats{grid-template-columns:repeat(5,1fr);gap:10px;display:grid}.journey-week-stats div{border-radius:var(--r-md);background:var(--bg-soft);text-align:center;gap:2px;padding:12px 8px;display:grid}.journey-week-stats strong{font-size:22px;font-family:var(--font-body);justify-content:center;align-items:center;gap:4px;display:inline-flex}.journey-week-stats span{color:var(--ink-soft);font-size:11.5px;font-weight:700}.journey-week-stats .is-gold strong{color:var(--gold-dark)}.journey-records{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px;display:grid}.journey-record{border-radius:var(--r-md);background:var(--bg-soft);align-items:center;gap:10px;padding:12px;display:flex}.journey-record-icon{font-size:22px}.journey-record strong{font-size:18px;font-family:var(--font-body);display:block}.journey-record span{color:var(--ink-soft);font-size:12px;font-weight:700}.journey-mastery-summary{flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 12px;display:flex}.journey-mastery-note{color:var(--ink-faint);font-size:11.5px;font-weight:600}.journey-pill{border-radius:999px;padding:3px 10px;font-size:12px;font-weight:800}.journey-pill-mastered{background:color-mix(in srgb, var(--gold) 25%, var(--surface));color:var(--gold-dark)}.journey-pill-practicing{background:color-mix(in srgb, var(--green) 18%, var(--surface));color:var(--green-dark,var(--green))}:root[data-theme=dark] .journey-pill-practicing{color:color-mix(in srgb, var(--green) 58%, #fff)}.journey-pill-learning{background:color-mix(in srgb, var(--progress-fill-alt) 22%, var(--surface));color:var(--ink)}.journey-mastery-grid{grid-template-columns:repeat(auto-fill,minmax(92px,1fr));gap:8px;display:grid}.journey-chord{border-radius:var(--r-md);text-align:center;background:var(--bg-soft);border:1.5px solid var(--line);color:var(--ink);gap:2px;padding:10px 8px;text-decoration:none;transition:transform .15s,border-color .15s;display:grid}@media (hover:hover){.journey-chord:hover{transform:translateY(-2px)}}.journey-chord strong{font-size:17px;font-family:var(--font-body)}.journey-chord span{letter-spacing:.04em;text-transform:uppercase;color:var(--ink-soft);font-size:10.5px;font-weight:800}.journey-chord-mastered{border-color:var(--gold-dark);background:color-mix(in srgb, var(--gold) 18%, var(--surface));box-shadow:0 0 10px color-mix(in srgb, var(--gold) 30%, transparent)}.journey-chord-mastered span{color:var(--gold-dark)}.journey-chord-practicing{border-color:color-mix(in srgb, var(--green) 60%, var(--line))}.journey-chord-learning{border-style:dashed;border-color:var(--progress-fill-alt)}.journey-chord-locked{opacity:.45;cursor:default}@media (hover:hover){.journey-chord-locked:hover{transform:none}}.journey-more{color:var(--gold-dark);font:inherit;cursor:pointer;background:0 0;border:0;margin-top:10px;font-size:13px;font-weight:800}.journey-ach{gap:12px;margin:0;padding:0;list-style:none;display:grid}.journey-ach li{align-items:center;gap:10px;display:flex}.journey-ach-icon{font-size:22px}.journey-ach li>div{flex:1;gap:3px;min-width:0;display:grid}.journey-ach strong{font-size:14px}.journey-ach span{color:var(--ink-soft);font-size:12px;font-weight:600}.journey-ach em{color:var(--gold-dark);align-items:center;gap:3px;font-size:12.5px;font-style:normal;font-weight:800;display:inline-flex}.journey-avatar-row{align-items:center;gap:14px;display:flex}.journey-avatar-row>div{flex:1;gap:6px;display:grid}.journey-avatar-count{letter-spacing:.04em;text-transform:uppercase;color:var(--ink-faint);margin:0;font-size:12px;font-weight:800}.journey-avatar-goal{margin:0;font-weight:600}.journey-avatar-btn{justify-self:start;margin-top:4px}.journey-next{text-align:center;background:linear-gradient(160deg, color-mix(in srgb, var(--gold) 14%, var(--surface)), var(--surface));padding:26px 22px}.journey-next-eyebrow{letter-spacing:.12em;text-transform:uppercase;color:var(--gold-dark);margin:0;font-size:12px;font-weight:800}.journey-next h3{margin:6px 0;font-size:22px}.journey-next .btn{margin-top:8px}@media (width<=720px){.journey-week-stats{grid-template-columns:repeat(2,1fr)}.journey-week-stats .is-gold{grid-column:span 2}.progress-duo{grid-template-columns:1fr}}.progress-card.journey-next h3{font-family:var(--font-display,inherit);text-transform:none;letter-spacing:0;color:var(--ink);font-size:24px}.journey-week-days button.is-picked{outline:3px solid color-mix(in srgb, var(--gold) 55%, transparent);outline-offset:2px}@media (hover:hover){.journey-week-days button:hover{transform:translateY(-2px)}}.journey-day{border-radius:var(--r-md);background:var(--bg-soft);padding:12px 14px}.journey-day-title{justify-content:space-between;align-items:center;gap:10px;margin:0 0 8px;font-weight:800;display:flex}.journey-day-title button{color:var(--gold-dark);font:inherit;cursor:pointer;background:0 0;border:0;font-size:12.5px;font-weight:800}.journey-day ul{gap:6px;margin:0;padding:0;font-weight:700;list-style:none;display:grid}.journey-day li.is-gold{color:var(--gold-dark);align-items:center;gap:4px;display:flex}.journey-day .journey-week-stats{margin-top:6px}.journey-day .journey-week-stats div{background:var(--surface);box-shadow:inset 0 0 0 1px var(--line)}@media (width<=560px){.journey-day-title{flex-direction:column;align-items:flex-start;gap:4px}}:root[data-theme=dark] .progress-bar-row-track{background:color-mix(in srgb, var(--ink) 16%, transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--ink) 10%, transparent)}@media (width<=560px){.progress-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:16px}.progress-stat-card{border-radius:var(--r-md);gap:10px;padding:10px 12px}.progress-stat-card:last-child:nth-child(odd){grid-column:1/-1}.progress-stat-icon{border-radius:10px;width:32px;height:32px;font-size:16px}.progress-stat-card strong{font-size:17px;line-height:1.15}.progress-stat-card span{font-size:11px;line-height:1.25;display:block}.journey-week-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.journey-week-stats .is-gold{grid-column:span 2}.journey-week-stats div{gap:0;padding:8px 4px}.journey-week-stats strong{font-size:18px}.journey-week-stats span{font-size:10.5px;line-height:1.2}.journey-records{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.journey-record{align-items:flex-start;gap:8px;padding:9px 10px}.journey-record:last-child:nth-child(odd){grid-column:1/-1}.journey-record-icon{font-size:18px;line-height:1.2}.journey-record strong{font-size:16px}.journey-record span{font-size:11px;line-height:1.25;display:block}}.achievement-badge{perspective:1400px;text-align:left;width:100%;height:208px;font-family:var(--font-body);background:0 0;border:none;padding:0;display:block}.achievement-badge-inner{width:100%;height:100%;transform-style:preserve-3d;transition:transform .55s cubic-bezier(.4,.15,.2,1);position:relative}.achievement-badge-flipped .achievement-badge-inner{transform:rotateY(180deg)}.achievement-badge-face{backface-visibility:hidden;border-radius:var(--r-lg);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:6px;padding:18px 16px;display:flex;position:absolute;inset:0}.achievement-badge-back{justify-content:center;gap:8px;transform:rotateY(180deg)}.achievement-badge-back.achievement-badge-locked{background:var(--navy-soft);box-shadow:inset 0 0 0 1px #ffffff14}.achievement-badge-back.achievement-badge-locked .achievement-badge-how,.achievement-badge-back.achievement-badge-locked .achievement-badge-desc{color:var(--on-navy)}.achievement-badge-back.achievement-badge-earned{background:linear-gradient(165deg,#8a6a2a 0%,#6b4f14 100%);box-shadow:0 0 0 1px #c8992e73,0 8px 22px #6b4f1466}@media (hover:hover){.achievement-badge:hover .achievement-badge-face{filter:brightness(1.03)}}.achievement-badge:active .achievement-badge-inner{transform:scale(.98)}.achievement-badge-flipped:active .achievement-badge-inner{transform:rotateY(180deg)scale(.98)}.achievement-badge-locked{background:var(--bg-soft);box-shadow:inset 0 0 0 1px var(--line)}.achievement-badge-locked .achievement-badge-icon{filter:grayscale()opacity(.55)}.achievement-badge-locked .achievement-badge-title{color:var(--ink-soft)}.achievement-badge-earned{background:linear-gradient(165deg,#fff6e0 0%,#f3dda3 55%,#e8c264 100%);box-shadow:0 0 0 1px #c8992e59,0 8px 22px #c8992e47}.achievement-badge-icon{font-size:34px;line-height:1}.achievement-badge-title{font-family:var(--font-display);color:var(--ink);font-size:15px;font-weight:600;line-height:1.25}.achievement-badge-earned-mark{max-width:100%;color:var(--navy);letter-spacing:.02em;white-space:nowrap;text-overflow:ellipsis;background:#3a2c0829;border-radius:999px;padding:4px 10px;font-size:10px;font-weight:800;overflow:hidden}.achievement-badge-progress{flex-direction:column;align-items:center;gap:4px;width:100%;margin-top:2px;display:flex}.achievement-badge-progress-track{background:var(--line);border-radius:999px;width:100%;height:6px;overflow:hidden}.achievement-badge-progress-fill{background:linear-gradient(90deg, var(--gold), var(--gold-dark));border-radius:999px;height:100%;transition:width .3s}.achievement-badge-progress-label{color:var(--ink-faint);font-size:10.5px;font-weight:700}.achievement-badge-how{text-transform:uppercase;letter-spacing:.08em;color:var(--ink-faint);margin:0;font-size:10.5px;font-weight:700}.achievement-badge-desc{color:var(--ink-soft);margin:0;font-size:13px;font-weight:500;line-height:1.4}.achievement-badge-back.achievement-badge-earned .achievement-badge-desc,.achievement-badge-back.achievement-badge-earned .achievement-badge-how{color:#f6e8c8}.achievement-badge-date{color:var(--ink-faint);margin:0;font-size:11px;font-weight:700}.achievement-badge-back.achievement-badge-earned .achievement-badge-date{color:#e8d4a4}.achievement-badge-reward{white-space:nowrap;color:var(--gold-dark);align-items:center;gap:5px;margin:2px 0 0;font-size:11.5px;font-weight:700;display:flex}.achievement-badge-back.achievement-badge-earned .achievement-badge-reward{color:#ffe9b0}:root[data-theme=dark] .achievement-badge-front.achievement-badge-earned{background:linear-gradient(165deg,#4a3c1c 0%,#6b5322 55%,#8a6a2a 100%);box-shadow:0 0 0 1px #e7c26459,0 8px 22px #0006}:root[data-theme=dark] .achievement-badge-front.achievement-badge-earned .achievement-badge-earned-mark{color:#f6e8c8;background:#fff0c829}@media (prefers-reduced-motion:reduce){.achievement-badge-inner{transition:none}}.profile-hero{background:var(--surface);border-radius:var(--r-xl);box-shadow:var(--shadow-md);align-items:center;gap:20px;margin-bottom:20px;padding:26px;display:flex}.profile-avatar{background:0 0;border:none;flex-shrink:0;padding:0;transition:transform .15s;position:relative}@media (hover:hover){.profile-avatar:hover{transform:scale(1.04)}}.profile-avatar-edit{background:var(--surface);width:26px;height:26px;box-shadow:var(--shadow-sm);border-radius:50%;place-items:center;font-size:13px;display:grid;position:absolute;bottom:-2px;right:-2px}.profile-avatar-picker{background:var(--surface);border-radius:var(--r-lg);box-shadow:var(--shadow-md);margin-bottom:20px;padding:18px 20px}.profile-avatar-picker-label{color:var(--ink-soft);margin:0 0 14px;font-size:13px;font-weight:700}.profile-collectible-hint{color:var(--ink-soft);margin:14px 0 0;font-size:13px;font-weight:600}.profile-collectible-grid{grid-template-columns:repeat(auto-fill,minmax(76px,1fr));gap:10px;display:grid}.profile-collectible-option{border-radius:var(--r-sm);background:var(--bg-soft);border:2px solid #0000;flex-direction:column;align-items:center;gap:4px;padding:8px 4px 6px;transition:transform .1s,border-color .1s,background .1s;display:flex}@media (hover:hover){.profile-collectible-option:hover{background:var(--surface-muted);transform:translateY(-2px)}}.profile-collectible-option span{color:var(--ink-soft);text-align:center;font-size:10.5px;font-weight:700;line-height:1.2}.profile-collectible-option-selected{border-color:var(--green);background:color-mix(in srgb, var(--green) 16%, var(--surface))}.profile-collectible-option-selected span{color:var(--green-dark)}.profile-collectible-empty{color:var(--ink-soft);padding:12px 0;font-size:13.5px;font-weight:600}.profile-collectible-empty a{font-weight:700;text-decoration:underline}.profile-collection-teaser{background:var(--surface);border-radius:var(--r-lg);box-shadow:var(--shadow-sm);justify-content:space-between;align-items:center;gap:16px;margin-bottom:30px;padding:20px 24px;display:flex}.profile-collection-teaser .profile-section-title{margin:0 0 4px}.profile-collection-teaser-sub{color:var(--ink-soft);font-size:13.5px;font-weight:600}@media (width<=560px){.profile-collection-teaser{flex-direction:column;align-items:flex-start}}.profile-name-btn{font-family:var(--font-display);color:var(--ink);background:0 0;border:none;align-items:center;gap:8px;font-size:22px;font-weight:600;display:flex}.profile-name-btn span{opacity:.5;font-size:14px}.profile-name-edit{gap:8px;display:flex}.profile-name-edit input{font-family:var(--font-body);border:2px solid var(--line);border-radius:var(--r-md);max-width:200px;padding:8px 14px;font-size:18px;font-weight:700}.profile-level{color:var(--ink-soft);margin-top:6px;font-size:13.5px;font-weight:700}.profile-stats-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-bottom:30px;display:grid}.profile-stat-card{background:var(--surface);border-radius:var(--r-md);box-shadow:var(--shadow-sm);text-align:center;flex-direction:column;align-items:center;gap:4px;padding:16px;display:flex}.profile-stat-value{min-height:26px;font-family:var(--font-body);justify-content:center;align-items:center;gap:6px;font-size:20px;line-height:1.3;display:flex}.profile-stat-icon{align-items:center;display:flex}.profile-stat-label{color:var(--ink-soft);justify-content:center;align-items:flex-start;min-height:2.7em;font-size:11.5px;font-weight:700;line-height:1.35;display:flex}.profile-section-title{margin:8px 0 14px;font-size:18px}.profile-achievements-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px;margin-bottom:30px;display:grid}@media (width<=599px){.profile-achievements-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.profile-achievements-grid .achievement-badge{height:148px}.profile-achievements-grid .achievement-badge-face{border-radius:14px;gap:5px;padding:10px 5px}.profile-achievements-grid .achievement-badge-icon{font-size:24px}.profile-achievements-grid .achievement-badge-title{overflow-wrap:break-word;font-size:10.5px;line-height:1.2}.profile-achievements-grid .achievement-badge-earned-mark{letter-spacing:0;white-space:normal;border-radius:8px;padding:3px 6px;font-size:9px;line-height:1.2}.profile-achievements-grid .achievement-badge-earned-mark span{display:block}.profile-achievements-grid .achievement-badge-progress-label{font-size:9px}.profile-achievements-grid .achievement-badge-back{gap:4px}.profile-achievements-grid .achievement-badge-how{letter-spacing:.03em;white-space:nowrap;font-size:8.5px;line-height:1.2}.profile-achievements-grid .achievement-badge-desc{overflow-wrap:break-word;font-size:10px;line-height:1.3}.profile-achievements-grid .achievement-badge-date{font-size:9px}.profile-achievements-grid .achievement-badge-reward{gap:3px;font-size:9.5px}}.profile-scores-grid{grid-template-columns:repeat(auto-fit,minmax(175px,1fr));gap:12px;display:grid}.profile-score-card{background:var(--surface);border-radius:var(--r-md);box-shadow:var(--shadow-sm);flex-direction:column;gap:2px;min-width:0;padding:14px 18px 16px;display:flex}.profile-score-name{color:var(--ink);overflow-wrap:anywhere;margin-bottom:6px;font-size:14px;font-weight:700}.profile-score-card strong{font-family:var(--font-body);color:var(--purple-dark);font-size:28px;line-height:1.1}.profile-score-unit{color:var(--ink-soft);font-size:12.5px;font-weight:600}.profile-score-extra{color:var(--ink-faint,var(--ink-soft));margin-top:4px;font-size:12px}@media (width<=520px){.profile-hero{gap:8px;padding:14px}.profile-hero-info{min-width:0}.profile-name-btn{font-size:18px}}.profile-avatar-done{margin-top:16px;padding:10px 24px}:root[data-theme=dark] .profile-score-card strong{color:#c4a6ff}.profile-title{margin-bottom:22px}.pack-card{background:var(--surface);border-radius:var(--r-lg);box-shadow:var(--shadow-sm);flex-direction:column;transition:transform .15s,box-shadow .15s;display:flex;overflow:hidden}@media (hover:hover){.pack-card:hover{box-shadow:var(--shadow-md);transform:translateY(-3px)}}.pack-card-art{isolation:isolate;background:radial-gradient(120% 90% at 50% 0%, color-mix(in srgb, var(--pack-to) 70%, #fff 10%) 0%, transparent 60%), linear-gradient(160deg, var(--pack-from), var(--pack-to));height:150px;position:relative;overflow:hidden}.pack-card-pattern{opacity:.14;background-image:linear-gradient(45deg,#fff 1px,#0000 1px),linear-gradient(-45deg,#fff 1px,#0000 1px);background-size:14px 14px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(at 50% 60%,#000 30%,#0000 80%);mask-image:radial-gradient(at 50% 60%,#000 30%,#0000 80%)}.pack-card-frame{z-index:1;border:1px solid #f0d6968c;border-radius:12px;position:absolute;inset:8px;box-shadow:inset 0 0 0 3px #00000014,inset 0 0 24px #0000002e}.pack-card-cast{z-index:2;justify-content:center;align-items:flex-end;padding-bottom:12px;display:flex;position:absolute;inset:0}.pack-card-side{filter:drop-shadow(0 6px 8px #00000059);transition:transform .25s;display:block}.pack-card-side-l{transform:translate(14px,-2px)rotate(-10deg)}.pack-card-side-r{transform:translate(-14px,-2px)rotate(10deg)}.pack-card-star{z-index:1;color:#0c0a14c7;place-items:center;margin-bottom:8px;display:grid;position:relative}.pack-card-star .critter-frame{box-shadow:none;background:0 0}.pack-card-star-halo{background:radial-gradient(circle,#ffecaabf 0%,#ffdc8240 45%,#0000 70%);border-radius:50%;animation:3.2s ease-in-out infinite alternate pack-halo;position:absolute;inset:-14px}.pack-card-badge{z-index:3;letter-spacing:.12em;text-transform:uppercase;white-space:nowrap;color:#fff6dd;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#00000047;border:1px solid #f0d69680;border-radius:999px;padding:3px 11px;font-size:10.5px;font-weight:800;position:absolute;top:14px;left:50%;transform:translate(-50%)}.pack-card-sheen{z-index:4;pointer-events:none;background:linear-gradient(105deg,#0000 40%,#ffffff47 48%,#fff0c81f 52%,#0000 60%);transition:transform .9s;position:absolute;inset:-40% -60%;transform:translate(-60%)}@media (hover:hover){.pack-card:hover .pack-card-sheen{transform:translate(60%)}.pack-card:hover .pack-card-side-l{transform:translate(8px,-6px)rotate(-14deg)}.pack-card:hover .pack-card-side-r{transform:translate(-8px,-6px)rotate(14deg)}}@media (prefers-reduced-motion:reduce){.pack-card-star-halo{animation:none}.pack-card-sheen{display:none}}.pack-card-body{flex-direction:column;gap:10px;padding:16px 18px 18px;display:flex}.pack-card-name{margin:0;font-size:18px}.pack-card-tagline{color:var(--ink-soft);min-height:32px;margin:0;font-size:12.5px;font-weight:600}.pack-card-odds{flex-wrap:wrap;gap:6px;display:flex}.pack-card-odds-chip{background:color-mix(in srgb, var(--chip-color) 16%, var(--surface));color:color-mix(in srgb, var(--chip-color) 70%, #000);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--chip-color) 45%, transparent);border-radius:999px;padding:3px 8px;font-size:10.5px;font-weight:700}:root[data-theme=dark] .pack-card-odds-chip{color:color-mix(in srgb, var(--chip-color) 60%, #fff)}.pack-card-note{color:var(--ink-soft);margin:0;font-size:11.5px;font-weight:700}.pack-card-footer{justify-content:space-between;align-items:center;gap:10px;margin-top:4px;display:flex}.pack-card-cost{color:var(--gold-dark);align-items:center;gap:5px;font-size:15px;font-weight:700;display:flex}.pack-card-footer .btn{white-space:nowrap;padding:10px 16px;font-size:13.5px}.pack-card-footer .btn:disabled{opacity:.6;cursor:not-allowed}.collectible-card{background:var(--surface);border-radius:var(--r-lg);box-shadow:var(--shadow-sm);text-align:center;flex-direction:column;align-items:center;gap:6px;padding:16px 12px 14px;display:flex}.collectible-card-locked{opacity:.85}.collectible-card-name{font-family:var(--font-display);min-height:18px;margin-top:4px;font-size:14px;font-weight:600}.collectible-card-tags{flex-wrap:wrap;justify-content:center;gap:5px;display:flex}.collectible-card-rarity{background:color-mix(in srgb, var(--chip-color) 18%, var(--surface));color:var(--chip-color);border-radius:999px;padding:2px 8px;font-size:10px;font-weight:700}.collectible-card-pack{background:var(--bg-soft);color:var(--ink-soft);border-radius:999px;padding:2px 8px;font-size:10px;font-weight:700}.collectible-card-count{color:var(--ink-soft);font-size:11px;font-weight:700}.collectible-card-equip{margin-top:4px;padding:7px 16px;font-size:12.5px}.collectible-card-locked-label{color:var(--ink-faint);margin-top:6px;font-size:11px;font-weight:700}.lineup{border-radius:var(--r-lg);background:var(--lineup-plate);box-shadow:inset 0 0 0 1px var(--lineup-plate-edge), inset 0 0 0 5px color-mix(in srgb, var(--lineup-metal) 22%, transparent), var(--shadow-md);padding:24px 22px 20px}.lineup-series{box-shadow:none;background:0 0;padding:0}.lineup-series+.lineup-series{margin-top:26px}.lineup-series-head{color:var(--ink);background:0 0;border-radius:0;align-items:center;gap:12px;padding:0 0 2px;display:flex}.lineup-series-head:after{content:"";background:linear-gradient(90deg, color-mix(in srgb, var(--lineup-metal) 55%, transparent), transparent);flex:1;height:1px}.lineup-series-title{font-family:var(--font-body);letter-spacing:.18em;text-transform:uppercase;color:var(--lineup-metal);white-space:nowrap;font-size:11.5px;font-weight:800}.lineup-series-count{font-family:var(--font-body);letter-spacing:.06em;border:1px solid color-mix(in srgb, var(--lineup-metal) 45%, transparent);color:var(--lineup-metal);background:0 0;border-radius:999px;order:3;padding:2px 10px;font-size:11px;font-weight:800}.lineup-series-tagline{color:var(--ink-soft);margin:4px 0 14px;font-size:12px;font-style:italic;font-weight:500}.lineup-grid{grid-template-columns:repeat(auto-fill,minmax(116px,1fr));gap:12px;margin:0;padding:0;list-style:none;display:grid}.lineup-item{background:color-mix(in srgb, var(--lineup-metal) 5%, var(--surface));border-radius:var(--r-md);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--lineup-metal) 18%, transparent);opacity:.6;flex-direction:column;align-items:center;gap:2px;padding:14px 8px 10px;transition:opacity .2s,box-shadow .2s;display:flex;position:relative}.lineup-item-owned{opacity:1;box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--lineup-metal) 55%, transparent), 0 1px 10px color-mix(in srgb, var(--lineup-metal) 14%, transparent)}.lineup-check{border:2px solid var(--line);background:var(--bg-soft);color:#0000;border-radius:50%;place-items:center;width:17px;height:17px;font-size:10px;font-weight:800;line-height:1;display:grid;position:absolute;top:7px;left:7px}.lineup-check-ticked{border-color:var(--green);background:var(--green);color:#fff}.lineup-worn{text-transform:uppercase;letter-spacing:.04em;color:var(--gold-dark);background:color-mix(in srgb, var(--gold) 22%, var(--surface));border-radius:999px;padding:2px 6px;font-size:9px;font-weight:800;position:absolute;top:7px;right:7px}.lineup-num{font-family:var(--font-body);color:var(--ink-faint);margin-top:4px;font-size:11px;font-weight:800}.lineup-name{text-align:center;font-size:12px;font-weight:700;line-height:1.25}.lineup-name-unknown{color:var(--ink-faint);letter-spacing:.12em}.lineup-rarity{background:color-mix(in srgb, var(--chip-color) 18%, var(--surface));color:var(--chip-color);border-radius:999px;margin-top:3px;padding:2px 8px;font-size:10px;font-weight:800}.lineup-dupes{color:var(--ink-faint);font-size:10px;font-weight:800;position:absolute;bottom:6px;right:8px}@media (width<=520px){.lineup{padding:18px 12px 16px}.lineup-series{padding:0}.lineup-grid{grid-template-columns:repeat(auto-fill,minmax(min(96px,33.333% - 6px),1fr));gap:8px}.lineup-item{padding:16px 4px 9px}.lineup-check{top:5px;left:5px}.lineup-worn{letter-spacing:.02em;padding:2px 5px;top:4px;right:4px}.lineup-rarity{padding:2px 6px}}.collection-page-sub{color:var(--ink-soft);white-space:nowrap;text-overflow:ellipsis;margin:6px 0 20px;font-weight:600;overflow:hidden}.collection-page-sub-short{display:none}@media (width<=720px){.collection-page-sub{font-size:clamp(12.5px,3.9vw,16px)}.collection-page-sub-long{display:none}.collection-page-sub-short{display:inline}}.collection-balance-row{background:var(--surface);border-radius:var(--r-lg);box-shadow:var(--shadow-sm);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px;padding:16px 20px;display:flex}.collection-balance{font-family:var(--font-display);color:var(--gold-dark);align-items:center;gap:8px;font-size:20px;font-weight:600;display:flex}.collection-progress-label{color:var(--ink-soft);font-size:13px;font-weight:700}.collection-tabs{gap:8px;margin-bottom:22px;display:flex}.collection-tab{border:2px solid var(--line);background:var(--surface);border-radius:var(--r-md);color:var(--ink-soft);padding:10px 18px;font-size:14px;font-weight:700}.collection-tab-active{border-color:var(--gold);background:color-mix(in srgb, var(--gold) 14%, var(--surface));color:var(--ink)}.pack-shop-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px;display:grid}.collection-filters{flex-direction:column;gap:10px;margin-bottom:22px;display:flex}.collection-filter-group{flex-wrap:wrap;align-items:baseline;gap:10px;display:flex}.collection-filter-label{text-transform:uppercase;letter-spacing:.06em;color:var(--ink-faint);flex-shrink:0;width:52px;font-size:11px;font-weight:700}.collection-filter-chips{flex-wrap:wrap;gap:6px;display:flex}.collection-chip{border:1px solid var(--line);background:var(--surface);color:var(--ink-soft);border-radius:999px;padding:6px 12px;font-size:12px;font-weight:700}.collection-chip-active{border-color:var(--gold);background:color-mix(in srgb, var(--gold) 16%, var(--surface));color:var(--ink)}.collection-grid{grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:14px;display:grid}@media (width<=560px){.collection-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.collection-grid .collectible-card{border-radius:14px;gap:4px;min-width:0;padding:8px 4px}.collection-grid .collectible-card .critter-frame{aspect-ratio:1;max-width:70px;width:100%!important;height:auto!important}.collection-grid .collectible-card-name{-webkit-line-clamp:2;overflow-wrap:anywhere;-webkit-box-orient:vertical;min-height:26px;margin-top:2px;font-size:10.5px;line-height:1.2;display:-webkit-box;overflow:hidden}.collection-grid .collectible-card-pack{display:none}.collection-grid .collectible-card-rarity{padding:1px 6px;font-size:8.5px}.collection-grid .collectible-card-equip{width:100%;margin-top:2px;padding:5px 4px;font-size:10.5px}.collection-grid .collectible-card-count{font-size:10px}.collection-grid .collectible-card-locked-label{margin-top:2px;font-size:9.5px;line-height:1.2}}.collection-empty{text-align:center;color:var(--ink-soft);grid-column:1/-1;padding:30px;font-weight:700}@media (width<=560px){.collection-filter-group{flex-direction:column;align-items:flex-start;gap:6px}.collection-filter-label{width:auto}}.lesson-shell{max-width:640px}.page.lesson-shell{box-shadow:none;background:0 0}.lesson-shell-topbar{align-items:center;gap:16px;margin-bottom:32px;display:flex}.lesson-shell-back{width:40px;height:40px;box-shadow:var(--shadow-sm);color:var(--ink-soft);background:#fff;border:none;border-radius:50%;flex-shrink:0;font-size:16px;font-weight:700}@media (hover:hover){.lesson-shell-back:hover{color:var(--ink)}}.lesson-shell-dots{flex:1;gap:8px;display:flex}.lesson-shell-dot{background:var(--bg-soft);border-radius:999px;flex:1;height:8px;transition:background .3s}.lesson-shell-body{isolation:isolate;animation:.35s both fade-up;position:relative}.lesson-shell-body:before{content:"";z-index:-1;background:color-mix(in srgb, var(--bg) 84%, transparent);filter:blur(18px);pointer-events:none;border-radius:40px;position:absolute;inset:-14px -22px}:is(.lesson-shell,.warmup-page) .chord-diagram{--chart-string:#8f8a86;--chart-fret:#bdb7b2;background:#fffdf9;border-radius:16px;padding:12px 14px 10px;box-shadow:0 0 0 1.5px #281e1e38,0 6px 18px #00000029}:is(.lesson-shell,.warmup-page) .chord-diagram :is(.chord-diagram-nut,.chord-diagram-position){fill:#241c1c}:is(.lesson-shell,.warmup-page) .chord-diagram .chord-diagram-caption{color:#241c1c}:is(.lesson-chart-card,.lesson-mic-panel) .chord-diagram{box-shadow:none;background:0 0;border-radius:0;padding:0}.lesson-step{text-align:center}.lesson-step-eyebrow{letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:8px;font-size:13px;font-weight:700}.lesson-step h1{margin-bottom:14px;font-size:28px}.lesson-step-intro{color:var(--ink-soft);max-width:440px;margin:0 auto 28px;font-size:16px;font-weight:600;line-height:1.5}.lesson-step-diagrams{flex-direction:column;align-items:center;gap:28px;margin-bottom:32px;display:flex}.lesson-step-feedback{min-height:30px;margin:18px 0;font-size:16px;font-weight:700;transition:color .2s}.lesson-feedback-good{color:var(--green-dark)}.lesson-feedback-warm{color:var(--orange-dark)}.lesson-feedback-neutral{color:var(--ink-soft)}.lesson-step-actions{flex-wrap:wrap;justify-content:center;gap:12px;margin-top:12px;display:flex}.lesson-step-actions-stack{align-items:center}.lesson-hear-btn-playing{border-color:var(--green)}@media (width<=520px){.lesson-step-actions-stack{flex-direction:column}.lesson-step-actions-stack .btn{width:100%}}.lesson-mic-panel{border-radius:var(--r-lg);box-shadow:var(--shadow-md);background:#fff;flex-direction:column;align-items:center;gap:18px;max-width:420px;margin:0 auto 24px;padding:28px 24px;display:flex}.lesson-chart-toggle{align-self:flex-end;padding:8px 16px;font-size:12px}.lesson-metronome-cue{text-align:center;color:var(--purple-dark);margin:10px 0 0;font-weight:700}.lesson-mic-status{color:var(--ink-soft);align-items:center;gap:10px;font-weight:700;display:flex}.lesson-mic-panel .lesson-mic-status{color:#57515c}.lesson-mic-dot{background:var(--locked);border-radius:50%;width:10px;height:10px}.lesson-mic-dot-live{background:var(--red);animation:1.2s ease-out infinite node-pulse}.lesson-error{color:var(--red);font-size:14px;font-weight:700}.lesson-step-actions-stacked{flex-direction:column;align-items:center;gap:10px}.lesson-step-skip{color:var(--ink-soft);cursor:pointer;background:0 0;border:none;margin:10px auto 0;font-size:13px;font-weight:700;text-decoration:underline;display:block}@media (hover:hover){.lesson-step-skip:hover{color:var(--ink)}}.recall-countdown{place-items:center;min-height:160px;display:grid}.recall-countdown-number{font-family:var(--font-body);color:var(--gold-dark);font-size:84px;line-height:1;animation:.5s cubic-bezier(.2,1.3,.4,1) both recall-tick}@keyframes recall-tick{0%{opacity:0;transform:scale(.55)}to{opacity:1;transform:scale(1)}}.recall-verdict{margin-bottom:4px}.recall-verdict-good{color:var(--green-dark,var(--green))}.recall-reveal{justify-content:center;margin:14px 0 4px;display:flex}.recall-next{color:var(--ink-faint);margin:-4px 0 10px;font-size:13px;font-weight:700}.recognize-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:18px 0 6px;display:grid}.recognize-option{border:2px solid var(--line);border-radius:var(--r-lg);background:var(--surface);cursor:pointer;place-items:center;min-width:0;padding:10px 6px;transition:border-color .15s,transform .15s;display:grid;position:relative;overflow:hidden}@media (hover:hover){.recognize-option:hover:not(:disabled){border-color:var(--gold-dark)}}.recognize-grid+.lesson-step-actions .btn{scroll-margin-bottom:calc(18px + env(safe-area-inset-bottom,0px))}.recognize-option:disabled{cursor:default}.recognize-right{border-color:var(--green);box-shadow:0 0 0 3px color-mix(in srgb, var(--green) 24%, transparent)}.recognize-wrong{border-color:var(--red);opacity:.6}.recognize-option .chord-diagram{width:100%;max-width:180px}.recognize-option .chord-diagram svg{width:100%;height:auto}.recognize-tag{font-family:var(--font-body);color:var(--ink-soft);font-size:15px;font-weight:800;position:absolute;bottom:6px;right:8px}.recognize-right .recognize-tag{color:var(--green-dark,var(--green))}.recognize-wrong .recognize-tag{color:var(--red)}@media (prefers-reduced-motion:reduce){.recall-countdown-number{animation:none}}.lesson-chart-card{background:#fffdf9;border:2px solid #281e1ed9;border-radius:18px;place-items:center;margin:4px auto 6px;padding:18px 30px 14px;animation:.22s ease-out both lesson-chart-in;display:grid;box-shadow:0 10px 28px #00000047}.lesson-chart-card .chord-diagram-lg svg{width:min(240px,62vw);height:auto}.lesson-chart-card .chord-diagram-caption{color:#241c1c;font-size:22px}.lesson-chart-card .chord-diagram-string{stroke:#8f8a86}.lesson-chart-card .chord-diagram-fretline{stroke:#bdb7b2}.lesson-chart-card .chord-diagram-nut{fill:#241c1c}.lesson-mic-panel .chord-diagram-caption{color:#241c1c}.lesson-mic-panel .chord-diagram-nut,.lesson-mic-panel .chord-diagram-position{fill:#241c1c}.lesson-mic-panel .chord-diagram-string{stroke:#8f8a86}.lesson-mic-panel .chord-diagram-fretline{stroke:#bdb7b2}@keyframes lesson-chart-in{0%{opacity:0;transform:scale(.94)}}@media (width<=560px),(width<=1000px) and (height<=500px) and (orientation:landscape){.lesson-chart-card{box-sizing:border-box;max-width:100%;padding:12px 16px 10px}.lesson-chart-card .chord-diagram-lg svg{width:min(210px,56vw)}.lesson-mic-panel-chart{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:center;gap:12px;padding:16px 14px;display:grid}.lesson-mic-panel-chart>*{grid-column:2;min-width:0}.lesson-mic-panel-chart>.lesson-chart-toggle{grid-column:1/-1;justify-self:end}.lesson-mic-panel-chart>.lesson-chart-card{grid-area:2/1/span 3;width:100%;margin:0;padding:10px 8px 8px}.lesson-mic-panel-chart>.lesson-error{grid-column:1/-1}.lesson-mic-panel-chart .lesson-chart-card .chord-diagram-lg svg{width:100%}.lesson-mic-panel-chart .lesson-chart-card .chord-diagram-caption{font-size:18px}.lesson-mic-panel-chart .lesson-mic-status{text-align:center;flex-wrap:wrap;justify-content:center;gap:6px;font-size:13px}.lesson-mic-panel-chart .confidence-bar{gap:6px}.lesson-mic-panel-chart .confidence-bar-label{min-width:0;font-size:10.5px}.lesson-mic-panel-chart .waveform-canvas{height:54px}}@media (width<=899px),(height<=500px){.lesson-shell{min-height:calc(100vh - var(--bottom-nav-h) - env(safe-area-inset-bottom,0px));min-height:calc(100dvh - var(--bottom-nav-h) - env(safe-area-inset-bottom,0px));margin-bottom:-4px}.lesson-mic-panel{scroll-margin:12px 0 calc(var(--bottom-nav-h) + 12px + env(safe-area-inset-bottom,0px))}}@media (width<=560px){.page.lesson-shell{padding-top:16px}.lesson-shell-topbar{margin-bottom:20px}.lesson-step h1{margin-bottom:10px}.lesson-step-intro{margin-bottom:18px}.lesson-step-diagrams{gap:20px;margin-bottom:18px}.lesson-step-diagrams .chord-diagram-lg svg{width:clamp(120px,80.6452dvh - 322.581px,180px);height:auto}.recognize-grid{gap:10px;margin:8px 0 4px}.recognize-option .chord-diagram{max-width:clamp(96px,40dvh - 104px,180px)}.lesson-mic-panel{gap:12px;margin-bottom:12px;padding:16px 14px}.lesson-step-feedback{margin:10px 0}}@media (width<=1000px) and (height<=500px) and (orientation:landscape){.lesson-shell{max-width:920px}.page.lesson-shell{padding-top:12px}.lesson-shell-topbar{margin-bottom:10px}.lesson-step:has(>:is(.lesson-step-diagrams,.lesson-mic-panel,.recognize-grid,.link-charts,.recall-reveal,.mic-blocked,.warmup-riff-charts)){text-align:left;min-height:calc(100dvh - 90px - env(safe-area-inset-bottom,0px));grid-template-rows:1fr repeat(5,auto) 1fr;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:28px;display:grid}.lesson-step>*{grid-column:1}.lesson-step>.lesson-step-eyebrow{grid-row:2}.lesson-step>h1{grid-row:3;margin-bottom:8px;font-size:26px}.lesson-step>.lesson-step-intro{grid-row:4;max-width:none;margin:0 0 12px;font-size:15px}.lesson-step>:is(.link-chain,.lesson-step-feedback,.warmup-reward-note){text-align:left;grid-row:5;margin:4px 0 8px}.lesson-step>.lesson-step-actions{grid-row:6;justify-content:flex-start;margin-top:4px}.lesson-step>.lesson-step-actions-stack{flex-direction:row}.lesson-step>:is(.lesson-step-diagrams,.lesson-mic-panel,.recognize-grid,.recall-reveal,.mic-blocked,.warmup-riff-charts){grid-area:1/2/-1;align-self:center;margin:0}.lesson-step>.warmup-book{grid-area:8/1/auto/-1}.lesson-step>.link-charts{grid-area:1/2/4;align-self:end;margin:0 0 10px}.lesson-step>.link-charts~.lesson-mic-panel{grid-row:4/-1;align-self:start}.lesson-step>.lesson-mic-panel:has(~.recall-reveal){grid-row:1/4;align-self:end;margin:0 0 10px}.lesson-step>.lesson-mic-panel~.recall-reveal{grid-row:4/-1;align-self:start}.lesson-mic-panel~.recall-reveal .chord-diagram-md svg{width:clamp(80px,80.6452dvh - 185.484px,128px);height:auto}.lesson-step-diagrams .chord-diagram-lg svg{width:clamp(110px,80.6452dvh - 120.968px,180px);height:auto}.link-charts .chord-diagram-md svg{width:clamp(80px,80.6452dvh - 201.613px,128px);height:auto}.lesson-mic-panel{gap:10px;padding:14px 16px}.lesson-mic-panel-chart .lesson-chart-card .chord-diagram-lg svg{width:min(100%,80.6452dvh - 153.226px)}.lesson-mic-panel-chart .waveform-canvas{height:44px}.lesson-step:has(>.recognize-grid){grid-template-columns:minmax(0,.8fr) minmax(0,1.4fr)}.recognize-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.recognize-option{padding:8px 4px}.recognize-option .chord-diagram{max-width:min(180px,80.6452dvh - 153.226px)}.lesson-step>.mic-blocked{padding:14px 18px}.lesson-step .mic-blocked-icon{font-size:26px}.lesson-step .mic-blocked h2{margin:2px 0 6px;font-size:18px}.lesson-step .mic-blocked-how{margin-bottom:10px}}.mic-blocked{border-radius:var(--r-lg);background:var(--surface);max-width:420px;box-shadow:var(--shadow-md);text-align:center;margin:8px auto 0;padding:22px 20px}.mic-blocked-icon{margin:0;font-size:34px}.mic-blocked h2{margin:6px 0 8px;font-size:20px}.mic-blocked-why{color:var(--ink);margin:0 0 6px;font-weight:700}.mic-blocked-how{color:var(--ink-soft);margin:0 0 16px;font-size:13.5px;font-weight:600;line-height:1.45}.mic-blocked .lesson-step-actions{flex-wrap:wrap;justify-content:center}.lesson-complete{text-align:center;padding:20px 0 40px;position:relative}.lesson-complete-content{z-index:1;max-width:380px;margin:0 auto;position:relative}.lesson-complete-badge{font-size:64px;animation:.5s cubic-bezier(.34,1.56,.64,1) both pop-in}.lesson-complete h1{letter-spacing:.02em;margin:8px 0 28px;font-size:26px}.lesson-complete-fb-row{justify-content:center;gap:12px;margin-bottom:20px;display:flex}.lesson-complete-fb-card{background:var(--surface);border-radius:var(--r-md);box-shadow:var(--shadow-md);flex-direction:column;gap:4px;padding:16px 22px;display:flex}.lesson-complete-fb-label{color:var(--ink-soft);text-transform:uppercase;letter-spacing:.05em;justify-content:center;align-items:center;gap:5px;font-size:11px;font-weight:700;display:flex}.lesson-complete-fb-card strong{font-family:var(--font-body);color:var(--gold-dark);font-size:22px}.lesson-complete-fb-bonus strong{color:var(--purple-dark)}:root[data-theme=dark] .lesson-complete-fb-bonus strong{color:color-mix(in srgb, var(--purple-dark) 50%, #fff)}.lesson-complete-streak{background:color-mix(in srgb, var(--orange) 14%, var(--surface));color:color-mix(in srgb, var(--orange-dark) 78%, #000);border-radius:999px;align-items:center;gap:8px;margin-bottom:26px;padding:8px 18px;font-weight:700;display:inline-flex}.lesson-complete-progress{margin-bottom:28px}.lesson-complete-progress-label{color:var(--ink-soft);margin-bottom:8px;font-size:12px;font-weight:700;display:block}.lesson-complete-highlights{text-align:left;gap:8px;margin:-12px 0 22px;padding:0;list-style:none;display:grid}.lesson-complete-highlight{border-radius:var(--r-md);background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-sm,0 2px 8px #0000000f);align-items:center;gap:10px;padding:10px 12px;animation:.4s both lesson-highlight-in;display:flex}.lesson-complete-highlight:nth-child(2){animation-delay:.12s}.lesson-complete-highlight:nth-child(3){animation-delay:.24s}.lesson-complete-highlight-icon{background:var(--bg-soft);border-radius:50%;flex:none;place-items:center;width:32px;height:32px;font-size:17px;display:grid}.lesson-complete-highlight-text{min-width:0;color:var(--ink);flex:1;font-size:14px;font-weight:700;line-height:1.35}.lesson-complete-highlight-text small{color:var(--ink-soft);letter-spacing:.02em;font-size:12px;font-weight:700;display:block}.lesson-complete-highlight-badge{background:var(--gold);color:var(--navy-deep,#1b1718);letter-spacing:.04em;text-transform:uppercase;vertical-align:1px;border-radius:999px;margin-left:6px;padding:1px 8px;font-size:10.5px;font-style:normal;font-weight:800}.lesson-complete-highlight-cta{background:var(--gold-dark);color:#fff;border-radius:999px;flex:none;padding:7px 12px;font-size:12.5px;font-weight:800;text-decoration:none}:root[data-theme=dark] .lesson-complete-streak{color:#ffa46a}@media (width<=560px){.lesson-complete{padding:0 0 12px}.lesson-complete-badge{font-size:48px}.lesson-complete h1{margin:4px 0 18px;font-size:24px}.lesson-complete-highlights{margin:-6px 0 16px}.lesson-complete-highlight{padding:8px 10px}.lesson-complete-fb-row{gap:10px;margin-bottom:14px}.lesson-complete-fb-card{flex:1 1 0;min-width:0;padding:12px 10px}.lesson-complete-fb-label{white-space:nowrap;font-size:10.5px}.lesson-complete-fb-card strong{white-space:nowrap;font-size:clamp(18px,5.6vw,22px)}.lesson-complete-streak{margin-bottom:16px;padding:6px 16px}.lesson-complete-progress{margin-bottom:16px}.lesson-complete-content>.btn-block{bottom:calc(14px + env(safe-area-inset-bottom,0px));z-index:2;position:sticky}}@media (width<=1000px) and (height<=500px) and (orientation:landscape){.lesson-complete{padding:0 0 12px}.lesson-complete-content{max-width:560px}.lesson-complete-badge{font-size:40px}.lesson-complete h1{margin:2px 0 14px}.lesson-complete-content>.btn-block{bottom:calc(10px + env(safe-area-inset-bottom,0px));z-index:2;position:sticky}}@keyframes lesson-highlight-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.lesson-complete-highlight{animation:none}}.link-chain{justify-content:center;align-items:stretch;gap:8px;max-width:420px;margin:4px auto 18px;padding:0;list-style:none;display:flex}.link-bead{border-radius:var(--r-md);border:2px solid var(--line);background:var(--surface);flex-direction:column;flex:1 1 0;align-items:center;gap:2px;min-width:0;padding:10px 4px 8px;transition:border-color .2s,background .2s,transform .2s;display:flex;position:relative}.link-bead+.link-bead:before{content:"";background:var(--line);width:10px;height:2px;position:absolute;top:50%;left:-10px}.link-bead-chord{font-family:var(--font-body);color:var(--ink);font-size:20px;font-weight:800;line-height:1.1}.link-bead-note{letter-spacing:.02em;min-height:16px;color:var(--ink-faint);font-size:11.5px;font-weight:800}.link-bead-now{border-color:var(--gold-dark);background:color-mix(in srgb, var(--gold) 14%, var(--surface));animation:1.4s ease-in-out infinite link-now;transform:translateY(-2px)}.link-bead-now .link-bead-note{color:var(--gold-dark);text-transform:uppercase}.link-bead-hit{border-color:var(--green);background:color-mix(in srgb, var(--green) 14%, var(--surface));animation:.35s cubic-bezier(.34,1.56,.64,1) link-land}.link-bead-hit .link-bead-note{color:var(--green-dark,var(--green))}.link-bead-hit+.link-bead:before{background:var(--green)}.link-bead-miss{opacity:.6}.link-bead-next{opacity:.55}@keyframes link-now{0%,to{box-shadow:0 0 0 0 color-mix(in srgb, var(--gold) 40%, transparent)}50%{box-shadow:0 0 0 6px color-mix(in srgb, var(--gold) 0%, transparent)}}@keyframes link-land{0%{transform:scale(.92)}to{transform:scale(1)}}.link-charts{justify-content:center;gap:18px;margin-bottom:14px;display:flex}.link-chart{opacity:.45;transition:opacity .2s,transform .2s}.link-chart.is-target{opacity:1;transform:scale(1.04)}.link-panel .lesson-mic-status{flex-wrap:wrap}.link-clock{background:var(--bg-soft);font-variant-numeric:tabular-nums;color:var(--ink);border-radius:999px;margin-left:auto;padding:2px 10px;font-weight:800}@media (width<=480px){.link-chain{gap:6px}.link-bead+.link-bead:before{width:8px;left:-8px}.link-bead-chord{font-size:17px}.link-charts{gap:10px}}@media (width<=560px){.link-charts .chord-diagram-md svg{width:clamp(92px,80.6452dvh - 348.387px,128px);height:auto}}@media (prefers-reduced-motion:reduce){.link-bead-now,.link-bead-hit{animation:none}}.switch-round-note{color:var(--ink-soft);margin:-4px 0 14px;font-size:14px;font-weight:600}.switch-round-note strong{color:var(--gold-dark)}.switch-hidden-chart{border-radius:var(--r-lg);border:2px dashed var(--line);background:var(--bg-soft);width:170px;height:200px;color:var(--ink-soft);align-content:center;place-items:center;gap:6px;display:grid}.switch-hidden-chart svg{width:104px;height:auto}.switch-hidden-chart span{letter-spacing:.1em;text-transform:uppercase;color:var(--ink-faint);font-size:11px;font-weight:800}.switch-peek{margin:-4px auto 14px;padding:9px 18px;font-size:14px;display:block}.warmup-intro .lesson-step-intro strong{color:var(--gold-dark);letter-spacing:.04em;margin-top:6px;display:block}.warmup-riff-charts{flex-wrap:wrap;justify-content:center;gap:10px 14px;margin:4px 0 16px;display:flex}.warmup-riff-chart{flex-direction:column;align-items:center;gap:4px;display:flex}.warmup-riff-chart .chord-diagram svg{width:78px;height:auto}.warmup-due{letter-spacing:.03em;color:var(--ink-faint);text-transform:uppercase;font-size:11px;font-weight:800}.warmup-due.is-due{color:color-mix(in srgb, var(--orange-dark,#e86c1d) 78%, #000)}:root[data-theme=dark] .warmup-due.is-due{color:var(--orange,#ff8a3d)}.warmup-reward-note{text-align:center;color:var(--ink-soft);margin:0 0 14px;font-size:13.5px;font-weight:700}.warmup-reward-note .fretbit-icon{vertical-align:-2px;margin-right:6px;display:inline-block}.warmup-book{text-align:left;margin-top:26px}.warmup-book h2{justify-content:space-between;align-items:baseline;gap:10px;margin:0 0 10px;font-size:18px;display:flex}.warmup-book h2 span{font-family:var(--font-body);color:var(--ink-faint);font-size:12px;font-weight:700}.warmup-book ul{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px;margin:0;padding:0;list-style:none;display:grid}.warmup-book-item{border:2px solid var(--line);border-radius:var(--r-md);background:var(--surface);width:100%;color:var(--ink);font:inherit;text-align:left;cursor:pointer;gap:2px;padding:10px 12px;display:grid}@media (hover:hover){.warmup-book-item:hover{border-color:var(--gold-dark)}}.warmup-book-item.is-picked{border-color:var(--gold-dark);background:color-mix(in srgb, var(--gold) 12%, var(--surface))}.warmup-book-item strong{font-size:14px}.warmup-book-item small{color:var(--ink-soft);font-size:11.5px;font-weight:700}.warmup-book-note{color:var(--ink-faint);margin:10px 0 0;font-size:12px;font-weight:600}.warmup-stars{color:var(--line);gap:2px;display:inline-flex}.warmup-stars .is-on{color:var(--gold);text-shadow:0 1px 0 var(--gold-dark)}.warmup-stars-sm{font-size:13px}.warmup-stars-lg{gap:6px;font-size:44px}.warmup-stars-lg span{animation:.5s cubic-bezier(.34,1.56,.64,1) both warmup-star}.warmup-stars-lg span:nth-child(2){animation-delay:.15s}.warmup-stars-lg span:nth-child(3){animation-delay:.3s}@keyframes warmup-star{0%{opacity:0;transform:scale(.3)}to{opacity:1;transform:none}}.warmup-strip{margin-bottom:8px}.warmup-now{margin:6px 0 8px;font-size:44px}.warmup-chart{margin-bottom:12px}.warmup-next{color:#8a8490;margin-left:6px;font-weight:700}.warmup-result h1{margin:6px 0}.warmup-result-sub{color:var(--ink-soft);margin:0 0 18px;font-size:14px;font-weight:600}.warmup-result-stats{grid-template-columns:1fr 1fr;gap:10px;margin-bottom:16px;display:grid}.warmup-result-stats div{border-radius:var(--r-md);background:var(--surface);border:1px solid var(--line);gap:2px;padding:12px;display:grid}.warmup-result-stats span{letter-spacing:.06em;text-transform:uppercase;color:var(--ink-faint);font-size:11px;font-weight:800}.warmup-result-stats strong{font-family:var(--font-body);color:var(--ink);font-variant-numeric:tabular-nums;font-size:22px}.warmup-refreshed{color:var(--ink-soft);flex-wrap:wrap;justify-content:center;align-items:center;gap:6px;margin:0 0 14px;font-size:13px;font-weight:700;display:flex}.warmup-chip{background:var(--bg-soft);color:var(--ink);border-radius:999px;padding:2px 10px;font-weight:800}.warmup-paid{color:var(--gold-dark);flex-wrap:wrap;justify-content:center;align-items:center;gap:6px;margin:0 0 8px;font-size:18px;font-weight:800;display:flex}.warmup-paid small{color:var(--ink-soft);flex-basis:100%;font-size:12px;font-weight:700}.warmup-paid-none{color:var(--ink-faint);font-size:13px;font-weight:700}.warmup-improved{color:var(--green-dark,var(--green));margin:0 0 8px;font-size:13px;font-weight:800}.warmup-result-actions{gap:10px;margin-top:18px;display:grid}@media (width<=1000px) and (height<=500px) and (orientation:landscape){.warmup-result .lesson-complete-content{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;column-gap:32px;max-width:860px;display:grid}.warmup-result-side .warmup-result-actions{grid-template-columns:1fr 1fr;align-items:center;gap:8px;margin-top:10px}.warmup-result-side .warmup-back{grid-column:1/-1}.warmup-result-side .warmup-result-actions .btn{white-space:nowrap;padding-inline:12px}.warmup-result-side .warmup-result-stats{margin-bottom:10px}}.warmup-back{color:var(--ink-soft);font-size:14px;font-weight:700}.warmup-empty{text-align:center}@media (width<=480px){.warmup-now{font-size:36px}.warmup-riff-chart .chord-diagram svg{width:66px}}@media (prefers-reduced-motion:reduce){.warmup-stars-lg span{animation:none}}.countdown{justify-content:center;align-items:center;height:120px;display:flex}.countdown-number{font-family:var(--font-display);color:var(--purple);font-size:72px;font-weight:700;animation:.7s ease-out countdown-pop}@keyframes countdown-pop{0%{opacity:0;transform:scale(1.6)}40%{opacity:1;transform:scale(1)}to{opacity:1;transform:scale(1)}}.fingerpicking-pattern{border-radius:var(--r-lg);width:100%;max-width:560px;box-shadow:var(--shadow-md);text-align:left;background:#fff;padding:18px}.fingerpicking-pattern-heading{color:var(--ink-soft);text-transform:uppercase;letter-spacing:.06em;justify-content:space-between;gap:12px;margin-bottom:14px;font-size:13px;font-weight:700;display:flex}.fingerpicking-sequence{grid-template-columns:repeat(auto-fit,minmax(66px,1fr));gap:8px;display:grid}.fingerpicking-step{border:2px solid var(--line);border-radius:var(--r-sm);text-align:center;min-width:0;padding:10px 6px;transition:border-color .15s,background .15s,transform .15s}.fingerpicking-step-active{border-color:var(--pink);background:#fff0f6;transform:translateY(-3px)}.fingerpicking-step-number,.fingerpicking-step small,.fingerpicking-step span:not(.fingerpicking-step-number){color:var(--ink-soft);font-size:11px;font-weight:700;display:block}.fingerpicking-step strong{color:var(--pink-dark);font-family:var(--font-body);margin:3px 0;font-size:24px;display:block}@media (width<=420px){.fingerpicking-pattern{padding:14px 10px}.fingerpicking-sequence{grid-template-columns:repeat(4,minmax(0,1fr));gap:5px}.fingerpicking-step{padding-inline:2px}.fingerpicking-step small{font-size:10px}}.checkpoint-question{text-align:center}.checkpoint-eyebrow{letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:8px;font-size:12px;font-weight:700}.checkpoint-question h1{margin-bottom:24px;font-size:24px}.checkpoint-chart{margin-bottom:24px}.checkpoint-options{flex-wrap:wrap;justify-content:center;gap:12px;display:flex}.checkpoint-option{background:var(--surface);border:3px solid var(--line);border-radius:var(--r-md);font-family:var(--font-body);color:var(--ink);padding:14px 22px;font-size:17px;font-weight:700;transition:border-color .12s,transform .12s}@media (hover:hover){.checkpoint-option:hover{border-color:var(--blue);transform:translateY(-2px)}}.checkpoint-option:active{transform:scale(.96)}.checkpoint-option-diagram{background:var(--bg-soft);border-radius:var(--r-md);border:3px solid #0000;padding:10px;transition:border-color .12s,transform .12s}@media (hover:hover){.checkpoint-option-diagram:hover{border-color:var(--blue);transform:translateY(-2px)}}.checkpoint-option-correct{background:color-mix(in srgb, var(--green) 18%, var(--surface));border-color:var(--green)!important}.checkpoint-option-wrong{background:color-mix(in srgb, var(--red) 16%, var(--surface));border-color:var(--red)!important}@media (width<=560px){.checkpoint-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;max-width:340px;margin-inline:auto;display:grid}.checkpoint-option{padding:12px 10px}.checkpoint-option-diagram{place-items:center;display:grid}.checkpoint-question h1{margin-bottom:16px}.checkpoint-question .chord-diagram-lg svg{width:min(180px,44vw);height:auto}}.checkpoint-progress-row{justify-content:center;gap:6px;margin-bottom:28px;display:flex}.checkpoint-progress-dot{background:var(--bg-soft);border-radius:50%;width:10px;height:10px}.checkpoint-progress-dot-done{background:var(--green)}.checkpoint-progress-dot-current{background:var(--blue)}.checkpoint-score-summary{z-index:1;text-align:center;color:var(--ink-soft);margin-top:-12px;font-weight:700;position:relative}.checkpoint-question-count{text-align:center;color:var(--ink-soft);margin-bottom:24px;font-size:13px;font-weight:700}.checkpoint-intro{text-align:center;flex-direction:column;align-items:center;gap:6px;max-width:460px;margin:0 auto;display:flex}.checkpoint-intro h1{font-size:26px}.checkpoint-intro-body{color:var(--ink-soft);margin:4px 0 2px;font-weight:500;line-height:1.5}.checkpoint-intro-meta{color:var(--ink-faint);margin-bottom:18px;font-size:13px;font-weight:700}.checkpoint-result{text-align:center;flex-direction:column;align-items:center;gap:8px;max-width:460px;margin:0 auto;display:flex;position:relative}.checkpoint-result-badge{background:color-mix(in srgb, var(--green) 18%, var(--surface));width:56px;height:56px;color:var(--green-dark);border-radius:50%;place-items:center;margin-bottom:4px;font-size:26px;font-weight:700;display:grid}.checkpoint-result h1{font-size:26px}.checkpoint-result-body{color:var(--ink-soft);margin:4px 0 2px;font-weight:500;line-height:1.5}.checkpoint-result-badge-inline{z-index:1;border-radius:999px;width:auto;height:auto;margin:0 auto 8px;padding:6px 16px;font-size:13px;display:table;position:relative}@media (width<=1000px) and (height<=500px) and (orientation:landscape){.checkpoint-progress-row,.checkpoint-question-count{margin-bottom:6px}.checkpoint-question:has(>:is(.checkpoint-chart,.lesson-mic-panel)){text-align:left;min-height:calc(100dvh - 110px - env(safe-area-inset-bottom,0px));grid-template-rows:1fr repeat(3,auto) 1fr;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:28px;display:grid}.checkpoint-question>*{grid-column:1}.checkpoint-question>.checkpoint-eyebrow{grid-row:2}.checkpoint-question>h1{grid-row:3;margin-bottom:14px}.checkpoint-question>.checkpoint-options{grid-row:4;justify-content:flex-start}.checkpoint-question>.checkpoint-prog{grid-row:4;justify-content:flex-start;margin:0 0 6px}.checkpoint-question>.lesson-mic-panel:not(:has(>.chord-diagram)){flex-direction:column;align-items:stretch;display:flex}.checkpoint-question>:is(.checkpoint-chart,.lesson-mic-panel){grid-area:1/2/-1;align-self:center;margin:0}.checkpoint-chart{place-items:center;display:grid}.checkpoint-chart .chord-diagram-lg svg{width:clamp(100px,80.6452dvh - 129.032px,180px);height:auto}.checkpoint-question>.lesson-mic-panel{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:8px 14px;padding:12px 14px;display:grid}.checkpoint-question>.lesson-mic-panel>.chord-diagram{grid-row:1/span 3}.checkpoint-question>.lesson-mic-panel>:not(.chord-diagram){grid-column:2}.checkpoint-question>.lesson-mic-panel>:is(.btn,.lesson-error){grid-column:1/-1;justify-self:center}.checkpoint-question>.lesson-mic-panel .waveform-canvas{height:44px}.checkpoint-result{gap:4px}.checkpoint-result-badge{width:42px;height:42px;font-size:20px}.checkpoint-result h1{font-size:22px}}.checkpoint-question .lesson-mic-panel>.btn-primary{scroll-margin-bottom:calc(18px + env(safe-area-inset-bottom,0px))}.checkpoint-prog{flex-wrap:wrap;justify-content:center;gap:10px;margin:8px 0 18px;padding:0;list-style:none;display:flex}.checkpoint-prog-chord{background:var(--surface);border:2px solid var(--line);min-width:66px;color:var(--ink);font-family:var(--font-display);text-align:center;border-radius:14px;padding:12px 14px;font-size:26px;font-weight:700;transition:transform .2s,border-color .2s,background .2s,box-shadow .2s;position:relative}.checkpoint-prog-chord.is-now{border-color:var(--gold-dark);box-shadow:0 0 0 4px color-mix(in srgb, var(--gold) 25%, transparent);transform:translateY(-3px)}.checkpoint-prog-chord.is-hit{border-color:var(--green);background:color-mix(in srgb, var(--green) 14%, var(--surface))}.checkpoint-prog-chord.is-miss{border-color:var(--red);background:color-mix(in srgb, var(--red) 10%, var(--surface));opacity:.85}.checkpoint-prog-mark{width:22px;height:22px;font-family:var(--font-body);color:#fff;border-radius:50%;place-items:center;font-size:12px;font-weight:900;display:grid;position:absolute;top:-9px;right:-9px}.is-hit .checkpoint-prog-mark{background:var(--green)}.is-miss .checkpoint-prog-mark{background:var(--red)}.checkpoint-prog-mark:empty{display:none}@media (width<=560px){.checkpoint-prog{flex-wrap:nowrap;gap:8px}.checkpoint-prog-chord{flex:1 1 0;min-width:0;padding:10px 4px;font-size:21px}}@media (prefers-reduced-motion:reduce){.checkpoint-prog-chord{transition:none}.checkpoint-prog-chord.is-now{transform:none}}.ear-training-page{max-width:860px}.ear-training-header{justify-content:space-between;align-items:end;gap:24px;margin-bottom:28px;display:flex}.ear-training-header h1{margin-top:4px}.ear-training-levels{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.ear-training-level{border:2px solid var(--line);background:var(--surface);color:var(--ink-soft);border-radius:999px;padding:10px 14px;font-weight:700}.ear-training-level-active{border-color:var(--green);background:color-mix(in srgb, var(--green) 16%, var(--surface));color:var(--green-dark)}:root[data-theme=dark] .ear-training-level-active{color:color-mix(in srgb, var(--green) 58%, #fff)}.ear-training-panel{background:linear-gradient(145deg, var(--surface) 0%, color-mix(in srgb, var(--pink) 7%, var(--surface)) 100%);border:1px solid color-mix(in srgb, var(--pink) 22%, var(--line));border-radius:var(--r-lg);box-shadow:var(--shadow-md);text-align:center;flex-direction:column;align-items:center;gap:22px;padding:clamp(24px,6vw,56px) 20px;display:flex}.ear-training-prompt{max-width:460px}.ear-training-icon{color:var(--pink-dark);margin-bottom:12px;font-size:42px;line-height:1;display:block}.ear-training-prompt h2{margin-bottom:8px;font-size:26px}.ear-training-prompt p{color:var(--ink-soft);font-weight:600;line-height:1.5}.ear-training-options{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;width:min(100%,560px);display:grid}.ear-training-option{border:2px solid var(--line);border-radius:var(--r-md);background:var(--surface);min-height:58px;color:var(--ink);font-family:var(--font-body);padding:12px 8px;font-size:20px;font-weight:700}.ear-training-option-picked{border-color:var(--pink);background:color-mix(in srgb, var(--pink) 12%, var(--surface))}@media (hover:hover){.ear-training-option:not(:disabled):hover{border-color:var(--pink);background:color-mix(in srgb, var(--pink) 12%, var(--surface))}}.ear-training-option:disabled{cursor:default}.ear-training-option.ear-training-option-right{border-color:var(--green);background:color-mix(in srgb, var(--green) 16%, var(--surface))}.ear-training-feedback,.ear-training-options,.ear-training-play{scroll-margin:12px 0 calc(var(--bottom-nav-h,0px) + 16px + env(safe-area-inset-bottom,0px))}.ear-training-feedback{color:var(--ink-soft);flex-direction:column;align-items:center;gap:8px;font-weight:700;display:flex}.ear-training-feedback strong{font-family:var(--font-body);font-size:22px}.ear-training-feedback-good strong{color:var(--green-dark)}.ear-training-feedback-warm strong{color:var(--orange-dark)}@media (width<=620px){.ear-training-header{flex-direction:column;align-items:stretch;gap:16px}.ear-training-levels{justify-content:flex-start}}@media (width<=420px){.ear-training-options{grid-template-columns:repeat(2,minmax(0,1fr))}.ear-training-panel{padding-inline:14px}}@media (width<=620px){.ear-training-panel{gap:16px;padding-block:20px}.ear-training-icon{margin-bottom:6px;font-size:30px}}@media (width<=1000px) and (height<=500px) and (orientation:landscape){.ear-training-panel{text-align:left;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"prompt play""options options""feedback feedback";align-items:center;gap:12px 20px;padding:16px 20px;display:grid}.ear-training-prompt{grid-area:prompt;max-width:none}.ear-training-icon{display:none}.ear-training-prompt h2{margin-bottom:4px;font-size:22px}.ear-training-play{grid-area:play}.ear-training-options{grid-area:options;justify-self:center}.ear-training-feedback{grid-area:feedback}}.shared-song-page{justify-content:center;display:flex}.shared-song-card{text-align:center;align-items:stretch;width:100%;max-width:480px}.shared-song-eyebrow{text-transform:uppercase;letter-spacing:.06em;color:var(--ink-faint);margin:0 0 4px;font-size:13px;font-weight:700}.shared-song-card h1{margin:0 0 20px}.shared-song-grid{flex-direction:column;align-items:center;gap:22px;margin-bottom:20px;display:flex}.shared-song-item{flex-direction:column;align-items:center;gap:8px;display:flex}.shared-song-label{text-transform:uppercase;letter-spacing:.04em;color:var(--ink-faint);font-size:12px;font-weight:700}.shared-song-chord-row{flex-wrap:wrap;justify-content:center;gap:12px;display:flex}.shared-song-chord-slot{flex-direction:column;align-items:center;gap:4px;display:flex}.shared-song-chord-symbol{font-weight:700}.shared-song-lyrics{text-align:left;background:var(--bg-soft);border-radius:var(--r-lg);margin-bottom:24px;padding:16px}.shared-song-lyrics p{white-space:pre-wrap;margin:6px 0 0;font-weight:600;line-height:1.5}.shared-song-cta{align-self:center}.shared-song-envelope{text-align:center;justify-items:center;gap:12px;width:100%;max-width:440px;padding-top:4vh;display:grid}.shared-song-open{width:100%;max-width:max(190px, calc(100dvh - var(--bottom-nav-h,0px) - 230px));cursor:pointer;background:0 0;border:0;padding:0}.shared-song-open:disabled{cursor:default}.shared-song-open:focus-visible{outline:3px solid var(--gold);outline-offset:6px;border-radius:12px}.shared-song-tap{color:var(--ink-soft);margin:0;font-weight:700}.shared-song-letter{max-width:560px;animation:.5s cubic-bezier(.3,1.3,.5,1) both shared-song-unfold}@keyframes shared-song-unfold{0%{opacity:0;transform:translateY(24px)scale(.96)}}.shared-song-chord-row{flex-wrap:wrap;justify-content:center;gap:10px;margin:8px 0 4px;display:flex}.shared-song-chord-slot{border:2px solid #0000;border-radius:12px;justify-items:center;gap:2px;padding:6px;transition:transform .2s,border-color .2s,background .2s;display:grid}.shared-song-chord-slot.is-now{border-color:var(--gold);background:color-mix(in srgb, var(--gold) 16%, transparent);transform:translateY(-3px)}.shared-song-play{justify-content:center;margin:8px 0 4px;display:flex}.shared-song-parts{flex-wrap:wrap;justify-content:center;gap:6px;margin:10px 0 4px;padding:0;list-style:none;display:flex}.shared-song-parts li{border:1.5px solid var(--line);color:var(--ink-soft);border-radius:999px;padding:4px 10px;font-size:12px;font-weight:800;transition:background-color .2s,color .2s,border-color .2s}.shared-song-parts li.is-now{border-color:var(--gold-dark);background:color-mix(in srgb, var(--gold) 22%, var(--surface));color:var(--ink)}.shared-song-lyrics p{white-space:pre-wrap;font-size:16px;line-height:1.7}.shared-song-case{width:min(300px,78vw)}.shared-song-cd{width:min(380px,92%);margin:-4px auto 4px}.shared-song-cd .cd-case-art{animation:.5s both shared-song-cd-in}@keyframes shared-song-cd-in{0%{opacity:0;transform:translateY(10px)}}@media (prefers-reduced-motion:reduce){.shared-song-cd .cd-case-art{animation:none}}.shared-song-letter:has(.shared-song-stage.has-lyrics){max-width:920px}.shared-song-stage{justify-content:center;align-items:center;gap:22px;width:100%;display:flex}.shared-song-stage .shared-song-cd{flex:0 380px;margin:-4px 0 4px}.shared-song-side-lyrics{text-align:left;flex:280px;align-self:stretch;max-height:360px;margin:0;overflow-y:auto}@media (width<=720px){.shared-song-stage{flex-direction:column;gap:12px}.shared-song-stage .shared-song-cd{flex:none;width:min(380px,92%)}.shared-song-side-lyrics{flex:none;width:100%;max-height:none}}@media (height<=500px) and (orientation:landscape){.shared-song-page:has(.shared-song-envelope){padding-top:12px}.shared-song-envelope{gap:8px;padding-top:0}.shared-song-open{max-width:max(140px, calc(100dvh - var(--bottom-nav-h,0px) - 196px))}.shared-song-envelope .btn-lg{padding:10px 26px;font-size:16px}}.shared-song-chord-set{justify-items:center;display:grid}.shared-song-chord-label{letter-spacing:.08em;text-transform:uppercase;color:var(--ink-faint);margin:6px 0 0;font-size:11.5px;font-weight:800}.shared-song-chord-row{flex-wrap:nowrap;max-width:100%}.shared-song-chord-slot{flex:0 auto;min-width:0}.shared-song-chord-slot .chord-diagram-sm svg{width:min(84px,18vw);height:auto}.shared-salon-page{text-align:center;flex-direction:column;align-items:center;max-width:640px;display:flex}.shared-salon-eyebrow{letter-spacing:.14em;text-transform:uppercase;color:var(--gold-dark);margin:0;font-size:11px;font-weight:800}.shared-salon-page h1{margin:6px 0 8px}.shared-salon-sub{color:var(--ink-soft);margin:0 0 24px;font-weight:600;line-height:1.55}.shared-salon-photo{margin:0 0 24px;display:inline-block}.shared-salon-photo .polaroid-window{width:min(280px,100vw - 96px)}@media (height<=500px) and (orientation:landscape){.shared-salon-page{text-align:left;grid-template-columns:auto minmax(0,1fr);grid-template-areas:"photo text""photo go";align-content:center;align-items:center;column-gap:32px;max-width:820px;padding-top:16px;display:grid}.shared-salon-text{grid-area:text;align-self:end}.shared-salon-photo{grid-area:photo;margin:0}.shared-salon-photo .polaroid-window{width:calc(72.7273dvh - 101.818px)}.shared-salon-go{grid-area:go;place-self:start}.shared-salon-page h1{font-size:24px}.shared-salon-sub{margin-bottom:14px;font-size:14px}}.app-main:has(:is(.slicer-page,.partition-page,.songwriter-page,.salon-page,.transition-page)){background-color:#96d4f3;background-image:linear-gradient(in oklab 180deg, #fff4d9 0%, #ffe2ae 12.5%, #ffc99b 25%, #f9b2a4 37.5%, #e4aec4 50%, #c0b6dd 62.5%, #9cbfe8 75%, #84c5ef 87.5%, #96d4f3 100%);background-repeat:no-repeat;background-size:100% 100%}:root[data-theme=dark] .app-main:has(:is(.slicer-page,.partition-page,.songwriter-page,.salon-page,.transition-page)){background-color:#0f1326;background-image:linear-gradient(in oklab 180deg, #010102 0%, #05060d 10%, #0a0d1a 18%, #0f1326 25%, #12162a 32%, #12162a 48%, #161c34 62%, #1c233e 76%, #232b4c 88%, #2b3460 100%);background-repeat:no-repeat;background-size:100% 100%}:root[data-theme=dark][data-sky=starlight] .app-main:has(:is(.slicer-page,.partition-page,.songwriter-page,.salon-page,.transition-page)){background-color:#0a1330;background-image:linear-gradient(in oklab 180deg, #16294f 0%, #111e3e 40%, #0b1531 74%, #060c20 100%);background-repeat:no-repeat;background-size:100% 100%}:root[data-theme=dark][data-sky=cyberbloom] .app-main:has(:is(.slicer-page,.partition-page,.songwriter-page,.salon-page,.transition-page)){background-color:#170b10;background-image:none;background-repeat:no-repeat;background-size:100% 100%}:root[data-theme=dark][data-sky=blackcat] .app-main:has(:is(.slicer-page,.partition-page,.songwriter-page,.salon-page,.transition-page)){background-color:#2e0b12;background-image:linear-gradient(in oklab 180deg, #4d1622 0%, #42121c 35%, #3a0f17 65%, #2e0b12 100%);background-repeat:no-repeat;background-size:100% 100%}:root[data-theme=light][data-sky=snow] .app-main:has(:is(.slicer-page,.partition-page,.songwriter-page,.salon-page,.transition-page)){background-color:#e8edf5;background-image:linear-gradient(#aab6d3 0,#c7d0e4 280px,#dde3ee 560px,#e8edf5 860px 100%);background-repeat:no-repeat;background-size:100% 100%}:root[data-theme=dark][data-sky=meadow] .app-main:has(:is(.slicer-page,.partition-page,.songwriter-page,.salon-page,.transition-page)){background-color:#2c3223;background-image:linear-gradient(in oklab 180deg, #4a5238 0%, #414a33 22%, #3b432f 45%, #363d2b 70%, #2c3223 100%);background-repeat:no-repeat;background-size:100% 100%}:root[data-theme=dark][data-sky=blossom] .app-main:has(:is(.slicer-page,.partition-page,.songwriter-page,.salon-page,.transition-page)){background-color:#33232c;background-image:linear-gradient(in oklab 180deg, #54394a 0%, #43303b 45%, #2f2029 100%);background-repeat:no-repeat;background-size:100% 100%}:is(:root[data-theme][data-sky=plainLight] .app-main:has(:is(.slicer-page,.partition-page,.songwriter-page,.salon-page,.transition-page)),:root[data-theme][data-sky=plainDark] .app-main:has(:is(.slicer-page,.partition-page,.songwriter-page,.salon-page,.transition-page))){background:var(--bg)}:root[data-theme=rain] .app-main:has(:is(.slicer-page,.partition-page,.songwriter-page,.salon-page,.transition-page)){background-color:#79828f;background-image:linear-gradient(#1d2127 0%,#262b33 7%,#333941 15%,#424953 26%,#4f5761 40%,#5c646f 56%,#69717c 72%,#727b86 88%,#79828f 100%);background-repeat:no-repeat;background-size:100% 100%}:root[data-theme=rain] :is(.slicer-page,.partition-page,.songwriter-page,.salon-page,.transition-page) .slicer-topbar h1{color:#eef1f5}.game-menu-card{background:var(--surface);border-radius:var(--r-xl);min-height:440px;box-shadow:var(--shadow-md);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:10px;padding:32px;display:flex;position:relative}.game-menu-card h2{margin:0;font-size:26px}.game-menu-card p{color:var(--ink-soft);max-width:400px;margin:0 0 12px;font-weight:600;line-height:1.5}.game-menu-card .catcher-pool-count,.game-menu-card .game-pool-count{margin:0;font-size:13px}.game-menu-card .game-pool-warning{max-width:400px;color:var(--orange-dark,var(--orange));margin:0;font-size:12.5px;font-weight:700}.game-menu-card .lesson-step-actions{justify-content:center}@media (width<=520px){.game-menu-card{min-height:400px;padding:24px 16px}}@media (width<=560px),(width<=1000px) and (height<=500px) and (orientation:landscape){.game-menu-card>.btn-primary:last-child,.game-menu-card>.tt-setup-actions:last-child,.salon-menu-card>.salon-menu-go:last-child{bottom:calc(14px + env(safe-area-inset-bottom,0px));z-index:3;align-self:stretch;position:sticky}.game-menu-card>.btn-primary:last-child:before,.game-menu-card>.tt-setup-actions:last-child:before,.salon-menu-card>.salon-menu-go:last-child:before{content:"";background:linear-gradient(to bottom, transparent, var(--surface));pointer-events:none;height:22px;position:absolute;bottom:100%;left:0;right:0}.salon-menu-card>.salon-menu-go:last-child:before{background:linear-gradient(to bottom, transparent, var(--salon-cream,#fff7f1))}.game-menu-card>.tt-setup-actions:last-child{background:var(--surface)}}@media (width<=440px){.slicer-topbar{gap:10px}.slicer-topbar>.lesson-shell-back,.slicer-topbar>.slicer-stat{flex:none}.slicer-topbar>.slicer-stat{white-space:nowrap;padding:7px 12px;font-size:13px}.page .slicer-topbar h1{overflow-wrap:break-word;min-width:0;font-size:clamp(18px,5.4vw,24px);line-height:1.15;flex:0 auto!important}}.night-stars{pointer-events:none;z-index:0;width:100vw;height:220px;margin-left:-50vw;position:absolute;top:0;left:50%;right:auto;overflow:hidden}.app-main:has(.home-page) .night-stars{display:none}.night-star{color:#fff6dd;-webkit-user-select:none;user-select:none;opacity:var(--op,.6);text-shadow:0 0 6px #fffae6,0 0 16px #ffdc8ce6,0 0 30px #e7c2648c;animation:night-star-twinkle var(--dur,3.2s) ease-in-out infinite;animation-delay:var(--delay,0s);line-height:1;position:absolute}@keyframes night-star-twinkle{0%,to{opacity:var(--op,.6)}50%{opacity:calc(var(--op,.6) * .22)}}@media (prefers-reduced-motion:reduce){.night-star{animation:none}}.global-raindrops{pointer-events:none;z-index:0;position:fixed;inset:0;overflow:hidden}.app-main:has(.home-page) .global-raindrops{display:none}.global-raindrop{background:linear-gradient(#0000,#5a6c8ae6)}.starlight-sky{pointer-events:none;z-index:0;width:100vw;margin-left:-50vw;position:absolute;inset:0 auto 0 50%;overflow:hidden}.starlight-grain{opacity:.16;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)'/%3E%3C/svg%3E");background-size:160px 160px;position:absolute;inset:0}.starlight-star,.starlight-sparkle,.starlight-ribbon,.starlight-dust{display:block;position:absolute}.starlight-star svg,.starlight-sparkle svg{fill:#fbfeff;width:100%;height:auto;display:block}.starlight-star{transform:rotate(var(--tilt,0deg));filter:drop-shadow(0 0 6px #bef0fff2)drop-shadow(0 0 26px #78d2f5bf);animation:starlight-breathe var(--dur,7s) ease-in-out var(--delay,0s) infinite alternate}.starlight-sparkle{filter:drop-shadow(0 0 4px #c8f5fff2)drop-shadow(0 0 14px #78d2f5b3);animation:starlight-twinkle var(--dur,4s) ease-in-out var(--delay,0s) infinite alternate}.starlight-star.starlight-warm svg{fill:#fff3d0}.starlight-star.starlight-warm{filter:drop-shadow(0 0 6px #ffe9b0f2)drop-shadow(0 0 24px #f0c878b3)}@keyframes starlight-breathe{0%{opacity:.55;transform:rotate(var(--tilt,0deg)) scale(.9)}to{opacity:1;transform:rotate(var(--tilt,0deg)) scale(1.06)}}@keyframes starlight-twinkle{0%{opacity:.25;transform:scale(.7)}to{opacity:1;transform:scale(1.1)}}.starlight-ribbon{transform:rotate(var(--tilt,0deg)) scaleX(var(--flip,1));animation:starlight-drift var(--dur,22s) ease-in-out var(--delay,0s) infinite alternate}.starlight-ribbon svg{stroke:#cdeeff;stroke-width:6px;opacity:.6;filter:drop-shadow(0 0 4px #aaebff99)drop-shadow(0 0 11px #5ac3f066);width:100%;height:auto;display:block}@keyframes starlight-drift{0%{transform:rotate(var(--tilt,0deg)) scaleX(var(--flip,1)) translate(-14px, 8px);opacity:.45}to{transform:rotate(calc(var(--tilt,0deg) + 5deg)) scaleX(var(--flip,1)) translate(14px, -8px);opacity:.75}}.starlight-dust{animation:starlight-twinkle var(--dur,4s) ease-in-out var(--delay,0s) infinite alternate;background:#eafaff;border-radius:50%;box-shadow:0 0 6px #b4f0ffe6}.starlight-dust.starlight-warm{background:#ffeec4;box-shadow:0 0 6px #ffe4a0e6}.starlight-ribbon svg,.starlight-blossom svg{fill:none}.starlight-blossom{transform:rotate(var(--tilt,0deg));animation:starlight-bloom var(--dur,18s) ease-in-out var(--delay,0s) infinite alternate;display:block;position:absolute}.starlight-blossom svg{stroke:#dff7ff;stroke-width:2.6px;filter:drop-shadow(0 0 4px #bef0ffe6)drop-shadow(0 0 14px #6ecdf5b3);width:100%;height:auto;display:block}@keyframes starlight-bloom{0%{transform:rotate(var(--tilt,0deg)) translateY(8px);opacity:.55}to{transform:rotate(calc(var(--tilt,0deg) + 8deg)) translateY(-8px);opacity:.92}}.starlight-long{z-index:-1;opacity:.85}@media (prefers-reduced-motion:reduce){.starlight-star,.starlight-sparkle,.starlight-ribbon,.starlight-dust,.starlight-blossom{animation:none}}.blossom-sky{pointer-events:none;z-index:0;width:100vw;margin-left:-50vw;position:absolute;top:0;bottom:0;left:50%;overflow:hidden}.blossom-fall{pointer-events:none;z-index:0;position:fixed;inset:0;overflow:hidden}.blossom-grain{opacity:.14;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)'/%3E%3C/svg%3E");background-size:160px 160px;position:absolute;inset:0}.blossom-ribbon,.blossom-flower,.blossom-dust,.blossom-falling{display:block;position:absolute}.blossom-ribbon{transform:rotate(var(--tilt,0deg)) scaleX(var(--flip,1));animation:blossom-drift var(--dur,24s) ease-in-out var(--delay,0s) infinite alternate;filter:drop-shadow(0 0 5px #ffc4debf)drop-shadow(0 0 18px #f096be73);--loop-left:0px;width:min(17vw,240px);height:auto;animation-name:none}@media (width>=900px) and (height>=501px){.blossom-ribbon{--loop-left:calc(var(--nav-w) / 2)}}.blossom-ribbon.is-right svg{transform:scaleX(-1)}.blossom-loop-glow{stroke:#f6b4d02e;stroke-width:12px;filter:blur(5px)}.blossom-ribbon .path-strand-s1{stroke-width:9px;stroke:#f6bcd2}.blossom-ribbon .path-strand-g1{stroke-width:7.4px;stroke:#4a3441}.blossom-ribbon .path-strand-s2{stroke-width:5.4px;stroke:#f9cadc}.blossom-ribbon .path-strand-g2{stroke-width:4px;stroke:#4e3645}.blossom-ribbon .path-strand-s3{stroke-width:2.4px;stroke:#fbd6e4}.blossom-ribbon .path-strand-g3{stroke-width:1.4px;stroke:#533a49}.blossom-ribbon .path-strand-s4{stroke-width:.7px;stroke:#ffe8f1}.blossom-ribbon svg{width:100%;height:100%;display:block}.blossom-ribbon svg path{vector-effect:non-scaling-stroke}.blossom-ribbon-strand{stroke:#fbd3e4;stroke-width:1.3px}.blossom-ribbon-strand.s1{stroke:#ffe6f0;stroke-width:1.1px;opacity:.9}.blossom-ribbon-strand.s2{stroke:#f4b5cf;stroke-width:1.2px;opacity:.8}@keyframes blossom-drift{0%{transform:rotate(var(--tilt,0deg)) scaleX(var(--flip,1)) translate(-16px, 10px);opacity:.55}to{transform:rotate(calc(var(--tilt,0deg) + 4deg)) scaleX(var(--flip,1)) translate(16px, -10px);opacity:.85}}.blossom-flower{transform:rotate(var(--tilt,0deg));filter:drop-shadow(0 0 4px #ffcde2e6)drop-shadow(0 0 16px #f096be99);animation:blossom-bloom var(--dur,12s) ease-in-out var(--delay,0s) infinite alternate}.blossom-flower svg{width:100%;height:auto;display:block}.blossom-petal-fill{fill:#f9c9dc}.blossom-heart{fill:#e98bb0}.blossom-stamen{stroke:#e98bb0;stroke-width:1.3px;stroke-linecap:round}.blossom-anther{fill:#fff0f6}@keyframes blossom-bloom{0%{transform:rotate(var(--tilt,0deg)) scale(.9);opacity:.6}to{transform:rotate(calc(var(--tilt,0deg) + 14deg)) scale(1.05);opacity:.95}}.blossom-dust{animation:blossom-twinkle var(--dur,4s) ease-in-out var(--delay,0s) infinite alternate;background:#ffe3ee;border-radius:50%;box-shadow:0 0 6px #ffbedae6}@keyframes blossom-twinkle{0%{opacity:.2}to{opacity:.9}}.blossom-falling{filter:drop-shadow(0 0 4px #ffc8e0cc);animation:blossom-fall var(--dur,18s) linear var(--delay,0s) infinite;top:-30px}.blossom-falling svg{fill:#f9cadd;opacity:.85;width:100%;height:auto;display:block}@keyframes blossom-fall{0%{opacity:0;transform:translate(0)rotate(0)}8%{opacity:1}50%{transform:translate(var(--sway,40px), 55vh) rotate(calc(var(--spin,360deg) / 2))}92%{opacity:1}to{transform:translate(0, 110vh) rotate(var(--spin,360deg));opacity:0}}@media (prefers-reduced-motion:reduce){.blossom-ribbon,.blossom-flower,.blossom-dust{animation:none}.blossom-fall{display:none}}.blossom-ribbon svg{opacity:.55}.meadow-sky{pointer-events:none;z-index:0;width:100vw;margin-left:-50vw;position:absolute;top:0;bottom:0;left:50%;overflow:hidden}.meadow-bokeh,.meadow-flower,.meadow-mote{display:block;position:absolute}.meadow-bokeh{background:radial-gradient(circle, var(--c) 0%, color-mix(in srgb, var(--c) 70%, transparent) 40%, transparent 70%);filter:blur(26px);opacity:.85;animation:meadow-drift var(--dur,30s) ease-in-out var(--delay,0s) infinite alternate;border-radius:50%}@keyframes meadow-drift{0%{transform:translate(-30px,20px)scale(.95)}to{transform:translate(30px,-20px)scale(1.06)}}.meadow-grain{opacity:.12;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.95' numOctaves='3'/%3E%3C/filter%3E%3Crect width='180' height='180' filter='url(%23n)'/%3E%3C/svg%3E");background-size:180px 180px;position:absolute;inset:0}.meadow-flower{transform:scaleX(var(--flip,1));transform-origin:55% 95%;filter:drop-shadow(0 0 3px #fffcd6e6)drop-shadow(0 0 12px #ececa080);animation:meadow-flower-sway var(--dur,9s) ease-in-out var(--delay,0s) infinite alternate}.meadow-flower svg{width:100%;height:auto;display:block}.meadow-dots{stroke:#fbf8e2;stroke-width:3px;stroke-dasharray:.1 5}.meadow-dots-fine{stroke-width:2.4px;stroke-dasharray:.1 3.6}.meadow-dots-sparse{stroke-width:3px;stroke-dasharray:.1 8;opacity:.85}.meadow-glint{stroke:#e6f04a;stroke-width:2.6px;stroke-dasharray:.1 13;stroke-dashoffset:4px;opacity:.9}@keyframes meadow-flower-sway{0%{transform:scaleX(var(--flip,1)) rotate(-2deg)}to{transform:scaleX(var(--flip,1)) rotate(2.5deg)}}.meadow-mote{animation:meadow-twinkle var(--dur,4s) ease-in-out var(--delay,0s) infinite alternate;background:#f7f3d6;border-radius:50%;box-shadow:0 0 6px #faf6c8d9}.meadow-mote-warm{background:#eaf06a;box-shadow:0 0 6px #e6f064cc}@keyframes meadow-twinkle{0%{opacity:.15}to{opacity:.85}}@media (prefers-reduced-motion:reduce){.meadow-bokeh,.meadow-flower,.meadow-mote{animation:none}}.cyber-sky{pointer-events:none;z-index:0;width:100vw;margin-left:-50vw;position:absolute;top:0;bottom:0;left:50%;overflow:hidden}.cyber-defs{position:absolute}.cyber-piece{transform:rotate(var(--rot,0deg)) scaleX(var(--flip,1));filter:drop-shadow(0 0 6px #ff8cc873)drop-shadow(0 0 22px #78d2e633);opacity:.9;animation:cyber-flicker var(--dur,10s) ease-in-out var(--delay,0s) infinite;display:block;position:absolute}.cyber-piece svg{width:100%;height:auto;display:block;overflow:visible}@keyframes cyber-flicker{0%,to{opacity:.9}48%{opacity:.9}50%{opacity:.65}52%{opacity:.9}}.cyber-scan{background:repeating-linear-gradient(0deg,#0000002e 0 1px,#0000 1px 3px);position:fixed;inset:0}@media (prefers-reduced-motion:reduce){.cyber-piece{animation:none}}.cyber-piece-small{opacity:.72}.blackcat-sky{pointer-events:none;z-index:0;width:100vw;margin-left:-50vw;position:absolute;top:0;bottom:0;left:50%;overflow:hidden}.blackcat-defs{position:absolute}.blackcat-velvet{background-image:radial-gradient(closest-side,#7a223266,#7a223200),radial-gradient(closest-side,#16040957,#16040900),radial-gradient(closest-side,#681c2a42,#681c2a00);background-position:8% 0,72% 320px,38% 820px;background-size:900px 700px,1150px 950px,760px 1300px;position:absolute;inset:0}.blackcat-sparkle{filter:drop-shadow(0 0 3px #ffd6828c);animation:blackcat-glint var(--dur,6s) ease-in-out var(--delay,0s) infinite;display:block;position:absolute}.blackcat-sparkle svg{width:100%;height:100%;display:block}@keyframes blackcat-glint{0%,to{opacity:.7;transform:scale(.82)}50%{opacity:1;transform:scale(1.06)}}.blackcat-glints{position:absolute;top:0;left:0;overflow:visible}.blackcat-twinkle{animation:blackcat-twinkle var(--dur,5s) ease-in-out var(--delay,0s) infinite}@keyframes blackcat-twinkle{0%,to{opacity:.25}50%{opacity:.95}}.blackcat-peek{left:6px;bottom:calc(var(--bottom-nav-h,0px) - 4px);pointer-events:none;z-index:0;width:clamp(88px,22vw,150px);position:fixed}@media (width>=900px) and (height>=501px){.blackcat-peek{left:calc(var(--nav-w) + 14px);bottom:-6px}}.blackcat-peek svg{width:100%;height:auto;display:block;overflow:visible}.blackcat-body{fill:#0c0708;stroke:#8e1d2b;stroke-width:3px;stroke-linejoin:round}.blackcat-whiskers path{fill:none;stroke:#0c0708;stroke-width:3.2px;stroke-linecap:round}.blackcat-eye ellipse{fill:#fbf7f2}.blackcat-pupils ellipse{fill:#0c0708}.blackcat-nose{fill:#fbf7f2}.blackcat-eye{transform-box:fill-box;transform-origin:50%;animation:7s ease-in-out infinite blackcat-blink}.blackcat-pupils{animation:13s ease-in-out infinite blackcat-glance}@keyframes blackcat-blink{0%,93%,to{transform:scaleY(1)}95.5%{transform:scaleY(.08)}}@keyframes blackcat-glance{0%,38%,to{transform:translate(0)}44%,58%{transform:translate(-6px)}66%,84%{transform:translate(6px)}}.blackcat-pupils ellipse{transform-box:fill-box;transform-origin:50%;animation:7s ease-in-out infinite blackcat-blink}@media (prefers-reduced-motion:reduce){.blackcat-sparkle,.blackcat-twinkle,.blackcat-eye,.blackcat-pupils,.blackcat-pupils ellipse{animation:none}}.snow-sky{pointer-events:none;z-index:0;width:100vw;margin-left:-50vw;position:absolute;top:0;bottom:0;left:50%;overflow:hidden}.snow-heaven{background:linear-gradient(#aab6d3 0%,#b6c1db 16%,#c7d0e4 34%,#d7deeb 56%,#e3e8f2 78%,#e8edf500 100%);height:860px;position:absolute;top:0;left:0;right:0;overflow:hidden}.snow-aurora{filter:blur(34px);animation:snow-aurora var(--dur,28s) ease-in-out infinite alternate;border-radius:50%;display:block;position:absolute}.snow-aurora-a{background:radial-gradient(#7eceb86b,#0000 70%);width:70%;height:240px;top:-110px;left:34%;transform:rotate(-9deg)}.snow-aurora-b{--dur:34s;background:radial-gradient(#b2a0e657,#0000 70%);width:56%;height:210px;top:-40px;left:54%;transform:rotate(6deg)}.snow-aurora-c{--dur:40s;background:radial-gradient(#78c6d238,#0000 70%);width:40%;height:150px;top:-90px;left:-8%;transform:rotate(-4deg)}@keyframes snow-aurora{0%{opacity:.75;translate:-30px}to{opacity:1;translate:30px 10px}}.snow-rays{background:repeating-linear-gradient(112deg,#0000 0 70px,#ffffff1a 70px 104px,#0000 104px 190px);position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000 0% 50%,#0000 92%);mask-image:linear-gradient(#000 0% 50%,#0000 92%)}.snow-star{filter:drop-shadow(0 0 1.5px #4660968c)drop-shadow(0 0 8px #fffffff2)drop-shadow(0 0 26px #d6e8ffd9);width:clamp(70px,11vw,124px);animation:6s ease-in-out infinite alternate snow-star;position:absolute;top:96px;right:13%}.snow-star svg{fill:#fdfeff;width:100%;height:auto;display:block}.snow-star-small{opacity:.8;width:clamp(30px,4vw,46px);animation-duration:4.5s;top:180px;left:24%;right:auto}@keyframes snow-star{0%{opacity:.85;transform:scale(.94)}to{opacity:1;transform:scale(1.04)}}.snow-firs{opacity:.94;filter:blur(.3px);width:min(46vw,460px);position:absolute;top:330px}.snow-firs svg{width:100%;height:auto;display:block;overflow:visible}.snow-firs-left{left:-3%}.snow-firs-right{top:380px;right:-3%}.snow-fir-bough{fill:#c1cbdf}.snow-fir-snow{fill:#f4f7fb}.snow-fir-far{opacity:.55;filter:blur(.8px)}.snow-drift{fill:#e9eef6}.snow-hill-top{display:none}@media (width<=899px){.snow-hill-top{display:block;top:calc(266px + min(46vw,460px)/1.05263)}}.snow-deer-top{width:clamp(96px,12vw,136px);position:absolute;top:632px;left:11%}.snow-deer-top svg,.snow-deer svg{width:100%;height:auto;display:block;overflow:visible}.snow-deer-zzz{animation:3.8s ease-in-out infinite snow-deer-zzz}@keyframes snow-deer-zzz{0%,to{opacity:.95;transform:translateY(0)}50%{opacity:.55;transform:translateY(-2.5px)}}.snow-deer-flake{transform-box:fill-box;transform-origin:50%;animation:6s linear infinite snow-deer-flake}@keyframes snow-deer-flake{to{transform:translate(19px,-2px)rotate(360deg)}}.snow-defs{position:absolute}.snow-bands-sky{background:repeating-linear-gradient(#e8edf5 0,#d8dfec 169px,#c1cbe1 377px,#aeb9d5 585px,#b2bdd7 741px,#c4cde2 923px,#dbe1ee 1118px,#e8edf5 1300px);position:absolute;bottom:0;left:0;right:0}.snow-bands-sky:before{content:"";background:repeating-linear-gradient(112deg,#0000 0 70px,#ffffff17 70px 104px,#0000 104px 190px);position:absolute;inset:0;-webkit-mask-image:repeating-linear-gradient(#0000 0 156px,#000 468px 806px,#0000 1118px 1300px);mask-image:repeating-linear-gradient(#0000 0 156px,#000 468px 806px,#0000 1118px 1300px)}.snow-band{height:1300px;position:absolute;left:0;right:0}.snow-band-aurora{background:radial-gradient(46% 42% at 38%,#7eceb866,#0000),radial-gradient(40% 38% at 66% 46%,#b2a0e652,#0000);border-radius:50%;width:78%;height:300px;display:block;position:absolute}.snow-band-aurora-left{left:calc(-10% + var(--shift,0%));transform:rotate(-7deg)}.snow-band-aurora-right{right:calc(-10% + var(--shift,0%));transform:rotate(6deg)}.snow-band-star{filter:drop-shadow(0 0 6px #fffffff2)drop-shadow(0 0 16px #d6e8ffbf);animation:6s ease-in-out infinite alternate snow-star;display:block;position:absolute}.snow-band-star svg{fill:#fdfeff;width:100%;height:auto;display:block}.snow-band-star-small{opacity:.8;animation-duration:4.5s}.snow-hill{height:320px;position:absolute;left:0;right:0}.snow-hill-land{width:100%;height:100%;position:absolute;inset:0}.snow-band .snow-hill{bottom:-110px}.snow-band-firs{opacity:.94;width:min(46vw,460px);position:absolute;bottom:146px}.snow-band-firs svg{width:100%;height:auto;display:block;overflow:visible}.snow-band-firs-left{left:-3%}.snow-band-firs-right{right:-3%}.snow-deer{width:clamp(84px,10.5vw,124px);position:absolute;bottom:150px}.snow-deer-left{left:calc(min(46vw,460px)/3.33333)}.snow-deer-right{right:calc(min(46vw,460px)/3.33333)}@media (width>=900px) and (height>=501px){.snow-deer-right{right:calc(var(--nav-w) / 2 + min(46vw, 460px) * .3)}}.snow-glint{width:3px;height:3px;animation:snow-glint var(--dur,4s) ease-in-out var(--delay,0s) infinite alternate;background:#fff;border-radius:50%;display:block;position:absolute;box-shadow:0 0 5px #fffffff2,0 0 2px #7896c899}@keyframes snow-glint{0%{opacity:.1}to{opacity:.9}}.snow-fall{pointer-events:none;z-index:0;position:fixed;inset:0;overflow:hidden}.snow-flake{opacity:.95;animation:snow-fall var(--dur,14s) linear var(--delay,0s) infinite;background:#fff;border-radius:50%;display:block;position:absolute;top:-24px;box-shadow:0 0 2px #40568680,0 0 6px #ffffffd9}.snow-flake-soft{filter:blur(1.1px);opacity:.85}.snow-flake-crystal{box-shadow:none;background:0 0;border-radius:0}.snow-flake-crystal svg{width:100%;height:100%;display:block;overflow:visible}.snow-flake-crystal path{fill:none;stroke:#fff;stroke-width:1.7px;stroke-linecap:round;filter:drop-shadow(0 0 1.2px #40568699)}@keyframes snow-fall{0%{opacity:0;transform:translate(0)rotate(0)}6%{opacity:1}50%{transform:translate(var(--sway,30px), 55vh) rotate(calc(var(--spin,180deg) / 2))}94%{opacity:1}to{transform:translate(0, 112vh) rotate(var(--spin,180deg));opacity:0}}@media (prefers-reduced-motion:reduce){.snow-aurora,.snow-star,.snow-band-star,.snow-glint,.snow-deer-zzz,.snow-deer-flake{animation:none}.snow-fall{display:none}}@media (pointer:coarse){.chord-card-practice-actions .btn{min-height:44px}.fingerpicking-chord-switch button,.fingerpicking-filter button,.fingerpicking-repeat button,.chord-category-options button,input[type=range]{min-height:40px}.chord-slot-button,.capo-slot-button,.fingerpicking-speed-btn{min-height:44px}.journey-week-days button{border-radius:999px;flex:1 1 0;width:auto;min-width:32px;max-width:44px;height:40px}.salon-charts-btn{min-height:40px}.salon-page.is-round .slicer-topbar .lesson-shell-back{width:40px;height:40px}}@media (width<=599px),(height<=500px){.navbar-bottom-link>span:last-child{letter-spacing:-.01em;font-size:11px}.lesson-node-chip{font-size:11px}.home-stat>div>span{font-size:clamp(11px,3.2vw,12px)}.chord-card-facts dt,.library-page-grid .chord-card-facts dt{font-size:11.5px}.fingerpicking-maker-chords .chord-slot-label,.fingerpicking-maker .fingerpicking-maker-settings>.fingerpicking-maker-slot,.fingerpicking-maker .fingerpicking-maker-settings>.fingerpicking-maker-slot>span,.fp-chart-count,.is-dense .fp-chart-count,.maker-guide-slot span,.fingerpicking-step small,.game-card-score span,.packager-option,.lesson-complete-fb-label,.lesson-complete-highlight-badge,.pack-card-odds-chip,.pack-card-badge,.collectible-card-rarity,.collectible-card-pack{font-size:11px}.collection-grid .collectible-card-name{font-size:11.5px}.collection-grid .collectible-card-rarity,.lineup-worn,.lineup-rarity,.lineup-dupes,.progress-card-flag,.progress-bar-row-tag,.journey-chord span,.journey-week-stats span,.achievement-badge-earned-mark,.achievement-badge-progress-label,.achievement-badge-how{font-size:11px}.profile-achievements-grid .achievement-badge-title{font-size:12px}.profile-achievements-grid .achievement-badge-earned-mark,.profile-achievements-grid .achievement-badge-progress-label{font-size:11px}.profile-achievements-grid .achievement-badge-how{letter-spacing:.02em;white-space:normal;font-size:11px}.profile-achievements-grid .achievement-badge-desc{font-size:11.5px}.profile-achievements-grid .achievement-badge-date,.profile-achievements-grid .achievement-badge-reward{font-size:11px}}@media (width<=420px){.profile-achievements-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=360px){.journey-week-days{gap:4px}}.cloud-card{background:var(--surface);border-radius:var(--r-lg);box-shadow:var(--shadow-sm);justify-content:space-between;align-items:center;gap:16px;margin-bottom:30px;padding:20px 24px;display:flex}.cloud-card .profile-section-title{margin:0 0 4px}.cloud-card-sub{color:var(--ink-soft);margin:0;font-size:13.5px;font-weight:600}.cloud-email{color:var(--ink-faint);font-weight:500}.cloud-card-who{align-items:center;gap:14px;min-width:0;display:flex}.cloud-avatar{border-radius:50%;flex:none;width:44px;height:44px}.cloud-status{color:var(--ink-faint);align-items:center;gap:7px;margin:6px 0 0;font-size:12.5px;font-weight:600;display:inline-flex}.cloud-status:empty{display:none}.cloud-status-dot{background:var(--ink-faint);border-radius:50%;flex:none;width:8px;height:8px}.cloud-status-synced{color:var(--green)}.cloud-status-synced .cloud-status-dot{background:var(--green)}.cloud-status-pending .cloud-status-dot,.cloud-status-syncing .cloud-status-dot{background:var(--gold);animation:1s ease-in-out infinite cloud-pulse}.cloud-status-offline{color:var(--orange-dark)}.cloud-status-offline .cloud-status-dot{background:var(--orange)}.cloud-status-error{color:var(--red)}.cloud-status-error .cloud-status-dot{background:var(--red)}@keyframes cloud-pulse{50%{opacity:.35}}.cloud-signin{flex-direction:column;flex:none;align-items:flex-end;gap:10px;display:flex}.google-web-button{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;border-radius:999px;min-height:44px;overflow:hidden}.google-web-button iframe{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}.cloud-error{color:var(--red);margin:0;font-size:13px;font-weight:600}@media (width<=640px){.cloud-card{flex-direction:column;align-items:stretch}.cloud-signin{align-items:stretch}}.navbar-account{color:var(--ink-faint);align-items:center;gap:7px;min-width:0;margin-top:10px;font-size:12px;font-weight:600;display:flex}.navbar-account a{color:inherit;text-decoration:underline}.navbar-account-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.navbar-copyright{color:var(--ink-faint);margin:10px 0 0;font-size:11px}.cloud-card{flex-wrap:wrap}.cloud-actions{flex-direction:column;flex:none;align-items:flex-end;gap:6px;display:flex}.cloud-delete-link{color:var(--ink-faint);font:inherit;cursor:pointer;background:0 0;border:0;padding:6px 4px;font-size:13px;font-weight:700;text-decoration:underline}.cloud-delete-confirm{border-radius:var(--r-md);background:color-mix(in srgb, var(--red) 8%, var(--surface));box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--red) 35%, transparent);flex:1 0 100%;padding:14px 16px}.cloud-delete-title{color:var(--ink);margin:0 0 4px;font-weight:800}.cloud-delete-buttons{flex-wrap:wrap;gap:10px;margin-top:12px;display:flex}.cloud-delete-btn{background:var(--red);color:#fff;box-shadow:0 4px 0 color-mix(in srgb, var(--red) 60%, #000)}@media (pointer:coarse){.cloud-delete-link{min-height:40px}}@media (width<=640px){.cloud-actions{align-items:stretch}}.cloud-legal{color:var(--ink-faint);margin:6px 0 0;font-size:12.5px;font-weight:600}.cloud-legal a{color:var(--gold-dark);padding-block:10px;font-weight:800}.cloud-signin-buttons{flex-direction:column;align-items:flex-end;gap:10px;display:flex}.apple-signin-btn{color:#fff;cursor:pointer;background:#000;border:0;border-radius:999px;justify-content:center;align-items:center;gap:8px;width:min(320px,100%);min-height:40px;padding:0 18px;font-family:-apple-system,BlinkMacSystemFont,Helvetica Neue,Helvetica,Arial,sans-serif;font-size:15.5px;font-weight:500;display:inline-flex}.apple-signin-btn svg{fill:currentColor;flex:none;width:16px;height:16px;margin-top:-2px}.apple-signin-btn:disabled{opacity:.6;cursor:default}:root[data-theme=dark] .apple-signin-btn{color:#000;background:#fff}.cloud-apple-note{max-width:320px;color:var(--ink-faint);margin:0;font-size:12.5px;font-weight:600;line-height:1.4}.cloud-apple-note strong{color:var(--ink-soft)}@media (width<=640px){.cloud-signin-buttons{align-items:stretch}.apple-signin-btn{width:100%}.cloud-apple-note{max-width:none}}.google-signin-btn{color:#3c4043;letter-spacing:.25px;cursor:pointer;background:#fff;border:1px solid #dadce0;border-radius:999px;grid-template-columns:18px 1fr 18px;align-items:center;gap:8px;width:min(320px,100%);min-height:40px;margin:2px 0;padding:0 12px;font-family:Roboto,Google Sans,Arial,sans-serif;font-size:14px;font-weight:500;display:grid}.google-signin-btn svg{width:18px;height:18px}@media (hover:hover){.google-signin-btn:hover{background:#f8faff;border-color:#d2e3fc}}@media (width<=640px){.google-signin-btn{width:100%}}.terms-ask-backdrop{z-index:100;padding:calc(16px + env(safe-area-inset-top,0px)) 16px calc(16px + env(safe-area-inset-bottom,0px));background:#080a148c;animation:.2s both terms-ask-fade;display:grid;position:fixed;inset:0;overflow-y:auto}@keyframes terms-ask-fade{0%{opacity:0}}.terms-ask{border-radius:var(--r-xl,22px);background:var(--surface);width:100%;min-width:0;max-width:380px;color:var(--ink);box-shadow:var(--shadow-lg);text-align:center;outline:none;flex-direction:column;align-items:center;gap:12px;margin:auto;padding:24px 22px 14px;display:flex}.terms-ask h2{margin:0}.terms-ask p{color:var(--ink-soft);text-wrap:pretty;margin:0;font-weight:600;line-height:1.5}.terms-ask a{color:var(--gold-dark);font-weight:800}.terms-ask .google-web-button,.terms-ask .apple-signin-btn{margin-top:4px}.terms-ask .terms-ask-status{color:var(--ink-faint);font-size:13px}.terms-ask-cancel{min-height:40px;color:var(--ink-faint);font:inherit;cursor:pointer;background:0 0;border:0;padding:6px 18px;font-size:14px;font-weight:800}@media (hover:hover){.terms-ask-cancel:hover{color:var(--ink)}}@media (prefers-reduced-motion:reduce){.terms-ask-backdrop{animation:none}}
