:root{--bg: #0c0e10;--bg-raise: #14181c;--bg-card: #181d22;--line: #2a323a;--text: #e8ece8;--muted: #8b9690;--accent: #c4a574;--accent-2: #d9b882;--danger: #c45c4a;--ok: #7d9a6a;--warn: #c9a227;--shadow: 0 18px 40px rgba(0, 0, 0, .35);--radius: 12px;font-family:IBM Plex Sans,Segoe UI,sans-serif;color:var(--text);background:var(--bg)}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%}body{background:radial-gradient(1200px 500px at 10% -10%,rgba(196,165,116,.08),transparent 55%),var(--bg)}a{color:var(--accent);text-decoration:none}button,input,select,textarea{font:inherit;color:inherit}h1,h2,h3{font-weight:600;letter-spacing:-.02em}.mono{font-family:IBM Plex Mono,monospace}.muted{color:var(--muted)}.ok{color:var(--ok)}.danger{color:var(--danger)}.warn{color:var(--warn)}.shell{display:grid;grid-template-columns:240px 1fr;min-height:100vh}.side{border-right:1px solid var(--line);background:#101417;padding:22px 16px;display:flex;flex-direction:column;gap:18px}.brand{display:flex;flex-direction:column;gap:2px;padding:0 8px 12px}.brand strong{font-size:18px;letter-spacing:.04em;color:var(--accent)}.brand span{font-size:12px;color:var(--muted)}.nav{display:flex;flex-direction:column;gap:4px}.nav a{color:var(--text);padding:9px 12px;border-radius:8px}.nav a.active,.nav a:hover{background:#1c2329;color:var(--accent-2)}.side-foot{margin-top:auto;padding:8px;font-size:13px;color:var(--muted)}.main{padding:28px 36px 60px}.top{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:22px}.grid{display:grid;gap:16px}.grid.cols-3{grid-template-columns:repeat(3,1fr)}.grid.cols-2{grid-template-columns:1.4fr .8fr}.card{background:var(--bg-card);border:1px solid var(--line);border-radius:var(--radius);padding:18px;box-shadow:var(--shadow)}.stat{display:flex;flex-direction:column;gap:6px}.stat b{font-size:28px;color:var(--accent)}.table{width:100%;border-collapse:collapse;font-size:14px}.table th,.table td{text-align:left;padding:10px 8px;border-bottom:1px solid var(--line)}.table th{color:var(--muted);font-weight:500;font-size:12px;letter-spacing:.04em;text-transform:uppercase}.btn{border:1px solid var(--line);background:#22282e;padding:8px 12px;border-radius:8px;cursor:pointer}.btn:hover{border-color:var(--accent)}.btn.primary{background:var(--accent);color:#1a140c;border-color:transparent;font-weight:600}.btn.danger{background:#3a1f1c;color:#f0c2ba;border-color:#5c2e28}.btn:disabled{opacity:.5;cursor:not-allowed}.row{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.field{display:flex;flex-direction:column;gap:6px;margin-bottom:12px}.field label{font-size:12px;color:var(--muted);letter-spacing:.04em;text-transform:uppercase}.field input,.field select,.field textarea{background:#101417;border:1px solid var(--line);border-radius:8px;padding:10px 12px}.badge{display:inline-flex;padding:2px 8px;border-radius:99px;font-size:12px;border:1px solid var(--line);color:var(--muted)}.badge.ok{color:var(--ok);border-color:#33402c}.badge.warn{color:var(--warn);border-color:#4a3e14}.badge.danger{color:var(--danger);border-color:#5c2e28}.auth-wrap{min-height:100vh;display:grid;place-items:center;padding:24px}.auth-card{width:min(440px,100%)}.timeline{display:flex;flex-direction:column;gap:0}.t-item{display:grid;grid-template-columns:170px 16px 1fr;gap:12px;padding:8px 0}.t-dot{width:10px;height:10px;border-radius:50%;background:var(--accent);margin-top:6px;box-shadow:0 0 0 4px #2a2418}.flash{background:#2a1d14;border:1px solid #5a4630;color:#efd7b4;padding:10px 12px;border-radius:8px;margin-bottom:12px}.flash.ok{background:#1a2418;border-color:#33402c;color:#c5d6b8}.role-picks{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px;margin-bottom:16px}.role-pick{background:#101417;border:1px solid var(--line);border-radius:10px;padding:10px 8px;cursor:pointer;display:flex;flex-direction:column;gap:4px;text-align:left}.role-pick span{color:var(--muted);font-size:11px}.role-pick.on,.role-pick:hover{border-color:var(--accent)}.member-picks{display:flex;flex-direction:column;gap:8px}.member-pick{display:flex;gap:10px;align-items:flex-start;padding:8px 10px;border:1px solid var(--line);border-radius:8px;background:#101417;cursor:pointer}.member-pick.on{border-color:var(--accent)}.member-pick input{margin-top:3px}.qr{background:#fff;padding:10px;width:fit-content;border-radius:8px}@media (max-width: 960px){.shell{grid-template-columns:1fr}.side{flex-direction:row;flex-wrap:wrap}.grid.cols-3,.grid.cols-2{grid-template-columns:1fr}.main{padding:18px}}
