/* auth-admin dashboard — Iniciador internal design tokens.
   Pure black canvas, indigo primary, Geist, 8px radius. */
:root{
  --background: hsl(0 0% 0%); --card: hsl(0 0% 4%); --secondary: hsl(0 0% 7%);
  --muted: hsl(0 0% 9%); --muted-fg: hsl(0 0% 63%); --border: hsl(0 0% 12%);
  --border-bright: hsl(0 0% 17%); --primary: hsl(234 89% 74%); --destructive: hsl(0 84.2% 60.2%);
  --text: hsl(0 0% 93%); --radius: 8px;
}
body{ background: var(--background); color: var(--text); font-family: 'Geist', system-ui, sans-serif; font-size: 14px; margin: 0; }
#app{ display: grid; grid-template-columns: 220px 1fr; min-height: 100vh; }
.sidebar{ background: var(--card); border-right: 1px solid var(--border); padding: 12px 8px; }
.nav-item{ display:block; padding: 7px 10px; border-radius: var(--radius); color: var(--muted-fg); text-decoration: none; }
.nav-item.active{ background: hsl(234 89% 74% / .12); color: var(--primary); }
.nav-item.disabled{ color: hsl(0 0% 27%); pointer-events: none; }
.nav-label{ padding: 10px 10px 4px; font-size: 10px; letter-spacing: .08em; text-transform: uppercase; color: hsl(0 0% 40%); }
.brand{ font-family: 'Geist Mono', ui-monospace, monospace; font-weight: 600; font-size: 12px; padding: 6px 10px 12px; }
.topbar{ display:flex; align-items:center; gap:12px; padding: 10px 16px; border-bottom: 1px solid var(--border); }
.who{ font-weight: 500; }
#main{ padding: 16px; max-width: 900px; }
table{ width:100%; border-collapse: collapse; font-size: 12px; }
th,td{ text-align:left; padding: 8px 10px; border-bottom: 1px solid var(--border); }
input,textarea{ background: var(--card); border: 1px solid var(--input, var(--border)); border-radius: var(--radius); color: var(--text); padding: 7px 10px; }
button.primary{ background: var(--primary); color: hsl(0 0% 0%); border: 0; border-radius: 999px; font-weight: 600; padding: 7px 16px; cursor: pointer; }
button.ghost{ background: var(--secondary); color: var(--text); border: 1px solid var(--border); border-radius: 999px; padding: 5px 12px; cursor: pointer; }
.badge{ font-size: 10px; font-weight: 500; padding: 2px 8px; border-radius: 999px; border: 1px solid var(--border-bright); color: var(--muted-fg); }
.badge.super{ background: hsl(234 89% 74% / .12); border-color: hsl(234 89% 74% / .3); color: var(--primary); }
.err{ color: var(--destructive); font-size: 12px; }

/* components */
.searchbar{ display: flex; gap: 8px; margin-bottom: 16px; }
.searchbar input{ flex: 1; }
.create-user{ display: flex; gap: 8px; margin-bottom: 16px; }
.create-user input{ flex: 1; }
.muted{ color: var(--muted-fg); font-size: 12px; }
.card{ background: var(--card); border: 1px solid var(--border); border-radius: var(--radius); padding: 16px; }
.flash{ background: hsl(234 89% 74% / .12); border: 1px solid hsl(234 89% 74% / .3); color: var(--primary); border-radius: var(--radius); padding: 8px 12px; font-size: 12px; }
dl{ display: grid; grid-template-columns: max-content 1fr; gap: 6px 16px; font-size: 12px; }
dt{ color: var(--muted-fg); }
dd{ margin: 0; }
code{ font-family: 'Geist Mono', ui-monospace, monospace; font-size: 11px; }
form[action*="/claims"]{ margin: 16px 0; display: grid; gap: 8px; max-width: 640px; }
form[action*="/claims"] textarea{ font-family: 'Geist Mono', ui-monospace, monospace; width: 100%; resize: vertical; }
form[action*="/revoke"]{ margin-bottom: 16px; }
a.back{ color: var(--muted-fg); text-decoration: none; font-size: 12px; }
a.detail{ color: var(--primary); text-decoration: none; }
a.detail:hover{ text-decoration: underline; }

/* sign-in */
.signin{ display: grid; place-items: center; min-height: 100vh; }
.signin-card{ background: var(--card); border: 1px solid var(--border); border-radius: var(--radius); padding: 32px; width: 100%; max-width: 360px; display: grid; gap: 12px; }
.signin-card h1{ font-size: 20px; margin: 0; }
.signin-card .brand{ padding: 0; }
.signin-card input{ width: 100%; box-sizing: border-box; }
