*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}html,body{margin:0;max-width:100%;overflow-x:hidden;font-size:16px}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,Noto Sans SC,Noto Sans Devanagari,Noto Sans Arabic,PingFang SC,Microsoft YaHei,SimHei,Noto Sans CJK SC,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f8fafc}button,select,input{font-family:inherit}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.App{min-height:100vh;display:flex;flex-direction:column;align-items:center;width:100%}.App-main{width:100%;max-width:900px;padding:.5rem 1rem calc(2rem + env(safe-area-inset-bottom,0px));padding-left:calc(1rem + env(safe-area-inset-left,0px));padding-right:calc(1rem + env(safe-area-inset-right,0px));display:flex;flex-direction:column;gap:1.25rem}.fixed-header{position:fixed;top:0;left:0;right:0;z-index:100;display:flex;justify-content:center;padding:0 1rem;box-sizing:border-box;pointer-events:none}.fixed-header>*{pointer-events:auto}.header-spacer{visibility:hidden;pointer-events:none}@media (max-width: 600px){.fixed-header{position:sticky;top:0;left:auto;right:auto;padding:0}.header-spacer{display:none}.App-main{padding-top:0}}.selector-panel{width:100%;max-width:900px;background:#fff;border-radius:0 0 16px 16px;padding:1rem 1.25rem;box-shadow:0 4px 20px #0f172a14;display:flex;flex-direction:column;gap:.75rem}.selector-row{display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:1rem}.selector-row-dialogue{grid-template-columns:minmax(0,1.2fr) minmax(0,1.4fr) minmax(4.5rem,.55fr)}.selector-row-vocabulary{grid-template-columns:minmax(0,1.1fr) minmax(0,1.3fr) minmax(0,1.3fr)}.selector-row-lists{grid-template-columns:minmax(0,1.1fr) minmax(0,1.4fr) minmax(0,auto)}.phrase-list-grid-vocabulary{grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem}.phrase-list-grid-vocabulary .phrase-pair{height:100%;padding:.65rem .7rem;gap:.4rem}.phrase-list-grid-vocabulary .phrase-texts{gap:.25rem}.phrase-list-grid-vocabulary .phrase-source{font-size:.85rem;color:#64748b;line-height:1.25}.phrase-list-grid-vocabulary .phrase-target{font-size:.95rem;font-weight:600;line-height:1.3}.phrase-list-grid-vocabulary .phrase-target-row,.phrase-list-grid-vocabulary .phrase-audio-controls{gap:.4rem}.phrase-list-grid-vocabulary .play-button{min-width:36px;min-height:36px;width:2rem;height:2rem}.content-selector{display:flex;flex-direction:column;gap:.35rem}.content-selector-label{font-size:.95rem;font-weight:600;color:#475569}.lesson-navigation{display:flex;align-items:center;justify-content:flex-start;gap:1rem;margin-top:.25rem}.nav-buttons{display:flex;align-items:center;gap:1rem}.nav-spacer{pointer-events:none}.nav-end-actions{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.auto-play-controls{display:flex;align-items:center;gap:.4rem;padding:.25rem .35rem .25rem .25rem;border-radius:999px;border:1.5px solid #cbd5e1;background:#f8fafc;box-shadow:inset 0 0 0 1px #fff9}.auto-play-controls-active{border-color:#818cf8;background:#eef2ff}.auto-play-repeats{min-height:40px;min-width:3rem;padding:.35rem .5rem;border-radius:999px;border:none;background:#e2e8f0;color:#4f46e5;font-size:.95rem;font-weight:600;cursor:pointer;-webkit-tap-highlight-color:transparent}.auto-play-repeats:disabled{opacity:.6;cursor:not-allowed}.auto-play-button{white-space:nowrap}.auto-play-controls .auto-play-button{min-height:40px;padding:.35rem .9rem}.quiz-nav-button{min-height:44px;padding:.45rem 1rem;border-radius:999px;border:none;background:#e2e8f0;color:#4f46e5;font-size:.95rem;font-weight:600;cursor:pointer;transition:background .15s ease,transform .15s ease,opacity .15s ease;-webkit-tap-highlight-color:transparent}.quiz-nav-button:hover:not(:disabled){background:#cbd5e1;transform:scale(1.03)}.quiz-nav-button:disabled{opacity:.6;cursor:not-allowed}.quiz-nav-button-active{background:#4f46e5;color:#fff}.quiz-nav-button-active:hover:not(:disabled){background:#4338ca}.nav-button{flex:0 0 auto;width:2.75rem;height:2.75rem;min-width:44px;min-height:44px;border-radius:50%;border:none;background:#e2e8f0;color:#4f46e5;font-size:1.25rem;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s ease,transform .15s ease,opacity .15s ease;-webkit-tap-highlight-color:transparent}.nav-button:hover:not(:disabled){background:#cbd5e1;transform:scale(1.05)}.nav-button:disabled{background:#e2e8f0;color:#94a3b8;cursor:not-allowed;opacity:.7}.language-row{display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:1rem}.language-selector{display:flex;flex-direction:column;gap:.35rem}.language-selector-label{font-size:.95rem;font-weight:600;color:#475569}.field-control{width:100%;min-height:44px;padding:.5rem .7rem;border-radius:10px;border:1px solid #cbd5e1;background:#f8fafc;font-size:1rem;color:#1e293b}.field-control:focus{outline:2px solid #7c3aed;outline-offset:1px}.content-panel{min-height:200px}.content-placeholder{text-align:center;color:#64748b;padding:2rem 1rem}.content-error{color:#dc2626}.content-viewer{display:flex;flex-direction:column;gap:1.5rem}.content-group{margin-bottom:1.5rem}.content-group-title{margin:0 0 .5rem;color:#4f46e5;font-size:1rem;font-weight:600}.phrase-list{display:flex;flex-direction:column;gap:.75rem}.phrase-list-grid{display:grid;gap:.75rem}.phrase-list-grid-letters{grid-template-columns:repeat(4,1fr)}.phrase-list-grid-numbers,.phrase-list-grid-counting{grid-template-columns:repeat(5,1fr)}.phrase-list-grid-days,.phrase-list-grid-months,.phrase-list-grid-colors,.phrase-list-grid-parts{grid-template-columns:repeat(4,1fr)}.phrase-list-grid-temperatures{grid-template-columns:repeat(5,1fr)}.phrase-list-grid-directions,.phrase-list-grid-verbs,.phrase-list-grid-objects{grid-template-columns:repeat(4,1fr)}.phrase-list-grid .phrase-pair{flex-direction:column;text-align:left}.phrase-pair{display:flex;align-items:center;gap:1rem;background:#fff;border-radius:12px;padding:.85rem 1rem;box-shadow:0 2px 10px #0f172a0f;min-width:0}.phrase-texts{flex:1;min-width:0;text-align:left;display:flex;flex-direction:column;gap:.35rem}.phrase-target-row{display:flex;flex-direction:column;align-items:flex-start;gap:.5rem;min-width:0}.phrase-audio-controls{display:flex;align-items:center;gap:.75rem;flex:0 0 auto}.play-button{flex:0 0 auto;width:1.75rem;height:1.75rem;min-width:32px;min-height:32px;border-radius:4px;border:none;background:#e2e8f0;font-size:.85rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s ease;-webkit-tap-highlight-color:transparent}.play-button:hover{background:#cbd5e1}.phrase-source,.phrase-target{margin:0;font-size:1rem;font-weight:400;color:#1e293b;overflow-wrap:break-word;word-break:break-word}.phrase-audio-error{font-size:.75rem;color:#94a3b8;flex:0 0 auto}@media (min-width: 601px) and (max-width: 900px){.App-main{padding-left:1.5rem;padding-right:1.5rem}}@media (max-width: 600px){.App-main{padding-top:1rem;gap:1rem}.selector-panel{padding:1rem}.selector-row,.language-row{grid-template-columns:1fr}.phrase-pair{padding:.75rem .85rem}.phrase-target-row{flex-direction:column;align-items:flex-start}.phrase-list-grid-letters,.phrase-list-grid-numbers,.phrase-list-grid-counting{grid-template-columns:repeat(4,1fr)}.phrase-list-grid-days,.phrase-list-grid-months,.phrase-list-grid-colors,.phrase-list-grid-parts{grid-template-columns:repeat(2,1fr)}.phrase-list-grid-temperatures{grid-template-columns:repeat(3,1fr)}.phrase-list-grid-directions,.phrase-list-grid-verbs,.phrase-list-grid-objects{grid-template-columns:repeat(2,1fr)}.phrase-list-grid-vocabulary{grid-template-columns:repeat(3,minmax(0,1fr));gap:.45rem}.phrase-list-grid-vocabulary .phrase-pair{padding:.5rem .45rem;border-radius:10px}.phrase-list-grid-vocabulary .phrase-source{font-size:.75rem}.phrase-list-grid-vocabulary .phrase-target{font-size:.85rem}.phrase-list-grid-vocabulary .play-button{min-width:34px;min-height:34px;width:1.9rem;height:1.9rem;font-size:.8rem}.selector-row-vocabulary,.selector-row-lists{grid-template-columns:1fr;gap:.65rem}}@media (min-width: 601px) and (max-width: 900px){.phrase-list-grid-letters,.phrase-list-grid-numbers,.phrase-list-grid-counting{grid-template-columns:repeat(5,1fr)}.phrase-list-grid-days,.phrase-list-grid-months,.phrase-list-grid-colors,.phrase-list-grid-parts{grid-template-columns:repeat(3,1fr)}.phrase-list-grid-temperatures{grid-template-columns:repeat(4,1fr)}.phrase-list-grid-directions,.phrase-list-grid-verbs,.phrase-list-grid-objects{grid-template-columns:repeat(3,1fr)}.phrase-list-grid-vocabulary{grid-template-columns:repeat(3,minmax(0,1fr));gap:.55rem}.quiz-options-vocabulary{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width: 380px){.phrase-list-grid-vocabulary{gap:.35rem}.phrase-list-grid-vocabulary .phrase-pair{padding:.4rem .35rem}.phrase-list-grid-vocabulary .phrase-source{font-size:.7rem}.phrase-list-grid-vocabulary .phrase-target{font-size:.8rem}.quiz-options-vocabulary .quiz-option{padding:.4rem .25rem}.quiz-options-vocabulary .quiz-option-target{font-size:.75rem}}.dark-mode-toggle{display:flex;align-items:center;gap:.5rem;font-size:.9rem;color:#475569;cursor:pointer}.dark-mode-toggle input{width:1rem;height:1rem;cursor:pointer}body.dark-mode{background-color:#0f172a}.dark-mode{background:#0f172a}.dark-mode .selector-panel{background:#1e293b;box-shadow:0 4px 20px #0000004d}.dark-mode .field-control{background:#0f172a;border-color:#64748b;color:#f1f5f9}.dark-mode .language-selector-label,.dark-mode .content-selector-label,.dark-mode .dark-mode-toggle{color:#e2e8f0}.dark-mode .field-control:disabled{background:#1e293b;color:#94a3b8}.dark-mode select.field-control{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23e2e8f0' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .7rem center;padding-right:2rem}.dark-mode .nav-button,.dark-mode .play-button{background:#475569;color:#e0e7ff}.dark-mode .nav-button:hover:not(:disabled),.dark-mode .play-button:hover{background:#64748b}.dark-mode .nav-button:disabled{background:#334155;color:#64748b}.dark-mode .content-placeholder{color:#94a3b8}.dark-mode .content-group-title{color:#818cf8}.dark-mode .phrase-pair{background:#1e293b;box-shadow:0 2px 10px #00000040}.dark-mode .phrase-source,.dark-mode .phrase-target,.dark-mode .dark-mode-toggle{color:#f1f5f9}.dark-mode .phrase-audio-error{color:#64748b}.dark-mode .content-error{color:#f87171}.dark-mode .auto-play-controls{border-color:#64748b;background:#1e293b;box-shadow:none}.dark-mode .auto-play-controls-active{border-color:#818cf8;background:#312e81}.dark-mode .auto-play-repeats,.dark-mode .quiz-nav-button{background:#475569;color:#e0e7ff}.dark-mode .quiz-nav-button:hover:not(:disabled){background:#64748b}.dark-mode .quiz-nav-button-active{background:#6366f1;color:#fff}.dark-mode .quiz-nav-button-active:hover:not(:disabled){background:#4f46e5}.dialogue-quiz{display:flex;flex-direction:column;gap:1rem;background:#fff;border-radius:16px;padding:1.25rem 1.35rem;box-shadow:0 2px 12px #0f172a0f}.quiz-header{display:flex;align-items:center;justify-content:space-between;gap:1rem}.quiz-progress{margin:0;font-size:.95rem;font-weight:600;color:#4f46e5}.quiz-exit-button{border:none;background:transparent;color:#64748b;font-size:.9rem;font-weight:600;cursor:pointer;padding:.35rem .5rem;border-radius:8px}.quiz-exit-button:hover{background:#f1f5f9;color:#334155}.quiz-prompt{margin:0;font-size:1.05rem;font-weight:500;color:#1e293b}.quiz-play-row{display:flex;align-items:center;gap:.75rem;flex-shrink:0}.quiz-action-row{display:flex;align-items:center;justify-content:flex-start;gap:.55rem;flex-wrap:wrap}.quiz-action-status{display:flex;align-items:center;justify-content:flex-start;gap:.5rem;flex:0 1 auto;min-width:0;flex-wrap:wrap}.quiz-action-status .quiz-feedback{margin:0;flex:0 1 auto;white-space:nowrap}.quiz-action-status .quiz-next-button{margin:0;flex:0 0 auto}.quiz-footer-status{display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;gap:.55rem}.quiz-footer-status .quiz-feedback,.quiz-footer-status .quiz-next-button{margin:0}.quiz-play-button{min-height:48px;padding:.65rem 1.25rem;border-radius:12px;border:none;background:#4f46e5;color:#fff;font-size:1rem;font-weight:600;cursor:pointer;transition:background .15s ease,transform .15s ease;-webkit-tap-highlight-color:transparent;white-space:nowrap}.quiz-play-button:hover{background:#4338ca;transform:scale(1.02)}.quiz-options{display:flex;flex-direction:column;gap:.65rem}.quiz-options-vocabulary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.55rem}.quiz-options-vocabulary .quiz-option{min-width:0;min-height:52px;align-items:center;justify-content:center;text-align:center;padding:.65rem .5rem}.quiz-options-vocabulary .quiz-option-target,.quiz-options-vocabulary .quiz-option-source{width:100%;text-align:center;overflow-wrap:anywhere;word-break:break-word}.quiz-options-vocabulary .quiz-option-target{font-size:.92rem;line-height:1.25}.quiz-options-vocabulary .quiz-option-source{font-size:.78rem;line-height:1.2}.quiz-option{display:flex;flex-direction:column;align-items:flex-start;gap:.25rem;width:100%;text-align:left;padding:.85rem 1rem;border-radius:12px;border:2px solid #e2e8f0;background:#f8fafc;cursor:pointer;transition:border-color .15s ease,background .15s ease,transform .1s ease;-webkit-tap-highlight-color:transparent}.quiz-option:hover:not(:disabled){border-color:#a5b4fc;background:#eef2ff}.quiz-option:disabled{cursor:default}.quiz-option-target{font-size:1rem;font-weight:600;color:#1e293b}.quiz-option-source{font-size:.9rem;color:#64748b}.quiz-option-correct{border-color:#16a34a;background:#dcfce7}.quiz-option-correct .quiz-option-target{color:#166534}.quiz-option-wrong{border-color:#dc2626;background:#fee2e2}.quiz-option-wrong .quiz-option-target{color:#991b1b}.quiz-feedback{margin:0;padding:.65rem .9rem;border-radius:10px;font-size:.95rem;font-weight:600;text-align:center}.quiz-feedback-correct{background:#dcfce7;color:#166534}.quiz-feedback-wrong{background:#fee2e2;color:#991b1b}.quiz-primary-button,.quiz-secondary-button{min-height:44px;padding:.55rem 1.15rem;border-radius:12px;border:none;font-size:.95rem;font-weight:600;cursor:pointer;transition:background .15s ease,transform .15s ease;-webkit-tap-highlight-color:transparent}.quiz-primary-button{background:#4f46e5;color:#fff}.quiz-primary-button:hover{background:#4338ca}.quiz-secondary-button{background:#e2e8f0;color:#334155}.quiz-secondary-button:hover{background:#cbd5e1}.quiz-next-button{align-self:stretch}.quiz-complete{display:flex;flex-direction:column;align-items:center;gap:.75rem;padding:1.5rem .5rem;text-align:center}.quiz-complete-title{margin:0;font-size:1.35rem;font-weight:700;color:#4f46e5}.quiz-complete-subtitle{margin:0;color:#64748b}.quiz-complete-actions{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:center;margin-top:.5rem}.dark-mode .dialogue-quiz{background:#1e293b;box-shadow:0 2px 12px #00000040}.dark-mode .quiz-progress,.dark-mode .quiz-complete-title{color:#818cf8}.dark-mode .quiz-exit-button{color:#94a3b8}.dark-mode .quiz-exit-button:hover{background:#334155;color:#e2e8f0}.dark-mode .quiz-prompt{color:#f1f5f9}.dark-mode .quiz-play-button,.dark-mode .quiz-primary-button{background:#6366f1}.dark-mode .quiz-play-button:hover,.dark-mode .quiz-primary-button:hover{background:#4f46e5}.dark-mode .quiz-option{background:#0f172a;border-color:#475569}.dark-mode .quiz-option:hover:not(:disabled){border-color:#818cf8;background:#1e1b4b}.dark-mode .quiz-option-target{color:#f1f5f9}.dark-mode .quiz-option-source{color:#94a3b8}.dark-mode .quiz-option-correct{border-color:#22c55e;background:#14532d}.dark-mode .quiz-option-correct .quiz-option-target{color:#bbf7d0}.dark-mode .quiz-option-wrong{border-color:#f87171;background:#7f1d1d}.dark-mode .quiz-option-wrong .quiz-option-target{color:#fecaca}.dark-mode .quiz-feedback-correct{background:#14532d;color:#bbf7d0}.dark-mode .quiz-feedback-wrong{background:#7f1d1d;color:#fecaca}.dark-mode .quiz-secondary-button{background:#475569;color:#e2e8f0}.dark-mode .quiz-secondary-button:hover{background:#64748b}.dark-mode .quiz-complete-subtitle{color:#94a3b8}@media (max-width: 600px){.dialogue-quiz{padding:1rem .85rem;border-radius:12px}.quiz-action-row{align-items:center;gap:.45rem}.quiz-play-row{flex:0 1 auto;min-width:0}.quiz-play-button{width:auto;max-width:100%}.quiz-action-status{justify-content:flex-start;flex:0 1 auto;gap:.4rem}.quiz-action-status .quiz-feedback{white-space:normal}.quiz-action-status .quiz-next-button{flex:0 0 auto}.quiz-footer-status{flex-direction:row;flex-wrap:wrap}.quiz-options-vocabulary{grid-template-columns:repeat(3,minmax(0,1fr));gap:.4rem}.quiz-options-vocabulary .quiz-option{min-height:48px;padding:.5rem .35rem}.quiz-options-vocabulary .quiz-option-target{font-size:.82rem}.quiz-options-vocabulary .quiz-option-source{font-size:.7rem}.quiz-complete-actions{flex-direction:column}.quiz-complete-actions .quiz-primary-button,.quiz-complete-actions .quiz-secondary-button{width:100%}}@media (max-width: 380px){.quiz-options-vocabulary{gap:.3rem}.quiz-options-vocabulary .quiz-option{padding:.4rem .25rem}.quiz-options-vocabulary .quiz-option-target{font-size:.75rem}.quiz-options-vocabulary .quiz-option-source{font-size:.65rem}}.App-main-dashboard{max-width:1200px}.dashboard{display:flex;flex-direction:column;gap:1.25rem;width:100%;padding-bottom:2rem}.dashboard-header{background:#fff;border-radius:16px;padding:1.1rem 1.25rem 1.25rem;box-shadow:0 4px 20px #0f172a14;display:flex;flex-direction:column;gap:.75rem}.dark-mode .dashboard-header{background:#1e293b;box-shadow:0 4px 20px #0000004d}.dashboard-header-top{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:.75rem}.dashboard-title{margin:0;text-align:center;font-size:1.35rem;font-weight:700;color:#1e293b}.dark-mode .dashboard-title{color:#f1f5f9}.dashboard-subtitle{margin:0;font-size:.9rem;color:#64748b;line-height:1.45}.dark-mode .dashboard-subtitle{color:#94a3b8}.dashboard-subtitle a{color:#4f46e5}.dark-mode .dashboard-subtitle a{color:#a5b4fc}.dashboard-back,.dashboard-refresh{min-height:40px;padding:.4rem .85rem;border-radius:999px;border:none;background:#e2e8f0;color:#4f46e5;font-size:.9rem;font-weight:600;cursor:pointer;transition:background .15s ease}.dashboard-back:hover,.dashboard-refresh:hover:not(:disabled){background:#cbd5e1}.dashboard-refresh:disabled{opacity:.65;cursor:wait}.dark-mode .dashboard-back,.dark-mode .dashboard-refresh{background:#334155;color:#c7d2fe}.dark-mode .dashboard-back:hover,.dark-mode .dashboard-refresh:hover:not(:disabled){background:#475569}.dashboard-filters{display:flex;flex-wrap:wrap;align-items:flex-end;gap:.75rem 1rem}.dashboard-filter{display:flex;flex-direction:column;gap:.3rem;font-size:.85rem;font-weight:600;color:#475569;min-width:9rem}.dark-mode .dashboard-filter{color:#e2e8f0}.dashboard-presets{display:flex;flex-wrap:wrap;gap:.4rem;margin-left:auto}.dashboard-chip{min-height:34px;padding:.3rem .75rem;border-radius:999px;border:1px solid #cbd5e1;background:#f8fafc;color:#334155;font-size:.8rem;font-weight:600;cursor:pointer}.dashboard-chip:hover{background:#e2e8f0}.dark-mode .dashboard-chip{background:#0f172a;border-color:#475569;color:#e2e8f0}.dark-mode .dashboard-chip:hover{background:#334155}.dashboard-error{text-align:center;margin:0}.dashboard-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem}.dashboard-kpi{background:#fff;border-radius:14px;padding:1rem 1.1rem;box-shadow:0 2px 12px #0f172a0f;display:flex;flex-direction:column;gap:.2rem}.dark-mode .dashboard-kpi{background:#1e293b;box-shadow:0 2px 12px #00000040}.dashboard-kpi-value{font-size:1.6rem;font-weight:750;color:#4f46e5;line-height:1.1}.dark-mode .dashboard-kpi-value{color:#a5b4fc}.dashboard-kpi-label{font-size:.9rem;font-weight:600;color:#334155}.dark-mode .dashboard-kpi-label{color:#e2e8f0}.dashboard-kpi-hint{font-size:.75rem;color:#94a3b8}.dashboard-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem}.dashboard-card{background:#fff;border-radius:14px;padding:1rem 1.1rem 1.15rem;box-shadow:0 2px 12px #0f172a0f;display:flex;flex-direction:column;min-width:0}.dark-mode .dashboard-card{background:#1e293b;box-shadow:0 2px 12px #00000040}.dashboard-card-wide{grid-column:1 / -1}.dashboard-card-header h3{margin:0;font-size:1.05rem;color:#1e293b}.dark-mode .dashboard-card-header h3{color:#f1f5f9}.dashboard-card-header p{margin:.25rem 0 0;font-size:.8rem;color:#94a3b8}.dashboard-card-body{margin-top:.75rem;min-height:0}.dashboard-empty{margin:1.5rem 0;text-align:center;color:#94a3b8;font-size:.9rem}.dashboard-table-wrap{overflow-x:auto;max-height:420px;overflow-y:auto}.dashboard-table{width:100%;border-collapse:collapse;font-size:.9rem;color:#0f172a}.dashboard-table th,.dashboard-table td{padding:.45rem .55rem;border-bottom:1px solid #e2e8f0;text-align:left;vertical-align:middle;color:inherit}.dark-mode .dashboard-table{color:#f1f5f9}.dark-mode .dashboard-table th,.dark-mode .dashboard-table td{border-bottom-color:#475569}.dashboard-table th{position:sticky;top:0;background:#f1f5f9;color:#1e293b;font-weight:650;z-index:1}.dark-mode .dashboard-table th{background:#0f172a;color:#f8fafc}.dashboard-num{text-align:right!important;font-variant-numeric:tabular-nums;white-space:nowrap;color:inherit}.dashboard-muted{color:#475569}.dark-mode .dashboard-muted{color:#cbd5e1}.dashboard-drill-actions{display:flex;gap:.4rem;margin-bottom:.65rem}.dashboard-drill-toggle{width:1.5rem;height:1.5rem;margin-right:.35rem;border:none;border-radius:6px;background:transparent;color:#4f46e5;font-size:.7rem;cursor:pointer;flex-shrink:0}.dashboard-drill-toggle.is-leaf{color:#94a3b8;cursor:default}.dark-mode .dashboard-drill-toggle{color:#a5b4fc}.dashboard-drill-label{display:flex;align-items:center;gap:.15rem}.dashboard-drill-row.depth-0 td:first-child{font-weight:650}.dashboard-drill-row:hover td{background:#4f46e50f}.dark-mode .dashboard-drill-row:hover td{background:#818cf814}@media (max-width: 900px){.dashboard-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-grid{grid-template-columns:1fr}.dashboard-header-top{grid-template-columns:1fr;justify-items:stretch}.dashboard-title{order:-1}.dashboard-presets{margin-left:0}}.dashboard-error-table .dashboard-error-time{white-space:nowrap}.dashboard-error-table .dashboard-error-request,.dashboard-error-table .dashboard-error-message{max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dashboard-error-table .dashboard-error-type{max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (max-width: 520px){.dashboard-kpis{grid-template-columns:1fr}}.lists-nav-button{white-space:nowrap}.lists-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;display:flex;align-items:center;justify-content:center;padding:1rem;background:#0f172a8c}.lists-modal{width:100%;max-width:480px;max-height:min(80vh,640px);display:flex;flex-direction:column;background:#fff;border-radius:16px;box-shadow:0 10px 40px #00000040;padding:1.25rem;gap:.85rem;overflow:hidden}.lists-modal-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.lists-modal-title{margin:0;font-size:1.15rem;font-weight:700;color:#1e293b;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lists-modal-close{border:none;background:#e2e8f0;color:#334155;border-radius:999px;width:32px;height:32px;min-width:32px;font-size:1rem;cursor:pointer;flex-shrink:0}.lists-modal-close:hover{background:#cbd5e1}.lists-overview-panel,.lists-manage-panel{display:flex;flex-direction:column;gap:.75rem;overflow-y:auto;min-height:0}.lists-create-row{display:flex;gap:.5rem}.lists-name-input,.lists-search-input{flex:1;min-width:0;padding:.55rem .75rem;border-radius:10px;border:1px solid #cbd5e1;font-size:.95rem}.lists-create-button{border:none;border-radius:10px;background:#4f46e5;color:#fff;padding:0 .9rem;font-weight:600;cursor:pointer;white-space:nowrap}.lists-create-button:hover:not(:disabled){background:#4338ca}.lists-create-button:disabled{opacity:.55;cursor:not-allowed}.lists-empty{color:#64748b;font-size:.9rem;text-align:center;padding:.75rem 0}.lists-overview{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem}.lists-overview-item{display:flex;align-items:center;gap:.5rem}.lists-manage-button{flex:1;min-width:0;display:flex;align-items:center;justify-content:space-between;gap:.5rem;border:1px solid #e2e8f0;border-radius:10px;background:#f8fafc;padding:.6rem .75rem;cursor:pointer;text-align:left}.lists-manage-button:hover{border-color:#a5b4fc;background:#eef2ff}.lists-overview-name{font-weight:600;color:#1e293b;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lists-overview-count{color:#64748b;font-size:.8rem;white-space:nowrap}.lists-play-button,.lists-remove-list-button,.lists-remove-word-button,.lists-add-word-button{border:none;border-radius:8px;background:#e2e8f0;color:#334155;width:36px;height:36px;min-width:36px;font-size:.95rem;cursor:pointer;flex-shrink:0}.lists-play-button:hover:not(:disabled),.lists-remove-list-button:hover,.lists-remove-word-button:hover,.lists-add-word-button:hover{background:#cbd5e1}.lists-play-button:disabled{opacity:.5;cursor:not-allowed}.lists-play-button-active{background:#4f46e5;color:#fff}.lists-manage-toolbar{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.lists-back-button{border:none;background:none;color:#4f46e5;font-weight:600;cursor:pointer;padding:.4rem .2rem}.lists-back-button:hover{text-decoration:underline}.lists-autoplay-button{border:none;border-radius:999px;background:#4f46e5;color:#fff;font-weight:600;padding:.5rem 1rem;cursor:pointer}.lists-autoplay-button:hover:not(:disabled){background:#4338ca}.lists-autoplay-button:disabled{opacity:.55;cursor:not-allowed}.lists-autoplay-button-active{background:#dc2626}.lists-autoplay-button-active:hover:not(:disabled){background:#b91c1c}.lists-manage-words{max-height:160px;overflow-y:auto;border:1px solid #e2e8f0;border-radius:10px;padding:.35rem}.lists-word-list,.lists-search-results{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.35rem}.lists-word-item{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.4rem .5rem;border-radius:8px;background:#f8fafc}.lists-word-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#1e293b}.lists-search-row{display:flex}.lists-loading{color:#64748b;font-size:.85rem}.lists-search-results{max-height:220px;overflow-y:auto;border:1px solid #e2e8f0;border-radius:10px;padding:.35rem}.dark-mode .lists-modal{background:#1e293b;box-shadow:0 10px 40px #00000080}.dark-mode .lists-modal-title{color:#f1f5f9}.dark-mode .lists-modal-close{background:#475569;color:#e0e7ff}.dark-mode .lists-modal-close:hover{background:#64748b}.dark-mode .lists-name-input,.dark-mode .lists-search-input{background:#0f172a;border-color:#64748b;color:#f1f5f9}.dark-mode .lists-empty,.dark-mode .lists-loading{color:#94a3b8}.dark-mode .lists-manage-button{background:#0f172a;border-color:#475569}.dark-mode .lists-manage-button:hover{border-color:#818cf8;background:#1e1b4b}.dark-mode .lists-overview-name{color:#f1f5f9}.dark-mode .lists-overview-count{color:#94a3b8}.dark-mode .lists-play-button,.dark-mode .lists-remove-list-button,.dark-mode .lists-remove-word-button,.dark-mode .lists-add-word-button{background:#475569;color:#e0e7ff}.dark-mode .lists-play-button:hover:not(:disabled),.dark-mode .lists-remove-list-button:hover,.dark-mode .lists-remove-word-button:hover,.dark-mode .lists-add-word-button:hover{background:#64748b}.dark-mode .lists-play-button-active{background:#6366f1;color:#fff}.dark-mode .lists-manage-words,.dark-mode .lists-search-results{border-color:#475569}.dark-mode .lists-word-item{background:#0f172a}.dark-mode .lists-word-text{color:#f1f5f9}.confirm-dialog-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;display:flex;align-items:center;justify-content:center;padding:1rem;background:#0f172aa6}.confirm-dialog{width:100%;max-width:340px;background:#fff;border-radius:14px;box-shadow:0 10px 40px #0000004d;padding:1.25rem;display:flex;flex-direction:column;gap:.85rem}.confirm-dialog-title{margin:0;font-size:1.1rem;font-weight:700;color:#1e293b;text-align:center}.confirm-dialog-message{margin:0;font-size:.95rem;color:#334155;text-align:center;line-height:1.4}.confirm-dialog-actions{display:flex;gap:.75rem;justify-content:center}.confirm-dialog-cancel,.confirm-dialog-confirm{border:none;border-radius:10px;padding:.55rem 1.1rem;font-weight:600;cursor:pointer;font-size:.95rem}.confirm-dialog-cancel{background:#e2e8f0;color:#334155}.confirm-dialog-cancel:hover{background:#cbd5e1}.confirm-dialog-confirm{background:#dc2626;color:#fff}.confirm-dialog-confirm:hover{background:#b91c1c}.dark-mode .confirm-dialog{background:#1e293b}.dark-mode .confirm-dialog-title{color:#f1f5f9}.dark-mode .confirm-dialog-message{color:#cbd5e1}.dark-mode .confirm-dialog-cancel{background:#475569;color:#e0e7ff}.dark-mode .confirm-dialog-cancel:hover{background:#64748b}.dark-mode .confirm-dialog-confirm{background:#ef4444}.dark-mode .confirm-dialog-confirm:hover{background:#dc2626}.lists-content{display:flex;flex-direction:column;gap:.75rem}.lists-content-title{margin:0;font-size:1.1rem;font-weight:700;color:#1e293b}.lists-content-words{max-height:260px;overflow-y:auto;border:1px solid #e2e8f0;border-radius:10px;padding:.35rem}.lists-content-word-list,.lists-content-search-results{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.35rem}.lists-content-word-item{display:flex;align-items:center;justify-content:flex-start;gap:.5rem;padding:.4rem .5rem;border-radius:8px;background:#f8fafc}.lists-content-word-pair{flex:1;min-width:0;display:flex;align-items:center;justify-content:flex-start;flex-wrap:wrap;gap:.45rem .6rem}.lists-content-word-text{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#1e293b}.lists-content-word-source{font-weight:500}.lists-content-word-target{max-width:100%;padding:.15rem .5rem;border-radius:999px;background:#e0e7ff;color:#3730a3;font-weight:600;font-size:.92em}.lists-content-word-actions{display:flex;align-items:center;gap:.4rem;flex-shrink:0}.lists-content-word-actions .phrase-audio-controls{gap:.35rem}.lists-content-word-actions .play-button{min-width:36px;min-height:36px;width:2rem;height:2rem}.lists-content-word-actions .phrase-audio-error{display:none}.lists-content-add-word-button,.lists-content-remove-word-button{border:none;border-radius:8px;background:#e2e8f0;color:#334155;width:36px;height:36px;min-width:36px;font-size:.95rem;cursor:pointer;flex-shrink:0}.lists-content-add-word-button:hover{background:#cbd5e1}.lists-content-remove-word-button{background:#dc2626;color:#fff}.lists-content-remove-word-button:hover{background:#b91c1c}.lists-content-search{display:flex}.lists-content-search-input{flex:1;min-width:0;padding:.55rem .75rem;border-radius:10px;border:1px solid #cbd5e1;font-size:.95rem}.lists-content-search-results{max-height:220px;overflow-y:auto;border:1px solid #e2e8f0;border-radius:10px;padding:.35rem}.lists-selector-actions{display:flex;align-items:center;gap:.5rem;flex:1;min-width:0}.lists-selector-action-button{border:none;border-radius:10px;padding:.55rem .9rem;font-weight:600;font-size:.95rem;cursor:pointer;white-space:nowrap}.lists-selector-action-button:disabled{opacity:.55;cursor:not-allowed}.lists-selector-add-button{background:#4f46e5;color:#fff}.lists-selector-add-button:hover:not(:disabled){background:#4338ca}.lists-selector-remove-button{background:#dc2626;color:#fff}.lists-selector-remove-button:hover:not(:disabled){background:#b91c1c}.lists-create-inline{display:flex;gap:.5rem;flex:1;min-width:0}.lists-create-inline-input{flex:1;min-width:0;padding:.55rem .75rem;border-radius:10px;border:1px solid #cbd5e1;font-size:.95rem}.lists-create-inline-button,.lists-create-inline-cancel{border:none;border-radius:10px;padding:.55rem .9rem;font-weight:600;font-size:.95rem;cursor:pointer;white-space:nowrap}.lists-create-inline-button{background:#4f46e5;color:#fff}.lists-create-inline-button:hover:not(:disabled){background:#4338ca}.lists-create-inline-button:disabled{opacity:.55;cursor:not-allowed}.lists-create-inline-cancel{background:#e2e8f0;color:#334155}.lists-create-inline-cancel:hover{background:#cbd5e1}.dark-mode .lists-content-title{color:#f1f5f9}.dark-mode .lists-content-words,.dark-mode .lists-content-search-results{border-color:#475569}.dark-mode .lists-content-word-item{background:#0f172a}.dark-mode .lists-content-word-text{color:#f1f5f9}.dark-mode .lists-content-word-target{background:#312e81;color:#c7d2fe}.dark-mode .lists-content-add-word-button{background:#475569;color:#e0e7ff}.dark-mode .lists-content-add-word-button:hover{background:#64748b}.dark-mode .lists-content-remove-word-button{background:#dc2626;color:#fff}.dark-mode .lists-content-remove-word-button:hover{background:#b91c1c}.dark-mode .lists-content-search-input,.dark-mode .lists-create-inline-input{background:#0f172a;border-color:#64748b;color:#f1f5f9}.dark-mode .lists-create-inline-cancel{background:#475569;color:#e0e7ff}.dark-mode .lists-create-inline-cancel:hover{background:#64748b}.contact-trigger{position:fixed;top:.75rem;right:.75rem;z-index:110;display:flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border:none;border-radius:999px;background:#6366f1;color:#fff;font-size:1.15rem;line-height:1;box-shadow:0 2px 10px #0f172a2e;cursor:pointer;transition:transform .15s ease,background .15s ease}.contact-trigger:hover{background:#4f46e5;transform:scale(1.05)}.contact-trigger:focus-visible{outline:2px solid #fff;outline-offset:2px}.contact-dialog-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;display:flex;align-items:center;justify-content:center;padding:1rem;background:#0f172aa6;animation:fadeIn .15s ease}.contact-dialog{width:100%;max-width:360px;background:#fff;border-radius:16px;padding:1.25rem;display:flex;flex-direction:column;gap:1rem;box-shadow:0 10px 30px #0f172a33;animation:slideUp .2s ease}.contact-dialog-message{margin:0;font-size:.95rem;color:#334155;line-height:1.5;text-align:center}.contact-dialog-email{color:#4f46e5;font-weight:600;text-decoration:none;word-break:break-all}.contact-dialog-email:hover,.contact-dialog-email:focus-visible{text-decoration:underline}.contact-dialog-actions{display:flex;justify-content:center}.contact-dialog-button{border:none;border-radius:10px;padding:.55rem 1.35rem;font-size:.95rem;font-weight:600;background:#6366f1;color:#fff;cursor:pointer;transition:background .15s ease}.contact-dialog-button:hover{background:#4f46e5}.dark-mode .contact-trigger{background:#818cf8;color:#0f172a}.dark-mode .contact-trigger:hover{background:#a5b4fc}.dark-mode .contact-dialog{background:#1e293b}.dark-mode .contact-dialog-message{color:#e2e8f0}.dark-mode .contact-dialog-email{color:#a5b4fc}.dark-mode .contact-dialog-button{background:#6366f1}.dark-mode .contact-dialog-button:hover{background:#4f46e5}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 600px){.contact-trigger{top:.5rem;right:.5rem;width:2.25rem;height:2.25rem;font-size:1rem}}
