
/* Readable identity cards and saved mission orders; no animation or render loop. */
.card{width:196px;padding:10px;box-sizing:border-box}
.card .identityLine{display:flex;flex-wrap:wrap;align-items:center;gap:5px 9px;margin-bottom:7px;color:#b0c4c0;font:10px system-ui,sans-serif}
.card .tierBadge{color:#f1ce7b;letter-spacing:1px;font-size:13px}
.card .cardGender{margin-left:auto}
.card .nm{font-size:13px;line-height:1.35;white-space:normal;overflow-wrap:anywhere;min-height:0}
.card .cardTitle{color:#c4b48b;margin:4px 0;line-height:1.4;font-size:10px;overflow-wrap:anywhere}
.card .tag{position:static;display:inline-block;margin:4px 0;white-space:normal}
.card .cardVitals{display:flex;justify-content:space-between;gap:5px;font-size:9px;margin:4px 0 7px;color:#b8cdbe}
.card .row,.card .ab{white-space:normal;overflow:visible;line-height:1.4;overflow-wrap:anywhere}
.card .mini{line-height:1.6}
#ambushModal .ambushTarget{grid-template-columns:minmax(0,1fr);gap:7px}
#ambushModal .ambushTarget>.ambushStatus{grid-row:auto;justify-self:start}
#ambushModal .personSummary{display:grid;grid-template-columns:64px minmax(0,1fr);gap:10px;width:100%;align-items:start}
#ambushModal .personSummary canvas{width:64px;height:64px;border-radius:5px;border:1px solid #415747}
#ambushModal .personSummaryBody{display:grid;gap:4px;min-width:0;line-height:1.4}
#ambushModal .personSummaryBody>b{font-size:13px;overflow-wrap:anywhere}
#ambushModal .personSummaryMeta{display:flex;gap:7px;flex-wrap:wrap;align-items:center;color:#c0cab8}
#ambushModal .personSummaryMeta span{display:inline;font-size:10px}
#ambushModal .personSummaryMeta em{letter-spacing:1px;font-size:12px}
#ambushModal .ambushRoster label{align-items:start;padding:10px}
#ambushModal .ambushRoster input{margin-top:5px;flex-shrink:0}
#ambushModal .ambushTargets,#ambushModal .ambushRoster{max-height:400px}
#missionBoard{z-index:11300;padding:20px;box-sizing:border-box;background:#061110e8}
.missionBox{position:relative;width:min(1080px,96vw);max-height:90dvh;overflow:auto;box-sizing:border-box;padding:25px;background:#142824;border:1px solid #50645b;border-radius:10px;color:#d9e2d4}
.missionBox h2{color:#e5c77f;margin:0 40px 8px 0;font:24px Georgia,serif}
.missionBox>p{color:#a7bbb0;line-height:1.6;font:12px system-ui,sans-serif;max-width:700px}
.missionClose{position:absolute;top:16px;right:15px;padding:8px}
#missionList{display:grid;gap:10px;margin-top:20px}
.missionTask{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:16px;background:#0d1e1b;border:1px solid #334c40;border-radius:6px;min-width:0}
.missionTask>div{min-width:0;overflow-wrap:anywhere}
.missionTask h3{margin:5px 0!important;font:600 15px system-ui,sans-serif!important;letter-spacing:0!important}
.missionTask p{font:12px/1.6 system-ui,sans-serif;margin:7px 0}
.missionTask small{color:#9db6a6;font:11px/1.5 system-ui,sans-serif}
.missionTask button{flex-shrink:0}
.missionStatus{font:10px system-ui,sans-serif;text-transform:uppercase;letter-spacing:1px;color:#bcd5c4}
@media(max-width:600px){.card{width:180px}#missionBoard{padding:6px}.missionBox{padding:16px;max-height:94dvh}.missionTask{align-items:start;flex-direction:column}.missionTask button{align-self:end}#ambushModal .personSummary{grid-template-columns:52px minmax(0,1fr)}#ambushModal .personSummary canvas{width:52px;height:52px}}

.missionTask[data-status="completed"] .missionStatus{color:#98d49f}.missionTask[data-status="failed"] .missionStatus{color:#f29886}.missionTask[data-status="waiting"] .missionStatus{color:#ebcc88}.missionTask[data-status="cancelled"]{opacity:.7}
