/* V19: readable colors, restrained chart, fewer decisions. Identity unchanged. */
#svv-app .app-shell {padding-top:env(safe-area-inset-top,0px)}
#svv-app .ux-train-track {margin-bottom:12px}
#svv-app .ux-train-track h3 {font-size:1.25rem}
#svv-app .ux-mic-badge {font-size:.85rem}
#svv-app .ux-instruction-wrap h3 {font-size:clamp(1.25rem,4.8vw,1.6rem);min-height:54px;line-height:1.25}
#svv-app .ux-instruction-wrap h3[data-state="uncertain"] {color:#ffde91}
#svv-app .game-stage {height:clamp(180px,25dvh,245px);min-height:180px;transition:border-color .12s,box-shadow .12s;border-width:2px}
#svv-app .game-stage[data-signal="good"] {border-color:#48b880;box-shadow:0 0 0 1px #48b88022}
#svv-app .game-stage[data-signal="warn"],#svv-app .game-stage[data-signal="uncertain"] {border-color:#d0a350;box-shadow:0 0 0 1px #d0a35022}
#svv-app .game-stage[data-signal="bad"] {border-color:#e77e90;box-shadow:0 0 0 1px #e77e9022}
#svv-app .game-stage[data-signal="idle"] {border-color:#384256;box-shadow:none}
#svv-app .hit-pop {display:none!important}
#svv-app .v183-reference-legend {font-size:.93rem;margin-top:10px;color:#ccd1df}
#svv-app .v183-color-legend {display:flex;flex-wrap:wrap;gap:6px 12px;justify-content:center;font-size:.85rem;line-height:1.4;color:#c4cbdc;margin:8px 0 6px}
.v183-color-legend span {display:flex;gap:6px;align-items:center}
.v183-color-legend i {width:9px;height:9px;border-radius:50%;display:inline-block;flex-shrink:0}
.v183-color-legend .good{background:#70e7a8}.v183-color-legend .warn{background:#ffd278}.v183-color-legend .bad{background:#ff8f9b}
#svv-app .game-head {margin-bottom:14px}
#svv-app .game-head .status-box {display:none}
#svv-app .v183-compact-tip {display:block;border:0;background:none;padding:0;margin:0}
#svv-app .v183-compact-tip>svg,#svv-app .v183-compact-tip strong {display:none}
#svv-app .v183-compact-tip p {font-size:1rem;color:#bbc4d6;margin:0}
#svv-app .ux-prep-tips {gap:8px;margin-bottom:14px}
#svv-app .ux-tip {padding:12px}
#svv-app #v17-record-options {padding:12px 14px}
#svv-app .v17-room {margin-top:10px}
#svv-app #v17-record-support {font-size:.88rem;margin:10px 0 0}
#svv-app #v183-prep-options {margin-top:14px}
#svv-app #v183-prep-options>summary {font-size:1rem}
#svv-app #v183-prep-options .ux-disclosure {margin:8px 0}
#svv-app #ux-microphone .ux-mic-ring {width:116px;height:116px;margin:22px auto}
#svv-app #ux-microphone .ux-info {text-align:center;display:block}
#svv-app #v183-listen-only,#svv-app #v183-retry-calibration {width:100%;margin:10px 0;min-height:48px}
#svv-app .ux-mic-ring[data-phase="limited"] {border-color:#d0a350}
#v183-diagnostic-text {width:100%;height:200px;font:14px/1.5 monospace;color:#e6e1f7;background:#131927;border:1px solid #535b74;border-radius:10px;padding:12px;box-sizing:border-box}
#svv-completion .completion-message {font-size:1rem;line-height:1.5}
#svv-completion .v17-breakdown {margin-top:0}
#svv-completion[data-result="no-voice"] .completion-score {color:#d6c5f0}
@media(max-height:680px){#svv-app .ux-microphone h3{font-size:1.4rem;margin-top:6px}#svv-app .ux-microphone .ux-intro{font-size:1rem;margin-bottom:10px}#svv-app #ux-microphone .ux-mic-ring{width:80px;height:80px;margin:14px auto}#svv-app #ux-microphone .ux-big-mic{width:40px;height:40px}}
@media(prefers-reduced-motion:reduce){#svv-app .game-stage{transition:none}}
#svv-app .ux-steps {grid-template-columns:repeat(3,minmax(0,1fr))}
#svv-app .ux-steps li {min-width:0}
#svv-app .ux-steps li>span:not(.ux-step-number){max-width:100%;overflow-wrap:anywhere;text-align:center}

#svv-completion,#svv-completion .completion-card,#svv-completion .completion-trophy {animation:none}
#svv-completion[data-result="zero-points"] .completion-score,#svv-completion[data-result="zero-points"] .completion-score-label {display:block;color:#d6c5f0}

/* V19 — no mandatory preparation screen, calm feedback with real pitch data. */
#svv-app .app-shell{padding-top:max(14px,env(safe-area-inset-top,0px))}
#svv-app #ux-steps{display:none!important}
#svv-app .ux-instruction-wrap h3{min-height:0;margin-bottom:8px;line-height:1.28}
#svv-app #ux-instruction-detail{font-size:1rem;line-height:1.4;min-height:1.4em;margin:0 0 14px}
#svv-app .v183-color-legend{margin:10px 0;font-size:.86rem}
#svv-app .ux-train-track h3{overflow-wrap:anywhere}
#svv-app #v19-listen-only{width:100%;min-height:48px;margin-bottom:14px}
#svv-app #v17-finish{width:100%;border:1px solid #615078;border-radius:12px;min-height:48px;margin:14px 0 0;color:#eddefe;background:#241b34;font-size:1rem}
#svv-app #ux-change-track{width:100%;margin:8px 0}
#svv-app .ux-prep-tips .ux-tip p{font-size:1rem}
#svv-app #svv-more>summary{font-size:1rem;padding:14px}
#svv-app .ux-mic-badge{white-space:nowrap}
@media(max-width:370px){#svv-app .ux-train-track{gap:10px}#svv-app .ux-train-track h3{font-size:1.15rem}#svv-app .ux-mic-badge{font-size:.76rem;padding:8px}#svv-app .ux-instruction-wrap h3{font-size:1.35rem}}

/* Allow enlarged text to reflow, including the optional details panel. */
#svv-app #svv-more,#svv-app #svv-more *{min-width:0;overflow-wrap:anywhere}
#svv-app #svv-more .game-head{grid-template-columns:repeat(2,minmax(0,1fr))}
#svv-app #svv-more .stats,#svv-app #svv-more .tech-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
#svv-app .v183-color-legend span,#svv-app .v183-reference-legend span{min-width:0;overflow-wrap:anywhere}
#svv-app .v183-reference-legend{flex-wrap:wrap;gap:8px}
#svv-app .ux-header,#svv-app .ux-train-track{min-width:0}
#svv-app .seek-row{grid-template-columns:max-content minmax(0,1fr) max-content}
#svv-app .seek-row>span{width:auto;min-width:0}
#svv-app .seek-row input{min-width:0}
#svv-app .ux-train-icon{font-size:30px}
