:root {
    --primary-yellow: #FCD116;
    --primary-blue: #0078E7;
    --primary-pink: #E61A80;
    
    --primary-pink-hover: #c9126d;
    --primary-blue-hover: #005ec5;
    
    --brand-font: 'Fredoka', 'Helvetica Neue', Arial, sans-serif;
}

/* Base Light Mode Styles */
html, body {
    font-family: var(--brand-font);
    background-color: #f8fafc !important;
    color: #1e293b !important;
}

main {
    background-color: #f8fafc !important;
}

.content {
    background-color: #f8fafc !important;
    padding-top: 1.1rem;
}

h1, h2, h3, h4, h5, h6 {
    font-family: var(--brand-font);
    font-weight: 700;
    color: #1e293b !important;
}

h1:focus {
    outline: none;
}

a, .btn-link {
    color: var(--primary-blue);
    text-decoration: none;
    transition: color 0.2s ease-in-out;
}

a:hover, .btn-link:hover {
    color: var(--primary-pink);
}

/* Button overrides - strictly using Pink, Blue, and White */
.btn-primary {
    color: #fff !important;
    background-color: var(--primary-pink) !important;
    border-color: var(--primary-pink) !important;
    font-family: var(--brand-font);
    font-weight: 600;
    border-radius: 20px;
    padding: 0.4rem 1.2rem;
    transition: all 0.2s ease-in-out;
}

.btn-primary:hover, .btn-primary:focus, .btn-primary:active {
    background-color: var(--primary-pink-hover) !important;
    border-color: var(--primary-pink-hover) !important;
    transform: translateY(-1px);
}

.btn-pink {
    color: #ffffff !important;
    background-color: var(--primary-pink) !important;
    border-color: var(--primary-pink) !important;
    font-family: var(--brand-font);
    font-weight: 600;
    transition: all 0.2s ease-in-out;
}

.btn-pink:hover, .btn-pink:focus, .btn-pink:active {
    color: #ffffff !important;
    background-color: var(--primary-pink-hover) !important;
    border-color: var(--primary-pink-hover) !important;
    transform: translateY(-1px);
}

.btn-outline-pink {
    color: var(--primary-pink) !important;
    background-color: transparent !important;
    border-color: var(--primary-pink) !important;
    font-family: var(--brand-font);
    font-weight: 600;
    transition: all 0.2s ease-in-out;
}

.btn-outline-pink:hover, .btn-outline-pink:focus, .btn-outline-pink:active {
    color: #ffffff !important;
    background-color: var(--primary-pink) !important;
    border-color: var(--primary-pink) !important;
    transform: translateY(-1px);
}

.bg-pink {
    background-color: var(--primary-pink) !important;
}

.text-pink {
    color: var(--primary-pink) !important;
}

.btn-secondary {
    color: #fff !important;
    background-color: var(--primary-blue) !important;
    border-color: var(--primary-blue) !important;
    font-family: var(--brand-font);
    font-weight: 600;
    border-radius: 20px;
    padding: 0.4rem 1.2rem;
    transition: all 0.2s ease-in-out;
}

.btn-secondary:hover, .btn-secondary:focus, .btn-secondary:active {
    background-color: var(--primary-blue-hover) !important;
    border-color: var(--primary-blue-hover) !important;
    transform: translateY(-1px);
}

/* Map success buttons to Blue (positive confirmation) */
.btn-success {
    color: #fff !important;
    background-color: var(--primary-blue) !important;
    border-color: var(--primary-blue) !important;
    font-family: var(--brand-font);
    font-weight: 600;
    border-radius: 20px;
    padding: 0.4rem 1.2rem;
    transition: all 0.2s ease-in-out;
}

.btn-success:hover, .btn-success:focus, .btn-success:active {
    background-color: var(--primary-blue-hover) !important;
    border-color: var(--primary-blue-hover) !important;
    transform: translateY(-1px);
}

/* Map outline success/danger to Blue/Pink outline */
.btn-outline-success {
    color: var(--primary-blue) !important;
    border-color: var(--primary-blue) !important;
    font-family: var(--brand-font);
    font-weight: 600;
    border-radius: 20px;
    transition: all 0.2s ease-in-out;
}
.btn-outline-success:hover {
    background-color: var(--primary-blue) !important;
    color: #ffffff !important;
}

