@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:200 800;font-display:swap;src:url(/assets/fonts/plus-jakarta-sans-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:200 800;font-display:swap;src:url(/assets/fonts/plus-jakarta-sans-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Cabinet Grotesk;font-style:normal;font-weight:200 900;font-display:swap;src:url(/assets/fonts/plus-jakarta-sans-latin.woff2) format("woff2")}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:200 900;font-display:swap;src:url(/assets/fonts/plus-jakarta-sans-latin.woff2) format("woff2")}:root{color-scheme:light;--color-bg: #F4F6FB;--color-surface: #FFFFFF;--color-surface-2: #F8FAFC;--color-surface-sunken: #EEF2F7;--color-surface-glass: rgba(255, 255, 255, .88);--color-surface-glass-hover: rgba(255, 255, 255, .98);--color-text: #0F172A;--color-text-muted: #526072;--color-text-faint: #5F6D82;--ic-sky: #0369A1;--ic-indigo: #4338CA;--ic-teal: #0F766E;--ic-rose: #BE185D;--ic-amber: #B45309;--ic-slate: #475569;--color-border: #E2E8F0;--color-border-strong: #7C8CA3;--color-overlay: rgba(15, 23, 42, .55);--level-basic: #047857;--level-intermediate: #1D4ED8;--level-advanced: #C2410C;--zone-practice-a: #818CF8;--zone-practice-b: #4338CA;--zone-read-a: #34D399;--zone-read-b: #047857;--zone-listen-a: #FB7185;--zone-listen-b: #BE123C;--zone-pron-a: #F472B6;--zone-pron-b: #A21CAF;--zone-course-a: #38BDF8;--zone-course-b: #0369A1;--zone-records-a: #FBBF24;--zone-records-b: #B45309;--zone-icon-ink: #FFFFFF;--zone-icon-shine: rgba(255, 255, 255, .35);--pron-soft: #FDF2F8;--pron-ink: #9D174D;--pron-solid: #DB2777;--pron-border: #FBCFE8;--hero-a: #0EA5E9;--hero-b: #4F46E5;--hero-c: #7C3AED;--hero-ink: #FFFFFF;--hero-ink-soft: rgba(255, 255, 255, .86);--hero-glass: rgba(255, 255, 255, .16);--hero-glass-border: rgba(255, 255, 255, .32);--hero-orb: rgba(255, 255, 255, .22);--ring-a: #38BDF8;--ring-b: #4F46E5;--ok-a: #34D399;--ok-b: #059669;--flame-a: #FBBF24;--flame-b: #F97316;--kind-quiz: #4F46E5;--kind-reading: #059669;--kind-listening: #E11D48;--kind-pronunciation: #DB2777;--kind-course: #0284C7;--color-primary: #4F46E5;--color-primary-hover: #4338CA;--color-primary-ink: #312E81;--color-primary-soft: #EEF2FF;--color-primary-border: #C7D2FE;--color-on-primary: #FFFFFF;--color-focus: #4F46E5;--color-focus-ring: rgba(79, 70, 229, .35);--color-success: #047857;--color-success-soft: #ECFDF5;--color-success-ink: #065F46;--color-success-border: #A7F3D0;--color-danger: #C81E1E;--color-danger-soft: #FEF2F2;--color-danger-ink: #991B1B;--color-danger-border: #FECACA;--color-on-danger: #FFFFFF;--color-warning: #A8480A;--color-warning-soft: #FFFBEB;--color-warning-ink: #92400E;--color-warning-border: #FDE68A;--color-info: #0369A1;--color-info-soft: #F0F9FF;--color-info-ink: #075985;--color-info-border: #BAE6FD;--bg-aurora: radial-gradient(ellipse 65% 55% at 10% 0%, rgba(184, 174, 214, .35) 0%, rgba(153, 199, 217, .22) 40%, transparent 70%), radial-gradient(ellipse 60% 50% at 90% 5%, rgba(240, 154, 176, .3) 0%, rgba(254, 215, 170, .2) 45%, transparent 70%), radial-gradient(ellipse 55% 45% at 0% 55%, rgba(168, 203, 176, .22) 0%, transparent 60%), radial-gradient(ellipse 70% 50% at 50% 100%, rgba(254, 240, 199, .4) 0%, rgba(224, 231, 255, .28) 50%, transparent 80%);--bg-dots: rgba(100, 116, 139, .14);--waves-dim: 1;--primary-light: #6366F1;--primary-glow: rgba(79, 70, 229, .2);--emerald-light: #10B981;--emerald-glow: rgba(16, 185, 129, .2);--amber-light: #F59E0B;--amber-glow: rgba(245, 158, 11, .2);--sky-light: #0EA5E9;--sky-glow: rgba(2, 132, 199, .2);--purple: #7C3AED;--purple-light: #8B5CF6;--purple-surface: #F5F3FF;--purple-border: #DDD6FE;--purple-ink: #5B21B6;--purple-glow: rgba(124, 58, 237, .2);--rose: #E11D48;--rose-light: #F43F5E;--rose-surface: #FFF1F2;--rose-border: #FECDD3;--rose-ink: #9F1239;--rose-glow: rgba(244, 63, 94, .2);--teal: #0D9488;--teal-light: #14B8A6;--teal-surface: #F0FDFA;--teal-border: #99F6E4;--teal-ink: #115E59;--teal-glow: rgba(13, 148, 136, .2);--fuchsia: #A21CAF;--fuchsia-light: #C026D3;--fuchsia-surface: #FDF4FF;--fuchsia-border: #F5D0FE;--fuchsia-ink: #701A75;--cyan: #0E7490;--cyan-light: #06B6D4;--cyan-surface: #ECFEFF;--cyan-surface-2: #CFFAFE;--cyan-border: #A5F3FC;--cyan-border-strong: #67E8F9;--cyan-ink: #155E75;--cyan-glow: rgba(8, 145, 178, .25);--radius-sm: 8px;--radius-md: 12px;--radius-lg: 18px;--radius-pill: 999px;--shadow-1: 0 1px 3px rgba(15, 23, 42, .06);--shadow-2: 0 4px 16px -2px rgba(15, 23, 42, .09);--shadow-3: 0 12px 32px -4px rgba(15, 23, 42, .14);--shadow-focus: 0 0 0 3px var(--color-focus-ring);--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.5rem;--space-6: 2rem;--space-7: 3rem;--space-8: 4rem;--space-0: .125rem;--gutter: clamp(1rem, .5rem + 2vw, 1.5rem);--stack: clamp(var(--space-4), .5rem + 2.5vw, 1.8rem);--font-body: "Plus Jakarta Sans", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-display: var(--font-body);--font-mono: var(--font-body);--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.125rem;--text-xl: clamp(1.25rem, 1.05rem + 1vw, 1.375rem);--text-2xl: clamp(1.5rem, 1.1rem + 1.6vw, 1.75rem);--text-3xl: clamp(1.75rem, 1.2rem + 2.4vw, 2.25rem);--text-copy: 1rem;--weight-regular: 400;--weight-medium: 500;--weight-semibold: 600;--weight-bold: 700;--weight-extrabold: 800;--leading-tight: 1.2;--leading-snug: 1.4;--leading-body: 1.6;--z-base: 1;--z-sticky: 40;--z-nav: 50;--z-overlay: 60;--z-modal: 70;--z-toast: 80;--ems-bottom-reserved: 0px;--ems-notice-h: 0px;--motion-fast: .12s;--motion-base: .2s;--ease-out: cubic-bezier(.16, 1, .3, 1)}html[data-theme=dark]{color-scheme:dark;--color-bg: #0B1020;--color-surface: #131A2E;--color-surface-2: #1A2238;--color-surface-sunken: #0E1426;--color-surface-glass: rgba(19, 26, 46, .88);--color-surface-glass-hover: rgba(26, 34, 56, .96);--color-text: #E8ECF6;--color-text-muted: #A9B4CB;--color-text-faint: #8F9BB5;--ic-sky: #7DD3FC;--ic-indigo: #A5B4FC;--ic-teal: #5EEAD4;--ic-rose: #F9A8D4;--ic-amber: #FCD34D;--ic-slate: #CBD5E1;--color-border: #263049;--color-border-strong: #6B7899;--color-overlay: rgba(3, 6, 15, .72);--level-basic: #34D399;--level-intermediate: #60A5FA;--level-advanced: #FB923C;--pron-soft: #3B0F2A;--pron-ink: #FBCFE8;--pron-solid: #F472B6;--pron-border: #831843;--hero-a: #0369A1;--hero-b: #3730A3;--hero-c: #5B21B6;--ring-a: #7DD3FC;--ring-b: #818CF8;--ok-a: #6EE7B7;--ok-b: #10B981;--kind-quiz: #818CF8;--kind-reading: #34D399;--kind-listening: #FB7185;--kind-pronunciation: #F472B6;--kind-course: #38BDF8;--color-primary: #818CF8;--color-primary-hover: #A5B4FC;--color-primary-ink: #C7D2FE;--color-primary-soft: #1E2350;--color-primary-border: #3B4290;--color-on-primary: #0B1020;--color-focus: #A5B4FC;--color-focus-ring: rgba(165, 180, 252, .45);--color-success: #34D399;--color-success-soft: #0F2A22;--color-success-ink: #A7F3D0;--color-success-border: #1F5C46;--color-danger: #F87171;--color-danger-soft: #331618;--color-danger-ink: #FECACA;--color-danger-border: #6B2B2E;--color-on-danger: #1F0A0A;--color-warning: #FBBF24;--color-warning-soft: #33250A;--color-warning-ink: #FDE68A;--color-warning-border: #6B5115;--color-info: #38BDF8;--color-info-soft: #0C2A3D;--color-info-ink: #BAE6FD;--color-info-border: #1B5578;--bg-aurora: radial-gradient(ellipse 65% 55% at 10% 0%, rgba(99, 102, 241, .2) 0%, rgba(56, 189, 248, .08) 45%, transparent 72%), radial-gradient(ellipse 60% 50% at 90% 5%, rgba(168, 85, 247, .16) 0%, rgba(244, 63, 94, .07) 45%, transparent 72%), radial-gradient(ellipse 55% 45% at 0% 55%, rgba(20, 184, 166, .1) 0%, transparent 60%), radial-gradient(ellipse 70% 50% at 50% 100%, rgba(79, 70, 229, .16) 0%, rgba(56, 189, 248, .06) 50%, transparent 80%);--bg-dots: rgba(148, 163, 184, .09);--waves-dim: .28;--shadow-1: 0 1px 3px rgba(0, 0, 0, .45);--shadow-2: 0 4px 16px -2px rgba(0, 0, 0, .5);--shadow-3: 0 12px 32px -4px rgba(0, 0, 0, .6);--purple: #A78BFA;--purple-light: #C4B5FD;--purple-surface: #251B4A;--purple-border: #4C3A93;--purple-ink: #DDD6FE;--rose: #FB7185;--rose-light: #FDA4AF;--rose-surface: #3A1722;--rose-border: #74293F;--rose-ink: #FECDD3;--teal: #2DD4BF;--teal-light: #5EEAD4;--teal-surface: #0C2B2B;--teal-border: #1B5E5B;--teal-ink: #99F6E4;--fuchsia: #E879F9;--fuchsia-light: #F0ABFC;--fuchsia-surface: #33173D;--fuchsia-border: #6B2D7C;--fuchsia-ink: #F5D0FE;--emerald-light: #6EE7B7;--amber-light: #FCD34D;--sky-light: #7DD3FC;--cyan: #22D3EE;--cyan-light: #06B6D4;--cyan-surface: #082A33;--cyan-surface-2: #0C3C4A;--cyan-border: #155E75;--cyan-border-strong: #1E7A92;--cyan-ink: #A5F3FC;--primary-light: #818CF8}@media(prefers-color-scheme:dark){html:not([data-theme=light]){color-scheme:dark;--color-bg: #0B1020;--color-surface: #131A2E;--color-surface-2: #1A2238;--color-surface-sunken: #0E1426;--color-surface-glass: rgba(19, 26, 46, .88);--color-surface-glass-hover: rgba(26, 34, 56, .96);--color-text: #E8ECF6;--color-text-muted: #A9B4CB;--color-text-faint: #8F9BB5;--ic-sky: #7DD3FC;--ic-indigo: #A5B4FC;--ic-teal: #5EEAD4;--ic-rose: #F9A8D4;--ic-amber: #FCD34D;--ic-slate: #CBD5E1;--color-border: #263049;--color-border-strong: #6B7899;--color-overlay: rgba(3, 6, 15, .72);--level-basic: #34D399;--level-intermediate: #60A5FA;--level-advanced: #FB923C;--pron-soft: #3B0F2A;--pron-ink: #FBCFE8;--pron-solid: #F472B6;--pron-border: #831843;--hero-a: #0369A1;--hero-b: #3730A3;--hero-c: #5B21B6;--ring-a: #7DD3FC;--ring-b: #818CF8;--ok-a: #6EE7B7;--ok-b: #10B981;--kind-quiz: #818CF8;--kind-reading: #34D399;--kind-listening: #FB7185;--kind-pronunciation: #F472B6;--kind-course: #38BDF8;--color-primary: #818CF8;--color-primary-hover: #A5B4FC;--color-primary-ink: #C7D2FE;--color-primary-soft: #1E2350;--color-primary-border: #3B4290;--color-on-primary: #0B1020;--color-focus: #A5B4FC;--color-focus-ring: rgba(165, 180, 252, .45);--color-success: #34D399;--color-success-soft: #0F2A22;--color-success-ink: #A7F3D0;--color-success-border: #1F5C46;--color-danger: #F87171;--color-danger-soft: #331618;--color-danger-ink: #FECACA;--color-danger-border: #6B2B2E;--color-on-danger: #1F0A0A;--color-warning: #FBBF24;--color-warning-soft: #33250A;--color-warning-ink: #FDE68A;--color-warning-border: #6B5115;--color-info: #38BDF8;--color-info-soft: #0C2A3D;--color-info-ink: #BAE6FD;--color-info-border: #1B5578;--bg-aurora: radial-gradient(ellipse 65% 55% at 10% 0%, rgba(99, 102, 241, .2) 0%, rgba(56, 189, 248, .08) 45%, transparent 72%), radial-gradient(ellipse 60% 50% at 90% 5%, rgba(168, 85, 247, .16) 0%, rgba(244, 63, 94, .07) 45%, transparent 72%), radial-gradient(ellipse 55% 45% at 0% 55%, rgba(20, 184, 166, .1) 0%, transparent 60%), radial-gradient(ellipse 70% 50% at 50% 100%, rgba(79, 70, 229, .16) 0%, rgba(56, 189, 248, .06) 50%, transparent 80%);--bg-dots: rgba(148, 163, 184, .09);--waves-dim: .28;--shadow-1: 0 1px 3px rgba(0, 0, 0, .45);--shadow-2: 0 4px 16px -2px rgba(0, 0, 0, .5);--shadow-3: 0 12px 32px -4px rgba(0, 0, 0, .6);--purple: #A78BFA;--purple-light: #C4B5FD;--purple-surface: #251B4A;--purple-border: #4C3A93;--purple-ink: #DDD6FE;--rose: #FB7185;--rose-light: #FDA4AF;--rose-surface: #3A1722;--rose-border: #74293F;--rose-ink: #FECDD3;--teal: #2DD4BF;--teal-light: #5EEAD4;--teal-surface: #0C2B2B;--teal-border: #1B5E5B;--teal-ink: #99F6E4;--fuchsia: #E879F9;--fuchsia-light: #F0ABFC;--fuchsia-surface: #33173D;--fuchsia-border: #6B2D7C;--fuchsia-ink: #F5D0FE;--emerald-light: #6EE7B7;--amber-light: #FCD34D;--sky-light: #7DD3FC;--cyan: #22D3EE;--cyan-light: #06B6D4;--cyan-surface: #082A33;--cyan-surface-2: #0C3C4A;--cyan-border: #155E75;--cyan-border-strong: #1E7A92;--cyan-ink: #A5F3FC;--primary-light: #818CF8}}@media(min-width:900px){:root{--text-copy: var(--text-sm)}}html{-webkit-text-size-adjust:100%;text-size-adjust:100%}@media(hover:none)and (pointer:coarse){html,body{touch-action:pan-x pan-y}html{-webkit-tap-highlight-color:transparent}body{overscroll-behavior-x:none}}body{font-family:var(--font-body);font-variant-numeric:tabular-nums;background-color:var(--color-bg);color:var(--color-text);-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit;letter-spacing:inherit}input::placeholder,textarea::placeholder{color:var(--color-text-faint);opacity:1}html:root :is(input:not([type]),input[type=text],input[type=email],input[type=password],input[type=search],input[type=tel],input[type=url],input[type=number],select,textarea){background-color:var(--color-surface-2);color:var(--color-text)}@media(max-width:820px),(pointer:coarse){html:root :is(input:not([type]),input[type=text],input[type=email],input[type=password],input[type=search],input[type=tel],input[type=url],input[type=number],select,textarea){font-size:max(16px,1rem)}}.menu-waves-canvas{opacity:var(--waves-dim, 1)}:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}html :focus-visible:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}input:focus-visible,select:focus-visible,textarea:focus-visible{box-shadow:var(--shadow-focus)}.focus-ring:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px;box-shadow:var(--shadow-focus)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:var(--space-2);left:var(--space-2);z-index:var(--z-toast);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--color-primary);color:var(--color-on-primary);font-weight:var(--weight-bold);text-decoration:none;box-shadow:var(--shadow-3);transform:translateY(-200%);transition:transform var(--motion-fast) var(--ease-out)}.skip-link:focus,.skip-link:focus-visible{transform:translateY(0)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:44px;padding:var(--space-2) var(--space-4);border:1px solid transparent;border-radius:var(--radius-md);background:transparent;color:var(--color-text);font-family:inherit;font-size:var(--text-base);font-weight:var(--weight-bold);line-height:var(--leading-tight);text-align:center;text-decoration:none;cursor:pointer;user-select:none;-webkit-tap-highlight-color:transparent;transition:background-color var(--motion-fast) var(--ease-out),border-color var(--motion-fast) var(--ease-out),color var(--motion-fast) var(--ease-out),box-shadow var(--motion-fast) var(--ease-out),transform var(--motion-fast) var(--ease-out)}.btn:active:not(:disabled):not([aria-disabled=true]){transform:translateY(1px)}.btn:disabled,.btn[aria-disabled=true]{opacity:.55;cursor:not-allowed;box-shadow:none}.btn--primary{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-on-primary);box-shadow:var(--shadow-1)}.btn--primary:hover:not(:disabled):not([aria-disabled=true]){background:var(--color-primary-hover);border-color:var(--color-primary-hover);box-shadow:var(--shadow-2)}.btn--secondary{background:var(--color-surface);border-color:var(--color-border-strong);color:var(--color-text)}.btn--secondary:hover:not(:disabled):not([aria-disabled=true]){background:var(--color-primary-soft);border-color:var(--color-primary);color:var(--color-primary-ink)}.btn--ghost{background:transparent;border-color:transparent;color:var(--color-primary)}.btn--ghost:hover:not(:disabled):not([aria-disabled=true]){background:var(--color-primary-soft);color:var(--color-primary-ink)}.btn--danger{background:var(--color-danger);border-color:var(--color-danger);color:var(--color-on-danger);box-shadow:var(--shadow-1)}.btn--danger:hover:not(:disabled):not([aria-disabled=true]){filter:brightness(.92);box-shadow:var(--shadow-2)}.btn--icon{width:44px;min-width:44px;padding:0;flex:0 0 auto}.btn--sm{min-height:36px;padding:var(--space-1) var(--space-3);font-size:var(--text-sm)}@media(pointer:coarse),(max-width:640px){.btn--sm{min-height:44px}}.btn--sm.btn--icon{width:36px;min-width:36px}.btn--block{display:flex;width:100%}@media(forced-colors:active){.btn{border-color:ButtonText}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-delay:0s!important;animation-iteration-count:1!important;transition-duration:.01ms!important;transition-delay:0s!important;scroll-behavior:auto!important}}@media(pointer:coarse){:where(.rec-tab,.seg__btn,.rd-level-btn,.rd-seg-btn,.blank-chip,.lst-line-play,.btn-restart-reading,.btn-guide-back,.btn-guide-close){min-height:44px;min-width:44px}}.touch-only{display:none}@media(hover:none)and (pointer:coarse){.kbd-only{display:none!important}.touch-only{display:revert!important}}:where(div,span,li,article,section,p,td,figure,img)[data-on-click]{cursor:pointer}.ems-splash{--sp-bg: #0B1020;--sp-cyan: #0EA5E9;--sp-indigo: #4338CA;--sp-ink: #FFFFFF;--sp-soft: #C7D2FE;--sp-ease: cubic-bezier(.2, .8, .2, 1);position:fixed;inset:0;z-index:1000;overflow:hidden;isolation:isolate;background:var(--sp-bg);color:var(--sp-ink);display:flex;align-items:center;justify-content:center;padding:env(safe-area-inset-top,0px) env(safe-area-inset-right,0px) env(safe-area-inset-bottom,0px) env(safe-area-inset-left,0px);cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;transition:opacity .45s var(--sp-ease),transform .45s var(--sp-ease);will-change:opacity,transform}.ems-splash[hidden],.ems-splash.is-gone{display:none}.ems-splash.is-leaving{opacity:0;transform:scale(1.03);pointer-events:none}.ems-splash__bg{position:absolute;inset:0;z-index:-1}.ems-splash__bg i{position:absolute;width:90vmax;height:90vmax;border-radius:50%;opacity:.5;will-change:transform}.ems-splash__bg i:nth-child(1){left:-35vmax;top:-45vmax;background:radial-gradient(closest-side,var(--sp-cyan),transparent 70%);animation:emsSpDriftA 11s ease-in-out infinite alternate}.ems-splash__bg i:nth-child(2){right:-40vmax;bottom:-50vmax;background:radial-gradient(closest-side,var(--sp-indigo),transparent 70%);animation:emsSpDriftB 13s ease-in-out infinite alternate}.ems-splash__core{display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center;padding:0 24px}.ems-splash__mark{width:clamp(88px,22vmin,136px);height:clamp(88px,22vmin,136px);animation:emsSpLogo .76s var(--sp-ease) both;filter:drop-shadow(0 12px 28px rgba(14,165,233,.35))}.ems-splash__name{margin:0;font-weight:800;letter-spacing:-.02em;font-size:clamp(1.5rem,5vmin,2.2rem);animation:emsSpRise .6s var(--sp-ease) .26s both}.ems-splash__tag{margin:0;font-weight:500;font-size:clamp(.95rem,2.8vmin,1.15rem);color:var(--sp-soft)}.ems-splash__tag span{display:inline-block;animation:emsSpRise .52s var(--sp-ease) both;animation-delay:calc(.56s + var(--i, 0) * 90ms)}.ems-splash__bar{position:absolute;left:50%;bottom:calc(10% + env(safe-area-inset-bottom,0px));width:min(52vw,240px);height:4px;margin-left:calc(min(52vw,240px)/-2);border-radius:4px;background:#ffffff2e;overflow:hidden;animation:emsSpFade .4s ease .3s both}.ems-splash__bar i{display:block;height:100%;width:100%;border-radius:4px;background:var(--sp-ink);transform-origin:left center;transform:scaleX(.02);animation:emsSpLoad 2.6s cubic-bezier(.3,.6,.3,1) .3s forwards}.ems-splash.is-ready .ems-splash__bar i{animation:none;transform:scaleX(1);transition:transform .28s var(--sp-ease)}@keyframes emsSpLogo{0%{opacity:0;transform:scale(.86)}to{opacity:1;transform:scale(1)}}@keyframes emsSpRise{0%{opacity:0;transform:translate3d(0,10px,0)}to{opacity:1;transform:none}}@keyframes emsSpFade{0%{opacity:0}to{opacity:1}}@keyframes emsSpLoad{to{transform:scaleX(.85)}}@keyframes emsSpDriftA{0%{transform:translateZ(0) scale(1)}to{transform:translate3d(9vmax,6vmax,0) scale(1.1)}}@keyframes emsSpDriftB{0%{transform:translateZ(0) scale(1.05)}to{transform:translate3d(-8vmax,-7vmax,0) scale(.95)}}@media(prefers-reduced-motion:reduce){.ems-splash,.ems-splash.is-leaving{transition:opacity .15s linear;transform:none}.ems-splash *,.ems-splash__bg i{animation:none!important}.ems-splash__bar i{transform:scaleX(.85)}}.ic{display:inline-block;flex:none;width:1em;height:1em;vertical-align:-.14em;overflow:visible;color:inherit;transition:transform var(--motion-fast, .12s) var(--ease-out, ease-out),color var(--motion-fast, .12s) var(--ease-out, ease-out),opacity var(--motion-fast, .12s) var(--ease-out, ease-out)}.ic--spin{animation:icSpin .9s linear infinite}@keyframes icSpin{to{transform:rotate(360deg)}}.ic--dim{opacity:.35}:is(.ic-cat,.app-tab,.app-tabbar__tab,.app-pron-btn,.home-zone__icon,.seg__btn,.rec-hub-card__icon,.rec-tab,.record-card-icon-wrap,.record-folder-icon-wrap,.category-icon-box,.subcat-icon,.rd-pron-card__icon,.lst-topic-icon) .ic[data-cat=sky]{color:var(--ic-sky)}:is(.ic-cat,.app-tab,.app-tabbar__tab,.app-pron-btn,.home-zone__icon,.seg__btn,.rec-hub-card__icon,.rec-tab,.record-card-icon-wrap,.record-folder-icon-wrap,.category-icon-box,.subcat-icon,.rd-pron-card__icon,.lst-topic-icon) .ic[data-cat=indigo]{color:var(--ic-indigo)}:is(.ic-cat,.app-tab,.app-tabbar__tab,.app-pron-btn,.home-zone__icon,.seg__btn,.rec-hub-card__icon,.rec-tab,.record-card-icon-wrap,.record-folder-icon-wrap,.category-icon-box,.subcat-icon,.rd-pron-card__icon,.lst-topic-icon) .ic[data-cat=teal]{color:var(--ic-teal)}:is(.ic-cat,.app-tab,.app-tabbar__tab,.app-pron-btn,.home-zone__icon,.seg__btn,.rec-hub-card__icon,.rec-tab,.record-card-icon-wrap,.record-folder-icon-wrap,.category-icon-box,.subcat-icon,.rd-pron-card__icon,.lst-topic-icon) .ic[data-cat=rose]{color:var(--ic-rose)}:is(.ic-cat,.app-tab,.app-tabbar__tab,.app-pron-btn,.home-zone__icon,.seg__btn,.rec-hub-card__icon,.rec-tab,.record-card-icon-wrap,.record-folder-icon-wrap,.category-icon-box,.subcat-icon,.rd-pron-card__icon,.lst-topic-icon) .ic[data-cat=amber]{color:var(--ic-amber)}:is(.ic-cat,.app-tab,.app-tabbar__tab,.app-pron-btn,.home-zone__icon,.seg__btn,.rec-hub-card__icon,.rec-tab,.record-card-icon-wrap,.record-folder-icon-wrap,.category-icon-box,.subcat-icon,.rd-pron-card__icon,.lst-topic-icon) .ic[data-cat=slate]{color:var(--ic-slate)}.lst-topic-icon .ic[data-cat],.lst-rec-card .record-card-icon-wrap .ic[data-cat]{color:var(--ic-rose)}.btn--primary .ic,.btn--primary .ic[data-cat],.is-on-brand .ic[data-cat]{color:inherit}@media(hover:hover){:is(a,button,[role=button],[role=tab],[role=radio],[role=menuitem]):not(:disabled):not([aria-disabled=true]):hover>.ic{transform:scale(1.1)}}:is(a,button,[role=button],[role=tab],[role=radio],[role=menuitem]):not(:disabled):not([aria-disabled=true]):active>.ic{transform:scale(.94)}:is(button:disabled,[aria-disabled=true],.is-disabled) .ic,:is(button:disabled,[aria-disabled=true],.is-disabled) .ic[data-cat]{color:var(--color-text-faint);opacity:.55}@media(prefers-reduced-motion:reduce){.ic{transition:none}.ic--spin{animation-duration:2.4s}:is(a,button,[role=button],[role=tab],[role=radio],[role=menuitem]):hover>.ic,:is(a,button,[role=button],[role=tab],[role=radio],[role=menuitem]):active>.ic{transform:none}}.app-tab .ic,.app-pron-btn .ic{width:1.25em;height:1.25em}.seg__btn[aria-checked=true] .ic[data-cat],.seg__btn[aria-selected=true] .ic[data-cat],.rd-level-btn[aria-checked=true] .ic[data-cat]{color:inherit}.lst-topic-icon .ic,.record-card-icon-wrap .ic,.rec-hub-card__icon .ic{width:1.3em;height:1.3em}.home-zone__icon .ic{width:1.35em;height:1.35em}:root{--bg-body: var(--color-bg);--bg-card: var(--color-surface-glass);--bg-card-hover: var(--color-surface-glass-hover);--bg-surface: var(--color-surface);--bg-surface-soft: var(--color-surface-2);--primary: var(--color-primary);--primary-surface: var(--color-primary-soft);--primary-border: var(--color-primary-border);--primary-ink: var(--color-primary-ink);--emerald: var(--color-success);--emerald-surface: var(--color-success-soft);--emerald-border: var(--color-success-border);--emerald-ink: var(--color-success-ink);--amber: var(--color-warning);--amber-surface: var(--color-warning-soft);--amber-border: var(--color-warning-border);--amber-ink: var(--color-warning-ink);--sky: var(--color-info);--sky-surface: var(--color-info-soft);--sky-border: var(--color-info-border);--sky-ink: var(--color-info-ink);--danger: var(--color-danger);--danger-surface: var(--color-danger-soft);--danger-border: var(--color-danger-border);--danger-ink: var(--color-danger-ink);--text-main: var(--color-text);--text-body: var(--color-text);--text-muted: var(--color-text-muted);--text-subtle: var(--color-text-faint);--border: var(--color-border);--border-hover: var(--color-border-strong);--border-crisp: var(--color-border);--shadow-sm: var(--shadow-1);--shadow-md: var(--shadow-2);--shadow-lg: var(--shadow-3);--shadow-xl: var(--shadow-3);--radius-sm: 8px;--radius-xl: 26px;--radius-full: 9999px;--transition: all .2s cubic-bezier(.16, 1, .3, 1)}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-body);color:var(--text-body);font-family:var(--font-body);min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding:2rem 1rem 3rem;position:relative;overflow-x:hidden}body:before{content:"";position:fixed;inset:0;background:var(--bg-aurora);z-index:-2;pointer-events:none}body:after{content:"";position:fixed;inset:0;background-image:radial-gradient(var(--bg-dots) 1px,transparent 1px);background-size:26px 26px;z-index:-2;pointer-events:none;opacity:.85}.app-container{width:100%;max-width:1100px;display:flex;flex-direction:column;gap:2rem;margin:0 auto;position:relative;z-index:10}#viewLevelSelect,#viewRoot,#viewPrepConn,#viewGrammar,#viewRecords,#viewQuiz,#viewReadings{display:flex;flex-direction:column;gap:var(--stack);width:100%}#viewRoot,#viewPrepConn,#viewGrammar,#viewRecords,#viewQuiz{display:none}.rd-step{flex-direction:column;gap:var(--stack);width:100%}#viewLevelSelect{gap:var(--space-4)}.record-session-banner{display:none;align-items:center;gap:12px;padding:.85rem 1.4rem;background:linear-gradient(135deg,var(--color-warning-soft) 0%,var(--color-warning-soft) 100%);border:1px solid var(--color-warning-border);border-radius:var(--radius-lg);color:var(--color-warning-ink);font-size:.88rem;line-height:1.45;box-shadow:var(--shadow-1);margin-bottom:.5rem}.record-session-banner .ic{font-size:1.3rem;color:var(--color-warning-ink);flex-shrink:0}.pill-record{background:var(--color-warning-soft);border:1px solid var(--color-warning-border);color:var(--color-warning-ink)}.btn-portal-back{background:var(--color-surface);border:1.5px solid var(--color-border-strong);color:var(--color-text);padding:7px 16px;border-radius:var(--radius-full);font-size:.86rem;font-weight:700;cursor:pointer;display:inline-flex;align-items:center;gap:8px;box-shadow:var(--shadow-1);transition:all .2s cubic-bezier(.4,0,.2,1)}.btn-portal-back:hover{background:var(--color-primary-soft);color:var(--color-primary-ink);border-color:var(--color-primary);transform:translateY(-1px);box-shadow:var(--shadow-2)}body.guide-modal-open{overflow:hidden!important}.guide-modal-backdrop{position:fixed;inset:0;background:var(--color-overlay);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);z-index:100000;display:none;align-items:flex-start;justify-content:center;overflow-y:auto;padding:max(30px,env(safe-area-inset-top,0px)) max(16px,env(safe-area-inset-right,0px)) max(30px,env(safe-area-inset-bottom,0px)) max(16px,env(safe-area-inset-left,0px));animation:fadeInGuideModal .25s cubic-bezier(.16,1,.3,1)}@keyframes fadeInGuideModal{0%{opacity:0;transform:scale(.98)}to{opacity:1;transform:scale(1)}}.guide-modal-container{width:100%;max-width:900px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-3);overflow:hidden;margin:auto;display:flex;flex-direction:column}.guide-modal-header{position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;padding:1rem 1.5rem;background:var(--color-surface-glass-hover);backdrop-filter:blur(12px);border-bottom:1px solid var(--color-border)}.guide-header-left{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.btn-guide-back{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:var(--color-primary-soft);border:1px solid var(--color-primary-border);border-radius:var(--radius-full);color:var(--color-primary-ink);font-size:.86rem;font-weight:700;cursor:pointer;transition:var(--transition)}.btn-guide-back:hover{background:var(--color-primary);color:var(--color-on-primary);border-color:var(--color-primary);transform:translate(-2px)}.btn-guide-close{background:var(--color-surface-sunken);border:1px solid var(--color-border);color:var(--color-text-faint);width:38px;height:38px;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;font-size:1.1rem;cursor:pointer;transition:var(--transition)}.btn-guide-close:hover{background:var(--color-danger-soft);border-color:var(--color-danger);color:var(--color-danger);transform:rotate(90deg)}@media(pointer:coarse){.btn-guide-back{min-height:44px}.btn-guide-close{flex:none;width:44px;height:44px}}.guide-header-badge{font-size:.85rem;font-weight:700;color:var(--color-primary-ink);background:var(--color-primary-soft);border:1px solid var(--color-primary-border);padding:4px 12px;border-radius:var(--radius-full);display:inline-flex;align-items:center;gap:6px}.guide-modal-body{padding:1.75rem;max-height:calc(88vh - 75px);max-height:calc(88dvh - 75px);overflow-y:auto}.sensei-banner{display:flex;align-items:center;gap:1.25rem;padding:1.25rem 1.5rem;background:linear-gradient(135deg,var(--color-primary-soft) 0%,var(--purple-surface) 100%);border:1px solid var(--purple-border);border-radius:var(--radius-md);margin-bottom:1.25rem}.sensei-avatar-wrapper{flex-shrink:0;width:82px;height:82px;border-radius:50%;background:var(--color-surface);border:2px solid var(--purple-light);display:flex;align-items:center;justify-content:center;overflow:hidden;box-shadow:var(--shadow-2)}.sensei-avatar-img{width:100%;height:100%;object-fit:cover}.sensei-fallback{font-size:2.2rem;color:var(--purple)}.sensei-info{flex:1;min-width:0}.sensei-badge{font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--purple);display:inline-flex;align-items:center;gap:5px;margin-bottom:4px}.sensei-title{font-family:Cabinet Grotesk,sans-serif;font-size:1.35rem;font-weight:900;color:var(--color-text);letter-spacing:-.3px;margin-bottom:4px}.sensei-quote{font-size:.92rem;color:var(--color-primary-ink);font-style:italic;line-height:1.45}.guide-status-reminder{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background:var(--color-success-soft);border:1px solid var(--color-success-border);border-radius:var(--radius-sm);color:var(--color-success-ink);font-size:.85rem;margin-bottom:1.25rem;line-height:1.45}.guide-section-card{background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:1.35rem 1.5rem;margin-bottom:1.15rem;box-shadow:var(--shadow-1)}.guide-section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:.6rem;border-bottom:1px solid var(--color-border)}.guide-sec-title{font-family:Cabinet Grotesk,sans-serif;font-size:1.15rem;font-weight:800;color:var(--color-text);display:flex;align-items:center;gap:.6rem}.guide-sec-title i{color:var(--color-primary)}.guide-sec-badge{font-size:.74rem;font-weight:700;padding:3px 8px;background:var(--color-primary-soft);border:1px solid var(--color-primary-border);border-radius:var(--radius-pill);color:var(--color-primary-ink)}.guide-sec-content{font-size:.95rem;line-height:1.65;color:var(--color-text)}.guide-sec-content p{margin-bottom:.75rem}.guide-grid-2{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:.85rem}.guide-grid-3{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.85rem}.guide-card-mini{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:1rem;box-shadow:var(--shadow-1)}.mini-header{font-weight:700;font-size:.9rem;color:var(--color-text);margin-bottom:.5rem;display:flex;align-items:center;gap:.5rem}.formula-block{background:var(--color-primary-soft);border:1px solid var(--color-primary-border);border-left:4px solid var(--color-primary);border-radius:var(--radius-sm);padding:1rem 1.25rem;font-family:JetBrains Mono,monospace;font-size:.88rem;margin:.85rem 0;display:flex;flex-direction:column;gap:.5rem}.formula-line{color:var(--color-text)}.formula-line .kw{color:var(--color-info);font-weight:700}.formula-chip{display:inline-block;background:var(--color-primary-soft);border:1px solid var(--color-primary-border);border-radius:var(--radius-sm);padding:4px 10px;font-family:JetBrains Mono,monospace;font-size:.85rem;color:var(--color-primary-ink);font-weight:600;margin:4px 0 8px}.trap-box{background:var(--color-warning-soft);border-left:4px solid var(--amber-light);border-radius:0 var(--radius-sm) var(--radius-sm) 0;padding:.9rem 1.15rem;margin:.75rem 0}.trap-title{color:var(--color-warning-ink);font-weight:700;font-size:.92rem;margin-bottom:.35rem;display:flex;align-items:center;gap:.5rem}.trap-box p{margin:0;font-size:.9rem;line-height:1.5;color:var(--color-warning-ink)}.note-box{background:var(--color-info-soft);border-left:4px solid var(--color-info);border-radius:0 var(--radius-sm) var(--radius-sm) 0;padding:.85rem 1.1rem;font-size:.88rem;color:var(--color-info-ink)}.pyramid-container{display:flex;flex-direction:column;gap:6px;margin:.85rem 0}.pyramid-tier{padding:.75rem 1rem;border-radius:var(--radius-sm);display:flex;flex-direction:column;gap:3px}.tier-at{background:var(--rose-surface);border:1px solid var(--rose-border);color:var(--rose-ink)}.tier-on{background:var(--color-warning-soft);border:1px solid var(--color-warning-border);color:var(--color-warning-ink)}.tier-in{background:var(--color-info-soft);border:1px solid var(--color-info-border);color:var(--color-info-ink)}.pyramid-tier strong{font-size:.92rem}.pyramid-tier span{font-size:.84rem;line-height:1.45}.table-responsive{overflow-x:auto;margin:.75rem 0}.guide-table{width:100%;border-collapse:collapse;font-size:.88rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);overflow:hidden}.guide-table th{background:var(--color-surface-sunken);color:var(--color-text);padding:10px 14px;text-align:left;font-weight:700;border-bottom:1px solid var(--color-border-strong)}.guide-table td{padding:9px 14px;border-bottom:1px solid var(--color-border);color:var(--color-text)}.guide-table tr:hover td{background:var(--color-surface-2)}.example-grid{display:flex;flex-direction:column;gap:.75rem;margin-top:.5rem}.example-item{background:var(--color-surface);border:1px solid var(--color-border);border-left:3px solid var(--emerald-light);padding:.75rem 1rem;border-radius:0 var(--radius-sm) var(--radius-sm) 0}.example-item .en{font-weight:600;color:var(--color-text);font-size:.95rem;margin-bottom:3px}.example-item .es{font-size:.85rem;color:var(--color-text-faint);font-style:italic}@media(max-width:560px){.guide-sec-content .guide-table--stack,.guide-sec-content .guide-table--stack tbody,.guide-sec-content .guide-table--stack tr,.guide-sec-content .guide-table--stack td{display:block;width:100%}.guide-sec-content .guide-table--stack thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.guide-sec-content .guide-table--stack{border:0;background:transparent}.guide-sec-content .guide-table--stack tr{margin-bottom:var(--space-3);background:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:var(--radius-md);overflow:hidden}.guide-sec-content .guide-table--stack td{padding:var(--space-2) var(--space-4);border-bottom:1px solid var(--color-border)}.guide-sec-content .guide-table--stack td:last-child{border-bottom:0}.guide-sec-content .guide-table--stack td[data-label]:before{content:attr(data-label);display:block;margin-bottom:2px;font-size:var(--text-xs);font-weight:var(--weight-bold);letter-spacing:.04em;text-transform:uppercase;color:var(--color-text-muted)}}.guide-sec-content details{margin:var(--space-3) 0;padding:0;background:var(--color-surface-sunken);border:1px solid var(--color-border-strong);border-radius:var(--radius-md)}.guide-sec-content details>summary{display:flex;align-items:center;gap:var(--space-2);min-height:44px;padding:var(--space-2) var(--space-4);font-weight:var(--weight-bold);color:var(--color-primary-ink);cursor:pointer;list-style:none}.guide-sec-content details>summary::-webkit-details-marker{display:none}.guide-sec-content details>summary:before{content:"\25b8";transition:transform var(--motion-fast) var(--ease-out)}.guide-sec-content details[open]>summary:before{transform:rotate(90deg)}.guide-sec-content details>:not(summary){margin:0;padding:0 var(--space-4) var(--space-3)}.guide-sec-content .table-responsive{overflow-x:auto;-webkit-overflow-scrolling:touch}.guide-bullets{list-style:none;padding:0;margin:.5rem 0}.guide-bullets li{position:relative;padding-left:1.4rem;margin-bottom:.65rem;line-height:1.55}.guide-bullets li:before{content:"\2022";position:absolute;left:.35rem;color:var(--color-primary);font-size:1.2rem;line-height:1}.clean-list{list-style:none;padding:0;margin:0}.clean-list li{margin-bottom:.4rem;line-height:1.45}.pill-blue{background:var(--color-info-soft);color:var(--color-info);border:1px solid var(--color-info-border);padding:2px 7px;border-radius:4px;font-weight:700;font-size:.8rem}.pill-amber{background:var(--color-warning-soft);color:var(--color-warning-ink);border:1px solid var(--color-warning-border);padding:2px 7px;border-radius:4px;font-weight:700;font-size:.8rem}.pill-emerald{background:var(--color-success-soft);color:var(--color-success);border:1px solid var(--color-success-border);padding:2px 7px;border-radius:4px;font-weight:700;font-size:.8rem}.pill-purple{background:var(--purple-surface);color:var(--purple);border:1px solid var(--purple-border);padding:2px 7px;border-radius:4px;font-weight:700;font-size:.8rem}.btn-guide-back-bottom{display:inline-flex;align-items:center;gap:.6rem;padding:.75rem 1.6rem;background:linear-gradient(135deg,var(--color-primary),var(--purple));border:none;border-radius:var(--radius-full);color:var(--color-on-primary);font-weight:700;font-size:.95rem;cursor:pointer;box-shadow:var(--shadow-2);transition:var(--transition)}.btn-guide-back-bottom:hover{transform:translateY(-2px);box-shadow:var(--shadow-3)}@media(max-width:640px){.sensei-banner{flex-direction:column;text-align:center;gap:.75rem}.guide-modal-body{padding:1rem}.guide-modal-header{padding:.85rem 1rem}}#viewQuiz{--quiz-on-fill: var(--color-on-danger);padding-bottom:var(--space-6);gap:var(--space-4)}.quiz-toolbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--space-3);width:100%}.quiz-toolbar__meta{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap;min-width:0}.quiz-toolbar__end{display:flex;align-items:center;gap:var(--space-2)}.active-quiz-badge{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);border-radius:var(--radius-pill);border:1px solid var(--color-border-strong);background:var(--color-surface);color:var(--color-text);font-size:var(--text-sm);font-weight:var(--weight-bold)}body.has-app-header .active-quiz-badge{display:none}.badge-level{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-3);border-radius:var(--radius-pill);border:1px solid var(--color-primary-border);background:var(--color-primary-soft);color:var(--color-primary-ink);font-size:var(--text-xs);font-weight:var(--weight-bold);letter-spacing:.02em}.badge-review-mode{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-3);border-radius:var(--radius-pill);border:1px solid var(--color-info-border);background:var(--color-info-soft);color:var(--color-info-ink);font-size:var(--text-xs);font-weight:var(--weight-bold)}.score-board{display:flex;align-items:center;gap:var(--space-2)}.stat-pill{display:inline-flex;align-items:center;gap:var(--space-2);min-height:36px;padding:0 var(--space-3);border-radius:var(--radius-pill);border:1px solid var(--color-border-strong);background:var(--color-surface);color:var(--color-text);font-size:var(--text-sm);font-weight:var(--weight-bold)}.correct-pill{color:var(--color-success-ink);background:var(--color-success-soft);border-color:var(--color-success-border)}.wrong-pill{color:var(--color-danger-ink);background:var(--color-danger-soft);border-color:var(--color-danger-border)}.streak-pill{color:var(--color-warning-ink);background:var(--color-warning-soft);border-color:var(--color-warning-border)}.stat-pill.is-pulsing{animation:quizPillPop .45s var(--ease-out)}@keyframes quizPillPop{0%{transform:scale(1)}40%{transform:scale(1.14)}to{transform:scale(1)}}.progress-indicator-bar{width:100%;height:10px;background:var(--color-surface-sunken);border:1px solid var(--color-border);border-radius:var(--radius-pill);overflow:hidden}.progress-indicator-fill{height:100%;width:0%;min-width:10px;background:var(--color-primary);border-radius:var(--radius-pill);transition:width var(--motion-base) var(--ease-out)}.game-card{display:flex;flex-direction:column;gap:var(--space-5);position:relative;padding:var(--space-6) var(--space-6) var(--space-5);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface-glass);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:var(--shadow-2)}.card-top{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--space-3)}.deck-counter-actions{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-2)}.quiz-nav-group{display:inline-flex;align-items:center;gap:var(--space-1);padding:2px;border:1px solid var(--color-border-strong);border-radius:var(--radius-pill);background:var(--color-surface)}.btn-quiz-nav{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border:0;border-radius:var(--radius-pill);background:transparent;color:var(--color-text);font-size:var(--text-base);cursor:pointer;transition:background-color var(--motion-fast) var(--ease-out)}.btn-quiz-nav:hover:not(:disabled){background:var(--color-primary-soft);color:var(--color-primary-ink)}.btn-quiz-nav:disabled{opacity:.35;cursor:not-allowed}.deck-counter{min-width:8.5em;text-align:center;color:var(--color-text);font-size:var(--text-sm);font-weight:var(--weight-bold);font-variant-numeric:tabular-nums;white-space:nowrap}.btn-tts-listen,.btn-deck-shuffle,.btn-skip-summary,.btn-toggle-translation,.btn-study-guide{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:44px;padding:0 var(--space-4);border:1px solid var(--color-border-strong);border-radius:var(--radius-pill);background:var(--color-surface);color:var(--color-text);font-size:var(--text-sm);font-weight:var(--weight-bold);white-space:nowrap;cursor:pointer;user-select:none;touch-action:manipulation;transition:background-color var(--motion-fast) var(--ease-out),border-color var(--motion-fast) var(--ease-out),color var(--motion-fast) var(--ease-out)}.btn-tts-listen:hover,.btn-deck-shuffle:hover,.btn-toggle-translation:hover,.btn-study-guide:hover{background:var(--color-primary-soft);border-color:var(--color-primary);color:var(--color-primary-ink)}.btn-skip-summary{display:none;background:var(--color-success-soft);border-color:var(--color-success-border);color:var(--color-success-ink)}.btn-skip-summary:hover{border-color:var(--color-success)}.btn-tts-listen.speaking{background:var(--color-success-soft);border-color:var(--color-success);color:var(--color-success-ink);animation:ttsPulse 1.4s infinite}@keyframes ttsPulse{0%,to{transform:scale(1)}50%{transform:scale(1.03)}}.btn-study-guide{background:var(--color-primary-soft);border-color:var(--color-primary-border);color:var(--color-primary-ink)}.question-box{display:flex;flex-direction:column;gap:var(--space-4)}.question-box:focus{outline:none}.question-box:focus-visible{outline:2px solid var(--color-focus);outline-offset:6px;border-radius:var(--radius-md)}.sentence-text{font-size:var(--text-xl);font-weight:var(--weight-semibold);line-height:1.7;letter-spacing:-.01em;color:var(--color-text)}.blank-space{display:inline-block;min-width:6.5rem;padding:0 var(--space-2);border-bottom:3px dashed var(--color-primary);border-radius:var(--radius-sm) var(--radius-sm) 0 0;background:var(--color-primary-soft);color:var(--color-primary-ink);font-weight:var(--weight-bold);text-align:center}.blank-space.filled-correct{border-bottom:3px solid var(--color-success);background:var(--color-success-soft);color:var(--color-success-ink)}.blank-space.filled-wrong{border-bottom:3px solid var(--color-danger);background:var(--color-danger-soft);color:var(--color-danger-ink)}.blank-space .blank-picked{color:var(--color-danger-ink);text-decoration:line-through;margin-right:var(--space-2);font-weight:var(--weight-semibold)}.blank-space .blank-right{color:var(--color-success-ink)}.cond-blank-slot{display:inline-block;margin:0 var(--space-1);padding:2px var(--space-3);border:1.5px dashed var(--color-info);border-radius:var(--radius-sm);background:var(--color-info-soft);color:var(--color-info-ink);font-weight:var(--weight-bold)}.cond-blank-slot.filled-correct{border:1.5px solid var(--color-success);background:var(--color-success-soft);color:var(--color-success-ink)}.cond-blank-slot.filled-wrong{border:1.5px solid var(--color-danger);background:var(--color-danger-soft);color:var(--color-danger-ink)}.cond-hint{margin-left:var(--space-1);color:var(--color-text-muted);font-size:var(--text-sm)}.conditionals-header-tag,.quiz-tag{display:inline-flex;align-items:center;gap:var(--space-2);align-self:flex-start;padding:var(--space-1) var(--space-3);margin-bottom:var(--space-2);border:1px solid var(--color-info-border);border-radius:var(--radius-pill);background:var(--color-info-soft);color:var(--color-info-ink);font-size:var(--text-sm);font-weight:var(--weight-bold)}.quiz-tag--emerald{background:var(--emerald-surface);border-color:var(--emerald-border);color:var(--emerald-ink)}.quiz-tag--sky{background:var(--sky-surface);border-color:var(--sky-border);color:var(--sky-ink)}.quiz-tag--rose{background:var(--rose-surface);border-color:var(--rose-border);color:var(--rose-ink)}.quiz-tag--fuchsia{background:var(--fuchsia-surface);border-color:var(--fuchsia-border);color:var(--fuchsia-ink)}.quiz-tag--amber{background:var(--amber-surface);border-color:var(--amber-border);color:var(--amber-ink)}.quiz-tag--purple{background:var(--purple-surface);border-color:var(--purple-border);color:var(--purple-ink)}.quiz-tag--primary{background:var(--color-primary-soft);border-color:var(--color-primary-border);color:var(--color-primary-ink)}.quiz-tag--neutral{background:var(--color-surface-2);border-color:var(--color-border-strong);color:var(--color-text)}.conditionals-instruction-text{margin-top:var(--space-2);color:var(--color-text-muted);font-size:var(--text-copy);font-weight:var(--weight-medium)}.direct-speech-container{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-4) var(--space-5);border:1px solid var(--rose-border);border-left:4px solid var(--rose);border-radius:var(--radius-md);background:var(--rose-surface)}.direct-speech-tag{display:flex;align-items:center;gap:var(--space-2);color:var(--rose-ink);font-size:var(--text-xs);font-weight:var(--weight-extrabold);letter-spacing:.06em;text-transform:uppercase}.direct-speech-text{color:var(--color-text);font-size:var(--text-lg);font-style:italic;font-weight:var(--weight-semibold)}.reported-prompt-text{display:flex;align-items:center;gap:var(--space-2);color:var(--color-text-muted);font-size:var(--text-sm)}.interactive-sentence-box{padding:var(--space-4) var(--space-5);border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-surface-2);color:var(--color-text);font-size:var(--text-lg);line-height:2.5;text-align:left}.interactive-word{display:inline-block;min-height:40px;margin:2px 3px;padding:4px var(--space-3);border:1.5px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-text);font:inherit;font-weight:var(--weight-semibold);line-height:1.4;cursor:pointer;transition:background-color var(--motion-fast) var(--ease-out),border-color var(--motion-fast) var(--ease-out)}.interactive-word:hover:not(.disabled){background:var(--color-primary-soft);border-color:var(--color-primary);color:var(--color-primary-ink)}.interactive-word.disabled{cursor:default}.interactive-word.word-target-correct{background:var(--color-success-soft);border:2px solid var(--color-success);color:var(--color-success-ink);font-weight:var(--weight-extrabold)}.interactive-word.word-target-wrong{background:var(--color-danger-soft);border:2px solid var(--color-danger);color:var(--color-danger-ink);animation:shakeError .4s ease}.interactive-word.word-target-revealed{background:var(--color-warning-soft);border:2px dashed var(--color-warning);color:var(--color-warning-ink);font-weight:var(--weight-extrabold)}.interactive-word.replaced-word{padding:4px var(--space-4);border:2px solid var(--color-success);border-radius:var(--radius-pill);background:var(--color-success);color:var(--quiz-on-fill);font-weight:var(--weight-extrabold)}.interactive-punct{color:var(--color-text)}.one-ones-instruction-box{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-2);padding:var(--space-3) var(--space-4);border:1px solid var(--teal-border);border-radius:var(--radius-sm);background:var(--teal-surface);color:var(--teal-ink);font-size:var(--text-sm);font-weight:var(--weight-semibold)}.step-alert{display:flex;align-items:center;gap:var(--space-3);margin-top:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-sm);font-size:var(--text-sm);font-weight:var(--weight-semibold);animation:fadeInSlide .25s ease}.step-alert.step-success{background:var(--color-success-soft);border:1px solid var(--color-success-border);color:var(--color-success-ink)}.step-alert.step-warning{background:var(--color-warning-soft);border:1px solid var(--color-warning-border);color:var(--color-warning-ink)}.options-locked{grid-column:1 / -1;padding:var(--space-5);border:1.5px dashed var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-surface-2);color:var(--color-text-muted);font-size:var(--text-sm);text-align:center}.modal-drop-slot{display:inline-flex;align-items:center;justify-content:center;min-width:9rem;min-height:48px;margin:0 var(--space-2);padding:4px var(--space-4);border:2px dashed var(--color-primary);border-radius:var(--radius-md);background:var(--color-primary-soft);color:var(--color-primary-ink);font-size:var(--text-lg);font-weight:var(--weight-bold);vertical-align:middle;user-select:none;transition:background-color var(--motion-fast) var(--ease-out),border-color var(--motion-fast) var(--ease-out),transform var(--motion-base) var(--ease-out)}.modal-drop-slot.slot-correct{border:2px solid var(--color-success);background:var(--color-success-soft);color:var(--color-success-ink);font-weight:var(--weight-extrabold);animation:slotPop .35s var(--ease-out)}.modal-drop-slot.slot-wrong{border:2px solid var(--color-danger);background:var(--color-danger-soft);color:var(--color-danger-ink);font-weight:var(--weight-extrabold);animation:shakeError .4s ease}@keyframes slotPop{0%{transform:scale(.9)}60%{transform:scale(1.06)}to{transform:scale(1)}}.modal-bank-container{display:flex;flex-direction:column;gap:var(--space-3);margin-top:var(--space-2);padding:var(--space-4);border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-surface-2)}.modal-bank-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--space-2);padding-bottom:var(--space-2);border-bottom:1px solid var(--color-border);color:var(--color-text);font-size:var(--text-sm);font-weight:var(--weight-bold)}.modal-bank-header .modal-bank-hint{color:var(--color-text-muted);font-size:var(--text-xs);font-weight:var(--weight-medium)}.modal-bank-chips-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3)}.modal-drag-chip{display:inline-flex;align-items:center;justify-content:space-between;gap:var(--space-3);min-height:52px;padding:var(--space-3) var(--space-4);border:2px solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);font-size:var(--text-base);font-weight:var(--weight-bold);text-align:left;cursor:pointer;user-select:none;touch-action:manipulation;transition:background-color var(--motion-fast) var(--ease-out),border-color var(--motion-fast) var(--ease-out),transform var(--motion-fast) var(--ease-out)}.modal-drag-chip:hover:not(:disabled){border-color:var(--color-primary);background:var(--color-primary-soft)}.modal-drag-chip:active:not(:disabled){transform:scale(.98)}.modal-drag-chip.chip-state-correct{border-color:var(--color-success);background:var(--color-success-soft);color:var(--color-success-ink);cursor:default}.modal-drag-chip.chip-state-wrong{border-color:var(--color-danger);background:var(--color-danger-soft);color:var(--color-danger-ink);cursor:default}.modal-drag-chip:disabled{cursor:default}.modal-drag-chip .chip-text{flex:1 1 auto}.modal-drag-chip .chip-letter{display:inline-flex;align-items:center;justify-content:center;min-width:28px;height:28px;border-radius:var(--radius-sm);background:var(--color-surface-sunken);color:var(--color-text-muted);font-size:var(--text-xs);font-weight:var(--weight-extrabold)}.wh-sentence-box{line-height:2.3}.translation-row{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-3)}.btn-toggle-translation{background:var(--color-primary-soft);border-color:var(--color-primary-border);color:var(--color-primary-ink)}.sentence-translation{padding-left:var(--space-3);border-left:3px solid var(--color-border-strong);color:var(--color-text-muted);font-size:var(--text-base);font-style:italic;line-height:1.5}.sentence-translation.trans-hidden{display:none}.options-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3)}.options-grid.options-vertical{grid-template-columns:1fr}.opt-btn{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);min-height:56px;padding:var(--space-3) var(--space-4);border:2px solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);font-size:var(--text-lg);font-weight:var(--weight-semibold);text-align:left;cursor:pointer;touch-action:manipulation;box-shadow:var(--shadow-1);transition:background-color var(--motion-fast) var(--ease-out),border-color var(--motion-fast) var(--ease-out),transform var(--motion-fast) var(--ease-out)}.opt-btn:hover:not(:disabled){background:var(--color-primary-soft);border-color:var(--color-primary);color:var(--color-primary-ink)}.opt-btn:active:not(:disabled){transform:scale(.99)}.opt-btn:disabled{cursor:default}.opt-btn .opt-text{flex:1 1 auto;min-width:0;overflow-wrap:anywhere}.opt-btn .opt-letter{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:32px;height:32px;border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-surface-sunken);color:var(--color-text-muted);font-size:var(--text-sm);font-weight:var(--weight-extrabold)}.opt-letter__n{display:none}@media(hover:hover)and (pointer:fine){.opt-letter__a{display:none}.opt-letter__n{display:inline}}.opt-mark{flex:0 0 auto;font-size:var(--text-lg)}.opt-btn.state-correct{border-color:var(--color-success);background:var(--color-success-soft);color:var(--color-success-ink)}.opt-btn.state-correct .opt-letter{border-color:var(--color-success);background:var(--color-success);color:var(--quiz-on-fill)}.opt-btn.state-wrong{border-color:var(--color-danger);background:var(--color-danger-soft);color:var(--color-danger-ink)}.opt-btn.state-wrong .opt-letter{border-color:var(--color-danger);background:var(--color-danger);color:var(--quiz-on-fill)}.feedback-box{display:none;flex-direction:column;gap:var(--space-3);padding:var(--space-4) var(--space-5);border-radius:var(--radius-md);animation:fadeInSlide .25s ease forwards}.feedback-box.show{display:flex}.feedback-box{scroll-margin-bottom:6rem}.feedback-success{background:var(--color-success-soft);border:1.5px solid var(--color-success-border)}.feedback-error{background:var(--color-danger-soft);border:1.5px solid var(--color-danger-border)}.feedback-title{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-lg);font-weight:var(--weight-extrabold)}.feedback-success .feedback-title{color:var(--color-success-ink)}.feedback-error .feedback-title{color:var(--color-danger-ink)}.feedback-intro-wrapper{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-2)}.intro-word-pill{padding:2px var(--space-3);border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-text);font-size:var(--text-sm);font-weight:var(--weight-bold)}.intro-meanings{color:var(--color-warning-ink);font-size:var(--text-sm);font-weight:var(--weight-bold)}.intro-explanation-body{color:var(--color-text);font-size:var(--text-base);line-height:var(--leading-body)}.quiz-bottom-actions{position:sticky;bottom:var(--ems-bottom-reserved, 0px);z-index:var(--z-sticky);display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--space-3);margin:0 calc(var(--space-6) * -1) calc(var(--space-5) * -1);padding:var(--space-3) var(--space-6);padding-bottom:calc(var(--space-3) + env(safe-area-inset-bottom,0px));border-top:1px solid var(--color-border);border-radius:0 0 var(--radius-lg) var(--radius-lg);background:var(--color-surface)}.quiz-shortcuts{display:none;margin:0;color:var(--color-text-muted);font-size:var(--text-sm)}.quiz-shortcuts kbd{padding:1px 6px;border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-surface-2);color:var(--color-text);font:inherit;font-size:var(--text-xs);font-weight:var(--weight-bold)}@media(hover:hover)and (pointer:fine){.quiz-shortcuts{display:block}}.quiz-actions-end{display:flex;align-items:center;gap:var(--space-2);margin-left:auto}.btn-next{display:none;align-items:center;justify-content:center;gap:var(--space-2);min-height:48px;padding:0 var(--space-6);border:1px solid var(--color-primary);border-radius:var(--radius-pill);background:var(--color-primary);color:var(--color-on-primary);font-size:var(--text-base);font-weight:var(--weight-bold);cursor:pointer;box-shadow:var(--shadow-2);transition:background-color var(--motion-fast) var(--ease-out)}.btn-next.show{display:inline-flex}.btn-next:hover{background:var(--color-primary-hover)}.completion-card{display:none;flex-direction:column;align-items:center;gap:var(--space-5);padding:var(--space-6) var(--space-5);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface-glass);text-align:center;box-shadow:var(--shadow-2)}.completion-hero{display:flex;flex-direction:column;align-items:center;gap:var(--space-3);max-width:34rem}.completion-ring{--pct: 0;display:grid;place-items:center;width:132px;height:132px;border-radius:50%;background:radial-gradient(closest-side,var(--color-surface) 78%,transparent 80% 100%),conic-gradient(var(--completion-color, var(--color-primary)) calc(var(--pct) * 1%),var(--color-surface-sunken) 0);color:var(--color-text)}.completion-ring__value{font-size:var(--text-2xl);font-weight:var(--weight-extrabold);line-height:1;font-variant-numeric:tabular-nums}.completion-ring__label{display:block;margin-top:2px;color:var(--color-text-muted);font-size:var(--text-xs);font-weight:var(--weight-semibold)}.completion-ring.is-great{--completion-color: var(--color-success)}.completion-ring.is-ok{--completion-color: var(--color-primary)}.completion-ring.is-low{--completion-color: var(--color-warning)}.completion-icon{display:none}.completion-title{margin:0;color:var(--color-text);font-size:var(--text-2xl);font-weight:var(--weight-extrabold);letter-spacing:-.02em}.completion-desc{margin:0;color:var(--color-text-muted);font-size:var(--text-base);line-height:var(--leading-body)}.completion-badge{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-3);border:1px solid var(--color-warning-border);border-radius:var(--radius-pill);background:var(--color-warning-soft);color:var(--color-warning-ink);font-size:var(--text-sm);font-weight:var(--weight-bold)}.completion-badge[hidden]{display:none}.completion-stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-3);width:100%;max-width:40rem}.comp-stat{display:flex;flex-direction:column;gap:2px;padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface)}.comp-stat-val{font-size:var(--text-2xl);font-weight:var(--weight-extrabold);font-variant-numeric:tabular-nums;color:var(--color-text)}.comp-stat--ok .comp-stat-val{color:var(--color-success-ink)}.comp-stat--bad .comp-stat-val{color:var(--color-danger-ink)}.comp-stat--streak .comp-stat-val{color:var(--color-warning-ink)}.comp-stat-lbl{color:var(--color-text-muted);font-size:var(--text-xs);font-weight:var(--weight-semibold)}.completion-review{width:100%;max-width:40rem;text-align:left}.completion-review[hidden]{display:none}.completion-review h3{margin:0 0 var(--space-2);color:var(--color-text);font-size:var(--text-base);font-weight:var(--weight-bold)}.mistake-list{display:flex;flex-direction:column;gap:var(--space-2);max-height:22rem;margin:0;padding:0;overflow-y:auto;list-style:none}.mistake-item{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3) var(--space-4);border:1px solid var(--color-danger-border);border-radius:var(--radius-md);background:var(--color-danger-soft)}.mistake-item__body{display:flex;flex-direction:column;gap:2px;min-width:0}.mistake-item__q{color:var(--color-text);font-size:var(--text-sm);font-weight:var(--weight-semibold);overflow-wrap:anywhere}.mistake-item__a{color:var(--color-danger-ink);font-size:var(--text-xs)}.mistake-item__a strong{color:var(--color-success-ink)}.completion-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:var(--space-3);width:100%}.completion-actions .btn{flex:0 1 auto}.completion-actions .btn[hidden]{display:none}.corner-reaction-container{position:fixed;bottom:calc(var(--ems-bottom-reserved, 0px) + 5.5rem);right:var(--space-3);z-index:var(--z-toast);display:none;align-items:center;justify-content:center;pointer-events:none}.corner-reaction-container.active{display:flex}.corner-reaction-img{width:88px;height:88px;object-fit:contain;filter:drop-shadow(0 6px 14px rgba(0,0,0,.25));will-change:transform,opacity}.corner-reaction-container.reaction-success .corner-reaction-img{animation:cornerStickerJumpSuccess 1.85s cubic-bezier(.34,1.56,.64,1) forwards}.corner-reaction-container.reaction-failure .corner-reaction-img{animation:cornerStickerJumpFailure 1.85s cubic-bezier(.25,1,.5,1) forwards}@keyframes cornerStickerJumpSuccess{0%{opacity:0;transform:translateY(40px) scale(.5) rotate(-8deg)}22%{opacity:1;transform:translateY(-16px) scale(1.15) rotate(6deg)}42%{transform:translateY(0) scale(.95) rotate(-3deg)}58%{transform:translateY(-8px) scale(1.05) rotate(2deg)}72%{opacity:1;transform:translateY(0) scale(1) rotate(0)}88%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(24px) scale(.7)}}@keyframes cornerStickerJumpFailure{0%{opacity:0;transform:translateY(40px) scale(.5)}20%{opacity:1;transform:translateY(-12px) scale(1.1) rotate(-5deg)}38%{transform:translateY(0) scale(.94) rotate(4deg)}52%{transform:translateY(-5px) scale(1.03) rotate(-2deg)}68%{transform:translateY(0) scale(1) rotate(0)}88%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(24px) scale(.7)}}@keyframes shakeError{0%,to{transform:translate(0)}20%,60%{transform:translate(-6px)}40%,80%{transform:translate(6px)}}@keyframes fadeInSlide{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@media(prefers-reduced-motion:reduce){.corner-reaction-container.active{display:none}}@media(max-width:640px){#viewQuiz{gap:var(--space-3)}.quiz-toolbar{flex-wrap:nowrap}.quiz-toolbar__meta .badge-level{display:none}.score-board{gap:var(--space-1)}.stat-pill{padding:0 var(--space-2)}.btn-study-guide .guide-btn-text{display:none}.btn-study-guide{width:44px;padding:0}.game-card{gap:var(--space-4);padding:var(--space-4) var(--space-4) var(--space-4)}.quiz-bottom-actions{margin:0 calc(var(--space-4) * -1) calc(var(--space-4) * -1);padding:var(--space-3) var(--space-4);padding-bottom:calc(var(--space-3) + env(safe-area-inset-bottom,0px))}.quiz-actions-end{width:100%}.btn-next{flex:1 1 auto}.card-top{gap:var(--space-2)}.deck-counter{min-width:7em}.btn-deck-shuffle .shuffle-text,.btn-tts-listen #ttsBtnText{display:none}.btn-deck-shuffle,.btn-tts-listen{width:44px;padding:0}.sentence-text{font-size:var(--text-lg);line-height:1.65}.options-grid,.modal-bank-chips-grid{grid-template-columns:1fr}.opt-btn{min-height:56px;font-size:var(--text-base)}.completion-card{padding:var(--space-5) var(--space-4)}.completion-stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.completion-actions .btn{flex:1 1 100%}.corner-reaction-img{width:64px;height:64px}.quiz-toolbar__end{width:100%;justify-content:space-between}}@media(max-height:500px)and (orientation:landscape){#viewQuiz{flex-direction:row;flex-wrap:wrap;align-items:center;gap:var(--space-2) var(--space-3);padding-bottom:var(--space-3)}#viewQuiz>*{flex:0 0 100%;min-width:0;order:3}#viewQuiz>.progress-indicator-bar{flex:1 1 0;order:1;height:8px}#viewQuiz>.quiz-toolbar{flex:0 0 auto;width:auto;order:2}.quiz-toolbar{flex-wrap:nowrap;gap:var(--space-2)}.quiz-toolbar__meta .badge-level{display:none}.game-card{gap:var(--space-3);padding:var(--space-3) var(--space-4) var(--space-3)}.card-top{flex-wrap:nowrap;gap:var(--space-2)}.question-box{gap:var(--space-2)}.sentence-text{line-height:1.5}.options-grid{gap:var(--space-2)}.opt-btn{min-height:48px}.quiz-bottom-actions{flex-wrap:nowrap;gap:var(--space-3);margin:0 calc(var(--space-4) * -1) calc(var(--space-3) * -1);padding:var(--space-2) var(--space-4);padding-bottom:calc(var(--space-2) + env(safe-area-inset-bottom,0px))}.quiz-actions-end{width:auto}.btn-next{flex:0 0 auto;min-height:44px;padding:0 var(--space-5)}}.folder-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:var(--space-5) var(--space-5);justify-items:center;align-items:end;width:100%;padding:var(--space-2) 0 var(--space-5)}@media(max-width:640px){.folder-grid{grid-template-columns:1fr;gap:var(--space-4);padding-top:0}}.gf-root{--gf-px: 0;--gf-py: 0;--gf-ease: cubic-bezier(.2, .8, .2, 1);--gf-spring: cubic-bezier(.34, 1.36, .5, 1);--gf-hinge: 0deg;--gf-lift: 42px;--gf-spread: 0px;--gf-fan: 0deg;--gf-stack: 15px;--gf-ink: var(--color-text);--gf-ink-soft: var(--color-text-muted);--gf-track: rgba(20, 20, 22, .14);position:relative;display:block;width:100%;max-width:340px;flex:none;vertical-align:top;font-family:var(--font-body);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;isolation:isolate}.gf-root[data-tone=dark]{--gf-ink: var(--color-text);--gf-ink-soft: var(--color-text-muted);--gf-track: rgba(255, 255, 255, .18)}@media(hover:hover)and (pointer:fine){.gf-root:hover{--gf-hinge: -11deg;--gf-lift: -34px;--gf-spread: 8px;--gf-fan: 1.4deg;--gf-stack: 10px}}.gf-root:has(.gf-hit:focus-visible){--gf-hinge: -11deg;--gf-lift: -34px;--gf-spread: 8px;--gf-fan: 1.4deg;--gf-stack: 10px}.gf-root[data-open]{--gf-hinge: -24deg;--gf-lift: -96px;--gf-spread: 40px;--gf-fan: 5deg;--gf-stack: 30px}.gf-stage{position:absolute;left:0;top:0;width:340px;height:272px;transform-origin:0 0}.gf-tilt{position:absolute;inset:0;transform:perspective(1400px) rotateX(calc(var(--gf-py) * -3deg)) rotateY(calc(var(--gf-px) * 4deg));transition:transform .9s var(--gf-ease)}.gf-shadow{position:absolute;left:18px;right:18px;bottom:-6px;height:60px;border-radius:40px;background:#0f172a24;filter:blur(20px);transform:translate(calc(var(--gf-px) * -8px));transition:transform .9s var(--gf-ease),opacity .9s var(--gf-ease)}.gf-root[data-tone=dark] .gf-shadow{background:#00000073}.gf-back{position:absolute;inset:0;overflow:hidden;background:linear-gradient(180deg,var(--color-surface-sunken) 0%,var(--color-border) 100%)}.gf-root[data-tone=dark] .gf-back{background:linear-gradient(180deg,var(--color-surface-2) 0%,var(--color-bg) 100%)}.gf-art{position:absolute;left:-12px;top:-12px;max-width:none;object-fit:cover;transform:translate(calc(var(--gf-px) * -7px),calc(var(--gf-py) * -6px)) scale(1.02);transition:transform 1.1s var(--gf-ease),opacity 1.2s var(--gf-ease),filter 1.2s var(--gf-ease)}img.gf-art,canvas.gf-art{opacity:0;filter:blur(14px) saturate(.6)}img.gf-art[data-ready],canvas.gf-art[data-ready]{opacity:1;filter:none}.gf-art--flat{width:364px;height:296px;opacity:1;filter:none}.gf-back-sheen{position:absolute;inset:0;background:linear-gradient(180deg,#ffffff38,#fff0 22%),radial-gradient(120% 80% at 80% 0%,#ffffff29,#fff0 60%);pointer-events:none}.gf-rim{position:absolute;left:0;top:0;max-width:none;overflow:visible;pointer-events:none;fill:none}.gf-back-rim{width:340px;height:272px}.gf-back-rim path{stroke:#ffffff73;stroke-width:1}.gf-root[data-tone=dark] .gf-back-rim path{stroke:#ffffff29}.gf-files{position:absolute;inset:0;z-index:5;pointer-events:none;clip-path:inset(-400px -400px 10px -400px)}.gf-sheet{all:unset;box-sizing:border-box;position:absolute;left:34px;top:96px;width:272px;height:184px;border-radius:16px;overflow:hidden;cursor:pointer;pointer-events:auto;background:linear-gradient(180deg,var(--color-surface) 0%,var(--color-surface-2) 100%);box-shadow:inset 0 1px #ffffffe6,0 0 0 .5px #0000001a,0 10px 26px -8px #0a0c1447;transform-origin:50% 100%;transform:translate(calc(var(--gf-jx) + var(--gf-slot) * var(--gf-spread)),calc(var(--gf-lift) + var(--gf-depth) * var(--gf-stack) * -1)) rotate(calc(var(--gf-jr) + var(--gf-slot) * var(--gf-fan)));transition:transform .75s var(--gf-spring) calc(var(--gf-depth) * 40ms),box-shadow .4s var(--gf-ease),translate .9s var(--gf-ease),opacity .9s var(--gf-ease)}.gf-root[data-tone=dark] .gf-sheet{background:linear-gradient(180deg,var(--color-surface-2) 0%,var(--color-surface) 100%);box-shadow:inset 0 1px #ffffff24,0 0 0 .5px #ffffff14,0 12px 28px -8px #000000b3}.gf-sheet--art{background:#1a1a1d}.gf-sheet-art{position:absolute;left:0;top:0;width:272px;height:184px;max-width:none;object-fit:cover;transition:opacity .9s var(--gf-ease),filter .9s var(--gf-ease)}img.gf-sheet-art,canvas.gf-sheet-art{opacity:0;filter:blur(10px)}img.gf-sheet-art[data-ready],canvas.gf-sheet-art[data-ready]{opacity:1;filter:none}.gf-sheet--art:after{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(180deg,#0000006b,#0000 34%);box-shadow:inset 0 0 0 1px #fff3;pointer-events:none}.gf-sheet-head{position:absolute;left:16px;right:16px;top:12px;z-index:1;display:flex;align-items:baseline;justify-content:space-between;gap:8px;white-space:nowrap}.gf-sheet-name{overflow:hidden;text-overflow:ellipsis;font-size:12.5px;font-weight:560;letter-spacing:-.005em;color:var(--color-text)}.gf-sheet-meta{flex:none;font-size:12px;font-weight:600;letter-spacing:.01em;color:var(--color-text-muted)}.gf-root[data-tone=dark] .gf-sheet-name{color:var(--color-text)}.gf-sheet--art .gf-sheet-name{color:#fafafa}.gf-root[data-tone=dark] .gf-sheet-meta{color:var(--color-text-muted)}.gf-sheet--art .gf-sheet-meta{color:#fafafaa8}.gf-lines{position:absolute;left:16px;right:16px;top:40px;display:flex;flex-direction:column;gap:8px}.gf-lines i{display:block;height:5px;border-radius:3px;background:#18181b14}.gf-lines i:first-child{height:9px;margin-bottom:4px;background:#18181b24}.gf-root[data-tone=dark] .gf-lines i{background:#ffffff14}.gf-root[data-tone=dark] .gf-lines i:first-child{background:#ffffff29}.gf-front{position:absolute;left:0;top:74px;width:340px;height:198px;z-index:10;-webkit-backdrop-filter:blur(22px) saturate(1.5);backdrop-filter:blur(22px) saturate(1.5);transform-origin:50% 100%;transform:perspective(760px) rotateX(var(--gf-hinge));transition:transform .8s var(--gf-spring),translate 1s var(--gf-ease),opacity 1s var(--gf-ease)}.gf-tint{position:absolute;inset:0;background:linear-gradient(180deg,#ffffff29,#ffffff80 42%,#fcfcfced)}.gf-root[data-tone=dark] .gf-tint{background:linear-gradient(180deg,#1212142e,#0e0e109e 46%,#08080af0)}.gf-spec{position:absolute;inset:0;background:radial-gradient(260px 200px at calc(50% + var(--gf-px) * 46%) calc(30% + var(--gf-py) * 40%),#ffffff80,#fff0 70%);mix-blend-mode:soft-light;opacity:.9;pointer-events:none}.gf-root[data-tone=dark] .gf-spec{mix-blend-mode:screen;opacity:.16}.gf-front-rim{width:340px;height:198px}.gf-front-rim path{stroke-width:2.4;transition:stroke-width .3s var(--gf-ease)}.gf-root[data-tone=dark] .gf-front-rim{opacity:.55}.gf-hit{all:unset;position:absolute;inset:0;z-index:1;cursor:pointer}.gf-hit:focus-visible~.gf-label .gf-title{text-decoration:underline;text-decoration-thickness:1.5px;text-underline-offset:4px}.gf-front:has(.gf-hit:focus-visible) .gf-front-rim path{stroke:var(--color-focus);stroke-width:5}.gf-label{position:absolute;z-index:2;display:flex;flex-direction:column;align-items:flex-start;gap:5px;max-width:284px;pointer-events:none;color:var(--gf-ink)}.gf-root[data-place=bottom-left] .gf-label{left:26px;bottom:26px}.gf-root[data-place=top-left] .gf-label{left:26px;top:34px}.gf-title{font-size:19px;font-weight:700;line-height:1.18;letter-spacing:-.012em;color:var(--gf-ink);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.gf-meta{font-size:13px;font-weight:600;letter-spacing:.005em;color:var(--gf-ink-soft);white-space:nowrap;font-variant-numeric:tabular-nums;animation:gf-roll .5s var(--gf-ease) both}@keyframes gf-roll{0%{opacity:0;translate:0 7px;filter:blur(3px)}to{opacity:1;translate:0 0;filter:blur(0)}}.gf-chip{display:inline-flex;align-items:center;padding:2px 10px;border-radius:999px;font-size:12px;font-weight:700;line-height:1.5;white-space:nowrap;background:var(--color-primary-soft);color:var(--color-primary-ink);border:1px solid var(--color-primary-border)}.gf-chip[hidden]{display:none}.gf-root[data-progress=done] .gf-chip{background:var(--color-success-soft);color:var(--color-success-ink);border-color:var(--color-success-border)}.gf-progress{display:block;width:100%;max-width:284px;height:6px;border-radius:999px;overflow:hidden;background:var(--gf-track)}.gf-progress[hidden]{display:none}.gf-progress>i{display:block;height:100%;width:0;border-radius:inherit;background:var(--color-primary);transition:width .5s var(--gf-ease)}.gf-root[data-progress=done] .gf-progress>i{background:var(--color-success)}.gf-root:not([data-entered]) .gf-back,.gf-root:not([data-entered]) .gf-back-rim{translate:0 22px;opacity:0}.gf-root:not([data-entered]) .gf-sheet{translate:0 -120px;opacity:0}.gf-root:not([data-entered]) .gf-front{translate:0 46px;opacity:0}.gf-root:not([data-entered]) .gf-shadow{opacity:0}.gf-back,.gf-back-rim{transition:translate 1s var(--gf-ease),opacity .9s var(--gf-ease)}.gf-root[data-entered] .gf-sheet{transition-delay:calc(var(--gf-depth) * 40ms),0s,calc(.18s + var(--gf-depth) * 90ms),calc(.18s + var(--gf-depth) * 90ms)}.gf-root[data-entered] .gf-front{transition-delay:0s,.42s,.42s}@media(prefers-reduced-motion:reduce){.gf-root *,.gf-root *:before,.gf-root *:after{transition-duration:0s!important;transition-delay:0s!important;animation:none!important}.gf-tilt{transform:none}}.practice-view{max-width:1100px;margin:0 auto}.practice-head{display:flex;flex-direction:column;gap:var(--space-1)}.practice-title{margin:0;color:var(--color-text);font-size:var(--text-2xl);font-weight:var(--weight-extrabold);letter-spacing:-.02em;line-height:var(--leading-tight)}.practice-sub{margin:0;color:var(--color-text-muted);font-size:var(--text-base);line-height:var(--leading-snug)}.practice-head{padding-top:var(--space-2)}.practice-controls{display:flex;flex-wrap:wrap;align-items:stretch;gap:var(--space-3)}.seg{display:inline-flex;gap:var(--space-1);padding:var(--space-1);border:1px solid var(--color-border-strong);border-radius:var(--radius-pill);background:var(--color-surface-sunken)}.seg__btn{display:inline-flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:var(--space-1) var(--space-2);min-height:48px;padding:var(--space-2) var(--space-4);border:1px solid var(--color-border-strong);border-radius:var(--radius-pill);background:var(--color-surface);color:var(--color-text);font-size:var(--text-sm);font-weight:var(--weight-bold);line-height:var(--leading-tight);text-align:center;cursor:pointer;touch-action:manipulation;transition:background-color var(--motion-fast) var(--ease-out),color var(--motion-fast) var(--ease-out),border-color var(--motion-fast) var(--ease-out)}.seg__btn:hover{background:var(--color-primary-soft);color:var(--color-primary-ink)}.seg__btn[aria-checked=true],.seg__btn[aria-selected=true]{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-on-primary);box-shadow:var(--shadow-1)}.seg__sub{font-weight:var(--weight-semibold);font-size:var(--text-xs)}.practice-panel[hidden],.seg__short{display:none}@media(max-width:640px){.practice-view{gap:var(--space-3)}.practice-controls{flex-direction:column;gap:var(--space-2)}.seg{display:flex;width:100%}.seg{gap:var(--space-2)}.seg__btn{flex:1 1 0;min-width:0;flex-direction:column;flex-wrap:nowrap;gap:0;padding:var(--space-1) var(--space-2);min-height:52px}.seg__btn>.ic{display:none}.seg__long{display:none}.seg__short{display:inline}}.ems-confirm-backdrop{position:fixed;inset:0;z-index:var(--z-modal);display:flex;align-items:center;justify-content:center;padding:max(var(--space-4),env(safe-area-inset-top,0px)) max(var(--space-4),env(safe-area-inset-right,0px)) max(var(--space-4),env(safe-area-inset-bottom,0px)) max(var(--space-4),env(safe-area-inset-left,0px));background:var(--color-overlay)}.ems-confirm{width:100%;max-width:26rem;padding:var(--space-5);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);color:var(--color-text);box-shadow:var(--shadow-3)}.ems-confirm__title{margin:0 0 var(--space-2);font-size:var(--text-lg);font-weight:var(--weight-extrabold)}.ems-confirm__text{margin:0 0 var(--space-4);color:var(--color-text-muted);font-size:var(--text-base);line-height:var(--leading-body)}.ems-confirm__actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:var(--space-2)}.practice-search{position:relative;display:flex;align-items:center;width:100%;max-width:28rem}.practice-search__icon{position:absolute;left:var(--space-4);top:50%;transform:translateY(-50%);color:var(--color-text-muted);pointer-events:none}.practice-search__input{width:100%;min-height:48px;padding:var(--space-2) 52px var(--space-2) calc(var(--space-4) + 1.6rem);border:1px solid var(--color-border-strong);border-radius:var(--radius-lg);background:var(--color-surface);color:var(--color-text);font:inherit;font-size:var(--text-base);box-shadow:var(--shadow-1);-webkit-appearance:none;appearance:none}.practice-search__input::placeholder{color:var(--color-text-muted);opacity:1}.practice-search__input::-webkit-search-cancel-button{display:none}.practice-search__input:focus-visible{outline:3px solid var(--color-focus);outline-offset:2px}.practice-search__clear{position:absolute;right:var(--space-1);top:50%;transform:translateY(-50%);width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:var(--radius-md);background:transparent;color:var(--color-text-muted);cursor:pointer;touch-action:manipulation}.practice-search__clear[hidden]{display:none}.practice-search__clear:hover{background:var(--color-primary-soft);color:var(--color-primary-ink)}.practice-search__clear:focus-visible{outline:3px solid var(--color-focus);outline-offset:0}.gf-root[hidden],.practice-panel.is-filtered-empty{display:none}.practice-empty{display:flex;flex-direction:column;align-items:center;gap:var(--space-3);padding:var(--space-6) var(--space-4);text-align:center;border:1px dashed var(--color-border-strong);border-radius:var(--radius-lg);background:var(--color-surface);color:var(--color-text)}.practice-empty[hidden]{display:none}.practice-empty__text{margin:0;font-size:var(--text-base);line-height:var(--leading-body);overflow-wrap:anywhere}.practice-empty__btn{min-height:48px;padding:var(--space-2) var(--space-5);border:1px solid var(--color-primary);border-radius:var(--radius-md);background:var(--color-primary);color:var(--color-on-primary);font:inherit;font-weight:var(--weight-bold);cursor:pointer;touch-action:manipulation}.practice-empty__btn:focus-visible{outline:3px solid var(--color-focus);outline-offset:2px}@media(max-width:640px){.practice-search{max-width:none}}.guide-sec-badge{font-size:var(--text-xs)}.menu-waves-wrapper{position:fixed;inset:0;pointer-events:none;z-index:-1!important;overflow:hidden;opacity:.65;transition:opacity .5s cubic-bezier(.16,1,.3,1),visibility .5s cubic-bezier(.16,1,.3,1)}.menu-waves-canvas{width:100%;height:100%;display:block}body.in-quiz-mode .menu-waves-wrapper,body.focus-mode .menu-waves-wrapper,.menu-waves-wrapper.is-hidden{opacity:0!important;visibility:hidden!important;pointer-events:none!important}.global-top-header{display:flex;justify-content:flex-end;align-items:center;width:100%;margin-bottom:-1rem;z-index:12;position:relative}body.in-quiz-mode .global-top-header{display:none!important}.cloud-sync-pill{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:.5rem 1.15rem;background:var(--color-surface-glass);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1.5px solid var(--color-primary-border);border-radius:var(--radius-pill);font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--weight-bold);color:var(--color-text);cursor:pointer;box-shadow:var(--shadow-2);transition:all var(--motion-base) var(--ease-out)}.cloud-sync-pill:hover{background:var(--color-surface-glass-hover);border-color:var(--color-primary)}.cloud-sync-pill .sync-icon{font-size:.95rem;color:var(--color-primary)}.cloud-sync-pill.is-syncing .sync-icon{animation:cloudSpin 1.4s linear infinite;color:var(--color-warning)}.cloud-sync-pill.is-synced{border-color:var(--color-success-border);background:var(--color-success-soft)}.cloud-sync-pill.is-synced .sync-icon{color:var(--color-success)}.cloud-sync-pill.is-error{border-color:var(--color-danger-border);background:var(--color-danger-soft)}.cloud-sync-pill.is-error .sync-icon{color:var(--color-danger)}@keyframes cloudSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.cloud-modal-backdrop{position:fixed;inset:0;z-index:var(--z-modal);background:var(--color-overlay);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:none;overflow-y:auto;overscroll-behavior:contain;padding:max(var(--space-4),env(safe-area-inset-top,0px)) max(var(--space-4),env(safe-area-inset-right,0px)) max(var(--space-4),env(safe-area-inset-bottom,0px)) max(var(--space-4),env(safe-area-inset-left,0px));animation:modalFadeIn .25s ease-out forwards}.cloud-modal-backdrop>.cloud-modal-card,.cloud-modal-backdrop>.auth-shell,.auth-shell>.cloud-modal-card{margin:auto}@keyframes modalFadeIn{0%{opacity:0}to{opacity:1}}.cloud-modal-card{background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border);border-radius:var(--radius-lg);width:100%;max-width:440px;box-shadow:var(--shadow-3);overflow:hidden;position:relative;animation:modalScaleUp .3s var(--ease-out) forwards}@keyframes modalScaleUp{0%{opacity:0;transform:scale(.97) translateY(8px)}to{opacity:1;transform:scale(1) translateY(0)}}.cloud-modal-header{background:var(--color-primary);padding:var(--space-5) var(--space-5) var(--space-4);color:var(--color-on-primary);position:relative}.cloud-modal-header .btn-close-modal{position:absolute;top:var(--space-3);right:var(--space-3);width:44px;height:44px;border-radius:50%;border:none;background:transparent;color:var(--color-on-primary);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;font-size:var(--text-lg);transition:background-color var(--motion-fast) var(--ease-out)}.cloud-modal-header .btn-close-modal:hover{background:var(--color-primary-hover)}.cloud-modal-header .btn-close-modal:focus-visible{outline:2px solid var(--color-on-primary);outline-offset:0}.cloud-header-badge{display:inline-flex;align-items:center;gap:6px;margin-bottom:var(--space-2);padding-right:48px;color:var(--color-on-primary);font-size:var(--text-xs);font-weight:var(--weight-bold);text-transform:uppercase;letter-spacing:.06em}.cloud-modal-title{font-family:var(--font-display);font-size:var(--text-xl);font-weight:var(--weight-extrabold);margin:0 0 var(--space-1);line-height:var(--leading-tight)}.cloud-modal-desc{font-size:var(--text-sm);margin:0;line-height:var(--leading-snug)}.cloud-modal-desc[hidden]{display:none}.cloud-auth-tabs{display:flex;background:var(--color-surface-sunken);padding:4px;margin:var(--space-4) var(--space-5) 0;border-radius:var(--radius-md);gap:4px}@media(pointer:coarse){.cloud-auth-tabs{gap:var(--space-2)}}.cloud-auth-tabs[hidden]{display:none}.cloud-tab-btn{flex:1 1 0;min-width:0;min-height:44px;padding:0 var(--space-2);border:none;background:transparent;border-radius:var(--radius-sm);font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--weight-bold);color:var(--color-text-muted);cursor:pointer;white-space:nowrap;display:inline-flex;align-items:center;justify-content:center;gap:6px;transition:background-color var(--motion-fast) var(--ease-out),color var(--motion-fast) var(--ease-out)}.cloud-tab-btn:hover{color:var(--color-text)}.cloud-tab-btn.active{background:var(--color-surface);color:var(--color-primary-ink);box-shadow:var(--shadow-1)}@media(max-width:379.98px){.cloud-tab-btn .ic{display:none}}.cloud-modal-body{padding:var(--space-4) var(--space-5) var(--space-5)}.cloud-form,.cloud-form-fields{display:flex;flex-direction:column;gap:var(--space-4)}.cloud-input-group{display:flex;flex-direction:column;gap:6px}.cloud-input-group[hidden]{display:none}.cloud-input-label{font-size:var(--text-sm);font-weight:var(--weight-bold);color:var(--color-text)}.cloud-optional{font-weight:var(--weight-regular);color:var(--color-text-muted)}.cloud-input-wrapper{position:relative;display:flex;align-items:center}.cloud-input-wrapper .ic.input-icon{position:absolute;left:14px;color:var(--color-text-muted);font-size:var(--text-sm);pointer-events:none}.cloud-input{width:100%;min-height:48px;padding:.7rem 1rem .7rem 2.6rem;border:1.5px solid var(--color-border-strong);border-radius:var(--radius-md);font-family:var(--font-body);font-size:1rem;color:var(--color-text);background:var(--color-surface-2);transition:border-color var(--motion-fast) var(--ease-out),background-color var(--motion-fast) var(--ease-out),box-shadow var(--motion-fast) var(--ease-out)}.cloud-input::placeholder{color:var(--color-text-faint)}.cloud-input--toggle{padding-right:6.2rem}.cloud-input:focus,.cloud-input:focus-visible{outline:2px solid var(--color-focus);outline-offset:1px;border-color:var(--color-focus);background:var(--color-surface);box-shadow:var(--shadow-focus)}.cloud-input[aria-invalid=true]{border-color:var(--color-danger);background:var(--color-danger-soft)}.cloud-field-help{margin:0;font-size:var(--text-copy);color:var(--color-text-muted);line-height:var(--leading-snug)}.cloud-field-help[hidden],.cloud-field-error[hidden]{display:none}.cloud-field-error{margin:0;font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--color-danger-ink);line-height:var(--leading-snug)}.cloud-eye{position:absolute;right:2px;top:50%;transform:translateY(-50%);display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:44px;height:44px;padding:0 var(--space-3);border:0;border-radius:var(--radius-md);background:transparent;color:var(--color-text-muted);font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--weight-semibold);cursor:pointer}.cloud-eye:hover{color:var(--color-text);background:var(--color-surface-sunken)}.cloud-link{align-self:flex-start;min-height:44px;padding:0 var(--space-1);border:0;background:transparent;color:var(--color-primary-ink);font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--weight-bold);text-decoration:underline;text-underline-offset:3px;cursor:pointer}.cloud-link[hidden]{display:none}.cloud-link:hover{color:var(--color-primary)}.cloud-link--back{text-decoration:none}.cloud-alert{padding:.75rem 1rem;border-radius:var(--radius-md);font-size:var(--text-sm);display:none;align-items:flex-start;gap:8px;line-height:var(--leading-snug)}.cloud-alert.show{display:flex}.cloud-alert.alert-error{background:var(--color-danger-soft);border:1px solid var(--color-danger-border);color:var(--color-danger-ink)}.cloud-alert.alert-success{background:var(--color-success-soft);border:1px solid var(--color-success-border);color:var(--color-success-ink)}.cloud-alert .ic{margin-top:2px}.btn-cloud-submit{width:100%;min-height:48px;padding:.8rem;background:var(--color-primary);border:1px solid var(--color-primary);border-radius:var(--radius-md);color:var(--color-on-primary);font-family:var(--font-body);font-size:var(--text-base);font-weight:var(--weight-bold);cursor:pointer;box-shadow:var(--shadow-2);transition:background-color var(--motion-fast) var(--ease-out),box-shadow var(--motion-fast) var(--ease-out);display:inline-flex;align-items:center;justify-content:center;gap:8px}.btn-cloud-submit[hidden]{display:none}.btn-cloud-submit:hover:not(:disabled){background:var(--color-primary-hover);border-color:var(--color-primary-hover)}.btn-cloud-submit:disabled{opacity:.7;cursor:not-allowed}.auth-guest-row[hidden]{display:none}.btn-guest-mode{width:100%;min-height:44px;padding:.7rem;background:transparent;border:1.5px solid var(--color-border-strong);border-radius:var(--radius-md);color:var(--color-text);font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--weight-semibold);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:6px}.btn-guest-mode:hover:not(:disabled){background:var(--color-surface-sunken)}.btn-guest-mode:disabled{opacity:.6;cursor:not-allowed}.auth-sent{display:flex;flex-direction:column;align-items:center;gap:var(--space-3);text-align:center}.auth-sent[hidden]{display:none}.auth-sent__icon{display:grid;place-items:center;width:64px;height:64px;border-radius:50%;background:var(--color-success-soft);color:var(--color-success-ink);font-size:var(--text-2xl)}.auth-sent__text{margin:0;font-size:var(--text-base);line-height:var(--leading-body);color:var(--color-text);overflow-wrap:anywhere}.auth-sent__actions{display:flex;flex-direction:column;align-items:stretch;gap:var(--space-2);width:100%;margin-top:var(--space-2)}.auth-sent__actions .cloud-link{align-self:center}.auth-shell{display:contents}.auth-brand,body.ems-locked .app-container{display:none}body.ems-locked #cloudAuthModal{background:var(--color-bg);background-image:var(--bg-aurora);-webkit-backdrop-filter:none;backdrop-filter:none;padding:var(--space-5) var(--space-4) var(--space-6)}body.ems-locked .auth-shell{display:grid;grid-template-columns:minmax(0,1fr);align-content:center;justify-items:center;gap:var(--space-5);width:100%;max-width:960px}body.ems-locked .auth-brand{display:flex;flex-direction:column;gap:var(--space-3);text-align:center;align-items:center;max-width:440px}body.ems-locked .auth-brand__mark{display:grid;place-items:center;width:64px;height:64px;border-radius:var(--radius-lg);box-shadow:var(--shadow-2)}body.ems-locked .auth-brand__name{margin:0;font-size:var(--text-xl);font-weight:var(--weight-extrabold);color:var(--color-text);letter-spacing:-.01em}body.ems-locked .auth-brand__tagline{margin:0;font-size:var(--text-base);color:var(--color-text-muted);line-height:var(--leading-snug)}body.ems-locked .auth-brand__list{display:none;margin:0;padding:0;list-style:none}body.ems-locked .auth-shell>.cloud-modal-card{margin:0}body.ems-locked #cloudAuthModal .btn-close-modal,body.ems-locked #cloudAuthModal .auth-guest-row{display:none}body.ems-locked .cloud-header-badge{padding-right:0}@media(min-width:860px){body.ems-locked #cloudAuthModal{padding:var(--space-6)}body.ems-locked .auth-shell{grid-template-columns:minmax(0,1fr) 440px;justify-items:stretch;gap:var(--space-7);align-items:center}body.ems-locked .auth-brand{text-align:left;align-items:flex-start;max-width:none;gap:var(--space-4)}body.ems-locked .auth-brand__mark{width:72px;height:72px;font-size:var(--text-2xl)}body.ems-locked .auth-brand__name{font-size:var(--text-3xl);line-height:var(--leading-tight)}body.ems-locked .auth-brand__tagline{font-size:var(--text-lg);max-width:34ch}body.ems-locked .auth-brand__list{display:flex;flex-direction:column;gap:var(--space-3)}body.ems-locked .auth-brand__list li{display:flex;align-items:center;gap:var(--space-3);font-size:var(--text-base);font-weight:var(--weight-semibold);color:var(--color-text)}body.ems-locked .auth-brand__list .ic{display:block;box-sizing:border-box;flex:none;width:36px;height:36px;padding:8px;border-radius:var(--radius-md);background:var(--color-primary-soft);color:var(--color-primary-ink)}}@media(max-height:700px),(max-width:479.98px){body.ems-locked .cloud-modal-desc{display:none}.cloud-modal-header{padding:var(--space-4) var(--space-4) var(--space-3)}.cloud-modal-body{padding:var(--space-3) var(--space-4) var(--space-4)}.cloud-auth-tabs{margin:var(--space-3) var(--space-4) 0}}@media(max-height:500px){body.ems-locked #cloudAuthModal{padding-top:max(var(--space-3),env(safe-area-inset-top,0px));padding-bottom:max(var(--space-3),env(safe-area-inset-bottom,0px))}body.ems-locked .auth-shell{gap:var(--space-3)}body.ems-locked .auth-brand{gap:var(--space-2)}body.ems-locked .auth-brand__tagline{display:none}body.ems-locked .auth-brand__mark{width:48px;height:48px}body.ems-locked .auth-brand__name{font-size:var(--text-lg)}.cloud-modal-header{padding:var(--space-3) var(--space-4) var(--space-2)}.cloud-header-badge{margin-bottom:0}.cloud-modal-title{font-size:var(--text-lg);margin-bottom:0}.cloud-modal-desc{display:none}.cloud-modal-header--profile{display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:var(--space-3);align-items:center}.cloud-modal-header--profile .profile-avatar{grid-row:1 / span 2;width:40px;height:40px;margin-bottom:0}.cloud-modal-header--profile .cloud-modal-desc{display:block}.cloud-modal-body{padding:var(--space-3) var(--space-4) var(--space-4)}.cloud-auth-tabs{margin:var(--space-2) var(--space-4) 0}.cloud-form,.cloud-form-fields{gap:var(--space-3)}}@media(max-height:500px)and (min-width:600px){body.ems-locked .auth-shell{grid-template-columns:minmax(0,180px) minmax(0,440px);justify-content:center;align-items:start;justify-items:stretch;column-gap:var(--space-5)}body.ems-locked .auth-brand{align-self:start;padding-top:var(--space-4)}body.ems-locked #cloudAuthModal .cloud-modal-header{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}body.ems-locked #cloudAuthModal .cloud-auth-tabs{margin-top:var(--space-2)}body.ems-locked #cloudAuthModal .cloud-input,body.ems-locked #cloudAuthModal .btn-cloud-submit{min-height:44px}}.cloud-modal-header--profile{text-align:left}.profile-avatar{display:grid;place-items:center;width:56px;height:56px;margin-bottom:var(--space-3);border-radius:50%;background:var(--color-on-primary);color:var(--color-primary-ink);font-size:var(--text-lg);font-weight:var(--weight-extrabold);letter-spacing:.02em}.profile-info-grid{display:flex;flex-direction:column;gap:var(--space-2);margin-bottom:var(--space-4)}.profile-info-row{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:var(--space-1) var(--space-3);padding:var(--space-3) var(--space-4);background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:var(--radius-md)}.profile-info-label{font-size:var(--text-sm);color:var(--color-text-muted);display:flex;align-items:center;gap:6px}.profile-info-val{font-size:var(--text-sm);font-weight:var(--weight-bold);color:var(--color-text);overflow-wrap:anywhere;text-align:right}.profile-status{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:var(--weight-bold);background:var(--color-surface-sunken);color:var(--color-text-muted);border:1px solid var(--color-border)}.profile-status.is-ok{background:var(--color-success-soft);color:var(--color-success-ink);border-color:var(--color-success-border)}.profile-status.is-busy{background:var(--color-info-soft);color:var(--color-info-ink);border-color:var(--color-info-border)}.profile-status.is-error{background:var(--color-danger-soft);color:var(--color-danger-ink);border-color:var(--color-danger-border)}.profile-actions{display:flex;flex-direction:column;gap:var(--space-3)}.profile-actions--end{margin-top:var(--space-5);padding-top:var(--space-4);border-top:1px solid var(--color-border)}.btn-profile-sync,.btn-profile-logout{width:100%;min-height:48px;padding:.7rem;border-radius:var(--radius-md);font-family:var(--font-body);font-size:var(--text-base);font-weight:var(--weight-bold);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:background-color var(--motion-fast) var(--ease-out),color var(--motion-fast) var(--ease-out)}.btn-profile-sync{background:var(--color-primary-soft);border:1.5px solid var(--color-primary-border);color:var(--color-primary-ink)}.btn-profile-sync:hover:not(:disabled){background:var(--color-primary);border-color:var(--color-primary);color:var(--color-on-primary)}.btn-profile-sync:disabled{opacity:.7;cursor:progress}.btn-profile-logout{background:transparent;border:1.5px solid var(--color-danger);color:var(--color-danger-ink)}.btn-profile-logout:hover{background:var(--color-danger);color:var(--color-on-danger)}.profile-settings{display:flex;flex-direction:column;gap:var(--space-4);margin-top:var(--space-5);padding-top:var(--space-4);border-top:1px solid var(--color-border)}.profile-settings[hidden]{display:none}.profile-fieldset{border:0;margin:0;padding:0;min-width:0}.profile-legend{padding:0;font-size:var(--text-base);font-weight:var(--weight-extrabold);color:var(--color-text)}.profile-help{margin:var(--space-1) 0 var(--space-3);font-size:var(--text-copy);color:var(--color-text-muted)}.profile-goals{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-2)}.profile-goal{position:relative;display:block}.profile-goal input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}.profile-goal span{display:grid;place-items:center;min-height:44px;border:1.5px solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);font-size:var(--text-base);font-weight:var(--weight-bold);font-variant-numeric:tabular-nums}.profile-goal input:checked+span{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-on-primary)}.profile-goal input:focus-visible+span{outline:2px solid var(--color-focus);outline-offset:2px;box-shadow:var(--shadow-focus)}.profile-switch{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);min-height:56px;padding:var(--space-3) var(--space-4);background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer}.profile-switch__text{display:flex;flex-direction:column;gap:2px;min-width:0}.profile-switch__text strong{font-size:var(--text-base);color:var(--color-text)}.profile-switch__text small{font-size:var(--text-copy);color:var(--color-text-muted);line-height:var(--leading-snug)}.profile-switch input[type=checkbox]{appearance:none;-webkit-appearance:none;flex:none;position:relative;width:48px;height:28px;margin:0;border-radius:var(--radius-pill);background:var(--color-surface-sunken);border:2px solid var(--color-border-strong);cursor:pointer;transition:background-color var(--motion-fast) var(--ease-out)}.profile-switch input[type=checkbox]:after{content:"";position:absolute;top:2px;left:2px;width:20px;height:20px;border-radius:50%;background:var(--color-border-strong);transition:transform var(--motion-fast) var(--ease-out),background-color var(--motion-fast) var(--ease-out)}.profile-switch input[type=checkbox]:checked{background:var(--color-primary);border-color:var(--color-primary)}.profile-switch input[type=checkbox]:checked:after{transform:translate(20px);background:var(--color-on-primary)}.profile-switch input[type=checkbox]:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.ems-confirm-backdrop{position:fixed;inset:0;z-index:var(--z-toast);display:flex;overflow-y:auto;padding:max(var(--space-4),env(safe-area-inset-top,0px)) max(var(--space-4),env(safe-area-inset-right,0px)) max(var(--space-4),env(safe-area-inset-bottom,0px)) max(var(--space-4),env(safe-area-inset-left,0px));background:var(--color-overlay);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.ems-confirm-card{margin:auto;width:100%;max-width:420px;padding:var(--space-5);background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-3)}.ems-confirm-title{margin:0 0 var(--space-2);font-size:var(--text-lg);font-weight:var(--weight-extrabold);line-height:var(--leading-tight)}.ems-confirm-text{margin:0;font-size:var(--text-base);line-height:var(--leading-body);color:var(--color-text-muted)}.ems-confirm-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:var(--space-2);margin-top:var(--space-5)}.ems-confirm-actions .btn{flex:1 1 140px}@media(min-width:900px){.cloud-field-help,.profile-switch__text small{font-size:var(--text-xs)}}@media(max-width:640px){.global-top-header{margin-bottom:-.5rem}.cloud-modal-card{max-width:100%}}@media(prefers-reduced-motion:reduce){.cloud-modal-backdrop,.cloud-modal-card{animation:none}}#viewReadings{display:none;flex-direction:column;gap:var(--stack);width:100%;background:transparent!important;border:none!important;box-shadow:none!important;padding:0!important}.rd-bar{display:block;height:6px;border-radius:var(--radius-pill);background:var(--color-surface-sunken);box-shadow:inset 0 0 0 1px var(--color-border);overflow:hidden}.rd-bar>span{display:block;height:100%;background:var(--color-success);border-radius:var(--radius-pill)}.rd-continue[hidden]{display:none}.rd-continue-card{display:flex;align-items:center;gap:var(--space-4);width:100%;min-height:72px;padding:var(--space-4);text-align:left;font-family:inherit;color:var(--color-text);background:var(--color-primary-soft);border:1px solid var(--color-primary-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-1);cursor:pointer;transition:box-shadow var(--motion-base) var(--ease-out),border-color var(--motion-base) var(--ease-out)}.rd-continue-card:hover{box-shadow:var(--shadow-2);border-color:var(--color-primary)}.rd-continue-icon{flex:none;display:inline-grid;place-items:center;width:44px;height:44px;border-radius:var(--radius-pill);background:var(--color-primary);color:var(--color-on-primary)}.rd-continue-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:var(--space-0)}.rd-continue-kicker{font-size:var(--text-xs);font-weight:var(--weight-bold);text-transform:uppercase;letter-spacing:.05em;color:var(--color-primary-ink)}.rd-continue-title{font-size:var(--text-base);font-weight:var(--weight-extrabold);color:var(--color-text);overflow-wrap:anywhere}.rd-continue-meta{font-size:var(--text-sm);color:var(--color-text-muted)}.rd-continue-body .rd-bar{margin-top:var(--space-1)}.rd-continue-cta{flex:none;display:inline-flex;align-items:center;gap:var(--space-2);font-weight:var(--weight-bold);font-size:var(--text-sm);color:var(--color-primary-ink)}@media(max-width:520px){.rd-continue-cta{display:none}}.readings-top-bar,.submenu-top-bar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;background:transparent!important;border:none!important;box-shadow:none!important;padding:4px 0!important;margin-bottom:.2rem}.readings-breadcrumbs{display:flex;align-items:center;gap:8px;font-size:.85rem;color:var(--color-text-muted);font-weight:600}.readings-breadcrumbs span.active{color:var(--color-primary);font-weight:700}.readings-categories-grid{--rd-mascot-w: 88px;--rd-mascot-lift: calc(var(--rd-mascot-w) * .7);display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-5);width:100%;margin-top:calc(var(--rd-mascot-lift) * .8)}@media(max-width:900px){.readings-categories-grid{grid-template-columns:1fr;gap:var(--space-4)}}.reading-category-card{--rc-tint: var(--ic-teal);--rc-tint-2: var(--ic-sky);background:linear-gradient(180deg,color-mix(in srgb,var(--rc-tint) 7%,var(--color-surface)) 0%,var(--color-surface) 46%);border-radius:var(--radius-lg);border:1px solid var(--color-border);padding:var(--space-5);display:flex;flex-direction:column;gap:var(--space-3);cursor:pointer;transition:transform var(--motion-base) var(--ease-out),box-shadow var(--motion-base) var(--ease-out),border-color var(--motion-base) var(--ease-out);position:relative;box-shadow:var(--shadow-1)}.rd-cat--e2s{--rc-tint: var(--ic-teal);--rc-tint-2: var(--ic-sky)}.rd-cat--s2e{--rc-tint: var(--ic-indigo);--rc-tint-2: var(--ic-sky)}.rd-cat--fill{--rc-tint: var(--ic-amber);--rc-tint-2: var(--ic-rose)}.reading-category-card:before{content:"";position:absolute;inset:0;pointer-events:none;border-radius:calc(var(--radius-lg) - var(--rc-bw, 1px));background:linear-gradient(90deg,var(--rc-tint),var(--rc-tint-2)) top / 100% 5px no-repeat;opacity:.85;transition:background-size var(--motion-base) var(--ease-out),opacity var(--motion-base) var(--ease-out)}.rd-mascot{position:absolute;z-index:2;pointer-events:none;right:var(--space-4);top:calc(var(--rd-mascot-lift, 62px) * -1 + 2px);width:var(--rd-mascot-w, 88px);height:var(--rd-mascot-lift, 62px);transform-origin:50% 100%;animation:rd-mascot-peek .52s var(--ease-out, ease-out) both}.rd-mascot svg{display:block;width:100%;height:100%;overflow:visible}.reading-category-card:hover .rd-mascot{transform:translateY(-3px);transition:transform var(--motion-base, .2s) var(--ease-out, ease-out)}@keyframes rd-mascot-peek{0%{transform:translateY(40%);opacity:0}to{transform:none;opacity:1}}@media(prefers-reduced-motion:reduce){.rd-mascot{animation:none}.reading-category-card:hover .rd-mascot{transform:none}}.reading-category-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-3),0 14px 30px -18px var(--rc-tint);border-color:var(--color-primary-border)}.reading-category-card:hover:before{background-size:100% 7px;opacity:1}.reading-category-card:focus-visible{outline:3px solid var(--color-focus);outline-offset:3px}.category-icon-box{width:60px;height:60px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;font-size:1.85rem;flex:none;margin-top:var(--space-1)}.category-icon--e2s,.category-icon--s2e,.category-icon--fill{background:linear-gradient(145deg,color-mix(in srgb,var(--rc-tint) 26%,var(--color-surface)),color-mix(in srgb,var(--rc-tint-2) 10%,var(--color-surface)));border:1px solid color-mix(in srgb,var(--rc-tint) 38%,var(--color-border));box-shadow:0 8px 16px -10px var(--rc-tint),inset 0 1px color-mix(in srgb,#fff 50%,transparent);transition:transform var(--motion-base) var(--ease-out)}.reading-category-card:hover .category-icon-box{transform:scale(1.06) rotate(-3deg)}.category-icon-box .ic{width:1em;height:1em}.reading-category-title{font-family:var(--font-display);font-size:var(--text-xl);font-weight:800;letter-spacing:-.015em;color:var(--color-text);margin:var(--space-1) 0 0;padding-right:calc(var(--rd-mascot-w, 88px) * .3);line-height:var(--leading-tight)}.reading-category-desc{font-size:var(--text-copy);color:var(--color-text-muted);line-height:1.55;margin:0;flex-grow:1}.reading-category-meta{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-2);padding-top:var(--space-3);border-top:1px solid var(--color-border);font-size:var(--text-sm);font-weight:700;color:var(--color-text)}.reading-category-meta>span{display:inline-flex;align-items:center;gap:var(--space-1);min-height:28px;padding:0 var(--space-3);box-sizing:border-box;border-radius:var(--radius-pill);font-variant-numeric:tabular-nums;white-space:nowrap;background:color-mix(in srgb,var(--rc-tint) 10%,var(--color-surface));border:1px solid color-mix(in srgb,var(--rc-tint) 26%,var(--color-border))}.reading-category-meta>span .ic{width:1em;height:1em}.rd-cat-progress,.rd-subcat-progress{display:flex;align-items:center;gap:var(--space-3)}.rd-cat-progress .rd-bar,.rd-subcat-progress .rd-bar{flex:1}.reading-category-card .rd-cat-progress .rd-bar{height:8px}.reading-category-card .rd-cat-progress .rd-bar>span{background:linear-gradient(90deg,var(--rc-tint),var(--rc-tint-2))}.rd-cat-progress-text,.rd-subcat-progress-text{font-size:var(--text-xs);font-weight:var(--weight-bold);color:var(--color-text-muted);white-space:nowrap}@media(max-width:640px){.readings-categories-grid{--rd-mascot-w: 72px}.reading-category-card{padding:var(--space-4);gap:var(--space-2)}.category-icon-box{width:48px;height:48px;font-size:1.5rem}.reading-category-meta>span{padding:0 var(--space-2);font-size:var(--text-xs)}.reading-category-desc{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}}.readings-subcategories-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-4);width:100%}@media(max-width:960px){.readings-subcategories-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:640px){.readings-subcategories-grid{grid-template-columns:1fr;gap:var(--space-3)}}.reading-subcat-card{background:var(--color-surface);border-radius:var(--radius-lg);border:1px solid var(--color-border);padding:var(--space-4) var(--space-4) var(--space-4);display:flex;flex-direction:column;gap:var(--space-2);cursor:pointer;transition:transform var(--motion-base) var(--ease-out),box-shadow var(--motion-base) var(--ease-out),border-color var(--motion-base) var(--ease-out);box-shadow:var(--shadow-1)}.reading-subcat-card:hover{transform:translateY(-3px);border-color:var(--color-primary-border);box-shadow:var(--shadow-2)}.reading-subcat-header{display:flex;align-items:center;justify-content:space-between}.subcat-icon{width:44px;height:44px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;font-size:1.25rem;background:color-mix(in srgb,var(--ic-teal) 14%,var(--color-surface))}.subcat-pill{font-size:var(--text-xs);font-weight:700;padding:var(--space-1) var(--space-3);border-radius:var(--radius-pill);background:var(--color-surface-sunken);color:var(--color-text-muted)}.reading-subcat-title{font-size:var(--text-lg);font-weight:800;color:var(--color-text);margin:0;line-height:var(--leading-snug)}.reading-subcat-desc{font-size:var(--text-copy);color:var(--color-text-muted);line-height:1.5;margin:0}.readings-list-grid{display:flex;flex-direction:column;gap:var(--space-4);width:100%}.reading-item-card{background:var(--color-surface);border-radius:var(--radius-lg);border:1px solid var(--color-border);padding:var(--space-5);display:flex;align-items:center;justify-content:space-between;gap:var(--space-5);cursor:pointer;transition:transform var(--motion-base) var(--ease-out),box-shadow var(--motion-base) var(--ease-out),border-color var(--motion-base) var(--ease-out);box-shadow:var(--shadow-1)}.reading-item-card:hover{transform:translateY(-3px);border-color:var(--color-primary-border);box-shadow:var(--shadow-2)}.reading-item-left{display:flex;flex-direction:column;gap:var(--space-2);flex-grow:1;min-width:0}.reading-item-pills{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.reading-index-badge{font-size:var(--text-xs);font-weight:800;padding:var(--space-1) var(--space-3);border-radius:var(--radius-pill);background:var(--color-primary-soft);color:var(--color-primary-ink)}.reading-word-badge{font-size:var(--text-xs);font-weight:700;padding:var(--space-1) var(--space-3);border-radius:var(--radius-pill);background:var(--color-surface-2);color:var(--color-text-muted);border:1px solid var(--color-border)}.reading-status-badge{font-size:var(--text-xs);font-weight:800;padding:var(--space-1) var(--space-3);border-radius:var(--radius-pill)}.reading-status-badge.completed{background:var(--color-success-soft);color:var(--color-success-ink);border:1px solid var(--color-success-border)}.reading-status-badge.in-progress{background:var(--color-warning-soft);color:var(--color-warning-ink);border:1px solid var(--color-warning-border)}.reading-item-title{font-family:var(--font-display);font-size:var(--text-xl);font-weight:800;color:var(--color-text);margin:0;line-height:var(--leading-tight)}.reading-card-short-obj{font-size:var(--text-copy);color:var(--color-text-muted);line-height:1.5;margin:0}.reading-card-short-obj .ic{color:var(--color-primary)}.reading-item-left .rd-bar{max-width:320px}.reading-item-action{display:flex;align-items:center}.btn-open-reading{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:var(--space-3) var(--space-5);background:var(--color-primary);color:var(--color-on-primary);font-size:var(--text-sm);font-weight:700;border-radius:var(--radius-pill);border:none;cursor:pointer;transition:background var(--motion-base) var(--ease-out),transform var(--motion-base) var(--ease-out);white-space:nowrap}.reading-item-card:hover .btn-open-reading{background:var(--color-primary-hover);transform:translate(4px)}@media(max-width:640px){.reading-item-card{flex-direction:column;align-items:stretch;gap:var(--space-3);padding:var(--space-4)}.reading-item-title{font-size:var(--text-lg)}.reading-card-short-obj{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.reading-item-action .btn-open-reading{width:100%}.reading-item-action{display:block}.reading-item-card:hover,.reading-item-card:hover .btn-open-reading{transform:none}}.reading-reader-container{--rd-top: calc(var(--shell-safe-top, 0px) + 56px);max-width:880px;margin:0 auto;width:100%;display:flex;flex-direction:column;gap:var(--space-4)}@media(min-width:900px){.reading-reader-container{--rd-top: calc(var(--shell-topbar-h, 56px) + var(--shell-safe-top, 0px) + 60px)}}.reading-reader-header-card{background:var(--color-surface);border-radius:var(--radius-lg);border:1px solid var(--color-border);padding:var(--space-5);display:flex;flex-direction:column;gap:var(--space-3);box-shadow:var(--shadow-1)}.reading-reader-meta-row{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px}.rd-meta-chips{display:flex;gap:var(--space-2);flex-wrap:wrap}.reading-reader-title{font-family:var(--font-display);font-size:var(--text-2xl);font-weight:800;color:var(--color-text);line-height:var(--leading-tight);letter-spacing:-.02em;margin:0}.reading-full-objective-card{background:var(--color-primary-soft);border-left:4px solid var(--color-primary);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);color:var(--color-text)}.reading-full-objective-card>summary{list-style:none;cursor:pointer;min-height:44px;display:flex;align-items:center;gap:var(--space-2)}.reading-full-objective-card>summary::-webkit-details-marker{display:none}.reading-full-objective-card>summary:after{content:"\25be";font-size:1.15rem;line-height:1;margin-left:auto;color:var(--color-primary-ink);transition:transform var(--motion-fast) var(--ease-out)}.reading-full-objective-card[open]>summary:after{transform:rotate(180deg)}.obj-badge{font-size:var(--text-xs);font-weight:800;color:var(--color-primary-ink);text-transform:uppercase;letter-spacing:.05em;display:flex;align-items:center;gap:var(--space-2)}.obj-text{font-size:var(--text-copy);color:var(--color-text);line-height:1.6;margin:var(--space-2) 0 0}@media(max-width:640px){.reading-reader-header-card{padding:var(--space-4);gap:var(--space-2)}.reading-reader-title{font-size:var(--text-xl)}}.btn-tts-reading{display:inline-flex;align-items:center;gap:10px;padding:10px 22px;background:var(--color-primary);color:var(--color-on-primary);font-size:.92rem;font-weight:700;border-radius:var(--radius-pill);border:none;cursor:pointer;transition:transform var(--motion-base) var(--ease-out),box-shadow var(--motion-base) var(--ease-out);box-shadow:var(--shadow-2)}.btn-tts-reading:hover{transform:translateY(-2px);box-shadow:var(--shadow-3)}.btn-tts-reading.is-speaking{background:var(--color-danger);color:var(--color-on-danger);animation:pulseAudio 1.5s infinite}@keyframes pulseAudio{0%{transform:scale(1)}50%{transform:scale(1.03)}to{transform:scale(1)}}.reading-sheet-card{background:var(--color-surface);border-radius:var(--radius-lg);border:1px solid var(--color-border);padding:var(--space-6) var(--space-6);box-shadow:var(--shadow-1);line-height:1.8;font-size:1.125rem;color:var(--color-text)}@media(max-width:640px){.reading-sheet-card{padding:var(--space-3);font-size:1.0625rem;line-height:1.85}}.reading-narrative-paragraph{margin:0 auto var(--space-5);max-width:70ch;letter-spacing:-.005em}.reading-narrative-paragraph:last-child{margin-bottom:0}.reading-dialogue-speaker{font-weight:800;color:var(--color-primary-ink)}.reading-translation-section{display:flex;flex-direction:column;gap:var(--space-3)}.btn-toggle-reading-trans{align-self:flex-start;display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:var(--space-3) var(--space-5);background:var(--color-surface);color:var(--color-text);font-size:var(--text-sm);font-weight:700;border-radius:var(--radius-pill);border:1px solid var(--color-border-strong);cursor:pointer;transition:background var(--motion-fast) var(--ease-out)}.btn-toggle-reading-trans:hover{background:var(--color-surface-sunken)}.reading-translation-box{background:var(--color-surface-2);border-radius:var(--radius-lg);border:1px solid var(--color-border);padding:var(--space-5);font-size:1.05rem;line-height:1.8;color:var(--color-text);display:none;animation:fadeInTrans .3s ease-out;scroll-margin-top:calc(var(--rd-top, 64px) + 8px)}@media(max-width:640px){.reading-translation-box{padding:var(--space-4)}}@keyframes fadeInTrans{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.reading-score-banner{position:sticky;top:var(--rd-top);z-index:var(--z-sticky);background:var(--color-surface);border-radius:var(--radius-lg);border:1px solid var(--color-primary-border);box-shadow:var(--shadow-2);padding:var(--space-3) var(--space-4);display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--space-2) var(--space-3)}.rd-fillbar{display:flex;gap:4px;flex:1 1 140px;min-width:96px;order:1}.rd-fillbar .rd-seg{flex:1;height:8px;border-radius:var(--radius-pill);background:var(--color-surface-sunken);box-shadow:inset 0 0 0 1px var(--color-border-strong)}.rd-fillbar .rd-seg.is-correct{background:var(--color-success);box-shadow:none}.rd-fillbar .rd-seg.is-wrong{background:var(--color-danger);box-shadow:none}.reading-score-pills{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap;order:0}.reading-score-banner .btn-restart-reading{order:2}.reading-score-pill{font-size:var(--text-sm);font-weight:800;padding:4px 12px;border-radius:var(--radius-pill);display:inline-flex;align-items:center;gap:6px;font-variant-numeric:tabular-nums}.reading-score-pill.progress-pill{background:var(--color-primary-soft);color:var(--color-primary-ink);border:1px solid var(--color-primary-border)}.reading-score-pill.correct-pill{background:var(--color-success-soft);color:var(--color-success-ink);border:1px solid var(--color-success-border)}.reading-score-pill.wrong-pill{background:var(--color-danger-soft);color:var(--color-danger-ink);border:1px solid var(--color-danger-border)}.reading-score-pill.accuracy-pill{background:var(--color-warning-soft);color:var(--color-warning-ink);border:1px solid var(--color-warning-border)}.btn-restart-reading{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:44px;padding:var(--space-2) var(--space-4);background:var(--color-surface);color:var(--color-text);font-size:var(--text-sm);font-weight:700;border-radius:var(--radius-pill);border:1px solid var(--color-border-strong);cursor:pointer;transition:background var(--motion-fast) var(--ease-out)}.btn-restart-reading:hover{background:var(--color-warning-soft);color:var(--color-warning-ink);border-color:var(--color-warning)}@media(max-width:640px){.reading-score-banner{padding:var(--space-2) var(--space-3);gap:var(--space-2);flex-wrap:nowrap}.reading-score-pill{font-size:var(--text-xs);padding:var(--space-1) var(--space-2);white-space:nowrap}.reading-score-pill.correct-pill,.reading-score-pill.wrong-pill,.reading-score-pill.accuracy-pill{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.btn-restart-reading{width:44px;min-height:44px;padding:0}.btn-restart-reading .rd-btn-label{display:none}.btn-restart-reading{flex:none}}.reading-blank-wrapper{display:inline-flex;align-items:center;flex-wrap:wrap;gap:var(--space-1);margin:var(--space-0) var(--space-1);vertical-align:middle;line-height:1.2;position:relative}.blank-chip{position:relative;display:inline-flex;align-items:center;gap:var(--space-2);min-height:34px;padding:var(--space-0) var(--space-3) var(--space-0) var(--space-1);border-radius:var(--radius-pill);border:2px dashed var(--color-border-strong);background:var(--color-surface-2);color:var(--color-text);font-family:inherit;font-size:.9em;font-weight:700;cursor:pointer;transition:background var(--motion-fast) var(--ease-out),border-color var(--motion-fast) var(--ease-out)}.blank-chip:after{content:"";position:absolute;inset:-6px -3px}.blank-chip:hover{background:var(--color-primary-soft);border-color:var(--color-primary)}.blank-chip-num{display:inline-grid;place-items:center;min-width:24px;height:24px;padding:0 4px;border-radius:var(--radius-pill);background:var(--color-primary-soft);color:var(--color-primary-ink);font-size:.8em;font-weight:800}.blank-chip.is-correct{border-style:solid;border-color:var(--color-success);background:var(--color-success-soft);color:var(--color-success-ink)}.blank-chip.is-wrong{border-style:solid;border-color:var(--color-danger);background:var(--color-danger-soft);color:var(--color-danger-ink)}.blank-chip.is-wrong .blank-chip-text{text-decoration:line-through}.blank-chip-mark{font-size:.8em}.blank-chip-solution{display:inline-flex;align-items:center;min-height:28px;padding:var(--space-0) var(--space-3);border-radius:var(--radius-pill);background:var(--color-success-soft);color:var(--color-success-ink);border:1px solid var(--color-success-border);font-size:.9em;font-weight:700}.reading-blank-wrapper.is-open-blank .blank-chip{border-style:solid;border-color:var(--color-primary);background:var(--color-primary-soft)}.rd-sheet-root{position:fixed;inset:0;z-index:var(--z-modal);display:flex;align-items:flex-end;justify-content:center;background:var(--color-overlay)}.rd-sheet-root[hidden]{display:none}.rd-sheet{width:100%;max-width:560px;max-height:92vh;max-height:92dvh;overflow-y:auto;overscroll-behavior:contain;box-sizing:border-box;display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-3) var(--space-4) calc(var(--space-4) + env(safe-area-inset-bottom,0px));background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border);border-bottom:0;border-radius:var(--radius-lg) var(--radius-lg) 0 0;box-shadow:var(--shadow-3);animation:rdSheetUp var(--motion-base) var(--ease-out)}@keyframes rdSheetUp{0%{transform:translateY(24px);opacity:0}to{transform:translateY(0);opacity:1}}@media(min-width:641px){.rd-sheet-root{align-items:center;padding:var(--space-5)}.rd-sheet{border-radius:var(--radius-lg);border-bottom:1px solid var(--color-border);padding-bottom:var(--space-4)}}.rd-sheet-grab{align-self:center;width:40px;height:4px;border-radius:var(--radius-pill);background:var(--color-border-strong)}@media(min-width:641px){.rd-sheet-grab{display:none}}.rd-sheet-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.rd-sheet-title{margin:0;font-size:var(--text-lg);font-weight:var(--weight-extrabold);color:var(--color-text)}.rd-sheet-x{display:inline-grid;place-items:center;width:44px;height:44px;border-radius:var(--radius-pill);border:1px solid var(--color-border-strong);background:var(--color-surface);color:var(--color-text);cursor:pointer}.rd-sheet-x:hover{background:var(--color-surface-sunken)}.rd-sheet-context{margin:0;padding:var(--space-3);border-radius:var(--radius-md);background:var(--color-surface-2);border:1px solid var(--color-border);font-size:var(--text-base);line-height:1.6;color:var(--color-text)}.rd-sheet-gap{padding:var(--space-0) var(--space-2);border-radius:var(--radius-sm);background:var(--color-primary-soft);color:var(--color-primary-ink);font-weight:800}.rd-sheet-gap.is-correct{background:var(--color-success-soft);color:var(--color-success-ink)}.rd-sheet-gap.is-wrong{background:var(--color-danger-soft);color:var(--color-danger-ink);text-decoration:line-through}.rd-sheet-options{display:grid;gap:var(--space-3)}.btn-blank-opt{display:flex;align-items:center;gap:var(--space-3);width:100%;min-height:56px;padding:var(--space-2) var(--space-4);box-sizing:border-box;font-family:inherit;font-size:var(--text-base);font-weight:700;text-align:left;border-radius:var(--radius-md);border:2px solid var(--color-border-strong);background:var(--color-surface);color:var(--color-text);cursor:pointer;transition:background var(--motion-fast) var(--ease-out),border-color var(--motion-fast) var(--ease-out)}.btn-blank-opt:hover:not([aria-disabled=true]){background:var(--color-primary-soft);border-color:var(--color-primary)}.btn-blank-opt[aria-disabled=true]{cursor:default}.btn-blank-opt.is-correct{background:var(--color-success-soft);color:var(--color-success-ink);border-color:var(--color-success)}.btn-blank-opt.is-correct:before{content:"\2713";font-weight:800}.btn-blank-opt.is-wrong{background:var(--color-danger-soft);color:var(--color-danger-ink);border-color:var(--color-danger);text-decoration:line-through}.btn-blank-opt.is-wrong:before{content:"\2715";font-weight:800;text-decoration:none;display:inline-block}.btn-blank-opt.is-solution{background:var(--color-success-soft);color:var(--color-success-ink);border-color:var(--color-success);border-style:dashed}.btn-blank-opt.is-solution:before{content:"\2713";font-weight:800}.rd-sheet-feedback:empty{display:none}.rd-sheet-feedback{padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-surface-2);font-size:var(--text-copy);line-height:1.55}.rd-sheet-feedback strong{display:block;font-size:var(--text-base)}.rd-sheet-feedback p{margin:var(--space-1) 0 0}.rd-sheet-why{font-weight:var(--weight-bold)}.rd-sheet-feedback.is-correct{background:var(--color-success-soft);border-color:var(--color-success-border);color:var(--color-success-ink)}.rd-sheet-feedback.is-wrong{background:var(--color-warning-soft);border-color:var(--color-warning-border);color:var(--color-warning-ink)}.rd-sheet-actions{display:flex;gap:var(--space-3);position:sticky;bottom:calc(-1 * (var(--space-4) + env(safe-area-inset-bottom,0px)));margin:0 calc(-1 * var(--space-4)) calc(-1 * (var(--space-4) + env(safe-area-inset-bottom,0px)));padding:var(--space-3) var(--space-4) calc(var(--space-4) + env(safe-area-inset-bottom,0px));background:var(--color-surface);border-top:1px solid var(--color-border)}.rd-sheet-actions:empty{display:none}.rd-sheet-actions .btn{flex:1}@media(prefers-reduced-motion:reduce){.rd-sheet{animation:none}.reading-category-card,.reading-subcat-card,.reading-item-card,.btn-open-reading,.blank-chip,.btn-blank-opt{transition:none}.reading-category-card:hover,.reading-subcat-card:hover,.reading-item-card:hover{transform:none}.btn-tts-reading.is-speaking,.reading-translation-box{animation:none}}.reading-full-sheet-layout{display:flex;flex-direction:column;gap:var(--space-6);width:100%}.reading-narrative-fullwidth{font-size:1.125rem;line-height:2;color:var(--color-text);letter-spacing:-.005em;width:100%}.reading-narrative-fullwidth p{margin:0 auto var(--space-5);max-width:70ch}.reading-narrative-fullwidth p:last-child{margin-bottom:0}.reading-explanations-footer{display:flex;flex-direction:column;gap:var(--space-4);background:var(--color-surface-2);border-radius:var(--radius-lg);border:1px solid var(--color-border);padding:var(--space-5);margin-top:var(--space-2)}.explanations-footer-header{display:flex;align-items:center;gap:12px;padding-bottom:12px;border-bottom:1px solid var(--color-border)}.explanations-header-icon{width:42px;height:42px;border-radius:var(--radius-md);background:var(--color-warning-soft);color:var(--color-warning-ink);border:1px solid var(--color-warning-border);display:flex;align-items:center;justify-content:center;font-size:1.25rem;flex-shrink:0}.explanations-footer-title{font-size:var(--text-base);font-weight:800;color:var(--color-text);margin:0}.explanations-footer-subtitle{font-size:var(--text-copy);color:var(--color-text-muted);margin:var(--space-0) 0 0 0}.explanations-cards-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(320px,100%),1fr));gap:12px}.fill-explanation-card{background:var(--color-surface);border-radius:var(--radius-md);border:1px solid var(--color-border);padding:var(--space-3) var(--space-4);font-size:var(--text-copy);line-height:1.5;box-shadow:var(--shadow-1)}.fill-explanation-card.is-pending{border-left:4px solid var(--color-border-strong);padding-block:8px}.fill-explanation-card.is-pending .fill-exp-card-header{margin-bottom:0}.fill-explanation-card.is-pending .fill-exp-placeholder-text{display:none}.fill-explanation-card.is-correct{border-color:var(--color-success-border);border-left:4px solid var(--color-success);background:var(--color-success-soft)}.fill-explanation-card.is-wrong{border-color:var(--color-danger-border);border-left:4px solid var(--color-danger);background:var(--color-danger-soft)}.fill-exp-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-2)}.fill-exp-slot-tag{font-weight:800;font-size:var(--text-sm);background:var(--color-primary-soft);color:var(--color-primary-ink);border:1px solid var(--color-primary-border);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm)}.fill-exp-status-pill{font-size:var(--text-xs);font-weight:700;display:flex;align-items:center;gap:4px}.fill-explanation-card.is-correct .fill-exp-status-pill{color:var(--color-success-ink)}.fill-explanation-card.is-wrong .fill-exp-status-pill{color:var(--color-danger-ink)}.fill-explanation-card.is-pending .fill-exp-status-pill{color:var(--color-text-muted)}.fill-exp-solution-row{font-size:var(--text-copy);margin-bottom:var(--space-1);color:var(--color-text)}.fill-solution-label{color:var(--color-text-muted);font-weight:600;margin-right:4px}.fill-solution-word{font-weight:800;color:var(--color-success-ink);background:var(--color-success-soft);border:1px solid var(--color-success-border);padding:var(--space-0) var(--space-2);border-radius:var(--radius-sm)}.fill-exp-explanation-text{color:var(--color-text);font-size:var(--text-copy);line-height:1.5}.fill-exp-placeholder-text{color:var(--color-text-muted);font-size:var(--text-copy);font-style:italic}.reading-record-banner{display:flex;align-items:center;gap:12px;background:var(--color-warning-soft);border:1.5px solid var(--color-warning-border);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);color:var(--color-warning-ink);font-size:var(--text-copy);line-height:1.45;box-shadow:var(--shadow-1)}.reading-record-banner .ic{font-size:1.3rem;color:var(--color-warning);flex-shrink:0}@media(max-width:768px){.reading-narrative-fullwidth{font-size:1.0625rem;line-height:2}.explanations-cards-grid{grid-template-columns:1fr}.reading-explanations-footer{padding:var(--space-4)}}.btn-switch-active-reading{background:var(--color-success)!important;color:var(--color-surface)!important;border-color:var(--color-success)!important;box-shadow:var(--shadow-1)!important}.btn-switch-active-reading:hover{background:var(--color-success-ink)!important;box-shadow:var(--shadow-2)!important}.btn-portal-back{display:inline-flex;align-items:center;gap:8px;background:var(--color-surface)!important;color:var(--color-text)!important;border:1px solid var(--color-border-strong)!important;border-radius:9999px!important;padding:8px 18px!important;font-size:.88rem!important;font-weight:700!important;cursor:pointer;box-shadow:var(--shadow-1)!important;transition:all .2s cubic-bezier(.16,1,.3,1)!important}.btn-portal-back:hover{background:var(--color-surface)!important;color:var(--color-primary)!important;border-color:var(--color-primary)!important;transform:translateY(-2px);box-shadow:var(--shadow-2)!important}.readings-breadcrumbs{display:inline-flex;align-items:center;gap:8px;background:var(--color-surface)!important;border:1px solid var(--color-border)!important;border-radius:9999px!important;padding:7px 16px!important;font-size:.84rem!important;font-weight:700!important;color:var(--color-text-muted)!important;box-shadow:var(--shadow-1)!important}.btn-reading-audio,.btn-tts-reading{display:inline-flex;align-items:center;gap:8px;background:var(--color-surface)!important;color:var(--color-success-ink)!important;border:1px solid var(--color-success-border)!important;border-radius:9999px!important;padding:8px 18px!important;font-size:.86rem!important;font-weight:700!important;box-shadow:var(--shadow-1)!important;cursor:pointer;transition:all .2s ease}.btn-reading-audio:hover,.btn-tts-reading:hover{background:var(--color-success-soft)!important;border-color:var(--color-success)!important;transform:translateY(-1px)}.record-subcat-nav-bar{grid-column:1 / -1;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;padding-bottom:var(--space-3);margin-bottom:var(--space-2)}.record-quiz-card[data-record-reading]:hover{border-color:var(--color-warning-border)!important;box-shadow:var(--shadow-2)!important}.record-quiz-card[data-record-reading]:hover .record-card-action{color:var(--color-warning)!important}.readings-top-bar{display:flex!important;align-items:center!important;justify-content:space-between!important;flex-wrap:wrap!important;gap:12px!important;width:100%!important;background:transparent!important;border:none!important;box-shadow:none!important;padding:6px 0!important;margin-bottom:.8rem!important}.readings-breadcrumbs{display:inline-flex!important;align-items:center!important;flex-wrap:wrap!important;gap:6px!important;background:var(--color-surface-glass)!important;backdrop-filter:blur(8px)!important;-webkit-backdrop-filter:blur(8px)!important;border:1px solid var(--color-border)!important;border-radius:9999px!important;padding:6px 14px!important;font-size:.85rem!important;box-shadow:var(--shadow-1)!important;max-width:100%!important;overflow-x:auto!important;scrollbar-width:none!important;-webkit-overflow-scrolling:touch!important}.readings-breadcrumbs::-webkit-scrollbar{display:none!important}.crumb-node{display:inline-flex!important;align-items:center!important;gap:6px!important;color:var(--color-text-muted)!important;text-decoration:none!important;padding:4px 10px!important;border-radius:9999px!important;font-weight:600!important;font-size:.84rem!important;cursor:pointer!important;transition:all .2s cubic-bezier(.16,1,.3,1)!important;white-space:nowrap!important}.crumb-node:hover{color:var(--color-success-ink)!important;background:var(--color-success-soft)!important;transform:translateY(-1px)!important}.crumb-node:active{transform:translateY(0)!important}.crumb-sep{font-size:.65rem!important;color:var(--color-text-faint)!important;opacity:.7!important;margin:0 1px!important;user-select:none!important}.crumb-current,.readings-breadcrumbs span.active{display:inline-flex!important;align-items:center!important;gap:6px!important;color:var(--color-text)!important;font-weight:700!important;font-size:.84rem!important;padding:4px 10px!important;background:var(--color-surface-sunken)!important;border-radius:9999px!important;white-space:nowrap!important}.readings-top-actions{display:inline-flex!important;align-items:center!important;gap:10px!important;margin-left:auto!important}.readings-header-pill{display:inline-flex;align-items:center!important;gap:8px!important;background:var(--color-warning-soft)!important;border:1px solid var(--color-warning-border)!important;border-radius:9999px!important;padding:6px 14px!important;font-size:.84rem!important;font-weight:700!important;color:var(--color-warning-ink)!important;box-shadow:var(--shadow-1)!important}.readings-header-pill[style*="display: none"]{display:none!important}@media(max-width:640px){.readings-top-bar{flex-direction:column!important;align-items:stretch!important;gap:10px!important}.readings-breadcrumbs{width:100%!important;justify-content:flex-start!important}.readings-top-actions{width:100%!important;justify-content:flex-end!important;margin-left:0!important}}.rd-filterbar{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3);width:100%}.rd-search{position:relative;flex:1 1 240px;min-width:0;display:flex;align-items:center}.rd-search>.ic{position:absolute;left:var(--space-4);color:var(--color-text-muted);pointer-events:none}.rd-search-input{width:100%;min-height:48px;box-sizing:border-box;padding:0 52px 0 calc(var(--space-4) + 1.6rem);border:1px solid var(--color-border-strong);border-radius:var(--radius-pill);background:var(--color-surface);color:var(--color-text);font:inherit;font-size:var(--text-base, 1rem);-webkit-appearance:none;appearance:none}.rd-search-input::placeholder{color:var(--color-text-muted);opacity:1}.rd-search-input::-webkit-search-cancel-button{-webkit-appearance:none;display:none}.rd-search-input:focus-visible{outline:3px solid var(--color-focus);outline-offset:2px}.rd-search-clear{position:absolute;right:2px;top:50%;transform:translateY(-50%);width:48px;height:48px;display:inline-flex;align-items:center;justify-content:center;border:none;background:transparent;color:var(--color-text-muted);border-radius:50%;cursor:pointer;font-size:1rem}.rd-search-clear[hidden]{display:none}.rd-search-clear:hover{color:var(--color-text);background:var(--color-primary-soft)}.rd-search-clear:focus-visible{outline:3px solid var(--color-focus);outline-offset:-3px}.rd-filterbar .rd-seg{display:inline-flex;padding:var(--space-1);gap:var(--space-2);border:1px solid var(--color-border-strong);border-radius:var(--radius-pill);background:var(--color-surface-sunken)}.rd-seg-btn{min-height:48px;padding:0 var(--space-4);border:1px solid var(--color-border-strong);border-radius:var(--radius-pill);background:var(--color-surface);color:var(--color-text);font:inherit;font-size:var(--text-sm);font-weight:var(--weight-bold);cursor:pointer}.rd-seg-btn[aria-pressed=true]{background:var(--color-primary);color:var(--color-on-primary);border-color:var(--color-primary)}.rd-seg-btn:not([aria-pressed=true]):hover{background:var(--color-primary-soft)}.rd-seg-btn:focus-visible{outline:3px solid var(--color-focus);outline-offset:2px}.reading-item-card[hidden]{display:none}.rd-list-empty{text-align:center;padding:var(--space-6) var(--space-4);border:1px dashed var(--color-border-strong);border-radius:var(--radius-lg);background:var(--color-surface);display:flex;flex-direction:column;align-items:center;gap:var(--space-3)}.rd-list-empty[hidden]{display:none}.rd-list-empty-text{margin:0;color:var(--color-text);font-weight:var(--weight-semibold)}.rd-list-empty-btn{min-height:48px;padding:0 var(--space-5);border-radius:var(--radius-pill);border:1px solid var(--color-border-strong);background:var(--color-surface);color:var(--color-primary-ink);font:inherit;font-weight:var(--weight-bold);cursor:pointer}.rd-list-empty-btn:hover{background:var(--color-primary-soft)}.rd-list-empty-btn:focus-visible{outline:3px solid var(--color-focus);outline-offset:2px}@media(max-width:640px){.rd-filterbar{flex-direction:column;align-items:stretch}.rd-filterbar .rd-seg{display:flex}.rd-filterbar .rd-search{flex:0 0 auto}.rd-seg-btn{flex:1;padding:0 var(--space-2)}}.rd-loading{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-2) 0}.rd-skel{display:block;height:1rem;border-radius:var(--radius-md);background:var(--color-surface-sunken)}.rd-loading-text{margin:var(--space-2) 0 0;color:var(--color-text-muted);font-weight:var(--weight-semibold);text-align:center}@media(prefers-reduced-motion:no-preference){.rd-skel{animation:rdSkelPulse 1.4s ease-in-out infinite}@keyframes rdSkelPulse{0%,to{opacity:1}50%{opacity:.45}}}.rd-load-error{display:flex;flex-direction:column;align-items:center;gap:var(--space-4);padding:var(--space-5) var(--space-3);text-align:center}.rd-load-error-text{margin:0;color:var(--color-text);font-weight:var(--weight-semibold)}.rd-load-retry{min-height:48px;padding:0 var(--space-5);border:none;border-radius:var(--radius-pill);cursor:pointer;background:var(--color-primary);color:var(--color-on-primary);font:inherit;font-weight:var(--weight-bold)}.rd-load-retry:hover{background:var(--color-primary-hover)}.rd-load-retry:focus-visible{outline:3px solid var(--color-focus);outline-offset:2px}.rd-level{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3);width:100%}.rd-level:empty{display:none}.rd-level--records{grid-column:1 / -1}.rd-level-label{font-size:var(--text-sm);font-weight:var(--weight-bold);color:var(--color-text-muted)}.rd-level-group{display:inline-flex;padding:var(--space-1);gap:var(--space-2);border:1px solid var(--color-border-strong);border-radius:var(--radius-pill);background:var(--color-surface-sunken);max-width:100%}.rd-level-btn{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:0;min-height:48px;min-width:44px;padding:2px var(--space-5);border:1px solid var(--color-border-strong);border-radius:var(--radius-pill);background:var(--color-surface);color:var(--color-text);font:inherit;line-height:1.2;cursor:pointer}.rd-level-name{font-size:var(--text-sm);font-weight:var(--weight-bold)}.rd-level-count{font-size:var(--text-xs);font-weight:var(--weight-semibold);color:var(--color-text-muted)}.rd-level-btn[aria-checked=true]{background:var(--color-primary);color:var(--color-on-primary);border-color:var(--color-primary)}.rd-level-btn[aria-checked=true] .rd-level-count{color:var(--color-on-primary)}.rd-level-btn:not([aria-checked=true]):not(:disabled):hover{background:var(--color-primary-soft)}.rd-level-btn:focus-visible{outline:3px solid var(--color-focus);outline-offset:2px}.rd-level-btn:disabled{cursor:not-allowed;opacity:.7}.rd-level-btn[hidden]{display:none}@media(max-width:640px){.rd-level{flex-direction:column;align-items:stretch;gap:var(--space-1)}.rd-level-group{display:flex}.rd-level-btn{flex:1;padding:2px var(--space-2)}}.rd-level-chip{text-transform:none}.rd-topics{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-1) var(--space-2);margin-top:var(--space-2);font-size:var(--text-xs)}.rd-topics-label{font-weight:var(--weight-bold);color:var(--color-text-muted)}.rd-topic-chip{display:inline-flex;align-items:center;padding:2px var(--space-2);border-radius:var(--radius-pill);border:1px solid var(--color-primary-border);background:var(--color-primary-soft);color:var(--color-primary-ink);font-weight:var(--weight-semibold);line-height:1.4}.rd-pron-card{display:flex;align-items:center;gap:var(--space-4);width:100%;box-sizing:border-box;min-height:72px;padding:var(--space-4);text-decoration:none;color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:var(--radius-lg)}.rd-pron-card:hover{background:var(--color-primary-soft)}.rd-pron-card:focus-visible{outline:3px solid var(--color-focus);outline-offset:2px}.rd-pron-card__icon{display:grid;place-items:center;flex:none;width:48px;height:48px;border-radius:var(--radius-pill);background:var(--color-primary-soft);color:var(--color-primary-ink);font-size:1.2rem}.rd-pron-card__body{display:flex;flex-direction:column;gap:var(--space-0);min-width:0;flex:1}.rd-pron-card__title{font-weight:var(--weight-extrabold);font-size:var(--text-base)}.rd-pron-card__desc{font-size:var(--text-copy);color:var(--color-text-muted);line-height:var(--leading-snug)}.rd-pron-card__go{color:var(--color-text-muted)}@media(max-width:640px){.rd-pron-card{gap:var(--space-3);min-height:64px;padding:var(--space-3)}.rd-pron-card__icon{width:44px;height:44px}.rd-pron-card__desc{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}}@media(max-width:640px){#readerPronunciationSlot .pr-entry{flex-wrap:nowrap;padding:var(--space-2) var(--space-3);gap:var(--space-2)}#readerPronunciationSlot .pr-entry-icon{display:none}#readerPronunciationSlot .pr-entry-text{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}#readerPronunciationSlot .pr-toggle{flex:1 1 100%;min-height:44px}}@media(pointer:coarse){.reading-blank-wrapper{margin:var(--space-1) var(--space-2)}.blank-chip,.btn-restart-reading{min-height:44px}}@media(max-height:500px)and (orientation:landscape){.reading-sheet-card{padding:var(--space-4)}.reading-reader-header-card{padding:var(--space-4);gap:var(--space-2)}.reading-reader-container{gap:var(--space-3)}}#viewReadings.rd-pron-only #readerAudioPlayer,#viewReadings.rd-pron-only #readerAudioPlayerS2E,#viewReadings.rd-pron-only #readerTranslationSection,#viewReadings.rd-pron-only #readingRecordNoticeBanner,#viewReadings.rd-pron-only #readerScoreBanner{display:none!important}[data-reading-level=advanced]{--color-primary: #C2410C;--color-primary-hover: #9A3412;--color-primary-ink: #7C2D12;--color-primary-soft: #FFEDD5;--color-primary-border: #FDBA74;--color-focus: #9A3412}:root[data-theme=dark] [data-reading-level=advanced]{--color-primary: #FB923C;--color-primary-hover: #FDBA74;--color-primary-ink: #FED7AA;--color-primary-soft: #3A1D0B;--color-primary-border: #9A3412;--color-focus: #FDBA74}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) [data-reading-level=advanced]{--color-primary: #FB923C;--color-primary-hover: #FDBA74;--color-primary-ink: #FED7AA;--color-primary-soft: #3A1D0B;--color-primary-border: #9A3412;--color-focus: #FDBA74}}[data-reading-level=basic]{--color-primary: #047857;--color-primary-hover: #065F46;--color-primary-ink: #064E3B;--color-primary-soft: #D1FAE5;--color-primary-border: #6EE7B7;--color-focus: #065F46}:root[data-theme=dark] [data-reading-level=basic]{--color-primary: #34D399;--color-primary-hover: #6EE7B7;--color-primary-ink: #A7F3D0;--color-primary-soft: #0B2E24;--color-primary-border: #047857;--color-focus: #6EE7B7}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) [data-reading-level=basic]{--color-primary: #34D399;--color-primary-hover: #6EE7B7;--color-primary-ink: #A7F3D0;--color-primary-soft: #0B2E24;--color-primary-border: #047857;--color-focus: #6EE7B7}}[data-level-edge=basic]{--level-edge: var(--level-basic)}[data-level-edge=intermediate]{--level-edge: var(--level-intermediate)}[data-level-edge=advanced]{--level-edge: var(--level-advanced)}[data-level-edge] :is(.reading-category-card,.reading-subcat-card,.reading-item-card,.rd-continue-card,.record-subcat-folder-card,.record-quiz-card,.rec-pron-tile,.rec-pron-sub){--rc-bw: 2px;border-width:2px;border-color:var(--level-edge)}@media(min-width:1100px){.readings-categories-grid{--rd-mascot-w: 96px}}@media(prefers-reduced-motion:reduce){.reading-category-card:hover,.reading-category-card:hover .category-icon-box{transform:none}.reading-category-card:before{transition:none}}.record-quiz-card.lst-rec-card:hover{border-color:var(--cyan-border-strong)}.record-quiz-card.lst-rec-card:hover .record-card-action{background:var(--cyan);border-color:var(--cyan);color:var(--color-on-primary)}#viewListenings{--color-primary: #9F1239;--color-primary-hover: #881337;--color-primary-ink: #881337;--color-primary-soft: #FFF1F2;--color-primary-border: #FDA4AF;--color-focus: #881337;--color-focus-ring: rgba(159, 18, 57, .35)}:root[data-theme=dark] #viewListenings{--color-primary: #FB7185;--color-primary-hover: #FDA4AF;--color-primary-ink: #FECDD3;--color-primary-soft: #3B1420;--color-primary-border: #9F1239;--color-focus: #FDA4AF;--color-focus-ring: rgba(253, 164, 175, .45)}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) #viewListenings{--color-primary: #FB7185;--color-primary-hover: #FDA4AF;--color-primary-ink: #FECDD3;--color-primary-soft: #3B1420;--color-primary-border: #9F1239;--color-focus: #FDA4AF;--color-focus-ring: rgba(253, 164, 175, .45)}}#viewListenings{display:none;flex-direction:column;gap:var(--space-5);width:100%;background:transparent!important;border:none!important;box-shadow:none!important;padding:0!important;animation:lstFade .3s ease-out}@keyframes lstFade{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.lst-step-topics{flex-direction:column;gap:var(--space-5);width:100%}.lst-step-player{width:100%}.lst-note{font-size:var(--text-copy);color:var(--color-text-muted)}.lst-continue-slot:empty{display:none}.lst-continue{display:flex;align-items:center;gap:var(--space-4);width:100%;box-sizing:border-box;min-height:64px;padding:var(--space-3) var(--space-4);text-align:left;cursor:pointer;font-family:inherit;color:var(--color-primary-ink);background:var(--color-primary-soft);border:1px solid var(--color-primary-border);border-radius:var(--radius-lg);transition:border-color var(--motion-fast) var(--ease-out),box-shadow var(--motion-fast) var(--ease-out)}.lst-continue:hover{border-color:var(--color-primary);box-shadow:var(--shadow-2)}.lst-continue-icon{flex:none;display:grid;place-items:center;width:44px;height:44px;border-radius:var(--radius-pill);background:var(--color-primary);color:var(--color-on-primary);font-size:var(--text-base)}.lst-continue-text{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.lst-continue-kicker{font-size:var(--text-xs);font-weight:var(--weight-bold);text-transform:uppercase;letter-spacing:.05em}.lst-continue-title{font-size:var(--text-lg);font-weight:var(--weight-extrabold);color:var(--color-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lst-continue-meta{font-size:var(--text-sm);color:var(--color-text-muted)}.lst-continue-arrow{flex:none}.lst-topic-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-4);width:100%}@media(max-width:1100px){.lst-topic-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:700px){.lst-topic-grid{grid-template-columns:1fr;gap:var(--space-3)}}.lst-topic-card{display:flex;flex-direction:column;gap:var(--space-2);box-sizing:border-box;width:100%;padding:var(--space-4);text-align:left;cursor:pointer;font-family:inherit;color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-1);transition:border-color var(--motion-fast) var(--ease-out),box-shadow var(--motion-fast) var(--ease-out),transform var(--motion-fast) var(--ease-out)}.lst-topic-card:hover{border-color:var(--color-primary);box-shadow:var(--shadow-2);transform:translateY(-2px)}.lst-topic-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.lst-topic-icon{display:grid;place-items:center;flex:none;width:44px;height:44px;border-radius:var(--radius-md);background:var(--color-primary-soft);color:var(--color-primary-ink);border:1px solid var(--color-primary-border);font-size:var(--text-lg)}.lst-topic-status{display:inline-flex;align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-3);border-radius:var(--radius-pill);font-size:var(--text-xs);font-weight:var(--weight-bold);line-height:1.2;white-space:nowrap;background:var(--color-surface-sunken);color:var(--color-text-muted);border:1px solid var(--color-border)}.lst-topic-status.is-current{background:var(--color-primary-soft);color:var(--color-primary-ink);border-color:var(--color-primary-border)}.lst-topic-status.is-great{background:var(--color-success-soft);color:var(--color-success-ink);border-color:var(--color-success-border)}.lst-topic-status.is-ok{background:var(--color-warning-soft);color:var(--color-warning-ink);border-color:var(--color-warning-border)}.lst-topic-status.is-low{background:var(--color-info-soft);color:var(--color-info-ink);border-color:var(--color-info-border)}.lst-topic-title{display:block;font-size:var(--text-lg);font-weight:var(--weight-extrabold);line-height:var(--leading-tight);color:var(--color-text)}.lst-topic-desc{display:block;flex-grow:1;font-size:var(--text-copy);line-height:var(--leading-snug);color:var(--color-text-muted)}.lst-topic-progress{display:flex;flex-direction:column;gap:var(--space-2)}.lst-topic-progress-text{font-size:var(--text-xs);font-weight:var(--weight-semibold);color:var(--color-text-muted);font-variant-numeric:tabular-nums}.lst-track{display:block;width:100%;height:8px;background:var(--color-border);border-radius:var(--radius-pill);overflow:hidden}.lst-track>span{display:block;height:100%;border-radius:var(--radius-pill);background:var(--color-primary);transition:width .35s ease}.lst-topic-foot{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.lst-topic-meta{display:block;font-size:var(--text-xs);font-weight:var(--weight-semibold);color:var(--color-text-muted)}.lst-topic-cta{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);border-radius:var(--radius-pill);font-size:var(--text-sm);font-weight:var(--weight-bold);background:var(--color-primary-soft);color:var(--color-primary-ink);transition:background var(--motion-fast) var(--ease-out),color var(--motion-fast) var(--ease-out)}.lst-topic-card:hover .lst-topic-cta{background:var(--color-primary);color:var(--color-on-primary)}@media(max-width:700px){.lst-topic-card{display:grid;grid-template-columns:44px 1fr;column-gap:var(--space-3);row-gap:var(--space-1);padding:var(--space-3) var(--space-4);min-height:48px}.lst-topic-card:hover{transform:none}.lst-topic-head{display:contents}.lst-topic-icon{grid-column:1;grid-row:1 / span 2;align-self:center}.lst-topic-title{grid-column:2;grid-row:1;align-self:end;font-size:var(--text-base)}.lst-topic-status{grid-column:2;grid-row:2;justify-self:start}.lst-topic-desc{display:none}.lst-topic-progress{grid-column:1 / -1;margin-top:var(--space-1)}.lst-topic-foot{grid-column:1 / -1}}.lst-player{display:flex;flex-direction:column;gap:var(--space-4);width:100%;max-width:860px;margin:0 auto}.lst-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-4) var(--space-5);box-shadow:var(--shadow-1);color:var(--color-text)}@media(max-width:600px){.lst-card{padding:var(--space-4)}}.lst-banner{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);font-size:var(--text-sm);line-height:var(--leading-snug);border:1px solid transparent}.lst-banner.record{background:var(--color-warning-soft);border-color:var(--color-warning-border);color:var(--color-warning-ink)}.lst-banner.done{background:var(--color-success-soft);border-color:var(--color-success-border);color:var(--color-success-ink)}.lst-banner>span{flex:1;min-width:200px}.lst-session-head{display:flex;flex-direction:column;gap:var(--space-3)}.lst-session-row{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--space-3)}.lst-chip-row{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap;width:100%}.lst-chips{display:flex;gap:var(--space-2);flex-wrap:wrap;flex:1}.lst-chip{display:inline-flex;align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-3);border-radius:var(--radius-pill);font-size:var(--text-xs);font-weight:var(--weight-bold);line-height:1.3;background:var(--color-primary-soft);color:var(--color-primary-ink);border:1px solid var(--color-primary-border)}.lst-chip.ok{background:var(--color-success-soft);color:var(--color-success-ink);border-color:var(--color-success-border)}.lst-chip.gold{background:var(--color-warning-soft);color:var(--color-warning-ink);border-color:var(--color-warning-border)}.lst-restart{padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--color-surface-2);border:1px solid var(--color-border-strong)}.lst-restart[hidden]{display:none}.lst-restart p{margin:0 0 var(--space-3);font-size:var(--text-copy);line-height:var(--leading-snug)}.lst-restart-actions{display:flex;gap:var(--space-2);flex-wrap:wrap}.lst-stepper{display:flex;gap:var(--space-2);overflow-x:auto;padding:var(--space-2) var(--space-1);scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch}.lst-step{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;gap:var(--space-1);min-width:44px;height:44px;padding:0 var(--space-2);border-radius:var(--radius-md);border:1.5px solid var(--color-border-strong);background:var(--color-surface);color:var(--color-text);font-family:inherit;font-size:var(--text-sm);font-weight:var(--weight-extrabold);font-variant-numeric:tabular-nums;cursor:pointer;scroll-snap-align:center;transition:background var(--motion-fast) var(--ease-out),border-color var(--motion-fast) var(--ease-out)}.lst-step:hover{background:var(--color-primary-soft);border-color:var(--color-primary)}.lst-step.started{border-style:dashed}.lst-step.done-full{background:var(--color-success-soft);border-color:var(--color-success);color:var(--color-success-ink)}.lst-step.done-part{background:var(--color-warning-soft);border-color:var(--color-warning);color:var(--color-warning-ink)}.lst-step.done-low{background:var(--color-danger-soft);border-color:var(--color-danger);color:var(--color-danger-ink)}.lst-step.active{box-shadow:0 0 0 2px var(--color-surface),0 0 0 4px var(--color-primary)}.lst-step:not(.done-full):not(.done-part):not(.done-low).active{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-on-primary)}.lst-step-mark{font-size:var(--text-xs)}.lst-listen-head{display:flex;flex-direction:column;gap:var(--space-2)}.lst-pill-row{display:flex;gap:var(--space-2);flex-wrap:wrap;align-items:center}.lst-pill{display:inline-flex;align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-3);border-radius:var(--radius-pill);font-size:var(--text-xs);font-weight:var(--weight-extrabold);text-transform:uppercase;letter-spacing:.05em;background:var(--color-surface-sunken);color:var(--color-text-muted);border:1px solid var(--color-border)}.lst-pill.lvl-B1{background:var(--color-success-soft);color:var(--color-success-ink);border-color:var(--color-success-border)}.lst-pill.lvl-B2{background:var(--color-info-soft);color:var(--color-info-ink);border-color:var(--color-info-border)}.lst-pill.lvl-C1{background:var(--color-primary-soft);color:var(--color-primary-ink);border-color:var(--color-primary-border)}.lst-listen-title{margin:0;font-size:var(--text-xl);font-weight:var(--weight-extrabold);line-height:var(--leading-tight);color:var(--color-text)}.lst-context summary{display:flex;align-items:center;min-height:44px;cursor:pointer;font-size:var(--text-sm);font-weight:var(--weight-bold);color:var(--color-primary-ink)}.lst-teaser{margin:0 0 var(--space-2);font-size:var(--text-copy);line-height:var(--leading-body);color:var(--color-text-muted)}.lst-audio{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2) var(--space-4);box-sizing:border-box;padding:var(--space-3) var(--space-4);border-radius:var(--radius-lg);background:var(--color-surface);border:1px solid var(--color-primary-border);box-shadow:var(--shadow-2);position:sticky;top:calc(var(--shell-topbar-h, 56px) + var(--shell-safe-top, 0px) + 60px);z-index:var(--z-sticky)}.lst-audio-row{display:flex;align-items:center;gap:var(--space-2);min-width:0}.lst-audio-row--seek{flex:1 1 320px}.lst-audio-row--aux{flex:0 0 auto}.lst-audio-foot{flex:1 0 100%;display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap}.lst-audio-status{font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--color-text-muted)}.lst-audio.has-alert .lst-audio-status{color:var(--color-warning-ink);background:var(--color-warning-soft);padding:var(--space-1) var(--space-3);border-radius:var(--radius-pill)}.lst-audio-hint{font-size:var(--text-xs);color:var(--color-text-muted)}.lst-audio-hint kbd{font-family:inherit;font-size:var(--text-xs);font-weight:var(--weight-bold);padding:1px 6px;border-radius:var(--radius-sm);background:var(--color-surface-sunken);border:1px solid var(--color-border-strong);color:var(--color-text)}@media(hover:none),(pointer:coarse){.lst-audio-hint{display:none}}.lst-play{flex:none;display:grid;place-items:center;width:56px;height:56px;border-radius:50%;border:none;cursor:pointer;background:var(--color-primary);color:var(--color-on-primary);font-size:var(--text-lg);box-shadow:var(--shadow-2);transition:background var(--motion-fast) var(--ease-out),transform var(--motion-fast) var(--ease-out)}.lst-play:hover{background:var(--color-primary-hover)}.lst-play:active{transform:scale(.96)}@media(prefers-reduced-motion:no-preference){.lst-play.is-playing{animation:lstPulse 1.8s ease-in-out infinite}}@keyframes lstPulse{0%,to{box-shadow:var(--shadow-2),0 0 0 0 var(--color-focus-ring)}50%{box-shadow:var(--shadow-2),0 0 0 10px transparent}}.lst-ctl{flex:none;display:inline-flex;align-items:center;justify-content:center;gap:var(--space-1);min-width:48px;height:48px;padding:0 var(--space-2);border-radius:var(--radius-pill);border:1px solid var(--color-border-strong);background:var(--color-surface);color:var(--color-text);font-family:inherit;font-size:var(--text-sm);font-weight:var(--weight-extrabold);cursor:pointer}.lst-ctl--10{min-width:54px}@media(max-width:479.98px){.lst-ctl--5{display:none}}.lst-ctl:hover{background:var(--color-primary-soft);border-color:var(--color-primary);color:var(--color-primary-ink)}.lst-time{flex:none;min-width:2.9em;font-size:var(--text-sm);font-weight:var(--weight-bold);font-variant-numeric:tabular-nums;color:var(--color-text)}.lst-seekwrap{flex:1;min-width:60px;display:flex;align-items:center}.lst-seek{--lst-progress: 0%;width:100%;height:48px;margin:0;padding:0;cursor:pointer;background:transparent;-webkit-appearance:none;appearance:none}.lst-seek::-webkit-slider-runnable-track{height:6px;border-radius:var(--radius-pill);background:linear-gradient(to right,var(--color-primary) var(--lst-progress),var(--color-border-strong) var(--lst-progress))}.lst-seek::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:22px;height:22px;margin-top:-8px;border-radius:50%;background:var(--color-primary);border:3px solid var(--color-surface);box-shadow:0 0 0 1px var(--color-primary),var(--shadow-1);cursor:pointer}.lst-seek::-moz-range-track{height:6px;border-radius:var(--radius-pill);background:var(--color-border-strong)}.lst-seek::-moz-range-progress{height:6px;border-radius:var(--radius-pill);background:var(--color-primary)}.lst-seek::-moz-range-thumb{width:18px;height:18px;border-radius:50%;background:var(--color-primary);border:3px solid var(--color-surface);box-shadow:0 0 0 1px var(--color-primary),var(--shadow-1);cursor:pointer}.lst-seek:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px;border-radius:var(--radius-pill)}.lst-speed-group{display:inline-flex;max-width:100%;gap:var(--space-2);padding:var(--space-1);border:1px solid var(--color-border-strong);border-radius:var(--radius-pill);background:var(--color-surface-sunken)}.lst-speed{min-width:44px;height:48px;padding:0 var(--space-1);border:1px solid var(--color-border-strong);border-radius:var(--radius-pill);background:var(--color-surface);color:var(--color-text);font-family:inherit;font-size:var(--text-sm);font-weight:var(--weight-bold);font-variant-numeric:tabular-nums;cursor:pointer}.lst-speed:hover{background:var(--color-primary-soft)}.lst-speed[aria-checked=true],.lst-speed.is-active{background:var(--color-primary);color:var(--color-on-primary);border-color:var(--color-primary)}.lst-speed:focus-visible{outline-offset:-3px}@media(max-width:899.98px){.lst-audio{order:99;top:auto;bottom:var(--ems-bottom-reserved, 0px);flex-direction:column;align-items:stretch;flex-wrap:nowrap;gap:var(--space-2);padding:var(--space-3);border-radius:var(--radius-lg) var(--radius-lg) 0 0;box-shadow:var(--shadow-3)}.lst-audio-row--seek{flex:none}.lst-audio-row--aux{justify-content:space-between}.lst-audio-foot{display:none}.lst-audio.has-alert .lst-audio-foot{display:flex}}@media(max-width:359.98px){.lst-speed-group{gap:var(--space-1);padding:0}.lst-ctl--10{min-width:48px}}@media(max-height:500px)and (orientation:landscape){.lst-audio{order:99;top:auto;bottom:var(--ems-bottom-reserved, 0px);flex-direction:row;flex-wrap:nowrap;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-lg) var(--radius-lg) 0 0;box-shadow:none}.lst-audio.has-alert{flex-wrap:wrap}.lst-audio-row--seek{flex:1 1 auto;min-width:0}.lst-audio-row--aux{flex:none}.lst-play{width:44px;height:44px;box-shadow:none}.lst-seek,.lst-ctl{height:44px}.lst-ctl--5{display:none}.lst-speed-group{padding:0;border:0;background:none}.lst-speed{height:44px}.lst-audio-foot{display:flex;position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.lst-audio.has-alert .lst-audio-foot{position:static;width:auto;height:auto;margin:0;overflow:visible;clip:auto;white-space:normal}.lst-line-card{scroll-margin:90px 0 calc(var(--space-8) + var(--space-6))}.lst-explain{scroll-margin-bottom:calc(var(--space-8) + var(--space-6))}}.lst-transcript-card{display:flex;flex-direction:column;gap:var(--space-3)}.lst-transcript-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap}.lst-transcript{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-3);border-radius:var(--radius-md);background:var(--color-surface-sunken);border:1px solid var(--color-border);max-height:480px;overflow-y:auto}@media(max-width:899.98px){.lst-transcript{max-height:none;overflow:visible}}.lst-line-card{position:relative;padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);cursor:pointer;background:var(--color-surface);border:1.5px solid var(--color-border);border-left:4px solid var(--color-border-strong);scroll-margin:12px;transition:background var(--motion-fast) var(--ease-out),border-color var(--motion-fast) var(--ease-out)}@media(max-width:899.98px){.lst-line-card{scroll-margin:90px 0 190px}}.lst-line-card:hover{border-color:var(--color-primary)}.lst-line-card.is-active-seg{background:var(--color-primary-soft);border-color:var(--color-primary);border-left-color:var(--color-primary);box-shadow:var(--shadow-2)}.lst-line-card.is-passed{border-left-color:var(--color-primary-border)}.lst-line-card-head{display:flex;justify-content:space-between;align-items:center;gap:var(--space-2);margin-bottom:var(--space-1)}.lst-line-card .spk{font-size:var(--text-sm);font-weight:var(--weight-extrabold);color:var(--color-text-muted);letter-spacing:.03em;text-transform:uppercase}.lst-line-card.is-active-seg .spk{color:var(--color-primary-ink)}.lst-line-play{display:inline-flex;align-items:center;gap:var(--space-1);min-height:36px;padding:0 var(--space-3);border-radius:var(--radius-pill);cursor:pointer;font-family:inherit;font-size:var(--text-xs);font-weight:var(--weight-bold);font-variant-numeric:tabular-nums;background:var(--color-surface-sunken);color:var(--color-text);border:1px solid var(--color-border-strong)}@media(pointer:coarse){.lst-line-play{min-height:44px}}.lst-line-play:hover{background:var(--color-primary-soft);border-color:var(--color-primary);color:var(--color-primary-ink)}.lst-line-card.is-active-seg .lst-line-play{background:var(--color-surface);color:var(--color-primary-ink);border-color:var(--color-primary)}.lst-line-en{margin:0 0 var(--space-2);font-size:var(--text-base);line-height:1.8;color:var(--color-text)}.lst-line-es{margin:0;padding-top:var(--space-2);border-top:1px dashed var(--color-border-strong);font-size:var(--text-copy);font-style:italic;line-height:1.6;color:var(--color-text-muted)}.lst-word{display:inline;position:relative;border-radius:4px;padding:1px 2px;cursor:pointer;transition:color .12s ease,background-color .12s ease}.lst-word:hover{background:var(--color-primary-soft)}.lst-word.is-kp{font-weight:var(--weight-bold)}.lst-word.is-spoken{color:var(--color-primary-ink);text-decoration:underline 2px var(--color-primary-border);text-underline-offset:4px}.lst-word.is-current-word{color:var(--color-primary-ink);font-weight:var(--weight-extrabold);background:var(--color-primary-soft);text-decoration:underline 3px var(--color-primary);text-underline-offset:4px}.lst-word.is-kp.is-spoken{background:var(--color-warning-soft);color:var(--color-warning-ink);text-decoration-color:var(--color-warning)}.lst-word.is-kp.is-current-word{background:var(--color-warning);color:var(--color-on-primary);text-decoration-color:var(--color-warning-ink)}.lst-keyphrases{display:flex;gap:var(--space-2);flex-wrap:wrap;align-items:center;font-size:var(--text-sm);font-weight:var(--weight-bold);color:var(--color-text-muted)}.lst-keyphrases .ic{color:var(--color-primary-ink)}.lst-questions{display:flex;flex-direction:column;gap:var(--space-3)}.lst-q-head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-3)}.lst-q-heading{margin:0;font-size:var(--text-lg);font-weight:var(--weight-extrabold);color:var(--color-text)}.lst-q-progress{font-size:var(--text-sm);font-weight:var(--weight-bold);color:var(--color-primary-ink);font-variant-numeric:tabular-nums}.lst-q-bar{height:6px;border-radius:var(--radius-pill);background:var(--color-border);overflow:hidden}.lst-q-bar>span{display:block;height:100%;background:var(--color-primary);transition:width .3s ease}.lst-q-card{display:flex;flex-direction:column;gap:var(--space-3);transition:border-color var(--motion-fast) var(--ease-out)}.lst-q-card.is-right{border-color:var(--color-success)}.lst-q-card.is-wrong{border-color:var(--color-danger)}.lst-q-card.is-grammar{border-left:4px solid var(--color-primary)}.lst-q-num{font-size:var(--text-xs);font-weight:var(--weight-extrabold);text-transform:uppercase;letter-spacing:.06em;color:var(--color-primary-ink)}.lst-q-focus{display:inline-flex;align-items:center;gap:var(--space-1);align-self:flex-start;padding:var(--space-1) var(--space-3);border-radius:var(--radius-pill);font-size:var(--text-xs);font-weight:var(--weight-bold);background:var(--color-primary-soft);color:var(--color-primary-ink);border:1px solid var(--color-primary-border)}.lst-q-text{margin:0;font-size:var(--text-lg);font-weight:var(--weight-extrabold);line-height:var(--leading-snug);color:var(--color-text)}.lst-opts{display:flex;flex-direction:column;gap:var(--space-2)}.lst-opt{display:grid;grid-template-columns:auto 1fr;column-gap:var(--space-3);align-items:center;width:100%;box-sizing:border-box;min-height:52px;padding:var(--space-3) var(--space-4);text-align:left;cursor:pointer;border-radius:var(--radius-md);border:1.5px solid var(--color-border-strong);background:var(--color-surface);color:var(--color-text);font-family:inherit;font-size:var(--text-base);font-weight:var(--weight-semibold);line-height:var(--leading-snug);transition:background var(--motion-fast) var(--ease-out),border-color var(--motion-fast) var(--ease-out)}.lst-opt:hover:not([aria-disabled=true]){border-color:var(--color-primary);background:var(--color-primary-soft)}.lst-opt[aria-disabled=true]{cursor:default}.lst-opt-letter{display:inline-grid;place-items:center;flex:none;width:30px;height:30px;border-radius:var(--radius-sm);font-size:var(--text-sm);font-weight:var(--weight-extrabold);background:var(--color-surface-sunken);color:var(--color-text);border:1px solid var(--color-border)}.lst-opt-mark{grid-column:2;display:inline-flex;align-items:center;gap:var(--space-1);margin-top:var(--space-0);font-size:var(--text-sm);font-weight:var(--weight-extrabold)}.lst-opt.is-correct{background:var(--color-success-soft);border-color:var(--color-success);color:var(--color-success-ink)}.lst-opt.is-correct .lst-opt-letter{background:var(--color-success);color:var(--color-on-primary);border-color:var(--color-success)}.lst-opt.is-wrong{background:var(--color-danger-soft);border-color:var(--color-danger);color:var(--color-danger-ink)}.lst-opt.is-wrong .lst-opt-letter{background:var(--color-danger);color:var(--color-on-danger);border-color:var(--color-danger)}.lst-opt.is-dim{background:var(--color-surface-2);border-color:var(--color-border);color:var(--color-text-muted)}.lst-q-result{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);font-size:var(--text-sm)}.lst-q-result.is-right{background:var(--color-success-soft);color:var(--color-success-ink);border:1px solid var(--color-success-border)}.lst-q-result.is-wrong{background:var(--color-danger-soft);color:var(--color-danger-ink);border:1px solid var(--color-danger-border)}.lst-explain{padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);font-size:var(--text-copy);line-height:var(--leading-body);background:var(--color-info-soft);border:1px solid var(--color-info-border);color:var(--color-info-ink);scroll-margin-bottom:12px;animation:lstFade .25s ease-out}@media(max-width:899.98px){.lst-explain{scroll-margin-bottom:190px}}.lst-footer:empty{display:none}.lst-result{display:flex;align-items:center;gap:var(--space-4);flex-wrap:wrap;border-color:var(--color-primary-border)}.lst-result-body{flex:1;min-width:180px}.lst-result-actions{display:flex;gap:var(--space-2);flex-wrap:wrap}.lst-score-badge{display:grid;place-items:center;flex:none;width:64px;height:64px;border-radius:var(--radius-lg);font-size:var(--text-lg);font-weight:var(--weight-extrabold);font-variant-numeric:tabular-nums;background:var(--color-primary);color:var(--color-on-primary)}.lst-score-badge.s4,.lst-score-badge.s3{background:var(--color-success)}.lst-score-badge.s2{background:var(--color-warning)}.lst-score-badge.s1,.lst-score-badge.s0{background:var(--color-danger);color:var(--color-on-danger)}.lst-result-msg{font-size:var(--text-lg);font-weight:var(--weight-extrabold);color:var(--color-text)}.lst-result-sub{font-size:var(--text-copy);color:var(--color-text-muted)}.lst-summary{display:flex;flex-direction:column;align-items:center;gap:var(--space-3);text-align:center;border-color:var(--color-success)}.lst-ring{--lst-pct: 0;position:relative;display:grid;place-items:center;width:120px;height:120px;border-radius:50%;background:conic-gradient(var(--color-success) calc(var(--lst-pct) * 1%),var(--color-border) 0)}.lst-ring:before{content:"";position:absolute;inset:10px;border-radius:50%;background:var(--color-surface)}.lst-ring>span{position:relative;font-size:var(--text-2xl);font-weight:var(--weight-extrabold);color:var(--color-text);font-variant-numeric:tabular-nums}.lst-summary-title{margin:0;font-size:var(--text-xl);font-weight:var(--weight-extrabold);color:var(--color-text)}.lst-summary-score{margin:0;font-size:var(--text-base);font-weight:var(--weight-bold);color:var(--color-text)}.lst-summary-msg{margin:0;font-size:var(--text-copy);color:var(--color-text-muted);max-width:460px}.lst-summary-list{list-style:none;margin:0;padding:0;width:100%;display:flex;flex-direction:column;gap:var(--space-2);text-align:left}.lst-summary-item{display:flex;justify-content:space-between;align-items:center;gap:var(--space-3);width:100%;box-sizing:border-box;min-height:48px;padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);cursor:pointer;font-family:inherit;font-size:var(--text-sm);font-weight:var(--weight-bold);background:var(--color-surface-2);border:1px solid var(--color-border-strong);color:var(--color-text);text-align:left}.lst-summary-item:hover{background:var(--color-primary-soft);border-color:var(--color-primary)}.lst-summary-item-name{display:flex;align-items:center;gap:var(--space-2);min-width:0}.lst-summary-item-num{display:inline-grid;place-items:center;flex:none;width:26px;height:26px;border-radius:var(--radius-sm);background:var(--color-primary-soft);color:var(--color-primary-ink);font-size:var(--text-xs);font-variant-numeric:tabular-nums}.lst-summary-item-score{flex:none;font-variant-numeric:tabular-nums;color:var(--color-primary-ink)}.lst-summary-actions{display:flex;gap:var(--space-2);flex-wrap:wrap;justify-content:center;width:100%}@media(max-width:600px){.lst-summary-actions .btn,.lst-result-actions .btn{width:100%}}.lst-empty{text-align:center;display:flex;flex-direction:column;align-items:center;gap:var(--space-3)}.lst-empty h1{margin:0;font-size:var(--text-xl)}.lst-empty p{margin:0;color:var(--color-text-muted)}.lst-empty-icon{font-size:var(--text-2xl);color:var(--color-primary)}.ems-data-toast{position:fixed;left:50%;bottom:calc(var(--ems-bottom-reserved, 0px) + var(--space-4));max-width:calc(100vw - 2rem);text-align:center;transform:translate(-50%,20px);padding:10px 18px;border-radius:999px;background:var(--color-text);color:var(--color-bg);font:600 .85rem var(--font-body);box-shadow:var(--shadow-3);opacity:0;pointer-events:none;transition:opacity .2s,transform .2s;z-index:var(--z-toast)}.ems-data-toast.visible{opacity:1;transform:translate(-50%)}.crumb-group{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}@media(max-width:640px){html{overflow-x:clip}.readings-breadcrumbs,.lst-breadcrumbs{border-radius:22px!important;padding:10px 16px!important;gap:6px 4px!important;width:100%!important;box-sizing:border-box!important}.crumb-node,.crumb-current,.readings-breadcrumbs span.active{padding:6px 12px!important}.lst-crumb{padding:5px 8px!important}}.rd-player-slot{width:100%;position:sticky;bottom:calc(var(--ems-bottom-reserved, 0px) + var(--space-2));z-index:var(--z-sticky);order:90}.reading-translation-section>.rd-player-slot{order:2}.reading-translation-section>.reading-translation-box{order:1}.rd-player{background:var(--color-surface);border:1px solid var(--color-primary-border);border-radius:var(--radius-lg);padding:var(--space-3) var(--space-4);display:flex;flex-direction:column;gap:var(--space-2);box-shadow:var(--shadow-3)}.rd-player-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);flex-wrap:wrap}.rd-player-title{font-weight:var(--weight-extrabold);font-size:var(--text-sm);color:var(--color-primary-ink);display:inline-flex;align-items:center;gap:var(--space-2)}.rd-player-status{font-size:var(--text-xs);font-weight:var(--weight-semibold);color:var(--color-text-muted)}.rd-controls{display:flex;align-items:center;justify-content:center;gap:var(--space-3)}.rd-btn{border:1px solid var(--color-border-strong);background:var(--color-surface);color:var(--color-primary-ink);cursor:pointer;border-radius:var(--radius-pill);font-weight:var(--weight-extrabold);transition:transform var(--motion-fast) var(--ease-out),box-shadow var(--motion-fast) var(--ease-out),background var(--motion-fast) var(--ease-out)}.rd-btn:hover{background:var(--color-primary-soft);box-shadow:var(--shadow-2)}.rd-btn:active{transform:scale(.97)}.rd-btn:focus-visible,.rd-seek:focus-visible{outline:3px solid var(--color-focus);outline-offset:2px}.rd-btn-skip{height:44px;min-width:66px;padding:0 var(--space-3);display:inline-flex;align-items:center;justify-content:center;gap:var(--space-1);font-size:var(--text-sm)}.rd-btn-skip span{font-size:var(--text-xs)}.rd-btn-play{width:56px;height:56px;font-size:1.25rem;color:var(--color-on-primary);border:none;background:var(--color-primary);box-shadow:var(--shadow-2)}.rd-btn-play:hover{background:var(--color-primary-hover)}.rd-btn-speed{height:44px;min-width:60px;padding:0 var(--space-3);font-size:var(--text-sm);font-variant-numeric:tabular-nums}.rd-seek-row{display:flex;align-items:center;gap:var(--space-3)}.rd-time{font-size:var(--text-xs);font-weight:var(--weight-bold);color:var(--color-text-muted);min-width:38px;text-align:center;font-variant-numeric:tabular-nums}.rd-seek{-webkit-appearance:none;appearance:none;flex:1;min-width:0;height:10px;border-radius:var(--radius-pill);cursor:pointer;background:var(--color-surface-sunken);background-clip:padding-box;outline:none;margin:0;box-sizing:content-box;border-block:17px solid transparent;box-shadow:inset 0 0 0 1px var(--color-border-strong);touch-action:pan-x}.rd-seek::-webkit-slider-thumb{-webkit-appearance:none;width:28px;height:28px;border-radius:50%;background:var(--color-surface);border:3px solid var(--color-primary);box-shadow:var(--shadow-1)}.rd-seek::-moz-range-thumb{width:22px;height:22px;border-radius:50%;background:var(--color-surface);border:3px solid var(--color-primary);box-shadow:var(--shadow-1)}.rd-version-note{font-size:var(--text-xs);line-height:1.4;color:var(--color-primary-ink);background:var(--color-primary-soft);border:1px dashed var(--color-primary-border);border-radius:var(--radius-md);padding:var(--space-0) var(--space-3)}.rd-version-note .ic{margin-right:var(--space-1)}@media(min-width:641px){.rd-player{display:grid;grid-template-columns:auto 1fr auto;grid-template-areas:"title note status" "controls seek seek";column-gap:var(--space-4);row-gap:var(--space-1);align-items:center}.rd-player-head{display:contents}.rd-player-title{grid-area:title}.rd-player-status{grid-area:status;justify-self:end}.rd-version-note{grid-area:note;justify-self:start}.rd-controls{grid-area:controls;justify-content:flex-start}.rd-seek-row{grid-area:seek}}.rd-word{position:relative;cursor:pointer;border-radius:4px;padding-block:.1em;scroll-margin-block:110px 170px;transition:background-color var(--motion-fast) var(--ease-out),color var(--motion-fast) var(--ease-out)}.rd-word:after{content:"";position:absolute;inset:-.25em -.12em}.rd-word.is-spoken{text-decoration:underline;text-decoration-color:var(--color-primary);text-decoration-thickness:2px;text-underline-offset:4px}.rd-word.is-current{background:var(--color-primary-soft);color:var(--color-primary-ink);box-shadow:0 0 0 2px var(--color-primary-soft)}.rd-word:hover{background:var(--color-primary-soft)}.rd-word.is-tapped{background:var(--color-primary-soft);color:var(--color-primary-ink)}.rd-word:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}@media(max-width:640px){.rd-player{padding:var(--space-2) var(--space-3);gap:var(--space-1)}.rd-seek-row{margin-top:var(--space-1)}.rd-player-title,.rd-player-status{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.rd-player-head{gap:0}.rd-controls{gap:var(--space-2);justify-content:space-between}.rd-btn-skip{min-width:56px;padding:0 var(--space-2)}.rd-btn-play{width:52px;height:52px}.rd-version-note{padding:var(--space-0) var(--space-2);text-align:center}}@media(max-height:500px)and (orientation:landscape){.rd-player{display:flex;flex-direction:row;flex-wrap:nowrap;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);box-shadow:none}.rd-player-title,.rd-player-status,.rd-version-note{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.rd-version-note>:not(.sr-only){display:none}.rd-player-head,.rd-controls{display:contents}.rd-btn-skip{min-width:56px;padding:0 var(--space-2)}.rd-btn-play{width:44px;height:44px;box-shadow:none;font-size:1.125rem}.rd-btn-speed{order:2}.rd-seek-row{order:1;flex:1 1 auto;min-width:0;gap:var(--space-2);margin-top:0}.rd-word{scroll-margin-block:80px calc(var(--space-8) + var(--space-6))}}@media(prefers-reduced-motion:reduce){.rd-btn,.rd-word{transition:none}}.reading-blank-wrapper.is-current-blank{box-shadow:0 0 0 3px var(--color-focus-ring);border-radius:var(--radius-md);transition:box-shadow var(--motion-fast) var(--ease-out)}.reading-blank-wrapper.is-passed-blank .blank-chip-num{opacity:.6}.vocab{border-bottom:1.5px dotted var(--color-text-faint);cursor:help}.vocab:hover,.vocab:focus-within{border-bottom-color:var(--color-primary)}.vocab--group>.rd-word{border-bottom:0}.vocab .rd-word{cursor:help}@media(hover:none),(pointer:coarse){.vocab,.vocab *{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent}}.vocab-tip{--vocab-arrow-x: 50%;position:fixed;z-index:var(--z-toast, 80);left:0;top:0;box-sizing:border-box;width:max-content;max-width:min(260px,calc(100vw - 16px));padding:var(--space-2) var(--space-3);border-radius:10px;background:var(--color-text);color:var(--color-surface);font-size:.8125rem;line-height:1.4;font-weight:500;text-align:left;box-shadow:0 6px 18px #0f172a47;pointer-events:none;display:flex;flex-direction:column;gap:var(--space-1);overflow-wrap:anywhere}.vocab-tip[hidden]{display:none}.vocab-tip.is-visible{animation:vocabTipIn .12s ease-out}@keyframes vocabTipIn{0%{opacity:0;transform:translateY(3px)}to{opacity:1;transform:none}}.vocab-tip.is-below.is-visible{animation-name:vocabTipInBelow}@keyframes vocabTipInBelow{0%{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:none}}.vocab-tip__row{display:flex;gap:var(--space-2);align-items:baseline}.vocab-tip__tag{flex:none;font-size:.625rem;font-weight:800;letter-spacing:.04em;padding:0 4px;border-radius:4px;background:color-mix(in srgb,var(--color-surface) 22%,transparent)}.vocab-tip__es{font-weight:700}.vocab-tip__arrow{position:absolute;left:var(--vocab-arrow-x);bottom:-5px;width:10px;height:10px;background:inherit;transform:translate(-50%) rotate(45deg);border-radius:0 0 2px}.vocab-tip.is-below .vocab-tip__arrow{bottom:auto;top:-5px;border-radius:2px 0 0}@media(prefers-reduced-motion:reduce){.vocab-tip.is-visible{animation:none}}:root{--color-pending-bg: #FEF08A;--color-pending-ink: #422006;--color-pending-line: #A16207;--color-pending-current-bg: #FACC15;--color-pending-current-ink: #1C1100;--color-pending-current-ring: #713F12}:root[data-theme=dark]{--color-pending-bg: #4A3A06;--color-pending-ink: #FEF3C7;--color-pending-line: #FBBF24;--color-pending-current-bg: #FBBF24;--color-pending-current-ink: #1C1100;--color-pending-current-ring: #FEF08A}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--color-pending-bg: #4A3A06;--color-pending-ink: #FEF3C7;--color-pending-line: #FBBF24;--color-pending-current-bg: #FBBF24;--color-pending-current-ink: #1C1100;--color-pending-current-ring: #FEF08A}}.pr-slot{width:100%}.pr-slot button{font-family:inherit}.rd-player-slot.pr-player-hidden{display:none!important}.pr-entry{display:flex;align-items:center;gap:var(--space-4);flex-wrap:wrap;background:var(--color-success-soft);border:1px solid var(--color-success-border);border-radius:var(--radius-lg);padding:var(--space-3) var(--space-4);box-shadow:var(--shadow-1)}.pr-entry-icon{width:44px;height:44px;border-radius:var(--radius-md);flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;background:var(--color-surface);color:var(--color-success-ink);font-size:1.15rem;border:1px solid var(--color-success-border)}.pr-entry-text{flex:1 1 220px;min-width:0;display:flex;flex-direction:column;gap:2px}.pr-entry-text strong{font-size:var(--text-base);font-weight:var(--weight-extrabold);color:var(--color-success-ink)}.pr-entry-text span{font-size:var(--text-copy);color:var(--color-text-muted);line-height:1.4}.pr-toggle{min-height:48px;padding:0 var(--space-5);border-radius:var(--radius-pill);border:none;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);font-size:var(--text-sm);font-weight:var(--weight-extrabold);color:var(--color-surface);background:var(--color-success);box-shadow:var(--shadow-2);transition:transform var(--motion-fast) var(--ease-out),box-shadow var(--motion-fast) var(--ease-out)}.pr-toggle:hover{transform:translateY(-1px);box-shadow:var(--shadow-3)}.pr-panel{position:relative;background:var(--color-success-soft);border:1px solid var(--color-success-border);border-radius:var(--radius-lg);padding:var(--space-4) var(--space-5);display:flex;flex-direction:column;gap:var(--space-3);box-shadow:var(--shadow-1)}.pr-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);flex-wrap:wrap}.pr-title{font-weight:var(--weight-extrabold);font-size:var(--text-base);color:var(--color-success-ink);display:inline-flex;align-items:center;gap:var(--space-2)}.pr-engine{display:inline-flex;align-items:center;gap:6px;min-width:0;max-width:100%}.pr-badge{display:inline-flex;align-items:center;gap:7px;min-width:0;font-size:var(--text-xs);font-weight:var(--weight-bold);line-height:1.3;padding:5px 11px;border-radius:var(--radius-pill);border:1px solid transparent}.pr-badge--ai{background:var(--color-primary-soft);color:var(--color-primary-ink);border-color:var(--color-primary-border)}.pr-badge--basic{background:var(--color-warning-soft);color:var(--color-warning-ink);border-color:var(--color-warning-border);border-radius:var(--radius-md)}.pr-badge--basic strong{font-weight:var(--weight-extrabold)}.pr-badge--none{background:var(--color-surface-sunken);color:var(--color-text-muted);border-color:var(--color-border)}.pr-badge--pending{background:var(--color-surface);color:var(--color-text-muted);border-color:var(--color-border)}.pr-info{position:relative;display:inline-flex;flex:0 0 auto}.pr-info-btn{width:44px;height:44px;padding:0;border:0;background:transparent;cursor:pointer;color:var(--color-text-muted);display:inline-flex;align-items:center;justify-content:center;font-size:.85rem}.pr-info-btn i{width:32px;height:32px;border-radius:50%;border:1px solid var(--color-border-strong);background:var(--color-surface);display:inline-flex;align-items:center;justify-content:center}.pr-basic-short{display:none}.pr-info-tip{position:absolute;right:0;top:calc(100% + 8px);z-index:var(--z-overlay);width:min(280px,78vw);background:var(--color-text);color:var(--color-surface);font-size:var(--text-xs);font-weight:var(--weight-medium);line-height:1.45;padding:9px 12px;border-radius:var(--radius-md);box-shadow:var(--shadow-3);opacity:0;visibility:hidden;transform:translateY(-4px);transition:opacity var(--motion-fast) var(--ease-out),transform var(--motion-fast) var(--ease-out),visibility var(--motion-fast);pointer-events:none}.pr-info:hover .pr-info-tip,.pr-info.is-open .pr-info-tip{opacity:1;visibility:visible;transform:translateY(0)}.pr-main{display:grid;grid-template-columns:auto 1fr;gap:var(--space-5);align-items:center}.pr-mic-col{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);min-width:120px}.pr-mic{position:relative;width:80px;height:80px;border-radius:50%;border:none;cursor:pointer;color:var(--color-surface);font-size:1.7rem;background:var(--color-success);box-shadow:var(--shadow-2);display:inline-flex;align-items:center;justify-content:center;transition:transform var(--motion-fast) var(--ease-out),box-shadow var(--motion-base) var(--ease-out),background var(--motion-base) var(--ease-out)}.pr-mic:hover:not(:disabled){transform:translateY(-1px) scale(1.02)}.pr-mic:active:not(:disabled){transform:scale(.97)}.pr-mic:disabled{cursor:not-allowed;background:var(--color-border-strong);box-shadow:none}.pr-mic.is-on{background:var(--color-success-ink);color:var(--color-surface)}.pr-mic .ic{position:relative;z-index:1}.pr-mic-ring{position:absolute;inset:-7px;border-radius:50%;border:3px solid var(--color-success);opacity:0;pointer-events:none}.pr-mic.is-listening .pr-mic-ring{opacity:1;animation:pr-pulse 1.6s ease-out infinite}.pr-mic.is-reconnecting{background:var(--color-warning)}.pr-mic.is-reconnecting .pr-mic-ring{opacity:1;border-style:dashed;border-color:var(--color-warning);animation:pr-spin 2.4s linear infinite}@keyframes pr-spin{to{transform:rotate(360deg)}}.pr-panel.is-reconnecting .pr-status{color:var(--color-warning-ink)}.pr-sticky-mic.is-reconnecting{background:var(--color-warning)}@keyframes pr-pulse{0%{transform:scale(.92);opacity:.9}70%{transform:scale(1.28);opacity:0}to{transform:scale(1.28);opacity:0}}.pr-mic-label{font-size:var(--text-sm);font-weight:var(--weight-extrabold);color:var(--color-success-ink);text-align:center}.pr-live{display:flex;flex-direction:column;gap:var(--space-2);min-width:0}.pr-status{margin:0;font-size:var(--text-base);font-weight:var(--weight-bold);color:var(--color-text);line-height:1.4}.pr-panel.is-listening .pr-status{color:var(--color-success-ink)}.pr-caption-box{background:var(--color-surface);border:1px solid var(--color-success-border);border-radius:var(--radius-md);padding:8px 12px 10px;display:flex;flex-direction:column;gap:3px;min-height:64px}.pr-caption-tag{font-size:var(--text-xs);font-weight:var(--weight-extrabold);letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-muted);display:inline-flex;gap:6px;align-items:center}.pr-caption{margin:0;font-size:var(--text-base);font-weight:var(--weight-semibold);color:var(--color-text);line-height:1.45;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.pr-caption.is-empty{color:var(--color-text-muted);font-weight:var(--weight-medium);font-style:italic}.pr-caption.is-interim{color:var(--color-text-muted)}.pr-legend{display:flex;flex-wrap:wrap;gap:6px 16px;align-items:center;font-size:var(--text-sm);color:var(--color-text);font-weight:var(--weight-semibold)}.pr-legend-item{display:inline-flex;align-items:center;gap:7px}.pr-dot{width:10px;height:10px;border-radius:50%;flex:0 0 auto}.pr-dot--good{background:var(--color-success);box-shadow:0 0 0 3px var(--color-success-border)}.pr-dot--bad{background:var(--color-danger);box-shadow:0 0 0 3px var(--color-danger-border)}.pr-sample--good{text-decoration:underline solid var(--color-success) 2px;text-underline-offset:4px}.pr-sample--bad{text-decoration:underline wavy var(--color-danger) 1.5px;text-underline-offset:4px}.pr-legend-tip{color:var(--color-text-muted);font-weight:var(--weight-medium)}.pr-alert{display:flex;align-items:flex-start;gap:var(--space-3);flex-wrap:wrap;background:var(--color-danger-soft);border:1px solid var(--color-danger-border);color:var(--color-danger-ink);border-radius:var(--radius-md);padding:10px 12px}.pr-alert[hidden]{display:none}.pr-alert--info{background:var(--color-surface-2);border-color:var(--color-border);color:var(--color-text)}.pr-alert-icon{font-size:1.05rem;margin-top:2px}.pr-alert-body{flex:1 1 200px;min-width:0}.pr-alert-body strong{font-size:var(--text-sm);font-weight:var(--weight-extrabold)}.pr-alert-body p{margin:var(--space-0) 0 0;font-size:var(--text-copy);line-height:1.45}.pr-alert-body .pr-alert-help{margin-top:8px}.pr-alert-steps{margin:4px 0 0;padding-left:1.1rem;font-size:var(--text-copy);line-height:1.45}.pr-alert-steps li{margin:2px 0}.pr-alert-actions{display:flex;flex-direction:column;gap:var(--space-2);align-self:center}.pr-details{border-top:1px solid var(--color-success-border);padding-top:var(--space-2)}.pr-details-sum{list-style:none;cursor:pointer;min-height:44px;display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm);font-weight:var(--weight-bold);color:var(--color-success-ink)}.pr-details-sum::-webkit-details-marker{display:none}.pr-details-sum:after{content:"\25be";margin-left:auto;transition:transform var(--motion-fast) var(--ease-out)}.pr-details[open]>.pr-details-sum:after{transform:rotate(180deg)}.pr-details>.pr-stats{margin-top:var(--space-2)}.pr-details>.pr-actions{margin-top:var(--space-3)}.pr-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px}.pr-stat{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:8px 12px;display:flex;flex-direction:column;gap:1px;min-width:0}.pr-stat[hidden]{display:none}.pr-stat-value{font-size:var(--text-xl);font-weight:var(--weight-bold);color:var(--color-text);font-variant-numeric:tabular-nums}.pr-stat--good .pr-stat-value{color:var(--color-success-ink)}.pr-stat-label{font-size:var(--text-xs);font-weight:var(--weight-semibold);color:var(--color-text-muted)}.pr-stat-sub{font-size:var(--text-xs);font-weight:var(--weight-semibold);color:var(--color-text-muted);margin-left:6px}.pr-result{background:var(--color-surface);border:1px solid var(--color-success-border);border-radius:var(--radius-lg);padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-3);box-shadow:var(--shadow-1)}.pr-result[hidden]{display:none}.pr-result-top{display:flex;align-items:center;gap:var(--space-4)}.pr-ring{--pct: 0;flex:none;position:relative;width:76px;height:76px;border-radius:50%;background:conic-gradient(var(--color-success) calc(var(--pct) * 1%),var(--color-surface-sunken) 0);display:grid;place-items:center}.pr-ring:before{content:"";position:absolute;inset:8px;border-radius:50%;background:var(--color-surface)}.pr-ring span{position:relative;font-size:var(--text-lg);font-weight:var(--weight-extrabold);color:var(--color-text);font-variant-numeric:tabular-nums}.pr-result-text{min-width:0}.pr-result-title{margin:0;font-size:var(--text-lg);font-weight:var(--weight-extrabold);color:var(--color-text);line-height:1.25}.pr-result-line{margin:2px 0 0;font-size:var(--text-sm);color:var(--color-text-muted)}.pr-result-record{display:inline-flex;align-items:center;gap:6px;margin-top:4px;font-size:var(--text-sm);font-weight:var(--weight-bold);color:var(--color-primary-ink)}.pr-result-actions{display:flex;margin-top:var(--space-3, 12px)}.pr-mic.is-done,.pr-sticky-mic:disabled{opacity:.6;cursor:default}.pr-result-sub{margin:0 0 var(--space-2);font-size:var(--text-sm);font-weight:var(--weight-bold);color:var(--color-text)}.pr-result-sub span{font-weight:var(--weight-medium);color:var(--color-text-muted)}.pr-practice-list{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:var(--space-2)}.pr-chip{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:0 var(--space-4);border-radius:var(--radius-pill);border:1px solid var(--color-danger-border);background:var(--color-danger-soft);color:var(--color-danger-ink);font-family:inherit;font-size:var(--text-sm);font-weight:var(--weight-bold);cursor:pointer}.pr-chip:hover{border-color:var(--color-danger)}.pr-chip-more{align-self:center;font-size:var(--text-sm);color:var(--color-text-muted)}.pr-result-great{margin:0;display:flex;align-items:center;gap:var(--space-2);font-weight:var(--weight-bold);color:var(--color-success-ink)}.pr-result-how{margin:0;font-size:var(--text-xs);color:var(--color-text-muted);line-height:1.5}.pr-review{background:var(--color-pending-bg);color:var(--color-pending-ink);border:2px solid var(--color-pending-line);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);display:flex;flex-direction:column;gap:var(--space-2)}.pr-review[hidden]{display:none}.pr-review-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);flex-wrap:wrap}.pr-review-title{font-size:var(--text-base);font-weight:var(--weight-extrabold);display:inline-flex;align-items:center;gap:var(--space-2)}.pr-review-count{font-size:var(--text-sm);font-weight:var(--weight-extrabold);font-variant-numeric:tabular-nums}.pr-review-now{margin:0;font-size:var(--text-base);font-weight:var(--weight-bold)}.pr-review-word{display:inline-block;padding:1px 10px;border-radius:var(--radius-sm, 6px);background:var(--color-pending-current-bg);color:var(--color-pending-current-ink);box-shadow:0 0 0 2px var(--color-pending-current-ring);font-weight:var(--weight-extrabold)}.pr-review-tip{margin:0;font-size:var(--text-copy);line-height:1.45}.pr-review-actions{display:flex;flex-wrap:wrap;gap:var(--space-2)}.pr-btn--review{background:var(--color-pending-current-bg);color:var(--color-pending-current-ink);border:2px solid var(--color-pending-current-ring)}.pr-btn--review:hover{box-shadow:var(--shadow-2)}.pr-result-actions{gap:var(--space-2);flex-wrap:wrap}.pr-review .pr-btn--ghost,.pr-review .pr-btn--exit{background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border-strong)}.pr-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}.pr-btn{min-height:44px;padding:0 var(--space-4);border-radius:var(--radius-pill);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);font-size:var(--text-sm);font-weight:var(--weight-extrabold);transition:transform var(--motion-fast) var(--ease-out),box-shadow var(--motion-fast) var(--ease-out),background var(--motion-fast) var(--ease-out)}.pr-btn:hover{transform:translateY(-1px)}.pr-btn--ghost{background:var(--color-surface);color:var(--color-success-ink);border:1px solid var(--color-success-border)}.pr-btn--ghost:hover{box-shadow:var(--shadow-2)}.pr-btn--exit{background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border-strong)}.pr-btn--exit:hover{box-shadow:var(--shadow-2)}.pr-btn--retry{background:var(--color-surface);color:var(--color-danger-ink);border:1px solid var(--color-danger-border);align-self:stretch}.pr-alert--info .pr-btn--retry{color:var(--color-text);border-color:var(--color-border-strong)}.pr-btn--review:focus-visible,.pr-toggle:focus-visible,.pr-mic:focus-visible,.pr-btn:focus-visible,.pr-chip:focus-visible,.pr-details-sum:focus-visible,.pr-info-btn:focus-visible i,.pr-sticky-mic:focus-visible,.pr-sticky-exit:focus-visible,.pr-sticky-sum:focus-visible{outline:3px solid var(--color-focus);outline-offset:3px}.pr-practice .rd-word{transition:background-color var(--motion-fast) var(--ease-out),box-shadow var(--motion-fast) var(--ease-out)}.pr-practice .rd-word:hover{background:var(--color-success-soft)}.rd-word.pr-good{background:var(--color-success-soft);text-decoration:underline solid var(--color-success);text-decoration-thickness:2px;text-underline-offset:5px}.rd-word.pr-bad{background:var(--color-danger-soft);color:var(--color-danger-ink);text-decoration:underline wavy var(--color-danger);text-decoration-thickness:1.5px;text-underline-offset:5px}.rd-word.pr-fair{background:var(--color-pending-bg);color:var(--color-pending-ink);text-decoration:underline dotted var(--color-pending-line);text-decoration-thickness:2.5px;text-underline-offset:5px}.rd-word.pr-live-good{background:var(--color-success-soft);text-decoration:underline dotted var(--color-success);text-decoration-thickness:2px;text-underline-offset:5px}.rd-word.pr-live-bad{background:var(--color-danger-soft);color:var(--color-danger-ink);text-decoration:underline dotted var(--color-danger);text-decoration-thickness:1.5px;text-underline-offset:5px}.rd-word.pr-pending{background:var(--color-pending-bg);color:var(--color-pending-ink);text-decoration:underline double var(--color-pending-line);text-decoration-thickness:3px;text-underline-offset:5px;border-radius:4px}.rd-word.pr-pending.pr-current{background:var(--color-pending-current-bg);color:var(--color-pending-current-ink);font-weight:var(--weight-extrabold);box-shadow:0 0 0 3px var(--color-pending-current-ring);text-decoration:underline solid var(--color-pending-current-ring);text-decoration-thickness:3px;position:relative;scroll-margin-bottom:140px;scroll-margin-top:110px}.rd-word.pr-bad.pr-current{background:var(--color-danger-soft);color:var(--color-danger-ink);font-weight:var(--weight-extrabold);box-shadow:0 0 0 3px var(--color-danger);text-decoration:underline wavy var(--color-danger);text-decoration-thickness:2.5px;position:relative;scroll-margin-bottom:140px;scroll-margin-top:110px}.pr-practice .rd-word.pr-pending:hover{background:var(--color-pending-current-bg);color:var(--color-pending-current-ink)}.pr-practice .rd-word{scroll-margin-bottom:140px}.rd-word.pr-next{box-shadow:0 0 0 2px var(--color-success);background:var(--color-success-soft)}.rd-word.pr-skip{opacity:.6}.rd-word.pr-playing{box-shadow:0 0 0 2px var(--color-primary);background:var(--color-primary-soft);color:var(--color-primary-ink)}.pr-sticky{position:fixed;left:50%;z-index:var(--z-overlay);bottom:calc(var(--ems-bottom-reserved, env(safe-area-inset-bottom, 0px)) + 12px);width:min(560px,calc(100% - 24px));display:flex;align-items:center;gap:var(--space-3);background:var(--color-surface-glass);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--color-success-border);border-radius:var(--radius-lg);padding:8px 8px 8px 10px;box-shadow:var(--shadow-3);transform:translate(-50%,calc(100% + 40px));opacity:0;visibility:hidden;transition:transform var(--motion-base) var(--ease-out),opacity var(--motion-base) var(--ease-out),visibility var(--motion-base)}.pr-sticky.is-visible{transform:translate(-50%);opacity:1;visibility:visible}.pr-sticky button{font-family:inherit}.pr-sticky-mic{position:relative;width:52px;height:52px;flex:0 0 auto;border-radius:50%;border:none;cursor:pointer;color:var(--color-surface);font-size:1.15rem;background:var(--color-success);box-shadow:var(--shadow-2);display:inline-flex;align-items:center;justify-content:center}.pr-sticky-mic:disabled{background:var(--color-border-strong);box-shadow:none;cursor:not-allowed}.pr-sticky-mic.is-listening{animation:pr-sticky-pulse 1.6s ease-out infinite}@keyframes pr-sticky-pulse{0%{box-shadow:0 0 0 0 var(--color-success)}70%{box-shadow:0 0 0 12px transparent}to{box-shadow:0 0 0 0 transparent}}.pr-sticky-info{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:1px}.pr-sticky-state{font-size:var(--text-sm);font-weight:var(--weight-extrabold);color:var(--color-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pr-sticky.is-listening .pr-sticky-state{color:var(--color-success-ink)}.pr-sticky-stats{font-size:var(--text-xs);font-weight:var(--weight-semibold);color:var(--color-text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pr-sticky-exit,.pr-sticky-sum{min-width:44px;height:44px;flex:0 0 auto;padding:0 14px;border-radius:var(--radius-pill);cursor:pointer;background:var(--color-surface-2);color:var(--color-text);border:1px solid var(--color-border-strong);display:inline-flex;align-items:center;justify-content:center;gap:6px;font-size:var(--text-sm);font-weight:var(--weight-extrabold)}.pr-sticky-sum[hidden]{display:none}.pr-sticky-sum{background:var(--color-success-soft);color:var(--color-success-ink);border-color:var(--color-success-border)}body.pr-sticky-on,body.has-shell.pr-sticky-on,body.has-shell.focus-mode.pr-sticky-on{padding-bottom:calc(var(--ems-bottom-reserved, env(safe-area-inset-bottom, 0px)) + 96px + var(--space-4, 16px))}.pr-toast{position:fixed;left:50%;z-index:var(--z-toast);bottom:calc(var(--ems-bottom-reserved, env(safe-area-inset-bottom, 0px)) + 86px);max-width:min(440px,calc(100% - 32px));transform:translate(-50%,8px);opacity:0;visibility:hidden;pointer-events:none;background:var(--color-text);color:var(--color-surface);font-size:var(--text-sm);font-weight:var(--weight-semibold);line-height:1.4;text-align:center;padding:10px 14px;border-radius:var(--radius-md);box-shadow:var(--shadow-3);transition:opacity var(--motion-fast) var(--ease-out),transform var(--motion-fast) var(--ease-out),visibility var(--motion-fast)}.pr-toast.is-visible{opacity:1;visibility:visible;transform:translate(-50%)}@media(max-width:640px){.pr-entry{padding:var(--space-3);gap:var(--space-3)}.pr-entry-text span{display:none}.pr-entry-text{flex:1 1 140px}.pr-toggle{flex:1 1 100%}.pr-panel{padding:var(--space-3);gap:var(--space-2)}.pr-main{grid-template-columns:auto 1fr;gap:var(--space-3);align-items:start}.pr-mic-col{min-width:64px;gap:4px}.pr-mic{width:64px;height:64px;font-size:1.4rem}.pr-mic-label{font-size:var(--text-xs)}.pr-live{width:100%;gap:var(--space-1)}.pr-status{font-size:var(--text-sm)}.pr-caption-box{min-height:0;padding:6px 10px 8px}.pr-caption{font-size:var(--text-sm);-webkit-line-clamp:1}.pr-legend-tip{display:none}.pr-stats{grid-template-columns:repeat(auto-fit,minmax(96px,1fr));gap:8px}.pr-stat{padding:7px 10px}.pr-stat-value{font-size:var(--text-lg)}.pr-actions{justify-content:stretch}.pr-actions .pr-btn{flex:1 1 100%}.pr-info-tip{right:-8px}.pr-basic-long{display:none}.pr-basic-short{display:inline}.pr-result{padding:var(--space-3)}.pr-ring{width:64px;height:64px}.pr-ring:before{inset:7px}}@media(max-width:640px){.pr-review{padding:var(--space-3)}.pr-review-actions .pr-btn{flex:1 1 100%}.pr-review-tip{display:none}}@media(max-width:380px){.pr-sticky-exit span,.pr-sticky-sum span{display:none}.pr-sticky-exit,.pr-sticky-sum{padding:0;width:44px}}@media(prefers-reduced-motion:reduce){.pr-toggle,.pr-mic,.pr-btn,.pr-sticky,.pr-toast,.pr-info-tip,.pr-practice .rd-word,.pr-details-sum:after{transition:none}.pr-mic.is-listening .pr-mic-ring,.pr-mic.is-reconnecting .pr-mic-ring{animation:none;opacity:1;transform:scale(1.08)}.pr-sticky-mic.is-listening{animation:none;box-shadow:0 0 0 4px var(--color-success-border)}}:root{--shell-topbar-h: 56px;--shell-tabbar-h: 60px;--shell-safe-top: env(safe-area-inset-top, 0px);--shell-safe-bottom: env(safe-area-inset-bottom, 0px);--ems-bottom-reserved: var(--shell-safe-bottom)}body.has-shell{padding-top:calc(var(--shell-topbar-h) + var(--shell-safe-top) + var(--space-5));padding-bottom:calc(var(--space-8) + var(--shell-safe-bottom));padding-left:max(1rem,env(safe-area-inset-left,0px));padding-right:max(1rem,env(safe-area-inset-right,0px));overflow-x:clip}@media(max-width:899.98px){:root{--ems-bottom-reserved: calc(var(--shell-tabbar-h) + var(--shell-safe-bottom))}:root:has(body.focus-mode){--ems-bottom-reserved: var(--shell-safe-bottom)}body.has-shell{padding-bottom:calc(var(--ems-bottom-reserved) + var(--space-6))}body.has-shell.focus-mode{padding-top:calc(var(--shell-safe-top) + var(--space-3));padding-bottom:calc(var(--space-6) + var(--shell-safe-bottom))}}#main{display:flex;flex-direction:column;gap:2rem;width:100%;outline:none}#main:focus{outline:none}.global-top-header{display:none}.app-topbar{position:fixed;top:0;left:0;right:0;z-index:var(--z-nav);box-sizing:border-box;height:calc(var(--shell-topbar-h) + var(--shell-safe-top));padding-top:var(--shell-safe-top);background:var(--color-surface-glass);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid var(--color-border)}.app-topbar__inner{display:flex;align-items:center;gap:var(--space-4);box-sizing:border-box;height:var(--shell-topbar-h);max-width:1100px;margin:0 auto;padding:0 max(1rem,env(safe-area-inset-right,0px)) 0 max(1rem,env(safe-area-inset-left,0px))}.app-brand{display:inline-flex;align-items:center;gap:var(--space-2);min-width:0;min-height:44px;color:var(--color-text);text-decoration:none;font-weight:var(--weight-extrabold);font-size:var(--text-base);letter-spacing:-.01em}.app-brand__mark{display:inline-grid;place-items:center;flex:none;width:34px;height:34px;border-radius:var(--radius-md)}.ems-logo{display:block;width:100%;height:100%}.app-brand__name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media(max-width:429.98px){.app-brand{flex:none;min-width:44px;justify-content:center}.app-brand__name{display:none}}.app-tabs{display:none;align-items:center;gap:var(--space-1);margin-left:var(--space-2)}.app-tab{display:inline-flex;align-items:center;gap:var(--space-2);min-height:40px;padding:0 var(--space-4);border-radius:var(--radius-pill);color:var(--color-text-muted);font-weight:var(--weight-semibold);font-size:var(--text-sm);text-decoration:none;transition:background var(--motion-fast) var(--ease-out),color var(--motion-fast) var(--ease-out)}.app-tab:hover{background:var(--color-surface-sunken);color:var(--color-text)}.app-tab[aria-current=page]{background:var(--color-primary-soft);color:var(--color-primary-ink)}.app-tab--course{color:var(--color-primary-ink);font-weight:var(--weight-bold)}.app-tab--course .ic{display:block;box-sizing:border-box;width:24px;height:24px;padding:4px;border-radius:var(--radius-pill);background:linear-gradient(135deg,var(--color-primary),var(--color-info));color:var(--color-on-primary)}.app-tab--course .ic[data-cat]{color:var(--color-on-primary)}.app-tab--course:hover{background:var(--color-primary-soft)}.app-tab__badge{display:inline-flex;align-items:center;min-height:20px;padding:0 var(--space-2);border-radius:var(--radius-pill);background:var(--color-warning);color:var(--color-on-primary);font-size:.6875rem;font-weight:var(--weight-extrabold);line-height:1;white-space:nowrap}.app-tab__badge[hidden]{display:none}.app-topbar__right{display:flex;align-items:center;gap:var(--space-3);margin-left:auto}.app-topbar__status{display:flex;align-items:center;gap:var(--space-2);min-width:0}.app-topbar__status:empty{display:none}.app-account{position:relative}.app-avatar{position:relative;display:inline-grid;place-items:center;width:44px;height:44px;padding:0;border-radius:var(--radius-pill);border:2px solid var(--color-primary-border);background:var(--color-primary-soft);color:var(--color-primary-ink);font-family:inherit;font-weight:var(--weight-extrabold);font-size:var(--text-sm);cursor:pointer;transition:border-color var(--motion-fast) var(--ease-out),box-shadow var(--motion-fast) var(--ease-out)}.app-avatar:hover{border-color:var(--color-primary)}.app-avatar[aria-expanded=true]{border-color:var(--color-primary);box-shadow:var(--shadow-focus)}.app-avatar__dot{position:absolute;right:-1px;bottom:-1px;width:13px;height:13px;border-radius:var(--radius-pill);border:2px solid var(--color-surface);background:var(--color-text-faint)}.app-avatar[data-state=synced] .app-avatar__dot{background:var(--color-success)}.app-avatar[data-state=syncing] .app-avatar__dot{background:var(--color-warning);animation:appPulse 1.2s ease-in-out infinite}.app-avatar[data-state=error] .app-avatar__dot{background:var(--color-danger)}@keyframes appPulse{50%{transform:scale(1.35)}}.app-popover{position:absolute;top:calc(100% + var(--space-2));right:0;z-index:var(--z-overlay);width:min(320px,calc(100vw - 2rem));box-sizing:border-box;padding:var(--space-2);border-radius:var(--radius-lg);border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text);box-shadow:var(--shadow-3);max-height:calc(100vh - var(--shell-topbar-h) - var(--shell-safe-top) - var(--ems-bottom-reserved) - var(--space-4));max-height:calc(100dvh - var(--shell-topbar-h) - var(--shell-safe-top) - var(--ems-bottom-reserved) - var(--space-4));overflow-y:auto;overscroll-behavior:contain}.app-popover[hidden]{display:none}.app-popover__head{display:flex;flex-direction:column;gap:2px;padding:var(--space-3) var(--space-3) var(--space-3);border-bottom:1px solid var(--color-border);margin-bottom:var(--space-2)}.app-popover__name{font-weight:var(--weight-extrabold);font-size:var(--text-base);overflow-wrap:anywhere}.app-popover__status{font-size:var(--text-xs);color:var(--color-text-muted);line-height:var(--leading-snug)}.app-popover__menu{display:flex;flex-direction:column;gap:2px}.app-popover__item{display:flex;align-items:center;gap:var(--space-3);width:100%;min-height:44px;padding:0 var(--space-3);border:0;border-radius:var(--radius-md);background:transparent;color:var(--color-text);font-family:inherit;font-size:var(--text-sm);font-weight:var(--weight-semibold);text-align:left;cursor:pointer}.app-popover__item[hidden]{display:none}.app-popover__item .ic{width:1.25em;text-align:center;color:var(--color-text-muted)}.app-popover__item:hover,.app-popover__item:focus-visible{background:var(--color-surface-sunken)}.app-popover__item[data-action=logout],.app-popover__item[data-action=logout] .ic{color:var(--color-danger-ink)}.app-popover__theme{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-2);padding:var(--space-2) var(--space-3)}.app-popover__theme[hidden]{display:none}.app-popover__theme-label{flex:1 0 100%;font-size:var(--text-xs);font-weight:var(--weight-bold);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em}.app-popover__chip{flex:1;min-height:44px;padding:0 var(--space-3);border-radius:var(--radius-pill);border:1px solid var(--color-border-strong);background:var(--color-surface);color:var(--color-text);font-family:inherit;font-size:var(--text-sm);font-weight:var(--weight-semibold);cursor:pointer}.app-popover__chip[aria-checked=true]{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-on-primary)}[data-lang-mode]{min-height:44px}.profile-goals[role=radiogroup]{grid-template-columns:repeat(2,minmax(0,1fr))}.app-header{position:sticky;top:calc(var(--shell-topbar-h) + var(--shell-safe-top) + var(--space-1));z-index:var(--z-sticky);display:flex;align-items:center;gap:var(--space-3);width:100%;box-sizing:border-box;min-height:52px;margin-bottom:calc(-1 * var(--space-3));padding:var(--space-1) var(--space-4) var(--space-1) var(--space-3);border:1px solid color-mix(in srgb,var(--color-border) 70%,transparent);border-radius:var(--radius-lg);background:color-mix(in srgb,var(--color-bg) 86%,transparent);box-shadow:var(--shadow-1);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.app-header[hidden]{display:none}.app-header__back{--back-inset-y: 3px;--back-inset-x: 0px;position:relative;isolation:isolate;display:inline-flex;align-items:center;gap:var(--space-1);flex:none;min-height:44px;min-width:44px;padding:0 var(--space-4);justify-content:center;border-radius:var(--radius-pill);border:0;background:transparent;color:var(--color-text-muted);font-family:inherit;font-weight:var(--weight-semibold);font-size:var(--text-sm);line-height:1;cursor:pointer;-webkit-tap-highlight-color:transparent}.app-header__back:before{content:"";position:absolute;inset:var(--back-inset-y) var(--back-inset-x);z-index:-1;border-radius:var(--radius-pill);border:1px solid var(--color-border);background:color-mix(in srgb,var(--color-surface) 78%,transparent);box-shadow:var(--shadow-1);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.app-header__back .ic{font-size:1em;opacity:.85}.app-header__back[hidden]{display:none}.app-header__back:hover{color:var(--color-text)}.app-header__back:hover:before{background:var(--color-surface);border-color:var(--color-border-strong)}.app-header__back:focus-visible:before{border-color:var(--color-focus)}.app-header__back:active:before{background:var(--color-surface-sunken)}.app-header__back.is-exit{padding:0 var(--space-4) 0 var(--space-3)}.app-header__back.is-exit:is(:hover,:focus-visible){color:var(--color-danger-ink)}.app-header__back.is-exit:is(:hover,:focus-visible) .ic{color:var(--color-danger);opacity:1}.app-header__back.is-exit:is(:hover,:focus-visible):before{background:var(--color-danger-soft);border-color:var(--color-danger-border)}.app-header__back.is-exit:active:before{background:var(--color-danger-soft)}@media(prefers-reduced-motion:no-preference){.app-header__back,.app-header__back .ic,.app-header__back:before{transition:color var(--motion-fast) var(--ease-out),background-color var(--motion-fast) var(--ease-out),border-color var(--motion-fast) var(--ease-out),opacity var(--motion-fast) var(--ease-out),transform var(--motion-fast) var(--ease-out)}.app-header__back:active:before{transform:scale(.97)}}.app-header__title{flex:1;min-width:0;margin:0;font-size:var(--text-lg);font-weight:var(--weight-extrabold);color:var(--color-text);letter-spacing:-.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.app-header__right{display:flex;align-items:center;gap:var(--space-2);flex:none}.app-header__progress{padding:6px var(--space-3);border-radius:var(--radius-pill);background:var(--color-primary-soft);color:var(--color-primary-ink);font-size:var(--text-sm);font-weight:var(--weight-bold);font-variant-numeric:tabular-nums}@media(max-width:899.98px){.app-header__back:not(.is-exit) .app-header__back-label{display:none}.app-header__back:not(.is-exit){padding:0;width:44px;--back-inset-x: 3px}.app-header__title{font-size:var(--text-base);white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:var(--leading-tight)}body.focus-mode .app-header{top:calc(var(--shell-safe-top) + var(--space-1))}}.app-tabbar{position:fixed;left:0;right:0;bottom:0;z-index:var(--z-nav);display:none;justify-content:center;box-sizing:border-box;padding:0 max(var(--space-2),env(safe-area-inset-right,0px)) var(--shell-safe-bottom) max(var(--space-2),env(safe-area-inset-left,0px));background:var(--color-surface-glass);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-top:1px solid var(--color-border)}.app-tabbar__tab{display:flex;flex:1;flex-direction:column;align-items:center;justify-content:center;gap:3px;max-width:160px;min-height:var(--shell-tabbar-h);color:var(--color-text-muted);font-size:var(--text-xs);font-weight:var(--weight-semibold);text-decoration:none;-webkit-tap-highlight-color:transparent}.app-tabbar__tab .ic{display:block;box-sizing:border-box;width:52px;height:30px;padding:5px 16px;border-radius:var(--radius-pill);transition:background var(--motion-fast) var(--ease-out),color var(--motion-fast) var(--ease-out)}.app-tabbar__tab[aria-current=page]{color:var(--color-primary-ink);font-weight:var(--weight-extrabold)}.app-tabbar__tab[aria-current=page] .ic{background:var(--color-primary-soft)}.app-tabbar__tab{position:relative;min-width:0}.app-tabbar__tab--course{color:var(--color-primary-ink);font-weight:var(--weight-bold)}.app-tabbar__tab--course .ic,.app-tabbar__tab--course .ic[data-cat],.app-tabbar__tab--course[aria-current=page] .ic[data-cat]{background:linear-gradient(135deg,var(--color-primary),var(--color-info));color:var(--color-on-primary)}.app-tabbar__tab--course[aria-current=page] .ic{box-shadow:0 0 0 2px var(--color-surface),0 0 0 4px var(--color-primary);background:linear-gradient(135deg,var(--color-primary),var(--color-info));color:var(--color-on-primary)}.app-tabbar__dot{position:absolute;top:6px;left:calc(50% + 10px);width:12px;height:12px;border-radius:50%;background:var(--color-warning);border:2px solid var(--color-surface)}.app-tabbar__dot[hidden]{display:none}@media(prefers-reduced-motion:no-preference){.app-tabbar__dot{animation:appTabPulse 2.4s var(--ease-out) infinite}}@keyframes appTabPulse{0%,to{transform:scale(1)}50%{transform:scale(1.25)}}@media(max-width:359.98px){.app-tabbar{padding-left:2px;padding-right:2px}.app-tabbar__tab{font-size:.6875rem}.app-tabbar__tab .ic{width:44px;padding:5px 12px}}@media(max-width:899.98px){.app-tabbar{display:flex}body.focus-mode .app-tabbar,body.focus-mode .app-topbar{display:none}.app-topbar{--shell-topbar-h: 52px}body.has-shell:not(.focus-mode){padding-top:calc(52px + var(--shell-safe-top) + var(--space-4))}.app-header{top:calc(52px + var(--shell-safe-top) + var(--space-1))}}@media(max-height:500px)and (orientation:landscape){:root{--shell-topbar-h: 44px;--shell-tabbar-h: 48px}.app-topbar{--shell-topbar-h: 44px}body.has-shell:not(.focus-mode){padding-top:calc(var(--shell-topbar-h) + var(--shell-safe-top) + var(--space-3))}.app-header{top:calc(var(--shell-topbar-h) + var(--shell-safe-top) + var(--space-1));min-height:44px;padding-top:0;padding-bottom:0}.app-tabbar__tab{flex-direction:row;gap:var(--space-2)}.app-tabbar__tab .ic{width:40px;height:28px;padding:5px 12px}.app-tabbar__dot{position:static;flex:none;width:10px;height:10px;margin-left:calc(-1 * var(--space-1))}}@media(min-width:900px){.app-tabs{display:flex}.app-tabbar,body.focus-mode .app-tabs{display:none}.app-header{min-height:64px;padding-left:var(--space-4)}}@media(min-width:900px)and (max-height:500px)and (orientation:landscape){.app-header{min-height:44px}}body.has-app-header #quizTopBar,body.has-app-header #readingsTopBar,body.has-app-header #lstTopBar{display:none!important}body.has-app-header #viewRecords>.submenu-top-bar,body.has-app-header #btnReaderBack{display:none}body.has-app-header .quiz-navbar .nav-left>.btn-back-menu,body.has-app-header .quiz-navbar .active-quiz-badge{display:none}.install-guide__steps{margin:0;padding-left:var(--space-5);display:grid;gap:var(--space-2);font-size:var(--text-base);line-height:var(--leading-body);color:var(--color-text)}.ems-install-toast{position:fixed;left:50%;bottom:calc(var(--ems-bottom-reserved) + var(--space-4));transform:translate(-50%);max-width:calc(100vw - 2rem);pointer-events:none;z-index:var(--z-toast);padding:var(--space-3) var(--space-4);background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-3);font-weight:var(--weight-bold)}.app-pron-btn{display:inline-flex;align-items:center;gap:var(--space-2);min-height:44px;min-width:44px;box-sizing:border-box;padding:0 var(--space-4);border-radius:var(--radius-pill);text-decoration:none;white-space:nowrap;border:1px solid var(--color-primary-border);background:var(--color-primary-soft);color:var(--color-primary-ink);font-weight:var(--weight-bold);font-size:var(--text-sm)}.app-pron-btn:hover{background:var(--color-surface-sunken)}.app-pron-btn[aria-current=page]{background:var(--color-primary-soft);border-color:var(--color-primary);border-width:2px;color:var(--color-primary-ink)}.app-pron-btn:focus-visible{outline:3px solid var(--color-focus);outline-offset:2px}@media(max-width:479.98px){.app-pron-btn{padding:0;justify-content:center;width:44px}.app-pron-btn__label{display:none}}body.focus-mode .app-pron-btn{display:none}@media(min-width:900px){.app-topbar__inner{max-width:1320px}.app-brand{flex:none;min-width:44px;justify-content:center}.app-tabs{min-width:0}.app-topbar__right,.app-topbar__status{flex:none}}@media(min-width:900px)and (max-width:1439.98px){.app-brand__name{display:none}}@media(min-width:1440px){.app-topbar__inner{max-width:1440px}}@media(min-width:900px)and (max-width:1299.98px){.app-topbar__inner{gap:var(--space-2)}.app-tab{padding:0 var(--space-3);gap:var(--space-1)}.app-pron-btn{padding:0 var(--space-3)}.app-tab__badge{font-size:0;width:10px;min-height:10px;height:10px;padding:0;margin-left:-2px}}@media(min-width:900px)and (max-width:1139.98px){.app-tab:not([aria-current=page])>span:not(.app-tab__badge){position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.app-tab:not([aria-current=page]){position:relative;padding:0 var(--space-3);min-width:40px;justify-content:center}.app-pron-btn{padding:0;justify-content:center;width:44px}.app-pron-btn__label,.home-chip__mini{display:none}}@media(min-width:900px){body:has(#viewReadings:not([style*="display: none"]) #readingsStepReader:not([style*="display: none"])) .app-header{max-width:880px;margin-inline:auto}}@media(pointer:coarse){.app-topbar,.app-tabbar,.app-header{-webkit-backdrop-filter:none;backdrop-filter:none;background:var(--color-surface-glass-hover)}.app-header__back:before{-webkit-backdrop-filter:none;backdrop-filter:none;background:var(--color-surface-glass-hover)}}#viewMainMenu.home{display:flex;flex-direction:column;gap:var(--space-5);width:100%}.home [hidden],.home-chip [hidden]{display:none}.home-hero{position:relative;isolation:isolate;overflow:hidden;display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-2);padding:var(--space-5);border-radius:var(--radius-lg);border:1px solid var(--hero-glass-border);background:linear-gradient(125deg,var(--hero-a) 0%,var(--hero-b) 55%,var(--hero-c) 100%);box-shadow:0 18px 40px -22px var(--hero-b);color:var(--hero-ink)}.home-hero:after{content:"";position:absolute;z-index:-1;pointer-events:none;right:-70px;top:-90px;width:280px;height:280px;border-radius:var(--radius-pill);background:radial-gradient(circle,var(--hero-orb) 0%,transparent 65%);box-shadow:-420px 250px 0 -80px var(--hero-glass)}.home-hero>*{position:relative;z-index:var(--z-base)}.home-eyebrow{display:inline-flex;align-items:center;justify-self:start;gap:var(--space-2);margin:0;padding:4px var(--space-3);border-radius:var(--radius-pill);border:1px solid var(--hero-glass-border);background:var(--hero-glass);color:var(--hero-ink);font-size:var(--text-xs);font-weight:var(--weight-bold);letter-spacing:.08em;text-transform:uppercase;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.home-eyebrow .ic,.home-eyebrow .ic[data-cat]{color:var(--hero-ink)}.home-hero__who{display:flex;align-items:center;gap:var(--space-4);min-width:0;margin-top:var(--space-1)}.home-hero__avatar{flex:none;border-radius:var(--radius-pill);box-shadow:0 0 0 3px var(--hero-glass-border),0 10px 24px -8px var(--hero-c)}.home-greeting{margin:0;color:var(--hero-ink);font-family:var(--font-display);font-size:var(--text-2xl);font-weight:var(--weight-extrabold);line-height:var(--leading-tight);letter-spacing:-.02em;overflow-wrap:anywhere;text-shadow:0 2px 12px var(--hero-b)}.home-greeting:focus{outline:none}.home-sub{margin:0;max-width:60ch;color:var(--hero-ink-soft);font-size:var(--text-base);line-height:var(--leading-body)}.home-hero__stats{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-2)}.home-hero__stat{display:inline-flex;align-items:center;gap:var(--space-1);min-height:36px;padding:0 var(--space-3);border-radius:var(--radius-pill);border:1px solid var(--hero-glass-border);background:var(--hero-glass);color:var(--hero-ink);font-size:var(--text-sm);font-weight:var(--weight-semibold);font-variant-numeric:tabular-nums;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.home-hero__stat[hidden]{display:none}.home-hero__stat strong{font-size:var(--text-base);font-weight:var(--weight-extrabold)}.home-hero__stat .ic,.home-hero__stat .ic[data-cat]{color:var(--hero-ink)}.home-hero__stat--streak .ic{color:var(--flame-a)}.home-hero__stat--points.is-met{border-color:var(--ok-a)}@media(max-width:599.98px){.home-hero{padding:var(--space-4);gap:var(--space-1)}.home-hero__stats{flex-wrap:nowrap;gap:var(--space-1);margin-top:var(--space-1)}.home-hero__stat{min-height:30px;padding:0 var(--space-2);font-size:var(--text-xs)}.home-hero__stat strong{font-size:var(--text-sm)}}@media(max-width:599.98px)and (max-height:760px){.home-eyebrow,.home-hero__stats{display:none}}@media(min-width:600px){.home-hero{padding:var(--space-6) var(--space-7, 40px)}.home-greeting{font-size:var(--text-3xl)}}@media(min-width:900px){.home-hero{grid-template-columns:minmax(0,1fr) auto;column-gap:var(--space-6)}.home-hero>.home-eyebrow,.home-hero>.home-hero__who,.home-hero>.home-sub{grid-column:1}.home-hero__stats{grid-column:2;grid-row:1 / span 3;align-self:center;flex-direction:column;align-items:stretch;margin:0}.home-hero__stat{min-height:44px;padding:0 var(--space-4)}}.home-card{display:flex;flex-direction:column;gap:var(--space-3);min-width:0;padding:var(--space-4);border-radius:var(--radius-lg);border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text);box-shadow:var(--shadow-1)}@media(min-width:600px){.home-card{padding:var(--space-5)}}.home-card__label{display:flex;align-items:center;gap:var(--space-2);margin:0;color:var(--color-text-muted);font-size:var(--text-xs);font-weight:var(--weight-bold);letter-spacing:.06em;text-transform:uppercase}.home-card__label .ic{color:var(--color-primary)}.home-dash{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-4)}@media(min-width:900px){.home-dash{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:stretch}.home-continue__cta{margin-top:auto}}.home-course{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"sensei ring" "body body";align-items:center;gap:var(--space-3) var(--space-4);position:relative;isolation:isolate;overflow:hidden;background:linear-gradient(120deg,var(--color-info-soft) 0%,var(--color-surface) 55%,var(--color-primary-soft) 100%);border-color:var(--color-primary-border);box-shadow:var(--shadow-2, var(--shadow-1))}.home-course:before{content:"";position:absolute;z-index:-1;left:0;top:0;bottom:0;width:6px;background:linear-gradient(180deg,var(--ring-a),var(--ring-b))}.home-course__sensei{grid-area:sensei;display:flex;align-items:center;min-width:0}.home-course__sensei{position:relative}.home-course__sensei:before{content:"";position:absolute;z-index:-1;inset:-14px;border-radius:var(--radius-pill);background:radial-gradient(circle,var(--color-info-border) 0%,transparent 68%)}.home-course__sensei .ems-avatar{box-shadow:0 0 0 4px var(--color-surface),0 0 0 7px var(--color-info-border),0 14px 26px -12px var(--ring-b)}.home-course__body{grid-area:body;display:flex;flex-direction:column;gap:var(--space-2);min-width:0}.home-course .home-card__label{flex-wrap:wrap;row-gap:var(--space-1);color:var(--color-primary-ink)}.home-course__badge{display:inline-flex;align-items:center;min-height:20px;padding:0 var(--space-2);border-radius:var(--radius-pill);background:var(--color-warning);color:var(--color-on-primary);font-size:var(--text-xs);letter-spacing:.04em}.home-course__title{margin:0;color:var(--color-text);font-size:var(--text-xl);font-weight:var(--weight-extrabold);line-height:var(--leading-snug);overflow-wrap:anywhere}.home-course__meta{margin:0;color:var(--color-text-muted);font-size:var(--text-copy);line-height:var(--leading-body);max-width:62ch}.home-course__cta{align-self:stretch;margin-top:var(--space-1);text-decoration:none}@media(max-height:700px)and (max-width:520px){.home-course{gap:var(--space-2)}.home-course__title{font-size:var(--text-lg)}.home-course__meta{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:var(--text-sm)}.home-course__ring{width:56px;height:56px}}.home-course__ring{grid-area:ring;position:relative;display:grid;place-items:center;width:68px;height:68px;flex:none;justify-self:end}.home-course__ring .home-ring__svg{position:absolute;inset:0;width:100%;height:100%;transform:rotate(-90deg)}.home-course__ring .home-ring__track{stroke:var(--color-surface-sunken)}.home-course__ring .home-ring__bar{stroke:url(#homeCourseGrad)}.home-course__ringtxt{position:relative;display:flex;align-items:baseline;color:var(--color-text);font-variant-numeric:tabular-nums}.home-course__ringtxt strong{font-size:var(--text-lg);font-weight:var(--weight-extrabold)}.home-course__ringtxt small{color:var(--color-text-muted);font-size:var(--text-xs);font-weight:var(--weight-semibold)}.home-course.is-done .home-ring__bar{stroke:var(--color-success)}.home-course__badge{background:linear-gradient(90deg,var(--flame-a),var(--flame-b))}@media(min-width:600px){.home-course{grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"sensei body ring";gap:var(--space-5)}.home-course__ring{width:84px;height:84px}.home-course__cta{align-self:flex-start;min-width:220px}}.home-continue{--kind: var(--kind-quiz);position:relative;isolation:isolate;overflow:hidden}.home-continue[data-kind=reading]{--kind: var(--kind-reading)}.home-continue[data-kind=listening]{--kind: var(--kind-listening)}.home-continue[data-kind=pronunciation]{--kind: var(--kind-pronunciation)}.home-continue[data-kind=course]{--kind: var(--kind-course)}.home-continue.is-active{background:var(--color-surface);border-color:var(--color-border)}.home-continue:before{content:"";position:absolute;left:0;right:0;top:0;height:4px;z-index:-1;background:linear-gradient(90deg,var(--kind),var(--ring-a))}.home-continue__row{display:flex;align-items:center;gap:var(--space-3);min-width:0}.home-continue__icon{display:grid;place-items:center;flex:none;width:52px;height:52px;border-radius:var(--radius-md);background:linear-gradient(140deg,var(--ring-a),var(--kind));box-shadow:0 8px 18px -8px var(--kind);color:var(--zone-icon-ink);font-size:var(--text-lg)}.home-continue__icon .ic,.home-continue__icon .ic[data-cat]{color:var(--zone-icon-ink)}.home-continue__info{min-width:0}.home-continue__kind{margin:0;color:var(--color-text-muted);font-size:var(--text-sm);font-weight:var(--weight-semibold)}.home-continue__title{margin:0;color:var(--color-text);font-size:var(--text-lg);font-weight:var(--weight-extrabold);line-height:var(--leading-snug);overflow-wrap:anywhere}.home-continue__meta{margin:0;color:var(--color-text-muted);font-size:var(--text-copy);line-height:var(--leading-body)}.home-continue__cta{align-self:flex-start;margin-top:var(--space-3);min-width:150px;text-decoration:none}@media(max-width:599.98px){.home-continue__cta{align-self:stretch}}.home-progress{display:flex;align-items:center;gap:var(--space-3)}.home-progress__bar{flex:1;height:10px;border-radius:var(--radius-pill);background:var(--color-surface-sunken);overflow:hidden}.home-progress__fill{display:block;height:100%;border-radius:var(--radius-pill);background:linear-gradient(90deg,var(--ring-a),var(--kind, var(--ring-b)))}.home-progress__txt{color:var(--color-primary-ink);font-size:var(--text-sm);font-weight:var(--weight-bold);font-variant-numeric:tabular-nums}.home-today__top{display:grid;grid-template-columns:auto minmax(0,1fr);gap:var(--space-3) var(--space-4);align-items:center}.home-today__top .home-goalchip{grid-column:1 / -1;justify-self:start}@media(min-width:420px){.home-today__top{grid-template-columns:auto minmax(0,1fr) auto}.home-today__top .home-goalchip{grid-column:auto;justify-self:end}}.home-ring{position:relative;display:grid;place-items:center;width:76px;height:76px;flex:none}.home-ring__svg{position:absolute;inset:0;width:100%;height:100%;transform:rotate(-90deg)}.home-ring__track,.home-ring__bar{fill:none;stroke-width:8}.home-ring__track{stroke:var(--color-primary-soft)}.home-ring__bar{stroke:url(#homeRingGrad);stroke-linecap:round;transition:stroke-dashoffset .6s var(--ease-out),stroke var(--motion-base) var(--ease-out)}.is-goal-met .home-ring__bar{stroke:url(#homeRingGradOk)}.home-today .home-ring{filter:drop-shadow(0 8px 14px var(--color-primary-border))}.home-today.is-goal-met .home-ring{filter:drop-shadow(0 8px 14px var(--color-success-border))}.home-ring__pct{position:relative;color:var(--color-text);font-size:var(--text-sm);font-weight:var(--weight-extrabold);font-variant-numeric:tabular-nums}.home-ring__check{position:relative;color:var(--color-success);font-size:var(--text-xl)}.home-today__count{margin:0;color:var(--color-text);font-size:var(--text-base);font-weight:var(--weight-semibold);font-variant-numeric:tabular-nums}.home-today__num{font-size:var(--text-3xl);font-weight:var(--weight-extrabold);letter-spacing:-.03em;background:linear-gradient(120deg,var(--ring-a),var(--ring-b));-webkit-background-clip:text;background-clip:text;color:transparent}.is-goal-met .home-today__num{background-image:linear-gradient(120deg,var(--ok-a),var(--ok-b))}.home-today__hint{margin:var(--space-0) 0 0;color:var(--color-text-muted);font-size:var(--text-copy);line-height:var(--leading-snug)}.is-goal-met .home-today__hint{color:var(--color-success-ink);font-weight:var(--weight-semibold)}.is-goal-met{border-color:var(--color-success-border)}.home-goalchip{display:inline-flex;align-items:center;gap:var(--space-2);min-height:44px;padding:0 var(--space-4);border-radius:var(--radius-pill);border:1px solid var(--color-border-strong);background:var(--color-surface);color:var(--color-text);font-family:inherit;font-size:var(--text-sm);font-weight:var(--weight-bold);cursor:pointer}.home-goalchip:hover{background:var(--color-surface-sunken)}.home-goalchip .ic:first-child{color:var(--color-primary)}.home-goalchip .ic:last-child{font-size:var(--text-xs);color:var(--color-text-muted)}.home-goalchip[aria-expanded=true] .ic:last-child{transform:rotate(180deg)}.home-picker{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);padding:var(--space-3);border-radius:var(--radius-md);background:var(--color-surface-2);border:1px solid var(--color-border)}.home-picker__label{flex:1 0 100%;color:var(--color-text-muted);font-size:var(--text-sm);font-weight:var(--weight-semibold)}.home-opt{min-width:56px;min-height:48px;padding:0 var(--space-4);border-radius:var(--radius-md);border:1px solid var(--color-border-strong);background:var(--color-surface);color:var(--color-text);font-family:inherit;font-size:var(--text-base);font-weight:var(--weight-bold);font-variant-numeric:tabular-nums;cursor:pointer}.home-opt[aria-checked=true]{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-on-primary)}.home-streakrow{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2) var(--space-3)}.home-streak{display:inline-flex;align-items:center;gap:var(--space-1);padding:6px var(--space-3);border-radius:var(--radius-pill);background:var(--color-warning-soft);border:1px solid var(--color-warning-border);color:var(--color-warning-ink);font-size:var(--text-sm);font-weight:var(--weight-semibold)}.home-streak .ic{color:var(--flame-b);margin-right:var(--space-1)}.home-streak{background:linear-gradient(90deg,var(--color-warning-soft),var(--color-surface))}.home-streak strong{font-weight:var(--weight-extrabold);font-variant-numeric:tabular-nums}.home-streak__msg{color:var(--color-text-muted);font-size:var(--text-copy)}.home-week{display:flex;justify-content:space-between;gap:var(--space-1);margin:0;padding:0;list-style:none}.home-week__item{display:flex;flex-direction:column;align-items:center;gap:var(--space-1);flex:1;min-width:0}.home-week__day{color:var(--color-text-muted);font-size:var(--text-xs);font-weight:var(--weight-bold)}.home-week__item.is-today .home-week__day{color:var(--color-primary-ink)}.home-week__dot{display:grid;place-items:center;width:28px;height:28px;border-radius:var(--radius-pill);border:2px solid var(--color-border-strong);background:transparent;color:var(--color-on-primary);font-size:var(--text-xs)}.home-week__dot .ic{opacity:0}.home-week__item[data-state=some] .home-week__dot{background:var(--color-primary-soft);border-color:var(--color-primary)}.home-week__item[data-state=goal] .home-week__dot{background:linear-gradient(140deg,var(--ok-a),var(--ok-b));border-color:var(--ok-b);box-shadow:0 4px 10px -4px var(--ok-b)}.home-week__item[data-state=goal] .home-week__dot .ic{opacity:1}.home-week__item.is-today .home-week__dot{box-shadow:var(--shadow-focus)}button.home-streak--btn{font-family:inherit;cursor:pointer;min-height:44px}button.home-streak--btn:hover{border-color:var(--color-warning)}button.home-streak--btn[hidden]{display:none}.home-today__foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-1) var(--space-3)}.home-today__acts{display:inline-flex;flex-wrap:wrap;align-items:center;margin-left:auto}.home-points{color:var(--color-text-muted);font-size:var(--text-sm);font-variant-numeric:tabular-nums}.home-linkbtn,.home-calbtn{min-height:44px;padding:0 var(--space-3);border:0;border-radius:var(--radius-md);background:transparent;color:var(--color-text-muted);font-family:inherit;font-size:var(--text-sm);font-weight:var(--weight-semibold);text-decoration:underline;text-underline-offset:3px;cursor:pointer}.home-linkbtn:hover,.home-calbtn:hover{color:var(--color-text)}.home-zones-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:var(--space-1) var(--space-3);margin:0 0 var(--space-3)}.home-zones-head .home-section-title{margin:0}.home-zones-sub{margin:0;color:var(--color-text-muted);font-size:var(--text-sm)}.home-section-title{margin:0 0 var(--space-3);color:var(--color-text);font-size:var(--text-lg);font-weight:var(--weight-extrabold)}.home-zones{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3);margin:0;padding:0;list-style:none}.home-zones>li{display:flex;min-width:0}.home-zones__item--feature,.home-zones__item--arcade{grid-column:1 / -1}.home-zone{--zone-soft: var(--color-primary-soft);--zone-ink: var(--color-primary-ink);--zone-solid: var(--color-primary);--zone-border: var(--color-primary-border);--zone-a: var(--zone-practice-a);--zone-b: var(--zone-practice-b);position:relative;isolation:isolate;overflow:hidden;display:flex;flex:1;flex-direction:column;gap:var(--space-3);min-width:0;min-height:48px;padding:var(--space-4);border-radius:var(--radius-lg);border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text);text-decoration:none;box-shadow:var(--shadow-1);transition:transform var(--motion-base) var(--ease-out),box-shadow var(--motion-base) var(--ease-out),border-color var(--motion-base) var(--ease-out);-webkit-tap-highlight-color:transparent}.home-zone:before{content:"";position:absolute;z-index:-1;inset:auto -30% 45% auto;width:75%;aspect-ratio:1;border-radius:50%;background:radial-gradient(closest-side,var(--zone-soft),transparent);opacity:.9;pointer-events:none}a.home-zone:hover{transform:translateY(-2px);box-shadow:var(--shadow-3);border-color:var(--zone-border)}a.home-zone:hover .home-zone__go{transform:translate(3px);color:var(--zone-ink)}a.home-zone:active{transform:translateY(0)}a.home-zone:focus-visible{outline:3px solid var(--color-focus);outline-offset:2px}.home-zone--practice{--zone-a: var(--zone-practice-a);--zone-b: var(--zone-practice-b)}.home-zone--read{--zone-soft: var(--color-success-soft);--zone-ink: var(--color-success-ink);--zone-solid: var(--color-success);--zone-border: var(--color-success-border);--zone-a: var(--zone-read-a);--zone-b: var(--zone-read-b)}.home-zone--listen{--zone-soft: var(--rose-surface);--zone-ink: var(--rose-ink);--zone-solid: var(--rose);--zone-border: var(--rose-border);--zone-a: var(--zone-listen-a);--zone-b: var(--zone-listen-b)}.home-zone--pron{--zone-soft: var(--pron-soft);--zone-ink: var(--pron-ink);--zone-solid: var(--pron-solid);--zone-border: var(--pron-border);--zone-a: var(--zone-pron-a);--zone-b: var(--zone-pron-b)}.home-zone--course{--zone-soft: var(--color-info-soft);--zone-ink: var(--color-info-ink);--zone-solid: var(--color-info);--zone-border: var(--color-info-border);--zone-a: var(--zone-course-a);--zone-b: var(--zone-course-b)}.home-zone--records{--zone-soft: var(--color-warning-soft);--zone-ink: var(--color-warning-ink);--zone-solid: var(--color-warning);--zone-border: var(--color-warning-border);--zone-a: var(--zone-records-a);--zone-b: var(--zone-records-b)}.home-zone__top{display:flex;align-items:center;gap:var(--space-3)}.home-zone__icon{display:grid;place-items:center;flex:none;width:44px;height:44px;border-radius:var(--radius-md);background:linear-gradient(140deg,var(--zone-a),var(--zone-b));box-shadow:0 6px 14px -6px var(--zone-b),inset 0 1px 0 var(--zone-icon-shine);color:var(--zone-icon-ink);font-size:var(--text-lg);transition:transform var(--motion-base) var(--ease-out)}a.home-zone:hover .home-zone__icon,a.home-zone:active .home-zone__icon,a.home-zone:focus-visible .home-zone__icon{transform:scale(1.06) rotate(-3deg)}@media(prefers-reduced-motion:reduce){a.home-zone:hover .home-zone__icon,a.home-zone:active .home-zone__icon,a.home-zone:focus-visible .home-zone__icon{transform:none}}.home-zone__icon .ic,.home-zone__icon .ic[data-cat]{color:var(--zone-icon-ink)}.home-zone__kicker{padding:2px var(--space-2);border-radius:var(--radius-pill);border:1px solid var(--zone-border);background:var(--zone-soft);color:var(--zone-ink);font-size:var(--text-xs);font-weight:var(--weight-bold);letter-spacing:.02em;white-space:nowrap}.home-zone__go{margin-left:auto;flex:none;color:var(--color-text-faint);transition:transform var(--motion-base) var(--ease-out),color var(--motion-base) var(--ease-out)}.home-zone__body{display:flex;flex-direction:column;gap:var(--space-1);min-width:0}.home-zone__title{color:var(--color-text);font-size:var(--text-lg);font-weight:var(--weight-extrabold);line-height:var(--leading-tight)}.home-zone__desc{color:var(--color-text-muted);font-size:var(--text-sm);line-height:var(--leading-snug)}.home-zone__foot{display:flex;flex-direction:column;gap:var(--space-2);margin-top:auto}.home-zone__meta{color:var(--zone-ink);font-size:var(--text-xs);font-weight:var(--weight-bold);line-height:var(--leading-snug)}.home-zone__bar{display:block;height:6px;border-radius:var(--radius-pill);background:var(--color-surface-sunken);overflow:hidden}.home-zone__bar[hidden]{display:none}.home-zone__bar>span{display:block;height:100%;width:0;border-radius:inherit;background:linear-gradient(90deg,var(--zone-a),var(--zone-b));transition:width var(--motion-slow, .6s) var(--ease-out)}.home-zones__item--feature .home-zone{padding:var(--space-5)}.home-zones__item--feature .home-zone__title{font-size:var(--text-xl)}@media(max-width:599.98px){.home-zones__item--read{grid-column:auto}.home-zones__item--records{grid-column:1 / -1}.home-zones__item--records .home-zone{padding:var(--space-5)}.home-zones__item--records .home-zone__title{font-size:var(--text-xl)}.home-zones__item:not(.home-zones__item--practice):not(.home-zones__item--records):not(.home-zones__item--arcade) .home-zone__desc{display:none}.home-zones__item:not(.home-zones__item--practice):not(.home-zones__item--records):not(.home-zones__item--arcade) .home-zone__kicker{display:none}}@media(min-width:600px){.home-zones{gap:var(--space-4)}.home-zone{padding:var(--space-5)}}@media(min-width:900px){.home-zones{grid-template-columns:repeat(4,minmax(0,1fr))}.home-zones__item--feature{grid-column:span 2}.home-zones__item--arcade{grid-column:1 / -1}}@media(max-width:359.98px){.home-zones{grid-template-columns:minmax(0,1fr)}}.home-onboard{border-color:var(--color-primary-border);background:var(--color-surface);box-shadow:var(--shadow-2)}.home-ob__head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.home-ob__title{margin:0;color:var(--color-text);font-size:var(--text-xl);font-weight:var(--weight-extrabold);line-height:var(--leading-tight)}.home-ob__title:focus{outline:none}.home-ob__body{display:flex;flex-direction:column;gap:var(--space-3)}.home-ob__note{margin:0;color:var(--color-text-muted);font-size:var(--text-sm);line-height:var(--leading-body)}.home-ob__choices{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-3)}@media(min-width:600px){.home-ob__choices{grid-template-columns:repeat(2,minmax(0,1fr))}}.home-ob__choices--row{grid-template-columns:repeat(2,minmax(0,1fr))}@media(min-width:600px){.home-ob__choices--row{grid-template-columns:repeat(4,minmax(0,1fr))}}.home-choice{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:2px;min-height:64px;padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);border:2px solid var(--color-border-strong);background:var(--color-surface);color:var(--color-text);font-family:inherit;text-align:left;cursor:pointer}.home-choice strong{font-size:var(--text-base);font-weight:var(--weight-extrabold)}.home-choice span{color:var(--color-text-muted);font-size:var(--text-sm)}.home-choice--course{margin-top:var(--space-3);width:100%;border-style:dashed;border-color:var(--color-primary-border);background:var(--color-primary-soft)}.home-choice--course .ic{color:var(--color-primary);font-size:var(--text-lg)}.home-choice--num strong{font-size:var(--text-xl);font-variant-numeric:tabular-nums}.home-choice[aria-checked=true]{border-color:var(--color-primary);background:var(--color-primary-soft)}.home-choice[aria-checked=true]:after{content:"\2713";content:"\2713" / "";position:absolute;top:var(--space-2);right:var(--space-3);color:var(--color-primary-ink);font-weight:var(--weight-extrabold)}.home-ob__tabs{display:flex;flex-direction:column;gap:var(--space-2);margin:0;padding:0;list-style:none}.home-ob__tabs li{display:flex;align-items:center;gap:var(--space-3);color:var(--color-text-muted);font-size:var(--text-sm);line-height:var(--leading-snug)}.home-ob__tabs strong{color:var(--color-text)}.home-ob__ico{display:grid;place-items:center;flex:none;width:36px;height:36px;border-radius:var(--radius-md);background:var(--color-primary-soft);color:var(--color-primary-ink)}.home-ob__install{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3);padding:var(--space-3);border-radius:var(--radius-md);background:var(--color-surface-2);border:1px solid var(--color-border)}.home-ob__install p{margin:0;flex:1 1 220px;color:var(--color-text-muted);font-size:var(--text-sm);line-height:var(--leading-snug)}.home-ob__foot{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.home-ob__dots{display:flex;gap:var(--space-2);margin:0;padding:0;list-style:none}.home-ob__dot{width:10px;height:10px;border-radius:var(--radius-pill);border:2px solid var(--color-border-strong)}.home-ob__dot.is-on{background:var(--color-primary);border-color:var(--color-primary)}.home-ob__dot.is-done{background:var(--color-primary-border);border-color:var(--color-primary-border)}.home-chip{display:inline-flex;align-items:center;gap:var(--space-3);min-height:44px;padding:0 var(--space-3);border-radius:var(--radius-pill);border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text);font-size:var(--text-sm);font-weight:var(--weight-bold);font-variant-numeric:tabular-nums;text-decoration:none;white-space:nowrap}.home-chip:hover{background:var(--color-surface-sunken)}.home-chip__streak{display:inline-flex;align-items:center;gap:var(--space-1);color:var(--color-warning-ink)}.home-chip__streak .ic{color:var(--color-warning)}.home-chip__goal{display:inline-flex;align-items:center;gap:var(--space-2)}.home-chip__mini{display:none;width:34px;height:6px;border-radius:var(--radius-pill);background:var(--color-primary-soft);border:1px solid var(--color-primary-border);overflow:hidden}.home-chip__minifill{display:block;height:100%;width:0;background:var(--color-primary)}.home-chip.is-goal-met .home-chip__minifill{background:var(--color-success)}.home-chip.is-goal-met .home-chip__txt{color:var(--color-success-ink)}@media(min-width:480px){.home-chip__mini{display:block}}.ems-notice{display:flex;align-items:center;justify-content:center;gap:var(--space-3);box-sizing:border-box;width:100%;max-width:1100px;margin:0 auto var(--space-3);padding:var(--space-1) var(--space-1) var(--space-1) var(--space-4);border-radius:var(--radius-lg);border:1px solid var(--color-primary-border);background:var(--color-primary-soft);color:var(--color-text);font-size:var(--text-sm);font-weight:var(--weight-semibold)}.ems-notice[hidden]{display:none}.ems-notice__msg{min-width:0}.ems-notice__close{display:grid;place-items:center;flex:none;width:44px;height:44px;border:0;border-radius:var(--radius-pill);background:transparent;color:var(--color-text-muted);cursor:pointer}.ems-notice__close:hover{background:var(--color-surface-sunken);color:var(--color-text)}@media(prefers-reduced-motion:reduce){.home-ring__bar,a.home-zone{transition:none}a.home-zone:hover{transform:none}}.rec-view{--rec-sticky-top: calc(56px + var(--shell-safe-top, 0px) + 52px);flex-direction:column;gap:var(--stack);width:100%}@media(min-width:1024px){.rec-view{gap:1.8rem}}.rec-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--space-3);margin:0;padding:0;list-style:none}.rec-stat{display:grid;grid-template-columns:auto 1fr;grid-template-areas:"icon value" "icon label";align-items:center;column-gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-1)}.rec-stat__icon{grid-area:icon;display:grid;place-items:center;width:40px;height:40px;border-radius:var(--radius-md);font-size:var(--text-lg);background:var(--color-primary-soft);color:var(--color-primary-ink)}.rec-stat.is-done .rec-stat__icon{background:var(--color-success-soft);color:var(--color-success-ink)}.rec-stat.is-progress .rec-stat__icon{background:var(--color-info-soft);color:var(--color-info-ink)}.rec-stat.is-streak .rec-stat__icon{background:var(--color-warning-soft);color:var(--color-warning-ink)}.rec-stat__value{grid-area:value;font-size:var(--text-xl);font-weight:var(--weight-extrabold);line-height:var(--leading-tight);color:var(--color-text);font-variant-numeric:tabular-nums}.rec-stat__value small{font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--color-text-muted)}.rec-stat__label{grid-area:label;font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--color-text-muted)}.rec-tabs-wrap{min-width:0;max-width:100%;position:sticky;top:var(--rec-sticky-top);z-index:var(--z-sticky);padding:var(--space-2);background:var(--color-surface-glass);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-1)}.rec-tabs{display:grid;grid-template-columns:repeat(6,minmax(max-content,1fr));gap:var(--space-1);overflow-x:auto;scrollbar-width:thin}.rec-tab{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-height:56px;padding:var(--space-2) var(--space-1);border:1px solid transparent;border-radius:var(--radius-md);background:transparent;color:var(--color-text-muted);font-family:inherit;font-size:var(--text-xs);font-weight:var(--weight-bold);line-height:var(--leading-tight);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background-color var(--motion-fast) var(--ease-out),color var(--motion-fast) var(--ease-out)}.rec-tab .ic{font-size:var(--text-lg)}.rec-tab__label{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rec-tab__meta{font-size:var(--text-xs);font-weight:var(--weight-semibold);font-variant-numeric:tabular-nums;opacity:1}.rec-tab:hover{background:var(--color-surface-2);color:var(--color-text)}.rec-tab[aria-selected=true]{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-on-primary);box-shadow:var(--shadow-2)}@media(min-width:640px){.rec-tab{flex-direction:row;gap:var(--space-2);font-size:var(--text-sm);min-height:48px}.rec-tab__label{max-width:none}.rec-tab__meta{padding:1px var(--space-2);border-radius:var(--radius-pill);background:var(--color-surface-sunken);color:var(--color-text-muted)}.rec-tab[aria-selected=true] .rec-tab__meta{background:var(--color-primary-hover);color:var(--color-on-primary)}}@media(max-width:899.98px){.rec-view{--rec-sticky-top: calc(52px + var(--shell-safe-top, 0px) + 52px)}}@media(max-width:639.98px){.rec-tabs{position:relative;display:flex;gap:var(--space-2);overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none;padding-inline-end:var(--space-5);-webkit-mask-image:linear-gradient(to right,var(--color-text) calc(100% - var(--space-5)),transparent);mask-image:linear-gradient(to right,var(--color-text) calc(100% - var(--space-5)),transparent)}.rec-tabs::-webkit-scrollbar{display:none}.rec-tab{flex:1 0 44px;min-width:44px}.rec-tab[aria-selected=true]{flex:0 0 auto;padding-inline:var(--space-3)}.rec-tab[aria-selected=true] .rec-tab__label{max-width:none}.rec-tab:not([aria-selected=true]) .rec-tab__label{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.rec-stats{grid-template-columns:repeat(auto-fit,minmax(88px,1fr));gap:var(--space-2)}.rec-stat{grid-template-columns:minmax(0,1fr);grid-template-areas:"value" "label";justify-items:center;text-align:center;padding:var(--space-2);row-gap:0}.rec-stat__icon{display:none}.rec-stat__value{font-size:var(--text-lg);white-space:nowrap}.rec-stat__value small{white-space:nowrap}.rec-stat__label{font-size:var(--text-xs);line-height:var(--leading-tight)}.rec-lead{display:none}.rec-view{gap:var(--space-4)}}@media(max-width:479.98px){.rec-stats:has(>li:nth-child(4)){grid-template-columns:repeat(2,minmax(0,1fr))}}.rec-panel{display:flex;flex-direction:column;gap:var(--space-4);min-width:0}.rec-context{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-2) var(--space-4)}.rec-context p{margin:0}.rec-context__text{font-size:var(--text-copy);font-weight:var(--weight-bold);color:var(--color-text)}.rec-context__badge{padding:2px var(--space-3);border-radius:var(--radius-pill);background:var(--color-primary-soft);border:1px solid var(--color-primary-border);color:var(--color-primary-ink);font-size:var(--text-sm);font-weight:var(--weight-bold);font-variant-numeric:tabular-nums}.rec-context__badge:empty,.rec-context__text:empty{display:none}.rec-empty{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-4) var(--space-5);background:var(--color-surface);border:1px dashed var(--color-border-strong);border-radius:var(--radius-lg)}.rec-empty[hidden]{display:none}.rec-empty__icon{display:grid;place-items:center;flex:none;width:48px;height:48px;border-radius:var(--radius-md);font-size:var(--text-xl);background:var(--color-warning-soft);color:var(--color-warning-ink)}.rec-empty__text{flex:1;min-width:0}.rec-empty__title{margin:0;font-size:var(--text-base);font-weight:var(--weight-extrabold);color:var(--color-text)}.rec-empty__desc{margin:var(--space-1) 0 0;font-size:var(--text-copy);color:var(--color-text-muted);line-height:var(--leading-snug)}.rec-empty__cta{flex:none}@media(max-width:639.98px){.rec-empty{flex-direction:column;align-items:stretch;text-align:center}.rec-empty__icon{align-self:center}}.rec-filters{display:flex;gap:var(--space-2);overflow-x:auto;padding-bottom:var(--space-1);scrollbar-width:thin}@media(min-width:640px){.rec-filters{flex-wrap:wrap;overflow-x:visible}}.rec-filters[hidden]{display:none}.rec-chip{flex:none;display:inline-flex;align-items:center;gap:var(--space-2);min-height:44px;padding:0 var(--space-4);border:1px solid var(--color-border-strong);border-radius:var(--radius-pill);background:var(--color-surface);color:var(--color-text);font-family:inherit;font-size:var(--text-sm);font-weight:var(--weight-bold);cursor:pointer}.rec-chip__n{font-variant-numeric:tabular-nums;color:var(--color-text-muted);font-weight:var(--weight-semibold)}.rec-chip:hover{background:var(--color-primary-soft)}.rec-chip[aria-pressed=true]{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-on-primary)}.rec-chip[aria-pressed=true] .rec-chip__n{color:var(--color-on-primary)}.rec-filter-empty{margin:0;padding:var(--space-5);text-align:center;color:var(--color-text-muted);font-weight:var(--weight-semibold)}.rec-filter-empty[hidden]{display:none}.records-quiz-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4);width:100%}@media(max-width:859.98px){.records-quiz-grid{grid-template-columns:minmax(0,1fr)}}.record-quiz-card{display:flex;align-items:center;gap:var(--space-4);min-width:0;padding:var(--space-4);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-1);cursor:pointer;text-align:left;transition:border-color var(--motion-base) var(--ease-out),box-shadow var(--motion-base) var(--ease-out),transform var(--motion-base) var(--ease-out)}.record-quiz-card[hidden],.record-quiz-card[data-record-quiz][hidden],#recordsQuizGrid>[hidden]{display:none!important}.record-quiz-card:hover{border-color:var(--color-primary-border);box-shadow:var(--shadow-2);transform:translateY(-2px)}.record-quiz-card:active{transform:translateY(0)}.record-card-icon-wrap{display:grid;place-items:center;flex:none;width:48px;height:48px;border-radius:var(--radius-md);font-size:var(--text-lg);background:var(--color-primary-soft);color:var(--color-primary-ink);border:1px solid var(--color-primary-border)}.record-card-content{flex:1;min-width:0;display:flex;flex-direction:column;gap:var(--space-1)}.record-card-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--space-2)}.record-category-tag{font-size:var(--text-xs);font-weight:var(--weight-bold);text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted)}.record-status-pill{display:inline-flex;align-items:center;gap:6px;padding:2px var(--space-2);border-radius:var(--radius-pill);border:1px solid var(--color-border);font-size:var(--text-xs);font-weight:var(--weight-bold);white-space:nowrap}.record-status-pill.completed{background:var(--color-primary-soft);color:var(--color-primary-ink);border-color:var(--color-primary-border)}.record-status-pill.current{background:var(--color-info-soft);color:var(--color-info-ink);border-color:var(--color-info-border)}.record-status-pill.historical{background:var(--color-warning-soft);color:var(--color-warning-ink);border-color:var(--color-warning-border)}.record-status-pill.empty{background:var(--color-surface-sunken);color:var(--color-text-muted);border-color:var(--color-border)}.record-quiz-title{margin:0;font-size:var(--text-base);font-weight:var(--weight-extrabold);line-height:var(--leading-snug);color:var(--color-text);overflow-wrap:anywhere}.record-metrics-row{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-1) var(--space-3);margin:0;font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--color-text-muted);font-variant-numeric:tabular-nums}.record-metric-progress,.record-metric-score{display:inline-flex;align-items:center;gap:5px;font-family:inherit;font-size:inherit;font-weight:inherit}.rec-hint{display:inline-flex;align-items:center;gap:5px;color:var(--color-danger-ink);font-weight:var(--weight-bold)}.rec-card-date{margin:0;font-size:var(--text-xs);color:var(--color-text-muted)}.record-progress-track,.rec-bar{display:flex;width:100%;height:8px;margin-top:2px;background:var(--color-surface-sunken);border:1px solid var(--color-border);border-radius:var(--radius-pill);overflow:hidden}.record-progress-bar{height:100%;border-radius:var(--radius-pill);background:var(--color-primary);transition:width var(--motion-base) var(--ease-out)}.rec-bar__ok{height:100%;background:var(--color-success)}.rec-bar__bad{height:100%;background:var(--color-danger)}.record-card-action{display:grid;place-items:center;flex:none;width:40px;height:40px;border-radius:50%;background:var(--color-surface-2);color:var(--color-text-muted);border:1px solid var(--color-border-strong);transition:background-color var(--motion-fast) var(--ease-out),color var(--motion-fast) var(--ease-out)}.record-quiz-card:hover .record-card-action{background:var(--color-primary);color:var(--color-on-primary);border-color:var(--color-primary)}.record-quiz-card[data-record-quiz]{display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-areas:"ring content" "actions actions";align-items:start;gap:var(--space-3) var(--space-4)}.record-quiz-card[data-record-quiz]>.rec-ring,.record-quiz-card[data-record-quiz]>.record-card-icon-wrap{grid-area:ring}.record-quiz-card[data-record-quiz]>.record-card-content{grid-area:content}.record-card-actions{grid-area:actions;display:flex;gap:var(--space-2)}.record-card-actions .btn{flex:1}.record-quiz-card.is-new{grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"ring content actions";align-items:center;padding:var(--space-3) var(--space-4);box-shadow:none;background:var(--color-surface-2)}.record-quiz-card.is-new .record-card-actions .btn{flex:none}@media(max-width:479.98px){.record-quiz-card.is-new{grid-template-columns:auto minmax(0,1fr);grid-template-areas:"ring content" "actions actions"}.record-quiz-card.is-new .record-card-actions .btn{flex:1}}.rec-course-sum{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-4);border-radius:var(--radius-lg);border:1px solid var(--color-primary-border);background:linear-gradient(135deg,var(--color-primary-soft),var(--color-info-soft))}.rec-course-sum[hidden]{display:none}.rec-course-sum__stats{display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-5);margin:0;padding:0;list-style:none}.rec-course-sum__stats li{display:flex;flex-direction:column}.rec-course-sum__stats strong{color:var(--color-text);font-size:var(--text-xl);font-weight:var(--weight-extrabold);font-variant-numeric:tabular-nums}.rec-course-sum__stats small{color:var(--color-text-muted);font-size:var(--text-sm);font-weight:var(--weight-semibold)}.rec-course-sum__stats strong .ic{color:var(--color-warning);font-size:var(--text-base)}.rec-course-sum__stats span{color:var(--color-text-muted);font-size:var(--text-sm);font-weight:var(--weight-semibold)}.rec-stars{display:inline-flex;gap:2px;color:var(--color-warning)}.rec-stars .ic--dim{color:var(--color-text-faint)}.rec-course-num{font-weight:var(--weight-extrabold);font-variant-numeric:tabular-nums}.rec-ring{--ring: var(--color-primary);position:relative;display:grid;place-items:center;flex:none;width:60px;height:60px;border-radius:50%;background:conic-gradient(var(--ring) calc(var(--p, 0) * 1%),var(--color-border) 0)}.rec-ring:before{content:"";position:absolute;inset:6px;border-radius:50%;background:var(--color-surface)}.rec-ring.is-good{--ring: var(--color-success)}.rec-ring.is-mid{--ring: var(--color-warning)}.rec-ring.is-low{--ring: var(--color-danger)}.rec-ring__num{position:relative;font-size:var(--text-sm);font-weight:var(--weight-extrabold);font-variant-numeric:tabular-nums;color:var(--color-text)}.records-select-prompt-card{grid-column:1 / -1;display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-5);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-1)}.records-prompt-title{margin:0;font-size:var(--text-lg);font-weight:var(--weight-extrabold);color:var(--color-text)}.records-prompt-desc{margin:0;font-size:var(--text-sm);color:var(--color-text-muted);line-height:var(--leading-snug)}.rec-hub-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3);margin-top:var(--space-2)}@media(max-width:639.98px){.rec-hub-grid{grid-template-columns:minmax(0,1fr)}}.rec-hub-card{display:flex;align-items:center;gap:var(--space-3);min-height:72px;padding:var(--space-3) var(--space-4);background:var(--color-surface-2);border:1px solid var(--color-border-strong);border-radius:var(--radius-md);color:var(--color-text);font-family:inherit;text-align:left;cursor:pointer}.rec-hub-card:hover{background:var(--color-primary-soft);border-color:var(--color-primary)}.rec-hub-card__icon{display:grid;place-items:center;flex:none;width:44px;height:44px;border-radius:var(--radius-md);background:var(--color-primary-soft);color:var(--color-primary-ink);font-size:var(--text-lg)}.rec-hub-card__body{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.rec-hub-card__title{font-size:var(--text-base);font-weight:var(--weight-extrabold)}.rec-hub-card__meta{font-size:var(--text-sm);color:var(--color-text-muted);font-weight:var(--weight-semibold);font-variant-numeric:tabular-nums}.rec-hub-card__go{color:var(--color-text-muted)}.records-header-badge{display:flex;align-items:center;gap:8px;font-size:var(--text-sm);font-weight:var(--weight-extrabold);color:var(--color-warning-ink)}@media(prefers-reduced-motion:reduce){.record-quiz-card:hover{transform:none}}.rec-pron-sum{flex-direction:column;align-items:stretch;flex-wrap:nowrap;gap:var(--space-4);padding:0;border:0;background:none}.rec-pron-hero{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--color-surface);border:1px dashed var(--color-border-strong);border-radius:var(--radius-lg)}.rec-pron-hero__icon{display:grid;place-items:center;flex:none;width:40px;height:40px;border-radius:var(--radius-md);background:var(--color-primary-soft);color:var(--color-primary-ink);font-size:var(--text-lg)}.rec-pron-hero__text{flex:1;min-width:0}.rec-pron-hero__title{margin:0;font-size:var(--text-base);font-weight:var(--weight-extrabold);color:var(--color-text)}.rec-pron-hero__desc{margin:2px 0 0;font-size:var(--text-sm);color:var(--color-text-muted);line-height:var(--leading-snug)}.rec-pron-hero__cta{flex:none;min-height:44px}@media(max-width:639.98px){.rec-pron-hero{flex-wrap:wrap}.rec-pron-hero__text{flex-basis:calc(100% - 56px)}.rec-pron-hero__cta{width:100%}}.rec-pron-tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-3);margin:0;padding:0;list-style:none}.rec-pron-tile{display:grid;grid-template-columns:auto 1fr;grid-template-areas:"icon value" "icon label";column-gap:var(--space-3);align-items:center;min-width:0;padding:var(--space-3) var(--space-4);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-1)}.rec-pron-tile>.ic{grid-area:icon;display:block;box-sizing:border-box;padding:9px;width:40px;height:40px;border-radius:var(--radius-md);background:var(--color-primary-soft);color:var(--color-primary-ink);font-size:var(--text-lg)}.rec-pron-tile.is-done>.ic{background:var(--color-success-soft);color:var(--color-success-ink)}.rec-pron-tile.is-best>.ic{background:var(--color-warning-soft);color:var(--color-warning-ink)}.rec-pron-tile__v{grid-area:value;font-size:var(--text-xl);font-weight:var(--weight-extrabold);line-height:var(--leading-tight);color:var(--color-text);font-variant-numeric:tabular-nums}.rec-pron-tile__v small{font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--color-text-muted)}.rec-pron-tile__l{grid-area:label;font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--color-text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}@media(max-width:639.98px){.rec-pron-tiles{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.rec-pron-tile.is-best{grid-column:1 / -1}.rec-pron-tile{padding:var(--space-2) var(--space-3)}.rec-pron-tile>.ic{width:32px;height:32px;padding:7px}}.rec-seg{display:flex;gap:4px;padding:4px;background:var(--color-surface-sunken);border:1px solid var(--color-border);border-radius:var(--radius-pill);width:100%;max-width:440px}.rec-seg__btn{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:44px;padding:0 var(--space-4);border:1px solid var(--color-border-strong);border-radius:var(--radius-pill);background:var(--color-surface);color:var(--color-text);font-family:inherit;font-size:var(--text-sm);font-weight:var(--weight-bold);cursor:pointer}.rec-seg__btn:hover{background:var(--color-primary-soft)}.rec-seg__btn[aria-pressed=true]{background:var(--color-primary);color:var(--color-on-primary);border-color:var(--color-primary)}.rec-seg__n{font-variant-numeric:tabular-nums;font-weight:var(--weight-semibold);opacity:.9}.rec-seg__btn{min-width:0}@media(max-width:479.98px){.rec-seg__btn{flex-direction:column;gap:0;padding:2px var(--space-2);line-height:1.2}.rec-seg__n{font-size:var(--text-xs)}}.rec-quizseg-slot{display:block}.rec-quizseg-slot[hidden]{display:none}.rec-pron-subs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-3);margin:0;padding:0;list-style:none}@media(max-width:1023.98px){.rec-pron-subs{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:559.98px){.rec-pron-subs{grid-template-columns:minmax(0,1fr)}}.rec-pron-subs>li{display:flex;min-width:0}.records-quiz-grid:has(>.rec-sub){grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-3)}@media(max-width:1023.98px){.records-quiz-grid:has(>.rec-sub){grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:559.98px){.records-quiz-grid:has(>.rec-sub){grid-template-columns:minmax(0,1fr)}}.rec-sub{--sub-tint: var(--ic-sky);display:grid;grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"icon body go" "bar bar bar" "pill pill pill";align-items:center;column-gap:var(--space-3);row-gap:var(--space-2);width:100%;min-width:0;min-height:44px;margin:0;padding:var(--space-3) var(--space-4);text-align:left;font:inherit;background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-1);cursor:pointer;transition:border-color var(--motion-base) var(--ease-out),box-shadow var(--motion-base) var(--ease-out),transform var(--motion-base) var(--ease-out)}@media(hover:hover){.rec-sub:hover{border-color:var(--color-primary-border);box-shadow:var(--shadow-2);transform:translateY(-1px)}}.rec-sub:hover .rec-sub__go{color:var(--color-primary);transform:translate(2px)}.rec-sub:focus-visible{outline:3px solid var(--color-focus);outline-offset:2px}.rec-sub__icon{grid-area:icon;display:grid;place-items:center;width:40px;height:40px;border-radius:var(--radius-md);color:var(--sub-tint);font-size:1.15rem;background:color-mix(in srgb,var(--sub-tint) 14%,var(--color-surface));border:1px solid color-mix(in srgb,var(--sub-tint) 28%,var(--color-surface))}.rec-sub__icon[data-tint=sky]{--sub-tint: var(--ic-sky)}.rec-sub__icon[data-tint=indigo]{--sub-tint: var(--ic-indigo)}.rec-sub__icon[data-tint=teal]{--sub-tint: var(--ic-teal)}.rec-sub__icon[data-tint=amber]{--sub-tint: var(--ic-amber)}.rec-sub__icon[data-tint=rose]{--sub-tint: var(--ic-rose)}.rec-sub__icon[data-tint=slate]{--sub-tint: var(--ic-slate)}.rec-sub__body{grid-area:body;display:flex;flex-direction:column;gap:2px;min-width:0}.rec-sub__title{font-family:inherit;font-size:var(--text-base);font-weight:var(--weight-extrabold);line-height:var(--leading-snug);color:var(--color-text);overflow-wrap:anywhere}.rec-sub__meta{font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--color-text-muted);font-variant-numeric:tabular-nums}.rec-sub__go{grid-area:go;color:var(--color-text-muted)}.rec-sub__bar{grid-area:bar;height:6px;margin:0}.rec-sub__pill{grid-area:pill;justify-self:start;display:inline-flex;align-items:center;gap:6px;max-width:100%;padding:2px var(--space-3);border-radius:var(--radius-pill);border:1px solid var(--color-border);background:var(--color-surface-sunken);color:var(--color-text-muted);font-size:var(--text-xs);font-weight:var(--weight-bold);line-height:1.5}.rec-sub__pill.is-empty{font-weight:var(--weight-semibold)}.rec-sub__pill.is-good{background:var(--color-success-soft);border-color:var(--color-success-border, var(--color-success));color:var(--color-success-ink)}.rec-sub__pill.is-mid{background:var(--color-warning-soft);border-color:var(--color-warning-border, var(--color-warning));color:var(--color-warning-ink)}.rec-sub__pill.is-low{background:var(--color-danger-soft);border-color:var(--color-danger-border, var(--color-danger));color:var(--color-danger-ink)}@media(prefers-reduced-motion:reduce){.rec-sub,.rec-sub__go{transition:none}.rec-sub:hover{transform:none}}.rec-pron-subhead{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap}.rec-pron-back{min-height:44px;flex:none}.rec-pron-subhead__text{min-width:0}.rec-pron-subhead__title{margin:0;font-size:var(--text-lg);font-weight:var(--weight-extrabold);color:var(--color-text)}.rec-pron-subhead__meta{margin:0;font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--color-text-muted)}.record-status-pill.rec-pron-tier.is-good{background:var(--color-success-soft);color:var(--color-success-ink);border-color:var(--color-success-border)}.record-status-pill.rec-pron-tier.is-mid{background:var(--color-warning-soft);color:var(--color-warning-ink);border-color:var(--color-warning-border)}.record-status-pill.rec-pron-tier.is-low{background:var(--color-danger-soft);color:var(--color-danger-ink);border-color:var(--color-danger-border)}.rec-pron-card .rec-pron-btn{min-height:44px}.rec-pron-card .rec-pron-icon{font-size:var(--text-xl);color:var(--color-primary-ink)}.rec-pron-card.is-new .record-metric-progress{color:var(--color-text-muted)}.rec-tab__more{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}@media(min-width:640px){.rec-tab__more{position:static;width:auto;height:auto;margin:0;overflow:visible;clip:auto}}.rec-quizseg .rd-level-btn{flex-direction:row;gap:var(--space-2);min-height:44px;padding:2px var(--space-4)}.rec-quizseg .rd-level-group{max-width:100%}@media(max-width:559.98px){.rec-quizseg .rd-level-group{display:flex;width:100%}.rec-quizseg .rd-level-btn{flex:1;padding-inline:var(--space-2)}}.pg-hero{--pg-tint: var(--color-primary);--pg-tint-2: var(--ic-sky);--pg-deco: none;position:relative;isolation:isolate;overflow:hidden;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;column-gap:var(--space-4);box-sizing:border-box;width:100%;padding:var(--space-5);text-align:left;border-radius:var(--radius-lg);border:1px solid color-mix(in srgb,var(--pg-tint) 30%,var(--color-border));background:radial-gradient(120% 150% at 100% 0%,color-mix(in srgb,var(--pg-tint-2) 18%,transparent) 0%,transparent 62%),linear-gradient(135deg,color-mix(in srgb,var(--pg-tint) 15%,var(--color-surface)) 0%,var(--color-surface) 78%);box-shadow:var(--shadow-2)}.pg-hero--listen{--pg-tint: var(--ic-rose);--pg-tint-2: var(--ic-rose)}.pg-hero--records{--pg-tint: var(--ic-amber);--pg-tint-2: var(--ic-indigo)}.pg-hero--read{--pg-tint: var(--ic-teal);--pg-tint-2: var(--ic-sky)}.pg-hero:before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(90deg,var(--pg-tint),var(--pg-tint-2)) top / 100% 3px no-repeat}.pg-hero:after{content:"";position:absolute;z-index:-1;pointer-events:none;top:50%;right:var(--space-4);width:min(260px,42%);aspect-ratio:5 / 3;transform:translateY(-50%);background:linear-gradient(135deg,var(--pg-tint),var(--pg-tint-2));opacity:.2;-webkit-mask:var(--pg-deco) no-repeat center / contain;mask:var(--pg-deco) no-repeat center / contain}.pg-hero--listen{--pg-deco: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 120'%3E%3Cg%3E%3Crect x='6' y='48' width='9' height='24' rx='4.5'/%3E%3Crect x='24' y='36' width='9' height='48' rx='4.5'/%3E%3Crect x='42' y='20' width='9' height='80' rx='4.5'/%3E%3Crect x='60' y='40' width='9' height='40' rx='4.5'/%3E%3Crect x='78' y='6' width='9' height='108' rx='4.5'/%3E%3Crect x='96' y='28' width='9' height='64' rx='4.5'/%3E%3Crect x='114' y='14' width='9' height='92' rx='4.5'/%3E%3Crect x='132' y='38' width='9' height='44' rx='4.5'/%3E%3Crect x='150' y='24' width='9' height='72' rx='4.5'/%3E%3Crect x='168' y='44' width='9' height='32' rx='4.5'/%3E%3Crect x='186' y='52' width='9' height='16' rx='4.5'/%3E%3C/g%3E%3C/svg%3E")}.pg-hero--records{--pg-deco: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 120'%3E%3Cg fill='none' stroke='black' stroke-width='6'%3E%3Ccircle cx='140' cy='60' r='52'/%3E%3Ccircle cx='140' cy='60' r='34'/%3E%3C/g%3E%3Cpath d='M140 44l5.2 10.6 11.8 1.7-8.5 8.3 2 11.7-10.5-5.5-10.5 5.5 2-11.7-8.5-8.3 11.8-1.7z'/%3E%3Ccircle cx='38' cy='28' r='6'/%3E%3Ccircle cx='60' cy='96' r='4'/%3E%3Ccircle cx='20' cy='78' r='3'/%3E%3C/svg%3E")}.pg-hero--read{--pg-deco: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 120'%3E%3Cg%3E%3Crect x='20' y='14' width='160' height='9' rx='4.5'/%3E%3Crect x='20' y='36' width='120' height='9' rx='4.5'/%3E%3Crect x='20' y='58' width='150' height='9' rx='4.5'/%3E%3Crect x='20' y='80' width='96' height='9' rx='4.5'/%3E%3Crect x='20' y='102' width='134' height='9' rx='4.5'/%3E%3C/g%3E%3C/svg%3E")}.pg-hero__icon{display:grid;place-items:center;flex:none;width:60px;height:60px;border-radius:var(--radius-md);background:linear-gradient(145deg,color-mix(in srgb,var(--pg-tint) 26%,var(--color-surface)),color-mix(in srgb,var(--pg-tint-2) 12%,var(--color-surface)));border:1px solid color-mix(in srgb,var(--pg-tint) 38%,var(--color-border));box-shadow:0 8px 18px -10px var(--pg-tint),inset 0 1px color-mix(in srgb,#fff 55%,transparent);font-size:1.75rem}.pg-hero .pg-hero__icon .ic.ic[data-cat]{color:var(--pg-tint);width:1em;height:1em}.pg-hero--listen .pg-hero__icon .ic.ic[data-cat]{color:var(--ic-rose)}.pg-hero--records .pg-hero__icon .ic.ic[data-cat]{color:var(--ic-amber)}.pg-hero--read .pg-hero__icon .ic.ic[data-cat]{color:var(--ic-teal)}.pg-hero__body{display:flex;flex-direction:column;gap:var(--space-2);min-width:0}.pg-hero .pg-hero__title{margin:0;font-family:var(--font-display);font-size:var(--text-2xl);font-weight:var(--weight-extrabold);line-height:var(--leading-tight);letter-spacing:-.02em;color:var(--color-text);text-align:left}.pg-hero .pg-hero__sub{margin:0;max-width:62ch;font-size:var(--text-base);line-height:var(--leading-snug);color:var(--color-text-muted);text-align:left}.pg-hero__chips{display:flex;flex-wrap:wrap;gap:var(--space-2);margin:var(--space-1) 0 0;padding:0;list-style:none}.pg-chip{display:inline-flex;align-items:center;gap:var(--space-1);min-height:28px;padding:0 var(--space-3);box-sizing:border-box;border-radius:var(--radius-pill);font-size:var(--text-sm);font-weight:var(--weight-bold);font-variant-numeric:tabular-nums;white-space:nowrap;color:var(--color-text);background:color-mix(in srgb,var(--color-surface) 82%,transparent);border:1px solid color-mix(in srgb,var(--pg-tint) 34%,var(--color-border))}.pg-chip[hidden]{display:none}.pg-chip:before{content:"";width:6px;height:6px;border-radius:var(--radius-pill);background:var(--pg-tint);flex:none}@media(min-width:640px)and (max-width:1099.98px){.pg-hero__body{padding-right:24%}}@media(min-width:900px){.pg-hero{padding:var(--space-5) var(--space-6);column-gap:var(--space-5)}.pg-hero__icon{width:72px;height:72px;font-size:2.1rem;border-radius:var(--radius-lg)}.pg-hero .pg-hero__title{font-size:var(--text-3xl)}}@media(max-width:639.98px){.pg-hero{padding:var(--space-4);column-gap:var(--space-3);row-gap:var(--space-2)}.pg-hero__icon{width:44px;height:44px;font-size:1.4rem}.pg-hero .pg-hero__title{font-size:var(--text-xl)}.pg-hero:after{display:none}.pg-hero--records:after{display:block;width:40%;right:var(--space-3);opacity:.16}.pg-hero__chips{gap:var(--space-1)}.pg-hero--records{padding-block:var(--space-3)}.pg-hero--records .pg-hero__icon{width:40px;height:40px;font-size:1.25rem}.pg-chip{min-height:26px;padding:0 var(--space-2);font-size:var(--text-xs)}}.ems-avatar{display:inline-grid;place-items:center;flex:none;width:var(--ems-avatar-size, 44px);height:var(--ems-avatar-size, 44px);border-radius:var(--radius-pill);overflow:hidden;line-height:0}.ems-avatar>svg{display:block;width:100%;height:100%}.ems-avatar--xs{--ems-avatar-size: 24px}.ems-avatar--sm{--ems-avatar-size: 32px}.ems-avatar--md{--ems-avatar-size: 44px}.ems-avatar--lg{--ems-avatar-size: 64px}.ems-avatar--xl{--ems-avatar-size: 96px}.ems-avatar--guest{background:var(--color-surface-sunken);color:var(--color-text-muted);font-size:calc(var(--ems-avatar-size, 44px) * .42)}.app-avatar__initials,.app-popover__avatar,.home-hero__avatar,.profile-avatar{overflow:hidden}.app-avatar__initials{display:grid;place-items:center;width:100%;height:100%;border-radius:var(--radius-pill)}.app-avatar .ems-avatar,.app-popover__avatar .ems-avatar,.home-hero__avatar .ems-avatar,.profile-avatar .ems-avatar{width:100%;height:100%}.app-popover__head{flex-direction:row;align-items:center;gap:var(--space-3)}.app-popover__avatar{flex:none;width:40px;height:40px;border-radius:var(--radius-pill);display:grid;place-items:center;background:var(--color-surface-sunken);color:var(--color-text-muted)}.app-popover__who{display:flex;flex-direction:column;gap:2px;min-width:0}.home-hero__who{display:flex;align-items:center;gap:var(--space-4);min-width:0}.home-hero__who .home-greeting{min-width:0}.home-hero__avatar{flex:none;width:56px;height:56px;border-radius:var(--radius-pill);box-shadow:0 0 0 3px var(--color-surface),var(--shadow-1)}.home-hero__avatar[hidden]{display:none}@media(min-width:768px){.home-hero__avatar{width:72px;height:72px}}.profile-avatar{box-shadow:0 0 0 3px var(--color-on-primary)}.profile-editor{margin-bottom:var(--space-4)}.profile-editor:empty{display:none}.pf-editor{display:flex;flex-direction:column;gap:var(--space-4)}.pf-field{display:flex;flex-direction:column;gap:6px;min-width:0}.pf-inputrow{position:relative}.pf-input{padding-left:1rem;padding-right:3.6rem}.pf-count{position:absolute;right:12px;top:50%;transform:translateY(-50%);font-size:var(--text-xs);font-weight:var(--weight-bold);color:var(--color-text-muted);font-variant-numeric:tabular-nums;pointer-events:none}.pf-hint{margin:0;font-size:var(--text-copy);color:var(--color-text-muted);line-height:var(--leading-snug)}.pf-msg{min-height:0}.pf-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-2)}@media(min-width:480px){.pf-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}.pf-av{display:flex;flex-direction:column;align-items:center;gap:6px;min-height:56px;padding:6px 2px 8px;background:transparent;border:2px solid transparent;border-radius:var(--radius-md);color:var(--color-text);font-family:inherit;cursor:pointer;transition:background-color var(--motion-fast) var(--ease-out),border-color var(--motion-fast) var(--ease-out)}.pf-av:hover{background:var(--color-surface-sunken)}.pf-av:focus-visible{outline:3px solid var(--color-focus);outline-offset:2px}.pf-av__art{position:relative;display:block;line-height:0;border-radius:var(--radius-pill)}.pf-av__name{font-size:var(--text-xs);font-weight:var(--weight-bold);line-height:var(--leading-tight);color:var(--color-text);text-align:center;overflow-wrap:break-word;hyphens:auto}.pf-av__check{display:none;position:absolute;right:-2px;bottom:-2px;width:22px;height:22px;border-radius:var(--radius-pill);place-items:center;background:var(--color-primary);color:var(--color-on-primary);font-size:11px;line-height:1;border:2px solid var(--color-surface)}.pf-av[aria-checked=true]{border-color:var(--color-primary);background:var(--color-primary-soft)}.pf-av[aria-checked=true] .pf-av__art{box-shadow:0 0 0 3px var(--color-primary)}.pf-av[aria-checked=true] .pf-av__check{display:grid}.pf-av[aria-checked=true] .pf-av__name{color:var(--color-primary-ink)}.pf-status{margin:0;min-height:0;font-size:var(--text-sm);font-weight:var(--weight-bold);color:var(--color-text-muted)}.pf-status:empty{display:none}.pf-status.is-ok{color:var(--color-success-ink)}.pf-status.is-warn{color:var(--color-warning-ink)}.pf-status.is-error{color:var(--color-danger-ink)}.pf-actions{display:flex;gap:var(--space-3);justify-content:flex-end;flex-wrap:wrap}.pf-actions .btn{flex:1 1 140px}.pf-card{max-width:480px}@media(min-width:900px){.pf-hint{font-size:var(--text-xs)}}@media(prefers-reduced-motion:reduce){.pf-av{transition:none}}.cal-card{max-width:460px}.cal-header .cloud-modal-desc{margin-right:var(--space-6)}.cal-body{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-4)}.cal-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2);margin:0;padding:0;list-style:none}.cal-stat{display:flex;flex-direction:column;gap:var(--space-0);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background:var(--color-surface-2);border:1px solid var(--color-border);min-width:0}.cal-stat__l{display:flex;align-items:center;gap:var(--space-1);color:var(--color-text-muted);font-size:var(--text-xs);font-weight:var(--weight-semibold)}.cal-stat__l .ic{width:14px;height:14px;flex:none}.cal-stat__v{color:var(--color-text);font-size:var(--text-xl);font-weight:var(--weight-extrabold);font-variant-numeric:tabular-nums;line-height:1.1}@media(min-width:440px){.cal-stats{grid-template-columns:repeat(4,minmax(0,1fr))}}.cal-nav{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.cal-nav__label{margin:0;flex:1;text-align:center;color:var(--color-text);font-size:var(--text-lg);font-weight:var(--weight-extrabold)}.cal-nav__btn{display:inline-grid;place-items:center;width:44px;height:44px;border-radius:var(--radius-pill);border:1px solid var(--color-border-strong);background:var(--color-surface);color:var(--color-text);cursor:pointer}.cal-nav__btn:hover:not(:disabled){background:var(--color-surface-sunken)}.cal-nav__btn:disabled{opacity:.4;cursor:default}.cal-nav__btn:focus-visible,.cal-header .btn-close-modal:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.cal-grid{width:100%;border-collapse:separate;border-spacing:3px;table-layout:fixed}.cal-grid th{padding:var(--space-1) 0;color:var(--color-text-muted);font-size:var(--text-xs);font-weight:var(--weight-bold);text-align:center}.cal-cell{position:relative;height:52px;padding:var(--space-1) 0 0;border-radius:var(--radius-sm);border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text);text-align:center;vertical-align:top;font-variant-numeric:tabular-nums}.cal-cell--blank{border-color:transparent;background:transparent}.cal-day{display:block;font-size:var(--text-sm);font-weight:var(--weight-bold);line-height:1.2}.cal-pts{display:block;margin-top:var(--space-0);color:var(--color-text-muted);font-size:var(--text-xs);font-weight:var(--weight-semibold);line-height:1.2}.cal-cell[data-state=future]{background:transparent;border-style:dashed;color:var(--color-text-muted)}.cal-cell[data-state=goal]{background:var(--color-success-soft);border:2px solid var(--color-success);color:var(--color-success-ink)}.cal-cell[data-state=goal] .cal-pts{color:var(--color-success-ink)}.cal-cell .ic{position:absolute;top:2px;right:2px;width:11px;height:11px;color:var(--color-success-ink)}.cal-cell.is-today{box-shadow:0 0 0 2px var(--color-primary)}.cal-cell.is-today .cal-day{color:var(--color-primary-ink)}.cal-cell[data-state=goal].is-today .cal-day{color:var(--color-success-ink)}.cal-legend{display:flex;flex-wrap:wrap;gap:var(--space-1) var(--space-4);margin:0;padding:0;list-style:none;color:var(--color-text-muted);font-size:var(--text-sm)}.cal-legend li{display:inline-flex;align-items:center;gap:var(--space-2)}.cal-key{width:16px;height:16px;border-radius:4px;border:1px solid var(--color-border-strong);background:var(--color-surface)}.cal-key--goal{background:var(--color-success-soft);border:2px solid var(--color-success)}.cal-key--today{box-shadow:0 0 0 2px var(--color-primary);border-color:transparent}.cal-profile-btn{width:100%;justify-content:center}@media(max-width:359.98px){.cal-grid{border-spacing:2px}.cal-cell{height:48px}}@media(prefers-reduced-motion:reduce){.cal-backdrop,.cal-card{animation:none}}.crs-view{flex-direction:column;gap:var(--space-5);width:100%;max-width:760px;margin:0 auto;padding-bottom:var(--space-6)}.crs-sr{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.crs-loading{margin:var(--space-6) 0;text-align:center;color:var(--color-text-muted)}.crs-error{display:flex;flex-direction:column;gap:var(--space-3);align-items:center;padding:var(--space-6) var(--space-4);text-align:center;color:var(--color-text)}.crs-error__actions{display:flex;flex-wrap:wrap;gap:var(--space-3);justify-content:center}.crs-eyebrow{margin:0;color:var(--color-primary-ink);font-size:calc(var(--text-xs) + 1px);font-weight:var(--weight-bold);letter-spacing:.06em;text-transform:uppercase}@media(min-width:900px){.crs-eyebrow{font-size:var(--text-xs)}}.crs-h1{margin:0;font-family:var(--font-display);font-size:var(--text-2xl);font-weight:var(--weight-extrabold);line-height:var(--leading-tight);letter-spacing:-.02em;color:var(--color-text)}.crs-h2{margin:0;font-family:var(--font-display);font-size:var(--text-xl);font-weight:var(--weight-extrabold);line-height:var(--leading-tight);color:var(--color-text)}.crs-h2__en{display:block;font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--color-text-muted)}.crs-meta{margin:0;color:var(--color-text-muted);font-size:var(--text-sm)}.crs-note{margin:0;padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--color-info-soft);border:1px solid var(--color-info-border);color:var(--color-info-ink);font-size:var(--text-copy)}.crs-note.is-ok{background:var(--color-success-soft);border-color:var(--color-success-border);color:var(--color-success-ink)}.crs-hint-line{margin:0;color:var(--color-text-muted);font-size:var(--text-copy)}.crs-done{margin:0;color:var(--color-success-ink);font-weight:var(--weight-bold)}.crs-chip{display:inline-flex;align-items:center;padding:var(--space-1) var(--space-3);border-radius:var(--radius-pill);border:1px solid var(--color-border-strong);background:var(--color-surface);color:var(--color-text);font-size:var(--text-xs);font-weight:var(--weight-bold)}.crs-chip--done{background:var(--color-success-soft);border-color:var(--color-success-border);color:var(--color-success-ink)}.crs-chip--doing{background:var(--color-warning-soft);border-color:var(--color-warning-border);color:var(--color-warning-ink)}.crs-chip.is-next{background:var(--color-primary-soft);border-color:var(--color-primary-border);color:var(--color-primary-ink)}.crs-star{color:var(--color-text-faint);font-size:var(--text-lg);line-height:1}.crs-star.is-on{color:var(--color-warning)}.crs-ring{position:relative;flex:0 0 auto;width:96px;height:96px}.crs-ring--big{width:148px;height:148px;margin:var(--space-2) auto}.crs-ring__svg{width:100%;height:100%}.crs-ring__bg,.crs-ring__fg{fill:none;stroke-width:9}.crs-ring__bg{stroke:var(--color-border)}.crs-ring__fg{stroke:var(--color-primary);stroke-linecap:round;transition:stroke-dasharray var(--motion-base) var(--ease-out)}.crs-ring.is-pass .crs-ring__fg{stroke:var(--color-success)}.crs-ring.is-fail .crs-ring__fg{stroke:var(--color-warning)}.crs-ring__num{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-size:var(--text-2xl);font-weight:var(--weight-extrabold);color:var(--color-text)}.crs-ring__num small{font-size:var(--text-sm);color:var(--color-text-muted);margin-left:2px}.crs-ring--big .crs-ring__num{font-size:var(--text-3xl)}.crs-panel{display:flex;flex-direction:column;gap:var(--space-5);min-width:0}.crs-tabs{display:flex;gap:var(--space-1);padding:var(--space-1);border-radius:var(--radius-pill);border:1px solid var(--color-border-strong);background:var(--color-surface)}.crs-tab{flex:1 1 0;min-width:0;min-height:44px;padding:var(--space-2) var(--space-3);border:0;border-radius:var(--radius-pill);background:transparent;color:var(--color-text);font:inherit;font-size:var(--text-sm);font-weight:var(--weight-bold);cursor:pointer;white-space:nowrap}.crs-tab[aria-selected=true]{background:var(--color-primary);color:var(--color-on-primary)}.crs-tab:not([aria-selected=true]):hover{background:var(--color-primary-soft)}.crs-tab:focus-visible{outline:3px solid var(--color-focus);outline-offset:2px}.crs-tab__short{display:none}@media(max-width:360px){.crs-tab__full{display:none}.crs-tab__short{display:inline}}.crs-node.is-hint .crs-node__link{animation:crsHint .7s ease-in-out 3}@keyframes crsHint{50%{transform:scale(1.06);filter:brightness(1.12)}}@media(prefers-reduced-motion:reduce){.crs-node.is-hint .crs-node__link{animation:none;outline:3px solid var(--color-focus);outline-offset:4px}}.crs-maphero{position:relative;overflow:hidden;display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-4);padding:var(--space-5);border-radius:var(--radius-lg);border:1px solid var(--color-border);background:linear-gradient(135deg,var(--color-primary-soft) 0%,var(--color-surface-glass) 75%);box-shadow:var(--shadow-1)}.crs-maphero__txt{display:flex;flex-direction:column;gap:var(--space-2);min-width:0}.crs-continue{align-self:stretch;min-height:52px;justify-content:center}@media(min-width:600px){.crs-maphero{flex-direction:row;align-items:center;padding:var(--space-6)}.crs-continue{align-self:flex-start}.crs-ring{width:120px;height:120px}}.crs-gloss{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-2)}.crs-gloss__lbl{color:var(--color-text-muted);font-size:var(--text-sm);font-weight:var(--weight-semibold)}.crs-gloss__btn{min-height:44px;padding:var(--space-2) var(--space-4);border-radius:var(--radius-pill);border:1px solid var(--color-border-strong);background:var(--color-surface);color:var(--color-text);font:inherit;font-size:var(--text-sm);font-weight:var(--weight-bold);cursor:pointer}.crs-gloss__btn[aria-pressed=true]{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-on-primary)}.crs-unit{--bm-a: #BAE6FD;--bm-b: #E0F2FE;--bm-c: #DCFCE7;--bm-ring: #0369A1;--bm-road: rgba(255, 255, 255, .7);--bm-dash: #0369A1;--bm-done: #F59E0B;position:relative;overflow:hidden;display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-4);border-radius:28px;border:1px solid var(--color-border-strong);box-shadow:var(--shadow-1);background:linear-gradient(180deg,var(--bm-a) 0%,var(--bm-b) 48%,var(--bm-c) 100%)}.crs-unit[data-biome=jungle]{--bm-a: #14532D;--bm-b: #166534;--bm-c: #15803D;--bm-ring: #14532D;--bm-road: rgba(254, 243, 199, .55);--bm-dash: #FEF3C7;--bm-done: #FACC15}.crs-unit[data-biome=savanna]{--bm-a: #FDBA74;--bm-b: #FCD34D;--bm-c: #FEF3C7;--bm-ring: #9A3412;--bm-road: rgba(255, 255, 255, .6);--bm-dash: #92400E;--bm-done: #DC2626}.crs-unit[data-biome=ocean]{--bm-a: #7DD3FC;--bm-b: #0EA5E9;--bm-c: #1E3A8A;--bm-ring: #0C4A6E;--bm-road: rgba(255, 255, 255, .45);--bm-dash: #E0F2FE;--bm-done: #FBBF24}.crs-unit[data-biome=city]{--bm-a: #1c2159;--bm-b: #2e3380;--bm-c: #5b4a9c;--bm-ring: #1c2159;--bm-road: rgba(195, 205, 246, .55);--bm-dash: #ffcf70;--bm-done: #4ff0c8}.crs-unit[data-biome=snow]{--bm-a: #c9d1ea;--bm-b: #dbe9fa;--bm-c: #a89a6c;--bm-ring: #1f4a7a;--bm-road: rgba(255, 255, 255, .8);--bm-dash: #2a5a9a;--bm-done: #f0524f}:root[data-theme=dark] .crs-unit[data-biome=snow]{--bm-a: #c9d1ea;--bm-b: #4a5f98;--bm-c: #a89a6c;--bm-ring: #bcd0ff;--bm-road: rgba(220, 232, 255, .5);--bm-dash: #bcd0ff;--bm-done: #f0524f}.crs-unit[data-biome=harbor]{--bm-a: #9fd0cc;--bm-b: #f6cdb4;--bm-c: #1b7a8c;--bm-ring: #14566a;--bm-road: rgba(255, 244, 234, .8);--bm-dash: #14566a;--bm-done: #2cb5b0}:root[data-theme=dark] .crs-unit[data-biome=harbor]{--bm-a: #9fd0cc;--bm-b: #7a5470;--bm-c: #1b7a8c;--bm-ring: #ffd9c4;--bm-road: rgba(255, 220, 200, .5);--bm-dash: #ffd9c4;--bm-done: #2cb5b0}.crs-unit[data-biome=canyon]{--bm-a: #16264f;--bm-b: #a8503a;--bm-c: #c9d1ea;--bm-ring: #5a2f6e;--bm-road: rgba(255, 221, 180, .6);--bm-dash: #c0603f;--bm-done: #5fe0c0}.crs-unit[data-biome=autumn]{--bm-a: #a89a6c;--bm-b: #c98a3a;--bm-c: #9fd0cc;--bm-ring: #7a3a14;--bm-road: rgba(255, 232, 180, .6);--bm-dash: #b5601f;--bm-done: #7fd89a}:root[data-theme=dark] .crs-unit{--bm-a: #0B2A4A;--bm-b: #12355E;--bm-c: #0F3D2E;--bm-road: rgba(255, 255, 255, .28);--bm-dash: #BAE6FD;--bm-ring: #BAE6FD}:root[data-theme=dark] .crs-unit[data-biome=jungle]{--bm-a: #052E16;--bm-b: #0B3B1E;--bm-c: #14532D;--bm-dash: #FEF3C7}:root[data-theme=dark] .crs-unit[data-biome=savanna]{--bm-a: #4A2410;--bm-b: #6B3A12;--bm-c: #7C5A1A;--bm-dash: #FDE68A;--bm-ring: #FED7AA}:root[data-theme=dark] .crs-unit[data-biome=ocean]{--bm-a: #082F49;--bm-b: #0C4A6E;--bm-c: #172554;--bm-dash: #BAE6FD}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .crs-unit{--bm-a: #0B2A4A;--bm-b: #12355E;--bm-c: #0F3D2E;--bm-road: rgba(255, 255, 255, .28);--bm-dash: #BAE6FD;--bm-ring: #BAE6FD}:root:not([data-theme=light]) .crs-unit[data-biome=jungle]{--bm-a: #052E16;--bm-b: #0B3B1E;--bm-c: #14532D;--bm-dash: #FEF3C7}:root:not([data-theme=light]) .crs-unit[data-biome=savanna]{--bm-a: #4A2410;--bm-b: #6B3A12;--bm-c: #7C5A1A;--bm-dash: #FDE68A;--bm-ring: #FED7AA}:root:not([data-theme=light]) .crs-unit[data-biome=ocean]{--bm-a: #082F49;--bm-b: #0C4A6E;--bm-c: #172554;--bm-dash: #BAE6FD}:root:not([data-theme=light]) .crs-unit[data-biome=harbor]{--bm-a: #9fd0cc;--bm-b: #7a5470;--bm-c: #1b7a8c;--bm-ring: #ffd9c4;--bm-road: rgba(255, 220, 200, .5);--bm-dash: #ffd9c4;--bm-done: #2cb5b0}:root:not([data-theme=light]) .crs-unit[data-biome=snow]{--bm-a: #c9d1ea;--bm-b: #4a5f98;--bm-c: #a89a6c;--bm-ring: #bcd0ff;--bm-road: rgba(220, 232, 255, .5);--bm-dash: #bcd0ff;--bm-done: #f0524f}}:root[data-theme=dark] .crs-scene{filter:brightness(.62) saturate(.9)}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .crs-scene{filter:brightness(.62) saturate(.9)}}.crs-scene{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:0}.crs-deco{position:absolute;display:block;line-height:0;max-width:34%}.crs-deco svg{display:block;width:100%;height:auto;overflow:visible}.crs-deco--hill,.crs-deco--dune,.crs-deco--wave{max-width:72%}.crs-deco.is-center{max-width:14%}.crs-unit>*:not(.crs-scene){position:relative;z-index:1}.crs-unit__head{display:flex;align-items:center;gap:var(--space-3);align-self:flex-start;max-width:100%;padding:var(--space-2) var(--space-4) var(--space-2) var(--space-2);border-radius:var(--radius-pill);background:var(--color-surface);border:2px solid var(--bm-ring);box-shadow:var(--shadow-2)}.crs-unit__head .ems-avatar{flex:0 0 auto}.crs-unit__head .crs-eyebrow{margin:0}.crs-pathwrap{position:relative}.crs-trail{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none}.crs-trail path{fill:none;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.crs-trail__base{stroke:var(--bm-road);stroke-width:26}.crs-trail__dash{stroke:var(--bm-dash);stroke-width:3;stroke-dasharray:2 12;opacity:.85}.crs-trail__done{stroke:var(--bm-done);stroke-width:12;opacity:.9}.crs-path{list-style:none;margin:0;padding:0;position:relative;display:flex;flex-direction:column}.crs-node{position:relative;height:200px;display:flex;justify-content:center;align-items:flex-start}.crs-node__link{position:relative;left:calc(var(--s, 0) * 20%);display:flex;flex-direction:column;align-items:center;gap:6px;width:min(60%,236px);text-decoration:none;color:var(--color-text);-webkit-tap-highlight-color:transparent}.crs-node__badge{position:relative;z-index:var(--z-base);flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:84px;height:84px;border-radius:50%;border:5px solid var(--bm-ring);background:var(--color-surface);color:var(--color-text);font-family:var(--font-display);font-size:1.75rem;font-weight:var(--weight-extrabold);line-height:1;box-shadow:0 6px 0 var(--bm-ring),0 12px 18px #00000038;transition:transform var(--motion-fast) var(--ease-out),box-shadow var(--motion-fast) var(--ease-out)}.crs-node__badge:after{content:"";position:absolute;inset:-5px;border-radius:50%;border:4px solid var(--bm-done);opacity:0;pointer-events:none}.crs-node.is-doing .crs-node__badge{border-color:var(--color-warning);background:var(--color-warning-soft);color:var(--color-warning-ink);box-shadow:0 6px 0 var(--color-warning),0 12px 18px #00000038}.crs-node.is-done .crs-node__badge{border-color:var(--color-success);background:var(--color-success);color:var(--color-on-danger);box-shadow:0 6px 0 var(--color-success-ink),0 12px 18px #00000038}.crs-node.is-next .crs-node__badge{width:96px;height:96px;border-color:var(--color-primary-ink);background:var(--color-primary);color:var(--color-on-primary);box-shadow:0 6px 0 var(--color-primary-ink),0 14px 22px #00000047;animation:crsPulse 2.2s var(--ease-out) infinite}.crs-node__here{position:absolute;top:-26px;left:50%;transform:translate(-50%);z-index:2;padding:2px 12px;border-radius:var(--radius-pill);background:var(--color-warning);color:var(--color-on-primary);font-size:var(--text-xs);font-weight:var(--weight-extrabold);white-space:nowrap;box-shadow:var(--shadow-2)}.crs-node__body{display:flex;flex-direction:column;align-items:center;gap:2px;width:100%;min-width:0;padding:var(--space-2) var(--space-3);border-radius:20px;background:var(--color-surface);border:2px solid var(--bm-ring);box-shadow:var(--shadow-2);text-align:center;transition:transform var(--motion-fast) var(--ease-out)}.crs-node.is-next .crs-node__body{border-color:var(--color-primary);background:var(--color-primary-soft)}.crs-node__title{font-weight:var(--weight-extrabold);font-size:var(--text-sm);line-height:var(--leading-tight);overflow-wrap:anywhere}.crs-node__sub{color:var(--color-text-muted);font-size:var(--text-xs);line-height:var(--leading-tight);display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}.crs-node__meta{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:var(--space-1) var(--space-2);margin-top:2px}.crs-node__min{color:var(--color-text-muted);font-size:var(--text-xs)}.crs-node__stars .crs-star{font-size:var(--text-sm)}.crs-node__best{color:var(--color-text-muted);font-size:var(--text-xs);font-weight:var(--weight-semibold);font-variant-numeric:tabular-nums}.crs-node__link:hover .crs-node__badge,.crs-node__link:focus-visible .crs-node__badge{transform:translateY(-4px) scale(1.06)}.crs-node__link:hover .crs-node__body{transform:translateY(-2px)}.crs-node__link:active .crs-node__badge{transform:translateY(3px) scale(.94);box-shadow:0 2px 0 var(--bm-ring),0 4px 8px #00000038}.crs-node__link:focus-visible{outline:none}.crs-node__link:focus-visible .crs-node__body{outline:3px solid var(--color-focus);outline-offset:3px}.crs-node.is-launching{z-index:3}.crs-node.is-launching .crs-node__badge{animation:crsLaunch .42s cubic-bezier(.2,.9,.3,1.3) forwards}.crs-node.is-launching .crs-node__badge:after{animation:crsRipple .42s ease-out forwards}.crs-node.is-launching .crs-node__body{transform:translateY(6px) scale(.97)}.crs-path.is-launching .crs-node:not(.is-launching){opacity:.35;transition:opacity .25s var(--ease-out)}@keyframes crsLaunch{0%{transform:scale(1)}35%{transform:translateY(6px) scale(.86)}to{transform:translateY(-6px) scale(1.3)}}@keyframes crsRipple{0%{opacity:.9;transform:scale(1)}to{opacity:0;transform:scale(2.8)}}@media(prefers-reduced-motion:no-preference){.crs-deco--cloud,.crs-deco--bird{animation:crsDrift 14s ease-in-out infinite alternate}.crs-deco--balloon{animation:crsFloat 7s ease-in-out infinite alternate}.crs-deco--firefly{animation:crsBlink 3.2s ease-in-out infinite}.crs-deco--bubble{animation:crsFloat 5s ease-in-out infinite alternate}.crs-deco--fish{animation:crsDrift 9s ease-in-out infinite alternate}.crs-deco--weed,.crs-deco--coral,.crs-deco--tuft,.crs-deco--flower{transform-origin:50% 100%;animation:crsSway 5s ease-in-out infinite alternate}}@keyframes crsDrift{0%{translate:-14px 0}to{translate:14px 0}}@keyframes crsFloat{0%{translate:0 -8px}to{translate:0 8px}}@keyframes crsBlink{0%,to{opacity:.25}50%{opacity:1}}@keyframes crsSway{0%{rotate:-3deg}to{rotate:3deg}}@keyframes crsPulse{0%{box-shadow:0 0 0 0 var(--color-primary-border)}70%{box-shadow:0 0 0 10px transparent}to{box-shadow:0 0 0 0 transparent}}.crs-view--lesson{gap:var(--space-4)}@media(min-width:900px){.crs-view--lesson.is-wide{max-width:1120px}}.crs-player{display:flex;flex-direction:column;gap:var(--space-4);width:100%;--crs-accent: var(--color-primary)}.crs-player[data-s="1"]{--crs-accent: var(--color-success)}.crs-player[data-s="2"]{--crs-accent: var(--color-info)}.crs-player[data-s="3"]{--crs-accent: var(--color-primary)}.crs-player[data-s="4"]{--crs-accent: var(--color-warning)}.crs-player[data-s="5"]{--crs-accent: var(--color-danger)}.crs-bar{display:flex;gap:3px;height:8px}.crs-bar i{flex:1 1 0;min-width:3px;border-radius:var(--radius-pill);background:var(--color-border);transition:background-color var(--motion-base) var(--ease-out)}.crs-bar i.is-done{background:var(--crs-accent)}.crs-bar i.is-cur{background:var(--color-primary)}.crs-card{position:relative;display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-5) var(--space-4);border-radius:var(--radius-lg);border:1px solid var(--color-border);border-top:4px solid var(--crs-accent);background:var(--color-surface);color:var(--color-text);box-shadow:var(--shadow-2);outline:none;min-height:260px}.crs-card:focus{outline:none}@media(min-width:600px){.crs-card{padding:var(--space-6)}}.crs-card.is-in-next{animation:crsInNext .32s var(--ease-out)}.crs-card.is-in-prev{animation:crsInPrev .32s var(--ease-out)}@keyframes crsInNext{0%{opacity:0;transform:translate(22px)}to{opacity:1;transform:none}}@keyframes crsInPrev{0%{opacity:0;transform:translate(-22px)}to{opacity:1;transform:none}}.crs-title{margin:0;font-family:var(--font-display);font-size:var(--text-xl);font-weight:var(--weight-extrabold);line-height:var(--leading-tight);letter-spacing:-.01em;color:var(--color-text);outline:none;overflow-wrap:anywhere}.crs-title--hero{font-size:var(--text-3xl)}.crs-sub,.crs-prompt{margin:0;font-size:var(--text-lg);line-height:var(--leading-body);color:var(--color-text)}.crs-es-hint{margin:0;color:var(--color-text-muted);font-style:italic}.crs-nav{position:sticky;bottom:var(--ems-bottom-reserved, 0px);z-index:var(--z-sticky);display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3) 0 var(--space-3);background:var(--color-bg)}.crs-nav__btn{min-height:52px;flex:1 1 0}@media(max-width:599px){.crs-nav__btn{flex:1 1 auto;padding-inline:var(--space-3);text-wrap:balance}.crs-nav__btn[data-nav=prev]{white-space:nowrap}}@media(max-width:399px){.crs-nav{gap:var(--space-2)}.crs-nav__btn,.crs-nav__count{padding-inline:var(--space-2)}}.crs-nav__btn.is-locked{opacity:.55;cursor:not-allowed}.crs-nav__btn.is-nudge{animation:crsShake .4s}.crs-nav__count{flex:0 0 auto;white-space:nowrap;color:var(--color-text-muted);font-size:var(--text-sm);font-weight:var(--weight-bold)}@keyframes crsShake{20%,60%{transform:translate(-5px)}40%,80%{transform:translate(5px)}}.crs-sensei{display:flex;align-items:flex-start;gap:var(--space-3)}.crs-sensei .ems-avatar{flex:0 0 auto;animation:crsBounce .7s var(--ease-out) 1}.crs-bubble{position:relative;flex:1 1 auto;min-width:0;padding:var(--space-3) var(--space-4);border-radius:var(--radius-lg);border:1px solid var(--color-primary-border);background:var(--color-primary-soft);color:var(--color-text)}.crs-bubble:before{content:"";position:absolute;left:-7px;top:18px;width:12px;height:12px;background:inherit;border-left:1px solid var(--color-primary-border);border-bottom:1px solid var(--color-primary-border);transform:rotate(45deg)}.crs-bubble.is-think{background:var(--color-info-soft);border-color:var(--color-info-border)}.crs-bubble.is-think:before{border-color:var(--color-info-border)}.crs-bubble.is-wow{background:var(--color-warning-soft);border-color:var(--color-warning-border)}.crs-bubble.is-wow:before{border-color:var(--color-warning-border)}.crs-bubble__name{display:block;color:var(--color-primary-ink);font-size:var(--text-xs);font-weight:var(--weight-extrabold);letter-spacing:.04em;text-transform:uppercase}.crs-bubble__txt{display:block;line-height:var(--leading-body)}@keyframes crsBounce{0%{transform:translateY(0)}35%{transform:translateY(-9px)}65%{transform:translateY(0)}80%{transform:translateY(-3px)}to{transform:translateY(0)}}.crs-en{display:inline;padding:0 2px;border:0;border-bottom:2px dotted var(--color-primary);border-radius:2px;background:transparent;color:var(--color-primary-ink);font:inherit;font-weight:var(--weight-bold);cursor:pointer}.crs-en:hover,.crs-en.is-played{background:var(--color-primary-soft)}.crs-pop{position:fixed;z-index:var(--z-toast);max-width:min(280px,calc(100vw - 16px));padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background:var(--color-text);color:var(--color-bg);box-shadow:var(--shadow-3);font-size:var(--text-sm);font-weight:var(--weight-semibold);animation:crsPop .18s var(--ease-out)}.crs-pop[hidden]{display:none}@keyframes crsPop{0%{opacity:0;transform:translateY(4px) scale(.96)}to{opacity:1;transform:none}}.crs-speak{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:var(--radius-pill);border:1px solid var(--color-border-strong);background:var(--color-surface);color:var(--color-primary);cursor:pointer}.crs-speak:hover{background:var(--color-primary-soft)}.crs-recall{align-self:flex-start;min-height:44px;padding:var(--space-2) var(--space-4);border-radius:var(--radius-pill);border:1px dashed var(--color-warning-border);background:var(--color-warning-soft);color:var(--color-warning-ink);font:inherit;font-size:var(--text-sm);font-weight:var(--weight-bold);cursor:pointer}.crs-dialog-backdrop{position:fixed;inset:0;z-index:var(--z-modal);display:flex;align-items:center;justify-content:center;padding:var(--space-4);background:var(--color-overlay)}.crs-dialog{display:flex;flex-direction:column;gap:var(--space-4);width:min(440px,100%);padding:var(--space-5);border-radius:var(--radius-lg);background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border-strong);box-shadow:var(--shadow-3)}.crs-dialog__head{display:flex;align-items:center;gap:var(--space-3)}.crs-dialog__txt{margin:0;font-size:var(--text-lg);line-height:var(--leading-body)}.crs-dialog__actions,.crs-actions{display:flex;flex-wrap:wrap;gap:var(--space-3)}.crs-actions .btn,.crs-dialog__actions .btn{min-height:48px}.crs-actions--stack{flex-direction:column}.crs-actions--stack .btn{width:100%}.crs-hero{display:flex;flex-direction:column;align-items:center;gap:var(--space-3);text-align:center}.crs-hero .crs-sensei{text-align:left;align-self:stretch}.crs-hero__av .ems-avatar{animation:crsBounce .9s var(--ease-out) 1}.crs-objectives{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-2);align-self:stretch;text-align:left}.crs-objectives li{position:relative;padding:var(--space-3) var(--space-4) var(--space-3) var(--space-7);border-radius:var(--radius-md);background:var(--color-surface-sunken);animation:crsRise .4s var(--ease-out) both;animation-delay:calc(var(--i) * 90ms + .15s)}.crs-objectives li:before{content:"\2713";position:absolute;left:var(--space-4);color:var(--color-success);font-weight:var(--weight-extrabold)}.crs-hero__meta{display:flex;flex-wrap:wrap;gap:var(--space-2);justify-content:center;margin:0}.crs-chip--s1{border-color:var(--color-success-border);background:var(--color-success-soft);color:var(--color-success-ink)}.crs-chip--s2{border-color:var(--color-info-border);background:var(--color-info-soft);color:var(--color-info-ink)}.crs-chip--s3{border-color:var(--color-primary-border);background:var(--color-primary-soft);color:var(--color-primary-ink)}.crs-chip--s4,.crs-chip--s5{border-color:var(--color-warning-border);background:var(--color-warning-soft);color:var(--color-warning-ink)}@keyframes crsRise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.crs-steps{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-3)}.crs-step{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--color-surface-sunken);font-size:var(--text-lg);line-height:var(--leading-body)}.crs-step.is-new,.crs-msg.is-new{animation:crsRise .35s var(--ease-out)}.crs-step__n{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:var(--radius-pill);background:var(--color-primary);color:var(--color-on-primary);font-size:var(--text-sm);font-weight:var(--weight-extrabold)}.crs-more{min-height:52px}.crs-table{width:100%;border-collapse:separate;border-spacing:0 var(--space-2)}.crs-table th{padding:var(--space-2) var(--space-3);text-align:left;color:var(--color-text-muted);font-size:var(--text-xs);font-weight:var(--weight-bold);text-transform:uppercase;letter-spacing:.05em}.crs-table td{padding:var(--space-2) var(--space-3);background:var(--color-surface-sunken);vertical-align:middle}.crs-table td:first-child{border-radius:var(--radius-md) 0 0 var(--radius-md)}.crs-table td:last-child{border-radius:0 var(--radius-md) var(--radius-md) 0}.crs-table tr.is-on td{background:var(--color-primary-soft)}.crs-rowbtn{min-height:44px;padding:0 var(--space-2);border:0;background:transparent;color:var(--color-primary-ink);font:inherit;font-weight:var(--weight-extrabold);text-align:left;cursor:pointer}@media(max-width:599px){.crs-table--stack thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.crs-table--stack,.crs-table--stack tbody,.crs-table--stack tr,.crs-table--stack td,.crs-table--stack th{display:block;width:100%}.crs-table--stack tr{margin-bottom:var(--space-2);border-radius:var(--radius-md);overflow:hidden;background:var(--color-surface-sunken)}.crs-table--stack td,.crs-table--stack td:first-child,.crs-table--stack td:last-child{border-radius:0;padding:var(--space-1) var(--space-3);background:transparent}.crs-table--stack td:not(:first-child):before{content:attr(data-label) ": ";color:var(--color-text-muted);font-size:var(--text-xs);font-weight:var(--weight-bold)}.crs-table--stack tr.is-on{background:var(--color-primary-soft)}}.crs-flips{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:var(--space-3)}.crs-flipcard{position:relative;perspective:800px}.crs-flipcard .crs-speak{position:absolute;right:6px;bottom:6px;width:44px;height:44px;z-index:var(--z-base)}.crs-flip{display:block;width:100%;min-height:140px;padding:0;border:0;background:transparent;font:inherit;color:inherit;cursor:pointer}.crs-flip__inner{position:relative;display:grid;width:100%;min-height:140px;transition:transform .5s var(--ease-out);transform-style:preserve-3d}.crs-flip.is-flipped .crs-flip__inner{transform:rotateY(180deg)}.crs-flip__face{grid-area:1 / 1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-1);padding:var(--space-4) var(--space-3) var(--space-6);border-radius:var(--radius-lg);border:2px solid var(--color-primary-border);backface-visibility:hidden;-webkit-backface-visibility:hidden;text-align:center;font-size:var(--text-xl);font-weight:var(--weight-extrabold);overflow-wrap:anywhere}.crs-flip__front{background:var(--color-primary-soft);color:var(--color-primary-ink)}.crs-flip__back{background:var(--color-success-soft);border-color:var(--color-success-border);color:var(--color-success-ink);transform:rotateY(180deg)}.crs-flip__back small{font-size:var(--text-sm);font-weight:var(--weight-semibold)}.crs-exlist,.crs-mklist,.crs-chat,.crs-checks,.crs-cplist,.crs-revlist{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-3)}.crs-ex{padding:var(--space-3);border-radius:var(--radius-md);background:var(--color-surface-sunken)}.crs-ex__row{display:flex;align-items:center;gap:var(--space-2)}.crs-ex__en{flex:1 1 auto;min-height:48px;padding:var(--space-2);border:0;background:transparent;color:var(--color-text);font:inherit;font-size:var(--text-lg);font-weight:var(--weight-bold);text-align:left;cursor:pointer;border-bottom:2px dotted var(--color-primary)}.crs-ex__es{margin:var(--space-2) var(--space-2) 0;color:var(--color-text-muted)}.crs-ex__es[hidden],.crs-mk__fix[hidden],.crs-msg__es[hidden]{display:none}.crs-compare{display:grid;gap:var(--space-3);align-items:center}@media(min-width:560px){.crs-compare{grid-template-columns:1fr auto 1fr}}.crs-side{padding:var(--space-4);border-radius:var(--radius-md);border:2px solid var(--color-border-strong)}.crs-side--es{background:var(--color-warning-soft);border-color:var(--color-warning-border)}.crs-side--en{background:var(--color-primary-soft);border-color:var(--color-primary-border)}.crs-side__lbl{margin:0 0 var(--space-1);font-size:var(--text-xs);font-weight:var(--weight-extrabold);letter-spacing:.05em;text-transform:uppercase;color:var(--color-text-muted)}.crs-side__txt{margin:0;font-size:var(--text-xl);font-weight:var(--weight-bold)}.crs-compare__vs{justify-self:center;font-size:var(--text-2xl);font-weight:var(--weight-extrabold);color:var(--color-text-muted)}.crs-why{padding:var(--space-4);border-radius:var(--radius-md);background:var(--color-success-soft);border:1px solid var(--color-success-border);color:var(--color-success-ink);animation:crsRise .35s var(--ease-out)}.crs-why p{margin:0}.crs-why .crs-why__lbl{font-weight:var(--weight-extrabold);margin-bottom:var(--space-1)}.crs-mk{border-radius:var(--radius-md);border:1px solid var(--color-danger-border);background:var(--color-danger-soft);overflow:hidden}.crs-mk.is-open{border-color:var(--color-success-border)}.crs-mk__wrong{display:flex;align-items:center;gap:var(--space-3);width:100%;min-height:56px;padding:var(--space-3) var(--space-4);border:0;background:transparent;color:var(--color-danger-ink);font:inherit;font-size:var(--text-lg);font-weight:var(--weight-bold);text-align:left;cursor:pointer}.crs-mk__txt{text-decoration:line-through;text-decoration-thickness:2px}.crs-mk.is-open .crs-mk__txt{opacity:.7}.crs-mk__fix{padding:var(--space-3) var(--space-4) var(--space-4);background:var(--color-success-soft);color:var(--color-success-ink);animation:crsRise .3s var(--ease-out)}.crs-mk__fix p{margin:0}.crs-mk__right{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-lg)}.crs-mk__fix .crs-mk__why{margin-top:var(--space-1)}.crs-msg{display:flex;align-items:flex-end;gap:var(--space-2)}.crs-msg--b{flex-direction:row-reverse}.crs-msg__who{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--radius-pill);background:var(--color-primary);color:var(--color-on-primary);font-size:var(--text-sm);font-weight:var(--weight-extrabold)}.crs-msg--b .crs-msg__who{background:var(--color-success);color:var(--color-on-danger)}.crs-msg__bubble{flex:0 1 auto;max-width:78%;padding:var(--space-2) var(--space-3);border-radius:var(--radius-lg);background:var(--color-primary-soft);border:1px solid var(--color-primary-border)}.crs-msg--b .crs-msg__bubble{background:var(--color-success-soft);border-color:var(--color-success-border)}.crs-msg__en{min-height:44px;padding:0;border:0;background:transparent;color:var(--color-text);font:inherit;font-size:var(--text-lg);font-weight:var(--weight-bold);text-align:left;cursor:pointer}.crs-msg__es{margin:0;color:var(--color-text-muted);font-size:var(--text-sm)}.crs-answer{display:flex;flex-wrap:wrap;gap:var(--space-2);min-height:64px;padding:var(--space-3);border-radius:var(--radius-md);border:2px dashed var(--color-border-strong);background:var(--color-surface-sunken);align-items:center}.crs-answer__ph{color:var(--color-text-muted)}.crs-bank{display:flex;flex-wrap:wrap;gap:var(--space-2)}.crs-chip-btn{min-height:48px;padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);border:1px solid var(--color-border-strong);background:var(--color-surface);color:var(--color-text);font:inherit;font-size:var(--text-lg);font-weight:var(--weight-bold);cursor:pointer;box-shadow:var(--shadow-1)}.crs-chip-btn.is-placed{background:var(--color-primary-soft);border-color:var(--color-primary);color:var(--color-primary-ink)}.crs-chip-btn:disabled{cursor:default;opacity:.8}.crs-match{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3)}.crs-match__col{display:flex;flex-direction:column;gap:var(--space-2)}.crs-mt{min-height:52px;padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);border:2px solid var(--color-border-strong);background:var(--color-surface);color:var(--color-text);font:inherit;font-weight:var(--weight-bold);cursor:pointer;overflow-wrap:anywhere}.crs-mt.is-sel{border-color:var(--color-primary);background:var(--color-primary-soft);box-shadow:var(--shadow-focus)}.crs-mt.is-matched{border-color:var(--color-success);background:var(--color-success-soft);color:var(--color-success-ink);opacity:1}.crs-mt.is-wrong{border-color:var(--color-danger);background:var(--color-danger-soft);color:var(--color-danger-ink);animation:crsShake .4s}.crs-check{display:flex;align-items:center;gap:var(--space-3);width:100%;min-height:56px;padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);border:1px solid var(--color-border-strong);background:var(--color-surface);color:var(--color-text);font:inherit;font-size:var(--text-lg);font-weight:var(--weight-semibold);text-align:left;cursor:pointer}.crs-check.is-on{background:var(--color-success-soft);border-color:var(--color-success-border);color:var(--color-success-ink)}.crs-check__box{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:var(--radius-sm);border:2px solid var(--color-border-strong);font-weight:var(--weight-extrabold)}.crs-check.is-on .crs-check__box{background:var(--color-success);border-color:var(--color-success);color:var(--color-on-danger)}.crs-q{display:flex;flex-direction:column;gap:var(--space-4)}.crs-q__type{margin:0;color:var(--color-primary-ink);font-size:var(--text-xs);font-weight:var(--weight-extrabold);letter-spacing:.05em;text-transform:uppercase}.crs-q__stem{margin:0;font-size:var(--text-xl);font-weight:var(--weight-bold);line-height:var(--leading-snug)}.crs-opts{display:grid;gap:var(--space-3)}.crs-opts--tf{grid-template-columns:1fr 1fr}.crs-opt{display:flex;align-items:center;gap:var(--space-3);min-height:56px;padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);border:2px solid var(--color-border-strong);background:var(--color-surface);color:var(--color-text);font:inherit;font-size:var(--text-lg);font-weight:var(--weight-semibold);text-align:left;cursor:pointer;transition:border-color var(--motion-fast) var(--ease-out),background-color var(--motion-fast) var(--ease-out)}.crs-opts--tf .crs-opt{justify-content:center;text-align:center}.crs-opt:hover:not(:disabled){border-color:var(--color-primary);background:var(--color-primary-soft)}.crs-opt__l{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:var(--radius-pill);border:2px solid var(--color-border-strong);font-size:var(--text-sm);font-weight:var(--weight-extrabold)}.crs-opt.is-sel,.crs-opt.is-picked,.crs-token.is-sel,.crs-token.is-picked{border-color:var(--color-primary);background:var(--color-primary-soft);color:var(--color-primary-ink)}.crs-opt.is-correct,.crs-token.is-correct{border-color:var(--color-success);background:var(--color-success-soft);color:var(--color-success-ink);animation:crsPulseOk .5s var(--ease-out)}.crs-opt.is-wrong,.crs-token.is-wrong{border-color:var(--color-danger);background:var(--color-danger-soft);color:var(--color-danger-ink)}.crs-opt:disabled{cursor:default;opacity:1}@keyframes crsPulseOk{0%{transform:scale(1)}40%{transform:scale(1.03)}to{transform:scale(1)}}.crs-tokens{display:flex;flex-wrap:wrap;gap:var(--space-2)}.crs-token{min-height:48px;padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);border:2px solid var(--color-border-strong);background:var(--color-surface);color:var(--color-text);font:inherit;font-size:var(--text-lg);font-weight:var(--weight-bold);cursor:pointer}.crs-token:disabled{opacity:1;cursor:default}.crs-blank{display:inline-block;width:9ch;min-width:6ch;max-width:100%;min-height:48px;margin:0 var(--space-1);padding:var(--space-1) var(--space-3);border:0;border-bottom:3px solid var(--color-primary);border-radius:var(--radius-sm) var(--radius-sm) 0 0;background:var(--color-primary-soft);color:var(--color-text);font:inherit;font-weight:var(--weight-bold);text-align:center}.crs-blank:focus-visible{outline:3px solid var(--color-focus);outline-offset:2px}.crs-blank.is-correct{border-color:var(--color-success);background:var(--color-success-soft)}.crs-blank.is-wrong{border-color:var(--color-danger);background:var(--color-danger-soft)}.crs-listen{display:flex;flex-wrap:wrap;gap:var(--space-3)}.crs-hint{margin:0;padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background:var(--color-info-soft);color:var(--color-info-ink)}.crs-fb{margin:0;padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);border:1.5px solid var(--color-border-strong);animation:crsRise .3s var(--ease-out)}.crs-fb p{margin:0}.crs-fb.is-ok{background:var(--color-success-soft);border-color:var(--color-success-border);color:var(--color-success-ink)}.crs-fb.is-bad{background:var(--color-danger-soft);border-color:var(--color-danger-border);color:var(--color-danger-ink)}.crs-fb.is-neutral{background:var(--color-primary-soft);border-color:var(--color-primary-border);color:var(--color-primary-ink);font-weight:var(--weight-bold)}.crs-fb__title{font-weight:var(--weight-extrabold);font-size:var(--text-lg)}.crs-fb .crs-fb__why{margin-top:var(--space-1);color:var(--color-text)}.crs-cpsum{display:flex;flex-direction:column;gap:var(--space-3)}.crs-cpsum p{margin:0}.crs-cpsum__score{font-family:var(--font-display);font-size:var(--text-3xl);font-weight:var(--weight-extrabold);color:var(--color-primary-ink)}.crs-cplist li{display:flex;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md)}.crs-cplist li.is-ok{background:var(--color-success-soft);color:var(--color-success-ink)}.crs-cplist li.is-bad{background:var(--color-danger-soft);color:var(--color-danger-ink)}.crs-resultcard{align-items:stretch;text-align:center}.crs-resultcard .crs-sensei{text-align:left}.crs-stars--big{display:flex;justify-content:center;gap:var(--space-2);margin:0}.crs-stars--big .crs-star{font-size:44px}.crs-stars--big .crs-star.is-on{animation:crsStarIn .55s var(--ease-out) both;animation-delay:calc(var(--i) * .26s + .3s)}@keyframes crsStarIn{0%{opacity:0;transform:scale(.2) rotate(-40deg)}70%{transform:scale(1.25) rotate(8deg)}to{opacity:1;transform:none}}.crs-review{text-align:left;display:flex;flex-direction:column;gap:var(--space-3)}.crs-rev{padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--color-surface-sunken);border:1px solid var(--color-border)}.crs-rev p{margin:0}.crs-rev__q{font-weight:var(--weight-bold)}.crs-rev__a.is-bad{color:var(--color-danger-ink)}.crs-rev__a.is-ok{color:var(--color-success-ink)}.crs-rev__pair{display:inline-block}.crs-rev__pair.is-ok{color:var(--color-success-ink)}.crs-rev__pair.is-bad{color:var(--color-danger-ink);font-weight:var(--weight-bold);text-decoration:line-through;text-decoration-thickness:2px}.crs-rev__pair.is-bad .crs-sr,.crs-rev__pair.is-bad [aria-hidden]{text-decoration:none}.crs-rev .crs-rev__why{margin-top:var(--space-1);color:var(--color-text-muted)}.crs-spark{position:absolute;left:50%;top:40%;width:0;height:0;pointer-events:none;z-index:var(--z-overlay)}.crs-spark i{position:absolute;left:-5px;top:-5px;width:10px;height:10px;border-radius:var(--radius-pill);background:var(--color-warning);animation:crsBurst .9s var(--ease-out) forwards;transform:rotate(var(--a)) translateY(0)}.crs-spark i:nth-child(3n+1){background:var(--color-primary)}.crs-spark i:nth-child(3n+2){background:var(--color-success)}@keyframes crsBurst{0%{opacity:1;transform:rotate(var(--a)) translateY(0) scale(1)}to{opacity:0;transform:rotate(var(--a)) translateY(-90px) scale(.4)}}@media(prefers-reduced-motion:reduce){.crs-spark{display:none}.crs-flip__inner{transition:none}.crs-node.is-next .crs-node__badge{animation:none}.crs-node__link:hover .crs-node__badge,.crs-node__link:hover .crs-node__body{transform:none}}.crs-dots{display:flex;gap:2px;margin-block:-18px}.crs-dot{flex:1 1 0;min-width:4px;height:44px;padding:18px 0;border:0;background:transparent;cursor:pointer}.crs-dot i{display:block;height:8px;border-radius:var(--radius-pill);background:var(--color-border);transition:background-color var(--motion-base) var(--ease-out)}.crs-dot.is-done i{background:var(--crs-accent)}.crs-dot.is-cur i{background:var(--color-primary)}.crs-dot:disabled{cursor:default}.crs-dot:not(:disabled):hover i{filter:brightness(.85)}@media(pointer:coarse){.crs-dots{pointer-events:none}}.crs-nav__count{min-height:44px;padding:0 var(--space-3);border:1px solid var(--color-border-strong);border-radius:var(--radius-pill);background:var(--color-surface);color:var(--color-text);font:inherit;font-size:var(--text-sm);font-weight:var(--weight-bold);cursor:pointer}.crs-nav__count:hover{background:var(--color-primary-soft)}.crs-idxbtn{min-height:44px;border:0;cursor:pointer;font-family:inherit}.crs-index{align-items:flex-end}@media(min-width:700px){.crs-index{align-items:center}}.crs-indexdlg{max-height:min(80vh,640px);max-height:min(80dvh,640px);overflow:hidden}.crs-idxlist{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-1);overflow-y:auto;min-height:0}.crs-idxitem{display:flex;align-items:center;gap:var(--space-3);width:100%;min-height:48px;padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);font:inherit;font-weight:var(--weight-semibold);text-align:left;cursor:pointer}.crs-idxitem:hover:not(.is-future){background:var(--color-primary-soft);border-color:var(--color-primary)}.crs-idxitem.is-cur{border-color:var(--color-primary);background:var(--color-primary-soft);color:var(--color-primary-ink)}.crs-idxitem.is-future{opacity:.6;cursor:default}.crs-idxitem__n{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:var(--radius-pill);background:var(--color-surface-sunken);font-size:var(--text-sm);font-weight:var(--weight-extrabold)}.crs-idxitem.is-cur .crs-idxitem__n{background:var(--color-primary);color:var(--color-on-primary)}.crs-idxitem__t{min-width:0;overflow-wrap:anywhere}.crs-speak.is-off{opacity:.35;cursor:not-allowed}.is-playing{outline:3px solid var(--color-primary);outline-offset:2px;animation:crsPlay 1s ease-in-out infinite}tr.is-playing{outline-offset:-3px}@keyframes crsPlay{50%{background-color:var(--color-primary-soft)}}.crs-spk-ic{flex:0 0 auto;margin-left:var(--space-2);vertical-align:-2px;color:var(--color-primary)}.crs-card--board{padding:0;overflow:hidden;border-top-width:1px;gap:0}.crs-band{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3) var(--space-5);background:linear-gradient(120deg,var(--teal-ink),var(--cyan));color:var(--color-bg)}.crs-band--u2{background:linear-gradient(120deg,var(--purple-ink),var(--purple))}.crs-band--u3{background:linear-gradient(120deg,var(--color-warning-ink),var(--color-warning))}.crs-band--u4{background:linear-gradient(120deg,var(--fuchsia-ink),var(--fuchsia))}.crs-band__lbl{font-size:var(--text-sm);font-weight:var(--weight-extrabold);letter-spacing:.12em;text-transform:uppercase;overflow-wrap:anywhere}.crs-band__n{flex:0 0 auto;font-family:var(--font-display);font-size:var(--text-xl);font-weight:var(--weight-extrabold);opacity:.9}.crs-boardbody{display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-5) var(--space-4) var(--space-5)}@media(min-width:600px){.crs-boardbody{padding:var(--space-6)}.crs-band{padding:var(--space-3) var(--space-6)}}.crs-title--board{font-size:var(--text-2xl);letter-spacing:-.02em}@media(min-width:900px){.crs-title--board{font-size:var(--text-3xl)}}.crs-blocks{display:block}.crs-col{display:flex;flex-direction:column;gap:var(--space-4);min-width:0}@media(min-width:900px){.crs-blocks--split{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:var(--space-6);align-items:start}}@media(max-width:899px){.crs-blocks--split .crs-col+.crs-col{margin-top:var(--space-4)}}.crs-blk.is-new{animation:crsRise .35s var(--ease-out)}.crs-bh{margin:0 0 var(--space-3);font-size:var(--text-lg);font-weight:var(--weight-extrabold);color:var(--color-text)}.crs-btext{font-size:var(--text-lg);line-height:var(--leading-body)}.crs-boardbody .crs-sensei .ems-avatar{width:44px;height:44px}.crs-bnote{display:flex;gap:var(--space-3);align-items:flex-start;padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);border:1px solid var(--color-border-strong);border-left-width:5px;background:var(--color-surface-sunken)}.crs-bnote p{margin:0}.crs-bnote__ic{font-size:22px;line-height:1.2}.crs-bnote__k{font-size:var(--text-xs);font-weight:var(--weight-extrabold);letter-spacing:.06em;text-transform:uppercase}.crs-bnote__t{line-height:var(--leading-body)}.crs-bnote--tip{background:var(--color-success-soft);border-color:var(--color-success-border);color:var(--color-success-ink)}.crs-bnote--warn{background:var(--color-warning-soft);border-color:var(--color-warning-border);color:var(--color-warning-ink)}.crs-bnote--es{background:var(--color-info-soft);border-color:var(--color-info-border);color:var(--color-info-ink)}.crs-bnote--pron{background:var(--purple-surface);border-color:var(--purple-border);color:var(--purple-ink)}.crs-bnote--tip .crs-bnote__t,.crs-bnote--warn .crs-bnote__t,.crs-bnote--es .crs-bnote__t,.crs-bnote--pron .crs-bnote__t{color:var(--color-text)}.crs-table--board{border-spacing:0;overflow:hidden;border-radius:var(--radius-md);border:1px solid var(--color-border-strong)}.crs-table--board th{padding:var(--space-3) var(--space-4);background:var(--purple-ink);color:var(--color-bg);font-size:var(--text-sm);letter-spacing:.06em}.crs-th--orange th{background:var(--color-warning-ink)}.crs-th--teal th{background:var(--teal-ink)}.crs-table--board td{padding:var(--space-2) var(--space-4);background:var(--color-surface);border-top:1px solid var(--color-border);border-radius:0;font-size:var(--text-lg)}.crs-table--board tr.is-odd td{background:var(--color-surface-sunken)}.crs-table--board tr.is-on td{background:var(--color-primary-soft)}.crs-table--board tr.crs-grp th{padding:var(--space-2) var(--space-4);background:var(--color-primary-soft);color:var(--color-primary-ink);font-size:var(--text-xs);text-transform:uppercase;text-align:left}.crs-table--board .crs-rowbtn{display:inline-flex;align-items:center;font-size:var(--text-lg)}@media(max-width:599px){.crs-table--board.crs-table--stack tr{border-radius:0;margin:0;border-top:1px solid var(--color-border)}.crs-table--board.crs-table--stack tr.crs-grp{border-top:0}.crs-table--board.crs-table--stack td{border-top:0;padding:var(--space-1) var(--space-4);font-size:var(--text-base)}.crs-table--board.crs-table--stack tr:not(.crs-grp){background:var(--color-surface)}.crs-table--board.crs-table--stack tr.is-odd{background:var(--color-surface-sunken)}.crs-table--board.crs-table--stack tr.is-on{background:var(--color-primary-soft)}.crs-table--board.crs-table--stack td:first-child{padding-top:var(--space-2)}.crs-table--board.crs-table--stack td:last-child{padding-bottom:var(--space-2)}}.crs-formula{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;align-items:stretch;gap:var(--space-2)}.crs-fplus{align-self:center;font-size:var(--text-xl);font-weight:var(--weight-extrabold);color:var(--color-text-muted)}.crs-fpart{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-width:72px;padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);border:2px solid var(--color-border-strong);background:var(--color-surface-sunken);color:var(--color-text);text-align:center}.crs-fpart__t{font-size:var(--text-lg);font-weight:var(--weight-extrabold)}.crs-fpart small{font-size:var(--text-xs);font-weight:var(--weight-semibold);opacity:.85}.crs-c-blue{background:var(--color-info-soft);border-color:var(--color-info-border);color:var(--color-info-ink)}.crs-c-green{background:var(--color-success-soft);border-color:var(--color-success-border);color:var(--color-success-ink)}.crs-c-orange{background:var(--color-warning-soft);border-color:var(--color-warning-border);color:var(--color-warning-ink)}.crs-c-pink{background:var(--fuchsia-surface);border-color:var(--fuchsia-border);color:var(--fuchsia-ink)}.crs-c-gray{background:var(--color-surface-sunken);border-color:var(--color-border-strong);color:var(--color-text)}.crs-fexample{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--space-2);margin:var(--space-3) 0 0;font-size:var(--text-lg)}.crs-fexample__k{font-size:var(--text-xs);font-weight:var(--weight-extrabold);letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-muted)}.crs-fexample__es{color:var(--color-text-muted);font-size:var(--text-base)}.crs-bkgrid,.crs-tiles,.crs-sounds{list-style:none;margin:0;padding:0}.crs-bkgrid{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-2)}@media(min-width:600px){.crs-bkgrid{grid-template-columns:repeat(var(--cols, 2),minmax(0,1fr))}}.crs-bk{padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-surface-sunken)}.crs-bk__row{display:flex;align-items:center;gap:var(--space-2)}.crs-bk__btn{flex:1 1 auto;display:flex;align-items:center;gap:var(--space-3);min-height:48px;padding:var(--space-1) 0;border:0;background:transparent;color:var(--color-text);font:inherit;font-size:var(--text-lg);font-weight:var(--weight-bold);text-align:left;cursor:pointer}.crs-bk__ic{font-size:28px;line-height:1}.crs-bk__es{margin:0 0 var(--space-1);color:var(--color-text-muted);font-size:var(--text-base)}.crs-bk__es[hidden],.crs-tile__es[hidden]{display:none}.crs-tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(112px,1fr));gap:var(--space-3)}.crs-tile__btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-1);width:100%;min-height:112px;padding:var(--space-3);border-radius:var(--radius-lg);border:2px solid var(--color-border-strong);background:var(--color-surface);color:var(--color-text);font:inherit;text-align:center;cursor:pointer}.crs-tile__btn:hover,.crs-tile.is-open .crs-tile__btn{border-color:var(--color-primary);background:var(--color-primary-soft)}.crs-tile__ic{font-size:40px;line-height:1.1}.crs-tile__en{font-size:var(--text-lg);font-weight:var(--weight-extrabold)}.crs-tile__es{color:var(--color-text-muted);font-size:var(--text-sm)}.crs-step__ex{display:block;margin-top:var(--space-1);color:var(--color-text-muted);font-size:var(--text-base)}.crs-nl__line{list-style:none;margin:0;padding:var(--space-3) 0 0;display:flex;flex-wrap:wrap;gap:var(--space-2);border-top:4px solid var(--color-border-strong)}.crs-nl__n{min-width:48px;min-height:48px;padding:0 var(--space-2);border-radius:var(--radius-md);border:2px solid var(--color-border-strong);background:var(--color-surface);color:var(--color-text);font:inherit;font-weight:var(--weight-extrabold);cursor:pointer}.crs-nl__n.is-mark{border-color:var(--color-warning);background:var(--color-warning-soft);color:var(--color-warning-ink)}.crs-nl__n.is-on{border-color:var(--color-primary);background:var(--color-primary);color:var(--color-on-primary)}.crs-nl__sel{margin:var(--space-3) 0 0;font-size:var(--text-lg);color:var(--color-text-muted)}.crs-nl__sel strong{color:var(--color-text);font-size:var(--text-2xl)}.crs-side__list{margin:0;padding-left:var(--space-5);display:flex;flex-direction:column;gap:var(--space-1);font-size:var(--text-lg);font-weight:var(--weight-semibold)}.crs-sounds{display:flex;flex-direction:column;gap:var(--space-2)}.crs-sound{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background:var(--color-surface-sunken);border:1px solid var(--color-border)}.crs-sound__t{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--space-2);min-width:0}.crs-sound__w{font-size:var(--text-xl);font-weight:var(--weight-extrabold)}.crs-sound__ipa{font-family:var(--font-mono);color:var(--color-primary-ink)}.crs-sound__es{color:var(--color-text-muted);font-size:var(--text-sm)}.crs-cl{display:flex;flex-direction:column;gap:var(--space-3)}.crs-cl__pool{display:flex;flex-wrap:wrap;gap:var(--space-2);min-height:56px;padding:var(--space-3);border-radius:var(--radius-md);border:2px dashed var(--color-border-strong);background:var(--color-surface-sunken);align-items:center}.crs-cl__item{min-height:48px;padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);border:2px solid var(--color-border-strong);background:var(--color-surface);color:var(--color-text);font:inherit;font-size:var(--text-lg);font-weight:var(--weight-bold);cursor:pointer}.crs-cl__item.is-sel{border-color:var(--color-primary);background:var(--color-primary-soft);box-shadow:var(--shadow-focus)}.crs-cl__item.is-wrong{border-color:var(--color-danger);background:var(--color-danger-soft);color:var(--color-danger-ink);animation:crsShake .4s}.crs-cl__buckets{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:var(--space-3)}.crs-bucket{display:flex;flex-direction:column;gap:var(--space-2)}.crs-bucket__btn{min-height:48px;padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);border:2px solid var(--color-primary-border);background:var(--color-primary-soft);color:var(--color-primary-ink);font:inherit;font-weight:var(--weight-extrabold);cursor:pointer}.crs-bucket__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-1)}.crs-bucket__list li{padding:var(--space-1) var(--space-3);border-radius:var(--radius-md);background:var(--color-success-soft);border:1px solid var(--color-success-border);color:var(--color-success-ink);font-weight:var(--weight-bold)}@media(prefers-reduced-motion:reduce){.is-playing{animation:none}}.rec-tracks{grid-column:1 / -1;display:flex;gap:var(--space-1);padding:var(--space-1);border-radius:var(--radius-pill);border:1px solid var(--color-border-strong);background:var(--color-surface)}.rec-track{flex:1 1 0;min-width:0;min-height:44px;padding:var(--space-2) var(--space-3);border:0;border-radius:var(--radius-pill);background:transparent;color:var(--color-text);font:inherit;font-size:var(--text-sm);font-weight:var(--weight-bold);cursor:pointer}.rec-track[aria-selected=true]{background:var(--color-primary);color:var(--color-on-primary)}.rec-track:focus-visible{outline:3px solid var(--color-focus);outline-offset:2px}.crs-ty__why{margin:0;padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--color-warning-soft);border:1px solid var(--color-warning-border);color:var(--color-warning-ink)}.crs-ty__ok{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--color-success-soft);border:1px solid var(--color-success-border);color:var(--color-success-ink)}.crs-ty__okt{margin:0;font-weight:var(--weight-extrabold)}.crs-ty__audio{align-items:center}.crs-ty__src{margin:0;padding:var(--space-3) var(--space-4);border-left:4px solid var(--color-primary);border-radius:var(--radius-md);background:var(--color-surface-sunken);color:var(--color-text);font-size:var(--text-lg);font-weight:var(--weight-semibold)}.crs-ty__kw{margin:0;color:var(--color-text-muted)}.crs-ty__kwv{display:inline-block;padding:2px var(--space-3);border-radius:var(--radius-pill);border:1px solid var(--color-primary-border);background:var(--color-primary-soft);color:var(--color-primary-ink)}.crs-ty__line{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}.crs-ty__start{font-size:var(--text-lg);font-weight:var(--weight-bold);color:var(--color-text)}.crs-blank--wide{flex:1 1 14rem;width:auto;min-width:12rem;margin:0;text-align:left}.crs-nat__ctx{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-2)}.crs-nat__line{display:flex;align-items:flex-start;gap:var(--space-2)}.crs-nat__who{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--radius-pill);background:var(--color-primary);color:var(--color-on-primary);font-weight:var(--weight-extrabold);font-size:var(--text-sm)}.crs-nat__line--b .crs-nat__who{background:var(--color-success);color:var(--color-on-danger)}.crs-nat__txt{max-width:82%;padding:var(--space-2) var(--space-3);border-radius:var(--radius-lg);background:var(--color-primary-soft);border:1px solid var(--color-primary-border);font-size:var(--text-lg);font-weight:var(--weight-semibold)}.crs-nat__line--b .crs-nat__txt{background:var(--color-success-soft);border-color:var(--color-success-border)}.crs-pr{display:flex;flex-wrap:wrap;gap:var(--space-2)}.crs-pr__t{min-height:44px;padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);border:2px solid var(--color-border);background:var(--color-surface);color:var(--color-text);font:inherit;font-size:var(--text-lg);font-weight:var(--weight-semibold);cursor:pointer}.crs-pr__t:hover:not(:disabled){border-color:var(--color-primary)}.crs-pr__t.is-sel,.crs-pr__t.is-picked{border-color:var(--color-primary);background:var(--color-primary-soft);color:var(--color-primary-ink);box-shadow:inset 0 -4px 0 var(--color-primary)}.crs-pr__t.is-correct{border-color:var(--color-success);background:var(--color-success-soft);color:var(--color-success-ink)}.crs-pr__t.is-wrong{border-color:var(--color-danger);background:var(--color-danger-soft);color:var(--color-danger-ink);text-decoration:line-through}.crs-pr__t.is-missed{border-color:var(--color-success);border-style:dashed;background:var(--color-surface);color:var(--color-success-ink)}.crs-pr__t:disabled{cursor:default;opacity:1}.crs-pr__fix{font-weight:var(--weight-extrabold);text-decoration:none}.crs-sq__placed{list-style:none;margin:0;padding:var(--space-3);display:flex;flex-direction:column;gap:var(--space-2);border-radius:var(--radius-md);border:2px dashed var(--color-border-strong);background:var(--color-surface-sunken)}.crs-sq__it,.crs-sq__chip{display:flex;align-items:center;gap:var(--space-2);width:100%;min-height:48px;text-align:left}.crs-sq__it{padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);border:2px solid var(--color-primary-border);background:var(--color-primary-soft);color:var(--color-primary-ink);font:inherit;font-weight:var(--weight-bold);cursor:pointer}.crs-sq__it.is-correct{border-color:var(--color-success);background:var(--color-success-soft);color:var(--color-success-ink)}.crs-sq__it.is-wrong{border-color:var(--color-danger);background:var(--color-danger-soft);color:var(--color-danger-ink)}.crs-sq__it:disabled{cursor:default;opacity:1}.crs-sq__n{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:var(--radius-pill);background:var(--color-surface);border:2px solid currentColor;font-size:var(--text-sm);font-weight:var(--weight-extrabold)}.crs-sq__who{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;min-width:26px;height:26px;padding:0 6px;border-radius:var(--radius-pill);background:var(--color-primary);color:var(--color-on-primary);font-size:var(--text-xs);font-weight:var(--weight-extrabold)}.crs-sq__chip{justify-content:flex-start}.crs-sq__good{margin:0;padding-left:var(--space-5);display:flex;flex-direction:column;gap:var(--space-1)}.crs-sq__good li{padding-left:var(--space-1)}.crs-bank:has(.crs-sq__chip){flex-direction:column}.crs-sc{display:grid;grid-template-columns:repeat(auto-fit,minmax(104px,1fr));gap:var(--space-2);padding-top:var(--space-3);border-top:4px solid var(--color-primary-border);border-radius:2px}.crs-sc__pt{display:flex;flex-direction:column;gap:var(--space-2);min-width:0}.crs-sc__lbl{min-height:48px;padding:var(--space-2);border-radius:var(--radius-md);border:2px solid var(--color-primary-border);background:var(--color-primary-soft);color:var(--color-primary-ink);font:inherit;font-size:var(--text-sm);font-weight:var(--weight-extrabold);cursor:pointer;overflow-wrap:anywhere}.crs-sc__lbl[aria-disabled=true]{opacity:.55;cursor:default}.crs-sc__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-1);min-height:8px}.crs-sc__it{width:100%;min-height:44px;padding:var(--space-1) var(--space-2);border-radius:var(--radius-md);border:1px solid var(--color-border-strong);background:var(--color-surface);color:var(--color-text);font:inherit;font-size:var(--text-sm);font-weight:var(--weight-semibold);text-align:left;cursor:pointer;overflow-wrap:anywhere}.crs-sc__it.is-correct{border-color:var(--color-success);background:var(--color-success-soft);color:var(--color-success-ink)}.crs-sc__it.is-wrong{border-color:var(--color-danger);background:var(--color-danger-soft);color:var(--color-danger-ink)}.crs-sc__it:disabled{cursor:default;opacity:1}.crs-gb__par{margin:0;font-size:var(--text-lg);line-height:2.4;color:var(--color-text)}.crs-gap{display:inline-flex;align-items:center;justify-content:center;min-width:64px;min-height:44px;margin:0 2px;padding:0 var(--space-3);border-radius:var(--radius-md);border:2px dashed var(--color-primary);background:var(--color-primary-soft);color:var(--color-primary-ink);font:inherit;font-weight:var(--weight-extrabold);cursor:pointer;vertical-align:middle}.crs-gap.is-sel{border-style:solid;box-shadow:var(--shadow-focus)}.crs-gap.is-filled{border-style:solid;background:var(--color-surface);color:var(--color-text)}.crs-gap.is-correct{border-color:var(--color-success);background:var(--color-success-soft);color:var(--color-success-ink)}.crs-gap.is-wrong{border-color:var(--color-danger);background:var(--color-danger-soft);color:var(--color-danger-ink)}.crs-gap:disabled{cursor:default;opacity:1}.crs-lkq{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-1);padding:var(--space-3);border-radius:var(--radius-md);background:var(--color-surface-sunken)}.crs-lkq__w{font-size:var(--text-xl);font-weight:var(--weight-extrabold);color:var(--color-text)}.crs-lkq__g{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:0;border-radius:var(--radius-md);border:2px dashed var(--color-border-strong);background:var(--color-surface);color:var(--color-text-faint);cursor:pointer}.crs-lkq__g .crs-arc{opacity:.35}.crs-lkq__g:hover:not(:disabled){border-color:var(--color-primary)}.crs-lkq__g.is-on{border-style:solid;border-color:var(--color-primary);background:var(--color-primary-soft);color:var(--color-primary-ink)}.crs-lkq__g.is-on .crs-arc{opacity:1}.crs-lkq__g.is-correct{border-color:var(--color-success);background:var(--color-success-soft);color:var(--color-success-ink)}.crs-lkq__g.is-wrong{border-color:var(--color-danger);background:var(--color-danger-soft);color:var(--color-danger-ink)}.crs-lkq__g.is-missed{border-color:var(--color-success);color:var(--color-success-ink)}.crs-lkq__g.is-missed .crs-arc{opacity:1}.crs-lkq__g:disabled{cursor:default;opacity:1}.crs-gr{display:flex;flex-direction:column;gap:var(--space-3)}.crs-gr__row{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-3);border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-surface)}.crs-gr__t{margin:0;font-size:var(--text-lg);font-weight:var(--weight-bold);color:var(--color-text)}.crs-gr__c{display:flex;flex-wrap:wrap;gap:var(--space-2)}.crs-gr__b{flex:1 1 auto;min-height:44px;padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);border:2px solid var(--color-border-strong);background:var(--color-surface);color:var(--color-text);font:inherit;font-weight:var(--weight-bold);cursor:pointer}.crs-gr__b:hover:not(:disabled){border-color:var(--color-primary)}.crs-gr__b.is-sel,.crs-gr__b.is-picked{border-color:var(--color-primary);background:var(--color-primary-soft);color:var(--color-primary-ink)}.crs-gr__b.is-correct{border-color:var(--color-success);background:var(--color-success-soft);color:var(--color-success-ink)}.crs-gr__b.is-wrong{border-color:var(--color-danger);background:var(--color-danger-soft);color:var(--color-danger-ink)}.crs-gr__b.is-answer{border-color:var(--color-success);border-style:dashed;color:var(--color-success-ink)}.crs-gr__b:disabled{cursor:default;opacity:1}@media(min-width:640px){.crs-gr__row{flex-direction:row;align-items:center;justify-content:space-between}.crs-gr__t{flex:1 1 40%}.crs-gr__c{flex:1 1 60%;justify-content:flex-end}}.crs-lk{display:flex;flex-direction:column;gap:var(--space-3);--lk-ink: var(--color-primary-ink);--lk-soft: var(--color-primary-soft);--lk-border: var(--color-primary-border)}.crs-lk--r1{--lk-ink: var(--color-info-ink);--lk-soft: var(--color-info-soft);--lk-border: var(--color-info-border)}.crs-lk--r2{--lk-ink: var(--color-success-ink);--lk-soft: var(--color-success-soft);--lk-border: var(--color-success-border)}.crs-lk--r3{--lk-ink: var(--color-warning-ink);--lk-soft: var(--color-warning-soft);--lk-border: var(--color-warning-border)}.crs-lk__rule{margin:0;color:var(--color-text-muted);font-size:var(--text-sm)}.crs-lk__tag{display:inline-block;padding:2px var(--space-3);border-radius:var(--radius-pill);border:1px solid var(--lk-border);background:var(--lk-soft);color:var(--lk-ink);font-weight:var(--weight-extrabold)}.crs-lk__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-3)}.crs-lk__it{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3);padding:var(--space-3);border-radius:var(--radius-md);border:1px solid var(--lk-border);border-left-width:6px;background:var(--lk-soft);color:var(--lk-ink)}.crs-lk__it.is-playing{box-shadow:var(--shadow-focus)}.crs-lk__audio{display:flex;gap:var(--space-2)}.crs-lk__btn{display:inline-flex;align-items:center;gap:var(--space-1);min-height:44px;min-width:44px;padding:0 var(--space-3);border-radius:var(--radius-pill);border:1px solid var(--lk-border);background:var(--color-surface);color:var(--lk-ink);font:inherit;font-size:var(--text-sm);font-weight:var(--weight-bold);cursor:pointer}.crs-lk__btn.is-off{opacity:.4;cursor:not-allowed}.crs-lk__body{flex:1 1 14rem;min-width:0;display:flex;flex-direction:column;gap:var(--space-1)}.crs-lk__phrase{min-height:44px;padding:0;border:0;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer}.crs-lk__phrase--plain{cursor:default;display:flex;align-items:center}.crs-lk__show{font-size:var(--text-2xl);font-weight:var(--weight-extrabold);letter-spacing:.01em;overflow-wrap:anywhere}.crs-lk__arc{display:inline-block;width:1.1em;height:.5em;margin:0 .1em;border:3px solid currentColor;border-top:0;border-radius:0 0 1em 1em;vertical-align:-.05em}.crs-lk__cut{text-decoration-thickness:3px;opacity:.7}.crs-lk__chg{padding:0 3px;border-radius:4px;background:var(--color-surface);border:1px solid var(--lk-border)}.crs-lk__sounds{margin:0;color:var(--color-text);font-size:var(--text-copy)}.crs-lk__es{margin:0;color:var(--color-text-muted);font-size:var(--text-copy)}@media(prefers-reduced-motion:no-preference){.crs-lkq__g,.crs-pr__t,.crs-gr__b,.crs-gap,.crs-sc__lbl{transition:border-color var(--motion-fast) var(--ease-out),background-color var(--motion-fast) var(--ease-out)}}@media(prefers-reduced-motion:reduce){.crs-ty__why,.crs-ty__ok{animation:none}}.crs-practice{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-2)}.crs-practice__item{display:flex;align-items:center;gap:var(--space-3);min-height:48px;padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);border:1px solid var(--color-primary-border);background:var(--color-primary-soft);color:var(--color-text);text-decoration:none}.crs-practice__item:hover,.crs-practice__item:focus-visible{border-color:var(--color-primary)}.crs-practice__ic{font-size:1.5rem;line-height:1}.crs-practice__txt{display:flex;flex-direction:column;flex:1 1 auto;min-width:0}.crs-practice__k{font-size:var(--text-sm);color:var(--color-text-muted);font-weight:var(--weight-semibold)}.crs-practice__l{font-weight:var(--weight-bold);color:var(--color-primary-ink)}.crs-practice__go{color:var(--color-primary);font-weight:var(--weight-extrabold)}:root{--ma-wind: 1;--ma-speed: 1}.crs-unit>.ma-stage,.ma-stage{position:absolute;inset:0;overflow:hidden;z-index:0;pointer-events:none;contain:layout paint;border-radius:inherit;isolation:isolate}.ma-layer{position:absolute;left:0;width:100%;pointer-events:none}.ma-layer--still{will-change:auto}@supports (animation-timeline: --x){.crs-unit{view-timeline:--maU block}.ma-par{will-change:transform;animation:maParV linear both;animation-timeline:--maU;animation-range:var(--ma-r, cover)}@keyframes maParV{0%{transform:translate3d(0,calc(var(--ma-k, 0px) * -1),0)}to{transform:translate3d(0,var(--ma-k, 0px),0)}}.ma-paused .ma-par{animation-play-state:running!important}}.ma-work{position:absolute;inset:0;visibility:hidden;pointer-events:none}.ma-work *{will-change:auto!important}.ma-work.ma-measure,.ma-work.ma-measure *{animation:none!important;transition:none!important}.ma-tile{position:absolute;left:0;width:100%;z-index:1;display:block;pointer-events:none}.ma-stage.ma-measure,.ma-stage.ma-measure *{animation:none!important}.ma-layer svg{display:block;width:100%;height:100%;overflow:visible}.ma-base{inset:0;width:100%;height:100%}.ma-seam{position:absolute;left:0;right:0;height:150px;z-index:39;pointer-events:none}.ma-seam--top{top:0}.ma-seam--bot{bottom:0}.ma-vig{position:absolute;inset:0;z-index:40;pointer-events:none;background:radial-gradient(125% 75% at 50% 42%,transparent 58%,rgba(6,24,20,.26) 100%)}.ma-vig{-webkit-mask-image:linear-gradient(180deg,transparent 0,#000 150px,#000 calc(100% - 150px),transparent 100%);mask-image:linear-gradient(180deg,transparent 0,#000 150px,#000 calc(100% - 150px),transparent 100%)}.ma-vig:after{content:"";position:absolute;inset:0;background-image:var(--ma-grain);background-size:96px 96px;opacity:.07;mix-blend-mode:soft-light}:root[data-theme=dark] .ma-vig{background:radial-gradient(125% 75% at 50% 42%,#0a16346b 40%,#040a1ea8)}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .ma-vig{background:radial-gradient(125% 75% at 50% 42%,#0a16346b 40%,#040a1ea8)}}.ma-sway{position:absolute;animation:maSway calc(var(--dur, 6s) / var(--ma-speed)) ease-in-out infinite alternate;animation-delay:var(--del, 0s)}.ma-sway svg{display:block;width:100%;height:100%;overflow:visible}@keyframes maSway{0%{transform:rotate(calc(var(--amp, 2) * -1deg * var(--ma-wind))) translate3d(calc(var(--amp, 2) * -.3px * var(--ma-wind)),0,0)}to{transform:rotate(calc(var(--amp, 2) * 1deg * var(--ma-wind))) translate3d(calc(var(--amp, 2) * .3px * var(--ma-wind)),0,0)}}.ma-drift{animation:maDrift calc(var(--dur, 40s) / var(--ma-speed)) ease-in-out infinite alternate;animation-delay:var(--del, 0s)}.ma-drift svg{display:block;width:100%;height:100%}@keyframes maDrift{0%{transform:translate3d(calc(var(--dx, 30px) * -1),0,0)}to{transform:translate3d(var(--dx, 30px),0,0)}}.ma-breathe{animation:maBreathe calc(var(--dur, 9s) / var(--ma-speed)) ease-in-out infinite;animation-delay:var(--del, 0s)}@keyframes maBreathe{0%,to{opacity:calc(var(--o, 1) * .35)}50%{opacity:var(--o, 1)}}.ma-bob{animation:maBob calc(var(--dur, 6s) / var(--ma-speed)) ease-in-out infinite alternate;animation-delay:var(--del, 0s)}@keyframes maBob{0%{transform:translate3d(0,calc(var(--by, 4px) * -1),0)}to{transform:translate3d(0,var(--by, 4px),0)}}.ma-spin{animation:maSpin calc(var(--dur, 60s) / var(--ma-speed)) linear infinite}@keyframes maSpin{to{transform:rotate(360deg)}}.ma-p{position:absolute;pointer-events:none}.ma-p--ff{width:14px;height:14px;margin:-7px 0 0 -7px;animation:maFfMove calc(var(--dur, 14s) / var(--ma-speed)) ease-in-out infinite;animation-delay:var(--del, 0s)}.ma-p--ff i{display:block;width:100%;height:100%;border-radius:50%;background:radial-gradient(circle,#fffbd0 0 18%,#ecff78b3 32%,#beff5a00 70%);animation:maFfGlow calc(var(--g, 3.2s) / var(--ma-speed)) ease-in-out infinite;animation-delay:var(--gd, 0s)}@keyframes maFfMove{0%,to{transform:translateZ(0)}30%{transform:translate3d(var(--x1),var(--y1),0)}62%{transform:translate3d(var(--x2),var(--y2),0)}}@keyframes maFfGlow{0%,to{opacity:.08}45%,60%{opacity:1}}.ma-p--mote{width:3px;height:3px;border-radius:50%;background:radial-gradient(circle,#fff4bef2,#fff4be00 70%);animation:maMote calc(var(--dur, 16s) / var(--ma-speed)) linear infinite;animation-delay:var(--del, 0s)}@keyframes maMote{0%{transform:translateZ(0);opacity:0}15%{opacity:.9}85%{opacity:.8}to{transform:translate3d(var(--mx, 24px),var(--my, -90px),0);opacity:0}}.ma-p--fall{aspect-ratio:1;animation:maSwayX calc(5s / var(--ma-speed)) ease-in-out infinite alternate;animation-delay:var(--del, 0s)}.ma-p--fall>i{display:block;width:100%;height:100%;animation:maFall calc(var(--dur, 22s) / var(--ma-speed)) linear infinite;animation-delay:var(--del, 0s)}@keyframes maSwayX{0%{transform:translate3d(-14px,0,0)}to{transform:translate3d(14px,0,0)}}@keyframes maFall{0%{transform:translate3d(0,-30px,0) rotate(0);opacity:0}8%{opacity:.95}92%{opacity:.9}to{transform:translate3d(var(--sx, 30px),var(--fall, 700px),0) rotate(var(--rot, 300deg));opacity:0}}.ma-p--bubble{aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 32% 30%,#ffffffe6 0 12%,#ffffff38 36%,#ffffff0f 70%);box-shadow:inset 0 0 0 1px #ffffff8c;animation:maRise calc(var(--dur, 12s) / var(--ma-speed)) ease-in infinite;animation-delay:var(--del, 0s)}@keyframes maRise{0%{transform:translateZ(0) scale(.6);opacity:0}12%{opacity:.9}to{transform:translate3d(var(--mx, 10px),var(--my, -220px),0) scale(1);opacity:0}}.ma-p--ember{width:4px;height:4px;border-radius:50%;background:radial-gradient(circle,#fff3b0 0 30%,#ffaa46e6 55%,#ff782800 80%);animation:maMote calc(var(--dur, 14s) / var(--ma-speed)) linear infinite;animation-delay:var(--del, 0s)}.ma-p--glint{width:18px;height:5px;border-radius:50%;background:radial-gradient(ellipse,#fffffff2,#fff0 70%);animation:maBreathe calc(var(--dur, 4s) / var(--ma-speed)) ease-in-out infinite;animation-delay:var(--del, 0s);--o: .95}.ma-p--fly{animation:maFly calc(var(--dur, 46s) / var(--ma-speed)) linear infinite;animation-delay:var(--del, 6s);opacity:0}@keyframes maFly{0%{transform:translate3d(-80px,0,0);opacity:0}2%{opacity:1}16%{transform:translate3d(190px,-34px,0);opacity:1}22%{transform:translate3d(520px,-10px,0);opacity:0}to{transform:translate3d(520px,-10px,0);opacity:0}}.ma-wing{transform-origin:50% 60%;animation:maFlap .32s ease-in-out infinite alternate}@keyframes maFlap{0%{transform:scaleY(1)}to{transform:scaleY(.25)}}.ma-paused *,.ma-paused{animation-play-state:paused!important}.ma-off,.ma-off *{animation:none!important}.ma-ps,.ma-ps *{animation-play-state:paused!important}.ma-fz,.ma-fz *{animation:none!important;will-change:auto!important}.ma-fz.ma-p{display:none}.ma-run{position:absolute;inset:0;pointer-events:none;will-change:transform;contain:paint}.ma-fz.ma-breathe,.ma-fz .ma-breathe{opacity:var(--o, 1)}@media(prefers-reduced-motion:reduce){.ma-par{animation:none!important;will-change:auto}.ma-sway,.ma-drift,.ma-breathe,.ma-bob,.ma-spin,.ma-p,.ma-p>i,.ma-wing,.ma-actor,.ma-actor *{animation:none!important}.ma-p--ff,.ma-p--fall,.ma-p--fly,.ma-p--mote,.ma-p--ember{display:none}.ma-breathe{opacity:var(--o, 1)}}.ma-lite,.ma-lite *{animation:none!important;will-change:auto!important}.ma-lite .ma-p--ff,.ma-lite .ma-p--fall,.ma-lite .ma-p--fly,.ma-lite .ma-p--mote,.ma-lite .ma-p--ember{display:none}.ma-lite .ma-breathe{opacity:var(--o, 1)}.crs-node__badge.ma-badge{background:none!important;border:0!important;box-shadow:none!important;width:88px;height:88px;border-radius:0;overflow:visible;color:#3d2b12;font-size:0}.crs-node.is-next .crs-node__badge.ma-badge{width:100px;height:100px}.crs-node__badge.ma-badge:after{display:none!important}.ma-stone{position:absolute;inset:0;width:100%;height:100%;display:block;overflow:visible;transition:transform .22s cubic-bezier(.2,.8,.2,1),filter .22s;filter:drop-shadow(0 6px 5px rgba(8,30,22,.35))}.crs-node[data-vis=locked] .ma-stone{filter:saturate(.6) drop-shadow(0 5px 4px rgba(8,30,22,.3))}.ma-stone__num{position:absolute;left:0;right:0;top:40%;text-align:center;font-family:var(--font-display);font-weight:var(--weight-extrabold);font-size:1.6rem;line-height:1;color:#3d2b12;letter-spacing:-.02em;text-shadow:0 1px 0 rgba(255,255,255,.55);pointer-events:none}.ma-aura{position:absolute;inset:-34%;border-radius:50%;background:radial-gradient(circle,#ffe078d9 0,#ffe07859 38%,#ffe07800 68%);z-index:-1;animation:maAura calc(2.8s / var(--ma-speed)) ease-in-out infinite;will-change:transform,opacity;pointer-events:none}@keyframes maAura{0%,to{transform:scale(.82);opacity:.55}50%{transform:scale(1.12);opacity:1}}@media(hover:hover){.crs-node__link:hover .ma-stone,.crs-node__link:focus-visible .ma-stone{transform:translateY(-4px) scale(1.06);filter:drop-shadow(0 10px 8px rgba(8,30,22,.4)) brightness(1.06)}.crs-node[data-vis=locked] .crs-node__link:hover .ma-stone{filter:saturate(.7) drop-shadow(0 8px 6px rgba(8,30,22,.36))}}.crs-node__link:active .ma-stone{transform:translateY(2px) scale(.95)}.crs-node__link:hover .crs-node__badge.ma-badge,.crs-node__link:focus-visible .crs-node__badge.ma-badge{transform:none}.crs-node__link:active .crs-node__badge.ma-badge{transform:none;box-shadow:none}@media(prefers-reduced-motion:reduce){.ma-aura{animation:none;opacity:.8}.ma-stone{transition:none}}.crs-node.is-next:not(.is-launching) .crs-node__badge.ma-badge{animation:none}.ma-actor{will-change:transform}.ma-m{position:absolute}.ma-m svg{display:block;width:100%;height:100%;overflow:visible}.ma-momo-kick{animation:maKick calc(44s / var(--ma-speed)) ease-in-out infinite;animation-delay:-6s}.ma-momo{animation:maPend calc(5.6s / var(--ma-speed)) cubic-bezier(.45,.05,.55,.95) infinite alternate}.ma-momo .rig{animation:maRig calc(5.6s / var(--ma-speed)) cubic-bezier(.45,.05,.55,.95) infinite alternate;animation-delay:calc(-.5s / var(--ma-speed))}.ma-momo .tail-a{animation:maTailA calc(5.6s / var(--ma-speed)) cubic-bezier(.45,.05,.55,.95) infinite alternate;animation-delay:calc(-1s / var(--ma-speed))}.ma-momo .tail-b{animation:maTailB calc(5.6s / var(--ma-speed)) cubic-bezier(.45,.05,.55,.95) infinite alternate;animation-delay:calc(-1.6s / var(--ma-speed))}.ma-momo .head{animation:maHead calc(5.6s / var(--ma-speed)) cubic-bezier(.45,.05,.55,.95) infinite alternate;animation-delay:calc(-.9s / var(--ma-speed))}.ma-momo .arm-a{animation:maArmIdle calc(5.6s / var(--ma-speed)) cubic-bezier(.45,.05,.55,.95) infinite alternate;animation-delay:calc(-1.2s / var(--ma-speed))}.ma-momo .arm-b{animation:maArmWave calc(44s / var(--ma-speed)) ease-in-out infinite;animation-delay:-6s}.ma-momo .lids{animation:maBlink calc(4.8s / var(--ma-speed)) ease-in-out infinite;animation-delay:-1.3s}@keyframes maPend{0%{transform:rotate(-7deg)}to{transform:rotate(7deg)}}@keyframes maRig{0%{transform:rotate(3.4deg)}to{transform:rotate(-3.4deg)}}@keyframes maTailA{0%{transform:rotate(-9deg)}to{transform:rotate(11deg)}}@keyframes maTailB{0%{transform:rotate(-17deg)}to{transform:rotate(19deg)}}@keyframes maHead{0%{transform:rotate(-4deg)}to{transform:rotate(5deg)}}@keyframes maArmIdle{0%{transform:rotate(7deg)}to{transform:rotate(-11deg)}}@keyframes maKick{0%,58%{transform:rotate(0)}63%{transform:rotate(-13deg)}69%{transform:rotate(10deg)}75%{transform:rotate(-5deg)}81%,to{transform:rotate(0)}}@keyframes maArmWave{0%,60%{transform:rotate(0)}64%{transform:rotate(-70deg)}67%{transform:rotate(-48deg)}70%{transform:rotate(-72deg)}73%{transform:rotate(-46deg)}77%{transform:rotate(-70deg)}82%,to{transform:rotate(0)}}@keyframes maBlink{0%,90%,to{transform:scaleY(0)}93%,95%{transform:scaleY(1)}}.crs-unit{isolation:isolate}.crs-node__body{background:color-mix(in srgb,var(--color-surface) 93%,transparent);border:1px solid color-mix(in srgb,var(--color-border-strong) 65%,transparent);border-radius:16px;box-shadow:0 6px 16px #081e1638}.crs-node.is-next .crs-node__body{background:color-mix(in srgb,var(--color-primary-soft) 94%,transparent);border-color:var(--color-primary)}.crs-node[data-vis=locked] .crs-node__body{background:color-mix(in srgb,var(--color-surface) 80%,transparent);opacity:.88;box-shadow:0 4px 10px #081e1629}.crs-node[data-vis=locked] .crs-node__title{color:var(--color-text-muted)}.crs-node__here{background:#fff3c4;color:#5b3a07;border:1.5px solid #e0a82e;font-weight:800;padding:3px 10px;top:-22px;animation:maHop calc(1.8s / var(--ma-speed)) ease-in-out infinite;will-change:transform}@keyframes maHop{0%,to{transform:translate3d(-50%,0,0)}50%{transform:translate3d(-50%,-5px,0)}}@media(prefers-reduced-motion:reduce){.crs-node__here{animation:none}}.crs-node__link:focus-visible .ma-stone{outline:none;filter:drop-shadow(0 0 0 #fff) drop-shadow(0 0 6px var(--color-focus))}.crs-biomes{display:flex;gap:var(--space-2);overflow-x:auto;padding:2px 2px var(--space-1);scrollbar-width:none;-webkit-overflow-scrolling:touch}.crs-biomes::-webkit-scrollbar{display:none}.crs-biome{flex:0 0 auto;display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 14px 0 10px;border-radius:999px;border:1px solid color-mix(in srgb,var(--color-border-strong) 70%,transparent);background:color-mix(in srgb,var(--color-surface) 92%,transparent);color:var(--color-text);font:700 var(--text-sm) var(--font-body);cursor:pointer;transition:transform .2s cubic-bezier(.2,.8,.2,1),box-shadow .2s,background-color .2s;-webkit-tap-highlight-color:transparent}.crs-biome:hover{transform:translateY(-1px);box-shadow:var(--shadow-2)}.crs-biome:active{transform:scale(.97)}.crs-biome:focus-visible{outline:3px solid var(--color-focus);outline-offset:2px}.crs-biome__dot{width:16px;height:16px;border-radius:50%;box-shadow:inset 0 0 0 2px #ffffff8c,0 1px 3px #00000040}.crs-biome[data-biome=sky] .crs-biome__dot{background:linear-gradient(135deg,#ffd9a8,#7fc4ee)}.crs-biome[data-biome=jungle] .crs-biome__dot{background:linear-gradient(135deg,#a8e063,#1f7a4f)}.crs-biome[data-biome=savanna] .crs-biome__dot{background:linear-gradient(135deg,#ffd27a,#c8782e)}.crs-biome[data-biome=ocean] .crs-biome__dot{background:linear-gradient(135deg,#58e0d0,#1c2f6b)}.crs-biome[data-biome=city] .crs-biome__dot{background:linear-gradient(135deg,#ff4fd8,#1c2159)}.crs-biome[data-biome=canyon] .crs-biome__dot{background:linear-gradient(135deg,#ff9a64,#7a4a98)}.crs-biome[data-biome=autumn] .crs-biome__dot{background:linear-gradient(135deg,#f2a81d,#b5301f)}.crs-biome[data-biome=harbor] .crs-biome__dot{background:linear-gradient(135deg,#ffb89a,#2aa8b0)}.crs-biome[data-biome=snow] .crs-biome__dot{background:linear-gradient(135deg,#fff,#5fa8e8)}.crs-biome__n{color:var(--color-text-muted);font-weight:600;font-variant-numeric:tabular-nums}.crs-unit.is-focused .crs-unit__head{box-shadow:0 0 0 3px var(--color-focus),0 10px 26px #081e164d}.crs-unit__head{transition:box-shadow .5s ease}.crs-unit{scroll-margin-top:calc(var(--shell-topbar-h, 56px) + 72px)}@media(prefers-reduced-motion:reduce){.crs-biome,.crs-unit__head{transition:none}}.crs-unit{border:0;box-shadow:none}.crs-unit+.crs-unit{margin-top:calc(-1 * var(--space-5));border-top-left-radius:0;border-top-right-radius:0}.crs-unit:has(+.crs-unit){border-bottom-left-radius:0;border-bottom-right-radius:0}.ma-stage.ma-paused{content-visibility:hidden}@font-face{font-family:Chakra Petch;font-style:normal;font-weight:600;font-display:swap;src:url(/assets/fonts/chakra-petch-latin-600.woff2) format("woff2")}@font-face{font-family:Chakra Petch;font-style:normal;font-weight:700;font-display:swap;src:url(/assets/fonts/chakra-petch-latin-700.woff2) format("woff2")}.app-arcade-btn{display:inline-flex;align-items:center;gap:var(--space-2);min-height:44px;min-width:44px;box-sizing:border-box;padding:0 var(--space-4);border-radius:var(--radius-pill);text-decoration:none;white-space:nowrap;border:1px solid transparent;color:#fff;background:linear-gradient(135deg,#6d28d9,#be185d);box-shadow:0 2px 10px #be185d4d;font-family:"Chakra Petch",var(--font-sans, "Plus Jakarta Sans"),sans-serif;font-weight:700;font-size:var(--text-sm);letter-spacing:.04em;transition:transform .15s ease,box-shadow .15s ease}.app-arcade-btn .ic{width:1.3em;height:1.3em;color:#fff}.app-arcade-btn:hover{transform:translateY(-1px);box-shadow:0 4px 16px #be185d73}.app-arcade-btn:active{transform:scale(.96)}.app-arcade-btn:focus-visible{outline:3px solid var(--color-focus);outline-offset:2px}.app-arcade-btn[aria-current=page]{box-shadow:0 0 0 2px var(--color-surface),0 0 0 4px #be185d}@media(max-width:479.98px){.app-arcade-btn{padding:0;justify-content:center;width:44px}.app-arcade-btn__label{display:none}}@media(min-width:900px)and (max-width:1439.98px){.app-arcade-btn{padding:0;justify-content:center;width:44px}.app-arcade-btn__label{display:none}}body.focus-mode .app-arcade-btn{display:none}.arc-view{--arc-bg-0: #0B0820;--arc-bg-1: #1B0F3D;--arc-bg-2: #2D1660;--arc-surface: rgba(23, 17, 58, .86);--arc-surface-solid: #17113A;--arc-line: rgba(186, 170, 255, .24);--arc-ink: #F5F2FF;--arc-muted: #C3BAEA;--arc-pink: #FF4FA3;--arc-cyan: #3DE0FF;--arc-gold: #FFD166;--arc-ok: #4ADE80;--arc-bad: #FF7A7A;--arc-font: "Chakra Petch", "Plus Jakarta Sans", system-ui, sans-serif;--arc-radius: 18px;--arc-ease: cubic-bezier(.2, .8, .2, 1);position:fixed;inset:0;z-index:calc(var(--z-overlay) + 2);overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;background:var(--arc-bg-0);color:var(--arc-ink);color-scheme:dark;font-family:Plus Jakarta Sans,system-ui,sans-serif;line-height:1.5;-webkit-tap-highlight-color:transparent}body.arcade-on{overflow:hidden}.arc-view *,.arc-view *:before,.arc-view *:after{box-sizing:border-box}.arc-view :focus-visible{outline:3px solid var(--arc-gold);outline-offset:3px}.arc-view .ic{width:20px;height:20px;flex:none}.arc-bg{position:fixed;inset:0;pointer-events:none;overflow:hidden;background:radial-gradient(120% 80% at 50% 0%,var(--arc-bg-2) 0%,var(--arc-bg-1) 42%,var(--arc-bg-0) 78%)}.arc-bg__stars{position:absolute;inset:0 0 38%;background-image:radial-gradient(1.6px 1.6px at 12% 18%,#FFFFFF 50%,transparent 52%),radial-gradient(1.2px 1.2px at 37% 42%,#C9F6FF 50%,transparent 52%),radial-gradient(1.8px 1.8px at 64% 12%,#FFFFFF 50%,transparent 52%),radial-gradient(1.2px 1.2px at 82% 36%,#FFD6EC 50%,transparent 52%),radial-gradient(1.4px 1.4px at 92% 8%,#FFFFFF 50%,transparent 52%);background-size:260px 200px;opacity:.75}.arc-bg__stars--b{background-size:190px 150px;background-position:70px 40px;opacity:.45}.arc-bg__sun{position:absolute;left:50%;bottom:36%;width:min(62vw,440px);aspect-ratio:1;border-radius:50%;transform:translate(-50%,50%);background:linear-gradient(180deg,#ffe08a,#ff8a5b 38%,#ff4fa3 64%,#8b5cf6);-webkit-mask-image:linear-gradient(180deg,#000 52%,transparent 52% 55%,#000 55% 63%,transparent 63% 67%,#000 67% 74%,transparent 74% 79%,#000 79% 85%,transparent 85%);mask-image:linear-gradient(180deg,#000 52%,transparent 52% 55%,#000 55% 63%,transparent 63% 67%,#000 67% 74%,transparent 74% 79%,#000 79% 85%,transparent 85%);opacity:.4}.arc-bg__floor{position:absolute;left:-50%;right:-50%;bottom:0;height:38%;overflow:hidden;perspective:320px;-webkit-mask-image:linear-gradient(180deg,transparent 0%,#000 45%);mask-image:linear-gradient(180deg,transparent 0%,#000 45%)}.arc-bg__grid{position:absolute;inset:-100% 0 0;transform-origin:50% 100%;transform:rotateX(62deg);background-image:linear-gradient(rgba(61,224,255,.5) 2px,transparent 2px),linear-gradient(90deg,rgba(255,79,163,.4) 2px,transparent 2px);background-size:64px 64px;will-change:transform}.arc-bg__scan{position:absolute;inset:0;background:repeating-linear-gradient(180deg,rgba(255,255,255,.025) 0 1px,transparent 1px 3px)}@media(prefers-reduced-motion:no-preference){.arc-bg__stars{animation:arc-twinkle 3.6s ease-in-out infinite alternate}.arc-bg__stars--b{animation-duration:5.2s;animation-delay:-2s}.arc-bg__grid{animation:arc-grid 1.8s linear infinite}}@keyframes arc-twinkle{0%{opacity:.3}to{opacity:.85}}@keyframes arc-grid{0%{transform:rotateX(62deg) translateY(0)}to{transform:rotateX(62deg) translateY(64px)}}.arc-bar{position:sticky;top:0;z-index:3;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:calc(env(safe-area-inset-top,0px) + 10px) 16px 10px;background:#0b0820f0;border-bottom:1px solid rgba(186,170,255,.12)}.arc-bar__logo{position:absolute;left:50%;transform:translate(-50%);pointer-events:none;font-family:var(--arc-font);font-weight:700;font-size:1.05rem;letter-spacing:.32em;color:var(--arc-cyan);text-shadow:0 0 12px rgba(61,224,255,.55)}.arc-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;min-width:44px;padding:0 16px;border-radius:12px;border:1px solid var(--arc-line);background:#ffffff0f;color:var(--arc-ink);font-family:var(--arc-font);font-weight:700;font-size:1rem;letter-spacing:.04em;cursor:pointer;text-decoration:none;transition:transform .15s ease,background-color .15s ease,border-color .15s ease,box-shadow .15s ease}.arc-btn:hover{background:#ffffff1f;border-color:#3de0ffa6}.arc-btn:active{transform:scale(.96)}.arc-btn--icon{position:relative;width:44px;padding:0}.arc-sound{display:flex;align-items:center;gap:6px}.arc-sound__slash{position:absolute;width:26px;height:2.5px;border-radius:2px;background:var(--arc-pink);transform:rotate(-45deg);opacity:0;transition:opacity .15s ease}.arc-sound__mute.is-muted .arc-sound__slash{opacity:1}.arc-sound__mute.is-muted .ic{opacity:.6}.arc-sound__vol{width:104px;height:44px;margin:0;accent-color:var(--arc-pink);cursor:pointer;background:transparent}.arc-no-audio .arc-sound{display:none}@media(max-width:519.98px){.arc-bar__logo{display:none}}@media(max-width:419.98px){.arc-bar__back-label{display:none}.arc-bar__back{width:44px;padding:0}.arc-sound__vol{width:76px}}.arc-stage{position:relative;z-index:1;max-width:1080px;margin:0 auto;padding:16px 16px calc(40px + env(safe-area-inset-bottom,0px))}.arc-hero{text-align:center;padding:8px 0 20px}.arc-title{margin:8px 0 6px;font-family:var(--arc-font);font-weight:700;font-size:clamp(2.8rem,12vw,5.4rem);line-height:1;letter-spacing:.08em;text-align:center;outline:none}.arc-title--sm{font-size:clamp(1.9rem,8vw,3.2rem)}.arc-title__word{position:relative;display:inline-block;color:#fff;background:linear-gradient(180deg,#fff,#ffe08a 46%,#ff4fa3);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;filter:drop-shadow(0 0 16px rgba(255,79,163,.45))}.arc-title__word:after{content:attr(data-text);position:absolute;inset:0;-webkit-text-fill-color:var(--arc-cyan);color:var(--arc-cyan);opacity:0;transform:translate(0);pointer-events:none;mix-blend-mode:screen}@media(prefers-reduced-motion:no-preference){.arc-title__word:after{animation:arc-glitch 6s steps(1,end) infinite}}@keyframes arc-glitch{0%,91%,to{opacity:0;transform:translate(0)}92%{opacity:.7;transform:translate(-4px)}94%{opacity:.5;transform:translate(3px)}96%{opacity:0}}.arc-sub{margin:0 auto;max-width:38ch;color:var(--arc-muted);font-size:1.05rem;text-align:center}.arc-h2{margin:22px 0 12px;font-family:var(--arc-font);font-weight:700;font-size:.95rem;letter-spacing:.16em;text-transform:uppercase;color:var(--arc-cyan)}.arc-chip{align-self:flex-start;display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;font-size:.78rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#ffd0e0;background:#ff4f7b2e;border:1px solid rgba(255,130,170,.45)}.arc-chip .ic{width:14px;height:14px}.arc-chip--muted{color:var(--arc-muted);background:#ffffff0f;border-color:var(--arc-line)}.arc-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,330px),1fr));gap:20px}.arc-game{position:relative;display:flex;flex-direction:column;overflow:hidden;isolation:isolate;border-radius:var(--arc-radius);border:1px solid var(--arc-line);background:var(--arc-surface-solid);color:var(--arc-ink);text-decoration:none;box-shadow:0 12px 32px #00000061;transition:transform .3s var(--arc-ease),box-shadow .3s var(--arc-ease),border-color .3s var(--arc-ease)}.arc-game__frame{position:absolute;inset:0;z-index:2;border-radius:inherit;pointer-events:none;opacity:0;transition:opacity .3s ease;box-shadow:inset 0 0 0 2px var(--g1, var(--arc-pink)),0 0 40px #ff4f7b59}a.arc-game:hover{transform:translateY(-6px);box-shadow:0 22px 48px #00000073}a.arc-game:hover .arc-game__frame,a.arc-game:focus-visible .arc-game__frame{opacity:1}a.arc-game:active{transform:translateY(-2px) scale(.985)}.arc-game__art{position:relative;display:block;aspect-ratio:5 / 3;overflow:hidden}.arc-game__art .arc-art{display:block;width:100%;height:100%;transition:transform .7s var(--arc-ease)}a.arc-game:hover .arc-game__art .arc-art{transform:scale(1.05)}.arc-game__body{position:relative;display:flex;flex-direction:column;gap:8px;padding:16px 18px 18px;border-top:3px solid var(--g1, var(--arc-pink))}.arc-game__name{font-family:var(--arc-font);font-weight:700;font-size:1.65rem;line-height:1.1;letter-spacing:.02em}.arc-game__tag{color:var(--arc-muted);font-size:.98rem}.arc-game__foot{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:4px}.arc-game__meta{color:var(--arc-muted);font-size:.85rem;font-weight:600}.arc-game__cta{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:0 18px;border-radius:999px;font-family:var(--arc-font);font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#1a0b1e;background:linear-gradient(135deg,var(--g1, var(--arc-pink)),var(--g2, #FF8A5B));box-shadow:0 6px 18px #ff4f7b59;transition:transform .2s var(--arc-ease)}.arc-game__cta .ic{width:16px;height:16px}a.arc-game:hover .arc-game__cta{transform:translate(3px)}.arc-game--japan{--g1: #FF5C8A;--g2: #FFB38A;border-color:#ff78a073}.arc-game--japan .arc-game__body{background:radial-gradient(circle at 50% 100%,transparent 9px,rgba(255,180,210,.07) 10px 11px,transparent 12px 15px,rgba(255,180,210,.07) 16px 17px,transparent 18px) 0 0 / 36px 18px,linear-gradient(180deg,#1e1240,#17113a)}.arc-game--soon{border-style:dashed;background:#140f33}.arc-game__art--soon{display:grid;place-items:center;color:var(--arc-muted);background:radial-gradient(circle at 50% 60%,rgba(61,224,255,.14),transparent 60%),repeating-linear-gradient(45deg,rgba(255,255,255,.03) 0 10px,transparent 10px 20px)}.arc-game__art--soon .ic{width:72px;height:72px;opacity:.7}.arc-game--soon .arc-game__body{border-top-color:var(--arc-line)}@media(prefers-reduced-motion:no-preference){.arc-art__petal{transform-box:fill-box;transform-origin:center;animation:arc-petal 7s ease-in-out infinite}.arc-art__petal--2{animation-duration:8.5s;animation-delay:-2s}.arc-art__petal--3{animation-duration:6.4s;animation-delay:-4s}.arc-art__petal--4{animation-duration:9s;animation-delay:-1s}.arc-art__petal--5{animation-duration:7.6s;animation-delay:-3s}.arc-art__petal--6{animation-duration:8s;animation-delay:-5s}.arc-art__clouds{animation:arc-clouds 14s ease-in-out infinite alternate}.arc-art__sun{transform-box:fill-box;transform-origin:center;animation:arc-sun 5s ease-in-out infinite alternate}}@keyframes arc-petal{0%{transform:translateY(-6px) rotate(0);opacity:.95}50%{transform:translate(-10px,8px) rotate(25deg);opacity:1}to{transform:translateY(-6px) rotate(0);opacity:.95}}@keyframes arc-clouds{0%{transform:translate(-10px)}to{transform:translate(14px)}}@keyframes arc-sun{0%{transform:scale(.96);opacity:.8}to{transform:scale(1.06);opacity:1}}.arc-hall-link{display:flex;align-items:center;gap:14px;min-height:64px;margin-top:24px;padding:12px 18px;border-radius:var(--arc-radius);border:1px solid rgba(255,209,102,.4);background:linear-gradient(90deg,#ffd1661f,#ffd16608);color:var(--arc-ink);text-decoration:none;transition:transform .2s var(--arc-ease),border-color .2s ease}.arc-hall-link>.ic:first-child{width:30px;height:30px;color:var(--arc-gold)}.arc-hall-link>span{display:flex;flex-direction:column;flex:1}.arc-hall-link strong{font-family:var(--arc-font);font-size:1.1rem;letter-spacing:.06em}.arc-hall-link span span{color:var(--arc-muted);font-size:.9rem}.arc-hall-link:hover{transform:translate(4px);border-color:var(--arc-gold)}.arc-hall-link:active{transform:scale(.99)}.arc-hall-link--small{min-height:52px;margin-top:16px}.arc-detail{display:grid;gap:20px;padding-top:4px}@media(min-width:900px){.arc-detail{grid-template-columns:1.15fr 1fr;align-items:start}}.arc-detail__hero{position:relative;overflow:hidden;aspect-ratio:5 / 4;border-radius:var(--arc-radius);border:1px solid rgba(255,120,160,.45);box-shadow:0 18px 44px #00000073}@media(min-width:900px){.arc-detail__hero{position:sticky;top:80px;aspect-ratio:4 / 3.6}}.arc-detail__hero .arc-art{position:absolute;inset:0;width:100%;height:100%}.arc-detail__head{position:absolute;left:0;right:0;bottom:0;display:flex;flex-direction:column;gap:6px;padding:40px 18px 16px;background:linear-gradient(0deg,rgba(11,8,32,.94) 0%,rgba(11,8,32,.72) 60%,transparent 100%)}.arc-detail__title{margin:0;font-family:var(--arc-font);font-weight:700;font-size:clamp(2.1rem,8vw,3.4rem);line-height:1;letter-spacing:.03em;outline:none;text-shadow:0 2px 0 rgba(0,0,0,.4),0 0 24px rgba(255,92,138,.45)}.arc-detail__tag{margin:0;color:#f1e8ff;font-size:1rem}.arc-detail__panel{padding:4px 18px 20px;border-radius:var(--arc-radius);border:1px solid var(--arc-line);background:var(--arc-surface)}.arc-rules{list-style:none;margin:0;padding:0;display:grid;gap:10px}.arc-rules li{display:flex;align-items:center;gap:12px;color:var(--arc-ink)}.arc-rules strong{color:#fff}.arc-rules__ic{flex:none;display:grid;place-items:center;width:34px;height:34px;border-radius:10px;font-weight:700;font-size:1.1rem}.arc-rules__ic .ic{width:18px;height:18px}.arc-rules__ic--ok{color:var(--arc-ok);background:#4ade8024}.arc-rules__ic--bad{color:var(--arc-bad);background:#ff7a7a24}.arc-rules__ic--heart{color:var(--arc-pink);background:#ff4fa324}.arc-diff{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}@media(max-width:559.98px){.arc-diff{grid-template-columns:1fr}}.arc-diff__opt{display:grid;gap:4px;align-content:start;min-height:44px;padding:12px 14px;text-align:left;cursor:pointer;border-radius:14px;border:1.5px solid var(--arc-line);background:#ffffff0a;color:var(--arc-ink);font:inherit;transition:transform .15s ease,border-color .15s ease,background-color .15s ease,box-shadow .15s ease}.arc-diff__opt:hover{border-color:#ff4fa399}.arc-diff__opt:active{transform:scale(.98)}.arc-diff__opt[aria-checked=true]{border-color:var(--arc-pink);background:#ff4fa324;box-shadow:0 0 0 1px var(--arc-pink),0 0 22px #ff4fa340}.arc-diff__pips{display:flex;gap:6px;padding:2px 0 4px 2px}.arc-diff__pips i{width:9px;height:9px;border-radius:2px;background:#fff3;transform:rotate(45deg)}.arc-diff__pips i.is-on{background:var(--arc-gold)}.arc-diff__label{font-family:var(--arc-font);font-weight:700;font-size:1.1rem;letter-spacing:.04em}.arc-diff__desc{color:var(--arc-muted);font-size:.86rem;line-height:1.35}.arc-btn--play{position:relative;overflow:hidden;width:100%;min-height:58px;margin-top:20px;border:0;border-radius:16px;font-size:1.3rem;letter-spacing:.16em;text-transform:uppercase;color:#1a0b1e;background:linear-gradient(135deg,#ff4fa3,#ff8a5b);box-shadow:0 10px 26px #ff4fa366,inset 0 -3px #0000002e}.arc-btn--play .ic{width:22px;height:22px}.arc-btn--play:hover{background:linear-gradient(135deg,#ff66b0,#ff9c70);border:0;transform:translateY(-2px);box-shadow:0 14px 32px #ff4fa380,inset 0 -3px #0000002e}.arc-btn--play:active{transform:translateY(1px) scale(.99)}.arc-btn--play:after{content:"";position:absolute;top:0;bottom:0;left:-40%;width:30%;pointer-events:none;background:linear-gradient(90deg,transparent,rgba(255,255,255,.45),transparent);transform:translate(-100%) skew(-20deg)}@media(prefers-reduced-motion:no-preference){.arc-btn--play:after{animation:arc-shine 3.2s ease-in-out infinite}}@keyframes arc-shine{0%,60%{transform:translate(0) skew(-20deg)}to{transform:translate(560%) skew(-20deg)}}.arc-note{margin:12px 0 0;text-align:center;color:var(--arc-gold);font-weight:600}.arc-hall{padding-top:8px}.arc-hall__filters{display:flex;flex-wrap:wrap;justify-content:center;gap:10px 16px;margin:22px 0 18px}.arc-seg{display:inline-flex;flex-wrap:wrap;gap:4px;padding:4px;border-radius:14px;background:#ffffff0d;border:1px solid var(--arc-line)}.arc-seg__btn{min-height:44px;padding:0 14px;border:0;border-radius:10px;cursor:pointer;background:transparent;color:var(--arc-muted);font-family:var(--arc-font);font-weight:700;font-size:.95rem;letter-spacing:.04em;transition:background-color .15s ease,color .15s ease,transform .15s ease}.arc-seg__btn:hover{color:var(--arc-ink);background:#ffffff12}.arc-seg__btn:active{transform:scale(.96)}.arc-seg__btn[aria-pressed=true]{color:#1a0b1e;background:linear-gradient(135deg,#ffe08a,#ff8a5b)}@media(max-width:479.98px){.arc-hall__filters{gap:8px}.arc-seg{gap:2px;padding:3px}.arc-seg__btn{padding:0 9px;font-size:.86rem;letter-spacing:.02em}}.arc-hall__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:16px}.arc-rec{position:relative;display:flex;flex-direction:column;gap:10px;padding:16px 16px 14px;overflow:hidden;border-radius:var(--arc-radius);border:1px solid var(--arc-line);background:var(--arc-surface-solid);box-shadow:0 10px 26px #00000052}.arc-rec--japan{border-color:#ff78a066;background:radial-gradient(circle at 50% 100%,transparent 9px,rgba(255,180,210,.05) 10px 11px,transparent 12px 15px,rgba(255,180,210,.05) 16px 17px,transparent 18px) 0 0 / 36px 18px,linear-gradient(180deg,#22134a,#17113a)}.arc-rec:before{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:linear-gradient(90deg,#ff5c8a,#ffb38a)}.arc-rec.is-empty:before{background:var(--arc-line)}.arc-rec__head{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px}.arc-rec__game{font-family:var(--arc-font);font-weight:700;font-size:1.15rem}.arc-rec__diff{display:inline-flex;align-items:center;gap:6px;color:var(--arc-muted);font-weight:600;font-size:.9rem}.arc-rec__diff .arc-diff__pips{padding:0}.arc-rec__status{margin-left:auto;padding:3px 10px;border-radius:999px;font-size:.74rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.arc-rec__status--max{color:#1a0b1e;background:linear-gradient(135deg,#ffe08a,#ff8a5b)}.arc-rec__status--paused{color:#c9f6ff;background:#3de0ff24;border:1px solid rgba(61,224,255,.4)}.arc-rec__score{margin:2px 0 0;display:flex;align-items:baseline;gap:6px}.arc-rec__n{font-family:var(--arc-font);font-weight:700;font-size:2.6rem;line-height:1;color:#fff;text-shadow:0 0 18px rgba(255,92,138,.45)}.arc-rec.is-empty .arc-rec__n{color:var(--arc-muted);text-shadow:none}.arc-rec__goal{color:var(--arc-muted);font-weight:700}.arc-rec__bar{height:8px;border-radius:999px;background:#ffffff1a;overflow:hidden}.arc-rec__bar i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#ff5c8a,#ffe08a)}.arc-rec__stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:2px 0 0}.arc-rec__stats div{padding:8px 10px;border-radius:12px;background:#ffffff0d}.arc-rec__stats dt{font-size:.7rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--arc-muted)}.arc-rec__stats dd{margin:2px 0 0;font-family:var(--arc-font);font-weight:700;font-size:1.1rem;color:#fff}.arc-rec__none{margin:0;color:var(--arc-muted)}.arc-rec__play{align-self:stretch;margin-top:auto}.rec-arcade-link{display:flex;align-items:center;gap:14px;min-height:64px;margin:var(--space-6, 24px) 0 var(--space-4, 16px);padding:12px 16px;border-radius:var(--radius-lg, 16px);text-decoration:none;color:#f5f2ff;background:radial-gradient(120% 140% at 0% 0%,#3a1c72,#1b0f3d 55%,#0b0820);border:1px solid rgba(255,79,163,.45);box-shadow:0 6px 20px #5b21b640;transition:transform .15s ease,box-shadow .15s ease}.rec-arcade-link:hover{transform:translateY(-2px);box-shadow:0 10px 26px #be185d4d}.rec-arcade-link:active{transform:scale(.99)}.rec-arcade-link:focus-visible{outline:3px solid var(--color-focus);outline-offset:2px}.rec-arcade-link__icon{flex:none;display:grid;place-items:center;width:44px;height:44px;border-radius:12px;background:linear-gradient(135deg,#6d28d9,#be185d)}.rec-arcade-link__icon .ic{width:26px;height:26px;color:#fff}.rec-arcade-link__txt{display:flex;flex-direction:column;flex:1;min-width:0}.rec-arcade-link__txt strong{font-family:"Chakra Petch",var(--font-sans, "Plus Jakarta Sans"),sans-serif;font-size:1.05rem;letter-spacing:.05em}.rec-arcade-link__txt span{color:#c3baea;font-size:.9rem}.rec-arcade-link__best{flex:none;font-family:"Chakra Petch",var(--font-sans, "Plus Jakarta Sans"),sans-serif;color:#ffe08a;white-space:nowrap}.rec-arcade-link__best b{font-size:1.4rem}.rec-arcade-link__best[hidden]{display:none}.rec-arcade-link__go{flex:none;width:20px;height:20px;color:#ff8ac0}@media(max-width:419.98px){.rec-arcade-link__txt span{display:none}}.arc-empty{display:grid;justify-items:center;gap:8px;margin-top:28px;padding:32px 16px;border-radius:var(--arc-radius);border:1px dashed var(--arc-line);color:var(--arc-muted);text-align:center}.arc-empty .ic{width:48px;height:48px;color:var(--arc-gold);opacity:.8}@media(prefers-reduced-motion:no-preference){.arc-entering .arc-stage:not(.arc-stage--play){animation:arc-rise .7s var(--arc-ease) .75s both}.arc-stage:not(.arc-stage--play)>section.arc-swap{animation:arc-in .4s var(--arc-ease) both}.arc-grid>.arc-game:nth-child(2){animation:arc-in .5s var(--arc-ease) .08s both}}@keyframes arc-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes arc-rise{0%{opacity:0;transform:translateY(26px) scale(.98)}to{opacity:1;transform:none}}.arc-intro{position:fixed;inset:0;z-index:10;pointer-events:none}.arc-intro__shutter{position:absolute;left:0;right:0;height:50.5%;background:linear-gradient(180deg,#0b0820,#241052)}.arc-intro__shutter--t{top:0;border-bottom:2px solid var(--arc-cyan);box-shadow:0 0 24px #3de0ff99;animation:arc-shut-t .9s cubic-bezier(.7,0,.2,1) .55s forwards}.arc-intro__shutter--b{bottom:0;border-top:2px solid var(--arc-pink);box-shadow:0 0 24px #ff4fa399;animation:arc-shut-b .9s cubic-bezier(.7,0,.2,1) .55s forwards}.arc-intro__logo{position:absolute;inset:0;display:grid;place-items:center;font-family:var(--arc-font);font-weight:700;font-size:clamp(3rem,15vw,7.5rem);letter-spacing:.14em;color:#fff;text-shadow:0 0 20px rgba(255,79,163,.9),0 0 44px rgba(61,224,255,.7);animation:arc-logo 1.05s ease forwards}@keyframes arc-shut-t{to{transform:translateY(-102%)}}@keyframes arc-shut-b{to{transform:translateY(102%)}}@keyframes arc-logo{0%{opacity:0;transform:scale(1.5)}28%{opacity:1;transform:scale(1)}60%{opacity:1;transform:scale(1.02)}to{opacity:0;transform:scale(.92)}}.arc-intro--reduced{background:var(--arc-bg-0);animation:arc-fade-out .3s ease forwards}.arc-intro--reduced .arc-intro__shutter,.arc-intro--reduced .arc-intro__logo{display:none}@keyframes arc-fade-out{to{opacity:0}}@media(prefers-reduced-motion:reduce){.arc-view *,.arc-view *:before,.arc-view *:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.arc-intro--reduced{animation-duration:.3s!important}}.home-zone--arcade{--zone-soft: rgba(244, 114, 182, .18);--zone-ink: #FBCFE8;--zone-border: rgba(244, 114, 182, .45);--zone-a: #F472B6;--zone-b: #7C3AED;flex-direction:row;flex-wrap:wrap;align-items:center;column-gap:var(--space-4);border-color:#3b2a6b;color:#f5f3ff;background:radial-gradient(120% 140% at 100% 0%,rgba(124,58,237,.55),transparent 60%),radial-gradient(90% 120% at 0% 100%,rgba(236,72,153,.35),transparent 55%),linear-gradient(135deg,#1a1033,#0f0a24)}.home-zone--arcade:before{display:none}.home-zone--arcade .home-zone__top{flex:none}.home-zone--arcade .home-zone__body{flex:1 1 16rem}.home-zone--arcade .home-zone__title{color:#fff;font-family:"Chakra Petch",var(--font-sans, sans-serif);letter-spacing:.04em;text-transform:uppercase}.home-zone--arcade .home-zone__desc{color:#ddd6fe}.home-zone--arcade .home-zone__kicker{color:#fbcfe8}.home-zone--arcade{padding-right:calc(var(--space-5) + 28px)}.home-zone--arcade .home-zone__go{position:absolute;right:var(--space-5);top:50%;transform:translateY(-50%);color:#c4b5fd}a.home-zone--arcade:hover .home-zone__go{transform:translate(3px,-50%);color:#f9a8d4}.home-zone--arcade .home-zone__foot{flex:1 1 100%}.home-zone--arcade .home-zone__meta{color:#f9a8d4}.home-zone--arcade .home-zone__bar{background:#ffffff24}a.home-zone--arcade:hover{border-color:#f472b6;box-shadow:0 12px 32px -8px #ec489973}@media(min-width:900px){.home-zone--arcade .home-zone__foot{flex:0 1 18rem}}.arc-view.arc-playing{overflow:hidden}.arc-view.arc-playing .arc-bar,.arc-view.arc-playing .arc-bg{display:none}.arc-stage--play{max-width:none;padding:0}.arc-play{position:fixed;inset:0;z-index:4}.arc-play__host{position:absolute;inset:0}.arc-play__loading{position:absolute;inset:0;display:grid;place-items:center;margin:0;padding:24px;text-align:center;color:var(--arc-muted);font-weight:600}.sk{--sk-ink: #3A0B2A;--sk-ok: #22C55E;--sk-bad: #F43F5E;position:absolute;inset:0;overflow:hidden;overflow:clip;user-select:none;-webkit-user-select:none;touch-action:none;color:var(--arc-ink)}.sk[data-mode=ready],.sk[data-mode=paused],.sk[data-mode=over]{touch-action:auto}.sk-scene{position:absolute;inset:0;pointer-events:none}.sk-sky{position:absolute;inset:0;background:linear-gradient(180deg,#1e1047,#5b2a7e 34%,#c04b7c 62%,#f49a72 86%,#ffc58f)}.sk-sun{position:absolute;left:62%;top:38%;width:min(34vw,260px);aspect-ratio:1;border-radius:50%;transform:translate(-50%,-50%);background:radial-gradient(circle,#ff6b6b 0 58%,#ff6b6b59 60%,#ff6b6b00 72%)}.sk-layer{position:absolute;left:0;width:200%}.sk-layer .sk-strip{display:block;width:100%;height:100%}.sk-layer--far{bottom:22%;height:26%;opacity:.95}.sk-layer--clouds{top:14%;height:14%}.sk-layer--mid{bottom:0;height:30%}.sk-particles{position:absolute;inset:0;width:100%;height:100%}.sk-branchwrap{position:absolute;left:-12px;top:calc(env(safe-area-inset-top,0px) + 46px);width:min(46vw,300px);transform-origin:0 30%}@media(max-width:899.98px){.sk-branchwrap{top:calc(env(safe-area-inset-top,0px) + 70px);width:min(40vw,220px)}}.sk-branch{display:block;width:100%;height:auto}.sk-ground{position:absolute;left:0;right:0;bottom:0;height:18px;background:linear-gradient(180deg,#2a1650,#160b30);box-shadow:0 -2px #ffc4da40}@media(prefers-reduced-motion:no-preference){.sk-layer--far{animation:sk-pan 120s linear infinite}.sk-layer--clouds{animation:sk-pan 70s linear infinite}.sk-layer--mid{animation:sk-pan 48s linear infinite}.sk-branchwrap{animation:sk-wind 5.5s ease-in-out infinite alternate}.sk-sun{animation:sk-glow 6s ease-in-out infinite alternate}}.sk.is-paused .sk-layer,.sk.is-paused .sk-branchwrap,.sk.is-paused .sk-sun{animation-play-state:paused}@keyframes sk-pan{0%{transform:translateZ(0)}to{transform:translate3d(-50%,0,0)}}@keyframes sk-wind{0%{transform:rotate(-1.5deg)}to{transform:rotate(2deg)}}@keyframes sk-glow{0%{opacity:.85;transform:translate(-50%,-50%) scale(.97)}to{opacity:1;transform:translate(-50%,-50%) scale(1.04)}}.sk-field{position:absolute;inset:0;pointer-events:none;overflow:hidden;overflow:clip}.sk-petal{position:absolute;left:0;top:0;background-size:100% 100%;background-repeat:no-repeat;filter:drop-shadow(0 6px 10px rgba(40,6,30,.35));will-change:transform;transition:opacity .3s ease}.sk-petal[hidden]{display:none}.sk-petal__text{position:absolute;inset:17% 13% 13%;display:flex;align-items:center;justify-content:center;overflow:hidden;text-align:center;line-height:1.2;overflow-wrap:break-word;hyphens:none;font-family:Plus Jakarta Sans,system-ui,sans-serif;font-weight:700;color:var(--sk-ink);letter-spacing:-.005em}.sk-petal.is-caught{opacity:0;transition:opacity .3s ease,filter .2s ease;filter:drop-shadow(0 0 14px rgba(34,197,94,.9))}.sk-petal.is-dodged{opacity:0;transition-duration:.4s}.sk-petal.is-bad,.sk-petal.is-missed{filter:drop-shadow(0 0 12px rgba(244,63,94,.95)) saturate(.6);opacity:0;transition:opacity .7s ease .15s}.sk-petal.is-bad .sk-petal__text,.sk-petal.is-missed .sk-petal__text{color:#8f0b2e;text-decoration:line-through 2px rgba(143,11,46,.55)}.sk-petal.is-missed .sk-petal__text{text-decoration:none}.sk-basket{position:absolute;left:0;bottom:18px;will-change:transform;pointer-events:none}.sk-basket__svg{display:block;width:100%;height:100%;filter:drop-shadow(0 6px 8px rgba(0,0,0,.35));transform-origin:50% 100%}.sk-basket.is-catch .sk-basket__svg{animation:sk-bounce .32s ease}.sk-basket.is-shake .sk-basket__svg{animation:sk-shake .4s ease}@keyframes sk-bounce{0%{transform:scale(1)}40%{transform:scale(1.08,.9)}to{transform:scale(1)}}@keyframes sk-shake{0%,to{transform:translate(0)}20%{transform:translate(-7px) rotate(-3deg)}40%{transform:translate(6px) rotate(2deg)}60%{transform:translate(-4px)}80%{transform:translate(3px)}}.sk-hud{position:absolute;left:50%;top:calc(env(safe-area-inset-top,0px) + 10px);transform:translate(-50%);z-index:3;display:flex;align-items:center;gap:14px;width:min(720px,calc(100% - 20px));padding:6px 6px 6px 14px;border-radius:999px;background:#140a2cc7;border:1px solid rgba(255,196,218,.28);box-shadow:0 8px 24px #0000004d}.sk-hearts{display:flex;gap:4px}.sk-hearts svg{width:24px;height:22px;fill:#ff4f7b;filter:drop-shadow(0 0 6px rgba(255,79,123,.55));transition:opacity .25s ease,transform .25s ease}.sk-hearts svg.is-off{fill:#ffffff2e;filter:none}.sk-hearts svg.is-break{animation:sk-break .6s ease}.sk-hearts svg.is-pop{animation:sk-pop .6s cubic-bezier(.2,1.6,.4,1)}@keyframes sk-break{0%{transform:scale(1)}30%{transform:scale(1.35) rotate(-8deg)}60%{transform:scale(.8) rotate(6deg)}to{transform:scale(1)}}@keyframes sk-pop{0%{transform:scale(.3)}60%{transform:scale(1.35)}to{transform:scale(1)}}.sk-score{margin-left:auto;margin-right:auto;font-family:var(--arc-font);font-weight:700;font-size:1.5rem;line-height:1;letter-spacing:.02em;white-space:nowrap}.sk-score__n{display:inline-block;color:#fff}.sk-score__goal{margin-left:6px;font-size:.9rem;color:var(--arc-muted)}.sk-score.is-bump .sk-score__n{animation:sk-bump .3s ease}@keyframes sk-bump{50%{transform:scale(1.25);color:#ffe08a}}.sk-streak{display:flex;align-items:center;gap:8px}.sk-streak__label{font-size:.72rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--arc-muted)}.sk-streak__bar{display:flex;gap:3px}.sk-streak__bar i{width:10px;height:14px;border-radius:3px;background:#ffffff29;transition:background-color .2s ease,transform .2s ease}.sk-streak__bar i.is-on{background:linear-gradient(180deg,#ffe08a,#ff8a5b);transform:scaleY(1.12);box-shadow:0 0 8px #ffd16699}.sk-streak.is-full{opacity:.55}.sk-pause{flex:none;display:grid;place-items:center;width:44px;height:44px;border-radius:50%;cursor:pointer;border:1px solid rgba(255,255,255,.25);background:#ffffff1a;color:#fff;transition:background-color .15s ease,transform .15s ease}.sk-pause svg{width:20px;height:20px;fill:currentColor}.sk-pause:hover{background:#fff3}.sk-pause:active{transform:scale(.92)}.sk-pause:focus-visible{outline:3px solid var(--arc-gold);outline-offset:2px}.sk:not([data-mode=playing]) .sk-pause{visibility:hidden}.sk-mute{position:relative;flex:none;display:grid;place-items:center;width:44px;height:44px;border-radius:50%;cursor:pointer;border:1px solid rgba(255,255,255,.25);background:#ffffff0f;color:#fff;transition:background-color .15s ease,transform .15s ease}.sk-mute .ic{width:20px;height:20px}.sk-mute:hover{background:#ffffff29}.sk-mute:active{transform:scale(.92)}.sk-mute:focus-visible{outline:3px solid var(--arc-gold);outline-offset:2px}.sk-mute__slash{position:absolute;width:24px;height:2.5px;border-radius:2px;background:#ff4fa3;transform:rotate(-45deg);opacity:0;transition:opacity .15s ease}.sk-mute.is-muted .sk-mute__slash{opacity:1}.sk-mute.is-muted .ic{opacity:.55}.sk--no-audio .sk-mute,.sk--no-audio .sk-vol{display:none}.sk-vol{display:flex;align-items:center;justify-content:center;gap:12px;margin:0 0 4px;color:var(--arc-muted);font-weight:600}.sk-vol input{width:min(220px,60%);height:44px;accent-color:#FF5C8A;cursor:pointer}@media(max-width:479.98px){.sk-hud{gap:8px;padding-left:10px}.sk-hearts svg{width:20px;height:18px}.sk-score{font-size:1.25rem}.sk-score__goal{font-size:.78rem;margin-left:3px}.sk-streak__label{display:none}.sk-streak__bar i{width:7px;height:12px;gap:2px}.sk-hud{padding-right:4px}}.sk:after{content:"";position:absolute;inset:0;pointer-events:none;z-index:2;opacity:0;box-shadow:inset 0 0 80px #f43f5ebf}.sk.is-hit:after{animation:sk-hit .5s ease}@keyframes sk-hit{0%{opacity:0}25%{opacity:1}to{opacity:0}}.sk-fx{position:absolute;inset:0;pointer-events:none;z-index:2}.sk-float{position:absolute;left:0;top:0;font-family:var(--arc-font);font-weight:700;font-size:1.4rem;white-space:nowrap;text-shadow:0 2px 6px rgba(0,0,0,.5);animation:sk-float .9s ease-out forwards}.sk-float.is-ok{color:#86efac}.sk-float.is-dodge{color:#c4b5fd;font-size:1.15rem}.sk-float.is-bad{color:#ffb4c2;font-size:1.05rem;padding:4px 10px;border-radius:999px;background:#780a28bf;margin-left:-60px}.sk-float.is-heart{color:#ff7ba0;font-size:1.6rem}@keyframes sk-float{0%{opacity:0;translate:0 6px}20%{opacity:1}to{opacity:0;translate:0 -46px}}.sk-overlay{position:absolute;inset:0;z-index:5;display:grid;place-items:center;padding:16px;background:#0c061e9e}.sk-overlay[hidden]{display:none}.sk-overlay.is-count{background:#0c061e59}.sk-overlay.is-count .sk-card{background:none;border:0;box-shadow:none;animation:none}.sk-card{width:min(440px,100%);max-height:calc(100% - 16px);overflow-y:auto;padding:22px 20px 20px;text-align:center;border-radius:22px;background:linear-gradient(180deg,#24124a,#17113a);border:1px solid rgba(255,150,190,.4);box-shadow:0 24px 60px #00000080,inset 0 1px #ffffff14}@media(prefers-reduced-motion:no-preference){.sk-card{animation:sk-card-in .35s cubic-bezier(.2,.9,.3,1.2)}}@keyframes sk-card-in{0%{opacity:0;transform:translateY(14px) scale(.96)}to{opacity:1;transform:none}}.sk-card__kicker{margin:0 0 4px;font-size:.78rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#ffc2d6}.sk-card__title{margin:0 0 12px;font-family:var(--arc-font);font-weight:700;font-size:clamp(1.8rem,7vw,2.4rem);line-height:1.05;color:#fff}.sk-card__text{margin:0 0 14px;color:var(--arc-muted)}.sk-card__hint{margin:12px 0 0;color:var(--arc-muted);font-size:.92rem}.sk-card__rules{list-style:none;margin:0;padding:0;display:grid;gap:6px}.sk-card__rules li{color:var(--arc-ink)}.sk-card__stats{display:flex;justify-content:center;flex-wrap:wrap;gap:8px 16px;margin:0 0 12px;color:var(--arc-muted)}.sk-card__stats strong{color:#fff;font-family:var(--arc-font);font-size:1.2rem}.sk-card__badge{display:inline-block;margin:0 0 12px;padding:4px 14px;border-radius:999px;font-family:var(--arc-font);font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#1a0b1e;background:linear-gradient(135deg,#ffe08a,#ff8a5b)}.sk-card__actions{display:grid;gap:10px;margin-top:18px}.sk-btn{min-height:48px;padding:0 18px;border-radius:14px;cursor:pointer;font-family:var(--arc-font);font-weight:700;font-size:1.05rem;letter-spacing:.06em;border:1px solid rgba(255,255,255,.22);background:#ffffff14;color:#fff;transition:transform .15s ease,background-color .15s ease,box-shadow .15s ease}.sk-btn:hover{background:#ffffff26}.sk-btn:active{transform:scale(.97)}.sk-btn:focus-visible{outline:3px solid var(--arc-gold);outline-offset:3px}.sk-btn--primary{border:0;color:#1a0b1e;background:linear-gradient(135deg,#ff5c8a,#ffb38a);box-shadow:0 8px 22px #ff5c8a66;text-transform:uppercase}.sk-btn--primary:hover{background:linear-gradient(135deg,#ff73a0,#ffc29e)}.sk-btn--ghost{background:transparent}.sk-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:4px 0 0}.sk-summary div{padding:10px;border-radius:14px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1)}.sk-summary dt{font-size:.75rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--arc-muted)}.sk-summary dd{margin:4px 0 0;font-family:var(--arc-font);font-weight:700;font-size:1.35rem;color:#fff}.sk-card--review{display:flex;flex-direction:column;width:min(520px,100%);overflow:hidden;overflow-y:auto}.sk-card--review .sk-summary{flex:none}.sk-card--review .sk-card__actions{flex:none;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:14px}.sk-card--review .sk-card__actions .sk-btn{padding:0 10px}.sk-review{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;margin-top:14px;text-align:left}.sk-review__head{flex:none;display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0 0 6px}.sk-review__title{margin:0;font-family:var(--arc-font);font-weight:700;font-size:1.1rem;letter-spacing:.04em;color:#fff}.sk-review__scroll{flex:1 1 auto;min-height:7.5rem;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding-right:4px;border-radius:12px;scrollbar-color:rgba(255,196,218,.5) transparent}.sk-review__list{list-style:none;margin:0;padding:0;display:grid;gap:8px}.sk-rev{padding:9px 11px 10px;border-radius:12px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-left-width:4px}.sk-rev[hidden]{display:none}.sk-rev--bad{border-left-color:var(--arc-bad)}.sk-rev--miss{border-left-color:var(--arc-gold)}.sk-rev__row{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 8px;margin:0 0 3px;font-size:.98rem;line-height:1.35}.sk-rev__mark{flex:none;width:1.1em;text-align:center;font-weight:800;color:var(--arc-muted)}.sk-rev__mark--bad{color:var(--arc-bad)}.sk-rev__mark--ok{color:var(--arc-ok)}.sk-rev__mark--miss{color:var(--arc-gold)}.sk-rev__lbl{font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--arc-muted)}.sk-rev__bad{color:var(--arc-bad);text-decoration:line-through 2px;text-decoration-color:#ff7a7ab3;font-weight:600;overflow-wrap:anywhere}.sk-rev__ok{color:var(--arc-ok);font-weight:700;overflow-wrap:anywhere}.sk-rev--miss .sk-rev__ok{color:var(--arc-gold)}.sk-rev__count{padding:0 7px;border-radius:999px;font-size:.78rem;font-weight:700;color:#1a0b1e;background:var(--arc-gold)}.sk-rev__why{margin:4px 0 0 calc(1.1em + 8px);font-size:.92rem;line-height:1.4;color:var(--arc-ink)}.sk-review__note{flex:none;margin:8px 0 0;font-size:.82rem;color:var(--arc-muted)}.sk-review__more{flex:none;min-height:44px;padding:0 14px;font-size:.88rem;letter-spacing:.03em}.sk-review__scroll:focus-visible{outline:3px solid var(--arc-gold);outline-offset:2px}@media(max-width:479.98px){.sk-card--review{padding:16px 14px 14px}.sk-card--review .sk-card__title{margin-bottom:8px}.sk-card--review .sk-summary{gap:6px}.sk-card--review .sk-summary div{padding:5px 8px}.sk-card--review .sk-summary dd{font-size:1.1rem;margin-top:0}.sk-card--review .sk-card__actions .sk-btn{font-size:.92rem;letter-spacing:.02em}}.sk-count{display:grid;justify-items:center;gap:6px}.sk-count__n{font-family:var(--arc-font);font-weight:700;font-size:clamp(5rem,26vw,9rem);line-height:1;color:#fff;text-shadow:0 0 30px rgba(255,92,138,.8),0 4px 0 rgba(0,0,0,.3)}.sk-count__n.is-tick{animation:sk-tick .5s ease}.sk-count__label{font-family:var(--arc-font);font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:#ffd0e0}@keyframes sk-tick{0%{transform:scale(1.4);opacity:.3}to{transform:scale(1);opacity:1}}.sk.is-won .sk-sky{filter:brightness(1.15) saturate(1.1);transition:filter .8s ease}.sk.is-lost .sk-scene{filter:grayscale(.6) brightness(.75);transition:filter .8s ease}@media(prefers-reduced-motion:reduce){.sk *,.sk:after{animation:none!important;transition-duration:.01ms!important}}@font-face{font-family:Cinzel;font-style:normal;font-weight:600;font-display:swap;src:url(/assets/fonts/cinzel-latin-600.woff2) format("woff2")}@font-face{font-family:Cinzel;font-style:normal;font-weight:700;font-display:swap;src:url(/assets/fonts/cinzel-latin-700.woff2) format("woff2")}.arc-play--egypt,.pw,.arc-game--egypt,.arc-rec--egypt,.arc-detail--egypt{--eg-night: #0B0A26;--eg-indigo: #17123F;--eg-indigo-2: #221A57;--eg-lapis: #1E3A8A;--eg-lapis-hi: #2E56C4;--eg-turq: #1FB5A8;--eg-sand: #F6E7C0;--eg-sand-dim: #D9C79C;--eg-gold: #F2B83A;--eg-gold-hi: #FFE08A;--eg-oldgold: #B98A2E;--eg-terra: #C65A3A;--eg-papyrus: #EFE1B6;--eg-papyrus-2: #E2CF98;--eg-ink: #2B1A0C;--eg-ink-soft: #6B4A1E;--eg-ok: #15803D;--eg-bad: #B42318;--eg-display: "Cinzel", "Chakra Petch", Georgia, serif}.arc-game--egypt{--g1: #F2B83A;--g2: #E5683A;border-color:#f2b83a80}.arc-game--egypt .arc-game__body{background:repeating-linear-gradient(90deg,rgba(242,184,58,.06) 0 2px,transparent 2px 18px),linear-gradient(180deg,#1e1648,#17113a)}.arc-detail--egypt{--g1: #F2B83A;--g2: #E5683A}.arc-rec--egypt{border-color:#f2b83a80;background:linear-gradient(45deg,rgba(242,184,58,.07) 25%,transparent 25%) 0 0 / 26px 26px,linear-gradient(-45deg,rgba(242,184,58,.07) 25%,transparent 25%) 0 0 / 26px 26px,radial-gradient(120% 70% at 50% 0%,rgba(46,86,196,.35),transparent 70%),linear-gradient(180deg,#1a1550,#120e36)}.arc-rec--egypt:before{height:4px;background:linear-gradient(90deg,var(--eg-oldgold),var(--eg-gold-hi) 50%,var(--eg-oldgold))}.arc-rec--egypt:after{content:"";position:absolute;right:14px;top:34px;width:104px;height:58px;pointer-events:none;opacity:.5;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 66'%3E%3Ccircle cx='92' cy='14' r='16' fill='%23FFE08A' opacity='.25'/%3E%3Ccircle cx='92' cy='14' r='9' fill='%23FFE08A'/%3E%3Cpath d='M6 66 50 18 94 66Z' fill='%23F2B83A'/%3E%3Cpath d='M50 18 94 66H58Z' fill='%23B98A2E'/%3E%3Cpath d='M70 66 92 42 114 66Z' fill='%23D9A23A'/%3E%3Cpath d='M92 42 114 66H96Z' fill='%23A07322'/%3E%3C/svg%3E") no-repeat right bottom / contain}.arc-rec--egypt>*{position:relative;z-index:1}.arc-rec--egypt .arc-rec__game{font-family:var(--eg-display);letter-spacing:.04em;color:var(--eg-gold-hi)}.arc-rec--egypt .arc-rec__n{font-family:var(--eg-display);color:var(--eg-gold-hi);text-shadow:0 0 18px rgba(242,184,58,.45)}.arc-rec--egypt.is-empty .arc-rec__n{color:var(--arc-muted);text-shadow:none}.arc-rec--egypt .arc-rec__goal{color:var(--eg-sand-dim)}.arc-rec__acc{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-top:4px}.arc-rec__acc-l{font-size:.74rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--eg-sand-dim)}.arc-rec__acc-n{font-family:var(--eg-display);font-size:1.5rem;color:#fff;font-variant-numeric:tabular-nums}.arc-rec__bar--acc{height:10px;background:#ffffff1a;box-shadow:inset 0 0 0 1px #f2b83a40}.arc-rec__bar--acc i{background:linear-gradient(90deg,var(--eg-turq),var(--eg-gold-hi))}.arc-rec--egypt .arc-rec__play{border-color:#f2b83a8c}@media(prefers-reduced-motion:no-preference){.arc-art__pyr--far{animation:eg-drift 16s ease-in-out infinite alternate}.arc-art__pyr--mid{animation:eg-drift 12s ease-in-out infinite alternate-reverse}.arc-art__dust{animation:eg-dust 9s linear infinite}.arc-art__flame{transform-box:fill-box;transform-origin:50% 100%;animation:eg-flame .5s ease-in-out infinite alternate}.arc-art__reflect{animation:eg-shimmer 3.4s ease-in-out infinite alternate}}@keyframes eg-drift{0%{transform:translate(-3px)}to{transform:translate(3px)}}@keyframes eg-dust{0%{transform:translate(-30px);opacity:0}20%{opacity:.5}to{transform:translate(60px);opacity:0}}@keyframes eg-flame{0%{transform:scale(1)}to{transform:scale(.88,1.14)}}@keyframes eg-shimmer{0%{opacity:.65}to{opacity:1}}.pw{position:absolute;inset:0;overflow:hidden;overflow:clip;color:var(--eg-sand);user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;font-family:Plus Jakarta Sans,system-ui,sans-serif;--pw-storm: 0;--pw-rubble: 0}.pw :focus-visible{outline:3px solid var(--eg-gold-hi);outline-offset:2px}.pw-scene{position:absolute;inset:-10px;z-index:0;pointer-events:none}.pw-sky,.pw-sky i{position:absolute;inset:0}.pw-sky{background:linear-gradient(180deg,#2c65b8,#5fa6d6 34%,#f0ce92 74%,#fbe3b0)}.pw-sky__dusk{background:linear-gradient(180deg,#1b2a78,#7d3f8e 38%,#e0603f 70%,#ffb35c);opacity:0;transition:opacity 3s ease}.pw-sky__night{background:linear-gradient(180deg,#05072a,#141858 52%,#2d1b52);opacity:0;transition:opacity 3s ease}.pw-starwrap{position:absolute;left:0;right:0;top:0;height:58%;opacity:0;transition:opacity 3s ease}.pw-stars{display:block;width:100%;height:100%}.pw-sun{position:absolute;left:0;top:0;width:min(30vw,230px);aspect-ratio:1;border-radius:50%;will-change:transform;background:radial-gradient(circle,#fff6c0 0 36%,#ffcb4c 38% 55%,#ffba4661 60%,#ffba4600 72%);transition:transform 3s ease-in-out,opacity 3s ease}.pw-moon{position:absolute;right:14%;top:12%;width:min(9vw,64px);aspect-ratio:1;border-radius:50%;opacity:0;transition:opacity 3s ease;background:radial-gradient(circle at 36% 36%,#fff,#d9e2f5 62%,#aebbdc);box-shadow:0 0 40px #d2e0ff80}.pw-layer{position:absolute;left:0;width:200%;will-change:transform}.pw-layer .pw-strip{display:block;width:100%;height:100%}.pw-layer--far{bottom:24%;height:24%;opacity:.9}.pw-layer--dunes{bottom:6%;height:24%}.pw-pyrwrap{position:absolute;bottom:12%;height:52%;display:flex;align-items:flex-end}.pw-pyr{display:block;width:100%;height:100%;filter:drop-shadow(0 10px 14px rgba(40,20,10,.35))}.pw-course{transform-box:fill-box;transform-origin:50% 100%;transition:transform .9s cubic-bezier(.55,0,.9,.45),opacity .9s ease}.pw-course.is-gone{transform:translate(var(--dx, 0),var(--dy, 90px)) rotate(var(--r, 24deg));opacity:0}.pw-rubble{opacity:var(--pw-rubble, 0);transition:opacity .9s ease}.pw-nilewrap{position:absolute;left:0;right:0;bottom:0;height:7%}.pw-nile{display:block;width:100%;height:100%}.pw-palmwrap{position:absolute;left:0;right:0;bottom:5%;height:30%}.pw-palms{display:block;width:100%;height:100%}.pw-haze{position:absolute;inset:0;opacity:calc(var(--pw-storm) * .85);transition:opacity .6s ease;background:linear-gradient(180deg,#e0b26e1a,#e0b26e9e 70%,#c68c4ecc)}@media(prefers-reduced-motion:no-preference){.pw-layer--far{animation:pw-pan 150s linear infinite}.pw-layer--dunes{animation:pw-pan 90s linear infinite}.pw-sun{animation:none}.pw-twinkle{animation:pw-twinkle 2.6s ease-in-out infinite alternate}}.pw.is-paused .pw-layer,.pw.is-paused .pw-twinkle{animation-play-state:paused}@keyframes pw-pan{0%{transform:translateZ(0)}to{transform:translate3d(-50%,0,0)}}@keyframes pw-twinkle{0%{opacity:.35}to{opacity:1}}.pw-ui{position:absolute;inset:0;z-index:1;display:grid;box-sizing:border-box}.pw[data-orient=land] .pw-ui{grid-template-columns:clamp(190px,24vw,290px) minmax(0,1fr) clamp(150px,17vw,240px);grid-template-areas:"panel main hud";gap:8px;padding:calc(env(safe-area-inset-top,0px) + 6px) calc(env(safe-area-inset-right,0px) + 8px) 6px calc(env(safe-area-inset-left,0px) + 8px)}.pw[data-orient=port] .pw-ui{grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto minmax(0,1fr);grid-template-areas:"panel" "hud" "main";gap:4px;padding:calc(env(safe-area-inset-top,0px) + 6px) 8px 4px}.pw-panel{grid-area:panel;min-width:0;min-height:0;align-self:start;touch-action:manipulation}.pw-main{grid-area:main;min-width:0;min-height:0;position:relative}.pw-hud{grid-area:hud;min-width:0;min-height:0;touch-action:manipulation}.pw-area{position:absolute;inset:0;touch-action:none}.pw-boardbox{position:absolute}.pw-shake{position:absolute;top:0;will-change:transform}.pw-cv{display:block;touch-action:none;filter:drop-shadow(0 10px 18px rgba(0,0,0,.5))}.pw-col{position:absolute;top:0;bottom:0;width:var(--col);background-repeat:repeat-y;background-size:100% calc(var(--col) * 160 / 60);box-shadow:inset 0 0 0 1px #28140480,0 6px 14px #0006;border-radius:3px}.pw-col--l{left:0}.pw-col--r{right:0}.pw-col:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.18),transparent 30%,transparent 70%,rgba(0,0,0,.3))}.pw-hold{position:absolute;width:64px;height:64px;margin:-32px 0 0 -32px;pointer-events:none;z-index:2}.pw-hold[hidden]{display:none}.pw-hold svg{width:100%;height:100%}.pw-hold__bg{fill:#0a081e59;stroke:#f6e7c04d;stroke-width:4}.pw-hold__arc{fill:none;stroke:var(--eg-gold-hi);stroke-width:4;stroke-linecap:round;stroke-dasharray:119.4;stroke-dashoffset:119.4;transform:rotate(-90deg);transform-origin:24px 24px}.pw-hold.is-run .pw-hold__arc{animation:pw-hold .64s linear forwards}.pw-hold.is-done .pw-hold__arc{animation:none;stroke-dashoffset:0;stroke:#fff}.pw-hold.is-done{animation:pw-pulse .3s ease}@keyframes pw-hold{to{stroke-dashoffset:0}}@keyframes pw-pulse{50%{transform:scale(1.18)}}.pw-nm,.pw-toast{position:absolute;left:50%;z-index:3;max-width:90%;padding:6px 14px;border-radius:999px;text-align:center;pointer-events:none;font-weight:700;font-size:.86rem;letter-spacing:.02em;transform:translate(-50%)}.pw-nm{top:4px;color:#fff;background:#4e525cf0;border:1px solid rgba(255,255,255,.35);box-shadow:0 6px 16px #00000059}.pw-toast{top:40px;color:var(--eg-ink);background:var(--eg-gold);border:1px solid #7A5410;box-shadow:0 6px 16px #00000059}.pw-nm[hidden],.pw-toast[hidden]{display:none}.pw-nm.is-in,.pw-toast.is-in{animation:pw-pop-in .26s cubic-bezier(.2,.9,.3,1.2) both}.pw-nm.is-out{animation:pw-pop-out .26s ease both}@keyframes pw-pop-in{0%{opacity:0;transform:translate(-50%,-10px) scale(.92)}to{opacity:1;transform:translate(-50%) scale(1)}}@keyframes pw-pop-out{to{opacity:0;transform:translate(-50%,-8px) scale(.96)}}.pw-floats{position:absolute;inset:0;pointer-events:none;z-index:2}.pw-float{position:absolute;left:0;top:0;font-family:var(--eg-display);font-weight:700;font-size:1.25rem;white-space:nowrap;color:var(--eg-gold-hi);text-shadow:0 2px 6px rgba(0,0,0,.7),0 0 14px rgba(242,184,58,.6);animation:pw-float 1s ease-out forwards}.pw-float.is-fit{font-size:1rem;color:#fff}.pw-float.is-ra,.pw-float.is-ra-title{font-size:1.7rem;color:#fff;text-shadow:0 0 22px rgba(255,224,130,.95),0 2px 6px rgba(0,0,0,.7)}.pw-float.is-level{font-size:1.8rem;letter-spacing:.08em;text-transform:uppercase}@keyframes pw-float{0%{opacity:0;translate:0 8px;scale:.85}18%{opacity:1;scale:1.08}to{opacity:0;translate:0 -52px;scale:1}}.pw-fx{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:2}.pw-flash{position:absolute;inset:0;pointer-events:none;z-index:3;opacity:0}.pw-flash.is-ra{background:radial-gradient(circle at 50% 40%,rgba(255,250,220,.95),rgba(255,224,130,.5) 45%,transparent 75%);animation:pw-flash .7s ease-out}.pw-flash.is-bomb{box-shadow:inset 0 0 90px #ff8c28bf;animation:pw-flash .45s ease-out}@keyframes pw-flash{0%{opacity:0}18%{opacity:1}to{opacity:0}}.pw-panel{position:relative;padding:8px 9px 9px;border-radius:16px;color:var(--eg-ink);background:linear-gradient(180deg,var(--eg-papyrus) 0%,var(--eg-papyrus-2) 100%);border:2px solid var(--eg-oldgold);box-shadow:0 0 0 2px #17123fd9,0 10px 24px #00000073,inset 0 0 0 1px #ffffff73,inset 0 -10px 18px #8b62242e}.pw-panel:before,.pw-panel:after{content:"";position:absolute;left:12px;right:12px;height:3px;border-radius:2px;background:linear-gradient(90deg,transparent,var(--eg-oldgold),transparent);opacity:.7}.pw-panel:before{top:3px}.pw-panel:after{bottom:3px}.pw-q__body{transform-origin:50% 0;will-change:transform}.pw-q__head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:7px}.pw-cartouche{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;align-items:center;padding:4px 12px 5px;border-radius:999px;background:#fffceebf;border:2px solid var(--eg-ink);box-shadow:0 0 0 2px var(--eg-oldgold),inset 0 -3px #8b622433}.pw-q__word{max-width:100%;font-family:var(--eg-display);font-weight:700;font-size:clamp(1.2rem,4.8vw,1.7rem);line-height:1.1;color:var(--eg-ink);overflow-wrap:anywhere;text-align:center}.pw-q__pos{font-size:.72rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--eg-ink-soft)}.pw-qring{flex:none;width:38px;height:38px}.pw-qring svg{width:100%;height:100%;transform:rotate(-90deg)}.pw-qring__bg{fill:#fffcee99;stroke:#2b1a0c40;stroke-width:4.5}.pw-qring__arc{fill:none;stroke:var(--eg-lapis);stroke-width:4.5;stroke-linecap:round;stroke-dasharray:100.5;stroke-dashoffset:0}.pw-qring__arc.is-low{stroke:var(--eg-bad)}.pw-q__opts{display:grid;gap:6px}.pw[data-orient=port] .pw-q__opts{grid-template-columns:repeat(3,minmax(0,1fr))}.pw-opt{position:relative;display:flex;align-items:center;justify-content:center;gap:6px;min-height:48px;padding:4px 8px;border-radius:14px;cursor:pointer;text-align:center;font-family:inherit;font-weight:700;font-size:.92rem;line-height:1.15;color:var(--eg-sand);border:2px solid var(--eg-gold);background:linear-gradient(180deg,var(--eg-lapis-hi) 0%,var(--eg-lapis) 100%);box-shadow:0 3px #0a103ccc,inset 0 1px #ffffff4d;touch-action:manipulation;transition:transform .12s ease,background-color .15s ease,opacity .2s ease}.pw-opt:active{transform:translateY(2px);box-shadow:0 1px #0a103ccc,inset 0 1px #ffffff4d}.pw-opt__k{flex:none;display:grid;place-items:center;width:20px;height:20px;border-radius:50%;font-size:.72rem;font-weight:800;color:var(--eg-ink);background:var(--eg-gold)}.pw-opt__t{min-width:0;overflow-wrap:anywhere}.pw[data-orient=port] .pw-opt{flex-direction:column;gap:2px;padding:2px 4px;min-height:44px}.pw[data-orient=port] .pw-panel{padding:6px 8px 7px}.pw[data-orient=port] .pw-q__head{margin-bottom:4px}.pw[data-orient=port] .pw-cartouche{padding:2px 10px 3px}.pw[data-orient=port] .pw-qring{width:34px;height:34px}.pw[data-orient=port] .pw-opt__k{position:absolute;left:4px;top:4px;width:16px;height:16px;font-size:.62rem}.pw-opt[aria-disabled=true]{cursor:default}.pw-opt.is-ok{background:var(--eg-ok);color:#fff;border-color:#a7f3c0;animation:pw-glow .5s ease}.pw-opt.is-bad{background:var(--eg-bad);color:#fff;border-color:#ffb4a8;animation:pw-nope .4s ease}.pw-opt.is-good{background:var(--eg-ok);color:#fff;border-color:#a7f3c0}.pw-opt.is-dim{opacity:.55}.pw-opt.is-ok .pw-opt__k,.pw-opt.is-bad .pw-opt__k,.pw-opt.is-good .pw-opt__k{background:#fff}@keyframes pw-glow{0%{transform:scale(1);box-shadow:0 0 #ffe082e6}50%{transform:scale(1.06);box-shadow:0 0 0 10px #ffe08200}to{transform:scale(1)}}@keyframes pw-nope{20%,60%{transform:translate(-4px)}40%,80%{transform:translate(4px)}}.pw-hud{display:grid;gap:6px;padding:8px 10px;border-radius:16px;color:var(--eg-sand);align-content:start;background:linear-gradient(180deg,#221a57e6,#17123feb);border:1px solid rgba(242,184,58,.5);box-shadow:0 8px 20px #0006}.pw-stats{display:flex;gap:12px;align-items:flex-end}.pw-stat{display:grid}.pw-stat__l{font-size:.66rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--eg-sand-dim)}.pw-stat b{font-family:var(--eg-display);font-weight:700;font-size:1.15rem;line-height:1.1;color:#fff;font-variant-numeric:tabular-nums}.pw-stat--score b{font-size:1.5rem;color:var(--eg-gold-hi);display:inline-block;transform-origin:0 100%}.pw-stat--score b.is-bump{animation:pw-bump .25s ease}@keyframes pw-bump{40%{transform:scale(1.22)}}.pw-next{min-width:0}.pw-next__l{display:block;margin-bottom:2px;font-size:.66rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--eg-sand-dim)}.pw-next__list{list-style:none;margin:0;padding:0;display:grid;gap:4px}.pw-next__list li{display:flex;flex-direction:column;min-width:0;padding:3px 8px;border-radius:8px;background:#ffffff12;border-left:3px solid var(--eg-gold)}.pw-next__w{font-family:var(--eg-display);font-size:.92rem;letter-spacing:.06em;color:#fff;overflow-wrap:anywhere}.pw-next__es{font-size:.74rem;font-style:normal;color:var(--eg-sand-dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pw-next__blk{flex-direction:row!important;align-items:center;gap:8px}.pw-mini{display:inline-grid;grid-template-columns:repeat(var(--mw),10px);grid-template-rows:repeat(var(--mh),10px);gap:1px;flex:none}.pw-mini i{border-radius:2px;background:linear-gradient(135deg,var(--ga),var(--gb));box-shadow:inset 0 1px #ffffff73,inset 0 -1px #00000059}.pw-tools{display:flex;align-items:center;gap:8px}.pw-rise{position:relative;flex:none;width:44px;height:44px;display:grid;place-items:center}.pw-rise svg{width:100%;height:100%;transform:rotate(-90deg)}.pw-rise__bg{fill:#ffffff0d;stroke:#f6e7c040;stroke-width:4}.pw-rise__arc{fill:none;stroke:var(--eg-gold);stroke-width:4;stroke-linecap:round;stroke-dasharray:88;stroke-dashoffset:0}.pw-rise__ic{position:absolute;width:12px;height:12px;border-left:3px solid var(--eg-sand);border-top:3px solid var(--eg-sand);transform:translateY(2px) rotate(45deg);border-radius:2px}.pw-rise.is-warn .pw-rise__arc{stroke:var(--eg-terra)}.pw-rise.is-warn{animation:pw-pulse .3s ease infinite alternate}.pw-iconbtn{position:relative;flex:none;display:grid;place-items:center;width:44px;height:44px;padding:0;border-radius:50%;cursor:pointer;color:#fff;border:1px solid rgba(246,231,192,.4);background:#ffffff14;transition:background-color .15s ease,transform .15s ease}.pw-iconbtn svg,.pw-iconbtn .ic{width:20px;height:20px}.pw-pause svg{fill:currentColor}.pw-iconbtn:hover{background:#ffffff2e}.pw-iconbtn:active{transform:scale(.92)}.pw-mute__slash{position:absolute;width:24px;height:2.5px;border-radius:2px;background:#ff7a7a;transform:rotate(-45deg);opacity:0;transition:opacity .15s ease}.pw-mute.is-muted .pw-mute__slash{opacity:1}.pw-mute.is-muted .ic{opacity:.55}.pw:not([data-mode=playing]) .pw-pause{visibility:hidden}.pw[data-orient=land] .pw-hud{align-self:stretch;grid-template-rows:auto 1fr auto}.pw[data-orient=land] .pw-stats{flex-wrap:wrap;row-gap:4px}.pw[data-orient=land] .pw-stat--score{flex-basis:100%}.pw[data-orient=land] .pw-tools{justify-content:space-between}.pw[data-orient=land] .pw-next{align-self:start}.pw[data-orient=port] .pw-hud{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"stats tools" "next next";align-items:center;gap:1px 8px;padding:2px 8px 3px;border-radius:12px}.pw[data-orient=port] .pw-stats{grid-area:stats;gap:14px}.pw[data-orient=port] .pw-tools{grid-area:tools}.pw[data-orient=port] .pw-next{grid-area:next;display:flex;align-items:center;gap:8px}.pw[data-orient=port] .pw-next__l{margin:0;flex:none}.pw[data-orient=port] .pw-next__list{grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);flex:1 1 auto;gap:6px;min-width:0}.pw[data-orient=port] .pw-next__list li{flex-direction:row;align-items:baseline;gap:6px;padding:2px 6px}.pw[data-orient=port] .pw-next__w{flex:none;font-size:.78rem}.pw[data-orient=port] .pw-next__es{font-size:.68rem;min-width:0}.pw[data-orient=port] .pw-stat b{font-size:1rem}.pw[data-orient=port] .pw-stat--score b{font-size:1.2rem}.pw[data-orient=port] .pw-stat__l{font-size:.58rem}.pw[data-orient=port] .pw-rise,.pw[data-orient=port] .pw-iconbtn{width:40px;height:40px}.pw[data-orient=port] .pw-iconbtn{width:44px;height:44px}@media(max-width:380px){.pw[data-orient=port] .pw-next__l{display:none}}@media(max-height:460px)and (orientation:landscape){.pw[data-orient=land] .pw-hud{padding:5px 8px;gap:4px}.pw[data-orient=land] .pw-stat--score b{font-size:1.25rem}.pw[data-orient=land] .pw-next__es{font-size:.68rem}.pw[data-orient=land] .pw-panel{padding:6px}.pw[data-orient=land] .pw-q__head{margin-bottom:4px}.pw[data-orient=land] .pw-qring{width:30px;height:30px}.pw[data-orient=land] .pw-opt{min-height:44px}}.pw:not([data-mode=playing]):not([data-mode=over]) .pw-boardbox,.pw:not([data-mode=playing]):not([data-mode=over]) .pw-q__body{filter:blur(7px)}.pw .pw-boardbox,.pw .pw-q__body{transition:filter .2s ease}.pw-overlay{position:absolute;inset:0;z-index:5;display:grid;place-items:center;padding:14px;background:#08061c99}.pw-overlay[hidden]{display:none}.pw-overlay.is-count{background:#08061c40}.pw-overlay.is-count .pw-card{background:none;border:0;box-shadow:none;animation:none}.pw-card{width:min(450px,100%);max-height:calc(100% - 8px);overflow-y:auto;box-sizing:border-box;padding:22px 20px 20px;text-align:center;color:var(--eg-sand);border-radius:22px;background:linear-gradient(180deg,#2a2068,#17123f);border:2px solid var(--eg-gold);box-shadow:0 0 0 3px #0b0a26e6,0 24px 60px #0000008c,inset 0 1px #ffffff1f}@media(prefers-reduced-motion:no-preference){.pw-card{animation:pw-card-in .35s cubic-bezier(.2,.9,.3,1.2)}}@keyframes pw-card-in{0%{opacity:0;transform:translateY(14px) scale(.96)}to{opacity:1;transform:none}}.pw-card__kicker{margin:0 0 4px;font-size:.78rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--eg-gold-hi)}.pw-card__title{margin:0 0 12px;font-family:var(--eg-display);font-weight:700;font-size:clamp(1.7rem,7vw,2.3rem);line-height:1.05;color:#fff;letter-spacing:.02em}.pw-card__text{margin:0 0 14px;color:var(--eg-sand-dim)}.pw-card__text--over{margin-bottom:10px}.pw-card__hint{margin:0 0 10px;color:var(--eg-sand);font-size:.95rem}.pw-card__hint--ctl{color:var(--eg-sand-dim);font-size:.86rem}.pw-card__stats{display:flex;justify-content:center;flex-wrap:wrap;gap:6px 16px;margin:0 0 12px;color:var(--eg-sand-dim)}.pw-card__stats strong{color:#fff;font-family:var(--eg-display);font-size:1.2rem}.pw-card__badge{display:inline-block;margin:0 0 12px;padding:4px 14px;border-radius:999px;font-family:var(--eg-display);font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--eg-ink);background:linear-gradient(135deg,#ffe08a,#f2b83a)}.pw-card__actions{display:grid;gap:10px;margin-top:16px}.pw-btn{min-height:48px;padding:0 18px;border-radius:14px;cursor:pointer;font-family:var(--eg-display);font-weight:700;font-size:1rem;letter-spacing:.06em;border:1px solid rgba(246,231,192,.4);background:#ffffff14;color:#fff;transition:transform .15s ease,background-color .15s ease}.pw-btn:hover{background:#ffffff29}.pw-btn:active{transform:scale(.97)}.pw-btn--primary{border:0;color:var(--eg-ink);background:linear-gradient(135deg,#ffe08a,#f2b83a 55%,#e08a2e);box-shadow:0 8px 22px #f2b83a59;text-transform:uppercase}.pw-btn--primary:hover{background:linear-gradient(135deg,#ffe9a8,#f7c656 55%,#e89a44)}.pw-btn--ghost{background:transparent}.pw-prefs{display:flex;justify-content:center;flex-wrap:wrap;gap:8px;margin:6px 0 0}.pw-chip{min-height:44px;padding:0 14px;border-radius:999px;cursor:pointer;font:inherit;font-size:.88rem;color:var(--eg-sand);border:1px solid rgba(246,231,192,.45);background:#ffffff0f}.pw-chip strong{color:var(--eg-gold-hi)}.pw-chip:hover{background:#ffffff24}.pw-vol{display:flex;align-items:center;justify-content:center;gap:12px;margin:0 0 6px;color:var(--eg-sand-dim);font-weight:600}.pw-vol input{width:min(220px,60%);height:44px;accent-color:var(--eg-gold);cursor:pointer}.pw-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:4px 0 0}.pw-summary div{padding:8px 6px;border-radius:12px;background:#ffffff0f;border:1px solid rgba(246,231,192,.16)}.pw-summary dt{font-size:.66rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--eg-sand-dim)}.pw-summary dd{margin:2px 0 0;font-family:var(--eg-display);font-weight:700;font-size:1.2rem;color:#fff}@media(max-width:400px){.pw-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}.pw-overlay.is-review .pw-card{display:flex;flex-direction:column;width:min(520px,100%);overflow:hidden;overflow-y:auto}.pw-overlay.is-review .pw-card__actions{flex:none;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:12px}.pw-overlay.is-review .pw-card__actions .pw-btn{padding:0 10px}.pw-overlay.is-review .pw-summary{flex:none}.pw-review{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;margin-top:12px;text-align:left}.pw-review__head{flex:none;display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0 0 6px}.pw-review__title{margin:0;font-family:var(--eg-display);font-weight:700;font-size:1.05rem;letter-spacing:.04em;color:#fff}.pw-review__more{flex:none;min-height:44px;padding:0 14px;font-size:.84rem;letter-spacing:.02em}.pw-review__scroll{flex:1 1 auto;min-height:6.5rem;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding-right:4px;border-radius:12px;scrollbar-color:rgba(242,184,58,.6) transparent}.pw-review__list{list-style:none;margin:0;padding:0;display:grid;gap:8px}.pw-rev{padding:8px 11px 9px;border-radius:12px;background:#ffffff0f;border:1px solid rgba(246,231,192,.14);border-left:4px solid var(--eg-gold)}.pw-rev[hidden]{display:none}.pw-rev__row{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 8px;margin:0;font-size:.98rem;line-height:1.35}.pw-rev__word{font-family:var(--eg-display);color:#fff;letter-spacing:.03em}.pw-rev__arrow{color:var(--eg-sand-dim)}.pw-rev__es{color:#9be8b3;font-weight:700}.pw-rev__note{margin:3px 0 0;font-size:.86rem;line-height:1.4;color:var(--eg-sand-dim)}.pw-review__scroll:focus-visible{outline:3px solid var(--eg-gold-hi);outline-offset:2px}.pw-count{display:grid;justify-items:center;gap:6px}.pw-count__n{font-family:var(--eg-display);font-weight:700;font-size:clamp(5rem,26vw,9rem);line-height:1;color:#fff;text-shadow:0 0 30px rgba(242,184,58,.85),0 4px 0 rgba(0,0,0,.3)}.pw-count__n.is-tick{animation:pw-tick .5s ease}.pw-count__label{font-family:var(--eg-display);font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--eg-gold-hi)}@keyframes pw-tick{0%{transform:scale(1.4);opacity:.3}to{transform:scale(1);opacity:1}}.pw--no-audio .pw-mute,.pw--no-audio .pw-vol{display:none}@media(prefers-reduced-motion:reduce){.pw *,.pw-card{animation:none!important;transition-duration:.01ms!important}.pw-course.is-gone{transform:none}}
