/* Tema administrativo alinhado à identidade VS Car. */
.admin-shell {
  --admin-bg: #0c0b08;
  --admin-surface: #15130e;
  --admin-surface-raised: #1b1811;
  --admin-border: rgba(242, 193, 78, .18);
  --admin-border-soft: rgba(255, 255, 255, .09);
  --admin-text: #f5f1e7;
  --admin-muted: #a7a093;
  background: var(--admin-bg);
  color: var(--admin-text);
}

.admin-shell .admin-topbar {
  background: #0a0907;
  border-bottom-color: rgba(242, 193, 78, .38);
  box-shadow: 0 8px 28px rgba(0, 0, 0, .3);
}

.admin-shell .admin-sidebar {
  position: sticky;
  top: 72px;
  align-self: flex-start;
  height: calc(100vh - 72px);
  max-height: calc(100vh - 72px);
  overflow-x: hidden;
  overflow-y: auto;
  background: linear-gradient(180deg, #12100c 0%, #0c0b08 100%);
  border-right-color: var(--admin-border-soft);
  scrollbar-color: #806529 transparent;
  scrollbar-width: thin;
}

.admin-shell .admin-sidebar::-webkit-scrollbar { width: 6px; }
.admin-shell .admin-sidebar::-webkit-scrollbar-track { background: transparent; }
.admin-shell .admin-sidebar::-webkit-scrollbar-thumb { background: #806529; border-radius: 20px; }

.admin-shell .sidebar-section { color: #777064; }
.admin-shell .sidebar-dev-label { color: #f2c14e; }
.admin-shell .sidebar-divider { background: var(--admin-border-soft); }

.admin-shell .admin-sidebar .admin-nav-link {
  color: #bdb6a8;
}

.admin-shell .admin-sidebar .admin-nav-link:hover {
  background: rgba(242, 193, 78, .08);
  border-color: rgba(242, 193, 78, .2);
  color: #fffaf0;
}

.admin-shell .admin-sidebar .admin-nav-link.active {
  background: linear-gradient(90deg, rgba(242, 193, 78, .22), rgba(242, 193, 78, .045));
  border-color: rgba(242, 193, 78, .38);
  box-shadow: inset 3px 0 0 #f2c14e, 0 8px 22px rgba(0, 0, 0, .12);
  color: #ffe18a;
}

.admin-shell .admin-sidebar .external-link { color: #a49c8d; }
.admin-shell .admin-content {
  background: radial-gradient(circle at 82% 0%, rgba(192, 145, 35, .08), transparent 28rem), #0c0b08;
}

.admin-shell .admin-page-header h1,
.admin-shell .admin-content h2,
.admin-shell .admin-content h3,
.admin-shell .admin-section-heading h2,
.admin-shell .table-card-header h2 {
  color: var(--admin-text);
}

.admin-shell .admin-page-header p,
.admin-shell .settings-description,
.admin-shell .settings-panel small {
  color: var(--admin-muted);
}

.admin-shell .admin-overview-banner {
  border-color: var(--admin-border);
  background: linear-gradient(105deg, #1b1811, #262015);
  box-shadow: 0 15px 38px rgba(0, 0, 0, .2);
}

.admin-shell .admin-stat-card,
.admin-shell .admin-quick-card,
.admin-shell .admin-table-card,
.admin-shell .settings-panel,
.admin-shell .admin-content .card {
  border-color: var(--admin-border-soft) !important;
  background: linear-gradient(145deg, rgba(28, 25, 17, .98), rgba(18, 16, 11, .98));
  box-shadow: 0 14px 34px rgba(0, 0, 0, .18);
  color: var(--admin-text);
}

.admin-shell .admin-stat-card strong,
.admin-shell .admin-quick-card,
.admin-shell .settings-switch strong {
  color: var(--admin-text);
}

.admin-shell .stat-label,
.admin-shell .admin-stat-card small,
.admin-shell .admin-quick-card small,
.admin-shell .empty-state,
.admin-shell .settings-switch p {
  color: var(--admin-muted) !important;
}

.admin-shell .admin-quick-card:hover {
  border-color: rgba(242, 193, 78, .5) !important;
  background: linear-gradient(145deg, #292315, #18140c);
  box-shadow: 0 16px 34px rgba(0, 0, 0, .3);
}

.admin-shell .table-card-header,
.admin-shell .settings-panel-heading {
  border-bottom-color: var(--admin-border-soft);
}

.admin-shell .admin-table-card table th { color: #a89d89; }
.admin-shell .admin-table-card table td { color: #c0b8aa; border-color: rgba(255, 255, 255, .07); }
.admin-shell .admin-table-card table tbody tr:hover { background: rgba(242, 193, 78, .05); }
.admin-shell .participant-cell a { color: #f4d277; }
.admin-shell .table-action,
.admin-shell .table-card-header > a { color: #f2c14e; }

.admin-shell .settings-panel-heading h2 { color: #fffaf0; }
.admin-shell .settings-panel-number { color: #f2c14e; }
.admin-shell .settings-panel .form-label { color: #d8d0c0; }

.admin-shell .settings-panel .form-control,
.admin-shell .settings-panel .form-select,
.admin-shell .admin-content .form-control,
.admin-shell .admin-content .form-select {
  border-color: #4a4130;
  background-color: #0d0d0b;
  color: #f6f1e6;
}

.admin-shell .settings-panel .form-control::placeholder,
.admin-shell .admin-content .form-control::placeholder { color: #756f63; }
.admin-shell .settings-panel .form-control:focus,
.admin-shell .settings-panel .form-select:focus,
.admin-shell .admin-content .form-control:focus,
.admin-shell .admin-content .form-select:focus {
  border-color: #f2c14e;
  box-shadow: 0 0 0 .2rem rgba(242, 193, 78, .14);
}

.admin-shell .settings-switch {
  border-color: var(--admin-border-soft);
  background: rgba(255, 255, 255, .035);
}

.admin-shell .form-check-input {
  background-color: #29251b;
  border-color: #6a5a36;
}

.admin-shell .form-check-input:checked {
  background-color: #c89b3c;
  border-color: #f2c14e;
}

.admin-shell .btn-primary,
.admin-shell .settings-actions .btn {
  border-color: #c89b3c;
  background: linear-gradient(135deg, #f2c14e, #c89b3c);
  color: #171108;
  font-weight: 800;
}

.admin-shell .btn-primary:hover,
.admin-shell .settings-actions .btn:hover {
  border-color: #ffe18a;
  background: linear-gradient(135deg, #ffe18a, #e0aa3e);
  color: #171108;
}

.admin-shell .alert-success {
  border-color: rgba(113, 214, 156, .35);
  background: rgba(35, 102, 65, .28);
  color: #baf1cb;
}

.admin-shell .alert-danger {
  border-color: rgba(255, 104, 87, .4);
  background: rgba(106, 35, 28, .3);
  color: #ffb4a9;
}

@media (max-width: 767px) {
  .admin-shell .admin-sidebar {
    top: 62px;
    height: calc(100vh - 62px);
    max-height: calc(100vh - 62px);
  }

  .admin-shell .admin-content { background: #0c0b08; }
}
