/* ==========================================================================
   PRIETO UNIFIED — tokens (interface v2)
   Só age com <html data-ui="v2">. Na v1 este arquivo nem é carregado.
   Referência: _design_lab/05_prieto_unified (aprovado em 24/09/2026).
   Tokens próprios usam o prefixo --u- para não colidir com as variáveis
   da v1; a camada de compatibilidade (mais abaixo) aponta as variáveis
   antigas para eles, e assim as telas ainda não migradas já herdam
   cor e tipografia sem mudança de estrutura.
   ========================================================================== */

/* ---- Fontes locais (OFL). Arquivos oficiais, sem modificação. ---------- */
@font-face{font-family:"IBM Plex Sans";font-style:normal;font-weight:400;font-display:swap;src:url("/fonts/IBMPlexSans-Regular-Latin1.woff2") format("woff2");
  unicode-range:U+0000,U+000D,U+0020-007E,U+00A0-00FF,U+0131,U+0152-0153,U+02C6,U+02DA,U+02DC,U+2013-2014,U+2018-201A,U+201C-201E,U+2020-2022,U+2026,U+2030,U+2039-203A,U+2044,U+20AC,U+2122,U+2212,U+FB01-FB02}
@font-face{font-family:"IBM Plex Sans";font-style:normal;font-weight:400;font-display:swap;src:url("/fonts/IBMPlexSans-Regular-Pi.woff2") format("woff2");
  unicode-range:U+0E3F,U+2000-200D,U+2015,U+2028-2029,U+202F,U+2032-2033,U+2070,U+2074-2079,U+2080-2089,U+2113,U+2116,U+2126,U+212E,U+2150-2151,U+2153-215E,U+2190-2199,U+21A9-21AA,U+21B0-21B3,U+21B6-21B7,U+21BA-21BB,U+21C4,U+21C6,U+2202,U+2206,U+220F,U+2211,U+2215,U+221A,U+221E,U+222B,U+2248,U+2260,U+2264-2265,U+25CA,U+2713,U+274C,U+2B0E-2B11,U+FEFF,U+FFFD}
@font-face{font-family:"IBM Plex Sans";font-style:normal;font-weight:500;font-display:swap;src:url("/fonts/IBMPlexSans-Medium-Latin1.woff2") format("woff2");
  unicode-range:U+0000,U+000D,U+0020-007E,U+00A0-00FF,U+0131,U+0152-0153,U+02C6,U+02DA,U+02DC,U+2013-2014,U+2018-201A,U+201C-201E,U+2020-2022,U+2026,U+2030,U+2039-203A,U+2044,U+20AC,U+2122,U+2212,U+FB01-FB02}
@font-face{font-family:"IBM Plex Sans";font-style:normal;font-weight:500;font-display:swap;src:url("/fonts/IBMPlexSans-Medium-Pi.woff2") format("woff2");
  unicode-range:U+0E3F,U+2000-200D,U+2015,U+2028-2029,U+202F,U+2032-2033,U+2070,U+2074-2079,U+2080-2089,U+2113,U+2116,U+2126,U+212E,U+2150-2151,U+2153-215E,U+2190-2199,U+21A9-21AA,U+21B0-21B3,U+21B6-21B7,U+21BA-21BB,U+21C4,U+21C6,U+2202,U+2206,U+220F,U+2211,U+2215,U+221A,U+221E,U+222B,U+2248,U+2260,U+2264-2265,U+25CA,U+2713,U+274C,U+2B0E-2B11,U+FEFF,U+FFFD}
@font-face{font-family:"IBM Plex Sans";font-style:normal;font-weight:600 700;font-display:swap;src:url("/fonts/IBMPlexSans-SemiBold-Latin1.woff2") format("woff2");
  unicode-range:U+0000,U+000D,U+0020-007E,U+00A0-00FF,U+0131,U+0152-0153,U+02C6,U+02DA,U+02DC,U+2013-2014,U+2018-201A,U+201C-201E,U+2020-2022,U+2026,U+2030,U+2039-203A,U+2044,U+20AC,U+2122,U+2212,U+FB01-FB02}
@font-face{font-family:"IBM Plex Sans";font-style:normal;font-weight:600 700;font-display:swap;src:url("/fonts/IBMPlexSans-SemiBold-Pi.woff2") format("woff2");
  unicode-range:U+0E3F,U+2000-200D,U+2015,U+2028-2029,U+202F,U+2032-2033,U+2070,U+2074-2079,U+2080-2089,U+2113,U+2116,U+2126,U+212E,U+2150-2151,U+2153-215E,U+2190-2199,U+21A9-21AA,U+21B0-21B3,U+21B6-21B7,U+21BA-21BB,U+21C4,U+21C6,U+2202,U+2206,U+220F,U+2211,U+2215,U+221A,U+221E,U+222B,U+2248,U+2260,U+2264-2265,U+25CA,U+2713,U+274C,U+2B0E-2B11,U+FEFF,U+FFFD}