.btn-outline-danger {
    color: var(--primary-pink) !important;
    border-color: var(--primary-pink) !important;
    font-family: var(--brand-font);
    font-weight: 600;
    border-radius: 20px;
    transition: all 0.2s ease-in-out;
}
.btn-outline-danger:hover {
    background-color: var(--primary-pink) !important;
    color: #ffffff !important;
}

.btn:focus, .btn:active:focus, .btn-link.nav-link:focus, .form-control:focus, .form-check-input:focus {
  box-shadow: 0 0 0 0.1rem white, 0 0 0 0.25rem var(--primary-pink);
}

/* =========================================================================
   GLOBAL LIGHT SYSTEM THEME OVERRIDES (Converting dark mode to light mode)
   ========================================================================= */

/* Dark Mode Backgrounds -> White / Light Grey */
.bg-darker {
    background-color: #f8fafc !important;
    color: #1e293b !important;
}

.bg-dark-glass:not([style*="background"]) {
    background-color: #ffffff !important;
    backdrop-filter: none !important;
    border: 1px solid rgba(0, 0, 0, 0.08) !important;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.04) !important;
    color: #1e293b !important;
}

.card:not([style*="background"]):not(.bg-dark):not(.bg-primary):not(.bg-danger):not(.bg-success):not([style*="linear-gradient"]) {
    background-color: #ffffff !important;
    border: 1px solid rgba(0, 0, 0, 0.08) !important;
    color: #1e293b !important;
}

/* Borders */
.border-secondary {
    border-color: rgba(0, 0, 0, 0.08) !important;
}

/* Text Colors - Base Definitions */
.text-dark, .badge.text-dark {
    color: #1e293b !important;
}

.text-white-50 {
    color: rgba(255, 255, 255, 0.75) !important;
}

.text-light {
    color: #f8fafc !important;
}

.text-secondary {
    color: #64748b !important;
}

.text-muted {
    color: #94a3b8 !important;
}

.glow-text {
    text-shadow: none !important;
}

.text-pink {
    color: var(--primary-pink) !important;
}

.bg-pink {
    background-color: var(--primary-pink) !important;
}

/* Proper semantic colors for warnings and successes */
.text-warning {
    color: #d97706 !important; /* Accessible warm amber */
}

.text-success {
    color: #16a34a !important; /* Accessible vibrant green */
}

/* Solid Buttons & Badges: Always ensure crisp white text (excludes transparent/opacity badges) */
.btn-primary, .btn-primary *,
.btn-pink, .btn-pink *,
.btn-secondary, .btn-secondary *,
.btn-success, .btn-success *,
.btn-danger, .btn-danger *,
.btn-dark, .btn-dark *,
.btn-purple, .btn-purple *,
.badge.bg-primary:not([class*="bg-opacity"]):not([class*="opacity-"]), .badge.bg-primary:not([class*="bg-opacity"]):not([class*="opacity-"]) *,
.badge.bg-success:not([class*="bg-opacity"]):not([class*="opacity-"]), .badge.bg-success:not([class*="bg-opacity"]):not([class*="opacity-"]) *,
.badge.bg-danger:not([class*="bg-opacity"]):not([class*="opacity-"]), .badge.bg-danger:not([class*="bg-opacity"]):not([class*="opacity-"]) *,
.badge.bg-pink:not([class*="bg-opacity"]):not([class*="opacity-"]), .badge.bg-pink:not([class*="bg-opacity"]):not([class*="opacity-"]) *,
.badge.bg-dark:not([class*="bg-opacity"]):not([class*="opacity-"]), .badge.bg-dark:not([class*="bg-opacity"]):not([class*="opacity-"]) *,
.badge.bg-purple:not([class*="bg-opacity"]):not([class*="opacity-"]), .badge.bg-purple:not([class*="bg-opacity"]):not([class*="opacity-"]) *,
.badge.bg-secondary:not([class*="bg-opacity"]):not([class*="opacity-"]), .badge.bg-secondary:not([class*="bg-opacity"]):not([class*="opacity-"]) * {
    color: #ffffff !important;
}

/* Outline Buttons: Transparent outline buttons must NEVER have white text by default */
.btn-outline-secondary,
.btn-outline-secondary.text-white,
.btn-outline-secondary .text-white {
    color: #475569 !important;
    border-color: #cbd5e1 !important;
    background-color: transparent !important;
}

.btn-outline-secondary:hover,
.btn-outline-secondary:focus {
    color: #1e293b !important;
    background-color: #f1f5f9 !important;
    border-color: #94a3b8 !important;
}

