/* =========================================================================
   MD3 Design Tokens — techkrep
   Seed: #cc3d00 (brand primary)
   Reference: https://m3.material.io/styles/color/the-color-system
   ========================================================================= */

:root,
:root[data-theme="light"] {
  /* Primary */
  --md-sys-color-primary: #B73500;
  --md-sys-color-on-primary: #FFFFFF;
  --md-sys-color-primary-container: #FFDBCF;
  --md-sys-color-on-primary-container: #3B0A00;

  /* Secondary (neutral chrome / chips) */
  --md-sys-color-secondary: #77574C;
  --md-sys-color-on-secondary: #FFFFFF;
  --md-sys-color-secondary-container: #FFDBCF;
  --md-sys-color-on-secondary-container: #2D150D;

  /* Tertiary (blue accent for hero / informational) */
  --md-sys-color-tertiary: #3A6099;
  --md-sys-color-on-tertiary: #FFFFFF;
  --md-sys-color-tertiary-container: #D4E3FF;
  --md-sys-color-on-tertiary-container: #001B3D;

  /* Error */
  --md-sys-color-error: #BA1A1A;
  --md-sys-color-on-error: #FFFFFF;
  --md-sys-color-error-container: #FFDAD6;
  --md-sys-color-on-error-container: #410002;

  /* Surface / background */
  --md-sys-color-surface: #FFF8F6;
  --md-sys-color-on-surface: #221A17;
  --md-sys-color-on-surface-variant: #53433E;
  --md-sys-color-surface-dim: #E8D6D0;
  --md-sys-color-surface-bright: #FFF8F6;
  --md-sys-color-surface-container-lowest: #FFFFFF;
  --md-sys-color-surface-container-low: #FFF1EC;
  --md-sys-color-surface-container: #FBEBE5;
  --md-sys-color-surface-container-high: #F5E5DF;
  --md-sys-color-surface-container-highest: #EFDFDA;

  /* Outline / dividers */
  --md-sys-color-outline: #85736D;
  --md-sys-color-outline-variant: #D8C2BB;

  /* Inverse */
  --md-sys-color-inverse-surface: #382E2B;
  --md-sys-color-inverse-on-surface: #FFEDE6;
  --md-sys-color-inverse-primary: #FFB599;

  /* State layer opacities */
  --md-sys-state-hover-opacity: 0.08;
  --md-sys-state-focus-opacity: 0.12;
  --md-sys-state-pressed-opacity: 0.12;
  --md-sys-state-dragged-opacity: 0.16;

  /* Typography — Roboto Flex self-hosted */
  --md-sys-typescale-font: 'Roboto Flex', system-ui, -apple-system, 'Segoe UI', Arial, sans-serif;
  --md-sys-typescale-font-brand: 'Roboto Flex', system-ui, sans-serif;

  /* Display */
  --md-sys-typescale-display-large-font: var(--md-sys-typescale-font);
  --md-sys-typescale-display-large-size: 3.5625rem;
  --md-sys-typescale-display-large-weight: 400;
  --md-sys-typescale-display-large-line-height: 4rem;
  --md-sys-typescale-display-large-tracking: -0.015625rem;

  --md-sys-typescale-display-medium-size: 2.8125rem;
  --md-sys-typescale-display-medium-line-height: 3.25rem;
  --md-sys-typescale-display-medium-weight: 400;

  --md-sys-typescale-display-small-size: 2.25rem;
  --md-sys-typescale-display-small-line-height: 2.75rem;
  --md-sys-typescale-display-small-weight: 400;

  /* Headline */
  --md-sys-typescale-headline-large-size: 2rem;
  --md-sys-typescale-headline-large-line-height: 2.5rem;
  --md-sys-typescale-headline-large-weight: 400;

  --md-sys-typescale-headline-medium-size: 1.75rem;
  --md-sys-typescale-headline-medium-line-height: 2.25rem;
  --md-sys-typescale-headline-medium-weight: 400;

  --md-sys-typescale-headline-small-size: 1.5rem;
  --md-sys-typescale-headline-small-line-height: 2rem;
  --md-sys-typescale-headline-small-weight: 400;

  /* Title */
  --md-sys-typescale-title-large-size: 1.375rem;
  --md-sys-typescale-title-large-line-height: 1.75rem;
  --md-sys-typescale-title-large-weight: 500;

  --md-sys-typescale-title-medium-size: 1rem;
  --md-sys-typescale-title-medium-line-height: 1.5rem;
  --md-sys-typescale-title-medium-weight: 500;
  --md-sys-typescale-title-medium-tracking: 0.009375rem;

  --md-sys-typescale-title-small-size: 0.875rem;
  --md-sys-typescale-title-small-line-height: 1.25rem;
  --md-sys-typescale-title-small-weight: 500;
  --md-sys-typescale-title-small-tracking: 0.00625rem;

  /* Body */
  --md-sys-typescale-body-large-size: 1rem;
  --md-sys-typescale-body-large-line-height: 1.5rem;
  --md-sys-typescale-body-large-weight: 400;
  --md-sys-typescale-body-large-tracking: 0.03125rem;

  --md-sys-typescale-body-medium-size: 0.875rem;
  --md-sys-typescale-body-medium-line-height: 1.25rem;
  --md-sys-typescale-body-medium-weight: 400;
  --md-sys-typescale-body-medium-tracking: 0.015625rem;

  --md-sys-typescale-body-small-size: 0.75rem;
  --md-sys-typescale-body-small-line-height: 1rem;
  --md-sys-typescale-body-small-weight: 400;
  --md-sys-typescale-body-small-tracking: 0.025rem;

  /* Label */
  --md-sys-typescale-label-large-size: 0.875rem;
  --md-sys-typescale-label-large-line-height: 1.25rem;
  --md-sys-typescale-label-large-weight: 500;
  --md-sys-typescale-label-large-tracking: 0.00625rem;

  --md-sys-typescale-label-medium-size: 0.75rem;
  --md-sys-typescale-label-medium-line-height: 1rem;
  --md-sys-typescale-label-medium-weight: 500;
  --md-sys-typescale-label-medium-tracking: 0.03125rem;

  --md-sys-typescale-label-small-size: 0.6875rem;
  --md-sys-typescale-label-small-line-height: 1rem;
  --md-sys-typescale-label-small-weight: 500;
  --md-sys-typescale-label-small-tracking: 0.03125rem;

  /* Shape */
  --md-sys-shape-corner-none: 0;
  --md-sys-shape-corner-extra-small: 4px;
  --md-sys-shape-corner-small: 8px;
  --md-sys-shape-corner-medium: 12px;
  --md-sys-shape-corner-large: 16px;
  --md-sys-shape-corner-large-increased: 20px;
  --md-sys-shape-corner-extra-large: 28px;
  --md-sys-shape-corner-extra-large-increased: 32px;
  --md-sys-shape-corner-extra-extra-large: 48px;
  --md-sys-shape-corner-full: 9999px;

  /* Elevation (tonal, no shadows by default) */
  --md-sys-elevation-level0: none;
  --md-sys-elevation-level1: 0 1px 2px 0 rgba(0,0,0,0.08), 0 1px 3px 1px rgba(0,0,0,0.04);
  --md-sys-elevation-level2: 0 1px 2px 0 rgba(0,0,0,0.08), 0 2px 6px 2px rgba(0,0,0,0.08);
  --md-sys-elevation-level3: 0 1px 3px 0 rgba(0,0,0,0.10), 0 4px 8px 3px rgba(0,0,0,0.10);
  --md-sys-elevation-level4: 0 2px 3px 0 rgba(0,0,0,0.10), 0 6px 10px 4px rgba(0,0,0,0.12);
  --md-sys-elevation-level5: 0 4px 4px 0 rgba(0,0,0,0.12), 0 8px 12px 6px rgba(0,0,0,0.14);

  /* Motion */
  --md-sys-motion-easing-standard: cubic-bezier(0.2, 0, 0, 1);
  --md-sys-motion-easing-standard-decelerate: cubic-bezier(0, 0, 0, 1);
  --md-sys-motion-easing-standard-accelerate: cubic-bezier(0.3, 0, 1, 1);
  --md-sys-motion-easing-emphasized: cubic-bezier(0.2, 0, 0, 1);
  --md-sys-motion-easing-emphasized-decelerate: cubic-bezier(0.05, 0.7, 0.1, 1);
  --md-sys-motion-easing-emphasized-accelerate: cubic-bezier(0.3, 0, 0.8, 0.15);

  --md-sys-motion-duration-short1: 50ms;
  --md-sys-motion-duration-short2: 100ms;
  --md-sys-motion-duration-short3: 150ms;
  --md-sys-motion-duration-short4: 200ms;
  --md-sys-motion-duration-medium1: 250ms;
  --md-sys-motion-duration-medium2: 300ms;
  --md-sys-motion-duration-medium3: 350ms;
  --md-sys-motion-duration-medium4: 400ms;
  --md-sys-motion-duration-long1: 450ms;
  --md-sys-motion-duration-long2: 500ms;
  --md-sys-motion-duration-long3: 550ms;
  --md-sys-motion-duration-long4: 600ms;

  /* Breakpoints (window size classes) */
  --md-breakpoint-compact: 0px;
  --md-breakpoint-medium: 600px;
  --md-breakpoint-expanded: 840px;
  --md-breakpoint-large: 1200px;
  --md-breakpoint-extra-large: 1600px;

  /* Content max widths per breakpoint */
  --md-content-max-width: 1200px;
  --md-content-max-width-reading: 840px;
}

