/* CodeFighter II - shared styles (nav, buttons, panels). Page-specific styles stay in each page. */
* { box-sizing: border-box; }
body { background-color: #121212; color: #00ffcc; font-family: monospace; margin: 0; }
a { color: #00ffcc; }

/* ---------- Top navigation ---------- */
.top-nav { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 10px;
    background: #000; border-bottom: 2px solid #ff0044; padding: 10px 16px; }
.top-nav .brand { color: #ff0044; font-weight: bold; font-size: 18px; text-decoration: none; letter-spacing: 1px; }
.top-nav .links { display: flex; gap: 6px; flex-wrap: wrap; align-items: center; }
.top-nav .links a { color: #aaa; text-decoration: none; padding: 6px 10px; border: 1px solid transparent; font-weight: bold; text-transform: uppercase; font-size: 13px; }
.top-nav .links a:hover { color: #00ffcc; border-color: #00ffcc; }
.top-nav .links a.active { color: #000; background: #00ffcc; }
.top-nav .who { color: #777; font-size: 13px; margin-right: 6px; }
.top-nav .who strong { color: #00ffcc; }

/* ---------- Buttons ---------- */
.btn { display: inline-block; padding: 12px 18px; font-family: monospace; font-size: 16px; font-weight: bold; text-transform: uppercase;
    cursor: pointer; text-decoration: none; text-align: center; border: 2px solid #ff0044; background: #ff0044; color: #fff; }
.btn:hover { background: #ff3366; border-color: #ff3366; }
.btn.ghost { background: transparent; color: #00ffcc; border-color: #00ffcc; }
.btn.ghost:hover { background: #00ffcc; color: #000; }
.btn.dim { background: #222; color: #ccc; border-color: #555; }
.btn.dim:hover { background: #333; }

/* ---------- Panels ---------- */
.page { max-width: 1100px; margin: 0 auto; padding: 20px 16px 40px; }
.panel { background: #000; border: 2px solid #333; padding: 18px; }
.notice { background: #1a1400; border: 1px solid #ffcc00; color: #ffcc00; padding: 12px; margin-bottom: 16px; }
