/* =============================================================================
   expedition.css — FLEET EXPLORATION
   ---------------------------------------------------------------------------
   Follows the layout fit contract: no card combines a fixed height with
   overflow:hidden, every grid is minmax(0,1fr) so long hull names wrap rather
   than shear, and nothing here declares flex on a direct child of #expo-body
   (fit-guard's no-shrink rule stands).
============================================================================= */
#expo-body{display:flex;flex-direction:column;gap:14px;padding:12px}
.ex-sec{display:flex;flex-direction:column;gap:9px}
.ex-sec-h{display:flex;align-items:baseline;justify-content:space-between;gap:10px;flex-wrap:wrap}
.ex-sec-t{font-family:'Orbitron',sans-serif;font-weight:800;font-size:11px;letter-spacing:.16em;color:#7fe0ff}
.ex-sec-n{font-family:'Rajdhani',sans-serif;font-weight:700;font-size:11px;letter-spacing:.06em;color:var(--muted-2)}
.ex-idle{padding:14px;border:1px dashed var(--line-2);border-radius:10px;background:rgba(20,28,42,.5);color:var(--muted);font-size:12.5px;line-height:1.6;text-wrap:pretty}
.ex-idle b{color:var(--text)}
.ex-ic{display:grid;place-items:center;width:34px;height:34px;flex:none;border-radius:9px;font-size:17px;color:#7fe0ff;background:radial-gradient(120% 120% at 50% 0%,#16283a,#0e1622);border:1px solid rgba(127,224,255,.32);box-shadow:0 0 14px -4px rgba(127,224,255,.6)}
.ex-ic.big{width:44px;height:44px;font-size:22px;border-radius:11px}
.ex-st{font-size:10.5px;letter-spacing:1px;color:#f2b24b;white-space:nowrap}
.ex-st i{color:#3a465c;font-style:normal}

/* ---- empty / locked ------------------------------------------------------ */
.ex-empty{display:grid;place-items:center;gap:8px;text-align:center;padding:38px 22px;color:var(--muted)}
.ex-empty-ic{font-size:40px;color:#3f5570}
.ex-empty h3{font-family:'Orbitron',sans-serif;font-size:15px;color:var(--text);margin:0}
.ex-empty p{max-width:34em;font-size:12.5px;line-height:1.65;margin:0;text-wrap:pretty}
.ex-empty b{color:#7fe0ff}

/* ---- active expeditions -------------------------------------------------- */
.ex-list{display:flex;flex-direction:column;gap:9px}
.ex-act{display:flex;flex-direction:column;gap:9px;padding:11px 12px;border-radius:12px;border:1px solid var(--line);background:linear-gradient(180deg,#141d2c,#101724)}
.ex-act.back{border-color:rgba(111,224,160,.55);background:linear-gradient(180deg,#122318,#101a14);box-shadow:0 0 20px -8px rgba(111,224,160,.7)}
.ex-act-top{display:flex;align-items:center;gap:10px;min-width:0}
.ex-act-id{min-width:0;flex:1}
.ex-act-n{font-family:'Orbitron',sans-serif;font-weight:700;font-size:12.5px;color:var(--text)}
.ex-act-s{font-size:11px;color:var(--muted);margin-top:2px;display:flex;flex-wrap:wrap;gap:0 5px}
.ex-act-fleet{display:flex;gap:3px;flex:none}
.ex-fs{width:26px;height:20px;object-fit:contain;opacity:.9}
.ex-bar{position:relative;height:8px;border-radius:5px;background:#0a1018;border:1px solid var(--line);overflow:hidden}
.ex-bar>i{display:block;height:100%;background:linear-gradient(90deg,#2f7fb8,#7fe0ff);box-shadow:0 0 10px rgba(127,224,255,.55);transition:width .4s linear}
.ex-bar.full>i{background:linear-gradient(90deg,#2f8a5c,#6fe0a0)}
.ex-bar>u{position:absolute;top:0;width:2px;height:100%;background:#4a5a73;transform:translateX(-1px)}
.ex-bar>u.on{background:#ffd24d;box-shadow:0 0 7px rgba(255,210,77,.9)}
.ex-act-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.ex-eta{font-family:'Rajdhani',sans-serif;font-weight:700;font-size:12.5px;color:var(--text)}
.ex-eta i{color:var(--muted-2);font-style:normal;font-weight:600}
.ex-back{font-family:'Orbitron',sans-serif;font-weight:800;font-size:11px;letter-spacing:.1em;color:#6fe0a0}
.ex-live{display:flex;align-items:center;gap:7px;font-size:11.5px;color:#ffd24d;padding-top:2px;border-top:1px dashed rgba(255,210,77,.25)}
.ex-live span{font-size:13px}

.ex-btn{font-family:'Orbitron',sans-serif;font-weight:800;font-size:11px;letter-spacing:.08em;padding:9px 14px;min-height:38px;border-radius:9px;border:1px solid var(--line-2);background:var(--panel-3);color:var(--text);cursor:pointer;transition:transform .1s,box-shadow .15s}
.ex-btn:active{transform:translateY(1px) scale(.985)}
.ex-btn.go{background:linear-gradient(180deg,#34b465,#1d8a48);border-color:#3fc56b;color:#fff;box-shadow:0 3px 12px rgba(52,180,101,.3)}
.ex-btn.ghost{background:transparent;color:var(--muted);font-size:10.5px;padding:8px 11px}
.ex-btn.wide{width:100%;min-height:48px;font-size:12.5px}
.ex-btn:disabled{background:var(--panel-3);border-color:var(--line);color:var(--muted-2);box-shadow:none;cursor:default}

/* ---- mission board ------------------------------------------------------- */
.ex-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,260px),1fr));gap:9px}
.ex-m{display:flex;flex-direction:column;gap:8px;align-items:stretch;text-align:left;padding:11px 12px;border-radius:12px;border:1px solid var(--line);background:linear-gradient(180deg,#151e2d,#101724);cursor:pointer;transition:transform .1s,border-color .15s,box-shadow .15s;min-width:0}
.ex-m:hover{border-color:var(--line-2);box-shadow:0 5px 18px rgba(0,0,0,.45)}
.ex-m:active{transform:translateY(1px) scale(.995)}
.ex-m.s4{border-color:rgba(184,123,255,.4)}
.ex-m.s5{border-color:rgba(255,138,150,.45);background:linear-gradient(180deg,#1e1522,#12101a)}
.ex-m.full{opacity:.45;cursor:default}
.ex-m-h{display:flex;align-items:center;gap:9px;min-width:0}
.ex-m-h>div{min-width:0;flex:1}
.ex-m-n{font-family:'Orbitron',sans-serif;font-weight:700;font-size:12px;color:var(--text)}
.ex-m-p{font-size:11px;color:var(--muted);margin-top:2px}
.ex-m-line{font-size:11.5px;line-height:1.55;color:var(--muted);text-wrap:pretty}
.ex-m-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
.ex-m-stats span{display:flex;flex-direction:column;gap:2px;padding:6px 7px;border-radius:7px;background:#0d141f;border:1px solid var(--line);min-width:0}
.ex-m-stats i{font-family:'Rajdhani',sans-serif;font-style:normal;font-weight:700;font-size:9px;letter-spacing:.1em;color:var(--muted-2)}
.ex-m-stats b{font-family:'Orbitron',sans-serif;font-size:11.5px;color:var(--text)}
.ex-m-cta{font-family:'Orbitron',sans-serif;font-weight:800;font-size:10.5px;letter-spacing:.1em;color:#7fe0ff;text-align:center;padding-top:2px}
.ex-m.full .ex-m-cta{color:var(--muted-2)}

/* reward chips */
.ex-rw{display:flex;flex-wrap:wrap;gap:4px}
.ex-rw em{font-style:normal;font-family:'Rajdhani',sans-serif;font-weight:700;font-size:11px;padding:3px 7px;border-radius:6px;background:#0d141f;border:1px solid var(--line);white-space:nowrap}
.ex-rw.big em{font-size:13px;padding:5px 10px}
.rw-g{color:#f2b24b}.rw-f{color:#5bc0ff}.rw-i{color:#d0a060}.rw-p{color:#c07bff}.rw-c{color:#8fd0ff}.rw-l{color:#ff9ee0}.rw-n{color:var(--muted-2)}
.ex-rw em u{text-decoration:none;font-weight:600;font-size:.9em;letter-spacing:.04em;opacity:.66;margin-left:5px}

/* ---- hangar -------------------------------------------------------------- */
.ex-hang{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,290px),1fr));gap:8px}
.ex-h{display:flex;gap:10px;align-items:center;padding:9px 11px;border-radius:11px;border:1px solid var(--line);background:linear-gradient(180deg,#141d2c,#101724);min-width:0}
.ex-h.flag{border-color:rgba(242,178,75,.42)}
.ex-h.busy{opacity:.55}
.ex-h-art{width:52px;height:38px;object-fit:contain;flex:none}
.ex-h-main{min-width:0;flex:1;display:flex;flex-direction:column;gap:4px}
.ex-h-n{display:flex;align-items:center;gap:6px;flex-wrap:wrap;font-family:'Orbitron',sans-serif;font-weight:700;font-size:11.5px;color:var(--text)}
.ex-rk.asc{color:#7df3ff;background:rgba(125,243,255,.12);border-color:rgba(125,243,255,.38)}
.ex-rk{font-style:normal;font-family:'Rajdhani',sans-serif;font-weight:800;font-size:9.5px;letter-spacing:.08em;color:#ffd24d;background:rgba(255,210,77,.12);border:1px solid rgba(255,210,77,.35);border-radius:5px;padding:1px 5px}
.ex-tag{font-family:'Rajdhani',sans-serif;font-weight:800;font-size:9px;letter-spacing:.1em;padding:2px 6px;border-radius:5px;border:1px solid var(--line-2);color:var(--muted-2)}
.ex-tag.ok{color:#6fe0a0;border-color:rgba(111,224,160,.4);background:rgba(111,224,160,.1)}
.ex-tag.flag{color:#f2b24b;border-color:rgba(242,178,75,.4);background:rgba(242,178,75,.1)}
.ex-tag.out{color:#7fe0ff;border-color:rgba(127,224,255,.4);background:rgba(127,224,255,.1)}
.ex-tag.esc{color:#b8a0ff;border-color:rgba(184,160,255,.4);background:rgba(184,160,255,.1)}
.ex-tag.bad{color:#ff8a96;border-color:rgba(255,138,150,.45);background:rgba(255,138,150,.1)}
.ex-h-st{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-family:'Rajdhani',sans-serif;font-weight:700;font-size:11px;color:var(--muted)}
.ex-h-st b{font-family:'Orbitron',sans-serif;font-size:12px;color:#7fe0ff}
.ex-h-st u{text-decoration:none;color:var(--muted-2);font-size:10px}
.ex-h-dmg{position:relative;display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:2px;padding:5px 7px;border-radius:7px;background:rgba(255,138,150,.07);border:1px solid rgba(255,138,150,.28)}
.ex-h-dmg>i{position:absolute;left:0;top:0;bottom:0;background:rgba(255,138,150,.13);border-radius:7px}
.ex-h-dmg>span{position:relative;font-size:10.5px;color:#ff9aa6;font-family:'Rajdhani',sans-serif;font-weight:700}
.ex-fix{position:relative;margin-left:auto;font-family:'Orbitron',sans-serif;font-weight:800;font-size:9.5px;letter-spacing:.06em;padding:5px 8px;min-height:28px;border-radius:6px;border:1px solid rgba(208,160,96,.5);background:rgba(208,160,96,.12);color:#d0a060;cursor:pointer}
.ex-fix:active{transform:translateY(1px)}

/* ---- assignment sheet ---------------------------------------------------- */
.ex-sheet{display:flex;flex-direction:column;gap:11px;text-align:left}
.ex-sh-h{display:flex;align-items:center;gap:11px;min-width:0}
.ex-sh-h>div{min-width:0}
.ex-sh-n{font-family:'Orbitron',sans-serif;font-weight:800;font-size:14px;color:var(--text)}
.ex-sh-s{font-size:11.5px;color:var(--muted);margin-top:3px}
.ex-sh-line{font-size:12px;line-height:1.6;color:var(--muted);text-wrap:pretty}
.ex-w{display:flex;flex-wrap:wrap;gap:5px}
.ex-wc{font-family:'Rajdhani',sans-serif;font-weight:700;font-size:10.5px;letter-spacing:.05em;padding:4px 8px;border-radius:6px;background:#0d141f;border:1px solid var(--line);color:var(--muted)}
.ex-wc.hi{color:#7fe0ff;border-color:rgba(127,224,255,.4);background:rgba(127,224,255,.08)}
.ex-wc.lo{color:var(--muted-2);opacity:.7}
.ex-wc b{color:inherit}

.ex-picklist{display:flex;flex-direction:column;gap:6px;max-height:38vh;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;padding-right:2px}
.ex-pk{display:flex;align-items:center;gap:9px;padding:8px 10px;min-height:56px;border-radius:10px;border:1px solid var(--line);background:linear-gradient(180deg,#141d2c,#101724);cursor:pointer;text-align:left;transition:border-color .13s,background .13s;min-width:0;width:100%}
.ex-pk.on{border-color:#7fe0ff;background:linear-gradient(180deg,#12293a,#0e1c29);box-shadow:0 0 0 1px rgba(127,224,255,.35) inset}
.ex-pk.off{opacity:.4;cursor:default}
.ex-pk-art{width:46px;height:34px;object-fit:contain;flex:none}
.ex-pk-m{min-width:0;flex:1}
.ex-pk-n{display:flex;align-items:center;gap:5px;flex-wrap:wrap;font-family:'Orbitron',sans-serif;font-weight:700;font-size:11.5px;color:var(--text)}
.ex-pk-s{font-family:'Rajdhani',sans-serif;font-weight:600;font-size:10.5px;color:var(--muted);margin-top:3px;letter-spacing:.04em}
.ex-pk-s u{text-decoration:none;color:#ff8a96}
.ex-pk-v{flex:none;text-align:right;min-width:64px}
.ex-pk-v b{display:block;font-family:'Orbitron',sans-serif;font-size:13px;color:#6fe0a0}
.ex-pk-v i{display:block;font-style:normal;font-size:8.5px;letter-spacing:.06em;color:var(--muted-2);margin-top:1px}
.ex-pk-x{color:var(--muted-2)}

.ex-verdict{display:flex;flex-direction:column;gap:5px;padding:11px 12px;border-radius:11px;border:1px solid var(--line-2);background:#0d141f}
.ex-verdict.critical{border-color:rgba(255,107,122,.5)}
.ex-verdict.risky{border-color:rgba(255,154,77,.5)}
.ex-verdict.good,.ex-verdict.assured{border-color:rgba(111,224,160,.5)}
.ex-v-row{display:flex;align-items:baseline;justify-content:space-between;gap:10px;font-family:'Rajdhani',sans-serif;font-weight:700;font-size:11px;letter-spacing:.08em;color:var(--muted)}
.ex-v-row b{font-family:'Orbitron',sans-serif;font-size:14px;color:var(--text)}
.ex-v-row.big b{font-size:15px}
.ex-v-bar{position:relative;height:7px;border-radius:4px;background:#070c14;border:1px solid var(--line);overflow:hidden;margin-top:4px}
.ex-v-bar>i{display:block;height:100%;transition:width .2s}
.ex-v-bar>u{position:absolute;top:-2px;bottom:-2px;width:2px;background:#8fa0bb}

.ex-note{font-size:11.5px;line-height:1.55;color:var(--muted);padding:9px 11px;border-radius:9px;background:rgba(95,120,170,.08);border:1px solid var(--line);text-wrap:pretty}
.ex-note.warn{color:#ffd0a0;background:rgba(255,154,77,.09);border-color:rgba(255,154,77,.32)}
.ex-note b{color:var(--text)}
.ex-note.warn b{color:#ffe0bd}

/* the formation you are flying right now — shown on the assignment sheet */
.ex-fm{display:flex;flex-direction:column;gap:6px;padding:9px 11px;border-radius:9px;background:rgba(95,120,170,.06);border:1px solid var(--line)}
.ex-fm-h{display:flex;align-items:baseline;justify-content:space-between;gap:8px;font-family:'Rajdhani',sans-serif;font-weight:800;font-size:10px;letter-spacing:.12em;color:var(--muted-2)}
.ex-fm-h b{font-family:'Orbitron',sans-serif;font-size:9.5px;letter-spacing:.06em;color:var(--text)}
.ex-fm-l{display:flex;flex-wrap:wrap;gap:5px}
.ex-fm-c{display:flex;flex-direction:column;gap:1px;padding:4px 8px;border-radius:7px;background:#0d141f;border:1px solid var(--line-2);font-family:'Orbitron',sans-serif;font-size:10px;color:var(--text)}
.ex-fm-c i{font-style:normal;font-family:'Rajdhani',sans-serif;font-weight:800;font-size:8.5px;letter-spacing:.1em;color:var(--muted-2)}
.ex-fm-c.flag{border-color:rgba(255,210,77,.35);background:rgba(255,210,77,.08)}
.ex-fm-c.flag i{color:#ffd24d}
.ex-fm-c.out{border-color:rgba(255,154,77,.4);background:rgba(255,154,77,.09)}
.ex-fm-c.out i{color:#ff9a4d}

.ex-conf{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
.ex-c-row{display:flex;flex-direction:column;gap:3px;padding:8px;border-radius:8px;background:#0d141f;border:1px solid var(--line);min-width:0}
.ex-c-row span{font-family:'Rajdhani',sans-serif;font-weight:700;font-size:9px;letter-spacing:.1em;color:var(--muted-2)}
.ex-c-row b{font-family:'Orbitron',sans-serif;font-size:12px;color:var(--text)}
.ex-c-row b.bad{color:#ff8a96}
.ex-c-row b i{font-style:normal;font-size:9.5px;color:var(--muted-2)}
.ex-c-rw{display:flex;flex-direction:column;gap:6px}
.ex-c-rw>span{font-family:'Rajdhani',sans-serif;font-weight:700;font-size:9.5px;letter-spacing:.1em;color:var(--muted-2)}
.ex-c-rw>span i{font-style:normal;color:#4c5b73}
.ex-sh-cta{padding-top:2px}

/* ---- debrief ------------------------------------------------------------- */
.ex-sheet.debrief{gap:9px}
.ex-db-k{font-family:'Rajdhani',sans-serif;font-weight:800;font-size:10px;letter-spacing:.22em;color:var(--muted-2);text-align:center}
.ex-db-t{font-family:'Orbitron',sans-serif;font-weight:900;font-size:19px;letter-spacing:.02em;text-align:center;text-shadow:0 0 22px currentColor}
.ex-db-s{font-size:11.5px;color:var(--muted);text-align:center}
.ex-db-rate{font-size:11.5px;line-height:1.6;color:var(--muted);text-align:center;text-wrap:pretty}
.ex-db-rate b{color:var(--text)}
.ex-db-h{font-family:'Rajdhani',sans-serif;font-weight:800;font-size:9.5px;letter-spacing:.2em;color:var(--muted-2);margin-top:3px}
.ex-db-ev{display:flex;flex-direction:column;gap:5px}
.ex-ev{display:flex;gap:9px;padding:8px 10px;border-radius:9px;background:#0d141f;border:1px solid var(--line)}
.ex-ev>span{font-size:15px;line-height:1.2;flex:none;width:20px;text-align:center}
.ex-ev.g0{border-color:rgba(255,138,150,.3)}.ex-ev.g0>span{color:#ff8a96}
.ex-ev.g1{border-color:rgba(111,224,160,.3)}.ex-ev.g1>span{color:#6fe0a0}
.ex-ev.g2{border-color:rgba(255,210,77,.45);background:rgba(255,210,77,.07)}.ex-ev.g2>span{color:#ffd24d}
.ex-ev b{display:block;font-family:'Orbitron',sans-serif;font-weight:700;font-size:11px;color:var(--text)}
.ex-ev i{display:block;font-style:normal;font-size:11px;line-height:1.5;color:var(--muted);margin-top:3px;text-wrap:pretty}
.ex-db-ships{display:flex;flex-direction:column;gap:5px}
.ex-db-sh{display:flex;align-items:center;gap:9px;padding:7px 10px;border-radius:9px;background:#0d141f;border:1px solid var(--line);min-width:0}
.ex-db-art{width:44px;height:32px;object-fit:contain;flex:none}
.ex-db-sh b{font-family:'Orbitron',sans-serif;font-weight:700;font-size:11px;color:var(--text)}
.ex-db-sh i{display:block;font-style:normal;font-size:10.5px;color:var(--muted);margin-top:2px}
.ex-db-sh u{text-decoration:none;color:#ffd24d;font-weight:700}
.ex-db-sh s{text-decoration:none;color:#ff8a96}

/* ---- narrow phones ------------------------------------------------------- */
@media (max-width:420px){
  #expo-body{padding:10px;gap:12px}
  .ex-conf{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ex-conf .ex-c-row:last-child{grid-column:1/-1}
  .ex-act-fleet{display:none}
  .ex-picklist{max-height:34vh}
  .ex-db-t{font-size:17px}
}
