/* Outcomes add symbols and words, never replace the four lane colours. */
.judgment-feedback{pointer-events:none;text-align:center;text-transform:none;letter-spacing:0;text-shadow:0 2px 5px #041118,0 0 14px #041118}
.judgment-feedback strong{display:block;font-size:clamp(24px,3vw,40px);line-height:1.15;font-weight:700;color:#fff1bd}
.judgment-feedback strong>span{margin-right:8px}.judgment-feedback small{display:block;font-size:14px;line-height:1.4;margin-top:5px;font-weight:500;letter-spacing:0;color:#e2edef}
.judgment-feedback[data-tone="miss"] strong{color:#ffaaa0}.player-judgment.judgment-feedback strong{font-size:clamp(18px,2.2vw,28px)}.player-judgment.judgment-feedback small{font-size:12px}
.controller-page .phone-judgment[data-tone="hit"]{color:#fff1bd}.controller-page .phone-judgment[data-tone="miss"]{color:#ffaaa0}
.pad-outcome{position:absolute;top:14px;right:15px;width:25px;height:25px;border-radius:50%;display:none;place-items:center;font:700 18px/1 Arial,sans-serif;background:#08171f;border:1px solid currentColor;z-index:3}
.pad[data-outcome="hit"] .pad-outcome,.pad[data-outcome="miss"] .pad-outcome{display:grid}.pad[data-outcome="hit"] .pad-outcome{color:#fff1bd}.pad[data-outcome="miss"] .pad-outcome{color:#ffaaa0}
.controller-page .pad[data-outcome="hit"]{outline:2px solid #fff1bd;outline-offset:-6px}.controller-page .pad[data-outcome="miss"]{outline:2px solid #ffaaa0;outline-offset:-6px}
.feedback-settings{margin:0 0 28px;padding:22px;border:1px solid #44616c;border-radius:12px;background:#102630}
.feedback-settings h2{font-size:21px;margin:0 0 10px}.feedback-settings>p{font-size:14px;line-height:1.6;color:#b5cbd0;margin:0 0 18px}
.feedback-option{display:flex;gap:20px;justify-content:space-between;align-items:center;min-height:66px;border-top:1px solid #36525d;cursor:pointer}.feedback-option>span{display:grid;gap:5px}.feedback-option strong{font-size:15px;font-weight:600}.feedback-option small{font-size:12px;color:#b5cbd0;line-height:1.5}.feedback-option input{width:22px;height:22px;flex-shrink:0;accent-color:#efc88e}.feedback-option:has(input:disabled){cursor:default}
.feedback-volume{margin-top:18px}.feedback-volume label{font-size:14px}.feedback-volume output{float:right;color:#efc88e}.feedback-volume input:disabled{opacity:.4}
.feedback-previews{display:flex;gap:10px;margin:18px 0 12px}.feedback-previews button{flex:1;min-height:46px;font-size:13px;padding:10px}
.feedback-settings #feedback-preview-status{margin:0;font-size:12px;min-height:38px}
.phone-feedback-check{padding:16px 0;margin:0 0 24px;border-top:1px solid #36525d;border-bottom:1px solid #36525d}
.phone-feedback-check button{min-height:48px;width:100%;font-size:14px;padding:12px 16px}
.phone-feedback-check p{margin:10px 0 0;font-size:12px;line-height:1.6;color:#b5cbd0}
.feedback-pulse{display:flex;align-items:center;gap:16px;justify-content:space-between;border-top:1px solid #36525d;padding:14px 0;font-size:14px}.feedback-pulse small{display:block;font-size:12px;line-height:1.5;color:#b5cbd0;margin-top:5px}.feedback-pulse select{min-height:44px;min-width:100px;padding:8px;background:#071a22;color:#e7f1f1;border:1px solid #68818a;border-radius:6px;font:inherit}.feedback-pulse select:disabled{opacity:.45}
.controller-actions #restore-phone-sound{padding:8px 12px;min-height:44px;color:#fff1bd;border-color:#d3ac72;font-size:13px}
@media(max-height:360px) and (orientation:landscape){.pad-outcome{top:10px;right:10px;width:22px;height:22px;font-size:16px}.controller-page .phone-judgment{font-size:12px}}
@media(prefers-reduced-motion:reduce){.pad[data-outcome]{transition:none;animation:none}}

.music-feedback{position:absolute;bottom:28px;left:50%;transform:translateX(-50%);z-index:4;max-width:80%;margin:0;padding:8px 16px;border:1px solid #b67b45;background:#07141bf2;color:#f4c591;font-size:.78rem;text-align:center;pointer-events:none}.music-feedback[hidden]{display:none}.tv-page .stage{position:relative}