.btn-outline-warning {
    color: #92400e !important;
    border-color: #f59e0b !important;
    background-color: #fffbeb !important;
    font-weight: 700 !important;
}
.btn-outline-warning:hover,
.btn-outline-warning:focus {
    background-color: #fef3c7 !important;
    color: #78350f !important;
    border-color: #d97706 !important;
}

/* Global Accessible Contrast Overrides */
.text-warning {
    color: #b45309 !important; /* Deep readable amber instead of pale yellow */
}
.text-info {
    color: #0284c7 !important; /* Deep readable sky blue instead of pale cyan */
}

/* Bootstrap Missing Opacity Utilities */
.bg-opacity-10 { --bs-bg-opacity: 0.1 !important; }
.bg-opacity-15 { --bs-bg-opacity: 0.15 !important; }
.bg-opacity-20 { --bs-bg-opacity: 0.2 !important; }
.bg-opacity-25 { --bs-bg-opacity: 0.25 !important; }

/* Opacity Badges with High-Contrast Accessible Colors */
.badge.bg-primary.bg-opacity-10,
.badge.bg-primary.bg-opacity-15,
.badge.bg-primary.bg-opacity-20,
.badge.bg-primary[class*="bg-opacity"],
.badge[class*="bg-opacity"][class*="text-primary"] {
    background-color: #eff6ff !important;
    color: #0284c7 !important;
    border: 1px solid #bfdbfe !important;
}
.badge.bg-primary[class*="bg-opacity"] *,
.badge[class*="bg-opacity"][class*="text-primary"] * {
    color: #0284c7 !important;
}

.badge.bg-info.bg-opacity-10,
.badge.bg-info[class*="bg-opacity"],
.badge[class*="bg-opacity"][class*="text-info"] {
    background-color: #e0f2fe !important;
    color: #0369a1 !important;
    border: 1px solid #bae6fd !important;
}

.badge.bg-warning.bg-opacity-10,
.badge.bg-warning[class*="bg-opacity"],
.badge[class*="bg-opacity"][class*="text-warning"] {
    background-color: #fef3c7 !important;
    color: #92400e !important;
    border: 1px solid #fde68a !important;
}

.badge.bg-success.bg-opacity-10,
.badge.bg-success[class*="bg-opacity"],
.badge[class*="bg-opacity"][class*="text-success"] {
    background-color: #dcfce7 !important;
    color: #15803d !important;
    border: 1px solid #86efac !important;
}

.badge.bg-secondary.bg-opacity-10,
.badge.bg-secondary[class*="bg-opacity"],
.badge[class*="bg-opacity"][class*="text-secondary"] {
    background-color: #f1f5f9 !important;
    color: #334155 !important;
    border: 1px solid #cbd5e1 !important;
}

.badge.bg-danger.bg-opacity-10,
.badge.bg-danger.bg-opacity-15,
.badge.bg-danger.bg-opacity-20,
.badge.bg-danger[class*="bg-opacity"],
.badge[class*="bg-opacity"][class*="text-danger"] {
    background-color: #fee2e2 !important;
    color: #991b1b !important;
    border: 1px solid #fca5a5 !important;
}
.badge.bg-danger[class*="bg-opacity"] *,
.badge[class*="bg-opacity"][class*="text-danger"] * {
    color: #991b1b !important;
}

/* Metas & Desempenho - Cores do Sistema com Alto Contraste */
.badge-meta-superada {
    background-color: #eff6ff !important;
    color: #0078E7 !important;
    border: 1px solid #93c5fd !important;
}
.badge-meta-batida {
    background-color: #ecfdf5 !important;
    color: #047857 !important;
    border: 1px solid #a7f3d0 !important;
}
.badge-meta-andamento-alto {
    background-color: #fef3c7 !important;
    color: #92400e !important;
    border: 1px solid #fde68a !important;
}
.badge-meta-andamento-medio {
    background-color: #fdf2f8 !important;
    color: #be185d !important;
    border: 1px solid #fbcfe8 !important;
}
.badge-meta-iniciando {
    background-color: #f8fafc !important;
    color: #334155 !important;
    border: 1px solid #cbd5e1 !important;
}

.bg-secondary-glow {
    background-color: #1e293b !important;
    color: #ffffff !important;
}

