@font-face{font-family:ThmanyahSans;src:url(../fonts/thmanyahsans-Regular.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:ThmanyahSans;src:url(../fonts/thmanyahsans-Light.woff2)format("woff2");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:ThmanyahSans;src:url(../fonts/thmanyahsans-Medium.woff2)format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:ThmanyahSans;src:url(../fonts/thmanyahsans-Bold.woff2)format("woff2");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:ThmanyahSans;src:url(../fonts/thmanyahsans-Black.woff2)format("woff2");font-weight:900;font-style:normal;font-display:swap}@font-face{font-family:ThmanyahSerifDisplay;src:url(../fonts/thmanyahserifdisplay-Regular.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:ThmanyahSerifDisplay;src:url(../fonts/thmanyahserifdisplay-Bold.woff2)format("woff2");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:ThmanyahSerifDisplay;src:url(../fonts/thmanyahserifdisplay-Black.woff2)format("woff2");font-weight:900;font-style:normal;font-display:swap}:root{--bg-primary:#f4fbfa;--bg-secondary:#fff;--text-primary:#113b37;--text-secondary:#347a74;--text-muted:#5a9991;--border-color:#d4e7e5;--shadow:0 4px 15px #0a2b4f14;--sidebar-bg:linear-gradient(135deg, #f9fefe 0%, #eefefe 100%);--sidebar-border:#d4e8e5;--card-bg:linear-gradient(135deg, #fafdfd 0%, #f3fcfb 100%);--primary:#247c73;--border:var(--border-color);--text:var(--text-primary);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:ThmanyahSans,Segoe UI,Tahoma,sans-serif;font-weight:400;line-height:1.45}:root[data-theme=dark]{--bg-primary:#0f1918;--bg-secondary:#1a2b2e;--text-primary:#e8f8f8;--text-secondary:#a8d6d8;--text-muted:#7aa8aa;--border-color:#2a4848;--shadow:0 4px 15px #0006;--sidebar-bg:linear-gradient(135deg, #1a2b2e 0%, #213c3e 100%);--sidebar-border:#2a4848;--card-bg:linear-gradient(135deg, #1a2b2e 0%, #1f3335 100%);--primary:#4fc3b8;--border:var(--border-color);--text:var(--text-primary)}body{color:var(--text-primary);background:var(--bg-primary);min-height:100vh;margin:0}#root{min-height:100vh}h1,h2,h3{margin:0 0 .45rem;font-family:ThmanyahSerifDisplay,Georgia,serif;line-height:1.2}p{margin:0}html,body{width:100%;overflow-x:hidden}*{box-sizing:border-box;max-width:100%}input,select,textarea{box-sizing:border-box;word-break:break-word;overflow-wrap:break-word;max-width:100%;overflow-x:hidden}.platform{flex-direction:column;gap:1rem;width:min(1320px,100% - 2rem);margin:1rem auto 2rem;display:flex;overflow-x:hidden}.heroBanner{color:#103836;background:linear-gradient(135deg,#f4fdfc 0%,#dffcfa 42%,#f8f3e8 100%);border:1px solid #c9eae8;border-radius:10px;justify-content:space-between;align-items:center;gap:1rem;padding:1.5rem;animation:.7s rise;display:flex}:root[data-theme=dark] .heroBanner{color:#e8f8f8;background:linear-gradient(135deg,#1a2b2e 0%,#213c3e 100%);border-color:#2a4848}:root[data-theme=dark] .headerLogo,:root[data-theme=dark] .loginLogo{filter:brightness(1.55)saturate(1.05)}.eyebrow{letter-spacing:.2em;text-transform:uppercase;color:#1e867d;margin:0;font-size:1.1rem;font-weight:600}.headerLogo{width:auto;height:38px;display:block}.headerLeft{flex-direction:column;gap:.4rem;display:flex}.welcomeText{color:#1e5452;margin:0;font-size:.95rem;font-weight:500}:root[data-theme=dark] .welcomeText{color:#a8d6d8}.subtitle{color:#1e5452;max-width:62ch;display:none}:root[data-theme=dark] .eyebrow{color:#75e7d7}:root[data-theme=dark] .subtitle{color:#a8d6d8}.controls{align-items:center;gap:.8rem;display:flex}.themeTgl{border:1px solid var(--border-color);cursor:pointer;background:0 0;border-radius:10px;padding:.55rem .7rem;font-size:1.2rem;transition:all .2s}.themeTgl:hover{background:var(--bg-secondary)}.langBtn{border:1px solid var(--border-color);cursor:pointer;color:var(--text-primary);background:0 0;border-radius:10px;padding:.55rem .7rem;font-size:.9rem;font-weight:600;transition:all .2s}.langBtn:hover{background:var(--bg-secondary);border-color:#7ecdc6}.controls select{border:1px solid var(--border-color);background:var(--bg-secondary);color:var(--text-primary);cursor:pointer;border-radius:10px;padding:.55rem .7rem;font-size:.9rem;transition:all .2s}.controls select:hover{border-color:#7ecdc6}.roleSwitch,.navTabs{flex-wrap:wrap;gap:.5rem;display:flex}.tab{color:#12524c;background:#eefefe;border:1px solid #7ecdc6;border-radius:10px;padding:.55rem .8rem;text-decoration:none}:root[data-theme=dark] .tab{color:#a8d6d8;background:#1f3e3f;border-color:#3a8e8f}.tab.active{color:#fff;background:#247c73;border-color:#247c73}:root[data-theme=dark] .tab.active{background:#3aaca8;border-color:#3aaca8}.tabButtons{flex-wrap:wrap;gap:.5rem;margin-top:1rem;display:flex}.tabBtn{color:#12524c;cursor:pointer;background:#eefefe;border:1px solid #7ecdc6;border-radius:10px;padding:.55rem .8rem;font-size:.95rem;transition:transform .12s,background .12s}.tabBtn:hover{background:#defcfb;transform:translateY(-1px)}.tabBtn.active{color:#fff;background:#247c73;border-color:#247c73}:root[data-theme=dark] .tabBtn{color:#a8d6d8;background:#1f3e3f;border-color:#3a8e8f}:root[data-theme=dark] .tabBtn:hover{background:#2a504f;border-color:#5a9f99}:root[data-theme=dark] .tabBtn.active{color:#fff;background:#3aaca8;border-color:#3aaca8}.crmLayout{grid-template-columns:280px 1fr;gap:1rem;height:auto;display:grid}.patientSidebar{background:var(--sidebar-bg);border:1px solid var(--sidebar-border);border-radius:8px;flex-direction:column;gap:1.2rem;height:fit-content;display:flex;position:sticky;top:0;padding:1.5rem!important}.patientHeader{border-bottom:2px solid var(--border-color);padding-bottom:1rem}.patientHeader h3{color:var(--text-primary);margin:0 0 .3rem;font-size:1.3rem}.patientPhone{color:var(--text-secondary);margin:0;font-size:.9rem}.sidebarNav{flex-direction:column;gap:.6rem;display:flex}.navItem{text-align:right;border:1px solid var(--border-color);background:var(--bg-secondary);color:var(--text-secondary);cursor:pointer;border-radius:10px;padding:.7rem .9rem;font-size:.95rem;font-weight:500;transition:all .2s}.navItem:hover{background:var(--bg-primary);border-color:#7ecdc6}.navItem.active{color:#fff;background:#247c73;border-color:#1e5452;box-shadow:0 4px 12px #247c7333}.sidebarStats{border-top:2px solid var(--border-color);grid-template-columns:1fr 1fr;gap:.8rem;padding-top:1rem;display:grid}.stat{text-align:center;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:10px;padding:.8rem}.stat .label{color:var(--text-secondary);margin-bottom:.4rem;font-size:.75rem;display:block}.stat .value{color:#1e867d;font-size:1.4rem;font-weight:700;display:block}.patientMain{flex-direction:column;gap:1rem;display:flex}.contentSection{background:var(--bg-secondary);border:1px solid var(--border-color);box-shadow:var(--shadow);border-radius:8px;padding:2rem}.contentSection h2{color:var(--text-primary);margin-top:0;margin-bottom:1.5rem;font-size:1.6rem}.formGroup{margin-bottom:1.2rem}.formGroup label{color:var(--text-secondary);margin-bottom:.5rem;font-weight:600;display:block}.formGroup select,.formGroup input{border:1px solid var(--border-color);background:var(--bg-primary);width:100%;color:var(--text-primary);border-radius:10px;padding:.75rem;font-size:.95rem}.formGroup select:focus,.formGroup input:focus{border-color:#247c73;outline:none;box-shadow:0 0 0 3px #247c731a}.bookingForm{grid-template-columns:1fr 1fr;align-items:end;gap:1rem;display:grid}.bookingForm .formGroup:last-child{grid-column:1/-1;margin-bottom:0}.btnPrimary,.btnDanger{cursor:pointer;border:none;border-radius:10px;padding:.75rem 1.5rem;font-size:.95rem;font-weight:600;transition:all .2s}.btnPrimary{color:#fff;background:#247c73}.btnPrimary:hover:not(:disabled){background:#1e5452;transform:translateY(-2px);box-shadow:0 6px 16px #247c734d}.btnPrimary:disabled{opacity:.5;cursor:not-allowed}.btnDanger{color:#fff;background:#e74c3c;padding:.5rem 1rem;font-size:.9rem}.btnDanger:hover{background:#c0392b}.appointmentsList,.notesList,.medicationsList{flex-direction:column;gap:1rem;display:flex}.emptyState{text-align:center;color:var(--text-muted);padding:2rem 1rem;font-style:italic}.appointmentCard,.noteCard{border:1px solid var(--border-color);background:var(--card-bg);border-radius:12px;padding:1.2rem;transition:all .2s}.appointmentCard:hover,.noteCard:hover{border-color:#7ecdc6;box-shadow:0 4px 12px #75e7d726}.appointmentHeader{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;margin-bottom:.8rem;padding-bottom:.8rem;display:flex}.appointmentHeader h4{color:var(--text-primary);margin:0;font-size:1.1rem}.badge{text-transform:uppercase;border-radius:10px;padding:.35rem .75rem;font-size:.8rem;font-weight:600}.badge.confirmed{color:#155724;background:#d4edda}.badge.waiting{color:#856404;background:#fff3cd}.badge.cancelled{color:#721c24;background:#f8d7da}.appointmentBody{margin-bottom:1rem}.appointmentBody p{color:var(--text-secondary);margin:.5rem 0;font-size:.95rem}.appointmentBody strong{color:var(--text-primary)}.noteCard h4{color:var(--text-primary);margin:0 0 .8rem;font-size:1.1rem}.noteCard p{color:var(--text-secondary);margin:0;line-height:1.6}.medicationItem{background:var(--card-bg);border:1px solid var(--border-color);border-radius:10px;align-items:center;gap:1rem;padding:1rem;transition:all .2s;display:flex}.medicationItem:hover{background:var(--card-bg);border-color:#7ecdc6}.medicationItem span{font-size:1.5rem}.medicationItem p{color:var(--text-secondary);margin:0;font-size:.95rem}.checkinForm{align-items:flex-end;gap:1rem;display:flex}.checkinInput{background:#fcffff;border:2px solid #c4e3e0;border-radius:10px;flex:1;padding:.75rem;font-size:1rem}.checkinInput:focus{border-color:#247c73;outline:none;box-shadow:0 0 0 3px #247c731a}@media (width<=1200px){.crmLayout{grid-template-columns:250px 1fr}.bookingForm{grid-template-columns:1fr}}@media (width<=768px){.crmLayout{grid-template-columns:1fr}.patientMain{order:2}.checkinForm{flex-direction:column}}.roleSwitch button,button,select,input,textarea{font:inherit}button{color:#12524c;cursor:pointer;text-overflow:ellipsis;white-space:nowrap;box-sizing:border-box;word-break:break-word;background:#eefefe;border:1px solid #7ecdc6;border-radius:10px;max-width:100%;padding:.55rem .8rem;transition:transform .12s,background .12s;overflow:hidden}button:hover{background:#defcfb;transform:translateY(-1px)}button.active,.doctorCard.selected{color:#fff;background:#247c73;border-color:#247c73}.layout{grid-template-columns:320px 1fr;gap:1rem;display:grid}.card{box-sizing:border-box;word-break:break-word;overflow-wrap:break-word;background:#fff;border:1px solid #d4e7e5;border-radius:9px;max-width:100%;padding:1rem;overflow:hidden;box-shadow:0 8px 25px #0a4f480f}:root[data-theme=dark] .card{background:var(--bg-secondary);border-color:var(--border-color);box-shadow:0 8px 25px #0000004d}.sidePanel ul{padding-left:1rem}.logPanel{border-top:1px dashed #c7dcda;max-height:260px;margin-top:.8rem;padding-top:.8rem;overflow:auto}.mainPanel{flex-direction:column;gap:1rem;display:flex}.row{flex-direction:column;margin-bottom:.7rem;display:flex}.gridTwo{grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem;display:grid}.doctorCard{text-align:left;flex-direction:column;align-items:flex-start;gap:.4rem;display:flex}input,select,textarea{box-sizing:border-box;background:#fcffff;border:1px solid #c4e3e0;border-radius:10px;width:100%;padding:.65rem}:root[data-theme=dark] input,:root[data-theme=dark] select,:root[data-theme=dark] textarea{border-color:var(--border-color);background:var(--bg-primary);color:var(--text-primary)}textarea{resize:vertical;min-height:96px}.bookingControls,.sectionHeader,.actions,.kpis{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.list{flex-direction:column;gap:.5rem;margin-top:.8rem;display:flex}.list.compact{margin-top:.4rem}.listItem{border:1px solid #e0efee;border-radius:12px;justify-content:space-between;align-items:center;gap:.8rem;padding:.7rem;display:flex}:root[data-theme=dark] .listItem{border-color:var(--border-color);background:var(--bg-primary)}.listItem.vertical{flex-direction:column;align-items:flex-start}.queueHead{flex-wrap:wrap;align-items:center;gap:.8rem;display:flex}.hint{color:#347a74}label{gap:.5rem;margin-bottom:.5rem;display:flex}label input{width:auto}@keyframes rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (width<=980px){.layout,.gridTwo{grid-template-columns:1fr}.heroBanner{flex-direction:column;align-items:flex-start}.controls{width:100%;display:none}}.loginContainer{justify-content:center;align-items:center;min-height:80vh;padding:2rem 1rem;display:flex}.loginCard{background:var(--bg-secondary);border:1px solid var(--border-color);width:100%;max-width:420px;box-shadow:var(--shadow);border-radius:10px;padding:3rem 2rem;animation:.6s rise}.loginBrand{text-align:center;margin-bottom:2.5rem}.loginLogo{width:auto;height:56px;margin:0 auto .75rem;display:block}.loginBrand p{color:var(--text-secondary);margin:0;font-size:.95rem}.loginForm{flex-direction:column;gap:1.5rem;margin-bottom:2rem;display:flex}.loginSelect,.loginInput{border:1px solid var(--border-color);background:var(--bg-primary);width:100%;color:var(--text-primary);border-radius:12px;padding:.9rem;font-family:inherit;font-size:.95rem;transition:all .2s}.loginSelect:hover,.loginInput:hover{border-color:#7ecdc6}.loginSelect:focus,.loginInput:focus{border-color:#247c73;outline:none;box-shadow:0 0 0 3px #247c731a}.loginError{color:#721c24;text-align:center;background:#f8d7da;border:1px solid #f5c6cb;border-radius:10px;padding:.8rem;font-size:.9rem}.loginBtn{color:#fff;cursor:pointer;background:#247c73;border:none;border-radius:12px;padding:1rem;font-size:1rem;font-weight:600;transition:all .2s}.loginBtn:hover:not(:disabled){background:#1e5452;transform:translateY(-2px);box-shadow:0 6px 20px #247c734d}.loginBtn:disabled{opacity:.6;cursor:not-allowed}.loginDemo{background:var(--bg-primary);border:1px dashed var(--border-color);border-radius:12px;padding:1.5rem}.demoTitle{color:var(--text-secondary);text-align:center;margin:0 0 1rem;font-size:.85rem;font-weight:600}.demoCredentials{flex-direction:column;gap:.8rem;display:flex}.demoCred{background:var(--bg-secondary);border-radius:8px;justify-content:space-between;align-items:center;padding:.6rem;font-size:.85rem;display:flex}.demoCred strong{color:var(--text-primary)}.demoCred code{color:var(--text-muted);font-family:Courier New,monospace;font-size:.8rem}.userInfo{border:1px solid var(--border-color);background:#ffffff1a;border-radius:12px;align-items:center;gap:.8rem;padding:.5rem .8rem;display:flex}.userName{color:var(--text-primary);font-size:.95rem;font-weight:600}.logoutBtn{color:#fff;cursor:pointer;white-space:nowrap;background:#e74c3c;border:none;border-radius:10px;padding:.55rem .9rem;font-size:.85rem;font-weight:600;transition:all .2s}.logoutBtn:hover{background:#c0392b;transform:translateY(-2px)}:root[data-theme=dark] p,:root[data-theme=dark] h2,:root[data-theme=dark] h3,:root[data-theme=dark] h4,:root[data-theme=dark] strong{color:var(--text-primary)}:root[data-theme=dark] .hint{color:var(--text-secondary)}:root[data-theme=dark] label{color:var(--text-primary)}.authContainer{justify-content:center;align-items:center;min-height:80vh;padding:2rem 1rem;display:flex}.authCard{background:var(--bg-secondary);border:1px solid var(--border-color);width:100%;max-width:420px;box-shadow:var(--shadow);border-radius:10px;padding:3rem 2rem;animation:.6s rise}.authTitle{text-align:center;color:var(--text-primary);margin:0 0 2rem;font-size:1.8rem}.authForm{flex-direction:column;gap:1.5rem;margin-bottom:2rem;display:flex}.formGroup{flex-direction:column;gap:.5rem;display:flex}.formGroup label{color:var(--text-primary);font-size:.95rem;font-weight:600}.formGroup input,.formGroup select{border:1px solid var(--border-color);background:var(--bg-primary);color:var(--text-primary);border-radius:12px;padding:.9rem;font-family:inherit;font-size:.95rem;transition:all .2s}.formGroup input:hover,.formGroup select:hover{border-color:#7ecdc6}.formGroup input:focus,.formGroup select:focus{border-color:#247c73;outline:none;box-shadow:0 0 0 3px #247c731a}.errorBox{color:#721c24;text-align:center;background:#f8d7da;border:1px solid #f5c6cb;border-radius:10px;padding:.8rem;font-size:.9rem}:root[data-theme=dark] .errorBox{color:#f8d7da;background:#5a2d31;border-color:#6d3d42}.logoutBtn,.sidebarControl.logoutBtn{min-height:auto!important;padding:.6rem .8rem!important;font-size:.85rem!important}.logoutBtn span:last-child{display:none}.logoutBtn span:first-child{display:inline}@media (width>=769px){.logoutBtn span:last-child{display:inline}}:root[data-theme=dark] .logoutBtn{color:#fff!important;background:#c23030!important}.authSwitch{text-align:center;color:var(--text-secondary);margin:0;font-size:.95rem}.linkBtn{color:#247c73;cursor:pointer;background:0 0;border:none;padding:0;font-size:.95rem;font-weight:600;text-decoration:underline;transition:color .2s;display:inline}:root[data-theme=dark] .linkBtn{color:#7ecdc6}.linkBtn:hover{color:#1e5452}:root[data-theme=dark] .linkBtn:hover{color:#9fd9d9}.doctorSidebar,.adminSidebar{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;flex-direction:column;gap:1.5rem;min-width:250px;height:fit-content;padding:2rem 1.5rem;display:flex}.sidebarHeader{border-bottom:2px solid var(--border-color);padding-bottom:1rem}.sidebarHeader h3{color:var(--text-primary);margin:0 0 .3rem;font-size:1.2rem}.sidebarSubtitle{color:var(--text-secondary);margin:0;font-size:.9rem}.sidebarSection{flex-direction:column;gap:.5rem;display:flex}.sidebarSection label{color:var(--text-primary);font-size:.9rem;font-weight:600}.sidebarSection select,.sidebarSection input{border:1px solid var(--border-color);background:var(--bg-primary);color:var(--text-primary);border-radius:8px;padding:.7rem;font-size:.9rem}.doctorMain,.adminMain{box-sizing:border-box;flex-direction:column;gap:1.5rem;width:100%;max-width:100%;display:flex;overflow-x:hidden}.doctorMain .card,.adminMain .card{background:var(--bg-secondary);border:1px solid var(--border-color);box-shadow:var(--shadow);box-sizing:border-box;border-radius:12px;width:100%;max-width:100%;padding:2rem;overflow:hidden}.doctorMain h2,.adminMain h2{color:var(--text-primary);margin:0 0 1.5rem;font-size:1.5rem}.doctorMain h3,.adminMain h3{color:var(--text-primary);margin:1.5rem 0 .8rem;font-size:1.1rem}.kpis{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:1rem;margin-bottom:2rem;display:grid}.kpiItem{background:var(--bg-primary);border:1px solid var(--border-color);text-align:center;border-radius:10px;flex-direction:column;align-items:center;padding:1rem;display:flex}.kpiItem .label{color:var(--text-secondary);margin-bottom:.5rem;font-size:.85rem}.kpiItem .value{color:var(--text-primary);font-size:1.8rem;font-weight:700}.templatesList{flex-direction:column;gap:.8rem;display:flex}.templateBtn{background:var(--bg-primary);border:1px solid var(--border-color);color:var(--text-primary);cursor:pointer;text-align:left;border-radius:8px;padding:.8rem 1rem;font-weight:600;transition:all .2s}.templateBtn:hover{color:#fff;background:#247c73;border-color:#247c73}:root[data-theme=dark] .templateBtn:hover{background:#3aaca8}.formGrid{box-sizing:border-box;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;width:100%;max-width:100%;margin-bottom:1rem;display:grid;overflow-x:hidden}.formGrid input,.formGrid select{border:1px solid var(--border-color);background:var(--bg-primary);color:var(--text-primary);box-sizing:border-box;word-break:break-word;border-radius:8px;max-width:100%;padding:.8rem;font-size:.95rem;overflow-x:hidden}.emptyState{text-align:center;color:var(--text-secondary);padding:2rem;font-size:.95rem}.status{border-radius:4px;padding:.2rem .6rem;font-size:.85rem;font-weight:600}.status.active{color:#155724;background:#d4edda}:root[data-theme=dark] .status.active{color:#a3d9a5;background:#1e4620}.status.suspended{color:#721c24;background:#f8d7da}:root[data-theme=dark] .status.suspended{color:#f8d7da;background:#5a2d31}.btnDanger{color:#fff;cursor:pointer;background:#e74c3c;border:none;border-radius:8px;width:100%;margin-top:1rem;padding:.8rem 1.2rem;font-weight:600;transition:all .2s}.btnDanger:hover{background:#c0392b;transform:translateY(-2px);box-shadow:0 4px 12px #e74c3c4d}.btnSecondary{background:var(--bg-primary);color:var(--text-primary);border:1px solid var(--border-color);cursor:pointer;border-radius:8px;padding:.6rem 1rem;font-weight:600;transition:all .2s}.btnSecondary:hover{color:#247c73;border-color:#247c73}:root[data-theme=dark] .btnSecondary:hover{color:#7ecdc6;border-color:#7ecdc6}.confirmOverlay{z-index:1000;background:#0f19188c;justify-content:center;align-items:center;padding:1rem;animation:.15s confirmFadeIn;display:flex;position:fixed;inset:0}@keyframes confirmFadeIn{0%{opacity:0}to{opacity:1}}.confirmModal{text-align:center;width:min(420px,100%);padding:1.5rem;animation:.18s confirmPopIn}@keyframes confirmPopIn{0%{opacity:0;transform:translateY(8px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.confirmMessage{color:var(--text-primary);margin:0 0 1.25rem;font-size:1rem;line-height:1.6}.confirmActions{justify-content:center;gap:.75rem;display:flex}.confirmActions button{flex:1}@media (width<=768px){.crmLayout{flex-direction:column;gap:1rem;display:flex}.patientSidebar,.doctorSidebar,.adminSidebar{min-width:unset}.patientMain,.doctorMain,.adminMain{width:100%}.heroBanner{flex-direction:column;align-items:flex-start;padding:1rem}.eyebrow{font-size:.7rem}.subtitle{font-size:1rem}.controls{flex-wrap:wrap;gap:.5rem;display:none}.controls button{padding:.5rem .8rem;font-size:.85rem}.sidebarNav{grid-template-columns:repeat(2,1fr);gap:.5rem;display:grid}.navItem{padding:.6rem .5rem;font-size:.9rem}.formGrid{grid-template-columns:1fr}.kpis{grid-template-columns:repeat(2,1fr);gap:.8rem}.kpiItem{padding:.8rem .5rem}.kpiItem .label{font-size:.8rem}.kpiItem .value{font-size:1.4rem}.contentSection h2,.contentSection h3{font-size:1.1rem}.appointmentCard{padding:.8rem}.listItem{flex-direction:column;gap:.5rem;padding:.8rem}.listItem .actions{flex-direction:column;gap:.4rem;display:flex}.listItem button{padding:.5rem;font-size:.85rem}.btnPrimary,.btnDanger,.btnSecondary{padding:.6rem .8rem;font-size:.9rem}.templatesList{gap:.6rem}.templateBtn{padding:.6rem .8rem;font-size:.9rem}input,select,textarea{font-size:16px!important}.sidebarHeader h3{font-size:1rem}.sidebarSubtitle{font-size:.85rem}.sidebarStats{gap:.8rem}.stat{padding:.6rem}.stat .label{font-size:.8rem}.stat .value{font-size:1.2rem}}@media (width<=480px){.platform{width:calc(100% - 1rem);margin:.5rem auto 1rem}.heroBanner{padding:.8rem}.sidebarNav,.kpis{grid-template-columns:1fr}.navItem{padding:.5rem;font-size:.85rem}.controls{flex-direction:column;display:none}.controls button{width:100%;padding:.6rem}.formGrid{gap:.8rem}.contentSection{padding:.8rem}.bookingForm,.authForm{gap:.8rem}.formGroup{gap:.4rem}.formGroup label,.formGroup input,.formGroup select,.formGroup textarea{font-size:.95rem}.btnPrimary,.btnDanger,.btnSecondary{width:100%}.appointmentCard,.listItem{padding:.6rem}.sidebarStats{gap:.6rem}.stat{padding:.5rem}}@media (height<=500px) and (orientation:landscape){.sidebarNav{gap:.3rem}.navItem{padding:.4rem;font-size:.8rem}.kpis{gap:.6rem}.kpiItem{padding:.6rem}}.timeDisplayField{align-items:center;gap:.5rem;display:flex}.timeDisplayField select{flex:1}.selectedTimeDisplay{background:var(--bg-secondary);border:1px solid var(--border-color);color:var(--text-primary);white-space:nowrap;border-radius:6px;min-width:fit-content;padding:.6rem 1rem;font-weight:600}:root[data-theme=dark] .selectedTimeDisplay{background:var(--bg-secondary);border-color:var(--border-color);color:#58f1e5}.hamburgerMenu{background:var(--primary);cursor:pointer;color:#fff;border:none;border-radius:8px;justify-content:center;align-items:center;width:3rem;height:3rem;padding:.75rem;font-size:1.8rem;transition:all .2s;display:none;box-shadow:0 2px 8px #0000001a}.hamburgerMenu:hover{background:#097165;transform:scale(1.05);box-shadow:0 4px 12px #00000026}:root[data-theme=dark] .hamburgerMenu{background:#4fc3b8}:root[data-theme=dark] .hamburgerMenu:hover{background:#3aaca8}.sidebarFooter{border-top:2px solid var(--border-color);background:var(--bg-secondary);border-radius:8px;flex-direction:column;gap:.75rem;margin-top:auto;padding:1rem;display:none}.sidebarControl{border:1px solid var(--border-color);background:var(--bg-primary);color:var(--text);cursor:pointer;border-radius:6px;justify-content:center;align-items:center;gap:.5rem;width:100%;padding:.75rem 1rem;font-size:.95rem;font-weight:500;transition:all .2s;display:flex}.sidebarControl:hover{background:var(--primary);color:#fff;border-color:var(--primary);transform:translateY(-2px);box-shadow:0 2px 8px #0000001a}.sidebarControl.logoutBtn{color:#fff;background:#ee5a52;border-color:#ff6b6b;justify-content:center}.sidebarControl.logoutBtn:hover{background:#dd4542;border-color:#ee5a52}@media (width<=768px){.sidebarControl.logoutBtn{min-width:48px;min-height:48px;padding:.6rem!important;font-size:1.2rem!important}.sidebarControl.logoutBtn span:nth-child(2){display:none}}.themeTgl,.langBtn{font-size:1rem}@media (width<=768px){.hamburgerMenu{display:flex!important}.sidebarHeader{padding:.75rem 1rem!important;display:flex!important}.sidebarFooter{display:flex!important}.patientSidebar,.doctorSidebar,.adminSidebar{z-index:1001!important;background:var(--bg-secondary)!important;border:none!important;border-radius:0!important;flex-direction:column!important;width:280px!important;max-width:85vw!important;height:100vh!important;margin:0!important;padding:0!important;transition:transform .3s cubic-bezier(.4,0,.2,1)!important;display:none!important;position:fixed!important;top:0!important;bottom:0!important;overflow-y:auto!important;box-shadow:0 8px 32px #0003!important}[dir=rtl] .patientSidebar,[dir=rtl] .doctorSidebar,[dir=rtl] .adminSidebar{left:auto!important;right:0!important;transform:translate(100%)!important}[dir=rtl] .patientSidebar.mobileOpen,[dir=rtl] .doctorSidebar.mobileOpen,[dir=rtl] .adminSidebar.mobileOpen{display:flex!important;transform:translate(0)!important}[dir=ltr] .patientSidebar,[dir=ltr] .doctorSidebar,[dir=ltr] .adminSidebar{left:0!important;right:auto!important;transform:translate(-100%)!important}[dir=ltr] .patientSidebar.mobileOpen,[dir=ltr] .doctorSidebar.mobileOpen,[dir=ltr] .adminSidebar.mobileOpen{display:flex!important;transform:translate(0)!important}.patientSidebar.mobileOpen,.doctorSidebar.mobileOpen,.adminSidebar.mobileOpen{border:none!important;border-radius:0!important;padding:0!important;overflow-y:auto!important}.patientSidebar,.doctorSidebar,.adminSidebar{z-index:1001!important;background:var(--bg-secondary)!important;border:none!important;border-radius:0!important;flex-direction:column!important;width:280px!important;max-width:85vw!important;height:100vh!important;margin:0!important;padding:0!important;transition:transform .3s ease-in-out!important;display:none!important;position:fixed!important;inset:0 auto 0 0!important;overflow-y:auto!important;transform:translate(-100%)!important;box-shadow:-8px 0 32px #0003!important}.patientSidebar.mobileOpen,.doctorSidebar.mobileOpen,.adminSidebar.mobileOpen{display:flex!important;transform:translate(0)!important}}.daysContainer::-webkit-scrollbar{display:none}.daysContainer{-ms-overflow-style:none;scrollbar-width:none}.sideDrawerBackdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:999;opacity:0;pointer-events:none;background:#00000080;transition:opacity .3s;position:fixed;inset:0}.sideDrawerBackdrop.active{opacity:1;pointer-events:all}.mobileHeader{display:none}@media (width<=768px){.mobileHeader{background:var(--bg-secondary);border-bottom:1px solid var(--border-color);z-index:100;justify-content:space-between;align-items:center;gap:.75rem;min-height:56px;padding:.75rem 1rem;display:flex;position:sticky;top:0}.mobileHeaderLeft{flex:1;align-items:center;gap:.75rem;display:flex}.mobileHeaderLogo{font-size:1.5rem}.mobileHeaderUser{color:var(--text-primary);font-size:.95rem;font-weight:600}.mobileHeaderMenu{cursor:pointer;color:var(--text-primary);background:0 0;border:none;justify-content:center;align-items:center;padding:.5rem .25rem;font-size:1.5rem;display:flex}}.sideDrawerContainer{background:var(--bg-secondary);z-index:1001;border:none;flex-direction:column;width:280px;max-width:85vw;padding-top:0;transition:transform .3s cubic-bezier(.4,0,.2,1);display:flex;position:fixed;top:0;bottom:0;overflow-y:auto;box-shadow:0 8px 32px #0003}[dir=rtl] .sideDrawerContainer{right:0;transform:translate(100%)}[dir=rtl] .sideDrawerContainer.open{transform:translate(0)}[dir=ltr] .sideDrawerContainer{left:0;transform:translate(-100%)}[dir=ltr] .sideDrawerContainer.open{transform:translate(0)}.drawerHeader{border-bottom:1px solid var(--border-color);background:var(--bg-secondary);flex-shrink:0;justify-content:space-between;align-items:center;padding:1.2rem 1rem;display:flex}.drawerLogo{color:var(--text-primary);letter-spacing:-.5px;font-size:1.3rem;font-weight:700}.drawerCloseBtn{cursor:pointer;color:var(--text-primary);background:0 0;border:none;justify-content:center;align-items:center;padding:.5rem;font-size:1.5rem;transition:opacity .2s;display:none!important}.drawerCloseBtn:hover{opacity:.7}.drawerNav{flex-direction:column;flex:1;gap:.5rem;padding:1rem;display:flex}.drawerNavItem{background:var(--bg-primary);color:var(--text-primary);cursor:pointer;text-align:left;border:1px solid #0000;border-radius:8px;align-items:center;gap:.75rem;width:100%;padding:.8rem 1rem;font-size:.95rem;font-weight:500;transition:all .2s;display:flex}.drawerNavItem:hover{background:var(--primary);color:#fff;border-color:var(--primary);transform:translate(4px)}[dir=rtl] .drawerNavItem:hover{transform:translate(-4px)}.drawerNavItem.active{background:var(--primary);color:#fff;border-color:var(--primary);font-weight:600}.drawerSection{border-top:1px solid var(--border-color);padding:1rem}.drawerSectionTitle{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:.8rem;padding:0 .5rem;font-size:.8rem;font-weight:700}.drawerControls{border-top:1px solid var(--border-color);flex-direction:column;flex-shrink:0;gap:.6rem;margin-top:auto;padding:1rem;display:flex}.drawerControl{border:1px solid var(--border-color);background:var(--bg-primary);color:var(--text-primary);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;gap:.6rem;width:100%;padding:.7rem 1rem;font-size:.9rem;font-weight:500;transition:all .2s;display:flex}.drawerControl:hover{background:var(--primary);color:#fff;border-color:var(--primary);transform:translateY(-2px)}.drawerControl.logout{color:#fff;background:#ee5a52;border-color:#ff6b6b}.drawerControl.logout:hover{background:#dd4542;border-color:#ee5a52}.mobileHeader{background:var(--bg-secondary);border-bottom:1px solid var(--border-color);z-index:100;justify-content:space-between;align-items:center;padding:.8rem 1rem;display:none;position:sticky;top:0}.mobileHeaderLeft{align-items:center;gap:.5rem;display:flex}.mobileHeaderLogo{color:var(--text-primary);font-size:1.3rem;font-weight:700}.mobileHeaderUser{color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;max-width:150px;font-size:.9rem;overflow:hidden}.mobileHeaderMenu{background:var(--primary);cursor:pointer;color:#fff;border:none;border-radius:6px;justify-content:center;align-items:center;width:2.5rem;height:2.5rem;padding:.5rem .6rem;font-size:1.6rem;transition:all .2s;display:flex}.mobileHeaderMenu:hover{transform:scale(1.05);box-shadow:0 2px 8px #00000026}@media (width<=768px){.mobileHeader{display:flex}.patientSidebar,.doctorSidebar,.adminSidebar{z-index:1001;border:1px solid var(--border-color);border-radius:0;flex-direction:column;gap:0;width:280px;max-width:85vw;max-height:100vh;padding:0;transition:transform .3s cubic-bezier(.4,0,.2,1);display:flex;position:fixed;inset:0;overflow-y:auto;box-shadow:0 8px 32px #0003}[dir=rtl] .patientSidebar,[dir=rtl] .doctorSidebar,[dir=rtl] .adminSidebar{left:auto;right:0;transform:translate(100%)}[dir=rtl] .patientSidebar.mobileOpen,[dir=rtl] .doctorSidebar.mobileOpen,[dir=rtl] .adminSidebar.mobileOpen{transform:translate(0)}[dir=ltr] .patientSidebar,[dir=ltr] .doctorSidebar,[dir=ltr] .adminSidebar{left:0;transform:translate(-100%)}[dir=ltr] .patientSidebar.mobileOpen,[dir=ltr] .doctorSidebar.mobileOpen,[dir=ltr] .adminSidebar.mobileOpen{transform:translate(0)}.sidebarHeader{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:1rem;display:flex}.sidebarHeader h3{margin:0;font-size:1rem}.sidebarSubtitle{display:none}.hamburgerMenu{display:flex}.sidebarNav{flex:1;grid-template-columns:1fr;gap:.5rem;padding:.5rem;overflow-y:auto}.navItem{background:var(--bg-primary);border:1px solid #0000;padding:.8rem 1rem;font-size:.95rem;transition:all .2s}.navItem:hover,.navItem.active{background:var(--primary);color:#fff;border-color:var(--primary)}.sidebarFooter{border-top:1px solid var(--border-color);flex-shrink:0;gap:.6rem;padding:1rem;display:flex}.sidebarControl{flex:1;padding:.7rem .5rem;font-size:.85rem}.drawerCloseBtn{display:flex!important}}
