.app:has(.papp){max-width:920px}.papp{--papp-bg: linear-gradient(145deg, #1a1030 0%, #0f1a2e 45%, #0b1220 100%);--papp-card: rgba(22, 32, 52, .85);--papp-border: rgba(148, 163, 184, .18);--papp-text: #f1f5f9;--papp-muted: #94a3b8;--papp-good: #4ade80;--papp-close: #fbbf24;--papp-wrong: #fb7185;--papp-primary: #8b5cf6;--papp-primary-hover: #a78bfa;--papp-mic: #ec4899;display:grid;gap:1rem}.papp-card{padding:1.35rem 1.5rem;border-radius:20px;border:1px solid var(--papp-border);background:var(--papp-card);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 12px 40px #00000040}.papp-welcome,.papp-loading{text-align:center;background:var(--papp-bg)}.papp-title{margin:0 0 .5rem;font-size:1.75rem;font-weight:700;background:linear-gradient(135deg,#e9d5ff,#fbcfe8,#bfdbfe);-webkit-background-clip:text;background-clip:text;color:transparent}.papp-subtitle{margin:0 0 1.25rem;color:var(--papp-muted);font-size:1rem}.papp-hint{margin:.75rem 0 0;color:var(--papp-muted);font-size:.85rem}.papp-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--papp-border);border-radius:999px;background:#1e293bcc;color:var(--papp-text);padding:.6rem 1.2rem;font:inherit;font-weight:600;cursor:pointer;transition:transform .15s ease,background .15s ease}.papp-btn:hover:not(:disabled){transform:translateY(-1px);background:#334155e6}.papp-btn:disabled{opacity:.45;cursor:not-allowed}.papp-btn-primary{background:linear-gradient(135deg,var(--papp-primary),#6366f1);border-color:transparent;padding:.75rem 1.75rem;font-size:1.05rem}.papp-btn-primary:hover:not(:disabled){background:linear-gradient(135deg,var(--papp-primary-hover),#818cf8)}.papp-btn-ghost{background:transparent}.papp-progress{margin:1rem auto 0;max-width:320px;height:8px;border-radius:999px;background:#0f172acc;overflow:hidden}.papp-progress>span{display:block;height:100%;background:linear-gradient(90deg,#8b5cf6,#ec4899);border-radius:999px;transition:width .2s ease}.papp-toolbar{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center;justify-content:space-between}.papp-mode-switch,.papp-strictness{display:inline-flex;padding:4px;border-radius:999px;background:#0f172ab3;border:1px solid var(--papp-border)}.papp-mode,.papp-strict{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;border-radius:999px;background:transparent;color:var(--papp-muted);padding:.45rem .9rem;font:inherit;font-size:.88rem;font-weight:600;cursor:pointer;transition:all .15s ease}.papp-mode.active,.papp-strict.active{background:linear-gradient(135deg,#8b5cf659,#ec489940);color:var(--papp-text);box-shadow:0 2px 8px #8b5cf640}.papp-label{display:block;margin:0 0 .5rem;font-size:.8rem;text-transform:uppercase;letter-spacing:.06em;color:var(--papp-muted);font-weight:600}.papp-select{width:100%;padding:.65rem .85rem;border:1px solid var(--papp-border);border-radius:12px;background:#0a101ce6;color:var(--papp-text);font:inherit;margin-bottom:.85rem}.papp-prompt-text{margin:0;font-size:1.35rem;line-height:1.55;font-weight:500;color:var(--papp-text)}.papp-prompt-word{margin:.5rem 0 0;font-size:2.5rem;font-weight:700;text-align:center;text-transform:capitalize;background:linear-gradient(135deg,#f5d0fe,#ddd6fe);-webkit-background-clip:text;background-clip:text;color:transparent}.papp-word-picker{display:flex;flex-wrap:wrap;gap:.45rem;margin-bottom:.5rem}.papp-word-pill{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--papp-border);border-radius:999px;background:#0f172a99;color:var(--papp-muted);padding:.35rem .75rem;font:inherit;font-size:.82rem;cursor:pointer;text-transform:capitalize;transition:all .15s ease}.papp-word-pill.active{border-color:#8b5cf699;background:#8b5cf633;color:var(--papp-text)}.papp-word-pill:hover:not(:disabled){border-color:#8b5cf666}.papp-mic-section{display:flex;flex-direction:column;align-items:center;padding:1rem 0 .5rem}.papp-mic-wrap{position:relative;width:120px;height:120px;display:flex;align-items:center;justify-content:center}.papp-mic-wrap:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;background:radial-gradient(circle,rgba(236,72,153,.15),transparent 70%);opacity:0;transition:opacity .2s ease}.papp-mic-recording:before{opacity:1;animation:papp-pulse 1.4s ease-in-out infinite}.papp-mic-recording:after{content:"";position:absolute;top:-8px;right:-8px;bottom:-8px;left:-8px;border-radius:50%;border:2px solid rgba(236,72,153,.45);animation:papp-ring 1.4s ease-out infinite}@keyframes papp-pulse{0%,to{transform:scale(1);opacity:.6}50%{transform:scale(1.08);opacity:1}}@keyframes papp-ring{0%{transform:scale(.95);opacity:.8}to{transform:scale(1.25);opacity:0}}.papp-mic-btn{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;width:88px;height:88px;border:none;border-radius:50%;background:linear-gradient(145deg,#ec4899,#8b5cf6);color:#fff;font-size:2rem;cursor:pointer;box-shadow:0 8px 28px #ec489966;transition:transform .15s ease,box-shadow .15s ease}.papp-mic-btn:hover:not(:disabled){transform:scale(1.05);box-shadow:0 12px 36px #ec489980}.papp-mic-btn:disabled{opacity:.4;cursor:not-allowed;box-shadow:none}.papp-mic-stop{background:linear-gradient(145deg,#ef4444,#dc2626);box-shadow:0 8px 28px #ef444466}.papp-mic-busy .papp-mic-btn{animation:papp-busy .8s ease-in-out infinite alternate}@keyframes papp-busy{0%{opacity:.7}to{opacity:1}}.papp-mic-icon{display:block;line-height:1}.papp-mic-stop-icon{display:block;width:22px;height:22px;border-radius:4px;background:#fff;flex-shrink:0}.papp-status{margin:.85rem 0 .35rem;color:var(--papp-muted);font-size:.9rem}.papp-upload{font-size:.82rem;color:var(--papp-muted);cursor:pointer;text-decoration:underline;text-underline-offset:3px}.papp-upload.disabled{opacity:.4;cursor:not-allowed}.papp-upload input{display:none}.papp-results{background:var(--papp-bg)}.papp-results-header{display:flex;flex-wrap:wrap;gap:1.25rem;align-items:center;margin-bottom:1.25rem}.papp-score-ring{position:relative;width:120px;height:120px;flex-shrink:0}.papp-score-svg{width:100%;height:100%;transform:rotate(-90deg)}.papp-score-track{fill:none;stroke:#94a3b826;stroke-width:8}.papp-score-fill{fill:none;stroke:#8b5cf6;stroke-width:8;stroke-linecap:round;transition:stroke-dashoffset .6s cubic-bezier(.34,1.2,.64,1)}.papp-score-celebrate .papp-score-fill{stroke:#4ade80;filter:drop-shadow(0 0 6px rgba(74,222,128,.5));animation:papp-glow 1.2s ease-in-out 2}@keyframes papp-glow{0%,to{filter:drop-shadow(0 0 4px rgba(74,222,128,.3))}50%{filter:drop-shadow(0 0 12px rgba(74,222,128,.7))}}.papp-score-center{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center}.papp-score-pct{font-size:1.5rem;font-weight:700;color:var(--papp-text)}.papp-score-stars{font-size:.75rem;color:#fbbf24;letter-spacing:1px}.papp-score-stars-dim{color:#94a3b840}.papp-message{margin:0;font-size:1.25rem;font-weight:600;color:var(--papp-text)}.papp-hint-text{margin:.4rem 0 0;color:var(--papp-muted);font-size:.95rem}.papp-sentence-line{margin-bottom:1rem}.papp-sentence-label{display:block;font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;color:var(--papp-muted);font-weight:700;margin-bottom:.35rem}.papp-sentence-text{margin:0;font-size:1.2rem;line-height:2;display:flex;flex-wrap:wrap;gap:.35rem .5rem}.papp-word-wrap{display:inline-flex;flex-direction:column;align-items:flex-start;max-width:100%}.papp-word-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:#0f172a80;border-radius:10px;padding:.2rem .45rem;font:inherit;font-size:inherit;color:var(--papp-text);cursor:pointer;transition:background .15s ease,box-shadow .15s ease}.papp-word-btn:hover{background:#1e293bcc;box-shadow:0 2px 8px #0003}.papp-word-good{box-shadow:inset 0 0 0 1px #4ade8033}.papp-word-close{box-shadow:inset 0 0 0 1px #fbbf2459}.papp-word-wrong{box-shadow:inset 0 0 0 1px #fb718566}.papp-word-detail{display:block;margin:.5rem 0 .75rem;padding:.65rem;border-radius:12px;background:#0a101c99;border:1px solid var(--papp-border)}.papp-word-heard-line{margin:.5rem 0 0;font-size:.9rem;color:var(--papp-muted)}.papp-seg{border-radius:4px;padding:0 1px;transition:background .15s ease}.papp-seg-good{color:var(--papp-good)}.papp-seg-neutral{color:var(--papp-text)}.papp-seg-close{color:var(--papp-close);background:#fbbf2426}.papp-seg-wrong{color:var(--papp-wrong);background:#fb71852e}.papp-detail-controls{margin-top:.5rem}.papp-chip-row{display:flex;flex-wrap:wrap;gap:.4rem}.papp-chip-row-center{justify-content:center}.papp-chip{display:flex;flex-direction:column;align-items:center;min-width:3.5rem;padding:.35rem .5rem;border-radius:10px;border:1px solid var(--papp-border);font-size:.72rem;background:#0f172a99}.papp-chip-vowel{border-color:#3b82f659}.papp-chip-diphthong{border-color:#0ea5e959}.papp-chip-consonant{border-color:#64748b59}.papp-chip-mismatch{background:#fb71851f;border-color:#fb718566}.papp-chip-spell{font-weight:700;font-size:.95rem;color:var(--papp-text)}.papp-chip-name{color:var(--papp-muted);font-size:.65rem}.papp-chip-heard{color:var(--papp-wrong);font-size:.62rem;margin-top:2px}.papp-word-hero{text-align:center;padding:.5rem 0 1rem}.papp-word-big{font-size:2.75rem;font-weight:800;line-height:1.3;margin-bottom:1rem}.papp-big-seg{display:inline}.papp-big-dot{margin:0 .15rem;color:var(--papp-muted);font-weight:400}.papp-attempt-dots{display:flex;justify-content:center;gap:.4rem;margin-top:1rem}.papp-dot{width:10px;height:10px;border-radius:50%;background:#94a3b84d}.papp-dot-good{background:var(--papp-good);box-shadow:0 0 6px #4ade8080}.papp-dot-close{background:var(--papp-close)}.papp-dot-wrong{background:var(--papp-wrong)}.papp-try-again{display:block;margin:1rem auto 0}.papp-nerd{margin-top:1.25rem;font-size:.82rem;color:var(--papp-muted)}.papp-nerd pre{margin-top:.5rem;padding:.75rem;border-radius:8px;background:#0a101ccc;overflow-x:auto;font-size:.72rem;max-height:200px}.papp-error{color:var(--papp-wrong);font-size:.88rem;margin:.5rem 0 0}.papp-error-block{text-align:center;padding:.75rem;border-radius:12px;background:#fb71851a;border:1px solid rgba(251,113,133,.25)}.papp-student-results{text-align:center}.papp-stars{display:flex;justify-content:center;gap:.35rem;margin-bottom:.75rem}.papp-star{font-size:2rem;color:#94a3b840;line-height:1}.papp-star-filled{color:#fbbf24;text-shadow:0 0 12px rgba(251,191,36,.45)}.papp-student-results .papp-message{margin:0 0 .35rem;font-size:1.5rem}.papp-sentence-display{margin:1.25rem 0;font-size:1.35rem;line-height:2.2;font-weight:500;text-align:left}.papp-sentence-word-wrap{display:inline}.papp-sentence-word{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:2px solid transparent;background:transparent;color:var(--papp-text);font:inherit;font-size:inherit;font-weight:600;padding:.4rem .4rem .35rem;min-height:44px;min-width:44px;cursor:pointer;border-bottom-width:3px;border-bottom-style:solid;border-radius:6px;transition:background .15s ease,border-color .15s ease,box-shadow .15s ease}.papp-sentence-word:hover{background:#94a3b81a}.papp-sentence-word-good{border-bottom-color:var(--papp-good);background:#4ade8014}.papp-sentence-word-close{border-bottom-color:var(--papp-close);background:#fbbf2424}.papp-sentence-word-wrong{border-bottom-color:var(--papp-wrong);background:#fb718538}.papp-sentence-word-skipped{border-bottom:3px dashed #94a3b8;background:#94a3b81f;color:#94a3b8;opacity:.85}.papp-word-card-skipped{border-color:#94a3b873}.papp-tip-skipped{border-left:3px solid #94a3b8}.papp-sentence-word-worst{background:#fb718547;box-shadow:inset 0 0 0 1px #fb718573}.papp-sentence-word-open{box-shadow:0 0 0 2px #f8fafc,0 0 0 4px #f8fafc59;background:#0f172a8c}.papp-word-card-wrap{animation:papp-card-open .18s ease-out;margin:.5rem 0 1rem;text-align:left}@keyframes papp-card-open{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.papp-word-card{padding:1.1rem 1.15rem;border-radius:16px;border:1px solid rgba(251,113,133,.35);background:#0f172aa6}.papp-word-card-perfect{border-color:#4ade8059}.papp-word-card-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.85rem}.papp-card-word{font-size:1.65rem;font-weight:700;color:var(--papp-text)}.papp-card-word-highlight{padding:.05rem .15rem;border-radius:4px}.papp-card-word-highlight.papp-seg-good{background:#4ade8033}.papp-card-word-highlight.papp-seg-close{background:#fbbf2440}.papp-card-word-highlight.papp-seg-wrong{background:#fb71854d}.papp-audio-btns{display:flex;gap:.45rem;flex-shrink:0}.papp-audio-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:44px;height:44px;border-radius:50%;border:1px solid var(--papp-border);background:#1e293bd9;font-size:1.15rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s ease}.papp-audio-btn:hover:not(:disabled){background:#334155f2}.papp-audio-btn:disabled{opacity:.4;cursor:not-allowed}.papp-unit-row{display:flex;flex-wrap:wrap;gap:.45rem;margin-bottom:.85rem}.papp-unit-chip{display:flex;flex-direction:column;align-items:center;min-width:52px;padding:.45rem .55rem;border-radius:10px;border:1px solid transparent}.papp-unit-chip.papp-seg-good{background:#4ade8038;border-color:#4ade8080}.papp-unit-chip.papp-seg-close{background:#fbbf2438;border-color:#fbbf248c}.papp-unit-chip.papp-seg-wrong{background:#fb718547;border-color:#fb7185a6}.papp-unit-chip-flagged{border-width:2px;box-shadow:0 0 0 1px #fb718559}.papp-unit-grapheme{font-size:1.1rem;font-weight:700;color:var(--papp-text)}.papp-unit-label{font-size:.62rem;color:var(--papp-muted);margin-top:2px;text-align:center}.papp-tip-strip{display:flex;gap:.5rem;align-items:flex-start;padding:.65rem .75rem;border-radius:10px;background:#0a101cbf;margin-bottom:.85rem;font-size:.88rem;line-height:1.45;color:var(--papp-muted)}.papp-tip-strip p{margin:0}.papp-tip-icon{flex-shrink:0;color:var(--papp-close);font-weight:700}.papp-perfect-msg{margin:0;color:var(--papp-good);font-weight:600;font-size:.95rem}.papp-card-actions{display:flex;flex-wrap:wrap;gap:.5rem}.papp-btn-outline{background:transparent;border:1px solid var(--papp-border);font-size:.88rem;padding:.55rem 1rem}.papp-btn-retry{border-color:#3b82f673}.papp-results-nav{display:flex;flex-wrap:wrap;gap:.65rem;justify-content:center;margin-top:1.25rem;padding-top:1rem;border-top:1px solid var(--papp-border)}.papp-btn-nav{min-height:44px;min-width:140px}.papp-retry-banner{text-align:center;border-color:#3b82f659;background:#3b82f614}.papp-retry-word{margin:0 0 .35rem;font-size:1.1rem}.papp-retry-msg{margin:0 0 .75rem;color:var(--papp-muted)}.papp-celebrating .papp-stars{animation:papp-star-pulse .8s ease-out}@keyframes papp-star-pulse{0%{transform:scale(1)}40%{transform:scale(1.15)}to{transform:scale(1)}}@media(max-width:520px){.papp-toolbar{flex-direction:column;align-items:stretch}.papp-mode-switch,.papp-strictness{justify-content:center}.papp-prompt-word{font-size:2rem}.papp-word-big{font-size:2.1rem}.papp-sentence-text{font-size:1.05rem}}:root{color-scheme:dark;font-family:Segoe UI,system-ui,sans-serif;line-height:1.5;font-weight:400;color:#e8edf5;background:#0b1220}*{box-sizing:border-box}body{margin:0;min-height:100vh}#root{min-height:100vh}.app{max-width:760px;margin:0 auto;padding:2rem 1.25rem 3rem}h1{margin:0 0 .35rem;font-size:1.6rem;font-weight:600}h3{margin:1rem 0 .5rem;font-size:.95rem}.lead{margin:0 0 1.5rem;color:#9aa8bc;font-size:.95rem}.status-grid{display:grid;gap:.5rem;margin-bottom:1.5rem;padding:.85rem 1rem;border:1px solid #1f2a3d;border-radius:8px;background:#111a2b;font-size:.85rem}.status-ok{color:#6ee7a8}.status-bad{color:#f87171}.banner{margin-bottom:1.25rem;padding:1rem;border:1px solid #7f1d1d;border-radius:8px;background:#2a1212;color:#fecaca}.panel{margin-bottom:1.25rem;padding:1rem;border:1px solid #1f2a3d;border-radius:8px;background:#111a2b}.panel h2{margin:0 0 .75rem;font-size:1rem;font-weight:600}.row{display:flex;flex-wrap:wrap;gap:.6rem;align-items:center}button,label.file-btn,a.btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid #2b3a52;border-radius:6px;background:#182235;color:inherit;padding:.55rem .9rem;font:inherit;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center}button:hover:not(:disabled),label.file-btn:hover,a.btn:hover{background:#22304a}button:disabled,label.file-btn.disabled{opacity:.45;cursor:not-allowed}button.primary,a.btn.primary{background:#1d4ed8;border-color:#2563eb}button.primary:hover:not(:disabled),a.btn.primary:hover{background:#2563eb}button.recording{background:#991b1b;border-color:#b91c1c}input[type=file]{display:none}.model-grid{display:grid;gap:.75rem}@media(min-width:640px){.model-grid{grid-template-columns:1fr 1fr}}.model-card{display:grid;gap:.2rem;padding:.85rem;border:1px solid #2b3a52;border-radius:8px;background:#0d1524;cursor:pointer}.model-card.active{border-color:#3b82f6;background:#132038}.model-card input{margin:0 0 .35rem}.model-title{font-weight:600}.model-meta,.model-note{color:#7f8ea3;font-size:.82rem}.progress{margin-top:.75rem;height:6px;border-radius:999px;background:#1f2a3d;overflow:hidden}.progress>span{display:block;height:100%;background:#3b82f6;transition:width .15s ease}.hint{margin:.6rem 0 0;color:#7f8ea3;font-size:.82rem}.output{width:100%;min-height:110px;margin:0;padding:.85rem;border:1px solid #1f2a3d;border-radius:8px;background:#0a101c;color:#e8edf5;font:inherit;resize:vertical;white-space:pre-wrap}.meta{margin-top:.5rem;color:#7f8ea3;font-size:.82rem}.error{margin-top:.6rem;color:#fca5a5;font-size:.85rem}.table-wrap{margin-top:.85rem;overflow-x:auto;border:1px solid #1f2a3d;border-radius:8px}.word-table{width:100%;border-collapse:collapse;font-size:.85rem}.word-table th,.word-table td{padding:.45rem .65rem;border-bottom:1px solid #1f2a3d;text-align:left;white-space:nowrap}.word-table th{background:#0d1524;color:#9aa8bc;font-weight:600}.word-table td.char-debug{white-space:normal;font-size:.75rem;color:#9aa8bc;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.json-details{margin-top:.75rem;font-size:.82rem;color:#9aa8bc}.json-details pre,.debug-block pre{margin:.5rem 0 0;padding:.75rem;border-radius:6px;background:#0a101c;overflow-x:auto;font-size:.75rem;color:#c6d0de}.debug-block{margin-top:.85rem;display:grid;gap:.35rem;font-size:.82rem;color:#c6d0de}.ua,.probe-url{word-break:break-all;color:#7f8ea3}.probe{margin-top:.65rem;padding-top:.65rem;border-top:1px solid #1f2a3d}.resource-list{max-height:220px;overflow:auto}.tab-bar{display:flex;gap:.5rem;margin-bottom:.75rem}.tab{border:1px solid #2b3a52;border-radius:6px;background:#182235;color:inherit;padding:.5rem .85rem;font:inherit;cursor:pointer}.tab.active{background:#1d4ed8;border-color:#2563eb}.memory-note{margin-bottom:1.25rem}.mode-toggle{display:inline-flex;align-items:center;gap:.35rem;font-size:.9rem}.field-label{display:block;margin:.65rem 0 .35rem;font-size:.82rem;color:#9aa8bc}.select-input,.text-input{width:100%;padding:.55rem .75rem;border:1px solid #1f2a3d;border-radius:6px;background:#0a101c;color:#e8edf5;font:inherit}.script-input{min-height:72px}.debug-line{margin-bottom:.5rem;font-size:.82rem;color:#9aa8bc}.debug-line code{font-family:ui-monospace,monospace;color:#c6d0de}.device-debug{margin-top:.75rem;font-family:ui-monospace,monospace;font-size:.75rem}.word-table tr.score-good td{background:#22c55e1f}.word-table tr.score-ok td{background:#eab3081f}.word-table tr.score-bad td{background:#ef44441f}.phonics-legend{display:flex;flex-wrap:wrap;gap:.5rem .75rem;margin-bottom:.85rem;font-size:.78rem;color:#9aa8bc}.phonics-legend-item{padding:.2rem .5rem;border-radius:4px;border:1px solid #2b3a52}.phonics-legend-score{margin-left:auto;font-family:ui-monospace,monospace}.phonics-word-card{margin-bottom:.85rem;padding:.75rem .85rem;border:1px solid #1f2a3d;border-radius:8px;background:#0d1524}.phonics-word-card.score-good{border-color:#22c55e59}.phonics-word-card.score-ok{border-color:#eab30859}.phonics-word-card.score-bad{border-color:#ef444459}.phonics-word-header{display:flex;align-items:baseline;gap:.65rem;margin-bottom:.55rem;flex-wrap:wrap}.phonics-word-title{margin:0;font-size:1.1rem;font-weight:600;text-transform:capitalize}.phonics-word-score{font-size:.9rem;font-weight:600}.phonics-word-time{font-size:.75rem;color:#7f8ea3;font-family:ui-monospace,monospace}.phonics-chip-row{display:flex;flex-wrap:wrap;gap:.45rem}.phonics-chip{display:flex;flex-direction:column;align-items:center;min-width:4.5rem;padding:.4rem .55rem;border-radius:6px;border:1px solid #2b3a52;font-size:.78rem;line-height:1.25}.phonics-chip-vowel{background:#3b82f626;border-color:#3b82f659}.phonics-chip-diphthong{background:#0ea5e926;border-color:#0ea5e959}.phonics-chip-consonant{background:#64748b33;border-color:#64748b59}.phonics-chip-other{background:#47556933}.phonics-chip-good{box-shadow:inset 0 0 0 1px #22c55e73}.phonics-chip-ok{box-shadow:inset 0 0 0 1px #eab30873}.phonics-chip-bad{box-shadow:inset 0 0 0 1px #ef444473}.phonics-chip-spell{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:1rem;font-weight:700;color:#f1f5f9;letter-spacing:.02em}.phonics-chip-name{font-weight:500;font-size:.68rem;color:#9aa8bc}.phonics-chip-mismatch{border-color:#ef44448c!important;background:#ef44441f!important}.phonics-spelling-stack{display:grid;gap:.35rem;margin-bottom:.65rem}.phonics-spelling{display:flex;align-items:baseline;gap:.55rem;flex-wrap:wrap}.phonics-spelling-label{font-size:.7rem;text-transform:uppercase;letter-spacing:.04em;color:#7f8ea3;min-width:3.4rem}.phonics-spelling-text{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:1.15rem;font-weight:600;letter-spacing:.02em}.phonics-seg{color:#e8edf5}.phonics-seg-hyphen{color:#4b5568;margin:0 .05rem}.phonics-spelling-heard .phonics-seg-ok{color:#4ade80}.phonics-spelling-heard .phonics-seg-bad{color:#fbbf24}.phonics-chip-ipa{font-family:ui-monospace,monospace;font-size:.7rem;color:#9aa8bc}.phonics-chip-heard{margin-top:.15rem;font-size:.65rem;color:#f87171}.phonics-chip-heard-only{opacity:.92}.phonics-timeline{margin-top:1.25rem;padding-top:1rem;border-top:1px solid #1f2a3d}.phonics-timeline-title{margin:0 0 .35rem;font-size:.95rem}.phonics-timeline-row{margin-top:.5rem}
