:root {
    --bg-primary: #111827;
    --bg-secondary: #1F2937;
    --bg-tertiary: #374151;
    --text-primary: #F9FAFB;
    --text-secondary: #9CA3AF;
    --border-color: #374151;
    --accent-color: #EA580C;
    --accent-text-color: #FFFFFF;
}

:root.light-theme {
    --bg-primary: #F3F4F6;
    --bg-secondary: #FFFFFF;
    --bg-tertiary: #E5E7EB;
    --text-primary: #1F2937;
    --text-secondary: #4B5563;
    --border-color: #D1D5DB;
}

body {
    background-color: var(--bg-primary) !important;
    color: var(--text-primary) !important;
    font-family: 'Inter', system-ui, -apple-system, sans-serif;
    transition: background-color 0.3s;
}

/* Animações */
@keyframes fadeIn { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }
.animate-fade-in { animation: fadeIn 0.5s ease-out forwards; }

@keyframes pulse-logo { 0%, 100% { opacity: 1; transform: scale(1); } 50% { opacity: 0.7; transform: scale(1.05); } }
.loading-logo { animation: pulse-logo 2s infinite ease-in-out; }

/* Login Slideshow */
#login-slideshow img {
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: opacity 1s ease-in-out;
}

/* Formulários e Inputs */
.form-input {
    background-color: var(--bg-tertiary) !important;
    color: var(--text-primary) !important;
    border: 1px solid var(--border-color) !important;
    border-radius: 0.5rem !important;
    width: 100%;
    padding: 0.75rem 1rem;
    transition: all 0.2s;
}

.form-input:focus {
    border-color: var(--accent-color) !important;
    box-shadow: 0 0 0 2px rgba(234, 88, 12, 0.4);
    outline: none;
}

/* Header e Abas */
#main-header {
    background-color: var(--bg-secondary);
    border: 1px solid var(--border-color);
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
}

.tab-btn {
    color: var(--text-secondary);
    border-radius: 0.5rem;
    transition: all 0.2s;
    margin: 0 2px;
}

.tab-btn:hover { color: var(--text-primary); background-color: var(--bg-tertiary); }

.tab-btn.active {
    background-color: var(--accent-color) !important;
    color: var(--accent-text-color) !important;
    font-weight: 600;
    box-shadow: 0 4px 12px -2px rgba(234, 88, 12, 0.4);
}

.scrollbar-hide::-webkit-scrollbar { display: none; }
.scrollbar-hide { -ms-overflow-style: none; scrollbar-width: none; }

footer { background-color: var(--bg-primary); border-top: 1px solid var(--border-color); }