/**
 * Jitter admin density layer — Phase 1 course-management pages
 * Tokens from getdesign.md/design-md/jitter (same as jitter-student.css)
 * Enabled with body.va-theme-jitter-app.va-theme-jitter-admin (sidemenu allowlist)
 * High-contrast mode is excluded so a11y-toolbar.css wins.
 */

/* ---------- Density tokens (admin) ---------- */
html:not([data-a11y-contrast="high"]) body.va-theme-jitter-app.va-theme-jitter-admin {
  --jt-admin-row-y: 0.5rem;
  --jt-admin-row-x: 0.75rem;
  --jt-admin-control-y: 0.5rem;
  --jt-admin-control-x: 0.75rem;
  --jt-admin-radius: 14px;
}

/* Main canvas: slightly tighter page padding feel */
html:not([data-a11y-contrast="high"]) body.va-theme-jitter-app.va-theme-jitter-admin main > section {
  background: transparent !important;
}

/* ---------- Cards / panels ---------- */
html:not([data-a11y-contrast="high"]) body.va-theme-jitter-app.va-theme-jitter-admin main .bg-white.rounded-2xl,
html:not([data-a11y-contrast="high"]) body.va-theme-jitter-app.va-theme-jitter-admin main .bg-white.rounded-xl {
  border-color: var(--jt-border) !important;
  box-shadow: var(--jt-shadow-sm);
  border-radius: var(--jt-admin-radius) !important;
}

/* ---------- Primary / secondary buttons (map sky → Jitter CTA) ---------- */
html:not([data-a11y-contrast="high"]) body.va-theme-jitter-app.va-theme-jitter-admin main button.bg-sky-500,
html:not([data-a11y-contrast="high"]) body.va-theme-jitter-app.va-theme-jitter-admin main a.bg-sky-500,
html:not([data-a11y-contrast="high"]) body.va-theme-jitter-app.va-theme-jitter-admin main .bg-sky-500 {
  background-color: var(--jt-brand) !important;
  color: var(--jt-ink) !important;
  border-radius: 9999px;
  font-weight: 600;
}
html:not([data-a11y-contrast="high"]) body.va-theme-jitter-app.va-theme-jitter-admin main button.bg-sky-500:hover,
html:not([data-a11y-contrast="high"]) body.va-theme-jitter-app.va-theme-jitter-admin main a.bg-sky-500:hover,
html:not([data-a11y-contrast="high"]) body.va-theme-jitter-app.va-theme-jitter-admin main .hover\:bg-sky-600:hover,
html:not([data-a11y-contrast="high"]) body.va-theme-jitter-app.va-theme-jitter-admin main button.bg-sky-600,
html:not([data-a11y-contrast="high"]) body.va-theme-jitter-app.va-theme-jitter-admin main .bg-sky-600 {
  background-color: var(--jt-brand-hover) !important;
  color: var(--jt-ink) !important;
}

html:not([data-a11y-contrast="high"]) body.va-theme-jitter-app.va-theme-jitter-admin main button.bg-violet-600,
html:not([data-a11y-contrast="high"]) body.va-theme-jitter-app.va-theme-jitter-admin main .bg-violet-600 {
  background-color: var(--jt-ink) !important;
  color: #fff !important;
  border-radius: 9999px;
  font-weight: 600;
}
html:not([data-a11y-contrast="high"]) body.va-theme-jitter-app.va-theme-jitter-admin main button.bg-violet-600:hover,
html:not([data-a11y-contrast="high"]) body.va-theme-jitter-app.va-theme-jitter-admin main .hover\:bg-violet-700:hover {
  background-color: #2a2730 !important;
}

html:not([data-a11y-contrast="high"]) body.va-theme-jitter-app.va-theme-jitter-admin main button.bg-violet-50,
html:not([data-a11y-contrast="high"]) body.va-theme-jitter-app.va-theme-jitter-admin main .bg-violet-50 {
  background-color: var(--jt-accent-soft) !important;
  color: var(--jt-ink) !important;
  border-color: #d9c8ff !important;
}
html:not([data-a11y-contrast="high"]) body.va-theme-jitter-app.va-theme-jitter-admin main .hover\:bg-violet-100:hover {
  background-color: #ebe3ff !important;
}
html:not([data-a11y-contrast="high"]) body.va-theme-jitter-app.va-theme-jitter-admin main .text-violet-900,
html:not([data-a11y-contrast="high"]) body.va-theme-jitter-app.va-theme-jitter-admin main .text-violet-700,
html:not([data-a11y-contrast="high"]) body.va-theme-jitter-app.va-theme-jitter-admin main .text-violet-600 {
  color: var(--jt-accent) !important;
}
html:not([data-a11y-contrast="high"]) body.va-theme-jitter-app.va-theme-jitter-admin main .border-violet-200,
html:not([data-a11y-contrast="high"]) body.va-theme-jitter-app.va-theme-jitter-admin main .border-violet-300 {
  border-color: #d9c8ff !important;
}

