/* CarbonReport.pl - Tailwind-like CSS */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap');
@import url('https://cdn.jsdelivr.net/npm/tailwindcss@2.2.19/dist/tailwind.min.css');

:root {
    --emerald-50: #ecfdf5; --emerald-100: #d1fae5; --emerald-500: #10b981; --emerald-600: #059669; --emerald-700: #047857;
}

html { font-family: 'Inter', system-ui, sans-serif; }
body { margin: 0; }

/* Custom scrollbar */
::-webkit-scrollbar { width: 6px; height: 6px; }
::-webkit-scrollbar-track { background: #f1f5f9; }
::-webkit-scrollbar-thumb { background: #cbd5e1; border-radius: 3px; }
::-webkit-scrollbar-thumb:hover { background: #94a3b8; }

/* Form focus states */
input:focus, select:focus, textarea:focus { 
    outline: none;
    border-color: #059669;
    box-shadow: 0 0 0 3px rgba(16, 185, 129, 0.2);
}

/* Navigation link styles */
.nav-link {
    display: flex;
    align-items: center;
    padding: 0.75rem 1rem;
    color: #475569;
    border-radius: 0.5rem;
    transition: all 0.2s;
    gap: 0.75rem;
}
.nav-link:hover { background-color: #f1f5f9; color: #059669; }
.nav-link.active { background-color: #ecfdf5; color: #059669; font-weight: 600; }

/* Button hover effects */
.btn-primary { transition: all 0.2s; }
.btn-primary:hover { transform: translateY(-1px); box-shadow: 0 4px 12px rgba(5, 150, 105, 0.3); }

/* Card hover effects */
.card-hover { transition: all 0.2s; }
.card-hover:hover { transform: translateY(-2px); box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1); }

/* Loading spinner */
@keyframes spin { to { transform: rotate(360deg); } }
.animate-spin { animation: spin 1s linear infinite; }

@keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }
.animate-pulse { animation: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite; }

/* Progress bar animation */
@keyframes progress { 0% { width: 0; } 100% { width: 100%; } }
.animate-progress { animation: progress 1s ease-out forwards; }
