/* ==========================================================================
   SISTEMA DE DESIGN TOKENS (CENTRALIZAÇÃO DE CORES DA PLATAFORMA ECOVOY)
   ========================================================================== */
:root {

    /* =====================================================
       BRAND COLORS
    ===================================================== */

    --theme-primary: #2563eb;
    --theme-primary-hover: #1d4ed8;
    --theme-primary-dark: #1e40af;
    --theme-primary-light: #60a5fa;
    --theme-primary-rgb: 37, 99, 235;
    --theme-overlay-primary: rgba(var(--theme-primary-rgb), 0.6);
    --theme-overlay-strong: rgba(var(--theme-primary-rgb), 0.75);
    --theme-overlay-soft: rgba(var(--theme-primary-rgb), 0.35);


    --theme-secondary: #0f172a;
    --theme-secondary-light: #334155;

    /* --- Cores de Fundo e Bordas --- */
    --card-bg: #ffffff;
    --card-border: #E9ECEF;
    --card-border-hover: #DEE2E6;
    --operator-bg: #F8F9FA;
    --operator-box-border: #E9ECEF;
    
    /* --- Elementos de UI --- */
    --badge-primary-light: #EBF3FF;
    --badge-primary: var(--theme-primary);    
    --btn-primary-start: var(--theme-primary-light);        /* #60a5fa - Tom mais claro no topo do gradiente */
    --btn-primary-end: var(--theme-primary);                /* #2563eb - Tom principal na base */
    --btn-primary-shadow: rgba(var(--theme-primary-rgb), 0.25);
    --btn-primary-shadow-hover: rgba(var(--theme-primary-rgb), 0.45);
    
    --btn-secondary-border: #E9ECEF;
    --btn-secondary-border-hover: #CED4DA;
    --btn-secondary-bg-hover: #F8F9FA;

    /* =====================================================
       ACCENT COLORS
    ===================================================== */

    --theme-accent-bg: #eff6ff;
    --theme-accent-border: #93c5fd;
    --theme-accent-text: #1d4ed8;

    /* =====================================================
       SUCCESS
    ===================================================== */

    --theme-success: #10b981;
    --theme-success-hover: #059669;
    --theme-success-bg: #f0fdf4;
    --theme-success-border: #bbf7d0;
    --theme-success-text: #166534;

    /* =====================================================
       WARNING
    ===================================================== */

    --theme-warning: #f59e0b;
    --theme-warning-hover: #d97706;
    --theme-warning-bg: #fffbeb;
    --theme-warning-border: #fde68a;
    --theme-warning-text: #92400e;

    /* =====================================================
       DANGER
    ===================================================== */

    --theme-danger: #ef4444;
    --theme-danger-hover: #dc2626;
    --theme-danger-bg: #fef2f2;
    --theme-danger-border: #fecaca;
    --theme-danger-text: #991b1b;

    /* =====================================================
       INFO
    ===================================================== */

    --theme-info: #0ea5e9;
    --theme-info-hover: #0284c7;
    --theme-info-bg: #f0f9ff;
    --theme-info-border: #bae6fd;
    --theme-info-text: #0369a1;

    /* =====================================================
       PREMIUM / VIP
    ===================================================== */

    --theme-gold: #f59e0b;
    --theme-gold-light: #fef3c7;
    --theme-gold-dark: #b45309;

    /* =====================================================
       SURFACES
    ===================================================== */

    --theme-surface: #ffffff;
    --theme-surface-muted: #f8fafc;
    --theme-surface-soft: #f1f5f9;
    --theme-surface-dark: #0f172a;
    --theme-surface-transparent: transparent;

    /* =====================================================
       BACKGROUNDS
    ===================================================== */

    --bg-white: #ffffff;
    --bg-light: #f8fafc;
    --bg-body: #f1f5f9;
    --bg-dark: #0f172a;

    /* =====================================================
       BORDERS
    ===================================================== */

    --theme-border-light: #e2e8f0;
    --theme-border-medium: #cbd5e1;
    --theme-border-dark: #94a3b8;
    --theme-border-focus: var(--theme-primary);

    /* =====================================================
       TEXT COLORS
    ===================================================== */
    --theme-border-radius: 12px; 

    --theme-text-dark: #0f172a;
    --theme-text-main: #1e293b;
    --theme-text-secondary: #475569;
    --theme-text-muted: #64748b;
    --theme-text-light: #94a3b8;
    --theme-text-white: #ffffff;

    --text-dark: #0f172a;
    --text-medium: #475569;
    --text-light: #ffffff;

    /* =====================================================
       SHADOWS
    ===================================================== */

    --theme-shadow-sm:
        0 2px 8px rgba(15, 23, 42, 0.05);

    --theme-shadow-md:
        0 4px 12px rgba(15, 23, 42, 0.06),
        0 2px 4px rgba(15, 23, 42, 0.04);

    --theme-shadow-lg:
        0 12px 24px rgba(15, 23, 42, 0.08),
        0 4px 8px rgba(15, 23, 42, 0.04);

    --theme-shadow-hover:
        0 20px 40px rgba(15, 23, 42, 0.12),
        0 8px 16px rgba(15, 23, 42, 0.08);

    --shadow-primary:
        rgba(37, 99, 235, 0.15);

    --shadow-primary-hover:
        rgba(37, 99, 235, 0.25);

    /* =====================================================
       BORDER RADIUS
    ===================================================== */

    --radius-xs: 4px;
    --radius-sm: 6px;
    --radius-md: 10px;
    --radius-lg: 14px;
    --radius-xl: 18px;
    --radius-pill: 999px;

    /* =====================================================
       TRANSITIONS
    ===================================================== */

    --transition-fast: .15s ease;
    --transition-normal: .25s ease;
    --transition-slow: .35s ease;

    /* =====================================================
       TYPOGRAPHY
    ===================================================== */

    --theme-font-sans:
        Inter,
        -apple-system,
        BlinkMacSystemFont,
        "Segoe UI",
        Roboto,
        Helvetica,
        Arial,
        sans-serif;

    /* =====================================================
       PDF / STATEMENT
    ===================================================== */

    --statement-bg-body: var(--bg-light);

    --statement-user-info: var(--theme-text-muted);
    --statement-period-text: var(--theme-text-muted);

    --statement-bg-light-1: #f9f9fb;
    --statement-bg-light-2: #f8f8fa;
    --statement-bg-light-3: #f5f5f5;
    --statement-bg-light-7: #eff0f2;

    --statement-table-bg: var(--theme-surface);

    --statement-table-header-bg: var(--theme-primary);
    --statement-table-header-text: var(--theme-text-white);
    --statement-table-header-border: var(--theme-primary);

    --statement-card-bg: var(--theme-surface-soft);

    --statement-shadow:
        0 0 20px rgba(0, 0, 0, 0.10);

    /* =====================================================
       GRADIENT BUTTONS
    ===================================================== */

    --gradient-button-primary:
        linear-gradient(
            -180deg,
            var(--theme-primary),
            var(--theme-primary-light)
        );

    --gradient-button-secondary:
        linear-gradient(
            -180deg,
            var(--theme-surface),
            var(--theme-surface-soft)
        );

    /* =====================================================
       GRADIENTS
    ===================================================== */
    --theme-card-gradient-start: #f8f9fa; /* Cinza bem claro (quase branco) */
    --theme-card-gradient-end: #e9ecef;   /* Um tom acima para dar o efeito de profundidade */
    
    --gradient-primary: linear-gradient(
        to right,
        var(--theme-primary),
        var(--theme-primary-hover)
    );

    --gradient-primary-reverse: linear-gradient(
        to right,
        var(--theme-primary-hover),
        var(--theme-primary)
    );

    --gradient-dark:
        linear-gradient(
            135deg,
            #0f172a 0%,
            #1e293b 100%
        );

    --gradient-success:
        linear-gradient(
            135deg,
            #10b981 0%,
            #34d399 100%
        );
    --gradient-hero-overlay:
    linear-gradient(
        rgba(117, 164, 234, 0.612),
        rgba(110, 168, 254, 0.7)
    );
}