/* ============================================================
   Motryz Design System — Tokens (camada 1 de 4)
   ============================================================
   Fonte ÚNICA de verdade dos tokens globais. Carregado antes de
   motryz-base.css → motryz-report.css → motryz-custom.css.

   Este arquivo é CANÔNICO: as cópias em apps/* e em parceiros-motryz
   devem ser idênticas a ele (sincronizadas, nunca editadas isoladamente).

   Versão: 2.1.0  ·  Atualizado: 2026-06-23
   v2.1: raio semântico (control/card/chip) + gradientes harmonizados
         (2 paradas, mesma família por status; fim do arco-íris ROI).
   ============================================================ */

:root {
    /* Core palette */
    --motryz-primary: var(--theme-default, #7366ff);
    --motryz-primary-rgb: 115, 102, 255;
    --motryz-secondary: var(--theme-secondary, #838383);
    --motryz-secondary-rgb: 131, 131, 131;
    --motryz-success: var(--success, #65c15c);
    --motryz-success-rgb: 101, 193, 92;
    --motryz-warning: #f9a825;
    --motryz-warning-rgb: 249, 168, 37;
    --motryz-danger: #dc3545;
    --motryz-danger-rgb: 220, 53, 69;
    --motryz-info: #17a2b8;
    --motryz-info-rgb: 23, 162, 184;

    /* Surface / text helpers */
    --motryz-surface: var(--white, #ffffff);
    --motryz-surface-soft: var(--light-bg, #f7f7f7);
    --motryz-surface-page: var(--body-bg, #f7f8fa);
    --motryz-surface-card: var(--white, #ffffff);
    --motryz-surface-elevated: #ffffff;
    --motryz-surface-muted: #f8f9fc;
    --motryz-surface-subtle: rgba(148, 163, 184, 0.045);
    --motryz-surface-raised: #ffffff;
    --motryz-border: var(--chart-border, #ececec);
    --motryz-border-soft: #e6e9f2;
    --motryz-border-strong: #d9dee8;
    --motryz-text: var(--body-font-color, #2c323f);
    --motryz-text-strong: #1f2937;
    --motryz-text-muted: var(--chart-text-color, #999999);
    --motryz-text-subtle: #667085;
    --motryz-text-inverse: #ffffff;

    /* Semantic color scale used by ROI / Workflow screens */
    --motryz-blue: #3b82f6;
    --motryz-blue-rgb: 59, 130, 246;
    --motryz-cyan: #38bdf8;
    --motryz-cyan-rgb: 56, 189, 248;
    --motryz-teal: #14b8a6;
    --motryz-teal-rgb: 20, 184, 166;
    --motryz-green: #22c55e;
    --motryz-green-rgb: 34, 197, 94;
    --motryz-amber: #f59e0b;
    --motryz-amber-rgb: 245, 158, 11;
    --motryz-red: #ef4444;
    --motryz-red-rgb: 239, 68, 68;
    --motryz-purple: #7c3aed;
    --motryz-purple-rgb: 124, 58, 237;

    /* State layers */
    --motryz-primary-bg-subtle: rgba(var(--motryz-primary-rgb), 0.04);
    --motryz-primary-bg-soft: rgba(var(--motryz-primary-rgb), 0.08);
    --motryz-primary-bg-hover: rgba(var(--motryz-primary-rgb), 0.10);
    --motryz-primary-bg-selected: rgba(var(--motryz-primary-rgb), 0.12);
    --motryz-primary-border-soft: rgba(var(--motryz-primary-rgb), 0.18);
    --motryz-primary-border-strong: rgba(var(--motryz-primary-rgb), 0.55);
    --motryz-focus-ring: 0 0 0 3px rgba(var(--motryz-primary-rgb), 0.12);

    --motryz-success-bg-soft: rgba(var(--motryz-green-rgb), 0.10);
    --motryz-success-border-soft: rgba(var(--motryz-green-rgb), 0.45);
    --motryz-warning-bg-soft: rgba(var(--motryz-amber-rgb), 0.10);
    --motryz-warning-border-soft: rgba(var(--motryz-amber-rgb), 0.45);
    --motryz-danger-bg-soft: rgba(var(--motryz-red-rgb), 0.10);
    --motryz-danger-border-soft: rgba(var(--motryz-red-rgb), 0.45);
    --motryz-info-bg-soft: rgba(var(--motryz-blue-rgb), 0.10);
    --motryz-info-border-soft: rgba(var(--motryz-blue-rgb), 0.45);

    /* Spacing scale */
    --motryz-space-xs: 0.25rem;
    --motryz-space-sm: 0.5rem;
    --motryz-space-md: 0.75rem;
    --motryz-space-lg: 1rem;
    --motryz-space-xl: 1.25rem;
    --motryz-space-2xl: 1.5rem;
    --motryz-space-base: var(--motryz-space-lg);
    --motryz-space-3xl: 2rem;

    /* Radius scale — primitivos */
    --motryz-radius-sm: 6px;
    --motryz-radius-base: 8px;
    --motryz-radius-md: 10px;
    --motryz-radius-lg: 12px;
    --motryz-radius-xl: 16px;
    --motryz-radius-modal: 18px;
    --motryz-radius-pill: 999px;

    /* Radius semânticos — modernização (controles menos arredondados) */
    --motryz-radius-control: 8px;   /* botões, inputs, selects, itens de menu/nav */
    --motryz-radius-card: 12px;     /* cards e superfícies */
    --motryz-radius-chip: 999px;    /* APENAS chips/badges/status — único uso de pill */

    /* Shadows */
    --motryz-shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.04);
    --motryz-shadow-md: 0 10px 24px rgba(15, 23, 42, 0.08);
    --motryz-shadow-lg: 0 16px 34px rgba(15, 23, 42, 0.10);
    --motryz-shadow-xl: 0 28px 70px rgba(15, 23, 42, 0.20);

    /* Data / report gradients — harmonizados (2 paradas, mesma família por status) */
    --motryz-gradient-report-card: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(248, 250, 252, 0.94));
    --motryz-gradient-brand-soft: linear-gradient(120deg, rgba(var(--motryz-primary-rgb), 0.06), rgba(var(--motryz-success-rgb), 0.045));
    /* Marca: roxo → teal-verde (substitui o arco-íris roxo→cyan→verde e os heros azuis) */
    --motryz-gradient-brand: linear-gradient(120deg, var(--motryz-primary) 0%, var(--motryz-teal) 100%);
    --motryz-gradient-roi-health: linear-gradient(90deg, var(--motryz-primary) 0%, var(--motryz-teal) 100%);
    --motryz-gradient-roi-positive: linear-gradient(90deg, #5dcaa5 0%, var(--motryz-teal) 100%);
    --motryz-gradient-roi-warning: linear-gradient(90deg, var(--motryz-amber) 0%, #d97706 100%);
    --motryz-gradient-roi-danger: linear-gradient(90deg, var(--motryz-red) 0%, var(--motryz-danger) 100%);

    /* Typography */
    --motryz-font-xs: 0.75rem;
    --motryz-font-sm: 0.8125rem;
    --motryz-font-base: 0.875rem;
    --motryz-font-md: 0.9375rem;
    --motryz-font-lg: 1rem;
    --motryz-font-xl: 1.125rem;
    --motryz-font-2xl: 1.5rem;
    --motryz-font-3xl: 2rem;
    --motryz-line-tight: 1.15;
    --motryz-line-base: 1.5;
    --motryz-letter-wide: 0.04em;
}

body.dark-only,
html.dark-only,
.dark-only {
    --motryz-surface: #222630;
    --motryz-surface-soft: #1c212b;
    --motryz-surface-page: var(--body-bg, #1d1e26);
    --motryz-surface-card: #222630;
    --motryz-surface-elevated: #282d39;
    --motryz-surface-raised: #262932;
    --motryz-surface-muted: #1c212b;
    --motryz-surface-subtle: rgba(255, 255, 255, 0.025);
    --motryz-border: #3b465b;
    --motryz-border-soft: #3b465b;
    --motryz-border-strong: #5b6478;
    --motryz-text: #d0d0d0;
    --motryz-text-strong: #e8ecf7;
    --motryz-text-muted: #98a6ad;
    --motryz-text-subtle: #a6aec1;
    --motryz-gradient-report-card: linear-gradient(180deg, rgba(42, 45, 58, 0.96), rgba(31, 33, 43, 0.98));
    --motryz-shadow-lg: none;
    --motryz-shadow-xl: 0 32px 90px rgba(0, 0, 0, 0.46);
}
