.sidebar{background:var(--bg-secondary);border-right:1px solid var(--border);z-index:50;flex-direction:column;width:250px;display:flex;position:fixed;top:0;bottom:0;left:0}.sidebar-header{border-bottom:1px solid var(--border);padding:1.5rem}.sidebar-logo{margin-bottom:.35rem}.sidebar-title{color:var(--text-muted);text-transform:uppercase;letter-spacing:.1em;font-size:.8rem;font-weight:600}.sidebar-nav{flex-direction:column;flex:1;gap:.25rem;padding:.75rem;display:flex}.nav-item{color:var(--text-secondary);text-align:left;background:0 0;border-radius:8px;align-items:center;gap:.75rem;width:100%;padding:.6rem .75rem;font-size:.875rem;transition:all .15s;display:flex}.nav-item:hover{background:var(--bg-card);color:var(--text-primary)}.nav-item.active{background:var(--accent-subtle);color:var(--accent)}.nav-icon{text-align:center;width:1.5rem;font-size:1.1rem}.nav-label{flex:1}.nav-badge{background:var(--bg-input);color:var(--text-muted);border-radius:999px;padding:.1rem .5rem;font-size:.7rem;font-weight:600}.nav-item.active .nav-badge{background:var(--accent);color:#fff}.sidebar-footer{border-top:1px solid var(--border);padding:.75rem}.sidebar-user{align-items:center;gap:.75rem;margin-bottom:.25rem;padding:.6rem .75rem;display:flex}.sidebar-user-avatar{background:var(--accent);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;font-size:.85rem;font-weight:600;display:flex}.sidebar-user-info{flex:1;min-width:0}.sidebar-user-name{color:var(--text-primary);font-size:.8rem;font-weight:500}.sidebar-user-email{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:.7rem;overflow:hidden}.logout-btn{color:var(--text-muted)!important}.logout-btn:hover{color:var(--danger)!important;background:#e74c3c1a!important}.app-layout{min-height:100vh;display:flex}.main-content{flex:1;max-width:1200px;margin-left:250px;padding:2rem}.page-header{justify-content:space-between;align-items:center;margin-bottom:1.5rem;display:flex}.page-header h1{font-size:1.5rem;font-weight:600}.btn-primary{background:var(--accent);color:#fff;font-weight:500}.btn-primary:hover{background:var(--accent-hover)}.btn-danger{color:var(--danger);border:1px solid var(--danger);background:0 0;padding:.35rem .75rem;font-size:.8rem}.btn-danger:hover{background:var(--danger);color:#fff}.btn-secondary{background:var(--bg-input);color:var(--text-secondary);border:1px solid var(--border)}.btn-secondary:hover{background:var(--border);color:var(--text-primary)}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:10px;margin-bottom:1rem;padding:1.5rem}.data-table{border-collapse:collapse;width:100%}.data-table th{text-align:left;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--border);padding:.75rem 1rem;font-size:.75rem;font-weight:600}.data-table td{border-bottom:1px solid var(--border);padding:.75rem 1rem;font-size:.875rem}.data-table tr:last-child td{border-bottom:none}.data-table tr:hover td{background:var(--accent-subtle)}.badge{text-transform:uppercase;border-radius:999px;padding:.2rem .6rem;font-size:.7rem;font-weight:600;display:inline-block}.badge-active{color:var(--success);background:#2ecc7126}.badge-inactive{color:var(--danger);background:#e74c3c26}.modal-overlay{z-index:100;background:#0009;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal{background:var(--bg-secondary);border:1px solid var(--border);border-radius:12px;width:480px;max-width:90vw;max-height:85vh;padding:2rem;overflow-y:auto}.modal h2{margin-bottom:1.5rem;font-size:1.25rem}.form-group{margin-bottom:1rem}.form-group label{color:var(--text-secondary);margin-bottom:.35rem;font-size:.8rem;font-weight:500;display:block}.form-actions{justify-content:flex-end;gap:.75rem;margin-top:1.5rem;display:flex}.empty-state{text-align:center;color:var(--text-muted);padding:3rem}.empty-state p{margin-bottom:1rem}.stats-row{gap:1rem;margin-bottom:1.5rem;display:flex}.stat-card{background:var(--bg-card);border:1px solid var(--border);border-radius:10px;flex:1;padding:1rem 1.5rem}.stat-card .stat-value{color:var(--accent);font-size:1.75rem;font-weight:700}.stat-card .stat-label{color:var(--text-muted);margin-top:.25rem;font-size:.8rem}*{box-sizing:border-box;margin:0;padding:0}:root{--bg-primary:#0f1117;--bg-secondary:#1a1d27;--bg-card:#1e2130;--bg-input:#252838;--border:#2d3148;--text-primary:#e8eaf0;--text-secondary:#9ca3b8;--text-muted:#6b7394;--accent:#4a90d9;--accent-hover:#5da0e9;--accent-subtle:#4a90d91a;--danger:#e74c3c;--danger-hover:#c0392b;--success:#2ecc71;--warning:#f39c12}body{background:var(--bg-primary);color:var(--text-primary);min-height:100vh;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,sans-serif}button{cursor:pointer;border:none;border-radius:6px;padding:.5rem 1rem;font-family:inherit;font-size:.875rem;transition:all .15s}button:disabled{opacity:.5;cursor:not-allowed}input,select,textarea{border:1px solid var(--border);background:var(--bg-input);color:var(--text-primary);border-radius:6px;outline:none;width:100%;padding:.5rem .75rem;font-family:inherit;font-size:.875rem;transition:border-color .15s}input:focus,select:focus,textarea:focus{border-color:var(--accent)}input::placeholder{color:var(--text-muted)}
