@import"https://fonts.googleapis.com/css2?family=Baloo+2:wght@500;700&family=Nunito:wght@500;700;800&display=swap";body[data-theme=dark]{--bg: #12181c;--bg-soft: #1a2329;--panel: #1f2c33;--panel-strong: #24333b;--ink: #e8f0f3;--muted: #9fafb7;--line: rgba(160, 177, 188, .24);--teal: #4da79f;--teal-strong: #67b8b1;--neon: #63d38b;--neon-soft: rgba(99, 211, 139, .14);--good: #71be84;--bad: #d26a77}body[data-theme=light]{--bg: #edf3f2;--bg-soft: #e3ecea;--panel: #f8fbfa;--panel-strong: #f2f7f6;--ink: #1f343d;--muted: #5d757f;--line: rgba(56, 98, 109, .24);--teal: #3f9f98;--teal-strong: #56b2ab;--neon: #70ca8f;--neon-soft: rgba(112, 202, 143, .2);--good: #28804a;--bad: #b44e63}body[data-theme=midnight]{--bg: #0f1322;--bg-soft: #171c2f;--panel: #1b2337;--panel-strong: #202a41;--ink: #ebf1fb;--muted: #a0aec5;--line: rgba(154, 174, 207, .22);--teal: #53b8d8;--teal-strong: #69c7e3;--neon: #7fd8c6;--neon-soft: rgba(127, 216, 198, .14);--good: #7dd9a0;--bad: #e07b8e}body[data-theme=forest]{--bg: #111a16;--bg-soft: #18231f;--panel: #1d2b25;--panel-strong: #22332c;--ink: #e9f2ec;--muted: #9bb0a4;--line: rgba(146, 173, 156, .22);--teal: #5fb19a;--teal-strong: #70c0aa;--neon: #67b870;--neon-soft: rgba(103, 184, 112, .14);--good: #7ccf8b;--bad: #d57881}body[data-theme=plum]{--bg: #17121f;--bg-soft: #22192d;--panel: #2a1d33;--panel-strong: #32223d;--ink: #f0eaf8;--muted: #b4a8c8;--line: rgba(180, 158, 216, .22);--teal: #8f6be8;--teal-strong: #a17df2;--neon: #d287ff;--neon-soft: rgba(210, 135, 255, .14);--good: #8fd8a8;--bad: #ec7daa}body[data-theme=rose]{--bg: #1c1418;--bg-soft: #261a20;--panel: #332128;--panel-strong: #3c2730;--ink: #f5ebef;--muted: #bfa8b2;--line: rgba(208, 162, 178, .22);--teal: #c7689c;--teal-strong: #d971a8;--neon: #f08fbc;--neon-soft: rgba(240, 143, 188, .14);--good: #8fd0ae;--bad: #f0788d}body[data-theme=berry]{--bg: #181118;--bg-soft: #221621;--panel: #2c1a25;--panel-strong: #351f2d;--ink: #f4e9ef;--muted: #c0a8b6;--line: rgba(201, 156, 181, .22);--teal: #bf5d8d;--teal-strong: #d56a9e;--neon: #f1798d;--neon-soft: rgba(241, 121, 141, .14);--good: #95d49f;--bad: #ef6a7f}body[data-theme=sunset]{--bg: #1d1410;--bg-soft: #271b15;--panel: #33231d;--panel-strong: #3c2b23;--ink: #f5eee7;--muted: #c1aa98;--line: rgba(209, 165, 128, .22);--teal: #d47a5d;--teal-strong: #e58b6f;--neon: #f0a45e;--neon-soft: rgba(240, 164, 94, .14);--good: #9fd48b;--bad: #ef7a68}body[data-theme=golden]{--bg: #1d180f;--bg-soft: #272015;--panel: #332b1d;--panel-strong: #3d3424;--ink: #f4f0e6;--muted: #c2b49a;--line: rgba(205, 181, 128, .22);--teal: #c59b45;--teal-strong: #d6b24a;--neon: #f0d06a;--neon-soft: rgba(240, 208, 106, .14);--good: #a3d287;--bad: #e38772}body[data-theme=light]{--lesson-visual-label-fill: var(--ink);--lesson-visual-label-stroke: rgba(255, 255, 255, .35)}body[data-theme]:not([data-theme=light]){--lesson-visual-label-fill: #f8fcff;--lesson-visual-label-stroke: rgba(0, 0, 0, .28)}*{box-sizing:border-box}body{margin:0;min-height:100vh;font-family:Nunito,Avenir Next,sans-serif;color:var(--ink);background:radial-gradient(circle at 10% -8%,color-mix(in srgb,var(--teal) 14%,transparent) 0%,transparent 42%),radial-gradient(circle at 90% 0%,color-mix(in srgb,var(--neon) 10%,transparent) 0%,transparent 40%),linear-gradient(145deg,var(--bg) 0%,var(--bg-soft) 100%);transition:background .24s ease,color .2s ease}body.no-scroll{overflow:hidden}body.theme-switching,body.theme-switching *,body.theme-switching *:before,body.theme-switching *:after{transition:background .32s ease,background-color .32s ease,color .28s ease,border-color .32s ease,box-shadow .32s ease,fill .32s ease,stroke .32s ease!important}#root{max-width:1080px;margin:0 auto;padding:24px 16px 40px}h1,h2,h3{margin:0;font-family:"Baloo 2",Nunito,sans-serif}p{margin:6px 0}.topbar{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:14px;padding:8px 2px 2px;flex-wrap:nowrap}.mobile-nav-trigger{display:none;width:46px;height:46px;min-width:46px;border-radius:12px;border:1px solid color-mix(in srgb,var(--line) 78%,var(--teal) 22%);background:color-mix(in srgb,var(--panel) 90%,transparent);padding:0;position:relative;place-items:center;box-shadow:0 8px 18px color-mix(in srgb,var(--teal) 10%,transparent)}.mobile-nav-trigger span{position:absolute;width:20px;height:2px;border-radius:999px;background:var(--ink);transition:transform .22s ease,opacity .18s ease,top .22s ease}.mobile-nav-trigger span:nth-child(1){top:15px}.mobile-nav-trigger span:nth-child(2){top:22px}.mobile-nav-trigger span:nth-child(3){top:29px}.mobile-nav-trigger.open span:nth-child(1){top:22px;transform:rotate(45deg)}.mobile-nav-trigger.open span:nth-child(2){opacity:0;transform:scaleX(.2)}.mobile-nav-trigger.open span:nth-child(3){top:22px;transform:rotate(-45deg)}.brand-block{min-width:0;display:grid;gap:8px}.brand-chip{width:fit-content;border-radius:999px;border:1px solid color-mix(in srgb,var(--teal) 26%,var(--line) 74%);background:color-mix(in srgb,var(--teal) 12%,var(--panel) 88%);color:color-mix(in srgb,var(--teal) 82%,var(--ink) 18%);padding:4px 10px;font-size:12px;font-weight:800;letter-spacing:.6px}.brand{font-size:52px;line-height:.92;letter-spacing:.2px;max-width:9.5ch;text-wrap:balance}.brand-single-row{font-size:42px;line-height:1;white-space:nowrap;max-width:none;flex:0 1 auto}.topbar-controls{flex:1;min-width:0;display:grid;grid-template-columns:minmax(220px,260px) minmax(220px,1fr) auto;gap:10px;align-items:center}.streak{background:color-mix(in srgb,var(--panel) 88%,transparent);border:1px solid var(--line);border-radius:999px;padding:10px 14px;color:var(--muted);font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.header-highscore{min-width:120px;border-radius:14px;border:1px solid color-mix(in srgb,#ffd166 30%,var(--line) 70%);background:radial-gradient(circle at 12% 15%,color-mix(in srgb,#ffd166 10%,transparent) 0%,transparent 46%),linear-gradient(135deg,color-mix(in srgb,var(--panel) 82%,#16202b 18%),color-mix(in srgb,var(--panel-strong) 90%,#1b2736 10%));padding:8px 12px;display:grid;align-content:center;gap:2px;box-shadow:inset 0 1px color-mix(in srgb,white 6%,transparent)}.header-highscore-label{font-size:11px;color:color-mix(in srgb,#ffd166 55%,var(--muted) 45%);text-transform:uppercase;letter-spacing:.06em;line-height:1}.header-highscore-value{font-size:24px;line-height:1;color:color-mix(in srgb,#ffe08a 72%,var(--ink) 28%);font-variant-numeric:tabular-nums}.header-account-chip{min-width:0;max-width:180px;border-radius:14px;border:1px solid var(--line);background:color-mix(in srgb,var(--panel) 88%,transparent);color:var(--ink);padding:8px 10px;display:inline-grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:8px;min-height:52px;transition:border-color .16s ease,background-color .18s ease,transform .16s ease}.header-account-chip:hover{border-color:color-mix(in srgb,var(--teal) 34%,var(--line) 66%);background:color-mix(in srgb,var(--teal) 10%,var(--panel) 90%);transform:translateY(-1px)}.header-account-avatar{width:32px;height:32px;border-radius:999px;display:inline-grid;place-items:center;background:radial-gradient(circle at 30% 24%,color-mix(in srgb,var(--teal) 16%,transparent) 0%,transparent 58%),color-mix(in srgb,var(--panel-strong) 92%,transparent);border:1px solid color-mix(in srgb,var(--teal) 22%,var(--line) 78%);box-shadow:0 0 0 1px color-mix(in srgb,var(--panel) 75%,transparent) inset}.header-account-avatar-inner{width:24px;height:24px;border-radius:999px;display:grid;place-items:center;background:color-mix(in srgb,var(--panel) 72%,transparent);border:1px solid color-mix(in srgb,var(--line) 86%,transparent);font-size:14px}.header-account-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:800;font-size:14px}@media(max-width:1320px){.header-account-chip{max-width:132px;padding-inline:8px}.header-account-name{font-size:13px}}.account-profile-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(240px,.8fr);gap:12px;align-items:start}.account-profile-left{display:grid;gap:10px}.account-profile-right{display:grid}.account-avatar-card{border:1px solid color-mix(in srgb,var(--line) 86%,transparent);border-radius:14px;padding:12px;background:color-mix(in srgb,var(--panel) 92%,transparent);display:grid;gap:8px}.account-avatar-card small{color:var(--muted)}.account-avatar-preview-btn{border-radius:14px;border:1px solid color-mix(in srgb,var(--line) 86%,transparent);background:radial-gradient(circle at 18% 16%,color-mix(in srgb,var(--teal) 10%,transparent) 0%,transparent 42%),color-mix(in srgb,var(--panel-strong) 92%,transparent);color:var(--ink);min-height:92px;display:grid;justify-items:center;align-content:center;gap:4px;padding:10px}.account-avatar-preview-btn:hover{border-color:color-mix(in srgb,var(--teal) 34%,var(--line) 66%)}.account-avatar-preview-emoji{font-size:34px;line-height:1}.account-avatar-preview-badge{width:56px;height:56px;border-radius:999px;display:grid;place-items:center;border:1px solid color-mix(in srgb,var(--teal) 26%,var(--line) 74%);background:radial-gradient(circle at 32% 24%,color-mix(in srgb,var(--teal) 18%,transparent) 0%,transparent 52%),color-mix(in srgb,var(--panel) 84%,transparent);box-shadow:0 0 0 1px color-mix(in srgb,var(--panel) 80%,transparent) inset,0 6px 14px #0000001f}.account-avatar-preview-cta{margin:0;font-size:11px;font-weight:700;color:var(--muted)}.account-icon-picker-modal{width:min(620px,100%);max-height:min(88vh,760px);overflow:auto}.account-icon-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(54px,1fr));gap:8px;max-height:320px;overflow:auto}.account-icon-option{min-height:54px;border-radius:12px;border:1px solid color-mix(in srgb,var(--line) 86%,transparent);background:color-mix(in srgb,var(--panel) 92%,transparent);color:var(--ink);display:grid;place-items:center;font-size:24px;line-height:1;padding:0}.account-icon-option:hover{border-color:color-mix(in srgb,var(--teal) 36%,var(--line) 64%);transform:translateY(-1px)}.account-icon-option.active{border-color:color-mix(in srgb,var(--neon) 35%,var(--line) 65%);background:color-mix(in srgb,var(--teal) 16%,var(--panel) 84%);box-shadow:0 0 0 1px color-mix(in srgb,var(--teal) 16%,transparent) inset}.account-password-grid{display:grid;gap:10px}.role-toggle{display:grid;grid-template-columns:1fr 1fr;gap:8px;border-radius:12px;border:1px solid color-mix(in srgb,var(--line) 88%,transparent);background:color-mix(in srgb,var(--panel) 92%,transparent);padding:4px;min-height:42px}.role-toggle-btn{border-radius:10px;border:1px solid transparent;background:transparent;color:var(--muted);font-weight:800;min-height:34px;padding:6px 10px}.role-toggle-btn:hover{color:var(--ink);background:color-mix(in srgb,var(--panel-strong) 88%,transparent)}.role-toggle-btn.active{color:var(--ink);border-color:color-mix(in srgb,var(--neon) 24%,var(--line) 76%);background:radial-gradient(circle at 16% 16%,color-mix(in srgb,var(--teal) 12%,transparent) 0%,transparent 48%),color-mix(in srgb,var(--teal) 12%,var(--panel) 88%);box-shadow:0 0 0 1px color-mix(in srgb,var(--teal) 14%,transparent) inset}.mobile-nav-panel{display:none}.player-hud{min-width:210px;background:color-mix(in srgb,var(--panel) 88%,transparent);border:1px solid var(--line);border-radius:12px;padding:8px 10px;display:grid;gap:6px}.player-hud-top{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:14px;color:var(--muted)}.theme-toggle{background:linear-gradient(135deg,color-mix(in srgb,var(--neon) 36%,var(--panel) 64%),color-mix(in srgb,var(--neon) 52%,var(--panel) 48%));color:var(--ink);border:1px solid color-mix(in srgb,var(--line) 85%,transparent);width:52px;height:52px;min-width:52px;padding:0;border-radius:14px;display:inline-grid;place-items:center;font-size:24px;line-height:1;box-shadow:0 8px 18px color-mix(in srgb,var(--teal) 12%,transparent)}.theme-toggle span{display:inline-block;transition:transform .26s cubic-bezier(.2,.8,.2,1),filter .26s ease}body.theme-switching .theme-toggle span{transform:rotate(18deg) scale(1.08);filter:drop-shadow(0 0 8px color-mix(in srgb,var(--neon) 20%,transparent))}.xp-track{height:8px;border-radius:999px;background:color-mix(in srgb,var(--panel) 92%,transparent);border:1px solid var(--line);overflow:hidden}.xp-fill{height:100%;background:linear-gradient(90deg,var(--teal) 0%,color-mix(in srgb,var(--neon) 64%,var(--teal) 36%) 100%);border-radius:999px;transition:width .22s ease}.analytics-player-summary{border-radius:16px;border:1px solid color-mix(in srgb,var(--line) 84%,var(--teal) 16%);background:radial-gradient(circle at 85% 10%,color-mix(in srgb,var(--teal) 8%,transparent) 0%,transparent 40%),linear-gradient(180deg,color-mix(in srgb,var(--panel-strong) 92%,transparent),color-mix(in srgb,var(--panel) 94%,transparent));padding:14px}.analytics-player-summary-head{display:flex;justify-content:space-between;align-items:baseline;gap:10px;margin-bottom:8px}.analytics-player-summary-head h3{margin:0}.analytics-player-grid{margin-top:0}.analytics-player-card{border-radius:14px;padding:12px;background:linear-gradient(180deg,color-mix(in srgb,var(--panel) 92%,transparent),color-mix(in srgb,var(--panel-strong) 90%,transparent));border:1px solid color-mix(in srgb,var(--line) 86%,transparent);box-shadow:inset 0 1px color-mix(in srgb,white 4%,transparent)}.analytics-card-label{color:color-mix(in srgb,var(--muted) 85%,var(--ink) 15%);font-size:12px;text-transform:uppercase;letter-spacing:.06em;margin-bottom:6px;line-height:1}.analytics-card-mainline{display:flex;align-items:baseline;gap:10px}.analytics-card-mainline strong{font-size:34px;line-height:1}.analytics-card-mainline span{color:var(--muted);font-weight:700;font-size:15px}.analytics-inline-xp{margin-top:8px}.analytics-level-card .xp-track{height:9px}.analytics-highscore-card{border-color:color-mix(in srgb,#ffd166 34%,var(--line) 66%);background:radial-gradient(circle at 16% 14%,color-mix(in srgb,#ffd166 16%,transparent) 0%,transparent 44%),linear-gradient(135deg,color-mix(in srgb,#ffd166 6%,var(--panel) 94%),color-mix(in srgb,var(--panel-strong) 92%,transparent));box-shadow:inset 0 1px color-mix(in srgb,#fff 5%,transparent),0 0 0 1px color-mix(in srgb,#ffd166 7%,transparent)}.analytics-highscore-row{display:flex;align-items:center;gap:10px}.analytics-highscore-row strong{font-size:38px;line-height:1;color:color-mix(in srgb,#ffe6a4 72%,var(--ink) 28%);font-variant-numeric:tabular-nums;text-shadow:0 0 12px color-mix(in srgb,#ffd166 16%,transparent)}.analytics-highscore-icon{font-size:18px;width:28px;height:28px;border-radius:999px;display:inline-grid;place-items:center;background:color-mix(in srgb,#ffd166 14%,transparent);border:1px solid color-mix(in srgb,#ffd166 24%,var(--line) 76%)}.analytics-streak-card{border-color:color-mix(in srgb,var(--teal) 20%,var(--line) 80%)}.analytics-attempts-card .analytics-card-mainline strong{font-size:36px}.analytics-collapsible-header{width:100%;background:transparent;border:0;padding:0;box-shadow:none;display:flex;justify-content:space-between;align-items:center;gap:10px;text-align:left;font-size:inherit}.analytics-collapsible-header:hover{transform:none;filter:none;box-shadow:none}.analytics-caret{color:var(--muted);font-size:18px;line-height:1;flex:0 0 auto}.analytics-collapsible-body{margin-top:8px}.learn-progress-fill{width:0!important;animation:learnProgressFillIn .7s cubic-bezier(.2,.8,.2,1) forwards}@keyframes learnProgressFillIn{0%{width:0;filter:saturate(.9)}60%{filter:saturate(1.05)}to{width:var(--target-width, 100%);filter:saturate(1)}}.card{background:linear-gradient(180deg,var(--panel-strong) 0%,var(--panel) 100%);border:1px solid var(--line);border-radius:18px;padding:18px;box-shadow:0 8px 18px #00000024}.section{margin-top:14px}.row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.space-between{justify-content:space-between}button{border:1px solid transparent;border-radius:12px;background:linear-gradient(135deg,color-mix(in srgb,var(--teal) 72%,var(--panel) 28%),color-mix(in srgb,var(--teal-strong) 68%,var(--panel) 32%));color:var(--ink);padding:10px 14px;font-family:"Baloo 2",Nunito,sans-serif;font-size:22px;line-height:1;cursor:pointer;transition:transform .12s ease,filter .14s ease,box-shadow .16s ease;touch-action:manipulation}button:hover{transform:translateY(-1px) scale(1.01);filter:saturate(1.02);box-shadow:0 6px 12px color-mix(in srgb,var(--teal) 24%,transparent)}button:focus-visible{outline:none;box-shadow:0 0 0 3px color-mix(in srgb,var(--neon) 22%,transparent),0 0 0 1px color-mix(in srgb,var(--neon) 42%,var(--line) 58%)}button:disabled{opacity:.52;cursor:not-allowed;transform:none;box-shadow:none}button.secondary{background:color-mix(in srgb,var(--panel) 78%,var(--teal) 22%);color:var(--ink);border-color:var(--line)}button.ghost{background:color-mix(in srgb,var(--neon-soft) 70%,var(--panel) 30%);color:color-mix(in srgb,var(--ink) 86%,transparent);border-color:color-mix(in srgb,var(--neon) 26%,var(--line) 74%)}.tabs{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}.site-footer{margin-top:14px;padding:10px 0 4px;border-radius:0;border:0;background:transparent;box-shadow:none;font-size:14px}.footer-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr .95fr;gap:14px}.footer-column{display:grid;align-content:start;gap:8px;border:1px solid color-mix(in srgb,var(--line) 80%,transparent);background:color-mix(in srgb,var(--panel) 95%,transparent);border-radius:14px;padding:12px}.footer-column h3,.footer-column h4{margin:0;line-height:1.15;letter-spacing:0}.footer-column h3{font-size:18px}.footer-column h4{font-size:16px}.footer-subhead{margin-top:4px}.footer-meta-stack{display:grid;gap:6px}.footer-inline-link{color:var(--ink);text-decoration:none;border:1px solid var(--line);background:color-mix(in srgb,var(--panel) 96%,transparent);border-radius:12px;padding:7px 9px;font-size:14px;line-height:1.2;transition:border-color .18s ease,transform .18s ease,background .18s ease}.footer-inline-link:hover{border-color:color-mix(in srgb,var(--neon) 28%,var(--line) 72%);background:color-mix(in srgb,var(--panel) 88%,var(--neon-soft) 12%);transform:translateY(-1px)}.footer-link-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--line);background:color-mix(in srgb,var(--panel) 96%,transparent);color:var(--ink);border-radius:12px;padding:7px 9px;text-align:left;font:inherit;font-size:14px;line-height:1.2;cursor:pointer;transition:border-color .18s ease,transform .18s ease,background .18s ease}.footer-link-btn:hover{border-color:color-mix(in srgb,var(--neon) 28%,var(--line) 72%);background:color-mix(in srgb,var(--panel) 88%,var(--neon-soft) 12%);transform:translateY(-1px)}.footer-inline-details{border:1px solid var(--line);border-radius:12px;background:color-mix(in srgb,var(--panel) 96%,transparent);padding:7px 9px}.footer-inline-details>summary{cursor:pointer;font-weight:700;font-size:14px;list-style:none}.footer-inline-details>summary::-webkit-details-marker{display:none}.footer-inline-details[open]{border-color:color-mix(in srgb,var(--neon) 20%,var(--line) 80%)}.footer-inline-details .meta{margin-top:8px;font-size:13px;line-height:1.35}.footer-coming-soon{display:inline-flex;align-items:center;border:1px dashed color-mix(in srgb,var(--line) 85%,transparent);border-radius:999px;padding:5px 9px;color:color-mix(in srgb,var(--ink-muted) 90%,var(--ink) 10%);font-size:12px}.footer-bottom{margin-top:12px;padding-top:10px;border-top:1px solid color-mix(in srgb,var(--line) 85%,transparent);display:flex;align-items:center;justify-content:space-between;gap:8px 12px;flex-wrap:wrap;font-size:13px}.footer-mobile-accordion{display:none}.footer-accordion{border:1px solid var(--line);border-radius:14px;background:color-mix(in srgb,var(--panel) 96%,transparent);margin-bottom:8px;overflow:clip}.footer-accordion>summary{cursor:pointer;list-style:none;padding:9px 11px;font-weight:800;font-size:14px}.footer-accordion>summary::-webkit-details-marker{display:none}.footer-accordion[open]>summary{border-bottom:1px solid color-mix(in srgb,var(--line) 85%,transparent);background:color-mix(in srgb,var(--panel) 88%,var(--neon-soft) 12%)}.footer-accordion-body{display:grid;gap:8px;padding:9px 11px;font-size:13px}.site-footer .meta{font-size:13px;line-height:1.35}.site-footer.site-footer-compact{padding:10px 0 4px;background:transparent}.footer-strip{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:6px 8px;font-size:12px;color:var(--muted);padding-top:4px}.footer-strip-link{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;color:var(--muted);font:inherit;line-height:1.1;padding:0;cursor:pointer}.footer-strip-link:hover{color:var(--ink)}.footer-dot{color:color-mix(in srgb,var(--muted) 80%,transparent);font-size:11px}.footer-social-icon{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;opacity:.82;transition:opacity .16s ease,transform .16s ease}.footer-social-icon:hover{opacity:1;transform:translateY(-1px)}.footer-social-icon img{width:16px;height:16px;display:block}.footer-bottom.compact{margin-top:8px;padding-top:8px;border-top:1px solid color-mix(in srgb,var(--line) 80%,transparent);font-size:11px}.footer-info-modal{max-width:760px}.footer-info-header{display:flex;align-items:center;justify-content:space-between;gap:8px}.footer-info-tabs{margin-top:8px}.practice-mode-tabs{gap:8px}.practice-mode-tabs .tab-btn{min-width:170px}.practice-launch-panel{display:grid;gap:8px}.practice-duration-preset-row{flex-wrap:wrap;gap:8px}.practice-duration-preset-row .tab-btn{min-width:88px}.practice-summary-screen .compete-results-hero{margin-bottom:8px}.analytics-list{display:grid;gap:8px}.analytics-list-item{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:6px;border:1px solid var(--line);border-radius:12px;background:color-mix(in srgb,var(--panel) 95%,transparent);padding:8px 10px}.analytics-list-item>span:first-child{flex:1 1 220px;min-width:0}.settings-tabs .tab-btn{min-width:150px}.settings-tab-stage{animation:tabEnter .22s cubic-bezier(.2,.8,.2,1) both}.settings-panel{border:1px solid var(--line);border-radius:14px;padding:12px;background:color-mix(in srgb,var(--panel) 94%,transparent)}.settings-subpanel{margin-top:10px;border-radius:12px;border:1px solid color-mix(in srgb,var(--line) 88%,transparent);background:color-mix(in srgb,var(--panel) 96%,transparent)}.settings-subpanel h4{margin:0 0 4px}.settings-section-reset-list{display:grid;gap:8px}.settings-section-reset-row{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;border:1px solid color-mix(in srgb,var(--line) 86%,transparent);border-radius:12px;padding:8px 10px}.settings-section-reset-meta{display:grid;gap:2px}.settings-section-reset-actions{gap:6px;flex-wrap:wrap}.settings-section-accordion{animation:menuItemIn .16s ease both}.settings-section-actions{margin-top:6px;margin-bottom:6px}.settings-mini-btn{font-size:13px;padding:6px 10px;border-radius:999px;line-height:1;min-height:30px}.settings-reset-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.settings-reset-card{width:100%;min-height:112px;border-radius:14px;border:1px solid var(--line);background:linear-gradient(160deg,color-mix(in srgb,var(--panel) 88%,var(--teal) 12%),color-mix(in srgb,var(--panel-strong) 92%,transparent));color:var(--ink);text-align:left;display:grid;gap:6px;align-content:flex-start;padding:12px;transition:transform .16s ease,border-color .18s ease,box-shadow .2s ease}.settings-reset-card:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--teal) 36%,var(--line) 64%);box-shadow:0 10px 18px color-mix(in srgb,var(--teal) 12%,transparent)}.settings-reset-card.danger{background:linear-gradient(160deg,color-mix(in srgb,var(--panel) 88%,var(--bad) 12%),color-mix(in srgb,var(--panel-strong) 92%,transparent))}.settings-reset-card.danger:hover{border-color:color-mix(in srgb,var(--bad) 34%,var(--line) 66%);box-shadow:0 10px 18px color-mix(in srgb,var(--bad) 10%,transparent)}.settings-reset-title{font-family:"Baloo 2",Nunito,sans-serif;font-size:22px;line-height:1}.confirm-overlay{position:fixed;top:0;right:0;bottom:0;left:0;min-height:100dvh;background:#05080c85;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:grid;place-items:center;align-content:center;justify-items:center;z-index:60;padding:16px;overflow-y:auto;animation:fadeOverlayIn .18s ease both}.confirm-modal{width:min(560px,100%);max-height:calc(100dvh - 32px);overflow:auto;border-radius:16px;border:1px solid color-mix(in srgb,var(--line) 92%,transparent);background:radial-gradient(circle at 12% 10%,color-mix(in srgb,var(--teal) 12%,transparent) 0%,transparent 42%),radial-gradient(circle at 88% 8%,color-mix(in srgb,var(--bad) 10%,transparent) 0%,transparent 40%),linear-gradient(165deg,color-mix(in srgb,var(--panel-strong) 92%,transparent),color-mix(in srgb,var(--panel) 94%,transparent));padding:14px;box-shadow:0 20px 36px #00000038;animation:confirmPopIn .22s cubic-bezier(.2,.8,.2,1) both}.confirm-modal h3{margin-top:6px}.guest-upsell-modal{width:min(520px,100%)}.guest-upsell-modal .link-btn{margin-top:6px}.confirm-modal-kicker{width:fit-content;border-radius:999px;border:1px solid color-mix(in srgb,var(--bad) 26%,var(--line) 74%);background:color-mix(in srgb,var(--bad) 10%,var(--panel) 90%);color:color-mix(in srgb,var(--bad) 72%,var(--ink) 28%);font-size:12px;font-weight:800;padding:4px 10px}.settings-confirm-btn{background:linear-gradient(135deg,color-mix(in srgb,var(--teal) 72%,var(--panel) 28%),color-mix(in srgb,var(--neon) 26%,var(--teal-strong) 74%))}.settings-danger-btn{background:linear-gradient(135deg,color-mix(in srgb,var(--bad) 56%,var(--panel) 44%),color-mix(in srgb,var(--bad) 72%,#7d2532 28%));color:#fff}.link-btn{background:transparent;color:var(--muted);border:0;padding:0;font-weight:700;text-align:left;cursor:pointer}.link-btn:hover{color:var(--ink);text-decoration:underline}@keyframes fadeOverlayIn{0%{opacity:0}to{opacity:1}}@keyframes confirmPopIn{0%{opacity:0;transform:translateY(12px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}.tab-btn{background:color-mix(in srgb,var(--panel) 90%,transparent);color:var(--ink);border:1px solid var(--line)}.tab-btn.active{background:linear-gradient(135deg,color-mix(in srgb,var(--neon) 34%,var(--panel) 66%),color-mix(in srgb,var(--neon) 44%,var(--panel) 56%));color:var(--ink);border-color:color-mix(in srgb,var(--neon) 24%,var(--line) 76%);box-shadow:0 0 10px color-mix(in srgb,var(--neon) 20%,transparent)}.tab-stage{animation:tabEnter .24s cubic-bezier(.2,.8,.2,1) both}.home-shell{overflow:hidden}.home-preview-locked{position:relative;cursor:pointer}.home-preview-locked:after{content:"Sign in to unlock";position:absolute;top:10px;right:10px;border-radius:999px;border:1px solid color-mix(in srgb,var(--line) 70%,var(--neon) 30%);background:color-mix(in srgb,var(--panel) 84%,transparent);color:var(--ink);font-size:11px;font-weight:800;letter-spacing:.02em;padding:5px 9px;box-shadow:0 4px 10px #00000024}.home-preview-locked:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;border:1px dashed color-mix(in srgb,var(--neon) 22%,transparent);pointer-events:none}.home-preview-locked:hover{box-shadow:0 0 0 1px color-mix(in srgb,var(--neon) 15%,transparent) inset}.home-hero{display:grid;grid-template-columns:1.08fr .92fr;gap:14px;align-items:start}.home-coach-panel{display:grid;gap:12px}.home-coach-ad{border:1px solid var(--line);border-radius:16px;padding:14px;background:radial-gradient(circle at 18% 18%,color-mix(in srgb,var(--teal) 12%,transparent) 0%,transparent 36%),radial-gradient(circle at 85% 20%,color-mix(in srgb,var(--neon) 9%,transparent) 0%,transparent 38%),linear-gradient(150deg,color-mix(in srgb,var(--panel-strong) 93%,transparent),color-mix(in srgb,var(--panel) 96%,transparent))}.home-coach-ad h2{margin:6px 0 8px;font-size:clamp(24px,3.2vw,36px);line-height:1.05}.home-coach-ad-emoji{font-size:clamp(34px,5vw,54px);line-height:1;margin-top:8px}.home-coach-head{display:flex;justify-content:space-between;align-items:start;gap:12px}.home-coach-head h2{margin:6px 0;font-size:26px;line-height:1.05}.ghost-btn{background:color-mix(in srgb,var(--panel) 94%,transparent);border:1px solid color-mix(in srgb,var(--line) 92%,transparent);color:var(--ink);border-radius:12px;padding:8px 12px;font-weight:700;white-space:nowrap}.ghost-btn:hover{border-color:color-mix(in srgb,var(--teal) 28%,var(--line) 72%);background:color-mix(in srgb,var(--teal) 7%,var(--panel) 93%)}.compete-cta,.home-coach-ad .row.section>button:first-child,.home-slide-copy .section>button,.practice-launch-panel .row:last-child>button:first-child,.auth-actions>button:not(.ghost),.coach-actions>button{min-height:52px;border-radius:14px;padding:12px 18px;font-size:18px;line-height:1;font-weight:800}.compete-cta{min-width:176px}button.ghost{background:color-mix(in srgb,var(--panel) 90%,transparent);color:color-mix(in srgb,var(--ink) 88%,transparent);border-color:color-mix(in srgb,var(--line) 94%,transparent)}button.ghost:hover{box-shadow:0 4px 10px color-mix(in srgb,var(--teal) 10%,transparent);border-color:color-mix(in srgb,var(--teal) 20%,var(--line) 80%);background:color-mix(in srgb,var(--teal) 5%,var(--panel) 95%)}.coach-panel-card{border:1px solid var(--line);border-radius:14px;padding:12px;background:radial-gradient(circle at 10% 8%,color-mix(in srgb,var(--teal) 9%,transparent) 0%,transparent 38%),linear-gradient(150deg,color-mix(in srgb,var(--panel-strong) 94%,transparent),color-mix(in srgb,var(--panel) 97%,transparent))}.coach-card-title{font-weight:800;margin-bottom:8px}.coach-goal-grid{display:grid;gap:10px}.coach-goal-grid label{display:grid;gap:6px}.coach-goal-grid label>span{font-size:13px;color:var(--muted);font-weight:700}.coach-chip-row{display:flex;flex-wrap:wrap;gap:6px}.coach-section-picker{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:6px}.coach-section-chip{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:6px;text-align:left;border-radius:10px;border:1px solid var(--line);background:color-mix(in srgb,var(--panel) 94%,transparent);color:var(--ink);padding:6px 8px;font-weight:700;font-size:13px;line-height:1.15;min-height:40px}.coach-section-chip:hover{border-color:color-mix(in srgb,var(--teal) 35%,var(--line) 65%);background:color-mix(in srgb,var(--teal) 8%,var(--panel) 92%)}.coach-section-chip.active{border-color:color-mix(in srgb,var(--neon) 30%,var(--teal) 25%);background:radial-gradient(circle at 8% 20%,color-mix(in srgb,var(--neon) 12%,transparent) 0%,transparent 45%),color-mix(in srgb,var(--teal) 14%,var(--panel) 86%);box-shadow:0 0 0 1px color-mix(in srgb,var(--teal) 15%,transparent) inset}.coach-section-chip-emoji{font-size:16px;line-height:1}.coach-section-chip-label{min-width:0;white-space:normal;overflow-wrap:anywhere}.auth-shell{display:grid;gap:14px}.auth-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:start}.auth-hero h2{margin:8px 0 6px;font-size:clamp(24px,3vw,34px);line-height:1.05}.auth-mode-tabs{display:inline-flex;gap:8px;padding:6px;border-radius:14px;border:1px solid color-mix(in srgb,var(--line) 86%,transparent);background:color-mix(in srgb,var(--panel) 92%,transparent)}.auth-card{border:1px solid color-mix(in srgb,var(--line) 86%,transparent);border-radius:16px;padding:14px;background:radial-gradient(circle at 12% 12%,color-mix(in srgb,var(--teal) 10%,transparent) 0%,transparent 40%),linear-gradient(160deg,color-mix(in srgb,var(--panel-strong) 94%,transparent),color-mix(in srgb,var(--panel) 97%,transparent))}.auth-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.auth-field{display:grid;gap:6px}.auth-field span{font-size:12px;color:var(--muted);font-weight:800;letter-spacing:.02em}.auth-captcha-field{grid-column:1 / -1}.auth-captcha-slot{min-height:96px;border-radius:12px;border:1px dashed color-mix(in srgb,var(--line) 72%,transparent);background:radial-gradient(circle at 10% 10%,color-mix(in srgb,var(--teal) 8%,transparent) 0%,transparent 48%),color-mix(in srgb,var(--panel) 90%,transparent);padding:12px;overflow-x:auto;display:flex;align-items:center;justify-content:center}.auth-captcha-field .meta{text-align:center;margin-top:2px}.auth-field:has(input[type=email]),.auth-field:has(input[type=password]){grid-column:span 1}.settings-input{width:100%;min-height:42px;border-radius:12px;border:1px solid color-mix(in srgb,var(--line) 90%,transparent);background:color-mix(in srgb,var(--panel) 90%,transparent);color:var(--ink);padding:10px 12px;font:inherit;transition:border-color .16s ease,box-shadow .18s ease,background-color .18s ease}.settings-input::placeholder{color:color-mix(in srgb,var(--muted) 86%,transparent)}.settings-input:focus{outline:none;border-color:color-mix(in srgb,var(--neon) 36%,var(--line) 64%);box-shadow:0 0 0 3px color-mix(in srgb,var(--teal) 14%,transparent);background:color-mix(in srgb,var(--panel-strong) 92%,transparent)}.auth-actions{flex-wrap:wrap;gap:8px}.auth-actions>button{min-height:42px}.auth-status{border-radius:12px;border:1px solid color-mix(in srgb,var(--line) 85%,transparent);background:color-mix(in srgb,var(--panel) 88%,transparent);color:var(--ink);font-size:14px;font-weight:700;padding:10px 12px}.auth-status.info{border-color:color-mix(in srgb,var(--line) 90%,transparent)}.auth-status.success{border-color:color-mix(in srgb,var(--good) 36%,var(--line) 64%);background:color-mix(in srgb,var(--good) 10%,var(--panel) 90%);color:color-mix(in srgb,var(--ink) 85%,white 15%)}.auth-status.error{border-color:color-mix(in srgb,var(--bad) 42%,var(--line) 58%);background:color-mix(in srgb,var(--bad) 12%,var(--panel) 88%);color:color-mix(in srgb,white 90%,var(--ink) 10%)}.coach-section-chip-progress{border-radius:999px;padding:2px 6px;border:1px solid color-mix(in srgb,var(--line) 86%,transparent);background:color-mix(in srgb,var(--panel) 85%,transparent);color:var(--muted);font-size:11px;font-weight:800;white-space:nowrap}.coach-section-chip.active .coach-section-chip-progress{border-color:color-mix(in srgb,var(--neon) 25%,var(--line) 75%);background:color-mix(in srgb,var(--neon) 12%,var(--panel) 88%);color:var(--ink)}.mini-chip{border-radius:999px;padding:5px 10px;border:1px solid var(--line);background:color-mix(in srgb,var(--panel) 94%,transparent);color:var(--ink);font-weight:700;font-size:13px}.mini-chip.active{border-color:color-mix(in srgb,var(--neon) 35%,var(--line) 65%);background:color-mix(in srgb,var(--neon) 18%,var(--panel) 82%);box-shadow:0 0 0 1px color-mix(in srgb,var(--neon) 12%,transparent) inset}.coach-actions{margin-top:10px;display:flex;gap:8px}.coach-task-list{display:grid;gap:8px}.coach-task{display:grid;grid-template-columns:minmax(0,1fr) 156px;gap:12px;padding:10px;border:1px solid color-mix(in srgb,var(--line) 88%,transparent);border-radius:12px;background:color-mix(in srgb,var(--panel) 92%,transparent)}.coach-task-link{width:100%;text-align:left;color:inherit;cursor:pointer;transition:transform .14s ease,border-color .14s ease,background .14s ease,box-shadow .14s ease}.coach-task-link:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--teal) 28%,var(--line) 72%);background:color-mix(in srgb,var(--teal) 7%,var(--panel) 93%);box-shadow:0 8px 18px #0000001f}.coach-task-link:focus-visible{outline:2px solid color-mix(in srgb,var(--teal) 55%,white 10%);outline-offset:2px}.coach-task-title{font-weight:800;margin-bottom:3px}.coach-task-side{display:grid;align-content:center;gap:6px;justify-items:end}.coach-task-tap-hint{font-size:11px;opacity:.9}.coach-progress-bar{width:100%;height:9px;border-radius:999px;border:1px solid color-mix(in srgb,var(--line) 85%,transparent);background:color-mix(in srgb,var(--panel) 94%,transparent);overflow:hidden}.coach-progress-bar>span{display:block;height:100%;background:linear-gradient(90deg,color-mix(in srgb,var(--teal) 80%,white 20%),color-mix(in srgb,var(--neon) 55%,var(--teal) 45%));border-radius:inherit;transition:width .22s ease}.coach-goal-progress-grid{display:grid;gap:8px}.coach-goal-progress-item{padding:10px;border-radius:12px;border:1px solid color-mix(in srgb,var(--line) 88%,transparent);background:color-mix(in srgb,var(--panel) 92%,transparent);display:grid;gap:6px}.coach-goal-progress-value{font-size:14px}.coach-notes-list{margin:0;padding-left:18px;display:grid;gap:6px}.coach-notes-list li{color:var(--muted)}.coach-practice-layout{display:grid;gap:12px}.home-coach-summary-full{grid-column:1 / -1;grid-template-columns:1fr}.loading-panel-skeleton{border-radius:16px;overflow:hidden;position:relative;isolation:isolate}.loading-panel-skeleton:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(110deg,transparent 0%,rgba(255,255,255,.03) 42%,rgba(255,255,255,.08) 50%,rgba(255,255,255,.03) 58%,transparent 100%);transform:translate(-100%);animation:skeletonSweep 1.5s ease-in-out infinite;pointer-events:none}.loading-kicker{display:inline-flex;align-items:center;gap:8px;font-weight:800;color:var(--ink);opacity:.95}.loading-kicker:before{content:"";width:10px;height:10px;border-radius:999px;background:color-mix(in srgb,var(--teal) 70%,white 30%);box-shadow:0 0 0 4px color-mix(in srgb,var(--teal) 14%,transparent);animation:loadingPulseDot 1.2s ease-in-out infinite}.loading-line-group{display:grid;gap:8px}.loading-line{display:block;height:12px;border-radius:999px;background:color-mix(in srgb,var(--line) 45%,var(--panel-strong) 55%)}.loading-line.short{width:44%}.loading-line.mini{width:28%}.loading-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.loading-block{border:1px solid color-mix(in srgb,var(--line) 82%,transparent);border-radius:12px;background:color-mix(in srgb,var(--panel-strong) 80%,transparent);padding:10px;display:grid;gap:8px;align-content:start;min-height:96px}.loading-block.tall{min-height:160px}.loading-chart{display:block;height:92px;border-radius:10px;border:1px solid color-mix(in srgb,var(--line) 84%,transparent);background:linear-gradient(180deg,color-mix(in srgb,var(--panel) 55%,transparent),color-mix(in srgb,var(--panel-strong) 75%,transparent)),repeating-linear-gradient(0deg,transparent 0px,transparent 13px,color-mix(in srgb,var(--line) 55%,transparent) 14px);position:relative;overflow:hidden}.loading-chart:after{content:"";position:absolute;inset:auto 8px 16px 8px;height:42px;border-radius:999px;background:linear-gradient(90deg,color-mix(in srgb,var(--teal) 35%,transparent),color-mix(in srgb,var(--neon) 30%,transparent));filter:blur(6px);opacity:.75}.analytics-loading-grid{grid-template-columns:1.2fr 1fr 1fr}.loading-inline-pill{display:inline-flex;align-items:center;gap:8px;min-height:34px;padding:7px 12px;border-radius:999px;border:1px solid color-mix(in srgb,var(--line) 85%,transparent);background:color-mix(in srgb,var(--panel-strong) 88%,transparent);color:var(--muted);font-weight:700;position:relative;overflow:hidden}.loading-inline-pill:before{content:"";width:8px;height:8px;border-radius:999px;background:color-mix(in srgb,var(--teal) 70%,white 30%);box-shadow:0 0 0 4px color-mix(in srgb,var(--teal) 12%,transparent);animation:loadingPulseDot 1.2s ease-in-out infinite}.loading-inline-pill:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(110deg,transparent 0%,rgba(255,255,255,.06) 50%,transparent 100%);transform:translate(-100%);animation:skeletonSweep 1.6s ease-in-out infinite}@keyframes skeletonSweep{0%{transform:translate(-100%)}to{transform:translate(100%)}}@keyframes loadingPulseDot{0%,to{transform:scale(.92);opacity:.7}50%{transform:scale(1.05);opacity:1}}.home-intro{display:grid;align-content:start;gap:0;padding:6px 4px}.home-intro h2{margin:0;font-size:clamp(30px,4vw,44px);line-height:1.02}.home-kicker{display:inline-block;border-radius:999px;padding:4px 10px;border:1px solid color-mix(in srgb,var(--neon) 28%,var(--line) 72%);background:color-mix(in srgb,var(--neon) 10%,transparent);color:color-mix(in srgb,var(--neon) 70%,var(--ink) 30%);font-weight:800;font-size:13px}.home-lead{margin:0;color:var(--muted);max-width:60ch;font-size:18px;line-height:1.35}.home-coach-card{border:1px solid var(--line);border-radius:16px;padding:14px;background:radial-gradient(circle at 85% 10%,color-mix(in srgb,var(--neon) 10%,transparent) 0%,transparent 40%),linear-gradient(155deg,color-mix(in srgb,var(--panel-strong) 92%,transparent),color-mix(in srgb,var(--panel) 95%,transparent))}.coach-chip{display:inline-block;border-radius:999px;padding:4px 10px;border:1px solid color-mix(in srgb,var(--teal) 34%,var(--line) 66%);background:color-mix(in srgb,var(--teal) 10%,transparent);color:color-mix(in srgb,var(--teal) 68%,var(--ink) 32%);font-weight:800;font-size:13px}.home-steps{margin:8px 0 10px;padding-left:20px}.home-steps li{margin-bottom:6px}.home-rail-wrap{margin-top:18px}.home-rail-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px}.home-rail-nav{display:flex;gap:8px;overflow-x:auto;padding-bottom:4px;margin-bottom:6px;scrollbar-width:none;flex:1 1 auto}.home-rail-nav::-webkit-scrollbar{display:none}.home-rail-nav-btn{border:1px solid var(--line);background:color-mix(in srgb,var(--panel) 94%,transparent);color:var(--muted);border-radius:999px;padding:6px 10px;font-size:12px;white-space:nowrap;min-height:32px}.home-rail-nav-btn:hover{color:var(--ink);border-color:color-mix(in srgb,var(--teal) 28%,var(--line) 72%)}.home-rail-arrows{display:inline-flex;align-items:center;gap:8px;flex:0 0 auto}.home-rail-arrow-btn{width:34px;height:34px;border-radius:999px;border:1px solid color-mix(in srgb,var(--teal) 28%,var(--line) 72%);background:color-mix(in srgb,var(--panel) 94%,transparent);color:var(--ink);display:inline-flex;align-items:center;justify-content:center;font-size:16px;line-height:1;padding:0;transition:transform .16s ease,border-color .16s ease,background-color .16s ease}.home-rail-arrow-btn:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--teal) 48%,var(--line) 52%);background:color-mix(in srgb,var(--teal) 10%,var(--panel) 90%)}.home-rail-label{display:flex;justify-content:flex-start;align-items:end;gap:10px}.home-rail{margin-top:10px;display:grid;grid-auto-flow:column;grid-auto-columns:minmax(620px,78%);gap:14px;overflow-x:auto;padding-bottom:8px;scroll-snap-type:x proximity;scrollbar-width:none}.home-rail::-webkit-scrollbar{display:none}.home-slide{scroll-snap-align:start;border:1px solid var(--line);border-radius:18px;padding:14px;background:linear-gradient(145deg,color-mix(in srgb,var(--panel-strong) 95%,transparent),color-mix(in srgb,var(--panel) 97%,transparent));display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.95fr);gap:14px;align-items:center}.home-slide-copy h3{font-size:34px;line-height:1.05}.home-slide-copy p{color:var(--muted);font-size:17px;line-height:1.35}.home-slide-badge{display:inline-block;margin-bottom:8px;border-radius:999px;padding:4px 10px;border:1px solid color-mix(in srgb,var(--teal) 30%,var(--line) 70%);background:color-mix(in srgb,var(--teal) 10%,transparent);font-weight:800;font-size:13px}.home-bullet-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.home-pill{border-radius:999px;padding:4px 10px;border:1px solid color-mix(in srgb,var(--line) 85%,transparent);background:color-mix(in srgb,var(--panel) 90%,transparent);color:var(--muted);font-size:12px;font-weight:700}.home-preview{position:relative;overflow:hidden;min-height:290px;border-radius:16px;border:1px solid color-mix(in srgb,var(--line) 88%,transparent);padding:12px;background:radial-gradient(circle at 14% 10%,color-mix(in srgb,var(--teal) 13%,transparent) 0%,transparent 44%),radial-gradient(circle at 90% 14%,color-mix(in srgb,var(--neon) 10%,transparent) 0%,transparent 46%),color-mix(in srgb,var(--panel) 96%,transparent);display:grid;place-items:center}.home-preview.is-clickable{cursor:pointer;transition:border-color .18s ease,background-color .18s ease,transform .18s ease,box-shadow .18s ease}.home-preview.is-clickable:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--teal) 26%,var(--line) 74%);box-shadow:0 10px 22px #0000001f}.home-preview:before{content:"";position:absolute;top:-35%;right:-35%;bottom:-35%;left:-35%;background:linear-gradient(120deg,transparent 42%,rgba(255,255,255,.05) 50%,transparent 58%);animation:homeShimmer 6s linear infinite}.home-preview-action-hint{position:absolute;top:10px;right:10px;z-index:2;border-radius:999px;border:1px solid color-mix(in srgb,var(--teal) 30%,var(--line) 70%);background:color-mix(in srgb,var(--panel) 86%,transparent);color:var(--ink);font-size:11px;font-weight:800;letter-spacing:.01em;padding:5px 8px}.home-preview-action-hint.muted{color:var(--muted);border-color:color-mix(in srgb,var(--line) 88%,transparent)}@keyframes homeShimmer{0%{transform:translate(-32%) rotate(10deg)}to{transform:translate(32%) rotate(10deg)}}.mock-phone,.mock-dashboard,.mock-analytics{position:relative;z-index:1;width:100%;border-radius:14px;border:1px solid color-mix(in srgb,var(--line) 88%,transparent);background:color-mix(in srgb,var(--panel-strong) 96%,transparent);padding:12px}.mock-header,.mock-analytics-head,.mock-dashboard-head{display:flex;justify-content:space-between;gap:8px;font-weight:800;margin-bottom:8px}.mock-path{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:10px}.mock-node{aspect-ratio:1;border-radius:999px;border:2px solid color-mix(in srgb,var(--line) 78%,transparent);display:grid;place-items:center;background:color-mix(in srgb,var(--panel) 84%,transparent);animation:floatNode 2.4s ease-in-out infinite}.mock-node.active{border-color:color-mix(in srgb,var(--teal) 54%,var(--line) 46%);box-shadow:0 0 14px color-mix(in srgb,var(--teal) 16%,transparent)}.mock-node.done{border-color:color-mix(in srgb,var(--neon) 54%,var(--line) 46%);box-shadow:0 0 14px color-mix(in srgb,var(--neon) 16%,transparent)}.mock-node:nth-child(2){animation-delay:.16s}.mock-node:nth-child(3){animation-delay:.32s}.mock-node:nth-child(4){animation-delay:.48s}@keyframes floatNode{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}.mock-bar,.mock-progress,.mock-line{height:10px;border-radius:999px;border:1px solid color-mix(in srgb,var(--line) 78%,transparent);background:color-mix(in srgb,var(--panel) 86%,transparent);overflow:hidden}.mock-bar span,.mock-progress span,.mock-line span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--teal) 0%,color-mix(in srgb,var(--neon) 42%,var(--teal) 58%) 100%);animation:pulseWidth 2.8s ease-in-out infinite}.mock-caption{margin-top:8px;color:var(--muted);font-size:13px}.mock-card-stack{position:relative;z-index:1;width:100%;display:grid;gap:10px}.mock-mini-card{border:1px solid color-mix(in srgb,var(--line) 88%,transparent);border-radius:14px;background:color-mix(in srgb,var(--panel-strong) 96%,transparent);padding:12px;animation:stackFloat 2.8s ease-in-out infinite}.mock-mini-card.alt{animation-delay:.22s}@keyframes stackFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}.mock-mini-title{font-weight:800;margin-bottom:8px}.mock-check-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.mock-check-grid span{height:24px;border-radius:7px;border:1px solid color-mix(in srgb,var(--line) 88%,transparent);background:color-mix(in srgb,var(--panel) 86%,transparent)}.mock-check-grid span.on{border-color:color-mix(in srgb,var(--teal) 42%,var(--line) 58%);background:color-mix(in srgb,var(--teal) 18%,transparent)}.mock-groups{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.mock-groups span{border-radius:999px;padding:4px 8px;text-align:center;font-size:12px;border:1px solid color-mix(in srgb,var(--line) 88%,transparent);color:var(--muted)}.mock-groups span.on{color:var(--ink);border-color:color-mix(in srgb,var(--teal) 36%,var(--line) 64%);background:color-mix(in srgb,var(--teal) 16%,transparent)}.mock-metric-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-bottom:10px}.mock-metric-grid>div{border:1px solid color-mix(in srgb,var(--line) 88%,transparent);border-radius:12px;padding:10px;display:grid}.mock-metric-grid b{font-size:28px;line-height:1}.mock-metric-grid small{color:var(--muted)}.mock-analytics-row{display:grid;grid-template-columns:96px 1fr;gap:8px;align-items:center;margin-bottom:8px}.coach-tip-card{margin-top:10px;border-radius:12px;padding:10px;border:1px solid color-mix(in srgb,var(--neon) 22%,var(--line) 78%);background:color-mix(in srgb,var(--neon) 8%,transparent);font-weight:700}@keyframes tabEnter{0%{opacity:0;transform:translateY(8px) scale(.995)}to{opacity:1;transform:translateY(0) scale(1)}}label,small{color:var(--muted)}select,input,textarea{border:1px solid var(--line);background:color-mix(in srgb,var(--panel) 86%,transparent);color:var(--ink);border-radius:10px;padding:8px 10px}input::placeholder,textarea::placeholder{color:color-mix(in srgb,var(--muted) 76%,transparent)}.question{font-size:28px;font-weight:800;margin:12px 0;overflow-wrap:anywhere;word-break:break-word}.question .katex{white-space:normal}.meta{color:color-mix(in srgb,var(--muted) 76%,var(--ink) 24%);font-size:13px}.feedback{margin-top:8px;font-weight:800}.feedback.good{color:var(--good)}.feedback.bad{color:var(--bad)}.analytics-grid,.summary-grid,.grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:10px}.metric-card,.summary-card{background:color-mix(in srgb,var(--panel) 93%,transparent);border:1px solid var(--line);border-radius:12px;padding:10px}.analytics-dashboard-card{overflow:hidden}.analytics-tabs{margin-top:0}.analytics-tabs .tab-btn{min-width:150px}.analytics-view-stage{margin-top:10px;animation:tabEnter .22s cubic-bezier(.2,.8,.2,1) both}.analytics-view{display:grid;gap:10px}.analytics-toolbar{align-items:center}.analytics-inline-toggle{margin-left:auto;gap:8px}.analytics-filter-chips{display:flex;flex-wrap:wrap;gap:6px;align-items:center;min-width:0}.analytics-filter-chip{border:1px solid var(--line);border-radius:999px;background:color-mix(in srgb,var(--panel) 90%,transparent);color:var(--muted);padding:7px 10px;font-family:Nunito,Avenir Next,sans-serif;font-size:13px;line-height:1;min-height:34px;transition:transform .13s ease,border-color .16s ease,background .16s ease,color .16s ease,box-shadow .18s ease}.analytics-filter-chip:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--teal) 40%,var(--line) 60%);color:var(--ink)}.analytics-filter-chip.active{background:linear-gradient(135deg,color-mix(in srgb,var(--teal) 24%,var(--panel) 76%),color-mix(in srgb,var(--neon) 18%,var(--panel) 82%));color:var(--ink);border-color:color-mix(in srgb,var(--teal) 28%,var(--line) 72%);box-shadow:0 0 10px color-mix(in srgb,var(--teal) 12%,transparent)}.analytics-charts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.analytics-toolbar.compact{margin-bottom:4px}.analytics-trend-window-row{align-items:center;justify-content:space-between;gap:10px}.analytics-toolbar.compact .row{gap:8px;flex-wrap:wrap}.analytics-toolbar.compact .tab-btn{min-width:84px}.analytics-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:10px}.analytics-grid.compact{grid-template-columns:1fr;margin-top:0}.chart-shell{display:grid;gap:6px}.chart-label-row{display:flex;align-items:center;justify-content:space-between;gap:8px}.chart-axis-label{font-size:12px;font-weight:700;color:var(--ink)}.chart-axis-label.muted{color:var(--muted);font-weight:600}.trend-chart,.scatter-chart{width:100%;height:auto;border:1px solid var(--line);border-radius:10px;background:color-mix(in srgb,var(--panel-strong) 88%,transparent);color:color-mix(in srgb,var(--teal) 82%,#fff 18%)}.trend-chart.gold{color:color-mix(in srgb,#ffcf78 78%,var(--ink) 22%)}.trend-grid line{stroke:color-mix(in srgb,var(--line) 80%,transparent);stroke-width:1;stroke-dasharray:4 4}.trend-line{fill:none;stroke:currentColor;stroke-width:2.25;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:100;stroke-dashoffset:100;animation:drawLine .7s ease forwards}.trend-dot{fill:currentColor;stroke:color-mix(in srgb,var(--panel) 80%,transparent);stroke-width:2}@keyframes drawLine{to{stroke-dashoffset:0}}.chart-caption{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:12px;color:var(--muted)}.chart-caption .metric-strong,.chart-caption .metric-low{border-radius:999px;padding:2px 8px;border:1px solid var(--line);background:color-mix(in srgb,var(--panel) 90%,transparent)}.chart-foot-labels{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:11px;color:var(--muted)}.scatter-chart{color:color-mix(in srgb,var(--muted) 88%,transparent)}.scatter-label{fill:var(--ink);font-size:10px;font-weight:700;dominant-baseline:middle}.chart-axes{display:grid;grid-template-columns:1fr auto 1fr;gap:8px;font-size:11px;color:var(--muted)}.chart-axes span:nth-child(2){text-align:center}.chart-axes span:last-child{text-align:right}.analytics-rank-list{display:grid;gap:6px}.analytics-rank-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto auto;gap:6px;align-items:center;border:1px solid var(--line);border-radius:10px;padding:7px 8px;background:color-mix(in srgb,var(--panel) 92%,transparent);animation:menuItemIn .18s ease both}.analytics-rank-row>span:first-child{min-width:0;overflow-wrap:anywhere}.analytics-section-card h3{line-height:1.05}.analytics-groups-panel{display:grid;gap:10px}.analytics-heatmap-panel{display:grid;gap:8px}.analytics-heatmap-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:8px}.analytics-heatmap-tile{border-radius:12px;border:1px solid var(--line);padding:8px 9px;background:color-mix(in srgb,var(--panel) 95%,transparent);display:grid;gap:2px}.analytics-heatmap-tile.metric-low{border-color:color-mix(in srgb,var(--bad) 36%,var(--line) 64%);background:color-mix(in srgb,var(--bad) 8%,var(--panel) 92%)}.analytics-heatmap-tile.metric-mid{border-color:color-mix(in srgb,#ffd166 36%,var(--line) 64%);background:color-mix(in srgb,#ffd166 8%,var(--panel) 92%)}.analytics-heatmap-tile.metric-strong{border-color:color-mix(in srgb,var(--good) 30%,var(--line) 70%);background:color-mix(in srgb,var(--good) 8%,var(--panel) 92%)}.analytics-heatmap-title{font-weight:800;font-size:13px}.analytics-heatmap-sub,.analytics-heatmap-metrics{font-size:12px;color:var(--muted)}.analytics-heatmap-metrics{display:grid;gap:1px}.analytics-band-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.analytics-band-card{border:1px solid var(--line);border-radius:10px;padding:8px;background:color-mix(in srgb,var(--panel) 92%,transparent);display:grid;gap:4px}.analytics-callout-list{display:grid;gap:6px}.analytics-callout-row{border:1px solid var(--line);border-radius:10px;padding:8px;background:color-mix(in srgb,var(--panel) 92%,transparent);display:flex;gap:8px;align-items:center;justify-content:space-between;flex-wrap:wrap}.analytics-group-list{display:grid;gap:6px;max-height:520px;overflow:auto;padding-right:4px;scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--teal) 34%,var(--line) 66%) color-mix(in srgb,var(--panel) 97%,transparent)}.analytics-group-list::-webkit-scrollbar{width:12px}.analytics-group-list::-webkit-scrollbar-track{background:color-mix(in srgb,var(--panel) 97%,transparent);border-radius:999px;border:1px solid color-mix(in srgb,var(--line) 78%,transparent)}.analytics-group-list::-webkit-scrollbar-thumb{background:linear-gradient(180deg,color-mix(in srgb,var(--teal) 46%,var(--panel) 54%),color-mix(in srgb,var(--neon) 22%,var(--panel) 78%));border-radius:999px;border:2px solid color-mix(in srgb,var(--panel) 97%,transparent);min-height:36px}.analytics-group-list::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,color-mix(in srgb,var(--teal) 56%,var(--panel) 44%),color-mix(in srgb,var(--neon) 30%,var(--panel) 70%))}.analytics-group-row{border:1px solid var(--line);border-radius:10px;padding:8px;background:color-mix(in srgb,var(--panel) 92%,transparent);display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap;animation:menuItemIn .18s ease both}.analytics-group-main{display:grid;gap:2px}.analytics-group-pills{display:flex;gap:6px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.analytics-focus-card{display:grid;gap:8px;border:1px solid var(--line);border-radius:12px;padding:10px;background:color-mix(in srgb,var(--panel-strong) 90%,transparent);animation:menuItemIn .18s ease both}.analytics-focus-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.analytics-focus-title{font-family:"Baloo 2",Nunito,sans-serif;font-size:20px;line-height:1.05;overflow-wrap:anywhere}.run-screen{border:1px solid var(--line);border-radius:12px;padding:12px;background:color-mix(in srgb,var(--panel) 88%,transparent);animation:panelPop .22s ease}.learn-card-focus{border-color:color-mix(in srgb,var(--teal) 22%,var(--line) 78%)}.learn-topbar{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.learn-topbar h2{margin:0}.panel-help-actions{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}.help-pill-btn{border:1px solid color-mix(in srgb,var(--teal) 42%,var(--line) 58%);background:radial-gradient(circle at 18% 18%,color-mix(in srgb,var(--neon) 12%,transparent) 0%,transparent 44%),linear-gradient(135deg,color-mix(in srgb,var(--panel) 92%,transparent),color-mix(in srgb,var(--teal) 8%,var(--panel) 92%));color:var(--ink);border-radius:999px;padding:7px 12px;font-size:.9rem;font-weight:800;line-height:1;box-shadow:0 6px 14px #0000001f;transition:transform .16s ease,border-color .16s ease,background-color .16s ease}.help-pill-btn:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--teal) 60%,var(--line) 40%);background:radial-gradient(circle at 18% 18%,color-mix(in srgb,var(--neon) 18%,transparent) 0%,transparent 48%),linear-gradient(135deg,color-mix(in srgb,var(--teal) 10%,var(--panel) 90%),color-mix(in srgb,var(--teal) 14%,var(--panel) 86%))}.help-pill-btn-keyboard{border-color:color-mix(in srgb,var(--neon) 20%,var(--line) 80%);background:radial-gradient(circle at 16% 18%,color-mix(in srgb,var(--teal) 14%,transparent) 0%,transparent 44%),linear-gradient(135deg,color-mix(in srgb,var(--panel) 92%,transparent),color-mix(in srgb,var(--neon) 10%,var(--panel) 90%))}.help-pill-btn-keyboard:hover{border-color:color-mix(in srgb,var(--neon) 34%,var(--line) 66%)}.symbol-guide-modal{width:min(720px,100%)}.symbol-guide-kicker{border-color:color-mix(in srgb,var(--teal) 34%,var(--line) 66%);background:color-mix(in srgb,var(--teal) 12%,var(--panel) 88%);color:color-mix(in srgb,var(--teal) 60%,var(--ink) 40%)}.symbol-guide-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.symbol-guide-item{border:1px solid color-mix(in srgb,var(--line) 90%,transparent);border-radius:12px;background:color-mix(in srgb,var(--panel-strong) 88%,transparent);padding:10px;display:grid;grid-template-columns:minmax(72px,auto) 1fr;align-items:center;gap:10px}.symbol-guide-latex{border:1px solid color-mix(in srgb,var(--teal) 16%,var(--line) 84%);border-radius:10px;background:color-mix(in srgb,var(--panel) 92%,transparent);min-height:50px;padding:6px 8px;display:grid;place-items:center}.symbol-guide-latex .katex{font-size:1.08rem}.symbol-guide-copy{display:grid;gap:3px;min-width:0}.symbol-guide-copy strong{font-size:.95rem;line-height:1.1}.symbol-guide-copy span{color:var(--muted);font-size:.86rem;line-height:1.25}.typing-help-modal{width:min(760px,100%)}.typing-help-kicker{border-color:color-mix(in srgb,var(--neon) 24%,var(--line) 76%);background:color-mix(in srgb,var(--neon) 10%,var(--panel) 90%);color:color-mix(in srgb,var(--neon) 70%,var(--ink) 30%)}.typing-demo-panel{border:1px solid color-mix(in srgb,var(--line) 90%,transparent);border-radius:12px;background:color-mix(in srgb,var(--panel-strong) 88%,transparent);padding:10px}.typing-demo-toggle-row{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}.typing-demo-toggle{border:1px solid var(--line);background:color-mix(in srgb,var(--panel) 92%,transparent);color:var(--muted);border-radius:999px;padding:6px 10px;font-size:.82rem;font-weight:800}.typing-demo-toggle.active{color:var(--ink);border-color:color-mix(in srgb,var(--teal) 44%,var(--line) 56%);background:color-mix(in srgb,var(--teal) 10%,var(--panel) 90%)}.typing-demo-shell{margin-top:10px;border:1px solid color-mix(in srgb,var(--teal) 18%,var(--line) 82%);border-radius:12px;background:color-mix(in srgb,var(--panel) 92%,transparent);padding:10px;display:grid;gap:8px}.typing-demo-head{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap}.typing-direction-pill{border:1px solid color-mix(in srgb,var(--teal) 26%,var(--line) 74%);border-radius:999px;padding:4px 8px;font-size:.75rem;font-weight:800;color:color-mix(in srgb,var(--teal) 62%,var(--ink) 38%);background:color-mix(in srgb,var(--teal) 10%,var(--panel) 90%)}.typing-direction-pill.rtl{border-color:color-mix(in srgb,var(--neon) 24%,var(--line) 76%);color:color-mix(in srgb,var(--neon) 78%,var(--ink) 22%);background:color-mix(in srgb,var(--neon) 10%,var(--panel) 90%)}.typing-demo-preview{border:1px dashed color-mix(in srgb,var(--teal) 32%,var(--line) 68%);border-radius:10px;padding:8px;background:color-mix(in srgb,var(--panel-strong) 84%,transparent);display:grid;gap:6px}.typing-demo-input-label{font-size:.72rem;font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.typing-demo-raw{min-height:36px;border:1px solid color-mix(in srgb,var(--line) 90%,transparent);border-radius:8px;padding:6px 8px;background:color-mix(in srgb,var(--panel) 90%,transparent);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:1rem;line-height:1.2}.typing-demo-render{min-height:52px;border:1px solid color-mix(in srgb,var(--teal) 16%,var(--line) 84%);border-radius:8px;background:color-mix(in srgb,var(--panel) 90%,transparent);padding:6px 8px;display:flex;align-items:center;justify-content:flex-start}.typing-demo-render .katex-display{margin:0;text-align:left;width:auto}.typing-demo-render .katex-display>.katex{text-align:left}.typing-demo-note{font-weight:700;color:var(--ink)}.typing-demo-meta{color:var(--muted);font-size:.84rem}@media(max-width:760px){.symbol-guide-grid{grid-template-columns:1fr}.symbol-guide-item{grid-template-columns:78px 1fr}}.lesson-run-head{align-items:flex-start;gap:12px}.lesson-run-title{min-width:0}.lesson-slide-panel{border:1px solid color-mix(in srgb,var(--line) 90%,transparent);border-radius:12px;padding:12px;background:color-mix(in srgb,var(--panel-strong) 84%,transparent)}.lesson-slide-body{display:grid;gap:10px;font-size:calc(1.05rem * var(--lesson-text-scale, 1))}.lesson-slide-body p{margin:0;line-height:1.42}.lesson-slide-actions{flex-wrap:wrap;gap:10px}.lesson-slide-visual{margin-top:4px}.lesson-visual-card{border:1px solid color-mix(in srgb,var(--line) 88%,transparent);border-radius:12px;background:color-mix(in srgb,var(--panel) 84%,transparent);padding:10px;display:grid;gap:8px}.lesson-visual-caption{font-weight:700;font-size:.95rem}.lesson-visual-note{color:color-mix(in srgb,var(--text) 76%,transparent);font-size:.88rem;line-height:1.3}.lesson-visual-svg{width:100%;height:auto;display:block;border-radius:10px;background:color-mix(in srgb,var(--panel-strong) 88%,transparent);border:1px solid color-mix(in srgb,var(--line) 70%,transparent)}.lesson-visual-split{display:grid;grid-template-columns:1fr 1fr;gap:10px}.lesson-visual-grid{display:grid;gap:10px}.lesson-visual-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lesson-visual-card-span-3{grid-column:1 / -1}.lesson-visual-table-wrap{overflow-x:auto}.lesson-visual-table{width:100%;border-collapse:collapse;font-size:.9rem}.lesson-visual-table th,.lesson-visual-table td{border:1px solid color-mix(in srgb,var(--line) 70%,transparent);padding:6px 8px;text-align:center}.lesson-visual-table th:first-child,.lesson-visual-table td:first-child{text-align:left}.lesson-visual-dice-table th,.lesson-visual-dice-table td{text-align:center;padding:6px 5px}.lesson-visual-dice-cell{display:grid;gap:2px;justify-items:center;line-height:1.05}.lesson-visual-dice-pair{font-size:10px;color:color-mix(in srgb,var(--text) 72%,transparent)}.lesson-visual-dice-cell strong{font-size:13px}.lesson-visual-pascal-grid{display:grid;gap:6px;justify-items:center;margin-top:6px}.lesson-visual-pascal-row{display:flex;justify-content:center;gap:6px;flex-wrap:wrap}.lesson-visual-pascal-cell{min-width:28px;padding:4px 6px;border-radius:8px;border:1px solid color-mix(in srgb,var(--line) 70%,transparent);background:color-mix(in srgb,var(--panel-strong) 86%,transparent);text-align:center;font-size:.78rem;font-weight:700}.lesson-visual-shape-fill{fill:color-mix(in srgb,var(--teal) 14%,transparent)}.lesson-visual-shape-stroke{fill:none;stroke:color-mix(in srgb,var(--teal) 80%,white 6%);stroke-width:2.2}.lesson-visual-guide{fill:none;stroke:color-mix(in srgb,var(--text) 62%,transparent);stroke-width:1.6;stroke-dasharray:4 4}.lesson-visual-guide.is-active{stroke:color-mix(in srgb,var(--neon) 65%,transparent)}.lesson-visual-highlight{fill:none;stroke:color-mix(in srgb,var(--neon) 90%,white 6%);stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}.lesson-visual-secondary{fill:none;stroke:#f0d58a;stroke-width:2;stroke-linecap:round}.lesson-visual-svg .lesson-visual-grid{stroke:color-mix(in srgb,var(--line) 75%,transparent)}.lesson-visual-node{fill:color-mix(in srgb,var(--text) 92%,transparent)}.lesson-visual-node-bright{fill:color-mix(in srgb,var(--neon) 72%,var(--teal) 28%);stroke:color-mix(in srgb,var(--panel) 70%,black 30%);stroke-width:1.1}.lesson-visual-dot{fill:color-mix(in srgb,var(--neon) 85%,white 8%);stroke:color-mix(in srgb,var(--panel) 80%,black 15%);stroke-width:1.25}.lesson-visual-dot-bright{fill:color-mix(in srgb,var(--neon) 60%,var(--teal) 40%);stroke:color-mix(in srgb,var(--panel) 75%,black 25%);stroke-width:1.2}.lesson-visual-diagonal{stroke:color-mix(in srgb,var(--teal) 55%,transparent);stroke-width:1.2;opacity:.8}.lesson-visual-right-angle{fill:color-mix(in srgb,var(--teal) 30%,transparent);stroke:color-mix(in srgb,var(--line) 88%,transparent);stroke-width:1}.lesson-visual-label{fill:var(--lesson-visual-label-fill, var(--ink));font-size:11px;font-weight:600;paint-order:stroke fill;stroke:var(--lesson-visual-label-stroke, rgba(0, 0, 0, .2));stroke-width:.45px;stroke-linejoin:round;stroke-linecap:round;text-rendering:geometricPrecision}.lesson-visual-label-axis{font-size:12px;font-weight:700}.lesson-visual-label-strong{font-size:13px;font-weight:700}.lesson-visual-label-tick{font-size:10px;font-weight:600}.lesson-visual-formula{font-family:IBM Plex Mono,ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.92rem;color:color-mix(in srgb,var(--text) 88%,transparent)}.lesson-visual-sample-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.lesson-visual-sample-cell{min-height:34px;border-radius:8px;border:1px solid color-mix(in srgb,var(--line) 76%,transparent);display:grid;place-items:center;font-weight:700;font-size:.82rem}.lesson-visual-sample-cell.hit{background:color-mix(in srgb,var(--teal) 22%,transparent);border-color:color-mix(in srgb,var(--teal) 55%,transparent)}.lesson-visual-sample-cell.miss{background:color-mix(in srgb,var(--panel-strong) 86%,transparent)}.lesson-visual-kv{display:flex;justify-content:space-between;align-items:center;gap:8px;border:1px solid color-mix(in srgb,var(--line) 70%,transparent);border-radius:10px;padding:8px 10px;margin-bottom:8px}.lesson-visual-kv span{color:color-mix(in srgb,var(--text) 78%,transparent)}.lesson-visual-kv strong{font-size:1rem}.lesson-visual-chip-row{display:flex;flex-wrap:wrap;gap:6px}.lesson-visual-chip{border:1px solid color-mix(in srgb,var(--line) 72%,transparent);background:color-mix(in srgb,var(--panel-strong) 82%,transparent);color:var(--text);border-radius:999px;padding:4px 8px;font-size:.75rem;line-height:1.1}.lesson-visual-chip.active{border-color:color-mix(in srgb,var(--neon) 55%,transparent);background:color-mix(in srgb,var(--teal) 20%,transparent)}.lesson-visual-sqrt-approx-card .lesson-visual-svg{background:linear-gradient(180deg,color-mix(in srgb,var(--panel) 70%,transparent),color-mix(in srgb,var(--panel-strong) 88%,transparent));border-radius:12px;border:1px solid color-mix(in srgb,var(--line) 72%,transparent);padding:4px}.lesson-visual-sqrt-line{stroke-width:1.6}.lesson-visual-sqrt-marker{stroke-width:3;opacity:.92}.lesson-visual-sqrt-end-label{font-size:10px;font-weight:600;fill:var(--lesson-visual-label-fill, var(--text))}.lesson-visual-sqrt-target-label{font-size:12px;fill:color-mix(in srgb,var(--neon) 88%,white 6%)}.lesson-visual-sqrt-caption{font-size:9px;font-weight:500;fill:var(--lesson-visual-label-fill, var(--text));opacity:.9}.lesson-visual-solid-card{text-align:left;cursor:pointer;transition:border-color .14s ease,background-color .14s ease,transform .14s ease}.lesson-visual-solid-card:hover{transform:translateY(-1px)}.lesson-visual-solid-card.active{border-color:color-mix(in srgb,var(--neon) 50%,transparent);background:color-mix(in srgb,var(--teal) 12%,var(--panel) 88%)}.lesson-visual-three-wrap{height:240px;border-radius:12px;overflow:hidden;border:1px solid color-mix(in srgb,var(--line) 70%,transparent);background:radial-gradient(circle at 30% 20%,color-mix(in srgb,var(--teal) 20%,transparent),transparent 55%),color-mix(in srgb,var(--panel-strong) 90%,transparent)}.lesson-visual-three-loading{height:100%;display:grid;place-items:center;color:color-mix(in srgb,var(--text) 78%,transparent);font-size:.9rem}.lesson-visual-compact-card .lesson-visual-note{font-size:.84rem;line-height:1.25}.lesson-visual-svg-compact{width:100%;max-height:180px}@keyframes panelPop{0%{opacity:0;transform:scale(.985)}to{opacity:1;transform:scale(1)}}.practice-categories{display:grid;grid-template-columns:1fr;gap:10px}.skill-list{display:grid;gap:7px;margin-top:8px}.learn-topic-list{display:grid;gap:8px;margin-top:10px}.learn-topic-item{display:flex;justify-content:space-between;align-items:center;gap:10px;border:1px solid var(--line);border-radius:12px;padding:10px;background:color-mix(in srgb,var(--panel) 92%,transparent);transition:transform .12s ease,border-color .16s ease}.learn-topic-item:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--teal) 55%,var(--line) 45%)}.learn-islands{display:grid;gap:12px}.learn-map{border:1px solid var(--line);border-radius:16px;background:color-mix(in srgb,var(--panel) 94%,transparent);padding:14px}.overall-progress{border:1px solid var(--line);border-radius:12px;padding:10px;background:color-mix(in srgb,var(--panel) 92%,transparent)}.overall-progress-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;font-size:14px}.milestones{margin-top:8px;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));align-items:center;color:var(--muted);font-size:12px;gap:4px}.milestones span{text-align:center}.milestones span:first-child{text-align:left}.milestones span:last-child{text-align:right}.milestones .hit{color:var(--good);font-weight:700}.learn-dashboard{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.next-panel{border:1px solid var(--line);border-radius:12px;background:color-mix(in srgb,var(--panel) 92%,transparent);padding:10px;display:grid;gap:8px}.collapsible-panel{padding:0;overflow:hidden}.collapsible-panel>summary{list-style:none;cursor:pointer;padding:10px 12px;font-family:"Baloo 2",Nunito,sans-serif;font-size:15px;font-weight:700;display:flex;align-items:center;justify-content:space-between;gap:8px}.collapsible-panel>summary::-webkit-details-marker{display:none}.collapsible-panel>summary:after{content:"▾";color:var(--muted);font-size:12px;transition:transform .15s ease}.collapsible-panel[open]>summary{border-bottom:1px solid color-mix(in srgb,var(--line) 85%,transparent);background:color-mix(in srgb,var(--panel-strong) 84%,transparent)}.collapsible-panel[open]>summary:after{transform:rotate(180deg)}.collapsible-panel-body{padding:10px;display:grid;gap:8px}.next-item{width:100%;display:grid;gap:2px;text-align:left;font-size:14px;padding:8px 10px;border-radius:10px;background:color-mix(in srgb,var(--panel) 82%,var(--teal) 18%);border:1px solid var(--line);color:var(--ink)}.next-item span:last-child{color:var(--muted);font-size:12px}.compete-hero{position:relative;overflow:hidden;border:1px solid var(--line);border-radius:16px;padding:16px;background:radial-gradient(circle at 12% 18%,color-mix(in srgb,var(--teal) 18%,transparent) 0%,transparent 46%),radial-gradient(circle at 88% 22%,color-mix(in srgb,#ffb25f 16%,transparent) 0%,transparent 44%),linear-gradient(135deg,color-mix(in srgb,var(--panel-strong) 92%,transparent),color-mix(in srgb,var(--panel) 94%,transparent));display:grid;grid-template-columns:1.25fr 1fr;gap:16px;animation:panelPop .24s ease}.compete-hero-content{position:relative;z-index:1;display:grid;gap:8px}.compete-kicker{width:fit-content;border-radius:999px;border:1px solid color-mix(in srgb,#ffb25f 30%,var(--line) 70%);background:color-mix(in srgb,#ffb25f 10%,var(--panel) 90%);color:color-mix(in srgb,#ffd08f 72%,var(--ink) 28%);padding:4px 10px;font-size:12px;font-weight:800;letter-spacing:.3px;animation:floatPulse 2.8s ease-in-out infinite}.compete-title{font-size:34px;line-height:.98;margin:0}.compete-sub{color:var(--muted);margin:0;max-width:58ch}.compete-stats{display:flex;flex-wrap:wrap;gap:6px;margin-top:2px}.compete-cta{position:relative;background:linear-gradient(135deg,color-mix(in srgb,var(--teal) 72%,var(--panel) 28%),color-mix(in srgb,#ffb25f 32%,var(--teal-strong) 68%));box-shadow:0 8px 18px color-mix(in srgb,var(--teal) 16%,transparent),0 0 0 1px color-mix(in srgb,var(--teal) 16%,transparent);animation:ctaGlow 2.5s ease-in-out infinite}.compete-cta:hover{box-shadow:0 10px 22px color-mix(in srgb,var(--teal) 22%,transparent),0 0 14px color-mix(in srgb,#ffb25f 16%,transparent)}.compete-hero-art{position:relative;min-height:220px;border-radius:14px;border:1px solid color-mix(in srgb,var(--line) 88%,transparent);background:linear-gradient(180deg,color-mix(in srgb,var(--panel) 85%,transparent),color-mix(in srgb,var(--panel-strong) 90%,transparent));overflow:hidden;display:grid;place-items:center}.compete-glow{position:absolute;border-radius:999px;filter:blur(16px);opacity:.6}.compete-glow-a{width:130px;height:130px;background:color-mix(in srgb,var(--teal) 42%,transparent);top:12%;left:10%;animation:floatDriftA 5.2s ease-in-out infinite}.compete-glow-b{width:150px;height:150px;background:color-mix(in srgb,#ffb25f 34%,transparent);right:8%;top:8%;animation:floatDriftB 6.1s ease-in-out infinite}.compete-fire-ring{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.compete-fire{position:absolute;font-size:24px;opacity:.85;filter:drop-shadow(0 4px 8px rgba(0,0,0,.22))}.compete-fire.fire-1{top:18px;left:18px;animation:floatSpark 2.4s ease-in-out infinite}.compete-fire.fire-2{top:18px;right:22px;animation:floatSpark 2s ease-in-out infinite .18s}.compete-fire.fire-3{bottom:20px;left:20px;animation:floatSpark 2.8s ease-in-out infinite .12s}.compete-fire.fire-4{bottom:16px;right:18px;animation:floatSpark 2.2s ease-in-out infinite .24s}.compete-preview-card{position:relative;z-index:1;width:min(360px,92%);border:1px solid color-mix(in srgb,var(--teal) 26%,var(--line) 74%);border-radius:14px;padding:12px;background:color-mix(in srgb,var(--panel-strong) 92%,transparent);box-shadow:0 10px 24px #00000024;animation:previewCardIn .26s cubic-bezier(.2,.8,.2,1),floatCard 4.4s ease-in-out infinite .3s}.compete-preview-head{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:13px;margin-bottom:10px}.compete-preview-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.compete-preview-grid>div{border:1px solid var(--line);border-radius:10px;padding:8px;background:color-mix(in srgb,var(--panel) 90%,transparent);display:grid;gap:2px}.compete-preview-grid strong{font-size:18px}.compete-preview-grid small{color:var(--muted);font-size:11px}.compete-preview-track{margin-top:10px;height:6px;border-radius:999px;border:1px solid var(--line);background:color-mix(in srgb,var(--panel) 92%,transparent);overflow:hidden}.compete-preview-track span{display:block;height:100%;width:46%;border-radius:999px;background:linear-gradient(90deg,color-mix(in srgb,#ffb25f 68%,var(--teal) 32%) 0%,var(--teal) 100%);animation:previewSweep 2.6s ease-in-out infinite}.compete-preview-foot{margin-top:8px;color:var(--muted);font-size:12px}.compete-scoring-panel{margin-top:12px;background:radial-gradient(circle at 10% 14%,color-mix(in srgb,var(--teal) 10%,transparent) 0%,transparent 45%),color-mix(in srgb,var(--panel) 95%,transparent)}.compete-scoring-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.compete-scoring-rule{border-radius:12px;border:1px solid color-mix(in srgb,var(--line) 88%,transparent);background:color-mix(in srgb,var(--panel-strong) 94%,transparent);padding:10px;display:grid;gap:3px}.compete-scoring-rule.good{border-color:color-mix(in srgb,var(--good) 22%,var(--line) 78%)}.compete-scoring-rule.bad{border-color:color-mix(in srgb,var(--bad) 18%,var(--line) 82%)}.compete-scoring-value{font-weight:900;font-size:22px;line-height:1}.compete-scoring-rule.good .compete-scoring-value{color:color-mix(in srgb,var(--good) 72%,var(--ink) 28%)}.compete-scoring-rule.bad .compete-scoring-value{color:color-mix(in srgb,var(--bad) 68%,var(--ink) 32%)}.compete-scoring-label{color:color-mix(in srgb,var(--muted) 78%,var(--ink) 22%);font-size:12px;line-height:1.2;font-weight:700}.compete-results-screen{display:grid;gap:12px;animation:tabEnter .22s cubic-bezier(.2,.8,.2,1) both}.compete-results-hero{border:1px solid var(--line);border-radius:14px;background:radial-gradient(circle at 8% 10%,color-mix(in srgb,#ffb25f 12%,transparent) 0%,transparent 44%),radial-gradient(circle at 85% 12%,color-mix(in srgb,var(--teal) 12%,transparent) 0%,transparent 42%),color-mix(in srgb,var(--panel) 94%,transparent);padding:14px;display:flex;justify-content:space-between;align-items:center;gap:12px}.compete-results-panels{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.compete-table{display:grid;gap:6px}.compete-table-head,.compete-table-row{display:grid;grid-template-columns:1.3fr 1fr 1.4fr .9fr;gap:8px;align-items:center}.compete-table-head{color:var(--muted);font-size:12px;padding:2px 4px}.compete-table-row{border:1px solid var(--line);border-radius:10px;padding:8px;background:color-mix(in srgb,var(--panel) 92%,transparent);animation:menuItemIn .18s ease both}.compete-table-row:nth-child(2n){background:color-mix(in srgb,var(--panel-strong) 90%,transparent)}.compete-table-row>span{min-width:0;white-space:normal;overflow-wrap:anywhere}.compete-table-row .stat-pill{width:fit-content}@keyframes previewCardIn{0%{opacity:0;transform:translateY(8px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes floatCard{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}@keyframes ctaGlow{0%,to{box-shadow:0 8px 18px color-mix(in srgb,var(--teal) 16%,transparent),0 0 0 1px color-mix(in srgb,var(--teal) 16%,transparent)}50%{box-shadow:0 10px 22px color-mix(in srgb,var(--teal) 22%,transparent),0 0 14px color-mix(in srgb,#ffb25f 16%,transparent)}}@keyframes floatPulse{0%,to{transform:translateY(0)}50%{transform:translateY(-2px)}}@keyframes floatSpark{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-4px) rotate(5deg)}}@keyframes floatDriftA{0%,to{transform:translate(0)}50%{transform:translate(8px,-6px)}}@keyframes floatDriftB{0%,to{transform:translate(0)}50%{transform:translate(-10px,7px)}}@keyframes previewSweep{0%,to{width:34%}50%{width:68%}}.badge-list{display:flex;flex-wrap:wrap;gap:8px}.badge-pill{border:1px solid var(--line);border-radius:999px;padding:4px 9px;font-size:12px;background:color-mix(in srgb,var(--neon) 16%,var(--panel) 84%)}.badge-pill.achievement{display:inline-flex;align-items:center;gap:8px;padding:5px 10px 5px 6px;border-radius:14px;border-color:color-mix(in srgb,var(--teal) 26%,var(--line) 74%);background:radial-gradient(circle at 8% 20%,color-mix(in srgb,var(--neon) 10%,transparent) 0%,transparent 42%),linear-gradient(145deg,color-mix(in srgb,var(--panel-strong) 94%,transparent),color-mix(in srgb,var(--panel) 97%,transparent));box-shadow:0 1px color-mix(in srgb,white 4%,transparent) inset,0 8px 18px #0000001f;font-size:13px;font-weight:800;color:var(--ink)}.badge-pill-icon{width:22px;height:22px;border-radius:999px;display:inline-grid;place-items:center;font-size:13px;border:1px solid color-mix(in srgb,var(--neon) 22%,var(--line) 78%);background:radial-gradient(circle at 35% 30%,color-mix(in srgb,#fff3a6 65%,transparent) 0%,transparent 45%),linear-gradient(180deg,color-mix(in srgb,#f8d96f 72%,#d0a32f 28%),color-mix(in srgb,#bf8d1f 72%,#8d6511 28%));box-shadow:0 1px #ffffff38 inset}.badge-pill-label{line-height:1.05;letter-spacing:.01em}.learn-screen{animation-duration:.17s;animation-fill-mode:both;animation-timing-function:cubic-bezier(.2,.8,.2,1)}.learn-screen.learn-screen-sections.forward{animation-name:learnFadeIn}.learn-screen.learn-screen-sections.back{animation-name:learnSlideInLeft}.learn-screen.learn-screen-tricks.forward{animation-name:learnSlideInRight}.learn-screen.learn-screen-tricks.back{animation-name:learnFadeIn}@keyframes learnFadeIn{0%{opacity:0;transform:translateY(8px) scale(.99)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes learnSlideInRight{0%{opacity:0;transform:translate(22px) scale(.985)}to{opacity:1;transform:translate(0) scale(1)}}@keyframes learnSlideInLeft{0%{opacity:0;transform:translate(-22px) scale(.985)}to{opacity:1;transform:translate(0) scale(1)}}.section-graph-canvas{position:relative;border:1px solid var(--line);border-radius:14px;background:color-mix(in srgb,var(--panel-strong) 90%,transparent);min-height:260px;padding:14px 12px;display:grid;gap:14px;overflow:auto}.graph-level-row{display:flex;justify-content:center;align-items:stretch;gap:20px;flex-wrap:wrap}.section-node{border:1px solid var(--line);border-radius:14px;background:color-mix(in srgb,var(--panel-strong) 88%,transparent);color:var(--ink);padding:10px;text-align:left;display:flex;flex-direction:column;gap:4px;transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease;animation:nodeRise .16s cubic-bezier(.2,.8,.2,1) both;animation-delay:calc(var(--stagger, 0) * 10ms)}.section-node:hover{transform:translateY(-2px) scale(1.01);box-shadow:0 8px 16px color-mix(in srgb,var(--teal) 18%,transparent)}.section-node-row{justify-content:flex-start}.section-node.state-locked,.trick-node.state-locked{opacity:.68}.section-node.state-mastered,.trick-node.state-mastered{border-color:color-mix(in srgb,var(--good) 50%,var(--line) 50%)}.section-node.active{border-color:color-mix(in srgb,var(--neon) 54%,var(--line) 46%);box-shadow:0 0 12px color-mix(in srgb,var(--neon) 18%,transparent);transform:scale(1.02);animation:nodeRise .16s cubic-bezier(.2,.8,.2,1) both,selectedPulse 2.3s ease-in-out infinite}@keyframes selectedPulse{0%,to{box-shadow:0 0 8px color-mix(in srgb,var(--neon) 16%,transparent)}50%{box-shadow:0 0 14px color-mix(in srgb,var(--neon) 24%,transparent)}}@keyframes nodeRise{0%{opacity:0;transform:translateY(12px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}.section-node-emoji{font-size:24px}.section-node-title{font-size:20px;font-family:"Baloo 2",Nunito,sans-serif;line-height:1.08;white-space:normal;overflow-wrap:anywhere}.section-node-meta{color:var(--muted);font-size:13px}.stars{font-size:13px;color:color-mix(in srgb,var(--neon) 78%,var(--ink) 22%)}.mini-progress{margin-top:auto;width:100%;height:6px;border-radius:999px;background:color-mix(in srgb,var(--panel) 92%,transparent);border:1px solid var(--line);overflow:hidden}.mini-progress span{display:block;height:100%;background:linear-gradient(90deg,var(--teal) 0%,var(--neon) 100%)}.graph-edge{color:var(--muted);font-size:13px;border:1px dashed color-mix(in srgb,var(--line) 80%,transparent);border-radius:10px;padding:6px 8px;background:color-mix(in srgb,var(--panel) 95%,transparent)}.learn-island{border:1px solid var(--line);border-radius:16px;background:color-mix(in srgb,var(--panel) 94%,transparent);overflow:hidden}.learn-island.open{box-shadow:0 8px 16px color-mix(in srgb,var(--teal) 16%,transparent)}.island-header{width:100%;border-radius:0;border:0;background:linear-gradient(120deg,color-mix(in srgb,var(--teal) 30%,var(--panel) 70%),color-mix(in srgb,var(--panel) 86%,var(--teal) 14%));color:var(--ink);display:flex;justify-content:space-between;align-items:center;padding:14px 16px;text-align:left}.island-header.static{cursor:default}.island-title-wrap{display:flex;align-items:center;gap:10px}.island-emoji{font-size:28px}.island-expand{font-size:28px;line-height:1;font-weight:700}.section-fine-graph{padding:12px 14px 4px;display:grid;gap:10px}.learn-inline-help-row{display:grid;justify-items:start;gap:8px}.learn-inline-help-row .ghost{padding:4px 10px;font-size:12px}.learn-inline-help-pop{max-width:560px;padding:8px 10px;border-radius:10px;border:1px solid color-mix(in srgb,var(--line) 80%,transparent);background:color-mix(in srgb,var(--panel) 96%,transparent);color:color-mix(in srgb,var(--ink) 92%,transparent);font-size:12px;line-height:1.35}.trick-graph-canvas{position:relative;border-top:1px solid var(--line);min-height:260px;padding:12px;display:grid;gap:14px;overflow:auto}.trick-graph-canvas.compact{min-height:160px;align-content:center}.trick-node{position:relative;z-index:1;min-width:0;max-width:none;animation:nodeRise .16s cubic-bezier(.2,.8,.2,1) both;animation-delay:calc(var(--stagger, 0) * 10ms);transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}.path-node.trick-node{min-width:0;max-width:none;width:auto;padding:8px 9px;gap:4px}.trick-node-row{justify-content:flex-start}.trick-node:hover{transform:translateY(-3px) scale(1.01);box-shadow:0 8px 16px color-mix(in srgb,var(--teal) 20%,transparent)}.trick-node-header{width:100%;display:flex;justify-content:space-between;align-items:center;gap:6px;flex-wrap:wrap;margin-bottom:2px}.difficulty-tag{display:inline-flex;align-items:center;gap:4px;border-radius:999px;padding:2px 8px;font-size:12px;border:1px solid color-mix(in srgb,var(--line) 70%,transparent);color:color-mix(in srgb,var(--ink) 92%,transparent);background:color-mix(in srgb,var(--panel) 90%,transparent);text-transform:capitalize;transition:transform .14s ease}.trick-node:hover .difficulty-tag{transform:scale(1.04)}.trick-node .path-node-icon{font-size:16px}.trick-node .path-node-title{font-size:15px;line-height:1.15;text-align:center;width:100%;align-self:center}.trick-node-exam-bar{width:100%;margin-top:4px;display:grid;grid-template-columns:repeat(var(--slot-count, 16),minmax(0,1fr));gap:2px;padding:3px;border-radius:999px;border:1px solid color-mix(in srgb,var(--line) 70%,transparent);background:color-mix(in srgb,var(--panel) 88%,transparent)}.trick-node-exam-slot{height:4px;border-radius:999px;background:color-mix(in srgb,var(--ink) 12%,transparent);opacity:.65}.trick-node-exam-slot.active{background:linear-gradient(90deg,color-mix(in srgb,var(--teal) 75%,#fff 25%),color-mix(in srgb,var(--neon) 72%,#fff 28%));box-shadow:0 0 0 1px color-mix(in srgb,var(--teal) 25%,transparent);opacity:1}.trick-node .status-pill{font-size:10px;padding:2px 6px}.trick-node .difficulty-tag{font-size:10px;padding:2px 6px;gap:3px}.status-pill{display:inline-flex;align-items:center;border-radius:999px;padding:2px 8px;font-size:11px;border:1px solid var(--line);width:fit-content;color:var(--ink);background:color-mix(in srgb,var(--panel) 90%,transparent)}.status-pill.state-mastered{color:var(--good);border-color:color-mix(in srgb,var(--good) 45%,var(--line) 55%)}.status-pill.state-ready{color:color-mix(in srgb,var(--teal) 80%,#fff 20%)}.status-pill.state-in-progress{color:color-mix(in srgb,var(--neon) 85%,var(--ink) 15%)}.status-pill.state-locked,.status-pill.state-coming-soon{color:var(--muted)}.progress-graph{display:grid;gap:6px}.difficulty-graph{display:grid;gap:8px}.difficulty-columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.difficulty-columns>div{border:1px solid var(--line);border-radius:10px;padding:8px;background:color-mix(in srgb,var(--panel-strong) 88%,transparent)}.difficulty-pill{margin-top:6px;border-radius:999px;border:1px solid var(--line);font-size:12px;color:var(--ink);padding:3px 8px;background:color-mix(in srgb,var(--panel) 90%,transparent)}.island-path{position:relative;padding:12px 14px 16px;display:grid;gap:10px}.island-path:before{content:"";position:absolute;top:20px;bottom:20px;left:50%;width:4px;border-radius:999px;transform:translate(-50%);background:linear-gradient(180deg,color-mix(in srgb,var(--teal) 36%,transparent),color-mix(in srgb,var(--neon) 34%,transparent));opacity:.42}.path-node-wrap{display:flex;position:relative}.path-node-wrap.left{justify-content:flex-start}.path-node-wrap.right{justify-content:flex-end}.path-node{max-width:min(420px,90%);min-width:min(320px,90%);padding:10px 12px;border-radius:16px;border:2px solid color-mix(in srgb,var(--teal) 48%,var(--line) 52%);background:color-mix(in srgb,var(--panel-strong) 88%,transparent);color:var(--ink);display:flex;flex-direction:column;align-items:flex-start;gap:4px;position:relative}.path-node.playable:hover{transform:translateY(-2px) scale(1.01)}.path-node.done{border-color:color-mix(in srgb,var(--neon) 62%,var(--line) 38%);box-shadow:0 0 10px color-mix(in srgb,var(--neon) 20%,transparent)}.path-node.locked{opacity:.7}.path-node-icon{font-size:18px}.path-node-title{font-size:20px;font-family:"Baloo 2",Nunito,sans-serif;line-height:1.1;white-space:normal;overflow-wrap:anywhere}.path-node-sub{font-size:14px;color:var(--muted);font-family:Nunito,Avenir Next,sans-serif;white-space:normal;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.confetti-layer{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:30;overflow:hidden}.confetti-piece{position:absolute;top:-20px;border-radius:2px;opacity:0;animation-name:confettiDrop;animation-timing-function:cubic-bezier(.18,.74,.41,1);animation-fill-mode:forwards}@keyframes confettiDrop{0%{transform:translateY(0) rotate(0) scale(.9);opacity:0}12%{opacity:1}to{transform:translateY(110vh) rotate(560deg) scale(1);opacity:0}}.slide-math{margin:2px 0;padding:6px 8px;border-radius:10px;border:1px solid color-mix(in srgb,var(--line) 78%,transparent);background:color-mix(in srgb,var(--panel) 92%,transparent);overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;text-align:left;font-size:calc(1.02rem * var(--lesson-text-scale, 1))}.slide-math .katex-display{margin:.15rem 0}.slide-math .katex-display>.katex{font-size:calc(1.12em * var(--lesson-text-scale, 1));line-height:1.25;text-align:left}.slide-math .katex{white-space:nowrap}.slide-math-table{margin-top:8px;margin-bottom:8px;padding:10px 12px;border-radius:14px;border-color:color-mix(in srgb,var(--accent) 35%,var(--line) 65%);background:linear-gradient(135deg,color-mix(in srgb,var(--panel) 92%,transparent),color-mix(in srgb,var(--panel-soft) 72%,transparent) 55%,color-mix(in srgb,var(--panel) 90%,transparent));box-shadow:inset 0 1px color-mix(in srgb,white 5%,transparent)}.slide-math-table .katex-display{margin:0}.slide-math-table .katex-display>.katex{display:inline-block;min-width:max-content;font-size:calc(.98em * var(--lesson-text-scale, 1));line-height:1.18}.slide-ref-table-wrap{margin:8px 0;padding:10px 12px;border-radius:14px;border:1px solid color-mix(in srgb,var(--accent) 35%,var(--line) 65%);background:linear-gradient(135deg,color-mix(in srgb,var(--panel) 92%,transparent),color-mix(in srgb,var(--panel-soft) 72%,transparent) 55%,color-mix(in srgb,var(--panel) 90%,transparent));box-shadow:inset 0 1px color-mix(in srgb,white 5%,transparent);overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch}.slide-ref-table{width:100%;border-collapse:collapse;min-width:max-content}.slide-ref-table td{padding:6px 10px;border:1px solid color-mix(in srgb,var(--line) 72%,transparent);background:color-mix(in srgb,var(--panel-strong) 62%,transparent);text-align:center;vertical-align:middle;white-space:nowrap;font-size:calc(.98rem * var(--lesson-text-scale, 1))}.slide-ref-table tr:nth-child(2n) td{background:color-mix(in srgb,var(--panel-strong) 78%,transparent)}.slide-ref-table td .katex{font-size:calc(1em * var(--lesson-text-scale, 1))}.lesson-run-screen .meta{font-size:calc(13px * var(--lesson-text-scale, 1))}.lesson-run-screen h3{font-size:calc(1.15rem * var(--lesson-text-scale, 1))}.theme-carousel-controls{justify-content:flex-end;gap:8px}.theme-carousel-arrow{min-width:42px;min-height:38px;padding:0 12px}.theme-preview-grid{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 30px)/4);gap:10px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x proximity;padding-bottom:2px}.theme-preview-grid::-webkit-scrollbar{height:8px}.theme-preview-grid::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--line) 80%,transparent);border-radius:999px}.lesson-font-scale-row{flex-wrap:wrap;gap:8px}.theme-preview-card{border:1px solid var(--line);border-radius:12px;background:color-mix(in srgb,var(--panel) 90%,transparent);color:var(--ink);padding:10px;text-align:left;display:grid;gap:8px;align-content:start;scroll-snap-align:start}.theme-preview-card.active{border-color:color-mix(in srgb,var(--teal) 40%,var(--line) 60%);box-shadow:0 0 0 1px color-mix(in srgb,var(--teal) 18%,transparent) inset}.theme-preview-art{border-radius:10px;border:1px solid color-mix(in srgb,var(--line) 80%,transparent);padding:8px;background:color-mix(in srgb,var(--panel-strong) 86%,transparent);display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.theme-preview-art>span{height:18px;border-radius:999px;border:1px solid rgba(255,255,255,.12)}.theme-preview-mock{grid-column:1 / -1;border-radius:8px;border:1px solid color-mix(in srgb,var(--line) 80%,transparent);background:#ffffff08;padding:6px;display:grid;gap:6px}.theme-preview-mock-top{height:8px;border-radius:999px;background:#ffffff1f}.theme-preview-mock-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:4px}.theme-preview-mock-grid i{display:block;height:18px;border-radius:6px;background:#ffffff14}.skill-item{display:flex;align-items:center;gap:8px;color:var(--ink)}.practice-section-card{display:grid;gap:8px}.practice-section-metrics{display:flex;flex-wrap:wrap;gap:6px}.practice-skill-item{justify-content:space-between;align-items:flex-start;border:1px solid var(--line);border-radius:10px;padding:8px 10px;background:color-mix(in srgb,var(--panel) 90%,transparent);transition:transform .15s ease,border-color .18s ease,box-shadow .2s ease,background .18s ease}.practice-skill-item:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--teal) 42%,var(--line) 58%);box-shadow:0 6px 12px color-mix(in srgb,var(--teal) 18%,transparent)}.practice-skill-item.disabled{opacity:.66}.practice-skill-main{display:inline-flex;align-items:center;gap:8px;min-width:0;flex:1;white-space:normal;overflow-wrap:anywhere}.practice-skill-label-stack{display:inline-flex;align-items:center;gap:8px;min-width:0;flex-wrap:wrap}.practice-skill-metrics{display:inline-flex;align-items:center;gap:6px;flex-wrap:wrap;justify-content:flex-end}.stat-pill{display:inline-flex;align-items:center;border-radius:999px;border:1px solid var(--line);padding:2px 8px;font-size:12px;color:var(--muted);background:color-mix(in srgb,var(--panel-strong) 88%,transparent)}.stat-pill.metric-strong{color:color-mix(in srgb,var(--good) 90%,#fff 10%);border-color:color-mix(in srgb,var(--good) 48%,var(--line) 52%);background:color-mix(in srgb,var(--good) 16%,var(--panel) 84%)}.stat-pill.metric-mid{color:color-mix(in srgb,var(--teal) 82%,#fff 18%);border-color:color-mix(in srgb,var(--teal) 42%,var(--line) 58%);background:color-mix(in srgb,var(--teal) 15%,var(--panel) 85%)}.stat-pill.metric-low{color:color-mix(in srgb,var(--bad) 88%,#fff 12%);border-color:color-mix(in srgb,var(--bad) 46%,var(--line) 54%);background:color-mix(in srgb,var(--bad) 13%,var(--panel) 87%)}.stat-pill.metric-none{opacity:.8}.menu-anim-item{animation:menuItemIn .22s cubic-bezier(.2,.8,.2,1) both;animation-delay:calc(var(--stagger, 0) * 12ms)}@keyframes menuItemIn{0%{opacity:0;transform:translateY(8px) scale(.99)}to{opacity:1;transform:translateY(0) scale(1)}}.accordion-card{border:1px solid var(--line);border-radius:12px;background:color-mix(in srgb,var(--panel) 94%,transparent);padding:8px 10px;transition:border-color .18s ease,box-shadow .22s ease,transform .18s ease}.accordion-card:hover{border-color:color-mix(in srgb,var(--teal) 38%,var(--line) 62%)}.accordion-card[open]{box-shadow:0 8px 18px color-mix(in srgb,var(--teal) 12%,transparent)}.accordion-card[open]>:not(summary){animation:accordionContentIn .18s ease both}@keyframes accordionContentIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.accordion-card summary{cursor:pointer;font-weight:800;list-style:none}.accordion-card summary::-webkit-details-marker{display:none}.accordion-card summary:after{content:"+";float:right;color:var(--muted)}.accordion-card[open] summary:after{content:"-"}.settings-textarea{width:100%;min-height:260px;border:1px solid var(--line);border-radius:12px;padding:10px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px;background:color-mix(in srgb,var(--panel) 88%,transparent);color:var(--ink)}.file-label{display:inline-flex;align-items:center;border-radius:12px;background:color-mix(in srgb,var(--neon-soft) 70%,var(--panel) 30%);color:color-mix(in srgb,var(--ink) 90%,transparent);border:1px solid color-mix(in srgb,var(--neon) 26%,var(--line) 74%);padding:10px 12px;cursor:pointer}.file-label input{display:none}.pool-selector{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:8px}.timer-selector{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}.pool-chip{background:color-mix(in srgb,var(--panel) 92%,transparent);color:var(--ink);border:1px solid var(--line);padding:8px 10px;font-size:18px}.pool-chip.active{background:linear-gradient(135deg,color-mix(in srgb,var(--neon) 34%,var(--panel) 66%),color-mix(in srgb,var(--neon) 44%,var(--panel) 56%));color:var(--ink);border-color:color-mix(in srgb,var(--neon) 24%,var(--line) 76%)}.answer-entry{border:1px solid var(--line);border-radius:14px;padding:10px;background:color-mix(in srgb,var(--panel) 92%,transparent);display:flex;flex-direction:column}.answer-preview{position:relative;min-height:112px;border:1px dashed color-mix(in srgb,var(--teal) 46%,var(--line) 54%);border-radius:10px;padding:14px 16px;margin-bottom:10px;background:color-mix(in srgb,var(--panel-strong) 85%,transparent);cursor:text;display:flex;align-items:center;justify-content:center}.answer-preview.is-focused{border-color:color-mix(in srgb,var(--teal) 70%,var(--line) 30%);box-shadow:0 0 0 2px color-mix(in srgb,var(--teal) 16%,transparent)}.answer-preview-inner{width:100%;min-height:74px;position:relative;z-index:1;display:flex;align-items:center;justify-content:center;gap:8px}.answer-preview-inner.dir-start,.answer-preview-inner.dir-end{justify-content:center}.answer-preview-render{position:relative;font-size:58px;display:flex;justify-content:center;align-items:center;min-width:0;max-width:100%;overflow-wrap:anywhere}.answer-preview .katex-display{margin:0;text-align:center;font-size:1.24em}.answer-preview-placeholder{color:color-mix(in srgb,var(--muted) 72%,transparent);font-size:40px;font-family:"Baloo 2",Nunito,sans-serif}.answer-preview-caret{width:2px;height:min(48px,70%);border-radius:999px;background:color-mix(in srgb,var(--teal) 70%,#fff 30%);opacity:0;transform:translateY(1px);flex:0 0 auto}.answer-preview-caret.visible{opacity:1;animation:caretBlink 1s step-end infinite}@keyframes caretBlink{0%,48%{opacity:1}50%,to{opacity:.15}}.answer-ghost-input{position:absolute;width:1px;height:1px;padding:0;margin:-1px;clip:rect(0,0,0,0);clip-path:inset(50%);overflow:hidden;white-space:nowrap;border:0;background:transparent;outline:none}.answer-controls{margin-top:8px;gap:10px;flex-wrap:wrap;justify-content:center}.answer-keypad{margin-top:10px;border-radius:14px;border:1px solid color-mix(in srgb,var(--line) 80%,var(--teal) 20%);background:linear-gradient(180deg,color-mix(in srgb,var(--panel-strong) 92%,transparent),color-mix(in srgb,var(--panel) 94%,transparent));padding:10px}.answer-key-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.answer-key{min-height:58px;border-radius:14px;border:1px solid color-mix(in srgb,var(--line) 72%,var(--teal) 28%);background:linear-gradient(180deg,color-mix(in srgb,var(--teal) 38%,var(--panel) 62%),color-mix(in srgb,var(--teal) 26%,var(--panel-strong) 74%));color:var(--ink);font-size:20px;font-weight:800;padding:12px 8px;box-shadow:inset 0 1px color-mix(in srgb,white 10%,transparent),0 6px 14px #0000001f;transition:transform .14s ease,box-shadow .16s ease,border-color .16s ease,filter .16s ease;touch-action:manipulation}.answer-key:hover{transform:translateY(-1px);filter:brightness(1.03);border-color:color-mix(in srgb,var(--teal) 40%,var(--line) 60%)}.answer-key:active{transform:translateY(1px) scale(.99);box-shadow:inset 0 1px color-mix(in srgb,white 8%,transparent),0 2px 8px #00000029}.answer-key.wide{font-size:18px}.answer-key-direction{background:linear-gradient(180deg,color-mix(in srgb,var(--neon) 24%,var(--panel) 76%),color-mix(in srgb,var(--neon) 14%,var(--panel-strong) 86%))}.answer-key-erase{background:linear-gradient(180deg,color-mix(in srgb,#ff8a8a 18%,var(--panel) 82%),color-mix(in srgb,#ff8a8a 10%,var(--panel-strong) 90%))}.answer-action-row{gap:12px;flex-wrap:wrap;justify-content:center}.answer-edit-warning{margin-top:10px;padding:10px 12px;border-radius:12px;border:1px solid color-mix(in srgb,#ffb26b 36%,var(--line) 64%);background:linear-gradient(135deg,color-mix(in srgb,#ffb26b 10%,var(--panel-strong) 90%),color-mix(in srgb,#ff7a7a 6%,var(--panel) 94%));display:grid;grid-template-columns:auto 1fr;gap:10px;align-items:start;animation:answer-warning-in .22s ease,answer-warning-pulse .9s ease 1}.answer-edit-warning strong{display:block;font-size:14px;margin-bottom:2px}.answer-edit-warning .meta{color:color-mix(in srgb,var(--ink) 76%,var(--muted) 24%);font-size:12px;line-height:1.25}.answer-edit-warning-icon{font-size:18px;line-height:1;margin-top:1px}@keyframes answer-warning-in{0%{opacity:0;transform:translateY(-6px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes answer-warning-pulse{0%{box-shadow:0 0 color-mix(in srgb,#ffb26b 22%,transparent)}to{box-shadow:0 0 0 12px transparent}}.answer-action-btn{min-height:56px;padding:12px 22px;border-radius:14px;font-size:18px;font-weight:800;letter-spacing:.01em}.answer-action-primary{background:linear-gradient(135deg,color-mix(in srgb,var(--teal) 55%,var(--panel) 45%),color-mix(in srgb,var(--teal) 30%,var(--neon) 70%));border-color:color-mix(in srgb,var(--teal) 45%,var(--line) 55%)}.answer-action-secondary{background:linear-gradient(180deg,color-mix(in srgb,var(--panel-strong) 92%,transparent),color-mix(in srgb,var(--panel) 92%,transparent));border-color:color-mix(in srgb,var(--line) 90%,transparent)}.answer-utility-btn{min-height:46px;border-radius:12px;padding:10px 14px}.answer-utility-locked{border-style:dashed;opacity:.9}.answer-dir-btn{display:inline-flex;align-items:center;gap:6px}.meta-hint{font-size:12px;color:var(--muted)}.answer-key.is-locked{border-style:dashed;position:relative}.answer-key.is-locked:after{content:"🚫";position:absolute;right:8px;top:6px;font-size:12px;opacity:.8}.rec-list{margin-top:8px;padding-left:16px}.rec-list li{margin-bottom:5px}.badge{border-radius:999px;padding:2px 8px;font-size:11px;font-weight:800}.badge.low{color:#123e25;background:#b7ffd0}.badge.medium{color:#6d5700;background:#fff2a9}.badge.high{color:#7a2230;background:#ffd0db}.latex-label .katex{font-size:1em;color:inherit}input[type=checkbox]{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:18px;height:18px;margin:0;border-radius:5px;border:1px solid color-mix(in srgb,var(--line) 80%,transparent);background:color-mix(in srgb,var(--panel) 90%,transparent);display:inline-grid;place-content:center;cursor:pointer;transition:border-color .16s ease,background .16s ease,box-shadow .18s ease,transform .12s ease}input[type=checkbox]:before{content:"";width:10px;height:10px;transform:scale(0);transition:transform .14s ease;clip-path:polygon(14% 52%,0 67%,40% 100%,100% 20%,86% 8%,38% 70%);background:#fff}input[type=checkbox]:checked{border-color:color-mix(in srgb,var(--teal) 55%,var(--line) 45%);background:linear-gradient(145deg,color-mix(in srgb,var(--teal) 76%,var(--panel) 24%),color-mix(in srgb,var(--teal-strong) 74%,var(--panel) 26%));box-shadow:0 0 0 2px color-mix(in srgb,var(--teal) 22%,transparent)}input[type=checkbox]:checked:before{transform:scale(1)}input[type=checkbox]:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--teal) 46%,var(--line) 54%)}input[type=checkbox]:focus-visible{outline:none;box-shadow:0 0 0 2px color-mix(in srgb,var(--neon) 30%,transparent)}input[type=checkbox]:disabled{cursor:not-allowed;opacity:.55}@media(max-width:920px){.topbar{flex-wrap:wrap;align-items:stretch}.topbar-controls{grid-template-columns:1fr 1fr auto}.brand{font-size:42px;max-width:none}.brand-single-row{font-size:34px;white-space:normal}.home-hero,.analytics-loading-grid,.loading-grid{grid-template-columns:1fr}.home-coach-head{grid-template-columns:1fr;display:grid}.coach-task{grid-template-columns:1fr}.coach-task-side{justify-items:start}.account-profile-layout{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){.loading-panel-skeleton:after,.loading-inline-pill:after,.loading-kicker:before,.loading-inline-pill:before{animation:none}}@media(max-width:760px){.grid-3,.tabs,.analytics-grid,.summary-grid,.practice-categories,.pool-selector{grid-template-columns:1fr}.timer-selector{grid-template-columns:repeat(4,minmax(0,1fr))}.home-rail{grid-auto-columns:92%}.home-rail-toolbar{align-items:flex-start;flex-direction:column;gap:6px}.home-rail-arrows{align-self:flex-end}.home-rail-nav-btn{font-size:11px;padding:5px 9px;min-height:30px}.home-slide{grid-template-columns:1fr}.home-slide-copy h3{font-size:28px}.brand{font-size:36px;max-width:none}.topbar-controls{grid-template-columns:1fr;align-items:stretch}.brand-single-row{font-size:30px;line-height:.98}.question{font-size:22px}.learn-topic-item{flex-direction:column;align-items:flex-start}.answer-key-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.answer-preview{min-height:94px;padding:12px}.answer-preview-inner{min-height:62px}.answer-preview-render{font-size:42px}.answer-preview-placeholder{font-size:30px}.island-path:before{left:18px;transform:none}.difficulty-columns{grid-template-columns:1fr}.section-graph-canvas{min-height:900px}.trick-graph-canvas{min-height:760px}.path-node-wrap.left,.path-node-wrap.right{justify-content:flex-start;padding-left:28px}.path-node{min-width:0;max-width:100%}.compete-hero{grid-template-columns:1fr}.compete-title{font-size:28px}.compete-results-hero{flex-direction:column;align-items:flex-start}.compete-results-panels{grid-template-columns:1fr}.compete-table-head{display:none}.compete-table-row{grid-template-columns:1fr;gap:6px}.practice-skill-item{flex-wrap:wrap;gap:8px}.practice-skill-metrics{width:100%;justify-content:flex-start}.analytics-charts,.analytics-split{grid-template-columns:1fr}.analytics-inline-toggle{margin-left:0;width:100%}.settings-reset-grid{grid-template-columns:1fr}.analytics-filter-chips{width:100%}.analytics-rank-row{grid-template-columns:1fr;align-items:flex-start}.analytics-band-grid{grid-template-columns:1fr}.analytics-group-row{align-items:flex-start}.analytics-group-pills{width:100%;justify-content:flex-start}.analytics-focus-head{align-items:flex-start}}@media(max-width:1100px){.topbar{align-items:center}.topbar-controls{display:none}.mobile-nav-trigger{display:inline-grid}.tabs.section{display:none}.mobile-nav-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;border:0;border-radius:0;padding:0;margin:0;background:color-mix(in srgb,#07131b 74%,transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);animation:fadeInBackdrop .18s ease both}.mobile-nav-panel{display:block;position:relative;z-index:25;overflow:hidden;max-height:0;opacity:0;transform:translateY(-10px) scale(.99);pointer-events:none;transition:max-height .28s ease,opacity .22s ease,transform .24s cubic-bezier(.2,.8,.2,1);margin-bottom:0}.mobile-nav-panel.open{max-height:420px;opacity:1;transform:translateY(0) scale(1);pointer-events:auto}.mobile-nav-list{display:grid;gap:8px;padding:10px;border-radius:14px;border:1px solid color-mix(in srgb,var(--line) 82%,var(--teal) 18%);background:color-mix(in srgb,var(--panel) 92%,transparent);box-shadow:0 12px 24px #00000024;padding-bottom:calc(10px + env(safe-area-inset-bottom,0px))}.mobile-nav-head{display:flex;align-items:center;justify-content:space-between;padding:4px 4px 2px}.mobile-nav-title{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-weight:800}.mobile-nav-item{border-radius:12px;min-height:48px;text-align:left;padding:12px 14px;font-weight:800;font-size:18px;background:color-mix(in srgb,var(--panel-strong) 88%,transparent);border:1px solid color-mix(in srgb,var(--line) 84%,transparent);transition:transform .16s ease,background .18s ease,border-color .18s ease}.mobile-nav-item:hover{transform:translateY(-1px)}.mobile-nav-item.active{background:linear-gradient(135deg,color-mix(in srgb,var(--neon) 22%,var(--panel) 78%),color-mix(in srgb,var(--teal) 24%,var(--panel-strong) 76%));border-color:color-mix(in srgb,var(--neon) 26%,var(--line) 74%)}.mobile-nav-theme{margin-top:4px}.brand-single-row{font-size:30px;line-height:.96;white-space:normal;text-wrap:balance;max-width:min(12ch,70vw)}}@keyframes fadeInBackdrop{0%{opacity:0}to{opacity:1}}@media(min-width:761px){.analytics-filter-chips .analytics-filter-more,.analytics-collapsible-header .analytics-caret{display:none}}@media(max-width:760px){.analytics-filter-chips .mobile-extra-chip{display:none}.analytics-filter-chips.show-all-mobile .mobile-extra-chip,.analytics-filter-chips .analytics-filter-more{display:inline-flex}.analytics-section-card .analytics-collapsible-body,.analytics-group-row .analytics-collapsible-body{display:none}.analytics-section-card.expanded .analytics-collapsible-body,.analytics-group-row.expanded .analytics-collapsible-body{display:block;animation:tabEnter .18s ease both}.analytics-section-card{padding:12px}.analytics-section-card .analytics-collapsible-header{font-size:18px;line-height:1.12}.analytics-group-row{gap:0}.analytics-group-main.analytics-collapsible-header{width:100%;align-items:flex-start}.analytics-group-main.analytics-collapsible-header>span:first-child{display:grid;gap:2px;min-width:0}.analytics-group-main strong{font-size:18px;line-height:1.05}.analytics-player-summary-head{flex-direction:column;align-items:flex-start;gap:4px}.analytics-toolbar.compact{align-items:flex-start}.analytics-toolbar.compact .row{width:100%}.analytics-toolbar.compact .tab-btn{flex:1 1 0;min-width:0}.analytics-trend-window-row .row[role=tablist]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;gap:6px}.analytics-trend-window-row .tab-btn{font-size:13px;line-height:1.05;padding:8px;min-height:40px}.lesson-font-scale-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;gap:6px}.lesson-font-scale-row .pool-chip{width:100%}.theme-carousel-controls{justify-content:space-between}.theme-preview-grid{grid-auto-columns:calc((100% - 8px)/2);gap:8px}.analytics-trend-window-row label.meta{font-size:12px}.chart-label-row,.chart-foot-labels{flex-direction:column;align-items:flex-start;gap:3px}.settings-section-reset-row{flex-direction:column;align-items:stretch}.settings-section-reset-actions{width:100%}.settings-section-reset-actions .settings-mini-btn{flex:1 1 calc(50% - 6px)}.practice-mode-tabs{display:grid;grid-template-columns:1fr 1fr;gap:8px}.practice-mode-tabs .tab-btn{width:100%;min-width:0;font-size:16px;padding-inline:10px}.practice-duration-preset-row{display:grid;grid-template-columns:1fr 1fr;width:100%}.practice-duration-preset-row .tab-btn{width:100%;min-width:0}.practice-launch-panel .row:last-child{align-items:stretch;flex-direction:column;gap:8px}.practice-launch-panel .row:last-child>button{width:100%}.practice-summary-screen .compete-results-hero .row{width:100%;display:grid;gap:8px}.practice-summary-screen .compete-results-hero .row button{width:100%}.practice-skill-item{padding:10px;border-radius:12px;gap:10px}.practice-skill-main{width:100%;gap:6px;align-items:flex-start}.practice-skill-label-stack{display:grid;gap:4px;align-items:flex-start;width:100%}.practice-skill-main .difficulty-tag{width:fit-content;max-width:100%}.practice-skill-metrics{width:100%;justify-content:flex-start;gap:5px}.practice-skill-metrics .stat-pill{font-size:11px;padding:2px 7px}.auth-hero{grid-template-columns:1fr;gap:10px}.auth-mode-tabs{width:100%;display:grid;grid-template-columns:1fr 1fr}.auth-grid{grid-template-columns:1fr}.home-shell{padding:10px}#root{padding:14px 12px 24px}.card{padding:14px;border-radius:14px}.section{margin-top:10px}.row{gap:8px}.home-hero{gap:10px}.home-coach-ad,.home-coach-card,.home-slide,.coach-panel-card,.auth-card{padding:10px;border-radius:14px}.coach-task{padding:9px;border-radius:11px;gap:8px}.coach-task-title{line-height:1.05;margin-bottom:2px}.coach-task .meta{line-height:1.22}.coach-goal-progress-item{padding:9px;border-radius:11px;gap:5px}.coach-notes-list{gap:4px}.home-coach-ad h2,.home-coach-head h2{font-size:22px;line-height:1.04;margin-bottom:6px}.home-lead{font-size:14px;line-height:1.28}.home-coach-ad-emoji{font-size:32px;margin-top:4px}.home-steps{margin:6px 0 8px}.home-steps li{margin-bottom:4px;line-height:1.2}.home-slide-copy h3{font-size:28px;line-height:1.02}.home-slide-copy p{font-size:15px;line-height:1.28}.home-preview{min-height:240px;padding:10px}.home-preview-action-hint{top:8px;right:8px;font-size:10px;padding:4px 7px}.auth-actions{display:grid;width:100%;gap:8px}.auth-actions>button{width:100%;min-height:46px;font-size:17px}.compete-cta,.home-coach-ad .row.section>button:first-child,.home-slide-copy .section>button,.practice-launch-panel .row:last-child>button:first-child,.auth-actions>button:not(.ghost),.coach-actions>button{min-height:46px;padding:10px 14px;border-radius:12px;font-size:17px}.compete-cta{min-width:0;width:100%}.compete-hero-content .row.section{align-items:stretch;flex-direction:column;gap:8px}.compete-hero-content .row.section .meta{line-height:1.22}.home-coach-ad .row.section,.home-slide-copy .section,.coach-actions{gap:8px}.home-slide-copy .section>button{width:100%}.site-footer{padding:12px}.footer-strip{justify-content:flex-start;font-size:11px}.footer-grid.desktop-only{display:none}.footer-mobile-accordion.mobile-only{display:block}.footer-link-btn{width:100%}.run-screen .row.space-between,.lesson-run-head{align-items:flex-start}.run-screen .row.space-between>.meta{width:100%}.learn-dashboard{grid-template-columns:1fr 1fr;gap:8px}.collapsible-panel>summary{padding:9px 10px;font-size:14px}.collapsible-panel-body{padding:8px}.next-item{padding:7px 8px}.next-item span:first-child{font-size:12px;line-height:1.1}.next-item span:last-child{font-size:11px;line-height:1.1}.badge-pill.achievement{font-size:12px;padding:4px 8px 4px 5px;gap:6px}.badge-pill-icon{width:20px;height:20px;font-size:12px}.section-graph-canvas{padding:10px 8px}.graph-level-row{gap:10px}.section-node-row{width:100%}.section-node{width:100%!important;min-height:0!important;gap:3px}.section-node-title{font-size:16px;line-height:1.05}.section-node .difficulty-tag{width:fit-content;font-size:10px;padding:2px 6px}.island-header{padding:10px 12px;gap:8px;align-items:flex-start}.island-title-wrap{min-width:0;align-items:flex-start;gap:8px}.island-title-wrap h3{font-size:18px;line-height:1.05}.island-header .ghost{padding:8px 10px;font-size:14px;line-height:1.05;white-space:normal;width:auto;min-width:0;max-width:46%}.lesson-run-head{display:grid;grid-template-columns:1fr;gap:10px}.lesson-run-head>button{width:100%}.lesson-slide-panel{padding:10px}.lesson-slide-actions{display:grid;grid-template-columns:1fr;width:100%;gap:8px}.lesson-slide-actions>button{width:100%}.lesson-visual-split,.lesson-visual-grid-3{grid-template-columns:1fr}.lesson-visual-card-span-3{grid-column:auto}.lesson-visual-three-wrap{height:210px}.lesson-visual-card{padding:9px;gap:7px}.lesson-visual-caption{font-size:.9rem}.lesson-visual-note{font-size:.83rem}.slide-math{padding:6px}.slide-math .katex-display>.katex{font-size:calc(.95em * var(--lesson-text-scale, 1))}.slide-math-table{padding:8px 8px 9px;border-radius:12px}.slide-math-table .katex-display>.katex{font-size:calc(.82em * var(--lesson-text-scale, 1));line-height:1.15}.slide-ref-table-wrap{padding:8px 8px 9px;border-radius:12px;overflow-x:hidden}.slide-ref-table{min-width:0;width:100%}.slide-ref-table tbody{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.slide-ref-table tr{display:contents}.slide-ref-table td{padding:6px;font-size:calc(.88rem * var(--lesson-text-scale, 1));border-radius:8px;text-align:center}.answer-keypad{order:1;margin-top:8px;margin-bottom:6px}.answer-action-row{order:2;display:grid;grid-template-columns:1fr 1fr;width:100%;gap:10px;position:sticky;bottom:0;z-index:2;padding:8px;border-radius:12px;border:1px solid color-mix(in srgb,var(--line) 88%,transparent);background:color-mix(in srgb,var(--panel) 96%,transparent);box-shadow:0 -8px 18px #0000001f}.answer-action-row .answer-action-btn{width:100%;min-height:50px;font-size:16px;padding:10px 12px}.answer-edit-warning{order:3}.answer-controls{order:4;display:grid;grid-template-columns:1fr;gap:8px;width:100%}.answer-controls .answer-utility-btn{width:100%;min-height:42px;font-size:15px;justify-content:center;display:inline-flex;align-items:center}.answer-key-grid{gap:10px}.answer-key{min-height:52px;font-size:18px;border-radius:12px}.answer-key-direction,.answer-key-erase{grid-column:span 3}.compete-scoring-grid{grid-template-columns:1fr}.compete-scoring-rule{padding:9px 10px}}@media(max-width:420px){.slide-ref-table tbody{grid-template-columns:1fr}.slide-ref-table td{font-size:calc(.84rem * var(--lesson-text-scale, 1));padding:6px 8px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.confetti-layer{display:none!important}}
