.outpost-match-over{position:fixed;inset:0;z-index:300000;background:#091215;isolation:isolate;font-family:'Barlow Condensed',sans-serif}
.outpost-match-over>canvas{position:absolute;inset:0;width:100%;height:100%}
.outpost-match-over::after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#07101599,transparent 35%,#07101533);pointer-events:none}
.outpost-outcome{position:absolute;transform:translate(-50%,-50%);z-index:2;padding:8px 20px;border:2px solid currentColor;border-radius:5px;background:#0b171de8;font-size:clamp(24px,4vw,54px);font-weight:800;letter-spacing:2px;box-shadow:0 6px 28px #0009}
.outpost-outcome.winner{color:#ffdf7e}.outpost-outcome.loser{color:#ff7d83}
.outpost-end-center{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:24px;z-index:3;pointer-events:none}
.outpost-end-center h1{margin:0;color:#f4f4e9;font-size:clamp(48px,9vw,124px);font-weight:800;letter-spacing:4px;text-shadow:0 5px 0 #152128,0 0 32px #000,0 3px 16px #000;background:#08151c9e;padding:10px 28px;border-top:2px solid #8cb6b955;border-bottom:2px solid #8cb6b955}
.outpost-end-center button{pointer-events:auto;min-height:48px;padding:12px 32px;border:1px solid #ffd17b;border-radius:7px;background:#eaa51e;color:#111f25;font:800 20px 'Barlow Condensed',sans-serif;letter-spacing:1px;cursor:pointer;box-shadow:0 4px 20px #0008}
.outpost-end-center button:focus-visible{outline:3px solid #7dfff2;outline-offset:5px}
@media(max-height:420px){.outpost-end-center{gap:14px}.outpost-outcome{font-size:24px;padding:5px 12px}.outpost-end-center h1{font-size:58px}}
/* The control meter stays visible now that no launcher is drawn. */
.outpost-rules.phone-ui .silo-progress-track{height:9px;min-height:9px;background:#14232c;border:1px solid #73939b66;border-radius:5px;overflow:hidden}
.outpost-rules #silo-progress-fill{height:100%;min-width:0;box-shadow:0 0 12px currentColor;transition:width .12s linear,background-color .15s}
.outpost-rules .silo-tracker[data-phase="warning"],.outpost-rules .silo-tracker[data-phase="critical"]{border-color:#ffd16b;background:#352a19f2}
.outpost-rules .silo-tracker[data-phase="warning"] #silo-status-text,.outpost-rules .silo-tracker[data-phase="critical"] #silo-status-text{color:#ffe5a2;font-weight:800}
.outpost-rules .silo-tracker[data-phase="critical"]{animation:outpost-control-alert .7s ease-in-out infinite alternate}
@keyframes outpost-control-alert{to{box-shadow:0 0 15px #ffc85d80}}
/* Larger battle-only pictures, readable names, and the existing ready/cost rows. */
.outpost-rules.phone-ui:not(.web-game){--outpost-deck-clearance:98px}
.outpost-rules.phone-ui:not(.web-game) #deck-panel{max-width:920px;height:92px}
.outpost-rules.phone-ui:not(.web-game) #deck-panel .tactical-card{display:grid;grid-template-rows:minmax(0,1fr) 15px 13px 15px;height:84px;box-sizing:border-box;padding:0}
.outpost-rules.phone-ui:not(.web-game) #deck-panel .card-thumb{height:100%;min-height:0;padding:2px 4px;background-size:contain,100% 100%}
.outpost-rules.phone-ui:not(.web-game) #deck-panel .card-info{display:flex;min-height:0;padding:0 2px;overflow:hidden}
.outpost-rules.phone-ui:not(.web-game) #deck-panel .card-name{display:block;max-width:100%;font:700 11px/13px 'Barlow Condensed',sans-serif;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#fff}
.outpost-rules.phone-ui:not(.web-game) #deck-panel .phone-build-state{font-size:9px;line-height:13px;min-height:0}
.outpost-rules.phone-ui:not(.web-game) #deck-panel .card-foot{height:15px;min-height:0;padding:0 2px}
.outpost-rules.phone-ui:not(.web-game) #deck-panel .card-cost{font-size:12px;line-height:14px}
.outpost-rules.phone-ui:not(.web-game) #deck-panel #btn-deploy-harvester{height:84px;width:72px;flex-basis:72px}
.outpost-rules.phone-ui:not(.web-game) #btn-deploy-harvester .icon{font-size:22px}
@media(max-height:360px){.outpost-rules.phone-ui:not(.web-game){--outpost-deck-clearance:88px}.outpost-rules.phone-ui:not(.web-game) #deck-panel{height:82px}.outpost-rules.phone-ui:not(.web-game) #deck-panel .tactical-card,.outpost-rules.phone-ui:not(.web-game) #deck-panel #btn-deploy-harvester{height:74px}}
@media(prefers-reduced-motion:reduce){.outpost-rules .silo-tracker[data-phase="critical"]{animation:none}.outpost-rules #silo-progress-fill{transition:none}}
/* The same winning commander appears over the frozen field and on results. */
.outpost-winner-panel{display:grid;grid-template-columns:78px minmax(0,1fr);grid-template-rows:auto auto;gap:6px 15px;align-items:center;width:100%;max-width:620px;margin:0 auto;color:#edf4f2;text-align:left;font-family:'Barlow Condensed',sans-serif}
.outpost-winner-portrait{width:78px;height:82px;object-fit:cover;object-position:center 20%;border:1px solid #ab8c48;border-radius:5px;box-shadow:0 0 18px #ffc54e1c;background:#15232b}
.outpost-winner-identity{min-width:0}.outpost-winner-badge{display:inline-block;padding:2px 10px;border:1px solid #d8aa47;background:#382d16;color:#ffdf86;font-size:11px;font-weight:800;letter-spacing:3px;border-radius:3px}
.outpost-winner-name{margin:3px 0 1px;font-size:clamp(22px,3vw,34px);line-height:1.05;font-weight:800;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#fff8de}
.outpost-winner-officer,.outpost-winner-faction{margin:0;font-size:13px;line-height:1.25;color:#c9d7d8}.outpost-winner-faction{font-size:11px;color:#81999f}
.outpost-winner-stats{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin:0;padding:7px 0 0;border-top:1px solid #8d804644;text-align:center}
.outpost-winner-stats dd{margin:0;font:800 20px/1 'Barlow Condensed',sans-serif;color:#ffdb79}.outpost-winner-stats dt{margin:3px 0 0;font:600 9px/1.1 Barlow,sans-serif;color:#aebfc2;text-transform:uppercase;letter-spacing:.3px}
.outpost-rules .game-over-banner.has-winner{display:block!important;padding:0 0 7px!important;width:100%;min-height:0;flex-shrink:0}
.outpost-rules .game-over-banner.has-winner>:not(.outpost-winner-panel){display:none!important}
.outpost-end-center:has(.outpost-winner-panel){gap:10px;padding:16px;box-sizing:border-box}
.outpost-end-center:has(.outpost-winner-panel) h1{font-size:clamp(24px,4vw,42px);padding:2px 22px;letter-spacing:5px}
.outpost-end-center>.outpost-winner-panel{box-sizing:border-box;max-width:480px;padding:12px 18px;background:linear-gradient(140deg,#172a32f7,#0a151cf7);border:1px solid #b99c55;border-radius:8px;box-shadow:0 8px 40px #000a;pointer-events:auto}
@media(min-height:650px){.outpost-winner-portrait{width:104px;height:112px}.outpost-winner-panel{grid-template-columns:104px minmax(0,1fr)}.outpost-winner-stats dd{font-size:25px}.outpost-winner-stats dt{font-size:11px}}
@media(max-height:500px){.has-winner .outpost-winner-panel{grid-template-columns:62px minmax(0,1fr);gap:3px 12px}.has-winner .outpost-winner-portrait{width:62px;height:62px}.has-winner .outpost-winner-name{font-size:24px}.has-winner .outpost-winner-officer{font-size:12px}.has-winner .outpost-winner-stats{padding-top:4px}.has-winner .outpost-winner-stats dd{font-size:17px}.has-winner .outpost-winner-stats dt{font-size:8px}.has-winner .outpost-winner-badge{font-size:9px;padding:1px 8px}}
@media(max-height:380px){.outpost-winner-portrait{height:64px;width:64px}.outpost-winner-panel{grid-template-columns:64px minmax(0,1fr);gap:3px 10px}.outpost-winner-name{font-size:22px}.outpost-winner-stats{padding-top:4px}.outpost-winner-stats dd{font-size:17px}.outpost-winner-stats dt{font-size:8px}.outpost-end-center>.outpost-winner-panel{padding:8px 14px}}
@media(max-height:500px){.outpost-rules.phone-ui:not(.web-game) .phone-results-simple .phone-result-tabs .phone-button{min-height:28px;padding:3px 8px}.outpost-rules.phone-ui:not(.web-game) .phone-results-simple .pc-opponent-link{min-height:22px}.outpost-rules.phone-ui:not(.web-game) .phone-results-simple .pc-opp-portrait{width:18px;height:18px}.outpost-rules.phone-ui:not(.web-game) .phone-results-simple .pm-rewards{padding:7px 12px}.outpost-rules.phone-ui:not(.web-game) .phone-results-simple .pm-cmd-bar{margin-top:5px}.outpost-rules.phone-ui:not(.web-game) .phone-results-simple .pm-rw-actions{margin-top:6px}}
