/*
 * Purge — tokens do app macOS, convertidos para CSS.
 * Fonte oficial: jithin-sabu/purge-app @ af2dcaf, purge/Theme/AppColors.swift e
 * purge/Views/AppStyle.swift (cópia em upstream/purge-app/).
 * Valores idênticos aos do Swift. Útil para reproduzir a UI do app na web
 * (mockups, landing, documentação). Tema claro = padrão; escuro via
 * prefers-color-scheme ou [data-theme="dark"].
 */

:root {
  /* Texto */
  --app-text-primary: #2e2d2b;
  --app-text-secondary: #64625e;
  --app-text-tertiary: #85827c;     /* ícones, chevrons, placeholders. Nunca frase. */
  /* Superfícies */
  --app-surface-base: #f6f5f3;      /* fundo da janela */
  --app-surface-card: #ffffff;
  --app-surface-raised: #ffffff;    /* menus, dropdowns */
  --app-surface-card-hover: #f4f2ef;
  /* Preenchimentos */
  --app-fill-secondary: #efedea;
  --app-fill-secondary-hover: #e8e6e2;
  --app-fill-secondary-pressed: #dfdcd8;
  /* Bordas */
  --app-border-subtle: #e6e3df;     /* hairline de card (0.5pt) */
  --app-border-strong: #d5d2cd;     /* contorno de controle */
  /* Ações */
  --app-action-primary: #353431;
  --app-action-primary-hover: #42403d;
  --app-action-primary-pressed: #2a2927;
  --app-on-action-primary: #ffffff;
  --app-action-destructive: #d1312a;
  --app-action-destructive-hover: #bc2b25;
  --app-action-destructive-pressed: #a92620;
  /* Status (texto / fundo) */
  --app-status-safe-text: #1f7a35;    --app-status-safe-fill: #e6f4ea;
  --app-status-check-text: #8a5300;   --app-status-check-fill: #faeeda;
  --app-status-danger-text: #b4302a;  --app-status-danger-fill: #fbe8e5;
  --app-status-unsure-text: #5a5853;  --app-status-unsure-fill: #efedea;
  /* Overlay / destaque */
  --app-scrim: rgb(0 0 0 / 0.38);
  --app-accent-celebrate: #d18f00;
  /* Gráfico (Okabe–Ito, seguro para daltonismo) */
  --app-chart-app-caches: #56b4e9;   --app-chart-app-caches-tile: #3399d3;
  --app-chart-dev-tools: #0072b2;    --app-chart-dev-tools-tile: #0072b2;
  --app-chart-large-files: #e69f00;
  --app-chart-apps: #d55e00;
  --app-chart-leftovers: #cc79a7;    --app-chart-leftovers-tile: #b35a8d;
  --app-chart-everything-else: #8c8983;
  --app-chart-free-space: #dad7d2;
  /* AccentColor.colorset (sistema): claro #1A1B1F / escuro #F2F2F3 */
  --app-system-accent: #1a1b1f;

  /* Raios */
  --app-radius-xs: 4px;   /* badges, barras de progresso, tiles pequenos */
  --app-radius-sm: 6px;   /* chips em campo, linhas de dropdown, thumbnails */
  --app-radius-md: 8px;   /* pickers, campos, segmented control */
  --app-radius-lg: 14px;  /* cards, linhas de lista, sheets, avisos */
  --app-radius-xl: 18px;  /* painéis da celebração */
  /* Espaçamento */
  --app-space-xxs: 4px;
  --app-space-xs: 8px;
  --app-space-sm: 12px;
  --app-space-md: 16px;
  --app-space-lg: 24px;
  --app-space-xl: 32px;
  /* Métricas de linha/controle */
  --app-control-height: 28px;
  --app-row-compact: 36px;
  --app-row-parent: 44px;
  --app-row-list-min: 52px;
  --app-row-icon: 28px;
  --app-button-h-sm: 24px;  --app-button-px-sm: 10px;
  --app-button-h-md: 30px;  --app-button-px-md: 14px;
  --app-button-h-lg: 38px;  --app-button-px-lg: 20px;
  --app-disabled-opacity: 0.45;
  --app-hover-duration: 0.12s;  /* easeOut */
  --app-enable-duration: 0.28s; /* easeInOut */

  /* Tipografia (SF Pro / SF Pro Rounded; pt = px em 1x) */
  --app-font: -apple-system, BlinkMacSystemFont, "SF Pro Text", system-ui, sans-serif;
  --app-font-rounded: ui-rounded, "SF Pro Rounded", -apple-system, system-ui, sans-serif;
  --app-type-display: 700 56px/1.1 var(--app-font-rounded);
  --app-type-display-small: 700 36px/1.15 var(--app-font-rounded);
  --app-type-title: 600 26px/1.2 var(--app-font-rounded);
  --app-type-page-title: 600 20px/1.25 var(--app-font-rounded);
  --app-type-section-title: 600 15px/1.3 var(--app-font);
  --app-type-headline: 600 13px/1.35 var(--app-font);
  --app-type-body: 400 13px/1.4 var(--app-font);
  --app-type-row-title: 500 13px/1.35 var(--app-font);
  --app-type-callout: 400 12px/1.35 var(--app-font);
  --app-type-metadata: 400 11px/1.3 var(--app-font);
  --app-type-metadata-emphasis: 500 11px/1.3 var(--app-font);
  --app-type-micro: 600 10px/1.2 var(--app-font);
  /* line-height acima é aproximação para web: o SwiftUI usa a métrica nativa da fonte. */
}

