/* Variáveis CSS - Cores, tamanhos e configurações globais */
:root {
    /* Cores principais - Baseadas na identidade da marca */
    --primary-color: #EC6B2E;
    /* Cor laranja principal da Distrito Pizza */
    --primary-hover: #d45a1f;
    /* Cor laranja escurecida para hover */
    --primary-light: #ff8a52;
    /* Cor laranja clara para backgrounds suaves */

    /* Cores de status - Para feedback visual */
    --success-color: #4ade80;
    /* Verde para sucesso/autorizado */
    --success-light: #dcfce7;
    /* Verde claro para backgrounds */
    --warning-color: #fbbf24;
    /* Amarelo para avisos */
    --warning-light: #fef3c7;
    /* Amarelo claro para backgrounds */
    --error-color: #ef4444;
    /* Vermelho para erros */
    --error-light: #fee2e2;
    /* Vermelho claro para backgrounds */
    --info-color: #3b82f6;
    /* Azul para informações */
    --info-light: #dbeafe;
    /* Azul claro para backgrounds */

    /* Cores neutras - Para textos e backgrounds */
    --text-primary: #1f2937;
    /* Texto principal escuro */
    --text-secondary: #6b7280;
    /* Texto secundário cinza */
    --text-light: #9ca3af;
    /* Texto claro */
    --background: #f9fafb;
    /* Background principal */
    --surface: #ffffff;
    /* Cards e superfícies */
    --border: #e5e7eb;
    /* Bordas */
    --border-focus: var(--primary-color);
    /* Bordas em foco */

    /* Sombras - Para profundidade visual */
    --shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
    --shadow-md: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
    --shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.1);
    --shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, 0.1);

    /* Tamanhos de fonte - Sistema tipográfico */
    --font-xs: 0.75rem;
    /* 12px */
    --font-sm: 0.875rem;
    /* 14px */
    --font-base: 1rem;
    /* 16px */
    --font-lg: 1.125rem;
    /* 18px */
    --font-xl: 1.25rem;
    /* 20px */
    --font-2xl: 1.5rem;
    /* 24px */
    --font-3xl: 1.875rem;
    /* 30px */

    /* Espaçamentos - Sistema de grid 8px */
    --spacing-xs: 0.25rem;
    /* 4px */
    --spacing-sm: 0.5rem;
    /* 8px */
    --spacing-md: 1rem;
    /* 16px */
    --spacing-lg: 1.5rem;
    /* 24px */
    --spacing-xl: 2rem;
    /* 32px */
    --spacing-2xl: 3rem;
    /* 48px */

    /* Border radius - Arredondamentos */
    --radius-sm: 0.25rem;
    /* 4px */
    --radius-md: 0.5rem;
    /* 8px */
    --radius-lg: 0.75rem;
    /* 12px */
    --radius-xl: 1rem;
    /* 16px */
    --radius-full: 9999px;
    /* Círculo completo */

    /* Transições - Para animações suaves */
    --transition-fast: 150ms ease-in-out;
    --transition-base: 250ms ease-in-out;
    --transition-slow: 350ms ease-in-out;

    /* Larguras máximas - Para containers */
    --container-sm: 640px;
    --container-md: 768px;
    --container-lg: 1024px;
    --container-xl: 1280px;
}

/* Classes utilitárias globais */
.container {
    width: 100%;
    max-width: var(--container-lg);
    margin: 0 auto;
    padding: 0 var(--spacing-md);
}

.text-center {
    text-align: center;
}

.hidden {
    display: none !important;
}

/* Estados de carregamento */
.loading {
    opacity: 0.6;
    pointer-events: none;
}