/**
 * Tokens de cor — Enjoy the Love
 * Paleta: Ivory White + Soft Sand + Coral + Deep Cocoa
 *
 * Marca (referência):
 *   Ivory #FFFDFC · Sand #F6EEE7 · Beige #E5CAAF · Coral #FF5643
 *   Cocoa #2A211D · Cocoa muted #75665B · Border #E9DDD3
 *
 * Tema padrão: escuro (html[data-theme="dark"]).
 * Pílulas de estado: --pill-*; app.css mapeia classes → tom.
 */
:root {
  color-scheme: light dark;

  /* Marca — valores fixos (não mudam com o tema) */
  --brand-ivory: #fffdfc;
  --brand-sand: #f6eee7;
  --brand-beige: #e5caaf;
  --brand-coral: #ff5643;
  --brand-cocoa: #2a211d;
  --brand-cocoa-muted: #75665b;
  --brand-border: #e9ddd3;
  --brand-on-primary: #ffffff;

  /* Dark palette anchors */
  --brand-dark-bg: #211c19;
  --brand-dark-surface: #2d2723;
  --brand-dark-mocha: #302722;
  --brand-dark-graphite: #252321;
  --brand-dark-text-muted: #cdbeb2;

  --radius-xs: 4px;
  --radius-sm: 6px;
  --radius-md: 8px;
  --radius-nav: 6px;

  /* Botões — altura e padding compartilhados */
  --btn-font-size: 0.875rem;
  --btn-line-height: 1.2;
  --btn-padding-y: 0.3rem;
  --btn-padding-x: 0.6rem;
  --btn-min-height: 2rem;
  --btn-sm-font-size: 0.8125rem;
  --btn-sm-padding-y: 0.2rem;
  --btn-sm-padding-x: 0.55rem;
  --btn-sm-min-height: 1.625rem;
  --btn-touch-min-height: 36px;
  --btn-emphasis-min-height: 2.25rem;
  --btn-icon-size: 34px;
}

