.reader-wrapper[data-v-1c5405ed]{flex-direction:column;gap:.75rem;display:flex}.reader-toolbar[data-v-1c5405ed]{gap:.5rem;display:flex}.read-all-btn[data-v-1c5405ed]{color:#27ae60;cursor:pointer;background:0 0;border:1px solid #27ae60;border-radius:4px;padding:.3rem .8rem;font-size:.8rem;transition:all .15s}.read-all-btn[data-v-1c5405ed]:hover:not(:disabled){color:#fff;background:#27ae60}.read-all-btn[data-v-1c5405ed]:disabled{opacity:.5;cursor:not-allowed}.reader-view[data-v-1c5405ed]{letter-spacing:.02em;font-size:1.1rem;line-height:2.2}.reader-view[data-v-1c5405ed] ruby{cursor:pointer;border-radius:3px;padding:0 1px;transition:background .15s}.reader-view[data-v-1c5405ed] ruby:hover{background:#ebf5fb}.reader-view[data-v-1c5405ed] .word-plain{cursor:pointer;border-radius:3px;transition:background .15s}.reader-view[data-v-1c5405ed] .word-plain:hover{background:#f0f0f0}.reader-view[data-v-1c5405ed] p{margin:.8em 0;position:relative}.reader-view[data-v-1c5405ed] .tts-highlight{border-radius:3px;box-shadow:0 0 0 2px #ffeaa7;background:#ffeaa7!important}.tag-switcher[data-v-9bf7be40]{background:#fff;border:1px solid #eee;border-radius:8px;padding:.75rem}.label[data-v-9bf7be40]{color:#555;margin-bottom:.5rem;font-size:.85rem;font-weight:600;display:block}.levels[data-v-9bf7be40]{flex-wrap:wrap;gap:.35rem;display:flex}.level-btn[data-v-9bf7be40]{cursor:pointer;background:#fafafa;border:1px solid #ddd;border-radius:14px;padding:.25rem .6rem;font-size:.78rem;transition:all .15s}.level-btn[data-v-9bf7be40]:hover{color:#3498db;border-color:#3498db}.level-btn.active[data-v-9bf7be40]{color:#fff;background:#3498db;border-color:#3498db}.tooltip-overlay[data-v-61071f66]{z-index:1000;position:fixed;top:0;bottom:0;left:0;right:0}.tooltip-card[data-v-61071f66]{z-index:1001;background:#fff;border-radius:10px;width:300px;padding:1rem;position:fixed;box-shadow:0 8px 30px #0000001f}.tooltip-header[data-v-61071f66]{align-items:baseline;gap:.5rem;margin-bottom:.5rem;display:flex}.word[data-v-61071f66]{color:#2c3e50;font-size:1.2rem;font-weight:700}.phonetic[data-v-61071f66]{color:#7f8c8d;font-size:.9rem}.close-btn[data-v-61071f66]{cursor:pointer;color:#aaa;background:0 0;border:none;margin-left:auto;font-size:1.3rem;line-height:1}.close-btn[data-v-61071f66]:hover{color:#333}.section[data-v-61071f66]{margin-bottom:.5rem}.translations p[data-v-61071f66]{color:#444;margin:.15rem 0;font-size:.9rem}.forms[data-v-61071f66]{flex-wrap:wrap;gap:.3rem;display:flex}.form-tag[data-v-61071f66]{color:#2980b9;background:#f0f7ff;border-radius:4px;padding:.15rem .4rem;font-size:.75rem}.tags .tag[data-v-61071f66]{color:#f39c12;background:#fef9e7;border-radius:4px;padding:.15rem .4rem;font-size:.75rem}.not-found[data-v-61071f66],.loading-text[data-v-61071f66]{color:#999;font-size:.85rem}.tooltip-footer[data-v-61071f66]{border-top:1px solid #f0f0f0;margin-top:.75rem;padding-top:.5rem}.detail-btn[data-v-61071f66]{color:#3498db;cursor:pointer;background:0 0;border:1px solid #3498db;border-radius:4px;padding:.3rem .6rem;font-size:.8rem;transition:all .15s}.detail-btn[data-v-61071f66]:hover{color:#fff;background:#3498db}.drawer-inline[data-v-4848660b]{background:#fff;border:1px solid #eee;border-radius:8px;margin-top:1rem;overflow:hidden}.drawer-header[data-v-4848660b]{background:#fafafa;border-bottom:1px solid #eee;justify-content:space-between;align-items:center;padding:.75rem 1.25rem;display:flex}.drawer-header h3[data-v-4848660b]{color:#2c3e50;margin:0;font-size:1.1rem}.close-btn[data-v-4848660b]{cursor:pointer;color:#aaa;background:0 0;border:none;font-size:1.5rem;line-height:1}.close-btn[data-v-4848660b]:hover{color:#333}.drawer-body[data-v-4848660b]{scrollbar-gutter:stable;max-height:500px;overflow-y:auto}.shadow-host[data-v-4848660b]{min-height:100px}.loading[data-v-4848660b]{text-align:center;color:#999;padding:2rem}.drawer-enter-active[data-v-4848660b],.drawer-leave-active[data-v-4848660b]{transition:opacity .2s,transform .2s}.drawer-enter-from[data-v-4848660b],.drawer-leave-to[data-v-4848660b]{opacity:0;transform:translateY(-8px)}.explorer-tree[data-v-24e9e23a]{flex-direction:column;gap:.75rem;display:flex}.mode-bar[data-v-24e9e23a]{gap:.5rem;display:flex}.mode-btn[data-v-24e9e23a]{cursor:pointer;background:#fff;border:1px solid #ddd;border-radius:6px;padding:.35rem .75rem;font-size:.8rem;transition:all .15s}.mode-btn.active[data-v-24e9e23a]{color:#fff;background:#2c3e50;border-color:#2c3e50}.letter-bar[data-v-24e9e23a]{flex-wrap:wrap;gap:2px;display:flex}.letter-btn[data-v-24e9e23a]{cursor:pointer;background:#fff;border:1px solid #ddd;border-radius:4px;width:28px;height:28px;font-size:.75rem;font-weight:600;transition:all .1s}.letter-btn[data-v-24e9e23a]:hover{color:#3498db;border-color:#3498db}.letter-btn.active[data-v-24e9e23a]{color:#fff;background:#3498db;border-color:#3498db}.prefix-bar[data-v-24e9e23a]{flex-wrap:wrap;gap:2px;max-height:80px;display:flex;overflow-y:auto}.prefix-btn[data-v-24e9e23a]{cursor:pointer;background:#fafafa;border:1px solid #eee;border-radius:3px;padding:2px 6px;font-family:monospace;font-size:.7rem}.prefix-btn[data-v-24e9e23a]:hover{color:#27ae60;border-color:#27ae60}.prefix-btn.active[data-v-24e9e23a]{color:#fff;background:#27ae60;border-color:#27ae60}.word-list[data-v-24e9e23a]{scrollbar-gutter:stable;border:1px solid #eee;border-radius:6px;max-height:400px;overflow-y:auto}.list-loading[data-v-24e9e23a],.list-count[data-v-24e9e23a]{color:#999;text-align:center;padding:.5rem;font-size:.8rem}.word-item[data-v-24e9e23a]{cursor:pointer;border-bottom:1px solid #f8f8f8;align-items:baseline;gap:.5rem;padding:.4rem .6rem;transition:background .1s;display:flex}.word-item[data-v-24e9e23a]:hover{background:#f0f7ff}.word-text[data-v-24e9e23a]{color:#2c3e50;min-width:80px;font-size:.9rem;font-weight:600}.word-phonetic[data-v-24e9e23a]{color:#8e44ad;font-size:.75rem}.word-trans[data-v-24e9e23a]{color:#7f8c8d;text-overflow:ellipsis;white-space:nowrap;font-size:.75rem;overflow:hidden}.tag-filter[data-v-95d0c56f]{flex-direction:column;gap:.75rem;display:flex}.filter-tags[data-v-95d0c56f]{flex-wrap:wrap;gap:.3rem;display:flex}.filter-btn[data-v-95d0c56f]{cursor:pointer;background:#fff;border:1px solid #ddd;border-radius:12px;padding:.2rem .5rem;font-size:.75rem}.filter-btn.active[data-v-95d0c56f]{color:#fff;background:#9b59b6;border-color:#9b59b6}.search-row[data-v-95d0c56f]{gap:.5rem;display:flex}.search-row input[data-v-95d0c56f]{border:1px solid #ddd;border-radius:6px;flex:1;padding:.4rem .6rem;font-size:.85rem}.search-btn[data-v-95d0c56f]{color:#fff;cursor:pointer;background:#3498db;border:none;border-radius:6px;padding:.4rem .8rem;font-size:.8rem}.results-header[data-v-95d0c56f]{color:#888;justify-content:space-between;align-items:center;font-size:.8rem;display:flex}.auto-read-btn[data-v-95d0c56f]{color:#27ae60;cursor:pointer;background:0 0;border:1px solid #27ae60;border-radius:4px;padding:.2rem .5rem;font-size:.75rem}.card-wall[data-v-95d0c56f]{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.5rem;max-height:300px;display:grid;overflow-y:auto}.word-card[data-v-95d0c56f]{cursor:pointer;border:1px solid #eee;border-radius:6px;padding:.5rem;transition:all .15s}.word-card[data-v-95d0c56f]:hover{background:#f0f7ff;border-color:#3498db}.word-card.reading[data-v-95d0c56f]{background:#eafaf1;border-color:#27ae60}.card-word[data-v-95d0c56f]{font-size:.85rem;font-weight:600;display:block}.card-trans[data-v-95d0c56f]{color:#888;margin-top:.2rem;font-size:.7rem;display:block}.morph-nebula h4[data-v-7b9eba73]{color:#555;margin:0 0 .5rem;font-size:.9rem}.nebula-canvas[data-v-7b9eba73]{justify-content:center;align-items:center;width:260px;height:260px;margin:0 auto;display:flex;position:relative}.orbit-ring[data-v-7b9eba73]{border:1px dashed #ddd;border-radius:50%;width:180px;height:180px;position:absolute}.center-node[data-v-7b9eba73]{color:#fff;cursor:pointer;z-index:2;background:#2c3e50;border-radius:20px;padding:.5rem 1rem;font-size:1rem;font-weight:700;transition:transform .15s;position:absolute}.center-node[data-v-7b9eba73]:hover{transform:scale(1.1)}.satellite-node[data-v-7b9eba73]{cursor:pointer;z-index:1;background:#fff;border:1px solid #3498db;border-radius:12px;flex-direction:column;align-items:center;padding:.3rem .6rem;transition:all .15s;display:flex;position:absolute}.satellite-node[data-v-7b9eba73]:hover{background:#ebf5fb;transform:scale(1.05)}.sat-label[data-v-7b9eba73]{color:#888;font-size:.6rem}.sat-word[data-v-7b9eba73]{color:#2980b9;font-size:.8rem;font-weight:600}.spectrogram-compare h4[data-v-ca8842ee]{color:#555;margin:0 0 .75rem;font-size:.9rem}.canvas-group[data-v-ca8842ee]{flex-direction:column;gap:1rem;display:flex}.channel[data-v-ca8842ee]{position:relative}.channel-header[data-v-ca8842ee]{align-items:center;gap:.5rem;margin-bottom:.25rem;display:flex}.channel-header label[data-v-ca8842ee]{color:#888;font-size:.75rem}.duration[data-v-ca8842ee]{color:#4a90d9;background:#f0f6ff;border-radius:3px;padding:1px 6px;font-size:.7rem;font-weight:600}.play-btn[data-v-ca8842ee]{cursor:pointer;background:#f8f8f8;border:1px solid #ddd;border-radius:4px;padding:2px 8px;font-size:.7rem}.play-btn[data-v-ca8842ee]:hover{background:#eee}.ws-container[data-v-ca8842ee]{background:#fafafa;border:1px solid #eee;border-radius:6px;min-height:60px;overflow:hidden}.placeholder[data-v-ca8842ee]{color:#bbb;pointer-events:none;font-size:.75rem;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.duolingo-view[data-v-54955a0a]{flex-direction:column;gap:.75rem;display:flex}.duo-header[data-v-54955a0a]{flex-wrap:wrap;align-items:center;gap:1rem;display:flex}.duo-stats[data-v-54955a0a]{gap:.75rem;display:flex}.stat[data-v-54955a0a]{color:#666;background:#f0f0f0;border-radius:10px;padding:.2rem .6rem;font-size:.8rem}.duo-search[data-v-54955a0a]{border:1px solid #ddd;border-radius:6px;outline:none;flex:1;min-width:180px;padding:.4rem .75rem;font-size:.85rem}.duo-search[data-v-54955a0a]:focus{border-color:#58cc02;box-shadow:0 0 0 2px #58cc0226}.duo-loading[data-v-54955a0a]{text-align:center;color:#999;padding:2rem}.duo-body[data-v-54955a0a]{grid-template-columns:1fr 1fr;align-items:start;gap:1rem;display:grid}.unit-list[data-v-54955a0a]{scrollbar-gutter:stable;flex-direction:column;gap:4px;max-height:520px;display:flex;overflow-y:auto}.unit-card[data-v-54955a0a]{cursor:pointer;border:1px solid #eee;border-radius:8px;align-items:center;gap:.6rem;padding:.5rem .75rem;transition:all .12s;display:flex}.unit-card[data-v-54955a0a]:hover{background:#f6fef0;border-color:#58cc02}.unit-card.active[data-v-54955a0a]{background:#eefbd8;border-color:#58cc02;box-shadow:0 0 0 1px #58cc02}.unit-num[data-v-54955a0a]{color:#fff;background:#58cc02;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;font-size:.75rem;font-weight:700;display:flex}.unit-info[data-v-54955a0a]{flex:1;min-width:0}.unit-name[data-v-54955a0a]{color:#333;white-space:nowrap;text-overflow:ellipsis;font-size:.85rem;font-weight:600;overflow:hidden}.unit-desc[data-v-54955a0a]{color:#999;white-space:nowrap;text-overflow:ellipsis;font-size:.72rem;overflow:hidden}.unit-count[data-v-54955a0a]{color:#aaa;flex-shrink:0;font-size:.7rem}.word-panel[data-v-54955a0a]{border:1px solid #eee;border-radius:8px;padding:1rem;position:sticky;top:1rem}.word-panel h4[data-v-54955a0a]{color:#333;margin:0 0 .25rem;font-size:1rem}.panel-desc[data-v-54955a0a]{color:#888;margin:0 0 .75rem;font-size:.8rem}.word-list[data-v-54955a0a]{scrollbar-gutter:stable;border:1px solid #eee;border-radius:6px;max-height:420px;overflow-y:auto}.word-item[data-v-54955a0a]{cursor:pointer;border-bottom:1px solid #f8f8f8;align-items:baseline;gap:.5rem;padding:.4rem .6rem;transition:background .1s;display:flex}.word-item[data-v-54955a0a]:hover{background:#f0fff0}.word-text[data-v-54955a0a]{color:#2c3e50;min-width:80px;font-size:.9rem;font-weight:600}.word-phonetic[data-v-54955a0a]{color:#8e44ad;font-size:.75rem}.word-trans[data-v-54955a0a]{color:#7f8c8d;text-overflow:ellipsis;white-space:nowrap;font-size:.75rem;overflow:hidden}.app-container[data-v-182e730d]{max-width:1400px;margin:0 auto;padding:1rem}.app-header[data-v-182e730d]{text-align:center;margin-bottom:1rem}.app-header h1[data-v-182e730d]{color:#2c3e50;margin:0;font-size:2rem}.subtitle[data-v-182e730d]{color:#7f8c8d;margin:.25rem 0 0}.tab-nav[data-v-182e730d]{border-bottom:2px solid #eee;gap:.5rem;margin-bottom:1.5rem;padding-bottom:.5rem;display:flex}.tab-btn[data-v-182e730d]{cursor:pointer;color:#666;background:0 0;border:none;border-radius:6px 6px 0 0;padding:.5rem 1.2rem;font-size:1rem;transition:all .2s}.tab-btn[data-v-182e730d]:hover{color:#333;background:#f5f5f5}.tab-btn.active[data-v-182e730d]{color:#fff;background:#3498db;font-weight:600}.reader-layout[data-v-182e730d]{grid-template-columns:280px 1fr;gap:1.5rem;display:grid}.sidebar[data-v-182e730d]{flex-direction:column;gap:1rem;display:flex}.input-section label[data-v-182e730d]{margin-bottom:.5rem;font-weight:600;display:block}.input-section textarea[data-v-182e730d]{resize:vertical;border:1px solid #ddd;border-radius:6px;width:100%;padding:.5rem;font-size:.9rem}.stats[data-v-182e730d],.loading[data-v-182e730d]{color:#7f8c8d;flex-direction:column;gap:.2rem;font-size:.85rem;display:flex}.cache-info[data-v-182e730d]{color:#95a5a6;font-size:.75rem}.reader-main[data-v-182e730d]{background:#fff;border:1px solid #eee;border-radius:8px;min-height:400px;padding:1.5rem}.explorer-layout[data-v-182e730d]{grid-template-columns:1fr 1fr;align-items:start;gap:1.5rem;display:grid}.explorer-left h3[data-v-182e730d],.explorer-right h3[data-v-182e730d]{color:#555;margin:0 0 .75rem;font-size:1rem}.explorer-right[data-v-182e730d]{flex-direction:column;gap:1rem;display:flex}.word-detail[data-v-182e730d]{background:#fafafa;border:1px solid #eee;border-radius:8px;padding:1rem}.word-detail h4[data-v-182e730d]{color:#2c3e50;margin:0 0 .3rem;font-size:1.2rem}.word-detail .phonetic[data-v-182e730d]{color:#8e44ad;margin:0 0 .5rem;font-size:.9rem}.word-detail .translation[data-v-182e730d]{color:#555;white-space:pre-line;margin:0 0 .75rem;font-size:.85rem}.speak-btn[data-v-182e730d],.detail-btn[data-v-182e730d]{color:#3498db;cursor:pointer;background:0 0;border:1px solid #3498db;border-radius:4px;margin-right:.5rem;padding:.3rem .6rem;font-size:.8rem}.speak-btn[data-v-182e730d]:hover,.detail-btn[data-v-182e730d]:hover{background:#ebf5fb}.audio-layout[data-v-182e730d]{grid-template-columns:1fr 1fr;gap:1.5rem;display:grid}.audio-controls h3[data-v-182e730d]{color:#555;margin:0 0 .75rem;font-size:1rem}.practice-input textarea[data-v-182e730d]{resize:vertical;border:1px solid #ddd;border-radius:6px;width:100%;padding:.5rem;font-size:.9rem}.voice-selector[data-v-182e730d]{margin:.75rem 0;font-size:.85rem}.voice-selector select[data-v-182e730d]{border:1px solid #ddd;border-radius:4px;margin-left:.5rem;padding:.3rem}.btn-group[data-v-182e730d]{flex-wrap:wrap;gap:.5rem;margin-top:.75rem;display:flex}.action-btn[data-v-182e730d]{cursor:pointer;border:none;border-radius:6px;padding:.5rem 1rem;font-size:.85rem;transition:opacity .2s}.action-btn[data-v-182e730d]:disabled{opacity:.5;cursor:not-allowed}.action-btn.primary[data-v-182e730d]{color:#fff;background:#3498db}.action-btn.success[data-v-182e730d]{color:#fff;background:#27ae60}.action-btn.danger[data-v-182e730d]{color:#fff;background:#e74c3c}.error-msg[data-v-182e730d]{color:#e74c3c;margin-top:.5rem;font-size:.8rem}.recording-playback[data-v-182e730d]{margin-top:1rem}.recording-playback h4[data-v-182e730d]{color:#555;margin:0 0 .5rem;font-size:.9rem}.recording-playback audio[data-v-182e730d]{width:100%}.audio-spectrogram[data-v-182e730d]{background:#fafafa;border:1px solid #eee;border-radius:8px;padding:1rem}.settings-layout[data-v-182e730d]{flex-direction:column;gap:1.5rem;max-width:600px;display:flex}.settings-section[data-v-182e730d]{background:#fff;border:1px solid #eee;border-radius:8px;padding:1.25rem}.settings-section h3[data-v-182e730d]{color:#2c3e50;margin:0 0 .5rem;font-size:1rem}.settings-desc[data-v-182e730d]{color:#7f8c8d;margin:0 0 .75rem;font-size:.85rem}.voice-select-row[data-v-182e730d]{align-items:center;gap:.5rem;display:flex}.voice-select[data-v-182e730d]{border:1px solid #ddd;border-radius:6px;flex:1;padding:.5rem;font-size:.85rem}.db-details[data-v-182e730d]{border-top:1px solid #f0f0f0;margin-top:.75rem;padding-top:.75rem}.db-row[data-v-182e730d]{justify-content:space-between;align-items:center;padding:.3rem 0;font-size:.8rem;display:flex}.db-label[data-v-182e730d]{color:#888}.db-value[data-v-182e730d]{color:#333;font-weight:500}.db-sub-title[data-v-182e730d]{color:#666;margin:.75rem 0 .5rem;font-size:.8rem}.tag-dist[data-v-182e730d]{flex-direction:column;gap:.35rem;display:flex}.tag-row[data-v-182e730d]{align-items:center;gap:.5rem;font-size:.75rem;display:flex}.tag-name[data-v-182e730d]{color:#555;text-align:right;width:40px}.tag-bar-bg[data-v-182e730d]{background:#f0f0f0;border-radius:6px;flex:1;height:12px;overflow:hidden}.tag-bar[data-v-182e730d]{background:linear-gradient(90deg,#4a90d9,#67b8f7);border-radius:6px;height:100%;transition:width .3s}.tag-count[data-v-182e730d]{color:#888;width:50px;font-size:.7rem}*{box-sizing:border-box}html{scrollbar-gutter:stable}body{color:#2c3e50;background:#f8f9fa;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;line-height:1.6}ruby{ruby-align:center}ruby rt{color:#e74c3c;font-size:.65em;font-weight:500}
