/* Dispatch Academy skin - navy & gold, sits on top of base.css */
:root{
  --bg:#0a1428;--panel:#12203c;--panel2:#1a2c4f;--ink:#f4f7ff;--muted:#9fb0d8;
  --accent:#f2b705;--accent2:#3b82f6;--good:#22c55e;--warn:#f59e0b;--bad:#ef4444;
}
body{background:radial-gradient(1100px 600px at 8% -10%,#16305e 0%,transparent 60%),radial-gradient(900px 500px at 110% 5%,#0e2a52 0%,transparent 55%),var(--bg)}
.brand span{background:linear-gradient(90deg,var(--accent),#ffe08a);-webkit-background-clip:text;background-clip:text}
.btn{color:#1a1400;background:linear-gradient(90deg,var(--accent),#ffd75e);box-shadow:0 4px 0 #8a6703}
.nav button.active,.nav button:hover{border-color:var(--accent);background:#1c2c50}
.progress > div{background:linear-gradient(90deg,var(--accent),var(--accent2))}
.module:hover{border-color:var(--accent)}
.choice.selected{border-color:var(--accent);background:#22315a}
h1,h2{letter-spacing:.3px}
.belt-big{border-radius:50%;border:4px solid rgba(255,255,255,.25);box-shadow:0 0 18px rgba(242,183,5,.35)}

/* Dock + modal (my additions) */
#ba-dock{position:fixed;right:14px;bottom:14px;display:flex;gap:10px;z-index:60}
#ba-dock button{border:0;border-radius:999px;padding:12px 16px;font-weight:800;font-size:15px;cursor:pointer;box-shadow:0 6px 16px rgba(0,0,0,.45)}
#ba-memo-btn{background:#f2b705;color:#1a1400}
#ba-mail-btn{background:#2563eb;color:#fff}
#ba-modal{position:fixed;inset:0;background:rgba(4,10,24,.78);display:none;align-items:center;justify-content:center;z-index:70;padding:16px}
#ba-modal.open{display:flex}
#ba-modal .sheet{background:var(--panel);border:1px solid var(--accent);border-radius:var(--radius);max-width:640px;width:100%;max-height:88vh;overflow:auto;padding:20px;color:var(--ink)}
#ba-modal textarea{width:100%;min-height:180px;border-radius:12px;border:1px solid var(--panel2);background:var(--bg);color:var(--ink);font-size:17px;padding:12px;resize:vertical}
#ba-modal .close-x{float:right;background:none;border:0;color:var(--muted);font-size:22px;cursor:pointer}

/* keep fixed dock from covering page content */
body { padding-bottom: 88px; }
