/* Kairali Gold — Admin Panel design tokens
   Source: 00-README.md §3. The Admin Panel intentionally looks different
   from the QR/website "certificate" motif — quieter, denser, utility-first,
   with a deep Palm-toned sidebar and Turmeric Gold reserved for primary
   actions/active states only. */
:root {
  --kg-gold: #B9791C;
  --kg-gold-deep: #8F5C11;
  --kg-laterite: #8C3B2E;
  --kg-palm: #1F4235;
  --kg-palm-light: #2A5747;
  --kg-parchment: #F6EEDA;
  --kg-ink: #241C12;
  --kg-verified: #1C7A4C;

  --kg-surface: #FFFFFF;
  --kg-surface-muted: #F7F6F3;
  --kg-border: #E4E0D6;
  --kg-text-muted: #6B6255;

  --kg-font-display: 'Fraunces', serif;
  --kg-font-body: 'Manrope', system-ui, sans-serif;
  --kg-font-mono: 'IBM Plex Mono', monospace;

  --kg-sidebar-width: 264px;
  --kg-topbar-height: 64px;
}

body.admin-body {
  font-family: var(--kg-font-body);
  background-color: var(--kg-surface-muted);
  color: var(--kg-ink);
}

/* ---------- Sidebar ---------- */
.kg-sidebar {
  width: var(--kg-sidebar-width);
  background-color: var(--kg-palm);
  color: #EFE9DA;
  min-height: 100vh;
}
.kg-sidebar .kg-logo {
  font-family: var(--kg-font-display);
  font-weight: 600;
  letter-spacing: .02em;
  color: #fff;
}
.kg-sidebar .nav-link {
  color: #C9D6CE;
  border-radius: .5rem;
  padding: .55rem .85rem;
  font-size: .92rem;
  font-weight: 500;
}
.kg-sidebar .nav-link:hover {
  color: #fff;
  background-color: var(--kg-palm-light);
}
.kg-sidebar .nav-link.active {
  color: var(--kg-ink);
  background-color: var(--kg-gold);
}
.kg-sidebar .nav-link i {
  width: 1.25rem;
  text-align: center;
  margin-right: .5rem;
}
.kg-sidebar .kg-group-label {
  color: #8CA394;
  font-size: .72rem;
  text-transform: uppercase;
  letter-spacing: .08em;
  padding: 1rem .85rem .25rem;
}

/* ---------- Topbar ---------- */
.kg-topbar {
  height: var(--kg-topbar-height);
  background-color: var(--kg-surface);
  border-bottom: 1px solid var(--kg-border);
}

/* ---------- Cards / KPI ---------- */
.kg-card {
  background-color: var(--kg-surface);
  border: 1px solid var(--kg-border);
  border-radius: .75rem;
}
.kg-kpi-icon {
  width: 44px;
  height: 44px;
  border-radius: .6rem;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: rgba(185, 121, 28, .12);
  color: var(--kg-gold-deep);
  font-size: 1.15rem;
}
.kg-kpi-value {
  font-family: var(--kg-font-display);
  font-size: 1.9rem;
  font-weight: 600;
}

/* ---------- Buttons ---------- */
.btn-kg-primary {
  background-color: var(--kg-gold);
  border-color: var(--kg-gold);
  color: #fff;
}
.btn-kg-primary:hover {
  background-color: var(--kg-gold-deep);
  border-color: var(--kg-gold-deep);
  color: #fff;
}
.btn-kg-danger {
  background-color: var(--kg-laterite);
  border-color: var(--kg-laterite);
  color: #fff;
}
.btn-kg-danger:hover {
  filter: brightness(.92);
  color: #fff;
}

/* ---------- Status badges ---------- */
.kg-badge-active, .kg-badge-published, .kg-badge-approved { background-color: rgba(28,122,76,.12); color: var(--kg-verified); }
.kg-badge-inactive, .kg-badge-draft { background-color: rgba(107,98,85,.12); color: var(--kg-text-muted); }
.kg-badge-pending { background-color: rgba(185,121,28,.14); color: var(--kg-gold-deep); }
.kg-badge-revoked, .kg-badge-suspended, .kg-badge-rejected { background-color: rgba(140,59,46,.12); color: var(--kg-laterite); }

/* ---------- Data table ---------- */
.kg-table thead th {
  font-size: .74rem;
  text-transform: uppercase;
  letter-spacing: .06em;
  color: var(--kg-text-muted);
  background-color: var(--kg-surface-muted);
  border-bottom: 1px solid var(--kg-border);
  white-space: nowrap;
}
.kg-table td { vertical-align: middle; }
.kg-sku { font-family: var(--kg-font-mono); font-size: .85rem; }

@media (prefers-reduced-motion: reduce) {
  * { animation-duration: 0.001ms !important; transition-duration: 0.001ms !important; }
}
