:root {
  --radius: 0.75rem;
  --background: oklch(0.98 0.005 100);
  --foreground: oklch(0.25 0.01 270);
  --card: oklch(1 0 0);
  --card-foreground: oklch(0.25 0.01 270);
  --popover: oklch(1 0 0);
  --popover-foreground: oklch(0.25 0.01 270);
  --primary: oklch(0.45 0 0);
  --primary-foreground: oklch(0.99 0 0);
  --secondary: oklch(0.95 0.01 100);
  --secondary-foreground: oklch(0.25 0.01 270);
  --muted: oklch(0.96 0.005 100);
  --muted-foreground: oklch(0.55 0.01 270);
  --accent: oklch(0.65 0.2 35);
  --accent-foreground: oklch(0.99 0 0);
  --destructive: oklch(0.577 0.245 27.325);
  --destructive-foreground: oklch(0.99 0 0);
  --border: oklch(0.9 0.01 100);
  --input: oklch(0.9 0.01 100);
  --ring: oklch(0.45 0 0);
}

@font-face {
  font-family: 'Geist';
  src: local('Geist'), local('-apple-system'), local('BlinkMacSystemFont');
  font-weight: 100 900;
  font-style: normal;
  font-display: swap;
}

body {
  font-family: 'Geist', ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, sans-serif;
}

/* Custom scrollbar to match webapp */
*::-webkit-scrollbar {
  width: 6px;
  height: 6px;
}
*::-webkit-scrollbar-track {
  background: transparent;
}
*::-webkit-scrollbar-thumb {
  background: var(--border);
  border-radius: 9999px;
}

/* Hide scrollbar utility (used by horizontal tab strips) */
.no-scrollbar::-webkit-scrollbar {
  display: none;
}
.no-scrollbar {
  -ms-overflow-style: none;
  scrollbar-width: none;
}

/* Hide default details marker so we can render our own chevron */
details > summary {
  list-style: none;
}
details > summary::-webkit-details-marker {
  display: none;
}

/* Rotate chevron when its own <details> opens (scoped to direct summary so nested
   <details> don't inherit the parent's rotation). */
details[open] > summary .chevron {
  transform: rotate(90deg);
}
.chevron {
  transition: transform 150ms ease;
}
details[open] > summary .chevron-down {
  transform: rotate(180deg);
}
.chevron-down {
  transition: transform 150ms ease;
}
