*{box-sizing:border-box}body{color:#0f172a;background:#f8fafc;margin:0;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input,select{font:inherit}button{cursor:pointer}.login-page{background:#f8fafc;justify-content:center;align-items:center;min-height:100vh;display:flex}.login-card{background:#fff;border-radius:24px;width:420px;padding:40px;box-shadow:0 20px 50px #0f172a14}.login-logo{text-align:center;margin-bottom:30px}.logo-icon{background:#eff6ff;border-radius:16px;justify-content:center;align-items:center;width:55px;height:55px;margin:auto;font-size:27px;display:flex}.login-logo h1{margin:15px 0 5px}.login-logo p{color:#64748b;margin:0}.login-card label{margin:15px 0 7px;font-weight:600;display:block}.login-card input{border:1px solid #e2e8f0;border-radius:10px;outline:none;width:100%;padding:13px}.login-card input:focus{border-color:#2563eb}.login-card form button{color:#fff;background:#2563eb;border:none;border-radius:10px;width:100%;margin-top:22px;padding:14px;font-weight:700}.error{color:#b91c1c;background:#fee2e2;border-radius:8px;margin-top:15px;padding:10px}.admin-layout{min-height:100vh;display:flex}.sidebar{background:#fff;border-right:1px solid #e2e8f0;flex-direction:column;width:250px;padding:20px;display:flex}.sidebar-logo{align-items:center;gap:12px;margin-bottom:35px;display:flex}.sidebar-logo strong{display:block}.sidebar-logo span{color:#94a3b8;margin-top:3px;font-size:12px;display:block}.sidebar-logo .logo-icon{width:45px;height:45px;margin:0}.nav-item{color:#64748b;border-radius:10px;align-items:center;gap:12px;margin-bottom:5px;padding:12px;font-weight:600;text-decoration:none;display:flex}.nav-item:hover{color:#2563eb;background:#f8fafc}.nav-item.active{color:#2563eb;background:#eff6ff}.logout{color:#ef4444;background:0 0;border:none;align-items:center;gap:12px;margin-top:auto;padding:12px;font-weight:600;display:flex}.main-content{flex:1;min-width:0}.topbar{background:#fff;border-bottom:1px solid #e2e8f0;justify-content:space-between;align-items:center;height:80px;padding:0 30px;display:flex}.topbar h2{margin:0;font-size:18px}.topbar p{color:#94a3b8;margin:4px 0 0;font-size:13px}.admin-user{align-items:center;gap:10px;display:flex}.admin-user span{color:#94a3b8;font-size:12px;display:block}.admin-avatar{color:#fff;background:#2563eb;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;font-weight:800;display:flex}.page-content{padding:30px}.page-heading{justify-content:space-between;align-items:center;margin-bottom:25px;display:flex}.page-heading h1{margin:0;font-size:28px}.page-heading p{color:#64748b;margin-top:6px}.primary-button{color:#fff;background:#2563eb;border:none;border-radius:10px;align-items:center;gap:7px;padding:11px 16px;font-weight:700;display:flex}.primary-button:hover{opacity:.9}.primary-button.full{justify-content:center;width:100%}.stats-grid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.stat-card{background:#fff;border-radius:16px;align-items:center;gap:15px;padding:20px;display:flex;box-shadow:0 2px 8px #0f172a0a}.stat-icon{color:#2563eb;background:#eff6ff;border-radius:13px;justify-content:center;align-items:center;width:48px;height:48px;display:flex}.stat-card span{color:#64748b;font-size:13px;display:block}.stat-card strong{margin-top:3px;font-size:25px;display:block}.dashboard-grid{grid-template-columns:2fr 1fr;gap:20px;margin-top:20px;display:grid}.panel{background:#fff;border-radius:16px;padding:20px}.panel h3{margin-top:0}.appointment-row{border-bottom:1px solid #f1f5f9;align-items:center;gap:12px;padding:14px 0;display:flex}.patient-avatar{color:#2563eb;background:#eff6ff;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;font-weight:800;display:flex}.appointment-info{flex:1}.appointment-info strong{display:block}.appointment-info span{color:#94a3b8;font-size:12px}.summary-item{border-bottom:1px solid #f1f5f9;justify-content:space-between;padding:15px 0;display:flex}.status{border-radius:20px;padding:5px 9px;font-size:11px;font-weight:700;display:inline-block}.status.confirmed{color:#15803d;background:#dcfce7}.status.pending{color:#b45309;background:#fef3c7}.status.completed{color:#1d4ed8;background:#dbeafe}.status.cancelled{color:#dc2626;background:#fee2e2}.table-card{background:#fff;border-radius:16px;overflow-x:auto}table{border-collapse:collapse;width:100%}th{text-align:left;color:#64748b;background:#f8fafc;padding:15px;font-size:12px}td{border-bottom:1px solid #f1f5f9;padding:15px;font-size:13px}.actions{align-items:center;gap:7px;display:flex}.icon-button{background:#f1f5f9;border:none;border-radius:8px;justify-content:center;align-items:center;width:34px;height:34px;display:flex}.icon-button.delete{color:#ef4444}.approve-button,.reject-button{border:none;border-radius:7px;align-items:center;gap:5px;padding:7px 10px;font-size:11px;font-weight:700;display:flex}.approve-button{color:#15803d;background:#dcfce7}.reject-button{color:#dc2626;background:#fee2e2}.modal-overlay{z-index:100;background:#0f172a73;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal{background:#fff;border-radius:18px;width:500px;max-width:90%;max-height:90vh;padding:25px;overflow-y:auto}.modal-header{justify-content:space-between;align-items:center;display:flex}.modal-header h2{margin:0}.modal form label{margin:15px 0 7px;font-weight:600;display:block}.modal form input,.modal form select{border:1px solid #e2e8f0;border-radius:9px;width:100%;padding:11px}.empty{text-align:center;color:#94a3b8;padding:35px}.page-count{color:#64748b;background:#fff;border-radius:10px;align-items:center;gap:7px;padding:10px 15px;display:flex}.person{align-items:center;gap:10px;display:flex}@media (width<=1000px){.sidebar{width:210px}.stats-grid{grid-template-columns:repeat(2,1fr)}.dashboard-grid{grid-template-columns:1fr}}@media (width<=700px){.sidebar{display:none}.topbar{padding:0 15px}.page-content{padding:20px}.stats-grid{grid-template-columns:1fr}}