@font-face{font-family:"IBM Plex Mono";font-style:normal;font-weight:400;font-display:swap;src:url("/fonts/IBMPlexMono-Regular-Latin1.woff2") format("woff2");
  unicode-range:U+0000,U+000D,U+0020-007E,U+00A0-00FF,U+0131,U+0152-0153,U+02C6,U+02DA,U+02DC,U+2013-2014,U+2018-201A,U+201C-201E,U+2020-2022,U+2026,U+2030,U+2039-203A,U+2044,U+20AC,U+2122,U+2212,U+FB01-FB02}
@font-face{font-family:"IBM Plex Mono";font-style:normal;font-weight:400;font-display:swap;src:url("/fonts/IBMPlexMono-Regular-Pi.woff2") format("woff2");
  unicode-range:U+0E3F,U+2000-200D,U+2015,U+2028-2029,U+202F,U+2032-2033,U+2070,U+2074-2079,U+2080-2089,U+2113,U+2116,U+2126,U+212E,U+2150-2151,U+2153-215E,U+2190-2199,U+21A9-21AA,U+21B0-21B3,U+21B6-21B7,U+21BA-21BB,U+21C4,U+21C6,U+2202,U+2206,U+220F,U+2211,U+2215,U+221A,U+221E,U+222B,U+2248,U+2260,U+2264-2265,U+25CA,U+2713,U+274C,U+2B0E-2B11,U+FEFF,U+FFFD}
@font-face{font-family:"IBM Plex Mono";font-style:normal;font-weight:500 700;font-display:swap;src:url("/fonts/IBMPlexMono-Medium-Latin1.woff2") format("woff2");
  unicode-range:U+0000,U+000D,U+0020-007E,U+00A0-00FF,U+0131,U+0152-0153,U+02C6,U+02DA,U+02DC,U+2013-2014,U+2018-201A,U+201C-201E,U+2020-2022,U+2026,U+2030,U+2039-203A,U+2044,U+20AC,U+2122,U+2212,U+FB01-FB02}
@font-face{font-family:"IBM Plex Mono";font-style:normal;font-weight:500 700;font-display:swap;src:url("/fonts/IBMPlexMono-Medium-Pi.woff2") format("woff2");
  unicode-range:U+0E3F,U+2000-200D,U+2015,U+2028-2029,U+202F,U+2032-2033,U+2070,U+2074-2079,U+2080-2089,U+2113,U+2116,U+2126,U+212E,U+2150-2151,U+2153-215E,U+2190-2199,U+21A9-21AA,U+21B0-21B3,U+21B6-21B7,U+21BA-21BB,U+21C4,U+21C6,U+2202,U+2206,U+220F,U+2211,U+2215,U+221A,U+221E,U+222B,U+2248,U+2260,U+2264-2265,U+25CA,U+2713,U+274C,U+2B0E-2B11,U+FEFF,U+FFFD}
/* Archivo Condensed (largura 75 %): só editorial — Home, datas, títulos de capa */
@font-face{font-family:"Archivo Condensed";font-style:normal;font-weight:600;font-display:swap;src:url("/fonts/ArchivoCondensed-SemiBold.woff2") format("woff2")}
@font-face{font-family:"Archivo Condensed";font-style:normal;font-weight:700;font-display:swap;src:url("/fonts/ArchivoCondensed-Bold.woff2") format("woff2")}