/* Warning button: Yellow background with high contrast dark text */
.btn-warning {
    background-color: #fbbf24 !important;
    border-color: #f59e0b !important;
    color: #1e293b !important;
}
.btn-warning *, .btn-warning span, .btn-warning i {
    color: #1e293b !important;
}
.btn-warning:hover {
    background-color: #f59e0b !important;
    border-color: #d97706 !important;
    color: #0f172a !important;
}

/* Explicit white text on genuinely dark backgrounds and dark headers */
.bg-dark .text-white,
.bg-dark h1.text-white, .bg-dark h2.text-white, .bg-dark h3.text-white, .bg-dark h4.text-white, .bg-dark h5.text-white, .bg-dark h6.text-white,
[style*="#1e293b"] .text-white, [style*="#0f172a"] .text-white, [style*="#1e1b4b"] .text-white,
[style*="linear-gradient"] .text-white,
.modal-header[style*="background"] .text-white,
.card-virtual .text-white {
    color: #ffffff !important;
}

/* Universal Safety Guard against white-on-white text:
   Any .text-white or h*.text-white sitting directly on light surfaces (cards, modals, body, receipts, drawers, tables)
   without an explicit dark background is safely converted to dark slate (#1e293b) */
body > .text-white,
.card:not([style*="background"]):not(.bg-dark) .text-white:not(.btn):not(.badge):not([style*="background"]):not([style*="color"]),
.modal-content:not([style*="background"]):not(.bg-dark) .text-white:not(.btn):not(.badge):not([style*="background"]):not([style*="color"]),
.modal-content-custom:not([style*="background"]):not(.bg-dark) .text-white:not(.btn):not(.badge):not([style*="background"]):not([style*="color"]),
.bg-darker .text-white:not(.btn):not(.badge):not([style*="background"]):not([style*="color"]),
.bg-dark-glass .text-white:not(.btn):not(.badge):not([style*="background"]):not([style*="color"]),
.drawer .text-white:not(.btn):not(.badge):not([style*="background"]):not([style*="color"]),
.glass-card:not([style*="background"]) .text-white:not(.btn):not(.badge):not([style*="background"]):not([style*="color"]),
.digital-receipt .text-white:not(.btn):not(.badge):not([style*="background"]):not([style*="color"]),
table:not([style*="background"]) .text-white:not(.btn):not(.badge):not([style*="background"]):not([style*="color"]) {
    color: #1e293b !important;
}

.card:not([style*="background"]):not(.bg-dark) h1.text-white, 
.card:not([style*="background"]):not(.bg-dark) h2.text-white, 
.card:not([style*="background"]):not(.bg-dark) h3.text-white, 
.card:not([style*="background"]):not(.bg-dark) h4.text-white, 
.card:not([style*="background"]):not(.bg-dark) h5.text-white, 
.card:not([style*="background"]):not(.bg-dark) h6.text-white,
.modal-content:not([style*="background"]):not(.bg-dark) h1.text-white,
.modal-content:not([style*="background"]):not(.bg-dark) h2.text-white,
.modal-content:not([style*="background"]):not(.bg-dark) h3.text-white,
.modal-content:not([style*="background"]):not(.bg-dark) h4.text-white,
.modal-content:not([style*="background"]):not(.bg-dark) h5.text-white,
.modal-content:not([style*="background"]):not(.bg-dark) h6.text-white,
.modal-content-custom:not([style*="background"]):not(.bg-dark) h1.text-white,
.modal-content-custom:not([style*="background"]):not(.bg-dark) h2.text-white,
.modal-content-custom:not([style*="background"]):not(.bg-dark) h3.text-white,
.modal-content-custom:not([style*="background"]):not(.bg-dark) h4.text-white,
.modal-content-custom:not([style*="background"]):not(.bg-dark) h5.text-white,
.modal-content-custom:not([style*="background"]):not(.bg-dark) h6.text-white,
.glass-card:not([style*="background"]) h1.text-white,
.glass-card:not([style*="background"]) h2.text-white,
.glass-card:not([style*="background"]) h3.text-white,
.glass-card:not([style*="background"]) h4.text-white,
.glass-card:not([style*="background"]) h5.text-white,
.glass-card:not([style*="background"]) h6.text-white,
.drawer h1.text-white,
.drawer h2.text-white,
.drawer h3.text-white,
.drawer h4.text-white,
.drawer h5.text-white,
.drawer h6.text-white {
    color: #1e293b !important;
}

