.fc-overlay{position:fixed;inset:0;z-index:50;background:rgba(7,9,13,.66);display:flex;align-items:flex-end;justify-content:center;padding:0}@media (min-width:640px){.fc-overlay{align-items:center;padding:var(--space-4)}}.fc-modal{width:100%;max-width:520px;max-height:92vh;display:flex;flex-direction:column;background:var(--bg-base);color:var(--text-primary);border:1px solid var(--border-default);border-radius:20px 20px 0 0;box-shadow:var(--shadow-2);overflow:hidden}@media (min-width:640px){.fc-modal{border-radius:20px}}.fc-bar{display:flex;align-items:center;justify-content:space-between;padding:var(--space-5) var(--space-6) var(--space-3)}.fc-bar__title{font-family:var(--font-display);font-weight:var(--fw-bold);font-size:var(--text-md)}.fc-bar__x{background:none;border:none;color:var(--text-tertiary);font-size:22px;line-height:1;cursor:pointer}.fc-bar__x:hover{color:var(--text-primary)}.fc-body{flex:1;overflow-y:auto;padding:0 var(--space-6) var(--space-6)}.fc-prog{display:flex;align-items:center;gap:var(--space-3);padding:0 var(--space-6) var(--space-4)}.fc-prog .tlx-meter{flex:1;height:6px}.fc-prog__n{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-tertiary)}.fc-state{text-align:center;display:flex;flex-direction:column;align-items:center;gap:var(--space-4);padding:var(--space-8) var(--space-2)}.fc-state__big{font-weight:var(--fw-extrabold);font-size:44px;letter-spacing:var(--ls-tight);line-height:1}.fc-state__big,.fc-state__t{font-family:var(--font-display)}.fc-state__t{font-weight:var(--fw-bold);font-size:var(--text-lg)}.fc-state__sub{color:var(--text-secondary);font-size:var(--text-sm)}.fc-spinner{width:26px;height:26px;border-radius:50%;border:2px solid var(--accent);border-top:2px solid transparent;animation:fc-spin .8s linear infinite}@keyframes fc-spin{to{transform:rotate(1turn)}}.fc-card{display:flex;flex-direction:column;gap:var(--space-5);padding-top:var(--space-2)}.fc-meta{display:flex;gap:var(--space-2);flex-wrap:wrap}.fc-prompt__lbl{font-size:var(--text-sm);color:var(--text-tertiary)}.fc-mean__t{font-family:var(--font-display);font-weight:var(--fw-semibold);font-size:var(--text-lg);color:var(--text-primary);margin-top:6px}.fc-ex{padding:var(--space-4) var(--space-5);background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg)}.fc-ex p{font-size:var(--text-md);color:var(--text-primary);line-height:var(--lh-relaxed)}.fc-ex .fc-blank{display:inline-block;min-width:64px;border-bottom:2px solid var(--accent)}.fc-recall{display:flex;gap:var(--space-3)}.fc-recall .tlx-input{flex:1;height:52px;font-family:var(--font-display);font-size:var(--text-lg)}.fc-recall .tlx-btn{height:52px}.fc-hint{background:none;border:none;color:var(--accent-text);font:inherit;font-size:var(--text-sm);cursor:pointer;padding:0;text-align:center}.fc-hint:hover{color:var(--accent-hover)}.fc-verdict{display:inline-flex;align-items:center;gap:7px;font-size:var(--text-sm);font-weight:var(--fw-semibold)}.fc-verdict--ok{color:var(--success)}.fc-verdict--miss{color:var(--text-secondary)}.fc-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-5);margin-top:6px}.fc-word{font-family:var(--font-display);font-weight:var(--fw-extrabold);font-size:48px;letter-spacing:var(--ls-tight);line-height:1;color:var(--text-primary)}.fc-ipa{font-family:var(--font-mono);font-size:var(--text-md);color:var(--text-secondary);margin-top:10px}.fc-say.speaking{animation:fc-pulse 1s var(--ease-in-out) infinite}@keyframes fc-pulse{50%{opacity:.55}}.fc-trans{font-family:var(--font-display);font-weight:var(--fw-semibold);font-size:var(--text-lg);color:var(--accent-text)}.fc-coll{display:flex;gap:8px;flex-wrap:wrap}.fc-detail{font-size:var(--text-xs);color:var(--text-tertiary)}.fc-actions{display:flex;gap:var(--space-3)}.fc-actions .tlx-btn{flex:1;height:50px}.fc-foot{text-align:center;font-size:var(--text-xs);color:var(--text-tertiary)}@media (prefers-reduced-motion:reduce){.fc-say.speaking,.fc-spinner{animation:none}}