/* ============================================================
   CSS BASE PÚBLICO — variables del tema + resets mínimos
   ============================================================
   La capa pública NO carga el CSS completo de la app (panel):
   carga este archivo chico (variables del tema "Acero y latón"
   + base de página) y publico.css. Menos CSS bloqueante → LCP.
   Variables copiadas de assets/css/base.css (misma paleta).
   ============================================================ */
:root {
    --bg-page: #F4F4F1;
    --panel: #FCFBF8;
    --ink: #2A2A27;
    --ink-soft: #6E6E66;
    --accent: #7A5F1A;
    --accent-hover: #6B5315;
    --accent-ink: #FFFFFF;
    --green: #2F7A5C;
    --green-hover: #27694E;
    --red: #B5422F;
    --naranja: #7A5210;
    --line: #E5E3DC;
    --line-strong: #D6D3CA;
    --radius: 12px;
    --shadow: 0 1px 2px rgba(42, 42, 39, .05), 0 8px 20px rgba(42, 42, 39, .07);
    --font: 'IBM Plex Sans', 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    --font-titulo: 'Bitter', Georgia, 'Times New Roman', serif;
    --font-mono: 'IBM Plex Mono', 'SFMono-Regular', Consolas, 'Liberation Mono', monospace;
    --ok-bg: #E4EFE9;   --ok-ink: #2F7A5C;   --ok-line: #B7D4C5;
    --warn-bg: #FBF3E0; --warn-ink: #7A5210; --warn-line: #EAD9B0;
    --err-bg: #F8E9E4;  --err-ink: #B5422F;  --err-line: #EBCFC6;
    --info-bg: #EFEDE6; --info-ink: #6E6E66; --info-line: #D8D5CA;
}

*, *::before, *::after { box-sizing: border-box; }

html { -webkit-text-size-adjust: 100%; }

body {
    margin: 0;
    background: var(--bg-page);
    color: var(--ink);
    font-family: var(--font);
    font-size: 16px;
    line-height: 1.6;
    -webkit-font-smoothing: antialiased;
}

img, svg { max-width: 100%; height: auto; }

h1, h2, h3 { line-height: 1.25; }

main { display: block; }
