@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@600;700;800&display=swap";:root{color:#17212b;font-synthesis:none;text-rendering:optimizelegibility;background:#f5f7f9;font-family:DM Sans,system-ui,sans-serif}*{box-sizing:border-box}body{background:#f5f7f9;margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}.app-shell{min-height:100vh;display:flex}.sidebar{color:#dcebe8;z-index:20;background:#102b2a;flex-direction:column;width:255px;padding:26px 16px;display:flex;position:fixed;inset:0 auto 0 0}.brand{align-items:center;gap:12px;padding:4px 10px 30px;display:flex}.brand-mark{color:#0c5750;background:#dff8ef;border-radius:12px;place-items:center;width:40px;height:40px;font-size:23px;font-weight:800;display:grid}.brand strong{color:#fff;font-family:Manrope;font-size:16px;display:block}.brand span{color:#91b1ac;margin-top:2px;font-size:11px;display:block}.nav-label,.section-kicker,.eyebrow{letter-spacing:.14em;color:#71928d;font-size:10px;font-weight:800}.nav-label{padding:0 12px 10px}.nav-item{color:#9db8b4;text-align:left;background:0 0;border:0;border-radius:10px;align-items:center;gap:12px;width:100%;margin:2px 0;padding:11px 12px;font-weight:600;display:flex}.nav-item span{text-align:center;width:20px;font-size:17px}.nav-item:hover{color:#fff;background:#173b39}.sidebar-bottom{flex-shrink:0;margin-top:auto}.nav-scroll{scrollbar-width:thin;flex:1;min-height:0;overflow:hidden auto}.nav-scroll::-webkit-scrollbar{width:5px}.nav-scroll::-webkit-scrollbar-thumb{background:#29534f;border-radius:10px}.help-card{background:#173c3a;border:1px solid #29534f;border-radius:14px;margin:0 4px 16px;padding:14px}.help-card b{color:#fff;font-size:12px;display:block}.help-card span{color:#91b1ac;margin:6px 0 10px;font-size:11px;line-height:1.45;display:block}.help-card button{color:#bdeee1;background:0 0;border:0;padding:0;font-size:11px;font-weight:700}.user-mini{border-top:1px solid #294b48;align-items:center;gap:9px;padding:15px 4px 0;display:flex}.avatar{color:#24534d;background:#e4eee9;border-radius:50%;place-items:center;width:34px;height:34px;font-size:11px;font-weight:800;display:grid}.user-mini b{color:#fff;font-size:11px;display:block}.user-mini span{color:#7f9e99;font-size:9px;display:block}.user-mini>span{color:#9db8b4;margin-left:auto;font-size:18px}.topbar{border-bottom:1px solid #e1e6e6;justify-content:space-between;align-items:center;height:96px;display:flex}.topbar h1{color:#142728;margin:4px 0 0;font-family:Manrope;font-size:24px}.top-actions{align-items:center;gap:14px;display:flex}.status{color:#48625e;background:#fff;border:1px solid #e1e7e5;border-radius:20px;padding:8px 12px;font-size:11px}.status span,.online-dot{background:#36a87c;border-radius:50%;width:7px;height:7px;margin-right:6px;display:inline-block}.icon-btn{color:#4d6662;background:#fff;border:1px solid #dde5e3;border-radius:10px;width:36px;height:36px}.profile{color:#fff;cursor:pointer;background:#173c3a;border:0;border-radius:50%;place-items:center;width:36px;height:36px;font-size:11px;font-weight:800;display:grid}.menu-toggle{color:#173b39;background:#fff;border:1px solid #dde5e3;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;display:none}.sidebar-close{color:#dcebe8;background:0 0;border:0;border-radius:8px;justify-content:center;align-items:center;width:30px;height:30px;display:none}.sidebar-close:hover{background:#173b39}.sidebar-top-row{justify-content:space-between;align-items:center;display:flex}.topbar-title-row{align-items:center;gap:12px;display:flex}.mobile-nav-overlay{display:none}.profile-menu-wrap{position:relative}.profile-menu{z-index:60;background:#fff;border:1px solid #e1e8e5;border-radius:13px;width:210px;padding:8px;position:absolute;top:44px;right:0;box-shadow:0 18px 40px #0d222125}.profile-menu-header{border-bottom:1px solid #edf1ef;margin-bottom:6px;padding:8px 10px 10px}.profile-menu-name{color:#17212b;white-space:nowrap;text-overflow:ellipsis;font-size:12px;font-weight:800;overflow:hidden}.profile-menu-role{color:#7b8986;letter-spacing:.06em;text-transform:uppercase;margin-top:2px;font-size:9px}.profile-menu-item{color:#3d514d;text-align:left;background:0 0;border:0;border-radius:8px;align-items:center;gap:9px;width:100%;padding:9px 10px;font-size:12px;font-weight:700;display:flex}.profile-menu-item:hover{background:#f2f6f5}.profile-menu-item.danger{color:#a54f4a}.profile-menu-item.danger:hover{background:#fff0ef}.toast,.alert{z-index:50;border-radius:10px;padding:12px 17px;font-size:13px;position:fixed;top:78px;right:30px;box-shadow:0 12px 35px #102b2a25}.toast{color:#fff;background:#103a35}.alert{color:#7a5515;background:#fff5df;border:1px solid #eed69f;left:290px;right:30px}.loading{color:#71807d;background:#fff;border:1px solid #e3e8e7;border-radius:14px;margin-top:28px;padding:22px}.hero{color:#fff;background:#173b39;border-radius:22px;justify-content:space-between;min-height:285px;margin-top:28px;padding:34px 40px;display:flex;position:relative;overflow:hidden}.hero:after{content:"";border:1px solid #ffffff15;border-radius:50%;width:360px;height:360px;position:absolute;top:-130px;right:80px}.hero-tag{letter-spacing:.15em;color:#8ec6bb;font-size:10px;font-weight:800}.hero h2{margin:12px 0;font-family:Manrope;font-size:35px;line-height:1.08}.hero h2 em{color:#a8e6d8;font-style:normal}.hero p{color:#aac3be;max-width:560px;margin:0;line-height:1.55}.hero-actions{align-items:center;gap:15px;margin-top:23px;display:flex}.primary{color:#0b5c54;background:#d9f7ed;border:0;border-radius:10px;padding:11px 17px;font-weight:800;box-shadow:0 5px 15px #0001}.primary:hover{background:#c4eee2}.hero-note{color:#86a9a3;font-size:11px}.hero-art{justify-content:center;align-items:center;width:310px;display:flex;position:relative}.pulse{opacity:.75;background:radial-gradient(circle,#a9e6d9 0 9%,#2d655f 10% 32%,#1d4b48 33% 65%,#0000 66%);border-radius:50%;width:175px;height:175px}.doctor-card{color:#173b39;background:#fff;border-radius:13px;align-items:center;gap:9px;padding:12px;display:flex;position:absolute;bottom:12px;right:0;box-shadow:0 15px 30px #0003}.doctor-photo{background:#e3f7f0;border-radius:10px;place-items:center;width:35px;height:35px;display:grid}.doctor-card b,.doctor-card span{font-size:11px;display:block}.doctor-card span{color:#718682;margin-top:2px;font-size:9px}.float-stat{color:#123e39;background:#e7faf3;border-radius:12px;padding:11px 14px;position:absolute;top:45px;left:5px;box-shadow:0 12px 25px #0002}.float-stat b,.float-stat span{display:block}.float-stat b{font-size:22px}.float-stat span{color:#67827d;font-size:9px}.stat-grid{grid-template-columns:repeat(4,1fr);gap:14px;margin:17px 0;display:grid}.stat-card{background:#fff;border:1px solid #e4e9e8;border-radius:15px;align-items:flex-start;gap:12px;padding:17px;display:flex;position:relative}.stat-icon{color:#1d665e;background:#eef7f4;border-radius:11px;place-items:center;width:38px;height:38px;font-size:18px;display:grid}.stat-card span,.stat-card strong,.stat-card small{display:block}.stat-card span{color:#74827f;font-size:10px}.stat-card strong{margin:3px 0;font-family:Manrope;font-size:24px}.stat-card small{color:#97a19f;font-size:9px}.trend{color:#32826e;background:#e8f7f1;border-radius:10px;margin-left:auto;padding:5px 7px;font-size:9px;font-weight:800}.dashboard-grid{grid-template-columns:2fr 1fr;gap:17px;display:grid}.panel,.table-panel{background:#fff;border:1px solid #e2e8e6;border-radius:15px;overflow:hidden}.panel-head{justify-content:space-between;align-items:center;padding:18px 20px;display:flex}.panel-head h3{margin:4px 0 0;font-family:Manrope;font-size:16px}.count-pill{color:#687976;background:#f2f5f4;border-radius:8px;padding:7px 9px;font-size:10px}.table-wrap,.table-panel{overflow:auto}table{border-collapse:collapse;width:100%;font-size:11px}th{color:#7b8986;text-align:left;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;background:#f7f9f8;border-bottom:1px solid #e7ecea;padding:11px 14px;font-size:9px;font-weight:800}td{color:#50605d;vertical-align:middle;border-bottom:1px solid #edf0ef;padding:13px 14px}.status-badge{text-transform:capitalize;color:#64716e;background:#edf1f0;border-radius:7px;padding:5px 8px;font-size:9px;font-weight:800;display:inline-flex}.status-badge.booked,.status-badge.confirmed,.status-badge.waiting{color:#267866;background:#e8f6f2}.status-badge.completed{color:#28618b;background:#e9f4ff}.status-badge.called,.status-badge.in_progress{color:#986916;background:#fff3db}.status-badge.cancelled,.status-badge.no_show{color:#a34e49;background:#fdeceb}.ops{padding:2px 20px 12px}.ops>div{border-bottom:1px solid #edf1ef;justify-content:space-between;padding:13px 0;display:flex}.ops span{color:#6f7e7a;font-size:11px}.ops b{font-family:Manrope}.mini-banner{background:#eff8f5;border-radius:11px;margin:10px 20px 20px;padding:13px}.mini-banner b,.mini-banner span{display:block}.mini-banner b{color:#205a51;font-size:11px}.mini-banner span{color:#6f8782;margin-top:4px;font-size:9px;line-height:1.5}.page-head{justify-content:space-between;align-items:flex-end;margin:29px 0 19px;display:flex}.page-head h2{margin:4px 0;font-family:Manrope;font-size:25px}.page-head p{color:#7b8986;margin:0;font-size:12px}.toolbar{justify-content:space-between;align-items:center;margin-bottom:15px;display:flex}.toolbar>span{color:#74827f;font-size:10px}.search{background:#fff;border:1px solid #dce4e2;border-radius:10px;outline:0;width:340px;padding:11px 13px}.clinic-grid{grid-template-columns:repeat(3,1fr);gap:15px;display:grid}.clinic-card,.person-card,.consult-card{background:#fff;border:1px solid #e1e8e5;border-radius:15px;padding:17px}.clinic-top,.person-head,.consult-top{justify-content:space-between;align-items:flex-start;display:flex}.clinic-badge,.code{color:#29665d;background:#edf7f4;border-radius:7px;padding:6px 8px;font-family:monospace;font-size:10px}.badge{border-radius:7px;padding:5px 7px;font-size:9px;font-weight:800}.badge.success{color:#2a7a68;background:#e7f6f0}.badge.muted{color:#77817f;background:#eef0ef}.clinic-symbol{color:#2a7166;background:#eaf6f2;border-radius:12px;place-items:center;width:42px;height:42px;margin-top:18px;font-size:20px;display:grid}.clinic-card h3,.person-card h3,.consult-card h3{margin:10px 0 5px;font-family:Manrope;font-size:16px}.clinic-card p,.person-card p,.consult-card p{color:#788682;margin:0;font-size:11px}.clinic-contact{color:#687773;border-top:1px solid #edf1ef;margin:13px 0;padding-top:12px;font-size:10px}.card-actions{border-top:1px solid #edf1ef;gap:7px;margin-top:11px;padding-top:11px;display:flex}.card-actions button,.link-btn{color:#44605a;background:#f3f6f5;border:0;border-radius:7px;padding:7px 10px;font-size:9px;font-weight:800}.danger-text{color:#a54f4a!important;background:#fff0ef!important}.people-grid{grid-template-columns:repeat(3,1fr);gap:15px;display:grid}.person-head{justify-content:flex-start;gap:11px}.avatar.doctor{color:#2b6186;background:#e9f3ff}.person-head>div:nth-child(2)>span{color:#72827e;font-family:monospace;font-size:9px}.detail-list{background:#f7f9f8;border-radius:10px;margin-top:16px;padding:9px 11px}.detail-list span{color:#7b8885;border-bottom:1px solid #e8edeb;justify-content:space-between;padding:7px 0;font-size:9px;display:flex}.detail-list span:last-child{border:0}.detail-list b{color:#3d514d;text-align:right;max-width:65%}.clinic-summary{background:#f3faf7;border:1px solid #d9efe9;border-radius:10px;flex-direction:column;gap:4px;margin:0 0 12px;padding:11px 12px;display:flex}.clinic-summary .section-kicker{margin-bottom:2px;display:block}.clinic-summary strong{color:#234d49;font-family:Manrope;font-size:14px}.clinic-summary small{color:#627d78;font-size:10px;line-height:1.5}.table-person{align-items:center;gap:8px;display:flex}.table-person .avatar{width:29px;height:29px}.table-panel{padding:0}.table-panel table{min-width:780px}.table-panel .empty{margin:20px}.appointment-summary{background:#e7ecea;border-radius:15px;grid-template-columns:repeat(4,1fr);gap:1px;margin-bottom:15px;display:grid;overflow:hidden}.appointment-summary>div{background:#fff;padding:16px}.appointment-summary span,.appointment-summary b{display:block}.appointment-summary span{color:#798782;font-size:10px}.appointment-summary b{margin-top:4px;font-family:Manrope;font-size:22px}.small-select{background:#fff;border:1px solid #dce4e2;border-radius:7px;padding:6px;font-size:9px}.queue-hero{color:#fff;background:#173b39;border-radius:16px;justify-content:space-between;align-items:center;margin-bottom:15px;padding:22px 25px;display:flex}.queue-hero h2{margin:5px 0;font-family:Manrope;font-size:25px}.queue-hero p{color:#a9c4bf;margin:0;font-size:11px}.token-display{color:#164d47;text-align:center;background:#dff7ee;border-radius:13px;padding:10px 18px}.token-display span,.token-display b{display:block}.token-display span{font-size:9px}.token-display b{font-family:Manrope;font-size:28px}.token-chip{color:#fff;background:#173b39;border-radius:8px;padding:7px 9px;font-family:Manrope}.mini-primary{color:#216c5e;background:#e3f7f0;border:0;border-radius:7px;padding:7px 10px;font-size:9px;font-weight:800}.consult-grid{grid-template-columns:repeat(3,1fr);gap:15px;display:grid}.consult-card{min-height:225px}.consult-top span:last-child{color:#758581;font-size:9px}.consult-section{margin-top:13px}.consult-section label{text-transform:uppercase;letter-spacing:.1em;color:#8a9794;font-size:8px;font-weight:800;display:block}.consult-section span{color:#52615e;margin-top:4px;font-size:10px;line-height:1.45;display:block}.consult-notes{color:#6d7d79;background:#f5f8f7;border-radius:9px;margin-top:13px;padding:9px;font-size:9px;line-height:1.45}.notification-list{gap:10px;display:grid}.notification-card{background:#fff;border:1px solid #e1e8e5;border-radius:14px;grid-template-columns:42px 1fr auto;align-items:start;gap:13px;padding:16px;display:grid}.notify-icon{color:#267466;background:#e8f6f2;border-radius:12px;place-items:center;width:42px;height:42px;display:grid}.notify-meta{color:#82908d;gap:10px;font-size:9px;display:flex}.notification-card h3{margin:6px 0;font-family:Manrope;font-size:14px}.notification-card p{color:#657571;margin:0 0 7px;font-size:10px}.notification-card small{color:#8b9693;font-size:9px}.empty{text-align:center;color:#7d8986;background:#fff;border:1px dashed #d8e1de;border-radius:14px;flex-direction:column;align-items:center;gap:5px;padding:35px;display:flex}.empty div{color:#55867d;background:#eff5f3;border-radius:50%;place-items:center;width:40px;height:40px;display:grid}.empty b{color:#52635f;font-size:12px}.empty span{font-size:9px}.chat-wrap{background:#fff;border:1px solid #e1e8e5;border-radius:17px;max-width:760px;overflow:hidden}.chat-header{border-bottom:1px solid #e8eeec;align-items:center;gap:10px;padding:16px;display:flex}.assistant-avatar{color:#d8f7ee;background:#173b39;border-radius:12px;place-items:center;width:39px;height:39px;display:grid}.chat-header b,.chat-header span{display:block}.chat-header b{font-size:12px}.chat-header span{color:#83918e;margin-top:2px;font-size:9px}.chat-header .online-dot{margin-left:auto}.chat-body{background:#f8faf9;flex-direction:column;gap:10px;height:360px;padding:20px;display:flex;overflow:auto}.bubble{white-space:pre-line;border-radius:13px;max-width:72%;padding:11px 13px;font-size:10px;line-height:1.5}.bubble.bot{color:#52615e;background:#fff;border:1px solid #e1e8e5;align-self:flex-start}.bubble.user{color:#fff;background:#173b39;align-self:flex-end}.chat-suggestions{flex-wrap:wrap;gap:7px;padding:10px 14px;display:flex}.chat-suggestions button{color:#48615c;background:#f5f8f7;border:1px solid #dce5e2;border-radius:20px;padding:7px 10px;font-size:9px}.chat-input{border-top:1px solid #e8eeec;gap:8px;padding:12px;display:flex}.chat-input input{border:1px solid #dce4e2;border-radius:9px;outline:0;flex:1;padding:10px;font-size:12px}.chat-input button{color:#fff;background:#173b39;border:0;border-radius:9px;padding:0 17px;font-size:10px;font-weight:800}.modal-backdrop{z-index:300;background:#0d222166;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal{background:#fff;border-radius:17px;width:min(720px,96vw);max-height:92vh;overflow:auto;box-shadow:0 30px 80px #0004}.modal-head{justify-content:space-between;padding:20px 22px 12px;display:flex}.modal-head h2{margin:5px 0;font-family:Manrope;font-size:20px}.close{color:#66736f;background:#f0f3f2;border:0;border-radius:8px;width:30px;height:30px;font-size:20px}.form-grid{grid-template-columns:1fr 1fr;gap:13px;display:grid}.field{flex-direction:column;gap:6px;display:flex}.field.full{grid-column:1/-1}.field>span{text-transform:uppercase;letter-spacing:.08em;color:#71807c;font-size:9px;font-weight:800}.field input,.field select,.field textarea{background:#fff;border:1px solid #dce4e2;border-radius:8px;outline:0;width:100%;padding:10px;font-size:11px}.field textarea{resize:vertical;min-height:75px}.modal-actions{border-top:1px solid #e8eeec;justify-content:flex-end;gap:8px;margin-top:17px;padding-top:14px;display:flex}.modal-actions>button:first-child{color:#5c6a67;background:#f1f4f3;border:0;border-radius:9px;padding:10px 14px;font-size:10px;font-weight:700}@media (width<=1100px){.sidebar{width:220px}.main{width:calc(100% - 220px);margin-left:220px;padding:0 22px}.clinic-grid,.people-grid,.consult-grid,.stat-grid{grid-template-columns:repeat(2,1fr)}.hero-art{width:250px}}@media (width<=900px){.menu-toggle{display:inline-flex}.sidebar{width:270px;max-width:82vw;box-shadow:none;padding:26px 16px;transition:transform .25s;position:fixed;top:0;bottom:0;left:0;transform:translate(-100%)}.sidebar.mobile-open{z-index:200;transform:translate(0);box-shadow:0 25px 60px #0007}.sidebar-close{display:inline-flex}.mobile-nav-overlay{z-index:190;background:#0d222166;display:block;position:fixed;inset:0}.main{width:100%;margin-left:0;padding:0 16px 50px}.hero{padding:25px}.hero-art{display:none}.dashboard-grid{grid-template-columns:1fr}.page-head{align-items:flex-start;gap:15px}.clinic-grid,.people-grid,.consult-grid,.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.appointment-summary{grid-template-columns:1fr 1fr}.alert{left:16px}.status{display:none}.topbar{flex-wrap:wrap;gap:10px;height:auto;min-height:78px;padding:14px 0}}@media (width<=760px){.table-panel table,.table-wrap table{min-width:0}.table-panel thead,.table-wrap thead{display:none}.table-panel table,.table-wrap table,.table-panel tbody,.table-wrap tbody,.table-panel tr,.table-wrap tr,.table-panel td,.table-wrap td{width:100%;display:block}.table-panel tr,.table-wrap tr{background:#fff;border:1px solid #e2e8e6;border-radius:13px;margin:0 0 12px;padding:4px 14px}.table-panel tbody tr:hover,.table-wrap tbody tr:hover{background:#fff}.table-panel td,.table-wrap td{text-align:right;white-space:normal;word-break:break-word;border-bottom:1px solid #f0f2f1;justify-content:space-between;align-items:center;gap:12px;padding:10px 0;display:flex}.table-panel tr:last-child,.table-wrap tr:last-child{margin-bottom:0}.table-panel td:last-child,.table-wrap td:last-child{border-bottom:0}.table-panel td:before,.table-wrap td:before{content:attr(data-label);text-transform:uppercase;letter-spacing:.05em;color:#7b8986;text-align:left;flex-shrink:0;font-size:9px;font-weight:800}.table-panel td>select,.table-wrap td>select{max-width:60%}}@media (width<=520px){.topbar{height:78px}.topbar h1{font-size:20px}.stat-grid{grid-template-columns:1fr}.hero h2{font-size:28px}.page-head{flex-direction:column}.search{width:100%}.toolbar{flex-direction:column;align-items:stretch;gap:9px}.notification-card{grid-template-columns:36px 1fr}.notification-card>.badge{grid-column:2;justify-self:start}}.auth-shell{background:#f5f7f9;min-height:100vh;display:flex}.auth-visual{color:#fff;background:#173b39;flex:1;align-items:center;padding:60px;display:flex;position:relative;overflow:hidden}.auth-visual:after{content:"";border:1px solid #ffffff14;border-radius:50%;width:420px;height:420px;position:absolute;top:-160px;right:-120px}.auth-visual:before{content:"";border:1px solid #ffffff10;border-radius:50%;width:280px;height:280px;position:absolute;bottom:-120px;left:-100px}.auth-visual-inner{z-index:2;max-width:460px;position:relative}.auth-hero-tag{letter-spacing:.15em;color:#8ec6bb;margin-top:26px;font-size:10px;font-weight:800}.auth-visual-inner h2{margin:14px 0;font-family:Manrope;font-size:34px;line-height:1.16}.auth-visual-inner h2 em{color:#a8e6d8;font-style:normal}.auth-visual-inner>p{color:#aac3be;margin:0 0 22px;font-size:13px;line-height:1.6}.auth-visual-pulse{opacity:.55;background:radial-gradient(circle,#a9e6d9 0 9%,#2d655f 10% 32%,#1d4b48 33% 65%,#0000 66%);border-radius:50%;width:150px;height:150px;margin-bottom:22px}.auth-highlights{flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.auth-highlights li{color:#dcebe8;align-items:center;gap:10px;font-size:12px;display:flex}.auth-highlights li span{color:#0c5750;background:#dff8ef;border-radius:50%;flex:none;place-items:center;width:22px;height:22px;font-size:11px;font-weight:800;display:grid}.auth-panel{flex:1;justify-content:center;align-items:center;padding:40px;display:flex}.auth-card{width:100%;max-width:420px}.auth-tabs{background:#eef2f1;border-radius:12px;margin-bottom:26px;padding:4px;display:flex}.auth-tab{color:#66766f;background:0 0;border:0;border-radius:9px;flex:1;padding:11px;font-size:12px;font-weight:800}.auth-tab.active{color:#fff;background:#173b39;box-shadow:0 6px 16px #0002}.auth-card h1{color:#142728;margin:0 0 6px;font-family:Manrope;font-size:27px}.auth-subtitle{color:#7b8986;margin:0 0 22px;font-size:12px;line-height:1.5}.auth-alert{border-radius:10px;margin-bottom:16px;padding:11px 14px;font-size:12px}.auth-alert.error{color:#a54f4a;background:#fff0ef;border:1px solid #f5d6d3}.auth-alert.info{color:#2a7a68;background:#e7f6f0;border:1px solid #cbeadf}.auth-form{flex-direction:column;gap:14px;display:flex}.auth-submit{width:100%;margin-top:4px;padding:13px;font-size:13px}.auth-submit:disabled{opacity:.65;cursor:not-allowed}.otp-block{flex-direction:column;gap:10px;margin-top:-4px;display:flex}.otp-action{color:#0b5c54;white-space:nowrap;background:#eef7f4;border:1px solid #79afa3;border-radius:8px;padding:10px 14px;font-size:11px;font-weight:800}.otp-action:disabled{opacity:.6;cursor:not-allowed}.otp-verify-row{gap:8px;display:flex}.otp-input{letter-spacing:.3em;border:1px solid #dce4e2;border-radius:8px;outline:0;flex:1;padding:10px;font-size:11px}.otp-verified,.otp-error{margin:0}.role-pills{grid-template-columns:repeat(3,1fr);gap:9px;margin-top:6px;display:grid}.role-pill{text-align:center;background:#fff;border:1px solid #dce4e2;border-radius:12px;flex-direction:column;align-items:center;gap:4px;padding:12px 8px;display:flex}.role-pill-icon{color:#1d665e;background:#eef7f4;border-radius:9px;place-items:center;width:30px;height:30px;font-size:15px;display:grid}.role-pill b{color:#243532;font-size:11px}.role-pill small{color:#8a9794;font-size:8px;line-height:1.3}.role-pill.active{background:#f3faf7;border-color:#173b39;box-shadow:0 0 0 3px #dff3ed}.role-pill.active .role-pill-icon{color:#dff8ef;background:#173b39}.auth-switch{text-align:center;color:#7b8986;margin-top:22px;font-size:12px}.auth-switch button{color:#0d5b54;background:0 0;border:0;padding:0 0 0 4px;font-weight:800}.toast-stack{z-index:200;flex-direction:column;gap:10px;max-width:340px;display:flex;position:fixed;top:26px;right:26px}.toast-item{cursor:pointer;border-radius:12px;align-items:flex-start;gap:10px;padding:13px 16px;font-size:12px;line-height:1.4;animation:.25s ease-out toast-in;display:flex;box-shadow:0 14px 34px #10252325}.toast-item.success{color:#fff;background:#103a35}.toast-item.error{color:#8a3833;background:#fff0ef;border:1px solid #f5d6d3}.toast-item.info{color:#25476b;background:#eef4ff;border:1px solid #d6e3f5}.toast-icon{flex:none;align-items:center;font-weight:800;display:inline-flex}@keyframes toast-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.logout-btn{color:#9db8b4;background:0 0;border:0;border-radius:8px;width:26px;height:26px;margin-left:auto;font-size:15px}.logout-btn:hover{color:#fff;background:#173b39}.chat-fab{z-index:150;color:#dff8ef;background:#173b39;border:0;border-radius:27px;align-items:center;gap:9px;height:54px;padding:0 18px;font-size:19px;display:flex;position:fixed;bottom:28px;right:28px;box-shadow:0 16px 34px #10252340}.chat-fab-label{font-family:Manrope;font-size:12px;font-weight:800}.chat-widget{z-index:150;background:#fff;border:1px solid #e1e8e5;border-radius:17px;flex-direction:column;width:340px;max-width:calc(100vw - 40px);display:flex;position:fixed;bottom:94px;right:28px;overflow:hidden;box-shadow:0 24px 60px #10252333}.chat-widget-head{border-bottom:1px solid #e8eeec;align-items:center;gap:9px;padding:14px;display:flex;position:relative}.chat-widget-head b,.chat-widget-head span{display:block}.chat-widget-head b{font-size:12px}.chat-widget-head span{color:#83918e;margin-top:2px;font-size:9px}.chat-widget-head .online-dot{position:absolute;top:18px;right:36px}.chat-widget-close{color:#66736f;background:#f0f3f2;border:0;border-radius:7px;width:22px;height:22px;font-size:14px;position:absolute;top:8px;right:8px}.chat-widget-body{background:#f8faf9;flex-direction:column;gap:9px;height:280px;padding:16px;display:flex;overflow:auto}@media (width<=900px){.auth-visual{display:none}.auth-panel{padding:24px}}@media (width<=520px){.chat-widget{width:auto;bottom:86px;left:12px;right:12px}.chat-fab{bottom:16px;right:16px}.toast-stack{max-width:none;left:12px;right:12px}}.auth-note{color:#3a5169;background:#eef4ff;border:1px solid #d6e3f5;border-radius:11px;align-items:flex-start;gap:9px;padding:11px 13px;font-size:11px;line-height:1.5;display:flex}.auth-note-icon{color:#3a6fb0;flex:none;font-weight:800}.app-footer{text-align:center;color:#8a9794;border-top:1px solid #e7ecea;flex-direction:column;align-items:center;gap:3px;margin-top:34px;padding:18px 0 6px;font-size:10px;display:flex}.app-footer-credit a{color:#1d665e;font-weight:700;text-decoration:none}.app-footer-credit b{color:#48615c}.auth-page{flex-direction:column;min-height:100vh;display:flex}.auth-page .auth-shell{flex:1}.auth-page .app-footer{background:#fff;border-top:0;margin-top:0;padding:14px 0}.nav-item{transition:background .15s,color .15s}.nav-icon{flex:none;justify-content:center;align-items:center;width:20px;height:20px;display:inline-flex}.nav-item span{width:20px}.icon-btn{justify-content:center;align-items:center;transition:background .15s,border-color .15s;display:inline-flex}.icon-btn:hover{background:#f2f6f5;border-color:#c9d6d3}.logout-btn{justify-content:center;align-items:center;transition:background .15s,color .15s;display:inline-flex}.clinic-symbol,.notify-icon,.stat-icon,.doctor-photo,.assistant-avatar,.role-pill-icon{justify-content:center;align-items:center;display:inline-flex}.stat-card{transition:box-shadow .15s,transform .15s}.stat-card:hover{transform:translateY(-2px);box-shadow:0 10px 26px #0d2b2712}.clinic-card,.person-card,.consult-card{transition:box-shadow .15s,transform .15s}.clinic-card:hover,.person-card:hover,.consult-card:hover{transform:translateY(-2px);box-shadow:0 12px 28px #0d2b2714}.role-pill{transition:border-color .15s,box-shadow .15s,background .15s}.close{justify-content:center;align-items:center;transition:background .15s,color .15s;display:inline-flex}.close:hover{color:#33413e;background:#e5eae8}.chat-widget-close{justify-content:center;align-items:center;display:inline-flex}.alert,.auth-alert{align-items:center;gap:8px;display:flex}.mini-banner{flex-wrap:wrap;align-items:center;gap:6px 8px;display:flex;position:relative}.mini-banner-icon{color:#1d665e;flex:none}.mini-banner b,.mini-banner span{width:100%}.auth-note-icon{justify-content:center;align-items:center;margin-top:1px;display:inline-flex}.chat-fab{font-size:0}.chat-input button{justify-content:center;align-items:center;gap:6px;font-size:10px;display:inline-flex}.status-badge.admin{color:#a3355a;background:#fde8ec}.status-badge.doctor{color:#2b6186;background:#e9f3ff}.status-badge.patient{color:#267866;background:#e8f6f2}img.brand-mark{object-fit:contain;background:#fff;padding:3px}.footer-mark{object-fit:contain;background:#fff;border:1px solid #e7ecea;border-radius:9px;width:34px;height:34px;margin-bottom:2px;padding:3px}:root{--accent:#2fae86;--shadow-sm:0 2px 10px #0d2b2710;--shadow-md:0 12px 28px #0d2b2716;--shadow-lg:0 26px 60px #0a201f2e}body{background:linear-gradient(#f6f9f8 0%,#eef3f1 100%)}::-webkit-scrollbar{width:9px;height:9px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#c7d4d1;border-radius:20px}::-webkit-scrollbar-thumb:hover{background:#a9b8b4}*{scrollbar-color:#c7d4d1 transparent;scrollbar-width:thin}.sidebar{background:linear-gradient(165deg,#143836 0%,#0d2a28 55%,#091f1e 100%);box-shadow:6px 0 34px #0a201f26}.brand-mark{box-shadow:0 6px 16px #0c575033}.nav-item{border-radius:12px;position:relative}.nav-item.active{background:linear-gradient(135deg,#e3fbf1,#c7f0e0);box-shadow:0 10px 22px #0a201f45,inset 0 0 0 1px #ffffff45}.nav-item.active:before{content:"";background:var(--accent);border-radius:4px;width:4px;position:absolute;top:9px;bottom:9px;left:-16px}.nav-item:not(.active):hover{background:#ffffff14;transform:translate(3px)}.avatar{box-shadow:0 4px 10px #0002}.topbar{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:10;background:#f7faf9ee;border-bottom:0;position:sticky;top:0;box-shadow:0 10px 24px -18px #0d2b2755}.status{box-shadow:0 2px 8px #0d2b2708}.hero{box-shadow:var(--shadow-lg);background:linear-gradient(135deg,#1a423f 0%,#102f2c 55%,#0a201f 100%)}.hero:after{background:radial-gradient(circle,#ffffff12,#0000 70%);border:none;width:480px;height:480px}.hero-tag{background:#ffffff16;border-radius:20px;padding:5px 11px;display:inline-block}.primary{background:linear-gradient(135deg,#e7fbf1,#bdeee0);transition:transform .15s,box-shadow .15s;box-shadow:0 8px 20px #0d2b2725,inset 0 0 0 1px #ffffff70}.primary:hover{background:linear-gradient(135deg,#d8f7ea,#a9e4d3);transform:translateY(-2px);box-shadow:0 14px 28px #0d2b2735}.primary:active{transform:translateY(0)}.doctor-card{box-shadow:var(--shadow-lg);border-radius:16px}.float-stat{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);border-radius:16px}.stat-card,.clinic-card,.person-card,.consult-card,.panel,.table-panel,.notification-card,.chat-wrap,.queue-hero,.modal{border-radius:20px}.stat-icon,.clinic-symbol,.notify-icon,.doctor-photo,.assistant-avatar,.role-pill-icon{border-radius:14px}.stat-card{box-shadow:var(--shadow-sm);border-color:#e9eeec}.stat-icon{background:linear-gradient(135deg,#e7fbf1,#c7f0e0)}.clinic-card,.person-card,.consult-card{box-shadow:var(--shadow-sm)}.clinic-symbol,.notify-icon{background:linear-gradient(135deg,#e7fbf1,#c7f0e0)}.card-actions button,.link-btn,.mini-primary,.small-select,.icon-btn{border-radius:10px;transition:background .15s,color .15s}.card-actions button:hover,.link-btn:hover{background:#e6edea}.mini-primary:hover{background:#cdeee0}tbody tr:nth-child(2n){background:#fafcfb}th{background:#f2f6f5}.search{transition:box-shadow .15s,border-color .15s;box-shadow:inset 0 1px 2px #0d2b2708}.search:focus{box-shadow:0 0 0 4px #dff3ed}.field input,.field select,.field textarea{transition:box-shadow .15s,border-color .15s}.modal{box-shadow:0 40px 90px #0a201f40}.modal-backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}@keyframes modalFadeIn{0%{opacity:0}to{opacity:1}}@keyframes modalPopIn{0%{opacity:0;transform:translateY(14px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.modal-backdrop{-webkit-backdrop-filter:blur(6px)saturate(115%);backdrop-filter:blur(6px)saturate(115%);background:linear-gradient(#08191866,#0a201fb3);animation:.18s modalFadeIn}.modal{border:1px solid #ffffff40;animation:.22s cubic-bezier(.2,.9,.3,1.2) modalPopIn;box-shadow:0 45px 100px -20px #08191270,0 0 0 1px #0d2b2708}.modal-head{background:linear-gradient(120deg,#153e3b 0%,#0d2b28 100%);border-radius:19px 19px 0 0;margin:-1px -1px 0;padding:24px 26px 22px;position:relative;overflow:hidden}.modal-head:before{content:"";background:radial-gradient(circle,#ffffff14,#0000 70%);border-radius:50%;width:220px;height:220px;position:absolute;top:-90px;right:-60px}.modal-head .section-kicker{color:#8ec6bb;position:relative}.modal-head h2{color:#fff;letter-spacing:-.01em;font-weight:800;position:relative}.modal-head .close{color:#e7f6f0;z-index:1;background:#ffffff1a;border:1px solid #ffffff26;position:relative}.modal-head .close:hover{color:#fff;background:#ffffff30}.modal form{padding:22px 26px 24px}.modal>div[style*=padding]{padding:22px 26px 26px!important}.modal .section-kicker{color:#1d665e;background:#eef7f4;border-radius:20px;align-items:center;gap:6px;padding:5px 10px;font-size:9px;display:inline-flex}.modal .section-kicker:before{content:"";background:#2fae86;border-radius:50%;width:5px;height:5px}.modal .detail-list{background:#f7fbfa;border:1px solid #e7f0ed;padding:4px 14px}.modal .detail-list span{padding:11px 0;transition:background .12s}.modal .detail-list span:hover{background:#eff7f4;border-radius:8px;margin:0 -14px;padding:11px 14px}.modal .detail-list b{color:#173b39;font-weight:700}.modal .consult-notes{box-shadow:var(--shadow-sm);border:1px solid #e7f0ed}.consultation-history-toggle{color:#1d665e;text-align:left;cursor:pointer;background:#eef8f4;border:1px solid #cfe4dc;border-radius:10px;width:100%;padding:11px 13px;font-size:11px;font-weight:800}.patient-consultation-history{gap:8px;margin-top:9px;display:grid}.patient-consultation-row{background:#fbfdfc;border:1px solid #dfebe7;border-radius:10px;overflow:hidden}.patient-consultation-summary{text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:125px 1fr auto;align-items:center;gap:10px;width:100%;padding:12px;display:grid}.patient-consultation-summary span{color:#6c837d;font-size:10px}.patient-consultation-summary b{color:#284943;font-size:11px}.patient-consultation-summary span:last-child{color:#267866;font-weight:800}.patient-consultation-details{background:#f5faf8;border-top:1px solid #e7efec;padding:11px 12px}.patient-consultation-details p{color:#52615e;margin:5px 0;font-size:10px;line-height:1.45}.patient-consultation-details p b{color:#2b4943}.patient-consultation-tests{color:#267866;border-top:1px dashed #d7e6e0;gap:4px;margin-top:10px;padding-top:9px;font-size:10px;display:grid}.patient-consultation-tests span{color:#52615e}.modal .field>span{color:#4d6662;font-weight:800}.modal .field input,.modal .field select,.modal .field textarea{border-color:#dfe7e4;border-radius:10px}.modal .field input:focus,.modal .field select:focus,.modal .field textarea:focus{border-color:#2fae86;box-shadow:0 0 0 4px #dff3ed}.modal-actions{border-top:1px solid #edf1ef;padding-top:16px}.modal-actions>button:first-child{background:#f1f4f3;border-radius:10px;transition:background .15s,color .15s}.modal-actions>button:first-child:hover{color:#33413e;background:#e5eae8}.modal-actions .primary{color:#fff;background:linear-gradient(135deg,#2fae86,#1d7d63);border-radius:10px;font-weight:800;box-shadow:0 10px 22px #0d2b2730}.modal-actions .primary:hover{background:linear-gradient(135deg,#34c495,#1f8d70);transform:translateY(-1px);box-shadow:0 14px 28px #0d2b2740}.confirm-dialog{width:min(440px,94vw)}.confirm-dialog-body{color:#3f524e;align-items:flex-start;gap:13px;padding:0 22px 18px;display:flex}.confirm-dialog-body svg{color:#c9822a;flex-shrink:0;margin-top:2px}.confirm-dialog-body p{margin:0;font-size:13px;line-height:1.55}.modal-actions .primary.danger{background:linear-gradient(135deg,#e2685f,#b6423b)}.modal-actions .primary.danger:hover{background:linear-gradient(135deg,#ea746b,#c14a42)}@media (width<=520px){.modal-head{padding:20px 18px 18px}.modal form{padding:18px}.modal>div[style*=padding]{padding:18px!important}}.chat-fab{background:linear-gradient(135deg,#1e514c,#0d2624);transition:transform .15s,box-shadow .15s;box-shadow:0 18px 40px #0a201f55}.patient-hero{min-height:190px}.patient-action-grid{grid-template-columns:repeat(3,1fr);gap:14px;margin:18px 0;display:grid}.patient-action-card{text-align:left;background:#fff;border:1px solid #e2e8e6;border-radius:16px;flex-direction:column;align-items:flex-start;gap:6px;padding:20px;transition:box-shadow .15s,transform .15s;display:flex}.patient-action-card:hover{transform:translateY(-2px);box-shadow:0 14px 32px #10252314}.patient-action-icon{color:#1d665e;background:#e7f6f0;border-radius:13px;place-items:center;width:44px;height:44px;margin-bottom:4px;display:grid}.patient-action-card b{color:#1a2a27;font-family:Manrope;font-size:15px}.patient-action-card>span{color:#7b8986;font-size:11px}.patient-appt-card{flex-direction:column;gap:14px;padding:18px 20px;display:flex}.patient-appt-row{color:#48625e;align-items:flex-start;gap:12px;display:flex}.patient-appt-row>svg{color:#1d665e;flex:none;margin-top:2px}.patient-appt-row b{color:#1a2a27;font-family:Manrope;font-size:13px;display:block}.patient-appt-row span{color:#7b8986;margin-top:2px;font-size:11px;display:block}.patient-appt-row small{color:#8a9794;margin-top:2px;font-size:10px;display:block}.patient-notify-mini-list{flex-direction:column;gap:12px;padding:2px 20px 18px;display:flex}.patient-notify-mini{align-items:flex-start;gap:10px;display:flex}.patient-notify-mini>svg{color:#1d665e;flex:none;margin-top:3px}.patient-notify-mini b{color:#1a2a27;font-size:12px;display:block}.patient-notify-mini span{color:#7b8986;margin-top:2px;font-size:11px;line-height:1.4;display:block}.patient-search-box{color:#8a9794;background:#fff;border:1px solid #dce4e2;border-radius:10px;flex:1;align-items:center;gap:9px;max-width:420px;padding:11px 13px;display:flex}.patient-search-box input{color:#253633;background:0 0;border:0;outline:0;flex:1;font-size:12px}.patient-search-box-wide{max-width:520px}.patient-clinic-card,.patient-doctor-card{cursor:pointer;flex-direction:column;display:flex}.patient-specialty-tags{flex-wrap:wrap;gap:6px;margin:10px 0;display:flex}.patient-clinic-footer{color:#7b8986;justify-content:space-between;align-items:center;margin-top:8px;font-size:10px;display:flex}.patient-view-btn{text-align:center;width:100%;margin-top:12px}.patient-doctor-list{flex-direction:column;gap:12px;display:flex}.patient-doctor-row{border:1px solid #e8edeb;border-radius:13px;align-items:center;gap:13px;padding:13px;display:flex}.patient-doctor-avatar{color:#2b6186;background:#e9f3ff;border-radius:12px;flex:none;place-items:center;width:40px;height:40px;display:grid}.patient-doctor-avatar-lg{width:46px;height:46px;margin-bottom:10px}.patient-doctor-info{flex:1}.patient-doctor-info b{color:#1a2a27;font-size:13px;display:block}.patient-doctor-info span{color:#7b8986;margin-top:1px;font-size:11px;display:block}.patient-doctor-info small{color:#8a9794;margin-top:3px;font-size:10px;display:block}.patient-doctor-result-grid{grid-template-columns:repeat(3,1fr);gap:15px;display:grid}.patient-doctor-clinic{color:#48625e;align-items:center;gap:6px;margin:8px 0;font-size:11px;display:flex}.patient-doctor-clinic.muted{color:#a0aba8}.patient-availability{align-items:center;gap:8px;margin:6px 0;display:flex}.patient-availability small{color:#7b8986;font-size:10px}.patient-appt-section{margin-bottom:18px}.patient-appt-grid{grid-template-columns:repeat(2,1fr);gap:14px;padding:2px 20px 20px;display:grid}.patient-appt-listing{border:1px solid #e2e8e6;border-radius:15px;flex-direction:column;gap:12px;padding:16px;display:flex}.patient-appt-footer{border-top:1px solid #edf1ef;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;padding-top:10px;display:flex}.patient-live-status{color:#48625e;font-size:11px}.patient-booking-modal .booking-body{padding:6px 22px 22px}.booking-subtitle{color:#7b8986;margin:4px 0 14px;font-size:12px}.date-chip-row{flex-wrap:wrap;gap:8px;margin-bottom:6px;display:flex}.date-chip{color:#48625e;background:#fff;border:1px solid #dce4e2;border-radius:20px;align-items:center;gap:6px;padding:9px 13px;font-size:11px;display:flex}.date-chip.active{color:#fff;background:#173b39;border-color:#173b39}.slot-grid{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.slot-chip{color:#3f5652;background:#fff;border:1px solid #dce4e2;border-radius:10px;padding:10px 6px;font-size:11px;font-weight:700}.slot-chip.active{color:#fff;background:#173b39;border-color:#173b39}.booking-reason{resize:vertical;border:1px solid #dce4e2;border-radius:10px;outline:0;width:100%;min-height:90px;padding:11px;font-size:12px}.booking-summary{background:#f7f9f8;border-radius:13px;flex-direction:column;gap:13px;padding:15px;display:flex}.summary-row{color:#48625e;align-items:flex-start;gap:12px;display:flex}.summary-row>svg{color:#1d665e;flex:none;margin-top:2px}.summary-row b{color:#1a2a27;font-size:13px;display:block}.summary-row span{color:#7b8986;margin-top:2px;font-size:11px;display:block}.booking-success{text-align:center;flex-direction:column;align-items:center;gap:14px;display:flex}.success-icon{color:#267866}.booking-success h3{color:#1a2a27;margin:0;font-family:Manrope;font-size:19px}.booking-success .token-display{width:100%}.booking-success .booking-summary{text-align:left;width:100%}@media (width<=800px){.patient-action-grid,.patient-doctor-result-grid,.patient-appt-grid{grid-template-columns:1fr}.slot-grid{grid-template-columns:repeat(2,1fr)}}.chat-fab:hover{transform:translateY(-3px);box-shadow:0 24px 48px #0a201f66}.chat-widget{border-radius:20px;box-shadow:0 30px 70px #0a201f38}.chat-widget-head{background:linear-gradient(135deg,#f8fbfa,#eef5f2)}.bubble.user{background:linear-gradient(135deg,#1e514c,#0d2624)}.chat-input button:hover{background:#1e514c}.toast-item{border-radius:14px;box-shadow:0 16px 40px #0a201f30}.toast-item.success{background:linear-gradient(135deg,#143836,#0c2725)}.auth-visual{background:linear-gradient(160deg,#1a423f 0%,#0d2624 70%,#081a19 100%)}.auth-tab.active{background:linear-gradient(135deg,#1e514c,#0d2624)}.role-pill.active{background:linear-gradient(135deg,#f3faf7,#e3f3ec)}.auth-card{box-shadow:0 1px #0000}.main>*{animation:.35s both fade-in}@keyframes fade-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.doctor-hero{min-height:auto;padding:26px 32px}.doctor-hero h2{margin:8px 0;font-size:26px}.doctor-hero h2 em{color:#a8e6d8;margin-top:4px;font-family:DM Sans,sans-serif;font-size:15px;font-style:normal;font-weight:600;display:block}.doctor-availability-toggle{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.doctor-stat-grid{grid-template-columns:repeat(6,1fr)}.secondary{color:#17665b;cursor:pointer;background:linear-gradient(135deg,#f0fcf8,#d9f4eb);border:1px solid #b9ded4;border-radius:11px;padding:11px 18px;font-size:10px;font-weight:800;transition:transform .15s,box-shadow .15s,background .15s;box-shadow:0 5px 14px #173b3914}.secondary:hover{background:linear-gradient(135deg,#e4faf3,#c8eee1);transform:translateY(-1px);box-shadow:0 8px 18px #173b3924}.secondary:focus-visible{outline-offset:2px;outline:3px solid #b8e8dc}.card-actions-btn{color:#44605a;background:#f3f6f5;border:0;border-radius:10px;padding:7px 10px;font-size:9px;font-weight:800}.card-actions-btn:hover{background:#e6edea}.next-patient-card{flex-wrap:wrap;align-items:center;gap:16px;padding:18px 20px;display:flex}.next-patient-card>.secondary{text-align:center;min-width:150px;margin-left:auto;margin-right:auto}.side-panel .card-actions{justify-content:center}.next-patient-token{color:#fff;background:#173b39;border-radius:12px;flex-direction:column;align-items:center;gap:4px;padding:12px 16px;display:flex}.next-patient-token b{font-family:Manrope;font-size:18px}.next-patient-info{flex-direction:column;flex:1;gap:3px;min-width:160px;display:flex}.next-patient-info b{color:#1a2a27;font-family:Manrope;font-size:15px}.next-patient-info span{color:#7b8986;align-items:center;gap:5px;font-size:11px;display:flex}.patient-doctor-meta{color:#48625e;gap:10px;margin:4px 0;font-size:11px;display:flex}@media (width<=1100px){.doctor-stat-grid{grid-template-columns:repeat(3,1fr)}}@media (width<=520px){.doctor-stat-grid{grid-template-columns:repeat(2,1fr)}.next-patient-card{text-align:center;flex-direction:column;align-items:center}.next-patient-info{align-items:center}.next-patient-card>.secondary{margin:0 auto}.side-panel .card-actions{justify-content:center}}@media (prefers-reduced-motion:reduce){.main>*{animation:none}}.quick-view-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:.18s both qv-backdrop-in}.quick-view-card{background:linear-gradient(#fff 0%,#fbfdfc 100%);border:1px solid #e2ece8;border-radius:24px;width:min(500px,94vw);max-height:88vh;padding:28px 28px 20px;animation:.28s cubic-bezier(.2,.9,.3,1.2) both qv-card-in;position:relative;overflow:auto;box-shadow:0 40px 90px #0a201f40}.quick-view-close{position:absolute;top:16px;right:16px}.quick-view-head{border-bottom:1px solid #edf1ef;align-items:center;gap:14px;margin-bottom:16px;padding:2px 38px 18px 2px;display:flex}.quick-view-avatar{color:#d8f7ee;background:linear-gradient(135deg,#1e514c,#0d2624);border-radius:16px;flex-shrink:0;place-items:center;width:56px;height:56px;font-size:19px;font-weight:800;display:grid;box-shadow:0 8px 20px #0d262433}.quick-view-head h3{color:#17212b;margin:2px 0 8px;font-family:Manrope;font-size:19px}.quick-view-meta{flex-wrap:wrap;align-items:center;gap:9px;display:flex}.quick-view-meta>span{color:#71817d;font-size:11px;font-weight:700}.quick-view-grid{flex-direction:column;gap:8px;display:flex}.quick-view-section-title{text-transform:uppercase;letter-spacing:.1em;color:#71908a;margin:18px 0 9px;font-size:10px;font-weight:800}.quick-view-item{background:#f7f9f8;border-radius:12px;grid-template-columns:18px minmax(0,1fr);align-items:center;gap:10px;padding:10px 12px;display:grid}.quick-view-item:hover{background:#eef7f3}.quick-view-item svg{color:#267866;flex-shrink:0;margin-top:1px}.quick-view-item>div{grid-template-columns:145px minmax(0,1fr);align-items:center;gap:12px;min-width:0;display:grid}.quick-view-item label{text-transform:uppercase;letter-spacing:.09em;color:#8a9794;font-size:8px;font-weight:800;display:block}.quick-view-item span,.quick-view-item a{color:#2f423f;word-break:break-word;text-align:right;font-size:12px;font-weight:700;line-height:1.4;display:block}.quick-view-item a{color:#1b7565;text-decoration:none}.quick-view-item a:hover{text-decoration:underline}.quick-view-item-full{grid-column:1/-1}.quick-view-alert{background:#fff8ed}.quick-view-alert svg{color:#b66a16}.quick-view-consultations{border-top:1px solid #e5eeeb;margin-top:16px;padding-top:2px}.quick-view-consultation{background:#f8fcfa;border:1px solid #dfece7;border-radius:12px;margin-top:8px;padding:11px 12px}.quick-view-consultation-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.quick-view-consultation-head b{color:#1d665e;font-size:11px}.quick-view-consultation-head span{color:#536d67;text-align:right;font-size:10px}.quick-view-consultation p{color:#52615e;margin:7px 0 0;font-size:10px;line-height:1.45}.quick-view-consultation p strong{color:#2d4944}.quick-view-no-history{color:#788985;margin:9px 0;font-size:11px}.consultation-tests{background:#f8fcfa;border:1px solid #e1ece8;border-radius:12px;padding:12px}.consultation-tests-head{justify-content:space-between;align-items:center;display:flex}.consultation-tests-head>span{text-transform:uppercase;letter-spacing:.08em;color:#4d6662;font-size:9px;font-weight:800}.consultation-tests-head button{align-items:center;gap:5px;display:inline-flex}.field-hint{color:#7b8986;font-size:10px}.test-request-row{grid-template-columns:1.25fr 1fr .75fr 1.1fr .9fr 1fr auto;gap:7px;margin-top:8px;display:grid}.test-request-row input,.test-request-row select{border:1px solid #dce4e2;border-radius:8px;min-width:0;padding:8px;font-size:10px}.test-request-columns{grid-template-columns:1.25fr 1fr .75fr 1.1fr .9fr 1fr 28px;gap:7px;margin-top:12px;padding:0 2px;display:grid}.test-request-columns span{text-transform:uppercase;letter-spacing:.06em;color:#82918d;font-size:8px;font-weight:800}.add-test-row-button{color:#267866;cursor:pointer;background:#f2fbf7;border:1px dashed #9bc9ba;border-radius:8px;align-items:center;gap:6px;margin-top:10px;padding:8px 11px;font-size:10px;font-weight:800;display:inline-flex}.add-test-row-button:hover{background:#e1f5ed}.test-requests-panel{margin-top:24px;padding:0}.test-requests-table{box-shadow:none;border:0;border-radius:0}.test-requests-table small{color:#7b8986;margin-top:3px;font-size:9px;display:block}.test-priority,.test-status{text-transform:capitalize;border-radius:7px;padding:5px 8px;font-size:9px;font-weight:800;display:inline-flex}.test-priority{color:#267866;background:#edf6f3}.test-priority.urgent{color:#a1611e;background:#fff0df}.test-status{color:#667570;background:#edf1f0}.test-status.requested{color:#267866;background:#e8f6f2}.test-status.sample_collected,.test-status.processing{color:#986916;background:#fff3db}.test-status.completed{color:#28618b;background:#e9f4ff}.test-status.cancelled{color:#a34e49;background:#fdeceb}.test-result-editor{align-items:center;gap:6px;min-width:180px;display:flex}.test-result-editor input{border:1px solid #dce4e2;border-radius:7px;width:150px;padding:7px;font-size:10px}.test-result-editor .interpretation-input{width:140px}.test-request-summary{color:#52615e;background:#f5faf8;border:1px solid #e1ece8;border-radius:10px;gap:6px;padding:11px;font-size:11px;display:grid}.test-request-summary b{color:#267866}.grouped-test-list{gap:4px;display:grid}.grouped-test-list span{color:#52615e;font-size:10px}.grouped-test-list span.has-report{color:#267866;font-weight:700}.uploaded-file-name{color:#267866;margin-top:5px;font-size:10px;font-weight:700;display:block}.test-request-edit-fields{gap:9px;display:grid}.test-edit-header{grid-template-columns:1.1fr .9fr 1.4fr 1.1fr;gap:8px;margin-bottom:5px;display:grid}.test-edit-header span{text-transform:uppercase;letter-spacing:.07em;color:#647a75;font-size:9px;font-weight:800}.test-edit-row{grid-template-columns:1.1fr .9fr 1.4fr 1.1fr;align-items:start;gap:8px;display:grid}.test-edit-row input,.test-edit-row select,.test-edit-row textarea{background:#fff;border:1px solid #dce4e2;border-radius:8px;width:100%;padding:9px;font-size:11px}.test-edit-result{grid-template-columns:125px minmax(0,1fr);align-items:center;gap:12px;margin-top:10px;display:grid}.test-edit-result label{text-transform:uppercase;letter-spacing:.07em;color:#647a75;font-size:9px;font-weight:800}.test-edit-result textarea{resize:vertical;border:1px solid #dce4e2;border-radius:8px;width:100%;min-height:58px;padding:9px;font-size:11px}.add-test-row-button{color:#216b58;cursor:pointer;background:#f7fbf9;border:1px dashed #9db8b0;border-radius:8px;margin-top:8px;padding:8px 12px;font-size:11px;font-weight:700}.add-test-row-button:disabled{opacity:.5;cursor:not-allowed}.additional-test-edit-row{margin-top:8px}@media (width<=700px){.test-edit-header{display:none}.test-edit-row{grid-template-columns:1fr 1fr;gap:8px}.test-edit-row>div{grid-column:1/-1}.test-edit-result{grid-template-columns:1fr;gap:5px}}.test-result-editor>span{color:#718681;font-size:10px}.patient-tests-section{margin-top:18px}.patient-test-list{padding:0 20px 18px}.patient-test-row{border:1px solid #e1ece8;border-radius:12px;grid-template-columns:1fr auto auto;align-items:center;gap:14px;margin-top:8px;padding:12px;display:grid}.patient-test-row b,.patient-test-row span{display:block}.patient-test-row b{color:#253633;font-size:12px}.patient-test-row div span{color:#7b8986;margin-top:4px;font-size:10px}.patient-test-row a{color:#267866;font-size:10px;font-weight:800}.consultation-history-panel{margin-top:18px;padding:0}.consultation-record-list{padding:0 18px 16px}.consultation-record-row{color:#687b76;border-bottom:1px solid #e6efec;grid-template-columns:125px 1.2fr 1fr auto auto;align-items:center;gap:14px;padding:13px 2px;font-size:11px;display:grid}.consultation-record-row:last-child{border-bottom:0}.consultation-record-row b{color:#294842}.consultation-history-tools{align-items:center;gap:9px;display:flex}.consultation-history-tools .search{width:220px;padding:8px 10px;font-size:10px}.consultation-view-body{padding:22px 26px 26px}.consultation-view-note{background:#f5faf8;border:1px solid #e4efeb;border-radius:10px;margin:16px 0;padding:12px}.consultation-view-note label{text-transform:uppercase;letter-spacing:.08em;color:#71908a;font-size:9px;font-weight:800}.consultation-view-note p{color:#52615e;margin:7px 0 0;font-size:11px;line-height:1.5}.patient-investigation-row{border-top:1px solid #e3ece9;grid-template-columns:1.2fr 1fr auto auto;align-items:center;gap:12px;padding:8px 0;display:grid}.patient-investigation-row a{color:#147d68;font-size:10px;font-weight:700}@media (width<=700px){.test-request-columns{display:none}.test-request-row{grid-template-columns:1fr 1fr}.test-request-row input:nth-child(4){grid-column:1/-1}.patient-test-row{grid-template-columns:1fr auto}.patient-test-row a{grid-column:1/-1}.patient-investigation-row{grid-template-columns:1fr 1fr}.patient-investigation-row a{grid-column:1/-1}}.booking-celebration-backdrop{z-index:1000;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#122b4394;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.booking-celebration{color:#173e58;text-align:center;background:linear-gradient(165deg,#fff 0%,#f6fffc 72%,#e7f9f4 100%);border:1px solid #d7eee9;border-radius:24px;flex-direction:column;align-items:center;width:min(430px,100%);padding:44px 28px 18px;animation:.35s ease-out booking-celebration-in;display:flex;position:relative;overflow:hidden;box-shadow:0 28px 80px #082d3759}.booking-celebration-icon{color:#fff;background:#28aa87;border:10px solid #e3faf1;border-radius:50%;place-items:center;width:72px;height:72px;margin-bottom:20px;font-size:42px;font-weight:800;display:grid;box-shadow:0 0 0 8px #f2fffb}.booking-celebration strong,.booking-celebration span{display:block}.booking-title{color:#1d3b5b;margin-top:4px;font-size:27px}.booking-title span{display:inline}.booking-title{color:#159b70}.booking-title span{color:#1d3b5b}.booking-subtitle{color:#66809a;margin-top:7px;font-size:14px}.booking-details-card{text-align:left;background:#f5fbfd;border:1px solid #d7e9f1;border-radius:14px;width:100%;margin-top:22px;padding:18px 20px}.booking-details-card>strong{font-size:17px;display:block}.booking-details-card>span{color:#66809a;font-size:12px}.booking-detail-grid{grid-template-columns:1fr 1fr;gap:14px;margin-top:18px;display:grid}.booking-detail-grid span{color:#2272af;font-size:19px}.booking-detail-grid b{color:#294766;margin-top:-20px;margin-left:25px;font-size:13px;display:block}.booking-detail-grid small{color:#8297a8;margin-top:3px;margin-left:25px;font-size:10px;display:block}.booking-detail-grid span:last-child{grid-column:1/-1}.booking-confirmed{color:#159b70;background:#daf8eb;border-radius:20px;margin-top:16px;padding:9px 20px;font-weight:800}.booking-clinic{color:#2272af;margin:18px 0 8px;font-size:12px;line-height:1.7}.booking-clinic small{color:#66809a}.booking-disappear{color:#8297a8;border-top:1px solid #e4edf0;width:calc(100% + 56px);padding-top:14px}.booking-celebration-close{color:#64827b;cursor:pointer;background:0 0;border:0;font-size:20px;position:absolute;top:7px;right:10px}.booking-token{font-weight:900;color:#0b8068!important;margin-top:5px!important;font-size:18px!important}.booking-confetti{pointer-events:none;position:absolute;inset:-18px;overflow:hidden}.booking-confetti span{color:#26a987;font-size:18px;animation:2.4s ease-in-out infinite booking-confetti-float;position:absolute}.booking-confetti span:first-child{animation-delay:.1s;top:12%;left:12%}.booking-confetti span:nth-child(2){animation-delay:.6s;top:8%;left:78%}.booking-confetti span:nth-child(3){animation-delay:1s;bottom:12%;left:88%}.booking-confetti span:nth-child(4){animation-delay:1.4s;bottom:18%;left:5%}@keyframes booking-confetti-float{0%,to{opacity:.35;transform:translateY(8px)rotate(0)}50%{opacity:1;transform:translateY(-10px)rotate(20deg)}}@keyframes booking-celebration-in{0%{opacity:0;transform:translate(-50%,-14px)scale(.96)}to{opacity:1;transform:translate(-50%)scale(1)}}@media (width<=520px){.booking-celebration{padding:38px 18px 16px}.booking-title{font-size:23px}.booking-detail-grid{gap:10px}}.appointment-success-overlay{z-index:9999;-webkit-backdrop-filter:blur(5px);background:#0f233747;justify-content:center;align-items:center;animation:.3s ease-out forwards overlayFadeIn;display:flex;position:fixed;inset:0}.appointment-success-popup{text-align:center;background:#fffffffa;border:1px solid #ffffffe6;border-radius:24px;width:min(390px,100vw - 32px);min-height:390px;animation:.55s cubic-bezier(.16,1,.3,1) forwards popupEnter;position:relative;overflow:hidden;box-shadow:0 30px 80px #143c5a38,0 10px 30px #143c5a1f}.appointment-success-popup:before,.appointment-success-popup:after{content:"";border-radius:50%;position:absolute}.appointment-success-popup:before{filter:blur(2px);background:#4dd2a529;width:180px;height:180px;top:-95px;left:-65px}.appointment-success-popup:after{background:#4bb5ff21;width:190px;height:190px;bottom:-105px;right:-90px}.appointment-success-close{color:#71849a;cursor:pointer;z-index:4;background:#e6eef5bf;border:0;border-radius:50%;width:32px;height:32px;font-size:20px;position:absolute;top:16px;right:17px}.appointment-success-close:hover{transform:rotate(90deg)}.appointment-success-content{z-index:2;padding:30px 26px 22px;position:relative}.success-icon-wrapper{justify-content:center;align-items:center;width:82px;height:82px;margin:0 auto 18px;display:flex;position:relative}.success-icon-wrapper:before{content:"";background:#22c58624;border-radius:50%;animation:1.8s ease-out infinite successPulse;position:absolute;inset:0}.success-icon{z-index:2;color:#fff;background:linear-gradient(145deg,#22c77a,#0da968);border-radius:50%;justify-content:center;align-items:center;width:60px;height:60px;font-size:31px;font-weight:700;animation:.65s cubic-bezier(.34,1.56,.64,1) checkBounce;display:flex;position:relative;box-shadow:0 10px 25px #14b46e47}.success-title{letter-spacing:-.5px;color:#173b5f;margin:0;font-size:25px;font-weight:750;line-height:1.2}.success-title span{color:#13a86b}.success-subtitle{color:#6d8298;margin:9px 0 20px;font-size:14px;line-height:1.5}.appointment-details{z-index:2;text-align:left;background:linear-gradient(135deg,#eff9fff2,#f6fffbf2);border:1px solid #73bedc29;border-radius:16px;padding:16px;position:relative;box-shadow:inset 0 1px #fffc}.doctor-row{align-items:center;gap:12px;margin-bottom:15px;display:flex}.doctor-avatar{color:#2372ad;background:#d8eef8;border:3px solid #fff;border-radius:50%;flex-shrink:0;place-items:center;width:48px;height:48px;font-size:21px;font-weight:800;display:grid;box-shadow:0 4px 12px #1e506e1f}.doctor-name{color:#1c3e61;margin:0;font-size:16px;font-weight:700}.doctor-speciality{color:#72879c;margin-top:3px;font-size:12px}.appointment-info{border-top:1px solid #6e96af24;grid-template-columns:1fr 1fr;gap:12px;padding-top:13px;display:grid}.info-item{align-items:center;gap:8px;display:flex}.info-icon{color:#2876bb;background:#fff;border-radius:9px;justify-content:center;align-items:center;width:30px;height:30px;font-size:15px;display:flex;box-shadow:0 3px 8px #285a7814}.info-label{color:#8193a5;margin-bottom:2px;font-size:10px;display:block}.info-value{color:#31526f;font-size:12px;font-weight:650;display:block}.token-row{grid-column:1/-1;align-items:center;gap:8px;margin-top:1px;display:flex}.token-number{color:#11a56a;font-size:14px;font-weight:750}.confirmed-badge{color:#07945c;background:#1dbe771f;border-radius:999px;align-items:center;gap:6px;margin-top:13px;padding:7px 14px;font-size:12px;font-weight:700;display:inline-flex}.confirmed-badge:before{content:"✓";color:#fff;background:#19b874;border-radius:50%;justify-content:center;align-items:center;width:17px;height:17px;font-size:10px;display:flex}.appointment-reminder{z-index:2;color:#6c8298;border-top:1px solid #648ca51f;justify-content:center;align-items:center;gap:8px;margin-top:17px;padding-top:14px;font-size:11px;line-height:1.4;display:flex;position:relative}.success-progress{z-index:10;background:#e8f2ed;width:100%;height:3px;position:absolute;bottom:0;left:0}.success-progress:after{content:"";transform-origin:0;background:linear-gradient(90deg,#16b978,#50d6a0);animation:7s linear forwards progressBar;position:absolute;inset:0}.confetti{z-index:3;opacity:0;border-radius:2px;width:7px;height:7px;animation:1.7s ease-out forwards confettiFall;position:absolute}.confetti:first-of-type{top:42px;left:16%;transform:rotate(20deg)}.confetti:nth-of-type(2){top:55px;left:27%;transform:rotate(65deg)}.confetti:nth-of-type(3){top:35px;left:72%;transform:rotate(110deg)}.confetti:nth-of-type(4){top:60px;left:82%;transform:rotate(35deg)}.confetti:nth-of-type(5){top:80px;left:10%;transform:rotate(80deg)}.confetti:nth-of-type(6){top:75px;left:90%;transform:rotate(140deg)}@keyframes overlayFadeIn{0%{opacity:0}to{opacity:1}}@keyframes popupEnter{0%{opacity:0;transform:scale(.82)translateY(15px)}60%{transform:scale(1.03)translateY(0)}to{opacity:1;transform:scale(1)translateY(0)}}@keyframes checkBounce{0%{transform:scale(0)}70%{transform:scale(1.12)}to{transform:scale(1)}}@keyframes successPulse{0%{opacity:.7;transform:scale(.85)}70%,to{opacity:0;transform:scale(1.25)}}@keyframes confettiFall{0%{opacity:0;transform:translateY(-8px)scale(.5)rotate(0)}20%{opacity:1}to{opacity:0;transform:translateY(35px)scale(1)rotate(180deg)}}@keyframes progressBar{0%{transform:scaleX(1)}to{transform:scaleX(0)}}@media (width<=480px){.appointment-success-popup{border-radius:22px;width:calc(100vw - 28px);min-height:auto}.appointment-success-content{padding:25px 20px 19px}.success-title{font-size:22px}.appointment-details{padding:14px}.doctor-avatar{width:43px;height:43px}}@media (prefers-reduced-motion:reduce){.appointment-success-overlay,.appointment-success-popup,.success-icon,.success-icon-wrapper:before,.confetti,.success-progress:after{animation:none!important}}.contact-page{color:#173b63;background:#f8fbff;min-height:100vh;font-family:Inter,Segoe UI,Arial,sans-serif}.contact-hero{background:linear-gradient(120deg,#f5fbff,#eef8ff 55%,#f7fcff);padding:48px 6% 42px;position:relative;overflow:hidden}.contact-hero:before{content:"";background:#42b4ff14;border-radius:50%;width:360px;height:360px;position:absolute;top:-180px;right:8%}.contact-hero-content{z-index:2;max-width:650px;position:relative}.contact-eyebrow{color:#1685df;letter-spacing:1px;text-transform:uppercase;margin-bottom:10px;font-size:13px;font-weight:750}.contact-hero h1{color:#153f70;letter-spacing:-1px;margin:0;font-size:clamp(32px,4vw,48px);font-weight:800;line-height:1.12}.contact-hero p{color:#66819e;max-width:620px;margin:14px 0 0;font-size:16px;line-height:1.7}.contact-info-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:16px;margin-top:-1px;padding:0 6%;display:grid}.contact-info-card{background:#ffffffeb;border:1px solid #e0edf8;border-radius:16px;min-height:120px;padding:20px;transition:transform .25s,box-shadow .25s;position:relative;box-shadow:0 8px 25px #235b820f}.contact-info-card:hover{transform:translateY(-4px);box-shadow:0 15px 35px #235b821c}.contact-info-icon{color:#1788e5;background:#edf7ff;border-radius:12px;justify-content:center;align-items:center;width:42px;height:42px;margin-bottom:12px;display:flex}.contact-info-card h3{color:#173f70;margin:0 0 6px;font-size:14px}.contact-info-card p{color:#66809b;margin:0;font-size:12px;line-height:1.55}.contact-info-card strong{color:#28577e;margin-bottom:3px;font-size:13px;display:block}.address-coming-soon{gap:7px;margin-top:4px;display:flex;color:#547b9c!important}.contact-main{grid-template-columns:1fr 1fr;gap:22px;padding:28px 6% 50px;display:grid}.contact-panel{background:#fff;border:1px solid #e3eef8;border-radius:18px;overflow:hidden;box-shadow:0 8px 30px #1c4c6e0f}.contact-panel-header{padding:24px 26px 14px}.contact-panel-header h2,.location-header h2{color:#163e6c;margin:0;font-size:20px}.contact-panel-header p,.location-header p{color:#7890a7;margin:6px 0 0;font-size:13px}.contact-form{padding:8px 26px 26px}.contact-form-row{grid-template-columns:1fr 1fr;gap:14px;display:grid}.form-group{margin-bottom:15px}.form-group label{color:#234c73;margin-bottom:7px;font-size:12px;font-weight:700;display:block}.form-group label span{color:#e85c5c}.form-input,.form-select,.form-textarea{box-sizing:border-box;color:#294e70;background:#fbfdff;border:1px solid #d9e7f3;border-radius:10px;outline:none;width:100%;font-family:inherit;font-size:13px}.form-input,.form-select{height:43px;padding:0 13px}.form-textarea{resize:vertical;min-height:105px;padding:12px 13px}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:#4ba8e9;box-shadow:0 0 0 3px #4ba8e91a}.contact-privacy{color:#6d879e;background:#f2f9ff;border-radius:10px;margin:4px 0 17px;padding:12px 14px;font-size:11px}.contact-submit{color:#fff;cursor:pointer;background:linear-gradient(135deg,#2589e5,#176fd0);border:0;border-radius:10px;align-items:center;gap:8px;min-width:155px;height:44px;padding:0 22px;font-size:13px;font-weight:700;display:inline-flex;box-shadow:0 8px 18px #1f7eda33}.contact-location{padding:24px}.location-header{align-items:center;gap:12px;margin-bottom:18px;display:flex}.location-icon,.location-coming-icon{color:#1988e3;background:#edf7ff;border-radius:12px;justify-content:center;align-items:center;width:42px;height:42px;display:flex}.location-coming-soon{text-align:center;background:linear-gradient(145deg,#f7fcff,#f1f9ff);border:1px dashed #c9dfef;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;min-height:210px;padding:30px;display:flex}.location-coming-icon{background:#e5f4ff;border-radius:50%;width:58px;height:58px;margin-bottom:14px}.location-coming-soon h3{color:#245276;margin:0 0 7px}.location-coming-soon p{color:#7992a8;margin:0;font-size:12px}.appointment-help{background:linear-gradient(135deg,#eef8ff,#f3fcfa);border:1px solid #deedf6;border-radius:14px;align-items:center;gap:15px;margin-top:16px;padding:17px;display:flex}.appointment-help-icon{color:#208ce3;background:#fff;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:45px;height:45px;display:flex}.appointment-help h3{color:#1d527e;margin:0 0 4px;font-size:14px}.appointment-help p{color:#718aa0;margin:0;font-size:11px;line-height:1.5}@media (width<=1100px){.contact-info-grid{grid-template-columns:repeat(3,1fr)}.contact-main{grid-template-columns:1fr}}@media (width<=700px){.contact-hero{padding:35px 20px 32px}.contact-hero h1{font-size:31px}.contact-info-grid{grid-template-columns:1fr;gap:12px;padding:0 20px}.contact-main{gap:16px;padding:20px}.contact-form{padding:8px 18px 20px}.contact-form-row{grid-template-columns:1fr;gap:0}.contact-location{padding:18px}.appointment-help{align-items:flex-start}.consultation-history-tools{flex-direction:column;align-items:flex-end}.consultation-record-row{grid-template-columns:1fr auto;gap:8px}.consultation-record-row .action-row{grid-column:1/-1}}@keyframes qv-backdrop-in{0%{opacity:0}to{opacity:1}}@keyframes qv-card-in{0%{opacity:0;transform:translateY(14px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}@media (width<=520px){.quick-view-card{padding:24px 16px 18px}.quick-view-item>div{grid-template-columns:105px minmax(0,1fr);gap:8px}.quick-view-item span,.quick-view-item a{text-align:right}}@media (prefers-reduced-motion:reduce){.quick-view-backdrop,.quick-view-card{animation:none}}.table-patient-link{color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:0}.table-patient-link:hover{color:var(--teal,#0f766e);text-decoration:underline}.doctor-patients-page .page-head{margin-bottom:24px}.doctor-patients-page .page-head h2{letter-spacing:-.03em}.doctor-patients-page .patient-search-box{border-radius:14px;max-width:520px;box-shadow:0 8px 24px #153e3b0b}.patient-count-pill{background:#e9f7f2;border-radius:999px;padding:8px 12px;font-weight:800;color:#267866!important}.patients-table-panel{border-color:#dce9e5;box-shadow:0 14px 34px #153e3b0c}.patients-table-panel table{border:1px solid #d5e5df;border-radius:18px;overflow:hidden}.patients-table-panel th{color:#53726c;background:linear-gradient(#f4faf8,#edf5f2);padding:14px 18px}.patients-table-panel td{padding:16px 18px;font-size:12px}.patients-table-panel tbody tr{border-bottom:1px solid #e1ece8;transition:background .15s,box-shadow .15s}.patients-table-panel tbody tr:last-child{border-bottom:0}.patients-table-panel tbody tr:hover{background:#f1faf6;box-shadow:inset 3px 0 #2fae86}.patients-table-panel .table-patient-link{color:#173f3b;font-size:12px}.patients-table-panel td:nth-child(2){color:#718681;font-family:monospace;font-size:11px}.patients-table-panel td:nth-child(5){color:#267866;font-weight:700}@media (width<=520px){.doctor-patients-page .patients-table-panel td{padding:11px 0}}:root{--ui-navy:#073b5c;--ui-navy-deep:#062e4a;--ui-teal:#0b9aa5;--ui-teal-dark:#087d88;--ui-ink:#102f57;--ui-muted:#7186a0;--ui-border:#dce9f4;--ui-surface:#fff;--ui-page:#f5f9fd;--ui-shadow:0 10px 28px #1d537d12}body{background:var(--ui-page);color:var(--ui-ink)}.app-shell{background:radial-gradient(circle at 78% 0%, #8be0e01f, transparent 26rem), var(--ui-page)}.sidebar{background:linear-gradient(180deg, var(--ui-navy) 0%, var(--ui-navy-deep) 100%);border-right:1px solid #ffffff14;width:248px;padding:25px 14px 20px;box-shadow:10px 0 30px #03274317}.brand{gap:11px;padding:4px 12px 31px}.brand-mark{width:42px;height:42px;color:var(--ui-navy);background:linear-gradient(145deg,#d8ffff,#9eecef);border-radius:14px;box-shadow:0 8px 18px #00000024}.brand strong{letter-spacing:-.02em;font-size:17px}.brand span{color:#a6c6d8}.nav-label{color:#85b1c8;padding:0 13px 11px}.nav-item{color:#c0d7e4;border-radius:12px;min-height:45px;margin:4px 0;padding:11px 13px;transition:background .18s,color .18s,transform .18s}.nav-item:hover{color:#fff;background:#7adde021;transform:translate(2px)}.nav-item.active{color:#fff;background:linear-gradient(100deg,#15a9ae,#0a8d9e);box-shadow:0 8px 20px #041d343b}.main{width:calc(100% - 248px);margin-left:248px;padding:0 34px 54px}.topbar{border-bottom:1px solid var(--ui-border);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#ffffffc7;height:82px}.topbar h1{color:var(--ui-ink);letter-spacing:-.03em;font-size:23px}.eyebrow,.section-kicker{color:#6a91ad}.status,.icon-btn,.profile{border-color:var(--ui-border);background:var(--ui-surface)}.status{color:#53718d}.profile{color:var(--ui-navy);background:linear-gradient(145deg,#d9f5f5,#8bd4dc)}.page-head{margin:31px 0 21px}.page-head h2{color:var(--ui-ink);letter-spacing:-.04em;font-size:29px}.page-head p{color:var(--ui-muted)}.hero{background:linear-gradient(120deg,#073b5cfa,#087382f0),radial-gradient(circle at 85% 10%,#a5f2ef,#0000 22rem);border:1px solid #77d9de33;border-radius:22px;min-height:250px;margin-top:26px;padding:32px 36px;box-shadow:0 18px 38px #08436529}.hero h2{font-size:34px}.stat-grid{gap:15px;margin:19px 0}.stat-card,.panel,.table-panel,.clinic-card,.person-card,.consult-card,.notification-card,.chat-wrap{border:1px solid var(--ui-border);background:var(--ui-surface);box-shadow:var(--ui-shadow);border-radius:16px}.stat-card{min-height:92px;padding:17px}.stat-icon{color:#087da1;background:#e5f6fb}.stat-card span{color:#6f87a0}.stat-card strong{color:var(--ui-ink)}.dashboard-grid{gap:18px}.panel-head{border-bottom:1px solid #edf3f8;padding:20px 22px}.panel-head h3,.clinic-card h3,.person-card h3,.consult-card h3{color:var(--ui-ink)}.count-pill,.badge,.status-badge{border:1px solid #71a4c326}.table-panel,.table-wrap{box-shadow:var(--ui-shadow)}table{font-size:12px}th{color:#5c7b98;border-bottom-color:var(--ui-border);background:#f2f8fc;padding:13px 15px}td{color:#526d87;border-bottom-color:#edf3f8;padding:14px 15px}tbody tr:hover{background:#f8fcff}td b{color:var(--ui-ink)}.search,.small-select,.field input,.field select,.field textarea,.form-input,.form-select,.form-textarea{color:#234d73;background:#fbfdff;border-color:#d2e3ef;border-radius:11px}.search{height:43px;box-shadow:0 3px 12px #245b800a}.search:focus,input:focus,select:focus,textarea:focus{border-color:#42b8c5;box-shadow:0 0 0 4px #42b8c51f}.primary,.mini-primary,.contact-submit{color:#fff;background:linear-gradient(135deg,#0c9ca8,#087a91);border:0;border-radius:11px;transition:transform .18s,box-shadow .18s,filter .18s;box-shadow:0 8px 18px #057f912e}.primary:hover,.mini-primary:hover,.contact-submit:hover{background:linear-gradient(135deg,#0aaeb4,#086f88);transform:translateY(-1px);box-shadow:0 11px 24px #057f913b}.card-actions-btn,.link-btn{color:#316482;background:#f5fafe;border:1px solid #d8e8f1;border-radius:10px}.card-actions-btn:hover,.link-btn:hover{color:#075e79;background:#e8f6fb}.danger-text{color:#bf5d65!important;background:#fff2f3!important;border-color:#f4d8db!important}.modal-backdrop{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#05243d75}.modal{border:1px solid var(--ui-border);border-radius:20px;box-shadow:0 30px 80px #0632503d}.modal-head{border-bottom:1px solid var(--ui-border);background:linear-gradient(120deg,#f2fbff,#fff)}.modal-head h2{color:var(--ui-ink)}.close{color:#54718a;background:#edf6fb}.empty{color:#708ba1;background:#fbfdff;border-color:#cfe3ee}.chat-fab{background:linear-gradient(135deg,#0a8c99,#075675);box-shadow:0 16px 34px #05476247}.chat-widget{border-color:var(--ui-border);box-shadow:0 26px 70px #05305038}@media (width<=900px){.main{padding:0 18px 44px}.topbar{height:76px}.page-head{margin-top:25px}.hero{padding:27px 24px}}@media (width<=760px){.main{padding:0 14px 40px}.page-head h2{font-size:25px}.panel-head{padding:17px}.table-panel tr,.table-wrap tr{border-color:var(--ui-border);box-shadow:0 5px 16px #235e840d}.table-panel td,.table-wrap td{color:#54718a}.table-panel td:before,.table-wrap td:before{color:#6e91aa}}@media (width<=520px){.main{padding:0 12px 34px}.topbar{min-height:72px;padding:10px 0}.topbar h1{font-size:19px}.hero{border-radius:18px;padding:23px 19px}.hero h2{font-size:28px}.stat-card{min-height:80px;padding:14px}.stat-card strong{font-size:21px}.primary,.page-head>button,.page-head>.primary{min-height:42px}.chat-widget{max-width:none;bottom:82px;left:10px;right:10px}}button.primary,button.mini-primary,button.card-actions-btn,button.link-btn,button.secondary,.action-row>button,.modal-actions>button,.card-actions>button{white-space:nowrap;justify-content:center;align-items:center;gap:7px;min-width:88px;min-height:38px;padding:9px 14px;line-height:1.2;display:inline-flex}.action-row,.card-actions,.hero-actions,.modal-actions{flex-wrap:wrap;align-items:center;gap:9px}.toolbar,.page-head{gap:16px}.toolbar>.action-row,.page-head>.action-row{margin:0}.table-panel .action-row,.table-wrap .action-row{justify-content:flex-start}.small-select{min-height:38px;padding:8px 11px}.icon-btn,.profile,.close,.menu-toggle{flex:none}.modal-actions>button:first-child{color:#41647e;background:#f5fafe;border:1px solid #d8e8f1;min-width:88px}@media (width<=600px){.page-head,.toolbar{flex-direction:column;align-items:stretch}.page-head>button,.page-head>.primary,.toolbar>.primary,.action-row,.card-actions,.modal-actions{width:100%}.action-row>button,.card-actions>button,.modal-actions>button{flex:auto}.modal-actions{justify-content:stretch}}.patient-hero{background:radial-gradient(circle at 88% 18%,#75e2e252,#0000 10rem),linear-gradient(125deg,#063b5d 0%,#087d91 62%,#13a2a7 100%);min-height:214px;padding:34px 38px;position:relative;overflow:hidden;box-shadow:0 22px 42px #074a6b33}.patient-hero:after{content:"";border:1px solid #fff3;border-radius:50%;width:180px;height:180px;position:absolute;bottom:-94px;right:7%;box-shadow:0 0 0 22px #ffffff0d,0 0 0 44px #ffffff09}.patient-hero>div{z-index:1;max-width:560px;position:relative}.patient-hero .hero-tag{color:#b5f1ef;letter-spacing:.14em}.patient-hero h2{color:#fff;text-shadow:0 2px 14px #00253a33}.patient-hero p{color:#eeffffd1;max-width:470px}.patient-action-grid{gap:16px;margin:20px 0 22px}.patient-action-card{border-color:#d8e9ef;min-height:142px;padding:22px;transition:transform .2s,border-color .2s,box-shadow .2s;position:relative;box-shadow:0 8px 22px #1557710f}.patient-action-card:after{content:"→";color:#7ca7b5;opacity:.7;font-size:18px;transition:transform .2s,color .2s;position:absolute;top:19px;right:20px}.patient-action-card:hover,.patient-action-card:focus-visible{border-color:#8ed4db;outline:none;transform:translateY(-3px);box-shadow:0 16px 30px #0d6b8524}.patient-action-card:hover:after,.patient-action-card:focus-visible:after{color:#087d91;transform:translate(3px)}.patient-action-icon{background:linear-gradient(145deg,#e8fbf7,#d8f0f7);box-shadow:inset 0 0 0 1px #1e8d9d14}.patient-appt-card,.patient-notify-mini-list{background:linear-gradient(#fff,#fbfdfe)}.patient-appt-card{gap:15px;padding:22px}.patient-appt-row{background:#fcfeff;border:1px solid #edf3f5;border-radius:12px;padding:10px 11px}.patient-appt-row>svg{box-sizing:content-box;background:#eaf7fa;border-radius:8px;width:28px;height:28px;margin-top:1px;padding:5px}.patient-appt-card>.link-btn{align-self:flex-start;margin-top:2px}.patient-notify-mini{background:#fcfeff;border:1px solid #edf3f5;border-radius:12px;padding:10px 11px}.patient-notify-mini>svg{background:#eaf7fa;border-radius:8px;width:16px;height:16px;padding:6px}.patient-search-box{box-sizing:border-box;border-color:#cfe2eb;min-height:44px;transition:border-color .2s,box-shadow .2s;box-shadow:0 7px 18px #135c780f}.patient-search-box:focus-within{border-color:#42b8c5;box-shadow:0 0 0 4px #42b8c51f,0 8px 22px #135c7814}.patient-clinic-card,.patient-doctor-card,.patient-appt-listing{border-color:#d8e8ef;transition:transform .2s,box-shadow .2s,border-color .2s;box-shadow:0 9px 24px #15577112}.patient-clinic-card:hover,.patient-doctor-card:hover,.patient-appt-listing:hover{border-color:#9bd5dc;transform:translateY(-3px);box-shadow:0 16px 32px #15577121}.patient-clinic-card .clinic-symbol,.patient-doctor-avatar-lg{box-shadow:0 7px 16px #137e8f1f}.patient-specialty-tags .badge{color:#36718a;background:#eff8fb}.patient-view-btn{margin-top:auto}.patient-doctor-row{background:#fcfeff;border-color:#dcebef;transition:border-color .2s,background .2s}.patient-doctor-row:hover{background:#f7fcfd;border-color:#9bd5dc}.patient-appt-listing{background:linear-gradient(#fff,#fbfdff)}.patient-appt-footer{margin-top:2px}@media (width<=800px){.patient-action-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=620px){.patient-hero{min-height:190px;padding:26px 22px}.patient-action-grid{grid-template-columns:1fr}.patient-action-card{min-height:112px}}@media (width<=1100px){.menu-toggle{display:inline-flex}.sidebar{z-index:200;width:270px;max-width:82vw;transition:transform .25s;position:fixed;top:0;bottom:0;left:0;transform:translate(-100%)}.sidebar.mobile-open{transform:translate(0);box-shadow:0 25px 60px #0000006b}.sidebar-close{display:inline-flex}.mobile-nav-overlay{z-index:190;background:#0d222166;display:block;position:fixed;inset:0}.main{width:100%;margin-left:0;padding:0 18px 44px}.hero-art{display:none}.dashboard-grid{grid-template-columns:1fr}.clinic-grid,.people-grid,.consult-grid,.patient-doctor-result-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=620px){.main{padding:0 12px 34px}.clinic-grid,.people-grid,.consult-grid,.patient-doctor-result-grid{grid-template-columns:1fr}input,select,textarea,.search,.patient-search-box input,.chat-input input,.booking-reason{font-size:16px}}