/* Tabs custom overrides */
.tab-btn {
    color: #64748b !important;
    border-bottom: 2px solid transparent !important;
}
.tab-btn:hover {
    color: #1e293b !important;
}
.tab-btn.active {
    color: var(--primary-pink) !important;
}
.tab-btn.active::after {
    background-color: var(--primary-pink) !important;
    box-shadow: 0 0 6px rgba(230, 26, 128, 0.4) !important;
}

/* Inputs & Form Controls */
.input-group-custom {
    background-color: #ffffff !important;
    border: 1px solid rgba(0, 0, 0, 0.12) !important;
    box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.02) !important;
}

.input-group-custom:focus-within {
    border-color: var(--primary-pink) !important;
    box-shadow: 0 0 0 0.15rem rgba(230, 26, 128, 0.15) !important;
}

.input-group-custom .form-control {
    color: #1e293b !important;
}

.input-group-custom .input-icon {
    color: #64748b !important;
}

.form-control, select, .form-select {
    background-color: #ffffff !important;
    color: #1e293b !important;
    border: 1px solid rgba(0, 0, 0, 0.12) !important;
}

.form-control:focus, select:focus, .form-select:focus {
    color: #1e293b !important;
    background-color: #ffffff !important;
    border-color: var(--primary-pink) !important;
    box-shadow: 0 0 0 0.15rem rgba(230, 26, 128, 0.15) !important;
}

/* Status Badges */
.badge-success {
    background-color: rgba(0, 120, 231, 0.08) !important; /* light blue */
    border: 1px solid var(--primary-blue) !important;
    color: var(--primary-blue) !important;
}

.badge-danger, .badge-error {
    background-color: rgba(230, 26, 128, 0.08) !important; /* light pink */
    border: 1px solid var(--primary-pink) !important;
    color: var(--primary-pink) !important;
}

.badge-warning {
    background-color: rgba(252, 209, 22, 0.12) !important; /* light yellow */
    border: 1px solid var(--primary-yellow) !important;
    color: #a16207 !important; /* Dark gold for visibility on yellow */
}

/* Modals & Overlay */
.modal-overlay, .drawer-overlay {
    background: rgba(15, 23, 42, 0.4) !important;
    backdrop-filter: blur(4px) !important;
}

.modal-content-custom {
    background: #ffffff !important;
    border: 1px solid rgba(0, 0, 0, 0.1) !important;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08) !important;
    color: #1e293b !important;
}

.modal-content-custom h6, .modal-content-custom p {
    color: #1e293b !important;
}

.btn-close-white {
    filter: invert(1) !important; /* Close button dark color */
}

/* Drawers */
.drawer {
    background: #ffffff !important;
    border-left: 1px solid rgba(0, 0, 0, 0.08) !important;
    box-shadow: -10px 0 30px rgba(0, 0, 0, 0.04) !important;
    color: #1e293b !important;
}

.drawer-header, .drawer-footer {
    background-color: #f8fafc !important;
    border-color: rgba(0, 0, 0, 0.08) !important;
}

/* Tables styling overrides */
table, .table {
    color: #1e293b !important;
}

tr:hover {
    background-color: rgba(0, 120, 231, 0.02) !important;
}

th {
    color: #475569 !important;
    border-bottom: 2px solid rgba(0, 0, 0, 0.08) !important;
}

td {
    color: #1e293b !important;
}

/* Custom range sliders */
.custom-slider {
    background: rgba(0, 0, 0, 0.08) !important;
}

.custom-slider::-webkit-slider-thumb {
    background: var(--primary-pink) !important;
    box-shadow: 0 0 6px rgba(230, 26, 128, 0.4) !important;
}

/* Highlights */
.shadow-glow {
    box-shadow: 0 4px 12px rgba(230, 26, 128, 0.15) !important;
}

.shadow-glow:hover {
    box-shadow: 0 4px 16px rgba(230, 26, 128, 0.3) !important;
}

/* Validation overrides (Red -> Pink) */
.valid.modified:not([type=checkbox]) {
    outline: 1px solid var(--primary-blue);
}

.invalid {
    outline: 1px solid var(--primary-pink) !important;
}

.validation-message {
    color: var(--primary-pink) !important;
}

#blazor-error-ui {
    background: var(--primary-yellow) !important;
    color: #1e293b !important;
    border-top: 3px solid var(--primary-pink) !important;
    display: none;
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    z-index: 2000;
    padding: 0.6rem 1.25rem 0.7rem 1.25rem;
    box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.15);
}

