:root{--bg: #0f1419;--surface: #1a2332;--border: #2d3a4d;--text: #e6edf3;--muted: #8b949e;--accent: #58a6ff;--success: #3fb950;--warning: #d29922;--danger: #f85149;--font: "Segoe UI", system-ui, -apple-system, sans-serif}*{box-sizing:border-box}body{margin:0;font-family:var(--font);background:var(--bg);color:var(--text);min-height:100vh;line-height:1.5}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}button{font-family:inherit;cursor:pointer}.app{display:flex;min-height:100vh}.sidebar{width:240px;background:var(--surface);border-right:1px solid var(--border);padding:1rem 0}.sidebar .brand{padding:0 1rem 1rem;font-size:1.25rem;font-weight:700;color:var(--text);display:flex;align-items:center;gap:.5rem}.sidebar .brand-logo{height:32px;width:auto;display:block}.sidebar nav a{display:block;padding:.6rem 1rem;color:var(--muted);text-decoration:none}.sidebar nav a:hover,.sidebar nav a.active{color:var(--accent);background:#58a6ff14}.main{flex:1;padding:1.5rem;overflow:auto}.card{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:1.25rem;margin-bottom:1rem}.btn{display:inline-flex;align-items:center;justify-content:center;padding:.5rem 1rem;border-radius:6px;border:1px solid var(--border);background:var(--surface);color:var(--text);font-size:.95rem}.btn:hover{background:var(--border)}.btn-primary{background:var(--accent);border-color:var(--accent);color:#fff}.btn-primary:hover{filter:brightness(1.1)}.btn-success{background:var(--success);border-color:var(--success);color:#fff}.btn-danger{background:var(--danger);border-color:var(--danger);color:#fff}.input{width:100%;padding:.5rem .75rem;border:1px solid var(--border);border-radius:6px;background:var(--bg);color:var(--text);font-size:1rem}.input:focus{outline:none;border-color:var(--accent)}.label{display:block;margin-bottom:.25rem;color:var(--muted);font-size:.875rem}.form-group{margin-bottom:1rem}.table{width:100%;border-collapse:collapse}.table th,.table td{padding:.6rem .75rem;text-align:left;border-bottom:1px solid var(--border)}.table th{color:var(--muted);font-weight:600;font-size:.8rem}.badge{display:inline-block;padding:.2rem .5rem;border-radius:4px;font-size:.75rem}.badge-in{background:#3fb95033;color:var(--success)}.badge-out{background:#f8514933;color:var(--danger)}.badge-pausa{background:#d2992233;color:var(--warning)}@media (max-width: 768px){.app{flex-direction:column}.sidebar{width:100%;display:flex;align-items:center;gap:1rem}.sidebar nav{display:flex;flex-wrap:wrap}}
