:root {
  /* Swiss Style - Clean, Trustworthy, Professional */
  --background: #F0FDFA; /* Very light teal/mint background */
  --foreground: #134E4A; /* Deep teal text */

  --card: #FFFFFF;
  --card-foreground: #134E4A;

  --popover: #FFFFFF;
  --popover-foreground: #134E4A;

  --primary: #0F766E; /* Tez teal */
  --primary-foreground: #FFFFFF;

  --secondary: #14B8A6; /* Accents */
  --secondary-foreground: #FFFFFF;

  --muted: #F8FAFC; /* Slate 50 */
  --muted-foreground: #64748B; /* Slate 500 */

  --accent: #CCFBF1; /* Light teal accent */
  --accent-foreground: #0F766E;

  --destructive: #EF4444;
  --destructive-foreground: #FFFFFF;

  --border: #E2E8F0; /* Slate 200 - Soft borders */
  --input: #E2E8F0;
  --ring: #0F766E;

  --radius: 0.5rem;
}

.dark {
  /* Dark Mode - Deep Navy & Teal */
  --background: #020617; /* Slate 950 */
  --foreground: #F0FDFA;

  --card: #0F172A; /* Slate 900 */
  --card-foreground: #F0FDFA;

  --popover: #0F172A;
  --popover-foreground: #F0FDFA;

  --primary: #2DD4BF; /* Brighter teal for dark mode */
  --primary-foreground: #020617;

  --secondary: #0D9488;
  --secondary-foreground: #FFFFFF;

  --muted: #1E293B; /* Slate 800 */
  --muted-foreground: #94A3B8; /* Slate 400 */

  --accent: #115E59; /* Dark teal accent */
  --accent-foreground: #F0FDFA;

  --destructive: #7F1D1D;
  --destructive-foreground: #F0FDFA;

  --border: #1E293B;
  --input: #1E293B;
  --ring: #2DD4BF;
}

@keyframes accordion-down {
  from { height: 0; }
  to { height: var(--radix-accordion-content-height); }
}
@keyframes accordion-up {
  from { height: var(--radix-accordion-content-height); }
  to { height: 0; }
}

body {
    background-color: var(--background);
    color: var(--foreground);
    font-family: 'Lato', sans-serif;
}

h1, h2, h3, h4, h5, h6 {
    font-family: 'EB Garamond', serif;
}

/* Base style resets if needed override Tailwind defaults */
input, textarea {
    outline: none;
}
