.resolution-modal.selection-modal {width:min(1040px,100%);}
.operation-resolution {color:var(--paper);padding:16px 12px;text-shadow:0 2px 7px #000b;}
.resolution-team {display:flex;justify-content:center;gap:24px;flex-wrap:wrap;margin:8px 0 35px;}
.resolution-person {width:94px;text-align:center;}
.resolution-face {position:relative;aspect-ratio:3/4;margin-bottom:10px;}
.resolution-face img {width:100%;height:100%;object-fit:cover;box-shadow:0 6px 18px #0006;transition:filter .2s,opacity .2s;}
.resolution-person strong {display:block;font-family:var(--display);font-size:14px;}
.resolution-person small {font-size:9px;letter-spacing:1px;opacity:.7;}
.resolution-stamp {position:absolute;top:42%;left:50%;transform:translate(-50%,-50%) rotate(-10deg);padding:4px 8px;border:2px solid currentColor;color:var(--red);background:#211820db;font-family:Impact,var(--display);font-size:17px;letter-spacing:1px;white-space:nowrap;animation:incident-stamp .2s ease-out;}
.resolution-person[data-incident="killed"] img,.resolution-person[data-incident="turned"] img {filter:grayscale(1);opacity:.35;}
.resolution-person[data-incident="captured"] img {filter:grayscale(.8);opacity:.55;}
.resolution-person[data-incident="recruited"] .resolution-stamp,.resolution-person[data-incident="recovered"] .resolution-stamp {color:var(--accent-soft);}
.outcome-heat {max-width:920px;margin:20px auto 12px;min-width:0;}
.heat-readout {display:flex;align-items:baseline;justify-content:space-between;margin-bottom:18px;font-family:var(--display);text-transform:uppercase;letter-spacing:2px;}
.heat-readout span {font-size:28px;}.heat-readout strong {font-size:21px;font-variant-numeric:tabular-nums;}
.heat-groups {display:grid;grid-template-columns:3fr 2fr 3fr;gap:3px;margin-bottom:7px;text-transform:uppercase;letter-spacing:2px;font-size:10px;font-weight:800;text-align:center;}
.heat-track {position:relative;display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:2px;height:60px;color:#f8eddb;text-shadow:0 1px 2px #0009;}
.heat-band {display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;min-width:0;}
.heat-band-0 {background:#6c2631;}.heat-band-1 {background:#933c3a;}.heat-band-2 {background:#b2624b;}
.heat-band-3 {background:#8b7965;}.heat-band-4 {background:#a29c72;color:#211820;text-shadow:none;}
.heat-band-5 {background:#899c7d;color:#211820;text-shadow:none;}.heat-band-6 {background:#55998a;}.heat-band-7 {background:#368473;}
.heat-marker {position:absolute;top:-9px;height:78px;width:3px;background:#fff4d5;box-shadow:0 0 15px #fff1ce7a;transform:translateX(-50%);transition:left .27s cubic-bezier(.18,.75,.3,1);}
.heat-marker::before {content:'';position:absolute;top:-3px;left:-5px;width:13px;height:9px;background:#fff4d5;clip-path:polygon(0 0,100% 0,50% 100%);}
.heat-pop {display:flex;align-items:center;justify-content:center;gap:15px;min-height:48px;margin-top:13px;font-size:15px;}
.heat-pop strong {font-variant-numeric:tabular-nums;font-size:13px;color:var(--accent-soft);}
.heat-pop[data-direction="negative"] strong {color:var(--red);}
.heat-pop.popping {animation:heat-pop .24s ease-out;}
.resolution-event {min-height:34px;margin:5px auto 15px;text-align:center;text-transform:uppercase;letter-spacing:1px;font-size:12px;color:var(--accent-soft);}
.resolution-consequences {max-width:760px;margin:0 auto;padding-top:14px;font-size:13px;line-height:1.7;}
.resolution-consequences h3 {font-family:var(--display);text-transform:uppercase;font-size:20px;margin:0 0 10px;}
.resolution-consequences p {margin:8px 0;}
.resolution-progress {font-family:var(--display);color:var(--paper);font-size:12px;letter-spacing:2px;}
.heat-calculation {width:100%;border-collapse:collapse;font-size:12px;}
.heat-calculation th,.heat-calculation td {padding:6px 8px;text-align:left;}
.heat-calculation th:nth-child(n+2),.heat-calculation td:nth-child(n+2) {text-align:right;font-variant-numeric:tabular-nums;}
.heat-calculation tbody tr:nth-child(odd) {background:#ffffff05;}
.heat-unrecorded {font-size:11px;opacity:.65;}
.weekly-result .outcome-heat {margin:10px 0 16px;}.weekly-result .heat-readout {margin-bottom:8px;}
.weekly-result .heat-readout span {font-size:16px;}.weekly-result .heat-readout strong {font-size:13px;}
.weekly-result .heat-track {height:24px;}.weekly-result .heat-band span {display:none;}
.weekly-result .heat-marker {height:34px;top:-5px;}.weekly-result .heat-groups {font-size:8px;letter-spacing:1px;}
.outcome-analysis {margin:20px 0 24px;}
@keyframes heat-pop {from {opacity:.1;transform:translateY(6px) scale(.96);}to {opacity:1;transform:none;}}
@keyframes incident-stamp {from {opacity:0;transform:translate(-50%,-50%) rotate(-10deg) scale(1.25);}to {opacity:1;transform:translate(-50%,-50%) rotate(-10deg) scale(1);}}
@media(max-width:600px) {
  .operation-resolution {padding:6px 0;}.resolution-team {gap:14px;margin-bottom:24px;}
  .resolution-person {width:75px;}.heat-track {height:70px;}.heat-band span {writing-mode:vertical-rl;font-size:10px;}
  .heat-marker {height:88px;}.heat-readout span {font-size:23px;}.heat-pop {font-size:12px;gap:8px;}
  .heat-calculation {font-size:10px;}.heat-calculation th,.heat-calculation td {padding:6px 3px;}
}
@media(prefers-reduced-motion:reduce) {.heat-marker,.resolution-face img {transition:none;}.heat-pop.popping,.resolution-stamp {animation:none;}}
.reduce-motion .heat-marker,.reduce-motion .resolution-face img {transition:none;}
.reduce-motion .heat-pop.popping,.reduce-motion .resolution-stamp {animation:none;}
