.sidebar{z-index:10;border-top:none;border-bottom:none;border-left:none;border-radius:0;flex-direction:column;width:260px;display:flex}.sidebar-header{border-bottom:1px solid var(--border-color);align-items:center;gap:1rem;padding:1.5rem;display:flex}.sidebar-logo{color:var(--accent-primary)}.sidebar-nav{flex-direction:column;flex:1;gap:.5rem;padding:1.5rem 1rem;display:flex}.nav-item{border-radius:var(--radius-md);color:var(--text-secondary);align-items:center;gap:1rem;padding:.75rem 1rem;font-weight:500;display:flex}.nav-item:hover{background:var(--bg-hover);color:var(--text-primary)}.nav-item.active{background:var(--accent-glow);color:var(--accent-primary)}.sidebar-footer{border-top:1px solid var(--border-color);padding:1.5rem 1rem}.logout-btn{width:100%;color:var(--text-muted);border-radius:var(--radius-md);cursor:pointer;transition:var(--transition);background:0 0;border:1px solid #0000;justify-content:center;align-items:center;gap:.75rem;padding:.75rem;font-family:inherit;font-size:.875rem;display:flex}.logout-btn:hover{color:var(--danger);background:#ef44441a}.page-wrapper{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);min-height:calc(100vh - 4rem);box-shadow:var(--shadow-sm);padding:2rem}.login-container{background:radial-gradient(circle at top right, var(--bg-card), var(--bg-base));justify-content:center;align-items:center;min-height:100vh;display:flex}.login-card{width:100%;max-width:420px;box-shadow:var(--shadow-md), 0 0 40px #10b9810d;padding:2.5rem}.login-header{text-align:center;margin-bottom:2rem}.logo-icon{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-full);width:64px;height:64px;color:var(--accent-primary);box-shadow:var(--shadow-glow);justify-content:center;align-items:center;margin:0 auto 1rem;display:flex}.error-alert{color:var(--danger);border-radius:var(--radius-md);font-size:var(--text-sm);background:#ef44441a;border:1px solid #ef444433;margin-bottom:1.5rem;padding:.75rem 1rem}.form-group{margin-bottom:1.5rem}.form-group label{font-size:var(--text-sm);color:var(--text-secondary);margin-bottom:.5rem;font-weight:500;display:block}.input-wrapper{align-items:center;display:flex;position:relative}.input-icon{color:var(--text-muted);position:absolute;left:1rem}.input-wrapper input,.input-wrapper select{border:1px solid var(--border-color);width:100%;color:var(--text-primary);border-radius:var(--radius-md);transition:var(--transition);font-size:1rem;font-family:var(--font-sans);appearance:none;background:#0003;padding:.75rem 1rem .75rem 3rem}.input-wrapper input:focus,.input-wrapper select:focus{border-color:var(--accent-primary);box-shadow:0 0 0 1px var(--accent-primary);background:#0006;outline:none}.input-wrapper select option{background:var(--bg-card);color:var(--text-primary)}.login-button{background:var(--accent-primary);color:#fff;border-radius:var(--radius-md);cursor:pointer;width:100%;transition:var(--transition);border:none;justify-content:center;align-items:center;padding:.875rem;font-size:1rem;font-weight:600;display:flex}.login-button:hover:not(:disabled){background:var(--accent-hover);transform:translateY(-1px);box-shadow:0 4px 12px #10b9814d}.login-button:disabled{opacity:.6;cursor:not-allowed}.spinner{animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.page-header{margin-bottom:2rem}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;display:grid}.stat-card{background:var(--bg-panel);border:1px solid var(--border-color);border-radius:var(--radius-md);transition:var(--transition);align-items:center;gap:1.5rem;padding:1.5rem;display:flex}.stat-card:hover{border-color:var(--text-muted);transform:translateY(-2px)}.stat-icon-wrapper{border-radius:var(--radius-sm);width:48px;height:48px;color:var(--text-secondary);background:#ffffff0d;justify-content:center;align-items:center;display:flex}.stat-card.accent{background:#10b9810d;border-color:#10b98133}.stat-card.accent .stat-icon-wrapper{background:var(--accent-glow);color:var(--accent-primary)}.stat-info h3{font-size:var(--text-sm);color:var(--text-secondary);margin-bottom:.25rem;font-weight:500}.stat-info .stat-value{font-size:var(--heading-md);color:var(--text-primary);font-weight:600}.filter-panel{margin-bottom:2rem;padding:1.5rem}.filter-form .row{align-items:center;gap:1rem;display:flex}.separator{color:var(--text-muted);font-size:var(--text-sm)}.btn-primary{background:var(--accent-primary);color:#fff;border-radius:var(--radius-md);cursor:pointer;transition:var(--transition);border:none;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-weight:600;display:flex}.btn-primary:hover:not(:disabled){background:var(--accent-hover)}.results-panel{padding:1.5rem}.results-header{justify-content:space-between;align-items:center;margin-bottom:1.5rem;display:flex}.btn-outline{color:var(--text-primary);border:1px solid var(--border-color);border-radius:var(--radius-md);font-size:var(--text-sm);cursor:pointer;transition:var(--transition);background:0 0;align-items:center;gap:.5rem;padding:.5rem 1rem;display:flex}.btn-outline:hover{background:var(--bg-hover)}.table-container{overflow-x:auto}.data-table{border-collapse:collapse;width:100%}.data-table th{text-align:left;color:var(--text-secondary);font-weight:500;font-size:var(--text-sm);border-bottom:1px solid var(--border-color);white-space:nowrap;padding:1rem}.data-table td{color:var(--text-primary);border-bottom:1px solid #ffffff0d;padding:1rem}.data-table tbody tr:hover{background:#ffffff05}.empty-state{text-align:center;color:var(--text-muted)!important;padding:3rem!important}.posto-select{border-radius:var(--radius-md);color:#e2e8f0;background-color:#0f172a;border:1px solid #1e293b;outline:none;padding:8px}.funcionario-card{border:1px solid var(--border-color);border-radius:var(--radius-md);margin-bottom:1rem;overflow:hidden}.funcionario-card-header{cursor:pointer;background:#ffffff05;justify-content:space-between;align-items:center;padding:1rem 1.25rem;display:flex}.funcionario-card-header:hover{background:#ffffff0a}.status-badge{white-space:nowrap;border-radius:999px;padding:.15rem .6rem;font-size:.75rem;font-weight:600}.status-OK{color:#22c55e;background:#22c55e26}.status-FALTA{color:#ef4444;background:#ef444426}.status-INCONSISTENTE{color:#eab308;background:#eab30826}.status-DSR,.status-NAO_UTIL{color:#94a3b8;background:#94a3b826}.status-FERIAS{color:#3b82f6;background:#3b82f626}.status-JUSTIFICADO{color:#a855f7;background:#a855f726}.posto-select{color:#e2e8f0;background-color:#0f172a;border:1px solid #1e293b;border-radius:8px;outline:none;width:220px;padding:8px}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:50;background-color:#0f172acc;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-content{background-color:var(--bg-card);border:1px solid var(--border-color);border-radius:1rem;width:100%;max-width:500px;overflow:hidden;box-shadow:0 25px 50px -12px #00000080}.modal-header{border-bottom:1px solid var(--border-color);background-color:#1e293b80;justify-content:space-between;align-items:center;padding:1.5rem 2rem;display:flex}.close-btn{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;padding:0;font-size:1.5rem;line-height:1}.close-btn:hover{color:var(--text-primary)}.modal-body{padding:2rem}.config-row{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:1.25rem 0;display:flex}.config-row:last-child{border-bottom:none}.config-row-info h3{margin:0 0 .25rem}.toggle-switch{flex-shrink:0;width:48px;height:26px;display:inline-block;position:relative}.toggle-switch input{opacity:0;width:0;height:0}.toggle-slider{cursor:pointer;transition:var(--transition);background-color:#334155;border-radius:999px;position:absolute;inset:0}.toggle-slider:before{content:"";width:20px;height:20px;transition:var(--transition);background-color:#e2e8f0;border-radius:50%;position:absolute;bottom:3px;left:3px}.toggle-switch input:checked+.toggle-slider{background-color:var(--accent-primary)}.toggle-switch input:checked+.toggle-slider:before{transform:translate(22px)}.toggle-switch input:disabled+.toggle-slider{opacity:.5;cursor:not-allowed}:root{--bg-base:#020617;--bg-panel:#0f172a;--bg-card:#1e293b;--bg-hover:#334155;--text-primary:#f8fafc;--text-secondary:#94a3b8;--text-muted:#64748b;--accent-primary:#10b981;--accent-hover:#059669;--accent-glow:#10b98133;--danger:#ef4444;--border-color:#ffffff14;--font-sans:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Open Sans", "Helvetica Neue", sans-serif;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -1px #0000000f;--shadow-glow:0 0 20px var(--accent-glow);--glass-bg:#0f172ab3;--glass-border:#ffffff1a;--glass-backdrop:blur(12px);--radius-sm:.375rem;--radius-md:.5rem;--radius-lg:.75rem;--radius-full:9999px;--transition:all .2s cubic-bezier(.4, 0, .2, 1)}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-sans);background-color:var(--bg-base);color:var(--text-primary);-webkit-font-smoothing:antialiased;min-height:100vh;line-height:1.5}a{color:var(--accent-primary);transition:var(--transition);text-decoration:none}a:hover{color:var(--accent-hover)}.app-container{min-height:100vh;display:flex}.main-content{flex-direction:column;flex:1;padding:2rem;display:flex;overflow-y:auto}.glass-panel{background:var(--glass-bg);-webkit-backdrop-filter:var(--glass-backdrop);border:1px solid var(--glass-border);border-radius:var(--radius-lg)}.heading-xl{letter-spacing:-.025em;font-size:2.25rem;font-weight:800}.heading-lg{letter-spacing:-.025em;font-size:1.5rem;font-weight:700}.heading-md{font-size:1.125rem;font-weight:600}.text-sm{font-size:.875rem}.text-xs{font-size:.75rem}.text-secondary{color:var(--text-secondary)}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{animation:.4s ease-out forwards fadeIn}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-base)}::-webkit-scrollbar-thumb{background:var(--bg-hover);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}
