/* Admin theme layer.
   Existing admin page CSS owns layout; this file normalizes dark/light surfaces. */

body[class*="page-admin"],
body[class*="page-auth"] {
  --admin-page-bg: var(--bg);
  --admin-card-bg: var(--card);
  --admin-card-border: var(--border);
  --admin-card-shadow: var(--shadow-lg);
  --admin-panel-bg: var(--surface-2);
  --admin-panel-border: var(--border);
  --admin-row-bg: var(--surface-2);
  --admin-row-hover-bg: var(--surface);
  --admin-input-bg: var(--surface-2);
  --admin-input-border: var(--border-2);
  --admin-text: var(--fg);
  --admin-muted: var(--muted);
  --admin-label: var(--label);
  --admin-chip-bg: var(--surface);
  --admin-chip-border: var(--border);
  --admin-primary-bg: var(--btn-primary-bg);
  --admin-primary-text: var(--btn-primary-text);
  --admin-danger-bg: var(--status-bad-bg);
  --admin-danger-border: var(--status-bad-border);
  --admin-danger-text: var(--status-bad-text);
}

html[data-theme="light"] body[class*="page-admin"],
html[data-theme="light"] body[class*="page-auth"] {
  --admin-page-bg: #eef2f7;
  --admin-card-bg: #ffffff;
  --admin-card-border: #a8b5c7;
  --admin-card-shadow: 0 14px 34px rgba(15, 23, 42, .14);
  --admin-panel-bg: #f8fafc;
  --admin-panel-border: #b8c4d4;
  --admin-row-bg: #ffffff;
  --admin-row-hover-bg: #e4edf7;
  --admin-input-bg: #ffffff;
  --admin-input-border: #94a3b8;
  --admin-text: #0b1324;
  --admin-muted: #334155;
  --admin-label: #1e293b;
  --admin-chip-bg: #e4edf7;
  --admin-chip-border: #b8c4d4;
  --admin-primary-bg: #2563eb;
  --admin-primary-text: #ffffff;
}

body[class*="page-admin"],
body[class*="page-auth"] {
  background: var(--admin-page-bg);
  color: var(--admin-text);
}

body[class*="page-admin"] .container,
body[class*="page-auth"] .container {
  color: var(--admin-text);
}

body[class*="page-admin"] .card,
body[class*="page-admin"] .competitions-admin-page,
body[class*="page-admin"] .users-admin-page,
body[class*="page-admin"] .officials-card,
body[class*="page-admin"] .club-row-card,
body[class*="page-admin"] .pilot-card,
body[class*="page-admin"] .team-list-item,
body[class*="page-admin"] .team-assign-item,
body[class*="page-admin"] .comp-pilot-item,
body[class*="page-admin"] .comp-pilot-list,
body[class*="page-admin"] .modal,
body[class*="page-admin"] .dialog,
body[class*="page-auth"] .auth-card,
body[class*="page-auth"] .card {
  background: var(--admin-card-bg) !important;
  border-color: var(--admin-card-border) !important;
  color: var(--admin-text) !important;
  box-shadow: var(--admin-card-shadow);
}

body[class*="page-admin"] form,
body[class*="page-admin"] .officials-form,
body[class*="page-admin"] .officials-competition-form,
body[class*="page-admin"] .comp-pilot-form-row,
body[class*="page-admin"] .team-list-header,
body[class*="page-admin"] .team-assign-header,
body[class*="page-admin"] .admin-panel,
body[class*="page-admin"] .filters,
body[class*="page-admin"] .filter-card,
body[class*="page-admin"] .round-card,
body[class*="page-admin"] .judge-card {
  background: var(--admin-panel-bg) !important;
  border-color: var(--admin-panel-border) !important;
  color: var(--admin-text) !important;
}

body[class*="page-admin"] h1,
body[class*="page-admin"] h2,
body[class*="page-admin"] h3,
body[class*="page-admin"] h4,
body[class*="page-admin"] p,
body[class*="page-admin"] td,
body[class*="page-admin"] th,
body[class*="page-admin"] label,
body[class*="page-auth"] h1,
body[class*="page-auth"] h2,
body[class*="page-auth"] p,
body[class*="page-auth"] label {
  color: var(--admin-text);
}

body[class*="page-admin"] small,
body[class*="page-admin"] .muted,
body[class*="page-admin"] .hint,
body[class*="page-admin"] .help,
body[class*="page-admin"] .meta,
body[class*="page-admin"] .subtitle,
body[class*="page-admin"] .empty,
body[class*="page-auth"] small,
body[class*="page-auth"] .muted,
body[class*="page-auth"] .auth-subtitle {
  color: var(--admin-muted) !important;
}

