/* R19 results only: no changes to the battle simulation or existing overlays. */
#battle-root .r19-result-content{max-width:900px;width:100%;gap:12px}
#battle-root .r19-report{width:100%;display:grid;gap:12px;text-align:left;color:#f5f8ff}
#battle-root .r19-top{text-align:center;display:grid;justify-items:center;gap:4px}
#battle-root .r19-top small{font-size:11px;font-weight:750;letter-spacing:.18em;color:#adc9ec}
#battle-root .r19-top .r11-finish-title{line-height:1.12;font-size:clamp(30px,5vw,55px)}
#battle-root .r19-reason,#battle-root .r19-clear{margin:0;color:#e0e9fb;font-size:13px}
#battle-root .r19-top .r9-result-stars{font-size:30px;letter-spacing:.16em;margin:2px}
#battle-root .r19-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}
#battle-root .r19-metrics>div{padding:10px 8px;border:1px solid #849ed861;background:#1c2d4ede;border-radius:12px;display:grid;gap:5px;min-width:0}
#battle-root .r19-metrics span{color:#aecdff;font-size:10px;line-height:1.3}
#battle-root .r19-metrics strong{font-weight:850;font-size:18px;font-variant-numeric:tabular-nums}
#battle-root .r19-grid{display:grid;grid-template-columns:1.18fr 1fr;gap:10px;align-items:stretch}
#battle-root .r19-panel{border:1px solid #93aadd6b;border-radius:12px;padding:12px;background:#182b4be8;min-width:0}
#battle-root .r19-panel h3{font-size:13px;margin:0 0 9px;color:#ffdfaa;line-height:1.35}
#battle-root .r19-mission ul{list-style:none;margin:0;padding:0;display:grid;gap:6px}
#battle-root .r19-mission li{display:grid;grid-template-columns:20px minmax(0,1fr) auto;gap:7px;align-items:center;font-size:12px;line-height:1.38}
#battle-root .r19-mission li>b{font-weight:750;color:#b6c7e1;white-space:nowrap;font-size:11px}
#battle-root .r19-mission li.passed>span:first-child,#battle-root .r19-mission li.passed>b{color:#8cf2c0}
#battle-root .r19-mission li.missed>span:first-child{color:#e1a8a3}
#battle-root .r19-record p{font-size:13px;margin:0 0 9px;line-height:1.4}
#battle-root .r19-record-badge{display:inline-flex;margin:2px 5px 7px 0;border:1px solid #eac989aa;background:#5a492777;border-radius:999px;padding:5px 9px;color:#ffe0a0;font-weight:750;font-size:11px}
#battle-root .r19-save.saved{color:#94edc1}#battle-root .r19-save.warning{color:#ffb9a6}
#battle-root .r19-record small,#battle-root .r19-journal{font-size:10px;color:#b9cae9;line-height:1.4}
#battle-root .r19-journal{text-align:center;margin:0}
#battle-root .r19-recent{border:1px solid #758cbf6a;border-radius:10px;padding:8px 10px;color:#e9f1ff;font-size:11px}
#battle-root .r19-recent summary{cursor:pointer;font-weight:750;min-height:20px}
#battle-root .r19-recent ul{list-style:none;padding:8px 0 0;margin:0;display:grid;gap:4px}
#battle-root .r19-recent li{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap}
#battle-root .r19-classic-report{max-width:460px;margin:0 auto 13px}
#battle-root .r19-classic-report .r19-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}
#battle-root .r19-result-content .r9-result-actions{margin-top:1px;display:flex;flex-wrap:wrap;justify-content:center;gap:8px}
#battle-root .r19-result-content .r9-result-actions button{min-height:42px}
#battle-root .r9-shell .r8-result:has(.r19-report),#battle-root .r8-result:has(.r19-classic-report){overflow-y:auto;overscroll-behavior:contain;max-height:100dvh;align-items:flex-start;scrollbar-gutter:stable}
@media(max-width:650px){#battle-root .r19-report{gap:8px}#battle-root .r19-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}#battle-root .r19-metrics>div{padding:8px}#battle-root .r19-metrics strong{font-size:16px}#battle-root .r19-grid{grid-template-columns:minmax(0,1fr);gap:7px}#battle-root .r19-panel{padding:9px}#battle-root .r19-top .r9-result-stars{font-size:24px}#battle-root .r19-top .r11-finish-title{font-size:34px}#battle-root .r19-result-content{gap:8px}#battle-root .r19-result-content .r9-result-actions{flex-direction:column;width:100%}#battle-root .r19-result-content .r9-result-actions>*{width:100%}#battle-root .r19-recent{padding:7px}}
@media(max-width:360px){#battle-root .r19-mission li{font-size:10px;gap:4px;grid-template-columns:17px minmax(0,1fr) auto}#battle-root .r19-top small{font-size:9px}#battle-root .r19-reason{font-size:11px}}
@media(max-height:660px){#battle-root .r19-report{gap:6px}#battle-root .r19-metrics>div{padding:6px}#battle-root .r19-top .r9-result-stars{font-size:22px}#battle-root .r19-panel{padding:7px}#battle-root .r19-record p{margin-bottom:4px}}
@media(prefers-reduced-motion:reduce){#battle-root .r19-report *{animation:none!important;transition:none!important}}
/* Actions remain reachable when a narrow display needs a scrollable result sheet. */
#battle-root .r9-result-content.r19-result-content>.r9-result-actions{position:sticky;bottom:0;z-index:5;width:100%;padding:9px 8px max(10px,env(safe-area-inset-bottom));margin-top:0;border-radius:12px;background:linear-gradient(180deg,#0c1932f2,#0c1932fa);box-shadow:0 -6px 20px #08132755}
/* Classic's original pale dialog needs its own readable dark result treatment. */
#battle-root .r8-result:has(.r19-classic-report){width:min(560px,calc(100vw - 32px));max-height:min(72dvh,650px);padding:18px;background:#112540f5;color:#f5f8ff;border:1px solid #94b6e966;overflow:auto;box-shadow:0 18px 42px #0019}
#battle-root .r8-result:has(.r19-classic-report) .r19-top .r11-finish-title{color:#fff0c5!important;font-size:clamp(30px,8vw,52px)}
#battle-root .r8-result:has(.r19-classic-report) .r9-result-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:9px;margin-top:12px}
#battle-root .r8-result:has(.r19-classic-report) .r9-result-actions button{min-height:43px;flex:1 1 120px}
/* Classic overlays stay within the actual arena viewport, including short phones. */
#battle-root .r8-result:has(.r19-classic-report){max-height:calc(100% - 14px);padding:14px}
#battle-root .r8-result:has(.r19-classic-report) .r9-result-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;width:100%}
#battle-root .r8-result:has(.r19-classic-report) .r9-result-actions button{flex:none;width:100%;min-height:43px;padding:8px 10px}