[data-theme="light"] {
  color-scheme: light;

  --color-bg: var(--brand-ivory);
  --color-surface: var(--brand-sand);
  --color-surface-hover: #ede4db;
  --color-border: var(--brand-border);
  --color-border-table: #e3d6cb;

  --color-text: var(--brand-cocoa);
  --color-text-muted: var(--brand-cocoa-muted);

  --color-primary: var(--brand-coral);
  --color-primary-hover: #e84d3b;
  --color-primary-muted: #ffece9;
  --color-on-primary: var(--brand-on-primary);

  --color-secondary: var(--brand-beige);
  --color-secondary-hover: #d9bc9f;

  --color-danger: #c93628;
  --color-danger-hover: #a82d22;
  --color-success: #2f6b4a;
  --color-success-muted: #e8f3ec;
  --color-warning: #a67b2b;
  --color-warning-muted: #faf4e8;
  --color-info: #5c4f46;
  --color-info-muted: #f0ebe6;

  --color-focus-ring: var(--brand-coral);

  --color-sidebar-bg: #f0e8e0;
  --color-sidebar-border: var(--brand-border);

  --pill-neutral-bg: color-mix(in srgb, var(--color-text-muted) 14%, var(--color-surface));
  --pill-neutral-border: color-mix(in srgb, var(--color-text-muted) 28%, var(--color-border));
  --pill-neutral-fg: var(--color-text-muted);

  --pill-muted-bg: color-mix(in srgb, var(--color-text-muted) 12%, var(--color-surface));
  --pill-muted-border: color-mix(in srgb, var(--color-text-muted) 25%, var(--color-border));
  --pill-muted-fg: var(--color-text-muted);

  --pill-info-bg: var(--color-info-muted);
  --pill-info-border: color-mix(in srgb, var(--color-info) 40%, var(--color-border));
  --pill-info-border-soft: color-mix(in srgb, var(--color-info) 35%, var(--color-border));
  --pill-info-fg: var(--color-info);
  --pill-info-strong-border: color-mix(in srgb, var(--color-info) 45%, var(--color-border));

  --pill-primary-bg: var(--color-primary-muted);
  --pill-primary-border: color-mix(in srgb, var(--color-primary) 45%, var(--color-border));
  --pill-primary-fg: #c43f30;

  --pill-warning-bg: var(--color-warning-muted);
  --pill-warning-border: color-mix(in srgb, var(--color-warning) 40%, var(--color-border));
  --pill-warning-fg: var(--color-warning);

  --pill-warning-strong-bg: color-mix(in srgb, var(--color-warning) 22%, var(--color-surface));
  --pill-warning-strong-border: color-mix(in srgb, var(--color-warning) 48%, var(--color-border));
  --pill-warning-strong-fg: var(--color-warning);

  --pill-success-bg: var(--color-success-muted);
  --pill-success-border: color-mix(in srgb, var(--color-success) 50%, var(--color-border));
  --pill-success-border-accent: color-mix(in srgb, var(--color-success) 45%, var(--color-border));
  --pill-success-border-strong: color-mix(in srgb, var(--color-success) 55%, var(--color-border));
  --pill-success-fg: var(--color-success);

  --pill-danger-bg: color-mix(in srgb, var(--color-danger) 16%, var(--color-surface));
  --pill-danger-border: color-mix(in srgb, var(--color-danger) 40%, var(--color-border));
  --pill-danger-fg: var(--color-danger);

  --pill-danger-accent-bg: color-mix(in srgb, var(--color-danger) 18%, var(--color-surface));
  --pill-danger-accent-border: color-mix(in srgb, var(--color-danger) 42%, var(--color-border));

  --pill-iminencia-bg: color-mix(in srgb, var(--brand-coral) 28%, var(--color-surface));
  --pill-iminencia-border: color-mix(in srgb, var(--brand-coral) 62%, var(--color-border));
  --pill-iminencia-fg: #b83224;

  --pill-contrato-fechado-bg: #ebe4dc;
  --pill-contrato-fechado-border: color-mix(in srgb, var(--brand-cocoa) 38%, var(--color-border));
  --pill-contrato-fechado-fg: var(--brand-cocoa);

  --pill-forgotten-bg: color-mix(in srgb, var(--brand-cocoa-muted) 12%, var(--color-surface));
  --pill-forgotten-border: color-mix(in srgb, var(--brand-cocoa-muted) 26%, var(--color-border));
  --pill-forgotten-fg: var(--brand-cocoa-muted);

  --pill-violet-bg: color-mix(in srgb, #2b2028 10%, var(--color-surface));
  --pill-violet-border: color-mix(in srgb, #2b2028 28%, var(--color-border));
  --pill-violet-fg: #4a3540;
}

[data-theme="dark"] {
  color-scheme: dark;

  --color-bg: var(--brand-dark-bg);
  --color-surface: var(--brand-dark-surface);
  --color-surface-hover: var(--brand-dark-mocha);
  --color-border: #3d3530;
  --color-border-table: #38312c;

  --color-text: var(--brand-ivory);
  --color-text-muted: var(--brand-dark-text-muted);

  --color-primary: var(--brand-coral);
  --color-primary-hover: #ff7366;
  --color-primary-muted: #3d2824;
  --color-on-primary: var(--brand-on-primary);

  --color-secondary: var(--brand-beige);
  --color-secondary-hover: #f0d9c4;

  --color-danger: #ff6e5e;
  --color-danger-hover: #ff9589;
  --color-success: #5cb88a;
  --color-success-muted: #1e3d2c;
  --color-warning: #e5caaf;
  --color-warning-muted: #3a3228;
  --color-info: var(--brand-dark-text-muted);
  --color-info-muted: #352f2a;

  --color-focus-ring: var(--brand-coral);

  --color-sidebar-bg: var(--brand-dark-graphite);
  --color-sidebar-border: #3d3530;

  --pill-neutral-bg: color-mix(in srgb, var(--color-text-muted) 16%, var(--color-surface));
  --pill-neutral-border: color-mix(in srgb, var(--color-text-muted) 32%, var(--color-border));
  --pill-neutral-fg: var(--color-text-muted);

  --pill-muted-bg: color-mix(in srgb, var(--color-text-muted) 14%, var(--color-surface));
  --pill-muted-border: color-mix(in srgb, var(--color-text-muted) 28%, var(--color-border));
  --pill-muted-fg: var(--color-text-muted);

  --pill-info-bg: var(--color-info-muted);
  --pill-info-border: color-mix(in srgb, var(--color-info) 42%, var(--color-border));
  --pill-info-border-soft: color-mix(in srgb, var(--color-info) 38%, var(--color-border));
  --pill-info-fg: var(--color-info);
  --pill-info-strong-border: color-mix(in srgb, var(--color-info) 48%, var(--color-border));

  --pill-primary-bg: var(--color-primary-muted);
  --pill-primary-border: color-mix(in srgb, var(--color-primary) 48%, var(--color-border));
  --pill-primary-fg: #ff8a7a;

  --pill-warning-bg: var(--color-warning-muted);
  --pill-warning-border: color-mix(in srgb, var(--color-warning) 42%, var(--color-border));
  --pill-warning-fg: var(--color-warning);

  --pill-warning-strong-bg: color-mix(in srgb, var(--color-warning) 24%, var(--color-surface));
  --pill-warning-strong-border: color-mix(in srgb, var(--color-warning) 50%, var(--color-border));
  --pill-warning-strong-fg: var(--color-warning);

  --pill-success-bg: var(--color-success-muted);
  --pill-success-border: color-mix(in srgb, var(--color-success) 48%, var(--color-border));
  --pill-success-border-accent: color-mix(in srgb, var(--color-success) 44%, var(--color-border));
  --pill-success-border-strong: color-mix(in srgb, var(--color-success) 52%, var(--color-border));
  --pill-success-fg: var(--color-success);

  --pill-danger-bg: color-mix(in srgb, var(--color-danger) 22%, var(--color-surface));
  --pill-danger-border: color-mix(in srgb, var(--color-danger) 44%, var(--color-border));
  --pill-danger-fg: var(--color-danger);

  --pill-danger-accent-bg: color-mix(in srgb, var(--color-danger) 24%, var(--color-surface));
  --pill-danger-accent-border: color-mix(in srgb, var(--color-danger) 46%, var(--color-border));

  --pill-iminencia-bg: color-mix(in srgb, var(--brand-coral) 42%, var(--color-surface));
  --pill-iminencia-border: color-mix(in srgb, var(--brand-coral) 72%, var(--color-border));
  --pill-iminencia-fg: #ffffff;

  --pill-contrato-fechado-bg: #352f2a;
  --pill-contrato-fechado-border: color-mix(in srgb, var(--brand-beige) 40%, var(--color-border));
  --pill-contrato-fechado-fg: var(--brand-beige);

  --pill-forgotten-bg: color-mix(in srgb, var(--brand-dark-text-muted) 18%, var(--color-surface));
  --pill-forgotten-border: color-mix(in srgb, var(--brand-dark-text-muted) 34%, var(--color-border));
  --pill-forgotten-fg: var(--brand-dark-text-muted);

  --pill-violet-bg: color-mix(in srgb, #2b2028 55%, var(--color-surface));
  --pill-violet-border: color-mix(in srgb, #2b2028 65%, var(--color-border));
  --pill-violet-fg: #d4c0cc;
}

html {
  font-family: "Inter", ui-sans-serif, system-ui, sans-serif;
  font-size: 100%;
  line-height: 1.4;
  -webkit-font-smoothing: antialiased;
}

body {
  margin: 0;
  background: var(--color-bg);
  color: var(--color-text);
}