body[class*="page-admin"] input:not([type="checkbox"]):not([type="radio"]),
body[class*="page-admin"] select,
body[class*="page-admin"] textarea,
body[class*="page-auth"] input:not([type="checkbox"]):not([type="radio"]),
body[class*="page-auth"] select,
body[class*="page-auth"] textarea {
  background: var(--admin-input-bg) !important;
  border-color: var(--admin-input-border) !important;
  color: var(--admin-text) !important;
  -webkit-text-fill-color: var(--admin-text) !important;
  caret-color: var(--admin-text) !important;
}

body[class*="page-admin"] input::placeholder,
body[class*="page-admin"] textarea::placeholder,
body[class*="page-auth"] input::placeholder,
body[class*="page-auth"] textarea::placeholder {
  color: var(--admin-muted) !important;
  -webkit-text-fill-color: var(--admin-muted) !important;
}

body[class*="page-admin"] input:focus,
body[class*="page-admin"] select:focus,
body[class*="page-admin"] textarea:focus,
body[class*="page-auth"] input:focus,
body[class*="page-auth"] select:focus,
body[class*="page-auth"] textarea:focus {
  border-color: var(--accent) !important;
  box-shadow: var(--focus-ring) !important;
}

body[class*="page-admin"] table,
body[class*="page-admin"] .table,
body[class*="page-admin"] .officials-table {
  background: var(--admin-card-bg);
  color: var(--admin-text);
}

body[class*="page-admin"] tr,
body[class*="page-admin"] .row-card,
body[class*="page-admin"] .list-row,
body[class*="page-admin"] .club-row-card,
body[class*="page-admin"] .team-list-item,
body[class*="page-admin"] .team-assign-item {
  border-color: var(--admin-card-border) !important;
}

body[class*="page-admin"] tbody tr:hover,
body[class*="page-admin"] .row-card:hover,
body[class*="page-admin"] .list-row:hover {
  background: var(--admin-row-hover-bg) !important;
}

body[class*="page-admin"] .badge,
body[class*="page-admin"] .pill,
body[class*="page-admin"] .tag,
body[class*="page-admin"] .chip,
body[class*="page-admin"] .status,
body[class*="page-admin"] .club-logo-empty {
  background: var(--admin-chip-bg) !important;
  border-color: var(--admin-chip-border) !important;
  color: var(--admin-text) !important;
}

body[class*="page-admin"] .btn,
body[class*="page-auth"] .btn {
  background: var(--btn-bg) !important;
  border: 1px solid var(--btn-border) !important;
  color: var(--btn-text) !important;
  -webkit-text-fill-color: var(--btn-text) !important;
}

body[class*="page-admin"] .btn.active,
body[class*="page-admin"] .btn-primary,
body[class*="page-admin"] .tabbar .btn.active,
body[class*="page-auth"] .btn-primary,
body[class*="page-auth"] input[type="submit"] {
  background: var(--admin-primary-bg) !important;
  border-color: var(--admin-primary-bg) !important;
  color: var(--admin-primary-text) !important;
  -webkit-text-fill-color: var(--admin-primary-text) !important;
}

body[class*="page-admin"] .btn-danger,
body[class*="page-admin"] .btn-danger-soft,
body[class*="page-admin"] .danger,
body[class*="page-auth"] .app-flash-error {
  background: var(--admin-danger-bg) !important;
  border-color: var(--admin-danger-border) !important;
  color: var(--admin-danger-text) !important;
}

body[class*="page-admin"] .overlay,
body[class*="page-admin"] .modal-backdrop {
  background: rgba(15, 23, 42, .28) !important;
}

html[data-theme="light"] body[class*="page-admin"] input:-webkit-autofill,
html[data-theme="light"] body[class*="page-admin"] input:-webkit-autofill:hover,
html[data-theme="light"] body[class*="page-admin"] input:-webkit-autofill:focus,
html[data-theme="light"] body[class*="page-auth"] input:-webkit-autofill,
html[data-theme="light"] body[class*="page-auth"] input:-webkit-autofill:hover,
html[data-theme="light"] body[class*="page-auth"] input:-webkit-autofill:focus {
  -webkit-box-shadow: 0 0 0 1000px var(--admin-input-bg) inset !important;
  -webkit-text-fill-color: var(--admin-text) !important;
}
