#departure-confirmation { box-sizing:border-box; width:min(960px,calc(100vw - 32px)); max-width:none; max-height:calc(100dvh - 32px); padding:24px; background:#061b22; color:#e2f5f0; border:1px solid #70cdbc; border-radius:8px; overflow:auto; }
#departure-confirmation::backdrop { background:#010e14d9; }
.departure-review { min-width:0; }
.departure-review small { letter-spacing:normal; }
.departure-review header { display:block; height:auto; min-height:0; padding:0; background:none; border:0; }
.departure-review header > small { letter-spacing:.2em; color:#a9d7d0; }
#departure-review-title { margin:10px 0 16px; font-size:28px; line-height:1.3; }
#departure-review-title:focus:not(:focus-visible) { outline:none; }
.departure-steps { display:flex; flex-wrap:wrap; gap:22px; font-size:12px; color:#91b4b7; padding-bottom:14px; border-bottom:1px solid #36555b; }
.departure-steps strong { color:#84f2d8; }
.departure-destination { display:flex; flex-wrap:wrap; align-items:baseline; gap:8px 18px; margin:22px 0; }
.departure-destination > small { flex-basis:100%; color:#9ebfbe; }
.departure-destination h3 { margin:0; font-size:23px; }
.departure-destination > span { margin-left:auto; white-space:nowrap; }
.departure-destination b { color:#8bf2da; font-size:24px; }
.departure-facts { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:10px; margin:0 0 20px; }
.departure-facts > div { border:1px solid #355d65; background:#0b2831; padding:13px; }
.departure-facts dt { color:#aacbc8; font-size:12px; }
.departure-facts dd { margin:10px 0 0; font-size:16px; }
.departure-facts dd small { display:block; margin-top:6px; font-size:12px; line-height:1.6; color:#b8d3cf; }
.departure-facts b { font-size:24px; color:#8ff3db; }
.departure-warnings { border:1px solid #c79d4f; background:#392f1c; color:#ffdb91; padding:14px 16px; margin:0 0 18px; }
.departure-warnings ul { padding-left:20px; margin:8px 0 0; font-size:13px; line-height:1.7; }
.departure-members-heading { font-size:17px; margin:20px 0 12px; }
.departure-members { display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.departure-members article { display:flex; align-items:center; gap:14px; padding:12px; border:1px solid #325a60; background:#0b252e; min-width:0; }
.departure-members .soldier-portrait { width:76px; height:86px; object-fit:cover; image-rendering:pixelated; flex:none; border:1px solid #477c76; border-radius:3px; }
.departure-members article > div { min-width:0; }
.departure-members strong { font-size:18px; }
.departure-members small { display:block; color:#a6c9c3; margin-top:6px; font-size:12px; }
.departure-members p { line-height:1.65; font-size:12px; margin:7px 0 0; }
.departure-ammo-warning,#departure-review-error { color:#ffcf81; }
/* Keep the decision visible on short screens; the review above scrolls beneath it. */
.departure-review footer { position:sticky; bottom:-24px; z-index:1; width:auto; height:auto; overflow:visible; clip:auto; min-height:0; display:block; margin:22px 0 -24px; border-top:1px solid #365c60; padding:12px 0 16px; background:#061b22; }
.departure-review footer p { color:#a9c7c3; font-size:12px; line-height:1.6; }
.departure-review footer > div { display:flex; gap:12px; justify-content:flex-end; }
.departure-review button { min-height:48px; padding:12px 22px; border:1px solid #4c827f; background:#103038; color:#e2f5f0; border-radius:4px; font:inherit; cursor:pointer; }
.departure-review button.primary { background:#85eed4; color:#06272a; border-color:#acffe8; font-weight:700; }
.departure-review button:focus-visible { outline:3px solid #fff; outline-offset:3px; }
.departure-review button:disabled { opacity:.6; cursor:wait; }
@media(max-width:700px) {
 #departure-confirmation { width:calc(100vw - 16px); max-height:calc(100dvh - 16px); padding:18px 14px; }
 .departure-review footer { bottom:-18px; margin-bottom:-18px; padding-bottom:12px; }
 #departure-review-title { font-size:24px; }
 .departure-steps { gap:12px; font-size:11px; }
 .departure-destination h3 { font-size:20px; }
 .departure-destination > span { margin-left:0; flex-basis:100%; }
 .departure-facts { grid-template-columns:1fr 1fr; }
 .departure-facts > div:last-child { grid-column:1/-1; }
 .departure-members { grid-template-columns:1fr; }
 .departure-review footer > div { flex-direction:column-reverse; }
}
