.material-symbols-outlined {
    font-variation-settings: 'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 24;
    vertical-align: middle;
}

input[type="date"]::-webkit-calendar-picker-indicator {
    cursor: pointer;
    filter: invert(0);
}

.dark input[type="date"]::-webkit-calendar-picker-indicator {
    filter: invert(1);
}

.calculation-card {
    transition: transform 0.2s ease, box-shadow 0.2s ease, opacity 0.2s ease;
}

.calculation-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
}

.toggle-chip {
    transition: all 0.2s ease;
}

.toggle-chip input:checked + span {
    background-color: #840000;
    color: #ffffff;
    border-color: #840000;
}

/* Dark Mode Theme: Executive Slate */
.dark {
    --tw-bg-opacity: 1;
    background-color: #0b1326;
    color: #eff1f3;
}

.dark .bg-surface {
    background-color: #0b1326;
}

.dark .bg-surface-bright {
    background-color: #31394d;
}

.dark .bg-surface-container-lowest {
    background-color: #1a2333;
}

.dark .bg-surface-container-low {
    background-color: #141c2c;
}

.dark .text-on-surface {
    color: #eff1f3;
}

.dark .text-on-surface-variant {
    color: #b9c7e0;
}

.dark .text-primary {
    color: #ffffff;
}

.dark .border-outline-variant {
    border-color: #2d384d;
}

.dark .text-secondary {
    color: #b9c7e0;
}

.dark .text-outline {
    color: #76777d;
}

.dark input, .dark select {
    background-color: #1a2333 !important;
    border-color: #2d384d !important;
    color: #eff1f3 !important;
}

/* Accessibility improvements for Dark Mode */
.dark .payment-date-value {
    color: #ffb4a9 !important;
}

.dark .payment-label {
    color: #b9c7e0 !important;
}