:root{--app-safe-area-top: var( --safe-area-inset-top, env(safe-area-inset-top, 0px) );--app-safe-area-right: var( --safe-area-inset-right, env(safe-area-inset-right, 0px) );--app-safe-area-bottom: var( --safe-area-inset-bottom, env(safe-area-inset-bottom, 0px) );--app-safe-area-left: var( --safe-area-inset-left, env(safe-area-inset-left, 0px) );--mobile-header-height: 44px;--mobile-bottom-nav-height: calc(62px + var(--app-safe-area-bottom));--bg-primary: #f7f7f8;--bg-secondary: #ffffff;--bg-tertiary: #eef2f7;--bg-hover: #f2f2f2;--bg-active: #e5e5e5;--text-primary: #1c1c1e;--text-secondary: #545458;--text-muted: #8a8a8e;--text-accent: #2563eb;--text-on-accent: #ffffff;--border-primary: #d7d9dd;--border-secondary: #c7c9cf;--border-focus: #2563eb;--success: #10b981;--error: #ef4444;--warning: #f59e0b;--study-easy: #526ea8;--tts-highlight-bg: rgba(255, 235, 59, .35);--border-radius: 10px;--border-radius-sm: 6px;--border-radius-lg: 14px;--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 16px;--spacing-lg: 24px;--spacing-xl: 32px;--spacing-2xl: 48px;--routine-accent: #d97706;--routine-accent-hover: #b45309;--routine-accent-glow: rgba(217, 119, 6, .25);--routine-surface: #ffffff;--routine-surface-alt: #faf7f2;--routine-border: #ede5d4;--routine-text: #1c1917;--routine-text-secondary: #78716c;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .03);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .05), 0 2px 4px -1px rgba(0, 0, 0, .04);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .07), 0 4px 6px -2px rgba(0, 0, 0, .04);--transition: all .2s ease-in-out;--transition-slow: all .35s ease;--accent: #2d6df3;--accent-dark: #1f4fd8;--accent-outline: rgba(37, 99, 235, .4);--border-radius-md: 12px;--accent-primary: var(--text-accent);--accent-primary-dark: var(--accent-dark)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.story-actions{display:flex;flex-wrap:nowrap;gap:10px;row-gap:8px;align-items:center;padding:6px 8px;border:1px solid rgba(0,0,0,.06);border-radius:14px;background:linear-gradient(180deg,rgba(255,255,255,.98),var(--bg-secondary));box-shadow:0 6px 16px #1118270a}.story-audio-controls,.story-manage-controls{display:flex;gap:8px;align-items:center}.story-actions.is-wrapped{flex-wrap:wrap;justify-content:flex-start}.story-actions.is-wrapped .story-audio-controls,.story-actions.is-wrapped .story-manage-controls{flex-wrap:wrap}.story-actions label.checkbox{display:inline-flex;align-items:center;gap:.5rem;color:var(--text-secondary);font-size:.92rem}.story-actions label.checkbox input[type=checkbox]{accent-color:var(--text-accent)}html:is([data-theme=dark],[data-theme-effective=dark]) .story-actions label.checkbox{color:var(--text-secondary)}html:is([data-theme=dark],[data-theme-effective=dark]) .story-actions label.checkbox input[type=checkbox]{-moz-appearance:none;appearance:none;-webkit-appearance:none;width:18px;height:18px;border-radius:4px;border:1px solid var(--border-secondary);background:var(--bg-tertiary);position:relative;display:inline-block;vertical-align:middle}html:is([data-theme=dark],[data-theme-effective=dark]) .story-actions label.checkbox input[type=checkbox]:checked{background:var(--text-accent);border-color:var(--text-accent)}html:is([data-theme=dark],[data-theme-effective=dark]) .story-actions label.checkbox input[type=checkbox]:checked:after{content:"";position:absolute;left:5px;top:2px;width:4px;height:8px;border:solid var(--text-on-accent);border-width:0 2px 2px 0;transform:rotate(45deg)}.story-audio-controls{margin-right:6px;padding-right:10px;border-right:1px solid rgba(0,0,0,.04)}.story-actions.is-wrapped .story-audio-controls{margin-right:0;padding-right:0;border-right:none}.story-actions .btn{display:inline-flex;align-items:center;justify-content:center;height:40px;min-width:40px;padding:0 12px;border-radius:10px;font-size:.95rem;font-weight:600;transition:all .15s ease;border:1px solid transparent;background:transparent;color:var(--text-primary);gap:8px}.story-actions .btn.loop-toggle{min-width:38px;padding:0 10px;outline:none}.story-actions .btn.loop-toggle i,.story-actions .btn.loop-toggle svg{width:18px;height:18px;display:block}.story-actions .btn.loop-toggle.is-active{background:#2d6df31f;color:var(--text-accent);border-color:var(--accent-outline);box-shadow:0 0 0 1px #2d6df31f}.story-actions .btn.loop-toggle:focus-visible{outline:2px solid var(--accent-outline);outline-offset:2px}.story-actions .btn.loop-toggle.is-active:focus-visible{background:#2d6df32e;border-color:var(--accent-outline);box-shadow:0 0 0 1px #2d6df333}.story-actions .btn svg{width:18px;height:18px;stroke-width:2.2px}.story-actions .btn:hover:not(:disabled){background:var(--bg-hover);transform:translateY(-1px)}.story-actions .btn.btn-primary{background:var(--primary);color:#fff;border-color:#0000000a}.story-actions .btn.btn-danger{background:#ef44440f;color:var(--danger);border-color:#ef44441f}.story-actions .btn.btn-danger:hover:not(:disabled){background:#ef44441f}.story-actions .btn.btn-danger:disabled{display:none!important}.story-actions .btn:disabled{opacity:.6;cursor:not-allowed}@media (max-width: 720px){.story-actions{gap:10px;padding:10px;width:100%;flex-wrap:wrap;justify-content:flex-start}.story-actions .btn{height:48px;min-width:64px;padding:0 14px;font-size:.95rem}.story-actions .btn span{display:inline-block}}html:is([data-theme=dark],[data-theme-effective=dark]) .story-actions{background:linear-gradient(180deg,#ffffff05,#ffffff03);border:1px solid rgba(255,255,255,.04);box-shadow:0 8px 20px #02061799}html:is([data-theme=dark],[data-theme-effective=dark]) .story-actions .btn{background:#ffffff05;color:var(--text-primary);border-color:#ffffff05}html:is([data-theme=dark],[data-theme-effective=dark]) .story-actions .btn.loop-toggle.is-active{background:#facc152e;border-color:#facc158c;color:#facc15;box-shadow:0 0 0 1px #facc1538}html:is([data-theme=dark],[data-theme-effective=dark]) .story-actions .btn.loop-toggle:focus-visible{outline:2px solid rgba(250,204,21,.5);outline-offset:2px}html:is([data-theme=dark],[data-theme-effective=dark]) .story-actions .btn.loop-toggle.is-active:focus-visible{background:#facc1542;border-color:#facc15b3;box-shadow:0 0 0 1px #facc154d}html:is([data-theme=dark],[data-theme-effective=dark]) .story-actions .btn:hover:not(:disabled){background:#ffffff08}html:is([data-theme=dark],[data-theme-effective=dark]) .story-actions .btn.btn-danger{background:#ef444429;color:#fca5a5;border-color:#ef444466}html:is([data-theme=dark],[data-theme-effective=dark]) .story-actions .btn.btn-danger:hover:not(:disabled){background:#ef44443d;color:#fecaca;border-color:#ef44448c}html:is([data-theme=dark],[data-theme-effective=dark]) .story-actions .btn.btn-primary{background:color-mix(in srgb,var(--text-accent) 82%,black 18%);color:#fff}html:is([data-theme=dark],[data-theme-effective=dark]) .story-actions .btn svg{width:20px;height:20px}.loading-state .spinner{width:32px;height:32px;border:3px solid var(--bg-tertiary);border-top-color:var(--text-accent);border-radius:50%;animation:spin .9s linear infinite}.practice-controls{background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--border-radius);padding:12px;align-items:end}.practice-controls.audio-controls{display:grid;grid-template-columns:repeat(12,1fr);gap:var(--spacing-md)}.practice-controls.audio-controls details.audio-control-group{grid-column:1 / -1;background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--border-radius);overflow:hidden}.practice-controls.audio-controls details.audio-control-group summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:.75rem 1rem;background:var(--bg-secondary);border-bottom:1px solid var(--border-primary)}.practice-controls.audio-controls details.audio-control-group summary::-webkit-details-marker{display:none}.practice-controls.audio-controls details.audio-control-group summary::marker{content:""}.practice-controls.audio-controls .audio-section-label{display:inline-flex;align-items:center;gap:.625rem;min-width:0}.practice-controls.audio-controls .audio-section-label i[data-lucide],.practice-controls.audio-controls .audio-section-label svg{width:16px;height:16px;color:var(--text-accent);flex-shrink:0}.practice-controls.audio-controls .audio-section-chevron{width:16px;height:16px;color:var(--text-muted);transition:transform .24s ease}.practice-controls.audio-controls details.audio-control-group[open] .audio-section-chevron{transform:rotate(180deg)}.practice-controls.audio-controls .audio-control-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:var(--spacing-md);padding:.75rem 1rem 1rem}.audio-presets{padding:1rem;background:var(--bg-secondary);border-radius:var(--border-radius);border:1px solid var(--border-primary)}.audio-presets .btn-sm{padding:.5rem .875rem;font-size:.875rem;display:inline-flex;align-items:center;gap:.375rem}.audio-presets .btn-sm i[data-lucide],.audio-presets .btn-sm svg{width:1rem;height:1rem;flex-shrink:0}.practice-controls.audio-controls .audio-section-title{margin:0}.practice-controls.audio-controls .audio-section-title h4{font-size:1rem;font-weight:600;color:var(--text-primary);margin:0}.practice-controls.audio-controls .control-group{grid-column:span 3}.practice-controls.audio-controls .audio-voices-card,.practice-controls.audio-controls .audio-style-card{grid-column:span 12;background:var(--bg-primary);border:1px solid var(--border-primary);border-radius:var(--border-radius);padding:var(--spacing-md)}.practice-controls.audio-controls .audio-voices-card .radio-group,.practice-controls.audio-controls .audio-style-card .radio-group{display:flex;flex-wrap:wrap;gap:16px}.practice-controls.audio-controls .audio-voices-card .radio-group>div,.practice-controls.audio-controls .audio-style-card .radio-group>div{display:flex;flex-direction:row;align-items:center;gap:8px;min-width:150px}.practice-controls.audio-controls .audio-voices-card .radio-group>div label,.practice-controls.audio-controls .audio-style-card .radio-group>div label{margin:0;min-width:80px}.practice-controls.audio-controls .sticky-actions{grid-column:1 / -1}@media (max-width: 980px){.practice-controls.audio-controls .audio-control-grid{grid-template-columns:repeat(6,1fr)}.practice-controls.audio-controls .control-group{grid-column:span 3}.practice-controls.audio-controls .audio-voices-card,.practice-controls.audio-controls .audio-style-card{grid-column:span 6}}@media (max-width: 640px){.practice-controls.audio-controls .audio-control-grid{grid-template-columns:repeat(4,1fr)}.practice-controls.audio-controls .control-group,.practice-controls.audio-controls .audio-voices-card,.practice-controls.audio-controls .audio-style-card{grid-column:1 / -1}.practice-controls.audio-controls .audio-voices-card .radio-group,.practice-controls.audio-controls .audio-style-card .radio-group{flex-direction:column}.practice-controls.audio-controls .audio-voices-card .radio-group>div,.practice-controls.audio-controls .audio-style-card .radio-group>div{width:100%}}.practice-controls .control-group label{font-size:.85rem;color:var(--text-secondary);font-weight:600}.practice-controls input[type=text],.practice-controls select{width:100%;padding:10px 12px;border:1px solid var(--border-primary);border-radius:var(--border-radius-sm);background:var(--bg-primary);color:var(--text-primary);font-weight:500}.practice-controls .sticky-actions{display:flex;align-items:center;justify-content:flex-start}.practice-controls .btn.btn-primary{display:inline-flex;align-items:center;gap:8px}.gating-btn-secondary{border-radius:10px;background:var(--routine-surface);color:var(--routine-text-secondary);border-color:var(--routine-border)}.gating-btn-secondary:hover{background:var(--routine-surface-alt);color:var(--routine-text);cursor:pointer}.gating-btn-primary{border-radius:10px;background:linear-gradient(135deg,var(--routine-accent),var(--routine-accent-hover));color:#fff;border-color:transparent;box-shadow:0 2px 8px var(--routine-accent-glow)}.gating-btn-primary:hover{box-shadow:0 4px 16px var(--routine-accent-glow);transform:translateY(-1px);cursor:pointer}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.loading-state.error-state{border-color:#ef444440}.loading-state .error-icon{color:var(--error);width:28px;height:28px}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;line-height:1.6;margin:0;padding:0;background:var(--bg-primary);color:var(--text-primary);font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;display:flex;flex-direction:column;min-height:100vh}main{max-width:1200px;margin:0 auto;padding:var(--spacing-lg);flex-grow:1;width:100%;min-width:0;box-sizing:border-box;display:flex;flex-direction:column;min-height:calc(100dvh - 72px)}.quiz-section .sr-info,#study-view .sr-info{display:flex;align-items:flex-start;gap:10px;padding:10px 12px;border:1px solid var(--border-primary);border-radius:var(--border-radius-sm);background:var(--bg-secondary);margin:0 0 var(--spacing-md) 0}.quiz-section .sr-info i[data-lucide],#study-view .sr-info i[data-lucide]{width:20px;height:20px;color:var(--text-accent)}.quiz-section .sr-cta,#study-view .sr-cta{display:inline-flex;align-items:center;gap:6px;padding:0;border:0;background:transparent;-moz-appearance:none;appearance:none;-webkit-appearance:none;font:inherit;line-height:inherit;font-weight:600;color:var(--text-accent);cursor:pointer}.quiz-section .sr-cta:hover,#study-view .sr-cta:hover{text-decoration:underline}.quiz-section .sr-panel,#study-view .sr-panel{display:none;margin-top:8px;color:var(--text-secondary);font-size:.95rem}.quiz-section .sr-panel.open,#study-view .sr-panel.open{display:block}html:is([data-theme=dark],[data-theme-effective=dark]) .sr-info{background:#ffffff0a;border-color:#ffffff1f}html:is([data-theme=dark],[data-theme-effective=dark]) .sr-info i[data-lucide]{color:var(--accent-primary)}html:is([data-theme=dark],[data-theme-effective=dark]) .sr-cta{color:#dbeafe}html:is([data-theme=dark],[data-theme-effective=dark]) .sr-panel{color:var(--text-secondary)}.view{opacity:0;transform:translateY(6px);transition:var(--transition-slow)}.view[style*="display: block"],.view[style*="display: flex"],.view[style*="display: grid"]{opacity:1;transform:translateY(0)}#pricing-view.pricing-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:11050;background:var(--bg-primary);overflow-y:auto}#pricing-view.pricing-overlay{scrollbar-width:thin;scrollbar-color:#c4c7cc #f1f1f3}#pricing-view.pricing-overlay::-webkit-scrollbar{width:10px}#pricing-view.pricing-overlay::-webkit-scrollbar-track{background:#f1f1f3}#pricing-view.pricing-overlay::-webkit-scrollbar-thumb{background-color:#c4c7cc;border-radius:8px;border:2px solid #f1f1f3}html:is([data-theme=dark],[data-theme-effective=dark]) #pricing-view.pricing-overlay{scrollbar-color:#6b7280 #1f2937}html:is([data-theme=dark],[data-theme-effective=dark]) #pricing-view.pricing-overlay::-webkit-scrollbar-track{background:#1f2937}html:is([data-theme=dark],[data-theme-effective=dark]) #pricing-view.pricing-overlay::-webkit-scrollbar-thumb{background-color:#6b7280;border-color:#1f2937}body.pricing-active>header,body.pricing-active .sidebar,body.pricing-active>footer{display:none!important}body.pricing-active #scroll,body.pricing-active #scroll2{display:none!important}.app-container{display:grid;grid-template-columns:260px minmax(0,1fr);gap:0;align-items:start;width:100%;max-width:100%;overflow-x:clip}.sidebar{position:sticky;top:var(--header-height, 72px);height:calc(100dvh - var(--header-height, 72px));align-self:start;overflow-y:auto;overscroll-behavior:contain;display:flex;flex-direction:column;background:var(--bg-secondary);background:color-mix(in srgb,var(--bg-primary) 86%,var(--bg-secondary) 14%);border-right:1px solid var(--border-primary)}.sidebar .sidebar-inner{display:flex;flex-direction:column;min-height:100%;overscroll-behavior:contain}.sidebar-header{display:none;justify-content:space-between;align-items:center;padding:var(--spacing-md);padding-right:calc(var(--spacing-md) + var(--app-safe-area-right));border-bottom:1px solid var(--border-primary);background:var(--bg-secondary);background:color-mix(in srgb,var(--bg-primary) 86%,var(--bg-secondary) 14%);gap:var(--spacing-sm)}.sidebar-header-actions{display:flex;align-items:center;justify-content:flex-end;gap:var(--spacing-sm)}.sidebar-header h2{margin:0;font-size:1.1rem;font-weight:600;color:var(--text-primary)}.sidebar-back{background:none;border:none;padding:var(--spacing-xs);border-radius:var(--border-radius-sm);cursor:pointer;color:var(--text-secondary);transition:var(--transition);display:flex;align-items:center;justify-content:center;width:32px;height:32px;box-sizing:border-box}.sidebar-back:hover{background:var(--bg-hover);color:var(--text-primary)}.sidebar-back[hidden]{display:none!important}.sidebar-close{background:none;border:none;padding:var(--spacing-xs);border-radius:var(--border-radius-sm);cursor:pointer;color:var(--text-secondary);transition:var(--transition);display:flex;align-items:center;justify-content:center;width:32px;height:32px;box-sizing:border-box}.sidebar-close:hover{background:var(--bg-hover);color:var(--text-primary)}.sidebar-nav{display:flex;flex-direction:column;gap:6px;padding:12px;flex-grow:1;overscroll-behavior:contain}.sidebar-nav a{text-decoration:none;color:var(--text-secondary);font-weight:500;padding:10px 12px;border-radius:var(--border-radius-sm);transition:var(--transition);display:flex;align-items:center;justify-content:space-between}.sidebar-link-content{display:flex;align-items:center;gap:8px;color:inherit}.sidebar-link-content svg{flex-shrink:0}.sidebar-nav a:hover{color:var(--text-primary);background-color:var(--bg-hover)}.sidebar-context{display:none;flex-direction:column;gap:var(--spacing-md);padding:var(--spacing-md);overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;max-height:calc(100dvh - 220px)}@media (max-width: 900px){.sidebar-context{max-height:calc(100dvh - 120px);flex:1}}.sidebar-context[hidden]{display:none!important}.sidebar.context-active{background:var(--bg-secondary);background:color-mix(in srgb,var(--bg-primary) 86%,var(--bg-secondary) 14%)}.sidebar.context-active .sidebar-nav{display:none}.sidebar.context-active .sidebar-context{display:flex}.sidebar.context-active .sidebar-header h2{color:var(--text-primary)}.sidebar-context-section{display:flex;flex-direction:column;gap:var(--spacing-sm);border:1px solid var(--border-primary);border-radius:var(--border-radius);padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-secondary)}.sidebar-context-row{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--spacing-sm)}.sidebar-context-title-group{display:flex;flex-direction:column;gap:2px}.sidebar-context-action{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:var(--border-radius-sm);border:1px solid var(--border-primary);background:var(--bg-primary);color:var(--text-secondary);transition:var(--transition);cursor:pointer}.sidebar-context-action svg{width:18px;height:18px}.sidebar-context-action:hover,.sidebar-context-action:focus-visible{background:var(--bg-hover);border-color:var(--border-secondary);color:var(--text-primary)}.sidebar-context-action.is-loading{opacity:.65;pointer-events:none}.sidebar-context-section.active{border-color:var(--text-accent);box-shadow:var(--shadow-sm)}.sidebar-context-title{font-size:.9rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em}.sidebar-context-subtext{margin:0;font-size:.85rem;color:var(--text-muted)}.sidebar-context-list{display:flex;flex-direction:column;gap:var(--spacing-xs)}.sidebar-context-item{display:flex;flex-direction:column;align-items:flex-start;gap:4px;border:1px solid var(--border-primary);border-radius:var(--border-radius-sm);background:var(--bg-primary);padding:10px 12px;font-size:.95rem;color:var(--text-primary);cursor:pointer;transition:var(--transition);text-align:left}.sidebar-context-item:hover{border-color:var(--border-secondary);background:var(--bg-hover)}.sidebar-context-item.active{border-color:var(--text-accent);box-shadow:var(--shadow-sm)}.sidebar-context-item .item-title{font-weight:600;line-height:1.3}.sidebar-context-item.locked .item-title{display:inline-flex;align-items:center;gap:.4rem}.sidebar-context-item.locked .item-lock{font-size:.85rem;color:var(--text-muted)}.sidebar-context-item .item-meta{font-size:.8rem;color:var(--text-muted)}.sidebar-context-pill{border-radius:999px;border:1px solid var(--border-primary);background:var(--bg-primary);color:var(--text-secondary);padding:6px 12px;font-size:.85rem;font-weight:600;cursor:pointer;transition:var(--transition)}.sidebar-context-pill:hover{background:var(--bg-hover);color:var(--text-primary)}.sidebar-context-pill.active{background:var(--text-accent);color:var(--text-on-accent);border-color:var(--text-accent)}.sidebar-context-levels{display:flex;flex-wrap:wrap;gap:8px}.sidebar-context-empty{padding:10px 12px;border-radius:var(--border-radius-sm);background:var(--bg-tertiary);color:var(--text-muted);font-size:.9rem}.sidebar-mobile-note{display:none;margin-top:var(--spacing-md);padding:var(--spacing-md);border-radius:var(--border-radius);border:1px dashed var(--border-secondary);background:var(--bg-secondary);gap:var(--spacing-md);align-items:flex-start;cursor:pointer;transition:background-color .15s ease,border-color .15s ease}@media (max-width: 900px){.sidebar-mobile-note{margin-top:var(--spacing-sm);margin-inline:var(--spacing-md);margin-bottom:var(--spacing-md)}}.sidebar-mobile-note i[data-lucide]{width:24px;height:24px;color:var(--text-accent);flex:0 0 auto}.sidebar-mobile-note strong{display:block;font-size:.95rem;color:var(--text-primary);margin-bottom:4px}.sidebar-mobile-note span{font-size:.85rem;color:var(--text-muted)}.sidebar-mobile-note:hover,.sidebar-mobile-note:focus-visible{background:var(--bg-tertiary);border-color:var(--border-primary)}@media (max-width: 900px){.sidebar-mobile-note{display:none}.stories-layout,.practice-layout{grid-template-columns:1fr}.stories-layout .story-viewer-container,.practice-layout .story-viewer-container{width:100%;max-width:none;margin:0;grid-column:1 / -1;justify-self:stretch}#stories-view[data-mobile-view=list] .story-viewer-container,#stories-view[data-mobile-view=detail] .stories-sidebar,#stories-view[data-mobile-view=detail] .stories-controls,#practice-view[data-mobile-view=list] .story-viewer-container,#practice-view[data-mobile-view=detail] .stories-sidebar,#practice-view[data-mobile-view=detail] .practice-controls,#practice-view[data-mobile-view=detail] .audio-presets{display:none}.stories-layout .stories-sidebar,.practice-layout .stories-sidebar{display:flex;max-height:none;margin-bottom:var(--spacing-md);overflow:visible}.stories-list,.practice-layout .stories-list{overflow:visible;max-height:none}}.sidebar-toggle{display:none;gap:6px;align-items:center;flex:0 0 auto}h1,h2,h3,h4,h5,h6{font-family:Poppins,sans-serif;margin-top:0;font-weight:600}header{background:#ffffffd9;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:var(--shadow-sm);border-bottom:1px solid var(--border-primary);position:sticky;top:0;z-index:100;padding:var(--spacing-sm) var(--spacing-lg);display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-sm);transition:transform .25s ease;will-change:transform;box-sizing:border-box}.mobile-topnav{display:none}.header-hidden{transform:translateY(-100%)}.logo{display:flex;align-items:center;gap:9px;min-width:0;flex:1 1 auto}.logo h1{margin:0;font-size:1.5rem;font-weight:700;color:var(--text-primary);line-height:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.logo .logo-icon{width:31px;height:34px;flex:0 0 31px;display:block;-o-object-fit:contain;object-fit:contain;transition:transform .18s ease}.native-shell header>.logo .logo-icon{filter:none}#mobile-upgrade-btn{display:none;align-items:center;justify-content:center;border-radius:999px;border:1px solid rgba(21,61,106,.26);background:linear-gradient(180deg,#ffffff42,#fff0) padding-box,linear-gradient(165deg,#1f4a7b2e,#2859923d) border-box;color:#123a66;font-family:Poppins,sans-serif;font-weight:600;letter-spacing:.015em;box-shadow:0 4px 10px #0c244024,inset 0 1px #ffffff80;white-space:nowrap;transition:transform .2s ease,box-shadow .2s ease,filter .2s ease}#mobile-upgrade-btn:hover:not(:disabled){transform:translateY(-1px);filter:saturate(1.05);box-shadow:0 6px 12px #0c244029,inset 0 1px #ffffff85}#mobile-upgrade-btn:focus-visible{outline:2px solid color-mix(in srgb,var(--text-accent) 65%,#ffffff 35%);outline-offset:1px}html:is([data-theme=dark],[data-theme-effective=dark]) #mobile-upgrade-btn{border-color:#82ade159;background:linear-gradient(180deg,#ffffff24,#fff0) padding-box,linear-gradient(165deg,#2e58889e,#224874b8) border-box;color:#edf5ff}nav ul{display:none}.premium-pill:after{content:"Premium";margin-left:8px;font-size:.7rem;color:var(--text-accent);background:#2563eb1a;border:1px solid rgba(37,99,235,.3);padding:2px 6px;border-radius:999px}#premium-modal .premium-modal{border-radius:24px;background:var(--bg-primary);box-shadow:0 28px 60px #0f172a59;border:1px solid var(--border-primary)}.modal-close{position:absolute;top:18px;right:22px;background:transparent;border:none;font-size:1.5rem;color:var(--text-secondary);cursor:pointer;transition:color .2s ease}.modal-close:hover{color:var(--text-primary)}.premium-modal{max-width:720px!important;padding:var(--spacing-xl) var(--spacing-xxl);display:flex;flex-direction:column;gap:var(--spacing-lg);position:relative}.premium-modal-header{display:flex;flex-direction:column;gap:var(--spacing-sm);text-align:center}.premium-modal-header h2{margin:0;font-size:2rem;color:var(--text-primary)}.premium-modal-header p{margin:0 auto;color:var(--text-secondary);max-width:560px}.premium-badge{display:inline-flex;align-items:center;gap:.4rem;padding:4px 12px;border-radius:999px;font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;background:#2563eb1f;color:var(--accent-primary);border:1px solid rgba(37,99,235,.35);margin:0 auto}.premium-feature-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-md)}.premium-feature{display:flex;gap:var(--spacing-sm);padding:var(--spacing-md);border-radius:18px;background:#2563eb14;border:1px solid rgba(37,99,235,.16)}.premium-feature h3{margin:0 0 .25rem;font-size:1.05rem;color:var(--text-primary)}.premium-feature p{margin:0;font-size:.9rem;color:var(--text-secondary)}.feature-icon{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:14px;background:#2563eb1f;color:var(--accent-primary);flex-shrink:0}.premium-highlights{background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:20px;padding:var(--spacing-lg);display:flex;flex-direction:column;gap:var(--spacing-md)}.premium-highlights h3{margin:0;font-size:1.15rem;color:var(--text-primary)}.premium-highlight-list{margin:0;padding:0;list-style:none;display:grid;gap:var(--spacing-md)}.premium-highlight-list li{display:grid;grid-template-columns:auto 1fr;gap:var(--spacing-sm);align-items:start;color:var(--text-secondary)}.premium-highlight-list strong{display:block;color:var(--text-primary);font-weight:600}.premium-compare{display:flex;flex-direction:column;gap:var(--spacing-md)}.premium-compare h3{margin:0;font-size:1.15rem;color:var(--text-primary);text-align:center}.premium-compare-grid{display:grid;gap:var(--spacing-md);grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.compare-card{border-radius:18px;padding:var(--spacing-lg);background:var(--bg-secondary);border:1px solid var(--border-primary);display:flex;flex-direction:column;gap:var(--spacing-sm)}.compare-card.premium{background:linear-gradient(180deg,#2563eb29,#2563eb0d);border-color:#2563eb59}.compare-label{font-weight:600;color:var(--text-primary);text-transform:uppercase;font-size:.75rem;letter-spacing:.12em}.compare-card ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.6rem;color:var(--text-secondary)}.compare-card ul li:before{content:"•";color:var(--accent-primary);margin-right:.4rem}.premium-actions{display:flex;gap:var(--spacing-sm);flex-wrap:wrap;align-items:center;justify-content:center}.pricing-shell{max-width:1100px;margin:0 auto;padding:32px 28px 56px;position:relative;display:flex;flex-direction:column;min-height:100vh}.pricing-content{flex:1;display:flex;flex-direction:column;justify-content:center}.pricing-close{position:fixed;top:calc(24px + var(--app-safe-area-top));right:calc(24px + var(--app-safe-area-right));background:var(--bg-secondary);border:1px solid var(--border-primary);width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:50%;cursor:pointer;box-shadow:var(--shadow-sm);z-index:1100;transition:transform .2s ease,box-shadow .2s ease}.pricing-close:hover{background:var(--bg-hover)}.pricing-close:active{transform:scale(.94)}@media (max-width: 768px){.pricing-shell{padding:calc(96px + var(--app-safe-area-top)) clamp(16px,6vw,28px) clamp(48px,12vh,72px)}.pricing-close{width:38px;height:38px;right:calc(18px + var(--app-safe-area-right))}}@media (max-width: 480px){.pricing-close{top:calc(12px + var(--app-safe-area-top));right:calc(12px + var(--app-safe-area-right))}.pricing-shell{padding-left:clamp(12px,6vw,20px);padding-right:clamp(12px,6vw,20px)}.pricing-header{margin-bottom:18px}.pricing-toggle{margin:10px auto 24px}}html:is([data-theme=dark],[data-theme-effective=dark]) .pricing-close i{color:#ccc}html:is([data-theme=light],[data-theme-effective=light]) .pricing-close i{color:#333}#pricing-view .pricing-header{background:transparent!important;border:none!important;box-shadow:none!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;padding:0;text-align:center;margin-bottom:24px;display:flex;flex-direction:column;align-items:center}.pricing-header h2{font-size:clamp(1.8rem,3.5vw,2.4rem);margin:0 0 6px}.pricing-sub{color:var(--text-secondary);font-size:1rem;margin:0}.pricing-top{margin-bottom:10px}.pricing-toggle{display:inline-flex;gap:8px;background:var(--bg-tertiary);border:1px solid var(--border-primary);border-radius:999px;padding:4px;align-items:center;justify-content:center}html:is([data-theme=light],[data-theme-effective=light]) .pricing-toggle{background:#fff;border-color:#e5e5e5}html:is([data-theme=dark],[data-theme-effective=dark]) .pricing-toggle{background:#2d2d2d;border-color:#505050}.pricing-toggle .toggle-btn{border:1px solid transparent;background:transparent;color:var(--text-primary);padding:8px 16px;border-radius:999px;font-weight:600;cursor:pointer}.pricing-toggle .toggle-btn.active{background:var(--text-accent);color:var(--text-on-accent)}.pricing-toggle{margin-top:8px}.pricing-toggle{margin:12px auto 28px;box-shadow:var(--shadow-sm);position:relative;z-index:1002}.pricing-header{position:relative;z-index:1001}.pricing-toggle .toggle-btn{font-size:.85rem;letter-spacing:.3px;line-height:1;display:inline-flex;align-items:center}.pricing-toggle .toggle-btn:hover{background:#0000000f}html:is([data-theme=dark],[data-theme-effective=dark]) .pricing-toggle .toggle-btn:hover{background:#ffffff0f}.pricing-toggle .toggle-btn:focus-visible{outline:2px solid var(--text-accent);outline-offset:2px}.pricing-toggle .toggle-btn.active{box-shadow:0 0 0 2px #2563eb59}html:is([data-theme=dark],[data-theme-effective=dark]) .pricing-close svg{stroke:#d6d6d6}html:is([data-theme=dark],[data-theme-effective=dark]) .pricing-close:hover svg{stroke:#fff}html:is([data-theme=light],[data-theme-effective=light]) .pricing-close svg{stroke:#222}html:is([data-theme=light],[data-theme-effective=light]) .pricing-close:hover svg{stroke:#000}.segmented-toggle{display:inline-flex;align-items:center;justify-content:center;gap:4px;padding:4px;border-radius:999px;border:1px solid var(--border-primary);background:var(--bg-tertiary);box-shadow:var(--shadow-sm);margin:12px auto 28px;position:relative;z-index:2000}.segmented-toggle input{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;opacity:0}.segmented-toggle label{padding:8px 20px;border-radius:999px;font-weight:600;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;color:var(--text-secondary);border:1px solid transparent;transition:all .2s ease;font-size:.95rem;line-height:1.2}.segmented-toggle input:checked+label{background:var(--text-accent);color:var(--text-on-accent)!important;box-shadow:0 1px 3px #00000026}.segmented-toggle label:hover{color:var(--text-primary);background:#0000000d}html:is([data-theme=dark],[data-theme-effective=dark]) .segmented-toggle label:hover{background:#ffffff0d}html:is([data-theme=light],[data-theme-effective=light]) .segmented-toggle{background:#f2f2f7;border-color:#d1d1d6}html:is([data-theme=dark],[data-theme-effective=dark]) .segmented-toggle{background:#2c2c2e;border-color:#3a3a3c}.pricing-grid{display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));align-items:stretch}.plan-card{background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:20px;padding:22px 22px 26px;display:flex;flex-direction:column;position:relative;box-shadow:var(--shadow-sm);transition:box-shadow .25s,border-color .25s,transform .25s}.plan-card:hover{box-shadow:var(--shadow-md);transform:translateY(-4px)}.plan-card.plan-premium{border-color:var(--accent);box-shadow:0 4px 20px -2px #00000059,0 0 0 2px var(--accent-outline)}.plan-header h3{margin:0;font-size:1.25rem;font-weight:600}.plan-price{margin:.35rem 0 .75rem;font-size:1.1rem;font-weight:500}.plan-price.emphasis{font-size:1.25rem;font-weight:600;color:var(--accent)}.plan-support-copy{margin:0 0 .45rem;color:var(--text-secondary);font-size:.86rem;line-height:1.35}.plan-price-loading-note{display:none}.inline-plan-link{border:0;background:none;padding:0;margin:0;color:var(--text-accent);font:inherit;font-weight:700;text-decoration:underline;text-underline-offset:2px;cursor:pointer}.inline-plan-link:hover{color:var(--accent-dark)}.inline-plan-link:focus-visible{outline:2px solid var(--text-accent);outline-offset:2px;border-radius:4px}.plan-trial-note{margin:0 0 .75rem;color:var(--text-primary);font-size:.88rem;font-weight:600}.plan-card.plan-premium.is-pricing-loading #premium-price,.plan-card.plan-premium.is-pricing-loading .plan-period,.plan-card.plan-premium.is-pricing-loading #premium-yearly-equivalent,.plan-card.plan-premium.is-pricing-loading #premium-yearly-billing-note{visibility:hidden}.plan-card.plan-premium.is-pricing-loading .plan-price-loading-note{display:block}.plan-card.plan-premium .plan-cta .premium-cta-btn{position:relative;overflow:hidden;border:1px solid rgba(8,28,56,.35);border-radius:13px;background:linear-gradient(180deg,#fff3,#fff0) padding-box,linear-gradient(165deg,#0b2441,#123862 58%,#0f2e51) border-box;color:#f4f7fb;font-weight:700;letter-spacing:.01em;box-shadow:0 8px 16px #08182c3d,inset 0 1px #ffffff38;transition:transform .2s ease,box-shadow .2s ease,filter .2s ease}.plan-card.plan-premium .plan-cta .premium-cta-btn:hover:not(:disabled){transform:translateY(-1px);filter:saturate(1.08);box-shadow:0 12px 20px #08182c47,inset 0 1px #ffffff38}.plan-card.plan-premium .plan-cta .premium-cta-btn:active:not(:disabled){transform:translateY(0);box-shadow:0 7px 14px #08182c38,inset 0 1px #fff3}.plan-card.plan-premium .plan-cta .premium-cta-btn:focus-visible{outline:2px solid #6ea8ff;outline-offset:2px}html:is([data-theme=dark],[data-theme-effective=dark]) .plan-card.plan-premium .plan-cta .premium-cta-btn{border-color:#7aa4db59;background:linear-gradient(180deg,#ffffff24,#fff0) padding-box,linear-gradient(165deg,#21456c,#2a5f8f 58%,#234f79) border-box;color:#f3f8ff}.plan-period{opacity:.65;font-size:.85em}.plan-badge{position:absolute;top:14px;right:14px;background:linear-gradient(135deg,var(--accent),var(--accent-dark));color:var(--text-on-accent);font-size:.65rem;padding:4px 8px;border-radius:999px;letter-spacing:.5px;font-weight:600;box-shadow:0 2px 8px -2px #0006}.plan-features{list-style:none;margin:0 0 18px;padding:0;flex-grow:1;display:flex;flex-direction:column;gap:10px}.plan-features li{display:flex;gap:10px;align-items:flex-start;font-size:.9rem;line-height:1.3}.plan-features i{width:18px;height:18px;color:var(--accent);flex-shrink:0}.plan-cta{display:flex;flex-direction:column;gap:10px;margin-top:auto}.plan-cta button{width:100%}.pricing-footer{text-align:center;margin-top:42px;font-size:.75rem;color:var(--text-secondary)}.pricing-note{max-width:600px;margin:0 auto}@media (prefers-color-scheme: dark){.plan-card.plan-premium{box-shadow:0 4px 24px -4px #000000b3,0 0 0 2px var(--accent-outline)}.plan-badge{color:var(--text-on-accent)}}.btn{border:1px solid var(--border-primary);border-radius:var(--border-radius-md);padding:.75rem 1.2rem;font-weight:600;cursor:pointer;transition:var(--transition)}.btn-primary{border-color:transparent}html:is([data-theme=light],[data-theme-effective=light]) .btn-primary{background:#111;color:#fff}html:is([data-theme=dark],[data-theme-effective=dark]) .btn-primary{background:#fff;color:#111}html:is([data-theme=light],[data-theme-effective=light]) .btn-primary:hover{background:#000}html:is([data-theme=dark],[data-theme-effective=dark]) .btn-primary:hover{background:#f2f2f2}.btn-secondary{background:var(--bg-secondary);color:var(--text-primary)}.btn-secondary:hover{background:var(--bg-hover)}.btn-link{background:none;border:none;color:var(--accent-primary);font-weight:500;text-decoration:underline;cursor:pointer}.btn-link:hover{color:var(--accent-primary-dark, #1f4fd8)}.premium-cta-copy{margin-top:var(--spacing-md);margin-bottom:var(--spacing-sm);padding:var(--spacing-md);border-radius:18px;background:linear-gradient(135deg,#2563eb29,#2563eb0d);border:1px solid rgba(37,99,235,.2);color:var(--text-primary);display:flex;flex-direction:column;gap:.4rem;text-align:left;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.premium-cta-copy:hover,.premium-cta-copy:focus-visible{transform:translateY(-2px);box-shadow:0 12px 32px #2563eb40;outline:none}.premium-cta-title{font-size:1rem;font-weight:600;display:block}.premium-cta-text{font-size:.85rem;color:var(--text-secondary)}.premium-cta-link{font-size:.8rem;color:var(--accent-primary);font-weight:500}.user-profile-container .btn-premium{width:100%}.page-title{text-align:center;margin-bottom:var(--spacing-xl)}.page-title h2{font-size:2.25rem;font-weight:700;color:var(--text-primary);margin-bottom:var(--spacing-sm)}.page-title p{color:var(--text-secondary);font-size:1.1rem;max-width:600px;margin:0 auto}@media (max-width: 900px){#stories-view .page-title,#practice-view .page-title{margin-bottom:var(--spacing-sm);padding-inline:var(--spacing-xs)}}.level-selector-container{margin-bottom:var(--spacing-xl);display:flex;justify-content:center;width:100%;padding:4px 8px;box-sizing:border-box}.level-selector{margin-bottom:var(--spacing-xl);display:flex;justify-content:center;gap:var(--spacing-sm);flex-wrap:nowrap;white-space:nowrap;align-items:center}.level-selector button{background:var(--bg-secondary);border:1px solid var(--border-primary);color:var(--text-secondary);font-weight:500;padding:8px 12px;border-radius:var(--border-radius-sm);cursor:pointer;transition:var(--transition);font-size:clamp(12px,1.6vw,14px);box-shadow:var(--shadow-sm);flex:0 0 auto}.level-selector button:hover{background:var(--bg-hover);color:var(--text-primary);border-color:var(--border-secondary)}.level-selector button.active{background:var(--text-accent);color:var(--text-on-accent);border-color:var(--text-accent);font-weight:600}#level-selector{list-style:none;padding:var(--spacing-xs);display:flex;justify-content:center;gap:var(--spacing-sm);margin:0;background:var(--bg-secondary);border-radius:var(--border-radius);box-shadow:var(--shadow-sm);border:1px solid var(--border-primary);overflow:visible}#level-selector button{background:transparent;border:none;color:var(--text-secondary);font-weight:500;padding:8px 12px;border-radius:var(--border-radius-sm);cursor:pointer;transition:var(--transition);font-size:clamp(12px,1.6vw,14px);white-space:nowrap;flex:0 0 auto}#level-selector button:hover{background:var(--bg-hover);color:var(--text-primary)}#level-selector button.active{background:var(--bg-tertiary);color:var(--text-accent);font-weight:600;box-shadow:inset 0 2px 4px #00000008}@media (max-width: 480px){.level-selector{gap:6px}.level-selector button,#level-selector button{padding:6px 8px;font-size:clamp(11px,3.8vw,13px)}.level-selector-container{padding:2px 6px}}@media (max-width: 340px){.level-selector-container{overflow-x:auto;-webkit-overflow-scrolling:touch}.level-selector{justify-content:flex-start;padding-left:6px}.level-selector-container::-webkit-scrollbar{height:8px}.level-selector-container::-webkit-scrollbar-thumb{background:#00000014;border-radius:999px}}#search-container{margin-bottom:var(--spacing-xl)}#search-form{max-width:700px;margin:0 auto}.search-input-container{position:relative;display:flex;align-items:center}#search-input{width:100%;padding:var(--spacing-md) var(--spacing-lg);border:1px solid var(--border-primary);background:var(--bg-secondary);border-radius:var(--border-radius);font-size:1rem;color:var(--text-primary);font-weight:500;transition:var(--transition);box-shadow:var(--shadow-sm)}#search-input:focus{outline:none;border-color:var(--border-focus);box-shadow:0 0 0 3px #2563eb1a}#search-input::-moz-placeholder{color:var(--text-muted);font-weight:400}#search-input::placeholder{color:var(--text-muted);font-weight:400}.search-clear-btn{position:absolute;right:var(--spacing-md);background:none;border:none;color:var(--text-muted);cursor:pointer;padding:var(--spacing-xs);font-size:1.2rem;transition:var(--transition)}.search-icon{position:absolute;left:var(--spacing-md);color:var(--text-muted);pointer-events:none}#search-input{padding-left:44px}.search-clear-btn:hover{color:var(--text-primary)}.search-clear-btn.hidden{display:none}.controls{display:flex;gap:var(--spacing-md);align-items:center;flex:0 0 auto}.controls select{padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--border-primary);border-radius:var(--border-radius-sm);background:var(--bg-secondary);color:var(--text-secondary);cursor:pointer;transition:var(--transition);font-weight:500;font-size:.9rem;box-shadow:var(--shadow-sm)}.controls select:hover{border-color:var(--border-secondary)}.controls select:focus{outline:none;border-color:var(--border-focus);box-shadow:0 0 0 3px #2563eb1a}#vocabulary-container{display:flex;flex-direction:column;gap:10px;margin-bottom:var(--spacing-lg)}.word-item{background:var(--bg-secondary);border-radius:var(--border-radius);padding:var(--spacing-md) var(--spacing-lg);padding-right:calc(var(--spacing-lg) + 56px);padding-bottom:calc(var(--spacing-md) + 8px);box-shadow:var(--shadow-sm);transition:var(--transition);border:1px solid var(--border-primary);display:flex;align-items:center;justify-content:space-between;position:relative;overflow:visible;z-index:1}.word-item.word-item-active{z-index:100}.word-item:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background-color:var(--bg-tertiary);transition:var(--transition)}.word-item:hover{box-shadow:var(--shadow-md);transform:translateY(-2px);border-color:var(--border-secondary)}.word-item:hover:before{background-color:var(--text-accent)}.word-info{flex-grow:1;padding-right:0}.word-info h3{margin:0 0 var(--spacing-xs) 0;color:var(--text-primary);font-size:1.2rem;font-weight:600}.word-info .translation{color:var(--text-secondary);font-size:1rem;font-weight:500}.word-info .example{font-style:italic;color:var(--text-muted);font-size:.9rem;margin-top:var(--spacing-sm);border-left:3px solid var(--border-primary);padding-left:var(--spacing-md)}#vocabulary-container .word-item>.play-button,#list-words-container .word-item>.play-button{margin:0;background:var(--bg-primary);color:var(--text-secondary);border:1px solid var(--border-primary);width:40px;height:40px;min-width:40px;min-height:40px;padding:0;border-radius:12px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:var(--transition);flex-shrink:0;font-size:1rem;position:absolute;right:8px;bottom:8px;box-shadow:0 4px 10px #02061714;z-index:2}@media (max-width: 640px){.word-item{padding:var(--spacing-sm) var(--spacing-md);padding-right:calc(var(--spacing-md) + 44px);padding-bottom:calc(var(--spacing-sm) + 8px)}.word-info{padding-right:var(--spacing-md)}.word-info h3{font-size:1.05rem}.word-info .translation{font-size:.95rem}#vocabulary-container .word-item>.play-button,#list-words-container .word-item>.play-button{margin:0;width:34px;height:34px;min-width:34px;min-height:34px;border-radius:10px;box-shadow:0 3px 8px #0206171a;right:8px;bottom:8px}}#vocabulary-container .word-item>.play-button:hover,#list-words-container .word-item>.play-button:hover{background:var(--bg-secondary);color:var(--text-primary);border-color:var(--border-secondary);transform:translateY(-1px)}#vocabulary-container .word-item>.play-button:active,#list-words-container .word-item>.play-button:active{transform:scale(.96)}#vocabulary-container .word-item>.play-button.loading,#list-words-container .word-item>.play-button.loading{opacity:.8}@keyframes premium-glow{0%{text-shadow:0 1px 2px rgba(0,0,0,.3)}to{text-shadow:0 0 8px rgba(255,107,53,.8),0 1px 2px rgba(0,0,0,.3)}}.search-results-header{padding:var(--spacing-lg);border-radius:var(--border-radius-lg);margin-bottom:var(--spacing-lg);text-align:center;background:var(--bg-tertiary)}.search-results-header h3{color:var(--text-primary);margin:0;font-size:1.2rem;font-weight:600}.level-group{margin-bottom:var(--spacing-xl)}.level-header{background:var(--bg-tertiary);color:var(--text-primary);padding:var(--spacing-md) var(--spacing-lg);border-radius:var(--border-radius);display:flex;justify-content:space-between;align-items:center;cursor:pointer;transition:var(--transition);font-weight:600;box-shadow:var(--shadow-sm);border:1px solid var(--border-secondary);margin-bottom:var(--spacing-sm)}.level-header:hover{background:var(--bg-hover)}.level-header span{font-size:1.1rem}.collapse-btn{background:none;border:none;color:var(--text-secondary);font-size:1.5rem;cursor:pointer;transition:var(--transition)}.level-words-container{display:flex;flex-direction:column;gap:var(--spacing-md)}.page-stepper{position:fixed;left:50%;bottom:calc(28px + var(--page-stepper-footer-clearance, 0px));z-index:1002;display:inline-grid;grid-template-columns:42px minmax(94px,auto) 42px;align-items:center;min-height:48px;padding:3px;border:1px solid color-mix(in srgb,var(--border-primary) 88%,transparent);border-radius:999px;background:color-mix(in srgb,var(--bg-secondary) 92%,transparent);box-shadow:0 12px 28px #0f172a29;transform:translate(-50%);transition:bottom .2s ease,opacity .18s ease,visibility .18s ease;backdrop-filter:blur(16px) saturate(1.15);-webkit-backdrop-filter:blur(16px) saturate(1.15)}#vocabulary-view,#lists-view,#list-words-view{transform:none}.page-stepper[hidden]{display:none!important}.page-stepper.is-context-hidden{visibility:hidden;opacity:0;pointer-events:none}.page-stepper__button{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:center;justify-content:center;width:42px;min-width:42px;height:42px;min-height:42px;padding:0;border:0;border-radius:50%;background:transparent;color:var(--text-accent);cursor:pointer;overflow:hidden;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;-moz-user-select:none;user-select:none;touch-action:manipulation;transition:background-color .16s ease,color .16s ease}.page-stepper__button svg{width:18px;height:18px;stroke-width:2.4}.page-stepper__button:hover:not(:disabled){background:color-mix(in srgb,var(--text-accent) 11%,transparent)}.page-stepper__button:focus-visible{outline:2px solid var(--border-focus);outline-offset:2px}@media (hover: none){html:not(.keyboard-navigation) .page-stepper__button:focus-visible{outline:none}}@media (min-width: 901px){.page-stepper{left:calc(260px + (100vw - 260px)/2)}}.page-stepper__button:disabled{color:var(--text-muted);cursor:not-allowed;opacity:.42}.page-stepper__status{min-width:74px;padding:0 5px;color:var(--text-secondary);font-family:Poppins,sans-serif;font-size:.69rem;font-weight:600;letter-spacing:.025em;line-height:1;text-align:center;white-space:nowrap}#scroll,#scroll2{position:fixed;right:24px;background:var(--bg-secondary);color:var(--text-secondary);border:1px solid var(--border-primary);border-radius:50%;width:40px;height:40px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:var(--transition);box-shadow:var(--shadow-md);z-index:1001;font-size:1rem;opacity:0;visibility:hidden;transform:translateY(20px);transition:opacity .3s,transform .3s,visibility .3s}#scroll.show-scroll,#scroll2.show-scroll{opacity:1;visibility:visible;transform:translateY(0)}#scroll{bottom:70px}#scroll2{bottom:20px}#scroll:hover,#scroll2:hover{background:var(--bg-hover);color:var(--text-primary);transform:scale(1.1)}body.modal-open #main-content .page-stepper,body.modal-open #main-content #scroll,body.modal-open #main-content #scroll2{display:none!important}@media (max-width: 900px){.sidebar.open~#main-content .page-stepper,.sidebar.open~#main-content #scroll,.sidebar.open~#main-content #scroll2{display:none!important}}.hidden{display:none!important}.ad-item{border:1px dashed var(--border-secondary)!important;background:repeating-linear-gradient(-45deg,var(--bg-primary),var(--bg-primary) 10px,#fcfcfd 10px,#fcfcfd 20px)!important;box-shadow:none!important;transform:none!important}.ad-content{width:100%;text-align:center;color:var(--text-muted);font-size:.9rem}.ad-label{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);margin-bottom:var(--spacing-sm)}footer{display:none;border-radius:6px;background:var(--bg-primary);border-top:1px solid var(--border-primary);text-align:center;padding:var(--spacing-lg);margin-top:90px;color:var(--text-muted)}footer a{color:var(--text-secondary);text-decoration:none;font-weight:500;transition:var(--transition)}footer a:hover{color:var(--text-accent);text-decoration:underline}.page-title h2{color:var(--text-primary);padding-bottom:var(--spacing-xs)}.quiz-section,.video-section{background:var(--bg-secondary);padding:var(--spacing-xl);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-md);border:1px solid var(--border-primary)}.stories-section{background:transparent;padding:var(--spacing-lg) 0;border-radius:0;box-shadow:none}.stories-controls{margin-bottom:var(--spacing-lg)}.stories-controls-card{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-md);padding:var(--spacing-lg);border:1px solid var(--border-primary);border-radius:var(--border-radius-lg);background:var(--bg-secondary);box-shadow:var(--shadow-sm);position:relative;overflow:hidden}.stories-controls-card:before{content:none}.stories-controls-card>*{position:relative;z-index:1}.stories-controls-card h3{margin:0 0 6px;font-size:1.1rem}.stories-controls-actions{display:flex;gap:10px;flex-wrap:wrap}.stories-controls-actions .btn{gap:8px;padding:10px 16px;border-radius:14px;font-weight:600;letter-spacing:.1px;box-shadow:0 10px 22px #0f172a14;position:relative;z-index:1}.stories-controls-actions .btn.btn-primary{background:linear-gradient(135deg,var(--text-accent),var(--accent-dark));border:1px solid transparent;color:var(--text-on-accent)}.stories-controls-actions .btn.btn-primary:hover,.stories-controls-actions .btn.btn-primary:focus-visible{background:linear-gradient(135deg,var(--text-accent),var(--accent-dark));color:var(--text-on-accent)}.stories-controls-actions .btn.btn-secondary{background:color-mix(in srgb,var(--bg-primary) 85%,white 15%);border:1px solid var(--border-primary)}.stories-controls-actions .story-sparkle-icon{width:18px;height:18px}@media (max-width: 900px){.stories-section{padding:var(--spacing-sm) 0;background:transparent;box-shadow:none}.stories-controls-card{flex-direction:column;align-items:flex-start}.stories-controls-actions{width:100%}.stories-controls-actions .btn{flex:1 1 100%;justify-content:center}}.stories-layout{display:grid;grid-template-columns:minmax(220px,280px) minmax(0,1fr);gap:var(--spacing-xl);align-items:start;width:100%;margin:0}.stories-sidebar{display:flex;flex-direction:column;gap:var(--spacing-md);border:none;border-radius:var(--border-radius-lg);padding:var(--spacing-sm);background:var(--bg-primary);max-height:70vh;overflow:hidden}.stories-sidebar-header{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--spacing-sm)}.stories-sidebar-header h3{margin:0;font-size:1.15rem}.stories-sidebar-header p{margin:4px 0 0;color:var(--text-secondary);font-size:.9rem}.btn.btn-icon{width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;padding:0}.stories-list{flex:1 1 auto;overflow-y:auto;padding-right:4px;display:flex;flex-direction:column;gap:var(--spacing-sm)}.stories-list::-webkit-scrollbar{width:6px}.stories-list::-webkit-scrollbar-thumb{background:#0000001f;border-radius:999px}html:is([data-theme=dark],[data-theme-effective=dark]) .stories-list{scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--text-primary) 28%,transparent) transparent}html:is([data-theme=dark],[data-theme-effective=dark]) .stories-list::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--text-primary) 28%,transparent)}.stories-loading,.stories-empty,.stories-error{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:var(--spacing-lg) var(--spacing-md);text-align:center;color:var(--text-secondary);border:1px dashed var(--border-primary);border-radius:var(--border-radius)}.stories-error{border-style:solid;border-color:#ef444459;color:var(--error)}.story-list-item{border:1px solid transparent;border-radius:var(--border-radius-sm);padding:var(--spacing-sm);text-align:left;background:var(--bg-secondary);cursor:pointer;transition:var(--transition)}.story-list-item:hover{border-color:var(--border-secondary);background:var(--bg-hover)}.story-list-item.active{border-color:var(--text-accent);background:#2563eb14}.story-list-item.preview-item{background:linear-gradient(135deg,#9333ea14,#2563eb14);border-color:#9333ea40}.story-list-item.preview-item:hover{border-color:#9333ea66;background:linear-gradient(135deg,#9333ea1f,#2563eb1f)}.story-list-item.preview-item .story-list-meta{color:var(--accent-primary)}.story-list-meta .preview-badge{display:inline-flex;align-items:center;gap:6px;padding:2px 8px;border-radius:999px;font-size:.78rem;font-weight:650;line-height:1.2;border:1px solid rgba(147,51,234,.22);background:#2563eb14;color:color-mix(in srgb,var(--text-accent) 78%,black 22%)}html:is([data-theme=dark],[data-theme-effective=dark]) .story-list-meta .preview-badge{border-color:#9333ea59;background:#2563eb24;color:color-mix(in srgb,var(--text-accent) 80%,white 20%)}.story-list-title{font-weight:600;color:var(--text-primary)}.story-list-meta{margin-top:2px;display:flex;flex-wrap:wrap;gap:6px;font-size:.85rem;color:var(--text-muted)}.story-list-summary{margin-top:8px;color:var(--text-secondary);font-size:.92rem;line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.story-list-footer{margin-top:10px;display:flex;align-items:center;gap:6px;font-size:.82rem;color:var(--text-muted)}.story-list-level-pill{display:inline-flex;align-items:center;gap:6px;padding:2px 10px;border-radius:999px;background:var(--bg-tertiary);color:var(--text-primary);font-weight:600;font-size:.78rem}.story-list-footer .story-list-date{display:inline-flex;align-items:center;gap:6px}.story-list-footer .story-list-date i[data-lucide],.story-list-footer .story-list-date svg{width:12px;height:12px;opacity:.6}.story-list-footer .story-list-date svg{stroke-width:1.6}.mobile-detail-header{display:none;align-items:center;gap:10px;padding:8px 10px;border:1px solid var(--border-primary);border-radius:14px;background:var(--bg-secondary);box-shadow:var(--shadow-sm);margin-bottom:12px}.mobile-detail-header .mobile-detail-title{font-weight:600;color:var(--text-primary)}.mobile-back-btn{width:36px;height:36px;border-radius:12px;background:var(--bg-primary);border:1px solid var(--border-primary);box-shadow:0 8px 16px #0f172a1a;padding:0}.mobile-back-btn i{width:18px;height:18px}@media (max-width: 900px){.mobile-detail-header{display:flex}.story-list-item{padding:14px 16px;border-radius:16px;background:var(--bg-primary);border:1px solid var(--border-primary);box-shadow:var(--shadow-sm)}.story-list-item.active{border-color:color-mix(in srgb,var(--text-accent) 65%,transparent);background:linear-gradient(135deg,#10b98114,#2d6df314)}.stories-list{gap:12px}}.story-viewer-container{border:none;border-radius:0;padding:0;background:transparent;display:flex;flex-direction:column;gap:var(--spacing-md);min-height:0}@media (max-width: 900px){.story-viewer-container{padding:0;border-left:none;border-right:none;border-radius:0}}.story-generation{display:flex;align-items:center;justify-content:center;gap:var(--spacing-md);padding:var(--spacing-xl) var(--spacing-lg);margin:var(--spacing-xl) auto;max-width:400px;text-align:center;flex-direction:column}.story-generation .spinner.small{width:32px;height:32px;border-width:3px;flex-shrink:0;margin-bottom:var(--spacing-sm)}.story-generation-text{display:flex;flex-direction:column;align-items:center;gap:4px}.story-generation-text strong{display:block;font-size:1rem;font-weight:600;color:var(--text-primary)}.story-generation-text span{font-size:.85rem;color:var(--text-muted)}.gen-stage-list{margin:8px 0 0;padding:0;list-style:none;display:flex;flex-direction:column;gap:6px;width:min(560px,calc(100vw - 56px));text-align:left}.gen-stage-item{position:relative;padding-left:16px;font-size:.83rem;line-height:1.35;color:#6b7280;transition:color .22s ease}.gen-stage-item:before{content:"";position:absolute;left:0;top:.52em;width:7px;height:7px;border-radius:999px;background:#94a3b8}.gen-stage-item.is-done{color:#334155}.gen-stage-item.is-done:before{background:#16a34a}.gen-stage-item.is-active{color:var(--text-primary)}.gen-stage-item.is-active:before{background:#10b981;box-shadow:0 0 0 4px #10b98138}.gen-stage-item.is-active .gen-stage-text{background-image:linear-gradient(90deg,#0f172a6b,#0f172a6b 45%,#0f172a,#0f172a6b 55%,#0f172a6b);background-size:260% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:gen-stage-wave 1.05s linear infinite}@keyframes gen-stage-wave{0%{background-position:220% 50%}to{background-position:-20% 50%}}html:is([data-theme=dark],[data-theme-effective=dark]) .gen-stage-item{color:color-mix(in srgb,#cbd5e1 78%,transparent)}html:is([data-theme=dark],[data-theme-effective=dark]) .gen-stage-item.is-done:before{background:color-mix(in srgb,#34d399 88%,transparent)}html:is([data-theme=dark],[data-theme-effective=dark]) .gen-stage-item.is-active:before{background:color-mix(in srgb,#34d399 92%,transparent);box-shadow:0 0 0 4px #34d39940}html:is([data-theme=dark],[data-theme-effective=dark]) .gen-stage-item.is-active .gen-stage-text{background-image:linear-gradient(90deg,#e2e8f06b,#e2e8f06b 45%,#fffffffa,#e2e8f06b 55%,#e2e8f06b)}.story-generation .btn-link{margin-top:var(--spacing-md);padding:8px 20px;font-size:.9rem;font-weight:500;color:var(--text-secondary);background:transparent;border:1px solid var(--border-secondary);border-radius:var(--border-radius);text-decoration:none;transition:all .15s ease;white-space:nowrap;cursor:pointer}.story-generation .btn-link:hover{color:var(--error);border-color:var(--error);background:#ef44440f}@media (max-width: 600px){.story-generation{padding:var(--spacing-lg) var(--spacing-md);margin:var(--spacing-lg) auto}.story-generation .spinner.small{width:28px;height:28px}.story-generation-text strong{font-size:.95rem}.story-generation-text span{font-size:.8rem}.story-generation .btn-link{padding:6px 16px;font-size:.85rem}}.story-empty{border:1px dashed var(--border-secondary);border-radius:var(--border-radius);background:var(--bg-secondary);padding:var(--spacing-xl);text-align:center;color:var(--text-secondary)}.story-empty i{font-size:32px;color:var(--text-accent);margin-bottom:var(--spacing-md)}.story-viewer{display:flex;flex-direction:column;gap:var(--spacing-md);padding:var(--spacing-sm)}@media (max-width: 900px){.story-viewer{padding:0}}.story-header{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:var(--spacing-md);position:static}.story-title-block h3{margin:0;font-size:1.4rem}.story-meta-line{display:flex;gap:var(--spacing-sm);flex-wrap:wrap;margin-top:4px;color:var(--text-muted);font-size:.85rem}.story-level-tag{display:inline-flex;align-items:center;gap:4px;padding:2px 10px;border-radius:999px;background:#2563eb14;color:var(--text-accent);font-weight:600}.story-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding:4px;border:1px solid var(--border-primary);border-radius:12px;background:var(--bg-secondary);box-shadow:0 1px 3px #0000000d}.story-audio-controls,.story-manage-controls{display:flex;gap:4px;align-items:center}.story-audio-controls{margin-right:4px;padding-right:8px;border-right:1px solid var(--border-primary)}.story-actions .btn{display:inline-flex;align-items:center;justify-content:center;height:32px;min-width:32px;padding:0 10px;border-radius:8px;font-size:.85rem;font-weight:500;transition:all .2s ease;border:none;background:transparent;color:var(--text-secondary);gap:6px}.story-actions .btn svg{width:16px;height:16px;stroke-width:2px}.story-actions .btn:hover:not(:disabled){background:var(--bg-hover);color:var(--text-primary)}.story-actions .btn.btn-primary{background:var(--primary);color:#fff}.story-actions .btn.btn-primary:hover:not(:disabled){background:var(--primary-hover)}.story-actions .btn.btn-danger:hover:not(:disabled){background:var(--danger-bg);color:var(--danger)}.story-actions .btn:disabled{opacity:.4;cursor:not-allowed}.story-viewer.is-generating .story-header{display:none}@media (max-width: 600px){.story-actions{gap:8px;padding:8px 10px;width:100%;flex-wrap:nowrap;justify-content:flex-start;overflow-x:auto;-webkit-overflow-scrolling:touch}.story-actions .btn span{display:inline-block}.story-actions .btn{height:44px;min-width:56px;padding:0 10px;font-size:.9rem;flex:1 1 0;justify-content:center;white-space:nowrap}.story-audio-controls,.story-manage-controls{border-right:none;padding-right:0}}@media (max-width: 420px){.story-actions{gap:6px;padding:6px 8px}.story-actions .btn{height:40px;min-width:44px;padding:0 8px;font-size:.88rem;flex:0 1 auto}.story-actions .btn span{display:none}.story-actions::-webkit-scrollbar{height:6px}.story-actions::-webkit-scrollbar-thumb{background:#0000001f;border-radius:999px}.story-actions{scrollbar-width:thin;scrollbar-color:rgba(0,0,0,.12) transparent}}.story-manage-controls{padding-left:6px}.story-header .btn.btn-secondary,.story-header .btn.btn-danger,#practice-viewer .story-header .btn,#creative-viewer .story-header .btn{padding:8px 12px;font-size:.95rem;border-radius:999px;box-shadow:none}.story-header .btn.btn-secondary i,.story-header .btn.btn-danger i,#practice-viewer .story-header .btn i,#creative-viewer .story-header .btn i{width:18px;height:18px}.story-body{display:flex;flex-direction:column;gap:var(--spacing-lg);color:var(--text-primary);line-height:1.7}@media (max-width: 900px){.story-body{gap:var(--spacing-sm)}}.story-vocab{position:relative;color:var(--text-primary);font-weight:500;cursor:pointer;border-bottom:.7px dashed rgba(37,99,235,.55);transition:color .15s ease,border-bottom-color .15s ease}.story-vocab[data-story-type=supplied]{color:var(--text-accent);border-bottom-color:#2563eb80}html:is([data-theme=dark],[data-theme-effective=dark]) .story-vocab[data-story-type=supplied]{color:#bfdbfe;border-bottom-color:#bfdbfeb8}.story-vocab[data-story-type=supplied]:hover,.story-vocab[data-story-type=supplied].story-vocab-active,.story-vocab[data-story-type=supplied]:focus-visible{color:#1f4fd8;border-bottom-color:#246443cc}html:is([data-theme=dark],[data-theme-effective=dark]) .story-vocab[data-story-type=supplied]:hover,html:is([data-theme=dark],[data-theme-effective=dark]) .story-vocab[data-story-type=supplied].story-vocab-active,html:is([data-theme=dark],[data-theme-effective=dark]) .story-vocab[data-story-type=supplied]:focus-visible{color:#a5f3fc;border-bottom-color:#a5f3fceb}html:is([data-theme=dark],[data-theme-effective=dark]) .tts-reading .story-vocab[data-story-type=supplied]{color:#facc15;border-bottom-color:#facc1599}html:is([data-theme=dark],[data-theme-effective=dark]) .tts-reading .story-vocab[data-story-type=supplied]:hover,html:is([data-theme=dark],[data-theme-effective=dark]) .tts-reading .story-vocab[data-story-type=supplied].story-vocab-active,html:is([data-theme=dark],[data-theme-effective=dark]) .tts-reading .story-vocab[data-story-type=supplied]:focus-visible{color:#fde047;border-bottom-color:#facc1599}.tts-reading{background-color:var(--tts-highlight-bg);border-radius:var(--border-radius-sm);transition:background-color .15s ease}.story-vocab[data-story-type=generic]:hover{border-bottom-color:#246443b3}html:is([data-theme=dark],[data-theme-effective=dark]) .story-vocab{border-bottom-color:#ffffff73}html:is([data-theme=dark],[data-theme-effective=dark]) .story-vocab[data-story-type=generic]:hover{border-bottom-color:#fffc}.story-vocab:focus-visible{outline:2px solid rgba(37,99,235,.45);outline-offset:2px}.story-vocab-popover{position:absolute;z-index:9999;min-width:220px;max-width:min(320px,calc(100vw - 32px));background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border-primary);border-radius:var(--border-radius-sm);box-shadow:var(--shadow-lg);padding:var(--spacing-md);pointer-events:auto}.story-vocab-popover.hidden{display:none}body.routine-open .story-vocab-popover{touch-action:pan-y}.routine-popover-scroll-spacer{width:100%;height:0;pointer-events:none}.story-vocab-popover-header{display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-sm)}.story-vocab-actions{display:inline-flex;align-items:center;gap:var(--spacing-xs);position:relative}.story-vocab-save{background:transparent;border:none;padding:0;display:inline-flex;align-items:center;justify-content:center;color:var(--text-muted);cursor:pointer;transition:color .15s ease}.story-vocab-save:hover,.story-vocab-save:focus-visible{color:var(--text-accent)}.story-vocab-bookmark{width:20px;height:20px}.story-vocab-bookmark.saved{color:var(--success)}.story-lists-popup{position:absolute;z-index:10000;min-width:160px}.story-match-item{position:relative}.story-vocab-surface{font-size:1.05rem;font-weight:700;overflow-wrap:anywhere;word-break:break-word}.story-vocab-close{background:transparent;border:none;color:var(--text-muted);font-size:1.1rem;cursor:pointer;line-height:1}.story-vocab-close:hover,.story-vocab-close:focus-visible{color:var(--text-primary)}.story-vocab-translation{font-size:.98rem;margin-bottom:var(--spacing-sm)}.story-vocab-translation-label{display:inline-block;font-size:.75rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);margin-inline-end:.4rem}.story-vocab-translation-text{font-size:inherit;color:var(--text-primary)}.story-vocab-meta-row{display:flex;flex-wrap:wrap;gap:var(--spacing-xs);margin-bottom:var(--spacing-xs)}.story-vocab-meta{display:inline-flex;align-items:center;padding:2px 8px;border-radius:999px;background:#2563eb1f;color:var(--text-accent);font-size:.75rem;font-weight:600}.story-vocab-base,.story-vocab-example{font-size:.85rem;color:var(--text-secondary);margin-bottom:var(--spacing-xs)}.story-vocab-section{margin-top:var(--spacing-sm);display:flex;flex-direction:column;gap:.35rem}.story-vocab-section:first-of-type{margin-top:var(--spacing-xs)}.story-vocab-section-title{font-size:.75rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted)}.story-dictionary-toggle{margin-top:var(--spacing-xs);align-self:flex-start}.story-dictionary-details{margin-top:var(--spacing-xs);display:flex;flex-direction:column;gap:var(--spacing-sm)}.story-vocab-section-header{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-xs)}.story-vocab-chiprows{display:flex;flex-direction:column;gap:.35rem}.story-vocab-chiprow{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem}.story-vocab-chiprow-label{font-size:.7rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase}.story-vocab-chiplist{display:flex;flex-wrap:wrap;gap:.35rem}.story-vocab-chip{display:inline-flex;align-items:center;padding:2px 8px;border-radius:999px;background:#2563eb1f;color:var(--text-accent);font-size:.72rem;font-weight:600}.story-vocab-grammar-chips{display:flex;flex-wrap:wrap;gap:.35rem;margin-bottom:var(--spacing-xs)}.story-vocab-grammar-chip{display:inline-flex;align-items:center;padding:2px 8px;border-radius:12px;background:#2d6df31f;color:var(--text-accent);font-size:.72rem;font-weight:600}.story-vocab-grammar-row{display:flex;justify-content:space-between;gap:var(--spacing-xs);font-size:.75rem;color:var(--text-secondary)}.story-vocab-grammar-label{font-weight:600}.story-vocab-grammar-value{text-align:right}.story-vocab-baseword{font-weight:600;color:var(--text-primary)}.story-examples{margin-top:.25rem}.story-examples-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.story-example-item{font-size:.75rem;color:var(--text-secondary);display:flex;gap:.45rem;align-items:baseline}.story-example-item .ex-de{font-weight:500}.story-example-item .ex-tr,.example-separator{color:var(--text-muted)}.story-show-examples{margin-left:auto}.story-vocab-section--synonyms .story-vocab-section-title{margin-bottom:.1rem}.story-vocab-synonyms-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px;font-size:.75rem;color:var(--text-secondary)}.story-vocab-synonym-line{display:flex;flex-wrap:wrap;gap:.35rem;align-items:baseline}.story-vocab-synonym-term{font-weight:500;color:var(--text-primary)}.story-vocab-synonym-translation,.story-vocab-synonym-divider{color:var(--text-muted)}.story-vocab-meanings-list{list-style:disc;margin:0 0 0 1rem;padding:0;display:flex;flex-direction:column;gap:4px}.story-vocab-meaning{font-size:.78rem;color:var(--text-secondary)}html:is([data-theme=dark],[data-theme-effective=dark]) .story-vocab-section-title,html:is([data-theme=dark],[data-theme-effective=dark]) .story-vocab-chiprow-label,html:is([data-theme=dark],[data-theme-effective=dark]) .story-vocab-chip,html:is([data-theme=dark],[data-theme-effective=dark]) .story-vocab-grammar-chip,html:is([data-theme=dark],[data-theme-effective=dark]) .story-vocab-grammar-row,html:is([data-theme=dark],[data-theme-effective=dark]) .story-vocab-grammar-label,html:is([data-theme=dark],[data-theme-effective=dark]) .story-vocab-grammar-value,html:is([data-theme=dark],[data-theme-effective=dark]) .story-vocab-meaning{color:#facc15}.story-vocab-dict-upsell{font-size:.7rem;color:var(--text-muted);margin-top:var(--spacing-xs)}.story-vocab-dict-upsell a{color:var(--text-accent);text-decoration:underline}.story-vocab-dict-limit{color:var(--warning);font-style:italic}.story-vocab-error{font-size:.85rem;color:var(--error)}.story-vocab-loading,.story-vocab-dictionary-status{font-size:.78rem;color:var(--text-muted);display:inline-flex;align-items:center;gap:6px;margin-bottom:var(--spacing-xs)}.story-vocab-dictionary-status.is-error{color:var(--error)}.story-vocab-dictionary-status.is-note{color:var(--text-secondary)}.story-vocab-status-cta{display:inline;margin-left:6px;font-size:.78rem;color:var(--text-accent);text-decoration:underline;white-space:nowrap;background:transparent;border:0;padding:0;cursor:pointer}.story-vocab-spinner{display:inline-flex;width:12px;height:12px;border:2px solid rgba(45,109,243,.18);border-top-color:#2d6df3bf;border-radius:50%;animation:story-vocab-spin .9s linear infinite}@keyframes story-vocab-spin{to{transform:rotate(360deg)}}.story-vocab-missing{font-style:italic;color:var(--text-muted)}.story-section{border-top:1px solid var(--border-primary);padding-top:var(--spacing-md)}.story-section:first-of-type{border-top:none;padding-top:0}.story-section h4{margin:0 0 var(--spacing-sm);font-size:1.1rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em}.story-section details,.story-section details summary,.story-section details ul,.story-section details li,.story-section details a{max-width:100%;overflow-wrap:anywhere;word-break:break-word}.story-sources-details[open] .story-sources-summary{margin-bottom:var(--spacing-sm)}.story-sources-summary{cursor:pointer;list-style:none;display:flex;align-items:center;gap:10px;-webkit-user-select:none;-moz-user-select:none;user-select:none}.story-sources-summary::-webkit-details-marker{display:none}.story-sources-summary-main{color:var(--text-primary);font-weight:700}.story-sources-summary-meta{color:var(--text-muted);font-size:.82rem}.story-sources-summary-chevron{margin-left:auto;color:var(--text-muted);transition:transform .2s ease,color .2s ease}.story-sources-details[open] .story-sources-summary-chevron{transform:rotate(180deg)}.story-sources-summary:hover .story-sources-summary-main,.story-sources-summary:hover .story-sources-summary-chevron{color:var(--text-accent)}.story-source-list{list-style:none;padding-left:0;gap:10px}.story-source-item{display:flex;flex-direction:column;gap:6px;padding:10px 12px;border:1px solid var(--border-primary);border-radius:8px;background:var(--bg-primary)}.story-source-link{display:flex;flex-direction:column;gap:4px;text-decoration:none}.story-source-title{color:var(--text-primary);font-weight:600}.story-source-url{color:var(--text-muted);font-size:.83rem}.story-source-meta{display:flex;flex-wrap:wrap;gap:6px}.story-source-site,.story-source-domain,.source-citation-pill{display:inline-flex;align-items:center;min-height:22px;padding:0 10px;border-radius:999px;border:1px solid var(--border-primary);background:var(--bg-secondary);color:var(--text-secondary);font-size:.76rem;line-height:1;text-decoration:none;vertical-align:middle}.source-citation-pill{margin-left:.35rem;background:color-mix(in srgb,var(--text-accent) 10%,var(--bg-secondary));border-color:color-mix(in srgb,var(--text-accent) 35%,var(--border-primary));color:var(--text-primary)}.story-source-link:hover .story-source-title,.source-citation-pill:hover{color:var(--text-accent)}.story-list{margin:0;padding-left:1.1rem;display:flex;flex-direction:column;gap:var(--spacing-sm)}.story-list.numbered{list-style:decimal}.story-streaming pre{font-family:Inter,monospace;white-space:pre-wrap;word-wrap:break-word;margin:0}.story-streaming-formatted{animation:streaming-pulse 1.5s ease-in-out infinite}.story-streaming-formatted p{line-height:1.7}@keyframes streaming-pulse{0%,to{opacity:1}50%{opacity:.85}}.story-answers{display:flex;flex-direction:column;gap:var(--spacing-sm)}.story-answers-toggle{align-self:flex-start}.story-answers-toggle+.story-list{margin-top:var(--spacing-sm)}.btn.btn-danger{background:#ef44441a;border:1px solid rgba(239,68,68,.4);color:#b91c1c}.btn.btn-danger:hover:not(:disabled){background:#ef44442e;border-color:#ef444480}@media (max-width: 1100px){.stories-layout{grid-template-columns:1fr}.stories-sidebar{max-height:none}}@media (max-width: 720px){.stories-section{padding:var(--spacing-xs)}.story-viewer-container{padding:0}}.quiz-config-container{max-width:600px;margin:0 auto;display:flex;flex-direction:column;gap:var(--spacing-lg)}.form-group{display:flex;flex-direction:column;gap:var(--spacing-sm)}.form-group label{font-weight:600;color:var(--text-primary)}.form-group select,.filter-group select,.filter-group input{width:100%;padding:var(--spacing-md);border:1px solid var(--border-primary);border-radius:var(--border-radius-sm);background:var(--bg-primary);color:var(--text-primary);font-weight:500;transition:var(--transition);box-shadow:var(--shadow-sm)}.form-group select:focus,.filter-group select:focus,.filter-group input:focus{outline:none;border-color:var(--border-focus);box-shadow:0 0 0 3px #2563eb1a}.radio-group{display:flex;flex-wrap:wrap;gap:var(--spacing-md);background:var(--bg-primary);padding:var(--spacing-sm);border-radius:var(--border-radius-sm)}.radio-group input[type=radio]{display:none}.radio-group label{font-weight:500;cursor:pointer;padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--border-radius-sm);transition:var(--transition);border:1px solid transparent}.radio-group input[type=radio]:checked+label{background:var(--bg-secondary);color:var(--text-accent);font-weight:600;border-color:var(--border-secondary);box-shadow:var(--shadow-sm)}.btn-primary{background:var(--text-accent);color:var(--text-on-accent);border:none;padding:var(--spacing-md);font-size:1.1rem;font-weight:600;border-radius:var(--border-radius-sm);cursor:pointer;transition:var(--transition);box-shadow:var(--shadow-md)}.btn-primary:hover{background:#1f4fd8}.video-filters{display:flex;gap:var(--spacing-lg);margin-bottom:var(--spacing-xl);align-items:center}.filter-group{flex-grow:1}.video-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--spacing-lg)}.video-card{background:var(--bg-secondary);border-radius:var(--border-radius);box-shadow:var(--shadow-sm);border:1px solid var(--border-primary);overflow:hidden;transition:var(--transition);cursor:pointer}.video-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.video-thumbnail img{width:100%;display:block}.video-thumbnail .play-icon{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:60px;height:60px;background:#0009;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:2rem;transition:var(--transition)}.video-card:hover .play-icon{transform:translate(-50%,-50%) scale(1.1);background:var(--text-accent)}.video-info{padding:var(--spacing-md)}.video-info h4{margin:0 0 var(--spacing-sm) 0;font-size:1.1rem}.video-info p{margin:0;color:var(--text-secondary);font-size:.9rem}.modal{position:fixed;z-index:200;left:0;top:0;width:100%;height:100%;background:#000000b3;display:none;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.modal.show{display:flex}.modal-content{position:relative;width:90%;max-width:600px;background:var(--bg-secondary);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-lg)}.modal-content .close-btn{position:absolute;top:-40px;right:0;color:#fff;font-size:2.5rem;font-weight:700;cursor:pointer}.modal-content .close-modal{position:absolute;top:12px;right:12px;border:1px solid var(--border-primary);background:var(--bg-primary);color:var(--text-secondary);font-size:1.5rem;line-height:1;padding:8px 12px;min-width:40px;min-height:40px;display:flex;align-items:center;justify-content:center;border-radius:50%;cursor:pointer;box-shadow:var(--shadow-sm);transition:var(--transition)}.modal-content .close-modal:hover{background:var(--bg-hover);color:var(--text-primary)}.reset-password-fullpage{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;display:flex;align-items:center;justify-content:center;height:100vh;min-height:100dvh;background:linear-gradient(145deg,#0f172a,#1e293b,#0f172a);overflow:hidden;padding:24px;box-sizing:border-box}.reset-password-fullpage:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse 80% 50% at 50% -20%,rgba(45,109,243,.15),transparent),radial-gradient(ellipse 60% 40% at 80% 100%,rgba(139,92,246,.1),transparent);pointer-events:none}.reset-password-container{position:relative;width:100%;max-width:460px;max-height:calc(100dvh - 48px);overflow:auto;padding-right:2px;animation:resetFadeIn .3s ease-out}@keyframes resetFadeIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.reset-password-card{background:#172234eb;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(148,163,184,.16);border-radius:20px;padding:40px 36px;box-shadow:0 0 0 1px #ffffff09 inset,0 24px 40px -18px #0000008c;overflow:hidden}.reset-password-logo{text-align:center;margin-bottom:28px}.reset-password-logo svg{width:48px;height:48px;color:#5b8def}.reset-password-header{text-align:center;margin-bottom:32px}.reset-password-header h1{margin:0 0 10px;font-size:1.75rem;font-weight:700;color:#f1f5f9;letter-spacing:-.02em}.reset-password-header p{margin:0;color:#94a3b8;font-size:.95rem;line-height:1.5}.reset-password-form{display:flex;flex-direction:column;gap:20px;width:100%;box-sizing:border-box}.reset-password-field{display:flex;flex-direction:column;gap:8px}.reset-password-field>span{font-size:.875rem;font-weight:500;color:#cbd5e1}.reset-password-input-wrapper{position:relative;width:100%;box-sizing:border-box}.reset-password-input-wrapper input{width:100%;padding:14px 48px 14px 16px;font-size:1rem;color:#f1f5f9;background:#0f172a99;border:1px solid rgba(148,163,184,.2);border-radius:12px;outline:none;box-sizing:border-box;transition:border-color .2s,box-shadow .2s,background .2s}.reset-password-input-wrapper input::-moz-placeholder{color:#64748b}.reset-password-input-wrapper input::placeholder{color:#64748b}.reset-password-input-wrapper input:hover{border-color:#94a3b859}.reset-password-input-wrapper input:focus{border-color:#5b8def;box-shadow:0 0 0 3px #2d6df333;background:#0f172acc}.reset-password-toggle{position:absolute;right:12px;top:50%;transform:translateY(-50%);width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;background:transparent;border:none;border-radius:8px;color:#64748b;cursor:pointer;transition:color .15s,background .15s}.reset-password-toggle:hover{color:#94a3b8;background:#94a3b81a}.reset-password-toggle svg{width:20px;height:20px}.reset-password-status{min-height:24px;font-size:.9rem;text-align:center;padding:0 4px}.reset-password-status.error{color:#f87171}.reset-password-status.success{color:#4ade80}.reset-password-status.info{color:#94a3b8}.reset-password-actions{display:flex;gap:12px;margin-top:8px;width:100%;box-sizing:border-box}.reset-password-actions .btn{flex:1;padding:14px 20px;font-size:.95rem;font-weight:600;border-radius:12px;cursor:pointer;transition:background .2s,border-color .2s,color .2s,transform .2s}.reset-password-actions .btn-cancel{background:transparent;border:1px solid rgba(148,163,184,.25);color:#94a3b8}.reset-password-actions .btn-cancel:hover{background:#94a3b81a;border-color:#94a3b866;color:#cbd5e1}.reset-password-actions .btn-submit{background:#2563eb;border:1px solid rgba(45,109,243,.4);color:#f8fafc;box-shadow:none}.reset-password-actions .btn-submit:hover:not(:disabled){background:#1f4fd8;border-color:#93c5fd8c;transform:translateY(-1px)}.reset-password-actions .btn-submit:disabled{opacity:.6;cursor:not-allowed}body.reset-password-active,html.reset-password-active{overflow:hidden}@media (max-width: 480px){.reset-password-fullpage{padding:16px}.reset-password-card{padding:32px 24px;border-radius:16px}.reset-password-header h1{font-size:1.5rem}.reset-password-actions{flex-direction:column-reverse}}#youtube-player{aspect-ratio:16 / 9;width:100%}#youtube-player iframe{width:100%;height:100%;border:none;border-radius:var(--border-radius-lg)}#inline-video-player{aspect-ratio:16 / 9;width:100%;background:#000;border-radius:var(--border-radius-lg);overflow:hidden;box-shadow:var(--shadow-md);margin-bottom:var(--spacing-xl)}#inline-video-player iframe{width:100%;height:100%;border:0}.quiz-header{margin-bottom:var(--spacing-xl);padding:var(--spacing-lg);background:var(--bg-secondary);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-sm);border:1px solid var(--border-primary)}.progress-text{font-weight:600;color:var(--text-primary);margin-bottom:var(--spacing-sm)}.progress-bar{width:100%;height:8px;background-color:var(--bg-tertiary);border-radius:4px;overflow:hidden}.progress-fill{height:100%;background-color:var(--text-accent);transition:width .3s ease-in-out;border-radius:4px}.quiz-question h3{font-size:1.5rem;margin-bottom:var(--spacing-lg);color:var(--text-primary);text-align:center}.options-list{list-style:none;padding:0;display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-md)}.option-button{width:100%;padding:var(--spacing-lg);background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--border-radius);cursor:pointer;transition:var(--transition);text-align:left;font-size:1rem;font-weight:500;color:var(--text-primary);box-shadow:var(--shadow-sm)}.option-button:hover:not(:disabled){background:var(--bg-hover);border-color:var(--border-focus);transform:translateY(-2px)}.option-button.selected{border-color:var(--border-focus);background-color:var(--bg-tertiary);color:var(--text-primary)}.option-button.correct{background:#dcfce7;color:#166534;border-color:#16a34a;font-weight:600}.option-button.incorrect{background:#fee2e2;color:#991b1b;border-color:#ef4444;font-weight:600}.option-button:disabled{cursor:not-allowed;opacity:.8}.feedback-container{margin-top:var(--spacing-lg);min-height:50px}.feedback{padding:var(--spacing-md);border-radius:var(--border-radius);display:flex;align-items:center;gap:var(--spacing-md);font-weight:600}.feedback.correct{background-color:#dcfce7;color:#166534}.feedback.incorrect{background-color:#fee2e2;color:#991b1b}.feedback .icon{font-size:1.5rem}.quiz-navigation{margin-top:var(--spacing-xl);display:flex;justify-content:space-between;gap:var(--spacing-md)}.quiz-results{text-align:center;background:var(--bg-secondary);padding:var(--spacing-2xl);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-lg)}.quiz-results h3{font-size:2.5rem;color:var(--text-primary);margin-bottom:var(--spacing-md)}.quiz-score{font-size:4rem;font-weight:700;color:var(--text-accent);margin:var(--spacing-md) 0}.quiz-percentage,.quiz-time{font-size:1.2rem;color:var(--text-secondary);margin-bottom:var(--spacing-2xl)}.quiz-summary{text-align:left;margin-top:var(--spacing-xl)}.quiz-summary h4{font-size:1.2rem;color:var(--text-primary);margin-bottom:var(--spacing-lg);border-bottom:1px solid var(--border-primary);padding-bottom:var(--spacing-sm)}.results-list{list-style:none;padding:0;display:flex;flex-direction:column;gap:var(--spacing-sm)}.results-list li{padding:var(--spacing-md);border-radius:var(--border-radius);border-left:4px solid}.results-list li.correct{background-color:#f0fdf4;border-left-color:#22c55e}.results-list li.incorrect{background-color:#fef2f2;border-left-color:#ef4444}.question-number{font-weight:600;margin-right:var(--spacing-sm)}.answer-info{margin-top:var(--spacing-sm);font-size:.9rem;color:var(--text-muted)}.correct-answer{color:#15803d;font-weight:600}.quiz-actions{margin-top:var(--spacing-xl);display:flex;justify-content:center;gap:var(--spacing-md)}.video-item{background:var(--bg-secondary);border-radius:var(--border-radius);box-shadow:var(--shadow-sm);border:1px solid var(--border-primary);overflow:hidden;transition:var(--transition);cursor:pointer;display:flex;flex-direction:column}.video-item:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.video-item .category-badge{position:absolute;top:var(--spacing-md);right:var(--spacing-md);background:#00000080;color:#fff;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--border-radius-sm);font-size:.8rem;font-weight:600;text-transform:capitalize}.video-item img{width:100%;display:block;aspect-ratio:16/9;-o-object-fit:cover;object-fit:cover}.video-item .play-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:#0003;display:flex;align-items:center;justify-content:center;opacity:0;transition:var(--transition)}.video-item:hover .play-overlay{opacity:1}.video-item .play-icon{color:#fff;font-size:3rem}.video-item .title{font-weight:600;padding:var(--spacing-md) var(--spacing-md) var(--spacing-xs)}.video-item .description{font-size:.9rem;color:var(--text-secondary);padding:0 var(--spacing-md) var(--spacing-md);flex-grow:1}.no-videos{text-align:center;color:var(--text-muted);font-style:italic;padding:var(--spacing-2xl);background:var(--bg-secondary);border-radius:var(--border-radius-lg)}@media (max-width: 768px){.options-list{grid-template-columns:1fr}.quiz-navigation,.quiz-actions,.video-filters{flex-direction:column}}.btn{background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border-primary);padding:var(--spacing-md);border-radius:var(--border-radius-sm);cursor:pointer;transition:var(--transition);font-weight:600;font-size:1rem;box-shadow:var(--shadow-sm);flex-grow:1}.btn:hover:not(:disabled){background:var(--bg-hover);border-color:var(--border-secondary);transform:translateY(-1px)}.btn:disabled{background:var(--bg-primary);color:var(--text-muted);cursor:not-allowed;opacity:.7}.quiz-navigation .btn-primary,.quiz-actions .btn-primary{flex-grow:1}.logo h1,.brand-wordmark{margin:0;color:#123a66;font-family:Newsreader,Georgia,serif;font-optical-sizing:auto;font-weight:620;font-feature-settings:"kern" 1,"liga" 1;letter-spacing:-.052em;line-height:.88}.logo h1{padding:.08em .02em 0;font-size:1.66rem;overflow:visible;text-overflow:clip}.logo h1 a{color:inherit}.logo:hover .logo-icon,.landing-brand-lockup:hover .landing-brand-mark{transform:translateY(-1px)}.landing-brand-lockup{gap:10px}.landing-brand-mark{width:32px;height:36px;display:block;-o-object-fit:contain;object-fit:contain;transition:transform .18s ease}.landing-brand-lockup .brand-wordmark{padding-top:.08em;font-size:1.7rem}html:is([data-theme=dark],[data-theme-effective=dark]) .logo h1,html:is([data-theme=dark],[data-theme-effective=dark]) .brand-wordmark{color:#f4f2ec}html:is([data-theme=dark],[data-theme-effective=dark]) .logo .logo-icon,html:is([data-theme=dark],[data-theme-effective=dark]) .landing-brand-mark{filter:brightness(0) saturate(100%) invert(94%) sepia(8%) saturate(220%) hue-rotate(346deg) brightness(104%)}@media (prefers-reduced-motion: reduce){.logo .logo-icon,.landing-brand-mark{transition:none}}.coming-soon,.no-videos{text-align:center;color:var(--text-muted);font-style:italic;padding:var(--spacing-2xl);background:var(--bg-secondary);border-radius:var(--border-radius-lg);width:100%;grid-column:1 / -1;margin-top:var(--spacing-lg)}.sidebar-overlay{display:none;position:fixed;top:0;left:0;width:100vw;height:100vh;background:#00000080;z-index:999;opacity:0;transition:opacity .25s ease}.sidebar-overlay.show{display:block;opacity:1}html.sidebar-scroll-locked,html.sidebar-scroll-locked body{overscroll-behavior-y:none}@media (max-width: 900px){.app-container{display:block;grid-template-columns:1fr}body,html{overflow-x:hidden}#stories-view,#practice-view{width:100%}#stories-view main,#practice-view main{padding-inline:0}.story-viewer-container,.practice-section .story-viewer-container{box-sizing:border-box}.practice-controls{width:100%;max-width:640px;margin:0 auto;box-sizing:border-box;padding-inline:var(--spacing-md)}.sidebar{position:fixed;left:0;top:0;height:100dvh;width:280px;background:var(--bg-secondary);background:color-mix(in srgb,var(--bg-primary) 86%,var(--bg-secondary) 14%);border-right:1px solid var(--border-primary);box-shadow:var(--shadow-lg);transform:translate(-100%);transition:transform .25s ease;z-index:1000;overflow:hidden;overscroll-behavior:contain}.sidebar.open{transform:translate(0)}.sidebar .sidebar-inner{position:static;top:0;height:100%;display:flex;flex-direction:column;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.sidebar-header{display:flex;background:inherit}.sidebar-nav{flex:1;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}main{max-width:100%;margin-inline:auto;padding-inline:var(--spacing-md);padding-block:var(--spacing-lg)}#stories-view main,#practice-view main{padding-inline:clamp(4px,1.5vw,8px);padding-block:var(--spacing-sm)}header{margin-bottom:var(--spacing-lg)}.sidebar-toggle{display:inline-flex;min-width:48px}.sidebar.context-active .sidebar-footer{display:none}}@media (max-width: 900px){body,html{overflow-x:hidden}#stories-view,#practice-view{width:100%}.story-viewer-container,.practice-section .story-viewer-container{box-sizing:border-box}}@media (min-width: 901px){.app-container{display:grid;grid-template-columns:260px 1fr}main{grid-column:2 / -1;max-width:none;margin:0}}@media (max-width: 768px){body{font-size:15px}main{padding:var(--spacing-md)}header{padding:4px calc(var(--spacing-sm) + var(--app-safe-area-right)) 4px calc(var(--spacing-sm) + var(--app-safe-area-left));min-height:40px;position:fixed;top:0;left:0;right:0;width:100%;background:#ffffffe6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:1000;overflow:visible;gap:6px}.logo{min-width:0;flex:1 1 auto}.logo h1{font-size:clamp(.95rem,3.5vw,1.1rem)}.logo .logo-icon{width:28px;height:28px;flex-basis:28px}header .btn-secondary{padding:2px 8px;min-height:30px;height:30px}.sidebar-toggle,.header-actions{gap:4px}.sidebar-toggle,.header-actions{flex:0 0 auto}.sidebar-toggle{margin-right:2px}header .controls,header .user-profile-container{display:none}.header-actions{display:flex;align-items:center;min-width:0}header .sidebar-toggle,header .header-actions button{min-width:36px;min-height:30px;height:30px;padding:2px 8px}#mobile-upgrade-btn{min-width:0!important;min-height:30px!important;height:30px!important;padding:0 9px!important;font-size:.72rem;line-height:1}header .sidebar-toggle i,header .sidebar-toggle svg,header .header-actions i,header .header-actions svg{width:20px;height:20px}header>.logo{order:1}header>.sidebar-toggle{order:2}header>.controls{order:3}header>.theme-toggle{order:4}header>.header-actions{order:5}@media (max-width: 900px){body{padding-top:var(--mobile-header-height, 48px)}.header-actions{display:flex!important}.controls{display:none!important}header .btn-secondary,header .sidebar-toggle,header .header-actions button{min-height:32px;height:32px}#mobile-upgrade-btn{min-width:0!important;min-height:32px!important;height:32px!important;padding:0 10px!important;font-size:.73rem}header>.logo{order:1!important}header>.header-actions{order:2!important}header>.controls{order:3!important}header>.theme-toggle{order:4!important}header>.sidebar-toggle{order:5!important}header{flex-wrap:wrap;align-items:center}header>.mobile-topnav{order:6!important}.mobile-topnav{display:flex;flex:0 0 100%;width:100%;justify-content:space-between;align-items:stretch;gap:2px;padding:4px calc(var(--spacing-sm) + var(--app-safe-area-right)) 2px calc(var(--spacing-sm) + var(--app-safe-area-left));border-top:1px solid var(--border-primary);overflow-x:auto;-webkit-overflow-scrolling:touch}.mobile-topnav::-webkit-scrollbar{display:none}.mobile-topnav-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid transparent;background:transparent;color:var(--text-secondary);flex:1 1 0;min-width:44px;height:auto;padding:4px 2px 3px;border-radius:var(--border-radius);display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;position:relative;transition:background-color .15s ease,color .15s ease,border-color .15s ease}.mobile-topnav-btn:hover,.mobile-topnav-btn:focus-visible{background:var(--bg-hover);border-color:var(--border-secondary);outline:none}.mobile-topnav-btn i,.mobile-topnav-btn svg{width:22px;height:22px;display:block;flex-shrink:0}.mobile-topnav-label{font-size:1rem;font-weight:550;line-height:1;letter-spacing:.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;opacity:.85;transition:opacity .15s ease}.mobile-topnav-btn.active .mobile-topnav-label{opacity:1}.mobile-topnav-btn.active{color:var(--text-accent)}.mobile-topnav-btn.active:after{content:"";position:absolute;left:14px;right:14px;bottom:1px;height:2.5px;border-radius:999px;background:var(--text-accent);opacity:.95}header{position:fixed}}.settings-panel{position:absolute;top:100%;left:0;right:0;background:var(--bg-secondary);border-bottom:1px solid var(--border-primary);box-shadow:var(--shadow-md);padding:var(--spacing-lg);display:flex;flex-direction:column;gap:var(--spacing-lg);transform:translateY(-10px);opacity:0;visibility:hidden;transition:transform .25s ease,opacity .25s ease,visibility .25s ease;z-index:99}.settings-panel.open{transform:translateY(0);opacity:1;visibility:visible}nav ul{display:none}.page-title h2{font-size:1.8rem}.page-title p{font-size:1rem}#level-selector{flex-wrap:wrap;padding:var(--spacing-sm)}.word-item{flex-direction:column;align-items:flex-start;gap:var(--spacing-sm)}.word-info{width:100%}#vocabulary-container .word-item>.play-button,#list-words-container .word-item>.play-button{align-self:flex-end}.options-list{grid-template-columns:1fr}.quiz-navigation,.quiz-actions{flex-direction:column}.quiz-results{padding:var(--spacing-lg)}.quiz-score{font-size:3rem}.video-filters{flex-direction:column;align-items:stretch}.video-grid{grid-template-columns:1fr}#scroll,#scroll2{width:40px;height:40px;right:16px}#scroll{bottom:80px}#scroll2{bottom:24px}.btn-primary,.btn-secondary,.app-container button{min-height:44px;min-width:44px;padding:var(--spacing-sm) var(--spacing-md)}.sidebar-nav a{min-height:48px;padding:var(--spacing-md);font-size:1rem}.word-item{padding:var(--spacing-md);margin-bottom:var(--spacing-sm)}#vocabulary-container .word-item{margin-bottom:0}.modal-content{margin:var(--spacing-sm);max-height:calc(100vh - 2 * var(--spacing-sm));overflow-y:auto}p,li{line-height:1.7}section.story-section[data-section=story] p{line-height:1.8}a{color:var(--text-accent);text-decoration:underline}a:hover,a:focus{color:var(--text-primary);text-decoration:none}}.video-thumbnail{position:relative}.control-group{display:flex;align-items:center;gap:var(--spacing-sm)}.control-group label{font-size:.9rem;font-weight:500;color:var(--text-secondary)}.navigation-tip{text-align:center;color:var(--text-muted);font-size:.9rem;margin-top:var(--spacing-md);display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm)}.tip-icon{width:16px;height:16px}.coach-tip{display:grid;grid-template-columns:auto 1fr auto;align-items:start;gap:10px;width:min(100%,760px);margin:0 0 12px;padding:10px 12px;border-radius:12px;border:1px solid var(--border-primary);background:var(--bg-secondary);color:var(--text-secondary);box-shadow:var(--shadow-sm)}.coach-tip-icon{width:20px;height:20px;color:var(--text-accent);display:inline-flex;align-items:center;justify-content:center}.coach-tip-copy{font-size:.92rem;line-height:1.45}.coach-tip-close{border:none;background:transparent;color:var(--text-muted);cursor:pointer;font-size:1.2rem;line-height:1;padding:0;width:24px;height:24px;border-radius:8px}.coach-tip-close:hover,.coach-tip-close:focus-visible{background:var(--bg-hover);color:var(--text-primary);outline:none}#flashcard-view .coach-tip{width:min(100%,640px);margin:0 auto 8px}.story-viewer .coach-tip{width:100%;margin:0 0 14px}.install-dialog-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1300;background:#02061773;display:flex;align-items:center;justify-content:center;padding:20px}.install-dialog{position:relative;width:min(100%,420px);border-radius:16px;padding:18px 18px 16px;border:1px solid var(--border-primary);background:var(--bg-primary);box-shadow:var(--shadow-lg)}.install-dialog-close{position:absolute;top:10px;right:10px;width:30px;height:30px;border:none;border-radius:8px;cursor:pointer;color:var(--text-muted);background:transparent;font-size:1.25rem;line-height:1}.install-dialog-close:hover,.install-dialog-close:focus-visible{background:var(--bg-hover);color:var(--text-primary);outline:none}.install-dialog-icon{width:38px;height:38px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;background:var(--bg-tertiary);color:var(--text-accent);margin-bottom:10px}.install-dialog h3{margin:0 0 8px;color:var(--text-primary)}.install-dialog p{margin:0 0 8px;color:var(--text-secondary);font-size:.95rem}.install-dialog-note{color:var(--text-muted)}.install-dialog-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:12px}@media (max-width: 640px){.install-dialog-backdrop{align-items:flex-end;padding:12px}.install-dialog{width:100%;border-radius:14px}}.save-icon-container{position:absolute;top:8px;right:8px}.typing-save-container{position:relative!important;top:auto!important;right:auto!important;margin-left:0;margin-right:0}.save-icon{color:var(--text-muted);transition:all .2s ease-in-out;font-size:1.2rem}.save-icon.saved{color:var(--text-accent);fill:var(--text-accent)}.save-icon:hover{color:var(--text-accent);transform:scale(1.1)}.lists-popup{display:none;position:absolute;top:100%;right:0;box-sizing:border-box;background-color:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--border-radius);box-shadow:var(--shadow-lg);z-index:9999;width:220px;max-width:calc(100vw - 16px);padding:var(--spacing-md);max-height:300px;overflow-y:auto;opacity:0;transform:translateY(-10px);transition:all .2s ease-in-out;--lists-scroll-track: rgba(15, 23, 42, .06);--lists-scroll-thumb: rgba(15, 23, 42, .24);--lists-scroll-thumb-hover: rgba(15, 23, 42, .36);scrollbar-width:thin;scrollbar-color:var(--lists-scroll-thumb) var(--lists-scroll-track)}.lists-popup.show{opacity:1;transform:translateY(0)}.lists-popup::-webkit-scrollbar{width:8px}.lists-popup::-webkit-scrollbar-track{background:var(--lists-scroll-track);border-radius:999px}.lists-popup::-webkit-scrollbar-thumb{background-color:var(--lists-scroll-thumb);border-radius:999px;border:2px solid transparent;background-clip:content-box}.lists-popup::-webkit-scrollbar-thumb:hover{background-color:var(--lists-scroll-thumb-hover)}html:is([data-theme=dark],[data-theme-effective=dark]) .lists-popup{--lists-scroll-track: rgba(148, 163, 184, .14);--lists-scroll-thumb: rgba(148, 163, 184, .32);--lists-scroll-thumb-hover: rgba(148, 163, 184, .48)}.lists-popup ul{list-style:none;padding:0;margin:0}.lists-popup li{padding:var(--spacing-sm) var(--spacing-md);cursor:pointer;border-radius:var(--border-radius-sm);margin-bottom:2px;transition:all .1s ease-in-out;display:flex;align-items:center;justify-content:space-between}.lists-popup li:hover{background-color:var(--bg-hover);transform:translate(2px)}.lists-popup li.saved{background-color:#2563eb1a;color:var(--text-accent);font-weight:500}.lists-popup li.saved:after{content:"✓";color:var(--text-accent);font-weight:700}.lists-popup input[type=text]{width:100%;padding:var(--spacing-sm);margin-top:var(--spacing-sm);border:1px solid var(--border-primary);border-radius:var(--border-radius-sm);font-size:.9rem;transition:border-color .2s ease-in-out}.lists-popup input[type=text]:focus{outline:none;border-color:var(--text-accent);box-shadow:0 0 0 2px #2563eb1a}.lists-popup h4{margin:0 0 var(--spacing-sm) 0;font-size:.9rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.premium-upsell{background:var(--bg-tertiary);border:1px dashed var(--border-secondary);color:var(--text-secondary);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--border-radius-sm)}.premium-upsell a{color:var(--text-accent);font-weight:600;text-decoration:none}.premium-upsell a:hover{text-decoration:underline}.lists-popup input[disabled],.lists-popup input[aria-disabled=true],.lists-popup input[data-locked=true]{background:var(--bg-primary);color:var(--text-muted);border-style:dashed;cursor:not-allowed}#vocab-preview-banner{margin:0 0 var(--spacing-md) 0}.vocab-preview-banner__inner{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md) var(--spacing-lg);border-radius:var(--border-radius-md);background:linear-gradient(135deg,#fef3c7,#fde68a 60%,#fcd34d);border:1px solid #f59e0b;box-shadow:0 2px 8px #f59e0b26,inset 0 1px #ffffff80;position:relative;overflow:hidden}.vocab-preview-banner__inner:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:url("data:image/svg+xml,%3Csvg width='40' height='40' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='20' cy='20' r='1.5' fill='%23f59e0b' opacity='0.25'/%3E%3C/svg%3E");pointer-events:none;opacity:.5}html:is([data-theme=dark],[data-theme-effective=dark]) .vocab-preview-banner__inner{background:linear-gradient(135deg,#292110,#3a2c0f 60%,#4a3510);border-color:#b45309;box-shadow:0 2px 8px #b4530940}.vocab-preview-banner__icon{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:50%;background:#f59e0b33;color:#b45309}html:is([data-theme=dark],[data-theme-effective=dark]) .vocab-preview-banner__icon{color:#fcd34d;background:#fcd34d1f}.vocab-preview-banner__icon i{width:18px;height:18px}.vocab-preview-banner__body{flex:1;min-width:0}.vocab-preview-banner__headline{margin:0 0 2px;font-size:.92rem;font-weight:600;color:#78350f;line-height:1.35}html:is([data-theme=dark],[data-theme-effective=dark]) .vocab-preview-banner__headline{color:#fde68a}.vocab-preview-banner__sub{margin:0;font-size:.82rem;color:#92400e;line-height:1.4}html:is([data-theme=dark],[data-theme-effective=dark]) .vocab-preview-banner__sub{color:#d97706}.vocab-preview-banner__cta{flex-shrink:0;padding:8px 18px;border-radius:20px;border:none;background:#d97706;color:#fff;font-size:.83rem;font-weight:700;cursor:pointer;letter-spacing:.02em;transition:background .2s,transform .1s,box-shadow .2s;box-shadow:0 1px 4px #b4530959;white-space:nowrap;position:relative;z-index:1}.vocab-preview-banner__cta:hover{background:#b45309;box-shadow:0 3px 10px #b4530966;transform:translateY(-1px)}.vocab-preview-banner__cta:active{transform:translateY(0);box-shadow:0 1px 3px #b453094d}@media (max-width: 600px){.vocab-preview-banner__inner{flex-wrap:wrap;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md)}.vocab-preview-banner__cta{width:100%;text-align:center}}#flashcard-view{position:fixed;top:0;left:0;width:100%;height:100%;background:var(--bg-primary);z-index:1105;display:none;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-lg);box-sizing:border-box;gap:var(--spacing-lg)}body.flashcards-active{--header-height: 0px}body.flashcards-active>header,body.flashcards-active .sidebar,body.flashcards-active>footer{display:none!important}@media (max-width: 900px){body{padding-top:var(--mobile-header-height, 48px)}header{position:fixed;top:0;left:0;right:0;width:100%}header .controls,header .user-profile-container{display:none!important}.mobile-topnav{display:flex;flex:0 0 100%;width:100%;justify-content:space-between;align-items:stretch;gap:2px;padding:4px calc(var(--spacing-sm) + var(--app-safe-area-right)) 2px calc(var(--spacing-sm) + var(--app-safe-area-left));border-top:1px solid var(--border-primary);overflow-x:auto;-webkit-overflow-scrolling:touch}.mobile-topnav::-webkit-scrollbar{display:none}.mobile-topnav-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid transparent;background:transparent;color:var(--text-secondary);flex:1 1 0;min-width:44px;height:auto;padding:4px 2px 3px;border-radius:var(--border-radius);display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;position:relative;transition:background-color .15s ease,color .15s ease,border-color .15s ease}.mobile-topnav-btn:hover,.mobile-topnav-btn:focus-visible{background:var(--bg-hover);border-color:var(--border-secondary);outline:none}.mobile-topnav-btn i,.mobile-topnav-btn svg{width:19px;height:19px;display:block;flex-shrink:0}.mobile-topnav-label{font-size:.6rem;font-weight:550;line-height:1;letter-spacing:.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;opacity:.85;transition:opacity .15s ease}.mobile-topnav-btn.active .mobile-topnav-label{opacity:1}.mobile-topnav-btn.active{color:var(--text-accent)}.mobile-topnav-btn.active:after{content:"";position:absolute;left:14px;right:14px;bottom:1px;height:2.5px;border-radius:999px;background:var(--text-accent);opacity:.95}}html:is([data-theme=dark],[data-theme-effective=dark]) .practice-controls label.checkbox input[type=checkbox]{-moz-appearance:none;appearance:none;-webkit-appearance:none;width:18px;height:18px;border-radius:4px;border:1px solid var(--border-secondary);background:var(--bg-tertiary);position:relative;display:inline-block;vertical-align:middle;margin-right:8px}html:is([data-theme=dark],[data-theme-effective=dark]) .practice-controls label.checkbox input[type=checkbox]:checked{background:var(--text-accent);border-color:var(--text-accent)}html:is([data-theme=dark],[data-theme-effective=dark]) .practice-controls label.checkbox input[type=checkbox]:checked:after{content:"";position:absolute;left:5px;top:2px;width:4px;height:8px;border:solid var(--text-on-accent);border-width:0 2px 2px 0;transform:rotate(45deg)}#flashcard-container{perspective:1000px;width:100%;flex-grow:1;display:flex;align-items:center;justify-content:center}.flashcard{width:100%;max-width:500px;height:60%;max-height:400px;perspective:1000px;background-color:transparent;cursor:pointer}.flashcard.transitioning .flashcard-front{visibility:hidden}.flashcard:focus{outline:none}.flashcard:focus-visible .flashcard-inner{box-shadow:0 0 0 3px var(--border-focus);border-radius:var(--border-radius-lg)}.flashcard-inner{position:relative;width:100%;height:100%;transition:transform .6s;transform-style:preserve-3d}.flashcard.flipped .flashcard-inner{transform:rotateY(180deg)}.flashcard-front,.flashcard-back{position:absolute;width:100%;height:100%;backface-visibility:hidden;display:flex;align-items:center;justify-content:center;font-size:clamp(1.5rem,5vw,2.5rem);font-weight:600;background:var(--bg-secondary);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-lg);border:1px solid var(--border-primary);padding:var(--spacing-lg);text-align:center;box-sizing:border-box;overflow-wrap:break-word;word-break:break-word}.flashcard-back{transform:rotateY(180deg);font-size:clamp(1.2rem,4vw,2rem);font-weight:500}.flashcard-navigation{display:none}.anki-buttons{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-md);width:100%;max-width:500px;margin-top:0;box-sizing:border-box}.anki-buttons button{padding:var(--spacing-lg);font-size:1.1rem;height:auto}.anki-buttons button:disabled,.btn-anki:disabled{opacity:.6;cursor:not-allowed;filter:grayscale(20%)}.study-header{width:100%;max-width:800px;display:grid;grid-template-columns:120px 1fr auto;align-items:center;gap:var(--spacing-md)}.study-progress{text-align:center;color:var(--text-secondary)}.study-help{color:var(--text-muted);font-size:.9rem}.study-help-wrap{display:flex;align-items:center;justify-content:flex-end;gap:10px}#flashcard-notes-btn{white-space:nowrap}@media (hover: none) and (pointer: coarse){.study-help{display:none}}@media (max-width: 900px){.anki-buttons .hotkey,.btn-anki .hotkey{display:none}}@media (hover: none) and (pointer: coarse){.anki-buttons .hotkey,.btn-anki .hotkey{display:none!important}}.study-stats{width:100%;max-width:800px;display:flex;gap:var(--spacing-sm);flex-wrap:wrap}.stat-pill{display:inline-flex;align-items:center;gap:8px;padding:6px 10px;border-radius:999px;background:var(--bg-secondary);border:1px solid var(--border-primary);color:var(--text-secondary);font-size:.9rem}.stat-pill strong{color:var(--text-primary)}.stat-pill.again{border-color:#ef44444d}.stat-pill.hard{border-color:#f59e0b4d}.stat-pill.good{border-color:#22c55e4d}.stat-pill.easy{border-color:color-mix(in srgb,var(--study-easy) 45%,transparent)}.btn-anki{position:relative;border-radius:10px}.btn-anki .hotkey{position:absolute;top:-8px;right:-8px;background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:50%;width:20px;height:20px;display:inline-flex;align-items:center;justify-content:center;font-size:.7rem;color:var(--text-secondary)}@media (max-width: 1024px),(hover: none),(pointer: coarse){.anki-buttons .hotkey,.btn-anki .hotkey{display:none!important}}.btn-anki .sub{display:block;font-size:.75rem;color:var(--text-secondary);margin-top:2px}.back-qa{display:flex;flex-direction:column;width:100%;align-items:center;justify-content:center;gap:var(--spacing-md);padding:0 var(--spacing-lg);box-sizing:border-box}.back-qa .qa-question{font-weight:600;opacity:.9;text-align:center}.back-qa .qa-divider{width:100%;border-bottom:1px solid var(--border-secondary)}.back-qa .qa-answer{font-weight:500;text-align:center}.btn-anki-again{background:#ef444414;border:1px solid rgba(239,68,68,.3)}.btn-anki-hard{background:#f59e0b14;border:1px solid rgba(245,158,11,.3)}.btn-anki-good{background:#22c55e14;border:1px solid rgba(34,197,94,.3)}.btn-anki-easy{background:color-mix(in srgb,var(--study-easy) 12%,transparent);border:1px solid color-mix(in srgb,var(--study-easy) 45%,transparent)}.btn-anki-again:hover{background:#ef444426}.btn-anki-hard:hover{background:#f59e0b26}.btn-anki-good:hover{background:#22c55e26}.btn-anki-easy:hover{background:color-mix(in srgb,var(--study-easy) 22%,transparent)}.study-complete{text-align:center;margin-top:var(--spacing-xl)}.study-complete__celebration{width:min(100%,260px);height:152px;margin:-4px auto 8px;color:var(--text-accent);overflow:visible}.study-complete__celebration svg{display:block;width:100%;height:100%;overflow:visible}.study-complete__celebration :is(path,rect,circle){stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.completion-card rect,.completion-card circle{fill:color-mix(in srgb,var(--text-accent) 7%,var(--bg-primary))}.completion-card--center rect{fill:color-mix(in srgb,var(--text-accent) 12%,var(--bg-primary))}.completion-orbit{opacity:.42;stroke-dasharray:1;animation:completion-orbit-draw 1.2s .18s cubic-bezier(.22,1,.36,1) both}.completion-orbit--inner{opacity:.22;animation-delay:.34s}.completion-card{transform-box:fill-box;transform-origin:center;animation:completion-card-arrive .68s cubic-bezier(.22,1,.36,1) both}.completion-card--left{animation-delay:.16s}.completion-card--right{animation-delay:.28s}.completion-card--center{animation-delay:.44s}.completion-spark{fill:var(--text-accent);opacity:0;transform-box:fill-box;transform-origin:center;animation:completion-spark-pop .76s cubic-bezier(.22,1,.36,1) both}.completion-spark--one{animation-delay:.62s}.completion-spark--two{animation-delay:.72s}.completion-spark--three{animation-delay:.8s}@keyframes completion-orbit-draw{0%{stroke-dashoffset:1;opacity:0}to{stroke-dashoffset:0;opacity:.42}}@keyframes completion-card-arrive{0%{opacity:0;transform:translateY(17px) scale(.8)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes completion-spark-pop{0%{opacity:0;transform:scale(.25)}55%{opacity:1;transform:scale(1.18)}to{opacity:.8;transform:scale(1)}}@media (prefers-reduced-motion: reduce){.study-complete__celebration *{animation:none!important}}@media (max-width: 600px){.study-complete__celebration{height:132px;margin-top:-10px}}#study-view .study-options{background:transparent;padding:0;border-radius:0;box-shadow:none;border:none;display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:var(--spacing-xl);align-items:start}#study-view #scope-selection-container{background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--border-radius-lg);padding:var(--spacing-lg);max-height:70vh;overflow-y:auto}#study-view .scope-level,#study-view .scope-chapter,#study-view .scope-group{margin-bottom:var(--spacing-sm)}#study-view .scope-chapter{margin-left:var(--spacing-md);padding-left:var(--spacing-md);border-left:2px solid var(--bg-tertiary)}#study-view .scope-group{margin-left:var(--spacing-md)}#study-view .scope-item-header{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--border-radius-sm);cursor:pointer;transition:var(--transition);border:1px solid transparent}#study-view .scope-item-header:hover{background:var(--bg-hover);border-color:var(--border-secondary)}#study-view .scope-toggle-icon{color:var(--text-muted);transition:transform .2s ease}#study-view .scope-item-header.collapsed .scope-toggle-icon{transform:rotate(0)}#study-view .scope-item-header:not(.collapsed) .scope-toggle-icon{transform:rotate(90deg)}#study-view .study-settings{position:sticky;top:84px;align-self:start;background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--border-radius-lg);padding:var(--spacing-lg);display:flex;flex-direction:column;gap:var(--spacing-xl)}#study-view .study-settings .study-actions{display:flex;gap:var(--spacing-sm)}#study-view .sticky-actions{padding-top:var(--spacing-md);display:flex;justify-content:flex-end}@media (max-width: 900px){#study-view .study-options{grid-template-columns:1fr}#study-view .study-settings{position:static;top:auto}#study-view .sticky-actions{justify-content:stretch}#study-view .sticky-actions .btn-primary{width:100%}}.breadcrumb{display:flex;gap:8px;align-items:center;color:var(--text-secondary);margin-bottom:var(--spacing-md)}.breadcrumb a{color:var(--text-accent);text-decoration:none}.breadcrumb a:hover{text-decoration:underline}#study-view .quiz-actions{grid-column:1 / -1}@media (max-width: 900px){#study-view .study-options{grid-template-columns:1fr}}.final-stats{margin:var(--spacing-md) 0 var(--spacing-lg);color:var(--text-secondary)}.study-options{padding:var(--spacing-lg);display:flex;flex-direction:column;gap:var(--spacing-lg)}#scope-selection-container{display:flex;flex-direction:column;gap:var(--spacing-sm)}.scope-level{padding:0;border:none;border-radius:0}.scope-level-header{display:flex;align-items:center;gap:var(--spacing-sm);cursor:pointer;font-weight:600;font-size:1.1rem;padding:var(--spacing-sm);border-radius:var(--border-radius-sm);transition:var(--transition)}.scope-level-header:hover{background:var(--bg-hover)}.scope-level-header input[type=checkbox]{margin-right:var(--spacing-sm)}.chapter-list,.group-list{padding-left:var(--spacing-lg);display:none}.chapter-item,.group-item{display:flex;align-items:center;gap:var(--spacing-sm);margin-top:var(--spacing-sm)}.sidebar-footer{padding:var(--spacing-md);border-top:1px solid var(--border-primary);margin-top:auto}.sidebar-tour-btn{display:flex;align-items:center;gap:8px;width:100%;padding:10px 12px;margin-bottom:var(--spacing-sm);background:transparent;border:1px solid var(--border-primary);border-radius:var(--border-radius-sm);color:var(--text-secondary);font-size:.9rem;cursor:pointer;transition:var(--transition)}.sidebar-tour-btn:hover{background:var(--bg-hover);color:var(--text-primary);border-color:var(--border-secondary)}.sidebar-tour-btn i{width:18px;height:18px}.user-profile-container{display:flex;flex-direction:column;gap:var(--spacing-md)}#user-info{display:flex;flex-direction:column;align-items:flex-start;gap:var(--spacing-sm)}#user-email{font-weight:500;color:var(--text-secondary);font-size:.9rem}#auth-buttons,#user-info>button{width:100%}.btn-secondary{background:var(--bg-tertiary);color:var(--text-primary);border:1px solid var(--border-primary);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--border-radius-sm);cursor:pointer;transition:var(--transition);font-weight:500}.btn-secondary:hover{background:var(--bg-hover);border-color:var(--border-secondary)}#auth-modal{z-index:12000}#auth-modal:not(.react-auth) .modal-content{max-width:440px;padding:var(--spacing-2xl)}#auth-modal:not(.react-auth) .close{position:absolute;top:16px;right:16px;color:var(--text-secondary);font-size:28px;line-height:1;display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:background-color .2s ease,color .2s ease}#auth-modal:not(.react-auth) .close:hover,#auth-modal:not(.react-auth) .close:focus{background:var(--bg-hover);color:var(--text-primary)}.auth-modal-header{text-align:center;margin-bottom:var(--spacing-lg)}.auth-modal-header h2{margin:0 0 var(--spacing-sm) 0;font-size:1.75rem;font-weight:700;color:var(--text-primary)}.auth-modal-subtitle{margin:0;font-size:.95rem;color:var(--text-secondary);font-weight:400}#auth-message-area{margin-bottom:var(--spacing-md)}.auth-message{padding:var(--spacing-md);border-radius:var(--border-radius-sm);border-left:4px solid;background:var(--bg-tertiary);animation:slideIn .3s ease}.auth-message strong{display:block;margin-bottom:var(--spacing-xs);font-weight:600}.auth-message p{margin:0;font-size:.9rem;line-height:1.5}.auth-message.success{border-left-color:var(--success);background:#10b9811a;color:var(--text-primary)}.auth-message.error{border-left-color:var(--error);background:#ef44441a;color:var(--text-primary)}.auth-message.warning{border-left-color:var(--warning);background:#f59e0b1a;color:var(--text-primary)}#auth-modal:not(.react-auth) h2{text-align:center;margin-bottom:var(--spacing-lg)}#auth-modal:not(.react-auth) form{display:flex;flex-direction:column;gap:var(--spacing-md)}.form-group{display:flex;flex-direction:column;gap:var(--spacing-xs)}.form-group label{font-size:.9rem;font-weight:600;color:var(--text-primary)}#auth-modal:not(.react-auth) input{padding:12px var(--spacing-md);border:1.5px solid var(--border-primary);border-radius:var(--border-radius-sm);font-size:1rem;background:var(--bg-primary);color:var(--text-primary);transition:all .2s ease}#auth-modal:not(.react-auth) input:focus{outline:none;border-color:var(--border-focus);box-shadow:0 0 0 3px #2563eb1a}.auth-submit-btn{margin-top:var(--spacing-sm);padding:12px var(--spacing-md)!important;font-weight:600!important;font-size:1rem!important}#auth-modal .legacy-btn{padding:var(--spacing-md)}#auth-modal .form-footer{text-align:center;margin-top:var(--spacing-lg);padding-top:var(--spacing-md);border-top:1px solid var(--border-primary);font-size:.9rem;color:var(--text-secondary)}#auth-modal .form-footer a{color:var(--text-accent);cursor:pointer;font-weight:600;text-decoration:none;transition:color .2s ease}#auth-modal .form-footer a:hover{color:var(--text-primary);text-decoration:underline}.email-signin-button i{width:18px;height:18px;display:inline-block;vertical-align:middle}.auth-buttons-inline{display:flex;flex-direction:column;gap:12px;align-items:center;width:100%}.auth-buttons-inline .email-signin-button,.auth-buttons-inline .gsi-material-button{width:auto;min-width:240px;max-width:320px}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}#notification-container{position:fixed;top:0;left:0;right:0;padding-top:var(--app-safe-area-top);z-index:1200;display:flex;flex-direction:column;gap:6px;pointer-events:none}#notification-container[data-edge=bottom]{top:auto;bottom:0;padding-top:0;padding-bottom:var(--app-safe-area-bottom)}.notification{--swipe-y: 0px;--swipe-opacity: 1;background:color-mix(in srgb,var(--bg-secondary) 92%,black 8%);color:var(--text-primary);width:min(100%,640px);margin:0 auto;padding:6px 10px 6px 12px;border-radius:0 0 10px 10px;box-shadow:0 10px 20px #00000042;border:1px solid color-mix(in srgb,var(--border-primary) 86%,transparent);border-top:none;border-left-width:3px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px;pointer-events:auto;touch-action:pan-x;will-change:transform,opacity;opacity:0;transform:translate3d(0,-105%,0);transition:transform .2s ease,opacity .2s ease}#notification-container[data-edge=bottom] .notification{border-top:1px solid color-mix(in srgb,var(--border-primary) 86%,transparent);border-bottom:none;border-radius:10px 10px 0 0;transform:translate3d(0,105%,0)}.notification.show{opacity:var(--swipe-opacity);transform:translate3d(0,var(--swipe-y),0)}.notification.dragging{transition:none}.notification.dismissed{opacity:0;transform:translate3d(0,-105%,0)}#notification-container[data-edge=bottom] .notification.dismissed{transform:translate3d(0,105%,0)}.notification-message{font-size:.82rem;line-height:1.25;font-weight:500}.notification-close{border:none;background:transparent;color:var(--text-muted);cursor:pointer;width:22px;height:22px;border-radius:6px;display:inline-flex;align-items:center;justify-content:center;font-size:1rem;line-height:1;padding:0}.notification-close:hover,.notification-close:focus-visible{background:var(--bg-hover);color:var(--text-primary);outline:none}.notification.success{border-left-color:var(--success)}.notification.error{border-left-color:var(--error)}.notification.warning{border-left-color:var(--warning)}.notification.info{border-left-color:var(--text-accent)}@media (max-width: 900px){#notification-container{gap:4px}.notification{width:100%;max-width:none;border-radius:0;box-shadow:0 8px 14px #00000040}#notification-container[data-edge=bottom] .notification{border-radius:0}}#study-modal .modal-content{width:90%;max-width:600px;max-height:80vh;display:flex;flex-direction:column}#scope-selection-container{overflow-y:auto;flex-grow:1;padding-right:1rem;scrollbar-width:thin;scrollbar-color:rgba(0,0,0,.2) transparent}#scope-selection-container::-webkit-scrollbar{width:8px}#scope-selection-container::-webkit-scrollbar-track{background:transparent}#scope-selection-container::-webkit-scrollbar-thumb{background-color:#0003;border-radius:999px}#scope-selection-container::-webkit-scrollbar-thumb:hover{background-color:#0000004d}html:is([data-theme=dark],[data-theme-effective=dark]) #scope-selection-container{scrollbar-color:rgba(255,255,255,.25) transparent}html:is([data-theme=dark],[data-theme-effective=dark]) #scope-selection-container::-webkit-scrollbar-thumb{background-color:#ffffff40}html:is([data-theme=dark],[data-theme-effective=dark]) #scope-selection-container::-webkit-scrollbar-thumb:hover{background-color:#ffffff59}.scope-level,.scope-chapter,.scope-group{margin-left:1rem}.scope-item-header{cursor:pointer;padding:.25rem;display:flex;align-items:center}.scope-item-header:hover{background-color:var(--bg-hover)}.scope-chapters-container,.scope-groups-container{display:none;margin-left:0;border-left:none;padding-left:0;margin-top:var(--spacing-sm)}#lists-container{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--spacing-lg);margin-bottom:var(--spacing-xl)}.list-card{background:var(--bg-secondary);border-radius:var(--border-radius);padding:var(--spacing-lg);box-shadow:var(--shadow-sm);border:1px solid var(--border-primary);cursor:pointer;transition:var(--transition)}.list-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px);border-color:var(--border-secondary)}.list-card h3{margin:0 0 var(--spacing-sm) 0;color:var(--text-primary);font-size:1.2rem}.list-card .word-count{color:var(--text-secondary);font-size:.9rem;margin-bottom:var(--spacing-md)}.list-card .preview-words{font-size:.85rem;color:var(--text-muted);font-style:italic}.list-header{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:var(--spacing-md);margin-bottom:var(--spacing-xl);padding:var(--spacing-md) var(--spacing-lg);background:var(--bg-secondary);border-radius:var(--border-radius);box-shadow:var(--shadow-sm);border:1px solid var(--border-primary)}.list-header h3{margin:0;justify-self:center;text-align:center;color:var(--text-primary);font-size:clamp(1.1rem,1.9vw,1.35rem)}.list-actions{display:flex;gap:8px;justify-self:end}#back-to-lists,#study-list,#delete-list{display:inline-flex;align-items:center;gap:8px;border-radius:12px;font-weight:600;min-height:38px;padding-inline:14px;transition:background-color .18s ease,border-color .18s ease,transform .18s ease}#back-to-lists i,#study-list i,#delete-list i{width:16px;height:16px}#back-to-lists{justify-self:start;background:var(--bg-tertiary);border:1px solid var(--border-primary);color:var(--text-secondary)}#back-to-lists:hover{background:var(--bg-hover)}#study-list:hover{transform:translateY(-1px)}#delete-list{background:transparent;border:1px solid color-mix(in srgb,#ef4444 35%,var(--border-primary) 65%);color:color-mix(in srgb,#ef4444 82%,var(--text-primary) 18%)}#delete-list:hover{background:color-mix(in srgb,#ef4444 10%,var(--bg-secondary) 90%)}#list-words-container{display:flex;flex-direction:column;gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.empty-list,.no-lists{text-align:center;padding:var(--spacing-2xl);color:var(--text-muted);font-style:italic;background:var(--bg-secondary);border-radius:var(--border-radius);border:1px solid var(--border-primary)}.no-lists h3{color:var(--text-secondary);margin-bottom:var(--spacing-md)}.no-lists p{margin-bottom:var(--spacing-lg)}.sidebar-nav a.active{color:var(--text-accent);background-color:var(--bg-tertiary);font-weight:600}.btn-primary:focus-visible,.btn-secondary:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--border-focus);outline-offset:2px}.sidebar-nav a:focus-visible{outline:2px solid var(--border-focus);outline-offset:-2px}.skip-link{position:absolute;top:-40px;left:6px;background:var(--bg-secondary);color:var(--text-primary);padding:8px;text-decoration:none;border-radius:var(--border-radius-sm);z-index:9999;transition:top .3s ease}.skip-link:focus{top:6px}@media (prefers-reduced-motion: reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.view,.sidebar{transition:none}header{transition:none}}@media (prefers-contrast: high){:root{--border-primary: #000000;--text-secondary: #000000;--bg-hover: #e0e0e0}}@media (prefers-color-scheme: dark){:root{--bg-primary: #1a1a1a;--bg-secondary: #2d2d2d;--bg-tertiary: #3a3a3a;--bg-hover: #404040;--bg-active: #4a4a4a;--text-primary: #ffffff;--text-secondary: #b0b0b0;--text-muted: #808080;--text-on-accent: #102a4c;--border-primary: #404040;--border-secondary: #505050}header{background:#2d2d2dd9}.settings-panel select,.controls select,.form-group select,.filter-group select,.form-group input[type=number]{background-color:var(--bg-tertiary);color:var(--text-primary);border-color:var(--border-secondary)}#study-view .scope-item-header:hover{background:var(--bg-hover);border-color:var(--border-secondary)}#study-view .scope-chapter{border-left-color:var(--bg-tertiary)}#study-view .sticky-actions{background:none}#study-view #scope-selection-container,#study-view .study-settings{background:var(--bg-primary);border-color:var(--border-secondary)}#study-view .scope-item-header input[type=checkbox]{accent-color:var(--text-accent)}#study-view .scope-item-header input[type=checkbox]{-moz-appearance:none;appearance:none;-webkit-appearance:none;width:18px;height:18px;border-radius:4px;border:1px solid var(--border-secondary);background:linear-gradient(180deg,#2f2f2f,#262626);position:relative;display:inline-block;vertical-align:middle;box-shadow:inset 0 1px #ffffff08}#study-view .scope-item-header input[type=checkbox]:hover{border-color:var(--border-primary)}#study-view .scope-item-header input[type=checkbox]:focus{outline:none;box-shadow:0 0 0 3px #2563eb40}#study-view .scope-item-header input[type=checkbox]:checked{background:var(--text-accent);border-color:var(--text-accent)}#study-view .scope-item-header input[type=checkbox]:checked:after{content:"";position:absolute;left:5px;top:2px;width:4px;height:8px;border:solid var(--text-on-accent);border-width:0 2px 2px 0;transform:rotate(45deg)}.anki-buttons button,.btn-anki{color:var(--text-primary)}.btn-anki .sub,.btn-anki .hotkey{color:var(--text-secondary)}.anki-buttons button:disabled,.btn-anki:disabled{color:var(--text-muted);background-color:var(--bg-secondary);border-color:var(--border-primary)}}@media (max-width: 768px){#lists-container{grid-template-columns:1fr}.list-header{display:grid;grid-template-columns:1fr;gap:var(--spacing-md);text-align:left;padding:var(--spacing-md)}.list-header h3{justify-self:start;text-align:left}.list-actions{justify-self:stretch;justify-content:flex-start;flex-wrap:wrap;width:100%}#back-to-lists{justify-self:start}#study-list,#delete-list{flex:1 1 150px}.header-actions{display:flex}.controls{display:none}#theme-toggle{display:none!important}#mobile-upgrade-btn{max-width:126px}}@media (max-width: 390px){#mobile-upgrade-btn{max-width:106px;padding:0 8px!important;font-size:.68rem!important}}@media (max-width: 405px){header{padding:3px calc(6px + var(--app-safe-area-right)) 3px calc(6px + var(--app-safe-area-left));gap:4px}.logo{gap:5px}.logo h1{font-size:clamp(.84rem,4vw,.98rem)}.logo .logo-icon{width:26px;height:26px;flex-basis:26px}.header-actions{gap:3px;flex:0 1 auto}.sidebar-toggle{margin-right:0}header .sidebar-toggle,header .header-actions button{min-width:31px;min-height:30px;height:30px;padding:1px 6px}#mobile-upgrade-btn{max-width:86px;min-width:0!important;padding:0 7px!important}#mobile-upgrade-btn span{font-size:0}#mobile-upgrade-btn span:after{content:"Upgrade";font-size:.64rem;letter-spacing:.01em}}@media (max-width: 352px){header{padding:2px calc(4px + var(--app-safe-area-right)) 2px calc(4px + var(--app-safe-area-left));gap:3px}.logo h1{font-size:clamp(.78rem,3.6vw,.9rem)}.logo .logo-icon{width:24px;height:24px;flex-basis:24px}header .sidebar-toggle,header .header-actions button{min-width:29px;min-height:28px;height:28px;padding:1px 5px}header .sidebar-toggle i,header .sidebar-toggle svg,header .header-actions i,header .header-actions svg{width:18px;height:18px}#mobile-upgrade-btn{max-width:76px;padding:0 6px!important}#mobile-upgrade-btn span:after{font-size:.6rem}}@media (max-width: 322px){header{padding:2px calc(3px + var(--app-safe-area-right)) 2px calc(3px + var(--app-safe-area-left));gap:2px}.logo h1{font-size:.74rem}.logo .logo-icon{width:22px;height:22px;flex-basis:22px}header .sidebar-toggle,header .header-actions button{min-width:27px;min-height:26px;height:26px;padding:1px 4px}header .sidebar-toggle i,header .sidebar-toggle svg,header .header-actions i,header .header-actions svg{width:16px;height:16px}#mobile-upgrade-btn{max-width:70px;padding:0 5px!important}#mobile-upgrade-btn span:after{font-size:.56rem}}@media (min-width: 901px){.controls{display:flex}.header-actions,.settings-panel{display:none!important}}html:is([data-theme=dark],[data-theme-effective=dark]) header{background:#2d2d2dd9}html:is([data-theme=light],[data-theme-effective=light]) header{background:#ffffffd9}html[data-theme-effective=light]{--bg-primary: #f7f7f8;--bg-secondary: #ffffff;--bg-tertiary: #eef2f7;--bg-hover: #f2f2f2;--bg-active: #e5e5e5;--text-primary: #1c1c1e;--text-secondary: #545458;--text-muted: #8a8a8e;--text-accent: #2563eb;--text-on-accent: #ffffff;--accent-primary: var(--text-accent);--accent-primary-dark: color-mix(in srgb, var(--text-accent) 82%, black 18%);--border-primary: #d7d9dd;--border-secondary: #c7c9cf;--border-focus: #2563eb}html[data-theme-effective=dark]{--bg-primary: #1a1a1a;--bg-secondary: #2d2d2d;--bg-tertiary: #3a3a3a;--bg-hover: #404040;--bg-active: #4a4a4a;--text-primary: #ffffff;--text-secondary: #b0b0b0;--text-muted: #808080;--text-accent: #93c5fd;--text-on-accent: #102a4c;--accent: #93c5fd;--accent-dark: #bfdbfe;--accent-outline: rgba(147, 197, 253, .45);--accent-primary: var(--text-accent);--accent-primary-dark: color-mix(in srgb, var(--text-accent) 70%, white 30%);--border-primary: #404040;--border-secondary: #505050;--border-focus: #93c5fd;--study-easy: #bfdbfe}html[data-theme-effective=dark] header{background:#2d2d2dd9}html[data-theme-effective=light] header{background:#ffffffd9}html[data-theme-effective=dark] .settings-panel select,html[data-theme-effective=dark] .controls select,html[data-theme-effective=dark] .form-group select,html[data-theme-effective=dark] .filter-group select,html[data-theme-effective=dark] .form-group input[type=number]{background-color:var(--bg-tertiary);color:var(--text-primary);border-color:var(--border-secondary)}html[data-theme-effective=light] #study-view .scope-item-header input[type=checkbox]{-moz-appearance:auto;appearance:auto;-webkit-appearance:checkbox;background:initial;border:1px solid var(--border-primary);accent-color:var(--text-accent)}.theme-toggle{display:inline-flex;align-items:center;justify-content:center;gap:6px;width:38px;height:38px;padding:6px;border:1px solid var(--border-primary);background:var(--bg-secondary);border-radius:999px;color:var(--text-secondary);box-shadow:var(--shadow-sm);transition:var(--transition)}.theme-toggle:hover{background:var(--bg-hover);color:var(--text-primary);border-color:var(--border-secondary)}.theme-toggle i{width:20px;height:20px}html[data-theme-effective=dark] #study-view .scope-item-header input[type=checkbox]{-moz-appearance:none;appearance:none;-webkit-appearance:none;width:18px;height:18px;border-radius:4px;border:1px solid var(--border-secondary);background:linear-gradient(180deg,#2f2f2f,#262626);position:relative;display:inline-block;vertical-align:middle;box-shadow:inset 0 1px #ffffff08}html[data-theme-effective=dark] #study-view .scope-item-header input[type=checkbox]:hover{border-color:var(--border-primary)}html[data-theme-effective=dark] #study-view .scope-item-header input[type=checkbox]:focus{outline:none;box-shadow:0 0 0 3px #2563eb40}html[data-theme-effective=dark] #study-view .scope-item-header input[type=checkbox]:checked{background:var(--text-accent);border-color:var(--text-accent)}html[data-theme-effective=dark] #study-view .scope-item-header input[type=checkbox]:checked:after{content:"";position:absolute;left:5px;top:2px;width:4px;height:8px;border:solid var(--text-on-accent);border-width:0 2px 2px 0;transform:rotate(45deg)}html[data-theme-effective=dark] .option-button.correct{background:#16a34a2e;color:#d1fae5;border-color:#16a34a}html[data-theme-effective=dark] .option-button.incorrect{background:#ef44442e;color:#fecaca;border-color:#ef4444}html[data-theme-effective=dark] .feedback.correct{background-color:#16a34a2e;color:#a7f3d0}html[data-theme-effective=dark] .feedback.incorrect{background-color:#ef44442e;color:#fecaca}html[data-theme-effective=dark] .results-list li.correct{background-color:#16a34a26;border-left-color:#16a34a}html[data-theme-effective=dark] .results-list li.incorrect{background-color:#ef444426;border-left-color:#ef4444}.modal{position:fixed;z-index:1001;left:0;top:0;width:100%;height:100%;overflow:auto;background-color:#00000080;display:flex;align-items:center;justify-content:center}body.modal-open{overflow:hidden!important}.modal-content{background-color:var(--bg-secondary);margin:auto;padding:20px;border:1px solid var(--border-primary);width:80%;max-width:700px;border-radius:var(--border-radius-lg);box-shadow:var(--shadow-lg);position:relative}#typing-test-modal .modal-content,#article-quiz-modal .modal-content{max-width:720px;width:min(94vw,720px);border-radius:22px;border:1px solid color-mix(in srgb,var(--border-primary) 82%,transparent);background:var(--bg-secondary);box-shadow:0 22px 44px #0000002e,0 5px 12px #00000014;padding:18px 18px 16px;overflow:visible}.modal #typing-test-root,.modal #article-quiz-root{display:flex;justify-content:center}.quick-quiz{display:grid;gap:14px;width:min(100%,640px);margin-inline:auto;padding-right:0}.quick-quiz-top{display:grid;gap:9px;padding-right:56px}.quick-quiz-topline{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.quick-quiz-heading{min-width:0;display:grid;gap:2px}.quick-quiz-kicker{margin:0;font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}.quick-quiz-title{margin:0;font-size:1.34rem;font-weight:800;letter-spacing:-.01em;color:var(--text-primary)}.quick-quiz-progress{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;min-width:58px;padding:5px 11px;border-radius:999px;font-size:.78rem;font-weight:700;color:var(--text-accent);background:color-mix(in srgb,var(--text-accent) 10%,var(--bg-secondary) 90%);border:1px solid color-mix(in srgb,var(--text-accent) 36%,var(--border-primary) 64%)}.quick-quiz-progress-bar{height:6px;border-radius:999px;background:color-mix(in srgb,var(--border-primary) 60%,transparent);overflow:hidden}.quick-quiz-progress-bar>span{display:block;height:100%;width:0;background:linear-gradient(90deg,color-mix(in srgb,var(--text-accent) 92%,white 8%),color-mix(in srgb,var(--text-accent) 70%,white 30%));transition:width .2s ease}.quick-quiz-card{display:grid;gap:14px;padding:16px 15px;border-radius:16px;border:1px solid color-mix(in srgb,var(--border-primary) 82%,transparent);background:color-mix(in srgb,var(--bg-secondary) 90%,var(--bg-tertiary) 10%)}.typing-translate-row,.article-quiz-header-row{display:flex;align-items:flex-start;gap:10px}.quick-quiz .typing-save-container{flex-shrink:0}.quick-quiz .typing-save-container .save-icon{width:20px;height:20px;color:var(--text-muted)}.quick-quiz .lists-popup{width:min(240px,calc(100vw - 24px));max-width:calc(100vw - 24px)}.quick-quiz-prompt-wrap{flex:1}.quick-quiz-prompt{margin:0;color:var(--text-primary);line-height:1.5;font-size:1.03rem}.quick-quiz-prompt strong{font-weight:800;color:var(--text-accent)}.quick-quiz .translation{margin:.35rem 0 0;color:var(--text-muted);font-size:.92rem}.quick-quiz-input-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px}.quick-quiz-input{min-height:46px;border-radius:13px;border:1px solid color-mix(in srgb,var(--border-primary) 84%,transparent);background:var(--bg-primary);color:var(--text-primary);padding:11px 13px;font-size:1rem}.quick-quiz-input:focus{outline:0;border-color:color-mix(in srgb,var(--text-accent) 58%,var(--border-primary) 42%);box-shadow:0 0 0 3px color-mix(in srgb,var(--text-accent) 20%,transparent)}.quick-quiz-btn{flex:0 0 auto;min-height:46px;min-width:108px;border-radius:13px;font-weight:700;box-shadow:none}.quick-quiz-btn--primary{background:color-mix(in srgb,var(--text-accent) 92%,#0c2347 8%);color:var(--text-on-accent);border-color:color-mix(in srgb,var(--text-accent) 65%,#0c2347 35%)}.quick-quiz-btn--primary:hover:not(:disabled){background:color-mix(in srgb,var(--text-accent) 82%,#0c2347 18%);transform:translateY(-1px)}.quick-quiz-btn--ghost{background:var(--bg-secondary);color:var(--text-primary);border-color:color-mix(in srgb,var(--border-primary) 84%,transparent)}.quick-quiz-choice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.quick-quiz-choice{justify-content:center;min-height:46px;border-radius:13px;font-weight:700;border:1px solid color-mix(in srgb,var(--border-primary) 84%,transparent);background:color-mix(in srgb,var(--bg-tertiary) 70%,var(--bg-secondary) 30%);box-shadow:none}.quick-quiz-choice:hover:not(:disabled){border-color:color-mix(in srgb,var(--text-accent) 42%,var(--border-primary) 58%);background:color-mix(in srgb,var(--text-accent) 10%,var(--bg-secondary) 90%)}.quick-quiz-feedback{min-height:36px;color:var(--text-secondary);font-size:.95rem;line-height:1.45;border-radius:10px;padding:7px 10px;border:1px solid transparent;background:transparent}.quick-quiz-feedback:empty{padding:0;min-height:16px}.quick-quiz-feedback.is-correct{border-color:#22c55e59;background:#22c55e1a}.quick-quiz-feedback.is-incorrect{border-color:#ef444459;background:#ef44441a}.quick-quiz-feedback.is-note{border-color:color-mix(in srgb,var(--text-accent) 35%,var(--border-primary) 65%);background:color-mix(in srgb,var(--text-accent) 9%,transparent)}.quick-quiz-actions{display:flex;justify-content:flex-end;gap:10px}.quick-quiz-actions--wrap{flex-wrap:wrap}.quick-quiz-actions .quick-quiz-btn{min-width:132px}.quick-quiz-score{font-size:.96rem;color:var(--text-primary);padding-top:2px;font-weight:600}.quick-quiz-followup{padding:12px;border-radius:12px;border:1px solid var(--border-primary);background:var(--bg-secondary)}.quick-quiz-followup p{margin:0 0 8px;color:var(--text-secondary)}.quick-quiz-status{font-weight:800}.quick-quiz-status--ok{color:var(--success)}.quick-quiz-status--bad{color:var(--danger)}.quick-quiz-note{color:var(--text-secondary);font-weight:600}.final-feedback{padding:11px 13px;border-radius:10px;border:1px solid color-mix(in srgb,var(--border-primary) 84%,transparent);background:color-mix(in srgb,var(--bg-tertiary) 80%,var(--bg-secondary) 20%)}html:is([data-theme=dark],[data-theme-effective=dark]) .quick-quiz-card{background:color-mix(in srgb,var(--bg-secondary) 86%,#0b1020 14%);border-color:color-mix(in srgb,var(--border-primary) 70%,transparent)}html:is([data-theme=dark],[data-theme-effective=dark]) .quick-quiz-progress{background:color-mix(in srgb,var(--text-accent) 22%,#0b2922 78%);border-color:color-mix(in srgb,var(--text-accent) 38%,transparent)}html:is([data-theme=dark],[data-theme-effective=dark]) .quick-quiz-choice{background:color-mix(in srgb,var(--bg-tertiary) 68%,#0d1324 32%)}html:is([data-theme=dark],[data-theme-effective=dark]) .quick-quiz-input{background:color-mix(in srgb,var(--bg-primary) 78%,#0b2922 22%)}html:is([data-theme=dark],[data-theme-effective=dark]) .quick-quiz-btn--ghost{background:color-mix(in srgb,var(--bg-secondary) 72%,#0b2922 28%);border-color:color-mix(in srgb,var(--border-primary) 76%,transparent)}@media (max-width: 640px){#typing-test-modal .modal-content,#article-quiz-modal .modal-content{width:min(96vw,720px);padding:14px;border-radius:14px}.quick-quiz-top{padding-right:52px}.quick-quiz-kicker{font-size:.68rem}.quick-quiz-title{font-size:1.16rem}.quick-quiz-choice-grid{grid-template-columns:1fr}.quick-quiz-actions{flex-wrap:wrap}.quick-quiz-actions .btn{flex:1 1 140px}}@media (max-width: 480px){.quick-quiz-top{padding-right:50px}.quick-quiz-input-row{grid-template-columns:1fr}.quick-quiz-btn{width:100%}.quick-quiz-prompt{font-size:1rem}}#confirm-modal-confirm{background:transparent;color:var(--danger);border:1px solid rgba(239,68,68,.06)}#confirm-modal-confirm:hover:not(:disabled){background:#ef44441f;color:var(--danger)}#confirm-modal-confirm:focus{outline:3px solid rgba(239,68,68,.12);outline-offset:2px}.close-modal{color:var(--text-muted);position:absolute;top:16px;right:16px;font-size:28px;font-weight:400;line-height:1;padding:8px;min-width:40px;min-height:40px;display:flex;align-items:center;justify-content:center;border-radius:50%;cursor:pointer;background:transparent;border:none;transition:all .2s ease}.close-modal:hover,.close-modal:focus{color:var(--text-primary);background:var(--bg-hover);text-decoration:none;cursor:pointer}#typing-test-modal .close-modal,#article-quiz-modal .close-modal{top:12px;right:12px;width:38px;height:38px;min-width:38px;min-height:38px;border:1px solid color-mix(in srgb,var(--border-primary) 80%,transparent);background:color-mix(in srgb,var(--bg-secondary) 90%,var(--bg-tertiary) 10%);border-radius:999px}.vocab-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--spacing-sm);margin:var(--spacing-lg) auto;max-width:700px}.vocab-actions .btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);font-size:.95rem;font-weight:500;white-space:nowrap;background-color:var(--bg-tertiary);border-color:var(--border-secondary);color:var(--text-secondary)}.vocab-actions .btn:hover{background-color:var(--bg-hover);color:var(--text-primary)}.page-actions-info{--info-button-size: 36px;position:relative;display:inline-flex;align-items:center;justify-content:center;flex:0 0 var(--info-button-size);width:var(--info-button-size);height:var(--info-button-size)}.page-actions-info .btn{width:100%;height:100%;min-width:0;min-height:0;padding:0;border-radius:50%;background-color:var(--bg-tertiary);border-color:var(--border-secondary);line-height:0;box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;aspect-ratio:1 / 1}.page-actions-info .btn i,.page-actions-info .btn svg{width:18px;height:18px;display:block}.page-actions-info-popover{position:absolute;top:calc(100% + 8px);right:0;min-width:220px;max-width:300px;padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-primary);border:1px solid var(--border-primary);border-radius:var(--border-radius);box-shadow:var(--shadow-lg);font-size:.9rem;line-height:1.4;color:var(--text-secondary);opacity:0;pointer-events:none;transform:translateY(-4px);transition:opacity .15s ease,transform .15s ease;z-index:100}.page-actions-info-popover.show{opacity:1;pointer-events:auto;transform:translateY(0)}.list-vocab-actions{margin-top:var(--spacing-lg)}@media (max-width: 768px){.vocab-actions{display:flex;flex-wrap:nowrap;justify-content:flex-start;gap:var(--spacing-sm);max-width:none;margin:var(--spacing-md) 0;padding:0;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.vocab-actions::-webkit-scrollbar{display:none}.vocab-actions .btn{flex:0 0 auto;font-size:.85rem;padding:8px 12px}.page-actions-info{--info-button-size: 32px;flex:0 0 var(--info-button-size)}.page-actions-info .btn{padding:0!important;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;line-height:0;flex:0 0 auto;box-sizing:border-box}.page-actions-info-popover{position:absolute;width:min(300px,calc(100vw - 24px));max-width:min(300px,calc(100vw - 24px));min-width:0;box-sizing:border-box;z-index:1000}.page-actions-info-popover.is-portaled{right:auto;transform:translate(-50%,-4px)}.page-actions-info-popover.is-portaled.show{transform:translate(-50%)}}.desktop-only{display:inline-block}@media (max-width: 900px){.desktop-only{display:none!important}}.navigation-tip,.interaction-tip{display:flex;align-items:center;justify-content:center;gap:8px;color:var(--text-muted);font-size:.95rem;margin-top:-8px}.interaction-tip{margin-bottom:100px}.tip-icon{width:18px;height:18px;color:var(--text-secondary)}@media (max-width: 768px){.navigation-tip{display:none!important}.interaction-tip{display:flex}}.modal-kbd-hints,.desktop-kbd-hints{font-size:.95rem;color:var(--text-muted)}.level-selector-container{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;padding:6px 8px}.level-selector{flex-wrap:nowrap;white-space:nowrap;gap:var(--spacing-sm);display:flex;align-items:center}.level-selector button{flex:0 0 auto;white-space:nowrap;padding:8px 12px;margin:0}.level-selector .lock-icon,.level-selector .level-lock{width:14px;height:14px;margin-left:6px;display:inline-block;vertical-align:middle}.level-selector-container::-webkit-scrollbar{height:8px}.level-selector-container::-webkit-scrollbar-thumb{background:#00000014;border-radius:999px}.grammar-container{display:flex;gap:2rem}.grammar-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:var(--spacing-xl) var(--spacing-lg);border:1px dashed var(--border-primary);border-radius:var(--border-radius);color:var(--text-secondary);gap:8px}.grammar-empty i[data-lucide]{width:28px;height:28px;color:var(--text-accent)}.grammar-nav{display:flex;gap:var(--spacing-md);justify-content:space-between;align-items:center;margin:var(--spacing-lg) 0 var(--spacing-md)}.grammar-nav .btn{flex:1 1 0;display:inline-flex;align-items:center;gap:8px;justify-content:center}.grammar-nav .btn[disabled]{opacity:.6;cursor:not-allowed}#grammar-view h2{position:static}.grammar-sidebar{flex:0 0 280px;border-right:1px solid var(--border-primary);padding-right:1.5rem}.grammar-sidebar h3{margin-top:0;margin-bottom:1rem;font-size:1.25rem;color:var(--text-primary)}.grammar-level-group h4{margin-top:1.5rem;margin-bottom:.5rem;font-size:1rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em}.grammar-sidebar ul{list-style:none;padding:0;margin:0}.grammar-topics-empty{padding:.75rem 0;color:var(--text-muted);font-size:.95rem}.grammar-topics-gated{display:grid;gap:.85rem;margin-top:.25rem;padding:.95rem;border:1px solid var(--border-primary);border-radius:14px;background:color-mix(in srgb,var(--bg-secondary) 88%,var(--bg-tertiary) 12%);color:var(--text-secondary)}.grammar-topics-gated p{margin:0;line-height:1.45}.grammar-sidebar-gated-actions{width:100%}.grammar-sidebar-gated-actions .auth-buttons-inline{align-items:stretch;gap:10px}.grammar-sidebar-gated-actions .auth-buttons-inline .email-signin-button,.grammar-sidebar-gated-actions .auth-buttons-inline .gsi-material-button{width:100%;min-width:0;max-width:none}.grammar-sidebar li a{display:block;padding:.5rem 1rem;border-radius:6px;text-decoration:none;color:var(--text-secondary);transition:background-color .2s,color .2s}.grammar-sidebar li a:hover{background-color:var(--bg-hover);color:var(--text-primary)}.grammar-sidebar li a.active{background-color:var(--primary-color-faded);color:var(--primary-color);font-weight:600}.grammar-sidebar li a.locked-topic-link{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.grammar-sidebar li a.locked-topic-link .lock-indicator{font-size:.85rem;color:var(--text-muted)}.grammar-content{flex:1;min-width:0}.grammar-loading-indicator{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 1rem;gap:1rem;color:var(--text-muted)}.grammar-loading-indicator .loading-spinner{width:32px;height:32px;border:3px solid var(--border-primary);border-top-color:var(--text-accent);border-radius:50%;animation:spin .8s linear infinite}.grammar-loading-indicator p{margin:0;font-size:.95rem}.grammar-topic header{margin-bottom:1.5rem;border-bottom:none;padding-bottom:0;position:static}.grammar-topic .topic-meta{display:flex;align-items:center;gap:.75rem;margin-bottom:.5rem}.grammar-topic .badge{font-size:.75rem;font-weight:700;padding:.2rem .6rem;border-radius:12px;color:#fff}.badge.level-a1{background-color:#4caf50}.badge.level-a2{background-color:#8bc34a}.badge.level-b1{background-color:#ffc107}.badge.level-b2{background-color:#ff9800}.badge.level-c1{background-color:#f44336}.grammar-topic .category{font-size:.9rem;color:var(--text-muted)}.grammar-topic h2{margin:0;font-size:2rem;color:var(--text-primary)}.grammar-topic .explanation{font-size:1.1rem;line-height:1.6;color:var(--text-secondary)}.grammar-topic h3{margin-top:2rem;margin-bottom:1rem;font-size:1.5rem;border-bottom:none;padding-bottom:0}.grammar-topic.loading,.grammar-topic.locked,.grammar-topic.error{min-height:160px}.grammar-topic.loading{display:flex;align-items:center;justify-content:center;text-align:center}.grammar-topic.loading p{font-size:1rem;color:var(--text-muted)}.grammar-topic .locked-message{margin-top:1.5rem;padding:1.25rem;background-color:var(--bg-secondary);border:none;border-radius:12px;font-size:1rem;color:var(--text-secondary)}.grammar-topic.error .locked-message{border-color:var(--error);color:var(--error)}.rules-list,.examples-list{list-style:none;padding-left:0;display:flex;flex-direction:column;gap:1rem}.rules-list li,.examples-list li{background-color:var(--bg-secondary);padding:1rem;border-radius:8px;border-left:4px solid var(--primary-color)}.rules-list li .example-text{display:block;margin-top:.5rem;color:var(--text-muted);font-style:italic}.examples-list .german-example{display:block;font-weight:600;color:var(--text-primary)}.examples-list .english-translation{display:block;font-size:1rem;color:var(--text-muted);margin-top:.25rem}.grammar-table-container{margin-top:1.5rem;overflow-x:auto;-webkit-overflow-scrolling:touch}.grammar-table{width:100%;border-collapse:collapse;margin-top:1rem}.grammar-table th,.grammar-table td{padding:.75rem 1rem;text-align:left;border-bottom:1px solid var(--border-primary);word-break:break-word;overflow-wrap:anywhere}.grammar-table th{background-color:var(--bg-secondary);font-weight:600}.exercise-block{margin-top:1.5rem;padding:1rem;background-color:var(--bg-secondary);border-radius:8px}.exercise-block h4{margin-top:0}.exercise-question{margin-bottom:1rem;display:flex;align-items:center;gap:1rem}.exercise-question p{margin:0}.blank{display:inline-block;width:80px;border-bottom:1px solid var(--text-primary);text-align:center;font-weight:600;color:var(--primary-color)}.blank.filled{border-bottom:none}.tips-section{margin-top:2rem;padding:1rem;background-color:var(--primary-color-faded);border-left:4px solid var(--primary-color);border-radius:8px}.tips-section h3{margin-top:0;border:none}.tips-section ul{padding-left:1.2rem;margin-bottom:0}@media (max-width: 768px){.grammar-container{flex-direction:column}.grammar-sidebar{border-right:none;border-bottom:1px solid var(--border-primary);padding-right:0;padding-bottom:1rem;margin-bottom:1rem}}@media (max-width: 900px){.grammar-container[data-mobile-view=list] .grammar-content,.grammar-container[data-mobile-view=detail] .grammar-sidebar{display:none}#grammar-view .page-title{margin-bottom:var(--spacing-md)}.grammar-container{background:transparent;border:none;border-radius:0;padding:0;box-shadow:none}.grammar-sidebar{border:none;padding:0;margin:0;max-height:none}.grammar-sidebar h3{font-size:.9rem;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);margin-bottom:.75rem}.grammar-level-selector{overflow-x:auto;padding-bottom:6px}.btn-level{border-radius:999px;padding:.5rem .9rem}.grammar-sidebar li a{background:var(--bg-primary);border:1px solid var(--border-primary);border-radius:14px;padding:.75rem 1rem;margin-bottom:8px;color:var(--text-primary);box-shadow:var(--shadow-sm)}.grammar-sidebar li a.active{background:linear-gradient(135deg,#10b9811f,#2d6df31f);border-color:color-mix(in srgb,var(--text-accent) 60%,transparent)}.grammar-container[data-mobile-view=detail] .grammar-content{background:transparent;border-radius:0;padding:0;border:none;box-shadow:none}}@media (max-width: 640px){.grammar-container{gap:var(--spacing-md)}.grammar-sidebar{max-height:none;overflow-y:visible;flex:0 0 auto;padding-bottom:0;margin-bottom:var(--spacing-md);border-bottom:none}}.related-topics-list{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:.75rem}.related-topics-list li a{display:block;background-color:var(--bg-tertiary);color:var(--text-accent);padding:.5rem 1rem;border-radius:15px;text-decoration:none;font-weight:500;transition:var(--transition)}.related-topics-list li a:hover{background-color:var(--bg-hover);color:var(--text-primary)}.flashcard-examples{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem}.flashcard-example-item{background-color:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:8px;padding:1rem;display:flex;flex-direction:column;gap:.75rem}.flashcard-front-example{font-weight:600}.flashcard-back-example{color:var(--success)}.flashcard-explanation-example{font-size:.9rem;color:var(--text-muted);border-top:1px solid var(--border-primary);padding-top:.75rem}.grammar-level-selector{display:flex;gap:.5rem;margin-bottom:1rem}.btn-level{background-color:var(--bg-tertiary);border:1px solid var(--border-primary);border-radius:6px;color:var(--text-secondary);cursor:pointer;font-size:.9rem;font-weight:500;padding:.5rem .75rem;transition:var(--transition)}.btn-level:hover{background-color:var(--bg-hover);color:var(--text-primary)}.btn-level.active{background-color:var(--text-accent);border-color:var(--text-accent);color:#fff;font-weight:600}.practice-section .tabs{display:flex;gap:8px;margin-bottom:12px;border-bottom:1px solid var(--border-primary)}.practice-section .tab{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:transparent;padding:10px 12px;cursor:pointer;color:var(--text-secondary);border-bottom:2px solid transparent;border-radius:0}.practice-section .tab.active{color:var(--text-accent);border-bottom-color:var(--text-accent);font-weight:600}.practice-section .tab-panel.hidden{display:none}.practice-controls{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;margin-bottom:12px}.practice-layout{display:grid;grid-template-columns:minmax(220px,280px) minmax(0,1fr);gap:var(--spacing-xl);align-items:start}@media (max-width: 1100px){.practice-layout{grid-template-columns:1fr}}.practice-section .stories-sidebar,.practice-section .story-viewer-container{transition:padding .2s ease}@media (max-width: 640px){.practice-section{padding:var(--spacing-sm) 0}.practice-controls{grid-template-columns:1fr}.practice-layout{gap:var(--spacing-md)}.practice-section .stories-sidebar{padding:var(--spacing-xs) var(--spacing-sm)}.practice-section .story-viewer-container{padding:0}}.practice-section .sticky-actions{margin-top:4px}.email-signin-button{width:100%;max-width:400px;display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:0 12px;height:40px;background-color:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border-primary);border-radius:20px;font-size:14px;font-weight:500;font-family:Roboto,arial,sans-serif;letter-spacing:.25px;cursor:pointer;transition:all .218s ease;box-sizing:border-box;margin-bottom:12px}.email-signin-button:hover{background-color:var(--bg-hover);box-shadow:0 1px 2px #3c40434d,0 1px 3px 1px #3c404326}.email-signin-button:active{background-color:var(--bg-active)}.email-signin-button i{width:18px;height:18px}html:is([data-theme=dark],[data-theme-effective=dark]) .email-signin-button{background-color:var(--bg-secondary);border-color:var(--border-secondary);color:var(--text-primary)}html:is([data-theme=dark],[data-theme-effective=dark]) .email-signin-button:hover{background-color:var(--bg-hover)}.landing-login-btn:hover{color:var(--text-accent)!important}.gsi-material-button{-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:#fff;background-image:none;border:1px solid #dadce0;border-radius:20px;box-sizing:border-box;color:#1f1f1f;cursor:pointer;font-family:Roboto,arial,sans-serif;font-size:14px;height:40px;letter-spacing:.25px;outline:none;overflow:hidden;padding:0 12px;position:relative;text-align:center;transition:background-color .218s,border-color .218s,box-shadow .218s;vertical-align:middle;white-space:nowrap;width:auto;min-width:-moz-min-content;min-width:min-content;display:inline-flex}.gsi-material-button.full-width,#auth-buttons .gsi-material-button{width:100%;max-width:400px}.gsi-material-button .gsi-material-button-icon{height:20px;width:20px;min-width:20px;margin-right:12px}.gsi-material-button .gsi-material-button-content-wrapper{display:flex;align-items:center;flex-direction:row;flex-wrap:nowrap;height:100%;justify-content:center;width:100%;position:relative}.gsi-material-button .gsi-material-button-contents{flex-grow:1;font-weight:500;overflow:hidden;text-overflow:ellipsis}.gsi-material-button .gsi-material-button-state{transition:opacity .218s,background-color .218s;position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;border-radius:20px;pointer-events:none}.gsi-material-button:disabled{cursor:default;background-color:#ffffff61}.gsi-material-button:disabled .gsi-material-button-state{background-color:#1f1f1f1f}.gsi-material-button:disabled .gsi-material-button-contents,.gsi-material-button:disabled .gsi-material-button-icon{opacity:38%}.gsi-material-button:not(:disabled):active .gsi-material-button-state,.gsi-material-button:not(:disabled):focus .gsi-material-button-state{background-color:#001d35;opacity:12%}.gsi-material-button:not(:disabled):hover{box-shadow:0 1px 2px #3c40434d,0 1px 3px 1px #3c404326}.gsi-material-button:not(:disabled):hover .gsi-material-button-state{background-color:#001d35;opacity:8%}html:is([data-theme=dark],[data-theme-effective=dark]) .gsi-material-button{background-color:#131314;border:1px solid #8e918f;color:#e3e3e3}html:is([data-theme=dark],[data-theme-effective=dark]) .gsi-material-button:disabled{background-color:#13131461;border-color:#8e918f1f}html:is([data-theme=dark],[data-theme-effective=dark]) .gsi-material-button:disabled .gsi-material-button-state{background-color:#e3e3e31f}html:is([data-theme=dark],[data-theme-effective=dark]) .gsi-material-button:not(:disabled):active .gsi-material-button-state,html:is([data-theme=dark],[data-theme-effective=dark]) .gsi-material-button:not(:disabled):focus .gsi-material-button-state{background-color:#fff;opacity:12%}html:is([data-theme=dark],[data-theme-effective=dark]) .gsi-material-button:not(:disabled):hover .gsi-material-button-state{background-color:#fff;opacity:8%}@media (prefers-color-scheme: dark){html:not([data-theme=light])[data-theme=system] .gsi-material-button,html:not([data-theme]) .gsi-material-button{background-color:#131314;border:1px solid #8e918f;color:#e3e3e3}html:not([data-theme=light])[data-theme=system] .gsi-material-button:not(:disabled):active .gsi-material-button-state,html:not([data-theme]) .gsi-material-button:not(:disabled):active .gsi-material-button-state,html:not([data-theme=light])[data-theme=system] .gsi-material-button:not(:disabled):focus .gsi-material-button-state,html:not([data-theme]) .gsi-material-button:not(:disabled):focus .gsi-material-button-state{background-color:#fff;opacity:12%}html:not([data-theme=light])[data-theme=system] .gsi-material-button:not(:disabled):hover .gsi-material-button-state,html:not([data-theme]) .gsi-material-button:not(:disabled):hover .gsi-material-button-state{background-color:#fff;opacity:8%}}#auth-buttons .gsi-material-button{margin-top:8px}#auth-modal-content *,#auth-modal-content :before,#auth-modal-content :after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}#auth-modal-content button{cursor:pointer;background-color:transparent;background-image:none;font-family:inherit;font-size:100%;font-weight:inherit;line-height:inherit;color:inherit;margin:0;padding:0;-webkit-appearance:button;-moz-appearance:button;appearance:button;text-transform:none}#auth-modal-content input,#auth-modal-content textarea{font-family:inherit;font-size:100%;font-weight:inherit;line-height:inherit;color:inherit;margin:0;-webkit-appearance:none;-moz-appearance:none;appearance:none}#auth-modal-content>div>div:not([class*=absolute]){position:relative;width:100%;max-width:28rem;border-radius:1.5rem;border:1px solid var(--border-secondary);background-color:var(--bg-secondary);padding:1.5rem;box-shadow:0 25px 50px -12px #00000040}#auth-modal-content button[aria-label=Close]{position:absolute;right:1rem;top:1rem;border-radius:.5rem;padding:.25rem .5rem;font-size:.875rem;color:var(--text-secondary);background:transparent;border:none;cursor:pointer}#auth-modal-content button[aria-label=Close]:hover{opacity:.8}#auth-modal-content input[type=email],#auth-modal-content input[type=password]{width:100%;border-radius:1rem;border:1px solid var(--border-secondary);background-color:var(--bg-tertiary);padding:.75rem 1rem;color:var(--text-primary);font-size:1rem}#auth-modal-content input[type=email]::-moz-placeholder,#auth-modal-content input[type=password]::-moz-placeholder{color:var(--text-secondary);opacity:.7}#auth-modal-content input[type=email]::placeholder,#auth-modal-content input[type=password]::placeholder{color:var(--text-secondary);opacity:.7}#auth-modal-content input[type=email]:focus,#auth-modal-content input[type=password]:focus{outline:none;box-shadow:0 0 0 2px var(--text-accent)}#auth-modal-content button.w-full[type=button],#auth-modal-content button.w-full[type=submit]{width:100%;border-radius:1rem;background-color:#1f1f1f;padding:.75rem 1rem;font-weight:500;color:#fff;border:none;cursor:pointer;box-shadow:0 1px 2px #0000000d}#auth-modal-content button.w-full[type=button]:hover,#auth-modal-content button.w-full[type=submit]:hover{opacity:.9}#auth-modal-content button.w-full[type=button]:disabled,#auth-modal-content button.w-full[type=submit]:disabled{cursor:not-allowed;opacity:.6}#auth-modal-content .auth-eye-btn{position:absolute;right:10px;top:50%;transform:translateY(-50%);height:36px;width:36px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;color:var(--text-secondary);background:transparent;border:1px solid transparent}#auth-modal-content .auth-eye-btn:hover{background:var(--bg-hover);color:var(--text-primary)}#auth-modal-content .auth-eye-btn:focus-visible{outline:none;box-shadow:0 0 0 2px var(--text-accent)}html:is([data-theme=dark],[data-theme-effective=dark]) #auth-modal-content button.w-full[type=button],html:is([data-theme=dark],[data-theme-effective=dark]) #auth-modal-content button.w-full[type=submit]{background-color:#fff;color:#1f1f1f}#auth-modal-content button[type=button]:not([aria-label=Close]):not(.gsi-material-button):not(.w-full){width:auto!important;background:transparent!important;padding:0!important;color:var(--text-accent);font-size:inherit;font-weight:500;border:none;box-shadow:none}#auth-modal-content .space-y-3>*+*{margin-top:.75rem}#auth-modal-content .space-y-4>*+*{margin-top:1rem}#auth-modal-content .mt-5{margin-top:1.25rem}#auth-modal-content .mt-2{margin-top:.5rem}#auth-modal-content .mt-1{margin-top:.25rem}#auth-modal-content .rounded-2xl{border-radius:1rem}#auth-modal-content .border-\[var\(--border-secondary\)\]{border:1px solid var(--border-secondary)}#auth-modal-content .bg-\[var\(--bg-tertiary\)\]{background-color:var(--bg-tertiary)}#auth-modal-content .px-4{padding-left:1rem;padding-right:1rem}#auth-modal-content .py-3{padding-top:.75rem;padding-bottom:.75rem}#auth-modal-content .h-px{height:1px}#auth-modal-content .flex-1{flex:1 1 0%}#auth-modal-content .gap-3{gap:.75rem}#auth-modal-content .items-center{align-items:center}#auth-modal-content .flex{display:flex}#auth-modal-content .text-3xl{font-size:1.875rem;line-height:2.25rem}#auth-modal-content .text-sm{font-size:.875rem;line-height:1.25rem}#auth-modal-content .text-xs{font-size:.75rem;line-height:1rem}#auth-modal-content .font-semibold{font-weight:600}#auth-modal-content .font-medium{font-weight:500}#auth-modal-content .auth-modal-message{border-radius:.75rem;border:1px solid transparent;padding:.75rem;font-size:.875rem}#auth-modal-content .auth-modal-message-title{font-weight:600;color:var(--text-primary)}#auth-modal-content .auth-modal-message-body{margin-top:.25rem;color:var(--text-secondary);line-height:1.45}#auth-modal-content .auth-modal-message--success{border-color:#10b98159;background:#10b9811a}#auth-modal-content .auth-modal-message--warning{border-color:#f59e0b59;background:#f59e0b1a}#auth-modal-content .auth-modal-message--error{border-color:#ef444459;background:#ef44441a}#auth-modal-content .auth-resend-wrap{margin-top:.75rem}#auth-modal-content .auth-resend-btn{width:100%;border-radius:.85rem;border:1px solid var(--border-secondary);background:var(--bg-tertiary);padding:.65rem .85rem;color:var(--text-primary);font-size:.875rem;font-weight:600;transition:border-color .2s ease,background-color .2s ease,opacity .2s ease}#auth-modal-content .auth-resend-btn:hover:not(:disabled){border-color:var(--text-accent)}#auth-modal-content .auth-resend-btn:disabled{cursor:not-allowed;opacity:.7}#auth-modal-content .auth-resend-hint{margin-top:.35rem;font-size:.75rem;color:var(--text-secondary)}#auth-modal-content .gsi-material-button{background-color:#fff;border:1px solid #dadce0;border-radius:20px}#auth-modal-content .gsi-material-button:hover{box-shadow:0 1px 2px #3c40434d,0 1px 3px 1px #3c404326;border-color:#c9ccd1}#auth-modal-content .gsi-material-button .gsi-material-button-state{border-radius:20px}html:is([data-theme=dark],[data-theme-effective=dark]) #auth-modal-content .gsi-material-button{background-color:#131314;border:1px solid #8e918f;color:#e3e3e3}html:is([data-theme=dark],[data-theme-effective=dark]) #auth-modal-content .gsi-material-button:hover{box-shadow:0 1px 2px #0006,0 1px 3px 1px #00000040;border-color:#a6a9a7}#auth-modal-content .gsi-material-button .gsi-material-button-content-wrapper{justify-content:center;padding-left:44px;padding-right:16px}#auth-modal-content .gsi-material-button .gsi-material-button-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);margin-right:0}.context-origin-highlight{background-color:var(--tts-highlight-bg);border-radius:var(--border-radius-sm);transition:background-color .3s ease,box-shadow .3s ease;box-shadow:0 0 0 1px #2563eb33}html:is([data-theme=dark],[data-theme-effective=dark]){--tts-highlight-bg: rgba(191, 219, 254, .32)}html:is([data-theme=dark],[data-theme-effective=dark]) .context-origin-highlight{box-shadow:0 0 0 1px #93c5fd59}html:is([data-theme=dark],[data-theme-effective=dark]) .context-origin-highlight .story-vocab[data-story-type=supplied]{color:#bfdbfe;border-bottom-color:#bfdbfeb8}html:is([data-theme=dark],[data-theme-effective=dark]) .context-origin-highlight .story-vocab[data-story-type=supplied]:hover,html:is([data-theme=dark],[data-theme-effective=dark]) .context-origin-highlight .story-vocab[data-story-type=supplied].story-vocab-active,html:is([data-theme=dark],[data-theme-effective=dark]) .context-origin-highlight .story-vocab[data-story-type=supplied]:focus-visible{color:#a5f3fc;border-bottom-color:#a5f3fceb}.example-origin-link{background:none;border:none;padding:0;font:inherit;color:var(--text-accent);cursor:pointer;text-decoration:underline}.example-origin-link:hover{text-decoration:none}.user-profile-wrapper{position:relative;width:100%}.user-profile-trigger{display:flex;align-items:center;gap:var(--spacing-sm);width:100%;padding:var(--spacing-sm);background:transparent;border:1px solid transparent;border-radius:var(--border-radius);cursor:pointer;transition:var(--transition);color:var(--text-primary);text-align:left}.user-profile-trigger:hover,.user-profile-trigger[aria-expanded=true]{background:var(--bg-hover)}.user-avatar-circle{width:36px;height:36px;border-radius:50%;background:var(--bg-tertiary);display:flex;align-items:center;justify-content:center;color:var(--text-secondary);flex-shrink:0}.user-details{flex:1;display:flex;flex-direction:column;overflow:hidden}.user-email-text{font-size:.9rem;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-plan-text{font-size:.75rem;color:var(--text-secondary)}.user-chevron{width:16px;height:16px;color:var(--text-muted);transition:transform .2s}.user-profile-trigger[aria-expanded=true] .user-chevron{transform:rotate(180deg)}.user-popup-menu{position:absolute;bottom:100%;left:0;right:0;margin-bottom:var(--spacing-sm);background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--border-radius);box-shadow:var(--shadow-lg);padding:var(--spacing-xs);z-index:50;animation:slideUpFade .2s ease-out}@keyframes slideUpFade{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.popup-menu-item{display:flex;align-items:center;gap:var(--spacing-sm);width:100%;padding:var(--spacing-sm);border:none;background:transparent;color:var(--text-primary);font-size:.9rem;text-align:left;cursor:pointer;border-radius:var(--border-radius-sm);transition:var(--transition)}.popup-menu-item:hover{background:var(--bg-hover)}.popup-menu-item.danger{color:var(--error)}.popup-menu-item.danger:hover{background:#fef2f2}.popup-divider{height:1px;background:var(--border-primary);margin:var(--spacing-xs) 0}html[data-theme=dark] .popup-menu-item.danger:hover{background:#ef44441a}.account-card{transition:transform .2s ease,box-shadow .2s ease}.account-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.account-value{font-family:monospace}@media (max-width: 900px){body{padding-top:var(--mobile-header-height, 48px)}header{position:fixed;top:0;left:0;right:0;width:100%;flex-wrap:wrap;align-items:center;z-index:1000}header .controls{display:none!important}header .header-actions{display:flex!important}header #theme-toggle,header .theme-toggle{display:none!important}header .settings-panel{position:absolute;top:100%;left:0;right:0;background:var(--bg-secondary);border-bottom:1px solid var(--border-primary);box-shadow:var(--shadow-md);padding:var(--spacing-lg);display:flex;flex-direction:column;gap:var(--spacing-lg);transform:translateY(-10px);opacity:0;visibility:hidden;pointer-events:none;transition:transform .25s ease,opacity .25s ease,visibility .25s ease;z-index:99}header .settings-panel.open{transform:translateY(0);opacity:1;visibility:visible;pointer-events:auto}header .mobile-topnav{display:flex!important}}@media (min-width: 901px){body{padding-top:0}header{position:sticky;top:0;flex-wrap:nowrap;z-index:100}header .controls{display:flex}header .header-actions{display:none!important}header .settings-panel{display:none!important}header .mobile-topnav{display:none!important}}body.tour-active{overflow:hidden}.tour-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10000;pointer-events:none;opacity:0;transition:opacity .3s ease}.tour-overlay.show{opacity:1;pointer-events:auto}.tour-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none}.tour-spotlight{position:absolute;border-radius:var(--border-radius-md);box-shadow:0 0 0 9999px #0009;transition:all .3s ease;pointer-events:none}.tour-overlay.has-highlight .tour-spotlight{box-shadow:0 0 0 9999px #0009,0 0 0 4px var(--accent-primary),0 0 20px 8px #2563eb4d}.tour-tooltip{position:fixed;z-index:10001;width:320px;max-width:calc(100vw - 24px);padding:20px;background:var(--bg-primary);border:1px solid var(--border-primary);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-lg);opacity:0;transform:scale(.95);transition:opacity .3s ease,transform .3s ease}.tour-tooltip.show{opacity:1;transform:scale(1)}.tour-tooltip:before{content:"";position:absolute;width:12px;height:12px;background:var(--bg-primary);border:1px solid var(--border-primary);transform:rotate(45deg)}.tour-tooltip.position-right:before{left:-7px;top:50%;margin-top:-6px;border-right:none;border-top:none}.tour-tooltip.position-left:before{right:-7px;top:50%;margin-top:-6px;border-left:none;border-bottom:none}.tour-tooltip.position-bottom:before{top:-7px;left:50%;margin-left:-6px;border-bottom:none;border-right:none}.tour-tooltip.position-top:before{bottom:-7px;left:50%;margin-left:-6px;border-top:none;border-left:none}.tour-close{position:absolute;top:12px;right:12px;width:28px;height:28px;border:none;background:transparent;font-size:1.4rem;color:var(--text-secondary);cursor:pointer;border-radius:var(--border-radius-sm);transition:var(--transition);display:flex;align-items:center;justify-content:center}.tour-close:hover{background:var(--bg-hover);color:var(--text-primary)}.tour-title{margin:0 0 8px;font-size:1.1rem;font-weight:600;color:var(--text-primary);padding-right:28px}.tour-description{margin:0 0 16px;font-size:.95rem;color:var(--text-secondary);line-height:1.5}.tour-footer{display:flex;justify-content:space-between;align-items:center;gap:12px}.tour-progress{font-size:.85rem;color:var(--text-muted)}.tour-actions{display:flex;gap:8px}.tour-btn{padding:8px 16px;border-radius:var(--border-radius-sm);font-size:.9rem;font-weight:500;cursor:pointer;transition:var(--transition)}.tour-btn-skip{background:transparent;border:none;color:var(--text-secondary)}.tour-btn-skip:hover{color:var(--text-primary);text-decoration:underline}.tour-btn-primary{background:var(--accent-primary);color:var(--text-on-accent);border:none}.tour-btn-primary:hover{background:var(--accent-primary-dark, #1f4fd8)}html:is([data-theme=dark],[data-theme-effective=dark]) .tour-tooltip{box-shadow:0 8px 32px #00000080}html:is([data-theme=dark],[data-theme-effective=dark]) .tour-backdrop{background:transparent}.tour-target-active{position:relative;z-index:10002}@media (max-width: 900px){.tour-tooltip{width:calc(100vw - 32px);max-width:360px;padding:16px}.tour-title{font-size:1rem}.tour-description{font-size:.9rem}.tour-footer{flex-wrap:wrap}.tour-progress{order:1;width:100%;text-align:center;margin-top:8px}.tour-actions{flex:1;justify-content:space-between}}#stories-view,#practice-view,#grammar-view{--surface-1: var(--bg-secondary);--surface-2: var(--bg-primary);--surface-border: var(--border-primary);--surface-border-soft: color-mix( in srgb, var(--border-primary) 85%, transparent );--surface-shadow: none;--surface-shadow-soft: none}html:is([data-theme=dark],[data-theme-effective=dark]) #stories-view,html:is([data-theme=dark],[data-theme-effective=dark]) #practice-view,html:is([data-theme=dark],[data-theme-effective=dark]) #grammar-view{--surface-1: var(--bg-secondary);--surface-2: var(--bg-primary);--surface-border: var(--border-primary);--surface-border-soft: rgba(255, 255, 255, .08);--surface-shadow: none;--surface-shadow-soft: none}#stories-view .page-title h2,#practice-view .page-title h2,#grammar-view .page-title h2{background:none;-webkit-text-fill-color:unset;color:var(--text-primary)}#stories-view .page-title,#practice-view .page-title,#grammar-view .page-title{padding-bottom:0;border-bottom:none}#stories-view .stories-controls-card{background:transparent;border:1px solid var(--surface-border-soft);border-radius:12px;box-shadow:none;padding:var(--spacing-lg)}#stories-view .stories-controls-actions .btn{border-radius:10px;height:40px;padding:0 14px;box-shadow:none;display:inline-flex;align-items:center;justify-content:center;line-height:1;gap:8px}#stories-view .stories-controls-actions .btn span{line-height:1}#stories-view .stories-controls-actions .btn i,#stories-view .stories-controls-actions .btn svg{vertical-align:middle}#stories-view .stories-controls-actions .btn.btn-primary{border:1px solid transparent}#stories-view .stories-controls-actions .btn.btn-secondary{background:transparent;border:1px solid var(--surface-border-soft)}html[data-theme-effective=light] #stories-view .stories-controls-actions .btn.btn-primary{background:#111;color:#fff}html[data-theme-effective=dark] #stories-view .stories-controls-actions .btn.btn-primary{background:#fff;color:#111}#stories-view .stories-sidebar,#practice-view .stories-sidebar{background:transparent;border:1px solid var(--surface-border-soft);border-radius:8px;box-shadow:none;padding:12px}#stories-view .stories-list,#practice-view .stories-list{gap:0}#stories-view .story-list-item,#practice-view .story-list-item{background:transparent;border:none;border-bottom:1px solid var(--surface-border-soft);border-radius:6px;box-shadow:none;padding:14px 10px}#stories-view .story-list-item:last-child,#practice-view .story-list-item:last-child{border-bottom:none}#stories-view .story-list-item:hover,#practice-view .story-list-item:hover{background:var(--bg-hover);border-color:var(--surface-border-soft)}#stories-view .story-list-item.active,#practice-view .story-list-item.active{background:color-mix(in srgb,var(--text-accent) 6%,transparent)}#stories-view .story-list-item.preview-item,#practice-view .story-list-item.preview-item{background:color-mix(in srgb,var(--text-accent) 4%,transparent)}#stories-view .story-list-title,#practice-view .story-list-title{font-size:.98rem;font-weight:600;letter-spacing:.01em}#stories-view .story-list-summary,#practice-view .story-list-summary{margin-top:6px;font-size:.9rem;line-height:1.45;color:var(--text-secondary)}#stories-view .story-list-meta,#practice-view .story-list-meta,#stories-view .story-list-footer,#practice-view .story-list-footer{font-size:.78rem;color:var(--text-muted)}#stories-view .story-viewer-container,#practice-view .story-viewer-container{background:transparent;border:none;border-radius:0;box-shadow:none;padding:0}#stories-view .story-viewer,#practice-view .story-viewer{padding:0}#stories-view .story-empty,#practice-view .story-empty,#stories-view .story-generation,#practice-view .story-generation{background:transparent;border:1px dashed var(--surface-border-soft);border-radius:8px;box-shadow:none}#stories-view .story-header,#practice-view .story-header{border:1px solid var(--surface-border-soft);border-radius:8px;background:var(--surface-2);padding:10px 12px}#stories-view .story-title-block h3,#practice-view .story-title-block h3{font-size:1.45rem}#stories-view .story-body,#practice-view .story-body{max-width:none;width:100%;margin:0;padding:0;box-sizing:border-box;font-size:16.5px;line-height:1.7;min-width:0;overflow-wrap:anywhere;word-break:break-word}#stories-view .story-viewer,#practice-view .story-viewer,#stories-view .story-viewer-container,#practice-view .story-viewer-container{min-width:0}#stories-view .story-body p,#practice-view .story-body p,#stories-view .story-body li,#practice-view .story-body li,#stories-view .story-body .story-vocab,#practice-view .story-body .story-vocab{max-width:100%;overflow-wrap:anywhere;word-break:break-word}#stories-view .story-section,#practice-view .story-section{border-top:none}#stories-view .bilingual-pair,#practice-view .bilingual-pair{padding-block:.55rem .7rem}#stories-view .bilingual-pair+.bilingual-pair,#practice-view .bilingual-pair+.bilingual-pair{border-top:1px solid var(--surface-border-soft)}#stories-view .bilingual-german,#practice-view .bilingual-german{margin:0}#stories-view .bilingual-translation,#practice-view .bilingual-translation{margin:.32rem 0 0;padding:.42rem .62rem;border-inline-start:3px solid var(--accent-color, var(--primary-color));border-radius:0 8px 8px 0;background:var(--bg-tertiary);color:var(--text-primary);font-size:.98em;line-height:1.58;pointer-events:none}#stories-view .story-section+.story-section,#practice-view .story-section+.story-section{border-top:1px solid var(--surface-border-soft);padding-top:var(--spacing-md)}#stories-view .story-actions,#practice-view .story-actions{background:transparent;border:1px solid var(--surface-border-soft);border-radius:8px;padding:4px;box-shadow:none}#stories-view .story-actions .btn,#practice-view .story-actions .btn{height:32px;min-width:32px;border-radius:6px;font-size:.85rem}#stories-view .story-audio-controls,#practice-view .story-audio-controls{border-right:1px solid var(--surface-border-soft);padding-right:8px;margin-right:4px}#practice-view{--pc-surface: color-mix( in srgb, var(--surface-1) 94%, var(--bg-secondary) 6% );--pc-surface-alt: color-mix( in srgb, var(--surface-2) 90%, var(--surface-1) 10% );--pc-border: color-mix(in srgb, var(--surface-border) 84%, transparent);--pc-border-soft: color-mix( in srgb, var(--surface-border-soft) 88%, transparent );--pc-text-muted: color-mix( in srgb, var(--text-muted) 84%, var(--text-secondary) 16% );--pc-focus: color-mix(in srgb, var(--text-accent) 18%, transparent)}#practice-view .tabs{gap:8px;padding:0 0 10px;border-bottom:1px solid var(--surface-border-soft);overflow-x:auto;white-space:nowrap;-webkit-overflow-scrolling:touch;flex-wrap:nowrap;scrollbar-width:none;-ms-overflow-style:none}#practice-view .tabs::-webkit-scrollbar{height:0}#practice-view .tab{padding:6px 12px;border-radius:999px;flex:0 0 auto;white-space:nowrap;border:1px solid transparent;color:var(--pc-text-muted);font-size:.9rem;line-height:1.2}#practice-view .tab.active{border-bottom:1px solid transparent;border-color:color-mix(in srgb,var(--text-accent) 35%,var(--pc-border));background:color-mix(in srgb,var(--text-accent) 8%,var(--pc-surface));color:var(--text-primary);font-weight:600}#practice-view .practice-controls{max-width:none;border:1px solid var(--pc-border);border-radius:12px;padding:8px 10px;gap:4px;margin-bottom:10px;background:var(--pc-surface);box-shadow:none}#practice-view .practice-controls .control-group{border:none;border-radius:0;padding:6px 0;background:transparent;display:flex;flex-direction:column;gap:4px;box-shadow:none}#practice-view .practice-controls .control-group:focus-within{background:color-mix(in srgb,var(--text-accent) 3%,transparent)}#practice-view .practice-controls .control-group>label:not(.checkbox){font-size:.69rem;letter-spacing:.045em;text-transform:uppercase;color:var(--pc-text-muted)}#practice-view .practice-controls input[type=text],#practice-view .practice-controls select{width:100%;min-width:0;box-sizing:border-box;border-radius:8px;border:1px solid var(--pc-border-soft);background:color-mix(in srgb,var(--bg-primary) 86%,var(--pc-surface) 14%);min-height:33px;padding:6px 8px;font-size:.9rem;line-height:1.2;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;transition:border-color .16s ease,background-color .16s ease,box-shadow .16s ease}#practice-view .practice-controls input[type=text]:focus,#practice-view .practice-controls select:focus{border-color:color-mix(in srgb,var(--text-accent) 56%,var(--pc-border));box-shadow:0 0 0 2px var(--pc-focus);background:color-mix(in srgb,var(--bg-primary) 92%,var(--pc-surface) 8%)}#practice-view .practice-controls .sticky-actions .btn{min-height:34px;border-radius:9px;padding-inline:11px;box-shadow:none}#practice-view .practice-controls .control-group>label.checkbox{display:inline-flex;align-items:center;gap:8px;font-size:.82rem;color:var(--text-secondary);line-height:1.3}#practice-view .practice-controls .control-group>label.checkbox input[type=checkbox]{-moz-appearance:none;appearance:none;-webkit-appearance:none;width:16px;height:16px;margin:0;border-radius:4px;border:1px solid var(--pc-border);background:color-mix(in srgb,var(--bg-primary) 92%,transparent);position:relative;flex-shrink:0;transition:border-color .16s ease,background-color .16s ease,box-shadow .16s ease}#practice-view .practice-controls .control-group>label.checkbox input[type=checkbox]:checked{border-color:color-mix(in srgb,var(--text-accent) 60%,var(--pc-border));background:color-mix(in srgb,var(--text-accent) 80%,#ffffff)}#practice-view .practice-controls .control-group>label.checkbox input[type=checkbox]:checked:after{content:"";position:absolute;left:4px;top:1px;width:4px;height:8px;border:solid #ffffff;border-width:0 2px 2px 0;transform:rotate(45deg)}#practice-view .practice-controls .control-group>label.checkbox input[type=checkbox]:focus-visible{box-shadow:0 0 0 2px var(--pc-focus)}#practice-view .practice-controls.audio-controls details.audio-control-group{border-radius:10px;border:1px solid var(--pc-border-soft);background:var(--pc-surface-alt);box-shadow:none}#practice-view .practice-controls.audio-controls details.audio-control-group summary{padding:9px 10px;border-bottom:1px solid transparent;background:var(--pc-surface-alt)}#practice-view .practice-controls.audio-controls details.audio-control-group summary:after{content:none}#practice-view .practice-controls.audio-controls details.audio-control-group[open] summary{border-bottom-color:var(--pc-border-soft)}#practice-view .practice-controls.audio-controls .audio-section-label h4{font-size:.86rem;letter-spacing:.01em}#practice-view .practice-controls.audio-controls .audio-section-label i[data-lucide],#practice-view .practice-controls.audio-controls .audio-section-label svg{width:14px;height:14px;color:color-mix(in srgb,var(--text-accent) 80%,var(--text-secondary) 20%)}#practice-view .practice-controls.audio-controls .audio-section-chevron{width:15px;height:15px;color:var(--pc-text-muted)}#practice-view .practice-controls.audio-controls .audio-control-grid{padding:6px 8px;gap:8px}#practice-view .practice-controls.audio-controls .audio-voices-card,#practice-view .practice-controls.audio-controls .audio-style-card{border:none;border-radius:0;background:transparent;padding:0}.generation-gate-notice{border:1px solid var(--pc-border-soft);background:var(--pc-surface-alt);border-radius:10px;padding:10px;display:flex;flex-direction:column;gap:8px;box-shadow:none}.generation-gate-notice.is-warning{border-color:color-mix(in srgb,var(--warning, #f59e0b) 42%,var(--pc-border-soft));background:color-mix(in srgb,var(--warning, #f59e0b) 6%,var(--pc-surface))}.generation-gate-notice-title{font-weight:600;color:var(--text-primary);line-height:1.35}.generation-gate-notice-subtitle{color:var(--text-secondary);font-size:.92rem;line-height:1.4}.generation-gate-actions{display:flex;flex-wrap:wrap;gap:8px}#practice-view .practice-controls .generation-gate-notice{grid-column:1 / -1}#practice-view .audio-presets{margin-bottom:10px;background:var(--pc-surface);border:1px solid var(--pc-border);border-radius:12px;padding:8px 10px;box-shadow:none}#practice-view .audio-presets .audio-presets-heading{margin-bottom:6px}#practice-view .audio-presets .audio-presets-heading strong{font-size:.77rem;letter-spacing:.045em;text-transform:uppercase;color:var(--pc-text-muted)}#practice-view .audio-presets .audio-presets-list{display:flex;flex-wrap:wrap;gap:6px}#practice-view .audio-presets .btn-sm{border-radius:999px;border-color:var(--pc-border-soft);background:var(--pc-surface-alt);min-height:28px;padding:0 9px;font-size:.79rem;box-shadow:none;transition:transform .14s ease,border-color .18s ease,background-color .18s ease}#practice-view .audio-presets .btn-sm:hover{transform:translateY(-.5px);border-color:color-mix(in srgb,var(--text-accent) 42%,var(--pc-border));background:color-mix(in srgb,var(--text-accent) 8%,var(--pc-surface-alt))}@media (max-width: 900px){#practice-view .practice-controls{border-radius:10px;padding:7px 8px}#practice-view .tabs{padding-bottom:8px}#practice-view .practice-controls .control-group{display:grid;grid-template-columns:minmax(90px,38%) minmax(0,1fr);align-items:center;-moz-column-gap:8px;column-gap:8px;row-gap:0;padding:6px 0}#practice-view .practice-controls .control-group>label:not(.checkbox){grid-column:1;margin:0;font-size:.72rem;letter-spacing:.01em;text-transform:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#practice-view .practice-controls .control-group>select,#practice-view .practice-controls .control-group>input[type=text]{grid-column:2}#practice-view .practice-controls .control-group>label.checkbox{grid-column:1 / -1}#practice-view .practice-controls.audio-controls .audio-voices-card .radio-group,#practice-view .practice-controls.audio-controls .audio-style-card .radio-group{gap:8px}#practice-view .practice-controls.audio-controls .audio-voices-card .radio-group>div,#practice-view .practice-controls.audio-controls .audio-style-card .radio-group>div{display:grid;grid-template-columns:minmax(90px,38%) minmax(0,1fr);align-items:center;gap:8px;min-width:0;width:100%}#practice-view .practice-controls.audio-controls .audio-voices-card .radio-group>div label,#practice-view .practice-controls.audio-controls .audio-style-card .radio-group>div label{min-width:0;font-size:.72rem;letter-spacing:.01em;text-transform:none;color:var(--pc-text-muted)}#practice-view .practice-controls.audio-controls .audio-voices-card .radio-group>div select,#practice-view .practice-controls.audio-controls .audio-style-card .radio-group>div select{min-width:0;width:100%;box-sizing:border-box}}@media (max-width: 640px){#practice-view .practice-controls .control-group{padding:5px 0}#practice-view .practice-controls .sticky-actions .btn{min-height:33px}}#grammar-view .grammar-container{gap:var(--spacing-lg);background:transparent;border:none;padding:0;box-shadow:none}#grammar-view .grammar-sidebar,#grammar-view .grammar-content{background:transparent;border:none;border-radius:0;padding:0;box-shadow:none}#grammar-view .grammar-sidebar{border-right:1px solid var(--surface-border-soft);padding-right:var(--spacing-md);margin-right:var(--spacing-md)}#grammar-view .grammar-sidebar li a{border-radius:6px;padding:6px 8px}#grammar-view .grammar-sidebar li a.active{background:color-mix(in srgb,var(--text-accent) 6%,transparent);color:var(--text-primary);border:none;box-shadow:inset 2px 0 0 var(--text-accent)}#grammar-view .grammar-level-selector{background:transparent;border-radius:0;padding:4px}#grammar-view .btn-level{border-radius:6px;padding:6px 10px}#grammar-view .grammar-topic header{border:1px solid var(--surface-border-soft);border-radius:8px;background:var(--surface-2);padding:10px 12px}#grammar-view .grammar-topic h2{font-size:1.6rem}#grammar-view .grammar-nav{border:1px solid var(--surface-border-soft);border-radius:8px;padding:4px;box-shadow:none}@media (max-width: 900px){#stories-view .story-body,#practice-view .story-body{max-width:none;margin:0;padding-block:0;box-sizing:border-box}#stories-view .story-viewer-container,#practice-view .story-viewer-container{padding:0;border-radius:0}#stories-view .stories-sidebar,#practice-view .stories-sidebar{padding:8px;border-radius:6px}#practice-view .tabs{overflow-x:auto;white-space:nowrap}#grammar-view .grammar-sidebar,#grammar-view .grammar-content{padding:0}#grammar-view .grammar-sidebar{border-right:none;padding-right:0;margin-right:0}}@media (max-width: 600px){#stories-view .story-actions,#practice-view .story-actions{padding:6px}#practice-view .tabs{gap:8px}#practice-view .tab{font-size:.86rem}#stories-view .mobile-detail-header,#practice-view .mobile-detail-header,#grammar-view .mobile-detail-header{background:transparent;border:1px solid var(--surface-border-soft);border-radius:10px;box-shadow:none}}.horizontal-scroll-affordance{--scroll-affordance-bg: var(--bg-primary);--scroll-cue-fade-opaque: 96%;--scroll-cue-fade-mid: 52%;--scroll-cue-chevron-color: color-mix( in srgb, var(--text-secondary) 92%, var(--text-primary) 8% );--scroll-cue-chevron-shadow: 0 1px 2px color-mix(in srgb, #000000 18%, transparent)}#practice-view .tabs.horizontal-scroll-affordance{--scroll-affordance-bg: var(--pc-surface)}@media (max-width: 900px){.horizontal-scroll-affordance{position:relative;isolation:isolate}.horizontal-scroll-affordance:before,.horizontal-scroll-affordance:after{position:absolute;right:0;opacity:0;pointer-events:none;transition:opacity .16s ease}.horizontal-scroll-affordance:before{content:"";top:0;bottom:0;width:22px;background:linear-gradient(to left,color-mix(in srgb,var(--scroll-affordance-bg) var(--scroll-cue-fade-opaque),transparent),color-mix(in srgb,var(--scroll-affordance-bg) var(--scroll-cue-fade-mid),transparent) 42%,transparent);z-index:2}.horizontal-scroll-affordance:after{content:"›";top:50%;right:4px;transform:translateY(-50%);color:var(--scroll-cue-chevron-color);font-size:17px;font-weight:600;line-height:1;text-shadow:var(--scroll-cue-chevron-shadow);z-index:3}.horizontal-scroll-affordance.show-right-cue:before,.horizontal-scroll-affordance.show-right-cue:after{opacity:1}#practice-view .tabs.horizontal-scroll-affordance{padding-left:8px;padding-right:14px}#practice-view .tab:not(.active){min-width:-moz-max-content;min-width:max-content;border-color:var(--pc-border-soft);background:color-mix(in srgb,var(--pc-surface-alt) 78%,transparent)}}@media (max-width: 768px){.vocab-actions.horizontal-scroll-affordance{padding-left:8px;padding-right:14px}.vocab-actions.horizontal-scroll-affordance .btn{min-width:-moz-max-content;min-width:max-content}}html[data-theme-effective=light] .horizontal-scroll-affordance{--scroll-cue-fade-opaque: 98%;--scroll-cue-fade-mid: 72%;--scroll-cue-chevron-color: color-mix( in srgb, #000000 74%, var(--text-primary) 26% );--scroll-cue-chevron-shadow: 0 1px 2px color-mix(in srgb, #000000 14%, transparent)}html[data-theme-effective=light] .horizontal-scroll-affordance:before{background:linear-gradient(to left,color-mix(in srgb,#ffffff 98%,transparent),color-mix(in srgb,#ffffff 72%,transparent) 42%,transparent)}html[data-theme-effective=light] #practice-view .tab:not(.active){border-color:color-mix(in srgb,var(--pc-border) 68%,transparent);background:color-mix(in srgb,#ffffff 84%,var(--pc-surface-alt) 16%)}.word-card-wrapper{display:flex;flex-direction:column}.notes-toggle-btn{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border:none;background:transparent;color:var(--text-muted);cursor:pointer;border-radius:6px;transition:color .18s,background .18s;z-index:2;margin-right:4px}.notes-toggle-btn:hover{color:var(--text-accent);background:var(--bg-tertiary)}.notes-toggle-btn.active,.notes-toggle-btn.has-notes{color:var(--text-accent)}.notes-toggle-btn svg{width:16px;height:16px;pointer-events:none}.word-notes-panel{background:var(--bg-secondary);border:1px solid var(--border-primary);border-top:none;border-radius:0 0 var(--border-radius) var(--border-radius);padding:14px 16px;animation:wn-slide-down .2s ease}@keyframes wn-slide-down{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.wn-inner{display:flex;flex-direction:column;gap:16px}.wn-section{display:flex;flex-direction:column;gap:8px}.wn-section-header{display:flex;align-items:center;justify-content:space-between;gap:8px}.wn-label{display:flex;align-items:center;gap:6px;font-size:.78rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted)}.wn-label svg{width:13px;height:13px;flex-shrink:0}.wn-generate-btn{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;font-size:.82rem;font-weight:500;border:1px solid var(--border-primary);border-radius:6px;background:var(--bg-primary);color:var(--text-secondary);cursor:pointer;transition:all .18s;white-space:nowrap}.wn-generate-btn:hover:not(:disabled){border-color:var(--text-accent);color:var(--text-accent);background:var(--bg-secondary)}.wn-generate-btn:disabled{opacity:.5;cursor:not-allowed}.wn-generate-btn svg{width:13px;height:13px}.wn-ai-content{font-size:.92rem;line-height:1.6;color:var(--text-primary);min-height:32px}.wn-ai-content.wn-empty{color:var(--text-muted)}.wn-ai-content p{margin:0 0 6px}.wn-ai-content ul,.wn-ai-content ol{padding-left:18px;margin:4px 0}.wn-ai-content li{margin-bottom:4px}.wn-ai-content strong{color:var(--text-primary);font-weight:600}.wn-ai-content code{background:var(--bg-tertiary);border-radius:3px;padding:1px 4px;font-family:var(--font-mono, monospace);font-size:.88em}.wn-empty-text{font-style:italic;color:var(--text-muted);font-size:.88rem}.wn-streaming-cursor{display:inline-block;width:2px;height:1em;background:var(--text-accent);vertical-align:text-bottom;animation:wn-blink .7s step-end infinite;border-radius:1px;margin-left:2px}@keyframes wn-blink{0%,to{opacity:1}50%{opacity:0}}.wn-delete-ai-btn{align-self:flex-start;display:inline-flex;align-items:center;gap:4px;padding:3px 8px;font-size:.78rem;border:none;border-radius:5px;background:transparent;color:var(--text-muted);cursor:pointer;transition:color .15s,background .15s}.wn-delete-ai-btn:hover{color:var(--color-error, #e53e3e);background:var(--bg-tertiary)}.wn-delete-ai-btn svg{width:12px;height:12px}.wn-user-section{border-top:1px solid var(--border-primary);padding-top:12px}.wn-user-textarea{width:100%;box-sizing:border-box;padding:8px 10px;font-size:.9rem;line-height:1.5;border:1px solid var(--border-primary);border-radius:6px;background:var(--bg-primary);color:var(--text-primary);resize:vertical;min-height:68px;transition:border-color .18s;font-family:inherit}.wn-user-textarea:focus{outline:none;border-color:var(--text-accent)}.wn-user-actions{display:flex;gap:8px;flex-wrap:wrap}.wn-save-user-btn,.wn-delete-note-btn{display:inline-flex;align-items:center;gap:5px;padding:5px 12px;font-size:.83rem;font-weight:500;border-radius:6px;cursor:pointer;transition:all .18s;border:1px solid var(--border-primary)}.wn-save-user-btn{background:var(--text-accent);color:var(--text-on-accent);border-color:var(--text-accent)}.wn-save-user-btn:hover:not(:disabled){filter:brightness(1.1)}.wn-save-user-btn:disabled{opacity:.5;cursor:not-allowed}.wn-delete-note-btn{background:transparent;color:var(--text-muted)}.wn-delete-note-btn:hover{color:var(--color-error, #e53e3e);background:var(--bg-tertiary)}.wn-save-user-btn svg,.wn-delete-note-btn svg{width:13px;height:13px}html:is([data-theme=dark],[data-theme-effective=dark]) .wn-save-user-btn{background:#93c5fd;border-color:#bfdbfe;color:#0c2347;box-shadow:0 2px 8px #0000003d}html:is([data-theme=dark],[data-theme-effective=dark]) .wn-save-user-btn:hover:not(:disabled){background:#bfdbfe;color:#0c2347;filter:none}.wn-spinner{display:flex;justify-content:center;padding:16px}.gp-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:10px}.grammar-point-item{position:relative;display:flex;align-items:flex-start;gap:8px;padding:10px 12px;background:var(--bg-primary);border:1px solid var(--border-primary);border-radius:8px;transition:border-color .18s}.grammar-point-item:hover{border-color:var(--border-secondary)}.gp-body{flex:1;min-width:0;font-size:.93rem;line-height:1.55;color:var(--text-primary)}.gp-body strong{display:block;font-weight:600;color:var(--text-primary);margin-bottom:2px}.gp-explanation{color:var(--text-secondary);font-size:.89rem}mark.gp-keyword{background:color-mix(in srgb,var(--text-accent) 15%,transparent);color:var(--text-accent);border-radius:3px;padding:0 3px;font-weight:600;font-style:normal}.gp-save-btn{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:30px;height:30px;padding:0;border:1px solid var(--border-primary);border-radius:6px;background:var(--bg-secondary);color:var(--text-muted);cursor:pointer;transition:all .18s}.gp-save-btn:hover{color:var(--text-accent);border-color:var(--text-accent);background:color-mix(in srgb,var(--text-accent) 8%,var(--bg-secondary))}.gp-save-btn.saved{color:var(--text-accent);border-color:var(--text-accent);background:color-mix(in srgb,var(--text-accent) 10%,var(--bg-secondary))}.gp-save-btn svg{width:15px;height:15px;pointer-events:none}.gp-save-popup{position:absolute;top:100%;right:0;min-width:200px;max-width:260px;background:var(--bg-elevated, var(--bg-secondary));border:1px solid var(--border-primary);border-radius:8px;box-shadow:var(--shadow-lg, 0 8px 24px rgba(0, 0, 0, .18));padding:10px;z-index:200;display:none;opacity:0;transform:translateY(-4px);transition:opacity .15s ease,transform .15s ease}.gp-save-popup.show{opacity:1;transform:translateY(0);display:block}.gp-save-popup .popup-heading{margin:0 0 8px;font-size:.83rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted)}.gp-save-popup ul{list-style:none;padding:0;margin:0 0 8px;display:flex;flex-direction:column;gap:2px}.gp-save-popup .gp-list-item{padding:6px 10px;font-size:.88rem;border-radius:5px;cursor:pointer;color:var(--text-primary);transition:background .14s;display:flex;align-items:center;justify-content:space-between;gap:4px}.gp-save-popup .gp-list-item:hover{background:var(--bg-tertiary)}.gp-save-popup .gp-list-item.saved{color:var(--text-accent);font-weight:500}.gp-save-popup .new-list-input{width:100%;box-sizing:border-box;padding:6px 8px;font-size:.85rem;border:1px solid var(--border-primary);border-radius:5px;background:var(--bg-primary);color:var(--text-primary);transition:border-color .15s;font-family:inherit}.gp-save-popup .new-list-input:focus{outline:none;border-color:var(--text-accent)}.fc-back-wrapper{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;height:100%;gap:0}.fc-back-main{flex:1;display:flex;align-items:center;justify-content:center;width:100%;text-align:center}.fc-notes-section{margin-top:14px;border-top:1px solid var(--border-primary);padding-top:10px;width:100%;text-align:left}.fc-notes-toggle{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;font-size:.82rem;font-weight:500;border:1px solid var(--border-primary);border-radius:6px;background:var(--bg-secondary);color:var(--text-muted);cursor:pointer;transition:all .18s}.fc-notes-toggle:hover{color:var(--text-accent);border-color:var(--text-accent)}.fc-notes-toggle svg{width:13px;height:13px}.fc-notes-chevron{transition:transform .2s ease}.fc-notes-content{margin-top:10px;max-height:200px;overflow-y:auto;font-size:.88rem;line-height:1.55;color:var(--text-secondary)}.fc-note-ai,.fc-note-user{padding:8px 0}.fc-note-ai+.fc-note-user{border-top:1px solid var(--border-primary)}.fc-note-ai p,.fc-note-user p{margin:0 0 4px}.flashcard-notes-modal-panel{width:min(92vw,720px);max-height:min(78vh,760px);overflow:hidden;padding:20px 20px 16px}#flashcard-notes-modal{z-index:13050}.flashcard-notes-modal-body{display:flex;flex-direction:column;gap:12px}.flashcard-notes-modal-body h3{margin:0}.flashcard-notes-modal-content{overflow-y:auto;max-height:min(60vh,560px);padding-right:6px}.fc-grammar-explanation{margin-top:14px;padding-top:12px;border-top:1px solid var(--border-primary);font-size:.92rem;line-height:1.55;color:var(--text-secondary);text-align:left}.fc-grammar-front-prompt{margin-bottom:14px;font-size:.82rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted)}.fc-grammar-front-text{width:100%}.gp-list-divider{display:flex;align-items:center;gap:12px;margin:20px 0 12px;font-size:.78rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted)}.gp-list-divider:before,.gp-list-divider:after{content:"";flex:1;height:1px;background:var(--border-primary)}.gp-list-card h3.german-word{font-size:1rem;font-weight:600}.gp-list-card h3.german-word mark.gp-keyword{background:var(--accent-subtle, rgba(99, 102, 241, .12));color:var(--accent-primary, #6366f1);border-radius:3px;padding:0 2px}.gp-list-remove-btn{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;border:1px solid var(--border-primary);background:var(--bg-primary);color:var(--text-muted);cursor:pointer;border-radius:10px;transition:color .18s,background .18s,border-color .18s}.gp-list-remove-btn:hover{color:#ef4444;border-color:#ef4444;background:#fef2f2}.gp-list-remove-btn svg{width:18px;height:18px;pointer-events:none}html.native-shell body>header{padding-top:calc(var(--spacing-sm) + var(--app-safe-area-top))}html.native-shell .landing-system-nav{padding-top:calc(1rem + var(--app-safe-area-top));padding-right:calc(1.5rem + var(--app-safe-area-right));padding-left:calc(1.5rem + var(--app-safe-area-left))}html.native-shell #flashcard-view{padding-top:calc(var(--spacing-lg) + var(--app-safe-area-top));padding-right:calc(var(--spacing-lg) + var(--app-safe-area-right));padding-bottom:calc(var(--spacing-lg) + var(--app-safe-area-bottom));padding-left:calc(var(--spacing-lg) + var(--app-safe-area-left))}html.native-shell .reset-password-fullpage{padding-top:calc(24px + var(--app-safe-area-top));padding-right:calc(24px + var(--app-safe-area-right));padding-bottom:calc(24px + var(--app-safe-area-bottom));padding-left:calc(24px + var(--app-safe-area-left))}@media (max-width: 900px){html.native-shell body>header{padding-top:calc(4px + var(--app-safe-area-top))}html.native-shell .sidebar{padding-top:var(--app-safe-area-top);padding-left:var(--app-safe-area-left);box-sizing:border-box}}@media (min-width: 901px){html.native-shell body>header{padding-right:calc(var(--spacing-lg) + var(--app-safe-area-right));padding-left:calc(var(--spacing-lg) + var(--app-safe-area-left))}}@media (max-width: 405px){html.native-shell body>header{padding-top:calc(3px + var(--app-safe-area-top))}}@media (max-width: 352px){html.native-shell body>header{padding-top:calc(2px + var(--app-safe-area-top))}}html.native-shell,html.native-shell *{scrollbar-width:none!important;-ms-overflow-style:none!important}html.native-shell ::-webkit-scrollbar{display:none!important;width:0!important;height:0!important;background:transparent!important}html.native-shell ::-webkit-scrollbar-track,html.native-shell ::-webkit-scrollbar-thumb{background:transparent!important;border:0!important}.mobile-bottomnav[hidden]{display:none!important}@media (max-width: 900px){body{padding-bottom:var(--mobile-bottom-nav-height)}header{flex-wrap:nowrap}.mobile-topnav.mobile-bottomnav{position:fixed;inset-inline:0;bottom:0;z-index:190;box-sizing:border-box;display:grid!important;grid-template-columns:repeat(5,minmax(0,112px));justify-content:center;align-items:start;width:100%;height:var(--mobile-bottom-nav-height);min-height:var(--mobile-bottom-nav-height);gap:clamp(1px,1vw,6px);margin:0;padding:5px calc(7px + var(--app-safe-area-right)) calc(5px + var(--app-safe-area-bottom)) calc(7px + var(--app-safe-area-left));border:0;border-top:1px solid color-mix(in srgb,var(--border-primary) 88%,transparent);border-radius:0;overflow:hidden;overscroll-behavior:contain;background:color-mix(in srgb,var(--bg-secondary) 94%,transparent);box-shadow:0 -1px color-mix(in srgb,white 32%,transparent),0 -10px 28px #0f172a17;backdrop-filter:blur(18px) saturate(1.35);-webkit-backdrop-filter:blur(18px) saturate(1.35);isolation:isolate;scrollbar-width:none;transition:transform .18s ease,opacity .18s ease}.mobile-bottomnav::-webkit-scrollbar{display:none}.mobile-bottomnav .mobile-topnav-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;position:relative;display:inline-flex;flex-direction:column;align-items:center;justify-content:center;min-width:0;width:100%;height:52px;min-height:52px;gap:2px;margin:0;padding:5px 2px 4px;border:0;border-radius:14px;background:transparent;color:var(--text-secondary);font:inherit;-webkit-tap-highlight-color:transparent;touch-action:manipulation;transition:color .15s ease,background-color .15s ease,transform .1s ease}.mobile-bottomnav .mobile-topnav-btn:hover{border:0;outline:none;color:var(--text-primary);background:color-mix(in srgb,var(--text-accent) 8%,transparent)}.mobile-bottomnav .mobile-topnav-btn:focus{outline:none;box-shadow:none}html.keyboard-navigation .mobile-bottomnav .mobile-topnav-btn:focus{color:var(--text-primary);background:color-mix(in srgb,var(--text-accent) 8%,transparent);box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--text-accent) 72%,transparent)}.mobile-bottomnav .mobile-topnav-btn:active{transform:scale(.96)}.mobile-bottomnav .mobile-topnav-btn:is(.active,[aria-current=page]){color:var(--text-accent);background:color-mix(in srgb,var(--text-accent) 10%,transparent)}.mobile-bottomnav .mobile-topnav-btn:after{content:"";position:absolute;top:0;bottom:auto;left:28%;right:28%;height:3px;border-radius:0 0 999px 999px;background:transparent;opacity:0;transform:scaleX(.55);transition:opacity .15s ease,transform .18s ease}.mobile-bottomnav .mobile-topnav-btn:is(.active,[aria-current=page]):after{background:var(--text-accent);opacity:1;transform:scaleX(1)}.mobile-bottomnav .mobile-topnav-btn i,.mobile-bottomnav .mobile-topnav-btn svg{display:block;width:21px;height:21px;flex:0 0 21px;stroke-width:2}.mobile-bottomnav .mobile-topnav-label{display:block;max-width:100%;overflow:hidden;color:inherit;font-size:.67rem;font-weight:650;line-height:1.05;letter-spacing:.005em;text-overflow:ellipsis;white-space:nowrap;opacity:.9}.mobile-bottomnav .mobile-topnav-btn.active .mobile-topnav-label{opacity:1}#scroll{bottom:calc(var(--mobile-bottom-nav-height) + 72px)}#scroll2{bottom:calc(var(--mobile-bottom-nav-height) + 14px)}.page-stepper{right:auto;left:50%;bottom:calc(var(--mobile-bottom-nav-height) + 16px + var(--app-safe-area-bottom) + var(--page-stepper-footer-clearance, 0px))}.page-stepper .page-stepper__button{width:42px;min-width:42px;height:42px;min-height:42px;padding:0}#notification-container[data-edge=bottom]{bottom:var(--mobile-bottom-nav-height);padding-bottom:6px}body.flashcards-active,body.pricing-active,html.reset-password-active body{padding-bottom:0}body.flashcards-active>.mobile-bottomnav,body.pricing-active>.mobile-bottomnav,html.reset-password-active .mobile-bottomnav{display:none!important}html:is(.native-keyboard-open,.mobile-text-entry-active) body{padding-bottom:0}html:is(.native-keyboard-open,.mobile-text-entry-active) .mobile-bottomnav{opacity:0;pointer-events:none;transform:translateY(110%)}}@media (max-width: 900px) and (max-height: 500px){:root{--mobile-bottom-nav-height: calc(56px + var(--app-safe-area-bottom))}.mobile-bottomnav .mobile-topnav-btn{height:46px;min-height:46px;padding-block:3px}.mobile-bottomnav .mobile-topnav-btn i,.mobile-bottomnav .mobile-topnav-btn svg{width:19px;height:19px;flex-basis:19px}.mobile-bottomnav .mobile-topnav-label{font-size:.61rem}}@media (min-width: 901px){.mobile-bottomnav{display:none!important}}@media (prefers-reduced-motion: reduce){.mobile-bottomnav,.mobile-bottomnav .mobile-topnav-btn,.mobile-bottomnav .mobile-topnav-btn:after{transition:none!important}}#native-offline-banner{position:fixed;z-index:10000;top:max(8px,var(--app-safe-area-top));left:50%;transform:translate(-50%);display:inline-flex;align-items:baseline;gap:8px;padding:7px 12px;border:1px solid color-mix(in srgb,var(--border-primary) 80%,#d48b2a 20%);border-radius:999px;background:color-mix(in srgb,var(--bg-secondary) 92%,#d48b2a 8%);color:var(--text-primary);box-shadow:var(--shadow-sm);font-size:.78rem;pointer-events:none}.vocab-anki-cta{position:relative;isolation:isolate;max-width:900px;margin:26px auto 30px;padding:20px 22px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:17px;overflow:hidden;border:1px solid color-mix(in srgb,var(--text-accent) 24%,var(--border-primary));border-radius:18px;background:color-mix(in srgb,var(--text-accent) 5%,var(--bg-secondary));box-shadow:0 10px 30px color-mix(in srgb,var(--text-accent) 8%,transparent)}.vocab-anki-cta[hidden]{display:none!important}.vocab-anki-cta:after{content:"";position:absolute;z-index:-1;width:180px;height:180px;right:-95px;top:-105px;border-radius:50%;background:color-mix(in srgb,var(--text-accent) 12%,transparent)}.vocab-anki-cta__icon{width:46px;height:46px;display:grid;place-items:center;border-radius:13px;color:var(--text-on-accent);background:var(--text-accent);box-shadow:0 8px 18px color-mix(in srgb,var(--text-accent) 24%,transparent)}.vocab-anki-cta__icon svg{width:22px;height:22px}.vocab-anki-cta__copy{min-width:0}.vocab-anki-cta__kicker{color:var(--text-accent);font-size:.69rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.vocab-anki-cta h3{margin:3px 0 4px;color:var(--text-primary);font-size:1rem;letter-spacing:-.015em}.vocab-anki-cta p{margin:0;color:var(--text-secondary);font-size:.82rem;line-height:1.45}html:is([data-theme=dark],[data-theme-effective=dark]) .vocab-anki-cta p{color:#d5ddea}.vocab-anki-cta__button{display:inline-flex;align-items:center;gap:7px;padding:10px 13px;border-radius:10px;color:var(--text-accent);background:var(--bg-primary);border:1px solid color-mix(in srgb,var(--text-accent) 22%,var(--border-primary));font-size:.8rem;font-weight:750;text-decoration:none;white-space:nowrap;transition:transform .16s ease,border-color .16s ease,background .16s ease}.vocab-anki-cta__button svg{width:15px;height:15px}.vocab-anki-cta__button:hover{transform:translateY(-1px);border-color:var(--text-accent);background:color-mix(in srgb,var(--text-accent) 7%,var(--bg-primary))}.native-shell .vocab-anki-cta{display:none!important}@media (max-width: 700px){.vocab-anki-cta{grid-template-columns:auto minmax(0,1fr);margin:20px 0 26px;padding:17px}.vocab-anki-cta__button{grid-column:1 / -1;justify-content:center}}#native-offline-banner span{font-weight:700}#native-offline-banner small{color:var(--text-muted);font-size:.72rem}#native-offline-banner[hidden]{display:none}.offline-download-button{--download-progress: 0deg;position:relative;flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:40px;height:40px;padding:0 13px 0 10px;border:1px solid color-mix(in srgb,var(--text-accent) 24%,var(--border-primary));border-radius:999px;background:color-mix(in srgb,var(--text-accent) 7%,var(--bg-secondary));color:var(--text-accent);box-shadow:0 5px 16px color-mix(in srgb,var(--text-accent) 10%,transparent);white-space:nowrap;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:transform .16s ease,border-color .16s ease,background .16s ease,box-shadow .16s ease}.offline-download-button[hidden]{display:none}.offline-download-button.is-loading{cursor:wait;opacity:.82}.offline-download-button:hover:not(:disabled){transform:translateY(-1px);border-color:color-mix(in srgb,var(--text-accent) 48%,var(--border-primary));box-shadow:0 7px 20px color-mix(in srgb,var(--text-accent) 16%,transparent)}.offline-download-button:active:not(:disabled){transform:translateY(0) scale(.97)}.offline-download-icon{position:relative;display:grid;place-items:center;width:18px;height:18px}.offline-download-button svg{width:16px;height:16px;stroke-width:2}.offline-download-label{font-size:.78rem;font-weight:700;letter-spacing:.01em}.offline-download-button[data-downloaded=true] .offline-download-icon:after{content:"";position:absolute;right:-3px;bottom:-2px;width:7px;height:7px;border:2px solid var(--bg-secondary);border-radius:50%;background:var(--text-accent)}.offline-download-button.is-loading:before{content:"";position:absolute;top:-1px;right:-1px;bottom:-1px;left:-1px;border-radius:inherit;padding:1px;background:conic-gradient(var(--text-accent) var(--download-progress),transparent 0);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude}@media (max-width: 600px){#native-offline-banner{top:max(6px,var(--app-safe-area-top));max-width:calc(100vw - 24px);white-space:nowrap}.offline-download-button{width:40px;padding:0}.offline-download-label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}}.native-shell .level-selector-container{align-items:center;gap:8px}
