/* Theme: orchestrator (orchestrator) */
/* A comfortable, light-infused dashboard system combining precise cool-green actions with soft, whimsical shadow dimensions. */

@tailwind base;
@tailwind components;
@tailwind utilities;

@import url("https://fonts.googleapis.com/css2?family=Source+Serif+4:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Inter:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap");
@import url("https://fonts.googleapis.com/css2?family=JetBrains+Mono:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap");

@layer base {
  :root {
    /* The primary neutral range anchored to the deep slate tones of the workspace. */
    --palette-neutral-100: #FAFAFA;
    --palette-neutral-150: #F9F9F9;
    --palette-neutral-200: #F4F4F4;
    --palette-neutral-250: #ECECEC;
    --palette-neutral-300: #E1E1E1;
    --palette-neutral-350: #D3D3D3;
    --palette-neutral-400: #C1C1C1;
    --palette-neutral-450: #ACACAC;
    --palette-neutral-500: #949494;
    --palette-neutral-550: #787878;
    --palette-neutral-600: #5F5F5F;
    --palette-neutral-650: #4A4A4A;
    --palette-neutral-700: #383838;
    --palette-neutral-750: #2B2B2B;
    --palette-neutral-800: #212121;
    --palette-neutral-850: #1B1B1B;
    --palette-neutral-900: #1A1A1A;
    /* A professional and calming cool-green brand primary. */
    --palette-brand-100: #F3FCFB;
    --palette-brand-150: #EFFCF9;
    --palette-brand-200: #E3F9F5;
    --palette-brand-250: #D1F5EE;
    --palette-brand-300: #B6F0E5;
    --palette-brand-350: #95E9D8;
    --palette-brand-400: #6BE0C9;
    --palette-brand-450: #3BD5B7;
    --palette-brand-500: #24A78E;
    --palette-brand-550: #1D8772;
    --palette-brand-600: #176B5B;
    --palette-brand-650: #125447;
    --palette-brand-700: #0D4036;
    --palette-brand-750: #0A3129;
    --palette-brand-800: #082620;
    --palette-brand-850: #06201B;
    --palette-brand-900: #061E19;
    --palette-danger-100: #FEF9F9;
    --palette-danger-150: #FEF7F7;
    --palette-danger-200: #FCF1F1;
    --palette-danger-250: #FBE6E6;
    --palette-danger-300: #F8D7D7;
    --palette-danger-350: #F4C5C5;
    --palette-danger-400: #EFAEAE;
    --palette-danger-450: #E99393;
    --palette-danger-500: #E27474;
    --palette-danger-550: #D83D3D;
    --palette-danger-600: #B82424;
    --palette-danger-650: #911C1C;
    --palette-danger-700: #701515;
    --palette-danger-750: #571010;
    --palette-danger-800: #450C0C;
    --palette-danger-850: #3A0A0A;
    --palette-danger-900: #360A0A;
    --palette-warning-100: #FFF9F4;
    --palette-warning-150: #FFF7EF;
    --palette-warning-200: #FFF1E3;
    --palette-warning-250: #FFE7CD;
    --palette-warning-300: #FFD9B0;
    --palette-warning-350: #FFC68A;
    --palette-warning-400: #FFAF5C;
    --palette-warning-450: #FF9527;
    --palette-warning-500: #E87500;
    --palette-warning-550: #BC5F00;
    --palette-warning-600: #964B00;
    --palette-warning-650: #753A00;
    --palette-warning-700: #5A2D00;
    --palette-warning-750: #452200;
    --palette-warning-800: #361B00;
    --palette-warning-850: #2C1600;
    --palette-warning-900: #291500;
    --palette-success-100: #F6FCF7;
    --palette-success-150: #F4FBF4;
    --palette-success-200: #EBF7EB;
    --palette-success-250: #DCF2DD;
    --palette-success-300: #C7EAC8;
    --palette-success-350: #ACDFAF;
    --palette-success-400: #8CD28F;
    --palette-success-450: #66C36A;
    --palette-success-500: #42A947;
    --palette-success-550: #358839;
    --palette-success-600: #2A6C2D;
    --palette-success-650: #205423;
    --palette-success-700: #19411B;
    --palette-success-750: #133114;
    --palette-success-800: #0F2610;
    --palette-success-850: #0C200D;
    --palette-success-900: #0B1E0C;
    --palette-info-100: #F8FAFE;
    --palette-info-150: #F6F9FE;
    --palette-info-200: #EFF4FD;
    --palette-info-250: #E4ECFC;
    --palette-info-300: #D4E0FA;
    --palette-info-350: #BFD2F7;
    --palette-info-400: #A7C0F4;
    --palette-info-450: #8AABEF;
    --palette-info-500: #6993EA;
    --palette-info-550: #2F6BE3;
    --palette-info-600: #1951C2;
    --palette-info-650: #133F99;
    --palette-info-700: #0E3177;
    --palette-info-750: #0A265D;
    --palette-info-800: #081E4A;
    --palette-info-850: #07193E;
    --palette-info-900: #06183B;
    /* Bright signature mint-teal accent providing playful contrast. */
    --palette-accent-100: #F7FBFA;
    --palette-accent-150: #F4FAF9;
    --palette-accent-200: #ECF6F4;
    --palette-accent-250: #DEF0EB;
    --palette-accent-300: #CAE7E0;
    --palette-accent-350: #B1DCD1;
    --palette-accent-400: #93CEBE;
    --palette-accent-450: #6FBDA8;
    --palette-accent-500: #4CA48C;
    --palette-accent-550: #3C8471;
    --palette-accent-600: #30695A;
    --palette-accent-650: #255246;
    --palette-accent-700: #1C3F36;
    --palette-accent-750: #153029;
    --palette-accent-800: #112520;
    --palette-accent-850: #0E1F1A;
    --palette-accent-900: #0D1D18;
  }

  :root {
    --radius: 0.625rem;
    --radius-sm: calc(var(--radius) - 4px);
    --radius-md: calc(var(--radius) - 2px);
    --radius-lg: var(--radius);
    --radius-xl: calc(var(--radius) + 4px);
    --background: #FFFFFF;
    --foreground: #0A0A0A;
    --card: #FFFFFF;
    --card-foreground: #0A0A0A;
    --popover: #FFFFFF;
    --popover-foreground: #0A0A0A;
    --primary: var(--palette-brand-700);
    --primary-foreground: #FFFFFF;
    --secondary: var(--palette-neutral-100);
    --secondary-foreground: var(--palette-neutral-900);
    --muted: var(--palette-neutral-150);
    --muted-foreground: var(--palette-neutral-700);
    --accent: var(--palette-accent-100);
    --accent-foreground: var(--palette-brand-700);
    --destructive: var(--palette-danger-700);
    --destructive-foreground: #FFFFFF;
    --border: #CECBC9;
    --input: #CECBC9;
    --ring: var(--palette-brand-500);
    --chart-1: var(--palette-brand-500);
    --chart-2: #143C8D;
    --chart-3: #65B8A2;
    --chart-4: var(--palette-warning-500);
    --chart-5: var(--palette-danger-500);
    --sidebar: #FFFFFF;
    --sidebar-foreground: #0A0A0A;
    --sidebar-primary: var(--palette-brand-700);
    --sidebar-primary-foreground: #FFFFFF;
    --sidebar-accent: var(--palette-neutral-100);
    --sidebar-accent-foreground: var(--palette-neutral-900);
    --sidebar-border: #CECBC9;
    --sidebar-ring: var(--palette-brand-500);
    --font-sans: "Source Serif 4", system-ui, sans-serif;
    --font-display: "Inter", system-ui, sans-serif;
    --font-mono: "JetBrains Mono", ui-monospace, monospace;
    --text-hero: 400 4rem/4.625rem var(--font-display);
    --text-title: 400 3.125rem/3.75rem var(--font-display);
    --text-heading: 700 1.25rem/1.625rem var(--font-display);
    --text-body: 400 1rem/1.5rem var(--font-sans);
    --text-caption: 500 0.8125rem/1.1875rem var(--font-sans);
    --text-label: 700 1.25rem/2rem var(--font-display);
    --text-overline: 700 0.8125rem/1.1875rem var(--font-display);
    --text-overline-tracking: 0.08em;
    --text-overline-transform: uppercase;
    --shadow-xs: 0 1px 2px rgba(14, 71, 73, 0.05);
    --shadow-sm: 2px 2px 0px 0px rgba(191, 221, 213, 0.5);
    --shadow-md: 0px 0px 0px 3px rgb(191, 221, 213);
    --shadow-lg: 2px 2px 2px 0px rgba(14, 71, 73, 0.15);
    --shadow-xl: 6px 6px 0px 0px rgb(191, 221, 213);
    --gradient-brand_wash: linear-gradient(135deg, rgba(13, 74, 62, 0.9) 0%, rgba(1, 25, 54, 0.9) 100%);
  }

  .dark {
    --background: #0A0A0A;
    --foreground: #FFFFFF;
    --card: var(--palette-neutral-800);
    --card-foreground: var(--palette-neutral-100);
    --popover: var(--palette-neutral-800);
    --popover-foreground: var(--palette-neutral-100);
    --primary: var(--palette-brand-400);
    --primary-foreground: #0A0A0A;
    --secondary: var(--palette-neutral-800);
    --secondary-foreground: var(--palette-neutral-100);
    --muted: var(--palette-neutral-850);
    --muted-foreground: var(--palette-neutral-400);
    --accent: var(--palette-accent-900);
    --accent-foreground: var(--palette-accent-100);
    --destructive: var(--palette-danger-600);
    --destructive-foreground: #FFFFFF;
    --border: var(--palette-neutral-700);
    --input: var(--palette-neutral-700);
    --ring: var(--palette-brand-400);
    --chart-1: var(--palette-brand-400);
    --chart-2: #65B8A2;
    --chart-3: var(--palette-accent-400);
    --chart-4: var(--palette-warning-500);
    --chart-5: var(--palette-danger-500);
    --sidebar: #0A0A0A;
    --sidebar-foreground: var(--palette-neutral-100);
    --sidebar-primary: var(--palette-brand-400);
    --sidebar-primary-foreground: #0A0A0A;
    --sidebar-accent: var(--palette-neutral-800);
    --sidebar-accent-foreground: var(--palette-neutral-100);
    --sidebar-border: var(--palette-neutral-700);
    --sidebar-ring: var(--palette-brand-400);
  }
}

@layer base {
  * { border-color: var(--border); }
  body { background-color: var(--background); color: var(--foreground); font-family: var(--font-sans); }
}

@layer components {
  .text-hero {
    font: var(--text-hero);
  }
  .text-title {
    font: var(--text-title);
  }
  .text-heading {
    font: var(--text-heading);
  }
  .text-body {
    font: var(--text-body);
  }
  .text-caption {
    font: var(--text-caption);
  }
  .text-label {
    font: var(--text-label);
  }
  .text-overline {
    font: var(--text-overline);
    letter-spacing: var(--text-overline-tracking);
    text-transform: var(--text-overline-transform);
  }
}