@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) {
    --app-text-primary: #eceae6;
    --app-text-secondary: #a6a39d;
    --app-text-tertiary: #807d78;
    --app-surface-base: #171615;
    --app-surface-card: #1e1d1c;
    --app-surface-raised: #2b2a28;
    --app-surface-card-hover: #2a2927;
    --app-fill-secondary: #282725;
    --app-fill-secondary-hover: #2f2e2c;
    --app-fill-secondary-pressed: #373533;
    --app-border-subtle: #302f2d;
    --app-border-strong: #3d3b38;
    --app-action-primary: #eceae6;
    --app-action-primary-hover: #f6f4f1;
    --app-action-primary-pressed: #d8d5d0;
    --app-on-action-primary: #171615;
    --app-action-destructive: #d9372d;
    --app-action-destructive-hover: #e2453b;
    --app-action-destructive-pressed: #c4302a;
    --app-status-safe-text: #5fd36b;    --app-status-safe-fill: #1b2e22;
    --app-status-check-text: #f2b84b;   --app-status-check-fill: #332910;
    --app-status-danger-text: #f47468;  --app-status-danger-fill: #321b19;
    --app-status-unsure-text: #a9a6a0;  --app-status-unsure-fill: #282725;
    --app-accent-celebrate: #ffc70d;
    --app-chart-app-caches: #6cc3f0;   --app-chart-app-caches-tile: #3a9bd5;
    --app-chart-dev-tools: #3a94d0;    --app-chart-dev-tools-tile: #1e78ba;
    --app-chart-large-files: #f0b020;
    --app-chart-apps: #e8772a;
    --app-chart-leftovers: #da93ba;    --app-chart-leftovers-tile: #be6c9c;
    --app-chart-everything-else: #a8a49d;
    --app-chart-free-space: #4e4b47;
    --app-system-accent: #f2f2f3;
  }
}

:root[data-theme="dark"] {
  --app-text-primary: #eceae6;
  --app-text-secondary: #a6a39d;
  --app-text-tertiary: #807d78;
  --app-surface-base: #171615;
  --app-surface-card: #1e1d1c;
  --app-surface-raised: #2b2a28;
  --app-surface-card-hover: #2a2927;
  --app-fill-secondary: #282725;
  --app-fill-secondary-hover: #2f2e2c;
  --app-fill-secondary-pressed: #373533;
  --app-border-subtle: #302f2d;
  --app-border-strong: #3d3b38;
  --app-action-primary: #eceae6;
  --app-action-primary-hover: #f6f4f1;
  --app-action-primary-pressed: #d8d5d0;
  --app-on-action-primary: #171615;
  --app-action-destructive: #d9372d;
  --app-action-destructive-hover: #e2453b;
  --app-action-destructive-pressed: #c4302a;
  --app-status-safe-text: #5fd36b;    --app-status-safe-fill: #1b2e22;
  --app-status-check-text: #f2b84b;   --app-status-check-fill: #332910;
  --app-status-danger-text: #f47468;  --app-status-danger-fill: #321b19;
  --app-status-unsure-text: #a9a6a0;  --app-status-unsure-fill: #282725;
  --app-accent-celebrate: #ffc70d;
  --app-chart-app-caches: #6cc3f0;   --app-chart-app-caches-tile: #3a9bd5;
  --app-chart-dev-tools: #3a94d0;    --app-chart-dev-tools-tile: #1e78ba;
  --app-chart-large-files: #f0b020;
  --app-chart-apps: #e8772a;
  --app-chart-leftovers: #da93ba;    --app-chart-leftovers-tile: #be6c9c;
  --app-chart-everything-else: #a8a49d;
  --app-chart-free-space: #4e4b47;
  --app-system-accent: #f2f2f3;
}