:root[data-theme="dark"],
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) {
    --md-sys-color-primary: #FFB599;
    --md-sys-color-on-primary: #5F1800;
    --md-sys-color-primary-container: #872600;
    --md-sys-color-on-primary-container: #FFDBCF;

    --md-sys-color-secondary: #E7BEAE;
    --md-sys-color-on-secondary: #442A1F;
    --md-sys-color-secondary-container: #5D4035;
    --md-sys-color-on-secondary-container: #FFDBCF;

    --md-sys-color-tertiary: #A6C8FF;
    --md-sys-color-on-tertiary: #003061;
    --md-sys-color-tertiary-container: #1E4780;
    --md-sys-color-on-tertiary-container: #D4E3FF;

    --md-sys-color-error: #FFB4AB;
    --md-sys-color-on-error: #690005;
    --md-sys-color-error-container: #93000A;
    --md-sys-color-on-error-container: #FFDAD6;

    --md-sys-color-surface: #19110F;
    --md-sys-color-on-surface: #EFDFDA;
    --md-sys-color-on-surface-variant: #D8C2BB;
    --md-sys-color-surface-dim: #19110F;
    --md-sys-color-surface-bright: #413633;
    --md-sys-color-surface-container-lowest: #130B09;
    --md-sys-color-surface-container-low: #221A17;
    --md-sys-color-surface-container: #261E1B;
    --md-sys-color-surface-container-high: #312825;
    --md-sys-color-surface-container-highest: #3C3330;

    --md-sys-color-outline: #A08D86;
    --md-sys-color-outline-variant: #53433E;

    --md-sys-color-inverse-surface: #EFDFDA;
    --md-sys-color-inverse-on-surface: #382E2B;
    --md-sys-color-inverse-primary: #B73500;
  }
}
