/* Quirelco Payroll Global Styles */

/* ── Global Stat Cards (used across Overtime, Deductions, etc.) ── */
.stat-card {
    background: #fff;
    border-radius: 12px;
    padding: 1.1rem 1.4rem;
    box-shadow: 0 2px 8px rgba(0, 0, 0, .07);
    border-left: 4px solid #0d6efd;
}

.stat-label {
    font-size: .75rem;
    color: #6c757d;
    text-transform: uppercase;
    letter-spacing: .5px;
    font-weight: 600;
}

.stat-value {
    font-size: 1.5rem;
    font-weight: 700;
    margin-top: .2rem;
}

/* Base structural classes */
.comp-page {
    max-width: 1200px;
}

/* Custom Overtime Teal colors */
.text-teal {
    color: #007B7F !important;
}

.btn-teal {
    background: #007B7F;
    color: #fff;
    border: none;
}

.btn-teal:hover {
    background: #005f63;
    color: #fff;
}

.btn-email-action {
    background: linear-gradient(135deg, #0f766e, #14b8a6);
    border: none;
    color: white;
    padding: 10px 18px;
    border-radius: 12px;
    font-weight: 600;
    letter-spacing: .3px;
    transition: all 0.25s ease;
    box-shadow: 0 4px 12px rgba(20, 184, 166, 0.25);
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.btn-email-action:hover:not(:disabled) {
    transform: translateY(-2px);
    box-shadow: 0 8px 20px rgba(20, 184, 166, 0.35);
    background: linear-gradient(135deg, #0d9488, #2dd4bf);
    color: white;
}

.btn-email-action:active:not(:disabled) {
    transform: scale(0.98);
}

.btn-email-action:disabled {
    opacity: 0.65;
    cursor: not-allowed;
    transform: none;
    box-shadow: none;
}

.btn-email-action .spinner-border {
    width: 1rem;
    height: 1rem;
}

/* Remove up/down arrows from number inputs globally */
input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
    -webkit-appearance: none !important;
    margin: 0 !important;
}
input[type="number"] {
    -moz-appearance: textfield !important; /* For Firefox */
}