body {
    font-family: 'Inter', sans-serif;
    -webkit-tap-highlight-color: transparent;
}

/* Hide scrollbar for clean UI */
.no-scrollbar::-webkit-scrollbar {
    display: none;
}
.no-scrollbar {
    -ms-overflow-style: none;
    scrollbar-width: none;
}

/* Modal Transitions */
.modal {
    transition: opacity 0.25s ease;
    opacity: 0;
    pointer-events: none;
}
.modal.active {
    opacity: 1;
    pointer-events: auto;
}
.modal-content {
    transform: translateY(100%);
    transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1);
}
.modal.active .modal-content {
    transform: translateY(0);
}

/* Custom Checkbox Toggle - Gold Accent */
.toggle-checkbox:checked {
    right: 0;
    border-color: #d97706; /* Amber-600 */
}
.toggle-checkbox:checked + .toggle-label {
    background-color: #d97706;
}

/* Tab Active State */
.tab-btn {
    color: #9ca3af;
    position: relative;
}
.tab-btn.active {
    color: #b45309;
}
.tab-btn.active i {
    transform: translateY(-3px);
    filter: drop-shadow(0 4px 3px rgba(0,0,0,0.1));
}
.tab-btn.active::after {
    content: '';
    position: absolute;
    bottom: 0;
    width: 40%;
    height: 3px;
    background: linear-gradient(90deg, #f59e0b, #b45309);
    border-radius: 10px 10px 0 0;
}

/* Interactive Card Hover */
.interactive-card {
    transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
}
.interactive-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
    border-color: #d1d5db;
}

/* Status Badges */
.status-badge-pending { background-color: #fff7ed; color: #c2410c; border: 1px solid #fed7aa; }
.status-badge-approved { background-color: #f0fdf4; color: #15803d; border: 1px solid #bbf7d0; }
.status-badge-rejected { background-color: #fef2f2; color: #ef4444; border: 1px solid #fecaca; }

/* Utilities */
.hidden { display: none; }