/* Secondary / cancel */
html:not([data-a11y-contrast="high"]) body.va-theme-jitter-app.va-theme-jitter-admin main button.bg-slate-100,
html:not([data-a11y-contrast="high"]) body.va-theme-jitter-app.va-theme-jitter-admin main .bg-slate-100 {
  background-color: #eceaef !important;
  color: var(--jt-ink) !important;
  border-radius: 9999px;
}
html:not([data-a11y-contrast="high"]) body.va-theme-jitter-app.va-theme-jitter-admin main .hover\:bg-slate-200:hover {
  background-color: #e2e0e6 !important;
}

/* Compact control padding for common action buttons in toolbars */
html:not([data-a11y-contrast="high"]) body.va-theme-jitter-app.va-theme-jitter-admin main .inline-flex.items-center.gap-1\.5.px-3.py-2,
html:not([data-a11y-contrast="high"]) body.va-theme-jitter-app.va-theme-jitter-admin main .inline-flex.items-center.gap-1\.5.px-3.py-2\.5 {
  padding-top: var(--jt-admin-control-y);
  padding-bottom: var(--jt-admin-control-y);
  padding-left: var(--jt-admin-control-x);
  padding-right: var(--jt-admin-control-x);
}

/* ---------- Forms ---------- */
html:not([data-a11y-contrast="high"]) body.va-theme-jitter-app.va-theme-jitter-admin main input[type="text"],
html:not([data-a11y-contrast="high"]) body.va-theme-jitter-app.va-theme-jitter-admin main input[type="search"],
html:not([data-a11y-contrast="high"]) body.va-theme-jitter-app.va-theme-jitter-admin main input[type="number"],
html:not([data-a11y-contrast="high"]) body.va-theme-jitter-app.va-theme-jitter-admin main input[type="email"],
html:not([data-a11y-contrast="high"]) body.va-theme-jitter-app.va-theme-jitter-admin main input[type="url"],
html:not([data-a11y-contrast="high"]) body.va-theme-jitter-app.va-theme-jitter-admin main input[type="password"],
html:not([data-a11y-contrast="high"]) body.va-theme-jitter-app.va-theme-jitter-admin main select,
html:not([data-a11y-contrast="high"]) body.va-theme-jitter-app.va-theme-jitter-admin main textarea {
  border-color: var(--jt-border) !important;
  border-radius: 12px !important;
  color: var(--jt-ink);
  padding-top: var(--jt-admin-control-y);
  padding-bottom: var(--jt-admin-control-y);
}
html:not([data-a11y-contrast="high"]) body.va-theme-jitter-app.va-theme-jitter-admin main input:focus,
html:not([data-a11y-contrast="high"]) body.va-theme-jitter-app.va-theme-jitter-admin main select:focus,
html:not([data-a11y-contrast="high"]) body.va-theme-jitter-app.va-theme-jitter-admin main textarea:focus {
  border-color: var(--jt-accent) !important;
  box-shadow: 0 0 0 3px rgba(122, 64, 237, 0.18);
  outline: none;
}

/* Toggle track (course required etc.) */
html:not([data-a11y-contrast="high"]) body.va-theme-jitter-app.va-theme-jitter-admin .toggle-wrap input:checked + .toggle-track {
  background-color: var(--jt-accent) !important;
}

/* ---------- Tables (denser) ---------- */
html:not([data-a11y-contrast="high"]) body.va-theme-jitter-app.va-theme-jitter-admin main table {
  border-color: var(--jt-border);
}
html:not([data-a11y-contrast="high"]) body.va-theme-jitter-app.va-theme-jitter-admin main thead,
html:not([data-a11y-contrast="high"]) body.va-theme-jitter-app.va-theme-jitter-admin main thead.bg-slate-50 {
  background-color: #f7f5f9 !important;
}
html:not([data-a11y-contrast="high"]) body.va-theme-jitter-app.va-theme-jitter-admin main thead th {
  color: var(--jt-muted) !important;
  font-weight: 600;
  font-size: 0.75rem;
  letter-spacing: 0.02em;
  text-transform: none;
  padding-top: 0.55rem !important;
  padding-bottom: 0.55rem !important;
  padding-left: var(--jt-admin-row-x) !important;
  padding-right: var(--jt-admin-row-x) !important;
  border-bottom-color: var(--jt-border) !important;
}
html:not([data-a11y-contrast="high"]) body.va-theme-jitter-app.va-theme-jitter-admin main tbody td {
  padding-top: var(--jt-admin-row-y) !important;
  padding-bottom: var(--jt-admin-row-y) !important;
  padding-left: var(--jt-admin-row-x) !important;
  padding-right: var(--jt-admin-row-x) !important;
  border-bottom-color: var(--jt-border) !important;
  color: var(--jt-ink);
  font-size: 0.875rem;
  line-height: 1.35;
}
html:not([data-a11y-contrast="high"]) body.va-theme-jitter-app.va-theme-jitter-admin main tbody tr:hover {
  background-color: rgba(242, 236, 255, 0.55);
}

