/* ============================================
   BESTMIMO DESIGN SYSTEM - ONYX & CASHMERE (SUGAR NICHE)
   Luxo Discreto, Elegância e Alto Padrão
   ============================================ */

:root {
    /* Paleta Principal - Cashmere Rose (Elegante, Feminino, Luxuoso) */
    --primary-color: #bca38f;    /* Rose Quartz / Nude Sofisticado */
    --primary-hover: #a88d78;    /* Tom mais escuro para hover */
    --primary-light: #f5f1ef;    /* Fundo ultra suave (Blush) */
    --primary-dark: #8b7362;     /* Contraste profundo */

    /* Paleta Secundária - Onyx / Deep Charcoal (Masculino, Sóbrio, Patrocinador) */
    --secondary-color: #2b2b2b;
    --secondary-hover: #1a1a1a;
    --secondary-light: #f0f0f0;

    /* Cores de Alerta (Tons pastéis e terrosos - "Aesthetic" moderna) */
    --success-color: #82a08c;    /* Eucalyptus / Sage Green (Dinheiro/Sucesso discreto) */
    --success-hover: #6b8a75;
    --success-light: #edf2ef;

    --danger-color: #cc8484;     /* Faded Coral / Red (Alerta sem gritar) */
    --danger-hover: #b56b6b;
    --danger-light: #fcf4f4;

    --warning-color: #d4b88c;    /* Warm Sand (Substitui o dourado forte) */
    --warning-hover: #bf9f73;
    --warning-light: #fdfaf5;

    --info-color: #8b9daa;       /* Slate Blue */
    --info-hover: #728694;
    --info-light: #f2f5f7;

    /* Cores Neutras (Off-whites quentes e cinzas elegantes) */
    --white: #ffffff;
    --gray-50: #fdfcfb;          /* Alabaster - Fundo da tela mais confortável */
    --gray-100: #f7f6f5;
    --gray-200: #e8e6e3;         /* Bordas sutis */
    --gray-300: #d6d4d1;
    --gray-400: #a3a19e;
    --gray-500: #858380;         /* Textos secundários */
    --gray-600: #63625f;
    --gray-700: #42413f;         /* Textos principais */
    --gray-800: #2b2a29;
    --gray-900: #1c1b1a;         /* Títulos e Menu */
    --black: #000000;

    /* Tipografia e Estrutura */
    --font-family-base: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    --font-family-heading: 'Inter', sans-serif;

    --font-size-xs: 0.75rem;
    --font-size-sm: 0.85rem;
    --font-size-base: 0.95rem;
    --font-size-lg: 1.1rem;
    --font-size-xl: 1.25rem;
    --font-size-2xl: 1.5rem;
    --font-size-3xl: 1.875rem;

    --font-weight-light: 300;
    --font-weight-normal: 400;
    --font-weight-medium: 500;
    --font-weight-semibold: 600;
    --font-weight-bold: 700;

    --line-height-tight: 1.25;
    --line-height-normal: 1.5;

    /* Espaçamento */
    --spacing-xs: 0.25rem;
    --spacing-sm: 0.5rem;
    --spacing-md: 1rem;
    --spacing-lg: 1.5rem;
    --spacing-xl: 2rem;

    /* Bordas - Levemente arredondadas, maduras */
    --radius-sm: 0.25rem;
    --radius-md: 0.4rem;
    --radius-lg: 0.6rem;
    --radius-xl: 0.8rem;
    --radius-full: 9999px;

    /* Sombras - Estilo "Soft Light" (Folha de papel flutuante) */
    --shadow-sm: 0 2px 4px 0 rgba(28, 27, 26, 0.02);
    --shadow-md: 0 4px 8px -2px rgba(28, 27, 26, 0.04), 0 2px 4px -2px rgba(28, 27, 26, 0.02);
    --shadow-lg: 0 12px 20px -4px rgba(28, 27, 26, 0.06), 0 4px 8px -3px rgba(28, 27, 26, 0.03);

    --transition-base: 250ms ease-in-out;
}

/* RESET E BASE */
* { box-sizing: border-box; }

body {
    font-family: var(--font-family-base);
    font-size: var(--font-size-base);
    line-height: var(--line-height-normal);
    color: var(--gray-700);
    background-color: var(--gray-50);
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

h1, h2, h3, h4, h5, h6 {
    font-family: var(--font-family-heading);
    font-weight: var(--font-weight-bold);
    letter-spacing: -0.02em;
    color: var(--gray-900);
    margin-top: 0;
    margin-bottom: var(--spacing-md);
}

.text-primary { color: var(--primary-color) !important; }
.text-success { color: var(--success-color) !important; }
.text-warning { color: var(--warning-color) !important; }
.text-danger { color: var(--danger-color) !important; }
.text-muted { color: var(--gray-500) !important; }

/* Global Icon Spacing */
i.fas, i.far, i.fab {
    margin-right: 0.25rem;
}
.btn-bmo i {
    margin-right: 0.4rem;
}

/* Margens */
.m-0 { margin: 0 !important; }
.mt-2 { margin-top: var(--spacing-sm) !important; }
.mt-4 { margin-top: var(--spacing-lg) !important; }
.mb-2 { margin-bottom: var(--spacing-sm) !important; }
.mb-4 { margin-bottom: var(--spacing-lg) !important; }