/* Oficial: manual edição 03, pp.14 a 24, 29, 35, 56. CSS é a fonte runtime. */
:root {
  --maple-color-black: #000000;
  --maple-color-white: #ffffff;
  --maple-color-mineral: #143542;
  --maple-color-ice: #dce8ec;
  --maple-color-mist: #f4f5f5;
  --maple-color-line: #d5dadb;
  --maple-color-gray: #586267;
  --maple-color-graphite: #171b1d;
  --maple-color-success: #17623e;
  --maple-color-warning: #825100;
  --maple-color-error: #ad2831;
  --maple-color-focus: #245dcc;
  --maple-font-sans: "Manrope", Arial, sans-serif;
  --maple-font-mono: "IBM Plex Mono", ui-monospace, Menlo, monospace;
  --maple-space-4: 4px;
  --maple-space-8: 8px;
  --maple-space-12: 12px;
  --maple-space-16: 16px;
  --maple-space-24: 24px;
  --maple-space-32: 32px;
  --maple-space-48: 48px;
  --maple-space-64: 64px;
  --maple-space-96: 96px;
  --maple-space-128: 128px;
  --maple-space-related: var(--maple-space-8);
  --maple-space-field: var(--maple-space-24);
  --maple-space-group: var(--maple-space-48);
  --maple-space-card: var(--maple-space-24);
  --maple-space-section: var(--maple-space-64);
  --maple-space-editorial: var(--maple-space-96);
  --maple-radius-none: 0px;
  --maple-radius-state: 4px;
  --maple-radius-control: 8px;
  --maple-radius-panel: 16px;
  --maple-radius-full: 999px;
  --maple-shadow-floating: 0 8px 32px #00000014;
  --maple-motion-feedback: 120ms;
  --maple-motion-panel: 220ms;
  --maple-motion-editorial: 360ms;
  --maple-motion-brand: 600ms;
  --maple-motion-generation: 1200ms;
  --maple-motion-ease: ease-out;
  --maple-motion-panel-ease: cubic-bezier(0.2, 0, 0, 1);
  --maple-motion-panel-distance: 8px;
  --maple-motion-editorial-distance: 12px;
  --maple-control-min: 44px;
  --maple-grid-max: 1248px;
  --maple-grid-margin: 96px;
  --maple-grid-gutter: 24px;
  --maple-grid-columns: 12;
  --maple-border-width: 1px;
  --maple-focus-width: 2px;
  --maple-focus-offset: 3px;
  --maple-overlay: rgb(0 0 0 / 60%);
  --maple-type-display-size: 80px;
  --maple-type-display-leading: 84px;
  --maple-type-display-weight: 500;
  --maple-type-display-tracking: -0.05em;
  --maple-type-h1-size: 56px;
  --maple-type-h1-leading: 60px;
  --maple-type-h1-weight: 500;
  --maple-type-h1-tracking: -0.04em;
  --maple-type-h2-size: 40px;
  --maple-type-h2-leading: 46px;
  --maple-type-h2-weight: 500;
  --maple-type-h2-tracking: -0.035em;
  --maple-type-h3-size: 24px;
  --maple-type-h3-leading: 30px;
  --maple-type-h3-weight: 600;
  --maple-type-h3-tracking: -0.02em;
  --maple-type-body-size: 16px;
  --maple-type-body-leading: 26px;
  --maple-type-body-weight: 400;
  --maple-type-body-tracking: 0;
  --maple-type-small-size: 14px;
  --maple-type-small-leading: 22px;
  --maple-type-small-weight: 400;
  --maple-type-small-tracking: 0;
  --maple-type-caption-size: 12px;
  --maple-type-caption-leading: 18px;
  --maple-type-caption-weight: 400;
  --maple-type-caption-tracking: 0;
  --maple-type-label-size: 12px;
  --maple-type-label-leading: 16px;
  --maple-type-label-weight: 600;
  --maple-type-label-tracking: 0.04em;
  --maple-type-button-size: 14px;
  --maple-type-button-leading: 20px;
  --maple-type-button-weight: 600;
  --maple-type-button-tracking: 0;
}
:root,
[data-theme="light"] {
  color-scheme: light;
  --maple-background: #ffffff;
  --maple-surface: #f4f5f5;
  --maple-text-primary: #000000;
  --maple-text-secondary: #586267;
  --maple-border-essential: #586267;
  --maple-border-decorative: #d5dadb;
  --maple-action: #000000;
  --maple-on-action: #ffffff;
  --maple-selection: #dce8ec;
  --maple-focus: #245dcc;
  --maple-action-hover: #171b1d;
  --maple-on-action-hover: #ffffff;
  --maple-disabled: #d5dadb;
  --maple-on-disabled: #586267;
  --maple-error: #ad2831;
  --maple-success: #17623e;
  --maple-warning: #825100;
  --maple-info: #245dcc;
  --maple-accent: #143542;
}
[data-theme="dark"] {
  color-scheme: dark;
  --maple-background: #000000;
  --maple-surface: #171b1d;
  --maple-text-primary: #ffffff;
  --maple-text-secondary: #bbc3c7;
  --maple-border-essential: #bbc3c7;
  --maple-border-decorative: #343c40;
  --maple-action: #ffffff;
  --maple-on-action: #000000;
  --maple-selection: #143542;
  --maple-focus: #dce8ec;
  --maple-action-hover: #dce8ec;
  --maple-on-action-hover: #000000;
  --maple-disabled: #343c40;
  --maple-on-disabled: #bbc3c7;
  --maple-error: #ffa5ac;
  --maple-success: #ffffff;
  --maple-warning: #ffffff;
  --maple-info: #dce8ec;
  --maple-accent: #dce8ec;
}
/* Aliases públicos preservados. Cores de categoria legadas são neutras. */
:root,
[data-theme] {
  --color-black: var(--maple-color-black);
  --color-white: var(--maple-color-white);
  --color-mineral: var(--maple-color-mineral);
  --color-ice: var(--maple-color-ice);
  --color-mist: var(--maple-color-mist);
  --color-line: var(--maple-color-line);
  --color-gray: var(--maple-color-gray);
  --color-graphite: var(--maple-color-graphite);
  --color-success: var(--maple-color-success);
  --color-warning: var(--maple-color-warning);
  --color-error: var(--maple-color-error);
  --color-focus: var(--maple-color-focus);
  --background: var(--maple-background);
  --surface: var(--maple-surface);
  --surface-subtle: var(--maple-surface);
  --surface-elevated: var(--maple-background);
  --surface-selected: var(--maple-selection);
  --text: var(--maple-text-primary);
  --text-muted: var(--maple-text-secondary);
  --text-primary: var(--maple-text-primary);
  --text-secondary: var(--maple-text-secondary);
  --border: var(--maple-border-decorative);
  --border-decorative: var(--maple-border-decorative);
  --border-essential: var(--maple-border-essential);
  --border-strong: var(--maple-border-essential);
  --control-border: var(--maple-border-essential);
  --action: var(--maple-action);
  --action-text: var(--maple-on-action);
  --on-action: var(--maple-on-action);
  --accent: var(--maple-accent);
  --focus: var(--maple-focus);
  --selection-bg: var(--maple-selection);
  --selection-text: var(--maple-text-primary);
  --selection-border: var(--maple-border-essential);
  --font-sans: var(--maple-font-sans);
  --font-mono: var(--maple-font-mono);
  --radius-sm: var(--maple-radius-state);
  --radius-md: var(--maple-radius-control);
  --radius-lg: var(--maple-radius-panel);
  --radius-pill: var(--maple-radius-full);
  --duration-fast: var(--maple-motion-feedback);
  --duration-normal: var(--maple-motion-panel);
  --space-1: var(--maple-space-4);
  --space-2: var(--maple-space-8);
  --space-3: var(--maple-space-12);
  --space-4: var(--maple-space-16);
  --space-5: var(--maple-space-24);
  --space-6: var(--maple-space-32);
  --space-7: var(--maple-space-48);
  --space-8: var(--maple-space-64);
  --space-9: var(--maple-space-96);
  --space-10: var(--maple-space-128);
  --type-display-size: var(--maple-type-display-size);
  --type-display-leading: var(--maple-type-display-leading);
  --type-h1-size: var(--maple-type-h1-size);
  --type-h1-leading: var(--maple-type-h1-leading);
  --type-h2-size: var(--maple-type-h2-size);
  --type-h2-leading: var(--maple-type-h2-leading);
  --type-h3-size: var(--maple-type-h3-size);
  --type-h3-leading: var(--maple-type-h3-leading);
  --type-body-size: var(--maple-type-body-size);
  --type-body-leading: var(--maple-type-body-leading);
  --type-small-size: var(--maple-type-small-size);
  --type-small-leading: var(--maple-type-small-leading);
  --type-caption-size: var(--maple-type-caption-size);
  --type-caption-leading: var(--maple-type-caption-leading);
  --type-label-size: var(--maple-type-label-size);
  --type-label-leading: var(--maple-type-label-leading);
  --type-button-size: var(--maple-type-button-size);
  --type-button-leading: var(--maple-type-button-leading);
  --success: var(--maple-success);
  --success-bg: var(--maple-surface);
  --warning: var(--maple-warning);
  --warning-bg: var(--maple-surface);
  --error: var(--maple-error);
  --error-bg: var(--maple-surface);
  --info: var(--maple-info);
  --info-bg: var(--maple-surface);
  --tone-ok: var(--maple-success);
  --tone-ok-bg: var(--maple-surface);
  --tone-warn: var(--maple-warning);
  --tone-warn-bg: var(--maple-surface);
  --tone-err: var(--maple-error);
  --tone-err-bg: var(--maple-surface);
  --tone-info: var(--maple-info);
  --tone-info-bg: var(--maple-surface);
  --tone-mineral: var(--maple-accent);
  --tone-mineral-bg: var(--maple-selection);
  --tone-cobre: var(--maple-text-secondary);
  --tone-cobre-bg: var(--maple-surface);
  --tone-salvia: var(--maple-text-secondary);
  --tone-salvia-bg: var(--maple-surface);
  --tone-ardosia: var(--maple-text-secondary);
  --tone-ardosia-bg: var(--maple-surface);
  --tone-ameixa: var(--maple-text-secondary);
  --tone-ameixa-bg: var(--maple-surface);
  --tone-areia: var(--maple-text-secondary);
  --tone-areia-bg: var(--maple-surface);
  --shadow-sm: none;
  --shadow-md: var(--maple-shadow-floating);
  --shadow-lg: var(--maple-shadow-floating);
}
@media (min-width: 768px) and (max-width: 1199px) {
  :root {
    --maple-grid-margin: 32px;
    --maple-grid-columns: 8;
  }
}
@media (max-width: 767px) {
  :root {
    --maple-grid-margin: 20px;
    --maple-grid-gutter: 16px;
    --maple-grid-columns: 4;
    --maple-space-editorial: var(--maple-space-48);
    --maple-type-display-size: 44px;
    --maple-type-display-leading: 48px;
    --maple-type-h1-size: 36px;
    --maple-type-h1-leading: 40px;
    --maple-type-h2-size: 28px;
    --maple-type-h2-leading: 34px;
    --maple-type-h3-size: 22px;
    --maple-type-h3-leading: 28px;
  }
}
