@font-face{font-family:Kanit;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/kanit-thai-400-normal-D80Pglro.woff2)format("woff2"),url(/assets/kanit-thai-400-normal-D2nliXKa.woff)format("woff");unicode-range:U+2D7,U+303,U+331,U+E01-E5B,U+200C-200D,U+25CC}@font-face{font-family:Kanit;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/kanit-vietnamese-400-normal-DRI8YWyb.woff2)format("woff2"),url(/assets/kanit-vietnamese-400-normal-dow6Bnto.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Kanit;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/kanit-latin-ext-400-normal-B2xPf58u.woff2)format("woff2"),url(/assets/kanit-latin-ext-400-normal-CHvNKHHD.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Kanit;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/kanit-latin-400-normal-BUlsQXH3.woff2)format("woff2"),url(/assets/kanit-latin-400-normal-HVZWrfev.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Kanit;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/kanit-thai-500-normal-BB8gri04.woff2)format("woff2"),url(/assets/kanit-thai-500-normal-Iy_w0a80.woff)format("woff");unicode-range:U+2D7,U+303,U+331,U+E01-E5B,U+200C-200D,U+25CC}@font-face{font-family:Kanit;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/kanit-vietnamese-500-normal-BzTrpCM3.woff2)format("woff2"),url(/assets/kanit-vietnamese-500-normal-T1ndT7MF.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Kanit;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/kanit-latin-ext-500-normal-EHs3suD6.woff2)format("woff2"),url(/assets/kanit-latin-ext-500-normal-BFdWrG22.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Kanit;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/kanit-latin-500-normal-CX_4XcKi.woff2)format("woff2"),url(/assets/kanit-latin-500-normal-qBha86O4.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Kanit;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/kanit-thai-600-normal-Bj6oiaDc.woff2)format("woff2"),url(/assets/kanit-thai-600-normal-wbTlPO7I.woff)format("woff");unicode-range:U+2D7,U+303,U+331,U+E01-E5B,U+200C-200D,U+25CC}@font-face{font-family:Kanit;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/kanit-vietnamese-600-normal-Bi7fw3I4.woff2)format("woff2"),url(/assets/kanit-vietnamese-600-normal-DXCRAa_8.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Kanit;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/kanit-latin-ext-600-normal-DAX3wtuq.woff2)format("woff2"),url(/assets/kanit-latin-ext-600-normal-BBDzoLaj.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Kanit;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/kanit-latin-600-normal-0lS78yAd.woff2)format("woff2"),url(/assets/kanit-latin-600-normal-DlacpeTg.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Kanit;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/kanit-thai-700-normal-BPu_EjOu.woff2)format("woff2"),url(/assets/kanit-thai-700-normal-BFFnaoRZ.woff)format("woff");unicode-range:U+2D7,U+303,U+331,U+E01-E5B,U+200C-200D,U+25CC}@font-face{font-family:Kanit;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/kanit-vietnamese-700-normal-CdlTihzi.woff2)format("woff2"),url(/assets/kanit-vietnamese-700-normal-BlUBAAZx.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Kanit;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/kanit-latin-ext-700-normal-CcNUUlTS.woff2)format("woff2"),url(/assets/kanit-latin-ext-700-normal-2PbN0JCr.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Kanit;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/kanit-latin-700-normal-xfKc2BN3.woff2)format("woff2"),url(/assets/kanit-latin-700-normal-CZbzRMIr.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--font:"Kanit", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--bg:#0b0a14;--bg-raised:#151327;--surface:#ffffff0b;--surface-2:#ffffff13;--surface-3:#ffffff1f;--border:#ffffff14;--border-strong:#ffffff24;--text:#f4f3fb;--text-2:#b6b3cc;--text-3:#7f7c98;--violet:#8b5cf6;--violet-2:#a78bfa;--indigo:#6366f1;--cyan:#22d3ee;--lime:#a3e635;--flame:#fb923c;--rose:#fb7185;--amber:#fbbf24;--grad:linear-gradient(120deg, #8b5cf6 0%, #6366f1 48%, #22d3ee 100%);--grad-lime:linear-gradient(120deg, #bef264 0%, #4ade80 100%);--again:var(--rose);--hard:var(--amber);--good:var(--lime);--easy:var(--cyan);--hm-0:#ffffff0f;--hm-1:#8b5cf659;--hm-2:#8b5cf699;--hm-3:#8b5cf6;--hm-4:#22d3ee;--tier-new:#ffffff47;--tier-learning:var(--flame);--tier-known:var(--violet-2);--tier-verified:var(--cyan);--tier-anchored:#34d399;--tier-mastered:var(--lime);--radius:24px;--radius-sm:16px;--safe-t:env(safe-area-inset-top,0px);--safe-b:env(safe-area-inset-bottom,0px);--ease-out:cubic-bezier(.2, .8, .2, 1);--ease-spring:cubic-bezier(.2, 1.5, .4, 1)}*,:before,:after{box-sizing:border-box}html{-moz-text-size-adjust:100%;text-size-adjust:100%;background:var(--bg)}body{background:var(--bg);color:var(--text);font-family:var(--font);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;overscroll-behavior-y:none;margin:0;font-size:16px;line-height:1.45}h1,h2,h3,p{font-weight:inherit;margin:0}a{color:var(--violet-2)}button,input{font:inherit;color:inherit}button{cursor:pointer;touch-action:manipulation}button:disabled{cursor:default}:focus-visible{outline:2px solid var(--cyan);outline-offset:2px}img{max-width:100%}kbd{border:1px solid var(--border-strong);background:var(--surface-2);color:var(--text-2);border-radius:6px;padding:0 6px;font-family:inherit;font-size:.72em;font-weight:500}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}.muted{color:var(--text-3)}.spin{animation:.9s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.app{max-width:480px;min-height:100vh;min-height:100dvh;padding:var(--safe-t) max(16px, env(safe-area-inset-right,0px)) 0 max(16px, env(safe-area-inset-left,0px));margin:0 auto;position:relative}.app-glow{pointer-events:none;z-index:0;background:radial-gradient(520px 360px at 8% -6%, rgba(var(--accent-deep-rgb), .3), transparent 70%), radial-gradient(460px 320px at 105% 2%, rgba(var(--accent-2-rgb), .13), transparent 70%), radial-gradient(640px 420px at 50% 112%, #4f46e524, transparent 70%);position:fixed;inset:0}.screen,.auth,.splash{z-index:1;position:relative}.glass{background:linear-gradient(180deg, rgba(var(--lift-rgb), .06), rgba(var(--lift-rgb), .025));border:1px solid var(--border);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.skeleton{border-radius:var(--radius);background:linear-gradient(90deg, rgba(var(--lift-rgb), .035), rgba(var(--lift-rgb), .075), rgba(var(--lift-rgb), .035)) 0 0 / 200% 100%;animation:1.4s ease-in-out infinite shimmer}@keyframes shimmer{to{background-position:-200% 0}}.splash{text-align:center;min-height:100dvh;color:var(--text-2);place-content:center;justify-items:center;gap:16px;display:grid}.splash-logo{filter:drop-shadow(0 14px 34px rgba(var(--accent-deep-rgb), .55));animation:1.6s ease-in-out infinite breathe}.splash-icon{color:var(--text-3)}@keyframes breathe{50%{opacity:.8;transform:scale(.94)}}.btn{border-radius:var(--radius-sm);white-space:nowrap;min-height:48px;color:var(--text);background:var(--surface-2);transition:transform .12s var(--ease-out), filter .15s, opacity .15s, background-color .15s;-webkit-user-select:none;user-select:none;border:1px solid #0000;justify-content:center;align-items:center;gap:8px;padding:0 20px;font-size:1rem;font-weight:500;text-decoration:none;display:inline-flex}.btn:active:not(:disabled){transform:scale(.97)}.btn:disabled{opacity:.5}.btn-primary{color:#fff;background:var(--grad);box-shadow:0 12px 30px -12px rgba(var(--accent-deep-rgb), .85), inset 0 1px 0 #ffffff38;font-weight:600}@media (hover:hover){.btn-primary:hover:not(:disabled){filter:brightness(1.08)}.btn-soft:hover:not(:disabled),.btn-ghost:hover:not(:disabled){background:var(--surface-3)}}.btn-soft{background:var(--surface-2);border-color:var(--border)}.btn-ghost{border-color:var(--border-strong);color:var(--text-2);background:0 0}.btn-danger-soft{color:var(--rose);background:#fb71851f;border-color:#fb718538}.btn-xl{border-radius:20px;min-height:60px;padding:0 22px;font-size:1.08rem}.btn-block{width:100%}.btn-count{background:rgba(var(--lift-rgb), .2);font-variant-numeric:tabular-nums;border-radius:999px;place-items:center;min-width:30px;height:26px;padding:0 9px;font-size:.9rem;font-weight:600;display:inline-grid}.btn-soft .btn-count{background:var(--surface-3)}.icon-btn{width:48px;height:48px;color:var(--text-2);background:0 0;border:0;border-radius:14px;flex:none;place-items:center;padding:0;text-decoration:none;transition:background-color .15s,transform .12s,color .15s;display:inline-grid}.icon-btn:active:not(:disabled){transform:scale(.94)}.icon-btn:disabled{opacity:.4}.speaker{background:var(--surface-2);width:44px;height:44px;color:var(--text)}.speaker-sm{border-radius:12px;width:38px;height:38px}@media (hover:hover){.icon-btn:hover:not(:disabled){background:var(--surface-3);color:var(--text)}}.input{border-radius:var(--radius-sm);border:1.5px solid var(--border-strong);background:rgba(var(--lift-rgb), .04);outline:none;width:100%;min-height:52px;padding:0 16px;font-size:1rem;transition:border-color .15s,box-shadow .15s}.input::placeholder{color:var(--text-3)}.input:focus{border-color:var(--violet);box-shadow:0 0 0 4px rgba(var(--accent-rgb), .22)}.input[aria-invalid=true]{border-color:var(--rose)}.input-wrap{position:relative}.input-wrap .input{padding-right:54px}.input::-ms-reveal{display:none}.input::-ms-clear{display:none}.input-adorn{position:absolute;top:50%;right:2px;transform:translateY(-50%)}.input-adorn:active:not(:disabled){transform:translateY(-50%)scale(.94)}.seg{background:var(--surface-2);border-radius:14px;flex:none;gap:4px;padding:4px;display:inline-flex}.seg-btn{min-height:40px;color:var(--text-2);background:0 0;border:0;border-radius:10px;padding:0 14px;font-weight:500}.seg-sm .seg-btn{min-height:36px;padding:0 12px}.seg-btn[aria-pressed=true]{background:var(--surface-3);color:var(--text);box-shadow:inset 0 1px #ffffff14}.switch{background:rgba(var(--lift-rgb), .14);border:0;border-radius:999px;flex:none;width:54px;height:32px;padding:0;transition:background-color .2s;position:relative}.switch:after{content:"";position:absolute;inset:-8px -4px}.switch[aria-checked=true]{background:var(--grad)}.switch-thumb{width:24px;height:24px;transition:transform .22s var(--ease-spring);background:#fff;border-radius:50%;position:absolute;top:4px;left:4px;box-shadow:0 2px 6px #00000059}.switch[aria-checked=true] .switch-thumb{transform:translate(22px)}.range{-webkit-appearance:none;appearance:none;background:0 0;width:100%;height:32px;margin:0}.range::-webkit-slider-runnable-track{background:linear-gradient(90deg, var(--violet), var(--cyan)) 0 0 / var(--pct,0%) 100% no-repeat, rgba(var(--lift-rgb), .1);border-radius:999px;height:8px}.range::-moz-range-track{background:rgba(var(--lift-rgb), .1);border-radius:999px;height:8px}.range::-moz-range-progress{background:linear-gradient(90deg, var(--violet), var(--cyan));border-radius:999px;height:8px}.range::-webkit-slider-thumb{-webkit-appearance:none;background:#fff;border:0;border-radius:50%;width:26px;height:26px;margin-top:-9px;box-shadow:0 2px 10px #00000073}.range::-moz-range-thumb{background:#fff;border:0;border-radius:50%;width:26px;height:26px;box-shadow:0 2px 10px #00000073}.logo{display:block}.streak-pill{background:var(--surface);border:1px solid var(--border);height:44px;color:var(--text-3);border-radius:999px;align-items:center;gap:6px;padding:0 14px 0 12px;display:inline-flex}.streak-pill.is-active{color:var(--flame);background:#fb923c1f;border-color:#fb923c47}.streak-pill.is-active svg{filter:drop-shadow(0 0 8px #fb923ca6)}.streak-num{font-variant-numeric:tabular-nums;font-size:1.2rem;font-weight:700;line-height:1}.xp-bar{background:rgba(var(--lift-rgb), .08);border-radius:999px;height:8px;position:relative;overflow:hidden}.xp-bar-lg{height:12px}.xp-bar-fill{border-radius:inherit;background:var(--grad);height:100%;transition:width .6s var(--ease-out)}.xp-bar-fill.is-animated{transition:width 1.2s var(--ease-out)}.xp-bar-lime .xp-bar-fill{background:var(--grad-lime)}.xp-bar-muted .xp-bar-fill{background:rgba(var(--lift-rgb), .32)}.goal-ring{flex:none;position:relative}.goal-ring svg{display:block;overflow:visible}.goal-ring-track{stroke:rgba(var(--lift-rgb), .07)}.goal-ring-bar,.goal-ring-glow{transition:stroke-dasharray 1.1s var(--ease-out), stroke-dashoffset 1.1s var(--ease-out)}.goal-ring.is-rest .goal-ring-track{stroke:rgba(var(--lift-rgb), .05)}.goal-ring-glow{opacity:.55}.goal-ring-center{text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.confetti{pointer-events:none;z-index:2;position:absolute;inset:0;overflow:hidden}.confetti i{opacity:0;animation-name:confetti-fall;animation-timing-function:cubic-bezier(.25,.6,.5,1);animation-fill-mode:forwards;position:absolute;top:-24px}@keyframes confetti-fall{0%{opacity:1;transform:translate(0,0)rotate(0)}80%{opacity:1}to{opacity:0;transform:translate3d(var(--dx), 92vh, 0) rotate(var(--rot))}}.page{padding-bottom:calc(28px + var(--safe-b))}.page-head{z-index:20;min-height:64px;padding:calc(var(--safe-t)) 16px 0;margin:0 -16px 8px;margin-top:calc(-1 * var(--safe-t));background:linear-gradient(180deg, rgba(var(--ground-rgb), .96) 60%, rgba(var(--ground-rgb), 0));-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);grid-template-columns:48px 1fr 48px;align-items:center;display:grid;position:sticky;top:0}.back-btn{background:var(--surface-2);color:var(--text);border:1px solid var(--border);width:44px;height:44px}.page-head-title{text-align:center;font-size:1.15rem;font-weight:600}.panel{border-radius:var(--radius);margin-bottom:12px;padding:18px}.panel-head{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.panel-title{font-size:1.05rem;font-weight:600}.panel-meta{color:var(--text-2);font-size:.82rem}.panel-hint{color:var(--text-3);margin-top:12px;font-size:.8rem}.error-panel{text-align:center;color:var(--text-2);justify-items:center;gap:12px;display:grid}.auth{min-height:100dvh;padding-bottom:calc(24px + var(--safe-b));flex-direction:column;display:flex}.auth-top{justify-content:flex-end;padding:12px 0 0;display:flex}.auth-header{text-align:center;padding:18px 0 22px}.auth-logo{filter:drop-shadow(0 14px 34px rgba(var(--accent-deep-rgb), .55));animation:rise .5s var(--ease-out) both;display:inline-block}.auth-title{letter-spacing:-.01em;margin-top:12px;font-size:2.3rem;font-weight:700;line-height:1.1}.auth-tagline{max-width:30ch;color:var(--text-2);margin:6px auto 0}.auth-perks{color:var(--text-3);letter-spacing:.02em;margin-top:10px;font-size:.8rem}.auth-card{animation:rise .5s 50ms var(--ease-out) both;border-radius:28px;padding:16px}@keyframes rise{0%{opacity:0;transform:translateY(14px)}}.tabs{background:#00000040;border-radius:16px;grid-template-columns:1fr 1fr;gap:4px;margin-bottom:18px;padding:4px;display:grid}.tab{min-height:44px;color:var(--text-2);background:0 0;border:0;border-radius:12px;font-weight:500}.tab[aria-selected=true]{background:var(--surface-3);color:var(--text)}.auth-form{gap:14px;display:grid}.course-pick{border:0;min-width:0;margin:0;padding:0}.field-label{color:var(--text-2);margin-bottom:8px;padding:0;font-size:.9rem;font-weight:500;display:block}.field-hint{color:var(--text-3);margin-top:6px;font-size:.78rem}.course-cards{gap:8px;display:grid}.course-card{border:1.5px solid var(--border);background:rgba(var(--lift-rgb), .035);text-align:left;border-radius:18px;align-items:center;gap:12px;min-height:66px;padding:10px 14px;transition:border-color .15s,background-color .15s;display:flex}.course-card[aria-checked=true],.course-option[aria-checked=true]{border-color:var(--violet);background:rgba(var(--accent-rgb), .14)}.course-glyph{background:var(--surface-2);border-radius:14px;flex:none;place-items:center;width:42px;height:42px;font-size:1.1rem;font-weight:600;display:grid}.course-card[aria-checked=true] .course-glyph,.course-option[aria-checked=true] .course-glyph{background:var(--grad);color:#fff}.course-glyph.sm{border-radius:10px;width:32px;height:32px;font-size:.95rem}.course-text{flex-direction:column;flex:1;min-width:0;display:flex}.course-title{font-weight:600}.course-sub{color:var(--text-2);font-size:.82rem}.course-radio{border:2px solid rgba(var(--lift-rgb), .25);border-radius:50%;flex:none;width:22px;height:22px;transition:all .15s}.course-card[aria-checked=true] .course-radio{border-color:var(--violet);background:var(--violet);box-shadow:inset 0 0 0 4px #1b1533}.form-error-slot:empty{display:none}.form-error{color:var(--rose);background:#fb71851a;border-radius:12px;align-items:flex-start;gap:8px;padding:10px 12px;font-size:.9rem;display:flex}.form-error svg{flex:none;margin-top:2px}.auth-note{color:var(--text-3);text-align:center;font-size:.8rem}.home{min-height:calc(100dvh - var(--safe-t));padding-bottom:calc(14px + var(--safe-b));flex-direction:column;display:flex}.home-top{justify-content:space-between;align-items:center;gap:12px;padding-top:14px;display:flex}.level-chip{min-width:0;min-height:48px;color:var(--text);border-radius:16px;align-items:center;gap:12px;text-decoration:none;display:flex}.level-chip-text{flex-direction:column;gap:1px;min-width:0;display:flex}.level-chip-title{font-size:1.08rem;font-weight:600;line-height:1.2}.level-chip-sub{color:var(--text-2);white-space:nowrap;font-variant-numeric:tabular-nums;font-size:.78rem}.level-chip .xp-bar{width:132px;height:5px;margin-top:4px}.home-goal{flex-direction:column;flex:1;justify-content:center;align-items:center;min-height:300px;padding:18px 0 14px;display:flex}.ring-num{letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:3.9rem;font-weight:700;line-height:1.05}.ring-unit{color:var(--text-2);font-size:.95rem}.ring-sub{color:var(--text-3);font-variant-numeric:tabular-nums;margin-top:3px;font-size:.85rem}.ring-check{background:var(--grad-lime);color:#172405;border-radius:50%;place-items:center;width:54px;height:54px;display:grid;box-shadow:0 0 34px -8px #a3e635b3}.ring-done{color:var(--lime);margin-top:10px;font-size:1.02rem;font-weight:600;line-height:1.3}.goal-ring.is-rest .ring-done{color:var(--text-2);margin-top:0}.resume-chip{background:rgba(var(--accent-rgb), .14);border:1px solid rgba(var(--accent-rgb), .35);min-height:44px;color:var(--text);animation:rise .4s var(--ease-out) both;border-radius:999px;align-items:center;gap:8px;margin-top:12px;padding:0 16px 0 8px;font-size:.92rem;font-weight:500;text-decoration:none;display:inline-flex}.resume-icon{background:var(--grad);color:#fff;border-radius:50%;place-items:center;width:28px;height:28px;display:grid}.resume-deck{color:var(--text-3);font-size:.8rem}.goal-hint{min-height:1.45em;color:var(--text-2);margin-top:12px;font-size:.95rem}.goal-hint.is-done{color:var(--lime)}.decks{gap:12px;margin-bottom:16px;display:grid}.deck-btn{border:1px solid var(--border);background:linear-gradient(180deg, rgba(var(--lift-rgb), .065), rgba(var(--lift-rgb), .03));min-height:94px;color:var(--text);isolation:isolate;transition:transform .14s var(--ease-out), filter .15s;animation:rise .45s var(--ease-out) both;border-radius:26px;align-items:center;gap:14px;padding:16px 16px 16px 18px;text-decoration:none;display:flex;position:relative;overflow:hidden}.deck-learn{animation-delay:60ms}a.deck-btn:active{transform:scale(.975)}.deck-btn.is-primary{border-color:rgba(var(--lift-rgb), .18);background:var(--grad);box-shadow:0 18px 40px -18px rgba(var(--accent-deep-rgb), .95), inset 0 1px 0 #ffffff40}.deck-btn.is-primary:after{content:"";z-index:-1;background:radial-gradient(260px 110px at 20% -30%, rgba(var(--lift-rgb), .16), transparent 70%), linear-gradient(90deg, #140a3c00 55%, #140a3c2e);position:absolute;inset:0}@media (hover:hover){a.deck-btn:hover{filter:brightness(1.08)}}.deck-icon{border-radius:18px;flex:none;place-items:center;width:54px;height:54px;display:grid}.deck-review .deck-icon{background:rgba(var(--accent-rgb), .18);color:var(--violet-2)}.deck-learn .deck-icon{background:rgba(var(--accent-2-rgb), .14);color:var(--cyan)}.deck-btn.is-primary .deck-icon{background:rgba(var(--lift-rgb), .2);color:#fff}.deck-text{flex-direction:column;flex:1;min-width:0;display:flex}.deck-name{font-size:1.32rem;font-weight:600;line-height:1.25}.deck-sub{color:var(--text-2);font-size:.86rem}.deck-btn.is-primary .deck-sub{color:#ffffffd1}.deck-count{font-variant-numeric:tabular-nums;letter-spacing:-.02em;font-size:2.3rem;font-weight:700;line-height:1}.deck-chev{opacity:.55;flex:none;margin-left:-6px}.deck-btn.is-done{background:rgba(var(--lift-rgb), .025);border-style:dashed;border-color:rgba(var(--lift-rgb), .1);min-height:76px}.deck-btn.is-done .deck-icon{width:46px;height:46px;color:var(--lime);background:#a3e6351f;border-radius:15px}.deck-btn.is-done .deck-name{color:var(--text-2);font-size:1.1rem}.deck-btn.is-done .deck-sub{color:var(--lime);opacity:.85}.deck-btn.is-loading{opacity:.6}.home-error{border-radius:var(--radius);color:var(--text-2);justify-items:center;gap:12px;margin-bottom:16px;padding:18px;display:grid}.home-links{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.home-link{background:var(--surface);border:1px solid var(--border);min-height:70px;color:var(--text-2);border-radius:20px;flex-direction:column;justify-content:center;align-items:center;gap:4px;font-size:.8rem;font-weight:500;text-decoration:none;transition:transform .12s,background-color .15s;display:flex}.home-link:active{transform:scale(.96)}@media (hover:hover){.home-link:hover{background:var(--surface-2);color:var(--text)}}.home-link-icon{color:var(--text);display:grid}.home-link-label{text-align:center;line-height:1.2}.study{min-height:calc(100dvh - var(--safe-t));flex-direction:column;display:flex}.study-header{align-items:center;gap:12px;padding-top:10px;display:flex}.study-close{background:var(--surface-2);border:1px solid var(--border);width:44px;height:44px;color:var(--text)}.round-bar{flex:1;grid-template-columns:repeat(10,1fr);gap:4px;display:grid}.round-seg{background:rgba(var(--lift-rgb), .08);border-radius:999px;height:10px;transition:background-color .2s}.round-seg.is-on{background:linear-gradient(90deg, var(--violet), var(--cyan));box-shadow:0 0 10px rgba(var(--accent-2-rgb), .35)}.round-seg.is-last{animation:seg-pop .25s var(--ease-spring)}@keyframes seg-pop{0%{transform:scaleY(.4)}}.round-count{text-align:right;min-width:40px;color:var(--text-2);font-variant-numeric:tabular-nums;font-weight:600}.deck-chip-left{border-left:1px solid var(--border-strong);color:var(--text-3);font-variant-numeric:tabular-nums;margin-left:4px;padding-left:8px}.study-sub{justify-content:space-between;align-items:center;gap:8px;min-height:40px;margin:6px 0 4px;display:flex}.study-sub-right{align-items:center;gap:8px;display:flex}.deck-chip{background:var(--surface);border:1px solid var(--border);height:30px;color:var(--text-2);border-radius:999px;align-items:center;gap:6px;padding:0 12px 0 10px;font-size:.85rem;display:inline-flex}.deck-theme-review .deck-chip svg{color:var(--violet-2)}.deck-theme-learn .deck-chip svg{color:var(--cyan)}.combo{height:30px;color:var(--ink-amber,#fde047);animation:pop .38s var(--ease-spring);background:linear-gradient(120deg,#facc1529,#fb923c29);border:1px solid #facc1552;border-radius:999px;align-items:center;gap:4px;padding:0 12px 0 9px;display:inline-flex}.combo svg{filter:drop-shadow(0 0 6px #facc15b3)}.combo-x{letter-spacing:.02em;font-variant-numeric:tabular-nums;font-size:.92rem;font-weight:700}.combo.is-hot{color:var(--ink-amber,#fef08a);border-color:#fb923c8c;box-shadow:0 0 18px -4px #fb923c99}.combo-label{opacity:.85;font-size:.78rem;font-weight:500}@keyframes pop{0%{opacity:0;transform:scale(.6)}60%{opacity:1;transform:scale(1.12)}}.session-xp{color:var(--lime);font-variant-numeric:tabular-nums;font-size:.85rem;font-weight:600}.study-body{flex-direction:column;flex:1;justify-content:center;padding:4px 0 8px;display:flex;position:relative}.study-center{text-align:center;align-items:center;gap:14px}.study-card{text-align:center;background:radial-gradient(420px 220px at 50% -10%, rgba(var(--accent-rgb), .14), transparent 70%), linear-gradient(180deg, rgba(var(--lift-rgb), .07), rgba(var(--lift-rgb), .03));border:1px solid rgba(var(--lift-rgb), .09);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);min-height:clamp(300px,54dvh,480px);animation:card-in .32s var(--ease-out);border-radius:30px;flex-direction:column;justify-content:center;align-items:center;padding:58px 20px 26px;transition:opacity .18s,transform .18s;display:flex;position:relative;box-shadow:0 30px 60px -30px #000c}.study-card:before{content:"";border-radius:inherit;background:linear-gradient(160deg, rgba(var(--accent-rgb), .55), transparent 35%, transparent 65%, rgba(var(--accent-2-rgb), .35));-webkit-mask-composite:xor;pointer-events:none;padding:1px;position:absolute;inset:0;-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor,source-over;mask:linear-gradient(#000 0 0) content-box exclude,linear-gradient(#000 0 0)}.study-card.is-hidden{cursor:pointer}.study-card.is-leaving{opacity:.45;transform:scale(.985)}.study-card.skeleton{animation:1.4s ease-in-out infinite shimmer}@keyframes card-in{0%{opacity:0;transform:translateY(18px)scale(.97)}}.card-tags{gap:6px;display:flex;position:absolute;top:16px;left:16px;right:16px}.tag{background:rgba(var(--lift-rgb), .08);color:var(--text-2);border-radius:999px;padding:3px 11px;font-size:.75rem;font-weight:500}.tag-new{background:rgba(var(--accent-2-rgb), .14);color:var(--cyan)}.face{flex-direction:column;align-items:center;gap:8px;width:100%;display:flex}.face-back{animation:reveal .28s var(--ease-out)}@keyframes reveal{0%{opacity:0;transform:translateY(12px)}}.card-divider{border:0;border-top:1px solid rgba(var(--lift-rgb), .08);width:100%;margin:14px 0 10px}.target-word{flex-direction:column;align-items:center;gap:2px;display:flex}.target-line{flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;display:flex}.target-text{letter-spacing:-.01em;word-break:break-word;font-size:2.2rem;font-weight:600;line-height:1.25}.target-word.is-big .target-text{font-size:clamp(2.5rem,11.5vw,3.4rem)}.target-text:lang(th){letter-spacing:0;line-height:1.55}.target-word.is-big .target-text:lang(th){font-size:clamp(2.6rem,12vw,3.6rem)}.rom{color:var(--text-2);font-size:1.1rem}.native-word{font-size:1.55rem;font-weight:500;line-height:1.4}.native-word.is-prompt{font-size:clamp(2rem,9.5vw,2.7rem);font-weight:600}.word-visual{object-fit:contain;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;flex:none;display:block}.word-emoji{place-items:center;font-family:Apple Color Emoji,Segoe UI Emoji,Noto Color Emoji,sans-serif;line-height:1;display:grid}.word-visual-lg{filter:drop-shadow(0 10px 24px #0006);width:112px;height:112px;font-size:88px}.word-visual-md{filter:drop-shadow(0 8px 18px #00000059);width:80px;height:80px;font-size:62px}.word-visual-sm{width:40px;height:40px;font-size:30px}.word-initial{color:var(--ink-accent,#e9e3ff);background:radial-gradient(120% 90% at 20% 0%, rgba(var(--accent-rgb), .38), transparent 60%), linear-gradient(145deg, rgba(var(--indigo-rgb), .3), rgba(var(--accent-2-rgb), .14));border:1px solid rgba(var(--accent-rgb), .32);filter:none;text-transform:none;border-radius:28%;place-items:center;font-weight:600;line-height:1;display:grid;box-shadow:inset 0 1px #ffffff1f}.word-visual-sm.word-initial{border-radius:12px;font-size:1.15rem}.word-visual-md.word-initial{font-size:2.3rem}.word-visual-lg.word-initial{font-size:3.2rem}.word-initial:lang(th){padding-top:.08em}.example{border:1px solid rgba(var(--lift-rgb), .05);text-align:left;background:#00000040;border-radius:18px;width:100%;margin-top:12px;padding:12px 14px}.example-line{justify-content:space-between;align-items:center;gap:8px;display:flex}.example-target{font-size:1.08rem;font-weight:500}.example-rom{color:var(--text-2);font-size:.9rem}.example-native{color:var(--text-2);margin-top:2px;font-size:.96rem}.tap-hint{color:var(--text-3);margin-top:22px;font-size:.88rem;animation:2.4s ease-in-out infinite breathe}.floats{pointer-events:none;z-index:5;width:0;height:0;position:absolute;bottom:22px;left:50%}.xp-float{white-space:nowrap;color:var(--text-2);text-shadow:0 2px 12px #0009;animation:float-up 1.05s var(--ease-out) forwards;font-size:1.5rem;font-weight:700;position:absolute;bottom:0;left:0}.xp-float.is-good{color:var(--lime);text-shadow:0 0 18px #a3e6358c,0 2px 10px #00000080}@keyframes float-up{0%{opacity:0;transform:translate(-50%,12px)scale(.7)}18%{opacity:1;transform:translate(-50%)scale(1.12)}34%{transform:translate(-50%,-10px)scale(1)}to{opacity:0;transform:translate(-50%,-80px)scale(1)}}.study-actions{z-index:6;padding:18px 16px calc(14px + var(--safe-b));background:linear-gradient(to top, rgba(var(--ground-rgb), .9) 45%, rgba(var(--ground-rgb), 0));margin:0 -16px;position:sticky;bottom:0}.btn-reveal{border-radius:22px;min-height:66px;font-size:1.15rem}.ratings{animation:reveal .22s var(--ease-out);grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.rate{border:1px solid color-mix(in srgb, var(--c) 34%, transparent);background:linear-gradient(180deg, color-mix(in srgb, var(--c) 18%, transparent), color-mix(in srgb, var(--c) 8%, transparent));min-height:70px;color:var(--c);border-radius:20px;flex-direction:column;justify-content:center;align-items:center;gap:0;padding:6px 2px;transition:transform .1s,opacity .15s,filter .15s;display:flex;position:relative}.rate:active:not(:disabled){transform:scale(.94)}@media (hover:hover){.rate:hover:not(:disabled){filter:brightness(1.2)}}.rate:disabled{opacity:.5}.rate-again{--c:var(--again)}.rate-hard{--c:var(--hard)}.rate-good{--c:var(--good)}.rate-easy{--c:var(--easy)}.rate-label{font-size:1.12rem;font-weight:600;line-height:1.3}.ratings-2{grid-template-columns:1fr 1.25fr;gap:10px}.ratings-2 .rate{border-radius:22px;flex-flow:wrap;gap:2px 8px;min-height:68px}.ratings-2 .rate-label{font-size:1.2rem}.ratings-2 .rate-interval{text-align:center;color:var(--text-3);flex-basis:100%;font-size:.7rem}.rate-notYet{--c:#c4c1d9;background:var(--surface-2);border-color:var(--border-strong)}.rate-gotIt{--c:#fff;color:#10230a;background:linear-gradient(120deg,#bef264,#4ade80);border-color:#bef26499;box-shadow:0 12px 28px -14px #a3e635e6,inset 0 1px #fff6}.rate-gotIt .rate-interval{color:rgba(var(--raised-rgb,16, 35, 10), .65)}.hold-bar{animation:reveal .2s var(--ease-out);align-items:center;gap:12px;display:flex}.hold-note{color:var(--text-2);flex:1;font-size:.95rem;line-height:1.35}.hold-next{flex:none;min-width:132px}.study-card.is-holding{border-color:rgba(var(--accent-rgb), .35)}.rate-interval{color:var(--text-2);white-space:nowrap;font-variant-numeric:tabular-nums;font-size:.74rem}.kbd-hint,.kbd-legend{display:none}@media (hover:hover) and (pointer:fine){.tap-hint{display:none}.kbd-hint{display:inline-block}.rate .kbd-hint{opacity:.5;padding:0 4px;font-size:.56rem;line-height:1.5;position:absolute;top:4px;right:5px}.btn-reveal .kbd-hint{background:rgba(var(--lift-rgb), .18);color:#fff;border-color:rgba(var(--lift-rgb), .3)}.kbd-legend{text-align:center;color:var(--text-3);margin-top:10px;font-size:.76rem;display:block}}.empty-deck{padding:24px 0 calc(16px + var(--safe-b))}.empty-icon{background:rgba(var(--accent-rgb), .14);width:88px;height:88px;color:var(--violet-2);border-radius:30px;place-items:center;margin-bottom:4px;display:grid}.empty-icon.is-done{color:var(--lime);background:#a3e6351f;box-shadow:0 0 40px -6px #a3e63559}.empty-title{font-size:1.6rem;font-weight:600;line-height:1.3}.empty-body{color:var(--text-2);max-width:32ch}.countdown{font-variant-numeric:tabular-nums;background:var(--grad);color:#0000;-webkit-background-clip:text;background-clip:text;font-size:2.6rem;font-weight:700}.stack-actions{gap:10px;width:100%;margin-top:18px;display:grid}.summary{min-height:calc(100dvh - var(--safe-t));padding:12px 0 calc(16px + var(--safe-b));flex-direction:column;display:flex;position:relative;overflow:hidden}.summary-hero{text-align:center;animation:rise .45s var(--ease-out) both;margin-top:auto;padding:26px 0 18px;position:relative}.summary-sub{color:var(--text-2);font-size:.92rem}.summary-title{font-size:2rem;font-weight:700;line-height:1.3}.summary-title.is-perfect{letter-spacing:.04em;background:linear-gradient(120deg, #e9d5ff, var(--cyan));color:#0000;filter:drop-shadow(0 8px 30px rgba(var(--accent-deep-rgb), .45));-webkit-background-clip:text;background-clip:text;font-size:3rem}.summary-note{color:var(--text-2);margin-top:4px;font-size:.92rem}.record-chip{color:var(--ink-amber,#fde047);letter-spacing:.02em;background:#facc151f;border:1px solid #facc1559;border-radius:999px;margin-top:12px;padding:4px 12px;font-size:.82rem;font-weight:600;display:inline-block}.stat-tile.is-xp .stat-num{color:var(--lime)}.missed{border-radius:var(--radius);animation:rise .45s .12s var(--ease-out) both;margin-bottom:12px;padding:14px 6px 6px}.missed-title{color:var(--text-2);padding:0 12px 6px;font-size:.88rem;font-weight:500}.missed-list{margin:0;padding:0;list-style:none}.missed-row{text-align:left;background:0 0;border:0;border-radius:16px;align-items:center;gap:12px;width:100%;min-height:56px;padding:6px 12px;display:flex}.missed-row:active{background:rgba(var(--lift-rgb), .06)}.missed-text{flex-direction:column;flex:1;min-width:0;display:flex}.missed-target{font-size:1.05rem;font-weight:600;line-height:1.3}.missed-native{color:var(--text-2);font-size:.86rem}.missed-speaker{color:var(--text-3);flex:none}.summary-goal-label{color:var(--text-2)}.summary-stats,.stat-row{grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:12px;display:grid}.summary-stats{animation:rise .45s 80ms var(--ease-out) both}.stat-tile{background:var(--surface);border:1px solid var(--border);text-align:center;border-radius:20px;flex-direction:column;align-items:center;padding:14px 6px 12px;display:flex}.stat-num{font-variant-numeric:tabular-nums;align-items:center;gap:2px;font-size:1.7rem;font-weight:700;line-height:1.15;display:inline-flex}.stat-zap{color:var(--ink-amber,#fde047)}.stat-label{color:var(--text-2);font-size:.78rem}.stat-icon{color:var(--text-3);margin-bottom:4px}.stat-tile.is-flame .stat-icon{color:var(--flame);filter:drop-shadow(0 0 8px #fb923c99)}.summary-level{border-radius:var(--radius);animation:rise .45s .14s var(--ease-out) both;align-items:center;gap:14px;padding:16px;display:flex}.summary-level-body{flex:1;gap:8px;min-width:0;display:grid}.summary-level-line{justify-content:space-between;align-items:center;gap:8px;display:flex}.summary-level-title{font-weight:600}.summary-level-next{color:var(--text-3);font-size:.8rem}.chip-levelup{background:var(--grad-lime);color:#172405;border-radius:999px;flex:none;padding:2px 10px;font-size:.75rem;font-weight:600}.summary-goal{color:var(--text-2);animation:rise .45s .2s var(--ease-out) both;align-items:center;gap:10px;margin:14px 4px 0;font-size:.88rem;display:flex}.summary-goal svg{color:var(--lime);flex:none}.summary-goal .xp-bar{flex:1;height:6px}.summary-goal-num{font-variant-numeric:tabular-nums;color:var(--text)}.summary-actions{margin-top:auto;padding-top:22px}.moment{z-index:100;cursor:pointer;place-items:center;animation:1.15s forwards moment-life;display:grid;position:fixed;inset:0}.moment-burst{border:2px solid rgba(var(--accent-rgb), .7);width:180px;height:180px;animation:burst .7s var(--ease-out) forwards;border-radius:50%;margin:-90px 0 0 -90px;position:absolute;top:44%;left:50%}.moment-goal .moment-burst{border-color:#bef264b3}@keyframes burst{0%{opacity:1;transform:scale(.3)}to{opacity:0;transform:scale(2.2)}}.moment-flash{background-color:rgba(var(--ground-rgb), .86);background-image:radial-gradient(circle at 50% 44%, rgba(var(--accent-rgb), .42), rgba(var(--ground-rgb), .6) 62%);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:absolute;inset:0}.moment-goal .moment-flash{background-image:radial-gradient(circle at 50% 44%, #a3e6353d, rgba(var(--ground-rgb), .6) 62%)}.moment-body{z-index:3;text-align:center;animation:moment-pop .55s var(--ease-spring) both;flex-direction:column;align-items:center;gap:6px;padding:0 24px;display:flex;position:relative}.moment-level .moment-title{letter-spacing:.06em}.moment-title{white-space:nowrap;background:linear-gradient(120deg, #e9d5ff, var(--cyan));color:#0000;-webkit-background-clip:text;background-clip:text;margin-top:14px;font-size:clamp(1.7rem,7.6vw,2.3rem);font-weight:700;line-height:1.2}.moment-goal .moment-title{background-image:linear-gradient(120deg,#d9f99d,#4ade80)}.moment-sub{color:var(--text);font-size:1.1rem}.moment-goal-icon{background:var(--grad-lime);color:#172405;border-radius:50%;place-items:center;width:104px;height:104px;display:grid;box-shadow:0 0 60px -4px #a3e63599}@keyframes moment-life{0%{opacity:0}12%{opacity:1}80%{opacity:1}to{opacity:0;visibility:hidden}}@keyframes moment-pop{0%{opacity:0;transform:scale(.75)}}.option-pair{grid-template-columns:1fr 1fr;gap:10px;display:grid}.option-card{border:1.5px solid var(--border);background:rgba(var(--lift-rgb), .035);text-align:left;border-radius:20px;flex-direction:column;align-items:flex-start;gap:2px;min-height:96px;padding:14px;transition:border-color .15s,background-color .15s;display:flex}.option-card[aria-checked=true]{border-color:var(--violet);background:linear-gradient(160deg, rgba(var(--accent-rgb), .22), rgba(var(--accent-2-rgb), .06))}.option-preview{gap:4px;width:100%;margin-bottom:8px;display:flex}.option-preview i{background:rgba(var(--lift-rgb), .16);border-radius:5px;flex:1;height:12px}.option-card[aria-checked=true] .option-preview i:last-child{background:var(--grad-lime)}.option-title{font-weight:600}.option-sub{color:var(--text-2);font-size:.78rem;line-height:1.35}.profile-hero{grid-template-columns:auto 1fr;align-items:center;gap:8px 16px;padding:6px 4px 18px;display:grid}.profile-name{word-break:break-word;font-size:1.5rem;font-weight:700;line-height:1.2}.profile-title{color:var(--violet-2);font-weight:500}.profile-xp{grid-column:1/-1;margin-top:8px}.profile-xp .xp-bar{height:12px}.profile-xp-line{font-variant-numeric:tabular-nums;justify-content:space-between;gap:8px;margin-top:8px;font-size:.85rem;display:flex}.week{grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;margin:16px 0 0;padding:0;list-style:none;display:grid}.week-day{flex-direction:column;align-items:center;gap:6px;min-width:0;display:flex}.week-label{color:var(--text-3);white-space:nowrap;font-size:.72rem}.week-day.is-today .week-label{color:var(--text);font-weight:600}.week-dot{aspect-ratio:1;border-radius:50%;place-items:center;width:100%;max-width:38px;height:auto;display:grid;position:relative}.week-dot:before{content:"";background:conic-gradient(var(--violet), var(--cyan) calc(var(--frac) * 1turn), rgba(var(--lift-rgb), .08) 0);border-radius:50%;position:absolute;inset:0;-webkit-mask:radial-gradient(circle,#0000 14px,#000 15px);mask:radial-gradient(circle,#0000 14px,#000 15px)}.week-day.is-met .week-dot{background:var(--grad-lime);color:#172405;box-shadow:0 0 18px -4px #a3e63599}.week-day.is-met .week-dot:before{display:none}.week-day.is-today .week-dot{outline:2px solid rgba(var(--lift-rgb), .22);outline-offset:3px}.week-day.is-rest .week-dot:before{border:1.5px dashed rgba(var(--lift-rgb), .22);background:0 0;-webkit-mask:none;mask:none}.week-xp{color:var(--text-3);font-variant-numeric:tabular-nums;font-size:.7rem}.words-progress{gap:16px;margin-top:14px;display:grid}.wp-line{align-items:baseline;gap:6px;margin-bottom:8px;display:flex}.wp-num{font-variant-numeric:tabular-nums;font-size:1.7rem;font-weight:700;line-height:1}.wp-of{color:var(--text-3);font-variant-numeric:tabular-nums}.wp-label{color:var(--text-2);margin-left:auto;font-size:.86rem}.ach{background:rgba(var(--lift-rgb), .035);border:1px solid rgba(var(--lift-rgb), .06);border-radius:20px;flex-direction:column;gap:2px;padding:14px;display:flex}.ach.is-unlocked{background:linear-gradient(160deg, rgba(var(--accent-rgb), .16), rgba(var(--accent-2-rgb), .05));border-color:rgba(var(--accent-rgb), .25)}.ach-icon{background:rgba(var(--lift-rgb), .06);width:48px;height:48px;color:var(--text-3);border-radius:16px;place-items:center;margin-bottom:8px;display:grid;position:relative}.ach.is-unlocked .ach-icon{background:var(--grad);color:#fff;box-shadow:0 8px 22px -8px rgba(var(--accent-deep-rgb), .9)}.ach-lock{background:var(--bg-raised);border:2px solid var(--bg);width:20px;height:20px;color:var(--text-2);border-radius:50%;place-items:center;display:grid;position:absolute;bottom:-5px;right:-5px}.ach-name{font-weight:600;line-height:1.3}.ach.is-locked .ach-name{color:var(--text-2)}.ach-desc{color:var(--text-3);font-size:.78rem;line-height:1.35}.ach-progress{align-items:center;gap:8px;margin-top:auto;padding-top:10px;display:flex}.ach-progress .xp-bar{flex:1;height:5px}.ach-count{color:var(--text-3);font-variant-numeric:tabular-nums;font-size:.72rem}.hm{--hm:var(--hm-0);fill:var(--hm)}.hm-1{--hm:var(--hm-1)}.hm-2{--hm:var(--hm-2)}.hm-3{--hm:var(--hm-3)}.hm-4{--hm:var(--hm-4)}.heatmap-caption{color:var(--text-3);flex-wrap:wrap;justify-content:space-between;gap:6px 12px;margin-top:10px;font-size:.76rem;display:flex}.heatmap-legend{align-items:center;gap:3px;display:inline-flex}.words-toolbar{top:calc(64px + var(--safe-t) - var(--safe-t));z-index:15;background:linear-gradient(180deg, rgba(var(--ground-rgb), .96) 80%, rgba(var(--ground-rgb), 0));margin:-8px -16px 0;padding:0 16px 2px;position:sticky}.search{position:relative}.search-icon{color:var(--text-3);pointer-events:none;position:absolute;top:50%;left:15px;transform:translateY(-50%)}.search-input{padding-left:46px;padding-right:50px}.search-input::-webkit-search-cancel-button{display:none}.search-clear{position:absolute;top:50%;right:2px;transform:translateY(-50%)}.chips{scrollbar-width:none;gap:8px;margin:0 -16px;padding:10px 16px;display:flex;overflow-x:auto}.chips::-webkit-scrollbar{display:none}.chip{border:1px solid var(--border);background:var(--surface);min-height:40px;color:var(--text-2);white-space:nowrap;border-radius:999px;flex:none;align-items:center;gap:6px;padding:0 14px;font-size:.9rem;display:inline-flex}.chip[aria-pressed=true]{background:rgba(var(--accent-rgb), .2);border-color:rgba(var(--accent-rgb), .6);color:var(--text)}.words-count{color:var(--text-3);margin:2px 4px 10px;font-size:.8rem}.word-list{border-radius:var(--radius);margin:0;padding:0;list-style:none;overflow:hidden}.word-list li+li{border-top:1px solid rgba(var(--lift-rgb), .05)}.word-row{text-align:left;width:100%;min-height:66px;color:var(--text);background:0 0;border:0;align-items:center;gap:12px;padding:10px 14px;display:flex}.word-row:active{background:rgba(var(--lift-rgb), .05)}@media (hover:hover){.word-row:hover{background:rgba(var(--lift-rgb), .04)}}.wr-text{flex-direction:column;flex:1;min-width:0;display:flex}.wr-main{flex-wrap:wrap;align-items:baseline;gap:0 8px;font-size:1.06rem;font-weight:500;line-height:1.35;display:flex}.wr-rom{color:var(--text-3);font-size:.8rem;font-weight:400}.wr-sub{color:var(--text-2);font-size:.86rem;line-height:1.35}.wr-speaker{color:var(--text-3);flex:none}.badge{white-space:nowrap;border-radius:999px;flex:none;padding:2px 9px;font-size:.72rem;font-weight:500}.badge-new{background:rgba(var(--lift-rgb), .06);color:var(--text-3)}.badge-learning{color:var(--flame);background:#fb923c24}.badge-review{background:rgba(var(--accent-rgb), .18);color:var(--violet-2)}.badge-mature{color:var(--lime);background:#a3e63524}.word-row-skeleton{border-radius:18px;height:66px;margin-bottom:8px}.empty{text-align:center;color:var(--text-3);padding:40px 0}.setting{border-top:1px solid rgba(var(--lift-rgb), .06);justify-content:space-between;align-items:center;gap:16px;padding:14px 0;display:flex}.panel-title+.setting{margin-top:8px}.setting:last-child{padding-bottom:2px}.setting-stack{flex-direction:column;align-items:stretch;gap:10px}.panel>.setting-stack:first-child{border-top:0;padding:0}.setting-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.setting-head-end{justify-content:flex-end}.setting-text{flex-direction:column;gap:2px;min-width:0;display:flex}.setting-label{font-weight:500}.setting-hint{color:var(--text-3);font-size:.82rem}.course-switch{grid-template-columns:1fr 1fr;gap:8px;display:grid}.course-option{border:1.5px solid var(--border);background:rgba(var(--lift-rgb), .035);text-align:left;border-radius:16px;align-items:center;gap:10px;min-height:54px;padding:0 12px;font-size:.95rem;line-height:1.25;display:flex}.stepper{align-items:center;gap:6px;display:flex}.stepper-btn{background:var(--surface-2);width:44px;height:44px;color:var(--text)}.stepper-value{text-align:center;font-variant-numeric:tabular-nums;min-width:40px;font-size:1.25rem;font-weight:700}.credits{color:var(--text-3);padding:10px 4px 0;font-size:.78rem}.credits-title{color:var(--text-2);margin-bottom:4px;font-size:.8rem;font-weight:500}.credits ul{margin:0;padding-left:18px}.credits a{color:var(--text-2)}.dialog{border:1px solid var(--border-strong);background:var(--bg-raised);width:min(420px,100vw - 32px);color:var(--text);border-radius:24px;padding:0;box-shadow:0 30px 80px #0009}.dialog[open]{animation:rise .22s var(--ease-out)}.dialog::backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#05040cb3}.dialog-body{padding:22px}.dialog-body p{color:var(--text-2);margin:8px 0 20px}.dialog-title{font-size:1.2rem;font-weight:600}.dialog-actions{justify-content:flex-end;gap:8px;display:flex}.toast-region{left:50%;bottom:calc(16px + var(--safe-b));z-index:200;pointer-events:none;width:min(448px,100% - 32px);position:fixed;transform:translate(-50%)}:root:has(.summary) .toast-region{top:calc(16px + var(--safe-t));bottom:auto}.toast{background:var(--bg-raised);border:1px solid var(--border-strong);pointer-events:auto;animation:rise .25s var(--ease-out);border-radius:18px;align-items:center;gap:6px;padding:6px 6px 6px 16px;display:flex;box-shadow:0 16px 40px #0000008c}.toast-msg{flex:1;font-size:.92rem}.toast-action{min-height:44px;color:var(--cyan);background:0 0;border:0;border-radius:12px;padding:0 12px;font-weight:600}.toast-close{width:44px;height:44px}.xp-bar-pending{background:repeating-linear-gradient(-45deg, rgba(var(--accent-2-rgb), .62) 0 3px, rgba(var(--accent-2-rgb), .16) 3px 6px);box-shadow:inset 1px 0 0 rgba(var(--ground-rgb), .6);transition:left .6s var(--ease-out), width .6s var(--ease-out);position:absolute;top:0;bottom:0}.xp-bar.is-locked .xp-bar-fill{background:linear-gradient(90deg, var(--violet), var(--cyan) 70%, #bef264)}.xp-swatch{vertical-align:middle;border-radius:3px;flex:none;width:14px;height:7px;display:inline-block}.xp-swatch-confirmed{background:var(--grad)}.xp-swatch-pending{background:repeating-linear-gradient(-45deg, rgba(var(--accent-2-rgb), .75) 0 2px, rgba(var(--accent-2-rgb), .2) 2px 4px)}.pending-line{color:var(--text-2);white-space:nowrap;font-variant-numeric:tabular-nums;align-items:center;gap:6px;font-size:.74rem;display:inline-flex}.pending-line b{color:#a5f3fc;font-weight:600}button.pending-line{text-align:left;background:0 0;border:0;min-height:24px;padding:0}.lock-line{color:var(--ink-lime,#d9f99d);white-space:nowrap;align-items:center;gap:5px;font-size:.74rem;display:inline-flex}.xp-float.is-pending{color:#0000;-webkit-text-stroke:1.5px #bef264;text-shadow:none;filter:drop-shadow(0 2px 8px #0009)}.xp-float.is-confirmed{color:var(--lime);-webkit-text-stroke:0;text-shadow:0 0 18px #a3e63599,0 2px 10px #00000080}.xp-float.is-chip{color:#10230a;text-shadow:none;animation:float-up 1.25s .12s var(--ease-out) both, chip-fill .4s .35s ease forwards;background:repeating-linear-gradient(-45deg,#bef2648c 0 4px,#bef26433 4px 8px);border:1.5px solid #bef264;border-radius:999px;padding:3px 12px;font-size:.9rem;font-weight:600;bottom:-40px}@keyframes chip-fill{to{background:#bef264;box-shadow:0 0 22px -4px #a3e635cc}}.study-card.challenge-card{background:radial-gradient(420px 220px at 50% -10%, rgba(var(--accent-2-rgb), .12), transparent 70%), linear-gradient(180deg, rgba(var(--lift-rgb), .07), rgba(var(--lift-rgb), .03));border-color:rgba(var(--accent-2-rgb), .28);cursor:default;min-height:clamp(210px,30dvh,300px);padding:58px 18px 20px}.study-card.challenge-card:before{background:linear-gradient(160deg, rgba(var(--accent-2-rgb), .75), transparent 38%, transparent 62%, rgba(var(--accent-rgb), .45))}.challenge-card.is-correct{border-color:#bef2648c;transition:border-color .18s,box-shadow .25s;box-shadow:0 0 0 1px #bef26440,0 20px 60px -24px #a3e6358c}.challenge-card.is-correct:before{background:linear-gradient(160deg,#bef264e6,#0000 40% 60%,#4ade8099)}.ch-badge{letter-spacing:.12em;height:24px;color:var(--cyan);background:rgba(var(--accent-2-rgb), .1);border:1px solid rgba(var(--accent-2-rgb), .32);border-radius:999px;align-items:center;gap:5px;padding:0 10px 0 8px;font-size:.7rem;font-weight:600;display:inline-flex}.ch-stake{height:24px;color:var(--ink-lime,#d9f99d);white-space:nowrap;background:#a3e63512;border:1px dashed #bef26480;border-radius:999px;align-items:center;margin-left:auto;padding:0 10px;font-size:.74rem;font-weight:600;display:inline-flex}.ch-stake.is-done{color:#10230a;background:#bef264;border-style:solid;transition:background-color .3s,color .3s}.ch-instruction{color:var(--text-2);margin-bottom:4px;font-size:.92rem}.ch-prompt{flex-direction:column;align-items:center;gap:4px;width:100%;display:flex}.ch-prompt .native-word.is-prompt{font-size:clamp(1.9rem,9vw,2.5rem)}.ch-reveal{width:100%;animation:reveal .28s var(--ease-out)}.ch-reveal .card-divider{margin:12px 0 8px}.ch-reveal .face{gap:4px}.ch-reveal .example{margin-top:8px}.ch-options{grid-template-columns:1fr 1fr;gap:10px;margin-top:12px;display:grid}.ch-option{border:1.5px solid var(--border-strong);background:linear-gradient(180deg, rgba(var(--lift-rgb), .08), rgba(var(--lift-rgb), .04));min-height:78px;color:var(--text);text-align:center;word-break:break-word;transition:transform .1s var(--ease-out), opacity .18s, background-color .15s, border-color .15s, box-shadow .2s;animation:rise .3s var(--ease-out) both;border-radius:20px;justify-content:center;align-items:center;gap:8px;padding:10px 12px;font-size:1.22rem;font-weight:500;line-height:1.28;display:flex;position:relative}.ch-option:nth-child(2){animation-delay:30ms}.ch-option:nth-child(3){animation-delay:60ms}.ch-option:nth-child(4){animation-delay:90ms}.ch-option:lang(en){font-size:1.3rem}.ch-option.is-long{font-size:1.02rem}.ch-option:active:not(:disabled){transform:scale(.96)}@media (hover:hover){.ch-option.is-idle:hover{border-color:rgba(var(--accent-2-rgb), .5);background:linear-gradient(180deg, rgba(var(--accent-2-rgb), .12), rgba(var(--lift-rgb), .04))}}.ch-option:disabled{cursor:default}.ch-option.is-pressed{border-color:var(--cyan);background:rgba(var(--accent-2-rgb), .16);box-shadow:0 0 0 4px rgba(var(--accent-2-rgb), .12);transform:scale(.97)}.ch-option.is-waiting{opacity:.6}.ch-option.is-correct,.ch-option.is-answer{color:#10230a;animation:ch-pop .32s var(--ease-spring);background:linear-gradient(120deg,#bef264,#4ade80);border-color:#d9f99de6;font-weight:600;box-shadow:0 14px 30px -14px #a3e635f2}.ch-option.is-answer{animation-duration:.36s}.ch-option.is-dim{opacity:.35}.ch-option.is-picked{color:var(--text-3);border-style:dashed;border-color:rgba(var(--lift-rgb), .16);background:0 0}.ch-option.is-gone{display:none}.ch-option-check{flex:none}@keyframes ch-pop{0%{transform:scale(.94)}60%{transform:scale(1.04)}}.ch-option .kbd-hint{opacity:.55;padding:0 4px;font-size:.56rem;line-height:1.5;position:absolute;top:5px;left:7px}.ch-idle-actions{justify-content:center;display:flex}.ch-skip{border:1px solid var(--border);background:var(--surface);min-height:48px;color:var(--text-2);border-radius:999px;padding:0 22px;font-size:1rem;font-weight:500}.ch-skip:disabled{opacity:.45}.ch-skip.is-pressed{border-color:var(--cyan);color:var(--text)}.ch-feedback{min-height:60px;animation:reveal .2s var(--ease-out);align-items:center;gap:12px;display:flex}.ch-feedback-msg{min-width:0;color:var(--text-2);flex:1;font-size:.98rem;line-height:1.35}.ch-feedback.is-correct .ch-feedback-msg{color:var(--lime);font-size:1.25rem;font-weight:600}.ch-feedback-msg em{color:var(--text);font-style:normal;font-weight:500}.ch-feedback .btn{flex:none;min-width:124px}.ch-next-timer{background:rgba(var(--lift-rgb), .25);transform-origin:0;border-radius:999px;height:3px;animation:linear forwards ch-timer;position:absolute;bottom:6px;left:14px;right:14px}@keyframes ch-timer{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.sheet{width:100%;max-width:480px;max-height:92dvh;color:var(--text);background:0 0;border:0;margin:auto auto 0;padding:0;overflow:visible}.sheet::backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#05040cb8}.sheet[open] .sheet-panel{animation:sheet-up .3s var(--ease-out)}@keyframes sheet-up{0%{opacity:0;transform:translateY(40px)}}.sheet-panel{padding:12px 20px calc(20px + var(--safe-b));background:radial-gradient(360px 180px at 20% 0%, rgba(var(--accent-2-rgb), .14), transparent 70%), var(--bg-raised);border:1px solid var(--border-strong);border-bottom:0;border-radius:28px 28px 0 0;position:relative;box-shadow:0 -20px 60px #00000080}.sheet-grip{background:rgba(var(--lift-rgb), .18);border-radius:999px;width:40px;height:4px;margin:0 auto 14px;display:block}.intro-kicker{background:rgba(var(--accent-2-rgb), .14);color:var(--cyan);border-radius:999px;padding:1px 10px;font-size:.78rem;font-weight:600;display:inline-block}.intro-title{letter-spacing:.08em;margin-top:6px;font-size:1.9rem;font-weight:700;line-height:1.15}.intro-bar{background:rgba(var(--lift-rgb), .08);border-radius:999px;height:10px;margin:14px 0 6px;display:flex;position:relative;overflow:hidden}.intro-bar-solid{background:var(--grad);width:46%}.intro-bar-pending{background:repeating-linear-gradient(-45deg, rgba(var(--accent-2-rgb), .62) 0 3px, rgba(var(--accent-2-rgb), .16) 3px 6px);width:22%}.intro-lines{gap:12px;margin:14px 0 20px;padding:0;list-style:none;display:grid}.intro-lines li{align-items:center;gap:12px;font-size:1rem;line-height:1.4;display:flex}.intro-icon{border-radius:14px;flex:none;place-items:center;width:42px;height:42px;display:grid}.intro-icon.is-cyan{background:rgba(var(--accent-2-rgb), .14);color:var(--cyan)}.intro-icon.is-striped{color:var(--ink-lime,#d9f99d);background:repeating-linear-gradient(-45deg,#bef26433 0 4px,#bef2640f 4px 8px);border:1px dashed #bef26466}.intro-icon.is-violet{background:rgba(var(--accent-rgb), .18);color:var(--violet-2)}.boss-banner{background:radial-gradient(240px 90px at 0% 0%, #bef26429, transparent 70%), linear-gradient(120deg, rgba(var(--accent-rgb), .22), rgba(var(--ground-rgb), .2));min-height:64px;color:var(--text);animation:rise .45s var(--ease-out) both;border:1px solid #bef26459;border-radius:22px;align-items:center;gap:12px;margin-bottom:12px;padding:10px 14px 10px 10px;text-decoration:none;display:flex;position:relative;overflow:hidden}.boss-banner.is-cooldown{border-color:var(--border);background:rgba(var(--lift-rgb), .025);border-style:dashed}a.boss-banner:active{transform:scale(.98)}.boss-icon{background:linear-gradient(140deg, #bef264, var(--cyan));color:#0b0a14;border-radius:14px;flex:none;place-items:center;width:44px;height:44px;display:grid;box-shadow:0 8px 24px -8px #a3e635cc}.boss-banner.is-cooldown .boss-icon{background:var(--surface-2);color:var(--text-3);box-shadow:none}.boss-banner-text{flex-direction:column;flex:1;min-width:0;display:flex}.boss-banner-title{letter-spacing:.02em;font-size:1.08rem;font-weight:700;line-height:1.25}.boss-banner-sub{color:var(--text-2);font-size:.82rem}.boss-banner.is-cooldown .boss-banner-title{color:var(--text-2)}.xp-split{color:var(--text-2);font-variant-numeric:tabular-nums;animation:rise .45s .1s var(--ease-out) both;flex-wrap:wrap;justify-content:center;align-items:center;gap:4px 14px;margin:-2px 0 12px;font-size:.86rem;display:flex}.xp-split span{align-items:center;gap:6px;display:inline-flex}.challenge-chip{border:1px solid rgba(var(--accent-2-rgb), .4);background:rgba(var(--accent-2-rgb), .1);color:#a5f3fc;letter-spacing:.04em;border-radius:999px;align-items:center;gap:6px;margin-top:10px;padding:4px 12px;font-size:.8rem;font-weight:600;display:inline-flex}.challenge-chip.is-perfect{color:var(--ink-lime,#d9f99d);background:#a3e6351f;border-color:#bef2648c}.summary-hero .record-chip+.challenge-chip,.summary-hero .challenge-chip+.record-chip{margin-left:6px}.summary-level{margin-bottom:4px}.summary-level .xp-bar{height:10px}.summary-level-legend{color:var(--text-3);flex-wrap:wrap;gap:2px 12px;font-size:.74rem;display:flex}.summary-level-legend span{align-items:center;gap:5px;display:inline-flex}.boss{min-height:calc(100dvh - var(--safe-t));padding-bottom:calc(14px + var(--safe-b));flex-direction:column;display:flex;position:relative}.boss-top{align-items:center;gap:12px;min-height:54px;padding-top:10px;display:flex}.boss-segs{flex:1;grid-auto-columns:1fr;grid-auto-flow:column;gap:4px;display:grid}.boss-seg{background:rgba(var(--lift-rgb), .08);border-radius:999px;height:10px}.boss-seg.is-right{background:var(--grad-lime)}.boss-seg.is-miss{background:rgba(var(--lift-rgb), .28)}.boss-seg.is-current{box-shadow:inset 0 0 0 2px rgba(var(--accent-2-rgb), .7)}.boss-score{min-width:52px;color:var(--lime);font-variant-numeric:tabular-nums;justify-content:flex-end;align-items:center;gap:4px;font-weight:700;display:inline-flex}.boss-sub{justify-content:space-between;align-items:center;min-height:40px;margin:6px 0 4px;display:flex}.boss-tag{letter-spacing:.1em;height:30px;color:var(--ink-lime,#d9f99d);background:#a3e6351a;border:1px solid #bef26459;border-radius:999px;align-items:center;gap:6px;padding:0 12px 0 10px;font-size:.8rem;font-weight:700;display:inline-flex}.boss-count{color:var(--text-2);font-variant-numeric:tabular-nums;font-size:.88rem}.boss-hero{text-align:center;animation:rise .45s var(--ease-out) both;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:6px;padding:20px 0 10px;display:flex}.boss-title{letter-spacing:.1em;background:linear-gradient(170deg, #f7fee7 10%, #bef264 45%, var(--cyan) 100%);color:#0000;filter:drop-shadow(0 10px 40px #a3e63547);-webkit-background-clip:text;background-clip:text;margin-right:-.1em;font-size:clamp(3.6rem,19vw,5rem);font-weight:700;line-height:1}.boss-subtitle{color:var(--text-2);font-size:1.1rem}.boss-path{align-items:center;gap:10px;margin:26px 0 18px;display:flex}.boss-step{flex-direction:column;align-items:center;gap:6px;width:96px;display:flex}.boss-step-title{color:var(--text-2);font-size:.9rem;line-height:1.2}.boss-step.is-next .boss-step-title{color:var(--text);font-weight:600}.boss-step.is-now .rank-badge{opacity:.7}.boss-arrow{background:linear-gradient(90deg, rgba(var(--lift-rgb), .15), #bef264);width:64px;height:2px;margin-bottom:26px;position:relative}.boss-arrow:after{content:"";border:5px solid #0000;border-left:7px solid #bef264;border-right:0;position:absolute;top:-4px;right:-2px}.boss-rules{text-align:left;border-radius:20px;gap:8px;width:100%;margin:0;padding:14px 16px;list-style:none;display:grid}.boss-rules li{color:var(--text-2);align-items:center;gap:10px;font-size:.95rem;display:flex}.boss-rules li:first-child{color:var(--text);font-weight:500}.boss-rules svg{color:var(--text-3);flex:none}.boss-rules li:first-child svg{color:var(--lime)}.boss-actions{gap:10px;padding-top:16px;display:grid}.boss-body{flex-direction:column;flex:1;justify-content:center;padding:4px 0 8px;display:flex;position:relative}.boss-result{text-align:center;animation:rise .45s var(--ease-out) both;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:4px;padding:24px 0 8px;display:flex}.boss-result-kicker{letter-spacing:.16em;color:var(--lime);margin-top:14px;font-size:1rem;font-weight:700}.boss-result-title{font-size:clamp(2.4rem,12vw,3.2rem);font-weight:700;line-height:1.2}.boss-result.is-pass .boss-result-title{background:linear-gradient(120deg, #f7fee7, #bef264 50%, var(--cyan));color:#0000;filter:drop-shadow(0 8px 30px #a3e63559);-webkit-background-clip:text;background-clip:text}.boss-result-score{font-variant-numeric:tabular-nums;font-size:3rem;font-weight:700;line-height:1.1}.boss-result-score small{color:var(--text-3);font-size:1.6rem}.boss-result-sub{color:var(--text-2);font-size:1.02rem}.boss-dots{gap:8px;margin:14px 0 18px;display:flex}.boss-dots i{border:2px solid rgba(var(--lift-rgb), .22);border-radius:50%;width:14px;height:14px}.boss-dots i.on{background:var(--grad-lime);border-color:#0000;box-shadow:0 0 12px -2px #a3e635b3}.boss-calm{text-align:left;width:100%;color:var(--text-2);border-radius:20px;gap:6px;padding:14px 16px;font-size:.95rem;display:grid}.boss-calm p:first-child{color:var(--text);font-weight:500}.boss-calm .boss-retry{color:#a5f3fc;align-items:center;gap:8px;margin-top:4px;display:flex}.boss-center{text-align:center;color:var(--text-2);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:14px;display:flex}.ch-stage{position:relative}.ch-stage .floats{bottom:30px}.ch-stake-check{margin-right:4px}.ch-option-text{flex-direction:column;align-items:center;min-width:0;display:flex}.ch-option-rom{color:var(--text-2);font-size:.72rem;font-weight:400}.ch-option.is-correct .ch-option-rom,.ch-option.is-answer .ch-option-rom{color:rgba(var(--raised-rgb,16, 35, 10), .7)}.ch-next{position:relative;overflow:hidden}.study.is-challenge .study-body{justify-content:center;padding:8px 0 12px}.summary-boss{margin:12px 0 0}.summary .missed{margin-top:12px}.boss-time{min-width:56px;color:var(--text-2);font-variant-numeric:tabular-nums;justify-content:flex-end;align-items:center;gap:4px;font-size:.9rem;font-weight:600;display:inline-flex}.boss-time.is-low{color:var(--ink-amber,#fde047)}.boss-timer{background:rgba(var(--lift-rgb), .06);border-radius:999px;height:3px;margin:0 2px 6px;overflow:hidden}.boss-timer i{border-radius:inherit;background:linear-gradient(90deg, #bef264, var(--cyan));transform-origin:0;height:100%;transition:transform .2s linear;display:block}.boss-cooldown{color:#a5f3fc;text-align:center;flex-wrap:wrap;justify-content:center;align-items:center;gap:6px;margin-top:8px;font-size:.95rem;display:flex}.boss-go{letter-spacing:.02em;font-size:1.2rem}.boss .study-body{padding-top:4px}.level-chip .pending-line,.level-chip .lock-line{margin-top:3px}.profile-xp-legend{color:var(--text-2);flex-wrap:wrap;align-items:center;gap:4px 14px;margin-top:8px;font-size:.8rem;display:flex}.profile-xp-legend span{align-items:center;gap:6px;display:inline-flex}.link-btn{min-height:32px;color:var(--cyan);text-underline-offset:3px;background:0 0;border:0;padding:0;font-size:.8rem;text-decoration:underline}.profile .boss-banner{margin-top:12px}.rate-again{--c:#c4c1d9;background:var(--surface-2);border-color:var(--border-strong)}.ratings-4 .rate-label{font-size:1.15rem}.forecast{color:var(--text-2);animation:rise .45s .18s var(--ease-out) both;align-items:flex-start;gap:8px;margin:12px 4px 0;font-size:.88rem;display:flex}.forecast svg{color:var(--text-3);flex:none;margin-top:2px}.forecast b{color:var(--text);font-weight:600}.forecast-hint{color:var(--ink-amber,#fcd34d);margin-top:2px;font-size:.82rem;display:block}.forecast-hint a{color:inherit;text-underline-offset:3px;white-space:nowrap}.seg-block{grid-template-columns:repeat(4,1fr);width:100%;display:grid}.seg-block .seg-btn{font-variant-numeric:tabular-nums;min-height:48px;font-size:1.15rem;font-weight:600}.seg-btn[aria-checked=true]{background:var(--grad);color:#fff;box-shadow:inset 0 1px #fff3}.tier-bar{background:rgba(var(--lift-rgb), .05);border-radius:999px;gap:2px;height:14px;margin-top:14px;display:flex;overflow:hidden}.tier-seg{min-width:10px;height:100%;transition:flex-grow .6s var(--ease-out)}.tier-seg.tier-c-new{background:rgba(var(--lift-rgb), .07);min-width:0}.tier-c-new{background:var(--tier-new)}.tier-started{color:var(--text-2);margin-top:8px;font-size:.85rem}.tier-row.is-zero .tier-count,.tier-row.is-zero .tier-name{color:var(--text-3)}.tier-row.is-new .tier-count{color:var(--text-2);font-weight:500}.tier-c-learning{background:var(--tier-learning)}.tier-c-known{background:var(--tier-known)}.tier-c-verified{background:var(--tier-verified)}.tier-c-mastered{background:var(--tier-mastered)}.tier-list{gap:10px;margin:14px 0 0;padding:0;list-style:none;display:grid}.tier-row{grid-template-columns:12px 1fr auto;align-items:center;gap:0 10px;display:grid}.tier-dot{border-radius:50%;width:10px;height:10px}.tier-name{font-weight:500;line-height:1.3}.tier-count{font-variant-numeric:tabular-nums;font-size:1.1rem;font-weight:700}.tier-desc{color:var(--text-3);grid-column:2/-1;font-size:.78rem;line-height:1.35}.badge-known{background:rgba(var(--accent-rgb), .18);color:var(--violet-2)}.badge-verified{background:rgba(var(--accent-2-rgb), .14);color:var(--cyan)}.chips.chips-tiers{padding-bottom:0}.chip .tier-dot{width:8px;height:8px}.tier-c-anchored{background:var(--tier-anchored)}.badge-anchored{color:#6ee7b7;background:#34d39926}.badge-mastered{color:var(--lime);background:#a3e63524}.tag{line-height:1.5}.tag-reverse{color:var(--violet-2);background:rgba(var(--accent-rgb), .13);box-shadow:inset 0 0 0 1px rgba(var(--accent-rgb), .36);align-items:center;gap:5px;display:inline-flex}.challenge-card .tag-reverse{height:24px;padding:0 10px 0 8px;font-size:.72rem}.reverse-title{align-items:center;gap:10px;display:flex}.xp-float.is-note{color:#fff;border:1.5px solid var(--violet-2);text-shadow:none;animation:float-up 1.9s var(--ease-out) both;background:#4c34a0eb;border-radius:999px;padding:3px 14px;font-size:.88rem;font-weight:600;line-height:1.5;bottom:-44px}.learn-boss-unlocked{margin-top:16px}.auth-top{min-height:56px}.auth-lang{align-items:center;gap:8px;display:inline-flex}.auth-lang-icon{color:var(--text-3)}.course-panel .course-switch{grid-template-columns:1fr}.course-panel .course-option{min-height:64px;padding:8px 14px}.course-option-text{flex-direction:column;gap:1px;min-width:0;display:flex}.course-option-title{font-size:1rem;font-weight:600;line-height:1.4}.course-option-sub{color:var(--text-2);font-size:.8rem;line-height:1.4}@media (min-width:560px){.home-goal{min-height:340px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.xp-float{transform:translate(-50%,-24px);animation:none!important}.moment,.moment-body{animation:none!important}}.deck-learn:not(.is-primary):not(.is-off){min-height:80px}.deck-learn:not(.is-primary) .deck-name{font-size:1.18rem}.deck-learn:not(.is-primary) .deck-icon{border-radius:16px;width:48px;height:48px}.deck-btn.is-off{background:rgba(var(--lift-rgb), .025);border-style:dashed;border-color:rgba(var(--lift-rgb), .1);min-height:76px}.deck-btn.is-off .deck-icon{background:rgba(var(--lift-rgb), .06);color:var(--text-3)}.deck-btn.is-off .deck-name{color:var(--text-2)}.deck-btn.is-off .deck-sub{color:var(--text-3)}.left-pill{background:var(--surface-2);border:1px solid var(--border);height:34px;color:var(--text-2);white-space:nowrap;border-radius:999px;flex:none;align-items:baseline;gap:5px;padding:0 12px;font-size:.82rem;line-height:32px;display:inline-flex}.left-pill.is-loading{justify-content:center;min-width:64px}.left-num{color:var(--text);font-variant-numeric:tabular-nums;animation:left-tick .3s var(--ease-out);font-size:1.15rem;font-weight:700;display:inline-block}.left-pill.is-zero{background:#a3e6351a;border-color:#a3e63559}.left-pill.is-zero .left-num{color:var(--lime)}@keyframes left-tick{0%{opacity:0;transform:translateY(-45%)}}.cleared-chip{color:var(--lime);background:#a3e6351f;border:1px solid #a3e63559;border-radius:999px;align-items:center;gap:6px;margin-top:12px;padding:5px 14px 5px 10px;font-size:.92rem;font-weight:600;display:inline-flex}.forecast.is-center{text-align:left;justify-content:center;margin:2px 0 0}.btn-lime{color:#10230a;background:var(--grad-lime);font-weight:600;box-shadow:0 12px 30px -12px #a3e635cc,inset 0 1px #ffffff59}.learn-bar{grid-template-columns:repeat(var(--n,5), 1fr);flex:1;gap:6px;display:grid}.learn-bar.is-loop .round-seg.is-on{background:var(--grad-lime);box-shadow:0 0 10px #a3e63566}.learn .study-header{padding-right:2px}.learn-chip svg{color:var(--cyan)}.learn.is-loop .learn-chip svg{color:var(--lime)}.learn-chip-num{color:var(--text);font-variant-numeric:tabular-nums;font-weight:600}.learn-card{gap:6px;padding-top:52px}.learn.is-present .learn-card .word-visual{margin-bottom:2px}.learn-native{color:var(--text)}.learn-native.is-lead{font-size:clamp(1.7rem,7.5vw,2.1rem);font-weight:600}.learn-hint{text-align:center;color:var(--text-2);animation:rise .4s var(--ease-out) both;margin:0 12px 10px;font-size:.9rem}.learn-note{z-index:2;background:rgba(var(--raised-rgb,21, 19, 39), .94);border:1px solid var(--border-strong);color:var(--text-2);white-space:nowrap;pointer-events:none;border-radius:999px;padding:6px 14px;font-size:.88rem;animation:1.4s forwards note-life;position:absolute;top:2px;left:50%;transform:translate(-50%,-100%)}@keyframes note-life{0%{opacity:0;transform:translate(-50%,-70%)}14%{opacity:1;transform:translate(-50%,-100%)}78%{opacity:1}to{opacity:0;transform:translate(-50%,-100%)}}.learn-rates .rate{align-content:center;min-height:70px}.learn-rates .rate-label{font-size:1.2rem}.learn-saving{color:var(--lime);background:#a3e6351a}.learn-done .summary-hero{padding-bottom:12px}.learn-done-badge{background:var(--grad-lime);color:#10230a;width:76px;height:76px;animation:pop .45s var(--ease-spring) both;border-radius:26px;place-items:center;margin-bottom:14px;display:inline-grid;box-shadow:0 18px 44px -14px #a3e635bf,inset 0 1px #ffffff73}.learn-kicker{letter-spacing:.16em;color:var(--lime);font-size:.8rem;font-weight:600}.learn-done .summary-title{font-size:clamp(2.1rem,9.5vw,2.7rem)}.learn-words{animation:rise .45s 80ms var(--ease-out) both;flex-wrap:wrap;justify-content:center;gap:8px;margin:0 0 14px;padding:0;list-style:none;display:flex}.learn-word{border:1px solid var(--border);background:var(--surface);min-height:44px;color:var(--text);border-radius:999px;align-items:center;gap:8px;padding:4px 14px 4px 5px;font-size:1rem;font-weight:500;display:inline-flex}.learn-word:active{transform:scale(.97)}.learn-word .word-visual-sm{width:34px;height:34px;font-size:24px}.learn-word .word-visual-sm.word-initial{border-radius:50%;font-size:.95rem}.learn-stats{grid-template-columns:1fr 1fr;animation-delay:.14s}.learn-stats.is-single{grid-template-columns:minmax(0,200px);justify-content:center}.learn-stats .stat-label{align-items:center;gap:6px;display:inline-flex}.learn-pending-hint{text-align:center;color:var(--text-3);margin:-2px 12px 0;font-size:.8rem}.rank-badge{vertical-align:middle;flex:none;line-height:0;display:inline-block;position:relative}.rank-badge svg{z-index:1;display:block;position:relative;overflow:visible}.rank-badge .rb-num{font-family:var(--font,"Kanit", system-ui, sans-serif);font-variant-numeric:tabular-nums;font-weight:700}.rank-badge.tier-rookie svg{filter:drop-shadow(0 4px 10px #00000073)}.rank-badge.tier-regular svg{filter:drop-shadow(0 5px 12px #a4561f61)}.rank-badge.tier-challenger svg{filter:drop-shadow(0 6px 14px #94a3b852)}.rank-badge.tier-pro svg{filter:drop-shadow(0 6px 16px #eab30866)}.rank-badge.tier-elite svg{filter:drop-shadow(0 6px 18px #7dd3fc6b)}.rank-badge.tier-legend svg{filter:drop-shadow(0 0 12px rgba(var(--accent-rgb), .55)) drop-shadow(0 6px 18px rgba(var(--accent-2-rgb), .28))}.rank-badge.is-compact svg{filter:drop-shadow(0 2px 5px #00000080)}.rank-badge.is-compact.tier-legend svg{filter:drop-shadow(0 0 5px rgba(var(--accent-rgb), .7))}.rank-badge.is-locked svg{filter:drop-shadow(0 4px 10px #00000080)}.rank-badge .rb-sheen{transform:translate(40px)}.rank-badge.is-animated .rb-sheen{animation:4.2s cubic-bezier(.45,0,.2,1) infinite rb-sheen}@keyframes rb-sheen{0%{transform:translate(0)}45%,to{transform:translate(160px)}}.rank-badge.is-animated .rb-holo{animation:7s linear infinite rb-holo}@keyframes rb-holo{to{transform:translate(-100px,-40px)}}.rank-badge .rb-rays{transform-origin:50px 50px}.rank-badge.is-animated .rb-rays{animation:36s linear infinite rb-spin}@keyframes rb-spin{to{transform:rotate(360deg)}}.rank-badge.tier-legend.is-animated:not(.is-compact):not(.is-locked):before{content:"";background:radial-gradient(circle, rgba(var(--accent-rgb), .34), rgba(var(--accent-2-rgb), .08) 45%, transparent 66%);pointer-events:none;border-radius:50%;animation:2.8s ease-in-out infinite rb-breathe;position:absolute;inset:-10%}@keyframes rb-breathe{50%{opacity:.45;transform:scale(.94)}}@media (prefers-reduced-motion:reduce){.rank-badge .rb-sheen,.rank-badge .rb-holo,.rank-badge .rb-rays,.rank-badge:before{animation:none!important}.rank-badge .rb-sheen{transform:translate(40px)!important}}.mood-boss{--ember-red:#e11d2a;--ember:#ff5a1f;--ember-gold:#ffb020;--ember-text:#ffb38a;--ember-soft:#ff9a5c;--grad:linear-gradient(120deg, #b3121b 0%, #d4300f 52%, #c2410c 100%);--grad-hot:linear-gradient(90deg, #e11d2a 0%, #ff5a1f 55%, #ffb020 100%);--violet:#ff5a1f;--violet-2:#ff9a5c;--indigo:#d4300f;--tier-known:var(--violet-2)}.app-glow:after{content:"";opacity:0;background:radial-gradient(560px 380px at 8% -8%, #e11d2a57, transparent 70%), radial-gradient(480px 340px at 105% 0%, #ff7a1f2e, transparent 70%), radial-gradient(640px 420px at 50% 115%, #b41e1433, transparent 70%),  rgb(var(--ground-rgb));transition:opacity .8s;position:absolute;inset:0}.mood-boss .app-glow:after{opacity:1}.mood-boss .home-top,.mood-boss .study-header{position:relative}.mood-boss .home-top:after,.mood-boss .study-header:after{content:"";pointer-events:none;background:linear-gradient(90deg,#0000,#ff7a4599 30%,#ffb02080 70%,#0000);height:1px;position:absolute;bottom:-8px;left:0;right:0}.mood-boss .btn-primary{box-shadow:0 12px 30px -12px #ff4014d9,inset 0 1px #ffdcbe4d}.mood-boss .deck-btn.is-primary{background:linear-gradient(120deg,#8e1a1a 0%,#a8290e 55%,#9a3412 100%);border-color:#ffaa7852;box-shadow:0 18px 40px -18px #ff4014f2,inset 0 1px #ffdcbe4d}.mood-boss .deck-btn.is-primary:after{background:radial-gradient(260px 110px at 20% -30%,#ffd2a033,#0000 70%),linear-gradient(90deg,#3c050000 55%,#3c050038)}.mood-boss .deck-review:not(.is-primary) .deck-icon{color:var(--ember-soft);background:#ff5a1f29}.mood-boss .xp-bar-accent .xp-bar-fill,.mood-boss .xp-bar.is-locked .xp-bar-fill{background:var(--grad-hot)}.mood-boss .xp-bar.is-locked{box-shadow:0 0 0 1px #ff7a4559,0 0 14px -2px #ff4818b3}.mood-boss .xp-bar.is-locked .xp-bar-fill{animation:1.8s ease-in-out infinite mood-bar-heat}@keyframes mood-bar-heat{50%{filter:brightness(1.28)saturate(1.1)}}.mood-boss .xp-bar-pending{background:repeating-linear-gradient(-45deg,#ffb0209e 0 3px,#ffb02029 3px 6px)}.mood-boss .lock-line{color:var(--ember-text)}.mood-boss .round-seg.is-on{background:var(--grad-hot);box-shadow:0 0 10px #ff5a1f73}.mood-boss .goal-ring:not(.is-done) linearGradient stop:first-child{stop-color:#e11d2a}.mood-boss .goal-ring:not(.is-done) linearGradient stop:last-child{stop-color:#ffb020}.mood-boss :focus-visible{outline-color:var(--ember-gold)}.mood-boss .home-goal,.boss-hero-card.is-locked~.home-goal{min-height:0;padding:10px 0 8px}.boss-hero-card{color:var(--text);isolation:isolate;animation:rise .45s var(--ease-out) both;transition:transform .14s var(--ease-out);border-radius:26px;flex-direction:column;gap:12px;margin:16px 0 2px;padding:14px 14px 14px 12px;text-decoration:none;display:flex;position:relative;overflow:hidden}a.boss-hero-card:active{transform:scale(.98)}.boss-hero-card.is-ready{background:radial-gradient(260px 160px at 10% 0,#ff5a1f5c,#0000 70%),radial-gradient(300px 190px at 100% 125%,#e11d2a73,#0000 70%),linear-gradient(165deg,#2b0d09 0%,#180909 55%,#110709 100%);border:1px solid #ff7a4580;box-shadow:0 22px 48px -22px #ff4014d9,inset 0 1px #ffd6ba29}.boss-hero-card.is-ready:before{content:"";z-index:2;border-radius:inherit;pointer-events:none;opacity:.2;animation:1.8s ease-in-out infinite bhc-pulse;position:absolute;inset:0;box-shadow:inset 0 0 0 1.5px #ffb078f2,inset 0 0 28px #ff5a1f6b}@keyframes bhc-pulse{50%{opacity:1}}.bhc-embers{z-index:-1;pointer-events:none;position:absolute;inset:0;overflow:hidden}.bhc-embers i{opacity:0;background:#ffc46b;border-radius:50%;width:3px;height:3px;animation:1.9s linear infinite bhc-ember;position:absolute;bottom:-6px;box-shadow:0 0 6px 1px #ff6e28e6}.bhc-embers i:first-child{animation-duration:1.7s;animation-delay:0s;left:7%}.bhc-embers i:nth-child(2){animation-delay:.8s;left:19%}.bhc-embers i:nth-child(3){width:2px;height:2px;animation-duration:1.6s;animation-delay:.35s;left:33%}.bhc-embers i:nth-child(4){animation-delay:1.2s;left:48%}.bhc-embers i:nth-child(5){width:2px;height:2px;animation-duration:1.8s;animation-delay:.5s;left:61%}.bhc-embers i:nth-child(6){animation-delay:1.45s;left:74%}.bhc-embers i:nth-child(7){animation-duration:1.65s;animation-delay:.15s;left:86%}.bhc-embers i:nth-child(8){width:2px;height:2px;animation-delay:1s;left:95%}@keyframes bhc-ember{0%{opacity:0;transform:translate(0)scale(1)}15%{opacity:.95}to{opacity:0;transform:translate(-12px,-170px)scale(.35)}}.bhc-head{align-items:center;gap:12px;min-width:0;display:flex}.bhc-crest{background:radial-gradient(circle at 50% 45%,#ff6a2857,#2808061a 72%);border-radius:22px;flex:none;place-items:center;width:78px;height:78px;display:grid;position:relative}.is-ready .boss-crest{filter:drop-shadow(0 0 10px #ff5a1fb3);animation:1.8s ease-in-out infinite bhc-crest}@keyframes bhc-crest{50%{filter:drop-shadow(0 0 18px #ff8232f2);transform:scale(1.04)}}.bhc-text{flex-direction:column;min-width:0;display:flex}.bhc-kicker{letter-spacing:.06em;color:var(--ember-text,#ffb38a);white-space:nowrap;align-items:center;gap:7px;font-size:.76rem;font-weight:600;display:inline-flex}.bhc-live,.bp-live{background:#ff5a1f;border-radius:50%;flex:none;width:7px;height:7px;animation:1.4s ease-out infinite bhc-live}@keyframes bhc-live{0%{box-shadow:0 0 #ff5a1fbf}80%,to{box-shadow:0 0 0 7px #ff5a1f00}}.bhc-title{white-space:nowrap;font-size:1.85rem;font-weight:700;line-height:1.18}.bhc-boss{letter-spacing:.05em;background:linear-gradient(#fff4ea 15%,#ffb38a 58%,#ff6a2b 100%);color:#0000;-webkit-background-clip:text;background-clip:text}.bhc-dot{color:#ffb38a8c}.bhc-rules{color:#ffd9c2;font-size:1rem;font-weight:500}.bhc-foot{border-top:1px solid #ff8c5a2e;justify-content:space-between;align-items:center;gap:10px;padding-top:12px;display:flex}.bhc-path{align-items:center;gap:6px;min-width:0;display:flex}.bhc-path .rank-badge:first-child{opacity:.7}.bhc-arrow{background:linear-gradient(90deg,#ffb38a26,#ffb38a);flex:none;width:14px;height:2px;margin-right:2px;position:relative}.bhc-arrow:after{content:"";border:4px solid #0000;border-left:5px solid #ffb38a;border-right:0;position:absolute;top:-3px;right:-2px}.bhc-next{text-overflow:ellipsis;white-space:nowrap;color:#fff;min-width:0;margin-left:2px;font-size:1rem;font-weight:600;overflow:hidden}.bhc-cta,.bp-go{color:#fff;background:linear-gradient(120deg,#b3121b 0%,#d4300f 52%,#c2410c 100%);border-radius:16px;flex:none;align-items:center;gap:6px;height:48px;padding:0 16px 0 20px;font-size:1.12rem;font-weight:700;display:inline-flex;box-shadow:0 10px 24px -10px #ff4014f2,inset 0 1px #ffdcbe59,0 0 0 1px #ff966459}.boss-hero-card.is-locked{border:1px dashed rgba(var(--lift-rgb), .14);background:linear-gradient(165deg, #ff5a1f12, rgba(var(--lift-rgb), .02) 60%);gap:10px}.is-locked .bhc-crest{background:rgba(var(--lift-rgb), .04);border-radius:18px;width:60px;height:60px}.is-locked .bhc-kicker{color:var(--text-3)}.is-locked .bhc-title{color:var(--text-2);font-size:1.3rem}.is-locked .bhc-boss{color:var(--text-2);background:0 0}.bhc-retry{color:var(--text-2);font-size:.88rem;line-height:1.35}.bhc-lock{background:var(--bg-raised);width:22px;height:22px;color:var(--text);border:1.5px solid #ff7a45bf;border-radius:50%;place-items:center;display:grid;position:absolute;bottom:-3px;right:-3px}.bhc-meter{background:rgba(var(--lift-rgb), .08);border-radius:999px;height:4px;display:block;overflow:hidden}.bhc-meter i{transform-origin:0;height:100%;transition:transform .6s var(--ease-out);background:linear-gradient(90deg,#ff5a1f8c,#ff9a5c);display:block}.boss-pill{color:#ffd0b0;letter-spacing:.02em;white-space:nowrap;background:linear-gradient(120deg,#e11d2a3d,#ff5a1f1a);border:1px solid #ff7a458c;border-radius:999px;align-items:center;gap:6px;height:32px;padding:0 11px 0 5px;font-size:.82rem;font-weight:600;text-decoration:none;display:inline-flex;box-shadow:0 0 16px -4px #ff481899}.boss-pill .boss-crest{filter:drop-shadow(0 0 4px #ff5a1fcc)}.boss-pill.is-summary{letter-spacing:0;width:100%;height:auto;min-height:64px;animation:rise .45s .15s var(--ease-out) both;background:radial-gradient(200px 80px at 0 0,#ff5a1f4d,#0000 70%),linear-gradient(120deg,#2a0c09,#170909);border-radius:22px;gap:10px;margin:12px 0;padding:8px 8px 8px 6px;display:flex}.bp-crest{flex:none;place-items:center;width:48px;height:48px;display:grid}.bp-text{flex-direction:column;flex:1;min-width:0;line-height:1.25;display:flex}.bp-title{text-overflow:ellipsis;color:#fff;font-size:1.02rem;font-weight:700;overflow:hidden}.bp-sub{color:#ffd0b0;font-size:.8rem;font-weight:500}.boss-pill.is-summary .bp-go{border-radius:14px;height:44px;padding:0 12px 0 16px;font-size:1rem}@media (prefers-reduced-motion:reduce){.boss-hero-card.is-ready:before{opacity:.75;animation:none!important}.bhc-embers{display:none}.is-ready .boss-crest,.bhc-live,.bp-live,.mood-boss .xp-bar.is-locked .xp-bar-fill{animation:none!important}.bhc-live,.bp-live{box-shadow:0 0 0 3px #ff5a1f4d}.app-glow:after{transition:none}}.rankup{--ru-tint:#e9d5ff;--ru-tint-a:rgba(var(--accent-rgb), .5);z-index:120;text-align:center;color:var(--text,#f4f3fb);cursor:pointer;-webkit-user-select:none;user-select:none;flex-direction:column;justify-content:center;align-items:center;padding:24px;transition:opacity .28s;display:flex;position:fixed;inset:0;overflow:hidden}.rankup.is-leaving{opacity:0}.ru-rookie{--ru-tint:#e2e8f0;--ru-tint-a:#cbd5e173}.ru-regular{--ru-tint:#ffc48f;--ru-tint-a:#f0965a80}.ru-challenger{--ru-tint:#eef2f7;--ru-tint-a:#bac8dc80}.ru-pro{--ru-tint:#ffe08a;--ru-tint-a:#ffc43285}.ru-elite{--ru-tint:#bdf4ff;--ru-tint-a:#7dd3fc85}.ru-legend{--ru-tint:#f0dcff;--ru-tint-a:rgba(var(--accent-rgb), .58)}.ru-backdrop{background:radial-gradient(circle at 50% 40%, rgba(var(--raised-rgb,34, 26, 58), .95), rgba(var(--raised-rgb,6, 5, 12), .985) 65%);animation:.22s both ru-fade;position:absolute;inset:0}.ru-backdrop:after{content:"";background:radial-gradient(340px 340px at 50% 38%, var(--ru-tint-a), transparent 70%);opacity:0;animation:.7s .56s forwards ru-fade;position:absolute;inset:0}.ru-stage{z-index:2;place-items:center;width:230px;height:230px;margin-bottom:14px;display:grid;position:relative}.ru-old,.ru-new{place-items:center;display:grid;position:absolute;inset:0}.ru-old>*{grid-area:1/1}.ru-old{animation:.56s cubic-bezier(.5,0,.9,.6) both ru-charge}.ru-old:after{content:"";background:radial-gradient(circle, rgba(var(--lift-rgb), .95), var(--ru-tint-a) 45%, transparent 72%);opacity:0;pointer-events:none;border-radius:50%;animation:.56s ease-in both ru-charge-glow;position:absolute;inset:22%}@keyframes ru-charge-glow{0%,40%{opacity:0}to{opacity:.9}}@keyframes ru-charge{0%{opacity:0;transform:scale(.86)}25%{opacity:1;transform:scale(1)}78%{transform:translate(-1.5px,1px)scale(1.02)}88%{transform:translate(2px,-1px)scale(1.03)}to{transform:scale(1.05)}}.ru-shard{width:150px;height:150px;animation:.62s cubic-bezier(.15,.7,.3,1) .56s forwards ru-shatter}@keyframes ru-shatter{to{opacity:0;transform:translate(calc(var(--dx) * 130px), calc(var(--dy) * 120px)) rotate(var(--rot)) scale(.8)}}.ru-cracks{pointer-events:none;width:150px;height:150px;overflow:visible}.ru-cracks path{fill:none;stroke:#fff;stroke-width:1.4px;stroke-linecap:round;stroke-dasharray:1 1;stroke-dashoffset:1px;opacity:0;animation:.2s ease-out .34s both ru-crack,80ms .58s forwards ru-fade-out}@keyframes ru-crack{0%{opacity:1;stroke-dashoffset:1px}to{opacity:1;stroke-dashoffset:0}}.ru-flash{background:radial-gradient(circle, #fff 0%, var(--ru-tint-a) 42%, transparent 70%);opacity:0;border-radius:50%;width:150px;height:150px;animation:.46s ease-out .54s both ru-flash;position:absolute}@keyframes ru-flash{0%{opacity:0;transform:scale(.4)}25%{opacity:1;transform:scale(1.5)}to{opacity:0;transform:scale(2.6)}}.ru-wave{border:2px solid rgba(var(--lift-rgb), .9);width:150px;height:150px;box-shadow:0 0 24px var(--ru-tint-a), inset 0 0 18px var(--ru-tint-a);opacity:0;border-radius:50%;animation:.85s cubic-bezier(.1,.6,.3,1) .58s both ru-wave;position:absolute}.ru-wave.is-2{border-width:1px;animation-delay:.74s}@keyframes ru-wave{0%{opacity:0;transform:scale(.35)}6%{opacity:1}to{opacity:0;transform:scale(3.6)}}.ru-beam{z-index:1;background:linear-gradient(90deg, transparent, var(--ru-tint-a) 32%, rgba(var(--lift-rgb), .9) 50%, var(--ru-tint-a) 68%, transparent);transform-origin:50% 40%;opacity:0;pointer-events:none;width:190px;margin-left:-95px;animation:2s cubic-bezier(.2,.8,.2,1) .5s both ru-beam;position:absolute;top:-10%;bottom:-10%;left:50%;-webkit-mask-image:linear-gradient(#0000,#000 22% 58%,#0000 92%);mask-image:linear-gradient(#0000,#000 22% 58%,#0000 92%)}@keyframes ru-beam{0%{opacity:0;transform:scaleX(.05)scaleY(.2)}12%{opacity:1;transform:scaleX(1)scaleY(1)}40%{opacity:.7;transform:scaleX(.45)scaleY(1)}to{opacity:.18;transform:scaleX(.3)scaleY(1)}}.ru-rays{background:repeating-conic-gradient(from 0deg, var(--ru-tint-a) 0deg 3.5deg, transparent 3.5deg 22.5deg);opacity:0;width:440px;height:440px;animation:.8s ease-out .7s forwards ru-rays-in,16s linear .7s infinite ru-spin;position:absolute;-webkit-mask-image:radial-gradient(circle,#000 16%,#0000 62%);mask-image:radial-gradient(circle,#000 16%,#0000 62%)}@keyframes ru-rays-in{to{opacity:.6}}.ru-new{z-index:3;opacity:0;animation:.9s cubic-bezier(.2,1.35,.35,1) .66s both ru-land}@keyframes ru-land{0%{opacity:0;transform:scale(1.9)}30%{opacity:1}to{opacity:1;transform:scale(1)}}.ru-copy{z-index:3;flex-direction:column;align-items:center;display:flex;position:relative}.ru-kicker{letter-spacing:.28em;color:var(--ru-tint);white-space:nowrap;margin:0 0 2px;font-size:1rem;font-weight:600;animation:.5s cubic-bezier(.2,.8,.2,1) 1s both ru-kicker}.ru-en{color:#fff}.ru-sep{opacity:.5}@keyframes ru-kicker{0%{opacity:0;letter-spacing:.8em}to{opacity:1;letter-spacing:.28em}}.ru-title{white-space:nowrap;background:linear-gradient(180deg, #fff 38%, var(--ru-tint) 100%);color:#0000;filter:drop-shadow(0 0 22px var(--ru-tint-a));-webkit-background-clip:text;background-clip:text;margin:0;padding:.08em .1em;font-size:clamp(2.7rem,13.5vw,3.7rem);font-weight:700;line-height:1.25;animation:.55s cubic-bezier(.2,1.3,.4,1) 1.12s both ru-title}@keyframes ru-title{0%{opacity:0;transform:translateY(14px)scale(.92)}to{opacity:1;transform:none}}.ru-title-2{letter-spacing:.24em;text-transform:uppercase;color:var(--text-2,#b6b3cc);margin:-2px 0 0;font-size:1.05rem;font-weight:500;animation:.45s cubic-bezier(.2,.8,.2,1) 1.3s both ru-rise}.ru-sub{border:1px solid rgba(var(--lift-rgb), .12);background:rgba(var(--lift-rgb), .06);color:var(--ink-accent,#ebe9f7);font-variant-numeric:tabular-nums;border-radius:999px;margin:14px 0 0;padding:4px 14px;font-size:.95rem;animation:.45s cubic-bezier(.2,.8,.2,1) 1.45s both ru-rise}.ru-skip{bottom:calc(22px + env(safe-area-inset-bottom,0px));z-index:3;color:var(--text-3,#7f7c98);margin:0;font-size:.78rem;animation:.3s 1.6s both ru-fade;position:absolute;left:0;right:0}@keyframes ru-fade{0%{opacity:0}to{opacity:1}}@keyframes ru-fade-out{to{opacity:0}}@keyframes ru-rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes ru-spin{to{transform:rotate(360deg)}}.rankup.is-calm .ru-backdrop{animation:.3s both ru-fade!important}.rankup.is-calm .ru-backdrop:after{animation:.5s .35s both ru-fade!important}.rankup.is-calm .ru-old{animation:.5s .4s both ru-fade-out!important}.rankup.is-calm .ru-new{animation:.5s .4s both ru-fade!important}.rankup.is-calm .ru-kicker,.rankup.is-calm .ru-title,.rankup.is-calm .ru-title-2,.rankup.is-calm .ru-sub,.rankup.is-calm .ru-skip{animation:.4s .75s both ru-fade!important}.rankup.is-calm .ru-kicker{letter-spacing:.28em}.boss.is-rankup>:not(.rankup){visibility:hidden}.word-photo{aspect-ratio:1;isolation:isolate;background:#07080b;border-radius:20px;flex:none;display:block;position:relative;overflow:hidden;box-shadow:0 14px 30px -16px #000000d9}.word-photo img{object-fit:cover;filter:saturate(.92)contrast(1.05);-webkit-user-select:none;user-select:none;-webkit-user-drag:none;width:100%;height:100%;display:block}.word-photo:after{content:"";pointer-events:none;border-radius:inherit;background:linear-gradient(#080a0e00 62%,#080a0e8c 100%);position:absolute;inset:0;box-shadow:inset 0 0 0 1px #ffffff12}.word-photo-lg{width:min(196px,52vw)}.word-photo-md{width:min(156px,42vw)}.word-photo-sm{width:40px;box-shadow:none;border-radius:12px}.word-photo-sm:after{background:linear-gradient(#080a0e00 55%,#080a0e59 100%)}.learn-word .word-photo-sm{border-radius:50%;width:34px}.photo-credit{z-index:1;letter-spacing:.01em;color:#ffffffb8;text-shadow:0 1px 2px #0009;align-items:center;gap:4px;min-width:0;font-size:.6rem;font-weight:400;line-height:1.3;text-decoration:none;display:flex;position:absolute;bottom:6px;left:8px;right:8px}.photo-credit svg{opacity:.85;flex:none}.photo-credit-text{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}:is(a.photo-credit:hover,a.photo-credit:focus-visible){color:#fff;text-decoration:underline}.profile-pending{margin:0;font-size:.8rem}.daily-line{-webkit-line-clamp:2;text-align:center;max-width:330px;color:var(--text);animation:rise .4s var(--ease-out) both;-webkit-box-orient:vertical;margin-top:10px;font-size:.98rem;line-height:1.4;display:-webkit-box;overflow:hidden}.daily-line b{font-weight:600}.chapter-strip{border:1px solid var(--border);background:radial-gradient(240px 90px at 0% 0%, rgba(var(--accent-rgb), .14), transparent 70%), var(--surface);color:var(--text);animation:rise .45s .1s var(--ease-out) both;transition:transform .14s var(--ease-out);border-radius:20px;grid-template-columns:auto 1fr auto;align-items:center;gap:7px 12px;margin-bottom:12px;padding:11px 14px 12px 12px;text-decoration:none;display:grid;position:relative}a.chapter-strip:active{transform:scale(.98)}@media (hover:hover){a.chapter-strip:hover{background:radial-gradient(240px 90px at 0% 0%, rgba(var(--accent-rgb), .2), transparent 70%), var(--surface-2)}}.cs-text{flex-direction:column;min-width:0;display:flex}.cs-title{white-space:nowrap;text-overflow:ellipsis;font-size:.98rem;font-weight:600;line-height:1.3;overflow:hidden}.cs-kicker{color:var(--text-3);font-weight:500}.cs-cando{white-space:nowrap;text-overflow:ellipsis;color:var(--text-2);font-size:.8rem;line-height:1.35;overflow:hidden}.cs-chev{color:var(--text-3)}.cs-foot{grid-column:1/-1;align-items:center;gap:10px;display:flex}.cs-foot .ch-bar{flex:1}.cs-left{color:var(--text-2);white-space:nowrap;font-variant-numeric:tabular-nums;flex:none;font-size:.78rem;font-weight:500}.chapter-strip.is-compact{grid-template-columns:auto 1fr auto auto;column-gap:10px;padding:8px 10px 11px;overflow:hidden}.chapter-strip.is-compact .ch-badge-status{width:28px;height:28px;font-size:.8rem}.chapter-strip.is-compact .cs-title{font-size:.92rem}.chapter-strip.is-compact .cs-chev{margin-left:-6px}.chapter-strip.is-compact .ch-bar{height:3px;position:absolute;bottom:5px;left:14px;right:14px}.home.has-boss .deck-btn:not(.is-done){min-height:78px;padding-block:12px}.ch-badge-status{font-variant-numeric:tabular-nums;width:36px;height:36px;color:var(--text-2);background:var(--surface-2);border:1px solid var(--border-strong);border-radius:50%;flex:none;place-items:center;font-size:.9rem;font-weight:700;display:grid;position:relative}.ch-badge-status.is-current{color:#fff;background:var(--grad);border-color:rgba(var(--lift-rgb), .25);box-shadow:0 0 0 4px rgba(var(--accent-rgb), .18), 0 8px 20px -8px rgba(var(--accent-deep-rgb), .9)}.mood-boss .ch-badge-status.is-current{background:var(--grad-hot,var(--grad));box-shadow:0 0 0 4px #ff5a1f29}.ch-badge-status.is-done{color:#10240a;background:var(--grad-lime);border-color:#0000}.ch-badge-status.is-star{color:#2a1a00;background:linear-gradient(135deg,#fde68a,#f59e0b);border-color:#0000;box-shadow:0 0 14px -2px #fbbf248c}.ch-badge-status.is-locked{color:var(--text-3);background:0 0;border-style:dashed}.ch-badge-status.is-open{color:var(--text)}.ch-bar{background:rgba(var(--lift-rgb), .08);border-radius:999px;height:6px;position:relative;overflow:hidden}.ch-bar i{border-radius:inherit;position:absolute;top:0;bottom:0;left:0}.ch-bar .ch-bar-started{background:repeating-linear-gradient(-45deg, rgba(var(--accent-rgb), .5) 0 3px, rgba(var(--accent-rgb), .16) 3px 6px)}.ch-bar .ch-bar-done{background:var(--grad)}.mood-boss .ch-bar .ch-bar-done{background:var(--grad-hot,var(--grad))}.ch-bar.is-done .ch-bar-done{background:var(--grad-lime)}.ch-bar.is-star .ch-bar-done{background:linear-gradient(90deg,#fde68a,#f59e0b)}.words-tabs{background:var(--surface);border:1px solid var(--border);border-radius:16px;grid-template-columns:1fr 1fr;gap:4px;margin:0 0 12px;padding:4px;display:grid}.words-tab{min-height:40px;color:var(--text-2);background:0 0;border:0;border-radius:12px;place-items:center;font-size:.95rem;font-weight:500;text-decoration:none;display:grid}.words-tab[aria-current=page]{background:var(--surface-3);color:var(--text);box-shadow:inset 0 1px #ffffff14}.journey-legend{color:var(--text-3);margin:0 4px 10px;font-size:.78rem}.journey-list{gap:10px;margin:0;padding:0;list-style:none;display:grid;position:relative}.journey-list:before{content:"";background:linear-gradient(180deg, rgba(var(--accent-rgb), .35), rgba(var(--lift-rgb), .06));border-radius:2px;width:2px;position:absolute;top:30px;bottom:30px;left:31px}.jr-chapter{border:1px solid var(--border);background:rgba(var(--raised-rgb,21, 19, 39), .92);width:100%;color:var(--text);text-align:left;transition:transform .14s var(--ease-out);border-radius:22px;grid-template-columns:auto 1fr;column-gap:12px;padding:13px 14px 13px 13px;text-decoration:none;display:grid;position:relative}a.jr-chapter:active{transform:scale(.985)}.jr-chapter.is-current{border-color:rgba(var(--accent-rgb), .55);background:radial-gradient(300px 120px at 0% 0%, rgba(var(--accent-rgb), .2), transparent 70%), rgba(var(--raised-rgb,24, 20, 48), .96);box-shadow:0 16px 36px -22px rgba(var(--accent-deep-rgb), .9)}.jr-chapter.is-locked{background:rgba(var(--raised-rgb,15, 14, 28), .94)}.jr-chapter.is-locked .jr-title,.jr-chapter.is-locked .jr-cando{color:var(--text-3)}.jr-badge{padding-top:1px}.jr-body{flex-direction:column;gap:2px;min-width:0;display:flex}.jr-head{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.jr-kicker{color:var(--text-3);font-size:.76rem;font-weight:500}.jr-status{background:rgba(var(--lift-rgb), .06);color:var(--text-2);border-radius:999px;flex:none;padding:1px 9px;font-size:.72rem;font-weight:600}.jr-status.is-current{background:rgba(var(--accent-rgb), .22);color:var(--ink-accent,#ddd6fe)}.jr-status.is-done{color:var(--lime);background:#a3e63524}.jr-status.is-star{color:var(--amber);background:#fbbf2424}.jr-title{font-size:1.08rem;font-weight:600;line-height:1.3}.jr-cando{color:var(--text-2);font-size:.86rem;line-height:1.4}.jr-foot{align-items:center;gap:10px;margin-top:7px;display:flex}.jr-foot .ch-bar{flex:1}.jr-count{color:var(--text-3);font-variant-numeric:tabular-nums;flex:none;font-size:.78rem}.chapter-head{border-radius:24px;grid-template-columns:auto 1fr;align-items:center;column-gap:14px;margin-bottom:14px;padding:16px;display:grid}.chapter-head .ch-badge-status{width:48px;height:48px;font-size:1.1rem}.chapter-head-title{font-size:1.3rem;font-weight:600;line-height:1.3}.chapter-head-cando{color:var(--text-2);margin-top:2px;font-size:.92rem;line-height:1.4}.chapter-head .jr-foot{grid-column:1/-1;margin-top:12px}.chapter-back{min-height:36px;color:var(--text-2);border-radius:999px;align-items:center;gap:4px;margin:0 0 8px;padding:0 10px 0 4px;font-size:.88rem;text-decoration:none;display:inline-flex}.chapter-words-title{color:var(--text-2);margin:4px 4px 8px;font-size:.85rem;font-weight:500}.tip-sheet .sheet-panel{background:radial-gradient(360px 160px at 15% 0%, #fbbf241f, transparent 70%), var(--bg-raised);padding-top:10px}.tip-kicker{color:var(--amber);background:#fbbf2424;border-radius:999px;align-items:center;gap:6px;padding:2px 10px 2px 8px;font-size:.78rem;font-weight:600;display:inline-flex}.tip-word{align-items:center;gap:10px;margin-top:12px;display:flex}.tip-word-text{font-size:1.25rem;font-weight:600;line-height:1.3}.tip-text{margin:12px 0 18px;font-size:1.08rem;line-height:1.5}.tip-actions{justify-items:center;gap:6px;display:grid}.tip-never{min-height:40px;color:var(--text-2);font-size:.88rem}.checkup .study-sub{justify-content:center}.checkup-count{color:var(--text-2);font-variant-numeric:tabular-nums;font-size:.85rem}.checkup .ch-option.is-answer,.checkup .ch-option.is-wrong{border-color:rgba(var(--accent-rgb), .45)}.checkup-dontknow{justify-content:center;display:flex}.checkup-intro,.checkup-result{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:10px;padding:24px 8px;display:flex}.checkup-icon{background:rgba(var(--accent-2-rgb), .12);width:76px;height:76px;color:var(--cyan);border:1px solid rgba(var(--accent-2-rgb), .28);border-radius:26px;place-items:center;margin-bottom:6px;display:grid}.checkup-kicker{letter-spacing:.02em;color:var(--cyan);font-size:.85rem;font-weight:600}.checkup-title{font-size:1.7rem;font-weight:600;line-height:1.3}.checkup-lines{color:var(--text-2);gap:6px;margin:8px 0 0;padding:0;font-size:.95rem;list-style:none;display:grid}.checkup-big{justify-content:center;align-items:baseline;gap:10px;margin:2px 0;display:flex}.checkup-big-num{letter-spacing:-.03em;font-variant-numeric:tabular-nums;background:var(--grad-lime);color:#0000;-webkit-background-clip:text;background-clip:text;font-size:5rem;font-weight:700;line-height:1}.checkup-big-unit{font-size:1.6rem;font-weight:600}.checkup-sub{max-width:320px;color:var(--text-2);font-size:.95rem;line-height:1.45}.checkup-chips{flex-wrap:wrap;justify-content:center;gap:6px;max-width:340px;margin:6px 0 4px;padding:0;list-style:none;display:flex}.checkup-chips li{color:var(--ink-lime,#d9f99d);background:#a3e6351a;border:1px solid #a3e63540;border-radius:999px;padding:3px 11px;font-size:.9rem}.checkup-result .chapter-strip{text-align:left;width:100%;max-width:360px;margin:10px 0 0}.checkup-sheet .sheet-panel{text-align:center}.checkup-sheet .checkup-icon{margin:4px auto 10px}.checkup-sheet .tip-actions{margin-top:20px}.tip-first{color:var(--text-3);margin:-8px 0 14px;font-size:.82rem}.tip-action{min-height:48px;font-size:.95rem}.tip-card{border:1px solid #fbbf2438;border-radius:22px;margin:12px 0 0;padding:12px 16px 8px}.tip-card .tip-text{margin:8px 0 10px;font-size:.98rem}.tip-card .tip-actions{grid-template-columns:1fr auto;place-items:center stretch;gap:10px}.tip-card .tip-actions .btn-xl{min-height:44px;font-size:.95rem}.home.has-chapter .home-goal{min-height:0;padding:10px 0 12px}.home.has-chapter .decks{margin-bottom:12px}.home.has-chapter .deck-btn:not(.is-done){min-height:86px}.home.has-chapter .home-links .home-link{min-height:62px}.checkup-card{justify-content:center}.checkup-card .ch-instruction{margin-bottom:4px}.checkup .round-seg.is-current{background:rgba(var(--lift-rgb), .28)}.checkup-actions{justify-content:center;display:flex}.checkup-lead{color:var(--text);margin-top:6px;font-size:1.35rem;font-weight:500}.checkup-done{min-height:calc(100dvh - var(--safe-t));flex-direction:column;display:flex}.chapter-tap-hint{text-align:center;margin-top:10px}.words.is-map .page-head,.words.is-chapter .page-head{margin-bottom:4px}.ring-compact .ring-unit,.ring-compact .ring-sub{font-size:.7rem;line-height:1.2}.ring-compact .ring-num{font-size:2.5rem}.ring-compact .ring-check{width:40px;height:40px}.ring-compact .ring-done{margin-top:6px;font-size:.86rem}.word-photo img.focus-top{object-position:50% 0%}.word-photo img.focus-bottom{object-position:50% 100%}.word-photo img.focus-left{object-position:0% 50%}.word-photo img.focus-right{object-position:100% 50%}.cal{margin:14px 0 0}.cal-grid{grid-template-columns:repeat(7,minmax(0,34px));justify-content:center;gap:6px;display:grid}.cal-wd{text-align:center;color:var(--text-3);font-size:.68rem;line-height:1.5}.cal-cell{aspect-ratio:1;background:var(--hm);border-radius:8px;position:relative}.cal-cell[data-date]{cursor:pointer}.cal-cell.is-pad{background:rgba(var(--lift-rgb), .025)}.cal-cell.is-future{border:1px dashed rgba(var(--lift-rgb), .13);background:0 0}.cal-cell.is-linked:after{content:"";background:var(--link);width:6px;height:8px;position:absolute;top:50%;left:100%;transform:translateY(-50%)}.cal-cell.is-today{outline-offset:1px;outline:2px solid #fff}.cal-cell.is-picked{box-shadow:inset 0 0 0 2px #ffffffb3}.pc-head{flex-wrap:wrap;align-items:center;row-gap:8px}.pc-range .seg-btn{white-space:nowrap;min-height:32px;padding:0 10px;font-size:.8rem}.pc-note{color:var(--text-2);margin-top:12px;font-size:.88rem;line-height:1.5}.pc-note .link-btn{margin-left:8px}.pc-skeleton{border-radius:var(--radius-sm);height:260px;margin-top:14px}.pc-cap{color:var(--text-2);margin-top:12px;font-size:.78rem}.pc-kpis{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:8px;display:grid}.pc-kpi{border-radius:var(--radius-sm);background:var(--surface);border:1px solid var(--border);text-align:center;flex-direction:column;align-items:center;min-width:0;padding:10px 4px 9px;display:flex}.pc-kpi-num{font-size:1.3rem;font-weight:700;line-height:1.2}.pc-kpi-label{max-width:100%;color:var(--text-2);overflow-wrap:anywhere;font-size:.72rem;line-height:1.4}.pc-delta{white-space:nowrap;font-variant-numeric:tabular-nums;margin-top:2px;font-size:.7rem;line-height:1.3}.pc-delta.is-up{color:var(--lime)}.pc-delta.is-down{color:var(--text-3)}@media (max-width:379.98px){.pc-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}.pc-metrics{flex-wrap:wrap;gap:6px;margin-top:14px;display:flex}.pc-metrics .chip{min-height:34px;padding:0 12px;font-size:.82rem}.pc-readrow{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:2px 12px;margin-top:10px;display:flex}.pc-readout{min-height:1.5em;color:var(--text-2);font-size:.85rem;line-height:1.5}.pc-gain{color:var(--lime);white-space:nowrap;font-variant-numeric:tabular-nums;font-size:.8rem;font-weight:600;line-height:1.5}.pc-key{color:var(--text-3);align-items:center;gap:6px;font-size:.74rem;display:inline-flex}.pc-key-met{background:#a3e635;border-radius:3px;width:10px;height:10px}.pc-chart{transition:opacity .2s}.pc-chart.is-stale{opacity:.45}.pc-plot{touch-action:pan-y;-webkit-user-select:none;user-select:none;border-radius:10px;margin-top:2px;overflow:hidden}.pc-plot svg{display:block}.pc-grid{stroke:rgba(var(--lift-rgb), .07);stroke-width:1px}.pc-base{stroke:rgba(var(--lift-rgb), .16);stroke-width:1px}.pc-bar{fill:#8b5cf6;transition:fill .12s}.pc-bar.is-sel{fill:#a78bfa}.pc-bar.is-now{fill:#22d3ee}.pc-bar.is-now.is-sel{fill:#67e8f9}.pc-bar.is-met{fill:#a3e635}.pc-bar.is-met.is-sel,.pc-bar.is-met.is-now{fill:#bef264}.pc-stub{fill:rgba(var(--lift-rgb), .1)}.pc-stub.is-sel{fill:rgba(var(--lift-rgb), .4)}.pc-area{fill:#8b5cf629}.pc-line{fill:none;stroke:#8b5cf6;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round}.pc-dot{fill:#8b5cf6;stroke:#16151f;stroke-width:2px}.pc-dot.is-sel{fill:#22d3ee}.pc-cross{stroke:rgba(var(--lift-rgb), .22);stroke-width:1px}.pc-axis{font-family:var(--font);fill:var(--text-3);font-variant-numeric:tabular-nums;font-size:11px}.pc-label{paint-order:stroke;stroke:#16151f;stroke-width:3px;stroke-linejoin:round}.ach-rail{--fade-start:0px;--fade-end:0px;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:none;-webkit-mask-image:linear-gradient(90deg, transparent, #000 var(--fade-start), #000 calc(100% - var(--fade-end)), transparent);-webkit-mask-image:linear-gradient(90deg, transparent, #000 var(--fade-start), #000 calc(100% - var(--fade-end)), transparent);mask-image:linear-gradient(90deg, transparent, #000 var(--fade-start), #000 calc(100% - var(--fade-end)), transparent);grid-auto-columns:44%;grid-auto-flow:column;gap:10px;margin:14px -18px 0;padding:0 18px 4px;scroll-padding-inline:18px;list-style:none;display:grid;overflow-x:auto}.ach-rail::-webkit-scrollbar{display:none}.ach-rail.fade-start{--fade-start:28px}.ach-rail.fade-end{--fade-end:40px}.ach-rail:focus-visible{outline-offset:-2px}.ach-rail>.ach{scroll-snap-align:start}.ach-arrows{gap:6px;display:none}.ach-arrow{border:1px solid var(--border);background:var(--surface-2);width:34px;height:34px;color:var(--text);border-radius:10px}@media (hover:hover) and (pointer:fine){.ach-panel .panel-head{align-items:center}.ach-panel .panel-meta{margin-left:auto}.ach-arrows{display:inline-flex}.ach-arrow:hover:not(:disabled){background:var(--surface-3)}}.ach-see-all{justify-content:center;align-items:center;min-height:44px;margin:6px auto -8px;padding:0 14px;font-size:.88rem;line-height:1.5;display:flex}html.is-sheet-locked,html.is-sheet-locked body{overflow:hidden}.sheet-panel.ach-sheet-panel{max-height:92vh;flex-direction:column;max-height:92dvh;padding:0;display:flex;overflow:hidden}.ach-sheet-head{border-bottom:1px solid var(--border);flex:none;padding:8px 10px 4px 18px}.ach-sheet-grip{cursor:pointer;margin-bottom:4px;position:relative}.ach-sheet-grip:before{content:"";position:absolute;inset:-8px -48px -6px}.ach-sheet-bar{align-items:center;gap:10px;padding-bottom:4px;display:flex}.ach-sheet-title{font-size:1.1rem;font-weight:600;line-height:1.4}.ach-sheet-bar .panel-meta{white-space:nowrap;font-variant-numeric:tabular-nums;margin-left:auto}.ach-sheet-close{border:1px solid var(--border);background:var(--surface-2);width:44px;height:44px;color:var(--text)}.ach-sheet-body{min-height:0;padding:8px 12px calc(12px + var(--safe-b));overscroll-behavior:contain;flex:auto;overflow-y:auto}.ach-group+.ach-group{margin-top:10px}.ach-group-title{color:var(--text-2);align-items:center;gap:8px;margin:0 2px 6px;font-size:.82rem;font-weight:600;line-height:1.5;display:flex}.ach-group-count{background:var(--surface-2);text-align:center;font-variant-numeric:tabular-nums;border-radius:999px;min-width:22px;padding:0 7px;font-size:.72rem;line-height:1.6}.ach-sheet-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0;padding:0;list-style:none;display:grid}@media (max-width:339.98px){.ach-sheet-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:560px){.ach-sheet-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}.ach.is-compact{text-align:center;border-radius:14px;align-items:center;gap:0;min-width:0;padding:8px 6px 7px}.ach.is-compact .ach-icon{border-radius:10px;width:32px;height:32px;margin-bottom:4px}.ach.is-compact.is-unlocked .ach-icon{box-shadow:0 6px 14px -6px rgba(var(--accent-deep-rgb), .9)}.ach.is-compact.is-locked .ach-icon>svg{opacity:.75}.ach.is-compact .ach-lock{border-width:1.5px;width:15px;height:15px;bottom:-4px;right:-4px}.ach.is-compact .ach-name{overflow-wrap:break-word;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;max-width:100%;font-size:.8rem;line-height:1.5;display:-webkit-box;overflow:hidden}.ach.is-compact .ach-desc{white-space:nowrap;text-overflow:ellipsis;max-width:100%;font-size:.68rem;line-height:1.5;overflow:hidden}.ach.is-compact .ach-progress{flex-direction:column;align-items:stretch;gap:2px;width:100%;padding:5px 4px 0}.ach.is-compact .ach-progress .xp-bar{flex:none;height:4px}.ach.is-compact .ach-count{font-size:.66rem;line-height:1.3}:root{--ring-new:rgba(var(--lift-rgb), .1);--ring-learning:var(--tier-learning);--ring-known:var(--tier-known);--ring-verified:var(--tier-verified);--ring-anchored:#059669;--ring-mastered:var(--tier-mastered);--ring-legacy-seen:#8b5cf6;--ring-legacy-mastered:#65a30d}.cat-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:4px 6px;margin:14px 0 0;padding:0;list-style:none;display:grid;position:relative}@media (max-width:359.98px){.cat-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.cat-tile{min-width:0}.cat-tile-btn{width:100%;min-width:0;color:inherit;font:inherit;text-align:center;cursor:pointer;background:0 0;border:0;border-radius:12px;flex-direction:column;align-items:center;padding:3px 0 2px;transition:background-color .15s;display:flex}.cat-tile-btn.is-open{background:var(--surface-2)}.cat-ring{place-items:center;margin-bottom:4px;display:grid;position:relative}.cat-ring>svg{position:absolute;inset:0}.cat-ring-track{stroke:var(--ring-new)}.cat-ring-seen{stroke:var(--ring-legacy-seen)}.cat-ring-mastered{stroke:var(--ring-legacy-mastered)}.cat-ring-icon{color:var(--text-2);display:grid;position:relative}.cat-name{white-space:nowrap;text-overflow:ellipsis;max-width:100%;font-size:.74rem;line-height:1.5;overflow:hidden}.cat-nums{color:var(--text-3);font-variant-numeric:tabular-nums;font-size:.68rem;line-height:1.3}.cat-legend{color:var(--text-3);flex-wrap:wrap;justify-content:center;gap:4px 16px;margin-top:14px;font-size:.76rem;display:flex}.cat-legend span{align-items:center;gap:6px;display:inline-flex}.cat-key{border-radius:2px;width:14px;height:4px}.cat-key.is-seen{background:var(--ring-legacy-seen)}.cat-key.is-mastered{background:var(--ring-legacy-mastered)}.cat-legend.is-tiers{gap:4px 12px}.cat-legend.is-tiers span{white-space:nowrap;gap:5px}.cat-dot{border-radius:50%;flex:none;width:8px;height:8px}.cat-dot.is-new{box-shadow:inset 0 0 0 1.5px #ffffff4d}.cat-pop{z-index:5;background:var(--bg-raised);border:1px solid var(--border-strong);text-align:left;width:min(220px,100%);animation:cat-pop-in .16s var(--ease-out);border-radius:14px;padding:10px 12px 9px;position:absolute;top:0;left:0;box-shadow:0 16px 36px #0000008c}.cat-pop:before{content:"";top:-6px;left:calc(var(--arrow,50%) - 5px);background:var(--bg-raised);border-top:1px solid var(--border-strong);border-left:1px solid var(--border-strong);width:10px;height:10px;position:absolute;transform:rotate(45deg)}.cat-pop.is-above{animation-name:cat-pop-in-up}.cat-pop.is-above:before{top:auto;bottom:-6px;transform:rotate(225deg)}@keyframes cat-pop-in{0%{opacity:0;transform:translateY(-4px)}}@keyframes cat-pop-in-up{0%{opacity:0;transform:translateY(4px)}}.cat-pop-title{overflow-wrap:anywhere;margin-bottom:4px;font-size:.86rem;font-weight:600;line-height:1.5}.cat-pop-rows{gap:1px;margin:0;padding:0;list-style:none;display:grid}.cat-pop-row{grid-template-columns:8px 1fr auto;align-items:center;gap:8px;font-size:.8rem;line-height:1.55;display:grid}.cat-pop-row.is-new{border-top:1px solid var(--border);color:var(--text-2);margin-top:3px;padding-top:4px}.cat-pop-num{font-variant-numeric:tabular-nums;font-weight:600}.moment-goal-unit{letter-spacing:.02em;color:var(--text-2);-webkit-text-fill-color:var(--text-2);margin-top:2px;font-size:1rem;font-weight:600;display:block}.xp-fill{background:rgba(var(--raised-rgb,24, 20, 48), .96);cursor:pointer;width:min(272px,88%);animation:rise .28s var(--ease-out) both;border:1.5px solid #bef26480;border-radius:18px;flex-direction:column;align-items:center;gap:7px;margin:12px auto 0;padding:11px 16px 12px;display:flex;box-shadow:0 18px 44px -18px #000c}.xp-fill-bar{background:rgba(var(--lift-rgb), .08);border-radius:999px;width:100%;height:10px;position:relative;overflow:hidden}.xp-fill-bar i{border-radius:inherit;position:absolute;top:0;bottom:0;left:0}.xp-fill-done{background:var(--grad);width:55%;animation:xp-fill-grow .75s .3s var(--ease-out) both}.xp-fill-pending{background:repeating-linear-gradient(-45deg, rgba(var(--accent-2-rgb), .62) 0 3px, rgba(var(--accent-2-rgb), .16) 3px 6px);width:40%;animation:.85s .3s both xp-fill-fade;left:55%}@keyframes xp-fill-grow{to{width:95%}}@keyframes xp-fill-fade{0%,30%{opacity:1}to{opacity:0}}.xp-fill-line{color:var(--ink-lime,#d9f99d);text-align:center;font-size:.92rem;font-weight:600;line-height:1.4}.deck-learn-slot{gap:6px;display:grid}.learn-anyway{min-height:34px;color:var(--text-2);border:1px solid #0000;border-radius:999px;justify-self:center;padding:6px 12px;font-size:.86rem;text-decoration:none}.learn-anyway:active{border-color:var(--border);background:rgba(var(--lift-rgb), .04)}.learn-anyway-btn{min-height:46px;font-size:.95rem}.pace-options{font-variant-numeric:tabular-nums;margin-top:6px}.pace-options .seg-btn{white-space:nowrap;min-height:48px;padding:0 4px;font-size:.95rem}.boss-banner.is-notyet,.boss-hero-card.is-notyet{cursor:default}.boss-hero-card.is-notyet .bhc-retry,.boss-banner.is-notyet .boss-banner-sub{color:var(--text-2)}.sandbox-panel{border-color:#fb718538}.sandbox-panel .panel-title{align-items:center;gap:8px;display:flex}.sandbox-lead{margin:6px 0 0}.sandbox-icon{color:var(--text-3);flex:none}.sandbox-panel .seg-block .seg-btn{white-space:nowrap;font-variant-numeric:tabular-nums;min-height:48px}.sandbox-reset{align-self:flex-end}.speaker{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;touch-action:manipulation;position:relative}.speaker-lg{background:var(--surface-3);width:58px;height:58px;color:var(--text);box-shadow:inset 0 0 0 1.5px rgba(var(--accent-2-rgb), .35);border-radius:19px}.speaker-lg:active:not(:disabled){transform:scale(.92)}.speaker-slow-hint{z-index:3;background:rgba(var(--raised-rgb,24, 20, 48), .96);border:1.5px solid rgba(var(--accent-2-rgb), .5);color:#a5f3fc;white-space:nowrap;pointer-events:none;animation:rise .3s var(--ease-out) both;border-radius:999px;padding:3px 9px;font-size:.72rem;font-weight:600;line-height:1.5;position:absolute;top:calc(100% + 6px);left:50%;transform:translate(-50%)}.round-bar{position:relative}.round-bar.heat-1 .round-seg.is-on{background:linear-gradient(90deg,#fcd34d,#f59e0b);box-shadow:0 0 10px #fbbf2473}.round-bar.heat-2 .round-seg.is-on{background:linear-gradient(90deg,#fdba74,#f97316);box-shadow:0 0 14px #fb923c99}.round-bar.heat-3 .round-seg.is-on{background:linear-gradient(90deg,#fda4af,#f97316);box-shadow:0 0 20px #f97316bf,0 0 6px #fda4afcc}.round-bar-flare{pointer-events:none;background-image:linear-gradient(90deg, transparent, rgba(var(--lift-rgb), .6), transparent);animation:bar-flare .42s var(--ease-out) 1;background-position:-45% 0;background-repeat:no-repeat;background-size:40% 100%;border-radius:999px;position:absolute;inset:-3px -2px}@keyframes bar-flare{0%{background-position:-45% 0}to{background-position:145% 0}}.study-card.is-flipping{animation:.13s ease-in forwards card-flip-out}@keyframes card-flip-out{0%{transform:perspective(900px)rotateY(0)}to{opacity:.94;transform:perspective(900px)rotateY(88deg)}}.study-card.is-revealed:not(.challenge-card){animation:.17s cubic-bezier(.2,.8,.3,1) card-flip-in}@keyframes card-flip-in{0%{opacity:.94;transform:perspective(900px)rotateY(-88deg)}to{opacity:1;transform:perspective(900px)rotateY(0)}}.study-card.is-revealed:not(.challenge-card) .face-back{animation:none}.fast-spark{z-index:4;letter-spacing:.06em;color:#fde68a;background:rgba(var(--raised-rgb,38, 26, 8), .9);pointer-events:none;animation:spark-in .9s var(--ease-out) both;border:1px solid #fcd34d99;border-radius:999px;align-items:center;gap:4px;padding:3px 10px 3px 8px;font-size:.74rem;font-weight:700;display:inline-flex;position:absolute;bottom:14px;right:14px;box-shadow:0 0 18px -4px #fcd34dcc}.fast-spark svg{filter:drop-shadow(0 0 5px #fcd34de6)}@keyframes spark-in{0%{opacity:0;transform:scale(.6)translateY(6px)}22%{opacity:1;transform:scale(1.08)translateY(0)}40%{transform:scale(1)}80%{opacity:1}to{opacity:0}}.ch-stake{background:repeating-linear-gradient(-45deg,#bef26438 0 3px,#bef2640d 3px 6px);position:relative;overflow:hidden}.ch-stake-text{z-index:1;align-items:center;display:inline-flex;position:relative}.ch-stake.is-done{color:var(--ink-lime,#d9f99d);background:repeating-linear-gradient(-45deg,#bef26438 0 3px,#bef2640d 3px 6px);border-style:solid}.ch-stake.is-done .ch-stake-text{animation:.52s forwards stake-ink}.ch-stake-fill{width:0;animation:stake-sweep .52s var(--ease-out) forwards;background:#bef264;border-radius:999px;position:absolute;top:0;bottom:0;left:0;box-shadow:0 0 16px -2px #bef264e6}@keyframes stake-sweep{to{width:100%}}@keyframes stake-ink{0%,45%{color:var(--ink-lime,#d9f99d)}to{color:#10230a}}.ch-stake-check{animation:pop .3s .38s var(--ease-spring) both}.tierups{text-align:center;margin:2px 0 -2px}.tierups-title{letter-spacing:.02em;color:var(--text-3);margin:0 0 8px;font-size:.86rem;font-weight:600}.tierup-list{flex-wrap:wrap;justify-content:center;gap:8px;margin:0;padding:0;list-style:none;display:flex}.tierup-card{width:96px;height:74px;transform-style:preserve-3d;transition:transform .18s var(--ease-out);position:relative}.tierup-card.is-up{transform:rotateY(180deg)}.tierup-face{-webkit-backface-visibility:hidden;backface-visibility:hidden;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:3px;padding:6px 7px;display:flex;position:absolute;inset:0;overflow:hidden}.tierup-back{background:linear-gradient(160deg, rgba(var(--lift-rgb), .1), rgba(var(--lift-rgb), .03));border:1px solid rgba(var(--lift-rgb), .12)}.tierup-back:after{content:"?";color:var(--text-3);font-size:1.3rem;font-weight:700}.tierup-front{background:linear-gradient(180deg, rgba(var(--lift-rgb), .08), rgba(var(--lift-rgb), .03));border:1.5px solid;transform:rotateY(180deg);box-shadow:0 0 20px -8px}.tierup-card.tier-c-new,.tierup-card.tier-c-learning,.tierup-card.tier-c-known,.tierup-card.tier-c-verified,.tierup-card.tier-c-anchored,.tierup-card.tier-c-mastered{background:0 0}.tierup-card.tier-c-new .tierup-front{color:var(--tier-new)}.tierup-card.tier-c-learning .tierup-front{color:var(--tier-learning)}.tierup-card.tier-c-known .tierup-front{color:var(--tier-known)}.tierup-card.tier-c-verified .tierup-front{color:var(--tier-verified)}.tierup-card.tier-c-anchored .tierup-front{color:var(--tier-anchored)}.tierup-card.tier-c-mastered .tierup-front{color:var(--tier-mastered)}.tierup-word{max-width:100%;color:var(--text);-webkit-line-clamp:2;line-clamp:2;overflow-wrap:anywhere;-webkit-box-orient:vertical;font-size:.9rem;font-weight:700;line-height:1.2;display:-webkit-box;overflow:hidden}.tierup-tier{letter-spacing:.02em;color:currentColor;font-size:.68rem;font-weight:600}.tierups-more{color:var(--text-3);margin:8px 0 0;font-size:.8rem}.install-invite{background:var(--surface);border:1px solid var(--border);animation:rise .3s var(--ease-out) both;border-radius:18px;align-items:center;gap:9px;margin:2px 0 -2px;padding:9px 8px 9px 12px;display:flex}.install-invite-icon{color:var(--cyan);display:inline-flex}.install-invite-line{min-width:0;color:var(--text-2);flex:1;font-size:.86rem;line-height:1.3}.install-invite-cta{flex:none;height:36px;padding:0 12px;font-size:.86rem}.install-invite-x{width:32px;height:32px;color:var(--text-3);flex:none}.install-sheet .intro-title{letter-spacing:.04em;align-items:center;gap:10px;font-size:1.55rem;display:flex}.install-sheet .intro-title svg{color:var(--cyan);flex:none}.install-lead{color:var(--text-2);margin:2px 0 12px}.install-steps{text-align:left}.install-note{color:var(--text-3);margin:10px 0 14px;font-size:.82rem}.install-already{align-items:center;gap:6px;display:inline-flex}.intro-icon.is-lime{color:#bef264;background:#bef26424}@media (prefers-reduced-motion:reduce){.study-card.is-flipping,.study-card.is-revealed:not(.challenge-card){animation:none!important;transform:none!important}.fast-spark{opacity:1;animation:none!important}.ch-stake-fill{width:100%;animation:none!important}.ch-stake.is-done .ch-stake-text{color:#10230a;animation:none!important}.ch-stake-check{animation:none!important}.tierup-card{transition:none!important}.round-bar-flare{display:none}.install-invite{animation:none!important}}.level-chip-badge{-webkit-tap-highlight-color:transparent;border-radius:999px;align-items:center;display:flex}.level-chip-badge:active{transform:scale(.94)}.level-chip-main{min-width:0;color:inherit;flex:auto;text-decoration:none;display:flex}.profile-hero-badge{cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;padding:0;display:flex}.profile-hero-badge:active{transform:scale(.96)}.bl-strip{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);width:100%;color:var(--text);text-align:left;cursor:pointer;-webkit-tap-highlight-color:transparent;flex-direction:column;gap:4px;margin:-6px 0 14px;padding:10px 12px 7px;display:flex}.bl-strip:active{background:var(--surface-2)}.bl-stops{justify-content:space-between;align-items:flex-start;gap:4px;display:flex;position:relative}.bl-stops:before{content:"";background:var(--surface-3);border-radius:999px;height:2px;position:absolute;top:17px;left:10%;right:10%}.bl-stop{flex-direction:column;flex:1 1 0;align-items:center;min-width:0;padding-bottom:15px;display:flex;position:relative}.bl-stop-badge{place-items:center;height:36px;padding:0 3px;display:grid;position:relative}.bl-stop.is-locked{opacity:.55}.bl-stop.is-next .bl-stop-badge{box-shadow:0 0 0 2px rgba(var(--accent-2-rgb), .5), 0 0 14px rgba(var(--accent-2-rgb), .22);border-radius:999px}.bl-stop-check{border:1.5px solid var(--bg);background:var(--lime);color:#10230a;border-radius:999px;place-items:center;width:15px;height:15px;display:grid;position:absolute;bottom:-1px;right:-1px}.bl-stop-label{color:var(--cyan);white-space:nowrap;font-variant-numeric:tabular-nums;font-size:.64rem;font-weight:600;line-height:1.2;position:absolute;top:37px;left:50%;transform:translate(-50%)}.bl-strip-cta{color:var(--violet-2);align-self:flex-end;font-size:.74rem;font-weight:600}.bl-strip-cta:after{content:" ›"}.sheet-panel.bl-sheet-panel{max-height:92vh;flex-direction:column;max-height:92dvh;padding:0;display:flex;overflow:hidden}.bl-sheet-head{border-bottom:1px solid var(--border);flex:none;padding:8px 10px 8px 18px}.bl-now{color:var(--text-2);align-items:center;gap:8px;margin-top:2px;font-size:.82rem;display:flex}.bl-sheet-body{min-height:0;padding:10px 14px calc(14px + var(--safe-b));overscroll-behavior:contain;flex:auto;overflow-y:auto}.bl-rows{gap:8px;margin:0;padding:0;list-style:none;display:grid}.bl-row{border:1px solid var(--border);background:var(--surface);border-radius:18px;gap:12px;padding:10px 12px;display:flex}.bl-row.is-next{border-color:rgba(var(--accent-2-rgb), .4);background:radial-gradient(220px 80px at 0% 0%, rgba(var(--accent-2-rgb), .12), transparent 70%), var(--surface-2)}.bl-row.is-passed{border-color:#bef26440}.bl-row.is-locked{opacity:.72}.bl-row-badge{flex:none;align-self:flex-start;position:relative}.bl-row-check{border:2px solid var(--bg-raised);background:var(--lime);color:#10230a;border-radius:999px;place-items:center;width:19px;height:19px;display:grid;position:absolute;bottom:-2px;right:-2px}.bl-row-main{flex-direction:column;flex:auto;gap:1px;min-width:0;display:flex}.bl-row-head{align-items:baseline;gap:8px;display:flex}.bl-row-name{font-size:.98rem;font-weight:600}.bl-row-tag{background:var(--surface-2);color:var(--text-3);white-space:nowrap;border-radius:999px;flex:none;margin-left:auto;padding:1px 8px;font-size:.68rem;font-weight:600}.bl-row.is-passed .bl-row-tag{color:var(--lime);background:#bef26429}.bl-row.is-next .bl-row-tag{background:rgba(var(--accent-2-rgb), .18);color:var(--cyan)}.bl-row-xp{color:var(--text-3);font-variant-numeric:tabular-nums;font-size:.76rem}.bl-row-prize,.bl-row-got{color:var(--text);margin-top:3px;font-size:.84rem;font-weight:500;line-height:1.35}.bl-row-got{color:var(--lime)}.bl-row-status{color:var(--cyan);margin-top:2px;font-size:.84rem;font-weight:600;line-height:1.35}.bl-row-bank,.bl-row-top{color:var(--text-2);margin-top:2px;font-size:.76rem;line-height:1.35}.bl-row-top{color:var(--amber)}.bl-foot{color:var(--text-3);margin:12px 2px 0;font-size:.76rem;line-height:1.4}.boss-banner-prize{color:var(--lime);margin-top:2px;font-size:.8rem;font-weight:600;line-height:1.3}.bhc-prize{color:#ffe9d6;margin-top:3px;font-size:.85rem;font-weight:600;line-height:1.3}.bhc-prize.is-bank{color:#ffd0b0;font-weight:500}.boss-hero-card.is-locked .bhc-prize,.boss-hero-card.is-notyet .bhc-prize{color:var(--text-2);font-weight:500}.boss-rules li.boss-rule-prize{color:var(--text);align-items:flex-start;font-weight:600}.boss-rules li.boss-rule-prize svg{color:var(--amber);flex:none;margin-top:2px}@media (max-width:379px){.bl-stop-label{font-size:.6rem}.bl-strip{padding-inline:8px}}@media (prefers-reduced-motion:reduce){.bl-strip:active,.profile-hero-badge:active,.level-chip-badge:active{transform:none}}.interval-line{animation:interval-in .42s var(--ease-out) both;justify-content:center;align-items:center;gap:8px;margin-top:-2px;padding:0 4px;animation-delay:.3s;display:flex}.interval-text{color:var(--tier-anchored);text-align:center;font-size:.95rem;font-weight:500;line-height:1.45}.interval-why,.rate-help{border:1px solid var(--border-strong);background:var(--surface-2);width:26px;height:26px;color:var(--text-2);-webkit-tap-highlight-color:transparent;border-radius:999px;flex:none;justify-content:center;align-items:center;font-size:.85rem;font-weight:700;line-height:1;display:inline-flex}.interval-why:before,.rate-help:before{content:"";position:absolute;inset:-10px}.interval-why,.rate-help{position:relative}.interval-why:active,.rate-help:active{transform:scale(.9)}@keyframes interval-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.rate-topline{align-items:center;gap:10px;min-height:26px;margin-bottom:8px;display:flex}.rate-when{min-width:0;color:var(--text-2);flex:auto;font-size:.85rem;line-height:1.35}.rate-topline .rate-help{margin-left:auto}.ratings.is-teaching .rate-interval{color:var(--c);opacity:.95;animation:rate-pop .34s var(--ease-out) both;animation-delay:calc(.16s + var(--i,0) * 90ms);font-size:.82rem}.ratings.is-teaching .rate:active:not(:disabled) .rate-interval{transform:scale(1.18)}@keyframes rate-pop{0%{opacity:0;transform:translateY(4px)scale(.6)}70%{opacity:1;transform:translateY(0)scale(1.14)}to{opacity:.95;transform:none}}.rh-head,.mem-bar-head{align-items:center;gap:10px;margin-bottom:8px;display:flex}.rh-title,.mem-head-title{flex:auto;min-width:0;font-size:1.1rem;font-weight:600;line-height:1.4}.rh-close,.mem-close{border:1px solid var(--border);background:var(--surface-2);width:40px;height:40px;color:var(--text);flex:none}.rh-word{justify-content:center;padding:2px 0 6px;display:flex}.rh-lead{color:var(--text-2);text-align:center;margin-bottom:12px;font-size:.92rem;line-height:1.45}.rh-rates .rate{min-height:62px}.rh-rates .rate.is-picked{border-color:var(--c);box-shadow:0 0 0 1px var(--c) inset;filter:brightness(1.15)}.rh-rates .rate-interval{color:var(--c);opacity:.9}.rh-track{height:26px;margin:14px 12px 4px;position:relative}.rh-track-line{background:linear-gradient(90deg, #fb718580, #fbbf2480, #a3e63580, rgba(var(--accent-2-rgb), .5));border-radius:999px;height:3px;position:absolute;top:11px;left:0;right:0}.rh-pin{border:2px solid var(--bg-raised);background:var(--c);opacity:.5;width:15px;height:15px;transition:transform .2s var(--ease-out), opacity .2s;border-radius:999px;margin-left:-7px;position:absolute;top:5px}.rh-pin.is-picked{z-index:1;opacity:1;transform:scale(1.35)}.rh-out{justify-content:center;align-items:baseline;gap:10px;margin-top:10px;display:flex}.rh-out-when{font-size:1.05rem;font-weight:600}.rh-out-xp{color:var(--lime);font-variant-numeric:tabular-nums;font-size:.92rem;font-weight:600}.rh-why{color:var(--text-2);text-align:center;margin-top:4px;font-size:.9rem;line-height:1.5}.rh-ok{margin-top:14px}.mem-panel{padding-top:12px}.mem-visual{padding:4px 0 2px}.mem-svg{width:100%;height:auto;display:block}.mem-axis{stroke:rgba(var(--lift-rgb), .16);stroke-width:1.5px}.mem-bar{fill:var(--violet-2);opacity:.45}.mem-bar.is-high{fill:var(--tier-anchored);opacity:.9}.mem-label{fill:var(--text-2);font-size:12px}.mem-tick{fill:var(--text-3);font-size:11px}.mem-curve{stroke-linecap:round}.mem-curve.is-alone{stroke:rgba(var(--lift-rgb), .24);stroke-width:1.5px;stroke-dasharray:4 4}.mem-curve.is-spaced{stroke:var(--tier-anchored);stroke-width:2.6px}.mem-dot{fill:var(--tier-anchored);stroke:var(--bg-raised);stroke-width:1.5px}.mem-caption{color:var(--text-3);text-align:center;margin-top:2px;font-size:.8rem}.mem-body{margin-top:10px;font-size:1rem;line-height:1.65}.mem-foot{color:var(--text-3);text-align:center;font-variant-numeric:tabular-nums;margin-top:14px;font-size:.82rem}.mem-list{flex-direction:column;gap:8px;margin-top:10px;padding:0;list-style:none;display:flex}.mem-row-btn{border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface);width:100%;min-height:52px;color:var(--text);text-align:start;-webkit-tap-highlight-color:transparent;align-items:center;gap:12px;padding:10px 14px;display:flex}.mem-row-btn:active:not(:disabled){transform:scale(.985)}.mem-row.is-locked .mem-row-btn{opacity:.55}.mem-row-icon{background:rgba(var(--accent-rgb), .16);width:32px;height:32px;color:var(--violet-2);border-radius:999px;flex:none;justify-content:center;align-items:center;display:inline-flex}.mem-row.is-locked .mem-row-icon{background:var(--surface-2);color:var(--text-3)}.mem-row-name{flex:auto;min-width:0;font-size:.95rem;font-weight:500;line-height:1.4}.mem-row-tag{color:var(--text-3);flex:none;font-size:.78rem}.checkup-loans{color:var(--tier-anchored);text-align:center;margin-top:10px;font-size:.92rem;line-height:1.5}@media (prefers-reduced-motion:reduce){.interval-line,.ratings.is-teaching .rate-interval{opacity:1;animation:none;transform:none}.rh-pin{transition:none}}:root{--accent-rgb:139, 92, 246;--accent-deep-rgb:124, 58, 237;--accent-2-rgb:34, 211, 238;--indigo-rgb:99, 102, 241;--glow-a:#7c3aed4d;--glow-b:#22d3ee21;--glow-c:#4f46e524;--btn-glow:#7c3aedd9;--btn-ink:#fff;--again:#fb7185;--hard:#fbbf24;--good:#a3e635;--easy:#22d3ee}.app-glow{background:radial-gradient(520px 360px at 8% -6%, var(--glow-a), transparent 70%), radial-gradient(460px 320px at 105% 2%, var(--glow-b), transparent 70%), radial-gradient(640px 420px at 50% 112%, var(--glow-c), transparent 70%)}.btn-primary{color:var(--btn-ink);box-shadow:0 12px 30px -12px var(--btn-glow), inset 0 1px 0 #ffffff38}[data-theme=steel]{--accent-rgb:59, 130, 246;--accent-deep-rgb:37, 99, 235;--accent-2-rgb:103, 232, 249;--indigo-rgb:29, 78, 216;--bg:#080b13;--bg-raised:#121a2b;--violet:#3b82f6;--violet-2:#93c5fd;--indigo:#1d4ed8;--cyan:#67e8f9;--grad:linear-gradient(120deg, #60a5fa 0%, #3b82f6 48%, #67e8f9 100%);--glow-a:#3b82f64d;--glow-b:#67e8f924;--glow-c:#1d4ed829;--btn-glow:#2563ebd9;--hm-1:#3b82f659;--hm-2:#3b82f699;--hm-3:#3b82f6;--hm-4:#67e8f9}[data-theme=lava]{--accent-rgb:249, 115, 22;--accent-deep-rgb:234, 88, 12;--accent-2-rgb:251, 191, 36;--indigo-rgb:220, 38, 38;--bg:#120a08;--bg-raised:#251310;--violet:#f97316;--violet-2:#fdba74;--indigo:#dc2626;--cyan:#fb923c;--grad:linear-gradient(120deg, #fb7185 0%, #f97316 50%, #fbbf24 100%);--glow-a:#f9731647;--glow-b:#fbbf2424;--glow-c:#dc262629;--btn-glow:#ea580cd9;--btn-ink:#2a1002;--hm-1:#f9731659;--hm-2:#f9731699;--hm-3:#f97316;--hm-4:#fbbf24}[data-theme=jade]{--accent-rgb:16, 185, 129;--accent-deep-rgb:5, 150, 105;--accent-2-rgb:110, 231, 183;--indigo-rgb:4, 120, 87;--bg:#06110d;--bg-raised:#0f2119;--violet:#10b981;--violet-2:#6ee7b7;--indigo:#047857;--cyan:#34d399;--grad:linear-gradient(120deg, #34d399 0%, #10b981 50%, #a7f3d0 100%);--glow-a:#10b98147;--glow-b:#a7f3d01f;--glow-c:#0478572e;--btn-glow:#059669d9;--btn-ink:#022c1d;--hm-1:#10b98159;--hm-2:#10b98199;--hm-3:#10b981;--hm-4:#6ee7b7}[data-theme=neon]{--accent-rgb:217, 70, 239;--accent-deep-rgb:192, 38, 211;--accent-2-rgb:34, 211, 238;--indigo-rgb:162, 28, 175;--bg:#0b0714;--bg-raised:#1b0f2a;--violet:#d946ef;--violet-2:#f0abfc;--indigo:#a21caf;--cyan:#22d3ee;--grad:linear-gradient(120deg, #f472b6 0%, #d946ef 50%, #22d3ee 100%);--glow-a:#d946ef4d;--glow-b:#22d3ee24;--glow-c:#a21caf2e;--btn-glow:#c026d3d9;--hm-1:#d946ef59;--hm-2:#d946ef99;--hm-3:#d946ef;--hm-4:#22d3ee}[data-theme=gold]{--accent-rgb:245, 158, 11;--accent-deep-rgb:217, 119, 6;--accent-2-rgb:253, 230, 138;--indigo-rgb:180, 83, 9;--bg:#100c06;--bg-raised:#1f1809;--violet:#f59e0b;--violet-2:#fcd34d;--indigo:#b45309;--cyan:#fde68a;--grad:linear-gradient(120deg, #fcd34d 0%, #f59e0b 50%, #fde68a 100%);--glow-a:#f59e0b47;--glow-b:#fde68a24;--glow-c:#b453092e;--btn-glow:#d97706d9;--btn-ink:#241704;--hm-1:#f59e0b59;--hm-2:#f59e0b99;--hm-3:#f59e0b;--hm-4:#fcd34d}.theme-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;width:100%;display:grid}.theme-card{border:1px solid var(--border);border-radius:var(--radius,16px);background:var(--surface);color:var(--text);text-align:left;font:inherit;cursor:pointer;transition:border-color .2s var(--ease-out), background .2s var(--ease-out), transform .12s var(--ease-out);align-items:center;gap:10px;padding:12px;display:flex}.theme-card:active:not(:disabled){transform:scale(.985)}.theme-card[aria-checked=true]{border-color:var(--border-strong);background:var(--surface-2);box-shadow:inset 0 0 0 1px var(--violet-2)}.theme-card:disabled{cursor:default;opacity:.55}.theme-dots{flex:none;align-items:center;display:flex}.theme-dots i{border:1px solid #00000059;border-radius:50%;width:16px;height:16px;margin-left:-6px}.theme-dots i:first-child{margin-left:0}.theme-card-text{flex-direction:column;gap:2px;min-width:0;display:flex}.theme-name{font-weight:600;line-height:1.2}.theme-state{color:var(--text-3);font-size:.78rem;line-height:1.2}.theme-card[aria-checked=true] .theme-state{color:var(--violet-2)}.theme-won{border:1px solid var(--border-strong);border-radius:var(--radius,16px);background:var(--surface);flex-direction:column;gap:12px;width:100%;padding:16px;display:flex}.theme-won-head{align-items:center;gap:12px;display:flex}.theme-won-kicker{color:var(--text-3);letter-spacing:.08em;text-transform:uppercase;font-size:.75rem}.theme-won-name{font-size:1.05rem;font-weight:700;line-height:1.25}.theme-won-actions{gap:10px;display:flex}.theme-won-actions .btn{flex:1 1 0}.theme-won-note{color:var(--text-3);text-align:center;font-size:.78rem}@media (prefers-reduced-motion:reduce){.theme-card{transition:none}}.rh-honest{color:var(--text-3);margin:-4px 0 0;font-size:.82rem;line-height:1.45}:root{--lift-rgb:255, 255, 255;--ground-rgb:11, 10, 20}[data-mode=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--lift-rgb:0, 0, 0;--ground-rgb:248, 247, 252;--bg:#f6f5fb;--bg-raised:#fff;--surface:#00000009;--surface-2:#0000000f;--surface-3:#0000001a;--border:#0000001a;--border-strong:#0000002e;--text:#16151f;--text-2:#4b4860;--text-3:#6f6b85;--again:#e11d48;--hard:#b45309;--good:#4d7c0f;--easy:#0e7490;--hm-0:#0000000f;--tier-new:#00000040;--tier-learning:#c2410c;--tier-known:#7c3aed;--tier-verified:#0e7490;--tier-anchored:#047857;--tier-mastered:#4d7c0f;--grad-lime:linear-gradient(120deg, #65a30d 0%, #15803d 100%)}[data-mode=light] .app-glow{background:radial-gradient(520px 360px at 8% -6%, rgba(var(--accent-rgb), .1), transparent 70%), radial-gradient(460px 320px at 105% 2%, rgba(var(--accent-2-rgb), .07), transparent 70%), radial-gradient(640px 420px at 50% 112%, rgba(var(--indigo-rgb), .07), transparent 70%)}[data-mode=light] .panel,[data-mode=light] .glass{box-shadow:0 1px 2px #0000000a,0 8px 24px -16px #0000002e}[data-mode=light]{--violet:#7c3aed;--violet-2:#6d28d9;--indigo:#4f46e5;--cyan:#0e7490;--accent-rgb:124, 58, 237;--accent-deep-rgb:91, 33, 182;--accent-2-rgb:14, 116, 144;--indigo-rgb:79, 70, 229;--grad:linear-gradient(120deg, #7c3aed 0%, #4f46e5 48%, #0891b2 100%);--btn-glow:#7c3aed66;--hm-1:#7c3aed40;--hm-2:#7c3aed80;--hm-3:#7c3aed;--hm-4:#0891b2}[data-mode=light][data-theme=steel]{--violet:#1d4ed8;--violet-2:#1e40af;--indigo:#1e3a8a;--cyan:#0369a1;--accent-rgb:29, 78, 216;--accent-deep-rgb:30, 58, 138;--accent-2-rgb:3, 105, 161;--indigo-rgb:30, 64, 175;--grad:linear-gradient(120deg, #2563eb 0%, #1d4ed8 48%, #0891b2 100%);--btn-glow:#1d4ed866;--hm-1:#1d4ed840;--hm-2:#1d4ed880;--hm-3:#1d4ed8;--hm-4:#0891b2}[data-mode=light][data-theme=lava]{--violet:#c2410c;--violet-2:#9a3412;--indigo:#b91c1c;--cyan:#b45309;--accent-rgb:194, 65, 12;--accent-deep-rgb:154, 52, 18;--accent-2-rgb:180, 83, 9;--indigo-rgb:185, 28, 28;--grad:linear-gradient(120deg, #e11d48 0%, #ea580c 50%, #d97706 100%);--btn-glow:#c2410c66;--hm-1:#c2410c40;--hm-2:#c2410c80;--hm-3:#c2410c;--hm-4:#d97706}[data-mode=light][data-theme=jade]{--violet:#047857;--violet-2:#065f46;--indigo:#115e59;--cyan:#0f766e;--accent-rgb:4, 120, 87;--accent-deep-rgb:6, 95, 70;--accent-2-rgb:15, 118, 110;--indigo-rgb:17, 94, 89;--grad:linear-gradient(120deg, #059669 0%, #047857 50%, #0f766e 100%);--btn-glow:#04785766;--hm-1:#04785740;--hm-2:#04785780;--hm-3:#047857;--hm-4:#0f766e}[data-mode=light][data-theme=neon]{--violet:#a21caf;--violet-2:#86198f;--indigo:#701a75;--cyan:#0e7490;--accent-rgb:162, 28, 175;--accent-deep-rgb:134, 25, 143;--accent-2-rgb:14, 116, 144;--indigo-rgb:112, 26, 117;--grad:linear-gradient(120deg, #db2777 0%, #a21caf 50%, #0e7490 100%);--btn-glow:#a21caf66;--hm-1:#a21caf40;--hm-2:#a21caf80;--hm-3:#a21caf;--hm-4:#0e7490}[data-mode=light][data-theme=gold]{--violet:#b45309;--violet-2:#92400e;--indigo:#854d0e;--cyan:#a16207;--accent-rgb:180, 83, 9;--accent-deep-rgb:146, 64, 14;--accent-2-rgb:161, 98, 7;--indigo-rgb:133, 77, 14;--grad:linear-gradient(120deg, #d97706 0%, #b45309 50%, #a16207 100%);--btn-glow:#b4530966;--hm-1:#b4530940;--hm-2:#b4530980;--hm-3:#b45309;--hm-4:#a16207}.mode-seg{width:100%}[data-mode=light]{--raised-rgb:255, 255, 255;--ink-lime:#3f6212;--ink-amber:#92400e;--ink-accent:var(--violet-2);--lime:#4d7c0f;--amber:#b45309;--flame:#c2410c;--rose:#e11d48;--btn-ink:#fff}[data-mode=light] .deck-btn.is-primary,[data-mode=light] .btn-primary,[data-mode=light] .seg-btn[aria-checked=true],[data-mode=light] .switch[aria-checked=true],[data-mode=light] .ach.is-unlocked .ach-icon,[data-mode=light] .course-option[aria-checked=true] .course-glyph,[data-mode=light] .course-card[aria-checked=true] .course-glyph,[data-mode=light] .ch-badge-status.is-current{--lift-rgb:255, 255, 255;--text:#fff;--text-2:#ffffffdb;--text-3:#ffffffb8;color:#fff}.tier-legend{color:var(--text-2);flex-wrap:wrap;align-items:baseline;gap:4px 12px;margin:0 0 6px;padding:0;font-size:.78rem;list-style:none;display:flex}.tier-legend li{align-items:center;gap:5px;display:inline-flex}.tier-legend i{border-radius:50%;width:10px;height:10px}.tier-legend b{color:var(--text);font-variant-numeric:tabular-nums}.tier-legend-date{color:var(--text-3);flex-basis:100%}:root{--tier-new:#ffffff47;--tier-learning:#fb923c;--tier-known:#a78bfa;--tier-verified:#22d3ee;--tier-anchored:#34d399;--tier-mastered:#a3e635}[data-mode=light]{--tier-new:#00000040;--tier-learning:#c2410c;--tier-known:#7c3aed;--tier-verified:#0e7490;--tier-anchored:#047857;--tier-mastered:#65a30d}[data-mode=light] .app-glow:after{background:radial-gradient(560px 380px at 8% -8%, #e11d2a1f, transparent 70%), radial-gradient(480px 340px at 105% 0%, #ff7a1f17, transparent 70%), radial-gradient(640px 420px at 50% 115%, #b41e1414, transparent 70%), rgb(var(--ground-rgb))}[data-mode=light] .boss-hero-card.is-ready,[data-mode=light] .boss-pill.is-summary{--lift-rgb:255, 255, 255;--text:#fff;--text-2:#ffffffdb;--text-3:#ffffffb8;color:#fff}[data-mode=light] .run-revenge-kicker,[data-mode=light] .run-stage-chip.is-revenge{color:#9a3412}[data-mode=light] .run-revenge-go{background:linear-gradient(135deg,#b3121b,#c2410c)}[data-mode=light] .run-word{color:#f4f3fb}[data-mode=light] .run-kicker{color:#7f7c98}[data-mode=light]{--text-3:#5f5b70;--lime:#3f6212;--amber:#92400e;--flame:#9a3412;--rose:#be123c}[data-mode=light] .bl-stop-check,[data-mode=light] .bl-row-check{color:#fff}[data-mode=light] .mood-boss{--violet:#c2410c;--violet-2:#9a3412;--indigo:#b3121b;--ember-text:#9a3412;--ember-soft:#c2410c;--tier-known:#9a3412}[data-mode=light] .boss-hero-card.is-ready,[data-mode=light] .boss-pill.is-summary{--ember-text:#ffb38a;--ember-soft:#ff9a5c;--violet-2:#ff9a5c}[data-mode=light] .pending-line b,[data-mode=light] .challenge-chip,[data-mode=light] .boss-calm .boss-retry,[data-mode=light] .boss-cooldown,[data-mode=light] .speaker-slow-hint{color:var(--cyan)}[data-mode=light] .badge-anchored{color:var(--tier-anchored)}[data-mode=light] .fast-spark{color:var(--amber)}[data-mode=light] .intro-icon.is-lime{color:var(--lime)}[data-mode=light] .boss-pill:not(.is-summary){color:#9a3412}[data-mode=light]{--cyan:#155e75}[data-mode=light][data-theme=steel]{--cyan:#075985}[data-mode=light][data-theme=lava]{--cyan:#92400e}[data-mode=light][data-theme=jade]{--cyan:#115e59}[data-mode=light][data-theme=neon]{--cyan:#155e75}[data-mode=light][data-theme=gold]{--cyan:#854d0e}[data-mode=light] .deck-btn.is-primary,[data-mode=light] .btn-primary,[data-mode=light] .seg-btn[aria-checked=true],[data-mode=light] .switch[aria-checked=true],[data-mode=light] .ach.is-unlocked .ach-icon,[data-mode=light] .course-option[aria-checked=true] .course-glyph,[data-mode=light] .course-card[aria-checked=true] .course-glyph,[data-mode=light] .ch-badge-status.is-current{--grad:linear-gradient(120deg, var(--violet) 0%, var(--violet-2) 50%, var(--cyan) 100%);--grad-hot:var(--grad)}[data-mode=light] .deck-btn.is-done .deck-sub{opacity:1}[data-mode=light] .sheet::backdrop{background:#05040c6b}[data-mode=light] .dialog::backdrop{background:#05040c66}[data-mode=light] .sheet-panel{box-shadow:0 -1px 2px #0000000a,0 -18px 44px -14px #00000029}[data-mode=light] .dialog{box-shadow:0 1px 2px #0000000a,0 24px 56px -24px #0003}[data-mode=light] .toast{box-shadow:0 1px 2px #0000000d,0 14px 32px -14px #0003}[data-mode=light] .study-card{box-shadow:0 1px 2px #0000000a,0 26px 52px -30px #00000038}[data-mode=light] .cat-pop{box-shadow:0 1px 2px #0000000d,0 14px 30px -14px #0003}[data-mode=light] .xp-fill{box-shadow:0 1px 2px #0000000d,0 16px 36px -18px #00000038}[data-mode=light] .course-card[aria-checked=true] .course-radio{box-shadow:inset 0 0 0 4px var(--bg-raised)}[data-mode=light]{--again:#be123c;--hard:#92400e;--good:#3f6212;--easy:#155e75}[data-mode=light] .rank-badge.is-locked .rb-num{fill:#fff}[data-mode=light] .ch-option .kbd-hint,[data-mode=light] .rate .kbd-hint{opacity:1;color:var(--text-2)}.run-hall{padding-bottom:calc(24px + var(--safe-b));flex-direction:column;gap:12px;display:flex}.run-hall-top{align-items:center;gap:4px;margin:0 -8px;display:flex}.run-hall-title{text-align:center;letter-spacing:.14em;flex:1;font-size:1.1rem;font-weight:700}.run-hall-spacer{flex:none;width:48px}.run-stage-card{border-radius:var(--radius);border:1px solid var(--border);background:radial-gradient(120% 80% at 50% 108%, rgba(var(--accent-rgb), .28), transparent 68%), linear-gradient(180deg, rgba(var(--lift-rgb), .05), rgba(var(--lift-rgb), .015));place-items:end center;height:210px;display:grid;position:relative;overflow:hidden}.run-stage-card:after{content:"";background:linear-gradient(90deg, transparent, rgba(var(--accent-2-rgb), .7), transparent);height:1px;position:absolute;bottom:34%;left:0;right:0}.run-stage-card.is-locked{filter:grayscale(.55);opacity:.72}.run-hall-avatar{z-index:1;width:100%;height:100%;position:relative}.run-lock{background:rgba(var(--lift-rgb), .1);width:34px;height:34px;color:var(--text-2);z-index:2;border-radius:12px;place-items:center;display:grid;position:absolute;top:12px;right:12px}.run-tagline{text-align:center;color:var(--text-2);font-size:.92rem}.run-record{border-radius:var(--radius-sm);align-items:center;gap:10px;padding:12px 14px;display:flex}.run-record-icon{background:rgba(var(--accent-rgb), .18);width:32px;height:32px;color:var(--violet-2);border-radius:10px;flex:none;place-items:center;display:grid}.run-record-main{flex-direction:column;line-height:1.15;display:flex}.run-record-main b{font-variant-numeric:tabular-nums;font-size:1.25rem;font-weight:700}.run-record-main span{color:var(--text-3);text-transform:uppercase;letter-spacing:.08em;font-size:.74rem}.run-record-side{text-align:right;color:var(--text-2);margin-left:auto;font-size:.82rem}.run-go{margin-top:4px}.run-note{text-align:center;color:var(--text-3);font-size:.86rem}.run-note.is-error{color:var(--rose)}.run-closed{border-radius:var(--radius);flex-direction:column;gap:10px;padding:16px;display:flex}.run-closed-main{font-size:1.02rem;font-weight:600}.run-closed-sub{color:var(--text-2);font-size:.88rem}.run-honest{text-align:center;color:var(--text-3);margin-top:auto;padding-top:10px;font-size:.78rem}html.is-running-game,html.is-running-game body{overscroll-behavior:none;touch-action:none;overflow:hidden}.run-stage{z-index:40;background:var(--bg);touch-action:none;overscroll-behavior:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;position:fixed;inset:0;overflow:hidden}.run-canvas{width:100%;height:100%;display:block;position:absolute;inset:0}.run-labels{pointer-events:none;--run-label-w:110px;position:absolute;inset:0}.run-label{width:max-content;max-width:var(--run-label-w);text-align:center;text-wrap:balance;overflow-wrap:anywhere;color:var(--text);background:rgba(var(--ground-rgb), .72);border:1px solid rgba(var(--accent-rgb), .35);will-change:transform, opacity;transform-origin:0 0;contain:layout paint;border-radius:10px;padding:4px 8px;font-size:17px;font-weight:600;line-height:1.2;position:absolute;top:0;left:0;box-shadow:0 2px 10px -6px #0009}.run-label.is-right{color:var(--bg);background:var(--cyan);border-color:var(--cyan)}.run-label.is-wrong{border-color:var(--amber);color:var(--amber)}.run-progress{top:calc(var(--safe-t) + 0px);background:rgba(var(--lift-rgb), .1);z-index:3;height:3px;position:absolute;left:0;right:0}.run-progress i{background:var(--grad);width:0;height:100%;transition:width .25s var(--ease-out);display:block}.run-hud{top:calc(var(--safe-t) + 6px);left:max(10px, env(safe-area-inset-left,0px));right:max(10px, env(safe-area-inset-right,0px));z-index:3;pointer-events:none;align-items:center;gap:10px;display:flex;position:absolute}.run-pause{pointer-events:auto;background:rgba(var(--ground-rgb), .55);border-radius:12px;width:40px;height:40px}.run-shields{gap:5px;display:flex}.run-shield{background:var(--cyan);width:14px;height:16px;box-shadow:0 0 10px -2px var(--cyan);transition:background .2s, transform .2s var(--ease-spring), opacity .2s;border-radius:4px 4px 7px 7px}.run-shield.is-lost{background:rgba(var(--lift-rgb), .18);box-shadow:none;opacity:.6;transform:scale(.8)}.run-score{font-variant-numeric:tabular-nums;text-shadow:0 2px 8px #00000073;align-items:baseline;gap:6px;margin-left:auto;font-size:1.35rem;font-weight:700;display:flex}.run-combo{color:var(--text-3);opacity:0;transition:opacity .18s, transform .18s var(--ease-spring), color .18s;font-size:.95rem;font-weight:700;transform:scale(.8)}.run-combo.is-on{opacity:1;color:var(--cyan);transform:scale(1)}.run-combo.is-hot{color:var(--amber);text-shadow:0 0 14px #fbbf2499}.run-question{top:calc(var(--safe-t) + 54px);z-index:2;pointer-events:none;text-align:center;flex-direction:column;align-items:center;gap:2px;display:flex;position:absolute;left:12px;right:12px}.run-kicker{letter-spacing:.1em;text-transform:uppercase;color:var(--text-3);font-size:.72rem}.run-word{text-shadow:0 2px 14px #00000073;font-size:clamp(1.5rem,7.4vw,2.1rem);font-weight:700;line-height:1.25}.run-question{position:relative}.run-question.is-revealing .run-kicker,.run-question.is-revealing .run-word{opacity:0}.run-reveal{border:1.5px solid var(--amber);background:rgba(var(--ground-rgb), .86);text-align:center;opacity:0;pointer-events:none;width:max-content;max-width:min(92vw,420px);transition:opacity .16s, transform .2s var(--ease-out);border-radius:18px;flex-direction:column;align-items:center;gap:2px;padding:10px 18px 12px;display:flex;position:absolute;top:0;left:50%;transform:translate(-50%,-6px)scale(.96);box-shadow:0 8px 30px #00000073}.run-reveal.is-on{opacity:1;transform:translate(-50%)}.run-reveal-tag{letter-spacing:.12em;text-transform:uppercase;color:var(--amber);font-size:.68rem;font-weight:700}.run-reveal-q{opacity:.8;font-size:.95rem;font-weight:600}.run-reveal-a{font-size:clamp(1.5rem,7.4vw,2.1rem);font-weight:700;line-height:1.25}.run-reveal-rom{opacity:.85;font-size:1rem;font-weight:600}.run-hint{left:0;right:0;bottom:calc(18px + var(--safe-b));z-index:2;pointer-events:none;color:var(--text-2);justify-content:center;align-items:center;gap:10px;font-size:.86rem;display:flex;position:absolute}.run-hint span{color:var(--cyan);font-size:1.3rem;animation:1.4s ease-in-out infinite run-nudge}.run-hint span:last-child{animation-delay:.7s}@keyframes run-nudge{0%,to{opacity:.55;transform:translate(0)}50%{opacity:1;transform:translate(-5px)}}.run-hint span:last-child{animation-name:run-nudge-r}@keyframes run-nudge-r{0%,to{opacity:.55;transform:translate(0)}50%{opacity:1;transform:translate(5px)}}.run-count{z-index:5;pointer-events:none;place-items:center;display:grid;position:absolute;inset:0}.run-count-num{letter-spacing:.04em;color:var(--text);text-shadow:0 6px 30px rgba(var(--accent-rgb), .7);animation:run-pop .45s var(--ease-out) both;font-size:4.2rem;font-weight:800}@keyframes run-pop{0%{opacity:0;transform:scale(1.5)}to{opacity:1;transform:scale(1)}}.run-overlay{z-index:6;background:rgba(var(--ground-rgb), .72);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);place-items:center;padding:20px;display:grid;position:absolute;inset:0}.run-overlay.is-quiet{background:rgba(var(--ground-rgb), .35);-webkit-backdrop-filter:none}.run-panel{border-radius:var(--radius);text-align:center;flex-direction:column;gap:10px;width:100%;max-width:320px;padding:20px;display:flex}.run-panel h2{font-size:1.2rem;font-weight:700}.run-panel p{color:var(--text-2);margin-bottom:4px;font-size:.9rem}.run-end{min-height:calc(100dvh - var(--safe-t));padding:12px 0 calc(16px + var(--safe-b));flex-direction:column;display:flex}.run-end-hero{text-align:center;padding:18px 0 14px}.run-end-score{font-variant-numeric:tabular-nums;animation:run-pop .5s var(--ease-spring) both;font-size:3.4rem;font-weight:800;line-height:1}.run-end-score.is-perfect{background:var(--grad);color:#0000;-webkit-background-clip:text;background-clip:text}.run-end-sub{letter-spacing:.1em;text-transform:uppercase;color:var(--text-3);margin-top:6px;font-size:.8rem}.run-tile,.run-offer{border-radius:var(--radius-sm);border:1px solid var(--border);background:rgba(var(--lift-rgb), .04);color:inherit;align-items:center;gap:10px;margin-top:8px;padding:10px 12px;text-decoration:none;display:flex}.run-tile-icon{background:rgba(var(--lift-rgb), .08);width:28px;height:28px;color:var(--text-3);border-radius:9px;flex:none;place-items:center;display:grid}.run-tile-text{flex-direction:column;min-width:0;line-height:1.2;display:flex}.run-tile-text b{letter-spacing:.1em;font-size:.86rem;font-weight:700}.run-tile-text span{color:var(--text-3);text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;overflow:hidden}.run-tile.is-open{border-color:rgba(var(--accent-rgb), .4);background:linear-gradient(120deg, rgba(var(--accent-rgb), .16), rgba(var(--accent-2-rgb), .1));box-shadow:0 10px 26px -20px rgba(var(--accent-rgb), .9)}.run-tile.is-open .run-tile-icon{background:rgba(var(--accent-rgb), .28);color:var(--violet-2)}.run-tile.is-open .run-tile-text span{color:var(--text-2)}.run-tile.is-locked{opacity:.66}.run-offer{border-color:rgba(var(--accent-rgb), .4);background:linear-gradient(120deg, rgba(var(--accent-rgb), .16), rgba(var(--accent-2-rgb), .1));margin:4px 0 12px;font-size:.9rem;font-weight:600}.run-offer .deck-chev{color:var(--text-3);margin-left:auto}.run-offer .run-tile-icon{background:rgba(var(--accent-rgb), .28);color:var(--violet-2)}@media (max-height:700px){.run-stage-card{height:164px}.run-word{font-size:clamp(1.3rem,6.6vw,1.7rem)}.run-end-score{font-size:2.8rem}.run-end-hero{padding:10px 0 8px}}@media (prefers-reduced-motion:reduce){.run-count-num,.run-end-score,.run-hint span{animation:none}.run-progress i,.run-shield,.run-combo,.run-reveal{transition:none}}.run-rom{font-family:var(--font-latin,inherit);letter-spacing:.01em;opacity:.82;margin-top:1px;font-size:.68em;font-weight:600;display:block}.run-cast{grid-auto-columns:1fr;grid-auto-flow:column;gap:8px;margin-top:12px;display:grid}.run-cast-chip{border:1px solid rgba(var(--lift-rgb), .12);background:rgba(var(--lift-rgb), .05);min-width:0;color:inherit;font:inherit;cursor:pointer;border-radius:14px;flex-direction:column;align-items:center;gap:4px;padding:10px 2px 8px;font-size:.72rem;font-weight:600;display:flex;position:relative}.run-cast-chip span{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.run-cast-chip.is-active{border-color:rgba(var(--accent-2-rgb), .9);background:rgba(var(--accent-rgb), .22);box-shadow:0 0 18px rgba(var(--accent-rgb), .35)}.run-cast-chip.is-locked{opacity:.55}.run-cast-chip.is-locked.is-active{opacity:.9}.run-cast-lock{position:absolute;top:6px;right:7px}.run-ladder{text-align:center;margin:14px 0 10px}.run-ladder-pips{justify-content:center;gap:8px;margin-bottom:8px;display:flex}.run-ladder-pip{background:rgba(var(--lift-rgb), .12);border-radius:999px;width:34px;height:8px}.run-ladder-pip.is-done{background:rgb(var(--accent-2-rgb))}.run-ladder-pip.is-now{background:linear-gradient(90deg, rgb(var(--accent-rgb)), rgb(var(--accent-2-rgb)));box-shadow:0 0 12px rgba(var(--accent-rgb), .7)}.run-ladder-text{opacity:.85;flex-direction:column;gap:2px;margin:0;font-size:.86rem;display:flex}.run-ladder-text b{letter-spacing:.04em;font-size:1rem}.run-ladder-day,.run-end-day{opacity:.8;margin:6px 0 0;font-size:.84rem;font-weight:600}.run-end-ladder{opacity:.85;margin:8px 0 0;font-weight:700}.run-end-ladder.is-up{color:rgb(var(--accent-2-rgb));opacity:1}.profile-hero:has(.profile-runner){grid-template-columns:auto 1fr auto}.profile-runner{background:radial-gradient(circle at 50% 78%, rgba(var(--accent-rgb), .35), rgba(var(--lift-rgb), .04) 70%);border:1px solid rgba(var(--lift-rgb), .1);border-radius:18px;grid-area:1/3;width:84px;height:104px;display:block;overflow:hidden}.profile-runner canvas{width:100%;height:100%;display:block}.run-tile{border-radius:var(--radius-md,18px);gap:12px;margin:12px 0;padding:8px 12px 8px 8px;position:relative;overflow:hidden}.run-tile.is-open{border:1.5px solid rgba(var(--accent-2-rgb), .55);background:radial-gradient(120% 140% at 0% 50%, rgba(var(--accent-rgb), .38), transparent 60%), linear-gradient(100deg, rgba(var(--accent-deep-rgb,var(--accent-rgb)), .3), rgba(var(--accent-2-rgb), .16));box-shadow:0 0 22px -6px rgba(var(--accent-2-rgb), .55), 0 12px 28px -18px rgba(var(--accent-rgb), .9)}.run-tile-face{background:radial-gradient(circle at 50% 70%, rgba(var(--accent-rgb), .55), rgba(var(--ground-rgb), .5));border:1px solid rgba(var(--lift-rgb), .16);border-radius:16px;flex:none;width:56px;height:56px;overflow:hidden}.run-tile-face img{object-fit:cover;width:100%;height:100%;display:block;transform:scale(1.2)translateY(-9%)}.run-tile.is-locked .run-tile-face img{filter:grayscale()brightness(.6)}.run-tile .run-tile-text{flex:1;gap:1px}.run-tile .run-tile-text b{letter-spacing:.12em;font-size:1rem}.run-tile-pips{gap:4px;margin-top:5px;display:flex}.run-tile-pips i{background:rgba(var(--lift-rgb), .16);border-radius:999px;width:18px;height:4px}.run-tile-pips i.is-done{background:rgb(var(--accent-2-rgb))}.run-tile-pips i.is-now{background:linear-gradient(90deg, rgb(var(--accent-rgb)), rgb(var(--accent-2-rgb)));box-shadow:0 0 8px rgba(var(--accent-rgb), .8)}.run-tile-cta{background:rgba(var(--lift-rgb), .08);width:42px;height:42px;color:var(--text-3);border-radius:50%;flex:none;place-items:center;display:grid}.run-tile.is-open .run-tile-cta{background:linear-gradient(135deg, rgb(var(--accent-rgb)), rgb(var(--accent-2-rgb)));color:#fff;box-shadow:0 0 16px rgba(var(--accent-2-rgb), .6)}.run-stars{color:rgba(var(--lift-rgb), .22);gap:1px;display:inline-flex}.run-stars .is-on{color:var(--amber);filter:drop-shadow(0 0 4px #fbbf2499)}.run-stars.is-big{gap:8px}.run-ladder-stars{justify-content:center;gap:8px;margin:-2px 0 8px;display:flex}.run-ladder-stars .run-stars{justify-content:center;width:34px}.run-end-stars{justify-content:center;margin:4px 0 14px;display:flex}.run-stage-chip{border:1px solid rgba(var(--lift-rgb), .18);background:rgba(var(--ground-rgb), .5);letter-spacing:.06em;white-space:nowrap;border-radius:999px;margin-left:10px;padding:3px 9px;font-size:.72rem;font-weight:700}.run-locker{border-radius:var(--radius-md,18px);margin:14px 0 4px;padding:12px 12px 10px}.run-locker-title{justify-content:space-between;align-items:baseline;margin:0 0 8px;font-size:.9rem;display:flex}.run-locker-title b{letter-spacing:.08em;text-transform:uppercase;font-size:.78rem}.run-locker-title span{color:var(--text-3);font-size:.8rem}.run-locker-row{grid-template-columns:74px 1fr;align-items:start;gap:8px;padding:5px 0;display:grid}.run-locker-slot{color:var(--text-3);padding-top:6px;font-size:.72rem}.run-locker-items{flex-wrap:wrap;gap:6px;display:flex}.run-item{border:1px solid rgba(var(--lift-rgb), .14);background:rgba(var(--lift-rgb), .05);color:inherit;font:inherit;cursor:pointer;border-radius:999px;align-items:center;gap:5px;padding:6px 10px;font-size:.78rem;font-weight:600;display:inline-flex}.run-item.is-locked.is-open{opacity:1;border-color:var(--amber)}.run-item.is-worn{border-color:rgba(var(--accent-2-rgb), .9);background:rgba(var(--accent-rgb), .28);box-shadow:0 0 12px rgba(var(--accent-rgb), .4)}.run-locker-how{background:#fbbf241a;border:1px solid #fbbf2459;border-radius:12px;align-items:flex-start;gap:8px;margin:8px 0 0;padding:8px 10px;font-size:.82rem;line-height:1.35;display:flex}.run-locker-how svg{color:var(--amber);flex:none;margin-top:2px}.run-earned{border-radius:var(--radius-md,18px);text-align:center;border:1px solid #fbbf2473;margin:0 0 12px;padding:10px 14px}.run-earned-title{color:var(--amber);align-items:center;gap:6px;margin:0 0 4px;font-weight:700;display:inline-flex}.run-earned ul{margin:0;padding:0;font-size:1.05rem;font-weight:700;list-style:none}.run-earned-hint{color:var(--text-3);margin:4px 0 0;font-size:.78rem}.run-reset{text-align:center;margin:18px 0 6px;font-size:.82rem}.run-reset p{color:var(--amber);margin:0 0 10px;line-height:1.4}.run-reset-link{border:1px dashed rgba(var(--lift-rgb), .22);color:var(--text-3);font:inherit;cursor:pointer;background:0 0;border-radius:999px;align-items:center;gap:6px;padding:6px 10px;display:inline-flex}.run-reset-actions{justify-content:center;gap:8px;display:flex}.run-purse{color:var(--amber);white-space:nowrap;background:#fbbf241f;border:1px solid #fbbf2473;border-radius:999px;align-items:center;gap:5px;padding:5px 10px;font-size:.9rem;font-weight:700;display:inline-flex}.run-item-price{border-left:1px solid rgba(var(--lift-rgb), .18);color:var(--amber);align-items:center;gap:3px;margin-left:2px;padding-left:7px;font-weight:700;display:inline-flex}.run-item.is-locked{opacity:.62}.run-item.is-locked.is-afford{opacity:1;border-color:#fbbf248c}.run-locker-how .run-buy{flex:none;min-height:0;margin-left:auto;padding:6px 16px;font-size:.85rem}div.run-locker-how{align-items:center}.run-ch-list{margin:0 0 8px;padding:0;list-style:none}.run-ch-list li{border-top:1px solid rgba(var(--lift-rgb), .07);justify-content:space-between;align-items:center;gap:10px;padding:7px 0;font-size:.84rem;display:flex}.run-ch-list li:first-child{border-top:0}.run-ch-list li.is-done{opacity:.5}.run-ch-name{align-items:center;gap:5px;min-width:0;display:inline-flex}.run-ch-name i{color:var(--text-3);font-style:normal}.run-ch-pay{color:var(--amber);flex:none;align-items:center;gap:4px;font-weight:700;display:inline-flex}.run-coins{border-radius:var(--radius-md,18px);text-align:center;border:1px solid #fbbf2466;margin:0 0 12px;padding:10px 14px}.run-coins-main{color:var(--amber);align-items:center;gap:7px;margin:0;font-size:1.5rem;font-weight:800;display:inline-flex}.run-coins-detail,.run-coins-bounty{color:var(--text-2);margin:2px 0 0;font-size:.8rem}.run-coins-bounty{color:var(--amber);justify-content:center;align-items:center;gap:5px;display:flex}.run-stage-card.is-gold,.run-tile-face.is-gold,.profile-runner.is-gold{border:2px solid #f5c542;box-shadow:0 0 0 1px #f5c54259,0 0 18px #f5c54259}.run-locker-items{overscroll-behavior-x:contain;scrollbar-width:none;flex-wrap:nowrap;margin:-2px -12px -2px 0;padding:2px 2px 6px;overflow-x:auto;-webkit-mask-image:linear-gradient(90deg,#000 88%,#0000);mask-image:linear-gradient(90deg,#000 88%,#0000)}.run-locker-items::-webkit-scrollbar{display:none}.run-locker-items .run-item{white-space:nowrap;flex:none}.run-locker-row{grid-template-columns:66px minmax(0,1fr)}.run-hall-avatar{touch-action:pan-y;cursor:grab}.run-hall-avatar:active{cursor:grabbing}.run-item.is-open,.run-item.is-locked.is-open,.run-item.is-locked.is-afford.is-open{opacity:1;border-color:var(--amber);color:#fff;background:#fbbf2438;transform:scale(1.05);box-shadow:0 0 0 1px #fbbf248c,0 0 16px #fbbf2473}.run-item{transition:transform .12s var(--ease-out,ease-out), box-shadow .12s, background .12s}[data-mode=light] .run-item.is-open{color:inherit;background:#fbbf2459}.run-locker-items{margin:-7px -12px -5px -6px;padding:7px 6px 9px}.run-daily{border-color:rgba(var(--accent-2-rgb), .35)}.run-daily-note{color:var(--text-3);margin:2px 0 0;font-size:.74rem}.run-shop-btn{width:100%;color:inherit;font:inherit;cursor:pointer;background:#fbbf2414;border:1px solid #fbbf2466;border-radius:14px;align-items:center;gap:8px;margin-top:10px;padding:11px 14px;display:flex}.run-shop-btn b{letter-spacing:.06em}.run-shop-btn span{color:var(--text-3);margin-left:auto;font-size:.85rem}.run-shop .run-locker,.run-shop>.btn{margin-top:10px}a.run-tile.is-locked{cursor:pointer}.run-hall.is-shop{z-index:30;max-width:480px;padding:calc(12px + env(safe-area-inset-top,0px)) 16px calc(12px + env(safe-area-inset-bottom,0px));background:rgb(var(--ground-rgb));flex-direction:column;margin:0 auto;display:flex;position:fixed;inset:0;overflow:hidden}.run-hall.is-shop>:not(.run-hall-top):not(.run-stage-card):not(.run-notes):not(.run-shop):not(.run-cast){display:none}.run-hall.is-shop .run-stage-card{flex:none;order:1}.run-hall.is-shop .run-hall-top{flex:none;order:0}.run-hall.is-shop .run-notes{flex:none;order:2}.run-hall.is-shop .run-cast{flex:none;order:3;margin-top:10px}.run-hall.is-shop .run-shop{flex-direction:column;flex:1;order:4;min-height:0;display:flex}.run-hall.is-shop .run-shop .run-locker{overscroll-behavior:contain;scrollbar-width:none;flex:1;min-height:0;overflow-y:auto}.run-hall.is-shop .run-shop .run-locker::-webkit-scrollbar{display:none}.run-hall.is-shop .run-locker-title{z-index:2;background:rgb(var(--ground-rgb));margin:-12px -12px 6px;padding:12px 12px 6px;position:sticky;top:-12px}.run-hall.is-shop .run-locker-how{z-index:2;background-color:rgb(var(--ground-rgb));background-image:linear-gradient(#fbbf2424,#fbbf2424);margin-bottom:0;position:sticky;bottom:-10px}.run-hall.is-shop .run-shop>.btn{flex:none}.bottom-nav{z-index:25;max-width:480px;padding:6px 10px calc(6px + env(safe-area-inset-bottom,0px));background:rgba(var(--ground-rgb), .98);border-top:1px solid rgba(var(--lift-rgb), .1);-webkit-backdrop-filter:blur(14px);grid-template-columns:repeat(4,1fr);gap:4px;margin:0 auto;display:grid;position:fixed;bottom:0;left:0;right:0}.bottom-nav-link{min-height:50px;color:var(--text-3);border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:2px;font-size:.7rem;font-weight:600;text-decoration:none;display:flex}.bottom-nav-link.is-active{color:var(--text-1,inherit);background:rgba(var(--accent-rgb), .18)}.bottom-nav-link.is-active svg{color:rgb(var(--accent-2-rgb))}.screen.has-nav{padding-bottom:calc(78px + env(safe-area-inset-bottom,0px))}.run-gems{border:1px solid rgba(var(--accent-2-rgb), .35);background:rgba(var(--ground-rgb), .5);color:rgb(var(--accent-2-rgb));font-variant-numeric:tabular-nums;border-radius:999px;align-items:center;gap:4px;margin-left:8px;padding:3px 9px;font-size:.78rem;font-weight:700;display:inline-flex}.run-gems b{color:var(--text-1,inherit)}.run-gems-today{color:var(--text-3);justify-content:center;align-items:center;gap:6px;margin:10px 0 0;font-size:.82rem;display:flex}.run-gems-today svg{color:rgb(var(--accent-2-rgb))}.run-revenge{border-radius:var(--radius-md,18px);background:linear-gradient(160deg, #ff603033, rgba(var(--ground-rgb), .55));text-align:center;border:1px solid #ff784673;margin:12px 0 4px;padding:14px 14px 12px}.run-revenge-kicker{color:#ff9a6b;letter-spacing:.1em;text-transform:uppercase;align-items:center;gap:5px;margin:0 0 4px;font-size:.7rem;font-weight:800;display:inline-flex}.run-revenge-main{margin:0;font-size:1.25rem;font-weight:800}.run-revenge-sub{color:var(--text-3);margin:4px 0 12px;font-size:.84rem}.run-revenge-go{color:#fff;background:linear-gradient(135deg,#ff5a36,#ff9a3c);border:0;box-shadow:0 8px 24px #ff603059}.run-revenge-go:disabled{opacity:.6}.run-stage-chip.is-revenge{color:#ff9a6b;border-color:#ff784699}.char-page{height:calc(100vh - var(--safe-t));height:calc(100dvh - var(--safe-t));padding-bottom:var(--safe-b);flex-direction:column;display:flex;overflow:hidden}.char-page .page-head{flex:none;grid-template-columns:48px 1fr auto;margin-bottom:0}.char-page .page-head-right{justify-self:end}.char-page .run-stage-card{flex:none;margin-top:4px}.char-page .run-cast{flex:none;margin-top:10px}.char-hint{text-align:center;color:var(--text-3);flex:none;margin:8px 0 0;font-size:.76rem}.char-locker{flex-direction:column;flex:1;min-height:0;display:flex}.char-locker .run-locker{overscroll-behavior:contain;scrollbar-width:none;flex:1;min-height:0;margin:8px 0 0;overflow-y:auto}.char-locker .run-locker::-webkit-scrollbar{display:none}.char-locker .run-locker-title{z-index:2;background:rgb(var(--ground-rgb));margin:-12px -12px 6px;padding:12px 12px 6px;position:sticky;top:-12px}.char-locker .run-locker-how{z-index:2;background-color:rgb(var(--ground-rgb));background-image:linear-gradient(#fbbf2424,#fbbf2424);margin-bottom:0;position:sticky;bottom:-10px}.char-locker .run-item.is-locked.is-afford:not(.is-open){opacity:.62;border-color:rgba(var(--lift-rgb), .14)}.run-item-note{color:var(--text-3);margin-top:1px;font-size:.74rem;font-style:normal;display:block}.fr-face{border:1px solid rgba(var(--lift-rgb), .12);background:radial-gradient(90% 90% at 50% 12%, rgba(var(--accent-rgb), .34), rgba(var(--lift-rgb), .06));color:var(--text);-webkit-user-select:none;user-select:none;border-radius:50%;flex:none;place-items:center;line-height:1;display:inline-grid}.fr-face-mage{background:radial-gradient(90% 90% at 50% 12%, rgba(var(--accent-rgb), .42), rgba(var(--lift-rgb), .06))}.fr-face-rogue{background:radial-gradient(90% 90% at 50% 12%, rgba(var(--accent-2-rgb), .34), rgba(var(--lift-rgb), .06))}.fr-face-barbarian{background:radial-gradient(90% 90% at 50% 12%, #fb923c5c, rgba(var(--lift-rgb), .06))}.fr-face-knight{background:radial-gradient(90% 90% at 50% 12%, #a3e63552, rgba(var(--lift-rgb), .06))}.fr-face-robot{background:radial-gradient(90% 90% at 50% 12%, rgba(var(--lift-rgb), .22), rgba(var(--lift-rgb), .06))}.fr-list{flex-direction:column;gap:6px;margin-top:10px;padding:0;list-style:none;display:flex}.fr-line{border-radius:var(--radius-sm);background:rgba(var(--lift-rgb), .04);flex-wrap:wrap;align-items:center;gap:6px 8px;padding:6px;display:flex}.fr-line-main{min-width:0;color:var(--text);flex:130px;align-items:center;gap:10px;padding:2px;text-decoration:none;display:flex}.fr-line-main.is-plain{cursor:default}.fr-line-text{flex-direction:column;gap:1px;min-width:0;display:flex}.fr-line-name{text-overflow:ellipsis;white-space:nowrap;font-size:.95rem;font-weight:600;overflow:hidden}.fr-line-sub{color:var(--text-3);font-size:.74rem}.fr-line-go{color:var(--text-3);flex:none;margin-left:auto}.fr-line-acts{flex:none;align-items:center;gap:6px;margin-left:auto;display:flex}.fr-btn{border-radius:12px;gap:5px;min-height:38px;padding:0 13px;font-size:.85rem}.fr-icon-btn{background:rgba(var(--lift-rgb), .06);border:1px solid var(--border);width:38px;height:38px;color:var(--text-2);border-radius:12px}.fr-tag{color:var(--text-3);padding:0 10px;font-size:.76rem}.fr-search .panel-title{margin-bottom:10px}.fr-search-wrap{position:relative}.fr-search-icon{color:var(--text-3);pointer-events:none;position:absolute;top:50%;left:14px;transform:translateY(-50%)}.fr-search-input{padding-left:42px}.fr-search-input::-webkit-search-cancel-button{-webkit-appearance:none;appearance:none}.fr-hint{color:var(--text-3);margin-top:10px;font-size:.8rem}.fr-hint.is-bad{color:var(--again)}.fr-hint.is-good{color:var(--good)}.fr-panel-link{color:var(--cyan);white-space:nowrap;align-items:center;gap:4px;font-size:.82rem;text-decoration:none;display:inline-flex}.fr-dot{background:var(--flame);color:#fff;border-radius:9px;place-items:center;min-width:18px;height:18px;margin-left:2px;padding:0 5px;font-size:.68rem;font-style:normal;font-weight:700;line-height:1;display:inline-grid}.fr-faces{scrollbar-width:none;overscroll-behavior-x:contain;gap:12px;margin-top:12px;padding:2px 2px 4px;list-style:none;display:flex;overflow-x:auto}.fr-faces::-webkit-scrollbar{display:none}.fr-face-link{width:58px;color:var(--text-2);justify-items:center;gap:5px;font-size:.7rem;text-decoration:none;display:grid}.fr-face-link>span{text-overflow:ellipsis;white-space:nowrap;max-width:58px;overflow:hidden}.fr-panel-empty{color:var(--text-3);align-items:center;gap:8px;margin-top:10px;font-size:.82rem;display:flex}.fr-stage{margin-bottom:12px}.fr-head{align-items:center;gap:12px;margin-bottom:12px;display:flex}.fr-head-text{min-width:0}.fr-head-name{text-overflow:ellipsis;white-space:nowrap;font-size:1.2rem;font-weight:700;overflow:hidden}.fr-head-sub{color:var(--text-3);font-size:.8rem}.fr-stats{grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;padding:0;list-style:none;display:grid}.fr-stat{grid-column:span 2}.fr-stat:nth-child(4){grid-column:2/span 2}.fr-stat:nth-child(5){grid-column:4/span 2}.fr-stat{border-radius:var(--radius-sm);border:1px solid var(--border);background:linear-gradient(180deg, rgba(var(--lift-rgb), .06), rgba(var(--lift-rgb), .02));text-align:center;justify-items:center;gap:2px;padding:10px 4px;display:grid}.fr-stat b{font-size:1.15rem;font-weight:700}.fr-stat b i{color:var(--text-3);font-size:.78rem;font-style:normal;font-weight:500}.fr-stat span{color:var(--text-3);font-size:.68rem}.fr-stat-icon{color:var(--text-3)}.fr-stat-icon.is-flame{color:var(--flame)}.fr-stat-icon.is-star{color:var(--amber)}.fr-since{text-align:center;color:var(--text-3);margin-top:12px;font-size:.76rem}.fr-remove{justify-items:center;margin-top:18px;display:grid}.fr-remove-link{color:var(--text-3);-webkit-text-decoration-color:rgba(var(--lift-rgb), .3);text-decoration-color:rgba(var(--lift-rgb), .3);align-items:center;gap:5px;display:inline-flex}.fr-remove-ask{border-radius:var(--radius-sm);border:1px solid var(--border);background:rgba(var(--lift-rgb), .05);text-align:center;justify-items:center;gap:10px;width:100%;padding:14px;display:grid}.fr-remove-ask p{font-size:.92rem;font-weight:600}.fr-remove-btns{gap:8px;display:flex}.fr-remove-btns .btn{min-height:42px;padding:0 18px;font-size:.9rem}@media (max-width:340px){.fr-line{padding:6px 4px}.fr-line-main{flex:110px}.fr-btn{padding:0 10px;font-size:.8rem}.fr-icon-btn{width:34px;height:34px}.fr-stats{gap:6px}.fr-stat b{font-size:1.02rem}.fr-face-link{width:52px}.fr-face-link>span{max-width:52px}}.fr-face.is-gold{border-color:#facc15bf;box-shadow:inset 0 0 0 1px #facc1580,inset 0 0 10px #facc154d}.fr-face-wrap{flex:none;place-items:center;margin-right:5px;display:inline-grid;position:relative}.fr-face-wrap .rank-badge{box-shadow:0 0 0 2px rgb(var(--ground-rgb));border-radius:50%;position:absolute;bottom:-5px;right:-5px}.fr-faces .fr-face-link{padding-bottom:4px}.dev-panel{border-color:rgba(var(--accent-2-rgb), .24)}.dev-panel .panel-title{align-items:center;gap:8px;display:flex}.dev-lead{margin:6px 0 0}.dev-btn{font-variant-numeric:tabular-nums;align-self:flex-end;min-height:44px}.dev-balance{text-align:right;font-variant-numeric:tabular-nums;min-height:1.2em;margin:2px 0 0}.run-end-stars.is-revenge{flex-direction:column;align-items:center;gap:4px}.run-end-stars-note{color:var(--text-3);text-align:center;margin:0;font-size:.74rem}.run-panel-note{color:var(--text-3);text-align:center;margin:-4px 0 10px;font-size:.82rem;line-height:1.35}.run-nopause{min-height:36px;color:var(--text-3);white-space:nowrap;align-items:center;padding:0 8px;font-size:.72rem;display:inline-flex}.run-stage.is-revenge:after{content:"";pointer-events:none;z-index:1;background:radial-gradient(120% 78% at 50% 46%,#0000 38%,#14000473 74%,#080002d1 100%),linear-gradient(#2800064d,#0000 22%);position:absolute;inset:0}.run-stage.is-revenge:before{content:"";pointer-events:none;z-index:1;opacity:0;background:radial-gradient(130% 85% at 50% 52%,#ef444454,#ef444400 62%);animation:1.9s ease-out both run-revenge-pulse;position:absolute;inset:0}@keyframes run-revenge-pulse{0%{opacity:.95}55%{opacity:.22}to{opacity:0}}@media (prefers-reduced-motion:reduce){.run-stage.is-revenge:before{opacity:.12;animation:none}}.run-stage.is-revenge .run-labels,.run-stage.is-revenge .run-hud,.run-stage.is-revenge .run-question,.run-stage.is-revenge .run-overlay,.run-stage.is-revenge .run-progress{z-index:2}.run-tile-face{position:relative}.run-tile-face>canvas{opacity:0;pointer-events:none;width:70px;height:70px;transition:opacity .18s ease-out;display:block;position:absolute;top:-4px;left:-7px}.run-tile-face.is-3d>canvas{opacity:1}.run-tile-face.is-3d>img{visibility:hidden}.run-tile.is-locked .run-tile-face>canvas{filter:grayscale()brightness(.6)}@media (prefers-reduced-motion:reduce){.run-tile-face>canvas{transition:none}}.run-cast{grid-auto-flow:unset;grid-auto-columns:unset;overscroll-behavior-x:contain;scroll-snap-type:x proximity;scrollbar-width:none;-ms-overflow-style:none;gap:8px;scroll-padding-inline:2px;display:flex;position:relative;overflow:auto hidden}.run-cast::-webkit-scrollbar{display:none}.run-cast-chip{scroll-snap-align:center;flex:none;width:88px}@media (pointer:coarse){.run-cast{touch-action:pan-x pan-y}}.run-cast-chip:focus-visible{outline:2px solid rgba(var(--accent-2-rgb), .9);outline-offset:2px}@media (max-width:340px){.run-cast-chip{width:82px}}.run-end-top{justify-content:flex-end;padding:2px 0;display:flex}.run-end-purse b{font-variant-numeric:tabular-nums}.run-fly{pointer-events:none;z-index:60;position:fixed;inset:0}.run-fly-coin{will-change:transform, opacity;background:radial-gradient(circle at 34% 30%,#ffeaa8,#f5c542 58%,#d09410);border-radius:50%;width:13px;height:13px;position:fixed;box-shadow:0 0 10px #f5c5428c}.run-won{border-radius:var(--radius-md,18px);border:1px solid #fbbf2473;margin:0 0 12px;padding:12px 14px}.run-won-title{color:var(--amber);align-items:center;gap:6px;margin:0 0 8px;font-weight:700;display:inline-flex}.run-won-item{grid-template-columns:116px minmax(0,1fr);align-items:center;gap:12px;display:grid}.run-won-item+.run-won-item{margin-top:10px}.run-won-stage{border-radius:var(--radius);border:1px solid var(--border);background:radial-gradient(120% 80% at 50% 108%, rgba(var(--accent-rgb), .3), transparent 68%), linear-gradient(180deg, rgba(var(--lift-rgb), .05), rgba(var(--lift-rgb), .015));place-items:center;height:128px;display:grid;position:relative;overflow:hidden}.run-won-stage.is-gold{border:2px solid #f5c542;box-shadow:0 0 0 1px #f5c54259,0 0 18px #f5c54259}.run-won-icon{color:var(--amber)}.run-won-text{flex-direction:column;gap:3px;min-width:0;display:flex}.run-won-name{font-size:1.15rem;font-weight:800;line-height:1.2}.run-won-from{color:var(--amber);font-size:.82rem;font-weight:600}.run-won-hint{color:var(--text-3);font-size:.78rem}.run-end.is-celebrating .run-end-hero{animation:.45s cubic-bezier(.2,.7,.3,1) both v229-rise}.run-end.is-celebrating .run-end-stars svg{animation:.42s cubic-bezier(.2,1.5,.4,1) both v229-star}.run-end.is-celebrating .run-end-stars svg:first-child{animation-delay:.26s}.run-end.is-celebrating .run-end-stars svg:nth-child(2){animation-delay:.4s}.run-end.is-celebrating .run-end-stars svg:nth-child(3){animation-delay:.54s}.run-end.is-celebrating .run-end-stars-note{animation:.3s ease-out .62s both v229-fade}.run-end.is-celebrating .run-coins{animation:.36s ease-out .64s both v229-rise}.run-end.is-celebrating .run-won{animation:.6s cubic-bezier(.2,1.2,.3,1) 1.06s both v229-trophy}.run-end.is-celebrating .run-won-stage{animation:1.2s ease-out 1.06s both v229-glow}.run-end.is-celebrating .summary-stats,.run-end.is-celebrating .missed,.run-end.is-celebrating .run-honest{animation:.4s ease-out .9s both v229-fade}@keyframes v229-rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@keyframes v229-fade{0%{opacity:0}to{opacity:1}}@keyframes v229-star{0%{opacity:0;transform:translateY(-16px)scale(.4)rotate(-20deg)}to{opacity:1;transform:none}}@keyframes v229-trophy{0%{opacity:0;transform:scale(.86)translateY(10px)}60%{opacity:1;transform:scale(1.03)}to{opacity:1;transform:none}}@keyframes v229-glow{0%{box-shadow:0 0 #f5c54200}35%{box-shadow:0 0 26px #f5c5428c}to{box-shadow:0 0 #f5c54200}}@media (prefers-reduced-motion:reduce){.run-end.is-celebrating .run-end-hero,.run-end.is-celebrating .run-end-stars svg,.run-end.is-celebrating .run-end-stars-note,.run-end.is-celebrating .run-coins,.run-end.is-celebrating .run-won,.run-end.is-celebrating .run-won-stage,.run-end.is-celebrating .summary-stats,.run-end.is-celebrating .missed,.run-end.is-celebrating .run-honest{animation:none!important}.run-fly-coin{display:none}}.run-notes{background:rgba(var(--accent-2-rgb), .13);border:1px solid rgba(var(--accent-2-rgb), .42);border-radius:14px;flex:none;gap:4px;margin:8px 0 0;padding:8px 12px;display:grid}.run-note-line{text-align:left;color:var(--text);align-items:center;gap:8px;margin:0;font-size:.8rem;line-height:1.3;display:flex}.run-note-line>svg{flex:none}.run-note-line.is-lock{font-weight:700}.run-note-line.is-preview{color:var(--text-2);font-weight:600}.run-note-line.is-preview b{color:var(--text)}@media (max-width:340px){.run-notes{padding:7px 10px}.run-note-line{gap:6px;font-size:.76rem}}@media (max-height:700px){.run-notes{margin-top:6px;padding:6px 10px}.run-note-line{font-size:.76rem}}.wg-head{background:radial-gradient(circle at 50% 40%,#3a2344,#140c1e 70%);border-radius:50%;flex:none;place-items:center;display:grid;overflow:hidden;box-shadow:0 0 0 2px #ffbe4dd9,0 0 18px #ffaa3c73}.wg-head.is-boss{background:radial-gradient(circle at 50% 35%,#4a1822,#12060a 72%);box-shadow:0 0 0 2px #ef4444e6,0 0 20px #ef444480}.wg-head img{object-fit:cover;width:100%;height:100%;transform:scale(1.18)translateY(6%)}.wg-khom{animation:2.6s ease-in-out infinite wg-glow;display:block}.wg-name{letter-spacing:.08em;text-transform:uppercase;color:#ffbe4d;margin:0;font-size:.72rem;font-weight:900}.wg-stop.is-boss .wg-name{color:#f87171}.wg-line{color:#f4f1ff;margin:0;font-size:.95rem;line-height:1.4}.wg-line.is-first{font-size:1.12rem;font-weight:800;line-height:1.32}.wg-stop{color:#f4f1ff;background:#05040ccc;border:0;place-items:center;width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;padding:16px;animation:.22s ease-out both wg-fade;display:grid;position:fixed;inset:0;overflow:hidden}.wg-stop:not([open]){display:none}.wg-stop::backdrop{background:0 0}.wg-stop-card{background:linear-gradient(#151327,#151327) 0 0/100% 100% padding-box padding-box,linear-gradient(120deg,#ffbe4d,#e2553b,#ffbe4d) 0 0/240% 100% border-box;border:2px solid #0000;border-radius:24px;flex-direction:column;gap:10px;width:min(100%,420px);padding:44px 18px 16px;animation:.42s cubic-bezier(.2,1.4,.4,1) both wg-pop,3.4s ease-in-out .5s infinite wg-float,4s linear infinite wg-border;display:flex;position:relative;box-shadow:0 0 30px -4px #ffaa3c73,0 22px 50px -14px #000000b3}.wg-stop.is-boss .wg-stop-card{background:linear-gradient(#170c12,#170c12) 0 0/100% 100% padding-box padding-box,linear-gradient(120deg,#ef4444,#7f1d1d,#ef4444) 0 0/240% 100% border-box;box-shadow:0 0 30px -4px #ef444480,0 22px 50px -14px #000000b3}.wg-stop-who{align-items:flex-end;gap:10px;display:flex;position:absolute;top:-34px;left:18px}.wg-stop-who .wg-name{padding-bottom:6px}.wg-stop-actions{flex-direction:column;align-items:stretch;gap:8px;margin-top:6px;display:flex}.wg-cta{justify-content:center;align-items:center;gap:6px;min-height:48px;font-weight:900;display:inline-flex}.wg-cta.is-go{letter-spacing:.08em;min-height:56px;font-size:1.2rem}.wg-tap{text-align:center;color:#f4f1ff8c;margin:0;font-size:.75rem}.wg-bubble{z-index:18;color:#f4f1ff;cursor:pointer;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#151327f2;border:1.5px solid #ffbe4d99;border-radius:18px;align-items:flex-start;gap:10px;padding:12px 34px 12px 12px;animation:.38s cubic-bezier(.2,1.4,.4,1) both wg-pop;display:flex;position:fixed;box-shadow:0 0 22px -6px #ffaa3c80,0 12px 30px #0000008c}.wg-bubble-text{flex-direction:column;gap:4px;min-width:0;display:flex}.wg-bubble .wg-cta{align-self:flex-start;min-height:38px;margin-top:4px;padding:6px 14px;font-size:.9rem}.wg-x{color:#f4f1ff99;cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;width:28px;height:28px;padding:0;display:grid;position:absolute;top:6px;right:6px}.wg-tail{background:inherit;border:inherit;border-width:0 1.5px 1.5px 0;width:14px;height:14px;display:none;position:absolute}.wg-bubble.at-top{top:calc(var(--safe-t,0px) + 66px);left:max(16px,50vw - 224px);right:max(16px,50vw - 224px)}.wg-bubble.at-locker{top:calc(var(--safe-t,0px) + 68px);left:max(12px,50vw - 228px);right:max(16px,50vw - 192px)}.wg-bubble.at-locker .wg-tail{display:block;top:-8px;left:24px;transform:rotate(-135deg)}.wg-bubble.at-missions{bottom:calc(82px + var(--safe-b,0px));left:max(16px,50vw - 224px);right:max(16px,50vw - 224px)}.wg-bubble.at-missions .wg-tail{display:block;bottom:-8px;right:56px;transform:rotate(45deg)}.wg-bubble.at-tile{z-index:1;margin:-2px 0 12px;position:relative}.wg-bubble.at-tile .wg-tail{display:block;top:-8px;left:30px;transform:rotate(-135deg)}[data-mode=light] .wg-bubble.at-tile{background:#1d1a33}.wg-aim-locker .dw-me,.wg-aim-missions .dw-fab{animation:1.4s ease-in-out infinite wg-aim}.wg-tech{text-align:left;border:1.5px solid #ffbe4d80;border-radius:18px;align-items:flex-start;gap:12px;padding:12px 14px;display:flex}.wg-tech.is-fresh{animation:.5s cubic-bezier(.2,1.4,.4,1) .35s both wg-pop;box-shadow:0 0 26px -6px #ffaa3c99}.wg-tech.is-locked{border-color:rgba(var(--lift-rgb,255, 255, 255), .12);opacity:.6}.wg-tech.is-locked .wg-head{filter:grayscale()}.wg-tech-text{flex-direction:column;gap:2px;min-width:0;display:flex}.wg-tech-kicker{letter-spacing:.06em;text-transform:uppercase;color:#ffbe4d;align-items:center;gap:5px;margin:0;font-size:.72rem;font-weight:900;display:inline-flex}.wg-tech-title{margin:0;font-size:1.05rem;font-weight:900;line-height:1.3}.wg-tech-body{color:var(--text-2,#f4f1ffcc);margin:0;font-size:.9rem;line-height:1.4}.wg-tech-fab{left:max(16px,50vw - 224px);bottom:calc(18px + var(--safe-b,0px));z-index:19;color:#ffbe4d;min-height:52px;font:inherit;font-variant-numeric:tabular-nums;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);cursor:pointer;background:#0e0c1cdb;border:1px solid #ffbe4d8c;border-radius:26px;align-items:center;gap:6px;padding:0 16px 0 14px;font-size:.95rem;font-weight:900;display:inline-flex;position:fixed;box-shadow:0 6px 22px #00000080}.wg-techs{width:100vw;max-width:none;height:100dvh;max-height:none;color:var(--text,#f4f1ff);background:#05040c99;border:0;justify-content:center;align-items:flex-end;margin:0;padding:0;display:flex;position:fixed;inset:0}.wg-techs::backdrop{background:0 0}.wg-techs-card{width:min(100%,480px);max-height:86dvh;padding:14px 16px calc(16px + var(--safe-b,0px));background:var(--bg-raised,#151327);border-radius:22px 22px 0 0;flex-direction:column;gap:10px;animation:.28s ease-out both wg-up;display:flex;box-shadow:0 -12px 36px #00000073}.wg-techs-head{justify-content:space-between;align-items:center;display:flex}.wg-techs-head h2{margin:0;font-size:1.15rem;font-weight:900}.wg-techs-list{flex-direction:column;gap:8px;display:flex;overflow-y:auto}.duel-end .wg-tech{width:100%}@keyframes wg-fade{0%{opacity:0}}@keyframes wg-pop{0%{opacity:0;transform:translateY(14px)scale(.88)}to{opacity:1;transform:none}}@keyframes wg-float{50%{transform:translateY(-5px)}}@keyframes wg-border{to{background-position:0 0,240% 0}}@keyframes wg-up{0%{opacity:0;transform:translateY(24px)}}@keyframes wg-glow{50%{filter:drop-shadow(0 0 6px #ffbe4de6)}}@keyframes wg-aim{0%,to{box-shadow:0 0 #ffbe4db3}50%{box-shadow:0 0 0 8px #ffbe4d00}}@media (prefers-reduced-motion:reduce){.wg-stop,.wg-stop-card,.wg-bubble,.wg-khom,.wg-tech.is-fresh,.wg-techs-card,.wg-aim-locker .dw-me,.wg-aim-missions .dw-fab{animation:none}}.dw-top .wg-home{color:#f4f1ffcc;background:rgba(var(--lift-rgb,255, 255, 255), .06);border-radius:12px;width:40px;height:40px;margin-left:6px}.dw-top .wg-home+.dw-me{margin-left:2px}@media (max-width:400px){.dw-top .run-hall-title{letter-spacing:.06em;white-space:nowrap;font-size:1rem}.dw-top .run-hall-title .dm-tester{margin-left:4px}}.wg-tech{position:relative}.wg-tech-text{flex:auto}.wg-tech-info{color:#ffbe4d;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;border-radius:50%;flex:none;place-items:center;width:44px;height:44px;margin:-8px -10px -8px -6px;padding:0;display:grid}.wg-tech-info svg{border-radius:50%;transition:transform .2s}.wg-tech-info[aria-expanded=true] svg{filter:drop-shadow(0 0 6px #ffbe4dcc);transform:scale(1.12)}.wg-tech-info:focus-visible{outline-offset:-4px;outline:2px solid #ffbe4d}.wg-tech-more{border-top:1px solid #ffbe4d47;margin-top:6px;padding-top:8px}.wg-tech-more:not([hidden]){animation:.22s ease-out both wg-more-in}.wg-tech-more p{color:var(--text,#f4f1ff);margin:0;font-size:.88rem;line-height:1.5}.wg-coach{text-align:left;border:1.5px solid #ffbe4d80;border-radius:18px;align-items:flex-start;gap:12px;width:100%;padding:12px 14px;animation:.5s cubic-bezier(.2,1.4,.4,1) .35s both wg-pop;display:flex}.run-end>.wg-coach{margin-bottom:8px}.wg-coach-text{flex-direction:column;gap:3px;min-width:0;display:flex}.wg-coach-line{color:var(--text-2,#f4f1ffcc);margin:0;font-size:.9rem;line-height:1.42}.wg-coach-line.is-first{color:var(--text,#f4f1ff);font-size:.98rem;font-weight:800;line-height:1.36}@keyframes wg-more-in{0%{opacity:0;transform:translateY(-4px)}}@media (prefers-reduced-motion:reduce){.wg-tech-more:not([hidden]),.wg-coach{animation:none}.wg-tech-info svg{transition:none}}:root{--nav-h:calc(64px + env(safe-area-inset-bottom,0px))}.bottom-nav-icon{place-items:center;display:inline-grid;position:relative}.bottom-nav-link.is-world.is-open svg{color:#fbbf24;filter:drop-shadow(0 0 6px #fbbf2473)}.bottom-nav-link.is-world.is-shut svg{color:var(--text-3)}.bottom-nav-lock{background:rgb(var(--ground-rgb,11, 10, 20));width:16px;height:16px;box-shadow:0 0 0 1.5px rgba(var(--lift-rgb,255, 255, 255), .28);border-radius:50%;place-items:center;display:grid;position:absolute;bottom:-5px;right:-8px}.bottom-nav-lock svg{color:var(--text-2)!important;filter:none!important}.home-top-right{align-items:center;gap:8px;display:flex}.settings-link{flex:none}.dw-screen.has-footer{height:calc(100dvh - var(--safe-t) - var(--nav-h));position:relative}.dw-screen.has-footer>.dw-top{z-index:8;color:#f4f3fb;-webkit-backdrop-filter:blur(14px)saturate(1.5);backdrop-filter:blur(14px)saturate(1.5);background:linear-gradient(#0b0a1499,#0b0a1457);border-bottom:1px solid #ffffff14;margin:0;padding:8px 12px;position:absolute;top:0;left:-16px;right:-16px}.dw-screen.has-footer>.dw-top .icon-btn{color:#f4f3fb;background:#ffffff1a}.dw-screen.has-footer .dw-box{border-top:0}.dw-screen.has-footer .dw-dock{bottom:var(--nav-h);padding-bottom:12px}.dw-screen.has-footer .dw-fab,.dw-screen.has-footer .wg-tech-fab{bottom:calc(14px + var(--nav-h))}.dw-screen.has-footer .dm-dock .dw-fab{bottom:auto}:root:has(.dw-screen.has-footer) .toast-region{bottom:calc(84px + var(--nav-h))}.dw-name{text-overflow:ellipsis;white-space:nowrap;letter-spacing:.02em;min-width:0;overflow:hidden}.dw-screen.has-footer .dw-sheet{bottom:var(--nav-h);max-height:calc(100dvh - var(--nav-h) - var(--safe-t) - 72px);overscroll-behavior:contain;padding-bottom:16px;overflow-y:auto}.install-nudge-lead{color:var(--text);margin:0 0 6px;font-weight:600}.install-sheet.is-nudge .install-nudge-lead+.install-lead{margin-top:4px}.install-open{margin:0 0 12px}.install-actions{gap:6px}.install-never{width:100%;min-height:44px;color:var(--text-3);font:inherit;text-underline-offset:3px;cursor:pointer;background:0 0;border:0;margin-top:4px;font-size:.86rem;text-decoration:underline;display:block}:is(.install-never:hover,.install-never:focus-visible){color:var(--text-2)}.fr-face-wrap .fr-crest{filter:drop-shadow(0 0 1.5px rgb(var(--ground-rgb))) drop-shadow(0 0 1.5px rgb(var(--ground-rgb)));line-height:0;display:block;position:absolute;bottom:-8px;right:-8px}.fr-face-wrap .fr-crest .boss-crest{display:block}.fr-head-crest-icon{flex:none;margin-left:auto;line-height:0}.fr-head-crest-icon .boss-crest{filter:drop-shadow(0 0 6px color-mix(in srgb, var(--fam,#ff7a45) 55%, transparent));display:block}.fr-head-sub.fr-head-crest{color:var(--text-2);font-weight:700}.word-hint{color:var(--text-3);text-align:center;margin:6px 0 0;font-size:.8rem;font-weight:500;line-height:1.35}.ch-prompt .word-hint{margin-top:4px}.learn-skip{width:fit-content;min-height:38px;color:var(--text-2);background:0 0;border:1px solid #0000;border-radius:999px;justify-content:center;justify-self:center;align-items:center;gap:7px;margin:8px auto 0;padding:6px 14px;font-size:.88rem;font-weight:500;text-decoration:none;display:flex}.learn-skip:active{border-color:var(--border);background:rgba(var(--lift-rgb), .05)}@media (hover:hover){.learn-skip:hover{color:var(--text)}}.learn-skip.is-capped{border-color:rgba(var(--accent-rgb), .45);background:rgba(var(--accent-rgb), .12);color:var(--text)}.skip-undo{border:1px solid rgba(var(--accent-2-rgb), .42);background:rgba(var(--accent-2-rgb), .14);animation:reveal .2s var(--ease-out);border-radius:16px;align-items:center;gap:10px;margin:0 0 10px;padding:8px 10px 8px 14px;display:flex}.skip-undo-text{min-width:0;color:var(--text-2);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:.85rem;line-height:1.3;overflow:hidden}.skip-undo-text b{color:var(--text);font-weight:600}.skip-undo-btn{border:1px solid rgba(var(--accent-2-rgb), .5);background:rgba(var(--lift-rgb), .06);min-height:38px;color:var(--text);border-radius:999px;flex:none;align-items:center;gap:6px;padding:0 14px;font-size:.88rem;font-weight:600;display:inline-flex}.skip-undo-btn:active{background:rgba(var(--lift-rgb), .12)}.checkup-back{border:1px solid rgba(var(--accent-2-rgb), .4);background:rgba(var(--accent-2-rgb), .13);color:var(--text);text-align:center;animation:reveal .2s var(--ease-out);border-radius:14px;margin:0 0 10px;padding:7px 12px;font-size:.87rem;font-weight:600;line-height:1.3}.words-manage{border:1px solid var(--border);background:rgba(var(--lift-rgb), .035);border-radius:16px;justify-content:space-between;align-items:center;gap:12px;margin:2px 0 8px;padding:8px 12px;display:flex}.words-manage-text{flex-direction:column;flex:1;min-width:0;display:flex}.words-manage .setting-label{font-size:.95rem;font-weight:600}.words-manage .setting-hint{color:var(--text-3);font-size:.78rem;line-height:1.3}.word-list.is-managing li.is-managed{align-items:center;gap:0;display:flex}.word-list.is-managing .word-row{flex:1;min-width:0;padding-right:4px}.word-list.is-managing .badge,.word-list.is-managing .wr-speaker{display:none}.wr-known{border-left:1px solid rgba(var(--lift-rgb), .07);color:var(--text-2);white-space:nowrap;cursor:pointer;flex:none;align-self:stretch;align-items:center;gap:7px;padding:0 12px 0 10px;font-size:.8rem;font-weight:500;display:flex}.wr-known input{width:22px;height:22px;accent-color:rgb(var(--accent-rgb));flex:none;margin:0}.wr-known.is-on{color:var(--text)}.wr-known.is-locked{color:var(--text-3);cursor:default}.wr-known.is-locked input{opacity:.45}.tier-dot.tier-c-skipped{background:var(--text-3)}.chip-skipped[aria-pressed=true] .tier-dot.tier-c-skipped{background:var(--text-2)}.skips-head{border:1px solid rgba(var(--accent-rgb), .38);background:rgba(var(--accent-rgb), .1);border-radius:16px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 12px;margin:0 0 10px;padding:10px 12px;display:flex}.skips-head-text{min-width:0;color:var(--text);flex:1;font-size:.88rem;font-weight:600;line-height:1.3}.skips-head.is-asking{border-color:rgba(var(--accent-rgb), .6);background:rgba(var(--accent-rgb), .16)}.skips-restore,.skips-yes,.skips-no{border:1px solid var(--border-strong);background:rgba(var(--lift-rgb), .06);min-height:38px;color:var(--text);border-radius:999px;flex:none;align-items:center;gap:6px;padding:0 14px;font-size:.85rem;font-weight:600;display:inline-flex}.skips-confirm{gap:8px;display:flex}.skips-yes{border-color:rgba(var(--accent-rgb), .7);background:rgba(var(--accent-rgb), .24)}.skips-no{color:var(--text-2);background:0 0;border-color:#0000;font-weight:500}.skips-restore:active,.skips-yes:active{background:rgba(var(--lift-rgb), .14)}.placement-slot{gap:6px;display:grid}.placement-later{background:0 0;border:0;font-weight:500}.setting-link{color:inherit;text-decoration:none}.setting-link .setting-text{flex-direction:column;flex:1;min-width:0;display:flex}.setting-chev{color:var(--text-3);flex:none}.setting-link:active{background:rgba(var(--lift-rgb), .04)}.placement-intro .empty-title{margin-bottom:4px}.placement-icon{color:rgb(var(--accent-rgb))}.placement-facts{text-align:left;gap:8px;width:100%;max-width:340px;margin:10px 0 18px;padding:0;list-style:none;display:grid}.placement-facts li{color:var(--text-2);padding-left:18px;font-size:.88rem;line-height:1.4;position:relative}.placement-facts li:before{content:"";background:rgba(var(--accent-rgb), .75);border-radius:50%;width:6px;height:6px;position:absolute;top:.62em;left:4px}.placement-rates{grid-template-columns:1fr 1fr}.placement-quiet{color:var(--text-3);text-align:center;margin:10px 0 0;font-size:.78rem;line-height:1.3}.placement-actions{justify-items:center;gap:2px;display:grid}.placement-card .ch-instruction{margin-bottom:10px}.placement-result{text-align:center;justify-items:center;gap:10px;padding:8px 0 4px;display:grid}.placement-big{letter-spacing:-.01em;font-variant-numeric:tabular-nums;margin:0;font-size:1.5rem;font-weight:700;line-height:1.25}.placement-bar{border:1px solid var(--border);background:rgba(var(--lift-rgb), .07);border-radius:999px;width:100%;max-width:320px;height:14px;overflow:hidden}.placement-bar-fill{background:var(--grad);height:100%;transition:width .8s var(--ease-out);border-radius:999px;display:block}.placement-line{color:var(--text-2);font-variant-numeric:tabular-nums;margin:0;font-size:.95rem}.placement-zero-title{margin:8px 0 0;font-size:1.32rem;font-weight:700;line-height:1.3}.placement-zero-sub{color:var(--text-2);margin:0;font-size:.9rem;line-height:1.4}@media (max-width:340px){.wr-known{gap:5px;padding:0 8px;font-size:.74rem}.wr-known input{width:20px;height:20px}.word-list.is-managing .word-row{gap:9px;padding-left:10px}.skips-head,.words-manage{padding:8px 10px}.skips-head-text{font-size:.84rem}.skip-undo{gap:8px;padding-left:11px}.placement-big{font-size:1.32rem}.placement-zero-title{font-size:1.18rem}.placement-facts li{font-size:.84rem}}.word-forms{color:var(--text-2);font-variant-ligatures:none;text-align:center;overflow-wrap:anywhere;margin:4px 0 0;font-size:.82rem;font-weight:500;line-height:1.4}.face-back .word-forms,.learn-card .word-forms{margin-top:6px}.wr-forms{color:var(--text-2);text-align:start;margin-top:2px;font-size:.74rem}.checkup-card .word-forms{margin-top:8px}.gr-panel{padding-top:12px}.gr-head{align-items:flex-start;gap:10px;display:flex}.gr-head-title{overflow-wrap:anywhere;flex:auto;min-width:0;margin:0;font-size:1.15rem;font-weight:700;line-height:1.45}.gr-close{flex:none;margin:-4px -6px 0 0}.gr-pair{flex-wrap:wrap;gap:8px;margin-top:14px;display:flex}.gr-side{border:1px solid var(--border);border-radius:var(--radius-sm);background:rgba(var(--lift-rgb), .04);overflow-wrap:anywhere;flex:148px;align-items:baseline;gap:7px;min-width:0;margin:0;padding:10px 12px;font-size:1rem;line-height:1.5;display:flex}.gr-mark{flex:none;font-size:.95rem;font-weight:700;line-height:1.5}.gr-bad{color:var(--text-2)}.gr-bad .gr-mark{color:var(--again)}.gr-bad del{text-decoration-line:line-through;-webkit-text-decoration-color:rgba(var(--lift-rgb), .45);text-decoration-color:rgba(var(--lift-rgb), .45);text-decoration-thickness:1.5px}.gr-good .gr-mark{color:var(--good)}.gr-good b{font-weight:700}.gr-show{border-radius:var(--radius-sm);background:rgba(var(--accent-rgb), .12);color:var(--text);letter-spacing:.01em;text-align:center;margin:10px 0 0;padding:8px 12px;font-size:1rem;font-weight:600}.gr-body{color:var(--text);margin-top:12px;font-size:1rem;line-height:1.7}.gr-foot{color:var(--text-3);text-align:center;font-variant-numeric:tabular-nums;margin-top:14px;font-size:.82rem}.gr-list{flex-direction:column;gap:8px;margin-top:10px;padding:0;list-style:none;display:flex}.gr-row-btn{border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface);width:100%;min-height:52px;color:var(--text);text-align:start;-webkit-tap-highlight-color:transparent;align-items:center;gap:12px;padding:10px 14px;display:flex}.gr-row-btn:active:not(:disabled){transform:scale(.985)}.gr-row.is-locked .gr-row-btn{opacity:.55}.gr-row-icon{background:rgba(var(--accent-2-rgb), .16);width:32px;height:32px;color:var(--cyan);border-radius:999px;flex:none;justify-content:center;align-items:center;display:inline-flex}.gr-row.is-locked .gr-row-icon{background:var(--surface-2);color:var(--text-3)}.gr-row-name{overflow-wrap:anywhere;flex:auto;min-width:0;font-size:.95rem;font-weight:500;line-height:1.4}.gr-row-tag{color:var(--text-3);flex:none;font-size:.78rem}@media (min-width:420px){.gr-list{grid-template-columns:1fr 1fr;display:grid}}.speaker-slow-hint{inset:auto 0 calc(100% + 6px) auto;transform:none}.rom-fold{border:1px dashed rgba(var(--lift-rgb), .28);min-height:30px;color:var(--text-3);background:0 0;border-radius:999px;align-items:center;gap:5px;margin:2px auto 0;padding:3px 11px;font-size:.78rem;font-weight:500;line-height:1.3;display:inline-flex}.rom-fold:active{background:rgba(var(--lift-rgb), .06)}@media (hover:hover){.rom-fold:hover{color:var(--text-2)}}.rom.is-unfolded{animation:rise .25s var(--ease-out) both}.alphabet-offer{gap:8px;display:grid}.deck-alphabet{cursor:default}.alphabet-glyph{font-size:1.6rem;font-weight:700;line-height:1}.alphabet-offer-actions{gap:2px;min-width:0;display:grid}.alphabet-offer-quiet{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.alphabet-offer-quiet .learn-anyway{background:0 0;border:0;font-weight:500}.alphabet{gap:14px;min-width:0;display:grid}.alphabet-intro-glyphs{color:var(--text);justify-content:center;gap:18px;margin-top:6px;font-size:3.4rem;font-weight:700;line-height:1.2;display:flex}.alphabet-intro-glyphs span:nth-child(2){color:rgb(var(--accent-2-rgb))}.alphabet-lead{text-align:center;margin:0;font-size:1.25rem;line-height:1.35}.alphabet-line{color:var(--text-2);text-align:center;margin:0;font-size:.92rem;line-height:1.45}.alphabet-progress{gap:10px;display:grid}.alphabet-count{text-align:center;margin:0;font-size:1.05rem;font-weight:600}.alphabet-bar{background:rgba(var(--lift-rgb), .08);border-radius:999px;height:10px;position:relative;overflow:hidden}.alphabet-bar span{border-radius:inherit;position:absolute;inset:0 auto 0 0}.alphabet-bar-seen{background:rgba(var(--accent-2-rgb), .35)}.alphabet-bar-fill{background:rgb(var(--accent-2-rgb))}.alphabet-review-btn{justify-self:stretch}.alphabet-lessons{gap:8px;margin:0;padding:0;list-style:none;display:grid}.alphabet-lesson{border:1px solid var(--border);background:rgba(var(--lift-rgb), .04);min-height:56px;color:var(--text);border-radius:16px;grid-template-columns:28px minmax(0,1fr) auto 18px;align-items:center;gap:10px;padding:8px 12px;text-decoration:none;display:grid}.alphabet-lesson.is-next{border-color:rgba(var(--accent-rgb), .6);background:rgba(var(--accent-rgb), .12)}.alphabet-lesson.is-locked{opacity:.55;grid-template-columns:28px minmax(0,1fr) auto}.alphabet-lesson-n{color:var(--text-3);text-align:center;font-size:.85rem;font-weight:600}.alphabet-lesson-glyphs{gap:12px;min-width:0;font-size:1.5rem;font-weight:600;line-height:1.3;display:flex;overflow:hidden}.alphabet-lesson-status{color:var(--text-2);align-items:center;gap:4px;font-size:.8rem;font-weight:600;display:inline-flex}.alphabet-lesson-status.is-done{color:rgb(var(--accent-2-rgb))}.alphabet-lesson-chev{color:var(--text-3)}.alphabet-allseen{padding:0 8px}.alphabet-session-bar{background:rgba(var(--lift-rgb), .08);border-radius:999px;flex:1;min-width:0;height:8px;overflow:hidden}.alphabet-session-bar span{border-radius:inherit;background:rgb(var(--accent-2-rgb));height:100%;transition:width .3s var(--ease-out);display:block}.alphabet-card{text-align:center;justify-items:center;gap:8px;display:grid}.alphabet-glyph-big{margin:6px 0 0;font-size:4.6rem;font-weight:600;line-height:1.25}.alphabet-sound{color:var(--text-2);margin:0;font-size:1.05rem}.alphabet-sound strong{color:var(--text);font-size:1.5rem}.alphabet-name{color:var(--text-2);margin:0;font-size:1.1rem}.alphabet-note{color:var(--text-3);margin:0;font-size:.85rem}.alphabet-note.is-error{color:var(--text);text-align:center}.alphabet-example{background:rgba(var(--lift-rgb), .05);border-radius:14px;justify-items:center;gap:2px;width:100%;min-width:0;margin-top:8px;padding:10px 12px;display:grid}.alphabet-example-label{color:var(--text-3);letter-spacing:.02em;text-transform:uppercase;font-size:.75rem;font-weight:600}.alphabet-example-line{align-items:center;gap:10px;min-width:0;display:flex}.alphabet-example-th{word-break:break-word;font-size:1.6rem;font-weight:600}.alphabet-example-meaning{color:var(--text-2);font-size:.95rem}.alphabet-read-lead{color:rgb(var(--accent-2-rgb));margin:0;font-size:.85rem;font-weight:600}.alphabet-read-word{word-break:break-word;margin:4px 0 0;font-size:2.6rem;font-weight:600;line-height:1.3}.alphabet-read-after{align-items:center;gap:10px;margin:0;display:flex}.alphabet-verdict{text-align:center;margin:0 0 8px;font-weight:600}.alphabet-verdict.is-correct{color:rgb(var(--accent-2-rgb))}.alphabet-done-box{text-align:center;flex:1;align-content:center;justify-items:center;gap:10px;min-height:50vh;display:grid}.alphabet-done-glyphs{flex-wrap:wrap;justify-content:center;gap:16px;margin:0;font-size:3rem;font-weight:600;line-height:1.2;display:flex}.alphabet-done-title{margin:0;font-size:1.5rem}:root{--fam-0:#7dd3fc;--fam-1:#c4b5fd;--fam-2:#fcd34d;--fam-3:#f9a8d4;--fam-4:#5eead4;--fam-5:#fdba74;--fam-6:#a5b4fc;--fam-7:#d6d3d1}[data-mode=light]{--fam-0:#0369a1;--fam-1:#6d28d9;--fam-2:#a16207;--fam-3:#be185d;--fam-4:#0f766e;--fam-5:#c2410c;--fam-6:#4338ca;--fam-7:#57534e}.fam-c0{--fam:var(--fam-0)}.fam-c1{--fam:var(--fam-1)}.fam-c2{--fam:var(--fam-2)}.fam-c3{--fam:var(--fam-3)}.fam-c4{--fam:var(--fam-4)}.fam-c5{--fam:var(--fam-5)}.fam-c6{--fam:var(--fam-6)}.fam-c7{--fam:var(--fam-7)}.fam-plain{--fam:var(--text-2)}.focus-fam{border:1.5px solid var(--fam);width:fit-content;max-width:100%;color:var(--fam);overflow-wrap:anywhere;border-radius:999px;justify-self:start;padding:1px 10px;font-size:.82rem;font-weight:700;line-height:1.5}.focus-trio,.forms-ch{justify-items:center;gap:8px;width:100%;min-width:0;display:grid}.focus-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;width:100%;min-width:0;display:grid}.focus-cell{border:1px solid var(--border);background:rgba(var(--lift-rgb), .04);color:var(--text);font:inherit;border-radius:14px;align-content:start;justify-items:center;gap:2px;min-width:0;padding:8px 4px;display:grid}button.focus-cell{cursor:pointer;touch-action:manipulation}button.focus-cell:active{background:rgba(var(--lift-rgb), .1)}.focus-trio:not(.fam-plain) .focus-cell,.forms-ch:not(.fam-plain) .focus-cell{border-top:3px solid var(--fam)}.focus-col{color:var(--text-3);font-size:.72rem}.focus-word{overflow-wrap:anywhere;align-items:center;gap:3px;max-width:100%;font-size:1.15rem;font-weight:700;line-height:1.2;display:inline-flex}.focus-say{gap:6px;min-height:40px}.forms-head{min-height:0}.forms-base{color:var(--text);font:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:8px;padding:2px 8px;display:inline-flex}.forms-base-word{overflow-wrap:anywhere;font-size:2rem;font-weight:800;line-height:1.1}.forms-gloss{color:var(--text-2);text-align:center;margin:-4px 0 2px;font-size:1.1rem}.focus-cell.is-asked{border-color:rgba(var(--accent-rgb), .75);background:rgba(var(--accent-rgb), .14)}.focus-cell.is-picked{border-color:rgba(var(--accent-2-rgb), .55)}.focus-cell.is-right{border-color:var(--good)}.focus-cell.is-right .focus-word{color:var(--good)}.focus-cell.is-wrong{border-color:var(--again)}.focus-given{color:var(--text-3);overflow-wrap:anywhere;font-size:.85rem}.forms-ask{gap:10px;width:100%;min-width:0;display:grid}.forms-q{text-align:center;margin:4px 0 0;font-weight:600}.forms-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;width:100%;min-width:0;display:grid}.forms-option{overflow-wrap:anywhere;min-height:54px;font-size:1.15rem;font-weight:700}.forms-ch:not(.fam-plain) .forms-option,.has-fam:not(.fam-plain){border-left:4px solid var(--fam)}.focus-days{color:var(--text-3);white-space:nowrap}.focus-setting{gap:8px}.focus-exam-field{justify-content:space-between;align-items:center;gap:10px;min-width:0;display:flex}.focus-exam-input{border:1px solid var(--border-strong);background:rgba(var(--lift-rgb), .06);min-height:42px;color:var(--text);font:inherit;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;border-radius:12px;min-width:0;padding:6px 10px}@media (prefers-color-scheme:dark){.focus-exam-input{--lightningcss-light: ;--lightningcss-dark:initial}}.focus-end{justify-self:start;min-height:40px}.focus-end.is-confirming{border-color:rgba(var(--accent-rgb), .7)}.reward-flash{background:radial-gradient(closest-side, rgba(var(--accent-2-rgb), .32), rgba(var(--accent-2-rgb), 0));pointer-events:none;opacity:0;animation:reward-flash .36s var(--ease-out) both;border-radius:28px;position:absolute;inset:8% 10%}@keyframes reward-flash{0%{opacity:0;transform:scale(.92)}35%{opacity:1}to{opacity:0;transform:scale(1.06)}}@media (prefers-reduced-motion:reduce){.reward-flash{display:none}}.tiles{gap:12px;width:100%;min-width:0;display:grid}.tiles-answer{border:2px dashed rgba(var(--lift-rgb), .2);border-radius:var(--radius-sm);flex-wrap:wrap;justify-content:center;align-items:center;gap:6px;min-height:58px;padding:8px;display:flex}.tiles.is-correct .tiles-answer{border-style:solid;border-color:var(--good)}.tiles.is-wrong .tiles-answer{border-style:solid;border-color:var(--again)}.tiles-placeholder{color:var(--text-3);font-size:.9rem}.tiles-correction{text-align:center;color:var(--good);margin:-4px 0 0;font-size:1.3rem;font-weight:700}.tiles-tray{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.tile{border:1px solid var(--border-strong);background:rgba(var(--lift-rgb), .07);min-width:46px;height:50px;color:var(--text);font:inherit;cursor:pointer;touch-action:manipulation;border-radius:12px;place-items:center;padding:0 10px;font-size:1.35rem;font-weight:700;display:grid}.tile:active{transform:scale(.94)}.tile.is-used{opacity:.25}.tile-placed{background:rgba(var(--accent-rgb), .16);border-color:rgba(var(--accent-rgb), .5);min-width:38px;height:42px;font-size:1.2rem}.tiles-actions{grid-template-columns:64px minmax(0,1fr);gap:8px;display:grid}.tiles-back,.tiles-submit{gap:6px;min-height:50px}.dev-banner{top:calc(var(--safe-t) + 2px);z-index:9999;background:var(--amber);color:#000;pointer-events:auto;border-radius:999px;padding:1px 10px;font-size:.72rem;font-weight:800;text-decoration:none;position:fixed;left:50%;transform:translate(-50%)}.dev-peek{color:var(--amber);margin:4px 0 0;font-size:.8rem;font-weight:700;display:block}.first-stop{width:100vw;max-width:none;height:100dvh;max-height:none;color:var(--text);background:0 0;border:0;margin:0;padding:0;position:fixed;inset:0;overflow:hidden}.first-stop::backdrop{background:0 0}.first-stop-hole,.first-stop-veil{pointer-events:none;animation:.22s ease-out both first-stop-veil-in;position:absolute}.first-stop-veil{background:#05040c99;inset:0}.first-stop-hole{box-shadow:0 0 0 2px rgba(var(--accent-rgb), .85), 0 0 22px 6px rgba(var(--accent-rgb), .45), 0 0 0 200vmax #05040c99;border-radius:26px}.first-stop-sheet{background:var(--bg-raised,#151327);border:1px solid rgba(var(--accent-rgb), .45);max-width:480px;animation:first-stop-in .22s var(--ease-out,ease-out) both;border-radius:20px;margin:0 auto;padding:16px 16px 14px;position:absolute;left:16px;right:16px;box-shadow:0 18px 48px -12px #0009}.first-stop-text{text-align:left;align-items:flex-start;gap:10px;margin:0 0 14px;display:flex}.first-stop-icon{color:rgb(var(--accent-rgb));flex:none;font-size:1.05rem;line-height:1.4}.first-stop-lines{flex-direction:column;gap:3px;min-width:0;display:flex}.first-stop .first-hint-what,.first-stop .first-hint-why{overflow-wrap:anywhere;color:var(--text);line-height:1.4}.first-stop .first-hint-what{font-size:1.02rem;font-weight:700}.first-stop .first-hint-why{font-size:.92rem}.first-stop-ok{background:var(--text);width:100%;min-height:48px;color:var(--bg-raised,#151327);font:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent;border:0;border-radius:14px;font-size:1.02rem;font-weight:700;display:block}.first-stop-ok:focus-visible{outline:3px solid rgb(var(--accent-rgb));outline-offset:3px}.first-stop-ok:active{transform:scale(.98)}[data-mode=light] .first-stop-hole{box-shadow:0 0 0 2px rgba(var(--accent-rgb), .9), 0 0 22px 6px rgba(var(--accent-rgb), .35), 0 0 0 200vmax #05040c99}[data-mode=light] .first-stop-sheet{box-shadow:0 18px 48px -12px #00000059}@keyframes first-stop-in{0%{opacity:0;transform:translateY(8px)scale(.98)}to{opacity:1;transform:none}}@keyframes first-stop-veil-in{0%{opacity:0}to{opacity:1}}.rate-help.is-halo{border-color:rgba(var(--accent-rgb), .7);color:var(--text);animation:1.2s ease-out .3s 2 both first-hint-halo}@keyframes first-hint-halo{0%{box-shadow:0 0 0 0 rgba(var(--accent-rgb), .55)}to{box-shadow:0 0 0 10px rgba(var(--accent-rgb), 0)}}.boss-hero-card.fb-hero{box-shadow:inset 4px 0 0 var(--fam)}.fb-hero .bhc-title{white-space:normal;overflow-wrap:anywhere;min-width:0;font-size:1.45rem}.fb-hero.is-locked .bhc-title{font-size:1.2rem}.fb-hero-fam{display:inline-block}.fb-gate-no{min-width:0;color:var(--text-2);overflow-wrap:anywhere;font-size:.8rem;font-weight:600}.fb-gate{border:1px dashed var(--border-strong);min-width:0;color:var(--text-2);border-radius:14px;align-items:center;gap:8px;margin:6px 4px 0 18px;padding:8px 12px;font-size:.86rem;line-height:1.35;text-decoration:none;display:flex}.fb-gate-text{overflow-wrap:anywhere;flex:auto;min-width:0;display:grid}.fb-gate-text b{color:var(--text);letter-spacing:.04em}.fb-gate-prize{color:var(--text-2);font-size:.78rem}.fb-gate-icon{flex:none}.fb-gate.is-ready{border-style:solid;border-color:rgba(var(--accent-rgb), .7);background:rgba(var(--accent-rgb), .12);color:var(--text);font-weight:600}.fb-gate.is-retry{border-style:solid}.fb-gate.is-passed{color:var(--text-2);border-style:solid}.fb-gate.is-passed .fb-gate-icon{color:var(--good)}.chapter-head+.fb-gate{margin:8px 0 4px}.fb-stops{flex-wrap:wrap;row-gap:6px}.fb-stop{align-items:center;gap:6px;min-width:0;display:inline-flex}.fb-stop-dot{border:2px solid var(--fam);width:24px;height:24px;color:var(--fam);border-radius:50%;place-items:center;font-size:.72rem;font-style:normal;font-weight:700;display:inline-grid}.fb-stop.is-locked .fb-stop-dot{opacity:.45}.fb-stop.is-passed .fb-stop-dot,.fb-stop.is-ready .fb-stop-dot{background:var(--fam);color:var(--bg,#0f0d1c)}.fb-row-badge{border:2px solid var(--fam);width:44px;height:44px;color:var(--fam);border-radius:50%;flex:none;place-items:center;display:grid}.fb-row.is-passed .fb-row-badge{background:var(--fam);color:var(--bg,#0f0d1c)}.fb-row.is-locked .fb-row-badge{opacity:.5}.fb-row-fam{vertical-align:baseline;font-size:.8rem;display:inline-block}.fb-intro-fam{flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;min-width:0;margin:4px 0 12px;display:flex}.fb-result .focus-fam{justify-self:center;margin:0 auto 6px}.focus-cell.is-skip{opacity:.45}.fb-won{border:1px solid var(--border-strong);border-radius:var(--radius,16px);background:var(--surface);width:100%;min-width:0;animation:rise .45s var(--ease-out) both;grid-template-columns:116px minmax(0,1fr);grid-template-areas:"stage text""actions actions";align-items:center;gap:10px 14px;margin-top:12px;padding:14px;display:grid}.fb-won-stage{background:radial-gradient(circle at 50% 70%, rgba(var(--accent-rgb), .28), transparent 70%);border-radius:14px;grid-area:stage;width:116px;height:140px}.fb-won-canvas{width:100%;height:100%;display:block}.fb-won-text{grid-area:text;gap:4px;min-width:0;display:grid}.fb-won-kicker{color:var(--text-2);letter-spacing:.06em;text-transform:uppercase;font-size:.8rem;font-weight:700}.fb-won-name{overflow-wrap:anywhere;font-size:1.35rem;font-weight:700;line-height:1.2}.fb-won-tag{width:fit-content;color:var(--good);align-items:center;gap:4px;font-weight:700;display:inline-flex}.fb-won-actions{grid-area:actions;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.fb-won-actions .btn{text-align:center;white-space:normal;justify-content:center;min-width:0}.fb-won-note{color:var(--text-2);grid-column:1/-1;margin:0;font-size:.85rem}.boss .fb-won+.theme-won{margin-top:12px}@media (prefers-reduced-motion:reduce){.fb-won{animation:none}}:root{--tier-solid:#f472b6;--ring-solid:var(--tier-solid)}[data-mode=light]{--tier-solid:#db2777}.tier-c-solid{background:var(--tier-solid)}.badge-solid{color:#f9a8d4;background:#f472b626}[data-mode=light] .badge-solid{color:var(--tier-solid);background:#db27771a}.tierup-card.tier-c-solid{background:0 0}.tierup-card.tier-c-solid .tierup-front{color:var(--tier-solid)}.spell-instruction{flex-wrap:wrap;justify-content:center;align-items:center;gap:4px 8px;display:flex}.spell-up{border:1px solid;border-radius:999px;padding:1px 8px;font-size:.78rem;font-weight:600;line-height:1.5}.spell-up.tier-t-solid{color:var(--tier-solid)}.spell-up.tier-t-mastered{color:var(--tier-mastered)}.spell-prompt{justify-items:center;gap:6px;min-width:0;display:grid}.spell-meaning{flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;min-width:0;display:flex}.spell-meaning .native-word{overflow-wrap:anywhere;margin:0}.spell-length{color:var(--text-3);margin:0;font-size:.85rem}.spell-card .tiles{margin-top:10px}.spell-reveal{margin-top:8px}.tiles-tray.is-keyboard{gap:6px}.tiles-tray.is-keyboard .tile{min-width:34px;height:44px;padding:0 6px;font-size:1.15rem}.tile.is-space{min-width:64px;color:var(--text-3)}.runs-left{border:1px solid rgba(var(--accent-2-rgb), .4);background:rgba(var(--accent-2-rgb), .1);border-radius:999px;justify-content:center;align-items:center;gap:12px;width:fit-content;max-width:100%;margin:10px auto 0;padding:8px 16px;display:flex}.runs-left-count{color:var(--text-2);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:1rem;font-weight:700;line-height:1}.runs-left-count b{color:rgb(var(--accent-2-rgb));font-size:1.9rem;font-weight:800}.runs-left-side{flex-direction:column;gap:5px;min-width:0;display:flex}.runs-left-slots{gap:4px;display:flex}.runs-left-slots i{background:rgba(var(--lift-rgb), .16);border-radius:999px;width:20px;height:7px}.runs-left-slots i.is-left{background:linear-gradient(90deg, rgb(var(--accent-rgb)), rgb(var(--accent-2-rgb)));box-shadow:0 0 8px rgba(var(--accent-2-rgb), .55)}.runs-left-label{color:var(--text-3);white-space:nowrap;font-size:.8rem}.runs-left.is-empty{border-color:var(--border);background:rgba(var(--lift-rgb), .04)}.runs-left.is-empty .runs-left-count b{color:var(--text-3)}.run-tile-text span.run-tile-head{color:inherit;font-size:inherit;align-items:center;gap:8px;display:flex;overflow:visible}.run-tile-tries{font-variant-numeric:tabular-nums;color:#fff;background:linear-gradient(135deg, rgb(var(--accent-rgb)), rgb(var(--accent-2-rgb)));box-shadow:0 0 10px rgba(var(--accent-2-rgb), .45);border-radius:999px;align-items:center;gap:3px;padding:2px 8px;font-size:.8rem;font-style:normal;font-weight:800;display:inline-flex}.run-tile-tries.is-empty{color:var(--text-3);background:rgba(var(--lift-rgb), .1);box-shadow:none}.run-end-gems{border:1px solid rgba(var(--accent-2-rgb), .35);text-align:center;margin:12px 0 0;padding:12px 14px}.run-end-gems-main{flex-wrap:wrap;justify-content:center;align-items:center;gap:6px 10px;margin:0;font-size:1rem;display:flex}.run-end-gems-main svg{color:rgb(var(--accent-2-rgb))}.run-end-gems-main span{color:rgb(var(--accent-2-rgb));font-weight:700}.run-end-gems-sub{color:var(--text-3);margin:4px 0 0;font-size:.82rem}.run-end-gems.is-all{box-shadow:0 0 18px rgba(var(--accent-2-rgb), .3);border-color:#fbbf248c}.run-end-gems.is-all .run-end-gems-sub{color:var(--amber);font-weight:700}.fb-famrow{flex-direction:column;align-items:flex-start;gap:6px;margin-top:10px;display:flex}.fb-row-no{letter-spacing:.02em;color:var(--text-1,inherit);font-size:.95rem;font-weight:800}.fb-ladder{flex-wrap:wrap;align-items:center;gap:5px;display:flex}.fb-intro-fam .fb-row-no{text-align:center;flex-basis:100%;font-size:1.05rem}.fb-intro-fam .fb-ladder{flex-basis:100%;justify-content:center}.fb-each{text-align:center;color:var(--text-3);flex-basis:100%;font-size:.82rem}.fb-result-ladder{justify-content:center;margin-top:14px}.fb-next{text-align:center;color:var(--text-2);margin:8px 0 0;font-size:.9rem;font-weight:700}.fb-crest{width:var(--crest,40px);height:var(--crest,40px);flex:none;place-items:center;display:inline-grid;position:relative}.fb-crest .boss-crest{display:block}.fb-crest.is-locked{opacity:.85}.fb-crest.is-ready:not(.is-current),.fb-crest.is-retry:not(.is-current){opacity:.8}.fb-crest.is-current .boss-crest{filter:drop-shadow(0 0 8px color-mix(in srgb, var(--fam,#ff7a45) 70%, transparent))}.fb-crest-tag{min-width:calc(var(--crest,40px) * .42);height:calc(var(--crest,40px) * .42);font-style:normal;font-size:calc(var(--crest,40px) * .26);color:#111;background:var(--fam,#ff7a45);box-shadow:0 0 0 2px var(--bg,#0b0b12);border-radius:999px;place-items:center;padding:0 3px;font-weight:800;line-height:1;display:grid;position:absolute;bottom:-2px;right:-3px}.fb-crest.is-locked .fb-crest-tag{color:var(--text-2);background:rgba(var(--lift-rgb), .18)}.fb-ladder .fb-crest{margin-right:1px}.fb-crest-hero{margin:0 auto 6px}.fb-win-badges{justify-content:center;align-items:center;gap:14px;margin-bottom:4px;display:flex}.fb-win-rank{color:var(--text-1,inherit);margin:0 0 8px;font-size:1rem;font-weight:800}.fb-row .fb-row-badge.is-crest,.fb-row.is-passed .fb-row-badge.is-crest,.fb-row.is-locked .fb-row-badge.is-crest{opacity:1;width:auto;height:auto;box-shadow:none;background:0 0;border:0}.fb-stop .fb-crest{vertical-align:middle}.first-stop-veil{background:#05040cc7}.first-stop-hole,[data-mode=light] .first-stop-hole{box-shadow:0 0 0 2px rgba(var(--accent-rgb), .95), 0 0 26px 8px rgba(var(--accent-rgb), .5), 0 0 0 200vmax #05040cc7;animation:.22s ease-out both first-stop-veil-in,2.4s ease-in-out .4s infinite first-stop-hole-pulse}.study-actions .btn-reveal,.study-actions .kbd-legend{transition:opacity .25s}.first-stop-on .study-actions .btn-reveal,.first-stop-on .study-actions .kbd-legend{opacity:0}.first-stop-sheet{background:linear-gradient(var(--bg-raised,#151327), var(--bg-raised,#151327)) padding-box, linear-gradient(120deg, rgb(var(--accent-rgb)), rgb(var(--accent-2-rgb)), rgb(var(--accent-rgb))) border-box;box-shadow:0 0 28px -4px rgba(var(--accent-rgb), .55), 0 22px 50px -14px #000000b3;background-size:100% 100%,240% 100%;border:2px solid #0000;border-radius:22px;padding:18px 16px 14px;animation:.42s cubic-bezier(.2,1.4,.4,1) both first-stop-pop,3.2s ease-in-out .5s infinite first-stop-float,4s linear infinite first-stop-border}.first-stop-sheet.is-shaking{animation:.36s ease-in-out both first-stop-shake,4s linear infinite first-stop-border}.first-stop-text{align-items:center;gap:12px}.first-stop-icon{color:#fff;background:linear-gradient(135deg, rgb(var(--accent-rgb)), rgb(var(--accent-2-rgb)));width:48px;height:48px;box-shadow:0 0 18px rgba(var(--accent-rgb), .6);border-radius:50%;place-items:center;animation:.6s cubic-bezier(.2,1.6,.4,1) .15s both first-stop-icon;display:grid}.first-stop .first-hint-what{background:linear-gradient(90deg, rgb(var(--accent-rgb)), rgb(var(--accent-2-rgb)));color:#0000;-webkit-background-clip:text;background-clip:text;font-size:1.14rem;font-weight:800;line-height:1.3}.first-stop .first-hint-why{color:var(--text);font-size:.95rem}.first-stop-ok{isolation:isolate;color:var(--text-2);background:rgba(var(--lift-rgb), .1);border:1.5px solid rgba(var(--accent-rgb), .5);transition:color .2s;position:relative;overflow:hidden}.first-stop-fill{z-index:-1;background:linear-gradient(90deg, rgb(var(--accent-rgb)), rgb(var(--accent-2-rgb)));transform-origin:0;animation:first-stop-fill var(--read-ms,2s) linear both;position:absolute;inset:0}.first-stop-ok.is-ready{color:#fff;border-color:#0000;animation:1.6s ease-in-out infinite first-stop-ready}.first-stop-ok-label{position:relative}@keyframes first-stop-pop{0%{opacity:0;transform:translateY(18px)scale(.86)}to{opacity:1;transform:none}}@keyframes first-stop-float{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}@keyframes first-stop-border{to{background-position:0 0,240% 0}}@keyframes first-stop-shake{0%,to{transform:translate(0)}20%,60%{transform:translate(-7px)}40%,80%{transform:translate(7px)}}@keyframes first-stop-icon{0%{opacity:0;transform:scale(.3)rotate(-20deg)}to{opacity:1;transform:none}}@keyframes first-stop-fill{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes first-stop-ready{0%,to{box-shadow:0 0 0 0 rgba(var(--accent-rgb), .55)}50%{box-shadow:0 0 0 7px rgba(var(--accent-rgb), 0)}}@keyframes first-stop-hole-pulse{50%{box-shadow:0 0 0 2px rgba(var(--accent-rgb), 1), 0 0 34px 12px rgba(var(--accent-rgb), .6), 0 0 0 200vmax #05040cc7}}@media (prefers-reduced-motion:reduce){.first-stop-sheet,.first-stop-sheet.is-shaking,.first-stop-icon,.first-stop-hole,.first-stop-ok.is-ready{animation:none}.first-stop-fill{animation-duration:.6s}}.rh-honest-card{border:1px solid rgba(var(--accent-rgb), .4);background:rgba(var(--accent-rgb), .08);border-radius:16px;margin:2px 0 4px;padding:12px 14px}.rh-honest-title{color:rgb(var(--accent-rgb));margin:0 0 6px;font-size:.95rem;font-weight:800}.rh-honest-list{color:var(--text);gap:4px;margin:0;padding:0 0 0 18px;font-size:.86rem;line-height:1.45;display:grid}.study-header{gap:8px;min-height:46px;padding-top:6px}.study-close{border-radius:13px;width:40px;height:40px}.study-header .round-seg{height:8px}.study-header .round-count{min-width:0;color:var(--text-3);flex:none;align-items:center;gap:4px;font-size:.8rem;font-weight:600;display:inline-flex}.study-header .round-count svg{color:var(--violet-2)}.study-header .combo{flex:none;gap:3px;height:28px;padding:0 8px 0 6px}.study-header .combo-x{font-size:.85rem}.combo-word,.study-header .combo-label{display:none}@media (min-width:420px){.combo-word{display:inline}}@media (min-width:460px){.study-header .combo-label{display:inline}}.boss-pill.is-mini{flex:none;justify-content:center;gap:0;width:32px;height:32px;padding:0;position:relative}.boss-pill.is-mini>span{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.boss-pill.is-mini .bp-live{position:absolute;top:-1px;right:-1px}.study-header .left-pill{height:32px;padding:0 10px;line-height:30px}.study-header .left-num{font-size:1.05rem}.study-header .learn-chip{white-space:nowrap;flex:0 auto;min-width:0;height:30px;padding:0 10px 0 8px;font-size:.8rem}.study-header .learn-chip .deck-chip-left{text-overflow:ellipsis;overflow:hidden}.learn .study-header .learn-bar{min-width:56px}@media (max-width:350px){.study-header{gap:6px}.study-header .round-count svg{display:none}}.study-body{padding:2px 0 4px}.study-card{border-radius:26px;padding:46px 18px 20px}.card-tags{top:12px;left:14px;right:14px}.study-card.is-revealed:not(.challenge-card){justify-content:flex-start;min-height:0;padding:40px 16px 16px}.study-card.is-revealed:not(.challenge-card) .target-word.is-big .target-text{font-size:clamp(2.1rem,9.5vw,2.7rem)}.study-card.is-revealed:not(.challenge-card) .target-word.is-big .target-text:lang(th){font-size:clamp(2.2rem,10vw,2.8rem);line-height:1.4}.study-card.is-revealed:not(.challenge-card) .rom{font-size:1rem}.study-card .card-divider{margin:8px 0}.face{gap:6px}.meaning-row{justify-content:center;align-items:center;gap:14px;width:100%;min-width:0;display:flex}.meaning-row .native-word{text-align:left;overflow-wrap:anywhere;min-width:0;margin:0}.meaning-row .word-photo-md{border-radius:16px;width:min(104px,28vw)}.meaning-row .word-visual-md{width:64px;height:64px;font-size:50px}.meaning-row .word-visual-md.word-initial{font-size:1.9rem}.meaning-row>.native-word:only-child{text-align:center}.study-card.is-revealed.is-reverse .face-front{flex-flow:wrap;justify-content:center;gap:6px 14px}.study-card.is-revealed.is-reverse .face-front .word-photo-md{border-radius:16px;width:min(96px,26vw)}.study-card.is-revealed.is-reverse .face-front .word-visual-md{width:60px;height:60px;font-size:46px}.study-card.is-revealed.is-reverse .face-front>:not(.word-photo):not(.word-visual):not(.native-word){flex-basis:100%}.example{border-radius:16px;margin-top:6px;padding:9px 12px}.example-target{font-size:1rem}.example-rom{font-size:.84rem}.example-native{font-size:.9rem}.tap-hint{margin-top:14px}.learn-card{padding-top:42px}.learn.is-present .example{margin-top:6px}.learn.is-present .study-card{justify-content:center}.study-actions{padding:10px 16px calc(10px + var(--safe-b))}.rate-topline{min-height:24px;margin-bottom:6px}.rate{border-radius:18px;min-height:62px}.btn-reveal{min-height:60px}.ratings-2 .rate{min-height:62px}.study-card .focus-trio{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px 8px}.study-card .focus-trio .focus-fam{grid-area:1/1}.study-card .focus-trio .focus-say{grid-area:1/2;min-height:34px;padding:0 12px;font-size:.85rem}.study-card .focus-trio .focus-row{grid-area:2/1/auto/-1}.study-card .focus-cell{padding:6px 4px}.screen.has-nav>.home{min-height:calc(100dvh - var(--safe-t) - 78px - var(--safe-b));padding-bottom:4px}.home-top{padding-top:8px}.home-goal{min-height:0;padding:8px 0 10px}.home-goal .goal-hint,.home-goal .daily-line{margin-top:8px}.home-goal .resume-chip{min-height:40px;margin-top:8px}.decks{gap:10px;margin-bottom:0}.deck-btn{border-radius:22px;gap:12px;min-height:74px;padding:10px 14px}.deck-btn.is-done{min-height:64px}.deck-icon{border-radius:15px;width:46px;height:46px}.deck-name{font-size:1.2rem}.deck-count{font-size:2.1rem}.deck-learn-slot{gap:2px}.learn-anyway{min-height:30px;padding:4px 12px}.placement-slot{gap:2px}.home-goal-text{text-align:center;flex-direction:column;align-items:center;min-width:0;max-width:100%;display:flex}.home-goal.is-row{flex-direction:row;justify-content:flex-start;gap:16px;padding:6px 4px 8px}.home-goal.is-row .home-goal-text{text-align:left;flex:1;align-items:flex-start}.home-goal.is-row .goal-hint,.home-goal.is-row .daily-line{margin-top:0}.home-goal.is-row .goal-hint+.goal-hint,.home-goal.is-row .daily-line+.goal-hint{margin-top:4px}.home-goal.is-row .resume-chip{margin-top:8px}.home-goal.is-row .ring-unit,.home-goal.is-row .ring-sub,.home-goal.is-row .goal-ring:not(.is-rest) .ring-done{display:none}.home-goal.is-row .ring-num{font-size:2rem}.home-goal.is-row .ring-check{width:36px;height:36px}.home-goal.is-row .ring-check svg{width:22px;height:22px}.home-goal.is-row .goal-ring.is-rest .ring-done{text-align:center;padding:0 14px;font-size:.74rem;line-height:1.2}.run-tile{margin:8px 0}.chapter-strip{margin-bottom:6px}.deck-placement .deck-sub{font-size:.8rem;line-height:1.3}.placement-later{min-height:26px;padding:2px 12px}.run-hall{padding-bottom:calc(12px + var(--safe-b));gap:8px}.run-stage-caption{z-index:2;color:var(--text-2);pointer-events:none;margin:0;font-size:.78rem;line-height:1.3;position:absolute;top:8px;left:50px;right:50px}.run-hall.is-shop .run-stage-caption{display:none}.run-cast{margin-top:0}.run-cast-chip{padding:7px 2px 6px}.run-hub{grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;gap:8px;display:grid}.run-hub-tile{border:1px solid var(--border);background:rgba(var(--lift-rgb), .05);min-height:48px;color:inherit;font:inherit;text-align:left;cursor:pointer;border-radius:14px;grid-template-rows:auto auto;grid-template-columns:auto minmax(0,1fr);align-items:center;column-gap:6px;padding:6px 10px;display:grid}.run-hub-tile svg{grid-row:1/span 2}.run-hub-tile b{overflow-wrap:anywhere;font-size:.8rem;line-height:1.2}.run-hub-tile span{color:var(--text-3);font-variant-numeric:tabular-nums;font-size:.76rem}.run-hub-tile.is-locker{background:#fbbf2414;border-color:#fbbf2466}.run-hub-tile.is-locker svg{color:#fbbf24}.run-hub-tile.is-daily{border-color:rgba(var(--accent-2-rgb), .4);background:rgba(var(--accent-2-rgb), .07)}.run-hub-tile.is-daily svg{color:rgb(var(--accent-2-rgb))}.run-hub-tile.is-daily.is-done svg,.run-hub-tile.is-ch svg{color:var(--violet-2)}.run-hub-tile:active{transform:scale(.97)}.run-ladder{margin:2px 0 0}.run-ladder-pips{margin-bottom:4px}.run-ladder-text{flex-flow:wrap;justify-content:center;align-items:baseline;gap:0 8px;font-size:.8rem}.run-go{min-height:58px;margin-top:0}.runs-left{margin-top:0;padding:5px 14px}.runs-left-count b{font-size:1.5rem}.run-facts{flex-wrap:wrap;justify-content:center;gap:6px;display:flex}.run-facts:empty{display:none}.run-facts>*{border:1px solid var(--border);background:rgba(var(--lift-rgb), .04);border-radius:999px;align-items:center;gap:6px;margin:0;padding:4px 10px;font-size:.76rem;line-height:1.3;display:inline-flex}.run-facts .run-record{-webkit-backdrop-filter:none;backdrop-filter:none;padding:3px 10px 3px 4px}.run-facts .run-record-icon{border-radius:999px;width:22px;height:22px}.run-facts .run-record-icon svg{width:13px;height:13px}.run-facts .run-record-main{flex-direction:row;align-items:baseline;gap:5px}.run-facts .run-record-main b{font-size:.9rem}.run-facts .run-record-main span{font-size:.66rem}.run-facts .run-record-side{margin:0;font-size:.74rem}.run-honest{padding-top:2px;font-size:.74rem}.run-missions-sheet .run-locker+.run-locker{margin-top:12px}.run-missions-sheet .ach-sheet-close{margin-left:auto}.run-end{padding:6px 0 calc(10px + var(--safe-b));position:relative}.run-end-top{z-index:2;position:absolute;top:8px;right:0}.run-end-hero{padding:8px 64px 4px}.run-end-hero .record-chip{margin-bottom:4px}.run-end-score{font-size:2.9rem}.run-end-sub{margin-top:2px}.run-end-ladder{margin-top:4px}.run-end-day{margin-top:2px}.run-end-stars{margin:0 0 6px}.run-end-stars .run-stars.is-big svg{width:26px;height:26px}.run-gains{grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;gap:8px;margin-bottom:8px;display:grid}.run-gains:empty{display:none}.run-gains>.run-end-gems,.run-gains>.run-coins{margin:0;padding:8px 10px}.run-gains .run-end-gems-main{gap:2px 6px;font-size:.88rem}.run-gains .run-end-gems-sub,.run-gains .run-coins-detail,.run-gains .run-coins-bounty{font-size:.74rem;line-height:1.3}.run-gains .run-coins-main{font-size:1.25rem}.run-end .summary-stats{gap:8px;margin-bottom:8px}.run-end .stat-tile{border-radius:16px;padding:7px 4px 6px}.run-end .stat-num{font-size:1.45rem}.run-end .stat-label{font-size:.74rem}.run-end .run-honest{padding-top:4px;font-size:.74rem}.run-end .summary-actions{gap:6px;padding-top:8px}.run-end .summary-actions .btn-xl{min-height:56px}.missed{margin-bottom:8px;padding:10px 6px 4px}.missed-title{padding-bottom:2px}.missed-row{gap:6px;min-height:44px;padding:4px 10px}.missed-list:has(>li:nth-child(2)){grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.missed-list:has(>li:nth-child(2)) .missed-target{font-size:.98rem}.missed-list:has(>li:nth-child(2)) .missed-native{overflow-wrap:anywhere;font-size:.8rem}.missed-list:has(>li:nth-child(2)) .missed-speaker{width:16px;height:16px}.run-gains>.run-end-gems,.run-gains>.run-coins{border-radius:16px}.run-end .summary-actions{grid-template-columns:auto minmax(0,1fr);align-items:center}.run-end .summary-actions>.btn{order:2}.run-end .summary-actions>.runs-left{order:1;gap:8px;margin:0;padding:6px 12px}.run-end .summary-actions>.runs-left .runs-left-slots i{width:12px}.run-end .summary-actions>.run-note{order:3;grid-column:1/-1}.run-end .summary-actions>.btn:only-child{grid-column:1/-1}.summary{padding:6px 0 calc(10px + var(--safe-b))}.summary-hero{padding:10px 0}.summary-title.is-perfect{font-size:2.5rem}.summary-hero .cleared-chip{margin-top:6px}.summary .summary-stats{gap:8px;margin-bottom:8px}.summary .stat-tile{border-radius:16px;padding:8px 4px 7px}.summary .stat-num{font-size:1.5rem}.tierups{margin:0 0 6px}.tierups-title{margin-bottom:4px}.tierup-card{height:58px}.summary-level{gap:12px;padding:10px 14px}.summary .forecast,.summary .missed{margin-top:8px}.summary-actions{padding-top:12px}:is(.missed-list:has(>li:nth-child(2)) .word-photo-sm,.missed-list:has(>li:nth-child(2)) .word-visual-sm){border-radius:10px;width:32px;height:32px;font-size:24px}.summary .summary-actions{gap:8px}.summary .summary-actions .btn-xl{min-height:54px}.challenge-card .ch-prompt .word-photo-lg{width:min(164px,44vw)}.run-duel-go{border:1px solid rgba(var(--accent-2-rgb), .45);background:rgba(var(--accent-2-rgb), .1);min-height:44px;color:var(--text);letter-spacing:.06em;gap:8px;font-weight:800}.run-duel-go svg{color:rgb(var(--accent-2-rgb))}.run-hall .run-stage-card{height:clamp(98px,100dvh - 552px,210px)}.duel-region{color:var(--text-2);justify-content:space-between;align-items:baseline;gap:8px;margin:0;font-size:.82rem;display:flex}.duel-region b{color:var(--text);font-size:.95rem}.duel-path{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex;position:relative}.duel-path:before{content:"";background:linear-gradient(to top, rgba(var(--accent-2-rgb), .7), rgba(var(--accent-rgb), .35));border-radius:2px;width:3px;position:absolute;top:20px;bottom:20px;left:33px}.duel-node-btn{border:1px solid var(--border);background:rgba(var(--ground-rgb), .72);width:100%;min-height:60px;color:inherit;font:inherit;text-align:left;cursor:pointer;border-radius:16px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:6px 12px 6px 10px;display:grid;position:relative}.duel-node-btn:disabled{cursor:default}.duel-node.is-locked .duel-node-btn{opacity:.5;filter:grayscale(.9)}.duel-node.is-capped .duel-node-btn{opacity:.75}.duel-node.is-cleared .duel-node-btn{border-color:#4ade8059}.duel-node.is-current .duel-node-btn{border-color:rgba(var(--accent-2-rgb), .7);background:rgba(var(--accent-2-rgb), .12)}.duel-node.is-selected .duel-node-btn{outline:2px solid rgb(var(--accent-2-rgb));outline-offset:1px;box-shadow:0 0 18px rgba(var(--accent-2-rgb), .35)}.duel-node.is-boss .duel-node-btn{border-color:#fbbf2480}.duel-node-btn:not(:disabled):active{transform:scale(.98)}.duel-portrait{border:2px solid var(--border-strong);background:rgba(var(--lift-rgb), .08);border-radius:50%;flex:none;place-items:center;display:grid;overflow:hidden}.duel-portrait.is-boss{border-color:#fbbf24}.duel-portrait img{object-fit:cover;width:100%;height:100%}.duel-node-text{flex-direction:column;gap:1px;min-width:0;display:flex}.duel-node-text b{align-items:center;gap:4px;font-size:.95rem;line-height:1.2;display:inline-flex}.duel-node-text b svg{color:#fbbf24}.duel-node-sub{color:var(--text-3);font-size:.76rem;line-height:1.25}.duel-node-lock{color:var(--text-3)}.duel-obj{gap:3px;display:inline-flex}.duel-obj i{border:1.5px solid var(--border-strong);color:#0b0a14;border-radius:5px;place-items:center;width:16px;height:16px;display:grid}.duel-obj i.is-done{border-color:var(--good);background:var(--good)}.duel-obj.is-big{gap:8px}.duel-obj.is-big i{border-radius:9px;width:30px;height:30px}.duel-obj i.is-fresh{animation:duel-pop .5s var(--ease-out) both}.duel-closed,.duel-go{margin-top:2px}.duel-stage{flex-direction:column;display:flex}.duel-arena{background:radial-gradient(120% 80% at 50% 100%, rgba(var(--accent-2-rgb), .18), transparent 60%), linear-gradient(to bottom, rgba(var(--accent-rgb), .12), rgba(var(--ground-rgb), 1));flex:auto;min-height:150px;position:relative;overflow:hidden}.duel-stage.is-flat .duel-canvas{display:none}.duel-flat{pointer-events:none;justify-content:space-around;align-items:flex-end;display:flex;position:absolute;inset:auto 0 12px}.duel-flat-fig{border:3px solid var(--border-strong);background:rgba(var(--lift-rgb), .06);border-radius:50%;width:min(34vw,150px);height:auto}.duel-flat-fig.is-enemy{border-color:#ef444499;transform:scaleX(-1)}.duel-flat-fig.is-player.is-hit{animation:.35s both duel-shake}.duel-flat-fig.is-enemy.is-hit{animation:.35s both duel-shake-flip}.duel-hud{top:calc(var(--safe-t,0px) + 8px);z-index:3;grid-template-columns:40px minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:6px;display:grid;position:absolute;left:10px;right:10px}.duel-hud .run-pause{position:static}.duel-vs{color:var(--text-3);place-items:center;display:grid}.duel-hp{background:rgba(var(--ground-rgb), .75);border:1px solid #00000059;border-radius:999px;height:20px;position:relative;overflow:hidden}.duel-hp i{transition:width .45s var(--ease-out);background:linear-gradient(90deg,#22c55e,#4ade80);position:absolute;inset:0 auto 0 0}.duel-hp.is-enemy i{background:linear-gradient(270deg,#ef4444,#f97316);inset:0 0 0 auto}.duel-hp.is-low.is-player i{background:linear-gradient(90deg,#f59e0b,#fbbf24)}.duel-hp span{color:#fff;text-shadow:0 1px 2px #000000b3;font-variant-numeric:tabular-nums;align-items:center;gap:3px;height:100%;padding:0 8px;font-size:.74rem;font-weight:800;display:flex;position:relative}.duel-hp.is-enemy span{justify-content:flex-end}.duel-windup{background:rgba(var(--lift-rgb), .12);z-index:2;border-radius:3px;width:38%;height:5px;position:absolute;bottom:14px;right:8%;overflow:hidden}.duel-windup i{transform-origin:0;background:#fbbf24;animation-name:duel-windup;animation-timing-function:linear;animation-fill-mode:both;position:absolute;inset:0}.duel-windup.is-heavy i{background:#ef4444}.duel-floats{z-index:2;pointer-events:none;position:absolute;inset:0}.duel-float{top:calc(38% + var(--j,0) * 30px);white-space:nowrap;text-shadow:0 2px 6px #0009;animation:duel-fly .9s var(--ease-out) both;font-size:1.7rem;font-weight:900;line-height:1;position:absolute;transform:translate(-50%)}.duel-float.is-enemy{left:70%}.duel-float.is-player{left:28%}.duel-float.is-dmg{color:#f87171}.duel-float.is-soft{color:#fcd34d}.duel-float.is-block{color:#93c5fd;font-size:1rem}.duel-float.is-bonus{color:#4ade80;font-size:1.15rem}.duel-float.is-miss{color:var(--text-2);font-size:1.2rem}.duel-label{left:50%;top:calc(var(--safe-t,0px) + 50px);background:rgba(var(--ground-rgb), .8);border:1px solid var(--border-strong);white-space:nowrap;animation:duel-pop .3s var(--ease-out) both;border-radius:999px;padding:4px 12px;font-size:.85rem;font-weight:800;position:absolute;transform:translate(-50%)}.duel-chain{left:12px;top:calc(var(--safe-t,0px) + 54px);z-index:2;color:#fde68a;background:rgba(var(--ground-rgb), .7);border:1px solid #fbbf2473;border-radius:999px;align-items:center;gap:3px;padding:2px 8px;font-size:.78rem;font-weight:800;display:inline-flex;position:absolute}.duel-chain.is-g3{box-shadow:0 0 14px #fbbf248c}.duel-panel{z-index:3;min-height:236px;padding:12px 12px calc(12px + var(--safe-b,0px));border-top:1px solid var(--border);background:rgba(var(--ground-rgb), .94);border-radius:20px 20px 0 0;flex-direction:column;flex:none;gap:8px;display:flex;position:relative}.duel-panel.is-parade{border-top-color:#ef444499}.duel-kicker{letter-spacing:.04em;color:var(--text-2);text-align:center;justify-content:center;align-items:center;gap:5px;margin:0;font-size:.78rem;font-weight:700;display:inline-flex}.duel-panel.is-parade .duel-kicker{color:#fca5a5}.duel-tap{opacity:.7;margin-top:auto;margin-bottom:auto}.duel-prompt{justify-content:center;align-items:center;gap:8px;min-height:40px;display:flex}.duel-word{text-align:center;overflow-wrap:anywhere;font-size:clamp(1.35rem,6.4vw,1.8rem);font-weight:800;line-height:1.2}.duel-blows{grid-template-columns:1fr 1fr;gap:10px;margin-top:auto;display:grid}.duel-blows.is-single{grid-template-columns:1fr}.duel-blow{border:1.5px solid var(--border-strong);background:rgba(var(--lift-rgb), .07);border-radius:18px;flex-direction:column;justify-content:center;align-items:center;gap:3px;min-height:92px;display:flex}.duel-blow b{align-items:center;gap:6px;font-size:1.2rem;font-weight:900;display:inline-flex}.duel-blow span{color:var(--text-2);font-size:.78rem}.duel-blow.is-heavy{background:#ef44441f;border-color:#ef444499}.duel-blow.is-heavy svg{color:#f87171}.duel-blow.is-light svg{color:rgb(var(--accent-2-rgb))}.duel-options{grid-template-columns:1fr;gap:8px;display:grid}.duel-options.is-5{grid-template-columns:1fr 1fr}.duel-options.is-5 .duel-option:last-child{grid-column:1/-1}.duel-option{border:1px solid var(--border-strong);background:rgba(var(--lift-rgb), .07);overflow-wrap:anywhere;border-radius:14px;min-height:50px;padding:6px 10px;font-size:1.08rem;font-weight:700;line-height:1.2}.duel-options.is-5 .duel-option{min-height:46px;font-size:1rem}.duel-letters{grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;gap:8px;margin-top:auto;display:grid}.duel-letter{background:#ef444414;border:1.5px solid #ef444473;border-radius:16px;min-height:72px;padding:0;font-size:2rem;font-weight:900}.duel-letters.is-7 .duel-letter{min-height:62px;font-size:1.6rem}.duel-option:active,.duel-letter:active,.duel-blow:active{transform:scale(.96)}.duel-masked{flex-direction:column;gap:10px;display:flex}.duel-masked-word{letter-spacing:.04em;flex-wrap:wrap;justify-content:center;align-items:flex-end;gap:2px;margin:0;font-size:2rem;font-weight:800;display:flex}.duel-hole{border:none;border-bottom:3px solid rgb(var(--accent-2-rgb));min-width:30px;height:42px;color:inherit;font:inherit;background:0 0;place-items:center;padding:0 4px;display:inline-grid}.duel-hole.is-filled{background:rgba(var(--accent-rgb), .18);cursor:pointer;border-radius:8px 8px 0 0}.duel-reveal{align-self:center;margin:auto 0;position:relative;top:auto;left:auto;transform:none}.duel-reveal.is-on{transform:none}.duel-reveal-letter{color:inherit;background:#fbbf2440;border-radius:6px;padding:0 6px}.duel-finishing{flex-direction:column;gap:8px;margin:auto 0;display:flex}.duel-pause-who{text-align:left;align-items:center;gap:12px;display:flex}.duel-pause-who img{object-fit:cover;border:2px solid #ef44448c;border-radius:50%}.duel-pause-who div{flex-direction:column;gap:2px;display:flex}.duel-pause-who span{color:var(--text-2);align-items:center;gap:4px;font-size:.82rem;display:inline-flex}.duel-end-title{font-size:clamp(2rem,10vw,2.8rem);font-weight:900;line-height:1.1}.duel-end.is-won .duel-end-title{color:var(--good)}.duel-end-obj{border-radius:var(--radius);align-items:center;gap:14px;padding:12px 14px;display:flex}.duel-end-obj ul{color:var(--text-3);flex-direction:column;gap:2px;margin:0;padding:0;font-size:.86rem;list-style:none;display:flex}.duel-end-obj li.is-done{color:var(--text)}.duel-end-obj li.is-fresh{color:var(--good);font-weight:700}@keyframes duel-windup{0%{transform:scaleX(1)}to{transform:scaleX(0)}}@keyframes duel-fly{0%{opacity:0;transform:translate(-50%,10px)scale(.7)}18%{opacity:1;transform:translate(-50%)scale(1.15)}to{opacity:0;transform:translate(-50%,-46px)scale(1)}}@keyframes duel-pop{0%{opacity:0;transform:translateX(var(--pop-x,0)) scale(.6)}to{opacity:1;transform:translateX(var(--pop-x,0)) scale(1)}}.duel-label{--pop-x:-50%}@keyframes duel-shake{0%,to{transform:translate(0)}25%{transform:translate(-8px)}75%{transform:translate(8px)}}@keyframes duel-shake-flip{0%,to{transform:scaleX(-1)translate(0)}25%{transform:scaleX(-1)translate(-8px)}75%{transform:scaleX(-1)translate(8px)}}@media (prefers-reduced-motion:reduce){.duel-float,.duel-label,.duel-obj i.is-fresh,.duel-flat-fig.is-hit{animation:none}.duel-float{transform:translate(-50%)}.duel-hp i{transition:none}}.duel-rom{opacity:.7;margin-top:1px;font-size:.72rem;font-weight:600;display:block}.duel-end{min-height:calc(100dvh - var(--safe-t,0px));flex-direction:column;gap:10px;display:flex}.duel-end .run-end-hero{text-align:center;padding-top:44px}.duel-end .summary-actions{flex-direction:column;align-items:stretch;gap:8px;margin-top:auto;display:flex}.duel-end-pay{text-align:left;align-items:center;gap:12px;display:flex}.duel-end-foe{object-fit:cover;border:2px solid #ef44448c;border-radius:50%;flex:none}.duel-end-pay-text{flex-direction:column;gap:2px;min-width:0;display:flex}.duel-end-pay .run-coins-main{font-variant-numeric:tabular-nums;justify-content:flex-start}.duel-end-nopay{color:var(--text-2);font-size:1rem}.word-hint-btn{border:1.5px dashed rgba(var(--accent-rgb), .55);background:rgba(var(--accent-rgb), .08);min-height:32px;color:rgb(var(--accent-rgb));font:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent;border-radius:999px;align-items:center;gap:5px;margin:8px auto 0;padding:4px 12px 4px 9px;font-size:.82rem;font-weight:700;line-height:1;display:inline-flex}.word-hint-btn:focus-visible{outline:3px solid rgb(var(--accent-rgb));outline-offset:2px}.word-hint-btn:active{transform:scale(.96)}.word-hint.is-opened{justify-content:center;align-items:center;gap:5px;animation:.22s ease-out both word-hint-open;display:flex}.word-hint.is-opened svg{color:rgb(var(--accent-rgb));flex:none}@keyframes word-hint-open{0%{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:none}}.study-actions .ratings{transition:opacity .25s}html.hint-stop-on .study-actions .ratings{opacity:0}.hint-confirm .first-stop-fill{animation:none;transform:none}.hint-confirm .first-stop-ok{min-height:52px;font-size:1.06rem}.hint-confirm-keep{width:100%;min-height:44px;color:var(--text-3);font:inherit;text-underline-offset:3px;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;margin-top:6px;font-size:.88rem;font-weight:500;text-decoration:underline;display:block}.hint-confirm-keep:focus-visible{outline:2px solid rgb(var(--accent-rgb));outline-offset:2px}@media (prefers-reduced-motion:reduce){.word-hint.is-opened{animation:none}}.lk-page{height:calc(100vh - var(--safe-t));height:calc(100dvh - var(--safe-t));padding-bottom:var(--safe-b);flex-direction:column;display:flex;overflow:hidden}.lk-page .page-head{flex:none;grid-template-columns:48px 1fr auto;margin-bottom:0}.lk-page .page-head-right{justify-self:end}.lk-page .run-stage-card{flex:none;height:176px;margin-top:4px}.lk-page .run-notes{flex:none}.lk-runner{z-index:2;background:rgba(var(--ground-rgb), .72);border-radius:999px;padding:3px 9px;font-size:.78rem;font-weight:700;position:absolute;top:8px;left:10px}.lk-help-btn{z-index:2;border:1px solid rgba(var(--accent-2-rgb), .6);background:rgba(var(--ground-rgb), .78);min-height:36px;color:inherit;font:inherit;cursor:pointer;border-radius:999px;align-items:center;gap:5px;padding:0 11px;font-size:.78rem;font-weight:700;display:inline-flex;position:absolute;top:6px;right:6px}.lk{flex-direction:column;flex:1;min-height:0;margin-top:8px;display:flex}.lk-tabs{scrollbar-width:none;scroll-snap-type:x proximity;flex:none;gap:6px;padding:2px 0 8px;display:flex;overflow-x:auto}.lk-tabs::-webkit-scrollbar{display:none}.lk-tab{scroll-snap-align:start;border:1px solid rgba(var(--lift-rgb), .16);background:rgba(var(--lift-rgb), .05);min-height:38px;color:var(--text-2,inherit);font:inherit;cursor:pointer;border-radius:999px;flex:none;padding:0 13px;font-size:.82rem;font-weight:700}.lk-tab.is-on{border-color:rgba(var(--accent-2-rgb), .9);background:rgba(var(--accent-rgb), .28);color:var(--text,inherit)}.lk-grid{overscroll-behavior:contain;flex:1;grid-template-columns:1fr 1fr;align-content:start;gap:8px;min-height:0;padding-bottom:8px;display:grid;overflow-y:auto}@media (max-width:339px){.lk-grid{grid-template-columns:1fr}}.lk-card{border:1px solid rgba(var(--lift-rgb), .14);background:rgba(var(--lift-rgb), .05);border-radius:14px;flex-direction:column;gap:6px;min-width:0;padding:8px 9px 9px;display:flex}.lk-card.is-locked .lk-card-head,.lk-card.is-locked .lk-stats{opacity:.72}.lk-card.is-afford{border-color:#fbbf2480}.lk-card.is-open{border-color:var(--amber);box-shadow:0 0 0 1px var(--amber) inset}.lk-card.is-open .lk-card-head,.lk-card.is-open .lk-stats{opacity:1}.lk-card.is-worn{border-color:rgba(var(--accent-2-rgb), .9);background:rgba(var(--accent-rgb), .2)}.lk-card-head{width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;flex-direction:column;align-items:flex-start;gap:4px;padding:0;display:flex}.lk-card-head:disabled{cursor:default}.lk-name{overflow-wrap:anywhere;font-size:.88rem;line-height:1.2}.lk-badge{color:var(--text-3);align-items:center;gap:3px;font-size:.74rem;font-weight:700;display:inline-flex}.lk-badge.is-price,.lk-badge.is-trophy{color:var(--amber)}.lk-badge.is-worn{color:rgb(var(--accent-2-rgb))}.lk-stats{background:rgba(var(--lift-rgb), .05);color:var(--text-3);border-radius:9px;margin:0;padding:5px 7px;font-size:.74rem;line-height:1.35;list-style:none}.lk-stats.is-duel{background:rgba(var(--accent-rgb), .14);color:var(--text-2,inherit)}.lk-stats.is-duel li:first-child{color:var(--text,inherit);font-weight:700}.lk-foot{margin-top:auto}.lk-act{gap:4px;width:100%;min-height:38px;padding:0 8px;font-size:.82rem}.lk-note{color:var(--text-3);margin:0;font-size:.72rem;line-height:1.3}.lk-note.is-short{color:var(--amber)}.lk-rules{gap:10px;margin:0;padding:0 0 8px 1.3em;font-size:.92rem;line-height:1.4;display:grid}.char-locker .lk{margin-top:8px}@media (prefers-reduced-motion:reduce){.lk-tabs{scroll-behavior:auto}}.lk-help-sheet .ach-sheet-close{margin-left:auto}.lk-card-head{flex-direction:row;align-items:center;gap:8px}.lk-head-text{flex-direction:column;align-items:flex-start;gap:4px;min-width:0;display:flex}.lk-thumb,.lk-portrait{background:radial-gradient(circle at 50% 40%, rgba(var(--lift-rgb), .16), rgba(var(--lift-rgb), .05) 70%);border-radius:11px;flex:none;width:48px;height:48px}.lk-thumb{object-fit:contain;box-sizing:border-box;padding:2px}.lk-card.is-locked .lk-thumb{filter:saturate(.75)}.lk-portrait{place-items:center;display:grid;position:relative;overflow:hidden}.lk-portrait-icon{opacity:.6}.lk-portrait-img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.lk-runner-card.is-locked .lk-portrait-img{filter:grayscale(.85)brightness(.8)}.lk-badge.is-lock{color:var(--text-3)}.load-veil{z-index:5;padding:0 16px calc(env(safe-area-inset-bottom,0px) + 22vh);background:rgb(var(--ground-rgb));pointer-events:none;opacity:1;place-items:end center;transition:opacity .28s ease-out;display:grid;position:absolute;inset:0}.load-veil.is-out{opacity:0}.load-veil-box{text-align:center;justify-items:center;gap:8px;width:min(280px,100%);display:grid}.load-veil-text{letter-spacing:.02em;color:var(--text);text-shadow:0 1px 8px rgba(var(--ground-rgb), .9);font-variant-numeric:tabular-nums;margin:0;font-size:.95rem;font-weight:700}.load-veil-bar{background:rgba(var(--ground-rgb), .55);border-radius:999px;width:100%;height:4px;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #ffffff14}.load-veil-bar>i{transform-origin:0;background:var(--grad);transition:transform .25s ease-out;position:absolute;inset:0}.load-veil-slow{color:var(--text-2);text-shadow:0 1px 8px rgba(var(--ground-rgb), .9);margin:0;font-size:.82rem}@media (prefers-reduced-motion:reduce){.load-veil,.load-veil-bar>i{transition:none}}.duel-stage .load-veil{z-index:5}.load-veil.load-chunk{background:rgba(var(--ground-rgb), .5);place-items:center;padding:0 16px;position:fixed}.load-veil-bar.is-busy>i{animation:1.1s ease-in-out infinite load-busy;transform:scaleX(.3)}@keyframes load-busy{0%{translate:-100%}to{translate:340%}}@media (prefers-reduced-motion:reduce){.load-veil-bar.is-busy>i{animation:none;transform:scaleX(.5)}}