/* ---- Tokens Unified --------------------------------------------------- */
:root[data-ui="v2"]{
  color-scheme:light;
  /* superfícies */
  --u-background:#F4F2EE; --u-surface:#FBFAF7; --u-surface-raised:#FFFFFF; --u-surface-subtle:#F0EDE7; --u-surface-hover:#F6F3EE;
  /* texto (contraste sobre --u-surface) */
  --u-text-primary:#1D1A17;   /* 16,6:1 */
  --u-text-secondary:#57514A; /* 7,5:1 */
  --u-text-muted:#6E675E;     /* 5,3:1 */
  --u-text-faint:#A69E93;     /* 2,5:1 — só fios e separadores, nunca texto */
  /* linhas */
  --u-border:#E4DFD6; --u-border-subtle:#EDE9E2; --u-border-strong:#CFC7BA;
  /* marca (cores do logo oficial) */
  --u-brand:#812529; --u-brand-hover:#6A1D21; --u-brand-subtle:#F5EAE8; --u-brand-line:#E4CBC8;
  --u-gold:#87764E; --u-gold-text:#76673F; --u-gold-line:#D9CFB9; --u-gold-subtle:#F3EFE4;
  /* estados — o texto sempre acompanha a cor */
  --u-success:#2F6A4E; --u-success-subtle:#EAF2ED; --u-success-line:#CBDCD1; --u-success-dot:#7FA893;
  --u-warning:#8E5F14; --u-warning-subtle:#F8EFDF; --u-warning-line:#E7D5AE; --u-warning-dot:#C08A2E;
  --u-info:#35597C;    --u-info-subtle:#EBF0F5;    --u-info-line:#C6D9E8;    --u-info-dot:#8A9BAD;
  --u-danger:#A0302A;  --u-danger-subtle:#F8E9E7;  --u-danger-line:#E6C5BF;
  /* tipografia */
  --u-font-ui:"IBM Plex Sans","Segoe UI",system-ui,sans-serif;
  --u-font-code:"IBM Plex Mono",Consolas,monospace;
  --u-font-display:"Archivo Condensed","IBM Plex Sans",sans-serif;
  --u-t-display:32px; --u-t-page:22px; --u-t-section:11px; --u-t-body:13px; --u-t-table:12.5px;
  --u-t-label:11.5px; --u-t-caption:11px; --u-t-code:12px;
  /* espaço (base 4) */
  --u-s-1:4px; --u-s-2:8px; --u-s-3:12px; --u-s-4:16px; --u-s-5:20px; --u-s-6:24px; --u-s-7:32px; --u-s-8:40px;
  /* raio */
  --u-r-xs:3px; --u-r-sm:4px; --u-r-md:6px; --u-r-lg:8px;
  /* sombra — só flutuantes */
  --u-shadow-drawer:-24px 0 48px -24px rgba(29,26,23,.28), -1px 0 0 var(--u-border);
  --u-shadow-pop:0 12px 32px -12px rgba(29,26,23,.28), 0 0 0 1px var(--u-border);
  --u-shadow-toast:0 10px 28px -10px rgba(29,26,23,.4);
  /* movimento (100–300 ms; saída mais curta) */
  --u-m-instant:90ms; --u-m-fast:140ms; --u-m-std:200ms; --u-m-drawer:240ms; --u-m-drawer-out:180ms; --u-m-highlight:1600ms;
  --u-ease-std:cubic-bezier(.2,0,.1,1); --u-ease-enter:cubic-bezier(.16,1,.3,1); --u-ease-exit:cubic-bezier(.4,0,1,1);
  /* foco */
  --u-focus:0 0 0 2px var(--u-surface), 0 0 0 4px color-mix(in srgb,var(--u-brand) 55%,transparent);

  /* ---- Compatibilidade: variáveis da v1 → tokens Unified -------------- */
  --wine:var(--u-brand); --wine-dark:var(--u-brand-hover); --wine-soft:var(--u-brand-subtle); --wine-line:var(--u-brand-line);
  --wine-fill:var(--u-brand); --on-wine:#fff;
  --gold:var(--u-gold); --gold-ink:var(--u-gold-text); --gold-bg:var(--u-gold-subtle); --gold-line:var(--u-gold-line);
  --paper:var(--u-background); --white:var(--u-surface); --ink:var(--u-text-primary);
  --muted:var(--u-text-muted); --faint:var(--u-text-muted);
  --line:var(--u-border); --line-soft:var(--u-border-subtle); --line-strong:var(--u-border-strong); --line-hard:#C4BBAE;
  --surface-soft:var(--u-surface); --surface-mute:var(--u-surface-subtle); --hover:var(--u-surface-hover);
  --backdrop:rgba(29,26,23,.28); --shadow:rgba(29,26,23,.13); --shadow-strong:rgba(29,26,23,.2); --shadow-sm:0 1px 2px rgba(29,26,23,.08);
  --green:var(--u-success); --green-bg:var(--u-success-subtle); --green-line:var(--u-success-line);
  --amber:var(--u-warning); --amber-bg:var(--u-warning-subtle); --amber-line:var(--u-warning-line);
  --blue:var(--u-info); --blue-bg:var(--u-info-subtle); --blue-line:var(--u-info-line);
  --red:var(--u-danger); --red-bg:var(--u-danger-subtle); --red-line:var(--u-danger-line);
  /* usadas pela v1 sem nunca terem sido definidas (caíam no valor herdado) */
  --mono:var(--u-font-code); --border:var(--u-border); --surface:var(--u-surface); --soft:var(--u-surface-subtle);
}
/* O padrão é claro; a preferência explícita escura recebe os tokens abaixo. */
@media (prefers-color-scheme: dark){ :root[data-ui="v2"]{color-scheme:light} }
/* Unified escuro: os mesmos papéis de cor, com contraste sobre carvão. */
:root[data-ui="v2"][data-tema="escuro"]{
 color-scheme:dark;--u-background:#16151A;--u-surface:#1E1D23;--u-surface-raised:#25232B;--u-surface-subtle:#2A2830;--u-surface-hover:#302D36;
 --u-text-primary:#ECEAE4;--u-text-secondary:#C4BFB5;--u-text-muted:#AEA89E;--u-text-faint:#78716B;
 --u-border:#403B46;--u-border-subtle:#312D36;--u-border-strong:#5A535F;
 --u-brand:#E08A86;--u-brand-hover:#F1A6A0;--u-brand-subtle:#3A1D20;--u-brand-line:#6D3A40;
 --u-success:#7FC8A0;--u-success-subtle:#1B2E24;--u-success-line:#33543F;--u-warning:#E3BD72;--u-warning-subtle:#332A1A;--u-warning-line:#5C4C2C;
 --u-info:#8BBBE0;--u-info-subtle:#1A2732;--u-info-line:#33495C;--u-danger:#EF9A8D;--u-danger-subtle:#331F1C;--u-danger-line:#5E3A33;
 --wine-fill:#9D2B2B;--on-wine:#FFFFFF;
}
