body{margin:0;font-family:Arial,sans-serif}.auth-page{background:#fff;min-height:100vh;display:flex}.auth-left{color:#fff;background:linear-gradient(145deg,#0b1f3a 0%,#12395d 55%,#12627a 100%);flex-direction:column;width:52%;min-height:100vh;padding:48px 70px;display:flex;position:relative;overflow:hidden}.auth-left:before{content:"";background:#ffffff0b;border-radius:50%;width:430px;height:430px;position:absolute;top:-180px;right:-150px}.auth-left:after{content:"";background:#ffffff09;border-radius:50%;width:330px;height:330px;position:absolute;bottom:-180px;left:-130px}.auth-brand{z-index:2;align-items:center;gap:13px;display:flex;position:relative}.auth-brand-icon{background:#ffffff21;border:1px solid #ffffff29;border-radius:13px;justify-content:center;align-items:center;width:46px;height:46px;font-size:30px;font-weight:700;line-height:1;display:flex}.auth-brand strong{letter-spacing:-.5px;font-size:23px;font-weight:800;display:block}.auth-brand span{letter-spacing:1.6px;text-transform:uppercase;color:#ffffffa6;margin-top:2px;font-size:11px;display:block}.auth-hero{z-index:2;width:100%;max-width:590px;margin:auto 0;position:relative}.auth-hero-icon{background:#ffffff1a;border:1px solid #ffffff24;border-radius:17px;justify-content:center;align-items:center;width:58px;height:58px;margin-bottom:25px;font-size:25px;display:flex}.auth-hero h1{letter-spacing:-1.7px;margin:0 0 22px;font-size:50px;font-weight:800;line-height:1.08}.auth-hero h1 span{color:#7dd3fc}.auth-hero>p{color:#ffffffb8;max-width:530px;margin:0 0 38px;font-size:16px;line-height:1.75}.auth-features{flex-direction:column;gap:17px;display:flex}.auth-feature{align-items:flex-start;gap:14px;display:flex}.feature-icon{color:#8be3ff;background:#ffffff1c;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:16px;font-weight:800;display:flex}.auth-feature strong{color:#fff;margin-bottom:4px;font-size:14px;font-weight:700;display:block}.auth-feature span{color:#ffffff94;font-size:13px;line-height:1.5;display:block}.auth-left-footer{z-index:2;color:#ffffff6b;font-size:12px;position:relative}.auth-right{background:#fff;justify-content:center;align-items:center;width:48%;min-height:100vh;padding:50px 70px;display:flex}.auth-form-container{width:100%;max-width:450px}.register-container{max-width:480px}.auth-mobile-brand{display:none}.auth-form-header{margin-bottom:30px}.auth-small-title{letter-spacing:1.8px;color:#2563eb;margin:0 0 10px;font-size:11px;font-weight:800}.auth-form-header h2{letter-spacing:-.8px;color:#172033;margin:0 0 11px;font-size:32px;font-weight:800;line-height:1.2}.auth-form-header>p:last-child{color:#778195;margin:0;font-size:14px;line-height:1.6}.auth-form{flex-direction:column;gap:21px;display:flex}.auth-form-group{flex-direction:column;gap:8px;display:flex}.auth-form-group label{color:#354052;font-size:13px;font-weight:700}.auth-label-row{justify-content:space-between;align-items:center;display:flex}.auth-input-wrapper{width:100%;position:relative}.auth-input-wrapper input{color:#172033;background:#fbfcfe;border:1px solid #dce2eb;border-radius:11px;outline:none;width:100%;height:52px;padding:0 16px 0 47px;font-size:14px;transition:border-color .2s,box-shadow .2s,background .2s}.auth-input-wrapper input::placeholder{color:#a1a9b7}.auth-input-wrapper input:hover{background:#fff;border-color:#c6cfdb}.auth-input-wrapper input:focus{background:#fff;border-color:#3b82f6;box-shadow:0 0 0 4px #3b82f617}.auth-input-icon{color:#8a95a6;pointer-events:none;justify-content:center;align-items:center;width:20px;height:20px;font-size:15px;display:flex;position:absolute;top:50%;left:17px;transform:translateY(-50%)}.auth-input-wrapper input[type=password],.auth-input-wrapper input[type=text]{padding-right:65px}.auth-password-toggle{color:#64748b;cursor:pointer;background:0 0;border:0;padding:7px 5px;font-size:12px;font-weight:700;position:absolute;top:50%;right:13px;transform:translateY(-50%)}.auth-password-toggle:hover{color:#2563eb}.auth-error{color:#be123c;background:#fff5f6;border:1px solid #fecdd3;border-radius:10px;align-items:flex-start;gap:10px;margin-bottom:21px;padding:13px 14px;font-size:13px;line-height:1.5;display:flex}.auth-error>span{flex-shrink:0;font-size:15px}.auth-success{color:#047857;background:#f0fdf7;border:1px solid #a7f3d0;border-radius:10px;align-items:flex-start;gap:10px;margin-bottom:21px;padding:13px 14px;font-size:13px;line-height:1.5;display:flex}.auth-success>span{flex-shrink:0;font-size:15px}.auth-terms{background:#f8fafc;border:1px solid #e7ebf1;border-radius:10px;align-items:center;gap:10px;padding:13px 14px;display:flex}.auth-terms>span{background:#eaf2ff;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:30px;height:30px;font-size:13px;display:flex}.auth-terms p{color:#7b8494;margin:0;font-size:11px;line-height:1.5}.auth-submit{color:#fff;cursor:pointer;background:#2563eb;border:0;border-radius:11px;justify-content:center;align-items:center;gap:10px;width:100%;height:52px;font-size:14px;font-weight:750;transition:background .2s,transform .2s,box-shadow .2s;display:flex}.auth-submit:hover{background:#1d4ed8;transform:translateY(-1px);box-shadow:0 8px 20px #2563eb38}.auth-submit:active{transform:translateY(0)}.auth-submit:disabled{opacity:.65;cursor:not-allowed;box-shadow:none;transform:none}.auth-arrow{font-size:18px;line-height:1}.auth-button-loader{border:2px solid #ffffff59;border-top-color:#fff;border-radius:50%;width:16px;height:16px;animation:.7s linear infinite auth-loader}@keyframes auth-loader{to{transform:rotate(360deg)}}.auth-divider{color:#9aa3b2;align-items:center;gap:15px;margin:25px 0 15px;font-size:12px;display:flex}.auth-divider:before,.auth-divider:after{content:"";background:#e8ecf2;flex:1;height:1px}.auth-register-button{color:#2563eb;background:#fff;border:1px solid #d9e1ec;border-radius:10px;justify-content:center;align-items:center;width:100%;height:48px;font-size:13px;font-weight:700;text-decoration:none;transition:border-color .2s,background .2s,transform .2s;display:flex}.auth-register-button:hover{background:#f7faff;border-color:#93b4f7;transform:translateY(-1px)}.auth-security-note{color:#9aa3b2;text-align:center;border-top:1px solid #edf0f4;justify-content:center;align-items:center;gap:7px;margin-top:24px;padding-top:19px;display:flex}.auth-security-note span{font-size:12px}.auth-security-note p{margin:0;font-size:11px;line-height:1.4}.register-container .auth-form{gap:16px}.register-container .auth-form-header{margin-bottom:25px}.register-container .auth-form-group{gap:7px}.register-container .auth-input-wrapper input{height:49px}@media (width<=1100px){.auth-left,.auth-right{padding:40px 45px}.auth-hero h1{font-size:42px}.auth-form-header h2{font-size:29px}}@media (width<=800px){.auth-page{display:block}.auth-left{width:100%;min-height:auto;padding:30px 25px 35px}.auth-left-footer{display:none}.auth-hero{margin:55px 0 10px}.auth-hero-icon{width:48px;height:48px;margin-bottom:18px}.auth-hero h1{letter-spacing:-1px;font-size:34px}.auth-hero>p{margin-bottom:25px;font-size:14px}.auth-features{gap:13px}.auth-feature span{font-size:12px}.auth-right{width:100%;min-height:auto;padding:40px 25px 50px}.auth-form-container{max-width:520px}.auth-mobile-brand{display:none}}@media (width<=480px){.auth-left{padding:25px 20px 30px}.auth-brand-icon{width:42px;height:42px;font-size:27px}.auth-brand strong{font-size:21px}.auth-hero{margin-top:45px}.auth-hero h1{font-size:29px}.auth-hero>p{line-height:1.6}.auth-right{padding:35px 20px 45px}.auth-form-header h2{font-size:27px}.auth-form-header>p:last-child{font-size:13px}.auth-input-wrapper input,.auth-submit{height:50px}}.patient-layout{color:#172033;background:#f5f7fb;min-height:100vh;font-family:Inter,Arial,Helvetica,sans-serif}.patient-sidebar{color:#fff;z-index:1000;background:#101b36;flex-direction:column;width:250px;height:100vh;display:flex;position:fixed;top:0;left:0}.patient-brand{border-bottom:1px solid #ffffff14;align-items:center;gap:12px;height:82px;padding:0 24px;display:flex}.patient-brand-icon{background:#2f80ed;border-radius:10px;justify-content:center;align-items:center;width:40px;height:40px;font-size:26px;font-weight:700;display:flex;box-shadow:0 6px 16px #2f80ed4d}.patient-brand strong{letter-spacing:-.4px;font-size:20px;display:block}.patient-brand span{color:#8d9ab8;margin-top:2px;font-size:11px;display:block}.patient-menu{flex:1;padding:25px 14px;overflow-y:auto}.patient-menu-label{color:#697795;letter-spacing:1.2px;margin:12px 12px 10px;font-size:10px;font-weight:700}.patient-menu-item{color:#aab5cd;cursor:pointer;text-align:left;background:0 0;border:none;border-radius:9px;align-items:center;gap:13px;width:100%;margin-bottom:5px;padding:13px 15px;font-size:14px;font-weight:500;transition:all .2s;display:flex}.patient-menu-item span{text-align:center;width:21px;font-size:17px}.patient-menu-item:hover{color:#fff;background:#ffffff12}.patient-menu-item.active{color:#fff;background:#2f80ed;box-shadow:0 7px 18px #2f80ed40}.patient-menu-item.logout{color:#f08c8c;margin-top:20px}.patient-menu-item.logout:hover{color:#ff9d9d;background:#ef44441a}.patient-sidebar-footer{background:#ffffff0d;border-radius:10px;align-items:center;gap:10px;margin:0 14px 18px;padding:15px;display:flex}.footer-health-icon{color:#66a7ff;background:#2f80ed2e;border-radius:8px;justify-content:center;align-items:center;width:34px;height:34px;display:flex}.patient-sidebar-footer strong{color:#dbe3f5;font-size:11px;display:block}.patient-sidebar-footer span{color:#7785a4;margin-top:3px;font-size:9px;display:block}.patient-main{min-height:100vh;margin-left:250px}.patient-header{background:#fff;border-bottom:1px solid #e8ebf2;justify-content:flex-end;align-items:center;height:78px;padding:0 32px;display:flex}.patient-header-right{align-items:center;gap:22px;display:flex}.patient-notification{cursor:pointer;border:1px solid #e6e9f0;border-radius:9px;justify-content:center;align-items:center;width:38px;height:38px;font-size:16px;display:flex}.patient-header-profile{border-left:1px solid #e8ebf2;align-items:center;gap:10px;padding-left:20px;display:flex}.patient-header-profile strong{color:#1d2942;font-size:13px;display:block}.patient-header-profile span{color:#8b95a8;margin-top:3px;font-size:11px;display:block}.patient-avatar.large{width:48px;height:48px;font-size:17px}.mobile-brand{display:none}.patient-content{max-width:1600px;margin:0 auto;padding:32px}.patient-success,.patient-error{border-radius:8px;margin-bottom:22px;padding:13px 17px;font-size:13px;font-weight:500}.patient-success{color:#15803d;background:#ecfdf3;border:1px solid #c7f1d9}.patient-error{color:#be123c;background:#fff1f2;border:1px solid #fecdd3}.patient-welcome{background:#fff;border:1px solid #e8ebf2;border-radius:13px;justify-content:space-between;align-items:center;margin-bottom:22px;padding:27px 30px;display:flex}.patient-small-title{color:#2f80ed;letter-spacing:1.2px;margin:0 0 7px;font-size:10px;font-weight:800}.patient-welcome h1{color:#172033;letter-spacing:-.5px;margin:0;font-size:25px}.patient-welcome p:not(.patient-small-title){color:#7c879b;margin:7px 0 0;font-size:13px}.patient-profile-card{background:#f8faff;border:1px solid #e7edf8;border-radius:10px;align-items:center;gap:12px;padding:10px 14px;display:flex}.patient-profile-card strong{font-size:13px;display:block}.patient-profile-card span{color:#8a95a8;margin-top:4px;font-size:11px;display:block}.patient-stats{grid-template-columns:repeat(4,1fr);gap:17px;margin-bottom:22px;display:grid}.patient-stat-card{background:#fff;border:1px solid #e8ebf2;border-radius:12px;align-items:center;gap:14px;padding:20px;transition:transform .2s,box-shadow .2s;display:flex}.patient-stat-card:hover{transform:translateY(-2px);box-shadow:0 8px 24px #14203d0f}.patient-stat-icon{border-radius:10px;justify-content:center;align-items:center;width:46px;height:46px;font-size:19px;font-weight:700;display:flex}.patient-stat-icon.blue{color:#2f80ed;background:#e9f2ff}.patient-stat-icon.orange{color:#e99b22;background:#fff4df}.patient-stat-icon.green{color:#1fa45b;background:#e9f9ef}.patient-stat-icon.purple{color:#7b52d9;background:#f1ebff}.patient-stat-card span{color:#8a94a7;margin-bottom:5px;font-size:11px;display:block}.patient-stat-card strong{color:#182238;font-size:24px;display:block}.patient-dashboard-grid{grid-template-columns:minmax(0,1.7fr) minmax(300px,1fr);gap:20px;display:grid}.patient-panel{background:#fff;border:1px solid #e8ebf2;border-radius:12px;overflow:hidden}.patient-panel-header{border-bottom:1px solid #edf0f5;justify-content:space-between;align-items:center;min-height:74px;padding:18px 21px;display:flex}.patient-panel-header h2{color:#1c2740;margin:0;font-size:15px}.patient-panel-header p{color:#8a94a7;margin:5px 0 0;font-size:11px}.patient-link-button{color:#2f80ed;cursor:pointer;background:0 0;border:none;font-size:12px;font-weight:600}.patient-appointment-list{padding:5px 20px}.patient-appointment-item{border-bottom:1px solid #eef1f5;align-items:center;gap:13px;min-height:77px;display:flex}.patient-appointment-item:last-child{border-bottom:none}.patient-doctor-avatar{color:#2f80ed;background:#eaf2ff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-size:13px;font-weight:700;display:flex}.patient-doctor-avatar.small{width:32px;height:32px;font-size:11px}.patient-appointment-info{flex:1;min-width:130px}.patient-appointment-info strong{color:#263149;font-size:12px;display:block}.patient-appointment-info span{color:#929bad;margin-top:4px;font-size:10px;display:block}.patient-date-info{width:125px}.patient-date-info strong{color:#3d4659;font-size:11px;display:block}.patient-date-info span{color:#929bad;margin-top:4px;font-size:10px;display:block}.patient-status{white-space:nowrap;border-radius:20px;justify-content:center;align-items:center;padding:5px 9px;font-size:9px;font-weight:700;display:inline-flex}.patient-status.booked{color:#b77908;background:#fff5dc}.patient-status.confirmed{color:#16834a;background:#e8f8ef}.patient-status.progress{color:#2f70ca;background:#e9f2ff}.patient-status.completed{color:#7050c7;background:#eeeaff}.patient-status.cancelled{color:#c53e4d;background:#fff0f1}.patient-empty{text-align:center;padding:45px 25px}.empty-icon{background:#edf4ff;border-radius:50%;justify-content:center;align-items:center;width:54px;height:54px;margin:0 auto 13px;font-size:22px;display:flex}.patient-empty h3{color:#29344a;margin:0;font-size:14px}.patient-empty p{color:#9099a9;margin:6px 0 17px;font-size:11px}.patient-summary{padding:12px 20px}.patient-summary-row{border-bottom:1px solid #eef1f5;justify-content:space-between;align-items:center;min-height:52px;display:flex}.patient-summary-row:last-child{border-bottom:none}.patient-summary-row div{color:#596479;align-items:center;gap:9px;font-size:12px;display:flex}.patient-summary-row strong{color:#263149;font-size:13px}.summary-dot{border-radius:50%;width:8px;height:8px}.summary-dot.booked{background:#e8a527}.summary-dot.confirmed{background:#24a65c}.summary-dot.completed{background:#7757d1}.summary-dot.cancelled{background:#d94b59}.patient-book-large{color:#fff;cursor:pointer;background:#2f80ed;border:none;border-radius:8px;width:calc(100% - 40px);margin:12px 20px 20px;padding:12px;font-size:12px;font-weight:600;transition:background .2s}.patient-book-large:hover{background:#246dcc}.patient-primary-button{color:#fff;cursor:pointer;background:#2f80ed;border:none;border-radius:8px;padding:11px 17px;font-size:12px;font-weight:600;transition:all .2s}.patient-primary-button:hover{background:#246dcc;box-shadow:0 5px 13px #2f80ed38}.patient-primary-button:disabled{opacity:.65;cursor:not-allowed}.patient-primary-button.full{width:100%;margin-top:8px}.patient-page-section{width:100%}.patient-page-title{justify-content:space-between;align-items:flex-end;margin-bottom:22px;display:flex}.patient-page-title h1{color:#182238;letter-spacing:-.4px;margin:0;font-size:25px}.patient-page-title>div>p:last-child{color:#858fa1;margin:7px 0 0;font-size:12px}.patient-book-layout{grid-template-columns:minmax(0,1.5fr) minmax(280px,.8fr);gap:20px;display:grid}.booking-panel{padding-bottom:25px}.patient-book-form{padding:24px}.patient-form-group{margin-bottom:19px}.patient-form-row{grid-template-columns:1fr 1fr;gap:17px;display:grid}.patient-form-group label{color:#374258;margin-bottom:7px;font-size:11px;font-weight:600;display:block}.patient-form-group input,.patient-form-group select{color:#354056;background:#fff;border:1px solid #dfe4ed;border-radius:7px;outline:none;width:100%;height:43px;padding:0 12px;font-size:12px;transition:border .2s,box-shadow .2s}.patient-form-group input:focus,.patient-form-group select:focus{border-color:#2f80ed;box-shadow:0 0 0 3px #2f80ed17}.patient-form-group input::placeholder{color:#a2aaba}.patient-book-info{flex-direction:column;gap:14px;display:flex}.patient-info-card{background:#fff;border:1px solid #e8ebf2;border-radius:11px;padding:20px}.info-card-icon{color:#2f80ed;background:#eaf2ff;border-radius:9px;justify-content:center;align-items:center;width:39px;height:39px;margin-bottom:12px;font-size:17px;display:flex}.patient-info-card h3{color:#273249;margin:0;font-size:13px}.patient-info-card p{color:#8b95a7;margin:7px 0 0;font-size:11px;line-height:1.6}.patient-table-container{width:100%;overflow-x:auto}.patient-table{border-collapse:collapse;width:100%;min-width:900px}.patient-table th{color:#7d8799;text-transform:uppercase;letter-spacing:.6px;text-align:left;background:#fafbfc;border-bottom:1px solid #e9edf3;padding:13px 17px;font-size:9px;font-weight:700}.patient-table td{color:#596479;vertical-align:middle;border-bottom:1px solid #edf0f4;padding:14px 17px;font-size:11px}.patient-table tbody tr:hover{background:#fbfcfe}.patient-table-doctor{align-items:center;gap:9px;display:flex}.patient-table-doctor strong{color:#303b52;font-size:11px}.patient-cancel-button{color:#c53e4d;cursor:pointer;background:#fff7f7;border:1px solid #f0b9bf;border-radius:6px;padding:6px 11px;font-size:10px;font-weight:600}.patient-cancel-button:hover{background:#fff0f1}.patient-cancel-button:disabled{opacity:.6;cursor:not-allowed}.patient-no-action{color:#a1a8b5;font-size:10px}.patient-profile-page{background:#fff;border:1px solid #e8ebf2;border-radius:12px;grid-template-columns:280px 1fr;display:grid;overflow:hidden}.patient-profile-main{background:#f7faff;border-right:1px solid #e8ebf2;flex-direction:column;justify-content:center;align-items:center;padding:45px 25px;display:flex}.profile-avatar{color:#2f80ed;background:#e7f0ff;border-radius:50%;justify-content:center;align-items:center;width:85px;height:85px;margin-bottom:15px;font-size:30px;font-weight:700;display:flex}.patient-profile-main h2{color:#263149;text-align:center;margin:0;font-size:18px}.profile-role{color:#2f80ed;background:#eaf2ff;border-radius:15px;margin-top:8px;padding:5px 10px;font-size:9px;font-weight:700}.patient-profile-details{grid-template-columns:1fr 1fr;align-content:start;gap:20px;padding:35px;display:grid}.profile-detail{background:#fafbfc;border:1px solid #edf0f4;border-radius:9px;padding:17px}.profile-detail span{color:#8b95a7;margin-bottom:7px;font-size:10px;display:block}.profile-detail strong{color:#354056;word-break:break-word;font-size:12px;display:block}.patient-loading{text-align:center;color:#8993a5;padding:45px 20px;font-size:11px}.patient-loader{border:3px solid #e5edf9;border-top-color:#2f80ed;border-radius:50%;width:27px;height:27px;margin:0 auto 10px;animation:.8s linear infinite patientSpin}@keyframes patientSpin{to{transform:rotate(360deg)}}@media (width<=1100px){.patient-sidebar{width:220px}.patient-main{margin-left:220px}.patient-content{padding:24px}.patient-stats{grid-template-columns:repeat(2,1fr)}.patient-dashboard-grid,.patient-book-layout{grid-template-columns:1fr}}@media (width<=750px){.patient-sidebar{width:100%;height:auto;position:relative}.patient-brand{height:70px}.patient-menu{flex-wrap:wrap;gap:4px;padding:10px;display:flex}.patient-menu-label{display:none}.patient-menu-item{flex:140px;width:auto;margin:0}.patient-sidebar-footer{display:none}.patient-main{margin-left:0}.patient-header{justify-content:space-between;height:68px;padding:0 18px}.mobile-brand{color:#182238;font-size:17px;display:block}.patient-notification{display:none}.patient-header-profile{border-left:none;padding-left:0}.patient-content{padding:18px}.patient-welcome{flex-direction:column;align-items:flex-start;gap:18px;padding:21px}.patient-welcome h1{font-size:21px}.patient-profile-card{width:100%}.patient-stats{grid-template-columns:1fr 1fr;gap:10px}.patient-stat-card{padding:15px}.patient-stat-icon{width:39px;height:39px;font-size:15px}.patient-stat-card strong{font-size:20px}.patient-dashboard-grid{grid-template-columns:1fr}.patient-appointment-item{flex-wrap:wrap;padding:13px 0}.patient-date-info{width:auto;margin-left:53px}.patient-appointment-item .patient-status{margin-left:auto}.patient-page-title{flex-direction:column;align-items:flex-start;gap:15px}.patient-form-row{grid-template-columns:1fr;gap:0}.patient-profile-page{grid-template-columns:1fr}.patient-profile-main{border-bottom:1px solid #e8ebf2;border-right:none}.patient-profile-details{grid-template-columns:1fr;padding:20px}}@media (width<=480px){.patient-menu-item{flex:100%}.patient-header-profile>div:last-child{display:none}.patient-stats{grid-template-columns:1fr}.patient-panel-header{padding:16px}.patient-appointment-list{padding:5px 16px}.patient-appointment-info{min-width:100px}.patient-book-form{padding:18px}.patient-page-title h1{font-size:21px}}.doctor-layout{min-height:100vh;display:flex}.doctor-sidebar{color:#fff;z-index:10;background:#102a43;flex-direction:column;width:250px;min-height:100vh;display:flex;position:fixed;top:0;bottom:0;left:0}.doctor-brand{border-bottom:1px solid #ffffff14;align-items:center;gap:12px;height:85px;padding:0 24px;display:flex}.doctor-brand-icon{background:#2f80ed;border-radius:10px;justify-content:center;align-items:center;width:40px;height:40px;font-size:28px;font-weight:700;display:flex}.doctor-brand h2{margin:0;font-size:21px}.doctor-brand span{color:#b8c7d9;font-size:11px}.doctor-menu{padding:25px 15px}.doctor-menu-title{letter-spacing:1.2px;color:#829ab1;margin-bottom:12px;padding-left:12px;font-size:10px}.doctor-menu-item{color:#bcccdc;cursor:pointer;text-align:left;background:0 0;border:none;border-radius:8px;align-items:center;gap:13px;width:100%;margin-bottom:5px;padding:13px 14px;font-size:14px;transition:all .2s;display:flex}.doctor-menu-item span{text-align:center;width:20px;font-size:17px}.doctor-menu-item:hover{color:#fff;background:#ffffff12}.doctor-menu-item.active{color:#fff;background:#2f80ed;box-shadow:0 5px 15px #2f80ed40}.doctor-sidebar-bottom{border-top:1px solid #ffffff14;margin-top:auto;padding:15px}.doctor-menu-item.logout:hover{color:#ffb4b4;background:#ff505026}.doctor-main{width:calc(100% - 250px);min-height:100vh;margin-left:250px}.doctor-header{background:#fff;border-bottom:1px solid #e6eaf0;justify-content:space-between;align-items:center;height:85px;padding:0 35px;display:flex}.doctor-breadcrumb{color:#829ab1;text-transform:capitalize;margin:0;font-size:13px}.doctor-profile{align-items:center;gap:12px;display:flex}.doctor-notification{color:#486581;border:1px solid #e5e7eb;border-radius:50%;justify-content:center;align-items:center;width:38px;height:38px;display:flex}.doctor-avatar{color:#fff;background:#2f80ed;border-radius:50%;justify-content:center;align-items:center;width:42px;height:42px;font-weight:700;display:flex}.doctor-profile-info{flex-direction:column;display:flex}.doctor-profile-info strong{font-size:14px}.doctor-profile-info span{color:#829ab1;margin-top:3px;font-size:11px}.doctor-content{padding:32px 35px}.doctor-success,.doctor-error{border-radius:8px;margin-bottom:20px;padding:13px 18px;font-size:14px}.doctor-success{color:#237a4b;background:#e8f8ef;border:1px solid #b8e5ca}.doctor-error{color:#c53030;background:#fff0f0;border:1px solid #ffd0d0}.doctor-welcome{justify-content:space-between;align-items:center;margin-bottom:30px;display:flex}.doctor-small-title{letter-spacing:1.4px;color:#2f80ed;margin:0 0 7px;font-size:11px;font-weight:700}.doctor-welcome h1,.doctor-page-title h1{margin:0;font-size:29px}.doctor-welcome p:not(.doctor-small-title){color:#829ab1;margin:8px 0 0;font-size:14px}.doctor-role-card{background:#fff;border:1px solid #e6eaf0;border-radius:10px;align-items:center;gap:12px;padding:13px 18px;display:flex}.role-icon{color:#2f80ed;background:#eaf2ff;border-radius:9px;justify-content:center;align-items:center;width:42px;height:42px;font-size:20px;display:flex}.doctor-role-card strong{font-size:13px;display:block}.doctor-role-card span{color:#829ab1;margin-top:4px;font-size:10px;display:block}.doctor-stats{grid-template-columns:repeat(4,1fr);gap:18px;margin-bottom:25px;display:grid}.doctor-stat-card{background:#fff;border:1px solid #e6eaf0;border-radius:12px;align-items:center;gap:15px;padding:22px;display:flex;box-shadow:0 3px 10px #102a4308}.doctor-stat-icon{border-radius:10px;justify-content:center;align-items:center;width:50px;height:50px;font-size:21px;display:flex}.doctor-stat-icon.blue{color:#2f80ed;background:#eaf2ff}.doctor-stat-icon.orange{color:#f2994a;background:#fff4df}.doctor-stat-icon.green{color:#27ae60;background:#e8f8ef}.doctor-stat-icon.purple{color:#7657d9;background:#f1edff}.doctor-stat-card span{color:#829ab1;font-size:11px}.doctor-stat-card h2{margin:4px 0;font-size:25px}.doctor-stat-card small{color:#9aa9b8;font-size:10px}.doctor-dashboard-grid{grid-template-columns:2fr 1fr;gap:20px;display:grid}.doctor-panel{background:#fff;border:1px solid #e6eaf0;border-radius:12px;overflow:hidden;box-shadow:0 3px 10px #102a4308}.doctor-panel-header{justify-content:space-between;align-items:center;padding:20px 22px;display:flex}.doctor-panel-header h2{margin:0;font-size:17px}.doctor-panel-header p{color:#829ab1;margin:5px 0 0;font-size:12px}.doctor-view-button{color:#2f80ed;cursor:pointer;background:0 0;border:none;font-size:12px;font-weight:700}.doctor-table-container{overflow-x:auto}.doctor-table-container table{border-collapse:collapse;width:100%}.doctor-table-container thead{background:#f8fafc}.doctor-table-container th{text-align:left;text-transform:uppercase;letter-spacing:.5px;color:#829ab1;white-space:nowrap;padding:13px 18px;font-size:10px}.doctor-table-container td{white-space:nowrap;border-top:1px solid #edf0f4;padding:14px 18px;font-size:12px}.doctor-table-container tbody tr:hover{background:#fafcff}.patient-cell{align-items:center;gap:10px;display:flex}.patient-avatar{color:#2f80ed;background:#eaf2ff;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;font-size:12px;font-weight:700;display:flex}.doctor-empty{text-align:center;color:#829ab1;padding:40px!important}.doctor-status{border-radius:20px;padding:5px 9px;font-size:9px;font-weight:700}.action-button{cursor:pointer;border:none;border-radius:6px;padding:7px 11px;font-size:10px;font-weight:700}.action-button.confirm{color:#21864a;background:#e7f7ee}.action-button.start{color:#2563a8;background:#e8f1ff}.action-button.complete{color:#5b4ab7;background:#e9e7ff}.action-button.disabled{color:#829ab1;cursor:not-allowed;background:#edf0f4}.no-action{color:#9aa9b8;font-size:10px}.doctor-status-list{padding:0 22px 20px}.doctor-status-row{border-bottom:1px solid #edf0f4;align-items:center;gap:10px;padding:14px 0;font-size:12px;display:flex}.doctor-status-row strong{margin-left:auto}.status-circle{border-radius:50%;width:9px;height:9px}.booked-circle{background:#f2c94c}.confirmed-circle{background:#27ae60}.progress-circle{background:#2f80ed}.completed-circle{background:#8e7dff}.cancelled-circle{background:#eb5757}.doctor-page-title{justify-content:space-between;align-items:center;margin-bottom:25px;display:flex}.doctor-page-title p:not(.doctor-small-title){color:#829ab1;margin-top:7px;font-size:13px}.doctor-count{color:#486581;background:#fff;border:1px solid #e6eaf0;border-radius:8px;padding:10px 16px;font-size:12px}.doctor-loading{color:#829ab1;flex-direction:column;justify-content:center;align-items:center;min-height:400px;display:flex}.doctor-loader{border:3px solid #dbeafe;border-top-color:#2f80ed;border-radius:50%;width:35px;height:35px;animation:.8s linear infinite doctor-spin}@keyframes doctor-spin{to{transform:rotate(360deg)}}@media (width<=1100px){.doctor-stats{grid-template-columns:repeat(2,1fr)}.doctor-dashboard-grid{grid-template-columns:1fr}}@media (width<=750px){.doctor-sidebar{width:70px}.doctor-brand{justify-content:center;padding:0}.doctor-brand>div:last-child{display:none}.doctor-menu-item{justify-content:center;font-size:0}.doctor-menu-item span{font-size:18px}.doctor-main{width:calc(100% - 70px);margin-left:70px}.doctor-content{padding:20px}.doctor-header{padding:0 20px}.doctor-profile-info,.doctor-notification{display:none}.doctor-stats{grid-template-columns:1fr}.doctor-welcome{flex-direction:column;align-items:flex-start;gap:15px}}*{box-sizing:border-box}body{color:#172033;background:#f5f7fb;margin:0;font-family:Inter,Arial,sans-serif}.admin-layout{min-height:100vh;display:flex}.admin-sidebar{color:#fff;z-index:10;background:#102a43;flex-direction:column;width:250px;min-height:100vh;display:flex;position:fixed;top:0;bottom:0;left:0}.brand{border-bottom:1px solid #ffffff14;align-items:center;gap:12px;height:85px;padding:0 24px;display:flex}.brand-icon{background:#2f80ed;border-radius:10px;justify-content:center;align-items:center;width:40px;height:40px;font-size:28px;font-weight:700;display:flex}.brand h2{margin:0;font-size:21px}.brand span{color:#b8c7d9;font-size:11px}.sidebar-menu{padding:25px 15px}.menu-title{letter-spacing:1.2px;color:#829ab1;margin-bottom:12px;padding-left:12px;font-size:10px}.menu-item{color:#bcccdc;cursor:pointer;text-align:left;background:0 0;border:none;border-radius:8px;align-items:center;gap:13px;width:100%;margin-bottom:5px;padding:13px 14px;font-size:14px;transition:all .2s;display:flex}.menu-item span{text-align:center;width:20px;font-size:17px}.menu-item:hover{color:#fff;background:#ffffff12}.menu-item.active{color:#fff;background:#2f80ed;box-shadow:0 5px 15px #2f80ed40}.sidebar-bottom{border-top:1px solid #ffffff14;margin-top:auto;padding:15px}.logout-button:hover{color:#ffb4b4;background:#ff505026}.admin-main{width:calc(100% - 250px);min-height:100vh;margin-left:250px}.top-header{background:#fff;border-bottom:1px solid #e6eaf0;justify-content:space-between;align-items:center;height:85px;padding:0 35px;display:flex}.breadcrumb{color:#829ab1;text-transform:capitalize;margin:0;font-size:13px}.admin-profile{align-items:center;gap:12px;display:flex}.notification{color:#486581;border:1px solid #e5e7eb;border-radius:50%;justify-content:center;align-items:center;width:38px;height:38px;display:flex}.profile-avatar{color:#fff;background:#2f80ed;border-radius:50%;justify-content:center;align-items:center;width:42px;height:42px;font-weight:700;display:flex}.profile-info{flex-direction:column;display:flex}.profile-info strong{font-size:14px}.profile-info span{color:#829ab1;margin-top:3px;font-size:11px}.content-area{padding:32px 35px}.success-message,.error-message{border-radius:8px;margin-bottom:20px;padding:13px 18px;font-size:14px}.success-message{color:#237a4b;background:#e8f8ef;border:1px solid #b8e5ca}.error-message{color:#c53030;background:#fff0f0;border:1px solid #ffd0d0}.welcome-section{justify-content:space-between;align-items:center;margin-bottom:30px;display:flex}.small-heading{letter-spacing:1.4px;color:#2f80ed;margin:0 0 7px;font-size:11px;font-weight:700}.welcome-section h1,.page-title h1{color:#172033;margin:0;font-size:29px}.welcome-section p:not(.small-heading){color:#829ab1;margin:8px 0 0;font-size:14px}.welcome-date{color:#486581;background:#fff;border:1px solid #e6eaf0;border-radius:8px;padding:13px 18px;font-size:13px}.stats-grid{grid-template-columns:repeat(4,1fr);gap:18px;margin-bottom:25px;display:grid}.stat-card{background:#fff;border:1px solid #e6eaf0;border-radius:12px;align-items:center;gap:15px;padding:22px;display:flex;box-shadow:0 3px 10px #102a4308}.stat-icon{border-radius:10px;justify-content:center;align-items:center;width:50px;height:50px;font-size:23px;display:flex}.patient-icon{color:#2f80ed;background:#eaf2ff}.doctor-icon{color:#27ae60;background:#edf9f2}.department-icon{color:#f2994a;background:#fff6e8}.appointment-icon{color:#8e44ad;background:#f3edff}.stat-card span{color:#829ab1;font-size:12px}.stat-card h2{margin:4px 0;font-size:25px}.stat-card small{color:#9aa9b8;font-size:10px}.dashboard-grid{grid-template-columns:2fr 1fr;gap:20px;display:grid}.panel{background:#fff;border:1px solid #e6eaf0;border-radius:12px;overflow:hidden;box-shadow:0 3px 10px #102a4308}.panel-header{justify-content:space-between;align-items:center;padding:20px 22px;display:flex}.panel-header h2{margin:0;font-size:17px}.panel-header p{color:#829ab1;margin:5px 0 0;font-size:12px}.view-button{color:#2f80ed;cursor:pointer;background:0 0;border:none;font-size:12px;font-weight:700}.table-container{overflow-x:auto}table{border-collapse:collapse;width:100%}thead{background:#f8fafc}th{text-align:left;text-transform:uppercase;letter-spacing:.5px;color:#829ab1;white-space:nowrap;padding:13px 18px;font-size:10px}td{white-space:nowrap;border-top:1px solid #edf0f4;padding:15px 18px;font-size:12px}tbody tr:hover{background:#fafcff}.empty-state{text-align:center;color:#829ab1;padding:35px}.status-badge{border-radius:20px;padding:5px 9px;font-size:9px;font-weight:700}.status-booked{color:#b7791f;background:#fff4db}.status-confirmed{color:#21864a;background:#e7f7ee}.status-progress{color:#2563a8;background:#e8f1ff}.status-completed{color:#5b4ab7;background:#e9e7ff}.status-cancelled{color:#c53030;background:#ffe9e9}.overview-list{padding:0 22px 20px}.overview-item{border-bottom:1px solid #edf0f4;align-items:center;gap:10px;padding:14px 0;font-size:12px;display:flex}.overview-item strong{margin-left:auto}.overview-dot{border-radius:50%;width:9px;height:9px}.booked-dot{background:#f2c94c}.confirmed-dot{background:#27ae60}.progress-dot{background:#2f80ed}.completed-dot{background:#8e7dff}.cancelled-dot{background:#eb5757}.page-section{width:100%}.page-title{justify-content:space-between;align-items:center;margin-bottom:25px;display:flex}.page-title p:not(.small-heading){color:#829ab1;margin-top:7px;font-size:13px}.page-count{color:#486581;background:#fff;border:1px solid #e6eaf0;border-radius:8px;padding:10px 16px;font-size:12px}.department-layout{grid-template-columns:330px 1fr;gap:20px;display:grid}.add-department-panel{height:fit-content;padding:25px}.add-department-panel h2{margin:0;font-size:18px}.add-department-panel p{color:#829ab1;margin-bottom:25px;font-size:12px}.add-department-panel form{flex-direction:column;display:flex}.add-department-panel label{margin-bottom:7px;font-size:12px;font-weight:600}.add-department-panel input{border:1px solid #d9e2ec;border-radius:7px;outline:none;margin-bottom:15px;padding:12px;font-size:13px}.add-department-panel input:focus{border-color:#2f80ed}.primary-button{color:#fff;cursor:pointer;background:#2f80ed;border:none;border-radius:7px;padding:12px;font-weight:600}.primary-button:hover{background:#246bbf}.primary-button:disabled{opacity:.6;cursor:not-allowed}.department-list{padding:0 22px 20px}.department-item{border-bottom:1px solid #edf0f4;align-items:center;gap:13px;padding:15px 0;display:flex}.department-icon{color:#2f80ed;background:#eaf2ff;border-radius:8px;justify-content:center;align-items:center;width:38px;height:38px;font-size:20px;display:flex}.department-item strong{font-size:13px;display:block}.department-item span{color:#829ab1;margin-top:3px;font-size:10px;display:block}.statistics-grid{grid-template-columns:repeat(3,1fr);gap:20px;display:grid}.analytics-card{background:#fff;border:1px solid #e6eaf0;border-radius:12px;padding:25px;box-shadow:0 3px 10px #102a4308}.analytics-card span{color:#829ab1;font-size:12px}.analytics-card h2{margin:10px 0 5px;font-size:32px}.analytics-card p{color:#9aa9b8;margin:0;font-size:11px}.loading-container{color:#829ab1;flex-direction:column;justify-content:center;align-items:center;min-height:400px;display:flex}.loader{border:3px solid #dbeafe;border-top-color:#2f80ed;border-radius:50%;width:35px;height:35px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (width<=1100px){.stats-grid{grid-template-columns:repeat(2,1fr)}.dashboard-grid,.department-layout{grid-template-columns:1fr}}@media (width<=750px){.admin-sidebar{width:70px}.brand{justify-content:center;padding:0}.brand>div:last-child,.menu-item:not(.logout-button){font-size:0}.menu-item{justify-content:center}.menu-item span{font-size:18px}.admin-main{width:calc(100% - 70px);margin-left:70px}.content-area{padding:20px}.top-header{padding:0 20px}.profile-info{display:none}.stats-grid{grid-template-columns:1fr}.welcome-section{flex-direction:column;align-items:flex-start;gap:15px}.statistics-grid{grid-template-columns:1fr}}
