:root{--bg: #0f0d18;--surface: #161324;--surface2: #1e1a30;--surface3: #282340;--surface-popover: #15151f;--surface-input: #1c1c29;--border: #2e2848;--border2: #3f3763;--text: #f2f0f8;--text-2: #c4bfd9;--text-3: #9a94b5;--white: #ffffff;--black: #000000;--accent: #8b5cf6;--accent-hover: #7c3aed;--accent-bg: rgba(139, 92, 246, .18);--accent-surface: #2f2a55;--accent-soft: #b9b0ff;--accent-text: #ddd6fe;--yellow-bg: rgba(255, 159, 10, .28);--red: #ff5247;--red-soft: #ff9b94;--green: #22c55e;--green-soft: #86efac;--green-bright: #4ade80;--amber: #f59e0b;--blue: #3b82f6;--blue-soft: #93c5fd;--emerald: #10b981;--emerald-soft: #6ee7b7;--pink-soft: #f472b6;--purple: #a855f7;--radius-sm: 6px;--radius: 8px;--radius-md: 10px;--radius-lg: 14px;--font-ui: "Figtree", -apple-system, BlinkMacSystemFont, sans-serif;--font-read: "Lora", Georgia, serif;--fs-xs: 13px;--fs-sm: 13.5px;--fs-base: 15px;--tr: .14s ease}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}::selection{background:var(--accent-bg);color:var(--text)}html,body,#root{height:100%;font-family:var(--font-ui);background:var(--bg);color:var(--text);font-size:15px;line-height:1.5;overflow:hidden;-webkit-font-smoothing:antialiased}.view{position:fixed;inset:0;display:flex;flex-direction:column;background:var(--bg);overflow:hidden}.topbar{height:52px;max-height:11vh;display:flex;align-items:center;gap:12px;padding:0 20px;border-bottom:1px solid var(--border);background:var(--surface);flex-shrink:0}.topbar-title{flex:1;font-size:15px;font-weight:500;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.topbar-title.dim{color:var(--text-2);font-weight:400}.home-logo{font-size:15px;font-weight:700;color:var(--text);margin-right:4px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;border:none;border-radius:var(--radius);cursor:pointer;font:inherit;font-size:13.5px;font-weight:500;padding:8px 14px;transition:opacity var(--tr),background var(--tr),color var(--tr);white-space:nowrap}.btn:active{opacity:.8}.btn:disabled{opacity:.35;cursor:default;pointer-events:none}.btn-primary{background:var(--accent);color:var(--white)}.btn-primary:hover{background:var(--accent-hover)}.btn-danger{background:var(--red);color:var(--white)}.btn-danger:hover{background:#e64137}.btn-ghost{background:none;border:1px solid var(--border2);color:var(--text-2)}.btn-ghost:hover{background:var(--surface3);color:var(--text)}.btn-sm{padding:6px 12px;font-size:13px}.btn-icon{background:none;border:none;cursor:pointer;color:var(--text-2);padding:7px;border-radius:var(--radius);display:inline-flex;align-items:center;justify-content:center;min-width:36px;min-height:36px;transition:color var(--tr),background var(--tr)}.btn-icon:hover{color:var(--text);background:var(--surface3)}.btn-icon.danger:hover{color:var(--red)}.toggle{width:34px;height:19px;background:var(--surface3);border-radius:99px;cursor:pointer;position:relative;border:none;transition:background var(--tr);flex-shrink:0}.toggle:after{content:"";position:absolute;width:15px;height:15px;border-radius:50%;background:var(--text-2);top:2px;left:2px;transition:transform var(--tr),background var(--tr)}.toggle.on{background:var(--accent)}.toggle.on:after{transform:translate(15px);background:var(--white)}.toggle-row{display:flex;align-items:center;gap:8px;font-size:13.5px;color:var(--text-2);cursor:pointer;user-select:none}.kbd-badge{display:inline-flex;align-items:center;justify-content:center;background:#ffffff14;border:1px solid rgba(255,255,255,.16);border-bottom-width:2px;border-radius:5px;padding:1px 6px;font-family:var(--font-ui);font-size:13px;font-weight:600;color:var(--text-2);line-height:1.25;white-space:nowrap}.undo-toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%);background:var(--surface2);border:1px solid var(--border);color:var(--text);padding:8px 14px;border-radius:99px;font-size:13.5px;font-weight:500;display:inline-flex;align-items:center;gap:8px;z-index:300;box-shadow:0 8px 24px #00000073}.btn:focus-visible,.btn-icon:focus-visible,.toggle:focus-visible,.text-card:focus-visible,.home-filter-pill:focus-visible,.lang-selector-btn:focus-visible,.lang-popover-item:focus-visible,.lang-popover-btn-add:focus-visible,.lang-popover-btn-manage:focus-visible,.pop-icon-btn:focus-visible,.pop-status-btn:focus-visible,.pop-meaning-row:focus-visible,.pop-row-left-btn:focus-visible,.pop-row-action:focus-visible,.vocab-strip-bar:focus-visible,.vocab-tab-btn:focus-visible,.vocab-mini-btn:focus-visible,.vocab-quick-action:focus-visible,.topbar-auth-btn:focus-visible,.topbar-user-pill:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media(max-width:640px){.home-main{padding:20px 14px 40px}.home-title{font-size:22px}.reader-content{font-size:18px}.sentence-text-box{font-size:20px}.lang-grid{grid-template-columns:1fr}.topbar{padding:0 14px;gap:8px}.reader-topbar-controls{gap:6px!important}.reader-toggle-label,.reader-shortcuts-btn,.kbd-badge{display:none}.settings-modal-body{grid-template-columns:1fr;gap:18px}}.topbar-auth-btn{display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 11px;border-radius:var(--radius);background:var(--surface2);border:1px solid var(--border);color:var(--text-2);font:inherit;font-size:13px;font-weight:500;cursor:pointer;transition:all var(--tr)}.topbar-auth-btn:hover{background:var(--surface3);border-color:var(--border2);color:var(--text)}.topbar-user-pill{display:inline-flex;align-items:center;gap:7px;height:32px;padding:2px 9px 2px 4px;border-radius:9999px;background:var(--surface2);border:1px solid var(--border);color:var(--text);font:inherit;font-size:13px;font-weight:500;cursor:pointer;transition:all var(--tr)}.topbar-user-pill.is-compact{padding:3px}.topbar-user-pill:hover{background:var(--surface3);border-color:var(--border2)}.topbar-user-avatar-wrap{position:relative;width:24px;height:24px;flex-shrink:0}.topbar-user-avatar-img{width:24px;height:24px;border-radius:50%;object-fit:cover;display:block}.topbar-user-avatar-initial{width:24px;height:24px;border-radius:50%;background:var(--accent-bg);color:var(--accent);font-size:var(--fs-xs);font-weight:700;display:flex;align-items:center;justify-content:center}.topbar-user-name{font-size:var(--fs-xs);font-weight:500;color:var(--text);max-width:90px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topbar-user-avatar-wrap .sync-dot{position:absolute;bottom:-1px;right:-2px;width:8px;height:8px;border-radius:50%;border:1.5px solid var(--surface2)}.sync-dot.is-synced{background:var(--green)}.sync-dot.is-syncing{background:var(--amber)}.sync-dot.is-offline{background:var(--text-3)}.sync-dot.is-error{background:var(--red)}@keyframes lrSpin{to{transform:rotate(360deg)}}.spin-icon{animation:lrSpin 1s linear infinite}@media(max-width:600px){.topbar-auth-label{display:none}.topbar-auth-btn{padding:0 8px}.topbar-user-name{display:none}.topbar-user-pill{padding:3px}}.lang-flag-img{display:inline-block;border-radius:50%;object-fit:cover;box-shadow:0 0 0 1px #ffffff2e;flex-shrink:0;user-select:none;pointer-events:none;vertical-align:middle}.lang-flag-emoji{display:inline-flex;align-items:center;justify-content:center;user-select:none;flex-shrink:0}.lang-flag-fallback{display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:var(--surface2);color:var(--text-2);font-size:var(--fs-xs)}.lang-selector-wrapper{position:relative;display:inline-flex;align-items:center}.lang-selector-btn{display:inline-flex;align-items:center;gap:8px;background:var(--surface2);border:1px solid var(--border);border-radius:var(--radius);padding:0 12px;height:36px;cursor:pointer;font:inherit;font-size:13.5px;font-weight:500;color:var(--text);transition:all var(--tr);user-select:none}.lang-selector-btn:hover{background:var(--surface3);border-color:var(--border2);color:var(--white)}.lang-selector-btn.is-open{background:var(--surface3);border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-bg)}.lang-selector-btn-name{font-weight:600;letter-spacing:-.01em}.lang-selector-chevron{color:var(--text-3);transition:transform var(--tr);flex-shrink:0}.lang-selector-chevron.rotate{transform:rotate(180deg);color:var(--text)}.lang-popover{position:absolute;top:calc(100% + 6px);left:0;z-index:180;width:300px;max-width:calc(100vw - 24px);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:10px;box-shadow:0 16px 40px #0000008c,0 0 0 1px var(--border2);display:flex;flex-direction:column;animation:popoverFadeIn .14s ease-out}.lang-popover-header{padding:2px 8px 8px}.lang-popover-title{font-size:13.5px;font-weight:600;color:var(--text-2);letter-spacing:-.01em}.lang-popover-list{display:flex;flex-direction:column;gap:2px;max-height:260px;overflow-y:auto;padding-right:2px;scrollbar-width:thin;scrollbar-color:var(--border2) transparent}.lang-popover-list::-webkit-scrollbar{width:4px}.lang-popover-list::-webkit-scrollbar-track{background:transparent}.lang-popover-list::-webkit-scrollbar-thumb{background:var(--border2);border-radius:4px}.lang-popover-item{display:flex;align-items:center;justify-content:space-between;width:100%;border:1px solid transparent;background:transparent;cursor:pointer;padding:8px 10px;border-radius:var(--radius);text-align:left;transition:background var(--tr),border-color var(--tr);color:var(--text);font-family:var(--font-ui)}.lang-popover-item:hover{background:var(--surface2)}.lang-popover-item.is-active{background:var(--accent-bg);border-color:#8b5cf64d}.lang-row-left{display:flex;align-items:center;gap:10px;min-width:0}.lang-row-name{font-size:14.5px;font-weight:600;color:var(--text);white-space:nowrap}.lang-row-native{font-size:13px;font-weight:400;color:var(--text-3);white-space:nowrap;margin-left:2px}.lang-popover-check{color:var(--accent);flex-shrink:0;margin-left:10px;stroke-width:2.5}.lang-popover-footer{display:flex;flex-direction:column;gap:6px;margin-top:8px;padding-top:8px;border-top:1px solid var(--border)}.lang-popover-btn-add{display:flex;align-items:center;justify-content:center;gap:7px;width:100%;height:38px;border-radius:var(--radius);background:var(--surface2);border:1px solid var(--border);color:var(--text);font-size:13.5px;font-weight:500;font-family:var(--font-ui);cursor:pointer;transition:background var(--tr),border-color var(--tr),color var(--tr)}.lang-popover-btn-add:hover{background:var(--surface3);border-color:var(--border2);color:var(--white)}.lang-popover-btn-manage{display:flex;align-items:center;justify-content:center;width:100%;height:32px;border-radius:var(--radius);background:transparent;border:none;color:var(--text-2);font-size:13px;font-weight:500;font-family:var(--font-ui);cursor:pointer;transition:background var(--tr),color var(--tr)}.lang-popover-btn-manage:hover{color:var(--text);background:var(--surface2)}.lang-dropdown-btn{display:flex;align-items:center;gap:8px;background:var(--surface2);border:1px solid var(--border);border-radius:var(--radius);padding:6px 12px;cursor:pointer;font:inherit;font-size:13.5px;font-weight:500;color:var(--text);transition:background var(--tr),border-color var(--tr)}.lang-dropdown-btn:hover{background:var(--surface3);border-color:var(--border2)}.dropdown-panel{position:fixed;z-index:180;background:var(--surface);border:1px solid var(--border2);border-radius:var(--radius-lg);padding:6px;min-width:210px;max-height:340px;overflow-y:auto;box-shadow:0 12px 32px #00000080;display:flex;flex-direction:column;gap:2px}.lang-dd-item{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:var(--radius);cursor:pointer;font-size:13.5px;font-weight:500;color:var(--text);background:none;border:none;width:100%;text-align:left;transition:background var(--tr)}.lang-dd-item:hover{background:var(--surface2)}.lang-dd-item.active{background:var(--accent-bg);color:var(--accent-text)}.lang-dd-item .count{margin-left:auto;font-size:13px;color:var(--text-3);font-variant-numeric:tabular-nums}.home-main{flex:1;overflow-y:auto;width:100%;padding:32px 24px 56px}.home-container{max-width:760px;width:100%;margin:0 auto;display:flex;flex-direction:column;gap:20px}.home-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.home-title{font-size:26px;font-weight:700;color:var(--text);line-height:1.15;letter-spacing:-.015em}.home-subtitle{font-size:13.5px;color:var(--text-3);margin-top:4px}.home-stats-strip{display:flex;align-items:center;gap:8px;margin-top:6px;flex-wrap:wrap}.home-stat-item{display:inline-flex;align-items:center;gap:4px;font-size:13px;color:var(--text-2)}.home-stat-item strong{color:var(--text);font-weight:600}.home-stat-item.is-known strong{color:var(--green-soft)}.home-stat-item.is-learning strong{color:var(--accent-soft)}.home-stat-dot{width:3px;height:3px;border-radius:50%;background:var(--text-3);opacity:.5}.home-search-bar{position:relative;display:flex;align-items:center;width:100%;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);transition:border-color var(--tr),background var(--tr)}.home-search-bar:focus-within{border-color:var(--accent);background:var(--surface2)}.home-search-icon{position:absolute;left:12px;color:var(--text-3);pointer-events:none;flex-shrink:0}.home-search-input{width:100%;height:40px;padding:0 36px 0 38px;background:transparent;border:none;outline:none;color:var(--text);font:inherit;font-size:14px}.home-search-input::placeholder{color:var(--text-3)}.home-search-clear{position:absolute;right:8px;display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:4px;border:none;background:transparent;color:var(--text-3);cursor:pointer;transition:color var(--tr),background var(--tr)}.home-search-clear:hover{color:var(--text);background:var(--surface3)}.home-filter-pills{display:inline-flex;align-items:center;gap:6px;margin-top:-6px;margin-bottom:2px}.home-filter-pill{border:1px solid var(--border);background:transparent;color:var(--text-2);padding:4px 12px;border-radius:999px;font:inherit;font-size:var(--fs-xs);font-weight:500;cursor:pointer;transition:all var(--tr)}.home-filter-pill:hover{color:var(--text);border-color:var(--border2);background:var(--surface2)}.home-filter-pill.is-active{background:var(--surface2);border-color:var(--accent);color:var(--text);font-weight:600}.home-text-list{display:flex;flex-direction:column;gap:8px;width:100%}.text-card{display:flex;align-items:center;gap:14px;padding:14px 18px;border-radius:var(--radius);border:1px solid var(--border);background:var(--surface);cursor:pointer;transition:border-color var(--tr),background var(--tr)}.text-card:hover{border-color:var(--border2);background:var(--surface2)}.text-card-title{font-size:15px;font-weight:500;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-card-meta{font-size:13px;color:var(--text-3);margin-top:3px;display:flex;align-items:center;gap:8px}.text-card-type-badge{display:inline-flex;align-items:center;gap:4px;font-size:var(--fs-xs);font-weight:600;color:var(--red-soft);background:#ff52471f;border:1px solid rgba(255,82,71,.25);padding:1px 6px;border-radius:4px;line-height:1.3}.text-card-progress{font-size:var(--fs-xs);font-weight:500;color:var(--text-2);background:var(--surface2);border:1px solid var(--border);padding:1px 6px;border-radius:4px;line-height:1.3}.text-card-progress.is-finished{color:var(--green-soft);background:#22c55e1a;border-color:#22c55e40}.text-card-actions{display:flex;gap:2px;flex-shrink:0}.home-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;color:var(--text-2);font-size:15px;padding:64px 24px;text-align:center}.home-empty-search{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:var(--text-2);font-size:14.5px;padding:48px 16px;text-align:center}.yt-embed-shell{width:100%;display:flex;justify-content:center;padding:16px 20px 4px;flex-shrink:0}.yt-embed-frame{width:min(480px,100%);aspect-ratio:16 / 9;min-width:240px;min-height:200px;border-radius:var(--radius);overflow:hidden;background:var(--black)}.yt-embed-frame iframe{width:100%;height:100%;border:none;display:block}.reader-progress-wrap{height:2px;background:var(--surface2);flex-shrink:0}.reader-progress-bar{height:100%;background:var(--accent);transition:width .25s ease}.reader-scroll{flex:1;overflow-y:auto;padding:36px 24px 120px;scroll-behavior:smooth}.reader-content{max-width:680px;margin:0 auto;font-family:var(--font-read);font-size:20px;line-height:2.25;color:var(--text)}.word{cursor:pointer;border-radius:4px;padding:1px 3px;display:inline;transition:background var(--tr),text-decoration-color var(--tr)}.word:hover{background:var(--surface3)}.word.new-word{text-decoration:underline;text-decoration-color:#ffffff47;text-underline-offset:4px;text-decoration-thickness:1.5px}.word.new-word:hover{text-decoration-color:#ffffff8c}.word.highlighted{background:var(--yellow-bg);text-decoration:none}.word.selected,.word[data-kbd-focus=true]{background:var(--accent-bg);outline:1px solid var(--accent);outline-offset:1px;text-decoration:none}.interlinear-unit{display:inline-flex;flex-direction:column;align-items:center;vertical-align:bottom;margin:0 2px 18px}.interlinear-gloss{font-family:var(--font-ui);font-size:14.5px;font-weight:500;line-height:1.25;color:var(--text-2);white-space:nowrap;margin-bottom:4px;padding:0 2px;background:none;pointer-events:none;user-select:none}.interlinear-base-row{display:inline-flex;align-items:baseline;line-height:1.35}.interlinear-punct{line-height:1.35}.sentence-slider-wrap{padding:0 20px;background:var(--surface);border-bottom:1px solid var(--border);flex-shrink:0;display:flex;align-items:center;gap:16px;height:46px}.sentence-slider-track{flex:1;height:32px;position:relative;cursor:pointer;display:flex;align-items:center}.sentence-slider-track:before{content:"";position:absolute;left:0;right:0;top:50%;transform:translateY(-50%);height:5px;background:var(--surface3);border-radius:99px}.sentence-slider-fill{position:absolute;left:0;top:50%;transform:translateY(-50%);height:5px;background:var(--accent);border-radius:99px;pointer-events:none}.sentence-slider-thumb{position:absolute;top:50%;transform:translate(-50%,-50%);width:16px;height:16px;border-radius:50%;background:var(--white);border:3px solid var(--accent);pointer-events:none;z-index:1}.sentence-counter-label{font-size:13.5px;color:var(--text-2);white-space:nowrap;font-variant-numeric:tabular-nums;min-width:52px;text-align:right}.sentence-stage{flex:1;overflow-y:auto;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:20px 24px 64px;gap:20px}.sentence-counter-inline{font-size:13.5px;color:var(--text-3);font-variant-numeric:tabular-nums}.sentence-text-box{font-family:var(--font-read);font-size:24px;line-height:2.35;color:var(--text);max-width:660px;text-align:center}.sentence-text-box .interlinear-gloss{font-size:15.5px;margin-bottom:5px}.sentence-gist-text{font-size:16px;color:var(--text-2);text-align:center;max-width:560px;line-height:1.5}.sentence-nav-bar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:center}.hover-peek-tooltip{position:fixed;z-index:260;background:var(--surface);border:1px solid var(--border2);border-radius:8px;padding:6px 10px 6px 12px;font-size:15.5px;font-weight:500;color:var(--text);box-shadow:0 10px 28px #0000008c;pointer-events:auto;display:inline-flex;align-items:center;gap:10px;max-width:320px;white-space:nowrap}.hover-peek-tooltip.above{transform:translate(-50%,-100%)}.hover-peek-tooltip.below{transform:translate(-50%)}.hover-peek-text{overflow:hidden;text-overflow:ellipsis}.hover-peek-actions{display:inline-flex;align-items:center;gap:4px;flex-shrink:0}.hover-peek-btn{width:24px;height:24px;border-radius:6px;border:1px solid var(--border2);background:var(--surface2);color:var(--text-2);font:inherit;font-size:14px;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:background var(--tr),color var(--tr)}.hover-peek-btn:hover{background:var(--surface3);color:var(--text)}.hover-peek-btn.known.active,.hover-peek-btn.known:hover{background:#22c55e38;border-color:#4ade8080;color:var(--green-soft)}.sentence-autopause-row{display:flex;align-items:center;justify-content:center;gap:10px;margin-top:2px;font-size:13.5px;color:var(--text-2)}.pop-mobile-backdrop{display:none}.word-popover{position:fixed;z-index:300;background:var(--surface-popover);border:1px solid var(--border);border-radius:16px;padding:18px 20px;width:344px;max-width:calc(100vw - 24px);max-height:calc(100vh - 24px);box-shadow:0 20px 44px #0000008c;display:flex;flex-direction:column;gap:14px;overflow-y:auto}.word-popover.is-inflections{width:490px}.pop-sheet-handle{display:none}.pop-header{display:flex;flex-direction:column;gap:6px}.pop-headword-row{display:flex;align-items:center;justify-content:space-between;gap:10px}.pop-headword-main{display:flex;align-items:center;gap:8px;min-width:0;flex-wrap:wrap}.pop-word-title{margin:0;font-family:var(--font-read);font-size:20px;font-weight:700;color:var(--white);letter-spacing:-.015em;line-height:1.2}.pop-icon-btn{width:36px;height:36px;border-radius:10px;border:none;background:transparent;color:var(--text-2);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:background .15s ease,color .15s ease}.pop-icon-btn:hover{background:var(--surface2);color:var(--white)}.pop-inflect-toggle.is-active{background:var(--accent-surface);color:var(--accent-text)}.pop-unlink-btn{background:var(--surface2);border:1px solid var(--border);border-radius:8px;color:var(--text-2);font:inherit;font-size:13px;font-weight:500;padding:4px 10px;cursor:pointer;transition:background .15s ease,color .15s ease}.pop-unlink-btn:hover{background:var(--surface3);color:var(--white)}.pop-title-wrap{display:flex;flex-direction:column;gap:3px;min-width:0}.pop-title-line{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.pop-translit-text{font-family:var(--font-read);font-size:13.5px;color:#c4c2ee;letter-spacing:.02em;font-weight:500;line-height:1.2}.pop-cjk-counterpart{font-size:13px;color:var(--text-2)}.pop-cjk-counterpart strong{color:var(--white);font-weight:600}.pop-gender-badge{font-size:var(--fs-xs);font-weight:700;text-transform:lowercase;padding:2px 7px;border-radius:6px;letter-spacing:.02em;line-height:1.2}.pop-gender-badge.gender-masc{background:#3b82f633;color:var(--blue-soft);border:1px solid rgba(59,130,246,.35)}.pop-gender-badge.gender-fem{background:#ec489933;color:var(--pink-soft);border:1px solid rgba(236,72,153,.35)}.pop-gender-badge.gender-neut{background:#10b98133;color:var(--emerald-soft);border:1px solid rgba(16,185,129,.35)}.pop-quirk-banner{margin-top:4px;padding:8px 10px;border-radius:8px;display:flex;flex-direction:column;gap:3px;font-size:13px;line-height:1.35}.pop-quirk-banner.quirk-amber{background:#f59e0b1f;border-left:3px solid var(--amber)}.pop-quirk-banner.quirk-blue{background:#3b82f61f;border-left:3px solid var(--blue)}.pop-quirk-banner.quirk-green{background:#10b9811f;border-left:3px solid var(--emerald)}.pop-quirk-banner.quirk-purple{background:#a855f71f;border-left:3px solid var(--purple)}.pop-quirk-header,.pop-quirk-top{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.pop-quirk-badge{font-size:var(--fs-xs);font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:1px 6px;border-radius:4px;background:#ffffff1f;color:var(--white)}.pop-quirk-title{font-weight:600;color:#f0f0f8}.pop-quirk-desc{color:var(--text-2)}.pop-quirk-tip{color:var(--text-2);font-style:italic;font-size:var(--fs-xs)}.pop-meta-strip{display:flex;align-items:center;flex-wrap:wrap;gap:8px;font-size:13.5px;line-height:1.35}.pop-stacked-lemma{display:inline-flex;align-items:baseline;gap:5px;margin-top:3px;font-size:13.5px;line-height:1.3}.pop-lemma-prefix{color:var(--text-3);font-size:var(--fs-xs);font-weight:400;font-style:italic}.pop-lemma-target{color:var(--accent-soft);font-weight:600;font-family:var(--font-read);font-size:15px}.pop-lemma-chip{color:var(--accent-soft);font-weight:600}.pop-gram-text{color:var(--text-2)}.pop-gram-sub{color:var(--text-3)}.migaku-freq-badge{display:inline-flex;align-items:stretch;border-radius:999px;overflow:hidden;font-size:var(--fs-xs);font-weight:600;line-height:1;white-space:nowrap}.migaku-freq-label{padding:4px 8px 4px 10px}.migaku-freq-rank{padding:4px 10px 4px 8px;font-variant-numeric:tabular-nums}.migaku-freq-badge.tier-top500 .migaku-freq-label{background:#10b9813d;color:var(--emerald-soft)}.migaku-freq-badge.tier-top500 .migaku-freq-rank{background:#10b98124;color:#a7f3d0}.migaku-freq-badge.tier-top1500 .migaku-freq-label{background:#38bdf838;color:#7dd3fc}.migaku-freq-badge.tier-top1500 .migaku-freq-rank{background:#38bdf821;color:#bae6fd}.migaku-freq-badge.tier-top3k .migaku-freq-label{background:#8b5cf63d;color:#c4b5fd}.migaku-freq-badge.tier-top3k .migaku-freq-rank{background:#8b5cf624;color:var(--accent-text)}.migaku-freq-badge.tier-top8k .migaku-freq-label{background:#f59e0b3d;color:#fcd34d}.migaku-freq-badge.tier-top8k .migaku-freq-rank{background:#f59e0b24;color:#fde68a}.migaku-freq-badge.tier-top15k .migaku-freq-label,.migaku-freq-badge.tier-rare .migaku-freq-label{background:#94a3b833;color:#cbd5e1}.migaku-freq-badge.tier-top15k .migaku-freq-rank,.migaku-freq-badge.tier-rare .migaku-freq-rank{background:#94a3b81f;color:#94a3b8}.pop-aspect-pill{display:inline-flex;align-items:center;gap:5px;padding:3px 9px;border-radius:999px;font-size:13px;font-weight:500;background:var(--surface2);color:var(--accent-soft)}.pop-mobile-tabs{display:none}.pop-meanings-list{display:flex;flex-direction:column;gap:2px}.pop-meaning-row{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:44px;padding:8px 10px;border-radius:10px;border:none;background:transparent;color:var(--text-2);font:inherit;font-size:16px;line-height:1.35;text-align:left;width:100%;cursor:pointer;transition:background .15s ease,color .15s ease}.pop-meaning-row:hover{background:var(--surface2);color:var(--white)}.pop-meaning-row.is-active{color:var(--white);font-weight:600}.pop-row-left{display:inline-flex;align-items:center;gap:10px;min-width:0;flex:1}.pop-row-left-btn{display:inline-flex;align-items:center;gap:10px;min-width:0;flex:1;background:none;border:none;padding:0;margin:0;color:inherit;font:inherit;text-align:left;cursor:pointer}.pop-check-icon{color:#6b6b80;flex-shrink:0}.pop-check-icon.is-fav{color:var(--green-bright)}.pop-meaning-text{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis}.pop-row-action{background:none;border:none;color:var(--text-3);display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:6px;flex-shrink:0;cursor:pointer;transition:color .15s ease,background .15s ease}.pop-meaning-row:hover .pop-row-action.add{color:var(--white)}.pop-row-action.danger{opacity:0}.pop-meaning-row:hover .pop-row-action.danger,.pop-meaning-row:focus-within .pop-row-action.danger{opacity:1}@media(hover:none){.pop-row-action.danger{opacity:.85}}.pop-row-action.danger:hover{color:var(--red);background:#f871711f}.pop-more-btn{display:inline-flex;align-items:center;gap:6px;align-self:flex-start;background:none;border:none;color:var(--accent-soft);font:inherit;font-size:14px;font-weight:500;padding:6px 10px;border-radius:8px;cursor:pointer;transition:background .15s ease}.pop-more-btn:hover{background:var(--surface2)}.pop-loading-row{font-size:14px;color:var(--text-3);padding:8px 10px}.pop-custom-row{display:flex}.pop-custom-input{width:100%;height:44px;padding:0 14px;border-radius:10px;border:1px solid var(--border);background:var(--surface-input);color:var(--white);font:inherit;font-size:15px;outline:none;transition:border-color .15s ease}.pop-custom-input:focus{border-color:#6d63c9}.pop-custom-input::placeholder{color:var(--text-3)}.pop-inflections-panel{display:flex;flex-direction:column;gap:14px}.pop-decl-table{width:100%;border-collapse:collapse;font-size:13.5px}.pop-decl-table th,.pop-decl-table td{padding:6px 8px;text-align:left;font-weight:400;color:var(--text-2);white-space:nowrap}.pop-decl-table thead th{font-size:13px;font-weight:600;color:var(--text-3);padding-bottom:6px}.pop-decl-table tbody th{font-size:13px;font-weight:600;color:var(--text-3);padding-right:10px}.pop-decl-table td.is-active{background:var(--accent-surface);color:var(--white);font-weight:700;border-radius:6px}.pop-conj-columns{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:start}.pop-conj-side{display:flex;flex-direction:column;gap:12px}.pop-conj-block{display:flex;flex-direction:column;gap:4px}.pop-conj-list{display:flex;flex-direction:column;gap:2px}.pop-conj-title{font-size:13px;font-weight:600;color:var(--text-3)}.pop-conj-grid{display:grid;grid-template-columns:1fr 1fr;gap:4px 10px}.pop-conj-cell{display:flex;align-items:baseline;justify-content:space-between;gap:6px;padding:5px 8px;border-radius:8px;font-size:14px}.pop-conj-cell.is-active{background:var(--accent-surface)}.pop-conj-pron{font-size:13px;color:var(--text-3)}.pop-conj-form{color:#ececf4;font-weight:500}.pop-conj-cell.is-active .pop-conj-form{color:var(--white);font-weight:700}.pop-conj-blocks-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px}.pop-cjk-clf-list{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}.pop-cjk-clf-chip{padding:4px 10px;border-radius:6px;background:#232238;color:#d6d4f5;font-size:13.5px}.pop-cjk-clf-chip strong{color:#facc15;margin:0 2px}.pop-status-bar{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.pop-status-btn{height:44px;border-radius:10px;border:1px solid var(--border);background:var(--surface-input);color:var(--text-2);font:inherit;font-size:14px;font-weight:500;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:0 8px;white-space:nowrap;transition:background .15s ease,border-color .15s ease,color .15s ease}.pop-status-btn:hover{background:var(--surface2);color:var(--white)}.pop-status-btn.is-known{background:#173329;border-color:#2f7d5b;color:#8ce9b5;font-weight:600}.pop-status-btn.is-learning{background:var(--yellow-bg);border-color:#fbbf2473;color:#fde68a;font-weight:600}.pop-status-btn.is-ignored{background:var(--surface3);border-color:#4b4b66;color:var(--white);font-weight:600}.pop-lang-freq-pill{display:inline-flex;align-items:center;font-size:13px;font-weight:600;padding:1px 7px;border-radius:4px;line-height:1.3;white-space:nowrap;background:var(--surface2);color:var(--text-2)}.pop-lang-freq-pill.tier-top500,.pop-lang-freq-pill.tier-top1500{background:#4ade8024;color:var(--green-bright)}.pop-lang-freq-pill.tier-top3k{background:#8b5cf629;color:#c4b5fd}.pop-lang-freq-pill.tier-top8k{background:#f59e0b24;color:#fbbf24}.shortcuts-popover{position:fixed;top:56px;right:16px;width:340px;max-width:calc(100vw - 24px);background:var(--surface-popover);border:1px solid var(--border);border-radius:14px;padding:16px 18px;z-index:265;box-shadow:0 18px 40px #0000008c;display:flex;flex-direction:column;gap:12px}.shortcuts-pop-header{display:flex;align-items:center;justify-content:space-between;font-size:14px;font-weight:700;color:var(--text)}.shortcuts-list{display:flex;flex-direction:column;gap:8px}.shortcut-item{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:13.5px;color:var(--text-2)}.shortcut-keys{display:inline-flex;gap:4px}@media(max-width:640px){.pop-mobile-backdrop{display:block;position:fixed;inset:0;background:#0000008c;z-index:299}.word-popover,.word-popover.is-inflections{position:fixed;top:auto!important;left:0!important;right:0;bottom:0;width:100%;max-width:100%;max-height:85vh;border-radius:20px 20px 0 0;border-bottom:none;padding:12px 20px calc(24px + env(safe-area-inset-bottom));overflow-y:auto}.pop-sheet-handle{display:block;width:40px;height:4px;border-radius:999px;background:#3a3a52;margin:0 auto 2px}.pop-inflect-toggle{display:none}.pop-mobile-tabs{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:4px;border-radius:12px;background:var(--surface-input)}.pop-mobile-tab{height:44px;border:none;border-radius:9px;background:transparent;color:#a8a8be;font:inherit;font-size:15px;font-weight:600;cursor:pointer}.pop-mobile-tab.is-active{background:var(--accent-surface);color:var(--white)}.pop-meaning-row{font-size:17px}.pop-status-btn{height:48px}}.vocab-strip{max-width:680px;margin:0 auto 24px}.vocab-strip-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 12px;border-radius:var(--radius);background:var(--surface);border:1px solid var(--border);cursor:pointer;user-select:none;transition:border-color var(--tr)}.vocab-strip-bar:hover{border-color:var(--border2)}.vocab-strip-left{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.vocab-mini-meter{width:56px;height:6px;background:var(--surface3);border-radius:99px;overflow:hidden;display:flex;flex-shrink:0}.vocab-mini-known{height:100%;background:var(--green-bright);transition:width .25s ease}.vocab-mini-learning{height:100%;background:var(--amber);transition:width .25s ease}.vocab-pct-label{font-size:13.5px;font-weight:600;color:var(--text)}.vocab-goal-inline{font-size:13.5px;color:var(--text-2)}.vocab-toggle-link{display:inline-flex;align-items:center;gap:5px;background:none;border:none;color:var(--text-2);font:inherit;font-size:13px;font-weight:500;cursor:pointer;white-space:nowrap;padding:0}.vocab-toggle-link svg{display:block;flex-shrink:0}.vocab-strip-bar:hover .vocab-toggle-link{color:var(--text)}.vocab-drawer{margin-top:6px;padding:12px 14px;border-radius:var(--radius);background:var(--surface);border:1px solid var(--border);display:flex;flex-direction:column;gap:10px}.vocab-drawer-top{display:flex;align-items:center;justify-content:space-between;gap:10px}.vocab-filter-group{display:inline-flex;gap:4px}.vocab-tab-btn{background:none;border:none;color:var(--text-2);font:inherit;font-size:13px;font-weight:500;padding:4px 10px;border-radius:6px;cursor:pointer;transition:background var(--tr),color var(--tr)}.vocab-tab-btn:hover{color:var(--text)}.vocab-tab-btn.active{background:var(--surface3);color:var(--text)}.vocab-drawer-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-top:8px;margin-top:2px;flex-wrap:wrap}.vocab-footer-hint{font-size:var(--fs-xs);color:var(--text-3);font-weight:500}.vocab-bulk-group{display:inline-flex;align-items:center;gap:8px}.vocab-quick-action{background:none;border:1px solid var(--border2);border-radius:6px;color:var(--text-2);font:inherit;font-size:13px;padding:4px 10px;cursor:pointer;transition:background var(--tr),color var(--tr)}.vocab-quick-action:hover{background:var(--surface3);color:var(--text)}.vocab-quick-action.primary{color:var(--green-soft);border-color:#4ade8059}.vocab-rows{display:flex;flex-direction:column;gap:2px;max-height:240px;overflow-y:auto}.vocab-row{display:flex;align-items:center;gap:8px;padding:5px 6px;border-radius:6px;transition:background var(--tr)}.vocab-row:hover{background:var(--surface2)}.vocab-icon-btn{background:none;border:none;color:var(--text-3);cursor:pointer;padding:2px;display:inline-flex;align-items:center}.vocab-icon-btn:hover{color:var(--text)}.vocab-row-word{font-family:var(--font-read);font-size:15px;font-weight:500;color:var(--text);min-width:96px}.vocab-row-freq{font-size:13px;color:var(--text-3);font-variant-numeric:tabular-nums;min-width:30px}.vocab-row-gloss{flex:1;font-size:14px;color:var(--text-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vocab-row-btns{display:inline-flex;align-items:center;gap:4px}.vocab-mini-btn{width:26px;height:26px;border-radius:6px;border:1px solid var(--border2);background:var(--surface2);color:var(--text-2);font:inherit;font-size:14px;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:background var(--tr),color var(--tr)}.vocab-mini-btn:hover{background:var(--surface3);color:var(--text)}.vocab-mini-btn.known:hover{background:#22c55e33;border-color:#4ade8073;color:var(--green-soft)}.vocab-empty{font-size:13.5px;color:var(--text-2);padding:8px 4px}.settings-list{display:flex;flex-direction:column;gap:16px}.settings-group{display:flex;flex-direction:column;gap:7px}.settings-label{font-size:13.5px;font-weight:500;color:var(--text-2)}.settings-row-toggle{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:14px;color:var(--text);cursor:pointer;user-select:none;padding:2px 0}.settings-backup-row{display:flex;align-items:center;gap:8px;padding-top:6px}.options-segmented{display:flex;background:var(--surface2);border-radius:var(--radius);padding:3px;gap:2px}.options-seg-btn{flex:1;background:none;border:none;color:var(--text-2);font:inherit;font-size:13px;font-weight:500;padding:6px 10px;border-radius:6px;cursor:pointer;transition:background var(--tr),color var(--tr)}.options-seg-btn.active{background:var(--surface3);color:var(--text)}dialog.app-dialog{margin:auto;background:var(--surface);color:var(--text);border:1px solid var(--border2);border-radius:var(--radius-lg);width:min(500px,calc(100vw - 28px));max-height:calc(100vh - 56px);padding:24px;box-shadow:0 18px 48px #0009;overflow-y:auto}dialog.app-dialog::backdrop{background:#0009}.modal-title{font-size:16px;font-weight:600;margin-bottom:18px;display:flex;align-items:center;justify-content:space-between}.add-content-tabs{display:grid;grid-template-columns:1fr 1fr;align-items:center;background:#ffffff0d;padding:3px;border-radius:var(--radius-md);border:1px solid rgba(255,255,255,.06);gap:3px;margin-bottom:18px;width:100%}.add-content-tab{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:8px 14px;border-radius:calc(var(--radius-md) - 3px);border:1px solid transparent;background:transparent;color:var(--text-2);font:inherit;font-size:13.5px;font-weight:500;cursor:pointer;transition:all var(--tr);user-select:none}.add-content-tab:hover{color:var(--text);background:#ffffff08}.add-content-tab.is-active{background:var(--surface2);color:var(--text);font-weight:600;border-color:#ffffff17;box-shadow:0 2px 8px #00000047}.field{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}.field label{font-size:13px;color:var(--text-2);font-weight:500}.form-inline-hint{margin-top:8px;font-size:13px;line-height:1.4;border-radius:var(--radius-md);padding:9px 12px;display:flex;align-items:center;gap:8px}.form-inline-hint.error{background:#ff52471f;color:var(--red-soft);border:1px solid rgba(255,82,71,.28)}.form-inline-hint.success{background:#22c55e1f;color:var(--green-soft);border:1px solid rgba(34,197,94,.28)}.yt-loading-bar-container{margin-top:10px;display:flex;flex-direction:column;gap:6px}.yt-loading-bar-track{width:100%;height:4px;background:var(--surface2);border-radius:999px;overflow:hidden;position:relative}.yt-loading-bar-fill{width:45%;height:100%;background:linear-gradient(90deg,#8b5cf6,#c084fc,#8b5cf6);border-radius:999px;position:absolute;animation:yt-progress 1.4s cubic-bezier(.4,0,.2,1) infinite}@keyframes yt-progress{0%{left:-45%}to{left:100%}}.yt-loading-text{font-size:var(--fs-xs);color:var(--text-2);display:flex;align-items:center;gap:6px}.yt-preview-card{display:flex;gap:14px;padding:12px;background:#ffffff08;border:1px solid rgba(255,255,255,.07);border-radius:var(--radius-lg);align-items:center;margin-top:10px}.yt-preview-thumb-wrap{position:relative;width:124px;height:70px;flex-shrink:0;border-radius:var(--radius);overflow:hidden;background:var(--black);border:1px solid rgba(255,255,255,.08)}.yt-preview-thumb{width:100%;height:100%;object-fit:cover;display:block}.yt-preview-play-icon{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:#00000059;opacity:.85}.yt-preview-details{flex:1;min-width:0;display:flex;flex-direction:column;gap:6px}.yt-preview-title{font-size:14px;font-weight:600;color:var(--text);line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.yt-preview-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.yt-badge{display:inline-flex;align-items:center;gap:5px;font-size:var(--fs-xs);font-weight:500;padding:3px 8px;border-radius:999px}.yt-badge.success{background:#22c55e26;color:var(--green-soft)}.yt-badge.loading{background:#8b5cf626;color:#c4b5fd}.yt-badge.warning{background:#fb923c26;color:#fdba74}.lang-detected-banner{background:#8b5cf61a;border:1px solid rgba(139,92,246,.28);border-radius:var(--radius-md);padding:10px 14px;display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.lang-detected-info{display:flex;align-items:center;gap:10px;min-width:0}.lang-detected-title{font-size:13.5px;font-weight:600;color:var(--text)}.lang-detected-subtitle{font-size:var(--fs-xs);color:var(--text-2)}.btn-accent-subtle{background:var(--accent);color:var(--white);font-weight:600;border:none;padding:6px 12px;border-radius:var(--radius-sm);font-size:var(--fs-xs);white-space:nowrap;cursor:pointer;transition:all var(--tr)}.btn-accent-subtle:hover{background:var(--accent-hover)}.modal-footer-lang-info{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text-2)}.modal-footer-lang-info strong{color:var(--text);font-weight:600}.modal-footer-lang-select{background:var(--surface2);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);font:inherit;font-size:13px;font-weight:500;padding:4px 8px;cursor:pointer;transition:border-color var(--tr),background var(--tr)}.modal-footer-lang-select:hover{border-color:var(--border2);background:var(--surface3)}.modal-footer-lang-select:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.yt-track-picker{display:inline-flex;align-items:center;gap:6px;background:#ffffff0d;padding:2px 6px 2px 8px;border-radius:var(--radius-sm);border:1px solid rgba(255,255,255,.08)}.yt-track-picker-label{font-size:var(--fs-xs);color:var(--text-2);font-weight:500}.yt-track-picker-select{background:transparent;border:none;color:var(--text);font:inherit;font-size:var(--fs-xs);font-weight:600;cursor:pointer;outline:none;padding:2px 0}.yt-track-picker-select option{background:var(--surface);color:var(--text)}.disclosure-btn{background:transparent;border:none;color:var(--text-3);font-size:var(--fs-xs);font-weight:500;display:inline-flex;align-items:center;gap:5px;cursor:pointer;padding:4px 0;transition:color var(--tr);margin-top:6px}.disclosure-btn:hover{color:var(--text)}.input,.textarea,select.input{background:var(--surface2);border:1px solid var(--border);border-radius:var(--radius);color:var(--text);font:inherit;font-size:14px;padding:9px 12px;outline:none;width:100%}.input:focus,.textarea:focus,select.input:focus{border-color:var(--accent)}.input::placeholder,.textarea::placeholder{color:var(--text-3)}.textarea{resize:vertical;min-height:160px;line-height:1.6}.modal-footer{display:flex;justify-content:flex-end;gap:8px;margin-top:20px}dialog.app-dialog.lang-modal-dialog{padding:0;width:min(390px,calc(100vw - 32px));max-width:390px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:0 24px 64px #000000b3,0 0 0 1px var(--border2);color:var(--text);overflow:hidden;font-family:var(--font-ui)}.lang-manager-shell{display:flex;flex-direction:column;width:100%;padding:16px 16px 20px}.lang-manager-view{display:flex;flex-direction:column;width:100%;animation:popoverFadeIn .14s ease-out}.lang-modal-header{display:flex;align-items:center;justify-content:space-between;height:36px;margin-bottom:12px}.lang-modal-header-btn{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:var(--surface2);border:1px solid var(--border);color:var(--text-2);border-radius:var(--radius);cursor:pointer;transition:background var(--tr),border-color var(--tr),color var(--tr);padding:0}.lang-modal-header-btn:hover{background:var(--surface3);border-color:var(--border2);color:var(--text)}.lang-modal-title{font-size:15.5px;font-weight:600;color:var(--text);letter-spacing:-.01em;margin:0;text-align:center;font-family:var(--font-ui)}.lang-modal-header-spacer{width:32px}.lang-search-wrap{position:relative;display:flex;align-items:center;margin-bottom:12px}.lang-search-icon{position:absolute;left:12px;color:var(--text-3);pointer-events:none}.lang-search-input{padding-left:36px;padding-right:32px;height:38px;border-radius:var(--radius);background:var(--surface2);border:1px solid var(--border);color:var(--text);font-size:13.5px;width:100%;outline:none;font-family:var(--font-ui);transition:border-color var(--tr),box-shadow var(--tr)}.lang-search-input::placeholder{color:var(--text-3)}.lang-search-input:focus{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-bg)}.lang-search-clear{position:absolute;right:8px;background:none;border:none;color:var(--text-3);cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;border-radius:4px}.lang-search-clear:hover{color:var(--text)}.lang-manager-list{display:flex;flex-direction:column;gap:2px;max-height:380px;overflow-y:auto;padding-right:2px;scrollbar-width:thin;scrollbar-color:var(--border2) transparent}.lang-manager-list::-webkit-scrollbar{width:4px}.lang-manager-list::-webkit-scrollbar-track{background:transparent}.lang-manager-list::-webkit-scrollbar-thumb{background:var(--border2);border-radius:4px}.lang-catalog-row{display:flex;align-items:center;width:100%;padding:8px 10px;border-radius:var(--radius);border:1px solid transparent;background:transparent;cursor:pointer;transition:background var(--tr);color:var(--text);text-align:left;font-family:var(--font-ui)}.lang-catalog-row:hover{background:var(--surface2)}.lang-manage-row{display:flex;align-items:center;justify-content:space-between;width:100%;padding:7px 8px 7px 4px;border-radius:var(--radius);background:transparent;transition:background var(--tr),opacity var(--tr);user-select:none;color:var(--text);font-family:var(--font-ui)}.lang-manage-row:hover{background:var(--surface2)}.lang-manage-row.is-dragging{opacity:.35;background:var(--surface3)}.lang-drag-handle{padding:4px;color:var(--text-3);cursor:grab;display:flex;align-items:center;justify-content:center;border-radius:4px}.lang-drag-handle:hover{color:var(--text)}.lang-drag-handle:active{cursor:grabbing}.lang-delete-btn{padding:6px;color:var(--text-3);background:transparent;border:none;border-radius:var(--radius-sm);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:color var(--tr),background var(--tr)}.lang-delete-btn:hover{color:var(--red);background:#ff524724}.lang-delete-btn:disabled{opacity:.25;cursor:not-allowed}.lang-add-more-row{display:flex;align-items:center;gap:8px;width:100%;padding:10px 8px 4px;margin-top:6px;background:transparent;border:none;color:var(--text-2);font-size:13.5px;font-weight:500;font-family:var(--font-ui);cursor:pointer;transition:color var(--tr);text-align:left}.lang-add-more-row:hover{color:var(--text)}.lang-empty-state{padding:32px 16px;text-align:center}.lang-empty-text{font-size:13.5px;color:var(--text-3)}.lang-confirm-backdrop{position:absolute;inset:0;background:#000000a6;backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;padding:20px;z-index:100;border-radius:var(--radius-lg);animation:popoverFadeIn .12s ease}.lang-confirm-card{background:var(--surface2);border:1px solid var(--border2);border-radius:var(--radius-lg);padding:18px;max-width:320px;width:100%;box-shadow:0 16px 40px #0009;display:flex;flex-direction:column;gap:10px;font-family:var(--font-ui)}.lang-confirm-header{display:flex;align-items:center;gap:10px}.lang-confirm-title{font-size:15px;font-weight:600;color:var(--text);margin:0}.lang-confirm-desc{font-size:13px;line-height:1.45;color:var(--text-2);margin:0}.lang-confirm-actions{display:flex;justify-content:flex-end;gap:8px;padding-top:4px}.lang-confirm-btn-cancel{padding:6px 12px;border-radius:var(--radius);background:var(--surface);border:1px solid var(--border);color:var(--text);font-size:13px;font-family:var(--font-ui);cursor:pointer;transition:background var(--tr),border-color var(--tr)}.lang-confirm-btn-cancel:hover{background:var(--surface3);border-color:var(--border2)}.lang-confirm-btn-danger{padding:6px 12px;border-radius:var(--radius);background:var(--red);border:none;color:var(--white);font-size:13px;font-weight:500;font-family:var(--font-ui);cursor:pointer;transition:filter var(--tr)}.lang-confirm-btn-danger:hover{filter:brightness(1.1)}.lang-section-header{font-size:13px;font-weight:600;color:var(--text-2);margin:14px 0 8px}.lang-grid{display:grid;grid-template-columns:1fr 1fr;gap:4px}.lang-option{display:flex;align-items:center;gap:10px;padding:9px 12px;border-radius:var(--radius);cursor:pointer;font-size:14px;background:none;border:1px solid transparent;color:var(--text);text-align:left;transition:background var(--tr)}.lang-option:hover{background:var(--surface2)}.lang-option.selected{background:var(--accent-bg);border-color:#8b5cf659}.settings-modal-shell{display:flex;flex-direction:column;gap:20px}.settings-modal-header{display:flex;align-items:center;justify-content:space-between}.settings-modal-title{margin:0;font-size:18px;font-weight:700;color:var(--text)}.settings-modal-body{display:grid;grid-template-columns:220px 1fr;gap:28px;align-items:start}.settings-sidebar{display:flex;flex-direction:column;gap:22px;background:var(--surface2);border:1px solid var(--border);border-radius:12px;padding:18px}.settings-brand{display:flex;align-items:center;gap:12px}.settings-brand-badge{width:40px;height:40px;border-radius:12px;background:linear-gradient(135deg,#7c3aed,#a78bfa);color:var(--white);font-weight:800;font-size:15px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.settings-brand-name{font-size:15px;font-weight:700;color:var(--text)}.settings-brand-sub{font-size:13px;color:var(--text-3)}.settings-attributions{display:flex;flex-direction:column;gap:8px;font-size:13px;line-height:1.45;color:var(--text-2)}.settings-attributions p{margin:0}.settings-attr-title{font-size:13px;font-weight:700;color:var(--text)}.settings-main{display:flex;flex-direction:column;gap:24px}.settings-group{display:flex;flex-direction:column;gap:14px}.settings-group-title{margin:0;font-size:14px;font-weight:700;color:var(--accent-soft);letter-spacing:.01em}.settings-row-select{display:flex;align-items:center;justify-content:space-between;gap:16px;font-size:14px;color:var(--text)}.settings-select{background:var(--surface2);border:1px solid var(--border);border-radius:var(--radius);color:var(--text);font:inherit;font-size:14px;padding:7px 12px;outline:none;cursor:pointer}.settings-select:focus{border-color:var(--accent)}.settings-row-label{font-size:14px;color:var(--text);font-weight:500}.settings-row-desc{font-size:13px;color:var(--text-3);margin-top:2px;line-height:1.35}.settings-backup-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.settings-modal-footer{display:flex;justify-content:flex-end}dialog.app-dialog.auth-modal-dialog{padding:20px;width:min(350px,calc(100vw - 28px));max-width:350px}.auth-shell{display:flex;flex-direction:column}.auth-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.auth-title{font-size:16px;font-weight:600;color:var(--text);margin:0;line-height:1.2}.auth-close{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border:none;background:transparent;border-radius:var(--radius-sm);color:var(--text-3);cursor:pointer;transition:color var(--tr),background var(--tr);margin-right:-4px}.auth-close:hover{color:var(--text);background:var(--surface2)}.auth-login-view{display:flex;flex-direction:column;gap:16px;text-align:left}.auth-description{font-size:13.5px;line-height:1.5;color:var(--text-2);margin:0;text-align:left}.btn-google-sign{width:100%;height:42px;display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:0 16px;border-radius:var(--radius);background:var(--surface2);border:1px solid var(--border2);color:var(--text);font:inherit;font-size:13.5px;font-weight:500;cursor:pointer;transition:all var(--tr)}.btn-google-sign:hover:not(:disabled){background:var(--surface3);border-color:var(--accent);color:var(--white)}.btn-google-sign:disabled{opacity:.6;cursor:not-allowed}.auth-profile{display:flex;flex-direction:column;gap:14px}.auth-profile-row{display:flex;align-items:center;gap:12px}.auth-profile-photo{width:38px;height:38px;border-radius:50%;object-fit:cover;flex-shrink:0;border:1px solid var(--border2)}.auth-profile-initial{width:38px;height:38px;border-radius:50%;background:var(--accent-bg);color:var(--accent);border:1px solid var(--accent);display:flex;align-items:center;justify-content:center;font-weight:600;font-size:15px;flex-shrink:0}.auth-profile-meta{min-width:0;flex:1}.auth-profile-name{font-size:14px;font-weight:600;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.auth-profile-email{font-size:var(--fs-xs);color:var(--text-3);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-top:1px}.auth-sync-bar{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 10px;border-radius:var(--radius);background:var(--surface2);border:1px solid var(--border)}.auth-sync-status{display:flex;align-items:center;gap:6px;font-size:var(--fs-xs);color:var(--text-2);min-width:0}.text-success{color:var(--green)}.text-danger{color:var(--red)}.auth-sync-action-btn{display:inline-flex;align-items:center;gap:5px;height:26px;padding:0 9px;border-radius:5px;background:var(--surface3);border:1px solid var(--border2);color:var(--text-2);font:inherit;font-size:var(--fs-xs);font-weight:500;cursor:pointer;transition:all var(--tr);flex-shrink:0}.auth-sync-action-btn:hover:not(:disabled){color:var(--text);border-color:var(--accent)}.btn-auth-signout{width:100%;height:32px;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:0 12px;border-radius:var(--radius);background:transparent;border:1px solid var(--border);color:var(--text-3);font:inherit;font-size:var(--fs-xs);cursor:pointer;transition:all var(--tr)}.btn-auth-signout:hover:not(:disabled){color:var(--red);border-color:#ff524766;background:#ff524714}.auth-error{padding:7px 10px;border-radius:var(--radius);background:#ff52471a;border:1px solid rgba(255,82,71,.25);color:var(--red-soft);font-size:var(--fs-xs);text-align:left}.auth-notice{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:var(--radius);background:var(--surface2);border:1px solid var(--border)}.auth-muted-icon{color:var(--text-3);flex-shrink:0}.auth-subtext{font-size:var(--fs-xs);color:var(--text-2);margin:0;line-height:1.4}
