:root{
  --bg:#0e1116; --panel:#161b23; --panel2:#1c232e; --line:#2a3342;
  --text:#e9e6df; --muted:#a7b0ba; --gold:#c9a227; --gold-dim:#8f741c;
  --red:#c0453a; --green:#3f9e4d; --yellow:#d8a41c; --link:#d8b84a;
}
*{box-sizing:border-box}
html{font-size:17px}
body{margin:0;background:var(--bg);color:var(--text);
  font-family:system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  line-height:1.65}
.wrap{max-width:860px;margin:0 auto;padding:0 20px}
a{color:var(--link)}
a:hover{text-decoration:underline}
h1,h2,h3{font-family:Georgia,"Times New Roman",serif;line-height:1.25;color:#f4f1e8}
h1{font-size:2rem;margin:.4em 0 .5em}
h2{font-size:1.45rem;margin:1.6em 0 .5em;border-bottom:1px solid var(--line);padding-bottom:.25em}
h3{font-size:1.15rem;margin:1.3em 0 .4em}
main.wrap{padding-top:28px;padding-bottom:44px}
.page p{margin:.7em 0}
.lede{font-size:1.13rem;color:#f0ede4}
.status-box,.counter-box,.cta{
  background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:16px 18px;margin:20px 0}
.status-box{border-left:4px solid var(--gold)}
.cta{border-color:var(--gold-dim)}
.cta h2{border:0;margin-top:0}
.counter-label{font-weight:700;letter-spacing:.06em;text-transform:uppercase;font-size:.8rem;color:var(--muted);margin:0 0 .4em}
.button{display:inline-block;background:var(--gold);color:#14100a;font-weight:700;
  padding:10px 18px;border-radius:6px;text-decoration:none}
.button:hover{background:#dbb83e;text-decoration:none}
table{width:100%;border-collapse:collapse;margin:16px 0;font-size:.94rem}
th,td{border:1px solid var(--line);padding:8px 10px;vertical-align:top;text-align:left}
th{background:var(--panel2);font-family:Georgia,serif}
td{background:var(--panel)}
ul,ol{padding-left:1.4em}
li{margin:.35em 0}
blockquote{border-left:3px solid var(--gold-dim);margin:1em 0;padding:.2em 0 .2em 1em;color:#ddd8cb}
.site-footer{border-top:1px solid var(--line);background:#0a0d11;padding:26px 0 34px;color:var(--muted);font-size:.92rem}
.site-footer a{color:var(--muted);text-decoration:underline}
.small{font-size:.9rem;color:var(--muted)}
hr{border:0;border-top:1px solid var(--line);margin:26px 0}
/* Status dots + roster */
.dot{display:inline-block;width:.62em;height:.62em;border-radius:50%;margin-right:.45em;vertical-align:baseline}
.dot.green{background:var(--green)} .dot.yellow{background:var(--yellow)} .dot.red{background:var(--red)}
.roster-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:14px;margin:18px 0}
.roster-card{border:1px solid #2a3f5c;padding:14px 16px;background:#0d1b2e;border-radius:6px}
.roster-card h3{margin:0 0 4px;font-size:1.05rem}
.roster-card h3 a{color:#f4f1e8;text-decoration:none}
.roster-card h3 a:hover{color:var(--gold)}
.roster-card .role{color:var(--gold);font-size:.92em;margin:0 0 8px}
.roster-card p{margin:0;font-size:.95em}
.roster-plain h3{color:#f4f1e8}
@media (max-width:560px){ h1{font-size:1.6rem} table{font-size:.85rem} th,td{padding:6px 7px} }
