*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--bg:#eef1f7;--surface:#fff;--primary:#4a5bd6;--primary-hover:#3f4fc4;--primary-soft:#eef1ff;--accent:#ff8c00;--success:#2e7d32;--error:#c62828;--text:#1e2233;--text-light:#8a90a2;--border:#e2e6ef;--radius:12px;--radius-lg:16px}body{background:var(--bg);color:var(--text);min-height:100vh;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}#app{max-width:600px;margin:0 auto;padding:16px}header{margin-bottom:20px}header h1{text-align:center;margin-bottom:12px;font-size:1.5rem}nav{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);gap:6px;padding:6px;display:flex;box-shadow:0 2px 10px #1e22330d}.nav-btn{border-radius:var(--radius);cursor:pointer;color:var(--text);background:0 0;border:none;flex:1;padding:12px 16px;font-size:1rem;font-weight:600;transition:all .2s}.nav-btn.active{background:var(--primary-soft);color:var(--primary)}.view{display:none}.view.active{display:block}h2{text-align:center;margin-bottom:16px;font-size:1.4rem}.section-header{justify-content:space-between;align-items:baseline;margin-bottom:16px;display:flex}.section-header h2{text-align:left;margin-bottom:0}.tag-controls{align-items:center;gap:8px;display:flex}.link-btn{cursor:pointer;color:var(--primary);background:0 0;border:none;padding:0;font-size:1rem;font-weight:600}.link-btn.muted,.link-sep{color:var(--text-light)}.tag-list{grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:16px;display:grid}.tag-btn{border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer;-webkit-tap-highlight-color:transparent;appearance:none;border-radius:999px;outline:none;justify-content:center;align-items:center;gap:8px;padding:14px 12px;font-size:1rem;font-weight:600;transition:all .2s;display:flex;overflow:hidden}.tag-btn:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.tag-btn .tag-count{color:var(--text-light);font-weight:500}.tag-btn.selected{border-color:var(--primary);background:var(--primary);color:#fff}.tag-btn.selected .tag-count{color:#fffc}.tag-hint{text-align:center;color:var(--text-light);margin-bottom:28px;font-size:1rem}.home-actions{flex-direction:column;gap:12px;display:flex}.btn{border-radius:var(--radius-lg);cursor:pointer;text-align:center;border:none;padding:16px 24px;font-size:1.15rem;font-weight:700;transition:background .2s,opacity .2s}.home-actions .btn{width:100%}.btn-with-icon,.btn-start{justify-content:center;align-items:center;gap:10px;display:flex}.btn .btn-icon{align-items:center;display:inline-flex}.count-pill{background:#ffffff40;border-radius:999px;padding:4px 12px;font-size:.95rem;font-weight:700}.btn.primary{background:var(--primary);color:#fff;box-shadow:0 6px 16px #4a5bd64d}.btn.primary:hover{background:var(--primary-hover)}.btn.secondary{background:var(--surface);color:var(--text);border:1px solid var(--border)}.btn.secondary:hover{background:#f5f7fb}.btn.ghost{color:var(--text-light);background:#e4e7f0}.btn.ghost:hover{background:#dbdfea}.btn.accent{background:var(--accent);color:#fff;justify-content:center;align-items:center;gap:6px;display:inline-flex}.btn.accent:hover{background:#e07b00}.btn:disabled{cursor:not-allowed;opacity:.7;box-shadow:none}.progress-bar{background:#e0e0e0;border-radius:3px;height:6px;margin-bottom:8px;overflow:hidden}#quiz-progress-fill{background:var(--primary);width:0;height:100%;transition:width .3s}.counter{text-align:center;color:var(--text-light);margin-top:16px;margin-bottom:16px;font-size:.85rem}.card{background:var(--surface);border-radius:var(--radius);padding:4px 24px;box-shadow:0 2px 8px #00000014}.prompt{text-align:center;word-break:break-word;overflow-wrap:break-word;margin-top:6px;margin-bottom:8px;font-size:1.4rem;font-weight:700}.quiz-input-group{align-items:center;gap:6px;width:100%;margin-bottom:6px;display:flex}.gender-select{flex-shrink:0;gap:4px;display:flex}.gender-select label{cursor:pointer;border-radius:var(--radius);-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;border:2px solid #e0e0e0;outline:none;padding:6px;font-size:.9rem;transition:all .2s}.gender-select input{-webkit-tap-highlight-color:transparent;outline:none;display:none}.gender-select label:has(input:checked){border-color:var(--primary);background:var(--primary);color:#fff}.gender-select label:has(input:checked).correct{color:#fff;background:#4caf50;border-color:#4caf50}.gender-select label:has(input:checked).wrong{color:#fff;background:#e53935;border-color:#e53935}.gender-select label.correct{color:#fff;background:#4caf50;border-color:#4caf50}.gender-select label.wrong{color:#fff;background:#e53935;border-color:#e53935}.input{border-radius:var(--radius);border:2px solid #e0e0e0;outline:none;flex:1;min-width:0;padding:12px;font-size:1rem;transition:border-color .2s}.input:focus{border-color:var(--primary)}.input.wrong{color:#c62828;background:#fff5f5;border-color:#e53935;text-decoration:line-through}.input.correct{color:#2e7d32;background:#f0faf0 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%234caf50' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E") right 10px center no-repeat;border-color:#4caf50;padding-right:36px}.char-widget{flex-wrap:wrap;justify-content:center;gap:4px;margin-top:8px;display:flex}.char-btn{border-radius:var(--radius);background:var(--surface);cursor:pointer;-webkit-tap-highlight-color:transparent;border:2px solid #e0e0e0;outline:none;padding:6px 8px;font-size:.8rem;transition:all .2s}.char-btn:hover{border-color:var(--primary);background:#e8f0fe}.feedback{text-align:center;word-break:break-word;overflow-wrap:break-word;justify-content:center;align-items:center;min-height:1.5em;margin-top:8px;font-weight:600;display:flex}.feedback.correct{color:var(--success)}.feedback.wrong{color:var(--error)}.card-actions{flex-wrap:wrap;justify-content:center;gap:8px;margin-top:8px;margin-bottom:8px;display:flex}.card-actions .btn{flex:1;min-width:0}.summary{text-align:center}.summary p{margin-bottom:16px;font-size:1.2rem}#review-heading{justify-content:center;align-items:center;display:flex}.review-list{flex-direction:column;gap:8px;margin-bottom:16px;display:flex}.review-item{background:var(--surface);border-radius:var(--radius);justify-content:space-between;align-items:center;padding:12px 16px;display:flex;box-shadow:0 1px 4px #0000000f}.review-item .word-info{flex:1}.review-empty{background:var(--surface);border-radius:var(--radius-lg);text-align:center;padding:56px 32px;box-shadow:0 2px 12px #1e22330f}.review-empty-icon{background:var(--bg);width:72px;height:72px;color:var(--text-light);border-radius:50%;justify-content:center;align-items:center;margin:0 auto 24px;display:flex}.review-empty-title{color:var(--text);margin-bottom:12px;font-size:1.6rem;font-weight:800}.review-empty-text{color:var(--text-light);max-width:32ch;margin:0 auto;font-size:1.05rem;line-height:1.5}.review-item .en{color:var(--text-light);font-size:.85rem}.review-item .de{font-weight:600}.review-item button{color:var(--text-light);cursor:pointer;background:0 0;border:none;padding:4px 8px;font-size:1.2rem}@media (width<=480px){#app{padding:12px}header h1,.prompt{font-size:1.2rem}.btn{min-width:160px;padding:10px 16px;font-size:.9rem}.card-actions .btn{min-width:0}}
