:root {
    --primary-color: #DB2777;
    --secondary-color: #9333EA;
    --accent-color: #EC4899;
    --background-color: #FFFFFF;
    --background-secondary: #F9FAFB;
    --background-card: #FFFFFF;
    --text-primary: #1F2937;
    --text-secondary: #6B7280;
    --text-muted: #9CA3AF;
    --button-primary-bg: #DB2777;
    --button-primary-text: #FFFFFF;
    --button-primary-hover: #BE185D;
    --button-secondary-bg: #9333EA;
    --button-secondary-text: #FFFFFF;
    --button-secondary-hover: #7E22CE;
    --border-color: #E5E7EB;
    --border-focus: #DB2777;
    --success-color: #10B981;
    --warning-color: #F59E0B;
    --error-color: #EF4444;
    --info-color: #3B82F6;
    --navbar-bg: #FFFFFF;
    --navbar-text: #1F2937;
    --navbar-hover: #DB2777;
    --footer-bg: #1F2937;
    --footer-text: #FFFFFF;
    --card-shadow: 0 1px 3px rgba(0,0,0,0.12);
    --card-hover-shadow: 0 4px 6px rgba(219,39,119,0.15);
    --font-family: Poppins, sans-serif;
    --font-size-base: 16px;
    --font-size-small: 14px;
    --font-size-large: 18px;
    --spacing-small: 8px;
    --spacing-medium: 16px;
    --spacing-large: 24px;
    --border-radius-small: 4px;
    --border-radius-medium: 8px;
    --border-radius-large: 12px;
}

/* Aplicação de cores harmonizadas - Layout preservado */

/* Cores de texto */
body { color: var(--text-primary); }
.text-secondary { color: var(--text-secondary); }
.text-muted { color: var(--text-muted); }

/* Links */
a { color: var(--primary-color); }
a:hover { color: var(--secondary-color); }

/* Botões primários */
.btn-primary, button.btn-primary, a.btn-primary {
    background: linear-gradient(135deg, var(--primary-color), var(--secondary-color)) !important;
    color: var(--button-primary-text) !important;
    border-color: var(--primary-color) !important;
}

/* Botões secundários */
.btn-secondary {
    background-color: var(--button-secondary-bg) !important;
    color: var(--button-secondary-text) !important;
    border-color: var(--button-secondary-bg) !important;
}

/* Navbar */
.navbar, nav.navbar {
    background-color: var(--navbar-bg) !important;
}
.navbar a, .navbar-brand, .nav-link {
    color: var(--navbar-text) !important;
}
.navbar a:hover, .nav-link:hover {
    color: var(--navbar-hover) !important;
}

/* Footer */
footer, .footer {
    background-color: var(--footer-bg) !important;
    color: var(--footer-text) !important;
}
footer a, .footer a {
    color: var(--footer-text) !important;
    opacity: 0.8;
}
footer a:hover, .footer a:hover {
    opacity: 1;
}

/* Cards */
.card {
    background-color: var(--background-card) !important;
    border-color: var(--border-color) !important;
}
.card-header {
    background: linear-gradient(135deg, var(--primary-color), var(--secondary-color)) !important;
    color: white !important;
}

/* Badges */
.badge-vip, .badge-premium, .badge-gold, .badge-top {
    background: linear-gradient(135deg, var(--primary-color), var(--secondary-color)) !important;
    color: white !important;
}

/* Formulários */
input:focus, textarea:focus, select:focus {
    border-color: var(--border-focus) !important;
    box-shadow: 0 0 0 0.2rem rgba(219, 39, 119, 0.25) !important;
}

/* Alertas */
.alert-success { background-color: var(--success-color) !important; }
.alert-warning { background-color: var(--warning-color) !important; }
.alert-error, .alert-danger { background-color: var(--error-color) !important; }
.alert-info { background-color: var(--info-color) !important; }

/* Tabelas */
.table thead th {
    background: linear-gradient(135deg, var(--primary-color), var(--secondary-color)) !important;
    color: white !important;
}

/* Paginação */
.pagination .page-link { color: var(--primary-color) !important; }
.pagination .page-item.active .page-link {
    background: linear-gradient(135deg, var(--primary-color), var(--secondary-color)) !important;
    border-color: var(--primary-color) !important;
}
