@import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&family=Lora:ital,wght@0,400;0,600;0,700;1,400&family=Caveat:wght@500;600&display=swap");:root{--bg-primary:#141210;--bg-secondary:#1e1b16;--bg-elevated:#272319;--bg-card:#2c2820;--surface:#f4ead7;--surface-dim:#c8b898;--text-primary:#ede3cf;--text-dark:#141210;--text-muted:#7a6e5e;--accent:#d4a847;--accent-bright:#f0c060;--accent-dim:#8a6a20;--accent-glow:rgba(212,168,71,0.18);--green:#7aab6a;--blue:#6a98c4;--red:#c46a6a;--border:rgba(212,168,71,0.14);--border-strong:rgba(212,168,71,0.38);--hl-sentence:rgba(212,168,71,0.13);--hl-phrase:rgba(212,168,71,0.4);--hl-word:rgba(212,168,71,1);--hl-word-text:#141210;--font-reading:"Lora",Georgia,"Times New Roman",serif;--font-ui:"Inter",system-ui,-apple-system,BlinkMacSystemFont,sans-serif;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:20px;--shadow-sm:0 2px 12px rgba(0,0,0,0.3);--shadow-md:0 8px 32px rgba(0,0,0,0.4);--shadow-glow:0 0 30px rgba(212,168,71,0.15);--transition-fast:140ms ease;--transition-mid:260ms cubic-bezier(0.16,1,0.3,1);--transition-slow:420ms cubic-bezier(0.16,1,0.3,1)}*{scrollbar-width:none;-ms-overflow-style:none}::-webkit-scrollbar{width:0;height:0;display:none}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{height:100%;-webkit-text-size-adjust:100%}body{min-height:100%;background:var(--bg-primary);color:var(--text-primary);font-family:var(--font-ui);font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased}button{font:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent}a{color:inherit}img,svg{display:block}ol,ul{list-style:none}.app-shell{min-height:100svh;overflow-x:clip;background:radial-gradient(ellipse 80% 40% at 50% 0,rgba(212,168,71,.1) 0,transparent 70%),var(--bg-primary)}.app-main{min-height:100svh;padding:0 0 88px}.app-shell--immersive{height:100dvh;overflow:hidden}.app-main--immersive{min-height:0;height:100%;padding:0}.screen{max-width:640px;margin:0 auto;padding:20px 16px 0}.bottom-nav{position:fixed;inset:auto 12px 12px;z-index:20;display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:2px;max-width:620px;margin:0 auto;padding:4px;border:1px solid var(--border);border-radius:var(--radius-xl);background:rgba(30,27,22,.96);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);box-shadow:var(--shadow-md)}.nav-item{display:grid;place-items:center;gap:2px;min-height:44px;border:0;border-radius:17px;color:var(--text-muted);background:transparent;font-size:9px;font-weight:600;letter-spacing:.02em;transition:color var(--transition-fast),background var(--transition-fast)}.nav-item.active{color:var(--text-dark);background:var(--accent)}.app-shell{-webkit-user-select:none;user-select:none}[contenteditable=true],input,textarea{-webkit-user-select:text;user-select:text}.nav-item:not(.active):hover{color:var(--text-primary);background:rgba(212,168,71,.08)}.screen-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:24px}.screen-header h1{margin:4px 0 0;font-size:28px;font-weight:800;letter-spacing:-.02em;line-height:1.1}.eyebrow{color:var(--accent);font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.icon-btn{display:inline-grid;place-items:center;width:42px;height:42px;flex-shrink:0;border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-primary);background:var(--bg-elevated);transition:background var(--transition-fast),border-color var(--transition-fast)}.icon-btn:hover{border-color:var(--border-strong);background:var(--bg-card)}.dictate-btn{flex-shrink:0;width:38px;height:38px;display:flex;align-items:center;justify-content:center;border:1px solid var(--border-strong);border-radius:9px;background:var(--bg-card);color:var(--text-muted);transition:all var(--transition-fast)}.dictate-btn:hover{color:var(--accent);border-color:var(--accent)}.dictate-btn:disabled{opacity:.5;cursor:default}.dictate-btn.live{color:#e08888;border-color:#e08888;background:rgba(224,136,136,.12);animation:dictate-pulse 1.2s ease-in-out infinite}@keyframes dictate-pulse{0%,to{opacity:1}50%{opacity:.5}}.pill-btn{display:inline-flex;align-items:center;gap:6px;height:38px;padding:0 14px;border:1px solid var(--border-strong);border-radius:var(--radius-sm);color:var(--accent);background:rgba(212,168,71,.08);font-size:13px;font-weight:700;transition:background var(--transition-fast)}.pill-btn:hover{background:rgba(212,168,71,.16)}.discuss-audiobook-btn{margin-top:10px}.primary-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:100%;height:48px;border:0;border-radius:var(--radius-md);color:var(--text-dark);background:var(--accent);font-size:15px;font-weight:800;transition:background var(--transition-fast),transform var(--transition-fast)}.primary-btn:hover{background:var(--accent-bright)}.primary-btn:active{transform:scale(.98)}.primary-btn:disabled{opacity:.45;pointer-events:none}.secondary-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 16px;border:1px solid var(--border);border-radius:var(--radius-sm);background:rgba(240,230,211,.06);color:var(--text-primary);font-weight:800;transition:background var(--transition-fast),transform var(--transition-fast)}.secondary-btn:hover{background:rgba(240,230,211,.1)}.secondary-btn:active{transform:scale(.98)}.mini-btn{display:inline-flex;align-items:center;gap:4px;height:30px;padding:0 10px;border:1px solid var(--border);border-radius:6px;color:var(--text-muted);background:transparent;font-size:12px;font-weight:600;transition:color var(--transition-fast),background var(--transition-fast)}.mini-btn:hover:not(:disabled){color:var(--text-primary);background:rgba(240,230,211,.06)}.mini-btn:disabled{opacity:.4}.surface-card{border:1px solid var(--border);border-radius:var(--radius-md)}.action-card,.surface-card{background:var(--bg-elevated)}.action-card{display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center;width:100%;padding:18px;border:1px solid var(--border);border-radius:var(--radius-lg);color:var(--text-primary);text-align:left;transition:border-color var(--transition-fast),transform var(--transition-fast)}.action-card:hover{border-color:var(--border-strong);transform:translateY(-1px)}.action-card:active{transform:translateY(0)}.action-card.reading{background:linear-gradient(135deg,rgba(212,168,71,.2) 0,var(--bg-elevated) 60%);border-color:rgba(212,168,71,.28)}.action-card.study{background:linear-gradient(135deg,rgba(122,171,106,.18) 0,var(--bg-elevated) 60%);border-color:rgba(122,171,106,.25)}.action-card-icon{display:grid;place-items:center;width:50px;height:50px;border-radius:var(--radius-md);background:rgba(240,230,211,.07)}.action-card.reading .action-card-icon{background:rgba(212,168,71,.15);color:var(--accent)}.action-card.study .action-card-icon{background:rgba(122,171,106,.15);color:var(--green)}.action-card-label{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--accent)}.action-card.study .action-card-label{color:var(--green)}.action-card-title{display:block;margin:4px 0 2px;font-size:17px;font-weight:700}.action-card-sub{display:block;color:var(--text-muted);font-size:13px}.action-card-arrow{color:var(--accent);flex-shrink:0}.action-card.study .action-card-arrow{color:var(--green)}.live-translate-home-card{display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center;width:100%;padding:18px;margin-bottom:16px;border:1px solid rgba(100,191,188,.42);border-radius:var(--radius-lg);color:var(--text-primary);text-align:left;background:linear-gradient(135deg,rgba(48,145,145,.2),var(--bg-elevated) 68%);transition:transform var(--transition-fast),border-color var(--transition-fast)}.live-translate-home-card:hover{transform:translateY(-1px);border-color:rgba(100,191,188,.75)}.live-translate-home-card .action-card-arrow,.live-translate-home-card .action-card-label{color:#79d5d0}.live-translate-home-icon{display:grid;place-items:center;width:50px;height:50px;border-radius:var(--radius-md);color:#8ce4dd;background:rgba(79,190,184,.17)}.live-translate-screen{position:relative;height:100%;display:flex;flex-direction:column;overflow:hidden;padding:max(14px,env(safe-area-inset-top)) max(18px,calc((100vw - 620px) / 2)) max(16px,env(safe-area-inset-bottom));color:#f5f2ea;background:radial-gradient(circle at 50% 38%,rgba(32,102,104,.3),transparent 42%),#101a1c}.live-translate-header{display:flex;align-items:center;justify-content:space-between;flex-shrink:0}.live-translate-back{display:grid;place-items:center;width:40px;height:40px;margin-left:-8px;border:0;border-radius:50%;color:rgba(245,242,234,.72);background:transparent;transition:color var(--transition-fast),background var(--transition-fast)}.live-translate-back:hover{color:#f5f2ea;background:rgba(255,255,255,.06)}.live-translate-brand{display:inline-flex;align-items:center;gap:8px;color:rgba(245,242,234,.8);font-size:13px;font-weight:750;letter-spacing:.02em}.live-translate-badge{padding:4px 9px;border:1px solid rgba(140,228,221,.35);border-radius:99px;color:#8ce4dd;font-size:11px;font-weight:800}.live-translate-stage{display:flex;flex:1 1;min-height:0;flex-direction:column;align-items:center;justify-content:center;gap:20px;text-align:center}.live-translate-orb{display:grid;place-items:center;width:132px;height:132px;border:1px solid rgba(140,228,221,.38);border-radius:50%;color:#8ce4dd;background:transparent;transition:color var(--transition-fast),border-color var(--transition-fast),background var(--transition-fast),box-shadow var(--transition-fast)}.live-translate-orb:hover{border-color:rgba(140,228,221,.62);background:rgba(140,228,221,.06)}.live-translate-orb.is-live{border-color:transparent;color:#0d1c1e;background:linear-gradient(150deg,#a6ede6,#55c3bc);box-shadow:0 0 0 12px rgba(140,228,221,.08),0 0 64px rgba(85,195,188,.45);animation:live-translate-pulse 2.4s ease-in-out infinite}.live-translate-back:focus-visible,.live-translate-chip:focus-visible,.live-translate-orb:focus-visible,.live-translate-overlay-close:focus-visible{outline:3px solid #fff;outline-offset:4px}.live-translate-status{min-height:20px;margin:0;color:rgba(245,242,234,.58);font-size:14px}.live-translate-error{max-width:340px;margin:0;padding:9px 14px;border-radius:12px;color:#ffd9d9;background:rgba(169,87,87,.22);font-size:13px}.live-translate-hint{gap:6px;margin:0 0 12px;color:rgba(245,242,234,.38);font-size:11px;text-align:center}.live-translate-bar,.live-translate-hint{display:flex;align-items:center;justify-content:center;flex-shrink:0}.live-translate-bar{gap:10px}.live-translate-chip{padding:9px 16px;border:1px solid rgba(140,228,221,.28);border-radius:99px;color:#8ce4dd;background:transparent;font-size:13px;font-weight:750}.live-translate-chip.is-on{color:#0d1c1e;background:#8ce4dd;border-color:transparent}.live-translate-cost{color:rgba(245,242,234,.42);font-size:12px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.live-translate-overlay{position:absolute;inset:auto max(18px,calc((100vw - 620px) / 2)) calc(max(16px, env(safe-area-inset-bottom)) + 96px);z-index:5;display:flex;flex-direction:column;max-height:min(34vh,280px);padding:12px 14px;border:1px solid rgba(140,228,221,.2);border-radius:16px;background:rgba(16,30,32,.93);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:0 18px 44px rgba(0,0,0,.45)}.live-translate-overlay-head{display:flex;align-items:center;justify-content:space-between;flex-shrink:0;color:#79d5d0;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.live-translate-overlay-close{display:grid;place-items:center;width:26px;height:26px;margin-right:-4px;border:0;border-radius:50%;color:rgba(245,242,234,.6);background:transparent}.live-translate-overlay-close:hover{color:#f5f2ea;background:rgba(255,255,255,.07)}.live-translate-overlay-log{flex:1 1;min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-mask-image:linear-gradient(180deg,transparent,#000 18px);mask-image:linear-gradient(180deg,transparent,#000 18px)}.live-translate-overlay-log p{margin:8px 0 0;color:rgba(245,242,234,.88);font-size:14px;line-height:1.55}.live-translate-overlay small{flex-shrink:0;margin-top:10px;color:rgba(245,242,234,.32);font-size:10px}@keyframes live-translate-pulse{50%{box-shadow:0 0 0 22px rgba(140,228,221,.05),0 0 84px rgba(85,195,188,.55)}}@media (prefers-reduced-motion:reduce){.live-translate-orb.is-live{animation:none}}.stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin:16px 0}.stat-tile{padding:16px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-elevated)}.stat-tile-value{display:block;font-size:30px;font-weight:900;line-height:1;color:var(--accent)}.stat-tile-label{display:block;margin-top:5px;font-size:12px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em}.empty-state{display:flex;flex-direction:column;align-items:center;gap:12px;padding:48px 20px;border:1.5px dashed var(--border-strong);border-radius:var(--radius-lg);text-align:center;color:var(--text-muted)}.empty-state svg{color:var(--accent);opacity:.5}.empty-state strong{font-size:16px;color:var(--text-primary)}.empty-state p{font-size:13px;line-height:1.5;max-width:260px}.book-list{display:grid;gap:10px}.book-card{display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center;width:100%;padding:14px;border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text-primary);background:var(--bg-elevated);text-align:left;transition:border-color var(--transition-fast),transform var(--transition-fast)}.book-card:hover{border-color:var(--border-strong);transform:translateY(-1px)}.book-card.active{border-color:var(--accent)}.book-cover{display:grid;place-items:center;width:52px;height:70px;border-radius:6px;font-size:11px;font-weight:900;letter-spacing:.05em;color:rgba(20,18,16,.7);flex-shrink:0}.book-info{min-width:0}.book-info-title{font-size:15px;font-weight:700}.book-info-author,.book-info-title{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.book-info-author{font-size:13px;color:var(--text-muted);margin-top:2px}.progress-bar{display:block;height:3px;margin-top:10px;border-radius:99px;background:rgba(240,230,211,.1);overflow:hidden}.progress-bar-fill{display:block;height:100%;border-radius:inherit;background:var(--accent);transition:width .5s ease}.book-pct{color:var(--accent);font-size:13px;font-weight:800}.upload-zone{display:flex;flex-direction:column;align-items:center;gap:10px;padding:32px 20px;border:1.5px dashed var(--border-strong);border-radius:var(--radius-lg);background:rgba(212,168,71,.04);text-align:center;cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast)}.upload-zone.drag-over,.upload-zone:hover{background:rgba(212,168,71,.1);border-color:var(--accent)}.upload-zone svg{color:var(--accent)}.upload-zone strong{font-size:15px;font-weight:700}.upload-zone span{font-size:12px;color:var(--text-muted)}.card-list{display:grid;gap:10px}.flash-card{padding:16px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-elevated)}.flash-card-type{display:inline-block;margin-bottom:8px;padding:3px 10px;border-radius:99px;font-size:11px;font-weight:800;letter-spacing:.07em;text-transform:uppercase}.flash-card-type.word{background:rgba(212,168,71,.15);color:var(--accent)}.flash-card-type.phrase{background:rgba(106,152,196,.15);color:var(--blue)}.flash-card-type.sentence{background:rgba(122,171,106,.15);color:var(--green)}.flash-card-front{font-size:17px;font-weight:700;margin-bottom:4px}.flash-card-back{color:var(--surface-dim);font-size:14px;margin-bottom:8px}.flash-card-source{font-size:12px;color:var(--text-muted)}.settings-list{display:grid;gap:8px;grid-template-columns:minmax(0,1fr)}.setting-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-elevated);flex-wrap:wrap;row-gap:10px}.setting-row>*{min-width:0}.setting-row-main{flex:1 1 50%}.setting-row-label{font-size:13px;color:var(--text-muted);margin-bottom:2px}.setting-row-value{font-size:15px;font-weight:700;overflow-wrap:anywhere}.setting-row>.setting-row-value{margin-left:auto;text-align:end}.setting-row-main .setting-row-value{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}.setting-section-title{margin:20px 0 8px;font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--accent)}.lang-select{padding:10px 14px;border:1px solid var(--border-strong);border-radius:var(--radius-sm);color:var(--text-primary);background:var(--bg-card);font:inherit;font-size:14px;font-weight:700;outline:none;cursor:pointer;appearance:none}.lang-select:focus{border-color:var(--accent)}.active-voice-label{font-size:11px;font-weight:600;line-height:1.2;letter-spacing:.01em;color:var(--text-muted);white-space:nowrap;overflow:hidden;pointer-events:none;display:block}.active-voice-label-track{display:inline-flex;align-items:center;white-space:nowrap}.active-voice-label-text{display:inline-block;white-space:nowrap}.active-voice-label.is-scrolling .active-voice-label-track{gap:var(--marquee-gap,36px);animation:voice-label-marquee var(--marquee-duration,6s) linear infinite}@keyframes voice-label-marquee{0%{transform:translateX(0)}to{transform:translateX(calc(-1 * var(--marquee-distance, 0px)))}}@media (prefers-reduced-motion:reduce){.active-voice-label.is-scrolling .active-voice-label-track{animation:none}.active-voice-label.is-scrolling .active-voice-label-text:nth-child(2){display:none}.active-voice-label.is-scrolling .active-voice-label-text{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis}.active-voice-label.is-scrolling .active-voice-label-track{display:block;max-width:100%}}.audio-scrubber-voice.active-voice-label{flex:1 1;min-width:0;text-align:center;padding:0 8px}.active-voice-swap{color:var(--accent)}.voice-sample-btn{padding:10px 14px;border:1px solid var(--border-strong);border-radius:var(--radius-sm);color:var(--text-primary);background:var(--bg-card);font:inherit;font-size:14px;font-weight:700;white-space:nowrap;cursor:pointer;transition:border-color var(--transition-fast),color var(--transition-fast)}.voice-sample-btn:hover{border-color:var(--accent);color:var(--accent)}.voice-sample-btn:disabled{opacity:.45;pointer-events:none}.api-key-input{width:100%;padding:12px 14px;border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-primary);background:var(--bg-card);font:inherit;font-size:14px;outline:none;transition:border-color var(--transition-fast)}.api-key-input:focus{border-color:var(--border-strong)}.api-key-input::placeholder{color:var(--text-muted)}.toast{position:fixed;bottom:108px;left:50%;z-index:120;transform:translateX(-50%) translateY(20px);padding:10px 20px;border-radius:99px;background:var(--accent);color:var(--text-dark);font-size:14px;font-weight:700;white-space:nowrap;animation:toast-in .25s var(--transition-mid) forwards;box-shadow:0 4px 20px rgba(212,168,71,.4)}@keyframes toast-in{to{transform:translateX(-50%) translateY(0);opacity:1}}.home-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px;padding-top:20px}.home-title{font-size:26px;font-weight:900;letter-spacing:-.02em;line-height:1.1}.home-header-right{display:flex;align-items:center;gap:6px}.home-streak{font-size:15px;font-weight:800;color:var(--accent);min-width:20px}.book-hero-card{margin-bottom:16px;padding:16px;border:1px solid var(--border-strong);border-radius:var(--radius-lg);background:linear-gradient(135deg,rgba(212,168,71,.15) 0,var(--bg-elevated) 60%);display:grid;grid-template-columns:68px 1fr;gap:14px;align-items:start}.book-hero-cover{width:68px;height:90px;border-radius:8px;display:grid;place-items:flex-end center;padding-bottom:8px;flex-shrink:0;grid-row:1/3}.book-hero-lang{font-size:10px;font-weight:900;letter-spacing:.1em;color:rgba(20,18,16,.6)}.book-hero-eyebrow{font-size:10px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--accent);margin:0 0 4px}.book-hero-title{display:block;font-size:17px;font-weight:800;line-height:1.2;margin-bottom:2px}.book-hero-author{display:block;font-size:13px;color:var(--text-muted)}.book-hero-progress{margin-top:2px}.book-hero-cta{grid-column:1/-1;margin-top:4px}.vocab-section{margin-bottom:16px;padding:16px;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg-elevated)}.vocab-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.vocab-title{font-size:15px;font-weight:800}.vocab-today{font-size:12px;color:var(--text-muted);font-weight:600}.vocab-grid{display:grid;grid-template-columns:80px 1fr;gap:16px;align-items:center}.vocab-ring-wrap{position:relative}.vocab-ring,.vocab-ring-wrap{width:80px;height:80px}.vocab-ring-label{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center}.vocab-ring-count{font-size:18px;font-weight:900;color:var(--accent);line-height:1}.vocab-ring-sub{font-size:9px;color:var(--text-muted);font-weight:600;text-transform:uppercase;letter-spacing:.06em}.vocab-stats{display:flex;flex-direction:column;gap:8px}.vocab-stat{display:flex;align-items:center;gap:8px}.vocab-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.vocab-stat-label{flex:1 1;font-size:13px;color:var(--text-muted)}.vocab-stat-val{font-size:14px;font-weight:800;color:var(--text-primary)}.speak-btn{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border:0;border-radius:var(--radius-sm);background:rgba(212,168,71,.1);color:var(--accent);flex-shrink:0;transition:background var(--transition-fast),transform var(--transition-fast)}.speak-btn:hover{background:rgba(212,168,71,.22);transform:scale(1.08)}.speak-btn:active{transform:scale(.94)}.panel-clickable-word{display:inline;cursor:pointer;border-radius:3px;transition:background var(--transition-fast);-webkit-tap-highlight-color:transparent}.panel-clickable-word:hover{background:rgba(212,168,71,.18)}.auth-screen{min-height:100svh;display:flex;align-items:center;justify-content:center;padding:24px 16px;background:radial-gradient(ellipse 80% 40% at 50% 0,rgba(212,168,71,.1) 0,transparent 70%),var(--bg-primary)}.auth-card{width:100%;max-width:400px;padding:32px 28px 28px;border:1px solid var(--border);border-radius:var(--radius-xl);background:var(--bg-elevated);box-shadow:var(--shadow-md)}.auth-logo{display:grid;place-items:center;width:56px;height:56px;margin:0 auto 16px;border-radius:var(--radius-md);background:rgba(212,168,71,.15);color:var(--accent)}.auth-title{font-size:26px;font-weight:900;letter-spacing:-.02em;text-align:center;color:var(--text-primary);margin-bottom:4px}.auth-subtitle{font-size:13px;color:var(--text-muted);text-align:center;margin-bottom:24px}.auth-tabs{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:4px;border-radius:var(--radius-md);background:var(--bg-card);margin-bottom:24px}.auth-tab{padding:10px;border:0;border-radius:10px;font-size:13px;font-weight:700;color:var(--text-muted);background:transparent;transition:color var(--transition-fast),background var(--transition-fast)}.auth-tab.active{color:var(--text-dark);background:var(--accent)}.auth-tab:not(.active):hover{color:var(--text-primary)}.auth-form{gap:16px}.auth-field,.auth-form{display:flex;flex-direction:column}.auth-field{gap:6px}.auth-label{font-size:12px;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em}.auth-input-wrap{position:relative}.auth-input{width:100%;height:48px;padding:0 14px;border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-primary);background:var(--bg-card);font:inherit;font-size:15px;outline:none;transition:border-color var(--transition-fast)}.auth-input:focus{border-color:var(--accent)}.auth-input::placeholder{color:var(--text-muted)}.auth-input:disabled{opacity:.5}.auth-input-wrap .auth-input{padding-right:44px}.auth-eye-btn{position:absolute;right:12px;top:50%;transform:translateY(-50%);display:grid;place-items:center;width:28px;height:28px;border:0;border-radius:6px;color:var(--text-muted);background:transparent;transition:color var(--transition-fast)}.auth-eye-btn:hover{color:var(--text-primary)}.auth-error{border-radius:var(--radius-sm);background:rgba(196,106,106,.12);border:1px solid rgba(196,106,106,.25);color:#e08888}.auth-error,.auth-success{padding:12px 14px;font-size:13px;line-height:1.4}.auth-success{border-radius:var(--radius-sm);background:rgba(122,171,106,.12);border:1px solid rgba(122,171,106,.25);color:var(--green)}.auth-spinner{animation:spin .8s linear infinite}.auth-spinner-wrap{display:flex;align-items:center;justify-content:center}.auth-spinner-ring{width:36px;height:36px;border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}@media (min-width:640px){.screen{padding:28px 24px 0}.stats-grid{grid-template-columns:repeat(4,1fr)}}.loading-shimmer{position:relative;overflow:hidden}.loading-shimmer:after{content:"";position:absolute;top:0;left:-100%;width:50%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.4),transparent);transform:skewX(-20deg);animation:shimmer 1.5s infinite}@keyframes shimmer{to{left:200%}}.spin{animation:spin .8s linear infinite}.inline-error{margin-bottom:14px;padding:10px 12px;border:1px solid rgba(196,106,106,.3);border-radius:var(--radius-sm);background:rgba(196,106,106,.12);color:#e08888;font-size:13px}.glass-card{background:rgba(39,35,25,.68);border-color:rgba(212,168,71,.24);-webkit-backdrop-filter:blur(18px) saturate(128%);backdrop-filter:blur(18px) saturate(128%);box-shadow:0 14px 40px rgba(0,0,0,.22),inset 0 1px 0 rgba(255,255,255,.04)}.home-screen{padding-top:10px}.home-screen .action-card{margin-bottom:16px}.home-screen .book-hero-card{grid-template-columns:104px 1fr auto;align-items:end;gap:16px;min-height:160px;margin-bottom:26px;padding:14px}.home-screen .book-hero-cover{grid-row:auto;width:104px;height:132px;border-radius:10px;background-size:cover;background-position:50%;box-shadow:0 10px 22px rgba(0,0,0,.28)}.home-screen .book-hero-info{min-width:0;align-self:center}.home-screen .book-hero-title{max-width:100%;margin-bottom:3px}.home-screen .book-hero-author,.home-screen .book-hero-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.home-screen .book-hero-progress span{display:block;margin-top:6px;color:var(--text-muted);font-size:12px}.home-screen .book-hero-cta{grid-column:auto;align-self:end;width:auto;min-width:112px;height:38px;padding:0 15px;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--surface-dim);font-size:13px;font-weight:700;text-transform:uppercase}.recommendation-section{margin-bottom:26px}.shelf-title{display:inline-flex;align-items:center;gap:5px;margin:0 0 10px 2px;border:0;background:transparent;color:var(--text-muted);font-size:17px;font-weight:500;text-transform:uppercase}.book-shelf{display:grid;grid-auto-flow:column;grid-auto-columns:104px;gap:10px;overflow-x:auto;padding:2px 2px 10px;scrollbar-width:none}.book-shelf::-webkit-scrollbar{display:none}.shelf-book{width:104px;border:0;background:transparent;color:var(--text-primary);text-align:left}.shelf-cover{display:grid;place-items:end center;width:104px;height:146px;margin-bottom:7px;padding-bottom:10px;border:1px solid rgba(212,168,71,.12);border-radius:5px;background:linear-gradient(160deg,#c49a28,#7a5c10);background-size:cover;background-position:50%;color:rgba(20,18,16,.62);font-size:13px;font-weight:900;box-shadow:0 8px 18px rgba(0,0,0,.24)}.skeleton-block{border-radius:inherit;background:linear-gradient(90deg,rgba(240,230,211,.05),rgba(240,230,211,.14) 50%,rgba(240,230,211,.05));background-size:200% 100%;animation:shimmer 1.4s ease-in-out infinite}.shelf-title-skeleton{width:160px;height:16px;margin:0 0 12px 2px}.shelf-book-skeleton{width:104px}.shelf-book em,.shelf-book strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.shelf-book strong{font-size:11px;line-height:1.2}.shelf-book em{margin-top:2px;color:var(--text-muted);font-size:10px;font-style:normal}.book-of-day{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;width:100%;margin-bottom:16px;padding:14px 16px;border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text-primary);text-align:left}.book-of-day-meta{min-width:0}.book-of-day-cover{display:grid;place-items:end center;width:46px;height:64px;padding-bottom:6px;border-radius:5px;background-size:cover;background-position:50%;color:rgba(20,18,16,.62);font-size:10px;font-weight:900;box-shadow:0 8px 14px rgba(0,0,0,.2)}.book-of-day em,.book-of-day small,.book-of-day strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.book-of-day strong{display:-webkit-box;white-space:normal;overflow-wrap:anywhere;-webkit-box-orient:vertical;-webkit-line-clamp:2}.book-of-day small{color:var(--accent);font-size:11px;font-weight:800;text-transform:uppercase}.book-of-day strong{font-size:14px}.book-of-day em{color:var(--text-muted);font-size:12px;font-style:normal}.discover-toolbar{display:grid;grid-template-columns:1fr auto;gap:8px;margin-bottom:12px}.discover-search{display:flex;align-items:center;gap:8px;width:100%;min-width:0;height:42px;padding:0 10px;border:1px solid var(--border);border-radius:var(--radius-sm);background:rgba(39,35,25,.78);color:var(--text-muted)}.discover-search input{width:100%;min-width:0;border:0;outline:0;background:transparent;color:var(--text-primary);font:inherit;font-size:14px}.discover-search input::placeholder{color:var(--text-muted)}.discover-clear{display:grid;place-items:center;width:26px;height:26px;border:0;border-radius:7px;background:rgba(240,230,211,.07);color:var(--text-muted)}.discover-submit{height:42px}.discover-language{position:relative;grid-column:1/-1}.audio-filters-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:12px}.audio-filters-row .audio-lang-select{grid-column:auto;flex:0 0 auto;min-width:190px}.audio-filters-row .filter-chips{flex:1 1 220px}.discover-language select{width:100%;height:38px;padding:0 36px 0 12px;border:1px solid var(--border);border-radius:19px;background:rgba(39,35,25,.74);color:var(--text-primary);font:inherit;font-size:13px;font-weight:700;outline:0;appearance:none}.discover-language svg{position:absolute;right:12px;top:50%;color:var(--text-muted);pointer-events:none;transform:translateY(-50%)}.discover-meta{justify-content:space-between;margin:4px 0 14px;font-size:12px}.catalog-loading,.discover-meta{display:flex;align-items:center;gap:10px;color:var(--text-muted)}.catalog-loading{justify-content:center;padding:48px 0}.catalog-loading-inline{display:flex;align-items:center;gap:9px;margin:12px 0;color:var(--text-muted);font-size:13px;font-weight:700}.loading-dot{width:14px;height:14px;border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}.discover-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(118px,1fr));gap:12px}.discover-grid.is-refreshing{opacity:.58;pointer-events:none}.catalog-book-skeleton{pointer-events:none}.catalog-book{min-width:0;overflow:hidden;border:1px solid var(--border);border-radius:var(--radius-sm);background:rgba(39,35,25,.72);color:var(--text-primary);text-align:left}.catalog-cover{display:grid;place-items:center;aspect-ratio:2/3;width:100%;background-size:cover;background-position:50%;color:rgba(20,18,16,.62);font-weight:900}.catalog-book-body{display:block;padding:9px}.catalog-book-body em,.catalog-book-body span,.catalog-book-body strong{display:block;overflow:hidden;text-overflow:ellipsis}.catalog-book-body strong{height:32px;font-size:12px;line-height:1.25}.catalog-book-body span{margin-top:4px;color:var(--text-muted);font-size:11px;white-space:nowrap}.catalog-book-body em{margin-top:6px;color:var(--green);font-size:10px;font-style:normal;font-weight:800;text-transform:uppercase}.pager{align-items:center;gap:14px;padding:22px 0 30px;color:var(--text-muted);font-size:13px;font-weight:700}.book-modal-backdrop,.pager{display:flex;justify-content:center}.book-modal-backdrop{position:fixed;inset:0;z-index:100;align-items:end;background:rgba(10,10,10,.74);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.book-modal{width:100%;max-width:640px;max-height:92svh;border:1px solid var(--border);border-radius:22px 22px 0 0;background:rgba(30,27,22,.98);overflow:hidden;box-shadow:0 -18px 45px rgba(0,0,0,.45)}.book-modal-header{display:flex;align-items:center;justify-content:space-between;height:54px;padding:0 16px 0 18px;border-bottom:1px solid var(--border)}.modal-close{width:34px;height:34px}.book-modal-content{max-height:calc(92svh - 54px);overflow-y:auto;padding:16px}.book-modal-main{display:grid;grid-template-columns:96px 1fr;gap:14px;margin-bottom:14px}.book-modal-cover{width:96px;height:144px;border-radius:8px;background-size:cover;background-position:50%;box-shadow:0 10px 24px rgba(0,0,0,.32)}.book-modal-title-block{min-width:0;align-self:center}.book-modal-title-block h1{margin:0 0 5px;font-size:20px;line-height:1.16}.book-modal-title-block p,.book-modal-title-block span{display:block;color:var(--text-muted)}.book-modal-title-block p{margin-bottom:4px;font-size:14px}.book-modal-title-block span{margin-bottom:12px;font-size:12px;text-transform:uppercase}.book-download-progress{display:grid;gap:6px;width:min(100%,260px);margin-top:12px;color:var(--surface-dim);font-size:12px}.book-download-progress>div{display:flex;align-items:center;justify-content:space-between;gap:10px}.book-download-progress b{color:var(--accent);font-weight:800}.book-download-progress.error b,.book-download-progress.error span:first-child{color:var(--red)}.book-download-track{display:block;height:5px;margin:0;border-radius:99px;background:rgba(240,230,211,.1);overflow:hidden}.book-download-track span{display:block;height:100%;border-radius:inherit;background:var(--accent);transition:width .24s ease}.ai-review-card,.book-chat-card{margin-bottom:12px;padding:14px;border:1px solid var(--border);border-radius:var(--radius-md);background:rgba(39,35,25,.66)}.ai-review-compact{padding:10px 12px;margin-top:4px}.ai-review-compact .compact-section-title{margin-bottom:6px;font-size:12px}.ai-review-compact .compact-section-title strong{font-size:12.5px}.ai-review-compact .review-list{gap:4px}.ai-review-compact .review-list dt{font-size:11px}.ai-review-compact .review-list dd{font-size:12.5px;line-height:1.35}.compact-section-title{display:flex;align-items:center;gap:8px;margin-bottom:10px;color:var(--accent)}.compact-section-title strong{font-size:14px}.compact-loader{display:flex;align-items:center;gap:8px;color:var(--text-muted);font-size:13px}.review-list,.review-list div{display:grid;gap:8px}.review-list div{grid-template-columns:74px 1fr}.review-list dt{color:var(--text-muted);font-size:12px;font-weight:800}.review-list dd{color:var(--surface-dim);font-size:13px;line-height:1.42}.chat-title{color:var(--green)}.book-chat-messages{display:flex;flex-direction:column;gap:8px;max-height:180px;min-height:74px;margin-bottom:10px;overflow-y:auto}.chat-empty{margin:auto;color:var(--text-muted);font-size:12px;line-height:1.35;text-align:center}.chat-bubble{max-width:86%;padding:8px 10px;border-radius:12px;font-size:13px;line-height:1.35}.chat-bubble.user{align-self:flex-end;background:var(--accent);color:var(--text-dark)}.chat-bubble.ai{align-self:flex-start;background:rgba(240,230,211,.07);color:var(--surface-dim)}.typing-row{display:flex;align-items:center;gap:6px;color:var(--text-muted);font-size:12px}.book-chat-input{display:grid;grid-template-columns:1fr 42px;gap:8px}.book-chat-input input{min-width:0;height:40px;padding:0 12px;border:1px solid var(--border);border-radius:var(--radius-sm);background:rgba(20,18,16,.82);color:var(--text-primary);font:inherit;font-size:14px;outline:0}.book-chat-input button{display:grid;place-items:center;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:rgba(122,171,106,.14);color:var(--green)}.book-chat-input button:disabled{opacity:.45}@media (max-width:520px){.home-screen .book-hero-card{grid-template-columns:86px 1fr;min-height:0;gap:12px}.home-screen .book-hero-cover{width:86px;height:118px;grid-row:1/3}.home-screen .book-hero-cta{grid-column:2;justify-self:end;min-width:0;height:30px;padding:0 4px}.book-shelf{grid-auto-columns:92px}.shelf-book,.shelf-cover{width:92px}.shelf-cover{height:130px}.discover-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.book-modal-main{grid-template-columns:78px 1fr}.book-modal-cover{width:78px;height:118px}.book-modal-title-block h1{font-size:17px}.review-list div{grid-template-columns:1fr;gap:2px}.book-chat-messages{max-height:140px}}.dict-loading{display:flex;align-items:center;justify-content:center;gap:8px;padding:40px 0;color:var(--text-muted);font-size:13px}.dict-loading-shell{display:flex;flex-direction:column;gap:12px}.dict-loading-label{margin:0 2px 2px;color:var(--text-muted);font-size:12px}.dict-skeleton-toolbar{display:flex;align-items:center;gap:10px;height:56px}.dict-skeleton-filter{width:98px;height:40px;border-radius:999px}.dict-skeleton-count{width:74px;height:13px;margin-left:auto;border-radius:5px}.dict-skeleton-search{width:40px;height:40px;border-radius:50%}.dict-skeleton-batches{display:flex;flex-direction:column;gap:10px}.dict-skeleton-batch{overflow:hidden;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-card)}.dict-skeleton-batch-head{display:flex;align-items:center;gap:10px;padding:14px}.dict-skeleton-title-wrap{display:flex;flex:1 1;flex-direction:column;gap:7px}.dict-skeleton-title{width:42%;height:15px;border-radius:5px}.dict-skeleton-meta{width:48%;height:10px;border-radius:4px}.dict-skeleton-percent{width:28px;height:13px;border-radius:4px}.dict-skeleton-chevron{width:17px;height:17px;border-radius:50%}.dict-skeleton-progress{display:block;height:3px;margin:0 14px;border-radius:2px}.dict-skeleton-rows{margin-top:8px;border-top:1px solid var(--border)}.dict-skeleton-row{display:flex;justify-content:space-between;gap:20px;padding:13px 14px;border-bottom:1px solid var(--border)}.dict-skeleton-row:last-child{border-bottom:0}.dict-skeleton-row span:first-child{width:32%;height:13px;border-radius:4px}.dict-skeleton-row span:last-child{width:22%;height:10px;border-radius:4px}.dictionary-view .add-lesson-fab{position:fixed;right:max(16px,calc(50% - 304px));bottom:78px;z-index:25;display:flex;align-items:center;justify-content:center;width:52px;height:52px;padding:0;border:0;border-radius:50%;background:var(--accent);color:var(--text-dark);box-shadow:0 6px 20px rgba(0,0,0,.45),0 0 0 1px rgba(212,168,71,.35);cursor:pointer;transition:transform var(--transition-fast),background var(--transition-fast)}.dictionary-view .add-lesson-fab:hover{background:var(--accent-bright)}.dictionary-view .add-lesson-fab:active{transform:scale(.92)}.dictionary-view .add-lesson-fab:focus-visible{outline:2px solid var(--text-primary);outline-offset:3px}.dictionary-view .add-words-fab{bottom:140px;width:44px;height:44px;border:1px solid rgba(212,168,71,.7);background:var(--bg-secondary);color:var(--accent);box-shadow:0 5px 16px rgba(0,0,0,.35)}.dictionary-view .add-words-fab:hover{background:rgba(212,168,71,.16)}.dict-toolbar-sticky{position:sticky;top:0;z-index:25;background:transparent;padding:8px 0 4px;margin-bottom:8px}.dict-toolbar-sticky.stuck{padding-bottom:12px}.dict-toolbar-sticky.stuck:before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);mask-image:linear-gradient(180deg,rgba(0,0,0,1) 0,rgba(0,0,0,1) 60%,rgba(0,0,0,0));-webkit-mask-image:linear-gradient(180deg,rgba(0,0,0,1) 0,rgba(0,0,0,1) 60%,rgba(0,0,0,0))}.dict-toolbar-row{position:relative;display:flex;align-items:center;gap:10px;margin-bottom:12px}.dict-toolbar-count{flex:1 1;text-align:right;font-size:12px;font-weight:700;color:var(--text-muted)}.dict-sort-row{display:flex;align-items:center;gap:6px;margin-bottom:12px;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}.dict-sort-row::-webkit-scrollbar{display:none}.dict-sort-row .filter-chip{flex:0 0 auto}.dict-search-toggle{width:40px;height:40px;flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--border);border-radius:50%;background:var(--bg-card);color:var(--text-muted);cursor:pointer;transition:all .2s}.dict-search-toggle.active{border-color:var(--accent);color:var(--accent)}.dict-search-float{position:absolute;inset:0 50px 0 0;z-index:5;display:flex;align-items:center;gap:8px;padding:0 12px;background:var(--bg-card);border:1px solid var(--accent);border-radius:var(--radius-sm);color:var(--text-muted);box-shadow:var(--shadow-sm)}.dict-search-float input{flex:1 1;min-width:0;background:none;border:none;outline:none;color:var(--text-primary);font-size:14px;appearance:none;-webkit-appearance:none}.dict-search-float input::-webkit-search-cancel-button,.dict-search-float input::-webkit-search-decoration,.dict-search-float input::-webkit-search-results-button,.dict-search-float input::-webkit-search-results-decoration{display:none;-webkit-appearance:none}.dict-search-float input::-ms-clear,.dict-search-float input::-ms-reveal{display:none;width:0;height:0}.dict-search-clear-btn{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border:none;border-radius:50%;background:var(--bg-elevated);color:var(--text-muted);cursor:pointer;padding:0;flex-shrink:0;transition:all .2s}.dict-search-clear-btn:hover{background:rgba(212,168,71,.2);color:var(--accent)}.search-voice-wrap{display:inline-flex;align-items:center;gap:4px;flex-shrink:0}.dictate-btn-sm{width:26px;height:26px;border-radius:50%}.search-voice-lang{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:20px;padding:0 5px;border:1px solid var(--border);border-radius:999px;background:var(--bg-elevated);color:var(--text-muted);font-size:9.5px;font-weight:800;letter-spacing:.02em;cursor:pointer;transition:all .2s}.search-voice-lang:hover{color:var(--accent);border-color:var(--accent)}.search-voice-lang:disabled{opacity:.5;cursor:default}.dict-batches{display:flex;flex-direction:column;gap:10px;padding-bottom:90px}.dict-batch{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-card);overflow:hidden}.dict-batch-head{display:flex;align-items:center;gap:10px;width:100%;padding:13px 14px 10px;text-align:left;background:none;border:none;cursor:pointer;color:inherit}.dict-batch-title-wrap{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:2px}.dict-batch-title{font-size:14.5px;font-weight:800;color:var(--text-primary)}.dict-batch-meta{font-size:11.5px;color:var(--text-muted)}.dict-batch-desc{margin-top:3px;font-size:12px;line-height:1.4;color:var(--text-primary);opacity:.8;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.dict-batch-training{display:inline-flex;align-items:center;gap:4px;margin-top:3px;font-size:10.5px;font-weight:700;color:var(--accent);text-align:left}.dict-batch-pct{font-size:13px;font-weight:800;color:var(--accent);flex:0 0 auto}.dict-batch-pct.done{color:var(--green)}.dict-batch-chevron{flex:0 0 auto;color:var(--text-muted);transition:transform .2s}.dict-batch-chevron.open{transform:rotate(180deg)}.dict-batch-bar-wrap{height:3px;margin:0 14px;background:var(--bg-elevated);border-radius:2px;overflow:hidden}.dict-batch-bar{height:100%;background:linear-gradient(90deg,var(--accent),var(--green));border-radius:2px;transition:width .4s}.dict-batch-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:10px 14px 12px}.dict-train-btn{flex:1 1 auto;min-width:0;display:inline-flex;align-items:center;justify-content:center;gap:7px;height:36px;padding:0 14px;font-size:13px;font-weight:800;white-space:nowrap;background:rgba(212,168,71,.13);color:var(--accent);border:1px solid rgba(212,168,71,.4);border-radius:999px;cursor:pointer;transition:all .2s}.dict-train-btn:hover{background:rgba(212,168,71,.22)}.dict-train-btn:disabled{opacity:.45;cursor:not-allowed}.training-reset-all-btn{color:var(--accent)}.dict-batch-actions .icon-btn{width:36px;height:36px;border-radius:50%}.dict-batch-actions .icon-btn.active{color:var(--accent);border-color:var(--accent)}.dict-batch-actions .dict-batch-add{color:var(--accent);border-color:rgba(212,168,71,.55);background:rgba(212,168,71,.08)}.dict-batch-brief{margin:0 14px 12px;padding:10px 12px;border:1px solid var(--border);border-left:2px solid var(--accent);border-radius:var(--radius-sm);background:var(--bg-elevated)}.dict-batch-brief strong{display:block;margin-bottom:4px;font-size:10.5px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:var(--text-muted)}.dict-batch-brief p{margin:0;font-size:12.5px;line-height:1.5;white-space:pre-line;color:var(--text-primary)}.dict-list{display:flex;flex-direction:column;border-top:1px solid var(--border)}.dict-row-wrap{display:flex;align-items:center;border-bottom:1px solid var(--border);transition:background .15s}.dict-row-wrap:last-child{border-bottom:none}.dict-row-wrap:hover{background:rgba(212,168,71,.06)}.dict-row{flex:1 1;min-width:0;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 0 10px 14px;text-align:left;background:none;border:none;cursor:pointer;transition:background .15s}.dict-row-main{display:flex;flex-direction:column;gap:1px;min-width:0}.dict-word{font-size:14.5px;font-weight:700;color:var(--text-primary)}.dict-translation{font-size:12px;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dict-forms{font-style:normal;opacity:.8}.dict-row-card{cursor:default;padding-right:14px}.dict-row-card .dict-word{font-size:14px;line-height:1.35;overflow-wrap:anywhere}.dict-row-card .dict-translation{white-space:normal;overflow:visible;line-height:1.35}.dict-row-meta{display:flex;align-items:center;gap:5px;flex:0 0 auto}.dict-chip{font-size:10px;font-weight:600;padding:2px 6px;color:var(--text-muted);background:var(--bg-elevated);border-radius:5px;white-space:nowrap}.dict-chip.level{color:var(--accent);font-weight:800}.dict-chip.pos{font-style:italic}.dict-row-side{padding:0 2px}.dict-row-delete,.dict-row-side{display:flex;align-items:center;flex:0 0 auto}.dict-row-delete{width:34px;justify-content:center;background:none;border:none;color:var(--text-muted);opacity:.4;cursor:pointer;transition:all .2s}.dict-row-delete:hover{opacity:1;color:var(--red)}.dict-nothing{text-align:center;color:var(--text-muted);font-size:13px;padding:18px 0}.gender-m{color:#6ea8e0}.gender-f{color:#e08aa8}.gender-n{color:#7fc9a0}.gender-pl{color:#d0b45e}.icon-btn.danger{color:var(--red)}.dict-filter-toggle{height:40px}.all-filter-toggle{display:flex;align-items:center;gap:6px;padding:0 14px;height:40px;flex-shrink:0;white-space:nowrap;border-radius:999px;border:1px solid var(--border);background:var(--bg-card);color:var(--text-muted);font-size:13px;font-weight:700;cursor:pointer;transition:all .2s}.all-filter-toggle.active{border-color:var(--accent);color:var(--accent)}.all-filter-count{display:inline-flex;align-items:center;justify-content:center;min-width:16px;height:16px;padding:0 4px;border-radius:8px;background:var(--accent);color:var(--bg-primary);font-size:10px;font-weight:800}.all-filter-panel{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-card);padding:12px;margin-bottom:12px;display:flex;flex-direction:column;gap:12px;box-shadow:var(--shadow-sm)}.filter-group-label{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);margin-bottom:6px}.filter-chips{display:flex;gap:6px;flex-wrap:wrap;align-items:center}.filter-chip{padding:4px 10px;border-radius:20px;font-size:12px;font-weight:700;cursor:pointer;border:1px solid var(--border);background:var(--bg-elevated);color:var(--text-muted);transition:all .2s;white-space:nowrap}.filter-chip.active{background:rgba(212,168,71,.15);border-color:var(--accent);color:var(--accent)}.filter-chip[aria-pressed=true]{box-shadow:inset 0 0 0 1px rgba(212,168,71,.14)}.filter-reset-btn{align-self:flex-start;font-size:12px;font-weight:700;color:var(--text-muted);background:transparent;border:none;cursor:pointer;padding:4px 0;text-decoration:underline}.filter-reset-btn:hover{color:var(--accent)}.verb-modes-hint{font-size:11px;color:var(--text-muted);margin:2px 0 0}.verbs-view{padding-bottom:150px}.verbs-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:12px}.verbs-train-all-btn{flex:1 1 auto;min-width:0;padding:0 16px}.verbs-groups{display:flex;flex-direction:column;gap:10px}.verb-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;border-top:1px solid var(--border)}.verb-table{width:100%;min-width:480px;border-collapse:collapse}.verb-table thead th{text-align:left;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.03em;color:var(--text-muted);padding:8px 14px;border-bottom:1px solid var(--border)}.verb-row{cursor:pointer;border-left:3px solid transparent;transition:background .15s}.verb-row:hover{background:rgba(212,168,71,.06)}.verb-row td{padding:10px 14px;border-bottom:1px solid var(--border);font-size:14px;color:var(--text-primary)}.verb-row:last-child td{border-bottom:none}.verb-row-weak{border-left-color:var(--accent)}.verb-row-strong{border-left-color:var(--red)}.verb-row-mixed{border-left-color:#d98d52}.verb-row-special{border-left-color:#bf7bd1}.verb-row-impersonal{border-left-color:#6da8d8}.verb-row-difficult{background:rgba(196,106,106,.045)}.verb-type-chip{text-transform:none}.verb-type-chip.active{box-shadow:inset 0 0 0 1px currentColor}.verb-type-badge{display:inline-flex;align-items:center;margin-left:7px;padding:2px 6px;border:1px solid var(--border);border-radius:999px;color:var(--text-muted);font-size:9px;font-weight:800;letter-spacing:.02em;vertical-align:middle}.verb-type-badge.verb-type-strong{color:var(--red);border-color:rgba(196,106,106,.5)}.verb-type-badge.verb-type-mixed{color:#d98d52;border-color:rgba(217,141,82,.5)}.verb-type-badge.verb-type-special{color:#bf7bd1;border-color:rgba(191,123,209,.5)}.verb-type-badge.verb-type-impersonal{color:#6da8d8;border-color:rgba(109,168,216,.5)}.training-difficulty-badge{display:inline-flex;align-items:center;margin-left:7px;padding:2px 6px;border:1px solid rgba(196,106,106,.45);border-radius:999px;color:var(--red);font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;vertical-align:middle}.verb-cell-infinitive{display:flex;flex-direction:column;gap:1px}.verb-infinitive{font-weight:700}.verb-translation{font-size:12px;color:var(--text-muted)}.verb-form-row{display:flex;align-items:center;gap:6px}.verb-form-row .speak-btn{flex-shrink:0}.verb-form-example{display:block;font-size:12px;color:var(--text-muted);margin-top:1px}.verb-cell-hidden>*{filter:blur(6px);opacity:.55;transition:filter .15s,opacity .15s}.verb-cell-hidden:focus-within>*,.verb-cell-hidden:hover>*{filter:none;opacity:1}.verb-translation-hidden{filter:blur(6px);opacity:.55;transition:filter .15s,opacity .15s}.verb-translation-hidden:hover{filter:none;opacity:1}.verbs-fabs{position:fixed;left:12px;right:12px;bottom:calc(88px + env(safe-area-inset-bottom, 0px));z-index:30;max-width:620px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;pointer-events:none}.verbs-fab{pointer-events:auto;display:inline-grid;place-items:center;width:46px;height:46px;border-radius:50%;border:1px solid var(--border-strong);background:var(--bg-elevated);color:var(--text-primary);box-shadow:0 6px 18px rgba(0,0,0,.45);transition:background var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast)}.verbs-fab:active{transform:scale(.94)}.verbs-fab.active{border-color:var(--accent);color:var(--accent);background:rgba(212,168,71,.16)}.verb-quiz-card{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-card);padding:20px;display:flex;flex-direction:column;gap:14px;box-shadow:var(--shadow-sm)}.verb-quiz-infinitive{display:flex;align-items:center;gap:8px;font-size:22px;font-weight:800;color:var(--text-primary)}.verb-quiz-translation{font-size:13px;color:var(--text-muted);margin-top:-10px}.verb-quiz-translation-row{display:flex;align-items:center;gap:8px;min-width:0;margin-top:-10px}.verb-quiz-translation-row .verb-quiz-translation{flex:1 1;min-width:0;margin-top:0}.quiz-translation-toggle{flex:0 0 auto;width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--border);border-radius:50%;background:var(--bg-elevated);color:var(--text-muted);cursor:pointer}.quiz-translation-toggle:focus-visible,.quiz-translation-toggle:hover{color:var(--accent);border-color:var(--accent);outline:none}.quiz-translation-hidden{filter:blur(5px);-webkit-user-select:none;user-select:none;cursor:help;transition:filter .15s}.quiz-translation-hidden:hover{filter:none}.verb-quiz-field{display:flex;flex-direction:column;gap:5px;min-width:0}.verb-quiz-field label{display:flex;align-items:center;gap:7px;font-size:12px;font-weight:700;color:var(--text-muted)}.verb-quiz-field-note{color:var(--green);font-size:10px;font-weight:600;opacity:.85}.verb-quiz-input-row{display:flex;align-items:center;gap:8px;min-width:0}.verb-quiz-input-row .verb-quiz-input{flex:1 1;min-width:0}.verb-quiz-input{height:42px;padding:0 12px;font-size:15px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-elevated);color:var(--text-primary)}.verb-quiz-input:focus{outline:none;border-color:var(--accent)}.verb-quiz-input:disabled{opacity:1;cursor:default}.verb-quiz-input.locked{border-color:rgba(122,171,106,.5);background:rgba(122,171,106,.1);color:var(--text-primary)}.verb-quiz-input.has-suffix{border-radius:var(--radius-sm) 0 0 var(--radius-sm)}.verb-quiz-input-suffix{display:inline-flex;align-items:center;height:42px;margin-left:-8px;padding:0 11px;border:1px solid var(--accent);border-left:0;border-radius:0 var(--radius-sm) var(--radius-sm) 0;background:rgba(212,168,71,.12);color:var(--accent-bright);font-size:15px;font-weight:800}.verb-quiz-input-suffix.locked{border-color:rgba(122,171,106,.5);background:rgba(122,171,106,.1);color:var(--green)}.verb-quiz-input.correct{border-color:var(--green);background:rgba(122,171,106,.12)}.verb-quiz-input.almost{border-color:var(--accent);background:rgba(212,168,71,.12)}.verb-quiz-input.wrong{border-color:var(--red);background:rgba(196,106,106,.12)}.verb-quiz-expected{font-size:12px;color:var(--text-muted)}.verb-quiz-expected.wrong{color:var(--red)}.verb-quiz-expected.almost{color:var(--text-muted)}.verb-quiz-diff{color:var(--accent-bright);font-weight:800;text-decoration:underline;text-underline-offset:2px}.verb-quiz-phrase-prompt{font-size:18px;font-weight:700;color:var(--text-primary);line-height:1.35}.verb-quiz-loading{display:flex;align-items:center;gap:8px;color:var(--text-muted);font-size:14px;padding:8px 0}.verb-quiz-skeleton{display:flex;flex-direction:column;gap:8px}.verb-quiz-skeleton-line{height:20px;border-radius:6px;background:var(--bg-elevated)}.verb-quiz-skeleton-line.input{height:42px;border-radius:var(--radius-sm)}.dictate-btn.peek-active{color:var(--accent);border-color:var(--accent);background:rgba(212,168,71,.14)}.verb-quiz-peek-hint{font-size:12px;color:var(--accent);font-style:italic}.verb-quiz-conjugation-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px 10px}@media (max-width:460px){.verb-quiz-conjugation-grid{grid-template-columns:1fr}}.verb-quiz-summary{display:flex;flex-direction:column;align-items:center;gap:14px;padding:40px 20px;text-align:center}.verb-quiz-summary strong{font-size:18px;color:var(--text-primary)}.verb-phrase-tutor{display:flex;flex-direction:column;gap:14px;width:100%}.verb-phrase-tutor-heading{display:flex;align-items:center;gap:10px;padding-bottom:2px}.verb-phrase-tutor-heading-icon{display:grid;place-items:center;width:34px;height:34px;flex:0 0 auto;border:1px solid rgba(112,209,199,.4);border-radius:11px;color:#8be0d7;background:rgba(53,139,135,.2)}.verb-phrase-tutor-heading span,.verb-phrase-tutor-heading strong{display:block}.verb-phrase-tutor-heading strong{color:var(--text-primary);font-size:14px}.verb-phrase-tutor-heading span{margin-top:2px;color:var(--text-muted);font-size:11px}.verb-phrase-tutor-heading-chat{margin-left:auto;color:var(--text-muted)}.verb-phrase-tutor-challenge{display:flex;flex-direction:column;gap:5px;padding:14px 15px;border:1px solid rgba(212,168,71,.42);border-radius:14px;background:radial-gradient(circle at 90% 0,rgba(212,168,71,.14),transparent 48%),rgba(212,168,71,.08)}.verb-phrase-tutor-label{color:var(--accent);font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.verb-phrase-tutor-challenge strong{color:var(--text-primary);font-size:17px;line-height:1.35}.verb-phrase-tutor-challenge>span:last-child{color:var(--text-muted);font-size:12px;line-height:1.4}.verb-phrase-tutor-messages{display:flex;flex-direction:column;gap:9px;max-height:min(360px,42vh);overflow-y:auto;padding:2px 2px 4px;scroll-behavior:smooth}.verb-phrase-tutor-message{width:fit-content;max-width:90%;padding:10px 12px;border:1px solid var(--border);border-radius:13px 13px 13px 4px;background:var(--bg-elevated)}.verb-phrase-tutor-message.user{align-self:flex-end;border-color:rgba(112,209,199,.3);border-radius:13px 13px 4px 13px;background:rgba(53,139,135,.16)}.verb-phrase-tutor-message-role{display:block;margin-bottom:3px;color:var(--text-muted);font-size:10px;font-weight:800;letter-spacing:.03em}.verb-phrase-tutor-message.user .verb-phrase-tutor-message-role{color:#8be0d7}.verb-phrase-tutor-message p{margin:0;color:var(--text-primary);font-size:14px;line-height:1.45;white-space:pre-wrap}.verb-phrase-tutor-message.typing{color:var(--text-muted)}.verb-phrase-tutor-typing{display:inline-flex;align-items:center;gap:6px;font-size:13px}.verb-phrase-tutor-correction{display:flex;flex-direction:column;gap:6px;padding:12px 13px;border:1px solid rgba(212,168,71,.38);border-radius:13px;background:rgba(212,168,71,.08)}.verb-phrase-tutor-correction.accepted{border-color:rgba(122,171,106,.48);background:rgba(122,171,106,.1)}.verb-phrase-tutor-correction-title{display:flex;align-items:center;gap:7px;color:var(--accent);font-size:13px}.verb-phrase-tutor-correction.accepted .verb-phrase-tutor-correction-title{color:var(--green)}.verb-phrase-tutor-correction-target{display:flex;align-items:center;gap:8px;color:var(--text-primary);font-size:16px;line-height:1.35}.verb-phrase-tutor-correction-target .speak-btn{flex:0 0 auto}.verb-phrase-tutor-correction-translation{color:var(--text-muted);font-size:12px}.verb-phrase-tutor-correction p{margin:2px 0 0;color:var(--text-primary);font-size:13px;line-height:1.45}.verb-phrase-tutor-suggestions{display:flex;flex-wrap:wrap;gap:7px}.verb-phrase-tutor-mode-row button,.verb-phrase-tutor-suggestions button{display:inline-flex;align-items:center;gap:5px;min-height:30px;padding:5px 9px;border:1px solid var(--border-strong);border-radius:999px;color:var(--text-muted);background:transparent;cursor:pointer;font:inherit;font-size:11px}.verb-phrase-tutor-mode-row button:focus-visible,.verb-phrase-tutor-mode-row button:hover,.verb-phrase-tutor-suggestions button:focus-visible,.verb-phrase-tutor-suggestions button:hover{border-color:var(--accent);color:var(--accent);outline:none}.verb-phrase-tutor-mode-row button:disabled,.verb-phrase-tutor-suggestions button:disabled{cursor:default;opacity:.55}.verb-phrase-tutor-input{display:flex;flex-direction:column;gap:7px;padding:10px;border:1px solid var(--border-strong);border-radius:13px;background:rgba(0,0,0,.08)}.verb-phrase-tutor-mode-row{display:flex;align-items:center;justify-content:space-between;gap:10px;color:var(--text-muted);font-size:11px}.verb-phrase-tutor-mode-row button{min-height:25px;padding:3px 7px;border-color:transparent;color:var(--accent);font-size:10px}.verb-phrase-tutor-input-row{display:flex;align-items:flex-end;gap:7px}.verb-phrase-tutor-input textarea{width:100%;min-height:48px;resize:vertical;padding:10px;border:1px solid var(--border);border-radius:9px;outline:none;color:var(--text-primary);background:var(--bg-elevated);font:inherit;font-size:14px;line-height:1.35}.verb-phrase-tutor-input textarea:focus{border-color:var(--accent);box-shadow:0 0 0 2px rgba(212,168,71,.1)}.verb-phrase-tutor-input textarea::placeholder{color:var(--text-muted);opacity:.8}.verb-phrase-tutor-input-actions{display:flex;align-items:center;gap:5px}.verb-phrase-tutor-input-actions .dictate-btn,.verb-phrase-tutor-send{display:inline-grid;place-items:center;width:37px;height:37px;flex:0 0 auto;border:1px solid var(--border-strong);border-radius:9px;color:var(--text-muted);background:var(--bg-elevated)}.verb-phrase-tutor-send{color:var(--accent);border-color:rgba(212,168,71,.5);cursor:pointer}.verb-phrase-tutor-send:hover:not(:disabled){background:rgba(212,168,71,.14)}.verb-phrase-tutor-send:disabled{cursor:default;opacity:.45}.verb-phrase-tutor-error{display:flex;align-items:center;gap:9px;padding:9px 10px;border:1px solid rgba(196,106,106,.45);border-radius:10px;color:var(--red);font-size:12px;line-height:1.35}.verb-phrase-tutor-error span{flex:1 1}.verb-phrase-tutor-error-actions{display:flex;align-items:center;gap:8px;flex:0 0 auto}.verb-phrase-tutor-error button,.verb-phrase-tutor-skip{display:inline-flex;align-items:center;gap:5px;border:0;color:var(--red);background:transparent;cursor:pointer;font:inherit;font-size:11px;font-weight:700}.verb-phrase-tutor-skip{align-self:flex-start;margin-top:6px;padding:3px 0;color:var(--text-muted);font-weight:600}.verb-phrase-tutor-error button:disabled{cursor:default;opacity:.55}.verb-phrase-tutor-next{display:inline-flex;align-items:center;justify-content:center;gap:7px;width:100%}@media (max-width:420px){.verb-phrase-tutor-message{max-width:96%}.verb-phrase-tutor-mode-row{align-items:flex-start;flex-direction:column;gap:4px}}@media (prefers-reduced-motion:reduce){.verb-phrase-tutor-messages{scroll-behavior:auto}}.verb-missing{border:1px dashed var(--border);border-radius:var(--radius-md);background:var(--bg-card);padding:14px;margin-top:4px}.verb-missing-head{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.verb-missing-head strong{font-size:14px;color:var(--text-primary)}.verb-missing-fill-all{flex:0 0 auto;padding:0 14px;height:32px;font-size:12px}.verb-missing-hint{font-size:12px;color:var(--text-muted);margin:6px 0 10px}.verb-missing-list{display:flex;flex-direction:column;gap:2px}.verb-missing-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 4px;border-top:1px solid var(--border)}.verb-missing-row:first-child{border-top:none}.verb-missing-word{font-size:13.5px;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.verb-missing-word em{font-style:normal;color:var(--text-muted)}.card-marker-stack{display:flex;flex-direction:column;align-items:flex-start;gap:3px;flex-shrink:0}.card-marker{display:inline-block;padding:2px 6px;border-radius:5px;font-size:9px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;background:var(--bg-elevated);color:var(--text-muted)}.card-marker.lead{font-size:11px;padding:3px 9px;border-radius:6px}.card-marker.word{background:rgba(212,168,71,.15);color:var(--accent)}.card-marker.phrase{background:rgba(106,152,196,.15);color:var(--blue)}.card-marker.sentence{background:rgba(122,171,106,.15);color:var(--green)}.card-marker.pos{background:rgba(255,255,255,.05);color:var(--text-muted);text-transform:none;letter-spacing:0}.card-marker.level{background:rgba(122,171,106,.12);color:var(--green)}.book-card.opening{opacity:.6;pointer-events:none}.book-opening-note{font-size:11px;font-weight:600;color:var(--accent)}.practice-view{padding-bottom:120px}.practice-list{display:flex;flex-direction:column;gap:12px}.action-card.nouns{background:linear-gradient(135deg,rgba(110,168,224,.18) 0,var(--bg-elevated) 60%);border-color:rgba(110,168,224,.25)}.action-card.nouns .action-card-icon{background:rgba(110,168,224,.15);color:#8bbdea}.action-card.nouns .action-card-arrow,.action-card.nouns .action-card-label{color:#8bbdea}.action-card.otherpos{background:linear-gradient(135deg,rgba(186,133,224,.18) 0,var(--bg-elevated) 60%);border-color:rgba(186,133,224,.25)}.action-card.otherpos .action-card-icon{background:rgba(186,133,224,.15);color:#c79bea}.action-card.otherpos .action-card-arrow,.action-card.otherpos .action-card-label{color:#c79bea}.dictionary-view{padding-bottom:120px}.pack-bar{position:relative;height:4px}.pack-bar>*{position:absolute;inset:0 auto 0 0}.pack-bar-seen{background:rgba(212,168,71,.28);border-radius:2px;transition:width .4s}.pack-bar-learned{z-index:1}.nouns-view{padding-bottom:150px}.nouns-rules-btn{margin-left:auto;flex-shrink:0}.noun-table{min-width:320px}.noun-row{border-left-width:3px}.gender-row-m{border-left-color:#6ea8e0}.gender-row-f{border-left-color:#e08aa8}.gender-row-n{border-left-color:#7fc9a0}.gender-row-pl{border-left-color:#d0b45e}.gender-row-none{border-left-color:var(--border)}.noun-row-learned .noun-headword:after{content:"✓";margin-left:6px;font-size:11px;color:var(--green)}.noun-headword{font-weight:700}.noun-article{font-weight:800}.noun-article-hidden{filter:blur(6px);opacity:.5;transition:filter .15s,opacity .15s}.noun-article-hidden:hover{filter:none;opacity:1}.noun-row-blind.gender-row-f,.noun-row-blind.gender-row-m,.noun-row-blind.gender-row-n,.noun-row-blind.gender-row-pl{border-left-color:var(--border);transition:border-color .15s}.noun-row-blind .noun-headword .gender-f,.noun-row-blind .noun-headword .gender-m,.noun-row-blind .noun-headword .gender-n,.noun-row-blind .noun-headword .gender-pl{color:var(--text-primary);transition:color .15s}.noun-row-blind.gender-row-m:focus-within,.noun-row-blind.gender-row-m:hover{border-left-color:#6ea8e0}.noun-row-blind.gender-row-f:focus-within,.noun-row-blind.gender-row-f:hover{border-left-color:#e08aa8}.noun-row-blind.gender-row-n:focus-within,.noun-row-blind.gender-row-n:hover{border-left-color:#7fc9a0}.noun-row-blind.gender-row-pl:focus-within,.noun-row-blind.gender-row-pl:hover{border-left-color:#d0b45e}.noun-row-blind:focus-within .noun-headword .gender-m,.noun-row-blind:hover .noun-headword .gender-m{color:#6ea8e0}.noun-row-blind:focus-within .noun-headword .gender-f,.noun-row-blind:hover .noun-headword .gender-f{color:#e08aa8}.noun-row-blind:focus-within .noun-headword .gender-n,.noun-row-blind:hover .noun-headword .gender-n{color:#7fc9a0}.noun-row-blind:focus-within .noun-headword .gender-pl,.noun-row-blind:hover .noun-headword .gender-pl{color:#d0b45e}.verbs-fab-group{display:flex;gap:10px;pointer-events:none}.verbs-fab-label{font-size:14px;font-weight:800;letter-spacing:-.01em}.filter-chip.gender-m:not(.active){color:#6ea8e0;border-color:rgba(110,168,224,.4)}.filter-chip.gender-f:not(.active){color:#e08aa8;border-color:rgba(224,138,168,.4)}.filter-chip.gender-n:not(.active){color:#7fc9a0;border-color:rgba(127,201,160,.4)}.filter-chip.gender-pl:not(.active){color:#d0b45e;border-color:rgba(208,180,94,.4)}.noun-quiz-dots{display:flex;gap:4px;margin-bottom:14px;flex-wrap:wrap}.noun-quiz-dot{flex:1 1 14px;min-width:14px;max-width:42px;height:14px;display:grid;place-items:center;border-radius:3px;background:var(--bg-elevated);color:var(--text-dark);transition:background .2s}.noun-quiz-dot.ok{background:var(--green)}.noun-quiz-dot.miss{background:var(--red)}.noun-quiz-dot.current{box-shadow:inset 0 0 0 2px var(--accent)}.noun-quiz-dot-x{font-size:11px;font-weight:800;line-height:1}.noun-quiz-native-prompt{min-height:48px;display:flex;align-items:center;font-size:clamp(22px,6vw,32px);font-weight:800;color:var(--text-primary);line-height:1.15}.noun-quiz-audio-prompt{min-height:88px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:var(--text-muted);font-size:12px;font-weight:700}.noun-quiz-audio-prompt .speak-btn{width:56px;height:56px;border-radius:50%;border-color:var(--accent);color:var(--accent);background:rgba(212,168,71,.12)}.noun-quiz-audio-word-row{display:flex;align-items:center;gap:6px;min-height:28px}.noun-quiz-audio-word{display:inline-block;max-width:min(70vw,280px);padding:2px 4px;color:var(--text-primary);font-size:18px;font-weight:800;line-height:1.2;filter:blur(7px);opacity:.58;-webkit-user-select:none;user-select:none;cursor:help;transition:filter .15s,opacity .15s}.noun-quiz-audio-word.visible,.noun-quiz-audio-word:hover{filter:none;opacity:1;-webkit-user-select:text;user-select:text}.noun-quiz-audio-word-toggle{flex:0 0 auto}.noun-quiz-audio-error{margin:0 0 12px;color:var(--red);font-size:13px}.noun-quiz-regenerate{align-self:center;display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:36px;padding:6px 10px;color:var(--text-muted);background:transparent;border:1px solid var(--border);border-radius:var(--radius-sm);font-size:12px;font-weight:700;cursor:pointer}.noun-quiz-regenerate:not(:disabled):hover{color:var(--accent);border-color:var(--accent)}.noun-quiz-regenerate:disabled{opacity:.65;cursor:wait}.noun-quiz-choices{display:flex;flex-direction:column;gap:8px}.noun-quiz-choice{display:flex;align-items:center;gap:10px;min-height:48px;padding:0 16px;font-size:16px;font-weight:700;text-align:left;color:var(--text-primary);background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-sm);transition:background var(--transition-fast),border-color var(--transition-fast)}.noun-quiz-choice:not(:disabled):hover{border-color:var(--border-strong);background:rgba(212,168,71,.07)}.noun-quiz-choice:not(:disabled):active{transform:scale(.995)}.noun-quiz-choice.picked{border-color:var(--accent)}.noun-quiz-choice.correct{border-color:var(--green);background:rgba(122,171,106,.16);color:var(--green)}.noun-quiz-choice.wrong{border-color:var(--red);background:rgba(196,106,106,.16);color:var(--red)}.noun-quiz-choice:disabled{opacity:1;cursor:default}.noun-quiz-shortcut{margin-left:auto;padding:2px 6px;color:var(--text-muted);font-size:12px;font-weight:600;border:1px solid var(--border);border-radius:4px}.noun-quiz-hint-toggle{align-self:flex-start;display:inline-flex;align-items:center;gap:6px;padding:6px 2px;font-size:13px;font-weight:700;color:var(--text-muted);background:none;border:0}.noun-quiz-hint-toggle.active,.noun-quiz-hint-toggle:hover{color:var(--accent)}.noun-quiz-hint{font-size:13.5px;line-height:1.5;color:var(--text-muted);padding:10px 12px;border-left:2px solid var(--accent);background:rgba(212,168,71,.06);border-radius:0 var(--radius-sm) var(--radius-sm) 0}.noun-quiz-explain{font-size:13.5px;line-height:1.5;color:var(--text-primary);padding:12px 14px;border-radius:var(--radius-sm);border:1px solid var(--border)}.noun-quiz-explain.ok{border-color:rgba(122,171,106,.45);background:rgba(122,171,106,.12)}.noun-quiz-explain.miss{border-color:rgba(196,106,106,.45);background:rgba(196,106,106,.1)}.noun-quiz-explain strong{font-weight:800}.noun-quiz-actions{display:flex;align-items:center;gap:10px}.noun-quiz-actions .primary-btn{flex:1 1}.noun-quiz-back{flex:0 0 auto;display:inline-flex;align-items:center;gap:4px;padding:0 14px;height:44px;white-space:nowrap}.gender-rules-sheet{width:min(100%,580px);max-height:92svh;overflow-y:auto;padding:0 18px 40px;border-top:1px solid var(--border-strong);border-radius:20px 20px 0 0;background:var(--bg-secondary);animation:modal-slide-up .28s cubic-bezier(.16,1,.3,1) forwards}.gender-rules-head{position:sticky;top:0;z-index:5;display:flex;align-items:center;gap:10px;margin:0 -18px 4px;padding:12px 18px;background:var(--bg-secondary);border-bottom:1px solid var(--border)}.gender-rules-head h2{font-size:18px;font-weight:800;color:var(--text-primary)}.gender-rules-head .icon-btn{margin-left:auto}.gender-rules-weak{margin:14px 0 4px;padding:12px 14px;border:1px solid rgba(212,168,71,.4);border-radius:var(--radius-md);background:rgba(212,168,71,.07)}.gender-rules-weak strong{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--accent)}.gender-rules-weak-list{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0 8px}.gender-rules-weak p{font-size:12px;color:var(--text-muted)}.gender-rules-group{margin-top:20px}.gender-rules-group h3{font-size:16px;font-weight:800}.gender-rules-blurb{font-size:12.5px;color:var(--text-muted);margin:2px 0 10px}.gender-rules-list{display:flex;flex-direction:column;gap:8px;list-style:none}.gender-rules-item{padding:10px 12px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-card)}.gender-rules-item-head{display:flex;align-items:center;gap:8px}.gender-rules-item code{font-size:14px;font-weight:800;font-family:inherit}.gender-rules-confidence{margin-left:auto;font-size:10px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;padding:2px 7px;border-radius:5px;background:var(--bg-elevated);color:var(--text-muted)}.gender-rules-confidence.c-always{background:rgba(122,171,106,.16);color:var(--green)}.gender-rules-confidence.c-high{background:rgba(212,168,71,.16);color:var(--accent)}.gender-rules-family{display:block;font-size:11.5px;color:var(--text-muted);margin-top:3px}.gender-rules-item p{font-size:13px;line-height:1.45;color:var(--text-primary);margin-top:6px}.gender-rules-footer{margin-top:22px;font-size:12px;color:var(--text-muted);line-height:1.5}.video-remove-history{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;min-height:44px;margin-top:10px;padding:6px 8px;font-size:12px;color:var(--text-muted);background:transparent;border:1px solid var(--border);border-radius:8px;cursor:pointer}.video-remove-history:hover{color:var(--text-primary);border-color:var(--accent)}.video-remove-history:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.stats-home-screen{padding-top:10px}.stats-home-header{margin-bottom:8px}.stats-home-call{border-color:rgba(212,168,71,.34)}.stats-home-level{padding:21px 16px 16px;border-color:rgba(104,128,218,.52);background:radial-gradient(circle at 90% 0,rgba(135,54,163,.32),transparent 34%),linear-gradient(112deg,rgba(17,35,70,.98),rgba(38,18,63,.98));box-shadow:0 12px 30px rgba(12,12,32,.2)}.stats-home-level-head{gap:14px}.stats-home-profile-pill{border-color:rgba(83,167,255,.52);background:rgba(54,111,190,.2)}.stats-home-level h2{max-width:500px;font-size:clamp(19px,4.8vw,25px)}.stats-home-level p{color:rgba(211,215,236,.56)}.stats-home-level-badge{min-width:130px}.stats-home-level-badge strong{color:#aeb6d9;font-size:29px}.stats-home-level-badge em{color:rgba(204,211,239,.6);font-weight:700}.stats-home-level-rule{margin:19px 0 12px;background:rgba(221,225,246,.76)}.stats-home-progress-labels span:first-child{color:#67e3b5}.stats-home-progress-empty{background:rgba(10,18,42,.72)}.stats-home-progress-empty span{width:0!important;background:transparent;box-shadow:none}.stats-home-progress-foot{color:rgba(187,195,226,.5)}.stats-home-section{margin-top:22px}.stats-home-metrics{gap:10px}.stats-home-metric{min-height:105px;padding:12px 12px 11px;border-color:rgba(218,213,196,.12);border-radius:11px;background:rgba(29,29,29,.9)}.stats-home-footnote{color:rgba(196,202,224,.44)}.stats-home-modal-level-unknown{display:grid;grid-template-columns:auto 1fr;gap:5px 16px}.stats-home-modal-level-unknown>p{grid-column:1/-1;margin:11px 0 0;color:rgba(211,218,241,.62);font-size:12px;line-height:1.45}.stats-home-modal-level-unknown>div:first-child strong{color:rgba(220,225,248,.78)}.stats-home-modal-level-unknown .stats-home-modal-level-copy{text-align:right}.stats-home-modal-level-unknown .stats-home-modal-level-copy strong{color:#83d8c0;font-size:14px}.stats-home-modal-note{margin-top:13px;font-size:11px;line-height:1.45}.stats-home-screen{padding-top:8px;padding-bottom:112px}.stats-home-header{padding-top:20px;margin-bottom:12px}.stats-home-header .home-title{font-size:26px}.stats-home-call{width:42px;height:42px;border-color:rgba(212,168,71,.36);color:var(--accent);background:rgba(212,168,71,.08)}.stats-home-call:hover{border-color:var(--accent);background:rgba(212,168,71,.16)}.stats-home-level{margin-top:16px;padding:20px 16px 16px;border-color:rgba(94,129,217,.58);border-radius:16px;background:radial-gradient(circle at 88% 0,rgba(139,49,165,.3),transparent 35%),linear-gradient(112deg,rgba(18,35,72,.99),rgba(41,17,66,.99));box-shadow:0 12px 28px rgba(13,14,39,.22)}.stats-home-level-head{gap:16px}.stats-home-profile-pill{border-color:rgba(74,166,255,.54);background:rgba(51,111,191,.2)}.stats-home-level h2{max-width:510px;margin-top:9px;font-size:clamp(19px,4.5vw,25px)}.stats-home-level p{margin-top:8px;color:rgba(204,211,237,.58)}.stats-home-level-badge{min-width:164px}.stats-home-level-badge strong{color:#55e4ac;font-size:30px}.stats-home-level-badge em{color:#55dca8;font-size:10px}.stats-home-level-rule{margin:18px 0 12px;background:rgba(217,225,249,.74)}.stats-home-progress-labels{align-items:baseline;font-size:10px}.stats-home-progress-labels span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stats-home-progress-labels span:first-child{color:#5be1b4;font-weight:800}.stats-home-progress-segments{display:flex;gap:0;background:rgba(9,17,42,.78)}.stats-home-progress-segments span{flex:0 0 auto;min-width:0;height:100%;border-radius:0;box-shadow:none;transition:width .35s ease}.stats-home-progress-segments .stats-home-progress-current{background:#45d8ad}.stats-home-progress-segments .stats-home-progress-next{background:#7366e9}.stats-home-progress-foot{margin-top:5px;font-size:10px}.stats-home-section{margin-top:21px}.stats-home-section-head{margin-bottom:10px}.stats-home-section h2{font-size:18px}.stats-home-metrics{gap:9px}.stats-home-metric{min-height:103px;padding:12px 12px 10px;border-color:rgba(212,207,194,.13);border-radius:10px;background:rgba(29,29,29,.92);box-shadow:none}.stats-home-metric-icon{width:25px;height:25px;margin-bottom:8px;border-radius:7px}.stats-home-metric>strong{font-size:25px}.stats-home-metric-label{margin-top:5px;font-size:9px}.stats-home-metric-detail{margin-top:4px;font-size:10px}.stats-home-footnote{margin-top:13px;color:rgba(196,202,224,.42)}.stats-home-skills{display:grid;gap:9px;margin-top:12px}.stats-home-skill{padding:12px 13px;border:1px solid rgba(225,227,245,.72);border-radius:9px;background:rgba(255,255,255,.025)}.stats-home-skill>div{display:flex;justify-content:space-between;gap:12px}.stats-home-skill>div:first-child strong{color:rgba(239,240,252,.8);font-size:12px}.stats-home-skill>div:first-child span{color:#55dda9;font-size:11px;font-weight:800}.stats-home-skill>div:last-child{margin-top:7px;color:rgba(207,211,233,.5);font-size:10px}.stats-home-modal-note{color:rgba(211,218,241,.52)}@media (max-width:620px){.stats-home-level-head{gap:12px}.stats-home-level-badge{min-width:125px}.stats-home-progress-labels{gap:7px}.stats-home-progress-labels span:last-child{display:none}}@media (max-width:420px){.stats-home-level-head{display:block}.stats-home-level-badge{margin-top:14px;text-align:left}.stats-home-level-badge em{display:inline-block;margin-left:6px}.stats-home-progress-foot span:first-child,.stats-home-progress-foot span:nth-child(4){display:none}.stats-home-level-badge{min-width:0}.stats-home-progress-foot,.stats-home-progress-labels{font-size:9px}}.video-remove-history:disabled{opacity:.5;cursor:wait}