/* ---------- Course dropdown (shared across course-* pages) ---------- */
html:not([data-a11y-contrast="high"]) body.va-theme-jitter-app.va-theme-jitter-admin #course-menu-dropdown,
html:not([data-a11y-contrast="high"]) body.va-theme-jitter-app.va-theme-jitter-admin [id$="-menu-dropdown"] {
  border-color: var(--jt-border) !important;
  box-shadow: var(--jt-shadow-sm);
  border-radius: 14px;
}
html:not([data-a11y-contrast="high"]) body.va-theme-jitter-app.va-theme-jitter-admin #course-menu-dropdown a,
html:not([data-a11y-contrast="high"]) body.va-theme-jitter-app.va-theme-jitter-admin [role="menuitem"] {
  border-radius: 10px;
  margin: 0 0.25rem;
}
html:not([data-a11y-contrast="high"]) body.va-theme-jitter-app.va-theme-jitter-admin #course-menu-dropdown a:hover,
html:not([data-a11y-contrast="high"]) body.va-theme-jitter-app.va-theme-jitter-admin [role="menuitem"]:hover {
  background-color: var(--jt-accent-soft) !important;
}
html:not([data-a11y-contrast="high"]) body.va-theme-jitter-app.va-theme-jitter-admin #course-menu-dropdown a[aria-current="page"],
html:not([data-a11y-contrast="high"]) body.va-theme-jitter-app.va-theme-jitter-admin [role="menuitem"][aria-current="page"],
html:not([data-a11y-contrast="high"]) body.va-theme-jitter-app.va-theme-jitter-admin a.bg-violet-50.font-medium {
  background-color: var(--jt-ink) !important;
  color: #fff !important;
}
html:not([data-a11y-contrast="high"]) body.va-theme-jitter-app.va-theme-jitter-admin a.bg-violet-50.font-medium i {
  color: var(--jt-brand) !important;
}

/* ---------- Modals / dialogs on these pages ---------- */
html:not([data-a11y-contrast="high"]) body.va-theme-jitter-app.va-theme-jitter-admin #course-modal .bg-white,
html:not([data-a11y-contrast="high"]) body.va-theme-jitter-app.va-theme-jitter-admin [id$="-modal"] .bg-white.rounded-2xl,
html:not([data-a11y-contrast="high"]) body.va-theme-jitter-app.va-theme-jitter-admin [id$="-modal"] .bg-white.rounded-xl {
  border-radius: 18px !important;
  border: 1px solid var(--jt-border);
  box-shadow: var(--jt-shadow);
}

/* Content-type picker hover */
html:not([data-a11y-contrast="high"]) body.va-theme-jitter-app.va-theme-jitter-admin main .hover\:border-sky-400:hover {
  border-color: var(--jt-accent) !important;
}
html:not([data-a11y-contrast="high"]) body.va-theme-jitter-app.va-theme-jitter-admin main .hover\:bg-sky-50\/50:hover,
html:not([data-a11y-contrast="high"]) body.va-theme-jitter-app.va-theme-jitter-admin main .hover\:bg-sky-50:hover {
  background-color: var(--jt-accent-soft) !important;
}
html:not([data-a11y-contrast="high"]) body.va-theme-jitter-app.va-theme-jitter-admin main .bg-sky-100 {
  background-color: var(--jt-accent-soft) !important;
}
html:not([data-a11y-contrast="high"]) body.va-theme-jitter-app.va-theme-jitter-admin main .text-sky-600 {
  color: var(--jt-accent) !important;
}

/* Page headings */
html:not([data-a11y-contrast="high"]) body.va-theme-jitter-app.va-theme-jitter-admin main h2 {
  letter-spacing: -0.01em;
  font-weight: 700;
}
html:not([data-a11y-contrast="high"]) body.va-theme-jitter-app.va-theme-jitter-admin main h2 > i {
  color: var(--jt-accent) !important;
}
