:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--ground:#10151c;--panel:#18202a;--panel-2:#1f2833;--line:#2b3745;--text:#e6edf5;--muted:#9aabbc;--faint:#6d7f91;--accent:#e0a33a;--accent-soft:#3a2f18;--good:#45c17d;--good-soft:#16311f;--warn:#e0a33a;--warn-soft:#3a2f18;--crit:#f0616f;--crit-soft:#3a1c22;--mono:ui-monospace, "SF Mono", Menlo, Consolas, monospace;--sans:"Hiragino Kaku Gothic ProN", "Hiragino Sans", "Noto Sans JP", system-ui, -apple-system, "Segoe UI", sans-serif;--radius:10px}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--ground);color:var(--text);font-family:var(--sans);-webkit-font-smoothing:antialiased;font-size:14px;line-height:1.7}a{color:var(--accent)}.mono{font-family:var(--mono);font-variant-numeric:tabular-nums}header{background:var(--panel);border-bottom:1px solid var(--line);z-index:10;align-items:center;gap:18px;padding:13px 22px;display:flex;position:sticky;top:0}.brand{align-items:center;gap:10px;display:flex}.brand .logo{background:var(--accent);color:#1a1206;border-radius:8px;place-items:center;width:32px;height:32px;font-size:17px;font-weight:700;display:grid}.brand b{font-size:16px}.brand span{color:var(--faint);font-size:13px;display:block}nav{gap:4px;display:flex}nav a{color:var(--muted);border-radius:8px;padding:7px 13px;font-weight:600;text-decoration:none}nav a:hover{background:var(--panel-2);color:var(--text)}nav a.on{background:var(--accent-soft);color:var(--accent)}.spacer{flex:1}.who{color:var(--muted);font-size:13px}.who b{color:var(--text)}main{max-width:1100px;margin:0 auto;padding:22px}h1{margin:0 0 4px;font-size:19px}h2{margin:22px 0 10px;font-size:15px}.sub{color:var(--faint);margin:0 0 18px}.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);margin-bottom:16px;padding:18px}table{border-collapse:collapse;width:100%}th,td{text-align:left;border-bottom:1px solid var(--line);padding:10px 12px}th{color:var(--faint);text-transform:uppercase;letter-spacing:.04em;font-size:12px;font-weight:600}tr:last-child td{border-bottom:none}.pill{border-radius:999px;padding:2px 10px;font-size:12px;font-weight:700;display:inline-block}.pill.active{background:var(--good-soft);color:var(--good)}.pill.suspended{background:var(--crit-soft);color:var(--crit)}.pill.role{background:var(--accent-soft);color:var(--accent)}button,.btn{font:inherit;border:1px solid var(--line);background:var(--panel-2);color:var(--text);cursor:pointer;border-radius:8px;padding:8px 14px;font-weight:600}button:hover:not(:disabled){border-color:var(--accent)}button:disabled{opacity:.45;cursor:not-allowed}button.primary{background:var(--accent);border-color:var(--accent);color:#1a1206}button.danger{color:var(--crit)}button.danger:hover:not(:disabled){border-color:var(--crit)}button.link{color:var(--accent);background:0 0;border:none;padding:0}label{color:var(--muted);margin:12px 0 4px;font-size:13px;display:block}input,textarea,select{width:100%;font:inherit;border:1px solid var(--line);background:var(--ground);color:var(--text);border-radius:8px;padding:9px 11px}input:focus,textarea:focus{border-color:var(--accent);outline:none}.hint{color:var(--faint);margin-top:4px;font-size:12px}.banner{border-radius:8px;margin:12px 0;padding:11px 14px;font-weight:600}.banner.err{background:var(--crit-soft);color:var(--crit)}.banner.ok{background:var(--good-soft);color:var(--good)}.banner.warn{background:var(--warn-soft);color:var(--warn)}.impbar{z-index:20;background:var(--warn);color:#241a06;align-items:center;gap:14px;padding:10px 22px;font-weight:700;display:flex;position:sticky;top:0}.impbar .remain{font-family:var(--mono);font-weight:600}.impbar .spacer{flex:1}.impbar button{color:#241a06;background:#0000002e;border-color:#00000040}.loginwrap{place-items:center;min-height:100vh;padding:20px;display:grid}.loginbox{background:var(--panel);border:1px solid var(--line);border-radius:14px;width:100%;max-width:380px;padding:26px}.loginbox h1{margin-bottom:14px}.stats{flex-wrap:wrap;gap:14px;display:flex}.stat{background:var(--panel-2);border-radius:8px;flex:1;min-width:120px;padding:13px 15px}.stat .n{font-size:22px;font-weight:700;font-family:var(--mono)}.stat .k{color:var(--faint);font-size:12px}.row{flex-wrap:wrap;align-items:flex-end;gap:10px;display:flex}.row>*{flex:1}.row>button{flex:none}.tokenbox{font-family:var(--mono);word-break:break-all;background:var(--ground);border:1px solid var(--line);border-radius:8px;margin-top:8px;padding:10px;font-size:12px}
