/* ==========================================================================
   identidade.css — fonte única da identidade visual da Duae

   Esta folha é carregada primeiro por todas as bases standalone. Cores,
   tipografia, traço e escalas globais vivem aqui; folhas dos apps apenas
   consomem os tokens ou declaram derivativos realmente locais.
   ========================================================================== */

/* Fontes auto-hospedadas — subconjunto latin, com os mesmos arquivos que a
   folha oficial servia ao projeto. As declarações por peso preservam o
   contrato anterior sem uma requisição render-blocking a terceiros. */
@font-face {
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 300;
    font-display: swap;
    src: url("../fonts/montserrat-latin-normal.311d352d9323.woff2") format('woff2');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6,
                   U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F,
                   U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF,
                   U+FFFD;
}

@font-face {
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url("../fonts/montserrat-latin-normal.311d352d9323.woff2") format('woff2');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6,
                   U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F,
                   U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF,
                   U+FFFD;
}

@font-face {
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 500;
    font-display: swap;
    src: url("../fonts/montserrat-latin-normal.311d352d9323.woff2") format('woff2');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6,
                   U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F,
                   U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF,
                   U+FFFD;
}

@font-face {
    font-family: 'Cormorant Infant';
    font-style: normal;
    font-weight: 300;
    font-display: swap;
    src: url("../fonts/cormorant-infant-latin-normal.092f38268114.woff2") format('woff2');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6,
                   U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F,
                   U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF,
                   U+FFFD;
}

@font-face {
    font-family: 'Cormorant Infant';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url("../fonts/cormorant-infant-latin-normal.092f38268114.woff2") format('woff2');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6,
                   U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F,
                   U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF,
                   U+FFFD;
}

@font-face {
    font-family: 'Cormorant Infant';
    font-style: italic;
    font-weight: 300;
    font-display: swap;
    src: url("../fonts/cormorant-infant-latin-italic.5bc248e4ddde.woff2") format('woff2');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6,
                   U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F,
                   U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF,
                   U+FFFD;
}

@font-face {
    font-family: 'Cormorant Infant';
    font-style: italic;
    font-weight: 400;
    font-display: swap;
    src: url("../fonts/cormorant-infant-latin-italic.5bc248e4ddde.woff2") format('woff2');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6,
                   U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F,
                   U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF,
                   U+FFFD;
}

:root {
    /* Identidade congelada */
    --color-primary: #593B2D;
    --color-secondary: #AB955E;
    --color-accent-soft: #E1BAB1;

    /* Superfícies e tinta */
    --color-bg: #0d0b0a;
    --color-bg-alt: #593B2D;
    --color-bg-elevated: #120e0c;
    --color-bg-panel: #14100d;
    --color-bg-media: #17140f;
    --color-on-bg: #ffffff;
    --color-on-bg-soft: rgba(255, 255, 255, 0.82);
    --color-surface: #FAF7F2;
    --color-surface-alt: #F3EEE6;
    --color-on-surface: #2B211B;
    --color-on-surface-soft: #5C4F45;
    --color-paper-home: #F5F1EA;
    --color-secondary-light: #D2BC8B;
    --color-secondary-hover: #c2ab72;
    --color-on-surface-muted: #5F4F2D;
    --color-on-surface-accent: #7C6836;

    /* Estado semântico. O valor preserva o rosé aprovado, mas o contrato é
       independente do acento: futuras mudanças de apoio não apagam o erro. */
    --color-erro: #E1BAB1;
    --color-erro-suave: color-mix(in srgb, var(--color-erro) 12%, transparent);

    /* Tipografia e traço */
    --font-sans: 'Montserrat', system-ui, -apple-system, 'Segoe UI', sans-serif;
    --font-display: 'Cormorant Infant', Georgia, 'Times New Roman', serif;
    --peso-texto: 300;
    --peso-titulo: 300;
    --hairline: 1px solid color-mix(in srgb, var(--color-secondary) 50%, transparent);
    --radius-base: 0;

    /* Grade e densidade globais */
    --respiro-x: clamp(1.5rem, 6vw, 4.5rem);
    --largura-max: 78rem;
    --altura-topo: 6.5rem;
    --space-1: 0.25rem;
    --space-2: 0.5rem;
    --space-3: 0.75rem;
    --space-4: 1rem;
    --space-5: 1.5rem;
    --space-6: 2rem;
    --fs-xxs: 0.625rem;
    --fs-xs: 0.6875rem;
    --fs-sm: 0.75rem;
    --fs-md: 0.8125rem;
    --fs-lg: 0.9375rem;
    --fs-xl: 1.0625rem;

    /* Movimento */
    --transicao: 0.25s ease;
    --ease-saida: cubic-bezier(0.23, 1, 0.32, 1);
    --ease-mov: cubic-bezier(0.77, 0, 0.175, 1);
    --ease-gaveta: cubic-bezier(0.32, 0.72, 0, 1);
    --dur-toque: 140ms;
    --dur-dica: 160ms;
    --dur-menu: 200ms;
    --dur-modal: 300ms;

    /* Compatibilidade durante a consolidação das folhas existentes. Todos
       derivam dos tokens canônicos; nenhuma cor da marca é redeclarada. */
    --duae-preto: var(--color-bg);
    --duae-marrom: var(--color-primary);
    --duae-ouro: var(--color-secondary);
    --duae-rose: var(--color-accent-soft);
    --duae-branco: var(--color-on-bg);
    --duae-branco-suave: var(--color-on-bg-soft);
    --duae-serif: var(--font-display);
    --duae-sans: var(--font-sans);
    --duae-hairline: var(--hairline);
    --duae-ouro-leitura: var(--color-secondary);
    --duae-marrom-leitura: var(--color-primary);
    --lp-respiro-x: var(--respiro-x);
    --lp-largura-max: var(--largura-max);

    /* Aliases da Home V9; os derivativos exclusivos continuam no CSS dela. */
    --preto: var(--color-bg);
    --marrom: var(--color-primary);
    --ouro: var(--color-secondary);
    --rose: var(--color-accent-soft);
    --branco: var(--color-on-bg);
    --serif: var(--font-display);
    --sans: var(--font-sans);
}
