:root{--bg:#08111c;--panel:#101d2d;--panel-raised:#14253a;--line:#27405a;--text:#edf4fa;--muted:#9caec1;--accent:#5ee5b5;--accent-ink:#062b22;--danger:#ff777c;--shadow:0 18px 48px #0000002e;color-scheme:dark}
:root .modal .card:has(.note-modal){width:min(1500px,calc(100vw - 32px));max-width:none;overflow:hidden}:root .note-modal{width:100%;max-height:calc(100vh - 64px);min-width:0}:root .note-content{margin-top:16px;max-width:100%;max-height:calc(100vh - 150px);overflow:auto;white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word}:root .note-content pre,:root .note-content code{max-width:100%;white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word}:root .note-content pre{overflow:auto}
.mini-progress{display:grid;gap:6px;margin-top:2px}.mini-progress small{display:flex;justify-content:space-between;gap:10px;font-size:11px}.mini-progress .progress-track{height:7px;border:1px solid color-mix(in srgb,var(--line) 85%,var(--text));background:var(--panel-raised);box-shadow:inset 0 0 0 1px #00000024}
.event-card{cursor:pointer}.event-card:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.task-status .progress-track{border:1px solid color-mix(in srgb,var(--line) 85%,var(--text));background:var(--panel-raised);box-shadow:inset 0 0 0 1px #00000024}
.flag-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px 10px}.flag-row code{grid-column:1/-1}.flag-row .flag-actions{grid-column:1/-1;display:flex;align-items:center;gap:8px}.flag-row.flag-failed code{color:var(--danger);text-decoration:line-through}.flag-row.flag-failed .status{color:#ff9b9b;border-color:#8f3f47;background:#3b1b20}
.category-challenge.solved{background:color-mix(in srgb,#75ff6a 30%,var(--panel));color:#ddffd8}.category-challenge.solved:hover{background:color-mix(in srgb,#75ff6a 42%,var(--panel))}.category-challenge.solved b{color:inherit}.category-challenge.solved small{color:#c2ffb9}
:root .activity-steer{position:sticky;bottom:0;margin-top:14px;padding-top:12px;background:var(--panel);border-top:1px solid var(--line)}:root .activity-steer textarea{width:100%;resize:vertical}:root .activity-steer .row{align-items:center}
:root[data-theme="light"]{--bg:#f4f7fb;--panel:#ffffff;--panel-raised:#f8fbff;--line:#d9e2ee;--text:#172538;--muted:#64758a;--accent:#079c71;--accent-ink:#fff;--danger:#cc3543;--shadow:0 18px 48px #243c5c18;color-scheme:light}
body{background:radial-gradient(1000px 600px at 85% -10%,#177b6b24,transparent 62%),var(--bg);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;letter-spacing:.005em;transition:background .2s,color .2s}button{background:var(--accent);color:var(--accent-ink);border-radius:9px;padding:9px 13px;transition:transform .16s ease,background .16s ease,border-color .16s ease,box-shadow .16s ease}button:hover{transform:translateY(-1px);box-shadow:0 6px 16px #0002}button:active{transform:translateY(0)}button:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none}button.ghost{background:var(--panel-raised);color:var(--text);border-color:var(--line)}button.danger{background:color-mix(in srgb,var(--danger) 16%,var(--panel));color:var(--danger);border:1px solid color-mix(in srgb,var(--danger) 38%,var(--line))}
.shell{background:linear-gradient(180deg,#ffffff02,transparent 240px)}.top{height:70px;background:color-mix(in srgb,var(--bg) 82%,transparent);backdrop-filter:blur(18px);position:sticky;top:0;z-index:4;padding:0 30px}.brand{font-size:19px;letter-spacing:.05em}.layout{grid-template-columns:286px minmax(0,1fr)}aside{padding:20px 16px;background:color-mix(in srgb,var(--panel) 42%,transparent)}main{max-width:1440px;padding:32px;margin:0 auto}.label{margin-top:22px}.nav-item{border-radius:8px;margin:2px 0}.nav-item:hover,.event-nav.active{background:color-mix(in srgb,var(--accent) 12%,var(--panel-raised))}.event-settings:hover{background:var(--panel-raised)}
.card{background:color-mix(in srgb,var(--panel) 94%,transparent);border-color:color-mix(in srgb,var(--line) 86%,transparent);border-radius:14px;box-shadow:var(--shadow)}.grid{gap:18px}.ctf{min-height:172px;transition:transform .18s ease,border-color .18s ease}.ctf:hover{transform:translateY(-3px);border-color:color-mix(in srgb,var(--accent) 48%,var(--line))}.row h1{letter-spacing:-.035em;margin-bottom:6px}.status{font-weight:750;letter-spacing:.045em;padding:4px 8px;background:color-mix(in srgb,var(--panel-raised) 75%,transparent)}
.challenge-category summary{background:var(--panel-raised);border-radius:9px;margin:7px 0}.category-challenge{border-radius:9px;margin:2px 0;padding-left:36px}.category-challenge:hover{background:color-mix(in srgb,var(--accent) 10%,var(--panel-raised))}.category-challenge.solved{background:color-mix(in srgb,#0b8d61 12%,var(--panel))}.agent-run-tile{background:var(--panel-raised);border-radius:11px;padding:8px}.agent-run:hover{background:color-mix(in srgb,var(--accent) 10%,var(--panel-raised));border-radius:7px}.agent-run-controls button{border-radius:7px}.flag-row{padding:13px 4px}.flag-row code{background:color-mix(in srgb,var(--accent) 9%,var(--panel-raised));padding:6px 8px;border-radius:6px}.challenge-resource,.connection-command{background:var(--panel-raised);border-color:var(--line)}
.form input,.form textarea{background:var(--panel-raised);border-color:var(--line);border-radius:9px;padding:11px 12px}.form input:focus,.form textarea:focus{outline:2px solid color-mix(in srgb,var(--accent) 48%,transparent);outline-offset:1px;border-color:var(--accent)}.modal{background:#02081180;backdrop-filter:blur(6px)}.modal>.card{box-shadow:0 30px 90px #0008}.terminal{background:#050b12;border:1px solid #284056;border-radius:11px;box-shadow:inset 0 1px #ffffff08}.activity-item{background:var(--panel-raised);border-radius:10px}.task-status{background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 11%,var(--panel)),var(--panel))}.progress-track{background:color-mix(in srgb,var(--bg) 72%,var(--line))}.theme-toggle{border-radius:999px;padding:9px 13px;box-shadow:var(--shadow)}
:root[data-theme="light"] .terminal{background:#0b1520;color:#d8f8e7}:root[data-theme="light"] .modal{background:#1825364d}:root[data-theme="light"] .top{background:#f4f7fbd9}@media(max-width:850px){.top{padding:10px 14px}.card{border-radius:12px}main{padding:16px}}
