:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--ink-50:#f5f5f5;--ink-100:#e6e6e6;--ink-200:#c9c9c9;--ink-300:#a8a8a8;--ink-400:#7a7a7a;--ink-500:#525252;--ink-600:#3d3d3d;--ink-700:#2b2b2b;--ink-800:#1f1f1f;--ink-900:#1a1a1a;--coral-50:#fef1eb;--coral-100:#fddccb;--coral-200:#fab89b;--coral-300:#f79169;--coral-400:#f47a4f;--coral-500:#f2733f;--coral-600:#db5f2e;--coral-700:#b54b22;--coral-800:#8a3818;--coral-900:#5e2510;--cream-50:#fcfaf4;--cream-100:#f8f4e9;--cream-200:#f5f1e8;--cream-300:#ece5d2;--cream-400:#dacfb0;--cream-500:#c2b687;--cream-600:#968b61;--cream-700:#6d6444;--cream-800:#44402b;--cream-900:#2a2719;--navy-50:#ebeef4;--navy-100:#d0d8e5;--navy-200:#9cabc6;--navy-300:#6a7fa5;--navy-400:#3d5688;--navy-500:#1b3a6b;--navy-600:#16315b;--navy-700:#112648;--navy-800:#0b1b33;--navy-900:#06101f;--bg:var(--cream-200);--bg-elevated:#fff;--bg-sunken:var(--cream-300);--bg-overlay:#1a1a1a80;--fg:var(--ink-900);--fg-muted:var(--ink-500);--fg-subtle:var(--ink-400);--fg-disabled:var(--ink-300);--fg-on-brand:#fff;--fg-on-dark:var(--cream-50);--border:#e5dfce;--border-strong:#c9c0a6;--border-focus:var(--coral-500);--brand:var(--coral-500);--brand-hover:var(--coral-600);--brand-active:var(--coral-700);--brand-soft:var(--coral-50);--brand-on:#fff;--accent:var(--navy-500);--accent-soft:var(--navy-50);--success:#2f7a45;--success-bg:#e8f2eb;--warning:#a56e1f;--warning-bg:#fbf1dc;--danger:#b53729;--danger-bg:#fcedea;--info:var(--navy-500);--info-bg:var(--navy-50);--shadow-xs:0 1px 2px #1a1a1a0a;--shadow-sm:0 1px 3px #1a1a1a0f, 0 1px 2px #1a1a1a0a;--shadow-md:0 4px 12px #1a1a1a0f, 0 1px 3px #1a1a1a0a;--shadow-lg:0 12px 28px #1a1a1a1a, 0 2px 6px #1a1a1a0a;--shadow-xl:0 24px 48px #1a1a1a1f, 0 4px 12px #1a1a1a0d;--shadow-2xl:0 40px 80px #1a1a1a2e, 0 8px 24px #1a1a1a14;--shadow-focus:0 0 0 3px #f2733f4d;--r-xs:4px;--r-sm:8px;--r-md:12px;--r-lg:16px;--r-xl:24px;--r-2xl:32px;--r-pill:999px;--space-0:0;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-7:1.75rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-14:3.5rem;--space-16:4rem;--space-20:5rem;--space-24:6rem;--dur-1:.12s;--dur-2:.2s;--dur-3:.32s;--dur-4:.48s;--dur-5:.64s;--ease-out:cubic-bezier(.2,.8,.2,1);--ease-spring:cubic-bezier(.34,1.56,.64,1);--ease-apple:cubic-bezier(.25,.46,.45,.94);--fs-xs:clamp(.72rem, .7rem + .1vw, .78rem);--fs-sm:clamp(.82rem, .8rem + .15vw, .88rem);--fs-base:clamp(.94rem, .92rem + .2vw, 1.02rem);--fs-md:clamp(1.05rem, 1rem + .4vw, 1.18rem);--fs-lg:clamp(1.18rem, 1.1rem + .6vw, 1.35rem);--fs-xl:clamp(1.35rem, 1.2rem + 1vw, 1.65rem);--fs-2xl:clamp(1.65rem, 1.4rem + 1.6vw, 2.1rem);--fs-3xl:clamp(2.1rem, 1.7rem + 2.4vw, 2.8rem);--fs-4xl:clamp(2.6rem, 1.9rem + 4vw, 3.8rem);--fs-5xl:clamp(3.2rem, 2rem + 6.5vw, 5.4rem);--lh-tight:1.15;--lh-snug:1.35;--lh-normal:1.55;--lh-loose:1.75;--tracking-tight:-.03em;--tracking-snug:-.015em;--tracking-normal:0;--tracking-wide:.06em;--z-base:0;--z-nav:40;--z-sticky:30;--z-overlay:50;--z-modal:60;--z-toast:70;--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--safe-left:env(safe-area-inset-left,0px);--safe-right:env(safe-area-inset-right,0px);--font-sans:var(--font-display), -apple-system, BlinkMacSystemFont, "Apple SD Gothic Neo", "Noto Sans KR", "Segoe UI", sans-serif;--logo-frame:#3d2418;--logo-screen:#fff;--logo-ink:#1a1a1a;--logo-coral:var(--coral-500);--c-bg:var(--bg);--c-surface:var(--bg-elevated);--c-surface-2:var(--cream-100);--c-surface-3:var(--cream-300);--c-overlay:#1a1a1a0a;--c-text:var(--fg);--c-text-2:var(--ink-700);--c-text-muted:var(--fg-muted);--c-text-soft:var(--ink-400);--c-text-faint:var(--ink-300);--c-border:var(--border);--c-border-2:var(--border-strong);--c-border-strong:var(--ink-300);--c-accent:var(--brand);--c-accent-hover:var(--brand-hover);--c-accent-active:var(--brand-active);--c-accent-soft:var(--brand-soft);--c-accent-soft-2:var(--coral-100);--c-accent-text:var(--coral-800);--c-success:var(--success);--c-success-bg:var(--success-bg);--c-warning:var(--warning);--c-warning-bg:var(--warning-bg);--c-error:var(--danger);--c-error-bg:var(--danger-bg);--c-info:var(--info);--c-info-bg:var(--info-bg);--c-shadow-xs:var(--shadow-xs);--c-shadow-sm:var(--shadow-sm);--c-shadow-md:var(--shadow-md);--c-shadow-lg:var(--shadow-lg);--c-shadow-xl:var(--shadow-xl);--c-radius-xs:var(--r-xs);--c-radius-sm:var(--r-sm);--c-radius-md:var(--r-md);--c-radius-lg:var(--r-lg);--c-radius-xl:var(--r-xl);--c-radius-pill:var(--r-pill);--c-space-1:var(--space-1);--c-space-2:var(--space-2);--c-space-3:var(--space-3);--c-space-4:var(--space-4);--c-space-5:var(--space-5);--c-space-6:var(--space-6);--c-space-8:var(--space-8);--c-space-10:var(--space-10);--c-space-12:var(--space-12);--c-font-sans:var(--font-sans);--c-font-serif:var(--font-sans);--c-font-word:var(--font-sans);--c-font-mono:ui-monospace, "SF Mono", Menlo, Monaco, "Cascadia Mono", monospace;--background:var(--bg);--foreground:var(--fg);--primary:var(--brand);--primary-hover:var(--brand-hover);--secondary:var(--brand-active);--accent-legacy:var(--brand);--glass-bg:var(--bg-elevated);--glass-border:var(--border);--card-bg:var(--bg-elevated);--pdf-red:var(--brand);--pdf-text:var(--fg);--pdf-text-light:var(--fg-muted)}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--logo-frame:var(--cream-400);--logo-screen:#fff;--logo-ink:#1a1a1a;--logo-coral:var(--coral-500);--bg:var(--ink-900);--bg-elevated:var(--ink-800);--bg-sunken:#121212;--bg-overlay:#000000a6;--fg:var(--cream-50);--fg-muted:var(--cream-400);--fg-subtle:var(--ink-300);--fg-disabled:var(--ink-500);--fg-on-brand:#fff;--border:#2e2e2e;--border-strong:#444;--brand:var(--coral-400);--brand-hover:var(--coral-300);--brand-active:var(--coral-500);--brand-soft:#f2733f1f;--accent:var(--navy-300);--accent-soft:#9aaac61a;--success:#58c57a;--success-bg:#58c57a1a;--warning:#e0b257;--warning-bg:#e0b2571a;--danger:#e66a5e;--danger-bg:#e66a5e1a;--info:var(--navy-300);--info-bg:#9aaac61a;--shadow-xs:0 1px 2px #0006;--shadow-sm:0 1px 3px #00000080, 0 1px 2px #0000004d;--shadow-md:0 4px 12px #0000008c, 0 1px 3px #0000004d;--shadow-lg:0 12px 28px #0009, 0 2px 6px #0000004d;--shadow-xl:0 24px 48px #000000a6, 0 4px 12px #00000059;--shadow-2xl:0 40px 80px #000000b3, 0 8px 24px #0006;--c-bg:var(--bg);--c-surface:var(--bg-elevated);--c-surface-2:#232323;--c-surface-3:#2a2a2a;--c-text:var(--fg);--c-text-2:var(--cream-100);--c-text-muted:var(--fg-muted);--c-text-soft:var(--ink-300);--c-text-faint:var(--ink-400);--c-border:var(--border);--c-border-2:var(--border-strong);--c-accent:var(--brand);--c-accent-hover:var(--brand-hover);--c-accent-active:var(--brand-active);--c-accent-soft:var(--brand-soft);--c-success:var(--success);--c-success-bg:var(--success-bg);--c-warning:var(--warning);--c-warning-bg:var(--warning-bg);--c-error:var(--danger);--c-error-bg:var(--danger-bg);--c-info:var(--info);--c-info-bg:var(--info-bg)}@media (prefers-color-scheme:dark){:root:not([data-theme]){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--logo-frame:var(--cream-400);--logo-screen:#fff;--logo-ink:#1a1a1a;--logo-coral:var(--coral-500);--bg:var(--ink-900);--bg-elevated:var(--ink-800);--bg-sunken:#121212;--bg-overlay:#000000a6;--fg:var(--cream-50);--fg-muted:var(--cream-400);--fg-subtle:var(--ink-300);--border:#2e2e2e;--border-strong:#444;--brand:var(--coral-400);--brand-hover:var(--coral-300);--brand-soft:#f2733f1f;--shadow-xs:0 1px 2px #0006;--shadow-sm:0 1px 3px #00000080, 0 1px 2px #0000004d;--shadow-md:0 4px 12px #0000008c, 0 1px 3px #0000004d;--shadow-lg:0 12px 28px #0009, 0 2px 6px #0000004d;--shadow-xl:0 24px 48px #000000a6, 0 4px 12px #00000059;--shadow-2xl:0 40px 80px #000000b3, 0 8px 24px #0006;--c-bg:var(--bg);--c-surface:var(--bg-elevated);--c-surface-2:#232323;--c-surface-3:#2a2a2a;--c-text:var(--fg);--c-text-2:var(--cream-100);--c-text-muted:var(--fg-muted);--c-border:var(--border);--c-border-2:var(--border-strong);--c-accent:var(--brand);--c-accent-hover:var(--brand-hover);--c-accent-soft:var(--brand-soft)}}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent;margin:0;padding:0}html,body{font-family:var(--font-sans);background:var(--bg);color:var(--fg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-moz-text-size-adjust:100%;text-size-adjust:100%;min-height:100dvh;transition:background var(--dur-3) var(--ease-out), color var(--dur-3) var(--ease-out);overflow-x:hidden}body{font-size:var(--fs-base);line-height:var(--lh-normal);letter-spacing:var(--tracking-snug)}@media (hover:hover){a:hover,button:hover{cursor:pointer}}:focus-visible{outline:none}button:focus-visible,a:focus-visible{box-shadow:var(--shadow-focus);border-radius:var(--r-sm)}input:focus-visible,select:focus-visible,textarea:focus-visible{box-shadow:none;outline:none}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.snt-container{width:100%;max-width:1200px;padding-left:var(--space-5);padding-right:var(--space-5);margin:0 auto}@media (min-width:640px){.snt-container{padding-left:var(--space-8);padding-right:var(--space-8)}}@media (min-width:1024px){.snt-container{padding-left:var(--space-10);padding-right:var(--space-10)}}.snt-btn{justify-content:center;align-items:center;gap:var(--space-2);font-family:var(--font-sans);letter-spacing:var(--tracking-snug);border-radius:var(--r-pill);cursor:pointer;transition:background var(--dur-2) var(--ease-out), border-color var(--dur-2) var(--ease-out), color var(--dur-2) var(--ease-out), box-shadow var(--dur-2) var(--ease-out), transform 80ms var(--ease-out);white-space:nowrap;-webkit-user-select:none;user-select:none;border:1.5px solid #0000;font-weight:600;line-height:1;text-decoration:none;display:inline-flex}.snt-btn:active:not(:disabled){transform:scale(.97)}.snt-btn:disabled{opacity:.45;cursor:not-allowed}.snt-btn[data-loading=true]{cursor:progress}.snt-btn>svg{flex:none}.snt-btn--sm{height:36px;padding:0 14px;font-size:.82rem}.snt-btn--md{height:48px;padding:0 20px;font-size:.94rem}.snt-btn--lg{height:56px;padding:0 28px;font-size:1.02rem}.snt-btn--primary{background:var(--brand);color:var(--brand-on);border-color:var(--brand);box-shadow:var(--shadow-sm)}.snt-btn--primary:hover:not(:disabled){background:var(--brand-hover);border-color:var(--brand-hover);box-shadow:var(--shadow-md)}.snt-btn--secondary{background:var(--bg-elevated);color:var(--fg);border-color:var(--border-strong)}.snt-btn--secondary:hover:not(:disabled){background:var(--bg-sunken);border-color:var(--fg)}.snt-btn--ghost{color:var(--fg);background:0 0;border-color:#0000}.snt-btn--ghost:hover:not(:disabled){background:var(--bg-sunken)}.snt-btn--link{color:var(--brand);text-underline-offset:4px;background:0 0;border-color:#0000;height:auto;padding:0;text-decoration:underline;text-decoration-thickness:1.5px}.snt-btn--link:hover:not(:disabled){color:var(--brand-hover);text-decoration-thickness:2px}.snt-btn--danger{background:var(--danger);color:#fff;border-color:var(--danger)}.snt-btn--danger:hover:not(:disabled){filter:brightness(1.05)}.snt-btn--full{width:100%}.snt-iconbtn{color:var(--fg);border-radius:var(--r-pill);cursor:pointer;transition:background var(--dur-2) var(--ease-out), color var(--dur-2) var(--ease-out), transform 80ms var(--ease-out);background:0 0;border:1.5px solid #0000;justify-content:center;align-items:center;display:inline-flex}.snt-iconbtn:hover:not(:disabled){background:var(--bg-sunken)}.snt-iconbtn:active:not(:disabled){transform:scale(.92)}.snt-iconbtn--sm{width:36px;height:36px}.snt-iconbtn--md{width:44px;height:44px}.snt-iconbtn--lg{width:52px;height:52px}.snt-iconbtn--outline{border-color:var(--border-strong)}.snt-iconbtn--solid{background:var(--bg-elevated);border-color:var(--border);box-shadow:var(--shadow-xs)}.snt-card{background:var(--bg-elevated);border-radius:var(--r-xl);padding:var(--space-6);transition:transform var(--dur-2) var(--ease-out), box-shadow var(--dur-2) var(--ease-out), border-color var(--dur-2) var(--ease-out)}.snt-card--outlined{border:1px solid var(--border)}.snt-card--elevated{box-shadow:var(--shadow-md)}.snt-card--interactive{cursor:pointer;border:1px solid var(--border);box-shadow:var(--shadow-sm)}.snt-card--interactive:hover{box-shadow:var(--shadow-lg);border-color:var(--coral-200);transform:translateY(-2px)}.snt-card--interactive:active{transform:translateY(0)}.snt-card__header{margin-bottom:var(--space-4)}.snt-card__body{gap:var(--space-3);flex-direction:column;display:flex}.snt-card__footer{margin-top:var(--space-5);padding-top:var(--space-4);border-top:1px solid var(--border)}.snt-chip{align-items:center;gap:var(--space-2);border-radius:var(--r-pill);height:28px;font-size:var(--fs-xs);letter-spacing:0;white-space:nowrap;border:1px solid #0000;padding:0 12px;font-weight:600;line-height:1;display:inline-flex}.snt-chip--solid{background:var(--brand);color:var(--brand-on)}.snt-chip--soft{background:var(--brand-soft);color:var(--coral-700)}.snt-chip--outline{border-color:var(--border-strong);color:var(--fg);background:0 0}.snt-chip--neutral{background:var(--bg-sunken);color:var(--fg-muted)}.snt-chip--success{background:var(--success-bg);color:var(--success)}.snt-chip--warning{background:var(--warning-bg);color:var(--warning)}.snt-chip--danger{background:var(--danger-bg);color:var(--danger)}.snt-chip--navy{background:var(--accent-soft);color:var(--navy-500)}:root[data-theme=dark] .snt-chip--soft{color:var(--coral-200);background:#f2733f2e}:root[data-theme=dark] .snt-chip--navy{color:var(--navy-200);background:#9aaac62e}:root[data-theme=dark] .snt-chip--success{color:#7cdb95;background:#7cdb9524}:root[data-theme=dark] .snt-chip--warning{color:#e8c57a;background:#e8c57a24}:root[data-theme=dark] .snt-chip--danger{color:#f08577;background:#f0857724}@media (prefers-color-scheme:dark){:root:not([data-theme]) .snt-chip--soft{color:var(--coral-200);background:#f2733f2e}:root:not([data-theme]) .snt-chip--navy{color:var(--navy-200);background:#9aaac62e}:root:not([data-theme]) .snt-chip--success{color:#7cdb95;background:#7cdb9524}:root:not([data-theme]) .snt-chip--warning{color:#e8c57a;background:#e8c57a24}:root:not([data-theme]) .snt-chip--danger{color:#f08577;background:#f0857724}}.snt-badge{border-radius:var(--r-pill);background:var(--brand);min-width:20px;height:20px;color:var(--brand-on);justify-content:center;align-items:center;padding:0 6px;font-size:.68rem;font-weight:700;display:inline-flex}.snt-badge--dot{width:8px;min-width:8px;height:8px;padding:0}.snt-eyebrow{font-size:var(--fs-xs);letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--fg-muted);font-weight:600;display:inline-block}.snt-display{letter-spacing:-.04em;font-weight:700;line-height:1.05}.snt-h1{font-size:var(--fs-4xl);letter-spacing:-.035em;font-weight:700;line-height:1.1}.snt-h2{font-size:var(--fs-3xl);letter-spacing:-.03em;font-weight:700;line-height:1.15}.snt-h3{font-size:var(--fs-2xl);letter-spacing:-.02em;font-weight:700;line-height:1.2}.snt-lead{font-size:var(--fs-md);line-height:var(--lh-snug);color:var(--fg-muted)}.snt-stack{flex-direction:column;display:flex}.snt-stack-1{gap:var(--space-1)}.snt-stack-2{gap:var(--space-2)}.snt-stack-3{gap:var(--space-3)}.snt-stack-4{gap:var(--space-4)}.snt-stack-5{gap:var(--space-5)}.snt-stack-6{gap:var(--space-6)}.snt-stack-8{gap:var(--space-8)}.snt-row{align-items:center;display:flex}.snt-row-2{gap:var(--space-2)}.snt-row-3{gap:var(--space-3)}.snt-row-4{gap:var(--space-4)}.snt-row-6{gap:var(--space-6)}.snt-spacer{flex:1}.snt-sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.snt-app-shell{background:radial-gradient(ellipse 900px 500px at 100% -10%, #1b3a6b0f, transparent 60%), var(--bg);flex-direction:column;min-height:100dvh;display:flex}@media (prefers-color-scheme:dark){:root:not([data-theme]) .snt-app-shell{background:radial-gradient(ellipse 900px 500px at 100% -10%, #9aaac60d, transparent 60%), var(--bg)}}:root[data-theme=dark] .snt-app-shell{background:radial-gradient(ellipse 900px 500px at 100% -10%, #9aaac60d, transparent 60%), var(--bg)}.snt-app-header{z-index:var(--z-nav);padding-top:var(--safe-top);background:color-mix(in srgb, var(--bg) 78%, transparent);-webkit-backdrop-filter:saturate(180%)blur(14px);border-bottom:1px solid color-mix(in srgb, var(--border) 60%, transparent);position:sticky;top:0}.snt-app-header__inner{justify-content:space-between;align-items:center;gap:var(--space-3);height:60px;display:flex}@media (min-width:1024px){.snt-app-header__inner{height:68px}}.snt-app-header__brand{align-items:center;gap:var(--space-3);color:inherit;flex:none;text-decoration:none;display:flex}.snt-app-header__wordmark{white-space:nowrap;flex-direction:column;font-weight:700;line-height:1.1;display:none}.snt-app-header__wordmark span{font-size:.88rem}.snt-app-header__wordmark em{color:var(--brand);font-style:italic;font-weight:700}.snt-app-header__wordmark small{letter-spacing:3px;color:var(--fg-muted);margin-top:2px;font-size:.56rem;font-weight:500}@media (min-width:640px){.snt-app-header__wordmark{display:flex}}.snt-app-header__right{align-items:center;gap:var(--space-2);display:flex;position:relative}.snt-app-header__user{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--r-pill);font:inherit;color:var(--fg);cursor:pointer;transition:background var(--dur-2) var(--ease-out), border-color var(--dur-2) var(--ease-out);align-items:center;gap:6px;padding:4px 10px 4px 4px;font-size:.82rem;font-weight:600;display:inline-flex}.snt-app-header__user:hover{background:var(--bg-sunken);border-color:var(--border-strong)}.snt-app-header__avatar{background:var(--brand-soft);width:28px;height:28px;color:var(--brand);border-radius:50%;justify-content:center;align-items:center;display:inline-flex}.snt-app-header__user-name{display:none}@media (min-width:640px){.snt-app-header__user-name{display:inline}}.snt-app-header__menu{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--r-md);min-width:200px;box-shadow:var(--shadow-lg);z-index:var(--z-overlay);animation:snt-fade-in var(--dur-2) var(--ease-out) both;flex-direction:column;gap:2px;padding:6px;display:flex;position:absolute;top:calc(100% + 8px);right:0}.snt-app-header__menu-item{font:inherit;color:var(--fg);border-radius:var(--r-sm);cursor:pointer;text-align:left;background:0 0;border:0;align-items:center;gap:10px;padding:10px 12px;font-size:.9rem;font-weight:500;text-decoration:none;display:inline-flex}.snt-app-header__menu-item:hover{background:var(--bg-sunken)}.snt-app-header__menu-item--danger{color:var(--danger)}.snt-app-header__menu-item--danger:hover{background:var(--danger-bg)}.snt-app-main{padding-bottom:calc(var(--space-8) + 76px + var(--safe-bottom));flex:1}@media (min-width:1024px){.snt-app-main{padding-bottom:var(--space-12)}}.snt-app-tabbar{z-index:var(--z-nav);padding:6px 4px calc(6px + var(--safe-bottom));background:color-mix(in srgb, var(--bg-elevated) 92%, transparent);-webkit-backdrop-filter:saturate(180%)blur(14px);border-top:1px solid var(--border);justify-content:space-around;align-items:stretch;display:flex;position:fixed;bottom:0;left:0;right:0}@media (min-width:1024px){.snt-app-tabbar{display:none}}.snt-app-tabbar__item{color:var(--fg-muted);transition:color var(--dur-2) var(--ease-out);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:2px;padding:6px 4px 4px;text-decoration:none;display:flex;position:relative}.snt-app-tabbar__icon{border-radius:var(--r-pill);width:44px;height:32px;transition:background var(--dur-2) var(--ease-out);justify-content:center;align-items:center;display:inline-flex}.snt-app-tabbar__label{letter-spacing:0;font-size:.66rem;font-weight:600}.snt-app-tabbar__item.is-active{color:var(--fg)}.snt-app-tabbar__item.is-active .snt-app-tabbar__icon{background:var(--brand-soft);color:var(--brand)}.snt-page-pad-top{padding-top:var(--space-6)}.snt-page-pad-bottom{padding-bottom:var(--space-8)}.snt-field{flex-direction:column;gap:6px;min-width:0;display:inline-flex}.snt-field--full{width:100%;display:flex}.snt-field__label{font-size:var(--fs-sm);letter-spacing:var(--tracking-snug);color:var(--fg);font-weight:600}.snt-field__hint{font-size:var(--fs-xs);color:var(--fg-muted)}.snt-field__error{font-size:var(--fs-xs);color:var(--danger);font-weight:600}.snt-input{background:var(--bg-elevated);border:1.5px solid var(--border);border-radius:var(--r-md);min-height:52px;color:var(--fg);transition:border-color var(--dur-2) var(--ease-out), box-shadow var(--dur-2) var(--ease-out), background var(--dur-2) var(--ease-out);align-items:center;gap:8px;padding:0 14px;display:flex}.snt-input:focus-within{border-color:var(--brand)}.snt-input--error,.snt-input--error:focus-within{border-color:var(--danger)}.snt-input--disabled{opacity:.55;cursor:not-allowed}.snt-input--select{padding-right:8px}.snt-input__el{appearance:none;min-width:0;box-shadow:none;color:inherit;font:inherit;font-size:var(--fs-base);background:0 0;border:0;border-radius:0;outline:0;flex:1;padding:0;line-height:1.2}.snt-input__el:focus{box-shadow:none;outline:none}.snt-input__el::placeholder{color:var(--fg-disabled)}.snt-input__el--select{appearance:none;cursor:pointer;padding-right:8px}.snt-input__addon{color:var(--fg-muted);flex:none;justify-content:center;align-items:center;display:inline-flex}.snt-switch{flex:none;display:inline-flex;position:relative}.snt-switch__input{opacity:0;cursor:pointer;margin:0;position:absolute;inset:0}.snt-switch__track{border-radius:var(--r-pill);background:var(--border-strong);width:44px;height:26px;transition:background var(--dur-2) var(--ease-out);position:relative}.snt-switch__thumb{border-radius:var(--r-pill);width:20px;height:20px;box-shadow:var(--shadow-sm);transition:transform var(--dur-2) var(--ease-out);background:#fff;position:absolute;top:3px;left:3px}.snt-switch__input:checked~.snt-switch__track{background:var(--brand)}.snt-switch__input:checked~.snt-switch__track .snt-switch__thumb{transform:translate(18px)}.snt-switch__input:focus-visible~.snt-switch__track{box-shadow:var(--shadow-focus)}.snt-switch--disabled .snt-switch__track{opacity:.5}.snt-switch-row{justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-3) 0;cursor:pointer;display:flex}.snt-switch-row__text{flex-direction:column;gap:2px;min-width:0;display:flex}.snt-switch-row__label{color:var(--fg);font-weight:600}.snt-switch-row__desc{font-size:var(--fs-xs);color:var(--fg-muted)}.snt-switch-row--disabled{cursor:not-allowed;opacity:.65}.snt-tabs{--tab-h:44px;gap:4px;display:inline-flex;position:relative}.snt-tabs--sm{--tab-h:36px}.snt-tabs--md{--tab-h:44px}.snt-tabs--lg{--tab-h:52px}.snt-tabs--full{width:100%;display:flex}.snt-tabs--full .snt-tabs__btn{flex:1 1 0;min-width:0}.snt-tabs__btn{height:var(--tab-h);font:inherit;letter-spacing:var(--tracking-snug);color:var(--fg-muted);border-radius:var(--r-pill);cursor:pointer;transition:background var(--dur-2) var(--ease-out), color var(--dur-2) var(--ease-out);white-space:nowrap;background:0 0;border:0;justify-content:center;align-items:center;gap:6px;padding:0 16px;font-weight:600;display:inline-flex}.snt-tabs__btn:disabled{opacity:.45;cursor:not-allowed}.snt-tabs__btn:hover:not(:disabled):not(.snt-tabs__btn--active){color:var(--fg)}.snt-tabs--segmented{background:var(--bg-sunken);border-radius:var(--r-pill);border:1px solid var(--border);padding:4px}.snt-tabs--segmented .snt-tabs__btn--active{background:var(--bg-elevated);color:var(--fg);box-shadow:var(--shadow-sm)}.snt-tabs--pill .snt-tabs__btn--active{background:var(--brand);color:var(--brand-on)}.snt-tabs--underline{gap:var(--space-6);border:0;border-bottom:1px solid var(--border);background:0 0;padding:0}.snt-tabs--underline .snt-tabs__btn{height:calc(var(--tab-h) + 4px);border-radius:0;padding:0 4px;position:relative}.snt-tabs--underline .snt-tabs__btn--active{color:var(--fg)}.snt-tabs--underline .snt-tabs__btn--active:after{content:"";background:var(--brand);border-radius:2px 2px 0 0;height:2px;position:absolute;bottom:-1px;left:0;right:0}.snt-sheet-root{z-index:var(--z-modal);pointer-events:none;display:flex;position:fixed;inset:0}.snt-sheet-root--bottom{justify-content:stretch;align-items:flex-end}.snt-sheet-root--right{justify-content:flex-end;align-items:stretch}.snt-sheet-root--top{justify-content:stretch;align-items:flex-start}.snt-sheet-root>*{pointer-events:auto}.snt-sheet-backdrop{background:var(--bg-overlay);-webkit-backdrop-filter:blur(2px);animation:snt-fade-in var(--dur-2) var(--ease-out) both;position:fixed;inset:0}@keyframes snt-fade-in{0%{opacity:0}to{opacity:1}}.snt-sheet{background:var(--bg-elevated);max-height:92dvh;box-shadow:var(--shadow-2xl);flex-direction:column;display:flex;position:relative}.snt-sheet--bottom{border-radius:var(--r-xl) var(--r-xl) 0 0;width:100%;padding-bottom:max(var(--space-6), var(--safe-bottom));animation:snt-sheet-up var(--dur-3) var(--ease-out) both}.snt-sheet--top{border-radius:0 0 var(--r-xl) var(--r-xl);width:100%;padding-top:max(var(--space-6), var(--safe-top));animation:snt-sheet-down var(--dur-3) var(--ease-out) both}.snt-sheet--right{border-radius:var(--r-xl) 0 0 var(--r-xl);width:100%;max-width:480px;height:100dvh;animation:snt-sheet-left var(--dur-3) var(--ease-out) both}.snt-sheet--sm{max-height:50dvh}.snt-sheet--md{max-height:75dvh}.snt-sheet--lg{max-height:92dvh}.snt-sheet--full{height:100dvh;max-height:100dvh}@media (min-width:640px){.snt-sheet-root--bottom{padding:var(--space-4);justify-content:center;align-items:center}.snt-sheet--bottom{border-radius:var(--r-2xl);width:auto;min-width:320px;max-width:520px;animation:snt-sheet-pop var(--dur-3) var(--ease-spring) both;padding-bottom:0}.snt-sheet--bottom.snt-sheet--lg{max-width:720px}}@keyframes snt-sheet-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes snt-sheet-down{0%{transform:translateY(-100%)}to{transform:translateY(0)}}@keyframes snt-sheet-left{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes snt-sheet-pop{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.snt-sheet__handle{background:var(--border-strong);border-radius:2px;width:40px;height:4px;margin:10px auto 6px}.snt-sheet__head{justify-content:space-between;align-items:flex-start;gap:var(--space-3);padding:var(--space-4) var(--space-6) var(--space-2);display:flex}.snt-sheet__head-text{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.snt-sheet__title{font-size:var(--fs-lg);letter-spacing:var(--tracking-snug);font-weight:700;line-height:1.25}.snt-sheet__desc{font-size:var(--fs-sm);color:var(--fg-muted);line-height:var(--lh-snug)}.snt-sheet__body{padding:var(--space-4) var(--space-6);-webkit-overflow-scrolling:touch;flex:1;overflow-y:auto}.snt-sheet__footer{padding:var(--space-4) var(--space-6);border-top:1px solid var(--border);gap:var(--space-3);justify-content:flex-end;align-items:center;display:flex}.snt-progress{gap:var(--space-2);flex-direction:column;display:flex}.snt-progress__head{justify-content:space-between;align-items:baseline;gap:var(--space-3);display:flex}.snt-progress__label{font-size:var(--fs-sm);color:var(--fg);font-weight:600}.snt-progress__value{font-size:var(--fs-sm);color:var(--fg-muted);font-weight:700}.snt-progress__value-sep{color:var(--border-strong);margin:0 2px}.snt-progress__track{background:var(--bg-sunken);border-radius:var(--r-pill);width:100%;overflow:hidden}.snt-progress--sm .snt-progress__track{height:6px}.snt-progress--md .snt-progress__track{height:10px}.snt-progress--lg .snt-progress__track{height:14px}.snt-progress__fill{background:var(--brand);border-radius:inherit;height:100%;transition:width var(--dur-4) var(--ease-out)}.snt-progress--navy .snt-progress__fill{background:var(--accent)}.snt-progress--success .snt-progress__fill{background:var(--success)}.snt-skeleton{background:linear-gradient(90deg, var(--bg-sunken) 0%, color-mix(in srgb, var(--bg-sunken) 60%, var(--bg-elevated)) 50%, var(--bg-sunken) 100%);background-size:200% 100%;animation:1.5s linear infinite snt-shimmer}.snt-skeleton--line{border-radius:var(--r-sm);width:100%;height:14px}.snt-skeleton--block{border-radius:var(--r-md);width:100%;height:80px}.snt-skeleton--circle{border-radius:50%;width:40px;height:40px}@keyframes snt-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media (prefers-reduced-motion:reduce){.snt-skeleton{animation:none}}.snt-stat{gap:var(--space-1);padding:var(--space-5);background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--r-lg);flex-direction:column;display:flex;position:relative}.snt-stat__icon{border-radius:var(--r-md);background:var(--brand-soft);width:36px;height:36px;color:var(--brand);margin-bottom:var(--space-2);justify-content:center;align-items:center;display:inline-flex}.snt-stat__label{font-size:var(--fs-xs);color:var(--fg-muted);letter-spacing:var(--tracking-wide);text-transform:uppercase;font-weight:600}.snt-stat__value{font-size:var(--fs-2xl);letter-spacing:-.03em;color:var(--fg);font-weight:700;line-height:1.1}.snt-stat__hint{font-size:var(--fs-xs);color:var(--fg-muted);margin-top:2px}.snt-stat--brand .snt-stat__icon{background:var(--brand-soft);color:var(--brand)}.snt-stat--navy .snt-stat__icon{background:var(--accent-soft);color:var(--accent)}.snt-stat--success .snt-stat__icon{background:var(--success-bg);color:var(--success)}.snt-stat--warning .snt-stat__icon{background:var(--warning-bg);color:var(--warning)}.snt-stat--danger .snt-stat__icon{background:var(--danger-bg);color:var(--danger)}.snt-auth-root{background:var(--bg);flex-direction:column;min-height:100dvh;display:flex;position:relative;overflow-x:hidden}.snt-auth-glow{pointer-events:none;filter:blur(80px);z-index:0;border-radius:50%;position:fixed}.snt-auth-glow--coral{background:#f2733f2e;width:420px;height:420px;top:-120px;left:-120px}.snt-auth-glow--navy{background:#1b3a6b24;width:520px;height:520px;bottom:-180px;right:-160px}@media (prefers-color-scheme:dark){:root:not([data-theme]) .snt-auth-glow--coral{background:#f2733f29}:root:not([data-theme]) .snt-auth-glow--navy{background:#9aaac61f}}:root[data-theme=dark] .snt-auth-glow--coral{background:#f2733f29}:root[data-theme=dark] .snt-auth-glow--navy{background:#9aaac61f}.snt-auth-topbar{z-index:1;padding:var(--space-4) var(--space-5);padding-top:calc(var(--space-4) + var(--safe-top));justify-content:space-between;align-items:center;display:flex;position:relative}.snt-auth-shell{z-index:1;padding:var(--space-6) var(--space-4) calc(var(--space-10) + var(--safe-bottom));flex:1;justify-content:center;align-items:center;display:flex;position:relative}.snt-auth-card{gap:var(--space-5);width:100%;max-width:460px;padding:var(--space-7);background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--r-2xl);box-shadow:var(--shadow-xl);flex-direction:column;display:flex}@media (min-width:640px){.snt-auth-card{padding:var(--space-10)}}.snt-auth-card--success{text-align:center;align-items:center;gap:var(--space-4)}.snt-auth-card--success .snt-auth-title{font-size:var(--fs-2xl);letter-spacing:-.03em;font-weight:700}.snt-auth-card--success .snt-auth-lead{color:var(--fg-muted);font-size:var(--fs-base);line-height:var(--lh-snug)}.snt-auth-brand{color:inherit;justify-content:center;margin:0 auto;text-decoration:none;display:inline-flex}.snt-auth-form{gap:var(--space-4);flex-direction:column;display:flex}.snt-auth-row{gap:var(--space-4);grid-template-columns:1fr;display:grid}@media (min-width:480px){.snt-auth-row{grid-template-columns:1fr 1fr}}.snt-auth-switch{text-align:center;font-size:var(--fs-sm);color:var(--fg-muted);margin-top:var(--space-1)}.snt-auth-switch__link{font:inherit;color:var(--brand);text-underline-offset:3px;cursor:pointer;background:0 0;border:0;padding:0;font-weight:700;text-decoration:underline}.snt-auth-switch__link:hover{color:var(--brand-hover)}.snt-auth-footer{text-align:center;font-size:var(--fs-xs);color:var(--fg-subtle);margin-top:var(--space-2)}.snt-auth-stepper{gap:var(--space-3);width:100%;margin-top:calc(-1 * var(--space-2));flex-direction:column;display:flex}.snt-auth-stepper__meta{font-size:var(--fs-xs);color:var(--fg-subtle);letter-spacing:.02em;justify-content:space-between;align-items:center;display:flex}.snt-auth-stepper__count{color:var(--fg);font-variant-numeric:tabular-nums;font-weight:700}.snt-auth-stepper__count em{color:var(--brand);font-style:normal}.snt-auth-stepper__back{color:var(--fg-muted);font:inherit;font-size:var(--fs-xs);cursor:pointer;border-radius:var(--r-sm);transition:color var(--dur-1) var(--ease-out), background var(--dur-1) var(--ease-out);background:0 0;border:none;align-items:center;gap:4px;margin:-6px -8px;padding:6px 8px;display:inline-flex}.snt-auth-stepper__back:hover{color:var(--fg);background:var(--bg-sunken)}.snt-auth-stepper__bar{gap:4px;width:100%;display:flex}.snt-auth-stepper__seg{background:var(--bg-sunken);border-radius:var(--r-pill);height:4px;transition:background var(--dur-2) var(--ease-out), transform var(--dur-2) var(--ease-out);flex:1}.snt-auth-stepper__seg.is-done{background:var(--brand)}.snt-auth-stepper__seg.is-current{background:var(--brand);transform:scaleY(1.5)}.snt-auth-step{gap:var(--space-5);animation:snt-step-in .36s var(--ease-out) both;flex-direction:column;display:flex}.snt-auth-step__heading{gap:var(--space-2);flex-direction:column;display:flex}.snt-auth-step__title{letter-spacing:-.03em;color:var(--fg);word-break:keep-all;margin:0;font-size:clamp(1.45rem,4.5vw,1.85rem);font-weight:700;line-height:1.2}.snt-auth-step__sub{font-size:var(--fs-sm);color:var(--fg-muted);line-height:var(--lh-snug);margin:0}.snt-auth-step__body{gap:var(--space-4);flex-direction:column;display:flex}.snt-auth-step__error{color:var(--danger);font-size:var(--fs-sm);animation:snt-shake .36s var(--ease-out);margin:0}.snt-auth-step__cta{gap:var(--space-2);margin-top:var(--space-2);flex-direction:column;display:flex}.snt-auth-step__switch{text-align:center;font-size:var(--fs-xs);color:var(--fg-subtle)}.snt-auth-step__switch button{color:var(--brand);font:inherit;font-weight:600;font-size:var(--fs-xs);cursor:pointer;border-radius:var(--r-xs);background:0 0;border:none;padding:2px 4px}.snt-auth-step__switch button:hover{text-decoration:underline}@keyframes snt-step-in{0%{opacity:0;transform:translate(14px)}to{opacity:1;transform:translate(0)}}@keyframes snt-shake{0%,to{transform:translate(0)}20%,60%{transform:translate(-3px)}40%,80%{transform:translate(3px)}}@media (prefers-reduced-motion:reduce){.snt-auth-step,.snt-auth-step__error{animation:none}.snt-auth-stepper__fill{transition:none}}.snt-dash{gap:var(--space-6);padding-bottom:var(--space-12);flex-direction:column;display:flex}.snt-dash-greeting{gap:var(--space-4);flex-direction:column;align-items:flex-start;display:flex}.snt-dash-greeting__title{font-size:var(--fs-3xl);letter-spacing:-.03em;word-break:keep-all;font-weight:700;line-height:1.15}.snt-dash-greeting__name{color:var(--brand)}.snt-dash-greeting__sub{color:var(--fg-muted);font-size:var(--fs-base);line-height:var(--lh-snug)}.snt-dash-progress{gap:var(--space-3);width:100%;padding:var(--space-5);flex-direction:column;display:flex}.snt-dash-progress__row{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.snt-dash-progress__head{flex-direction:column;gap:2px;display:flex}.snt-dash-progress__label{font-size:var(--fs-xs);color:var(--fg-muted);letter-spacing:var(--tracking-wide);text-transform:uppercase;font-weight:600}.snt-dash-progress__count{align-items:baseline;gap:4px;display:flex}.snt-dash-progress__seen{font-size:var(--fs-2xl);letter-spacing:-.03em;color:var(--fg);font-weight:700}.snt-dash-progress__sep{color:var(--fg-subtle)}.snt-dash-progress__total{font-size:var(--fs-lg);color:var(--fg-muted);font-weight:600}.snt-dash-quick{gap:var(--space-3);grid-template-columns:1fr;display:grid}@media (min-width:640px){.snt-dash-quick{grid-template-columns:1fr 1fr}}.snt-dash-quick__card{align-items:center;gap:var(--space-4);padding:var(--space-5);background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--r-xl);color:inherit;cursor:pointer;transition:transform var(--dur-2) var(--ease-out), box-shadow var(--dur-2) var(--ease-out), border-color var(--dur-2) var(--ease-out);text-decoration:none;display:flex}.snt-dash-quick__card--active:hover{box-shadow:var(--shadow-lg);border-color:var(--coral-200);transform:translateY(-2px)}.snt-dash-quick__card--disabled{opacity:.5;cursor:not-allowed}.snt-dash-quick__icon{border-radius:var(--r-lg);background:var(--brand-soft);width:52px;height:52px;color:var(--brand);flex:none;justify-content:center;align-items:center;display:inline-flex}.snt-dash-quick__icon--muted{background:var(--bg-sunken);color:var(--fg-muted)}.snt-dash-quick__body{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.snt-dash-quick__title{font-size:var(--fs-lg);letter-spacing:-.02em;align-items:center;gap:var(--space-2);flex-wrap:wrap;font-weight:700;display:flex}.snt-dash-quick__desc{color:var(--fg-muted);font-size:.78rem;line-height:var(--lh-snug)}.snt-dash-quick__arrow{border-radius:var(--r-pill);background:var(--bg-sunken);width:36px;height:36px;color:var(--fg);transition:background var(--dur-2) var(--ease-out), color var(--dur-2) var(--ease-out), transform var(--dur-2) var(--ease-out);flex:none;justify-content:center;align-items:center;display:inline-flex}.snt-dash-quick__card--active:hover .snt-dash-quick__arrow{background:var(--brand);color:var(--brand-on);transform:translate(2px)}.snt-dash-quick__tag{height:22px!important;padding:0 8px!important;font-size:.66rem!important}.snt-dash-rank{gap:var(--space-3);flex-direction:column;display:flex}.snt-dash-guide{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--r-xl);overflow:hidden}.snt-dash-guide__toggle{justify-content:space-between;align-items:center;gap:var(--space-3);width:100%;padding:var(--space-4) var(--space-5);font:inherit;color:var(--fg);cursor:pointer;background:0 0;border:0;font-weight:700;display:flex}.snt-dash-guide__toggle:hover{background:var(--bg-sunken)}.snt-dash-guide__chevron{transition:transform var(--dur-2) var(--ease-out);color:var(--fg-muted)}.snt-dash-guide__chevron.is-open{transform:rotate(180deg)}.snt-dash-guide__body{padding:0 var(--space-5) var(--space-5);border-top:1px solid var(--border)}.snt-dash-guide__list{gap:var(--space-2);padding:var(--space-3) 0 0 var(--space-4);color:var(--fg-muted);font-size:var(--fs-sm);line-height:var(--lh-snug);flex-direction:column;margin:0;display:flex}.snt-dash-guide__list li{list-style:outside}.rank-board{gap:var(--space-4);padding:var(--space-5);background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--r-xl);flex-direction:column;margin:0;display:flex}.rank-board--loading{padding:var(--space-6) var(--space-5);text-align:center;color:var(--fg-muted);font-size:var(--fs-sm)}.rank-head{gap:var(--space-3);flex-direction:column;align-items:flex-start;display:flex}.rank-title{font-size:var(--fs-xl);letter-spacing:-.02em;font-weight:700}.rank-tabs{background:var(--bg-sunken);border:1px solid var(--border);border-radius:var(--r-pill);flex-wrap:wrap;gap:4px;padding:4px;display:flex}.rank-tab{height:32px;font:inherit;color:var(--fg-muted);border-radius:var(--r-pill);cursor:pointer;transition:background var(--dur-2) var(--ease-out), color var(--dur-2) var(--ease-out);background:0 0;border:0;justify-content:center;align-items:center;padding:0 12px;font-size:.82rem;font-weight:600;display:inline-flex}.rank-tab:hover{color:var(--fg)}.rank-tab--active{background:var(--bg-elevated);color:var(--fg);box-shadow:var(--shadow-sm)}.rank-meta{gap:var(--space-3);font-size:var(--fs-sm);color:var(--fg-muted);flex-wrap:wrap;display:flex}.rank-empty{padding:var(--space-6) 0;text-align:center;color:var(--fg-muted);font-size:var(--fs-sm)}.rank-row{align-items:center;gap:var(--space-3);padding:var(--space-3);background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--r-md);transition:background var(--dur-2) var(--ease-out);grid-template-columns:36px 1fr auto;display:grid}.rank-row:hover{background:var(--bg-sunken)}.rank-row--me{background:var(--brand-soft);border-color:color-mix(in srgb, var(--brand) 30%, transparent)}.rank-row--top1 .rank-num{color:#c9a24e}.rank-row--top2 .rank-num{color:#9ca0a4}.rank-row--top3 .rank-num{color:#b07b49}.rank-num{font-size:var(--fs-base);text-align:center;letter-spacing:-.02em;font-weight:700}.rank-name{color:var(--fg);align-items:center;gap:6px;min-width:0;font-weight:600;display:inline-flex}.rank-me-tag{background:var(--brand);height:20px;color:var(--brand-on);border-radius:var(--r-pill);justify-content:center;align-items:center;padding:0 8px;font-size:.68rem;font-weight:700;display:inline-flex}.rank-score{font-size:var(--fs-sm);color:var(--fg);text-align:right;font-weight:600}.rank-pct{color:var(--fg-muted);font-weight:500}.rank-attempts{display:none}@media (min-width:480px){.rank-row{grid-template-columns:36px 1fr auto auto}.rank-attempts{font-size:var(--fs-xs);color:var(--fg-muted);margin-left:var(--space-3);display:inline}}.snt-scores{gap:var(--space-6);padding-bottom:var(--space-12);flex-direction:column;display:flex}.snt-scores-head{gap:var(--space-2);flex-direction:column;align-items:flex-start;display:flex}.snt-scores-back{align-self:flex-start;margin-bottom:4px}.snt-scores-title{font-size:var(--fs-3xl);letter-spacing:-.03em;font-weight:700;line-height:1.1}.snt-scores-sub{color:var(--fg-muted);font-size:var(--fs-sm)}.snt-scores-per-ch{gap:var(--space-2);padding:var(--space-4);background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--r-lg);flex-direction:column;display:flex}.snt-scores-per-ch__label{font-size:var(--fs-sm);color:var(--fg);align-items:center;gap:6px;font-weight:700;display:inline-flex}.snt-scores-per-ch__hint{letter-spacing:0;color:var(--fg-subtle);font-weight:500}.snt-scores-per-ch__chips{gap:var(--space-2);flex-wrap:wrap;display:flex}.snt-scores-per-ch__chip{background:var(--bg-sunken);border:1px solid var(--border);border-radius:var(--r-pill);font-size:var(--fs-sm);align-items:center;gap:6px;padding:6px 12px;display:inline-flex}.snt-scores-per-ch__chip strong{color:var(--brand);font-weight:700}.snt-scores-stats{gap:var(--space-3);grid-template-columns:repeat(2,1fr);display:grid}@media (max-width:480px){.snt-scores-stats{gap:var(--space-2)}.snt-scores-stats .snt-stat{padding:var(--space-3)}.snt-scores-stats .snt-stat__value{font-size:var(--fs-xl)}}.snt-scores-list{gap:var(--space-3);flex-direction:column;display:flex}.snt-scores-row{gap:var(--space-3);flex-direction:column;display:flex!important}.snt-scores-row__head{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.snt-scores-row__chapter{flex-direction:column;gap:2px;min-width:0;display:flex}.snt-scores-row__chapter strong{font-size:var(--fs-base);color:var(--fg);font-weight:700}.snt-scores-row__date{font-size:var(--fs-xs);color:var(--fg-muted)}.snt-scores-row__score{align-items:baseline;gap:var(--space-3);display:flex}.snt-scores-row__num{font-size:var(--fs-2xl);letter-spacing:-.03em;color:var(--fg);font-weight:700}.snt-scores-row__num--success{color:var(--success)}.snt-scores-row__num--warning{color:var(--warning)}.snt-scores-row__num--danger{color:var(--danger)}.snt-scores-row__sep{color:var(--fg-subtle);margin:0 2px;font-weight:500}.snt-scores-row__wrong{font-size:var(--fs-xs);color:var(--fg-muted)}.snt-scores-row__actions{gap:var(--space-2);flex-wrap:wrap;display:flex}.snt-scores-empty{text-align:center;padding:var(--space-8);color:var(--fg-muted)}.snt-scores-empty__sub{font-size:var(--fs-sm);color:var(--fg-subtle);margin-top:4px}.snt-scores-wq-list{gap:var(--space-4);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.snt-scores-wq{padding:var(--space-4);background:var(--bg-sunken);border-radius:var(--r-lg);gap:var(--space-2);flex-direction:column;display:flex}.snt-scores-wq__tag{align-self:flex-start}.snt-scores-wq__qtext{color:var(--fg);font-weight:600;font-size:var(--fs-base)}.snt-scores-wq__sentence{color:var(--fg-muted);line-height:var(--lh-snug);font-size:var(--fs-sm)}.snt-scores-wq__blank{background:var(--brand-soft);color:var(--coral-700);border-radius:var(--r-xs);padding:0 6px;font-weight:700;display:inline-block}.snt-scores-wq__answer{color:var(--success);font-size:var(--fs-sm);align-items:center;gap:6px;font-weight:600;display:inline-flex}.snt-retry{gap:var(--space-5);padding-bottom:var(--space-12);flex-direction:column;display:flex}.snt-retry-head{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.snt-retry-list{gap:var(--space-3);flex-direction:column;display:flex}.snt-retry-item{gap:var(--space-2);flex-direction:column;display:flex!important}.snt-retry-item__head{align-items:center;gap:var(--space-2);display:flex}.snt-retry-item__qtext{color:var(--fg);font-weight:600}.snt-retry-item__sentence{color:var(--fg-muted);font-size:var(--fs-sm)}.snt-retry-item__answers{gap:var(--space-3);font-size:var(--fs-sm);flex-wrap:wrap;display:flex}.snt-retry-item__wrong{color:var(--danger)}.snt-retry-item__correct{color:var(--success)}.snt-retry-perfect{padding:var(--space-6);text-align:center;font-size:var(--fs-lg);font-weight:600}.snt-retry-actions{justify-content:center;display:flex}.snt-retry-empty{padding:var(--space-8);text-align:center;gap:var(--space-4);flex-direction:column;align-items:center;display:flex}.snt-retry-result{gap:var(--space-3);padding-top:var(--space-8);padding-bottom:var(--space-8);flex-direction:column;align-items:center;display:flex}.snt-retry-result__title{font-size:var(--fs-2xl);letter-spacing:-.03em;font-weight:700}.snt-retry-result__note{font-size:var(--fs-sm);color:var(--fg-muted)}.snt-retry-result__score{margin-top:var(--space-4);align-items:baseline;gap:4px;display:flex}.snt-retry-result__num{letter-spacing:-.04em;color:var(--brand);font-size:4rem;font-weight:700;line-height:1}.snt-retry-result__den{font-size:var(--fs-xl);color:var(--fg-muted)}.snt-retry-result__pct{font-size:var(--fs-lg);color:var(--fg-muted);font-weight:600}.snt-retry-result__actions{gap:var(--space-3);margin-top:var(--space-4);flex-wrap:wrap;display:flex}.snt-retry-quiz-head{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.snt-retry-quiz-head__center{flex-direction:column;flex:1;align-items:center;gap:2px;min-width:0;display:flex}.snt-retry-quiz-head__title{color:var(--fg);font-weight:700;font-size:var(--fs-sm);align-items:center;gap:6px;display:inline-flex}.snt-retry-quiz-head__progress{font-size:var(--fs-xs);color:var(--fg-muted)}.snt-retry-quiz__part{align-self:flex-start}.snt-retry-quiz__card{gap:var(--space-4);flex-direction:column;display:flex!important}.snt-retry-quiz__qnum{font-size:var(--fs-xl);color:var(--brand);font-weight:700}.snt-retry-quiz__qtext{font-size:var(--fs-lg);font-weight:600;line-height:var(--lh-snug)}.snt-retry-quiz__sentence{color:var(--fg-muted);font-size:var(--fs-base);line-height:var(--lh-snug)}.snt-retry-quiz__blank{background:var(--bg-sunken);border-radius:var(--r-xs);color:var(--brand);padding:0 8px;font-weight:700;display:inline-block}.snt-retry-quiz__options{gap:var(--space-2);flex-direction:column;display:flex}.snt-retry-quiz__option{align-items:center;gap:var(--space-3);padding:var(--space-4);background:var(--bg-elevated);border:1.5px solid var(--border);border-radius:var(--r-md);font:inherit;font-size:var(--fs-base);color:var(--fg);text-align:left;cursor:pointer;transition:background var(--dur-1) var(--ease-out), border-color var(--dur-1) var(--ease-out), transform 80ms var(--ease-out);display:flex}.snt-retry-quiz__option:hover{background:var(--bg-sunken)}.snt-retry-quiz__option:active{transform:scale(.99)}.snt-retry-quiz__option.is-selected{background:var(--brand-soft);border-color:var(--brand);color:var(--coral-700);font-weight:600}.snt-retry-quiz__option-num{width:24px;height:24px;color:var(--fg-muted);flex:none;justify-content:center;align-items:center;font-weight:700;display:inline-flex}.snt-retry-quiz__option.is-selected .snt-retry-quiz__option-num{color:var(--brand)}.snt-retry-quiz__dots{padding:var(--space-3) 0;flex-wrap:wrap;justify-content:center;gap:6px;display:flex}.snt-retry-quiz__dot{background:var(--border-strong);cursor:pointer;width:12px;height:12px;transition:transform var(--dur-1) var(--ease-out), background var(--dur-1) var(--ease-out);border:0;border-radius:50%}.snt-retry-quiz__dot.is-done{background:var(--coral-300)}.snt-retry-quiz__dot.is-current{background:var(--brand);transform:scale(1.4)}.snt-retry-quiz__nav{justify-content:space-between;gap:var(--space-3);display:flex}.snt-retry-quiz__nav>*{flex:1}.snt-account{gap:var(--space-6);padding-bottom:var(--space-12);flex-direction:column;display:flex}.snt-account-head{gap:var(--space-2);flex-direction:column;align-items:flex-start;display:flex}.snt-account-back{align-self:flex-start;margin-bottom:4px}.snt-account-title{font-size:var(--fs-3xl);letter-spacing:-.03em;font-weight:700;line-height:1.1}.snt-account-sub{color:var(--fg-muted);font-size:var(--fs-base);line-height:var(--lh-snug)}.snt-account-profile{align-items:center;gap:var(--space-4);padding:var(--space-5);background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--r-xl);display:flex}.snt-account-avatar{background:var(--brand-soft);width:56px;height:56px;color:var(--brand);border-radius:50%;flex:none;justify-content:center;align-items:center;display:inline-flex}.snt-account-profile__text{flex-direction:column;flex:1;gap:6px;min-width:0;display:flex}.snt-account-profile__name{font-size:var(--fs-lg);letter-spacing:-.02em;color:var(--fg);font-weight:700}.snt-account-profile__meta{gap:var(--space-3);font-size:var(--fs-sm);color:var(--fg-muted);flex-wrap:wrap;align-items:center;display:flex}.snt-account-profile__meta span{align-items:center;gap:4px;display:inline-flex}.snt-account-profile__joined{color:var(--fg-subtle)}.snt-account-notice{background:var(--warning-bg);border-color:color-mix(in srgb, var(--warning) 30%, transparent);color:var(--warning)}.snt-account-notice strong{font-size:var(--fs-base);color:var(--fg);margin-bottom:4px;display:block}.snt-account-notice p{color:var(--fg-muted);font-size:var(--fs-sm);line-height:var(--lh-snug)}.snt-account-card__title{font-size:var(--fs-xl);letter-spacing:-.02em;font-weight:700}.snt-account-card__sub{font-size:var(--fs-sm);color:var(--fg-muted);line-height:var(--lh-snug);margin-top:2px}.snt-account-form{gap:var(--space-4);flex-direction:column;display:flex}.snt-account-actions{justify-content:flex-end;gap:var(--space-3);margin-top:var(--space-2);display:flex}.snt-account-msg{font-size:var(--fs-sm);border-radius:var(--r-sm);padding:10px 12px;font-weight:600}.snt-account-msg--ok{background:var(--success-bg);color:var(--success);border:1px solid color-mix(in srgb, var(--success) 32%, transparent)}.snt-account-msg--err{background:var(--danger-bg);color:var(--danger);border:1px solid color-mix(in srgb, var(--danger) 32%, transparent)}:root[data-theme=dark] .snt-account-msg--ok{color:#7cdb95;background:#7cdb9529;border-color:#7cdb9566}:root[data-theme=dark] .snt-account-msg--err{color:#f08577;background:#f0857729;border-color:#f0857766}@media (prefers-color-scheme:dark){:root:not([data-theme]) .snt-account-msg--ok{color:#7cdb95;background:#7cdb9529;border-color:#7cdb9566}:root:not([data-theme]) .snt-account-msg--err{color:#f08577;background:#f0857729;border-color:#f0857766}}.snt-account-skeleton{text-align:center;padding:var(--space-12) 0;color:var(--fg-muted);font-size:var(--fs-sm)}.snt-school-ac{width:100%;position:relative}.snt-school-ac__input{background:var(--bg-elevated);border:2px solid var(--border-strong);border-radius:var(--r-pill);min-height:56px;transition:border-color var(--dur-2) var(--ease-out), box-shadow var(--dur-2) var(--ease-out);align-items:center;gap:10px;padding:6px 14px 6px 16px;display:flex}.snt-school-ac__input:focus-within{border-color:var(--brand)}.snt-school-ac__input.is-error{border-color:var(--danger)}.snt-school-ac__input.is-disabled{opacity:.55;cursor:not-allowed}.snt-school-ac__field{appearance:none;min-width:0;height:100%;box-shadow:none;font:inherit;font-size:var(--fs-base);color:var(--fg);background:0 0;border:0;border-radius:0;outline:0;flex:1;padding:0}.snt-school-ac__field:focus{box-shadow:none;outline:0}.snt-school-ac__field::placeholder{color:var(--fg-disabled)}.snt-school-ac__field:disabled{cursor:not-allowed}.snt-school-ac__clear{background:var(--bg-sunken);width:28px;height:28px;color:var(--fg-muted);cursor:pointer;transition:background var(--dur-2) var(--ease-out), color var(--dur-2) var(--ease-out);border:0;border-radius:50%;flex:none;justify-content:center;align-items:center;display:inline-flex}.snt-school-ac__clear:hover{background:var(--border-strong);color:var(--fg)}.snt-school-ac__search-icon{width:28px;height:28px;color:var(--fg-muted);flex:none;justify-content:center;align-items:center;display:inline-flex}.snt-school-ac__search-icon--leading{color:var(--fg-muted)}.snt-school-ac__list{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-xl);max-height:320px;z-index:var(--z-overlay);animation:snt-fade-in var(--dur-2) var(--ease-out) both;margin:0;padding:8px;list-style:none;position:absolute;top:calc(100% + 8px);left:0;right:0;overflow-y:auto}.snt-school-ac__empty{text-align:center;color:var(--fg-muted);font-size:var(--fs-sm);padding:14px}.snt-school-ac__item{justify-content:space-between;align-items:baseline;gap:var(--space-3);border-radius:var(--r-md);cursor:pointer;transition:background var(--dur-1) var(--ease-out);min-width:0;padding:12px 16px;display:flex}.snt-school-ac__item.is-active,.snt-school-ac__item:hover{background:var(--brand-soft)}.snt-school-ac__name{color:var(--fg);font-weight:700;font-size:var(--fs-base);white-space:nowrap;text-overflow:ellipsis;flex:auto;min-width:0;overflow:hidden}.snt-school-ac__meta{font-size:var(--fs-sm);color:var(--fg-muted);white-space:nowrap;flex:none}@media (max-width:480px){.snt-school-ac__field{font-size:.92rem}.snt-school-ac__item{padding:10px 14px}.snt-school-ac__name{font-size:.95rem}.snt-school-ac__meta{font-size:.8rem}}.snt-marketing-shell{background:radial-gradient(ellipse 1200px 600px at 100% -10%, #1b3a6b1a, transparent 60%), radial-gradient(ellipse 800px 500px at -20% 110%, #f2733f12, transparent 60%), var(--bg);flex-direction:column;min-height:100dvh;display:flex}@media (prefers-color-scheme:dark){:root:not([data-theme]) .snt-marketing-shell{background:radial-gradient(ellipse 1200px 600px at 100% -10%, #9aaac612, transparent 60%), radial-gradient(ellipse 800px 500px at -20% 110%, #f2733f1a, transparent 60%), var(--bg)}}:root[data-theme=dark] .snt-marketing-shell{background:radial-gradient(ellipse 1200px 600px at 100% -10%, #9aaac612, transparent 60%), radial-gradient(ellipse 800px 500px at -20% 110%, #f2733f1a, transparent 60%), var(--bg)}.snt-marketing-header{z-index:var(--z-nav);padding-top:var(--safe-top);-webkit-backdrop-filter:saturate(180%)blur(14px);background:color-mix(in srgb, var(--bg) 78%, transparent);border-bottom:1px solid color-mix(in srgb, var(--border) 60%, transparent);position:sticky;top:0}.snt-marketing-header__inner{justify-content:space-between;align-items:center;gap:var(--space-4);height:64px;display:flex}@media (min-width:1024px){.snt-marketing-header__inner{height:72px}}.snt-marketing-brand{align-items:center;gap:var(--space-3);color:inherit;text-decoration:none;display:flex}.snt-marketing-brand__wordmark{letter-spacing:var(--tracking-snug);white-space:nowrap;flex-direction:column;align-items:flex-start;font-weight:700;line-height:1.1;display:none}.snt-marketing-brand__line{align-items:baseline;gap:4px;font-size:.94rem;display:inline-flex}.snt-marketing-brand__wordmark em{color:var(--brand);font-style:italic;font-weight:700}.snt-marketing-brand__wordmark small{letter-spacing:3px;color:var(--fg-muted);margin-top:2px;font-size:.6rem;font-weight:500}@media (min-width:640px){.snt-marketing-brand__wordmark{display:flex}}.snt-marketing-header__actions{align-items:center;gap:var(--space-2);display:flex}.snt-marketing-login-link{text-decoration:none}.snt-marketing-footer{padding:var(--space-8) 0 calc(var(--space-8) + var(--safe-bottom));border-top:1px solid var(--border);margin-top:auto}.snt-marketing-footer__inner{justify-content:space-between;align-items:center;gap:var(--space-2);font-size:var(--fs-sm);color:var(--fg-muted);flex-direction:column;display:flex}@media (min-width:640px){.snt-marketing-footer__inner{flex-direction:row}}.snt-marketing-footer__brand{color:var(--fg);font-weight:600}.snt-marketing-main{padding-bottom:var(--space-16)}.snt-hero{padding:var(--space-8) 0 var(--space-10)}@media (min-width:1024px){.snt-hero{padding:var(--space-12) 0 var(--space-14)}}.snt-hero__inner{gap:var(--space-10);grid-template-columns:1fr;align-items:center;display:grid}@media (min-width:1024px){.snt-hero__inner{gap:var(--space-12);grid-template-columns:1.05fr .95fr;align-items:center}}.snt-hero__copy{gap:var(--space-5);flex-direction:column;display:flex}.snt-hero__title{font-size:var(--fs-5xl);letter-spacing:-.04em;color:var(--fg);word-break:keep-all;font-weight:700;line-height:1.02}.snt-hero__accent{color:var(--fg);display:inline-block;position:relative}.snt-hero__underline{width:100%;height:.42em;color:var(--brand);animation:snt-underline-draw 1.2s var(--ease-out) .4s both;position:absolute;bottom:-.18em;left:0;right:0}.snt-hero__underline path{stroke-dasharray:240;stroke-dashoffset:240px;animation:snt-dash-draw 1.2s var(--ease-out) .4s both}@keyframes snt-dash-draw{to{stroke-dashoffset:0}}@keyframes snt-underline-draw{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.snt-hero__lead{font-size:var(--fs-md);line-height:var(--lh-snug);color:var(--fg-muted);max-width:36ch}.snt-hero__cta{align-items:center;gap:var(--space-3);margin-top:var(--space-2);flex-wrap:wrap;display:flex}.snt-hero__cta-link{padding:0 var(--space-3);height:56px;color:var(--fg);border-radius:var(--r-pill);transition:background var(--dur-2) var(--ease-out);align-items:center;gap:4px;font-weight:600;text-decoration:none;display:inline-flex}.snt-hero__cta-link:hover{background:var(--bg-sunken)}.snt-hero__bullets{gap:var(--space-2);margin:var(--space-2) 0 0;color:var(--fg-muted);font-size:var(--fs-sm);flex-direction:column;padding:0;list-style:none;display:flex}.snt-hero__bullets li{gap:var(--space-2);align-items:center;display:flex}.snt-hero__bullets span{color:var(--brand);font-weight:700}.snt-hero__media{width:100%;min-height:240px;position:relative}.snt-hero__video-card{aspect-ratio:16/11;border-radius:var(--r-xl);background:var(--ink-900);width:100%;box-shadow:var(--shadow-2xl);border:1px solid var(--border);transition:transform var(--dur-4) var(--ease-out);position:relative;overflow:hidden;transform:rotate(-1deg)}@media (min-width:1024px){.snt-hero__video-card{transform:rotate(-1.4deg)}.snt-hero__video-card:hover{transform:rotate(0)}}.snt-hero__video{object-fit:cover;width:100%;height:100%;display:block}.snt-hero__video-badge{top:var(--space-3);left:var(--space-3);color:var(--ink-900);border-radius:var(--r-pill);letter-spacing:var(--tracking-snug);box-shadow:var(--shadow-sm);background:#ffffffeb;align-items:center;gap:6px;padding:6px 12px 6px 6px;font-size:.78rem;font-weight:700;display:inline-flex;position:absolute}.snt-hero__video-badge-dot{background:var(--brand);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;animation:2s ease-in-out infinite snt-pulse;display:inline-flex}@keyframes snt-pulse{0%,to{box-shadow:0 0 #f2733f66}50%{box-shadow:0 0 0 8px #f2733f00}}.snt-hero__watermark{opacity:.08;pointer-events:none;display:none;position:absolute;bottom:-28px;right:-6px}@media (min-width:1024px){.snt-hero__watermark{opacity:.1;display:block}}.snt-features{padding:var(--space-12) 0}@media (min-width:1024px){.snt-features{padding:var(--space-16) 0}}.snt-features__head{gap:var(--space-4);margin-bottom:var(--space-8);flex-direction:column;align-items:flex-start;display:flex}@media (min-width:1024px){.snt-features__head{margin:0 auto var(--space-12);text-align:center;align-items:center}.snt-features__lead{max-width:48ch}}.snt-features__title{font-size:var(--fs-3xl);letter-spacing:-.03em;word-break:keep-all;font-weight:700;line-height:1.15}.snt-features__lead{font-size:var(--fs-md);color:var(--fg-muted);line-height:var(--lh-snug)}.snt-features__grid{gap:var(--space-4);grid-template-columns:1fr;display:grid}@media (min-width:640px){.snt-features__grid{grid-template-columns:repeat(2,1fr)}}@media (min-width:1024px){.snt-features__grid{gap:var(--space-6);grid-template-columns:repeat(3,1fr)}}.snt-feature{gap:var(--space-3);padding:var(--space-7);flex-direction:column;min-height:220px;display:flex;position:relative}.snt-feature__icon{border-radius:var(--r-lg);background:var(--brand-soft);width:52px;height:52px;color:var(--brand);margin-bottom:var(--space-2);justify-content:center;align-items:center;display:inline-flex}.snt-feature__tag{align-self:flex-start}.snt-feature__title{font-size:var(--fs-xl);letter-spacing:-.02em;word-break:keep-all;font-weight:700}.snt-feature__desc{font-size:var(--fs-base);line-height:var(--lh-snug);color:var(--fg-muted);padding-right:52px}.snt-feature__arrow{right:var(--space-6);bottom:var(--space-6);border-radius:var(--r-pill);background:var(--bg-sunken);width:36px;height:36px;color:var(--fg);transition:background var(--dur-2) var(--ease-out), transform var(--dur-2) var(--ease-out), color var(--dur-2) var(--ease-out);justify-content:center;align-items:center;display:inline-flex;position:absolute}.snt-feature:hover .snt-feature__arrow{background:var(--brand);color:var(--brand-on);transform:translate(2px)}.snt-callout{padding:var(--space-4) 0 var(--space-12)}.snt-callout__card{align-items:flex-start;gap:var(--space-5);padding:var(--space-8);background:linear-gradient(135deg, var(--brand-soft) 0%, var(--bg-elevated) 60%);border:1px solid var(--border);flex-direction:column;display:flex}@media (min-width:640px){.snt-callout__card{padding:var(--space-10);flex-direction:row;justify-content:space-between;align-items:center}}.snt-callout__copy{gap:var(--space-2);flex-direction:column;max-width:40ch;display:flex}.snt-callout__title{font-size:var(--fs-2xl);letter-spacing:-.03em;word-break:keep-all;font-weight:700;line-height:1.15}.snt-callout__lead{color:var(--fg-muted);font-size:var(--fs-base);line-height:var(--lh-snug)}.snt-memo-toggle{margin:var(--space-3) 0 var(--space-2);background:var(--bg-elevated);border:1.5px solid var(--border);border-radius:var(--r-pill);font:inherit;font-size:var(--fs-sm);color:var(--fg-muted);cursor:pointer;transition:background var(--dur-2) var(--ease-out), border-color var(--dur-2) var(--ease-out), color var(--dur-2) var(--ease-out), transform 80ms var(--ease-spring);align-self:flex-start;align-items:center;gap:8px;padding:8px 14px;font-weight:600;display:inline-flex}.snt-memo-toggle:hover{background:var(--bg-sunken)}.snt-memo-toggle:active{transform:scale(.97)}.snt-memo-toggle.is-active{background:var(--brand);color:var(--brand-on);border-color:var(--brand)}.snt-memo-toggle.is-active .snt-memo-toggle__state{color:#fff}.snt-memo-toggle__icon{font-size:14px;line-height:1}.snt-memo-toggle__state{letter-spacing:1px;background:var(--bg-sunken);color:var(--fg-muted);border-radius:var(--r-pill);transition:background var(--dur-2), color var(--dur-2);padding:2px 8px;font-size:.7rem;font-weight:800}.snt-memo-toggle.is-active .snt-memo-toggle__state{background:#ffffff38}.snt-voca-step{gap:var(--space-3);padding:var(--space-2) 0;animation:snt-page-rise .35s var(--ease-out) both;flex-direction:column;display:flex}.snt-voca-step__label{font-size:var(--fs-xs);letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--fg-muted);font-weight:700}.snt-voca-step__label--sub{margin-top:var(--space-3);color:var(--fg-subtle)}.snt-voca-step__primary{flex-direction:column;gap:4px;display:flex}.snt-voca-step__word{font-size:var(--fs-3xl);letter-spacing:-.03em;color:var(--fg);font-weight:700;line-height:1.1}.snt-voca-step__meaning{font-size:var(--fs-lg);color:var(--fg-muted);font-weight:600}.snt-voca-step__pos{font-size:var(--fs-xs);letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--brand);background:var(--brand-soft);border-radius:var(--r-pill);align-self:flex-start;padding:4px 12px;font-weight:700;display:inline-block}.snt-voca-step__chips{gap:var(--space-2);flex-wrap:wrap;display:flex}.snt-voca-step__chip{font:inherit;font-size:var(--fs-base);color:var(--fg);background:var(--bg-sunken);border:1.5px solid var(--border);border-radius:var(--r-pill);cursor:default;transition:transform 80ms var(--ease-spring), background var(--dur-2) var(--ease-out), color var(--dur-2) var(--ease-out), border-color var(--dur-2) var(--ease-out);-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;padding:8px 14px;font-weight:600;display:inline-flex}.snt-voca-step__chip--lg{font-size:var(--fs-md);padding:12px 18px}.snt-voca-step__chips--syn .snt-voca-step__chip{background:var(--brand-soft);color:var(--coral-700);border-color:color-mix(in srgb, var(--brand) 25%, transparent)}.snt-voca-step__chips--ant .snt-voca-step__chip{background:var(--accent-soft);color:var(--navy-500);border-color:color-mix(in srgb, var(--accent) 25%, transparent)}.snt-voca-step__chip.is-hidden{cursor:pointer;letter-spacing:.05em;min-width:60px;background:var(--bg-sunken)!important;color:var(--fg-subtle)!important;border-style:dashed!important;border-color:var(--border-strong)!important}.snt-voca-step__chip.is-hidden:hover{transform:scale(1.04)}.snt-voca-step__chip.is-hidden:active{transform:scale(.95)}:root[data-theme=dark] .snt-voca-step__chips--syn .snt-voca-step__chip{color:var(--coral-300)}:root[data-theme=dark] .snt-voca-step__chips--ant .snt-voca-step__chip{color:var(--navy-200)}@media (prefers-color-scheme:dark){:root:not([data-theme]) .snt-voca-step__chips--syn .snt-voca-step__chip{color:var(--coral-300)}:root:not([data-theme]) .snt-voca-step__chips--ant .snt-voca-step__chip{color:var(--navy-200)}}.snt-voca-step__templates{gap:var(--space-2);flex-direction:column;display:flex}.snt-voca-step__template{text-align:left;background:var(--bg-elevated);border:1.5px solid var(--border);border-radius:var(--r-md);font:inherit;font-size:var(--fs-md);color:var(--fg);cursor:default;transition:background var(--dur-2) var(--ease-out), border-color var(--dur-2) var(--ease-out), transform 80ms var(--ease-out);padding:14px 18px;font-weight:500;display:block}.snt-voca-step__template strong{letter-spacing:-.01em;font-weight:800}.snt-voca-step__template.is-hidden{background:var(--bg-sunken);border-style:dashed;border-color:var(--border-strong);color:var(--fg-muted);text-align:center;cursor:pointer}.snt-voca-step__template.is-hidden:hover{border-color:var(--brand);color:var(--fg);transform:translateY(-1px)}.snt-voca-step__template.is-hidden:active{transform:scale(.99)}.snt-voca-step__examples{gap:var(--space-3);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.snt-voca-step__example{align-items:flex-start;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--r-md);transition:border-color var(--dur-2) var(--ease-out), transform var(--dur-2) var(--ease-out);display:flex}.snt-voca-step__example:hover{border-color:var(--coral-200);transform:translateY(-1px)}.snt-voca-step__example-num{color:#fff;width:28px;height:28px;font-weight:700;font-size:var(--fs-sm);border-radius:50%;flex:none;justify-content:center;align-items:center;margin-top:2px;display:inline-flex}.snt-voca-step__example-text{font-size:var(--fs-base);color:var(--fg);word-break:keep-all;margin:0;line-height:1.65}.snt-voca-step__example-mark{text-underline-offset:3px;font-weight:700;text-decoration:underline;text-decoration-thickness:2px}.back-btn{top:calc(60px + var(--safe-top) + 8px)!important;left:var(--space-3)!important;z-index:30!important}.snt-app-back{top:calc(60px + var(--safe-top) + 8px);left:var(--space-3);z-index:35;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--r-pill);height:36px;font:inherit;color:var(--fg);cursor:pointer;box-shadow:var(--shadow-sm);transition:background var(--dur-2) var(--ease-out), border-color var(--dur-2) var(--ease-out), transform 80ms var(--ease-out);align-items:center;gap:6px;padding:0 14px 0 12px;font-size:.86rem;font-weight:600;display:inline-flex;position:fixed}.snt-app-back:hover{background:var(--bg-sunken);border-color:var(--border-strong)}.snt-app-back:active{transform:scale(.97)}@media (min-width:1024px){.snt-app-back{top:16px;left:calc(var(--space-4) + 56px);height:36px;z-index:calc(var(--z-nav) + 5)}}@media (max-width:640px){.snt-app-back{top:calc(60px + var(--safe-top) + 8px);left:var(--space-3);height:32px;z-index:calc(var(--z-nav) + 5);padding:0 12px 0 10px;font-size:.78rem}}:root[data-theme=dark] .voca-meaning-badge,:root[data-theme=dark] .voca-shelf-title,:root[data-theme=dark] .step-tab-body,:root[data-theme=dark] .step-content,:root[data-theme=dark] .step-label{color:#fff!important}:root[data-theme=dark] .voca-meaning-badge{background:#f2733f33;border-color:#f2733f66}@media (prefers-color-scheme:dark){:root:not([data-theme]) .voca-meaning-badge,:root:not([data-theme]) .voca-shelf-title,:root:not([data-theme]) .step-tab-body,:root:not([data-theme]) .step-content,:root:not([data-theme]) .step-label{color:#fff!important}:root:not([data-theme]) .voca-meaning-badge{background:#f2733f33;border-color:#f2733f66}}@media (max-width:767px){.voca-shelf{display:none!important}.container{padding-left:var(--space-4)!important;padding-right:var(--space-4)!important}}@media (min-width:768px) and (max-width:1023px){.voca-shelf{width:96px!important;padding:.75rem .5rem 0!important;display:flex!important}.container{padding-left:116px!important;padding-right:var(--space-6)!important;max-width:none!important;margin:0!important}}@media (max-width:1023px){.flashcard-wrapper{touch-action:pan-y;background:var(--c-surface);border:1px solid var(--c-border);width:100%;box-shadow:var(--c-shadow-md);border-radius:18px;flex:auto;position:relative;overflow:hidden;perspective:none!important}.flashcard{will-change:transform;min-height:100%;transition:transform .28s cubic-bezier(.32,.72,0,1);box-shadow:none!important;background:var(--c-surface)!important;border:0!important;border-radius:0!important;grid-template-columns:1fr!important;gap:14px!important;padding:18px!important}.flashcard-peek{z-index:1!important;pointer-events:none!important;will-change:transform!important;transition:transform .28s cubic-bezier(.32,.72,0,1)!important;position:absolute!important;inset:0!important}.flashcard-peek .flashcard{height:100%!important;min-height:100%!important;animation:none!important}.flashcard-preview{background:var(--c-surface)!important}.flashcard-preview .voca-video-mode-btn{opacity:.7;pointer-events:none;cursor:default!important}.media-section{order:1;gap:10px!important}.info-section{order:2;gap:14px!important}.media-frame{border-radius:12px;aspect-ratio:16/10!important;height:auto!important;min-height:0!important;max-height:38vh!important}.media-frame-wrap{background:0 0!important}.media-video-wrap{aspect-ratio:16/10;border-radius:12px;max-height:38vh;line-height:0;display:block;overflow:hidden;background:0 0!important;width:100%!important}.media-video{border-radius:12px;aspect-ratio:auto!important;object-fit:cover!important;background:0 0!important;width:100%!important;height:100%!important;max-height:38vh!important;display:block!important}.binder-rings,.nav-btn{display:none!important}}.step-tabs-mobile{flex-direction:column;gap:8px;display:flex!important}.step-tabs-strip{background:var(--c-surface-2);border:1px solid var(--c-border);border-radius:999px;gap:4px;width:100%;padding:4px;display:flex;overflow:hidden}.step-tab-btn{min-width:0;color:var(--c-text-muted);cursor:pointer;min-height:44px;font-size:.86rem;font-weight:600;font-family:var(--c-font-sans);white-space:nowrap;text-align:center;background:0 0;border:none;border-radius:999px;flex:1 1 0;padding:10px 8px;line-height:1.1;transition:background .18s cubic-bezier(.22,.61,.36,1),color .18s cubic-bezier(.22,.61,.36,1),box-shadow .18s cubic-bezier(.22,.61,.36,1),transform .12s cubic-bezier(.22,.61,.36,1)}.step-tab-btn:active{transform:scale(.96)}.step-tab-btn.is-active{background:var(--c-surface);color:var(--c-text);box-shadow:var(--c-shadow-xs)}.step-tab-body{background:var(--c-surface-2);border:1px solid var(--c-border);min-height:160px;color:var(--c-text);border-radius:12px;padding:16px 18px;font-size:.95rem;line-height:1.6;animation:.22s cubic-bezier(.22,.61,.36,1) both stepTabSwap}@keyframes stepTabSwap{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.step-section-desktop{display:none!important}@media (min-width:1024px){.container{max-width:1280px;padding-left:160px;padding-right:var(--space-8);margin:0 auto}.flashcard{grid-template-columns:1fr 1.1fr;gap:2rem;width:100%;max-width:1080px;margin:0 auto}.flashcard-wrapper{width:100%;max-width:1080px;margin:0 auto}.header-top,.voca-chapter-tabs,.voca-search-wrap{max-width:1080px;margin-left:auto;margin-right:auto}.back-btn{top:84px!important;left:var(--space-5)!important;z-index:60!important}.flashcard .media-frame{aspect-ratio:16/10;max-height:360px}.flashcard .media-video,.flashcard .media-video-wrap{max-height:360px!important}}@media (min-width:1280px){.container{padding-left:180px}.flashcard .media-frame{max-height:420px}.flashcard .media-video,.flashcard .media-video-wrap{max-height:420px!important}}@keyframes snt-page-rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes snt-stagger-rise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes snt-fade-soft{0%{opacity:0}to{opacity:1}}@keyframes snt-pop{0%{opacity:0;transform:scale(.96)}60%{transform:scale(1.01)}to{opacity:1;transform:scale(1)}}.snt-dash>section,.snt-scores>section,.snt-scores>header,.snt-account>section,.snt-account>.snt-account-profile,.snt-account>.snt-account-card{animation:.55s cubic-bezier(.2,.8,.2,1) both snt-stagger-rise}.snt-dash>section:first-child{animation-delay:0s}.snt-dash>section:nth-child(2){animation-delay:80ms}.snt-dash>section:nth-child(3){animation-delay:.16s}.snt-dash>section:nth-child(4){animation-delay:.24s}.snt-scores>:first-child{animation-delay:0s}.snt-scores>:nth-child(2){animation-delay:70ms}.snt-scores>:nth-child(3){animation-delay:.14s}.snt-scores>:nth-child(n+4){animation-delay:.21s}.snt-account>:first-child{animation-delay:0s}.snt-account>:nth-child(2){animation-delay:70ms}.snt-account>:nth-child(3){animation-delay:.14s}.snt-account>:nth-child(n+4){animation-delay:.21s}.snt-auth-card{animation:.45s cubic-bezier(.34,1.56,.64,1) both snt-pop}.snt-scores-list>*,.snt-retry-list>*{animation:.45s cubic-bezier(.2,.8,.2,1) both snt-page-rise}.snt-scores-list>:first-child{animation-delay:50ms}.snt-scores-list>:nth-child(2){animation-delay:.11s}.snt-scores-list>:nth-child(3){animation-delay:.17s}.snt-scores-list>:nth-child(4){animation-delay:.23s}.snt-scores-list>:nth-child(5){animation-delay:.29s}.snt-scores-list>:nth-child(n+6){animation-delay:.35s}.snt-app-tabbar{animation:.4s cubic-bezier(.2,.8,.2,1) .1s both snt-page-rise}.snt-dash-quick__card--active{will-change:transform}.snt-dash-quick__card--active:active{transition:transform 80ms;transform:scale(.985)}.snt-chip,.snt-tabs__btn--active{transition:background var(--dur-2) var(--ease-out), color var(--dur-2) var(--ease-out), transform .12s var(--ease-spring)}.snt-btn--primary:active:not(:disabled){transform:scale(.96)}.snt-progress__fill{animation:.9s cubic-bezier(.2,.8,.2,1) .2s both snt-progress-mount}@keyframes snt-progress-mount{0%{transform:translate(-100%)}to{transform:translate(0)}}@media (prefers-reduced-motion:reduce){.snt-dash>section,.snt-scores>*,.snt-account>*,.snt-auth-card,.snt-scores-list>*,.snt-retry-list>*,.snt-app-tabbar,.snt-progress__fill{animation:none!important}}.c-btn{border-radius:var(--c-radius-md);font-family:var(--c-font-sans);cursor:pointer;white-space:nowrap;border:1px solid #0000;justify-content:center;align-items:center;gap:.5rem;padding:.65rem 1.2rem;font-size:.94rem;font-weight:500;line-height:1.2;text-decoration:none;transition:background .15s,border-color .15s,color .15s,box-shadow .15s,transform 50ms;display:inline-flex}.c-btn:active{transform:translateY(.5px)}.c-btn:disabled{opacity:.5;cursor:not-allowed}.c-btn-primary{background:var(--c-accent);border-color:var(--c-accent);color:#fff;box-shadow:var(--c-shadow-xs)}.c-btn-primary:hover:not(:disabled){background:var(--c-accent-hover);border-color:var(--c-accent-hover);box-shadow:var(--c-shadow-sm)}.c-btn-secondary{background:var(--c-surface);border-color:var(--c-border-2);color:var(--c-text);box-shadow:var(--c-shadow-xs)}.c-btn-secondary:hover:not(:disabled){background:var(--c-surface-2);border-color:var(--c-border-strong)}.c-btn-ghost{color:var(--c-text-muted);background:0 0;border-color:#0000}.c-btn-ghost:hover:not(:disabled){background:var(--c-surface-2);color:var(--c-text)}.c-btn-lg{border-radius:var(--c-radius-md);padding:.85rem 1.6rem;font-size:1rem}.c-btn-sm{padding:.45rem .85rem;font-size:.85rem}.c-card{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--c-radius-lg);padding:var(--c-space-6);box-shadow:var(--c-shadow-sm)}.c-h1,.c-h2,.c-h3{font-family:var(--c-font-serif);color:var(--c-text);letter-spacing:-.015em;font-weight:600;line-height:1.15}.c-h1{font-size:clamp(2rem,5vw,3.25rem)}.c-h2{font-size:clamp(1.5rem,3.5vw,2.1rem)}.c-h3{font-size:1.25rem}.c-eyebrow{letter-spacing:.16em;text-transform:uppercase;color:var(--c-text-soft);font-size:.72rem;font-weight:600}.c-chip{border-radius:var(--c-radius-pill);background:var(--c-surface-2);border:1px solid var(--c-border);color:var(--c-text-muted);align-items:center;padding:.25rem .7rem;font-size:.78rem;font-weight:500;display:inline-flex}.c-chip-accent{background:var(--c-accent-soft);border-color:var(--c-accent-soft-2);color:var(--c-accent-text)}.c-link{color:var(--c-accent);text-underline-offset:2px;text-decoration:underline;text-decoration-thickness:1px}.c-link:hover{color:var(--c-accent-hover)}.c-input{background:var(--c-surface);border:1px solid var(--c-border-2);color:var(--c-text);border-radius:var(--c-radius-md);font-size:1rem;font-family:var(--c-font-sans);outline:none;width:100%;padding:.65rem .9rem;transition:border-color .15s,box-shadow .15s}.c-input:focus{border-color:var(--c-accent);box-shadow:0 0 0 3px #cc785c26}.c-input::placeholder{color:var(--c-text-faint)}.c-page{background:var(--c-bg);min-height:100dvh;color:var(--c-text);font-family:var(--c-font-sans)}.c-container{width:100%;max-width:1180px;padding:0 var(--c-space-6);margin:0 auto}@media (max-width:640px){.c-container{padding:0 var(--c-space-4)}}.home-page{background:var(--c-bg);min-height:100dvh;color:var(--c-text);font-family:var(--c-font-sans);flex-direction:column;display:flex}.home-header{justify-content:space-between;align-items:center;width:100%;max-width:1280px;margin:0 auto;padding:1.25rem 2rem;display:flex}.home-brand-mark{font-family:var(--c-font-serif);letter-spacing:.02em;color:var(--c-text);font-size:1.15rem;font-weight:600}.home-nav{gap:.5rem;display:flex}.home-hero{flex:1;grid-template-columns:1fr 1.05fr;align-items:center;gap:4rem;width:100%;max-width:1280px;margin:0 auto;padding:3rem 2rem 4rem;display:grid}.home-hero-text{flex-direction:column;gap:1.25rem;display:flex}.home-hero-title{font-family:var(--c-font-serif);letter-spacing:-.035em;color:var(--c-text);margin:.5rem 0 .25rem;font-size:clamp(3.5rem,8vw,6rem);font-weight:600;line-height:.95}.home-hero-sub{color:var(--c-text-muted);max-width:32rem;margin:0;font-size:1.1rem;line-height:1.55}.home-hero-cta{flex-wrap:wrap;gap:.75rem;margin-top:.5rem;display:flex}.home-hero-media{justify-content:center;display:flex}.home-hero-video-card{aspect-ratio:16/9;background:0 0;width:100%;max-width:720px;position:relative;overflow:hidden}.home-hero-video{object-fit:cover;object-position:center center;background:0 0;width:100%;height:100%;display:block}.home-features{grid-template-columns:repeat(3,1fr);gap:1.25rem;width:100%;max-width:1280px;margin:0 auto;padding:2rem 2rem 3rem;display:grid}.home-feature{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--c-radius-lg);flex-direction:column;gap:.5rem;padding:1.5rem;transition:border-color .15s,box-shadow .15s,transform .15s;display:flex}.home-feature:hover{border-color:var(--c-border-strong);box-shadow:var(--c-shadow-md);transform:translateY(-2px)}.home-feature-icon{font-size:1.8rem}.home-feature-title{font-family:var(--c-font-serif);color:var(--c-text);margin:0;font-size:1.15rem;font-weight:600}.home-feature-desc{color:var(--c-text-muted);margin:0;font-size:.92rem;line-height:1.55}.home-footer-row{width:100%;max-width:1280px;color:var(--c-text-soft);border-top:1px solid var(--c-border);justify-content:space-between;margin:0 auto;padding:1.5rem 2rem;font-size:.8rem;display:flex}@media (max-width:900px){.home-hero{grid-template-columns:1fr;gap:1.25rem;padding:2rem 1.25rem 3rem}.home-hero-text{display:contents}.home-hero-text>.c-eyebrow{order:1}.home-hero-title{order:2}.home-hero-sub{order:3}.home-hero-media{order:4}.home-hero-cta{order:5;justify-content:center;width:100%;margin-top:.5rem;display:flex}.home-hero-cta .c-btn{width:100%;min-height:48px}.home-hero-video-card{max-width:100%;margin:0 auto}.home-features{grid-template-columns:1fr;padding:1rem 1.25rem 2rem}}@media (max-width:640px){.home-header{padding:1rem 1.25rem}.home-hero{gap:1.5rem;padding:1.5rem 1.25rem 2.25rem}.home-hero-title{font-size:clamp(2.5rem,11vw,3.6rem);line-height:1}.home-hero-sub{font-size:.98rem}.home-hero-cta{flex-direction:column;width:100%}.home-hero-cta .c-btn{flex:1;width:100%;min-height:44px}.home-features{gap:.85rem;padding:.75rem 1.25rem 2rem}.home-feature{padding:1.15rem 1.1rem}.home-feature-icon{font-size:1.5rem}.home-feature-title{font-size:1.05rem}.home-feature-desc{font-size:.88rem}.home-footer-row{text-align:center;flex-direction:column;align-items:center;gap:.25rem;padding:1.25rem}}@media (max-width:480px){.home-header{padding:.9rem 1rem}.home-brand-mark{font-size:1.05rem}.home-hero{gap:1.25rem;padding:1rem 1rem 2rem}.home-hero-title{font-size:clamp(2.2rem,13vw,3rem)}.home-hero-sub{font-size:.92rem;line-height:1.5}.home-features{padding:.5rem 1rem 1.5rem}.home-feature{gap:.35rem;padding:1rem .95rem}.home-footer-row{padding:1rem;font-size:.74rem}}@media (max-width:380px){.home-hero-title{font-size:clamp(1.9rem,14vw,2.5rem)}.home-feature-title{font-size:1rem}.home-feature-desc{font-size:.85rem}}.container{background:var(--c-bg);min-height:100dvh;color:var(--c-text);font-family:var(--c-font-sans);flex-direction:column;justify-content:center;align-items:center;padding:2rem;display:flex}.back-btn{background:var(--c-surface);border:1px solid var(--c-border-2);color:var(--c-text-muted);border-radius:var(--c-radius-pill);cursor:pointer;font-size:.88rem;font-weight:500;font-family:var(--c-font-sans);z-index:100;box-shadow:var(--c-shadow-xs);padding:.5rem 1.05rem;transition:background .15s,border-color .15s,color .15s,transform .15s;position:fixed;top:1.2rem;left:1.2rem}.back-btn:hover{background:var(--c-surface-2);border-color:var(--c-border-strong);color:var(--c-text);transform:translate(-2px)}.header-top{flex-direction:column;align-items:center;gap:1.5rem;margin-bottom:2rem;display:flex}.title{color:var(--c-text);letter-spacing:-.02em;font-size:clamp(2rem,4.5vw,2.6rem);font-weight:600;font-family:var(--c-font-serif);text-transform:none;background:0 0;-webkit-background-clip:initial;-webkit-text-fill-color:initial;background-clip:initial;filter:none}.mode-toggle{background:var(--c-surface-2);border:1px solid var(--c-border);border-radius:var(--c-radius-pill);padding:.3rem;display:flex}.mode-btn{color:var(--c-text-muted);border-radius:var(--c-radius-pill);cursor:pointer;font-size:.95rem;font-weight:500;font-family:var(--c-font-sans);background:0 0;border:none;padding:.55rem 1.4rem;transition:background .15s,color .15s}.mode-btn.active{background:var(--c-surface);color:var(--c-text);box-shadow:var(--c-shadow-xs)}.ebook-container{align-items:center;gap:2rem;width:100%;max-width:1160px;display:flex}.nav-btn{background:var(--c-surface);border:1px solid var(--c-border-2);color:var(--c-text-muted);cursor:pointer;width:48px;height:48px;box-shadow:var(--c-shadow-xs);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;transition:background .15s,border-color .15s,color .15s,transform .15s,box-shadow .15s;display:flex}.nav-btn:hover:not(:disabled){background:var(--c-accent-soft);border-color:var(--c-accent);color:var(--c-accent-text);box-shadow:var(--c-shadow-sm);transform:scale(1.04)}.nav-btn:disabled{opacity:.35;cursor:not-allowed}.flashcard-wrapper{perspective:1000px;flex:1;position:relative}.flashcard{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--c-radius-xl);box-shadow:var(--c-shadow-lg);color:var(--c-text);transform-origin:50%;grid-template-columns:1.3fr 1.4fr;gap:2.5rem;padding:2.75rem 2.75rem 2.25rem;display:grid}.flashcard.next{animation:.4s cubic-bezier(.25,.46,.45,.94) both slideInRight}.flashcard.prev{animation:.4s cubic-bezier(.25,.46,.45,.94) both slideInLeft}@keyframes slideInRight{0%{opacity:0;transform:translate(50px)}to{opacity:1;transform:translate(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-50px)}to{opacity:1;transform:translate(0)}}.binder-rings{z-index:10;pointer-events:none;justify-content:space-evenly;height:30px;display:flex;position:absolute;top:-15px;left:0;right:0}.ring{border:3px solid var(--c-border-2);background:0 0;border-radius:10px;width:18px;height:36px;box-shadow:1px 2px 3px #1414130f}.media-section{flex-direction:column;gap:1rem;display:flex}.media-frame{aspect-ratio:4/5;border-radius:var(--c-radius-lg);width:100%;box-shadow:var(--c-shadow-md);border:1px solid var(--c-border);background:#1a1815 50%/cover;min-height:380px;position:relative;overflow:hidden}.media-overlay{color:#ffffffe6;cursor:pointer;opacity:0;background:#0003;justify-content:center;align-items:center;font-size:3rem;transition:opacity .2s,background .2s;display:flex;position:absolute;inset:0}.media-frame:hover .media-overlay{opacity:1;background:#00000059}.info-section{flex-direction:column;gap:1.3rem;display:flex}.chapter-tab{background:var(--c-accent-soft);color:#fff;border-radius:var(--c-radius-pill);border:1px solid var(--c-accent-soft-2);align-self:flex-start;margin-bottom:.6rem;padding:.3rem 1rem;font-size:.85rem;font-weight:600;display:inline-block}.word-header{align-items:center;gap:1.1rem;margin-bottom:1.2rem;display:flex}.word-title{font-family:var(--c-font-word);color:#fff;background:var(--c-accent);border-radius:var(--c-radius-md);letter-spacing:-.01em;font-feature-settings:"ss01", "ss02";margin:0;padding:.45rem 1.4rem;font-size:clamp(2rem,4vw,2.6rem);font-weight:700;line-height:1.1}.word-pos{color:var(--c-text-muted);font-size:1.2rem;font-style:italic;font-weight:500}.step-item{flex-wrap:wrap;align-items:baseline;gap:.6rem;display:flex}.step-item.column{flex-direction:column;align-items:flex-start}.step-label{color:var(--c-accent-text);white-space:nowrap;font-size:1.05rem;font-weight:600;font-family:var(--c-font-serif)}.step-item.collapsible{flex-direction:column;align-items:flex-start;gap:.4rem;display:flex}.step-header{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:.5rem;width:100%;transition:opacity .2s;display:flex}.step-header:hover{opacity:.75}.step-toggle-icon{color:var(--c-accent);font-size:1rem;transition:transform .2s;transform:rotate(-90deg)}.step-toggle-icon.open{transform:rotate(0)}.step-toggle-all-wrap{justify-content:flex-end;margin:.2rem 0 .1rem;display:flex}.step-toggle-all-btn{background:var(--c-surface);color:var(--c-text-muted);border:1px solid var(--c-border-2);border-radius:var(--c-radius-pill);cursor:pointer;font-size:.8rem;font-weight:500;font-family:var(--c-font-sans);padding:.3rem .85rem;transition:background .15s,color .15s,border-color .15s}.step-toggle-all-btn:hover{background:var(--c-accent-soft);border-color:var(--c-accent);color:var(--c-accent-text)}.step-content{color:var(--c-text);font-size:1.1rem;font-weight:500;line-height:1.6}.step-content-sub{color:var(--c-text-muted);margin-left:.5rem;font-size:.98rem;font-weight:400}.sentence-list{flex-direction:column;gap:.6rem;width:100%;margin-top:.2rem;display:flex}.sentence-item{color:var(--c-text);font-size:1.08rem;font-weight:400;line-height:1.6}.page-indicator{color:var(--c-text-soft);letter-spacing:.14em;font-size:.82rem;font-weight:500;font-family:var(--c-font-serif);font-style:italic;position:absolute;bottom:-28px;right:0}.quiz-container{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--c-radius-xl);width:100%;max-width:900px;color:var(--c-text);box-shadow:var(--c-shadow-lg);gap:2.5rem;padding:2.5rem;display:flex}.quiz-image-section{flex-direction:column;flex:1;gap:1rem;display:flex}.quiz-hint{color:var(--c-accent-text);text-align:center;background:var(--c-accent-soft);border:1px solid var(--c-accent-soft-2);border-radius:var(--c-radius-md);padding:.95rem;font-size:1.15rem;font-weight:600}.quiz-questions{flex-direction:column;flex:1.5;justify-content:center;gap:1rem;display:flex}.quiz-title{font-family:var(--c-font-serif);color:var(--c-text);letter-spacing:-.015em;margin-bottom:1rem;font-size:1.6rem;font-weight:600}.quiz-option{background:var(--c-surface);border:1.5px solid var(--c-border-2);border-radius:var(--c-radius-md);color:var(--c-text);cursor:pointer;text-align:left;font-size:1.05rem;font-weight:500;font-family:var(--c-font-sans);padding:.9rem 1.3rem;transition:background .15s,border-color .15s,color .15s}.quiz-option:hover{border-color:var(--c-accent);background:var(--c-accent-soft)}.quiz-option.correct{background:var(--c-success-bg);border-color:var(--c-success);color:var(--c-success)}.quiz-option.incorrect{background:var(--c-error-bg);border-color:var(--c-error);color:var(--c-error)}.quiz-feedback{text-align:center;margin-top:1rem;font-size:1.1rem;font-weight:600}.quiz-feedback.success{color:var(--c-success)}.quiz-feedback.error{color:var(--c-error)}.next-btn{background:var(--c-accent);color:#fff;border:1px solid var(--c-accent);border-radius:var(--c-radius-md);cursor:pointer;font-size:1.05rem;font-weight:600;font-family:var(--c-font-sans);margin-top:1rem;padding:.85rem 1rem;transition:background .15s}.next-btn:hover{background:var(--c-accent-hover)}.story-root{background:var(--c-bg);min-height:100dvh;color:var(--c-text);font-family:var(--c-font-sans);flex-direction:column;display:flex;overflow:hidden}.story-header{background:var(--c-surface);border-bottom:1px solid var(--c-border);z-index:10;flex-shrink:0;justify-content:space-between;align-items:center;padding:.9rem 1.5rem;display:flex}.story-back-btn{background:var(--c-surface);border:1px solid var(--c-border);color:var(--c-text-muted);border-radius:var(--c-radius-pill);cursor:pointer;font-size:.85rem;font-family:var(--c-font-sans);padding:.4rem 1rem;transition:all .2s}.story-back-btn:hover{background:var(--c-surface-2);color:var(--c-text)}.story-header-title{color:var(--c-text-muted);align-items:center;gap:.5rem;font-size:.95rem;display:flex}.story-header-brand{color:var(--c-accent);font-weight:800;font-family:var(--c-font-serif)}.story-header-sep{opacity:.4;color:var(--c-text-faint)}.story-autoplay-btn{background:var(--c-surface);border:1px solid var(--c-border);color:var(--c-text-muted);border-radius:var(--c-radius-pill);cursor:pointer;font-size:.85rem;font-family:var(--c-font-sans);padding:.4rem 1rem;transition:all .2s}.story-autoplay-btn.active{background:var(--c-accent-soft);border-color:var(--c-accent-soft-2);color:var(--c-accent-text)}.story-autoplay-btn:hover{background:var(--c-surface-2)}.story-main{flex:1;grid-template-columns:1fr 1fr;gap:0;height:calc(100dvh - 110px);min-height:0;display:grid;overflow:hidden}.story-fade-in{animation:.4s fadeIn}.story-fade-out{opacity:0;transition:opacity .3s}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.story-left-col{flex-direction:column;gap:0;display:flex;overflow:hidden}.story-scene-wrap{background:var(--c-surface-2);flex:1;justify-content:center;align-items:stretch;min-height:0;display:flex;position:relative;overflow:hidden}.story-keywords-panel{background:var(--c-surface);border-top:1px solid var(--c-border);flex-shrink:0;padding:.85rem 1rem}.story-keywords-title{letter-spacing:.1em;text-transform:uppercase;color:var(--c-accent-text);margin-bottom:.55rem;font-size:.7rem;font-weight:700}.story-keywords-list{flex-direction:column;gap:.35rem;display:flex}.story-keyword-item{align-items:baseline;gap:.55rem;display:flex}.story-keyword-word{color:var(--c-accent);font-size:.88rem;font-weight:700;font-family:var(--c-font-sans);flex-shrink:0}.story-keyword-meaning{color:var(--c-text-muted);font-size:.78rem;font-family:var(--c-font-sans)}.story-canvas{object-fit:cover;display:block;width:100%!important;height:100%!important}.story-chapter-overlay{text-align:center;background:#1f1e1d8c;flex-direction:column;justify-content:center;align-items:center;gap:.8rem;display:flex;position:absolute;inset:0}.story-chapter-num{letter-spacing:6px;color:#ffffffb3;text-transform:uppercase;font-size:.8rem;font-weight:800}.story-chapter-title{color:#fff;font-size:clamp(1.6rem,3vw,2.8rem);font-weight:800;font-family:var(--c-font-serif);text-shadow:0 2px 20px #1f1e1d80}.story-text-wrap{background:var(--c-surface);border-left:1px solid var(--c-border);flex-direction:column;gap:1.2rem;padding:2rem 2.5rem;display:flex;overflow-y:auto}.story-chapter-badge{background:var(--c-accent-soft);border:1px solid var(--c-accent-soft-2);color:var(--c-accent-text);letter-spacing:2px;border-radius:var(--c-radius-md);text-transform:uppercase;align-self:flex-start;padding:3px 12px;font-size:.75rem;font-weight:700;display:inline-block}.story-text{color:var(--c-text-2);font-size:clamp(.95rem,1.4vw,1.15rem);line-height:1.9;font-family:var(--c-font-serif);flex:1}.story-word{display:inline}.story-word-bold{color:var(--c-accent);font-weight:700;font-family:var(--c-font-sans);cursor:pointer;padding:0 1px;font-style:normal}.story-word-bold:hover{text-underline-offset:3px;text-decoration:underline}.story-segment-text{word-break:break-word;overflow-wrap:break-word;white-space:normal;line-height:1.9;display:block}@keyframes wordIn{0%{opacity:0;filter:blur(4px);transform:translateY(6px)scale(.94)}to{opacity:1;filter:blur();transform:translateY(0)scale(1)}}.story-word-in{animation:.45s cubic-bezier(.16,1,.3,1) both wordIn;display:inline}.story-vocab-bar{border-top:1px solid var(--c-border);flex-wrap:wrap;gap:.5rem;padding-top:1rem;display:flex}.story-vocab-chip{background:var(--c-accent-soft);border:1px solid var(--c-accent-soft-2);border-radius:var(--c-radius-pill);align-items:center;gap:.4rem;padding:3px 10px;font-size:.78rem;display:flex}.story-vocab-chip-word{color:var(--c-accent-text);font-weight:700}.story-vocab-chip-meaning{color:var(--c-text-muted)}.story-summary{background:var(--c-bg);flex-direction:column;grid-column:1/-1;align-items:center;gap:2rem;padding:3rem;display:flex;overflow-y:auto}.story-summary-title{color:var(--c-text);font-size:1.6rem;font-weight:800;font-family:var(--c-font-serif)}.story-summary-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem;width:100%;max-width:800px;display:grid}.story-summary-item{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--c-radius-md);box-shadow:var(--c-shadow-xs);flex-direction:column;gap:.3rem;padding:1rem 1.2rem;transition:transform .2s,border-color .2s;display:flex}.story-summary-item:hover{border-color:var(--c-accent-soft-2);box-shadow:var(--c-shadow-sm);transform:translateY(-2px)}.story-summary-word{color:var(--c-accent);font-size:1.05rem;font-weight:800}.story-summary-meaning{color:var(--c-text-muted);font-size:.85rem}.story-controls{background:var(--c-surface);border-top:1px solid var(--c-border);flex-shrink:0;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.5rem;display:flex}.story-nav-btn{background:var(--c-accent-soft);border:1px solid var(--c-accent-soft-2);color:var(--c-accent-text);border-radius:var(--c-radius-pill);cursor:pointer;font-size:.9rem;font-weight:700;font-family:var(--c-font-sans);white-space:nowrap;padding:.55rem 1.4rem;transition:all .2s}.story-nav-btn:hover:not(:disabled){background:var(--c-accent);color:#fff;border-color:var(--c-accent)}.story-nav-btn:disabled{opacity:.4;cursor:not-allowed}.story-right-controls{align-items:center;gap:.6rem;display:flex}.story-skip-btn{background:var(--c-surface);border:1px solid var(--c-border);color:var(--c-text-muted);border-radius:var(--c-radius-pill);cursor:pointer;font-size:.8rem;font-family:var(--c-font-sans);white-space:nowrap;padding:.45rem 1rem;transition:all .2s}.story-skip-btn:hover{color:var(--c-text);border-color:var(--c-border-2);background:var(--c-surface-2)}.story-progress{flex-wrap:wrap;justify-content:center;gap:6px;max-width:400px;display:flex}.story-dot{background:var(--c-border-2);cursor:pointer;border:none;border-radius:50%;width:8px;height:8px;padding:0;transition:all .2s}.story-dot.active{background:var(--c-accent);transform:scale(1.4)}.story-dot.dot-chapter{background:var(--c-accent-soft-2);border-radius:3px;width:12px}.story-dot.dot-chapter.active{background:var(--c-accent)}.story-dot.dot-summary{background:var(--c-accent-soft-2);border-radius:3px;width:12px}.story-dot.dot-summary.active{background:var(--c-accent)}.vocab-popup-stack-inline{border-top:1px solid var(--c-border);flex-flow:wrap;gap:10px;margin-top:1.2rem;padding-top:1rem;display:flex}.vocab-popup-badge{background:var(--c-accent-soft);border:1px solid var(--c-accent-soft-2);border-radius:var(--c-radius-lg);box-shadow:var(--c-shadow-md);pointer-events:none;flex-direction:column;align-items:center;min-width:110px;padding:.9rem 1.5rem;animation:.35s cubic-bezier(.34,1.56,.64,1) forwards badgeIn;display:flex}@keyframes badgeIn{0%{opacity:0;transform:translateY(12px)scale(.85)}to{opacity:1;transform:translateY(0)scale(1)}}.vocab-popup-word{color:var(--c-accent);letter-spacing:.5px;font-size:1.4rem;font-weight:800;font-family:var(--c-font-sans);line-height:1.2}.vocab-popup-meaning{color:var(--c-text-2);font-size:.9rem;font-weight:500;font-family:var(--c-font-sans);text-align:center;margin-top:4px}.story-word-bold{cursor:pointer}.story-word-bold:hover{-webkit-text-decoration:underline dotted var(--c-accent);text-decoration:underline dotted var(--c-accent)}.vocab-tooltip-wrap{z-index:2000;width:320px;position:fixed}.vocab-tooltip{background:var(--c-surface);border:1px solid var(--c-border-2);border-radius:var(--c-radius-lg);box-shadow:var(--c-shadow-lg);flex-direction:column;gap:.7rem;padding:1rem 1.2rem;animation:.2s cubic-bezier(.34,1.56,.64,1) forwards tooltipIn;display:flex}@keyframes tooltipIn{0%{opacity:0;transform:scale(.9)translateY(-6px)}to{opacity:1;transform:scale(1)translateY(0)}}.vocab-tooltip-header{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.vocab-tooltip-word{color:var(--c-accent);font-size:1.1rem;font-weight:800;font-family:var(--c-font-serif)}.vocab-tooltip-meaning{color:var(--c-text-muted);margin-left:auto;font-size:.8rem}.vocab-tooltip-close{color:var(--c-text-soft);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:2px 4px;font-size:.85rem;transition:color .15s}.vocab-tooltip-close:hover{color:var(--c-text)}.vocab-tooltip-video{border-radius:var(--c-radius-md);object-fit:cover;background:var(--c-surface-3);width:100%;max-height:180px;display:block}.vocab-tooltip-section{flex-direction:column;gap:.3rem;display:flex}.vocab-tooltip-label{color:var(--c-text-soft);letter-spacing:1px;text-transform:uppercase;font-size:.7rem;font-weight:700}.vocab-tooltip-tags{flex-wrap:wrap;gap:.3rem;display:flex}.vocab-tag{border-radius:var(--c-radius-md);padding:2px 9px;font-size:.78rem;font-weight:600}.vocab-tag-syn{background:var(--c-info-bg);color:var(--c-info);border:1px solid var(--c-border)}.vocab-tag-ant{background:var(--c-error-bg);color:var(--c-error);border:1px solid var(--c-border)}.story-tts-btn{background:var(--c-surface);border:1px solid var(--c-border);color:var(--c-text-muted);border-radius:var(--c-radius-pill);cursor:pointer;font-size:.82rem;font-family:var(--c-font-sans);padding:.4rem 1rem;transition:all .2s}.story-tts-btn:hover{background:var(--c-surface-2);color:var(--c-text)}.story-speakers{gap:.5rem;margin-bottom:.5rem;display:flex}.story-speaker-badge{border-radius:var(--c-radius-md);padding:2px 10px;font-size:.72rem;font-weight:700}.spk-narrator,.spk-male{background:var(--c-info-bg);color:var(--c-info);border:1px solid var(--c-border)}.story-header-actions{align-items:center;gap:.5rem;display:flex}.story-summary-syns{color:var(--c-info);font-size:.75rem}@media (max-width:768px){.story-main{grid-template-rows:auto 1fr;grid-template-columns:1fr}.story-scene-wrap{max-height:240px}.story-summary{grid-column:1}.flashcard{grid-template-columns:1fr;gap:2rem;padding:2rem}.quiz-container,.home-cards{flex-direction:column}.home-card{width:100%;max-width:320px}}.voca-progress-wrap{flex-direction:column;gap:.5rem;margin:-.25rem 0 1.4rem;display:flex}.voca-progress-track{background:var(--c-surface-2);border-radius:var(--c-radius-pill);height:7px;overflow:hidden;box-shadow:inset 0 1px 2px #1414130f}.voca-progress-fill{background:var(--c-accent);border-radius:var(--c-radius-pill);height:100%;transition:width .55s cubic-bezier(.22,1,.36,1)}.voca-progress-label{color:var(--c-text-muted);letter-spacing:.02em;align-items:center;gap:.55rem;font-size:.78rem;font-weight:500;display:flex}.voca-done-badge{background:var(--c-success-bg);color:var(--c-success);border:1px solid var(--c-border);border-radius:var(--c-radius-pill);letter-spacing:.03em;padding:2px 10px;font-size:.7rem;font-weight:700}.voca-done-badge--bookmark{background:var(--c-accent-soft);color:var(--c-accent-text);border-color:var(--c-accent-soft-2)}.voca-test-start-btn{background:var(--c-accent);color:#fff;border:1px solid var(--c-accent);border-radius:var(--c-radius-md);letter-spacing:.01em;cursor:pointer;white-space:nowrap;font-size:.9rem;font-weight:700;font-family:var(--c-font-sans);box-shadow:var(--c-shadow-sm);padding:.6rem 1.35rem;transition:transform .2s cubic-bezier(.34,1.4,.64,1),box-shadow .2s,background .2s;position:relative}.voca-test-start-btn:hover{background:var(--c-accent-hover);border-color:var(--c-accent-hover);box-shadow:var(--c-shadow-md);transform:translateY(-2px)}.voca-test-start-btn:active{transform:translateY(0)}.voca-test-start-btn--scores{background:var(--c-success);border-color:var(--c-success)}.voca-test-start-btn--scores:hover{box-shadow:var(--c-shadow-md);background:#3f6448;border-color:#3f6448}.voca-test-ready-dot{background:var(--c-success);border:2px solid var(--c-bg);border-radius:50%;width:10px;height:10px;animation:2s ease-in-out infinite testReadyPulse;position:absolute;top:-4px;right:-4px;box-shadow:0 0 10px #4d7c5a80}@keyframes testReadyPulse{0%,to{box-shadow:0 0 #4d7c5a66}50%{box-shadow:0 0 0 6px #4d7c5a00}}.exam-root{background:var(--c-bg);min-height:100dvh;font-family:var(--c-font-sans);color:var(--c-text);flex-direction:column;display:flex}.exam-header{background:var(--c-surface);border-bottom:1px solid var(--c-border);justify-content:space-between;align-items:center;padding:.9rem 1.8rem;display:flex}.exam-exit-btn{background:var(--c-surface);border:1px solid var(--c-border);color:var(--c-text-muted);border-radius:var(--c-radius-sm);cursor:pointer;font-size:.85rem;font-family:var(--c-font-sans);padding:.4rem 1rem;transition:all .2s}.exam-exit-btn:hover{background:var(--c-error-bg);border-color:var(--c-error);color:var(--c-error)}.exam-header-center{flex-direction:column;align-items:center;gap:.2rem;display:flex}.exam-title{color:var(--c-text);font-size:1rem;font-weight:700;font-family:var(--c-font-serif)}.exam-progress-text{color:var(--c-text-soft);font-size:.75rem}.exam-timer{color:var(--c-warning);background:var(--c-warning-bg);border-radius:var(--c-radius-md);font-variant-numeric:tabular-nums;letter-spacing:1px;border:1px solid var(--c-border);padding:.4rem 1rem;font-size:1.1rem;font-weight:800}.exam-timer.urgent{color:var(--c-error);background:var(--c-error-bg);border-color:var(--c-error);animation:1s ease-in-out infinite urgentPulse}@keyframes urgentPulse{0%,to{opacity:1}50%{opacity:.6}}.exam-part-label{text-align:center;background:var(--c-accent-soft);color:var(--c-accent-text);letter-spacing:1px;border-bottom:1px solid var(--c-accent-soft-2);padding:.6rem;font-size:.8rem;font-weight:700}.exam-body{box-sizing:border-box;flex-direction:column;flex:1;align-items:center;gap:2rem;width:100%;max-width:760px;margin:0 auto;padding:2.5rem 1rem 1.5rem;display:flex}.exam-question-wrap{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--c-radius-xl);box-sizing:border-box;width:100%;box-shadow:var(--c-shadow-sm);padding:2rem 2.5rem}.exam-qnum{color:var(--c-accent);letter-spacing:1px;margin-bottom:.6rem;font-size:.85rem;font-weight:800}.exam-qtext{color:var(--c-text);font-size:1.15rem;font-weight:700;line-height:1.5;font-family:var(--c-font-serif);margin-bottom:1.4rem}.exam-sentence{color:var(--c-text-2);background:var(--c-surface-2);border-left:3px solid var(--c-accent);border-radius:0 var(--c-radius-md) var(--c-radius-md) 0;margin-bottom:1.4rem;padding:.9rem 1.2rem;font-size:1rem;font-style:italic;line-height:1.7}.exam-blank{color:var(--c-accent);letter-spacing:2px;border-bottom:2px solid var(--c-accent);padding-bottom:1px;font-weight:800}.exam-options{flex-direction:column;gap:.75rem;display:flex}.exam-option{background:var(--c-surface);border:1.5px solid var(--c-border);color:var(--c-text-2);border-radius:var(--c-radius-md);cursor:pointer;text-align:left;font-size:.97rem;font-family:var(--c-font-sans);box-sizing:border-box;align-items:center;gap:1rem;width:100%;padding:.9rem 1.2rem;transition:all .18s;display:flex}.exam-option:hover{background:var(--c-surface-2);border-color:var(--c-border-2);color:var(--c-text)}.exam-option.selected{background:var(--c-accent-soft);border-color:var(--c-accent);color:var(--c-accent-text)}:root[data-theme=dark] .exam-option.selected{color:#fff!important}@media (prefers-color-scheme:dark){:root:not([data-theme]) .exam-option.selected{color:#fff!important}}.exam-option-num{color:var(--c-accent);min-width:1.4rem;font-size:1rem;font-weight:800}.exam-dots-wrap{justify-content:center;width:100%;display:flex}.exam-dots{flex-wrap:wrap;justify-content:center;gap:6px;max-width:480px;display:flex}.exam-dot{border:1.5px solid var(--c-border-2);background:var(--c-surface);cursor:pointer;border-radius:50%;width:18px;height:18px;padding:0;font-size:0;transition:all .15s}.exam-dot.done{background:var(--c-accent-soft-2);border-color:var(--c-accent)}.exam-dot.current{border-color:var(--c-accent);background:var(--c-accent);box-shadow:0 0 0 3px var(--c-accent-soft);transform:scale(1.25)}.exam-nav{justify-content:space-between;width:100%;display:flex}.exam-nav-btn{background:var(--c-surface);border:1px solid var(--c-border);color:var(--c-text-muted);border-radius:var(--c-radius-md);cursor:pointer;font-size:.95rem;font-weight:700;font-family:var(--c-font-sans);padding:.75rem 2rem;transition:all .2s}.exam-nav-btn:disabled{opacity:.4;cursor:not-allowed}.exam-nav-btn:not(:disabled):hover{background:var(--c-surface-2);color:var(--c-text);border-color:var(--c-border-2)}.exam-nav-btn.primary{background:var(--c-accent-soft);border-color:var(--c-accent);color:var(--c-accent-text)}.exam-nav-btn.primary:hover{background:var(--c-accent);color:#fff}.exam-nav-btn.submit{background:var(--c-accent);border:1px solid var(--c-accent);color:#fff;padding:.75rem 2.5rem}.exam-nav-btn.submit:hover{background:var(--c-accent-hover);border-color:var(--c-accent-hover);transform:translateY(-1px)}.exam-modal-backdrop{z-index:9999;background:#1f1e1d66;justify-content:center;align-items:center;animation:.2s fadeIn;display:flex;position:fixed;inset:0}.exam-modal{background:var(--c-surface);border:1px solid var(--c-border-2);border-radius:var(--c-radius-xl);text-align:center;width:90%;max-width:440px;box-shadow:var(--c-shadow-xl);flex-direction:column;align-items:center;gap:1.2rem;padding:2.5rem 2.8rem;animation:.25s cubic-bezier(.34,1.56,.64,1) forwards modalPop;display:flex}@keyframes modalPop{0%{opacity:0;transform:scale(.85)}to{opacity:1;transform:scale(1)}}.exam-modal-icon{font-size:2.8rem}.exam-modal-title{color:var(--c-text);font-size:1.2rem;font-weight:800;font-family:var(--c-font-serif);margin:0}.exam-modal-text{color:var(--c-text-muted);white-space:pre-wrap;margin:0;font-size:.9rem;line-height:1.7}.exam-modal-actions{gap:.75rem;display:flex}.exam-modal-stay{background:var(--c-surface);border:1px solid var(--c-border);color:var(--c-text-2);border-radius:var(--c-radius-md);cursor:pointer;font-size:.9rem;font-weight:700;font-family:var(--c-font-sans);padding:.65rem 1.5rem;transition:all .2s}.exam-modal-stay:hover{background:var(--c-surface-2);color:var(--c-text)}.exam-modal-leave{background:var(--c-accent);border:1px solid var(--c-accent);color:#fff;border-radius:var(--c-radius-md);cursor:pointer;font-size:.9rem;font-weight:700;font-family:var(--c-font-sans);padding:.65rem 1.5rem;transition:all .2s}.exam-modal-leave:hover{background:var(--c-accent-hover);border-color:var(--c-accent-hover);transform:translateY(-1px)}.exam-result-screen{flex-direction:column;align-items:center;gap:1.5rem;max-width:560px;margin:3rem auto;padding:2rem 1rem;display:flex}.exam-result-badge{border-radius:var(--c-radius-pill);padding:.5rem 1.6rem;font-size:1.2rem;font-weight:800}.exam-result-badge.pass{background:var(--c-success-bg);color:var(--c-success);border:1px solid var(--c-border)}.exam-result-badge.fail{background:var(--c-error-bg);color:var(--c-error);border:1px solid var(--c-border)}.exam-result-title{color:var(--c-text);font-size:1.8rem;font-weight:800;font-family:var(--c-font-serif);margin:0}.exam-result-score{align-items:baseline;gap:.3rem;display:flex}.exam-score-num{color:var(--c-accent);font-size:5rem;font-weight:900;line-height:1;font-family:var(--c-font-serif)}.exam-score-den{color:var(--c-text-faint);font-size:1.5rem}.exam-result-pct{color:var(--c-accent-text);font-size:1.5rem;font-weight:800}.exam-result-bars{background:var(--c-surface);border-radius:var(--c-radius-lg);border:1px solid var(--c-border);width:100%;box-shadow:var(--c-shadow-sm);flex-direction:column;gap:.8rem;padding:1.2rem 1.5rem;display:flex}.exam-bar-row{align-items:center;gap:.8rem;display:flex}.exam-bar-label{color:var(--c-text-muted);min-width:80px;font-size:.8rem}.exam-bar-track{background:var(--c-surface-2);border-radius:var(--c-radius-pill);flex:1;height:7px;overflow:hidden}.exam-bar-fill{background:var(--c-accent);border-radius:var(--c-radius-pill);height:100%;transition:width .8s}.exam-bar-val{color:var(--c-text-muted);text-align:right;min-width:32px;font-size:.8rem;font-weight:700}.exam-result-actions{flex-wrap:wrap;justify-content:center;gap:.8rem;display:flex}.exam-btn-primary{background:var(--c-accent);border:1px solid var(--c-accent);color:#fff;border-radius:var(--c-radius-lg);cursor:pointer;font-size:1rem;font-weight:700;font-family:var(--c-font-sans);padding:.8rem 2rem;transition:all .2s}.exam-btn-primary:hover{background:var(--c-accent-hover);border-color:var(--c-accent-hover);transform:translateY(-1px)}.exam-btn-secondary{background:var(--c-surface);border:1px solid var(--c-border);color:var(--c-text-2);border-radius:var(--c-radius-lg);cursor:pointer;font-size:1rem;font-weight:700;font-family:var(--c-font-sans);padding:.8rem 2rem;transition:all .2s}.exam-btn-secondary:hover{background:var(--c-surface-2);color:var(--c-text);border-color:var(--c-border-2)}.exam-review-screen{max-width:1000px;margin:2rem auto;padding:0 1rem 3rem}.exam-review-header{border-bottom:1px solid var(--c-border);justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding:1rem 0;display:flex}.exam-review-title{color:var(--c-text);font-size:1.6rem;font-weight:800;font-family:var(--c-font-serif);margin:0}.exam-review-list{grid-template-columns:repeat(2,1fr);gap:1.2rem;display:grid}.exam-review-item{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--c-radius-lg);height:100%;box-shadow:var(--c-shadow-xs);flex-direction:column;gap:.8rem;padding:1.4rem 1.8rem;display:flex}.exam-review-qnum{color:var(--c-accent);letter-spacing:1px;font-size:.9rem;font-weight:800}.exam-review-type{color:var(--c-text-soft);font-size:.85rem;font-weight:500}.exam-review-qtext{color:var(--c-text);font-size:1.15rem;font-weight:700;font-family:var(--c-font-serif)}.exam-review-sentence{color:var(--c-text-2);background:var(--c-surface-2);border-radius:var(--c-radius-md);padding:.8rem 1.1rem;font-size:1.05rem;font-style:italic;line-height:1.5}.exam-review-answers{flex-direction:column;gap:.5rem;margin-top:.4rem;display:flex}.exam-review-wrong{color:var(--c-error);font-size:1.05rem;font-weight:700}.exam-review-correct{color:var(--c-success);font-size:1.05rem;font-weight:700}.exam-review-perfect{text-align:center;color:var(--c-success);padding:3rem;font-size:1.5rem}@media (max-width:768px){.exam-review-list{grid-template-columns:1fr}.exam-review-screen{max-width:100%}.exam-review-qtext{font-size:1rem}.exam-review-sentence{font-size:.9rem}.exam-review-wrong,.exam-review-correct{font-size:.95rem}}.voca-chapter-tabs{scroll-snap-type:x proximity;scrollbar-width:none;-webkit-overflow-scrolling:touch;background:0 0;border:none;border-radius:0;gap:.4rem;margin:0 0 1.1rem;padding:.25rem .1rem;display:flex;overflow-x:auto}.voca-chapter-tabs::-webkit-scrollbar{display:none}.voca-chapter-tab{scroll-snap-align:start;background:var(--c-surface);border:1.5px solid var(--c-border);color:var(--c-text-muted);cursor:pointer;letter-spacing:.005em;white-space:nowrap;font-size:.85rem;font-weight:600;font-family:var(--c-font-sans);border-radius:999px;flex:none;align-items:center;gap:.4rem;padding:.5rem .95rem .5rem .8rem;transition:background .18s cubic-bezier(.22,.61,.36,1),color .18s cubic-bezier(.22,.61,.36,1),border-color .18s cubic-bezier(.22,.61,.36,1),transform .18s cubic-bezier(.22,.61,.36,1),box-shadow .18s cubic-bezier(.22,.61,.36,1);position:relative;display:inline-flex!important}.voca-chapter-tab:before{content:"";background:var(--tab-color,var(--c-accent));border-radius:50%;flex:none;width:8px;height:8px;transition:transform .18s,background .18s}.voca-chapter-tab:hover:not(.active){background:var(--c-surface-2);border-color:var(--c-border-2);color:var(--c-text);transform:translateY(-1px)}.voca-chapter-tab.active{box-shadow:0 4px 12px color-mix(in srgb, var(--tab-color,var(--c-accent)) 28%, transparent), 0 1px 3px #1414130f;transform:translateY(-1px);background:var(--tab-color,var(--c-accent))!important;border-color:var(--tab-color,var(--c-accent))!important;color:#fff!important}.voca-chapter-tab.active:before{transform:scale(.9);background:#fff!important}.voca-tab-count{letter-spacing:.02em;background:var(--c-surface-2);color:var(--c-text-soft);border:1px solid var(--c-border);border-radius:999px;padding:1px 7px;font-size:.72rem;font-weight:700;transition:background .18s,color .18s,border-color .18s}.voca-chapter-tab.active .voca-tab-count{color:#fff!important;background:#ffffff38!important;border-color:#ffffff59!important}@media (max-width:768px){.voca-chapter-tabs{box-sizing:border-box;flex-wrap:nowrap;justify-content:space-between;gap:6px;width:100%;margin:0 0 12px;padding:4px 0 8px;display:flex;overflow:visible}.voca-chapter-tab{white-space:nowrap;min-height:44px;border-width:1.5px!important;flex:1 1 0!important;justify-content:center!important;gap:5px!important;min-width:0!important;padding:8px 6px!important;font-size:.8rem!important}.voca-chapter-tab:before{flex-shrink:0;width:6px!important;height:6px!important}.voca-tab-count{flex-shrink:0;padding:1px 5px!important;font-size:.65rem!important}}@media (max-width:440px){.voca-chapter-tab{gap:3px!important;padding:8px 4px!important;font-size:.74rem!important}.voca-chapter-tab:before{display:none!important}.voca-tab-count{padding:1px 4px!important;font-size:.6rem!important}}@media (max-width:360px){.voca-chapter-tab{padding:8px 2px!important;font-size:.7rem!important}.voca-tab-count{padding:0 3px!important;font-size:.58rem!important}}.voca-search-wrap{align-items:center;display:flex}.voca-search-input{background:var(--c-surface);border:1.5px solid var(--c-border);color:var(--c-text);border-radius:var(--c-radius-md);font-size:16px;font-family:var(--c-font-sans);outline:none;width:190px;padding:.5rem 1rem;transition:border-color .22s,background .22s,box-shadow .22s}.voca-search-input::placeholder{color:var(--c-text-soft)}.voca-search-input:focus{border-color:var(--c-accent);background:var(--c-surface);box-shadow:0 0 0 3px var(--c-accent-soft)}.voca-icon-btn{background:var(--c-surface);border:1px solid var(--c-border);color:var(--c-text-muted);border-radius:var(--c-radius-md);cursor:pointer;font-size:.95rem;font-family:var(--c-font-sans);padding:.5rem .9rem;transition:background .2s,border-color .2s,color .2s,transform .2s;position:relative}.voca-icon-btn:hover{background:var(--c-surface-2);border-color:var(--c-border-2);color:var(--c-text);transform:translateY(-1px)}.voca-icon-btn.active{background:var(--c-accent-soft);border-color:var(--c-accent);color:var(--c-accent-text);box-shadow:var(--c-shadow-xs)}.voca-badge{background:var(--c-accent);color:#fff;border-radius:var(--c-radius-pill);min-width:17px;height:17px;box-shadow:var(--c-shadow-xs);border:1.5px solid var(--c-surface);justify-content:center;align-items:center;padding:0 4px;font-size:.6rem;font-weight:800;display:inline-flex;position:absolute;top:-5px;right:-5px}.voca-bookmark-btn{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--c-radius-sm);cursor:pointer;box-shadow:var(--c-shadow-xs);padding:.3rem .5rem;font-size:1rem;transition:all .15s;position:absolute;top:8px;right:8px}.voca-bookmark-btn:hover{background:var(--c-surface-2);transform:scale(1.15)}.voca-bookmark-btn.active{background:var(--c-accent-soft);border-color:var(--c-accent-soft-2)}.voca-meaning-badge{background:var(--c-accent-soft);color:var(--c-accent-text);border:1px solid var(--c-accent-soft-2);border-radius:var(--c-radius-md);white-space:nowrap;margin-left:auto;padding:4px 14px;font-size:.92rem;font-weight:700}.voca-shelf{z-index:50;pointer-events:auto;background:var(--c-surface);border-right:1px solid var(--c-border-2);border-top:1px solid var(--c-border);border-bottom:1px solid var(--c-border);border-radius:0 var(--c-radius-lg) var(--c-radius-lg) 0;width:124px;max-height:82vh;box-shadow:var(--c-shadow-md);flex-direction:column;align-items:stretch;padding:.95rem .5rem 0;display:flex;position:fixed;top:50%;left:0;transform:translateY(-50%)}.voca-shelf:before{content:"";background:linear-gradient(180deg, transparent 0%, var(--c-accent-soft-2) 25%, var(--c-accent) 50%, var(--c-accent-soft-2) 75%, transparent 100%);border-radius:var(--c-radius-pill);pointer-events:none;opacity:.6;width:2px;position:absolute;top:6%;bottom:6%;right:-1px}.voca-shelf-title{letter-spacing:.22em;text-transform:uppercase;color:var(--c-text-muted);text-align:center;border-bottom:1px solid var(--c-border);font-size:.62rem;font-weight:700;font-family:var(--c-font-serif);flex-shrink:0;margin-bottom:.55rem;padding-bottom:.55rem;font-style:italic}.voca-shelf-stack{scrollbar-width:thin;scrollbar-color:var(--c-border-2) transparent;flex-direction:column;flex:1;gap:4px;padding:2px 3px 2px 0;display:flex;overflow-y:auto}.voca-shelf-stack::-webkit-scrollbar{width:5px}.voca-shelf-stack::-webkit-scrollbar-thumb{background:var(--c-border-2);border-radius:var(--c-radius-pill)}.voca-shelf-base{background:var(--c-surface-3);border-top:1px solid var(--c-border-2);border-radius:0 0 var(--c-radius-lg) 0;height:12px;box-shadow:inset 0 1px 0 #ffffff80, var(--c-shadow-xs);flex-shrink:0;margin:.5rem -.5rem 0;position:relative}.voca-shelf-base:after{content:"";filter:blur(2px);background:linear-gradient(#14141314,#0000);height:3px;position:absolute;bottom:-3px;left:0;right:0}.voca-shelf-spine{--spine-color:var(--c-accent);border:1px solid var(--c-border-2);border-left:3px solid var(--spine-color);border-radius:2px var(--c-radius-sm) var(--c-radius-sm) 2px;width:100%;min-height:34px;font-family:var(--c-font-sans);color:var(--c-text);text-align:left;cursor:pointer;background:var(--c-surface-2);box-shadow:var(--c-shadow-xs);flex-shrink:0;align-items:center;gap:6px;padding:7px 9px 7px 10px;font-weight:700;transition:transform .32s cubic-bezier(.34,1.4,.64,1),box-shadow .32s,background .32s;display:flex;position:relative;overflow:hidden}.voca-shelf-spine:after{content:"";background:linear-gradient(180deg, transparent 0%, var(--c-border-2) 50%, transparent 100%);pointer-events:none;width:1px;position:absolute;top:10%;bottom:10%;right:4px}.voca-shelf-spine:hover{background:var(--c-surface);box-shadow:var(--c-shadow-md);transform:translate(6px)rotate(-.4deg)}.voca-shelf-spine-num{opacity:.7;letter-spacing:.06em;font-variant-numeric:tabular-nums;flex-shrink:0;min-width:14px;font-size:.55rem;font-weight:800}.voca-shelf-spine-word{white-space:nowrap;text-overflow:ellipsis;letter-spacing:.01em;flex:1;font-size:.74rem;overflow:hidden}.voca-shelf-spine--past,.voca-shelf-spine--upcoming{opacity:1;filter:none}.voca-shelf-spine--current{border:1.5px dashed var(--c-border-2);color:var(--c-text-soft);cursor:default;opacity:.35;filter:grayscale(.4);animation:2.4s ease-in-out infinite shelfSlotGlow;position:relative;box-shadow:inset 0 1px 3px #1414130a;background:var(--c-bg)!important}.voca-shelf-spine--current:after{display:none}.voca-shelf-spine--current:hover{opacity:.5;transform:none}.voca-shelf-spine--current .voca-shelf-spine-word{opacity:.85;font-style:italic}.voca-shelf-spine--current:before{content:"";background:var(--c-accent);opacity:0;pointer-events:none;border-radius:50%;width:4px;height:4px;animation:2.4s ease-in-out infinite shelfSlotSparkle;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}@keyframes shelfSlotGlow{0%,to{border-color:var(--c-border-2);box-shadow:inset 0 1px 3px #1414130a,0 0 #cc785c00}50%{box-shadow:inset 0 1px 6px #cc785c14, 0 0 0 3px var(--c-accent-soft);border-color:var(--c-accent)}}@keyframes shelfSlotSparkle{0%,to{opacity:0;transform:translate(-50%,-50%)scale(.5)}40%{opacity:.6;transform:translate(-50%,-120%)scale(1)}60%{opacity:.6;transform:translate(-50%,-50%)scale(1)}80%{opacity:0;transform:translate(-50%,20%)scale(.4)}}.voca-shelf-spine--just-filed{z-index:2;animation:.8s cubic-bezier(.34,1.6,.64,1) both spineJustFiled;position:relative}.voca-shelf-spine--just-filed:before{content:"";border-radius:var(--c-radius-sm);border:2px solid var(--c-accent);opacity:0;pointer-events:none;animation:.8s cubic-bezier(.16,.84,.44,1) both spineRingPulse;position:absolute;inset:-3px}@keyframes spineJustFiled{0%{box-shadow:var(--c-shadow-xs);transform:translate(0)scale(1)rotate(0)}20%{box-shadow:var(--c-shadow-lg), 0 0 0 4px var(--c-accent-soft);transform:translate(12px)scale(1.08)rotate(-1.5deg)}45%{transform:translate(-3px)scale(.97)rotate(.8deg)}65%{transform:translate(2px)scale(1.02)rotate(-.3deg)}85%{transform:translate(-1px)scale(.995)}to{box-shadow:var(--c-shadow-xs);transform:translate(0)scale(1)rotate(0)}}@keyframes spineRingPulse{0%{opacity:.9;transform:scale(1)}to{opacity:0;transform:scale(1.5)}}.voca-shelf-spine--just-filed+.voca-shelf-spine{animation:.55s cubic-bezier(.34,1.4,.64,1) both spineRippleNudge}.voca-shelf-spine:has(+.voca-shelf-spine--just-filed){animation:.55s cubic-bezier(.34,1.4,.64,1) both spineRippleNudge}@keyframes spineRippleNudge{0%,to{transform:translate(0)}50%{transform:translate(3px)rotate(-.2deg)}}.voca-flying-card{z-index:200;border-radius:var(--c-radius-lg);pointer-events:none;color:var(--c-text);background:var(--c-surface);will-change:transform, opacity, filter, box-shadow;border:1px solid var(--c-border);box-shadow:var(--c-shadow-lg);justify-content:center;align-items:center;display:flex;position:fixed;overflow:hidden}.voca-flying-card:before{content:"";background:var(--ch-color,var(--c-accent));pointer-events:none;border-radius:4px 0 0 4px;width:4px;position:absolute;top:0;bottom:0;left:0}.voca-flying-card:after{content:"";background:linear-gradient(135deg, color-mix(in srgb, var(--ch-color,var(--c-accent)) 6%, transparent) 0%, transparent 60%);pointer-events:none;position:absolute;inset:0}.voca-flying-card-inner{text-align:center;z-index:1;flex-direction:column;justify-content:center;align-items:center;gap:.5rem;padding:1.4rem;display:flex;position:relative}.voca-flying-card-word{letter-spacing:-.015em;color:var(--c-text);font-size:2rem;font-weight:700;font-family:var(--c-font-word);line-height:1.1}.voca-flying-card-meaning{color:var(--c-text-muted);font-size:.95rem;font-weight:500}.voca-flying-card--out{transform-origin:50%;animation:.7s cubic-bezier(.35,0,.25,1) forwards cardFlyToShelf,.7s cubic-bezier(.4,0,.2,1) forwards cardFlyOutFade,.7s ease-out forwards cardFlyOutShadow}@keyframes cardFlyToShelf{0%{transform:translate(0)scale(1)rotate(0)}12%{transform:translateY(-16px)scale(1.05)rotate(-1.8deg)}24%{transform:translateY(-22px)scale(1.05)rotate(.6deg)}to{transform:var(--fly-target)}}@keyframes cardFlyOutFade{0%{opacity:1;filter:brightness()}18%{opacity:1;filter:brightness(1.08)saturate(1.1)}75%{opacity:.7;filter:brightness()}to{opacity:0;filter:brightness(.85)}}@keyframes cardFlyOutShadow{0%{box-shadow:var(--c-shadow-lg)}15%{box-shadow:var(--c-shadow-xl), 0 0 0 3px var(--c-accent-soft)}to{box-shadow:var(--c-shadow-sm)}}.flashcard.flying-in{transform-origin:50%;will-change:transform, opacity, filter;perspective:1200px;animation:.65s cubic-bezier(.22,1.18,.36,1.04) both cardFlyFromShelf,.45s cubic-bezier(.4,0,.2,1) both cardFlyInFade,.65s cubic-bezier(.22,1.2,.36,1) both cardFlyInTilt}@keyframes cardFlyFromShelf{0%{transform:var(--fly-origin)}55%{transform:translateY(-8px)scale(1.025)rotate(-.5deg)}78%{transform:translateY(2px)scale(.99)rotate(.3deg)}to{transform:translate(0)scale(1)rotate(0)}}@keyframes cardFlyInFade{0%{opacity:0;filter:blur(4px)brightness(.85)}35%{opacity:1;filter:blur()brightness(1.1)}to{opacity:1;filter:blur()brightness()}}@keyframes cardFlyInTilt{0%{filter:brightness(.7)}50%{filter:brightness(1.06)}to{filter:brightness()}}.flashcard.next,.flashcard.prev{animation-duration:.45s!important;animation-timing-function:cubic-bezier(.34,1.16,.4,1)!important}.flashcard.next{animation-name:flashSlideInRight!important}.flashcard.prev{animation-name:flashSlideInLeft!important}@keyframes flashSlideInRight{0%{opacity:0;filter:blur(3px);transform:translate(80px)scale(.94)rotateY(-6deg)}55%{opacity:1;filter:blur();transform:translate(-6px)scale(1.015)rotateY(1deg)}80%{transform:translate(3px)scale(.998)}to{opacity:1;transform:translate(0)scale(1)rotateY(0)}}@keyframes flashSlideInLeft{0%{opacity:0;filter:blur(3px);transform:translate(-80px)scale(.94)rotateY(6deg)}55%{opacity:1;filter:blur();transform:translate(6px)scale(1.015)rotateY(-1deg)}80%{transform:translate(-3px)scale(.998)}to{opacity:1;transform:translate(0)scale(1)rotateY(0)}}.flashcard .word-header{animation:.6s cubic-bezier(.16,1.04,.3,1) 50ms both cardContentRise}.flashcard .chapter-tab{animation:.5s ease-out both cardContentFade}.flashcard .step-item{animation:.55s cubic-bezier(.16,1.04,.3,1) both cardContentRise}.flashcard .step-item:first-child{animation-delay:.12s}.flashcard .step-item:nth-child(2){animation-delay:.18s}.flashcard .step-item:nth-child(3){animation-delay:.24s}.flashcard .step-item:nth-child(4){animation-delay:.3s}.flashcard .step-item:nth-child(5){animation-delay:.36s}.flashcard .step-item:nth-child(6){animation-delay:.42s}.flashcard .media-section{animation:.7s cubic-bezier(.16,1.04,.3,1) both cardMediaSwell}@keyframes cardContentRise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes cardContentFade{0%{opacity:0}to{opacity:1}}@keyframes cardMediaSwell{0%{opacity:0;filter:blur(4px);transform:scale(.92)}60%{opacity:1;filter:blur()}to{opacity:1;filter:blur();transform:scale(1)}}.voca-shelf:has(.voca-shelf-spine--just-filed){animation:.5s cubic-bezier(.36,.07,.19,.97) both shelfThump}@keyframes shelfThump{0%,to{transform:translateY(-50%)}18%{transform:translate(-1px,calc(1.5px - 50%))}32%{transform:translate(1.5px,calc(-50% - 1px))}50%{transform:translate(-1px,calc(.8px - 50%))}70%{transform:translate(.6px,calc(-50% - .4px))}}.page-indicator{animation:.5s ease-out both pageIndicatorPulse}@keyframes pageIndicatorPulse{0%{opacity:0;letter-spacing:.05em;transform:translateY(4px)}to{opacity:1;letter-spacing:.14em;transform:translateY(0)}}.voca-flying-card--out{box-shadow:var(--c-shadow-lg), 0 0 18px color-mix(in srgb, var(--ch-color,var(--c-accent)) 22%, transparent)}.voca-flying-card-word{animation:.45s cubic-bezier(.34,1.6,.64,1) both flyWordPop}@keyframes flyWordPop{0%{opacity:0;transform:scale(.85)}60%{opacity:1;transform:scale(1.05)}to{opacity:1;transform:scale(1)}}@media (max-width:1280px){.voca-shelf{width:108px}}@media (max-width:1024px){.voca-shelf{width:88px;padding:.65rem .4rem 0}.voca-shelf-spine-word{font-size:.66rem}.voca-shelf-spine{min-height:30px;padding:5px 6px 5px 8px}}@media (max-width:768px){.voca-shelf{display:none}}.story-chapter-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem;max-width:900px;margin:1.5rem auto 0;display:grid}.story-chapter-card{border-radius:var(--c-radius-lg);cursor:pointer;border:1px solid var(--c-border);background:var(--c-surface);box-shadow:var(--c-shadow-xs);transition:all .22s;position:relative;overflow:hidden}.story-chapter-card:hover{box-shadow:var(--c-shadow-md);border-color:var(--c-border-strong);transform:translateY(-2px)}.story-chapter-thumb{aspect-ratio:16/9;object-fit:cover;width:100%;display:block}.story-chapter-info{padding:.8rem 1rem}.story-chapter-num{letter-spacing:1px;text-transform:uppercase;opacity:.8;color:var(--c-accent-text);font-size:.7rem;font-weight:800}.story-chapter-title{color:var(--c-text);font-size:1rem;font-weight:700;font-family:var(--c-font-serif);margin-top:.2rem}.story-chapter-sub{color:var(--c-text-muted);margin-top:.1rem;font-size:.75rem}.story-root{background:var(--c-bg);min-height:100dvh;font-family:var(--c-font-sans);color:var(--c-text);flex-direction:column;display:flex}.story-header{border-bottom:1px solid var(--c-border);background:var(--c-surface);justify-content:space-between;align-items:center;padding:.75rem 1.5rem;display:flex}.story-header-center{flex-direction:column;align-items:center;display:flex}.story-header-chapter{letter-spacing:1px;color:var(--c-text);font-size:.85rem;font-weight:800}.story-header-sub{color:var(--c-text-soft);font-size:.72rem}.story-nav-icon{background:var(--c-surface);border:1px solid var(--c-border);color:var(--c-text-muted);border-radius:var(--c-radius-sm);cursor:pointer;padding:.35rem .6rem;font-size:1rem;transition:all .15s}.story-nav-icon:hover{background:var(--c-surface-2);color:var(--c-text)}.story-nav-icon:disabled{opacity:.4;cursor:not-allowed}.story-progress-bar{background:var(--c-surface-2);height:3px}.story-progress-fill{border-radius:var(--c-radius-pill);background:var(--c-accent);height:100%;transition:width .4s}.story-main{box-sizing:border-box;flex:1;grid-template-columns:1fr 1fr;gap:1.5rem;width:100%;max-width:1100px;margin:0 auto;padding:1.5rem;display:grid}.story-main.transitioning{opacity:0;transition:all .3s;transform:translateY(6px)}.story-scene-wrap{border-radius:var(--c-radius-lg);min-height:400px;position:relative;overflow:hidden}.story-scene-gradient{pointer-events:none;background:linear-gradient(#0000 60%,#1f1e1d59);position:absolute;inset:0}.story-page-badge{background:var(--c-surface);border:1px solid var(--c-border);color:var(--c-text-muted);border-radius:var(--c-radius-xs);box-shadow:var(--c-shadow-xs);padding:2px 8px;font-size:.7rem;position:absolute;bottom:10px;right:12px}.story-text-panel{flex-direction:column;gap:1.2rem;max-height:calc(100dvh - 200px);padding-right:.3rem;display:flex;overflow-y:auto}.story-segment{flex-direction:column;gap:.4rem;display:flex}.story-segment-narrator .story-segment-text{color:var(--c-text-muted);font-style:italic}.story-segment-male .story-segment-text{color:var(--c-info)}.story-segment-female .story-segment-text{color:var(--c-accent-text)}.story-segment-text{font-size:1.25rem;line-height:1.85;font-family:var(--c-font-serif);color:var(--c-text-2);margin:0}.story-footer{border-top:1px solid var(--c-border);justify-content:space-between;align-items:center;padding:1rem 1.5rem;display:flex}.story-footer-btn{background:var(--c-surface);border:1px solid var(--c-border);color:var(--c-text-muted);border-radius:var(--c-radius-md);cursor:pointer;font-size:.92rem;font-weight:700;font-family:var(--c-font-sans);padding:.6rem 1.8rem;transition:all .18s}.story-footer-btn:disabled{opacity:.4;cursor:not-allowed}.story-footer-btn:not(:disabled):hover{background:var(--c-surface-2);color:var(--c-text)}.story-footer-btn.primary{background:var(--c-accent-soft);border-color:var(--c-accent);color:var(--c-accent-text)}.story-footer-btn.primary:hover{background:var(--c-accent);color:#fff}.story-footer-pages{color:var(--c-text-muted);font-size:.85rem}.story-chapter-select{max-width:920px;margin:0 auto;padding:2rem 1rem}.story-select-title{color:var(--c-text);font-size:2.2rem;font-weight:900;font-family:var(--c-font-serif);text-align:center;margin:1rem 0 .3rem}.story-select-sub{text-align:center;color:var(--c-text-muted);margin-bottom:1.5rem;font-size:.9rem}@media (max-width:768px){.story-main{grid-template-columns:1fr}.story-scene-wrap{min-height:220px}.story-text-panel{max-height:50vh}.story-chapter-grid{grid-template-columns:1fr 1fr}}.story-speaker-badge{border-radius:var(--c-radius-sm);width:fit-content;font-size:.72rem;font-weight:700;font-family:var(--c-font-sans);margin-bottom:.1rem;padding:2px 8px}.spk-narrator{background:var(--c-surface-2);color:var(--c-text-muted);border:1px solid var(--c-border)}.spk-male{background:var(--c-info-bg);color:var(--c-info);border:1px solid var(--c-border)}.spk-female{background:var(--c-accent-soft);color:var(--c-accent-text);border:1px solid var(--c-accent-soft-2)}.story-word-bold{font-weight:800;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.story-tts-btn{background:var(--c-accent-soft);border:1px solid var(--c-accent-soft-2);color:var(--c-accent-text);border-radius:var(--c-radius-sm);cursor:pointer;font-size:.8rem;font-weight:700;font-family:var(--c-font-sans);padding:.35rem .8rem;transition:all .18s}.story-tts-btn.active{background:var(--c-accent);border-color:var(--c-accent);color:#fff}.story-tts-btn:hover{background:var(--c-accent-soft-2)}.media-frame-wrap{width:100%;position:relative}.veo-btn-wrap{justify-content:center;margin-top:.6rem;display:flex}.veo-dance-btn{background:var(--c-accent);color:#fff;border:1px solid var(--c-accent);border-radius:var(--c-radius-pill);cursor:pointer;font-size:.82rem;font-weight:700;font-family:var(--c-font-sans);box-shadow:var(--c-shadow-sm);letter-spacing:.02em;align-items:center;gap:.4rem;padding:.45rem 1.2rem;transition:all .2s;display:flex}.veo-dance-btn:hover:not(:disabled){background:var(--c-accent-hover);border-color:var(--c-accent-hover);box-shadow:var(--c-shadow-md);transform:translateY(-1px)}.veo-dance-btn:disabled{opacity:.6;cursor:not-allowed;background:var(--c-border-2);border-color:var(--c-border-2);box-shadow:none}.veo-dance-btn.active{background:var(--c-text);border-color:var(--c-text);box-shadow:var(--c-shadow-sm)}.voca-video-mode-toggle{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--c-radius-pill);width:fit-content;box-shadow:var(--c-shadow-sm);justify-content:flex-end;gap:4px;margin:0 0 .6rem auto;padding:4px;display:flex}.voca-video-mode-btn{appearance:none;color:var(--c-text-muted);font-family:var(--c-font-sans);letter-spacing:.01em;border-radius:var(--c-radius-pill);cursor:pointer;background:0 0;border:0;align-items:center;gap:.25rem;padding:.4rem .95rem;font-size:.82rem;font-weight:600;transition:all .18s;display:inline-flex}.voca-video-mode-btn:hover:not(.disabled){color:var(--c-text);background:var(--c-surface-2)}.voca-video-mode-btn.active{background:var(--c-accent);color:#fff;box-shadow:var(--c-shadow-sm)}.voca-video-mode-btn.disabled{opacity:.45;cursor:not-allowed}.voca-video-mode-empty{opacity:.7;margin-left:2px;font-size:.68rem}.media-video-wrap{border-radius:var(--c-radius-lg);width:100%;position:relative;overflow:hidden}.media-video{object-fit:cover;border-radius:var(--c-radius-lg);width:100%;height:420px;display:block}.voca-mute-btn{z-index:10;color:#fff;cursor:pointer;background:#1f1e1d99;border:1px solid #ffffff26;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;font-size:1rem;transition:all .18s;display:flex;position:absolute;top:10px;left:10px}.voca-mute-btn:hover{background:#1f1e1dcc;transform:scale(1.1)}.no-video-badge{background:var(--c-surface);color:var(--c-text-muted);border:1px solid var(--c-border);border-radius:var(--c-radius-sm);pointer-events:none;white-space:nowrap;box-shadow:var(--c-shadow-xs);padding:3px 10px;font-size:.72rem;position:absolute;bottom:10px;left:50%;transform:translate(-50%)}.auth-root{color:#1f1e1d;background:#faf9f5;justify-content:center;align-items:center;min-height:100dvh;padding:2.5rem 1.25rem;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;display:flex;position:relative;overflow-x:hidden}.auth-bg-glow,.auth-bg-glow-1,.auth-bg-glow-2{display:none}.auth-card{z-index:1;background:#fff;border:1px solid #e8e6dc;border-radius:16px;flex-direction:column;gap:1.5rem;width:100%;max-width:440px;padding:2rem 2rem 1.75rem;display:flex;position:relative;box-shadow:0 1px 2px #1414130a,0 8px 24px #1414130f}.auth-back{color:#6b6962;cursor:pointer;background:0 0;border:1px solid #e8e6dc;border-radius:999px;align-self:flex-start;padding:.35rem .85rem;font-family:inherit;font-size:.8rem;font-weight:500;transition:background .15s,color .15s,border-color .15s}.auth-back:hover{color:#1f1e1d;background:#f5f2eb;border-color:#d6d2c2}.auth-logo{flex-direction:column;align-items:flex-start;gap:.35rem;margin-bottom:.25rem;display:flex}.auth-logo-badge{letter-spacing:.18em;color:#87867d;text-transform:uppercase;font-size:.68rem;font-weight:600}.auth-logo-name{letter-spacing:-.02em;color:#1f1e1d;font-size:1.9rem;font-weight:600;font-family:var(--c-font-serif);-webkit-background-clip:initial;-webkit-text-fill-color:initial;background:0 0;background-clip:initial;line-height:1.1}.auth-tabs{background:#f5f2eb;border:1px solid #e8e6dc;border-radius:10px;gap:3px;padding:3px;display:flex}.auth-tab{color:#87867d;cursor:pointer;background:0 0;border:none;border-radius:7px;flex:1;padding:.6rem;font-family:inherit;font-size:.88rem;font-weight:500;transition:background .15s,color .15s,box-shadow .15s}.auth-tab--active{color:#1f1e1d;background:#fff;font-weight:600;box-shadow:0 1px 3px #14141314}.auth-form{flex-direction:column;gap:1.1rem;display:flex}.auth-field{flex-direction:column;gap:.4rem;display:flex}.auth-label{color:#3d3929;letter-spacing:0;font-size:.82rem;font-weight:500}.auth-req{color:#b33a3a;margin-left:2px;font-weight:600}.auth-input{color:#1f1e1d;box-sizing:border-box;background:#fff;border:1px solid #d6d2c2;border-radius:10px;outline:none;width:100%;padding:.7rem .9rem;font-family:inherit;font-size:.94rem;transition:border-color .15s,box-shadow .15s}.auth-input:hover{border-color:#b8b5a4}.auth-input:focus{border-color:#cc785c;box-shadow:0 0 0 3px #cc785c26}.auth-input--error{background:#fcf6f4;border-color:#b33a3a!important}.auth-input::placeholder{color:#b8b5a4}.auth-select{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%236B6962' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right .9rem center;background-repeat:no-repeat;padding-right:2.2rem}.auth-select option{color:#1f1e1d;background:#fff}.auth-type-row{gap:.55rem;display:flex}.auth-type-btn{color:#6b6962;cursor:pointer;background:#fff;border:1px solid #d6d2c2;border-radius:10px;flex:1;padding:.85rem .5rem;font-family:inherit;font-size:.9rem;font-weight:500;transition:all .15s}.auth-type-btn--active{color:#8e4a36;background:#fbf1ed;border-color:#cc785c;font-weight:600}.auth-type-btn:hover:not(.auth-type-btn--active){color:#1f1e1d;background:#f5f2eb;border-color:#b8b5a4}.auth-error{color:#b33a3a;margin-top:.1rem;font-size:.78rem}.auth-error-msg{color:#8e2e2e;background:#fcf1f1;border:1px solid #f0d4d4;border-radius:8px;padding:.6rem .85rem;font-size:.85rem}.auth-submit-btn{color:#fff;cursor:pointer;background:#cc785c;border:1px solid #cc785c;border-radius:10px;width:100%;margin-top:.35rem;padding:.85rem;font-family:inherit;font-size:.96rem;font-weight:600;transition:background .15s,border-color .15s,box-shadow .15s;box-shadow:0 1px 2px #1414130f}.auth-submit-btn:hover{background:#b8694e;border-color:#b8694e;box-shadow:0 2px 6px #cc785c40}.auth-submit-btn:disabled{color:#fff;cursor:not-allowed;box-shadow:none;background:#d6d2c2;border-color:#d6d2c2}.auth-switch-hint{text-align:center;color:#6b6962;margin:0;font-size:.85rem}.auth-switch-link{color:#cc785c;cursor:pointer;font-size:inherit;text-underline-offset:2px;background:0 0;border:none;padding:0;font-family:inherit;font-weight:600;text-decoration:underline;text-decoration-thickness:1px;transition:color .15s}.auth-switch-link:hover{color:#8e4a36}.auth-success{text-align:center;flex-direction:column;align-items:center;gap:.75rem;padding:1.25rem 0 .5rem;display:flex}.auth-success-icon{font-size:3rem}.auth-success-title{font-size:1.5rem;font-weight:600;font-family:var(--c-font-serif);color:#1f1e1d;margin:0}.auth-success-sub{color:#6b6962;margin:0;font-size:.92rem}.auth-footer-note{color:#87867d;text-align:center;margin:0;font-size:.72rem}@media (max-width:640px){.auth-root{padding:1.75rem 1rem}.auth-card{max-width:100%;padding:1.75rem 1.4rem 1.5rem}.auth-logo-name{font-size:1.75rem}.auth-input{font-size:16px}.auth-type-row{gap:.4rem}.auth-type-btn{padding:.75rem .4rem}}@media (max-width:480px){.auth-root{padding:1.5rem 1rem}.auth-card{border-radius:14px;gap:1.25rem;padding:1.5rem 1.25rem 1.25rem}.auth-logo-name{font-size:1.65rem}.auth-logo-badge{letter-spacing:.15em;font-size:.62rem}.auth-input{font-size:16px}.auth-tabs{gap:2px;padding:2px}.auth-tab{padding:.55rem .4rem;font-size:.82rem}.auth-submit-btn{min-height:44px;padding:.85rem}.auth-switch-hint{font-size:.8rem}}@media (max-width:380px){.auth-root{padding:1rem .75rem}.auth-card{padding:1.25rem 1rem 1rem}.auth-logo-name{font-size:1.45rem}.auth-type-row{flex-wrap:wrap}.auth-type-btn{flex:calc(50% - .3rem);padding:.6rem .3rem;font-size:.78rem}}.adm-root{background:var(--c-bg);min-height:100dvh;font-family:var(--c-font-sans);color:var(--c-text);display:flex}.adm-sidebar{background:var(--c-surface);border-right:1px solid var(--c-border);flex-direction:column;flex-shrink:0;width:220px;height:100dvh;padding:1.5rem 0;display:flex;position:sticky;top:0}.adm-sidebar-brand{border-bottom:1px solid var(--c-border);margin-bottom:.8rem;padding:0 1.4rem 1.6rem}.adm-brand-badge{letter-spacing:.15em;color:var(--c-accent);text-transform:uppercase;margin-bottom:.3rem;font-size:.6rem;font-weight:800;display:block}.adm-brand-name{color:var(--c-text);font-size:1.4rem;font-weight:700;font-family:var(--c-font-serif);line-height:1}.adm-brand-sub{color:var(--c-text-soft);margin-top:.25rem;font-size:.67rem;display:block}.adm-nav{flex-direction:column;flex:1;gap:.2rem;padding:0 .8rem;display:flex}.adm-nav-btn{cursor:pointer;font-family:var(--c-font-sans);color:var(--c-text-muted);text-align:left;border-radius:var(--c-radius-md);background:0 0;border:none;align-items:center;gap:.6rem;padding:.65rem .9rem;font-size:.88rem;font-weight:600;transition:background .18s,color .18s;display:flex}.adm-nav-btn:hover{background:var(--c-surface-2);color:var(--c-text)}.adm-nav-btn--active{background:var(--c-accent-soft);color:var(--c-accent-text)}.adm-nav-btn--active:hover{background:var(--c-accent-soft-2)}.adm-nav-item{cursor:pointer;font-family:var(--c-font-sans);color:var(--c-text-muted);text-align:left;border-radius:var(--c-radius-md);background:0 0;border:none;align-items:center;gap:.6rem;width:100%;padding:.65rem .9rem;font-size:.88rem;font-weight:600;transition:background .18s,color .18s;display:flex}.adm-nav-item:hover{background:var(--c-surface-2);color:var(--c-text)}.adm-nav-item--active{background:var(--c-accent-soft);color:var(--c-accent-text)}.adm-nav-item--active:hover{background:var(--c-accent-soft-2)}.adm-nav-icon{text-align:center;width:1.2rem;font-size:1rem}.adm-stat-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:1rem;margin-bottom:1.8rem;display:grid}.adm-stat-icon{margin-bottom:.5rem;font-size:1.4rem}.adm-stat-val{color:var(--c-text);font-size:2rem;font-weight:800;line-height:1;font-family:var(--c-font-serif)}.adm-ch-mini-grid{flex-wrap:wrap;gap:.6rem;display:flex}.adm-ch-mini{border-radius:var(--c-radius-sm);border:1px solid var(--c-border);align-items:center;gap:.6rem;padding:.6rem 1.1rem;font-size:1rem;font-weight:700;display:flex}.adm-ch-mini--on{background:var(--c-accent-soft);border-color:var(--c-accent-soft-2);color:var(--c-accent-text)}.adm-ch-mini--off{background:var(--c-surface-2);color:var(--c-text-soft)}.adm-ch-mini-badge{font-size:.85rem;font-weight:600}.adm-ch-mini--on .adm-ch-mini-badge{color:var(--c-success)}.adm-ch-mini--off .adm-ch-mini-badge{color:var(--c-text-soft)}.adm-sidebar-footer{border-top:1px solid var(--c-border);padding:1rem .8rem 0}.adm-logout-btn{background:var(--c-surface);border:1px solid var(--c-border);width:100%;color:var(--c-text-muted);cursor:pointer;font-family:var(--c-font-sans);border-radius:var(--c-radius-sm);padding:.55rem;font-size:.83rem;font-weight:600;transition:background .18s,color .18s,border-color .18s}.adm-logout-btn:hover{background:var(--c-error-bg);color:var(--c-error);border-color:var(--c-error)}.adm-main{flex:1;padding:2rem 2.5rem;overflow-y:auto}.adm-section{max-width:1100px}.adm-section-header{flex-wrap:wrap;align-items:center;gap:1rem;margin-bottom:1.8rem;display:flex}.adm-refresh-btn{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--c-radius-sm);color:var(--c-text);cursor:pointer;font-size:.85rem;font-weight:600;font-family:var(--c-font-sans);align-items:center;gap:.5rem;padding:.5rem .9rem;transition:all .2s;display:flex}.adm-refresh-btn:hover:not(:disabled){background:var(--c-surface-2);border-color:var(--c-border-2);transform:translateY(-1px)}.adm-refresh-btn:disabled{opacity:.6;cursor:not-allowed}.adm-refresh-btn--loading span,.adm-refresh-btn--loading{color:var(--c-info)}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.adm-refresh-btn--loading{animation:none}.adm-page-title{color:var(--c-text);font-size:1.6rem;font-weight:600;font-family:var(--c-font-serif);letter-spacing:-.015em;flex:1;margin:0 0 .4rem;line-height:1.25}.adm-page-sub{color:var(--c-text-muted);margin:0 0 1.4rem;font-size:.88rem;line-height:1.5}.adm-search{background:var(--c-surface);border:1px solid var(--c-border);color:var(--c-text);font-family:var(--c-font-sans);border-radius:var(--c-radius-md);outline:none;min-width:220px;padding:.55rem 1rem;font-size:.85rem;transition:border-color .18s,box-shadow .18s}.adm-search::placeholder{color:var(--c-text-soft)}.adm-stats-row{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:1rem;margin-bottom:1.8rem;display:grid}.adm-stat-card{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--c-radius-lg);box-shadow:var(--c-shadow-xs);padding:1.2rem 1.4rem}.adm-stat-label{letter-spacing:.08em;text-transform:uppercase;color:var(--c-text-soft);margin-bottom:.5rem;font-size:.72rem;font-weight:600}.adm-stat-value{color:var(--c-text);font-size:2rem;font-weight:700;line-height:1;font-family:var(--c-font-serif)}.adm-stat-unit{color:var(--c-text-muted);margin-left:.2rem;font-size:1rem;font-weight:600}.adm-card{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--c-radius-lg);box-shadow:var(--c-shadow-xs);margin-bottom:1.4rem;padding:1.4rem}.adm-card--no-pad{padding:0;overflow:hidden}.adm-card-title{color:var(--c-text-2);letter-spacing:.04em;text-transform:uppercase;margin:0 0 1rem;font-size:.85rem;font-weight:700}.adm-table{border-collapse:collapse;color:var(--c-text);font-size:.95rem}.adm-table--full{width:100%}.adm-table th{background:var(--c-surface-2);border-bottom:1px solid var(--c-border);text-align:left;letter-spacing:.05em;text-transform:uppercase;color:var(--c-text-muted);white-space:nowrap;padding:.85rem 1rem;font-size:.8rem;font-weight:700}.adm-table td{border-bottom:1px solid var(--c-border);vertical-align:middle;padding:.95rem 1rem}.adm-table tbody tr:last-child td{border-bottom:none}.adm-table tbody tr:hover td{background:var(--c-surface-2)}.adm-muted{font-size:.9rem;color:var(--c-text-muted)!important}.adm-badge{border-radius:var(--c-radius-xs);white-space:nowrap;padding:.28rem .75rem;font-size:.82rem;font-weight:700;display:inline-block}.adm-badge--blue{background:var(--c-info-bg);color:var(--c-info);border:1px solid var(--c-border)}.adm-badge--purple{background:var(--c-accent-soft);color:var(--c-accent-text);border:1px solid var(--c-accent-soft-2)}.adm-badge--green{background:var(--c-success-bg);color:var(--c-success);border:1px solid var(--c-border)}.adm-badge--red{background:var(--c-error-bg);color:var(--c-error);border:1px solid var(--c-border)}.adm-badge--amber{background:var(--c-warning-bg);color:var(--c-warning);border:1px solid var(--c-border)}.adm-prog-wrap{align-items:center;gap:.55rem;display:flex}.adm-prog-bar{background:var(--c-surface-2);border-radius:var(--c-radius-pill);flex:1;min-width:60px;height:7px;overflow:hidden}.adm-prog-fill{background:var(--c-accent);border-radius:var(--c-radius-pill);height:100%;transition:width .4s}.adm-prog-pct{color:var(--c-text-muted);white-space:nowrap;text-align:right;min-width:40px;font-size:.88rem}.adm-empty{text-align:center;color:var(--c-text-soft);margin:0;padding:2rem 0;font-size:.9rem}.adm-ch-list{flex-direction:column;gap:.75rem;max-width:760px;display:flex}.adm-ch-row{border-radius:var(--c-radius-lg);border:1px solid var(--c-border);background:var(--c-surface);justify-content:space-between;align-items:center;gap:1.25rem;padding:1rem 1.4rem;transition:background .18s,border-color .18s;display:flex}.adm-ch-row--on{background:var(--c-surface)}.adm-ch-row--off{background:var(--c-surface-2);opacity:.7}.adm-ch-row--on:hover{border-color:var(--c-accent)}.adm-ch-row-left{flex:auto;align-items:center;gap:.9rem;min-width:0;display:flex}.adm-ch-row-left>div:last-child{flex:auto;min-width:0}.adm-ch-dot{border-radius:50%;flex-shrink:0;width:10px;height:10px}.adm-ch-name{color:var(--c-text);font-size:.95rem;font-weight:700}.adm-ch-meta{color:var(--c-text-muted);white-space:nowrap;text-overflow:ellipsis;margin-top:.15rem;font-size:.77rem;overflow:hidden}.adm-ch-row-right{flex-shrink:0;align-items:center;gap:.9rem;display:flex}.adm-ch-status{font-size:.75rem;font-weight:700}.adm-ch-status--on{color:var(--c-success)}.adm-ch-status--off{color:var(--c-text-soft)}.adm-toggle{background:var(--c-border-2);border-radius:var(--c-radius-pill);cursor:pointer;border:none;flex-shrink:0;width:46px;height:26px;transition:background .22s;position:relative}.adm-toggle-thumb{width:20px;height:20px;box-shadow:var(--c-shadow-sm);background:#fff;border-radius:50%;transition:transform .22s cubic-bezier(.34,1.4,.64,1);position:absolute;top:3px;left:3px}.adm-toggle--on .adm-toggle-thumb{transform:translate(20px)}.adm-ch-tip{color:var(--c-text-muted);background:var(--c-surface-2);border-radius:var(--c-radius-md);border:1px solid var(--c-border);max-width:720px;margin-top:1.2rem;padding:1rem 1.25rem;font-size:1rem}.adm-preview-table{border-collapse:collapse;width:100%;color:var(--c-text-2);font-size:.83rem}.adm-preview-table th{text-align:left;letter-spacing:.07em;text-transform:uppercase;color:var(--c-text-soft);border-bottom:1px solid var(--c-border);padding:.5rem .8rem;font-size:.7rem;font-weight:700}.adm-preview-table td{border-bottom:1px solid var(--c-border);vertical-align:middle;padding:.65rem .8rem}.adm-preview-table tbody tr:last-child td{border-bottom:none}.adm-center{background:var(--c-bg);min-height:100dvh;color:var(--c-text-muted);font-family:var(--c-font-sans);justify-content:center;align-items:center;font-size:.9rem;display:flex}.adm-root{background:var(--c-bg)}.adm-sidebar{background:var(--c-surface);border-right:1px solid var(--c-border)}.adm-brand-badge{color:var(--c-accent);letter-spacing:.18em}.adm-brand-name{color:var(--c-text);font-family:var(--c-font-serif);background:0 0;-webkit-background-clip:initial;-webkit-text-fill-color:initial;background-clip:initial}.adm-brand-sub{color:var(--c-text-soft);letter-spacing:.06em}.adm-nav-btn--active,.adm-nav-item--active{background:var(--c-accent-soft);color:var(--c-accent-text);box-shadow:inset 2px 0 0 var(--c-accent)}.adm-nav-btn--active:hover,.adm-nav-item--active:hover{background:var(--c-accent-soft-2)}.adm-search:focus{border-color:var(--c-accent);box-shadow:0 0 0 3px var(--c-accent-soft)}.adm-toggle--on,.adm-prog-fill{background:var(--c-accent)}.adm-page-title{color:var(--c-text);font-family:var(--c-font-serif);background:0 0;-webkit-background-clip:initial;-webkit-text-fill-color:initial;background-clip:initial}.adm-section--wide{max-width:none}.adm-toolbar{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.adm-export-btn{background:var(--c-accent-soft);border:1px solid var(--c-accent-soft-2);color:var(--c-accent-text);border-radius:var(--c-radius-md);font-family:var(--c-font-sans);cursor:pointer;align-items:center;gap:.4rem;padding:.5rem .95rem;font-size:.85rem;font-weight:700;transition:background .2s,transform .2s,box-shadow .2s;display:inline-flex}.adm-export-btn:hover:not(:disabled){background:var(--c-accent);color:#fff;box-shadow:var(--c-shadow-sm);transform:translateY(-1px)}.adm-export-btn:disabled{opacity:.4;cursor:not-allowed}.adm-filter-row{background:var(--c-surface-2);border:1px solid var(--c-border);border-radius:var(--c-radius-lg);flex-wrap:wrap;gap:.5rem;margin:-.4rem 0 1.2rem;padding:.5rem .6rem;display:flex}.adm-chip{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--c-radius-pill);color:var(--c-text-muted);font-family:var(--c-font-sans);cursor:pointer;white-space:nowrap;padding:.42rem .95rem;font-size:.82rem;font-weight:600;transition:background .18s,color .18s,border-color .18s,transform .18s}.adm-chip:hover{background:var(--c-surface-2);color:var(--c-text);transform:translateY(-1px)}.adm-chip--active{background:var(--c-accent-soft);border-color:var(--c-accent);color:var(--c-accent-text);box-shadow:var(--c-shadow-xs)}.adm-chip--atRisk.adm-chip--active{background:var(--c-error-bg);border-color:var(--c-error);color:var(--c-error)}.adm-chip--top.adm-chip--active{background:var(--c-success-bg);border-color:var(--c-success);color:var(--c-success)}.adm-chip--inactive.adm-chip--active{background:var(--c-surface-3);border-color:var(--c-border-strong);color:var(--c-text-2)}.adm-chip--noTest.adm-chip--active{background:var(--c-warning-bg);border-color:var(--c-warning);color:var(--c-warning)}.adm-chip--perfect.adm-chip--active{background:var(--c-accent-soft);border-color:var(--c-accent);color:var(--c-accent-text)}.adm-chip--scoreHigh.adm-chip--active{background:var(--c-success-bg);border-color:var(--c-success);color:var(--c-success)}.adm-chip--scoreMid.adm-chip--active{background:var(--c-warning-bg);border-color:var(--c-warning);color:var(--c-warning)}.adm-chip--scoreLow.adm-chip--active{background:var(--c-error-bg);border-color:var(--c-error);color:var(--c-error)}.adm-chip-group{border-radius:var(--c-radius-pill);box-shadow:var(--c-shadow-xs);align-items:stretch;gap:0;display:inline-flex;overflow:hidden}.adm-chip-group__select-wrap{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--c-radius-pill) 0 0 var(--c-radius-pill);color:var(--c-text-muted);cursor:pointer;border-right:0;align-items:center;padding:.42rem 1.55rem .42rem .8rem;font-size:.82rem;font-weight:600;transition:background .18s,color .18s,border-color .18s;display:inline-flex;position:relative}.adm-chip-group__select-wrap:hover{background:var(--c-surface-2);color:var(--c-text)}.adm-chip-group__select{appearance:none;font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;outline:0;min-width:2.8rem;padding:0 .2rem 0 0}.adm-chip-group__chev{pointer-events:none;opacity:.7;font-size:.7rem;position:absolute;top:50%;right:.55rem;transform:translateY(-50%)}.adm-chip-group .adm-chip{border-radius:0 var(--c-radius-pill) var(--c-radius-pill) 0;box-shadow:none}.adm-chip--atrisk.adm-chip--active{background:var(--c-error-bg);border-color:var(--c-error);color:var(--c-error)}.adm-bulk-row{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--c-radius-md);box-shadow:var(--c-shadow-xs);flex-wrap:wrap;align-items:center;gap:.5rem;margin-top:.75rem;padding:.7rem .95rem;display:flex}.adm-bulk-count{color:var(--c-text-muted);margin-right:auto;font-size:.85rem}.adm-bulk-count strong{color:var(--c-accent);font-weight:600}.adm-bulk-btn{border:1px solid var(--c-border-2);background:var(--c-surface);color:var(--c-text);border-radius:var(--c-radius-md);cursor:pointer;padding:.45rem .9rem;font-family:inherit;font-size:.85rem;font-weight:500;transition:background .15s,border-color .15s,color .15s}.adm-bulk-btn:hover{background:var(--c-accent-soft);border-color:var(--c-accent);color:var(--c-accent-text)}@media (max-width:640px){.adm-bulk-row{gap:.4rem;padding:.6rem .7rem}.adm-bulk-count{flex-basis:100%;margin-right:0;font-size:.78rem}.adm-bulk-btn{flex:1;min-width:0;padding:.45rem .5rem;font-size:.78rem}}.adm-table-scroll{scrollbar-width:thin;scrollbar-color:var(--c-border-2) transparent;width:100%;overflow-x:auto}.adm-table-scroll::-webkit-scrollbar{height:9px}.adm-table-scroll::-webkit-scrollbar-thumb{background:var(--c-border-2);border-radius:var(--c-radius-pill)}.adm-table-scroll::-webkit-scrollbar-track{background:var(--c-surface-2)}.adm-table--nowrap{min-width:1400px}.adm-table--nowrap th,.adm-table--nowrap td{white-space:nowrap}.adm-table--nowrap td.adm-cell-name{color:var(--c-text);min-width:80px;font-weight:700}.adm-row--risk td{background:var(--c-error-bg)}.adm-row--risk:hover td{background:#f8e0e0!important}.adm-row--top td{background:var(--c-success-bg)}.adm-row--top:hover td{background:#dfede3!important}.adm-log-btn{background:var(--c-accent-soft);border:1px solid var(--c-accent-soft-2);color:var(--c-accent-text);border-radius:var(--c-radius-sm);cursor:pointer;white-space:nowrap;font-size:.8rem;font-weight:600;font-family:var(--c-font-sans);padding:4px 12px;transition:background .18s,transform .18s}.adm-log-btn:hover{background:var(--c-accent);color:#fff;transform:translateY(-1px)}.adm-last-active{flex-direction:column;line-height:1.2;display:flex}.adm-last-date{color:var(--c-text-2);font-size:.85rem}.adm-last-rel{color:var(--c-text-soft);margin-top:1px;font-size:.7rem}.adm-stat-card--risk,.adm-stat-card--top{cursor:pointer;transition:background .22s,border-color .22s,transform .22s,box-shadow .22s}.adm-stat-card--risk{background:var(--c-error-bg);border-color:var(--c-border)}.adm-stat-card--risk:hover{border-color:var(--c-error);box-shadow:var(--c-shadow-md);transform:translateY(-2px)}.adm-stat-card--top{background:var(--c-success-bg);border-color:var(--c-border)}.adm-stat-card--top:hover{border-color:var(--c-success);box-shadow:var(--c-shadow-md);transform:translateY(-2px)}@media (max-width:720px){.adm-section--wide .adm-table-scroll{font-size:.85rem}.adm-filter-row{gap:.35rem;padding:.4rem}.adm-chip{padding:.34rem .7rem;font-size:.76rem}}.dash-root{background:var(--c-bg);min-height:100dvh;color:var(--c-text);font-family:var(--c-font-sans);flex-direction:column;display:flex}.dash-glow{display:none}.dash-header{border-bottom:1px solid var(--c-border);justify-content:space-between;align-items:center;width:100%;max-width:1180px;margin:0 auto;padding:1.1rem 2rem;display:flex}.dash-logo{align-items:baseline;gap:.55rem;display:flex}.dash-logo-badge{letter-spacing:.16em;color:var(--c-text-soft);text-transform:uppercase;font-size:.65rem;font-weight:600}.dash-logo-name{font-family:var(--c-font-serif);letter-spacing:-.01em;color:var(--c-text);background:0 0;-webkit-background-clip:initial;-webkit-text-fill-color:initial;background-clip:initial;font-size:1.25rem;font-weight:600}.dash-header-right{align-items:center;gap:1rem;display:flex}.dash-greeting{color:var(--c-text-muted);font-size:.88rem}.dash-logout{border:1px solid var(--c-border-2);color:var(--c-text-muted);cursor:pointer;border-radius:var(--c-radius-pill);background:0 0;padding:.45rem .95rem;font-family:inherit;font-size:.85rem;font-weight:500;transition:background .15s,color .15s,border-color .15s}.dash-logout:hover{background:var(--c-surface-2);color:var(--c-text);border-color:var(--c-border-strong)}.dash-main{flex-direction:column;flex:1;align-items:center;width:100%;max-width:980px;margin:0 auto;padding:3.5rem 1.5rem 4rem;display:flex}.dash-hero{text-align:center;margin-bottom:2.5rem}.dash-hero-title{font-family:var(--c-font-serif);letter-spacing:-.02em;color:var(--c-text);margin:0 0 .5rem;font-size:clamp(1.85rem,4vw,2.5rem);font-weight:600;line-height:1.15}.dash-hero-sub{color:var(--c-text-muted);font-size:1rem}.dash-hero-count{color:var(--c-accent);font-weight:600}.dash-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem;width:100%;max-width:760px;display:grid}.adm-filter-row--rank{margin-top:.5rem}.adm-chip--rank{background:var(--c-surface);border-color:var(--c-border)}.adm-chip--rank.adm-chip--active{background:var(--c-accent);color:#fff;border-color:var(--c-accent)}.rank-board{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--c-radius-lg);width:100%;max-width:760px;margin-top:2rem;padding:1.4rem 1.4rem 1.2rem}.rank-board--loading{text-align:center;color:var(--c-text-soft);padding:1rem}.rank-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.6rem;display:flex}.rank-title{color:var(--c-text);margin:0;font-size:1.25rem;font-weight:700}.rank-tabs{flex-wrap:wrap;gap:.4rem;display:flex}.rank-tab{border-radius:var(--c-radius-sm);border:1px solid var(--c-border);background:var(--c-surface-2);color:var(--c-text-muted);cursor:pointer;padding:.35rem .8rem;font-size:.88rem;font-weight:600;transition:all .15s}.rank-tab:hover{background:var(--c-surface);color:var(--c-text)}.rank-tab--active{background:var(--c-accent);color:#fff;border-color:var(--c-accent)}.rank-meta{border-bottom:1px dashed var(--c-border);color:var(--c-text-muted);flex-wrap:wrap;gap:1rem;margin-bottom:.9rem;padding-bottom:.7rem;font-size:.92rem;display:flex}.rank-meta-item strong{color:var(--c-text);font-weight:700}.rank-empty{color:var(--c-text-soft);text-align:center;padding:1rem;font-size:.95rem}.rank-list{flex-direction:column;gap:.4rem;margin:0;padding:0;list-style:none;display:flex}.rank-row{border-radius:var(--c-radius-sm);background:var(--c-surface-2);grid-template-columns:3rem 1fr auto auto;align-items:center;gap:.8rem;padding:.55rem .85rem;font-size:.95rem;display:grid}.rank-row--top1{background:linear-gradient(90deg, #fff8d6, var(--c-surface-2))}.rank-row--top2{background:linear-gradient(90deg, #ececec, var(--c-surface-2))}.rank-row--top3{background:linear-gradient(90deg, #f4dfc8, var(--c-surface-2))}.rank-row--me{outline:2px solid var(--c-accent);background:var(--c-accent-soft)}.rank-num{color:var(--c-text);text-align:center;font-size:1.05rem;font-weight:800}.rank-name{color:var(--c-text);align-items:center;gap:.4rem;font-weight:600;display:flex}.rank-me-tag{background:var(--c-accent);color:#fff;border-radius:999px;padding:1px 6px;font-size:.7rem;font-weight:700}.rank-score{color:var(--c-text);font-weight:700}.rank-pct{color:var(--c-text-soft);font-size:.85em;font-weight:600}.rank-attempts{color:var(--c-text-soft);font-size:.82rem}@media (max-width:600px){.rank-row{grid-template-columns:2.5rem 1fr auto;gap:.5rem}.rank-attempts{grid-column:2/-1;margin-top:.1rem;font-size:.75rem}}.dash-card{border-radius:var(--c-radius-lg);border:1px solid var(--c-border);background:var(--c-surface);cursor:pointer;text-align:left;box-shadow:var(--c-shadow-xs);align-items:center;gap:1.1rem;padding:1.75rem;font-family:inherit;transition:border-color .15s,box-shadow .15s,transform .15s;display:flex;position:relative;overflow:hidden}.dash-card:hover{border-color:var(--c-border-strong);box-shadow:var(--c-shadow-md);transform:translateY(-2px)}.dash-card:before{display:none}.dash-card--voca:hover,.dash-card--story:hover{border-color:var(--c-accent)}.dash-card-icon{flex-shrink:0;font-size:2rem;line-height:1}.dash-card-body{flex:1}.dash-card-title{font-family:var(--c-font-serif);color:var(--c-text);letter-spacing:-.01em;margin:0 0 .35rem;font-size:1.15rem;font-weight:600}.dash-card-desc{color:var(--c-text-muted);margin:0;font-size:.88rem;line-height:1.55}.dash-card-arrow{color:var(--c-text-soft);flex-shrink:0;font-size:1.15rem;transition:color .15s,transform .15s}.dash-card:hover .dash-card-arrow{color:var(--c-accent);transform:translate(3px)}.dash-guide{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--c-radius-lg);width:100%;max-width:760px;margin:0 auto 1.5rem;overflow:hidden}.dash-guide-toggle{width:100%;color:var(--c-text);cursor:pointer;text-align:left;background:0 0;border:none;justify-content:space-between;align-items:center;padding:.95rem 1.2rem;font-family:inherit;font-size:.95rem;font-weight:500;display:flex}.dash-guide-toggle:hover{background:var(--c-surface-2)}.dash-guide-toggle-state{color:var(--c-text-soft);font-size:.78rem}.dash-guide-body{padding:0 1.2rem 1.2rem}.dash-guide-inner{background:var(--c-surface-2);border-radius:var(--c-radius-md);padding:1rem 1.1rem}.dash-guide-heading{color:var(--c-accent-text);margin-bottom:.5rem;font-size:.92rem;font-weight:600}.dash-guide-list{color:var(--c-text-muted);margin:0;padding:0 0 0 1.1rem;font-size:.85rem;line-height:1.85}@media (max-width:720px){.dash-cards{grid-template-columns:1fr;max-width:440px}.dash-header{padding:.9rem 1.25rem}.dash-greeting{display:none}.dash-main{padding:2rem 1.25rem 3rem}}@media (max-width:380px){.dash-header{padding:.75rem .85rem}.dash-logo-name{font-size:1.1rem}.dash-logo-badge{font-size:.6rem}.dash-logout{padding:.4rem .75rem;font-size:.78rem}.dash-main{padding:1.25rem .75rem 2.5rem}.dash-hero-title{font-size:1.25rem}.dash-card{gap:.75rem;padding:1.1rem 1rem}.dash-card-icon{font-size:1.85rem}.dash-card-title{font-size:1rem}.dash-card-desc{font-size:.74rem;line-height:1.4}.dash-guide-toggle{padding:.8rem .95rem;font-size:.88rem}.dash-guide-body{padding:0 .95rem .95rem}}@media (max-width:1024px){.flashcard{gap:2rem;padding:2.5rem 2rem 2rem}.word-title{font-size:2.2rem}.adm-sidebar{width:180px}.adm-main{padding:1.5rem}.adm-brand-name{font-size:1.2rem}.story-segment-text{font-size:1.15rem}.story-text-panel{max-height:calc(100dvh - 180px)}.dash-card{width:280px}}@media (max-width:900px){.flashcard{grid-template-columns:1fr;gap:1.4rem;padding:2rem 1.8rem 1.8rem}.media-video{height:260px!important}.media-frame{aspect-ratio:16/9;min-height:200px}.media-video-wrap{border-radius:14px}.word-title{font-size:2rem}.info-section{gap:1.1rem}.dash-hero-title{font-size:1.9rem}.dash-main{padding:2.5rem 1.5rem}.story-main{grid-template-columns:1fr;gap:0;height:auto;padding:0;overflow:visible}.story-scene-wrap{min-height:260px;max-height:320px}.story-text-panel{max-height:50vh}.story-text-wrap{border-left:none;border-top:1px solid var(--c-border);padding:1.5rem 1.4rem}.adm-root{flex-direction:column}.adm-sidebar{border-right:none;border-bottom:1px solid var(--c-border);flex-flow:wrap;align-items:center;gap:.3rem;width:100%;height:auto;padding:.6rem .8rem;position:static;overflow-x:auto}.adm-sidebar-brand{border-bottom:none;border-right:1px solid var(--c-border);flex-shrink:0;margin-right:.4rem;padding:0 .8rem 0 0}.adm-brand-sub{display:none}.adm-nav{flex-flow:row;flex:1;gap:.2rem;padding:0;overflow-x:auto}.adm-nav-btn,.adm-nav-item{white-space:nowrap;border-radius:8px;padding:.45rem .75rem;font-size:.82rem}.adm-sidebar-footer{border-top:none;flex-shrink:0;margin-left:auto;padding:0;display:flex}.adm-logout-btn{white-space:nowrap;border-radius:8px;padding:.4rem .75rem;font-size:.78rem}.adm-main{padding:1.5rem 1.25rem}.adm-stats-row{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.back-btn{padding:.4rem .85rem;font-size:.82rem}.pc-title{font-size:clamp(2.8rem,13vw,5rem)}.pc-eyebrow{letter-spacing:.25em;margin-bottom:.4rem;font-size:.65rem}.pc-btn{padding:.85rem 2rem;font-size:.95rem}.container{justify-content:flex-start;padding:4.5rem 1.4rem 2.25rem}.header-top{text-align:center;flex-direction:column;align-items:center;gap:.6rem;width:100%;margin-bottom:.9rem;padding-top:3rem}.header-top>.title{margin:0;font-size:1.5rem;display:block}.header-top>div:last-child{flex-wrap:wrap;justify-content:center;align-items:center;width:100%;gap:.5rem!important;display:flex!important}.header-top>div:last-child>:first-child,.header-top>div:last-child>:nth-child(2){order:0}.header-top>div:last-child>:nth-child(3),.header-top>div:last-child>:nth-child(4){order:2}.header-top>div:last-child:before{content:"";flex-basis:100%;order:1;height:0}.ebook-container{gap:.4rem}.nav-btn{width:38px;height:38px}.flashcard{border-radius:22px;grid-template-columns:1fr;gap:1.85rem;padding:2.2rem 1.75rem 1.85rem}.word-title{padding:.45rem 1.3rem;font-size:2rem}.word-header{flex-wrap:wrap;gap:.65rem;margin-bottom:1.1rem}.voca-meaning-badge{margin-left:0}.media-frame{aspect-ratio:16/9;min-height:200px}.media-video{height:220px!important}.step-label,.step-content{font-size:1rem}.sentence-item{font-size:1rem;line-height:1.65}.step-item{padding:.15rem 0}.info-section{gap:1.4rem}.exam-header{padding:.75rem 1.2rem}.exam-body{padding:2rem 1rem 1.2rem}.exam-question-wrap{padding:1.5rem}.exam-qtext{font-size:1.05rem}.exam-option{padding:.8rem 1rem;font-size:.92rem}.quiz-container{flex-direction:column;gap:1.5rem;padding:1.5rem}.story-header{padding:.65rem 1rem}.story-header-title{font-size:.82rem}.story-main{grid-template-columns:1fr;gap:0;height:auto;padding:0;overflow:visible}.story-scene-wrap{min-height:200px;max-height:280px}.story-text-wrap{border-left:none;border-top:1px solid var(--c-border);max-height:none;padding:1.5rem 1.2rem}.story-text-panel{max-height:none}.story-segment-text{font-size:1.05rem}.story-chapter-grid{grid-template-columns:repeat(2,1fr)}.story-select-title{font-size:1.8rem}.story-controls{gap:.5rem;padding:.75rem 1rem}.story-nav-btn{padding:.45rem 1rem;font-size:.85rem}.story-footer{padding:.75rem 1rem}.story-footer-btn{padding:.5rem 1.2rem;font-size:.85rem}.story-keywords-panel{padding:.65rem .9rem}.adm-root{flex-direction:column}.adm-sidebar{border-right:none;border-bottom:1px solid var(--c-border);flex-flow:wrap;align-items:center;gap:.3rem;width:100%;height:auto;padding:.6rem .8rem;position:static;overflow-x:auto}.adm-sidebar-brand{border-bottom:none;border-right:1px solid var(--c-border);flex-shrink:0;margin-right:.4rem;padding:0 .8rem 0 0}.adm-brand-sub{display:none}.adm-nav{flex-flow:row;flex:1;gap:.2rem;padding:0;overflow-x:auto}.adm-nav-btn,.adm-nav-item{white-space:nowrap;border-radius:8px;padding:.45rem .75rem;font-size:.82rem}.adm-sidebar-footer{border-top:none;flex-shrink:0;margin-left:auto;padding:0;display:flex}.adm-logout-btn{white-space:nowrap;border-radius:8px;padding:.4rem .75rem;font-size:.78rem}.adm-main{padding:1.5rem 1.25rem}.adm-stats-row{grid-template-columns:repeat(2,1fr)}.adm-search{min-width:160px}.dash-header{padding:1rem 1.2rem}.dash-main{padding:2rem 1.2rem}.dash-hero-title{font-size:1.7rem}.dash-cards{gap:1.2rem}.dash-card{width:100%;max-width:420px;padding:1.6rem 1.8rem}}@media (max-width:480px){.pc-title{font-size:clamp(2.2rem,18vw,3rem)}.pc-eyebrow{letter-spacing:.2em;margin-bottom:.3rem;font-size:.58rem}.pc-btn{padding:.75rem 1.6rem;font-size:.88rem}.pc-copyright-bottom{font-size:.6rem}.container{padding:4.5rem 1rem 1.75rem}.header-top{padding-left:0}.ebook-container{gap:.4rem}.nav-btn{flex-shrink:0;width:32px;height:32px}.nav-btn span{font-size:1rem!important}.flashcard-wrapper{flex:1;min-width:0}.flashcard{border-radius:16px;gap:1.15rem;padding:1.5rem 1.15rem 1.25rem}.binder-rings{top:-10px}.ring{border-width:3px;width:13px;height:26px}.word-title{border-radius:10px;padding:.35rem .95rem;font-size:1.4rem}.word-pos{font-size:.95rem}.word-header{gap:.5rem;margin-bottom:.75rem}.voca-meaning-badge{padding:3px 9px;font-size:.78rem}.media-frame{aspect-ratio:16/9;min-height:140px}.media-video{height:160px!important}.step-label{font-size:.85rem}.step-content{font-size:.85rem;line-height:1.55}.step-content-sub{font-size:.78rem}.sentence-item{font-size:.85rem;line-height:1.65}.step-item{padding:.1rem 0}.info-section{gap:.95rem}.sentence-list{gap:.65rem}.chapter-tab{padding:.22rem .7rem;font-size:.78rem}.page-indicator{font-size:.72rem;bottom:-20px}.voca-test-start-btn{padding:.42rem .85rem;font-size:.8rem}.voca-progress-wrap{margin:-.3rem 0 .9rem}.exam-header{flex-wrap:wrap;gap:.4rem;padding:.65rem .9rem}.exam-title{font-size:.88rem}.exam-timer{padding:.28rem .65rem;font-size:.85rem}.exam-progress-text{font-size:.68rem}.exam-body{gap:1.2rem;padding:1.2rem .75rem 1rem}.exam-question-wrap{border-radius:14px;padding:1.1rem 1rem}.exam-qnum{font-size:.78rem}.exam-qtext{margin-bottom:1rem;font-size:.95rem}.exam-sentence{padding:.7rem .9rem;font-size:.88rem}.exam-options{gap:.55rem}.exam-option{border-radius:10px;padding:.7rem .85rem;font-size:.85rem}.exam-option-num{font-size:.88rem}.exam-nav-btn{padding:.6rem 1rem;font-size:.85rem}.exam-dot{width:15px;height:15px}.exam-result-screen{gap:1.2rem;padding:1.5rem .75rem}.exam-score-num{font-size:4rem}.exam-result-title{font-size:1.5rem}.exam-result-actions{gap:.6rem}.exam-btn-primary,.exam-btn-secondary{padding:.7rem 1.4rem;font-size:.9rem}.exam-modal{border-radius:18px;padding:2rem 1.6rem}.exam-modal-title{font-size:1.05rem}.story-header{padding:.55rem .85rem}.story-header-title{gap:.3rem;font-size:.78rem}.story-chapter-grid{grid-template-columns:1fr}.story-chapter-card:hover{transform:none}.story-text-wrap{padding:1.1rem 1rem}.story-segment-text{font-size:.97rem;line-height:1.8}.story-select-title{font-size:1.5rem}.story-select-sub{font-size:.82rem}.story-chapter-select{padding:1.5rem .75rem}.story-controls{padding:.6rem .75rem}.story-nav-btn{padding:.38rem .75rem;font-size:.8rem}.story-skip-btn{padding:.35rem .7rem;font-size:.75rem}.story-tts-btn{padding:.3rem .7rem;font-size:.75rem}.story-footer{padding:.65rem .85rem}.story-footer-btn{padding:.48rem 1rem;font-size:.82rem}.story-summary{gap:1.2rem;padding:1.5rem .85rem}.story-summary-title{font-size:1.3rem}.story-summary-grid{grid-template-columns:1fr 1fr;gap:.7rem}.vocab-popup-badge{min-width:90px;padding:.7rem 1rem}.vocab-popup-word{font-size:1.2rem}.vocab-tooltip-wrap{width:260px}.auth-root{padding:1.5rem .75rem}.auth-card{border-radius:16px;gap:1.1rem;padding:1.6rem 1.2rem 1.5rem}.auth-logo-name{font-size:1.35rem}.auth-tab{padding:.5rem;font-size:.85rem}.auth-input{padding:.65rem .85rem;font-size:16px}.auth-submit-btn{padding:.78rem;font-size:.92rem}.auth-type-btn{padding:.65rem;font-size:.82rem}.adm-main{padding:1.2rem 1.1rem 1.6rem}.adm-sidebar-brand{display:none}.adm-nav-btn,.adm-nav-item{padding:.38rem .6rem;font-size:.76rem}.adm-logout-btn{padding:.35rem .65rem;font-size:.74rem}.adm-stats-row{grid-template-columns:repeat(2,1fr);gap:.9rem}.adm-stat-card{padding:1.05rem 1.1rem}.adm-stat-value{font-size:1.6rem}.adm-page-title{font-size:1.3rem}.adm-card{padding:1.1rem}.adm-table th{padding:.65rem .7rem;font-size:.75rem}.adm-table td{padding:.75rem .7rem;font-size:.88rem}.adm-ch-list{max-width:100%}.adm-ch-row{flex-wrap:wrap;gap:.5rem;padding:.8rem 1rem}.adm-section-header{flex-direction:column;align-items:flex-start;gap:.6rem}.adm-search{min-width:100%}.dash-header{padding:.85rem 1rem}.dash-main{padding:1.5rem .85rem}.dash-hero{margin-bottom:2rem}.dash-hero-title{font-size:1.4rem}.dash-hero-sub{font-size:.85rem}.dash-card{border-radius:16px;gap:1rem;padding:1.3rem}.dash-card-icon{font-size:2.2rem}.dash-card-title{font-size:1.05rem}.dash-card-desc{font-size:.78rem}.dash-cards{gap:.9rem}}.sc-page{background:var(--c-bg);min-height:100dvh;color:var(--c-text);font-family:var(--c-font-sans);padding:2rem 1.25rem 3rem}.sc-loading{background:var(--c-bg);height:100dvh;color:var(--c-text-muted);font-family:var(--c-font-sans);justify-content:center;align-items:center;display:flex}.sc-container{max-width:820px;margin:0 auto}.sc-header{flex-wrap:wrap;align-items:center;gap:1rem;margin-bottom:2rem;display:flex}.sc-title{font-family:var(--c-font-serif);letter-spacing:-.02em;color:var(--c-text);margin:0;font-size:1.75rem;font-weight:600}.sc-session-email{color:var(--c-text-soft);margin-left:auto;font-size:.85rem}.sc-list{flex-direction:column;gap:.75rem;display:flex}.sc-row{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--c-radius-lg);box-shadow:var(--c-shadow-xs);flex-wrap:wrap;align-items:center;gap:1.25rem;padding:1rem 1.25rem;transition:border-color .15s,box-shadow .15s;display:flex}.sc-row:hover{border-color:var(--c-border-strong);box-shadow:var(--c-shadow-sm)}.sc-row-chapter{min-width:110px}.sc-row-chapter-name{font-family:var(--c-font-serif);color:var(--c-text);letter-spacing:-.01em;font-size:1rem;font-weight:600}.sc-row-date{color:var(--c-text-soft);margin-top:.2rem;font-size:.76rem}.sc-row-score{flex:1;align-items:baseline;gap:.5rem;display:flex}.sc-score-num{font-size:1.05rem;font-weight:600}.sc-score-pct{color:var(--c-text-muted);font-size:.85rem}.sc-tone-good{color:var(--c-success)}.sc-tone-warn{color:var(--c-warning)}.sc-tone-bad{color:var(--c-error)}.sc-row-actions{flex-wrap:wrap;flex-shrink:0;gap:.5rem;display:flex}.sc-action-btn{border-radius:var(--c-radius-md);border:1px solid var(--c-border-2);cursor:pointer;background:var(--c-surface);color:var(--c-text);padding:.5rem .9rem;font-family:inherit;font-size:.82rem;font-weight:500;transition:background .15s,border-color .15s,color .15s}.sc-action-btn:hover:not(:disabled){background:var(--c-surface-2);border-color:var(--c-border-strong)}.sc-action-btn:disabled{opacity:.45;cursor:not-allowed}.sc-action-review:hover:not(:disabled){border-color:var(--c-info);color:var(--c-info);background:var(--c-info-bg)}.sc-action-retry:hover:not(:disabled){border-color:var(--c-accent);color:var(--c-accent-text);background:var(--c-accent-soft)}.sc-empty-state{text-align:center;color:var(--c-text-muted);margin-top:3rem;font-size:.92rem}.sc-empty{color:var(--c-text-muted);text-align:center;margin:1rem 0}.sc-empty-sub{color:var(--c-text-soft);font-size:.82rem}.sc-modal-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;background:#14141373;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.sc-modal{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--c-radius-lg);width:100%;max-width:580px;max-height:82vh;box-shadow:var(--c-shadow-xl);padding:1.5rem;overflow-y:auto}.sc-modal-header{justify-content:space-between;align-items:center;margin-bottom:1.2rem;display:flex}.sc-modal-title{font-family:var(--c-font-serif);color:var(--c-text);margin:0;font-size:1.05rem;font-weight:600}.sc-modal-close{color:var(--c-text-muted);cursor:pointer;border-radius:var(--c-radius-sm);background:0 0;border:none;padding:.25rem .5rem;font-size:1.3rem;line-height:1;transition:background .15s,color .15s}.sc-modal-close:hover{background:var(--c-surface-2);color:var(--c-text)}.sc-modal-close-btn{width:100%;margin-top:1.2rem}.sc-wq-list{flex-direction:column;gap:.75rem;display:flex}.sc-wq-item{background:var(--c-surface-2);border-left:3px solid var(--c-error);border-radius:var(--c-radius-md);padding:.85rem 1rem}.sc-wq-label{color:var(--c-text-soft);margin-bottom:.3rem;font-size:.72rem}.sc-wq-qtext{color:var(--c-text);margin-bottom:.35rem;font-size:.9rem;font-weight:600}.sc-wq-sentence{color:var(--c-text-muted);margin-bottom:.4rem;font-size:.86rem;font-style:italic}.sc-wq-answer-inline{color:var(--c-success);font-style:normal;font-weight:600}.sc-wq-answer{color:var(--c-success);font-size:.86rem;font-weight:600}@media (max-width:640px){.sc-page{padding:1.5rem .85rem 2.5rem}.sc-row{gap:.85rem;padding:.85rem 1rem}.sc-row-chapter{flex-basis:100%;min-width:0}.sc-row-score{flex-basis:auto}.sc-row-actions{flex-basis:100%}.sc-action-btn{flex:1;min-height:40px;padding:.55rem .7rem}.sc-title{font-size:1.4rem}.sc-session-email{display:none}.sc-modal-backdrop{padding:.5rem}.sc-modal{border-radius:14px;max-width:100%;max-height:90vh;padding:1.1rem}.sc-modal-title{font-size:.95rem}.sc-wq-item{padding:.7rem .85rem}.sc-wq-qtext{font-size:.86rem}.sc-wq-sentence{font-size:.82rem}}@media (max-width:480px){.sc-page{padding:1.25rem .7rem 2rem}.sc-header{gap:.5rem;margin-bottom:1.25rem}.sc-title{font-size:1.25rem}.sc-row{border-radius:12px;gap:.7rem;padding:.75rem .85rem}.sc-row-chapter-name{font-size:.92rem}.sc-row-date{font-size:.72rem}.sc-score-num{font-size:1rem}.sc-action-btn{padding:.5rem .6rem;font-size:.78rem}}.adm-guide{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--c-radius-lg);box-shadow:var(--c-shadow-xs);margin-bottom:1.5rem;overflow:hidden}.adm-guide-toggle{width:100%;color:var(--c-text);font-size:.96rem;font-weight:500;font-family:var(--c-font-sans);cursor:pointer;text-align:left;background:0 0;border:none;justify-content:space-between;align-items:center;padding:.95rem 1.2rem;transition:background .15s;display:flex}.adm-guide-toggle:hover{background:var(--c-surface-2)}.adm-guide-toggle-state{color:var(--c-text-soft);font-size:.78rem;font-weight:500}.adm-guide-body{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;padding:0 1.2rem 1.2rem;display:grid}.adm-guide-card{background:var(--c-surface-2);border:1px solid var(--c-border);border-radius:var(--c-radius-md);padding:1.15rem 1.25rem}.adm-guide-heading{align-items:center;gap:.4rem;margin-bottom:.7rem;font-size:1.1rem;font-weight:700;display:flex}.adm-guide-heading--info{color:var(--c-info)}.adm-guide-heading--success{color:var(--c-success)}.adm-guide-heading--accent{color:var(--c-accent-text)}.adm-guide-pill{background:var(--c-accent-soft);color:var(--c-accent-text);border:1px solid var(--c-accent-soft-2);border-radius:var(--c-radius-sm);padding:1px 7px;font-size:.68rem;font-weight:600}.adm-guide-list{color:#000;margin:0;padding:0 0 0 1.1rem;font-size:1rem;line-height:1.9}.acc-page{background:var(--c-bg);min-height:100dvh;color:var(--c-text);font-family:var(--c-font-sans);padding:2rem 1.25rem 4rem}.acc-loading{background:var(--c-bg);height:100dvh;color:var(--c-text-muted);font-family:var(--c-font-sans);justify-content:center;align-items:center;display:flex}.acc-container{flex-direction:column;gap:1.5rem;max-width:640px;margin:0 auto;display:flex}.acc-header{flex-wrap:wrap;align-items:center;gap:1rem;margin-bottom:.5rem;display:flex}.acc-title{font-family:var(--c-font-serif);letter-spacing:-.02em;color:var(--c-text);margin:0;font-size:1.75rem;font-weight:600}.acc-card{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--c-radius-lg);box-shadow:var(--c-shadow-sm);flex-direction:column;gap:1.25rem;padding:1.75rem;display:flex}.acc-card-head{flex-direction:column;gap:.3rem;display:flex}.acc-card-title{font-family:var(--c-font-serif);letter-spacing:-.015em;color:var(--c-text);margin:0;font-size:1.2rem;font-weight:600}.acc-card-sub{color:var(--c-text-muted);margin:0;font-size:.88rem}.acc-readonly{background:var(--c-surface-2);border:1px solid var(--c-border);border-radius:var(--c-radius-md);flex-direction:column;gap:.55rem;padding:.85rem 1rem;display:flex}.acc-ro-row{justify-content:space-between;align-items:baseline;gap:1rem;display:flex}.acc-ro-label{color:var(--c-text-soft);font-size:.82rem;font-weight:500}.acc-ro-value{color:var(--c-text);text-align:right;word-break:break-all;font-size:.92rem;font-weight:500}.acc-form{flex-direction:column;gap:1rem;display:flex}.acc-field{flex-direction:column;gap:.35rem;display:flex}.acc-label{color:var(--c-text-2);font-size:.85rem;font-weight:500}.acc-form-actions{justify-content:flex-end;margin-top:.25rem;display:flex}.acc-msg{border-radius:var(--c-radius-sm);margin:0;padding:.55rem .8rem;font-size:.86rem}.acc-msg--ok{background:var(--c-success-bg);color:var(--c-success);border:1px solid color-mix(in srgb, var(--c-success) 20%, transparent)}.acc-msg--err{background:var(--c-error-bg);color:var(--c-error);border:1px solid color-mix(in srgb, var(--c-error) 20%, transparent)}@media (max-width:640px){.acc-page{padding:1.5rem 1rem 3rem}.acc-card{padding:1.25rem}.acc-title{font-size:1.4rem}.acc-card-title{font-size:1.05rem}.acc-card-sub{font-size:.82rem}.acc-ro-row{flex-direction:column;align-items:flex-start;gap:.15rem}.acc-ro-value{text-align:left}.acc-form-actions{justify-content:stretch}.acc-form-actions .c-btn{width:100%;min-height:44px}}@media (max-width:480px){.acc-page{padding:1.1rem .75rem 2.5rem}.acc-container{gap:1.1rem}.acc-card{border-radius:12px;padding:1.1rem 1rem}.acc-title{font-size:1.25rem}.acc-readonly{padding:.75rem .85rem}.acc-ro-value{font-size:.86rem}.acc-label{font-size:.82rem}.acc-form input,.acc-form select,.acc-form textarea{font-size:16px}}@media (max-width:768px){html,body{max-width:100%;overflow-x:hidden}input[type=text],input[type=email],input[type=password],input[type=search],input[type=tel],input[type=number],input[type=url],select,textarea,.c-input{font-size:16px}.c-btn{min-height:40px}.adm-section-header{flex-direction:column;align-items:stretch;gap:.7rem}.adm-toolbar{gap:.45rem;width:100%}.adm-toolbar .adm-search{flex:1;min-width:0}.adm-export-btn{flex-shrink:0}.adm-table--nowrap th:first-child,.adm-table--nowrap td:first-child{z-index:2;background:var(--c-surface);box-shadow:1px 0 0 var(--c-border);position:sticky;left:0}.adm-table--nowrap thead th:first-child{background:var(--c-surface-2)}.adm-row--risk td:first-child{background:var(--c-error-bg)}.adm-row--top td:first-child{background:var(--c-success-bg)}.adm-table tbody tr:hover td:first-child{background:var(--c-surface-2)}.adm-ch-row{padding:.85rem 1rem}.adm-toggle{width:44px;height:26px}.adm-stat-grid,.adm-stats-row{grid-template-columns:repeat(2,1fr);gap:.85rem}.adm-guide-body{grid-template-columns:1fr;gap:.65rem;padding:0 1rem 1rem}}@media (max-width:480px){.adm-page-title{font-size:1.2rem}.adm-page-sub{margin-bottom:1rem;font-size:.82rem}.adm-card{border-radius:12px;padding:.95rem}.adm-card-title{font-size:.78rem}.adm-stat-val{font-size:1.5rem}.adm-stat-card{padding:.85rem .9rem}.adm-stat-label{font-size:.66rem}.adm-export-btn{padding:.5rem .7rem;font-size:.8rem}.adm-ch-mini-grid{gap:.4rem}.adm-ch-mini{padding:.35rem .7rem;font-size:.76rem}.adm-ch-row{flex-direction:column;align-items:stretch;gap:.55rem;padding:.75rem .85rem}.adm-ch-row-left{width:100%}.adm-ch-row-right{justify-content:space-between;gap:.6rem;width:100%}.adm-ch-meta{white-space:normal}.adm-prog-bar{min-width:40px}.adm-badge{padding:.2rem .55rem;font-size:.74rem}.adm-filter-row{gap:.3rem;margin-bottom:.9rem;padding:.4rem}.adm-chip{padding:.3rem .6rem;font-size:.74rem}.adm-log-btn{padding:4px 9px;font-size:.74rem}}@media (max-width:380px){.adm-main{padding:.7rem .55rem}.adm-nav-btn,.adm-nav-item{gap:.35rem;padding:.35rem .5rem;font-size:.72rem}.adm-nav-icon{font-size:.85rem}.adm-stats-row{grid-template-columns:1fr 1fr;gap:.5rem}.adm-stat-card{padding:.7rem .8rem}.adm-stat-val{font-size:1.35rem}}@media (max-width:640px){.voca-bookmark-btn{min-width:36px;min-height:36px;padding:.35rem .55rem}.nav-btn{width:40px;height:40px}}@media (max-width:380px){.container{padding:3.5rem .5rem .9rem}.header-top{gap:.3rem;margin-bottom:.5rem;padding-left:0}.title{font-size:1.1rem}.header-top>div:last-child{gap:.25rem}.voca-icon-btn{min-width:36px;min-height:36px;padding:.35rem .5rem;font-size:.85rem}.voca-test-start-btn{min-height:36px;padding:.4rem .7rem;font-size:.76rem}.voca-search-input{width:120px;padding:.4rem .7rem}.nav-btn{width:30px;height:30px}.ebook-container{gap:.2rem}.flashcard{border-radius:12px;gap:.6rem;padding:.85rem .7rem .7rem}.word-title{padding:.25rem .7rem;font-size:1.15rem}.word-pos{font-size:.85rem}.voca-meaning-badge{padding:1px 7px;font-size:.7rem}.media-frame{min-height:110px}.media-video{height:130px!important}.step-content{font-size:.78rem}.step-content-sub{font-size:.72rem}.sentence-item{font-size:.78rem}}@media (max-width:640px){.exam-header{gap:.5rem;padding:.7rem .95rem}.exam-title{font-size:.92rem}.exam-progress-text{font-size:.7rem}.exam-exit-btn{min-height:36px;padding:.4rem .7rem;font-size:.78rem}.exam-body{gap:1.4rem;padding:1.6rem .85rem 1.2rem}.exam-question-wrap{border-radius:14px;padding:1.25rem 1.1rem}.exam-qtext{font-size:1rem}.exam-sentence{padding:.75rem 1rem;font-size:.94rem}.exam-option{min-height:44px;padding:.8rem .95rem;font-size:.92rem}.exam-dot{width:12px;height:12px}.exam-nav{gap:.5rem}.exam-nav-btn{flex:1;min-height:44px;padding:.7rem 1.2rem;font-size:.9rem}.exam-nav-btn.submit{padding:.7rem 1.4rem}.exam-modal{border-radius:14px;width:calc(100% - 1.5rem);max-width:100%;padding:1.6rem 1.25rem}.exam-modal-actions{width:100%}.exam-modal-actions button{flex:1;min-height:44px}.exam-result-screen{gap:1.25rem;margin:1.5rem auto;padding:1.5rem .85rem}.exam-result-bars{padding:1rem 1.1rem}.exam-result-actions{flex-direction:column;gap:.6rem;width:100%}.exam-btn-primary,.exam-btn-secondary{white-space:nowrap;width:100%;min-height:48px;padding:.85rem 1.2rem;font-size:.95rem}.exam-review-screen{padding:0 .75rem 2rem}.exam-review-item{padding:1.1rem 1.25rem}}@media (max-width:380px){.exam-header{padding:.55rem .7rem}.exam-title{font-size:.82rem}.exam-timer{padding:.22rem .55rem;font-size:.78rem}.exam-body{gap:1rem;padding:1rem .6rem .85rem}.exam-question-wrap{padding:.95rem .85rem}.exam-qtext{margin-bottom:.85rem;font-size:.9rem}.exam-sentence{padding:.6rem .75rem;font-size:.82rem}.exam-option{gap:.6rem;padding:.65rem .75rem;font-size:.82rem}.exam-option-num{min-width:1.1rem;font-size:.82rem}.exam-dot{width:10px;height:10px}.exam-dots{gap:4px}.exam-nav-btn{padding:.6rem .85rem;font-size:.82rem}.exam-score-num{font-size:3.2rem}.exam-score-den{font-size:1.2rem}.exam-result-title{font-size:1.3rem}.exam-result-badge{padding:.4rem 1.2rem;font-size:.95rem}.exam-bar-label{min-width:70px;font-size:.72rem}}@media (max-width:640px){.story-back-btn{min-height:36px;padding:.35rem .8rem;font-size:.78rem}.story-header-actions{gap:.3rem}.story-keywords-list{gap:.35rem}.story-keyword-item{font-size:.82rem}.story-summary-item{padding:.6rem .8rem}}@media (max-width:380px){.story-header{padding:.5rem .7rem}.story-back-btn{padding:.3rem .65rem;font-size:.75rem}.story-scene-wrap{min-height:160px;max-height:220px}.story-text-wrap{padding:.9rem .75rem}.story-segment-text{font-size:.92rem;line-height:1.7}.story-keywords-panel{padding:.55rem .7rem}.story-keywords-title{font-size:.72rem}.story-controls{flex-wrap:wrap;gap:.4rem;padding:.55rem .65rem}.story-nav-btn{flex:1;min-height:40px;padding:.45rem .7rem;font-size:.78rem}.story-footer{flex-wrap:wrap;gap:.4rem;padding:.6rem .7rem}.story-footer-btn{flex:1;min-height:40px;padding:.45rem .85rem;font-size:.78rem}.story-footer-pages{text-align:center;flex-basis:100%;font-size:.76rem}.story-summary-grid{grid-template-columns:1fr;gap:.5rem}.story-page-badge{padding:1px 6px;font-size:.65rem}.story-chapter-thumb{aspect-ratio:16/10}.story-chapter-info{padding:.65rem .8rem}.story-chapter-title{font-size:.92rem}}@media (max-width:640px){.exam-root .voca-test-start-btn{min-height:44px}}.school-ac{position:relative}.school-ac-list{z-index:50;background:#fff;border:1px solid #0000001f;border-radius:12px;max-height:280px;margin:0;padding:4px;list-style:none;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto;box-shadow:0 12px 32px #00000026}.school-ac-item{cursor:pointer;border-radius:8px;flex-direction:column;gap:2px;padding:8px 10px;display:flex}.school-ac-item.is-active,.school-ac-item:hover{background:#6366f11a}.school-ac-name{color:#111827;font-size:.95rem;font-weight:600}.school-ac-meta{color:#6b7280;flex-wrap:wrap;gap:4px;font-size:.78rem;display:flex}.school-ac-addr{text-overflow:ellipsis;overflow:hidden}.school-ac-empty{color:#6b7280;text-align:center;padding:10px;font-size:.9rem}@media (prefers-color-scheme:dark){.school-ac-list{background:#1f2937;border-color:#ffffff1f}.school-ac-name{color:#f3f4f6}.school-ac-meta{color:#9ca3af}.school-ac-item.is-active,.school-ac-item:hover{background:#818cf82e}}.adm-log-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;background:#14141373;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.adm-log-modal{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--c-radius-lg);width:min(95vw,620px);max-height:82vh;box-shadow:var(--c-shadow-xl);flex-direction:column;gap:1rem;padding:1.5rem;display:flex}.adm-log-header{justify-content:space-between;align-items:center;gap:1rem;display:flex}.adm-log-title{font-family:var(--c-font-serif);color:var(--c-text);font-size:1.05rem;font-weight:600}.adm-log-email{color:var(--c-text-soft);margin-top:2px;font-size:.8rem}.adm-log-close{background:var(--c-surface-2);border:1px solid var(--c-border);color:var(--c-text);border-radius:var(--c-radius-md);cursor:pointer;font-size:.85rem;font-family:var(--c-font-sans);padding:.45rem .95rem;font-weight:500;transition:background .15s,border-color .15s}.adm-log-close:hover{background:var(--c-surface-3);border-color:var(--c-border-2)}.adm-log-empty{color:var(--c-text-muted);text-align:center;padding:2rem 0}.adm-log-body{overflow-y:auto}.adm-log-table{border-collapse:collapse;width:100%;font-size:.85rem}.adm-log-th{text-align:left;color:var(--c-text-soft);border-bottom:1px solid var(--c-border);white-space:nowrap;padding:.65rem .8rem;font-weight:600}.adm-log-th--sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.adm-log-th--sortable:hover{color:var(--c-text)}.adm-log-td{color:var(--c-text);border-bottom:1px solid var(--c-border);padding:.6rem .8rem}.adm-log-td--muted{color:var(--c-text-muted)}.adm-log-td--score{font-weight:600}.adm-log-pct{color:var(--c-text-muted);margin-left:.2rem;font-weight:400}.adm-log-badge{border-radius:var(--c-radius-sm);border:1px solid;padding:2px 9px;font-size:.76rem;font-weight:600;display:inline-block}.adm-log-badge--pass{background:var(--c-success-bg);color:var(--c-success);border-color:color-mix(in srgb, var(--c-success) 30%, transparent)}.adm-log-badge--fail{background:var(--c-error-bg);color:var(--c-error);border-color:color-mix(in srgb, var(--c-error) 30%, transparent)}.adm-log-foot{color:var(--c-text-soft);text-align:right;font-size:.78rem}@media (max-width:640px){.adm-log-modal{gap:.85rem;padding:1.1rem}.adm-log-title{font-size:.95rem}.adm-log-th,.adm-log-td{padding:.5rem .55rem;font-size:.78rem}.adm-log-close{padding:.4rem .75rem;font-size:.8rem}}.no-select-global{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.no-select-global input,.no-select-global textarea,.no-select-global select,.no-select-global [contenteditable=true]{-webkit-user-select:text;user-select:text}.ac-blackout{z-index:99999;-webkit-backdrop-filter:blur(20px);background:#141413f5;justify-content:center;align-items:center;animation:.18s acBlackoutFade;display:flex;position:fixed;inset:0}.ac-blackout-text{color:var(--c-bg);font-family:var(--c-font-serif);text-align:center;font-size:1.4rem;font-weight:600;line-height:1.4}.ac-blackout-text span{font-family:var(--c-font-sans);color:#faf9f58c;font-size:.85rem;font-weight:400}@keyframes acBlackoutFade{0%{opacity:0}to{opacity:1}}@media print{body{display:none!important}html:before{content:"보안 정책상 인쇄가 금지된 콘텐츠입니다.";font:600 1.4rem var(--c-font-sans);text-align:center;color:#1f1e1d;padding:4rem;display:block}}.exam-chapter-heading{text-align:center;margin-bottom:2.2rem;font-size:2.2rem}.exam-chapter-grid{grid-template-columns:repeat(auto-fit,minmax(180px,200px));justify-content:center;gap:1.2rem;max-width:780px;margin:0 auto;display:grid}.exam-chapter-btn{box-sizing:border-box;justify-content:center;align-items:center;width:100%;height:88px;font-size:1.25rem;font-weight:700;display:flex;padding:0!important}:root[data-theme=dark] .exam-chapter-btn{color:#fff!important}@media (prefers-color-scheme:dark){:root:not([data-theme]) .exam-chapter-btn{color:#fff!important}}@media (max-width:640px){.exam-chapter-heading{margin-bottom:1rem!important;font-size:1.05rem!important}.exam-chapter-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem;max-width:320px;padding:0 .75rem}.exam-chapter-btn{height:52px;border-radius:10px!important;font-size:.85rem!important}}@media (max-width:380px){.exam-chapter-heading{font-size:.95rem!important}.exam-chapter-grid{gap:.45rem;max-width:280px}.exam-chapter-btn{height:44px;font-size:.78rem!important}}.voca-actions{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.voca-btn-emoji{margin-right:.3em}.voca-btn-text,.voca-btn-text-extra{display:inline}@media (max-width:768px){.container{overflow-x:hidden;padding:8px 12px calc(72px + env(safe-area-inset-bottom)) 12px!important;justify-content:flex-start!important;min-height:100dvh!important}.header-top{width:100%;flex-direction:column!important;justify-content:flex-start!important;align-items:center!important;gap:8px!important;margin:0 0 12px!important;padding:0!important}.title{text-align:center;margin:0!important;font-size:1.5rem!important;line-height:1.2!important}.voca-actions{flex:0 auto;flex-wrap:nowrap!important;justify-content:center!important;align-items:center!important;gap:8px!important;width:auto!important;margin:0 auto!important;display:inline-flex!important}.voca-btn-text-extra{display:none}.voca-search-wrap{flex:none}.voca-search-input{border-radius:999px;width:200px;min-height:40px;padding:8px 12px;font-size:16px}.voca-icon-btn{border-radius:999px;flex:none;line-height:1;min-width:44px!important;min-height:44px!important;padding:8px!important;font-size:1rem!important}.voca-btn-emoji{margin-right:.2em;font-size:1em}.voca-progress-wrap{gap:8px!important;margin:4px 0 12px!important}.voca-progress-track{border-radius:999px;height:6px!important}.voca-progress-label{justify-content:center;font-size:.78rem!important}.flashcard .word-header,.flashcard .chapter-tab,.flashcard .step-item,.flashcard .media-section{animation:none!important}.voca-flying-card{display:none!important}.flashcard.next,.flashcard.prev{will-change:transform;animation-duration:.32s!important;animation-timing-function:cubic-bezier(.32,.72,0,1)!important}@keyframes flashSlideInRight{0%{transform:translate(100%)}to{transform:translate(0,0)}}@keyframes flashSlideInLeft{0%{transform:translate(-100%)}to{transform:translate(0,0)}}.ebook-container{flex:auto;align-items:stretch!important;gap:0!important;width:100%!important;max-width:none!important;margin:4px 0 0!important;padding:0!important}.nav-btn{display:none!important}.flashcard-wrapper{touch-action:pan-y;border-radius:16px;flex:auto;width:100%;position:relative;overflow:hidden;perspective:none!important}.flashcard{will-change:transform;min-height:100%;transition:transform .28s cubic-bezier(.32,.72,0,1);border:1px solid var(--c-border)!important;box-shadow:var(--c-shadow-md)!important;border-radius:16px!important;grid-template-columns:1fr!important;gap:12px!important;padding:16px!important}.binder-rings,.page-indicator{display:none!important}.flashcard-peek{z-index:1;pointer-events:none;will-change:transform;transition:transform .28s cubic-bezier(.32,.72,0,1);position:absolute;inset:0}.flashcard-peek .flashcard{height:100%;animation:none!important}.flashcard-preview{background:var(--c-surface)}.media-section{order:1;gap:8px}.info-section{order:2;gap:12px!important}.media-frame{aspect-ratio:16/10;border-radius:12px;max-height:36vh;height:auto!important;min-height:0!important}.media-frame-wrap{width:100%;background:0 0!important}.media-video-wrap{border-radius:12px;line-height:0;display:block;overflow:hidden;background:0 0!important;width:100%!important}.media-video{border-radius:12px;aspect-ratio:auto!important;object-fit:cover!important;background:0 0!important;width:100%!important;height:auto!important;max-height:40vh!important;display:block!important}.word-header{flex-wrap:wrap;align-items:center;gap:8px!important;margin-bottom:4px!important}.word-title{border-radius:10px!important;padding:6px 14px!important;font-size:1.65rem!important;line-height:1.2!important}.word-pos{font-size:.85rem!important}.voca-meaning-badge{padding:4px 10px!important;font-size:.82rem!important}.step-item{padding:0!important}.step-label{font-size:.85rem!important}.step-content{font-size:.9rem!important;line-height:1.55!important}.step-content-sub{font-size:.78rem!important}.sentence-item{font-size:.88rem!important;line-height:1.6!important}.step-toggle-all-btn{padding:4px 10px;font-size:.78rem}body,.container,.home-page,.auth-root,.exam-root,.story-root{-webkit-text-size-adjust:100%;font-feature-settings:"kern"}.title,.home-hero-title,.home-feature-title,.auth-logo-name,.exam-title,.exam-qtext,.exam-modal-title,.story-select-title,.story-chapter-title,.story-header-chapter,.auth-success-title,.word-title,.voca-flying-card-word{line-height:1.2!important}}@media (max-width:640px){.home-features{gap:.6rem;padding:.5rem 1rem 1.5rem}.home-feature{border-radius:12px;gap:.25rem;padding:.85rem .95rem}.home-feature-icon{font-size:1.2rem}.home-feature-title{font-size:.95rem}.home-feature-desc{font-size:.8rem;line-height:1.45}.auth-root{padding:1.1rem .75rem}.auth-card{border-radius:14px;gap:.85rem;padding:1.2rem 1rem 1.1rem}.auth-logo-name{font-size:1.25rem}.auth-logo-badge{letter-spacing:.14em;font-size:.6rem}.auth-tab{padding:.45rem;font-size:.8rem}.auth-label{font-size:.78rem}.auth-input{border-radius:8px;padding:.55rem .75rem;font-size:16px}.auth-submit-btn{min-height:42px;padding:.7rem;font-size:.88rem}.auth-type-btn{padding:.55rem .4rem;font-size:.78rem}.auth-form{gap:.75rem}.auth-switch-hint{font-size:.78rem}.auth-footer-note{font-size:.68rem}.back-btn{min-height:32px;box-shadow:none;border-radius:999px;padding:6px 12px!important;font-size:.75rem!important}.dash-header{margin-top:.6rem!important;padding-top:1.4rem!important;padding-bottom:.9rem!important}.exam-root .exam-title[style]{margin-bottom:1rem!important;font-size:1.05rem!important}.exam-root .exam-nav-btn.primary[style]{min-width:120px!important;padding:.65rem 1rem!important;font-size:.85rem!important}}@media (max-width:380px){.home-feature{padding:.7rem .85rem}.home-feature-title{font-size:.88rem}.home-feature-desc{font-size:.74rem}.auth-card{padding:1rem .85rem .95rem}.auth-logo-name{font-size:1.1rem}.auth-input{padding:.5rem .7rem}.auth-submit-btn{min-height:38px;padding:.6rem;font-size:.84rem}.back-btn{padding:6px 10px!important;font-size:.72rem!important}.container{padding-left:8px!important;padding-right:8px!important}.voca-search-input{width:168px}.flashcard{padding:12px!important}.word-title{padding:6px 12px!important;font-size:1.45rem!important}.voca-meaning-badge{font-size:.76rem!important}.exam-root .exam-title[style]{font-size:.95rem!important}.exam-root .exam-nav-btn.primary[style]{min-width:100px!important;padding:.55rem .8rem!important;font-size:.78rem!important}}@media (prefers-reduced-motion:reduce){.flashcard.next,.flashcard.prev,.flashcard.flying-in,.voca-flying-card--out{animation-duration:1ms!important}}@media (min-width:1024px){.flashcard{will-change:transform, opacity;transform:translateZ(0)}.flashcard.flying-in{perspective:none!important;transform-origin:50%!important;filter:none!important;animation:.26s cubic-bezier(.25,.46,.45,.94) both snt-pc-card-in!important}.flashcard.next,.flashcard.prev{animation-duration:.26s!important;animation-timing-function:cubic-bezier(.25,.46,.45,.94)!important}.flashcard.next{animation-name:snt-pc-slide-right!important}.flashcard.prev{animation-name:snt-pc-slide-left!important}.voca-flying-card,.voca-flying-card--out{display:none!important}}@keyframes snt-pc-card-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes snt-pc-slide-right{0%{opacity:0;transform:translate(24px)}to{opacity:1;transform:translate(0)}}@keyframes snt-pc-slide-left{0%{opacity:0;transform:translate(-24px)}to{opacity:1;transform:translate(0)}}@media (max-width:640px){.snt-account-actions{justify-content:stretch}.snt-account-actions .snt-btn{width:100%;height:44px!important;min-height:44px!important;padding:0 16px!important;font-size:.9rem!important}}.mob-tabbar{display:none}@media (max-width:768px){.mob-tabbar{z-index:90;background:var(--c-surface);border-top:1px solid var(--c-border);padding:2px 4px calc(2px + env(safe-area-inset-bottom)) 4px;font-family:var(--c-font-sans);justify-content:space-around;align-items:stretch;gap:2px;display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -2px 8px #1414130d}.mob-tabbar-item{min-height:44px;color:var(--c-text-muted);border-radius:10px;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:1px;padding:4px 2px;text-decoration:none;transition:background .15s,color .15s;display:flex}.mob-tabbar-item.is-active{color:var(--c-accent-text);background:var(--c-accent-soft)}.mob-tabbar-icon{justify-content:center;align-items:center;line-height:0;display:inline-flex}.mob-tabbar-icon svg{width:20px;height:20px}.mob-tabbar-label{letter-spacing:.01em;font-size:.62rem;font-weight:600;line-height:1}.has-tabbar{padding-bottom:calc(50px + env(safe-area-inset-bottom))!important}}.step-tabs-mobile{display:none}.step-section-desktop{flex-direction:column;gap:1.1rem;display:flex}@media (max-width:768px){.voca-desktop-only{display:none!important}.step-tabs-mobile{flex-direction:column;gap:8px;display:flex}.step-tabs-strip{background:var(--c-surface-2);border:1px solid var(--c-border);border-radius:999px;gap:4px;width:100%;padding:4px;display:flex;overflow:hidden}.step-tab-btn{min-width:0;color:var(--c-text-muted);cursor:pointer;min-height:44px;font-size:.82rem;font-weight:600;font-family:var(--c-font-sans);white-space:nowrap;text-align:center;background:0 0;border:none;border-radius:999px;flex:1 1 0;padding:10px 8px;line-height:1.1;transition:background .18s cubic-bezier(.22,.61,.36,1),color .18s cubic-bezier(.22,.61,.36,1),box-shadow .18s cubic-bezier(.22,.61,.36,1),transform .12s cubic-bezier(.22,.61,.36,1)}.step-tab-btn:active{transform:scale(.96)}.step-tab-btn.is-active{background:var(--c-surface);color:var(--c-text);box-shadow:var(--c-shadow-xs)}.step-tab-body{background:var(--c-surface-2);border:1px solid var(--c-border);min-height:140px;color:var(--c-text);border-radius:12px;padding:14px 16px;font-size:.9rem;line-height:1.6;animation:.22s cubic-bezier(.22,.61,.36,1) both stepTabSwap}@keyframes stepTabSwap{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.step-tab-body .step-content,.step-tab-body .step-content-sub,.step-tab-body .sentence-item{font-size:inherit}.step-tab-body .sentence-list{flex-direction:column;gap:8px;display:flex}.step-section-desktop{display:none!important}.voca-shelf,.voca-shelf-slot,.voca-shelf-spine,.voca-shelf-spine:before,.flashcard.flying-in{animation:none!important}}@media (max-width:380px){.step-tab-btn{padding:10px 4px;font-size:.76rem}.step-tab-body{padding:12px 14px;font-size:.86rem}}@media (max-width:768px){.exam-body{padding-bottom:5.5rem!important}.exam-nav{left:0;right:0;bottom:calc(env(safe-area-inset-bottom) + 0px);background:var(--c-surface);border-top:1px solid var(--c-border);padding:.6rem .85rem calc(.6rem + env(safe-area-inset-bottom)) .85rem;z-index:80;position:fixed;gap:.5rem!important}.exam-root.has-tabbar .exam-nav{bottom:calc(64px + env(safe-area-inset-bottom))}.exam-nav-btn{flex:1;min-height:48px;font-size:.92rem!important}.exam-option{line-height:1.35;gap:.75rem!important;min-height:56px!important;padding:.85rem 1rem!important}.exam-question-wrap{padding:1rem!important}.exam-dots-wrap{scrollbar-width:none;padding:4px 8px;overflow-x:auto}.exam-dots-wrap::-webkit-scrollbar{display:none}.exam-dots{padding:4px;flex-wrap:nowrap!important;gap:4px!important;max-width:none!important}.exam-dot{box-sizing:border-box!important;background-clip:content-box!important;background-color:var(--c-surface-2)!important;border-width:0!important;width:36px!important;height:36px!important;padding:11px!important}.exam-dot.done{background-color:var(--c-accent-soft-2)!important}.exam-dot.current{box-shadow:0 0 0 2px var(--c-accent-soft);background-color:var(--c-accent)!important;transform:none!important}.dash-hero-title{line-height:1.18;font-size:1.4rem!important}.dash-greeting{line-height:1.18}.dash-cards{grid-template-columns:1fr!important;gap:.9rem!important;max-width:100%!important}.dash-card{width:100%!important;max-width:100%!important;min-height:0!important;padding:1.1rem 1.2rem!important}.dash-guide{font-size:.88rem}.story-scene-wrap{aspect-ratio:16/9;min-height:0!important;max-height:38vh!important}.story-text-panel{max-height:none!important}.story-controls .story-nav-btn,.story-footer-btn,.story-tts-btn,.story-autoplay-btn,.story-back-btn{min-height:44px}.vocab-tooltip-wrap{z-index:200;width:auto!important;max-width:92vw!important;position:fixed!important;inset:auto 4vw 6vh!important}.story-chapter-grid{grid-template-columns:1fr 1fr!important}.sc-row,.score-row{flex-direction:column!important;align-items:stretch!important;gap:.6rem!important;padding:.95rem 1rem!important}.sc-actions,.score-actions{flex-direction:column;gap:.45rem;width:100%;display:flex}.sc-action-btn,.score-action-btn{width:100%;min-height:44px;padding:.65rem .9rem!important}.sc-score,.score-score{font-size:1.5rem;font-weight:800}.sc-modal,.score-modal{width:92vw!important;max-width:92vw!important}.acc-card{width:100%!important;padding:1rem!important}.acc-input,.acc-select{min-height:44px;font-size:16px!important}.acc-btn,.acc-submit,.acc-cancel{width:100%;min-height:44px;padding:.7rem 1rem!important}.acc-actions{flex-direction:column!important;gap:.5rem!important}}@media (min-width:380px) and (max-width:768px){.auth-row-school-grade{grid-template-columns:1.4fr 1fr;gap:.6rem;display:grid}}@media (max-width:768px){.voca-bookmark-btn,.voca-mute-btn{min-width:44px;min-height:44px}.story-dot{box-sizing:border-box!important;background-clip:content-box!important;width:36px!important;height:36px!important;padding:14px!important}.rank-tabs{flex-wrap:unset!important;scroll-snap-type:none!important;grid-template-columns:repeat(5,1fr)!important;gap:3px!important;padding:4px!important;display:grid!important;overflow:visible!important}.rank-tabs::-webkit-scrollbar{display:none}.rank-tab{white-space:nowrap;min-height:34px;flex:unset!important;scroll-snap-align:unset!important;min-width:0!important;padding:0 4px!important;font-size:.74rem!important}.rank-row{grid-template-columns:2.2rem 1fr auto!important;gap:.6rem!important;padding:.55rem .7rem!important}.rank-name{font-size:.92rem;line-height:1.2}.rank-score{font-size:.92rem;font-weight:700}.rank-attempts{display:none}.school-ac-list{max-width:92vw;max-height:50vh}}@media (max-width:640px){.ebook-container{padding-bottom:.5rem}}.story-word-bold,.vocab-tooltip-word,.vocab-popup-word{font-family:var(--c-font-word);letter-spacing:-.005em}@media (max-width:768px){input,select,textarea,.c-input,.auth-input,.adm-input,.voca-search-input{font-size:16px}form,.auth-form{scroll-padding-bottom:20vh}}@supports (padding:max(0px)){.back-btn{top:max(8px, env(safe-area-inset-top));left:max(8px, env(safe-area-inset-left))}.exam-nav,.exam-modal-backdrop,.vocab-tooltip{padding-bottom:env(safe-area-inset-bottom)}}@media (hover:none){a:hover,button:hover,.c-btn:hover,.auth-tab:hover,.auth-input:hover,.step-tab:hover,.home-feature:hover{transform:none!important}}@media (max-width:480px){.c-eyebrow,.vocab-tooltip-label,.auth-footer-note,.home-footer-row{font-size:max(.75rem,12px)}}@media (max-width:768px){p,.auth-label,.home-hero-sub,.home-feature-desc{line-height:1.55}}@supports not (height:100dvh){.home-page,.auth-root,.exam-root,.story-root,.c-page{min-height:100vh}}
