:root{--bg:#f6f7f9;--panel:#fff;--ink:#1c2330;--muted:#5d6879;--line:#dde2ea;--accent:#1f5fbf;--warn-bg:#fff4d6;--warn-ink:#6b4e00;--err:#b3261e;color:var(--ink);background:var(--bg);font-family:system-ui,-apple-system,Segoe UI,sans-serif}@media (prefers-color-scheme:dark){:root{--bg:#14181f;--panel:#1c222b;--ink:#e6e9ef;--muted:#9aa4b2;--line:#2c3440;--accent:#7aa7ff;--warn-bg:#3a3014;--warn-ink:#f3d68a;--err:#ff8a80}}*{box-sizing:border-box}body{background:var(--bg);margin:0}.center{place-items:center;min-height:100vh;padding:16px;display:grid}.card{background:var(--panel);border:1px solid var(--line);border-radius:8px;margin-bottom:16px;padding:16px 20px}.login{gap:12px;width:min(360px,100%);display:grid}.login h1{margin:0 0 4px;font-size:1.15rem}label{color:var(--muted);gap:4px;font-size:.9rem;display:grid}input,select{font:inherit;border:1px solid var(--line);background:var(--panel);color:var(--ink);border-radius:6px;padding:8px 10px}button{font:inherit;background:var(--accent);color:#fff;cursor:pointer;border:0;border-radius:6px;padding:8px 14px}button:disabled{opacity:.5;cursor:default}button.link{color:var(--accent);background:0 0;padding:4px 6px}.error{color:var(--err);margin:0}.muted{color:var(--muted)}.top{background:var(--panel);border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:12px;padding:10px 16px;display:flex}.top select{max-width:100%}.spacer{flex:1}.who{color:var(--muted);font-size:.9rem}.banner{flex-wrap:wrap;align-items:center;gap:12px;padding:8px 16px;font-size:.9rem;display:flex}.banner.warn{background:var(--warn-bg);color:var(--warn-ink)}.banner.presenter{background:var(--accent);color:#fff}.banner.presenter button.link{color:#fff;text-decoration:underline}.content{max-width:1100px;margin:0 auto;padding:20px 16px}.heading h1{margin:0 0 4px;font-size:1.4rem}.heading p{margin:0 0 8px}.badge{border:1px solid var(--line);border-radius:999px;padding:2px 8px;font-size:.8rem;display:inline-block}.roles{color:var(--muted);font-size:.9rem}h2{margin:0 0 12px;font-size:1rem}table{border-collapse:collapse;width:100%;font-size:.92rem}th,td{text-align:left;border-bottom:1px solid var(--line);padding:8px 6px}th{color:var(--muted);font-weight:600}.status{border:1px solid var(--line);border-radius:999px;padding:2px 8px;font-size:.8rem}.s-active{border-color:var(--accent);color:var(--accent)}@media (width<=640px){th:nth-child(2),td:nth-child(2){display:none}}
