.t-card{padding:var(--space-5);border-radius:var(--radius-card-lg);background:var(--color-bg);box-shadow:var(--shadow-card)}.t-top{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-3);font-size:var(--text-sm);font-weight:var(--weight-bold);color:var(--color-text-muted);display:flex}.t-bar{height:8px;margin-bottom:var(--space-5);border-radius:var(--radius-pill);background:var(--color-primary-tint);overflow:hidden}.t-bar>span{border-radius:inherit;background:var(--color-primary);height:100%;transition:width var(--duration) var(--ease);display:block}.t-flame{align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-3);border-radius:var(--radius-pill);background:var(--color-accent-soft);color:var(--color-text);display:inline-flex}.t-level{margin-bottom:var(--space-2);padding:0 var(--space-3);border-radius:var(--radius-pill);background:var(--color-primary-soft);color:var(--color-primary-dark);font-size:var(--text-sm);font-weight:var(--weight-bold);display:inline-block}.t-prompt{align-items:center;gap:var(--space-3);margin:0 0 var(--space-4);font-family:var(--font-heading);font-weight:var(--weight-heavy);font-size:var(--text-xl);line-height:1.35;display:flex}.t-prompt:focus{outline:none}.t-options{gap:var(--space-2);display:grid}.t-option{min-height:var(--tap-target);padding:var(--space-3) var(--space-4);border:2px solid var(--color-border);border-radius:var(--radius-button);background:var(--color-bg);color:var(--color-text);font:inherit;text-align:left;cursor:pointer}.t-option:hover:not([aria-disabled]){border-color:var(--color-primary)}.t-option[aria-disabled]{cursor:default}.t-option.is-right{border-color:var(--color-success);background:var(--color-success-soft);font-weight:var(--weight-bold)}.t-option.is-wrong{border-color:var(--color-error);background:var(--color-error-soft)}.t-option.is-right:before{content:"✓ "}.t-option.is-wrong:before{content:"✗ "}.t-feedback{margin:var(--space-4) 0 0;padding:var(--space-3) var(--space-4);border-radius:var(--radius-button);background:var(--color-surface)}.t-feedback strong{display:block}.t-actions{align-items:center;gap:var(--space-3);margin-top:var(--space-5);flex-wrap:wrap;display:flex}.t-btn{justify-content:center;align-items:center;gap:var(--space-2);min-height:var(--tap-target);padding:0 var(--space-5);border:2px solid var(--color-primary);border-radius:var(--radius-button);background:var(--color-bg);color:var(--color-primary);font:inherit;font-weight:var(--weight-bold);cursor:pointer;text-decoration:none;display:inline-flex}.t-btn:hover{background:var(--color-primary-soft);color:var(--color-primary-dark)}.t-btn--main{border-color:var(--color-accent);background:var(--color-accent);color:var(--color-text-on-accent)}.t-btn--main:hover{border-color:var(--color-accent-dark);background:var(--color-accent-dark);color:var(--color-text-on-accent)}.t-btn--good{border-color:var(--color-success);background:var(--color-success);color:var(--color-text-on-primary)}.t-btn--good:hover{background:var(--color-success);color:var(--color-text-on-primary);filter:brightness(.92)}.t-say{width:var(--tap-target);height:var(--tap-target);background:var(--color-primary-soft);color:var(--color-primary);cursor:pointer;border:0;border-radius:50%;flex-shrink:0;place-items:center;display:inline-grid}.t-say.is-speaking{background:var(--color-primary);color:var(--color-text-on-primary)}.t-result{text-align:center}.t-score{margin:var(--space-2) 0;font-family:var(--font-heading);font-weight:var(--weight-heavy);font-size:var(--text-3xl);color:var(--color-primary)}.t-result .t-actions{justify-content:center}.t-muted{color:var(--color-text-muted)}.t-chips{gap:var(--space-2);margin-bottom:var(--space-4);flex-wrap:wrap;display:flex}.t-chip{min-height:40px;padding:0 var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-bg);color:var(--color-text);font:inherit;font-size:var(--text-sm);font-weight:var(--weight-bold);cursor:pointer}.t-chip[aria-pressed=true]{border-color:var(--color-primary);background:var(--color-primary);color:var(--color-text-on-primary)}.t-word{justify-items:center;gap:var(--space-2);min-height:15rem;padding:var(--space-6) var(--space-4);border-radius:var(--radius-card-lg);background:var(--gradient-hero);border:1px solid var(--color-primary-tint);text-align:center;display:grid}.t-word-text{align-items:center;gap:var(--space-3);font-family:var(--font-heading);font-weight:var(--weight-heavy);font-size:var(--text-3xl);margin:0;display:flex}.t-word-text:focus{outline:none}.t-ipa{color:var(--color-text-muted)}.t-meaning{margin:var(--space-2) 0 0;font-size:var(--text-lg)}.t-example{align-items:center;gap:var(--space-2);margin-top:var(--space-2);padding:var(--space-2) var(--space-2) var(--space-2) var(--space-4);border-left:4px solid var(--color-accent);border-radius:var(--radius-button);background:var(--color-bg);text-align:left;font-style:italic;display:flex}.t-word .t-actions{justify-content:center}.t-stats{justify-content:center;gap:var(--space-6);margin-top:var(--space-4);font-size:var(--text-sm);display:flex}.t-listen{gap:var(--space-2);margin-bottom:var(--space-4);flex-wrap:wrap;display:flex}.t-label{margin-bottom:var(--space-2);font-weight:var(--weight-bold);display:block}.t-input{width:100%;min-height:var(--tap-target);padding:var(--space-3) var(--space-4);border:2px solid var(--color-border);border-radius:var(--radius-button);background:var(--color-bg);color:var(--color-text);font:inherit;font-size:var(--text-lg);resize:vertical;line-height:1.5}.t-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-tint);outline:none}.t-input[readonly]{background:var(--color-surface)}.t-btn:disabled{opacity:.5;cursor:not-allowed}.t-small{font-size:var(--text-sm)}.t-marks{gap:var(--space-1) var(--space-2);margin:var(--space-3) 0;font-size:var(--text-lg);flex-wrap:wrap;display:flex}.t-mark--right{color:var(--color-success)}.t-mark--wrong del,.t-mark--extra del{color:var(--color-error)}.t-mark--wrong ins{color:var(--color-success);font-weight:var(--weight-bold);text-decoration:none}.t-mark--missing{padding:0 var(--space-1);border-bottom:2px dashed var(--color-success);color:var(--color-success);font-weight:var(--weight-bold)}.t-answer{align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-2) var(--space-3) var(--space-4);border-left:4px solid var(--color-success);border-radius:var(--radius-button);background:var(--color-success-soft);font-size:var(--text-lg);margin:0;display:flex}.t-round-end{margin-top:var(--space-5);padding-top:var(--space-5);border-top:1px solid var(--color-border)}.t-typing{margin-bottom:var(--space-4);padding:var(--space-4);border-radius:var(--radius-card);background:var(--color-surface);font-size:var(--text-lg);line-height:1.8}.t-typing p{margin:0}.t-ch--ok{color:var(--color-success)}.t-ch--bad{background:var(--color-error-soft);color:var(--color-error);border-radius:2px}.t-ch--now{border-bottom:3px solid var(--color-primary)}.t-builder{gap:var(--space-4);display:grid}.t-line{align-items:center;gap:var(--space-2);min-height:calc(var(--tap-target) * 2 + var(--space-4));padding:var(--space-3);border:2px dashed var(--color-primary-tint);border-radius:var(--radius-card);background:var(--color-primary-soft);flex-wrap:wrap;display:flex}.t-bank{justify-content:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.t-tile{min-height:var(--tap-target);padding:0 var(--space-4);border:2px solid var(--color-border);border-radius:var(--radius-button);background:var(--color-bg);color:var(--color-text);font:inherit;font-size:var(--text-lg);cursor:pointer;border-bottom-width:4px}.t-tile:hover:not([aria-disabled]),.t-tile--placed{border-color:var(--color-primary)}.t-tile[data-used]{visibility:hidden}.t-end{font-size:var(--text-xl);font-weight:var(--weight-bold)}.t-hint{align-items:center;gap:var(--space-2);display:inline-flex}.t-levels{justify-content:center;gap:var(--space-2);margin:var(--space-4) 0;font-size:var(--text-sm);font-weight:var(--weight-bold);flex-wrap:wrap;padding:0;list-style:none;display:flex}.t-levels li{padding:var(--space-1) var(--space-3);border-radius:var(--radius-pill)}.t-levels .is-ok{background:var(--color-success-soft)}.t-levels .is-next{background:var(--color-accent-soft)}
