*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--primary:#4f46e5;--primary-hover:#4338ca;--danger:#ef4444;--danger-hover:#dc2626;--bg:#f8fafc;--sidebar-bg:#1e293b;--sidebar-text:#cbd5e1;--card-bg:#fff;--border:#e2e8f0;--text:#1e293b;--text-muted:#64748b;--success:#22c55e;--radius:8px}body{background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.5}.layout{min-height:100vh;display:flex}.sidebar{background:var(--sidebar-bg);width:220px;color:var(--sidebar-text);flex-direction:column;flex-shrink:0;gap:.25rem;padding:1.5rem 1rem;display:flex}.sidebar-title{color:#fff;margin-bottom:1.5rem;padding-left:.75rem;font-size:1.25rem}.nav-link{border-radius:var(--radius);color:var(--sidebar-text);padding:.5rem .75rem;text-decoration:none;transition:background .15s;display:block}.nav-link:hover{background:#ffffff1a}.nav-link.active{background:var(--primary);color:#fff}.logout-btn{margin-top:auto}.main-content{flex:1;max-width:1100px;padding:2rem}.login-page{justify-content:center;align-items:center;min-height:100vh;display:flex}.login-form{background:var(--card-bg);border-radius:var(--radius);flex-direction:column;gap:1rem;width:340px;padding:2rem;display:flex;box-shadow:0 1px 3px #0000001a}.login-form h1{text-align:center;font-size:1.5rem}.btn{border-radius:var(--radius);background:var(--primary);color:#fff;cursor:pointer;border:none;padding:.5rem 1rem;font-size:.875rem;transition:background .15s}.btn:hover{background:var(--primary-hover)}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-outline{color:var(--text);border:1px solid var(--border);background:0 0}.btn-outline:hover{background:var(--bg)}.btn-sm{padding:.25rem .5rem;font-size:.8rem}.btn-danger{background:var(--danger)}.btn-danger:hover{background:var(--danger-hover)}input,select{border:1px solid var(--border);border-radius:var(--radius);outline:none;width:100%;padding:.5rem .75rem;font-size:.875rem}input:focus,select:focus{border-color:var(--primary);box-shadow:0 0 0 2px #4f46e526}.form-card{background:var(--card-bg);border-radius:var(--radius);flex-direction:column;gap:.75rem;max-width:480px;margin-bottom:1.5rem;padding:1.5rem;display:flex;box-shadow:0 1px 3px #0000001a}.form-card label{color:var(--text-muted);flex-direction:column;gap:.25rem;font-size:.875rem;display:flex}.form-actions{gap:.5rem;display:flex}.checkbox-label{align-items:center;gap:.5rem;font-size:.875rem;display:flex;flex-direction:row!important}.checkbox-label input[type=checkbox]{width:auto}.page-header{justify-content:space-between;align-items:center;margin-bottom:1.5rem;display:flex}.data-table{border-collapse:collapse;background:var(--card-bg);border-radius:var(--radius);width:100%;overflow:hidden;box-shadow:0 1px 3px #0000001a}.data-table th,.data-table td{text-align:left;border-bottom:1px solid var(--border);padding:.75rem 1rem;font-size:.875rem}.data-table th{background:var(--bg);color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em;font-size:.8rem;font-weight:600}.data-table .actions{gap:.25rem;display:flex}.data-table .empty{text-align:center;color:var(--text-muted);padding:2rem}.expandable{cursor:pointer}.expandable:hover{background:var(--bg)}.sub-row td{color:var(--text-muted);padding-left:2rem}.date-range{align-items:center;gap:.5rem;margin-bottom:1.5rem;display:flex}.date-range input{width:auto}.error{color:var(--danger);font-size:.875rem}.success{color:var(--success);font-size:.875rem}.loading{color:var(--text-muted);padding:2rem}
