:root { --bg:#0f1115; --card:#171a21; --ink:#e7e9ee; --muted:#9aa3b2; --accent:#5b8cff; --full:#e2683c; --open:#3ca06a; }
* { box-sizing: border-box; }
body { margin:0; background:var(--bg); color:var(--ink); font:15px/1.5 -apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif; }
.wrap { max-width: 860px; margin: 0 auto; padding: 28px 20px 64px; }
.wrap.narrow { max-width: 420px; }
.brand { display:flex; align-items:center; gap:10px; font-weight:700; letter-spacing:.2px; padding-bottom:18px; border-bottom:1px solid #262a33; }
.brand nav { margin-left:auto; font-weight:500; }
.brand nav a { color:var(--muted); text-decoration:none; margin-left:16px; }
.brand nav a:hover { color:var(--ink); }
.dot { width:12px; height:12px; border-radius:50%; background:var(--accent); display:inline-block; }
.tag, .pill { font-size:11px; padding:2px 8px; border-radius:999px; text-transform:uppercase; letter-spacing:.4px; }
.tag { background:#2a2f3a; color:var(--muted); }
h1 { font-size:22px; margin:22px 0 6px; } h2 { font-size:16px; margin:26px 0 10px; }
.muted { color:var(--muted); } .err { color:var(--full); min-height:1.2em; }
.cards { display:grid; gap:12px; margin-top:16px; }
.card { background:var(--card); border:1px solid #262a33; border-radius:12px; padding:14px 16px; display:grid; gap:6px; }
.card .ttl { font-weight:600; } .card .meta { color:var(--muted); font-size:13px; }
.pill.full { background:rgba(226,104,60,.16); color:var(--full); }
.pill.open { background:rgba(60,160,106,.16); color:var(--open); }
.act { margin-top:4px; }
.dayhead { margin:18px 0 2px; font-weight:700; font-size:13px; text-transform:uppercase; letter-spacing:.6px; color:var(--muted); }
.kind { font-size:11px; padding:2px 8px; border-radius:999px; background:#22303f; color:#8fb7ff; margin-left:6px; vertical-align:middle; }
ul { margin:6px 0; padding-left:18px; } li { margin:3px 0; }
.panel { background:var(--card); border:1px solid #262a33; border-radius:12px; padding:14px 16px; }
.row { padding:8px 0; border-bottom:1px solid #232733; } .row:last-child { border-bottom:0; }
label { display:block; margin:12px 0; } input { width:100%; padding:9px 11px; margin-top:4px; background:#0c0e12; border:1px solid #2b303b; border-radius:8px; color:var(--ink); }
button { background:var(--accent); color:#fff; border:0; border-radius:8px; padding:8px 14px; font-weight:600; cursor:pointer; }
button[disabled] { background:#2a2f3a; color:var(--muted); cursor:not-allowed; }
a { color:var(--accent); } .foot { margin-top:40px; font-size:12px; }
.hero { padding:34px 0 10px; border-bottom:1px solid #262a33; margin-bottom:8px; }
.eyebrow { color:var(--accent); font-size:12px; font-weight:700; text-transform:uppercase; letter-spacing:1.2px; }
.big { font-size:34px; line-height:1.15; margin:10px 0 8px; }
.lede { font-size:17px; color:var(--muted); max-width:60ch; }
.cta { display:inline-block; background:var(--accent); color:#fff; padding:11px 18px; border-radius:9px; font-weight:600; text-decoration:none; }
.cta:hover { filter:brightness(1.08); }
