@font-face{font-family:DM Sans;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/dm-sans-400-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Sans;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/dm-sans-400-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Playfair Display;font-style:normal;font-weight:600 700;font-display:swap;src:url(/fonts/playfair-display-600-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Playfair Display;font-style:normal;font-weight:600 700;font-display:swap;src:url(/fonts/playfair-display-600-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}: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;--key-white:#fffdf8;--key-black:#241c1c;--key-line:#c9c2b6;--navy:#1a1716;--navy-deep:#0f0d0c;--navy-soft:#2a2523;--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, serif;--font-body:"DM Sans", "Apple Color Emoji", "Segoe UI Emoji", "Noto Color Emoji", sans-serif;--nav-w:240px;--surface:#fffcf4;--surface-muted:#efe4cd;--on-navy:#ede4cf;--on-navy-soft:#b1a89c}: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]{--key-line:#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-sky=sunset]{--key-line:#c9a79b}:root[data-theme=light][data-sky=sunset]{--bg:#f7ebe3;--bg-soft:#f1dfd3;--surface:#fffaf6;--surface-muted:#f6ebe4;--white:#fffaf6;--line:#ead7cb;--ink:#3a2234;--ink-soft:#5e4256;--ink-faint:#7f6477;--chord-locked-edge:#c7a9a0;--gold:#e2834f;--gold-dark:#b4522a;--gold-light:#fbd9c2;--path-accent:#e2834f;--path-accent-dark:#b4522a;--path-accent-light:#fbd9c2;--progress-fill:#f0a06c;--progress-fill-end:#c4582c;--lineup-metal:#d9b7a8;--lineup-metal-soft:#f4e2d8;--lineup-plate:#fbf3ee;--lineup-plate-edge:#ead7cb;--progress-fill-alt:#c99ad0;--progress-fill-alt-end:#7a4f88}: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,.arpeggio-pattern,.rhythm-pattern,.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}a:focus-visible,button:focus-visible,summary:focus-visible,[role=button]:focus-visible,[role=tab]:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--gold);outline-offset:2px}.home-stat-icon,.walk-icon,.lesson-node-lock,.lesson-node-icon,.navbar-account>span[aria-hidden]{font-style:normal;font-weight:400}@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}}.critter-frame{box-shadow:inset 0 0 0 3px var(--rarity-color,var(--line));background:radial-gradient(circle,#fffaf3 0%,#fff4ef 38%,#0000 62%),repeating-linear-gradient(0deg,#f096aa2e 0 7px,#0000 7px 14px),repeating-linear-gradient(90deg,#f096aa2e 0 7px,#0000 7px 14px),#fbe1e6;border-radius:50%;flex:none;place-items:center;display:inline-grid;position:relative}.critter-frame svg{width:88%;height:88%}.critter-rarity-common{box-shadow:inset 0 0 0 3px var(--rarity-color)}.critter-rarity-uncommon{box-shadow:inset 0 0 0 3px var(--rarity-color), 0 0 10px var(--rarity-glow)}.critter-rarity-rare{box-shadow:inset 0 0 0 3px var(--rarity-color), 0 0 16px var(--rarity-glow)}.critter-rarity-epic{box-shadow:inset 0 0 0 3px var(--rarity-color), 0 0 22px var(--rarity-glow)}.critter-rarity-legendary{box-shadow:inset 0 0 0 3.5px var(--rarity-color), 0 0 30px var(--rarity-glow)}.critter-fx.critter-rarity-epic:after,.critter-fx.critter-rarity-legendary:after{content:"";box-shadow:0 0 18px 2px var(--rarity-glow);opacity:0;pointer-events:none;background:radial-gradient(circle,#ffffff29 0%,#0000 72%);border-radius:50%;animation:2.6s ease-in-out infinite critter-shine;position:absolute;inset:0}.critter-fx.critter-rarity-legendary:after{box-shadow:0 0 24px 4px var(--rarity-glow);animation-duration:2s}@keyframes critter-shine{0%,to{opacity:0}50%{opacity:1}}.critter-bare{place-items:center;display:inline-grid}.critter-bare svg{width:92%;height:92%}.critter-frame-locked{color:var(--line);box-shadow:inset 0 0 0 2px var(--line);opacity:.75}.critter-spark{color:var(--rarity-color);text-shadow:0 0 6px var(--rarity-glow);pointer-events:none;font-size:12px;line-height:1;animation:1.8s ease-in-out infinite critter-spark-twinkle;position:absolute}.critter-spark-1{animation-delay:0s;top:-2%;right:6%}.critter-spark-2{font-size:9px;animation-delay:.5s;bottom:2%;left:-4%}.critter-spark-3{font-size:8px;animation-delay:1s;top:30%;left:-8%}@keyframes critter-spark-twinkle{0%,to{opacity:.25;transform:scale(.85)}50%{opacity:1;transform:scale(1.15)}}@media (prefers-reduced-motion:reduce){.critter-fx.critter-rarity-epic:after,.critter-fx.critter-rarity-legendary:after,.critter-spark{animation:none}}.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=sunset] .navbar-bottom{background:linear-gradient(#5a3756,#3e2541);border-top-color:#7a5272}:root[data-sky=sunset] .navbar-bottom-link{color:#ecd3d0}:root[data-sky=sunset] .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-keybits{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-keybits{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-keybits{color:#dbe8f7}:root[data-sky=snow] .navbar-account,:root[data-sky=snow] .navbar-copyright{color:#c9d3e8}:root[data-sky=sunset] .navbar-side{background:linear-gradient(#653d5e 0%,#4f2f4b 55%,#3a2339 100%);border-right:1px solid #7d5575}:root[data-sky=sunset] .navbar-title{color:#fdf2ec}:root[data-sky=sunset] .navbar-link{color:#ead3cf}@media (hover:hover){:root[data-sky=sunset] .navbar-link:hover{color:#fdf2ec;background:#fbd9c21f}}:root[data-sky=sunset] .navbar-link-active{color:#fff;background:linear-gradient(#fbd9c238,#fbd9c214);box-shadow:inset 0 0 0 1px #fbd9c266}:root[data-sky=sunset] .navbar-stats{border-top-color:#fbd9c238}:root[data-sky=sunset] .navbar-stat{background:#fbd9c21f}:root[data-sky=sunset] .navbar-stat-streak{color:#ffcaa6}:root[data-sky=sunset] .navbar-stat-keybits{color:#fbd9c2}:root[data-sky=sunset] .navbar-account,:root[data-sky=sunset] .navbar-copyright{color:#e2c7c6}: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-keybits{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-sky=sunset] .navbar-more-menu{background:#4f2f4b;border-color:#7a5272}: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}:root[data-sky=sunset] .navbar-more-link{color:#fbeee9}@media (hover:hover){:root[data-sky=sunset] .navbar-more-link:hover{background:#fbd9c21f}}:root[data-sky=sunset] .navbar-more-link.is-active{color:#fff;background:#fbd9c233}@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-not-played .lesson-node-btn{background:var(--surface);box-shadow:none;border:3px dashed var(--path-accent)}.lesson-node-not-played .lesson-node-symbol{color:var(--ink-soft)}.lesson-node-chip-not-played{color:var(--ink-soft);background:0 0;box-shadow:inset 0 0 0 1.5px}:root[data-theme=dark] .lesson-node-not-played .lesson-node-btn{background:#1b1b1e}:root[data-theme=dark] .lesson-node-chip.lesson-node-chip-not-played{color:#c9c9cf;background:0 0}.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-shadow{stroke:#3c1e2817;stroke-width:16px;stroke-linecap:round}.learning-path-line-bg{stroke:#ffffff73;stroke-width:14px;stroke-linecap:round}.learning-path-line-done{stroke:#fff;stroke-width:14px;stroke-linecap:round}.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-shadow{stroke:#0000004d;stroke-width:17px}:root[data-theme=dark] .learning-path-line-bg{stroke:#ffffff29}:root[data-theme=dark] .learning-path-line-done{stroke:#d9d9de}: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=sunset] .path-section-banner-inner{background:#fffaf6f0;box-shadow:0 4px 16px #783c3229,inset 0 0 0 1px #e2834f47}: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}}.keys-board{flex-direction:column;align-items:center;gap:8px;display:flex}.keys-board svg{display:block;overflow:visible}.keys-board-md svg{width:210px;height:auto}.keys-board-lg svg{width:300px;max-width:100%;height:auto}.keys-board-xl svg{width:380px;max-width:100%;height:auto}.keys-board-frame{fill:none;stroke:var(--key-line,#c9c2b6);stroke-width:1.5px}.keys-board-white{fill:var(--key-white,#fffdf8);stroke:var(--key-line,#c9c2b6);stroke-width:1px;transition:fill .15s}.keys-board-black{fill:var(--key-black,#241c1c);stroke:var(--key-black,#241c1c);stroke-width:1px;transition:fill .15s}.keys-board-key-chord.keys-board-white{fill:var(--green);stroke:var(--green-dark,var(--green))}.keys-board-key-chord.keys-board-black{fill:color-mix(in srgb, var(--green) 72%, #000);stroke:color-mix(in srgb, var(--green) 72%, #000)}.keys-board-key-chord.keys-board-key-colour.keys-board-white{fill:color-mix(in srgb, var(--purple) 58%, var(--key-white));stroke:var(--purple-dark)}.keys-board-key-chord.keys-board-key-colour.keys-board-black{fill:color-mix(in srgb, var(--purple) 72%, var(--key-black));stroke:color-mix(in srgb, var(--purple) 72%, var(--key-black))}.keys-board-key-active{filter:drop-shadow(0 0 5px #e7c264e6);animation:.45s ease-out keys-board-press;fill:var(--gold-light,#e7c264)!important;stroke:var(--gold-dark)!important}@keyframes keys-board-press{0%{transform:translateY(0)}15%{transform:translateY(1.5px)}to{transform:translateY(0)}}.keys-board-key-dim{opacity:.3}.keys-board-key-spotlit{filter:drop-shadow(0 0 5px #e7c264cc);stroke:var(--gold-dark)!important;stroke-width:2.2px!important}.keys-board-key-bass{fill:var(--gold-light,#e7c264)!important;stroke:var(--gold-dark)!important}.keys-board-key-refused{animation:.4s keys-board-shake;stroke:var(--red)!important;stroke-width:2.2px!important}@keyframes keys-board-shake{0%,to{transform:translate(0)}25%{transform:translate(-1.5px)}75%{transform:translate(1.5px)}}.keys-board-finger{fill:#fff;font-size:11px;font-weight:800;font-family:var(--font-body)}.keys-board-root{fill:none;stroke:#fff;stroke-width:1.6px;opacity:.95}.keys-board-playmark{fill:var(--green);font-size:10px;font-weight:700}.keys-board-playmark-live{fill:var(--gold-dark);font-size:13px}.keys-board-unused{fill:var(--ink-faint);opacity:.75;font-size:15px;font-weight:800}.keys-board-name{fill:var(--ink);font-size:9px;font-weight:700;font-family:var(--font-body)}.keys-board-badge{fill:var(--bg-soft);stroke:var(--gold-dark);stroke-width:1.4px}.keys-board-badge-live{fill:var(--gold-dark)}.keys-board-badge-label{fill:var(--ink);font-size:8.5px;font-style:italic;font-weight:800;font-family:var(--font-body)}.keys-board-octave{fill:var(--ink-faint);font-size:8.5px;font-weight:700;font-family:var(--font-body)}.keys-board-bass{fill:var(--gold-dark)}.keys-board-bass-label{fill:var(--gold-dark);letter-spacing:.04em;font-size:8.5px;font-weight:800;font-family:var(--font-body)}.keys-board-hit{fill:#0000;cursor:pointer}.keys-board-hit:focus-visible{fill:#e7c26438;outline:none}.keys-board-hit-outside{cursor:help}.keys-board-hint{color:var(--ink-soft);text-align:center;margin:0;font-size:12px;font-weight:700}.keys-board-hint-refused{color:var(--red)}@media (prefers-reduced-motion:reduce){.keys-board-key-active,.keys-board-key-refused{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,:root[data-sky=sunset] .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:0 auto;align-items:center;gap:6px;min-width:0;max-width:100%;display:flex}.ccp-lesson-board .keys-board{max-width:100%}.ccp-lesson-board .keys-board svg{width:100%;max-width:380px}.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)}.ccp-ask-options{flex-direction:column;align-items:stretch;max-width:460px;margin:0 auto}.ccp-ask-option{text-align:left;white-space:normal;flex-direction:column;align-items:flex-start;gap:2px;height:auto;padding:14px 18px;display:flex}.ccp-ask-option strong{font-size:16px}.ccp-ask-option small{color:var(--ink-soft);font-size:13px;font-weight:600}.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 .keybit-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=light][data-sky=sunset] .app-main:has(.home-page){background:var(--bg);overflow-x:clip}:root[data-sky=sunset] .home-eyebrow{color:#6e2f44}:root[data-sky=sunset] .home-header h1{color:#3a2234}:root[data-sky=sunset] .home-stat{background:#fffaf6e0}:root[data-sky=sunset] .home-continue-card{box-shadow:var(--shadow-md), inset 0 0 0 1px #e2834f59;background:linear-gradient(120deg,#fffaf6,#fbe7da)}:root[data-sky=sunset] .home-continue-label,:root[data-sky=sunset] .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-song-next{color:var(--ink-faint);margin-top:2px;font-size:12px;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}}.home-notice{z-index:1;border-radius:var(--r-lg);background:var(--surface);border:2px solid var(--line);box-shadow:var(--shadow-sm);align-items:center;gap:12px;margin-bottom:16px;padding:14px 16px;display:flex;position:relative}.home-notice p{color:var(--ink);flex:1;margin:0;font-size:14px;font-weight:600}.home-notice-close{width:32px;height:32px;color:var(--ink-soft);cursor:pointer;background:0 0;border:none;border-radius:50%;flex:none;font-size:15px}@media (hover:hover){.home-notice-close:hover{background:var(--surface-muted)}}.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}.achv-card-many{width:min(420px,100%);max-height:calc(100dvh - 40px)}.achv-list{text-align:left;gap:8px;width:100%;min-height:0;margin:6px 0 0;padding:0;list-style:none;display:grid;overflow-y:auto}.achv-list-item{border-radius:var(--r-md);background:var(--bg-soft);align-items:center;gap:10px;padding:8px 10px;display:flex}.achv-list-icon{background:linear-gradient(150deg, var(--gold), var(--gold-dark));border-radius:50%;flex:none;place-items:center;width:36px;height:36px;font-size:18px;display:grid}.achv-list-text{flex:1;gap:1px;min-width:0;display:grid}.achv-list-text strong{font-size:14.5px}.achv-list-text small{color:var(--ink-soft);font-size:12px;font-weight:500;line-height:1.35}.achv-list-reward{color:var(--gold-dark);flex:none;align-items:center;gap:4px;font-size:13px;font-weight:800;display:inline-flex}@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}.achv-card.achv-card-many{max-height:calc(100dvh - 24px);display:flex}}.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 .keybit-icon{vertical-align:-2px;margin-right:2px;display:inline-block}@media (prefers-reduced-motion:reduce){.tpb,.tpb-dot{animation:none}}.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}}.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%{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 .maker-player{align-items:center}.walk-maker .keys-board{width:100%;max-width:440px;margin:0 auto}.walk-maker .keys-board-xl svg{width:100%;max-width:100%;height:auto}.walk-maker .keys-board-hint{white-space:normal}.walk-maker .accompaniment-now{min-height:60px}.walk-games{grid-template-columns:repeat(6,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-friends{grid-template-columns:repeat(auto-fill,minmax(90px,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-friend{border:1.5px solid var(--line);background:var(--surface);color:var(--ink);font:inherit;cursor:pointer;border-radius:14px;justify-items:center;gap:4px;padding:10px 6px 8px;transition:transform .15s,box-shadow .15s,border-color .15s;display:grid}@media (hover:hover){.walk-friend:hover{border-color:var(--gold-dark);transform:translateY(-3px);box-shadow:0 8px 20px #0000002e}}.walk-friend strong{font-size:12.5px;line-height:1.2}.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 .keys-board{max-width:100%}.walk-maker .accompaniment-now-current{padding:5px 12px;font-size:24px}.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}}.walk-close{border:1px solid var(--line);background:var(--surface);width:36px;height:36px;color:var(--ink-soft);font:800 16px var(--font-body);cursor:pointer;border-radius:50%;place-items:center;display:grid;position:absolute;top:10px;right:10px}@media (hover:hover){.walk-close:hover{border-color:var(--ink-faint);color:var(--ink)}}.walk-art-loading{border-radius:50%;margin:0 auto;display:block}