*{margin:0;padding:0;box-sizing:border-box;font-family:'Segoe UI',sans-serif}
body{background:#0f1117;color:#e0e0e0;display:flex}
.login-page{display:flex;justify-content:center;align-items:center;min-height:100vh;background:#0f1117}
.login-box{background:#1a1d27;padding:40px;border-radius:12px;width:360px;text-align:center;border:1px solid #2a2d3e}
.login-logo{font-size:48px;margin-bottom:10px}
.login-box h2{font-size:24px;color:#fff;margin-bottom:5px}
.login-box p{color:#888;margin-bottom:20px;font-size:13px}
.login-box input{width:100%;padding:12px;margin:8px 0;background:#0f1117;border:1px solid #2a2d3e;border-radius:8px;color:#fff;font-size:14px}
.login-box button{width:100%;padding:12px;background:#1565c0;color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:15px;margin-top:10px}
.login-box button:hover{background:#1976d2}
.login-box small{color:#555;font-size:11px;display:block;margin-top:15px}
.error-msg{background:#c62828;color:#fff;padding:10px;border-radius:6px;margin-bottom:10px;font-size:13px}
.sidebar{width:220px;min-height:100vh;background:#1a1d27;border-right:1px solid #2a2d3e;padding:20px 0;position:fixed;top:0;left:0}
.logo{padding:0 20px 20px;border-bottom:1px solid #2a2d3e}
.logo h2{color:#1e88e5;font-size:18px}
.logo span{color:#555;font-size:12px}
nav{padding:15px 0}
.nav-item{display:block;padding:12px 20px;color:#aaa;text-decoration:none;font-size:14px;transition:all 0.2s}
.nav-item:hover{background:#2a2d3e;color:#fff}
.logout{margin-top:20px;color:#e53935!important}
.main{margin-left:220px;flex:1;min-height:100vh}
.topbar{background:#1a1d27;padding:15px 25px;border-bottom:1px solid #2a2d3e;display:flex;justify-content:space-between;align-items:center}
.topbar h1{font-size:20px;color:#fff}
.admin-badge{background:#1565c0;color:#fff;padding:4px 12px;border-radius:20px;font-size:12px}
.content{padding:25px}
.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin-bottom:25px}
.stat-card{background:#1a1d27;border-radius:10px;padding:20px;border-left:4px solid}
.stat-card.red{border-color:#e53935}
.stat-card.blue{border-color:#1e88e5}
.stat-card.green{border-color:#43a047}
.stat-card.orange{border-color:#fb8c00}
.stat-card h3{font-size:13px;color:#888;margin-bottom:8px}
.stat-num{font-size:32px;font-weight:700;color:#fff}
.card{background:#1a1d27;border-radius:10px;padding:20px;margin-bottom:20px;border:1px solid #2a2d3e}
.card h3{margin-bottom:15px;color:#fff}
table{width:100%;border-collapse:collapse}
th{text-align:left;padding:10px;color:#888;font-size:12px;border-bottom:1px solid #2a2d3e;text-transform:uppercase}
td{padding:12px 10px;border-bottom:1px solid #1f2231;font-size:14px}
.badge{padding:4px 10px;border-radius:20px;font-size:12px;color:#fff;font-weight:600}
.status{padding:3px 10px;border-radius:20px;font-size:12px}
.status.active{background:#e53935;color:#fff}
.status.resolved{background:#43a047;color:#fff}
.status.inactive{background:#555;color:#fff}
.role-badge{padding:3px 10px;border-radius:20px;font-size:12px}
.role-badge.doctor{background:#1565c0;color:#fff}
.role-badge.nurse{background:#6a1b9a;color:#fff}
.role-badge.admin{background:#e65100;color:#fff}
.toolbar{margin-bottom:15px}
.btn-primary{background:#1565c0;color:#fff;border:none;padding:10px 18px;border-radius:8px;cursor:pointer;font-size:14px}
.btn-success{background:#2e7d32;color:#fff;border:none;padding:10px 18px;border-radius:8px;cursor:pointer;font-size:14px;margin-left:10px}
.btn-cancel{background:#2a2d3e;color:#fff;border:none;padding:10px 18px;border-radius:8px;cursor:pointer;font-size:14px}
.btn-sm{background:#2a2d3e;color:#fff;border:none;padding:5px 10px;border-radius:5px;cursor:pointer;font-size:12px;margin-right:5px}
.btn-danger{background:#b71c1c!important}
.modal{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,0.7);justify-content:center;align-items:center;z-index:999}
.modal-box{background:#1a1d27;padding:30px;border-radius:12px;width:420px;border:1px solid #2a2d3e}
.modal-box h3{margin-bottom:20px;color:#fff}
.modal-box input,.modal-box select{width:100%;padding:10px;margin:8px 0;background:#0f1117;border:1px solid #2a2d3e;border-radius:6px;color:#fff;font-size:14px}
.modal-actions{display:flex;gap:10px;margin-top:15px}
.checkbox-list{max-height:150px;overflow-y:auto;background:#0f1117;border:1px solid #2a2d3e;border-radius:6px;padding:10px;margin:8px 0}
.checkbox-list label{display:block;padding:5px;font-size:13px;cursor:pointer}
.checkbox-list label:hover{background:#2a2d3e;border-radius:4px}
.dot{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:5px}
.shift-row{display:flex;align-items:center;gap:10px;margin:8px 0}
.shift-row select,.shift-row input{padding:8px;background:#0f1117;border:1px solid #2a2d3e;border-radius:6px;color:#fff}