.blazor-error-boundary {
    background: var(--primary-pink) !important;
}

/* Loading animations */
.loading-progress {
    position: relative;
    display: block;
    width: 8rem;
    height: 8rem;
    margin: 20vh auto 1rem auto;
}

.loading-progress circle {
    fill: none;
    stroke: #e2e8f0;
    stroke-width: 0.6rem;
    transform-origin: 50% 50%;
    transform: rotate(-90deg);
}

.loading-progress circle:last-child {
    stroke: var(--primary-pink) !important;
    stroke-dasharray: 250;
    stroke-dashoffset: 170;
    animation: loading-progress-rot 1.4s ease-in-out infinite;
}

.loading-progress-text {
    position: relative;
    text-align: center;
    font-weight: bold;
    font-size: 1.1rem;
    color: #1e293b;
}

@keyframes loading-progress-rot {
    0% {
        transform: rotate(-90deg);
    }
    100% {
        transform: rotate(270deg);
    }
}

code {
    color: var(--primary-pink) !important;
}

/* Custom Dropdown for Autocomplete */
.custom-dropdown-container {
    position: relative;
}

.custom-dropdown-list {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    max-height: 200px;
    overflow-y: auto;
    background-color: #ffffff !important;
    border: 1.5px solid #cbd5e1;
    border-radius: 8px;
    z-index: 1050;
    margin-top: 5px;
    box-shadow: 0 4px 12px rgba(0,0,0,0.12);
}

.custom-dropdown-item {
    padding: 10px 15px;
    cursor: pointer;
    color: #1e293b !important;
    transition: background 0.2s;
}

.custom-dropdown-item:hover {
    background-color: rgba(0, 120, 231, 0.06) !important;
}

/* --- REVELAÇÕES NO HOVER DA SIDEBAR COLAPSADA (GLOBAL OVERRIDES) --- */
@media (min-width: 641px) {
    .sidebar.collapsed:hover {
        width: 250px !important;
        box-shadow: 5px 0 20px rgba(0,0,0,0.25) !important;
    }

    .sidebar.collapsed:hover .is-collapsed .nav-text {
        display: inline-block !important;
    }
    .sidebar.collapsed:hover .is-collapsed .nav-chevron {
        display: inline-block !important;
    }
    .sidebar.collapsed:hover .is-collapsed .nav-submenu {
        display: block !important;
    }
    .sidebar.collapsed:hover .is-collapsed .brand-logo-full {
        display: block !important;
    }
    .sidebar.collapsed:hover .is-collapsed .brand-logo-collapsed {
        display: none !important;
    }
    .sidebar.collapsed:hover .is-collapsed .nav-link {
        justify-content: flex-start !important;
        padding: 0 1rem !important;
    }
    .sidebar.collapsed:hover .is-collapsed .nav-link i {
        margin-right: 0.75rem !important;
    }
    .sidebar.collapsed:hover .navbar-toggler {
        margin: 0 !important;
    }
}

/* Premium Scale Animation */
.animate-scale-up {
    transition: transform 0.2s ease-in-out, box-shadow 0.2s ease-in-out;
}
.animate-scale-up:hover:not(:disabled) {
    transform: scale(1.02);
    box-shadow: 0 4px 12px rgba(220, 53, 69, 0.4) !important;
}
.animate-scale-up:active:not(:disabled) {
    transform: scale(0.98);
}

/* Card Fatura Mais Antiga - Leve Pulsar */
.card-fatura-mais-antiga {
    border: 2px solid #ef4444 !important;
    background: linear-gradient(180deg, #ffffff 0%, rgba(239, 68, 68, 0.03) 100%) !important;
    animation: pulseFaturaAntiga 2.2s infinite ease-in-out;
}

@keyframes pulseFaturaAntiga {
    0% {
        box-shadow: 0 0 0 0 rgba(239, 68, 68, 0.45), 0 4px 12px rgba(239, 68, 68, 0.08);
    }
    50% {
        box-shadow: 0 0 0 8px rgba(239, 68, 68, 0), 0 6px 20px rgba(239, 68, 68, 0.20);
    }
    100% {
        box-shadow: 0 0 0 0 rgba(239, 68, 68, 0), 0 4px 12px rgba(239, 68, 68, 0.08);
    }
}