/* ===================================================================
   MAIS PROTEGE - DESIGN TOKENS
   Padrao Corporativo Premium / Clean Sofisticado / Slim
   Inspirado em Apple/Linear, neutro alto, uma unica cor primaria.
   =================================================================== */
:root {
    /* === TIPOGRAFIA === */
    --font: "Inter", "SF Pro Text", system-ui, -apple-system, BlinkMacSystemFont,
            "Segoe UI", Roboto, sans-serif;
    --font-mono: "SF Mono", "JetBrains Mono", "Fira Code", Menlo, monospace;

    --fs-11: 11px;
    --fs-12: 12px;
    --fs-13: 13px;
    --fs-14: 14px;
    --fs-16: 16px;
    --fs-18: 18px;
    --fs-20: 20px;
    --fs-24: 24px;
    --fs-28: 28px;
    --fs-32: 32px;

    --lh-tight: 1.2;
    --lh-normal: 1.45;
    --lh-loose: 1.6;

    --fw-regular: 400;
    --fw-medium: 500;
    --fw-semibold: 600;
    --fw-bold: 700;

    /* === CORES NEUTRAS === */
    --bg:           #fafbfc;
    --bg-elev:      #f3f5f8;
    --surface:      #ffffff;
    --surface-2:    #fafbfc;
    --line:         #e6e8ec;
    --line-strong:  #cdd2da;

    --text:         #0d1117;
    --text-2:       #4a5260;
    --text-3:       #7e8794;
    --muted:        #9aa3af;
    --muted-soft:   #c2c8d0;

    /* === COR PRIMARIA UNICA === */
    --primary:        #1e40af;
    --primary-2:      #1d4ed8;
    --primary-strong: #1e3a8a;
    --primary-soft:   #eef2ff;
    --primary-line:   #c7d2fe;
    --primary-contrast:#ffffff;

    /* === COR DE ACAO ESCURA (CTA Apple-style) === */
    --action:        #0f172a;
    --action-hover:  #020617;
    --action-line:   #1e293b;

    /* === SEMANTICAS === */
    --success:        #0f7a44;
    --success-soft:   #dcfae6;
    --success-line:   #b7f0ce;

    --danger:         #b42318;
    --danger-soft:    #fee2e2;
    --danger-line:    #fca5a5;

    --warn:           #b45309;
    --warn-soft:      #fff7ed;
    --warn-line:      #fed7aa;

    --info:           #1d4ed8;
    --info-soft:      #eff6ff;
    --info-line:      #bfdbfe;

    /* === ELEVATION === */
    --shadow-xs:  0 1px 2px rgba(15,23,42,.04);
    --shadow-sm:  0 4px 12px rgba(15,23,42,.06);
    --shadow-md:  0 12px 32px rgba(15,23,42,.08);
    --shadow-lg:  0 24px 56px rgba(15,23,42,.12);

    /* === RADIUS === */
    --r-xs:  6px;
    --r-sm:  8px;
    --r-md:  12px;
    --r-lg:  16px;
    --r-xl:  20px;
    --r-pill:999px;

    /* === SPACING SCALE (8pt) === */
    --s-0: 0px;
    --s-1: 4px;
    --s-2: 8px;
    --s-3: 12px;
    --s-4: 16px;
    --s-5: 20px;
    --s-6: 24px;
    --s-7: 28px;
    --s-8: 32px;
    --s-10:40px;
    --s-12:48px;

    /* === TRANSITIONS === */
    --t-fast: 120ms ease;
    --t-base: 180ms ease;
    --t-slow: 260ms ease;

    /* === Z-INDEX === */
    --z-base:    1;
    --z-sticky:  100;
    --z-header:  200;
    --z-dropdown:300;
    --z-modal:   500;
    --z-toast:   700;
}

/* Reset minimo */
*, *::before, *::after { box-sizing: border-box; }
html, body { margin: 0; padding: 0; }
body {
    font-family: var(--font);
    font-size: var(--fs-14);
    line-height: var(--lh-normal);
    color: var(--text);
    background: var(--bg);
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
a { color: inherit; text-decoration: none; }
button { font-family: inherit; }
::-webkit-scrollbar { width: 8px; height: 8px; }
::-webkit-scrollbar-track { background: transparent; }
::-webkit-scrollbar-thumb { background: var(--line-strong); border-radius: 99px; }
::-webkit-scrollbar-thumb:hover { background: var(--muted); }
