/* MedicalCloud Admin Panel */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap');
*{box-sizing:border-box}
body.admin-body{font-family:'Inter',sans-serif;background:#f5f5f9;margin:0;display:flex;min-height:100vh}

/* Sidebar */
.sidebar{width:260px;background:#1e1e2d;color:#fff;display:flex;flex-direction:column;position:fixed;top:0;left:0;bottom:0;z-index:1000;transition:transform .3s}
.sidebar-brand{display:flex;align-items:center;gap:.75rem;padding:1.25rem 1.5rem;border-bottom:1px solid rgba(255,255,255,.06);font-weight:700;font-size:1rem}
.sidebar-nav{flex:1;padding:1rem 0;overflow-y:auto}
.sidebar-link{display:flex;align-items:center;gap:.75rem;padding:.65rem 1.5rem;color:rgba(255,255,255,.6);text-decoration:none;font-size:.875rem;font-weight:500;transition:all .2s;border-left:3px solid transparent}
.sidebar-link:hover{color:#fff;background:rgba(255,255,255,.04)}
.sidebar-link.active{color:#0d9488;background:rgba(13,148,136,.08);border-left-color:#0d9488}
.sidebar-link svg{flex-shrink:0;opacity:.7}.sidebar-link.active svg{opacity:1}
.sidebar-divider{height:1px;background:rgba(255,255,255,.06);margin:.75rem 1.5rem}
.sidebar-footer{padding:1rem 1.5rem;border-top:1px solid rgba(255,255,255,.06)}
.sidebar-user{display:flex;align-items:center;gap:.75rem;margin-bottom:.75rem}
.sidebar-user-avatar{width:36px;height:36px;border-radius:10px;background:linear-gradient(135deg,#0d9488,#06b6d4);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.8rem;color:#fff}
.sidebar-user-name{font-size:.85rem;font-weight:600}.sidebar-user-role{font-size:.7rem;color:rgba(255,255,255,.4);text-transform:capitalize}

/* Main */
.main-content{flex:1;margin-left:260px;display:flex;flex-direction:column}
.topbar{background:#fff;padding:.75rem 1.5rem;border-bottom:1px solid #e5e7eb;display:flex;align-items:center;gap:1rem;position:sticky;top:0;z-index:100}
.topbar-title{font-size:1.1rem;font-weight:600;margin:0;color:#1e293b}
.content-wrapper{padding:1.5rem;flex:1}

/* Cards */
.stat-card-admin{background:#fff;border-radius:12px;padding:1.25rem;display:flex;align-items:center;gap:1rem;box-shadow:0 1px 3px rgba(0,0,0,.06)}
.stat-icon{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.bg-teal-light{background:rgba(13,148,136,.1)}.bg-blue-light{background:rgba(59,130,246,.1)}.bg-amber-light{background:rgba(245,158,11,.1)}.bg-purple-light{background:rgba(139,92,246,.1)}
.stat-value{font-size:1.75rem;font-weight:700;color:#1e293b;line-height:1}.stat-label{font-size:.8rem;color:#64748b}
.card{border-radius:12px}.card-header{padding:.75rem 1.25rem}

/* Patient avatar */
.patient-avatar{width:56px;height:56px;border-radius:14px;background:linear-gradient(135deg,#0d9488,#06b6d4);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1.1rem;color:#fff;flex-shrink:0}

/* Calendar grid */
.calendar-grid{overflow-x:auto}
.cal-header{display:flex;border-bottom:2px solid #e5e7eb;position:sticky;top:0;background:#fff;z-index:2}
.cal-time-col{width:60px;flex-shrink:0;padding:.25rem .5rem;font-size:.75rem;color:#64748b;text-align:right}
.cal-day-col{flex:1;text-align:center;padding:.5rem;min-width:100px}
.cal-day-col.today{background:rgba(13,148,136,.05)}.cal-day-name{font-size:.75rem;color:#64748b;font-weight:500}.cal-day-num{font-size:1rem;font-weight:600}
.cal-body{position:relative}.cal-row{display:flex;border-bottom:1px solid #f1f5f9;min-height:48px}
.cal-cell{flex:1;border-left:1px solid #f1f5f9;min-width:100px;cursor:pointer;position:relative}.cal-cell:hover{background:rgba(13,148,136,.03)}
.cal-appointment{position:absolute;left:2px;right:2px;background:#0d9488;color:#fff;border-radius:4px;padding:2px 6px;font-size:.7rem;overflow:hidden;cursor:pointer;z-index:1}

/* Table */
.table{font-size:.875rem}.table th{font-weight:600;color:#64748b;border-bottom:2px solid #e5e7eb}.table td{vertical-align:middle}

/* Responsive */
@media(max-width:991px){
    .sidebar{transform:translateX(-100%)}.sidebar.show{transform:translateX(0)}
    .main-content{margin-left:0}
}
