:root{
  --bg:#061422;
  --panel:#0b1e33;
  --panel2:#102a46;
  --ink:#f2f7fb;
  --muted:#9fb5c7;
  --line:rgba(255,255,255,.12);
  --blue:#2bc4ff;
  --pilot:#3aa7ff;
  --copilot:#ff9d2e;
  --gold:#f7c948;
  --danger:#ff4d5a;
  --ok:#54e38e;
  --coffee:#b47b45;
  --shadow:0 18px 45px rgba(0,0,0,.35);
}
*{box-sizing:border-box}
html,body{margin:0;min-height:100%;font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;background:radial-gradient(circle at 40% -10%,#164a7c 0,#061422 44%,#02070d 100%);color:var(--ink);}
body{overscroll-behavior:none}.app-shell{max-width:760px;margin:0 auto;min-height:100vh;padding-bottom:88px;overflow-x:hidden}
.topbar{position:sticky;top:0;z-index:30;display:flex;justify-content:space-between;gap:12px;align-items:flex-start;padding:16px 16px 14px;background:linear-gradient(180deg,rgba(6,20,34,.98),rgba(6,20,34,.88));backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
.eyebrow{letter-spacing:.28em;color:var(--gold);font-weight:800;font-size:.72rem}.topbar h1{margin:.12rem 0 0;font-size:1.35rem;line-height:1.05}.topbar p{margin:.35rem 0 0;color:var(--muted);font-weight:650;font-size:.86rem}.top-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end;min-width:170px}
button{border:0;border-radius:18px;background:#183654;color:var(--ink);padding:13px 15px;font-weight:850;font-size:1rem;box-shadow:inset 0 0 0 1px var(--line);touch-action:manipulation}button:active{transform:translateY(1px)}button.primary{background:linear-gradient(135deg,var(--gold),#f2a93b);color:#10202a}button.blue{background:linear-gradient(135deg,#3aa7ff,#176fbe)}button.orange{background:linear-gradient(135deg,#ff9d2e,#d76316)}button.danger{background:#6c1320}button.ghost{background:rgba(255,255,255,.05)}button.small{font-size:.86rem;padding:9px 11px;border-radius:14px}button.block{width:100%}button:disabled{opacity:.45;filter:grayscale(1)}
main{padding:14px}.hidden{display:none!important}.card{background:linear-gradient(180deg,rgba(16,42,70,.96),rgba(8,24,40,.96));border:1px solid var(--line);border-radius:26px;padding:16px;margin-bottom:14px;box-shadow:var(--shadow)}.card.tight{padding:12px}.card h2,.card h3{margin:0 0 10px}.card p{color:var(--muted);font-weight:600;line-height:1.4}.grid{display:grid;gap:10px}.grid.two{grid-template-columns:1fr 1fr}.grid.three{grid-template-columns:repeat(3,1fr)}.grid.four{grid-template-columns:repeat(4,1fr)}@media(max-width:480px){.grid.four{grid-template-columns:repeat(2,1fr)}.topbar{padding:14px 12px}.top-actions{min-width:145px}.topbar h1{font-size:1.15rem}main{padding:10px}}
.stat{background:rgba(0,0,0,.32);border:1px solid var(--line);border-radius:18px;padding:12px;text-align:center;min-height:74px}.stat label{display:block;color:var(--muted);font-size:.72rem;font-weight:900;letter-spacing:.18em;text-transform:uppercase}.stat strong{font-size:1.55rem}.stat .sub{display:block;font-size:.72rem;color:var(--muted);font-weight:750}.pill{display:inline-flex;align-items:center;gap:8px;padding:6px 10px;border-radius:999px;background:rgba(255,255,255,.07);border:1px solid var(--line);font-weight:800;color:var(--muted);font-size:.85rem}.pill.blue{color:#bdeaff}.pill.orange{color:#ffe0b8}.pill.gold{color:#ffeaa1}.alert{border:1px solid rgba(247,201,72,.45);background:rgba(247,201,72,.09);border-radius:18px;padding:12px;color:#ffeaa1;font-weight:700}.dangerText{color:#ff9aa3}.okText{color:#8df3b4}.muted{color:var(--muted)}
.bottom-nav{position:fixed;left:0;right:0;bottom:0;z-index:35;display:flex;gap:8px;padding:10px 10px max(10px,env(safe-area-inset-bottom));background:linear-gradient(180deg,rgba(6,20,34,.4),rgba(6,20,34,.98));backdrop-filter:blur(16px);border-top:1px solid var(--line)}.bottom-nav button{flex:1;border-radius:18px;padding:13px 5px;font-size:.87rem;background:rgba(255,255,255,.07)}.bottom-nav button.active{background:var(--gold);color:#13222c}.modal{position:fixed;inset:0;z-index:80;background:rgba(0,0,0,.65);display:flex;align-items:flex-end;padding:12px}.modal-card{width:100%;max-width:760px;margin:0 auto;background:#081827;border:1px solid rgba(255,255,255,.18);border-radius:28px;padding:18px;box-shadow:0 22px 60px rgba(0,0,0,.7);max-height:86vh;overflow:auto}.modal-card h2{margin-top:0}.row{display:flex;gap:10px;align-items:center;justify-content:space-between}.row.wrap{flex-wrap:wrap}.spacer{height:10px}.sep{height:1px;background:var(--line);margin:12px 0}
.cockpit-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.axis{height:86px;border-radius:22px;background:linear-gradient(90deg,rgba(58,167,255,.24),rgba(255,255,255,.06),rgba(255,157,46,.24));border:1px solid var(--line);position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden}.axis:before{content:"";position:absolute;left:8%;right:8%;height:4px;background:rgba(255,255,255,.18);border-radius:4px}.axis-pointer{width:86px;height:6px;background:var(--ink);border-radius:8px;box-shadow:0 0 12px rgba(255,255,255,.4);transform-origin:center}.runway{height:94px;position:relative;border-radius:22px;overflow:hidden;background:linear-gradient(180deg,#15273a,#0a1018);border:1px solid var(--line)}.runway:before{content:"";position:absolute;left:50%;top:-20px;bottom:-20px;width:80px;transform:translateX(-50%) perspective(100px) rotateX(30deg);background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.02));clip-path:polygon(40% 0,60% 0,100% 100%,0 100%)}.runway .plane{position:absolute;left:50%;bottom:12px;transform:translateX(-50%);font-size:2.2rem}.traffic-row{display:grid;grid-template-columns:repeat(6,1fr);gap:6px}.traffic{height:42px;border-radius:14px;border:1px solid var(--line);background:rgba(255,255,255,.05);display:flex;align-items:center;justify-content:center;font-weight:900}.traffic.has{background:rgba(255,77,90,.18);color:#ffb7bd}.switches{display:grid;grid-template-columns:repeat(5,1fr);gap:7px}.switch{height:42px;border-radius:14px;background:rgba(255,255,255,.06);border:1px solid var(--line);display:flex;align-items:center;justify-content:center;font-weight:900;color:var(--muted)}.switch.on{background:rgba(84,227,142,.22);color:#baffd0;border-color:rgba(84,227,142,.55)}
.dice{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:12px;font-weight:1000;font-size:1.25rem;margin:2px;border:1px solid rgba(255,255,255,.22)}.dice.blue{background:#1b72c9}.dice.orange{background:#c86414}.dice.used{opacity:.35}.action-log{max-height:280px;overflow:auto}.logline{padding:10px;border-radius:14px;background:rgba(255,255,255,.05);margin:7px 0;color:#d6e4ef;font-weight:650}.flight-card{background:linear-gradient(135deg,rgba(43,196,255,.14),rgba(247,201,72,.1));border:1px solid var(--line);border-radius:22px;padding:14px}.airport{font-size:1.1rem;font-weight:950}.briefing{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.briefing button.active{background:var(--gold);color:#17232d}.legal{font-size:.75rem;color:var(--muted);line-height:1.35}.tip{display:inline-flex;width:24px;height:24px;border-radius:50%;align-items:center;justify-content:center;background:rgba(247,201,72,.18);color:var(--gold);font-weight:1000}
input, textarea, select{width:100%;border:1px solid var(--line);background:rgba(0,0,0,.32);color:var(--ink);border-radius:16px;padding:13px;font:inherit;font-weight:700;outline:none}textarea{resize:vertical}.toast{font-family:inherit}
