/* ComeçAI brand tokens — source of truth: manual-da-marca/tokens.json (v1)
   Light values on :root; dark values follow the OS setting unless the page
   forces a theme with data-theme. */
:root {
  --brand-coral: #ff6b4a;
  --brand-teal: #0f4c5c;
  --surface: #f7f5f2;
  --surface-raised: #ffffff;
  --surface-sunken: #efebe6;
  --ink: #12303a;
  --ink-muted: #5b6b71;
  --border: #e3ddd6;
  --border-strong: #7e8e94;
  --primary: #0f4c5c;
  --primary-hover: #0b3b48;
  --on-primary: #ffffff;
  --accent: #ff6b4a;
  --on-accent: #2a0f08;
  --accent-text: #c2412a;
  --accent-soft: #ffe3d8;
  --status-paid: #1f7a4d;
  --status-paid-bg: #e3f4ea;
  --status-pending: #8a5a00;
  --status-pending-bg: #fff2d6;
  --status-overdue: #b42318;
  --status-overdue-bg: #fde4e1;
  --status-canceled: #5b6b71;
  --status-canceled-bg: #eceae7;
  --focus-ring: #0f4c5c;
  --shadow-card: 0 1px 2px rgba(15,76,92,0.06), 0 4px 16px rgba(15,76,92,0.08);

  /* Site-only helpers derived from the brand */
  --logo-word: #0f4c5c;       /* "Começ" and the dot of the symbol */
  --on-teal: #f7f5f2;         /* text on brand-teal blocks */
  --on-teal-muted: #cfe0e3;   /* supporting text on brand-teal blocks */

  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-6: 24px;
  --space-8: 32px;
  --space-12: 48px;
  --radius-sm: 8px;
  --radius-md: 12px;
  --radius-lg: 20px;
  --radius-pill: 999px;
  --font-sans: Nunito, ui-rounded, "SF Pro Rounded", system-ui, sans-serif;
}

@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) {
    --brand-coral: #ff7a5c;
    --surface: #0e1a1f;
    --surface-raised: #16262c;
    --surface-sunken: #0a1418;
    --ink: #f2eee9;
    --ink-muted: #a7b4b8;
    --border: #2a3a40;
    --border-strong: #678087;
    --primary: #7cc3d1;
    --primary-hover: #9ad3de;
    --on-primary: #0b2a33;
    --accent: #ff7a5c;
    --accent-text: #ff9a82;
    --accent-soft: #3d1c14;
    --status-paid: #5fd39a;
    --status-paid-bg: #12301f;
    --status-pending: #f2c14e;
    --status-pending-bg: #33270c;
    --status-overdue: #ff8a80;
    --status-overdue-bg: #3a1512;
    --status-canceled: #a7b4b8;
    --status-canceled-bg: #22292c;
    --focus-ring: #7cc3d1;
    --shadow-card: 0 1px 2px rgba(0,0,0,0.4);
    --logo-word: #ffffff;
    color-scheme: dark;
  }
}
:root[data-theme="dark"] {
  --brand-coral: #ff7a5c;
  --surface: #0e1a1f;
  --surface-raised: #16262c;
  --surface-sunken: #0a1418;
  --ink: #f2eee9;
  --ink-muted: #a7b4b8;
  --border: #2a3a40;
  --border-strong: #678087;
  --primary: #7cc3d1;
  --primary-hover: #9ad3de;
  --on-primary: #0b2a33;
  --accent: #ff7a5c;
  --accent-text: #ff9a82;
  --accent-soft: #3d1c14;
  --status-paid: #5fd39a;
  --status-paid-bg: #12301f;
  --status-pending: #f2c14e;
  --status-pending-bg: #33270c;
  --status-overdue: #ff8a80;
  --status-overdue-bg: #3a1512;
  --status-canceled: #a7b4b8;
  --status-canceled-bg: #22292c;
  --focus-ring: #7cc3d1;
  --shadow-card: 0 1px 2px rgba(0,0,0,0.4);
  --logo-word: #ffffff;
  color-scheme: dark;
}

@font-face { font-family: "Nunito"; src: url("../fonts/nunito-latin-400-normal.woff2") format("woff2"); font-weight: 400; font-style: normal; font-display: swap; }
@font-face { font-family: "Nunito"; src: url("../fonts/nunito-latin-700-normal.woff2") format("woff2"); font-weight: 700; font-style: normal; font-display: swap; }
@font-face { font-family: "Nunito"; src: url("../fonts/nunito-latin-800-normal.woff2") format("woff2"); font-weight: 800; font-style: normal; font-display: swap; }
