*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--bg:#0e1118;--surface:#171c28;--surface-raised:#1f2535;--border:#2c3348;--accent:#c8a050;--accent-hover:#dbb86a;--text:#e6dfd0;--text-muted:#7a8299;--danger:#b85555;--danger-hover:#c66;--radius:6px;--radius-sm:4px}body{background:var(--bg);color:var(--text);min-height:100vh;font-family:system-ui,-apple-system,Segoe UI,sans-serif;line-height:1.5}input,select{background:var(--surface-raised);color:var(--text);border:1px solid var(--border);border-radius:var(--radius-sm);font:inherit;outline:none;padding:7px 10px;font-size:.875rem;transition:border-color .15s}input:focus,select:focus{border-color:var(--accent)}input::placeholder{color:var(--text-muted)}select option{background:var(--surface-raised)}input[type=checkbox]{width:auto;accent-color:var(--accent)}button{cursor:pointer;border-radius:var(--radius-sm);font:inherit;white-space:nowrap;border:1px solid #0000;padding:7px 16px;font-size:.875rem;font-weight:500;transition:background .15s,border-color .15s,color .15s}button:disabled{opacity:.4;cursor:not-allowed}.btn-primary{background:var(--accent);color:#0e1118}.btn-primary:not(:disabled):hover{background:var(--accent-hover)}a.btn-ghost{border-radius:var(--radius-sm);white-space:nowrap;border:1px solid #0000;padding:7px 16px;font-size:.875rem;font-weight:500;text-decoration:none;transition:background .15s,border-color .15s,color .15s;display:inline-block}.btn-ghost{color:var(--text-muted);border-color:var(--border);background:0 0}.btn-ghost:hover{color:var(--text);border-color:var(--text-muted)}.btn-danger{color:var(--danger);border-color:var(--danger);background:0 0;padding:4px 10px;font-size:.8rem}.btn-danger:hover{background:var(--danger);color:#fff}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius)}.page{max-width:1100px;margin:0 auto;padding:0 24px 64px}.page-header{background:var(--surface);border-bottom:1px solid var(--border);align-items:center;gap:12px;margin-bottom:32px;padding:14px 24px;display:flex}.page-header .brand{color:var(--accent);letter-spacing:.02em;margin-right:auto;font-size:1rem;font-weight:600}table{border-collapse:collapse;width:100%;font-size:.875rem}th{text-align:left;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;border-bottom:1px solid var(--border);padding:10px 14px;font-size:.75rem;font-weight:500}td{border-bottom:1px solid var(--border);padding:10px 14px}tbody tr:last-child td{border-bottom:none}tbody tr:hover{background:var(--surface-raised)}a{color:var(--accent);cursor:pointer;text-decoration:none}a:hover{text-decoration:underline}.error{color:var(--danger);font-size:.85rem}@media (width<=640px){.page{padding:0 16px 48px}}
