body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Montserrat,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}:root{--toastify-color-light:#fff;--toastify-color-dark:#121212;--toastify-color-info:#3498db;--toastify-color-success:#07bc0c;--toastify-color-warning:#f1c40f;--toastify-color-error:#e74d3c;--toastify-color-transparent:#ffffffb3;--toastify-icon-color-info:var(--toastify-color-info);--toastify-icon-color-success:var(--toastify-color-success);--toastify-icon-color-warning:var(--toastify-color-warning);--toastify-icon-color-error:var(--toastify-color-error);--toastify-container-width:fit-content;--toastify-toast-width:320px;--toastify-toast-offset:16px;--toastify-toast-top:max(var(--toastify-toast-offset),env(safe-area-inset-top));--toastify-toast-right:max(var(--toastify-toast-offset),env(safe-area-inset-right));--toastify-toast-left:max(var(--toastify-toast-offset),env(safe-area-inset-left));--toastify-toast-bottom:max(var(--toastify-toast-offset),env(safe-area-inset-bottom));--toastify-toast-background:#fff;--toastify-toast-padding:14px;--toastify-toast-min-height:64px;--toastify-toast-max-height:800px;--toastify-toast-bd-radius:6px;--toastify-toast-shadow:0px 4px 12px #0000001a;--toastify-font-family:sans-serif;--toastify-z-index:9999;--toastify-text-color-light:#757575;--toastify-text-color-dark:#fff;--toastify-text-color-info:#fff;--toastify-text-color-success:#fff;--toastify-text-color-warning:#fff;--toastify-text-color-error:#fff;--toastify-spinner-color:#616161;--toastify-spinner-color-empty-area:#e0e0e0;--toastify-color-progress-light:linear-gradient(90deg,#4cd964,#5ac8fa,#007aff,#34aadc,#5856d6,#ff2d55);--toastify-color-progress-dark:#bb86fc;--toastify-color-progress-info:var(--toastify-color-info);--toastify-color-progress-success:var(--toastify-color-success);--toastify-color-progress-warning:var(--toastify-color-warning);--toastify-color-progress-error:var(--toastify-color-error);--toastify-color-progress-bgo:0.2}.Toastify__toast-container{box-sizing:border-box;color:#fff;display:flex;flex-direction:column;position:fixed;-webkit-transform:translateZ(9999);-webkit-transform:translateZ(var(--toastify-z-index));width:fit-content;width:var(--toastify-container-width);z-index:9999;z-index:var(--toastify-z-index)}.Toastify__toast-container--top-left{left:max(16px,env(safe-area-inset-left));left:var(--toastify-toast-left);top:max(16px,env(safe-area-inset-top));top:var(--toastify-toast-top)}.Toastify__toast-container--top-center{align-items:center;left:50%;top:max(16px,env(safe-area-inset-top));top:var(--toastify-toast-top);transform:translateX(-50%)}.Toastify__toast-container--top-right{align-items:end;right:max(16px,env(safe-area-inset-right));right:var(--toastify-toast-right);top:max(16px,env(safe-area-inset-top));top:var(--toastify-toast-top)}.Toastify__toast-container--bottom-left{bottom:max(16px,env(safe-area-inset-bottom));bottom:var(--toastify-toast-bottom);left:max(16px,env(safe-area-inset-left));left:var(--toastify-toast-left)}.Toastify__toast-container--bottom-center{align-items:center;bottom:max(16px,env(safe-area-inset-bottom));bottom:var(--toastify-toast-bottom);left:50%;transform:translateX(-50%)}.Toastify__toast-container--bottom-right{align-items:end;bottom:max(16px,env(safe-area-inset-bottom));bottom:var(--toastify-toast-bottom);right:max(16px,env(safe-area-inset-right));right:var(--toastify-toast-right)}.Toastify__toast{--y:0;align-items:center;border-radius:6px;border-radius:var(--toastify-toast-bd-radius);box-shadow:0 4px 12px #0000001a;box-shadow:var(--toastify-toast-shadow);box-sizing:border-box;display:flex;flex:1 1 auto;font-family:sans-serif;font-family:var(--toastify-font-family);margin-bottom:1rem;max-height:800px;max-height:var(--toastify-toast-max-height);min-height:64px;min-height:var(--toastify-toast-min-height);padding:14px;padding:var(--toastify-toast-padding);position:relative;touch-action:none;width:320px;width:var(--toastify-toast-width);word-break:break-word;z-index:0}@media only screen and (max-width:480px){.Toastify__toast-container{left:env(safe-area-inset-left);margin:0;width:100vw}.Toastify__toast-container--top-center,.Toastify__toast-container--top-left,.Toastify__toast-container--top-right{top:env(safe-area-inset-top);transform:translateX(0)}.Toastify__toast-container--bottom-center,.Toastify__toast-container--bottom-left,.Toastify__toast-container--bottom-right{bottom:env(safe-area-inset-bottom);transform:translateX(0)}.Toastify__toast-container--rtl{left:auto;right:env(safe-area-inset-right)}.Toastify__toast{--toastify-toast-width:100%;border-radius:0;margin-bottom:0}}.Toastify__toast-container[data-stacked=true]{width:320px;width:var(--toastify-toast-width)}.Toastify__toast--stacked{position:absolute;transform:translate3d(0,var(--y),0) scale(var(--s));transition:transform .3s;width:100%}.Toastify__toast--stacked[data-collapsed] .Toastify__close-button,.Toastify__toast--stacked[data-collapsed] .Toastify__toast-body{transition:opacity .1s}.Toastify__toast--stacked[data-collapsed=false]{overflow:visible}.Toastify__toast--stacked[data-collapsed=true]:not(:last-child)>*{opacity:0}.Toastify__toast--stacked:after{bottom:100%;content:"";height:calc(var(--g)*1px);left:0;position:absolute;right:0}.Toastify__toast--stacked[data-pos=top]{top:0}.Toastify__toast--stacked[data-pos=bot]{bottom:0}.Toastify__toast--stacked[data-pos=bot].Toastify__toast--stacked:before{transform-origin:top}.Toastify__toast--stacked[data-pos=top].Toastify__toast--stacked:before{transform-origin:bottom}.Toastify__toast--stacked:before{bottom:0;content:"";height:100%;left:0;position:absolute;right:0;transform:scaleY(3);z-index:-1}.Toastify__toast--rtl{direction:rtl}.Toastify__toast--close-on-click{cursor:pointer}.Toastify__toast-icon{display:flex;flex-shrink:0;margin-inline-end:10px;width:22px}.Toastify--animate{animation-duration:.5s;animation-fill-mode:both}.Toastify--animate-icon{animation-duration:.3s;animation-fill-mode:both}.Toastify__toast-theme--dark{background:#121212;background:var(--toastify-color-dark);color:#fff;color:var(--toastify-text-color-dark)}.Toastify__toast-theme--colored.Toastify__toast--default,.Toastify__toast-theme--light{background:#fff;background:var(--toastify-color-light);color:#757575;color:var(--toastify-text-color-light)}.Toastify__toast-theme--colored.Toastify__toast--info{background:#3498db;background:var(--toastify-color-info);color:#fff;color:var(--toastify-text-color-info)}.Toastify__toast-theme--colored.Toastify__toast--success{background:#07bc0c;background:var(--toastify-color-success);color:#fff;color:var(--toastify-text-color-success)}.Toastify__toast-theme--colored.Toastify__toast--warning{background:#f1c40f;background:var(--toastify-color-warning);color:#fff;color:var(--toastify-text-color-warning)}.Toastify__toast-theme--colored.Toastify__toast--error{background:#e74d3c;background:var(--toastify-color-error);color:#fff;color:var(--toastify-text-color-error)}.Toastify__progress-bar-theme--light{background:linear-gradient(90deg,#4cd964,#5ac8fa,#007aff,#34aadc,#5856d6,#ff2d55);background:var(--toastify-color-progress-light)}.Toastify__progress-bar-theme--dark{background:#bb86fc;background:var(--toastify-color-progress-dark)}.Toastify__progress-bar--info{background:#3498db;background:var(--toastify-color-progress-info)}.Toastify__progress-bar--success{background:#07bc0c;background:var(--toastify-color-progress-success)}.Toastify__progress-bar--warning{background:#f1c40f;background:var(--toastify-color-progress-warning)}.Toastify__progress-bar--error{background:#e74d3c;background:var(--toastify-color-progress-error)}.Toastify__progress-bar-theme--colored.Toastify__progress-bar--error,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--info,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--success,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--warning{background:#ffffffb3;background:var(--toastify-color-transparent)}.Toastify__close-button{background:#0000;border:none;color:#fff;cursor:pointer;opacity:.7;outline:none;padding:0;position:absolute;right:6px;top:6px;transition:.3s ease;z-index:1}.Toastify__toast--rtl .Toastify__close-button{left:6px;right:auto}.Toastify__close-button--light{color:#000;opacity:.3}.Toastify__close-button>svg{fill:currentColor;height:16px;width:14px}.Toastify__close-button:focus,.Toastify__close-button:hover{opacity:1}@keyframes Toastify__trackProgress{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.Toastify__progress-bar{bottom:0;height:100%;left:0;opacity:.7;position:absolute;transform-origin:left;width:100%;z-index:1}.Toastify__progress-bar--animated{animation:Toastify__trackProgress linear 1 forwards}.Toastify__progress-bar--controlled{transition:transform .2s}.Toastify__progress-bar--rtl{border-bottom-left-radius:0;left:auto;right:0;transform-origin:right}.Toastify__progress-bar--wrp{border-bottom-left-radius:6px;border-bottom-left-radius:var(--toastify-toast-bd-radius);border-bottom-right-radius:6px;border-bottom-right-radius:var(--toastify-toast-bd-radius);bottom:0;height:5px;left:0;overflow:hidden;position:absolute;width:100%}.Toastify__progress-bar--wrp[data-hidden=true]{opacity:0}.Toastify__progress-bar--bg{height:100%;opacity:.2;opacity:var(--toastify-color-progress-bgo);width:100%}.Toastify__spinner{animation:Toastify__spin .65s linear infinite;border:2px solid #e0e0e0;border-color:var(--toastify-spinner-color-empty-area);border-radius:100%;border-right-color:#616161;border-right-color:var(--toastify-spinner-color);box-sizing:border-box;height:20px;width:20px}@keyframes Toastify__bounceInRight{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(3000px,0,0)}60%{opacity:1;transform:translate3d(-25px,0,0)}75%{transform:translate3d(10px,0,0)}90%{transform:translate3d(-5px,0,0)}to{transform:none}}@keyframes Toastify__bounceOutRight{20%{opacity:1;transform:translate3d(-20px,var(--y),0)}to{opacity:0;transform:translate3d(2000px,var(--y),0)}}@keyframes Toastify__bounceInLeft{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(-3000px,0,0)}60%{opacity:1;transform:translate3d(25px,0,0)}75%{transform:translate3d(-10px,0,0)}90%{transform:translate3d(5px,0,0)}to{transform:none}}@keyframes Toastify__bounceOutLeft{20%{opacity:1;transform:translate3d(20px,var(--y),0)}to{opacity:0;transform:translate3d(-2000px,var(--y),0)}}@keyframes Toastify__bounceInUp{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(0,3000px,0)}60%{opacity:1;transform:translate3d(0,-20px,0)}75%{transform:translate3d(0,10px,0)}90%{transform:translate3d(0,-5px,0)}to{transform:translateZ(0)}}@keyframes Toastify__bounceOutUp{20%{transform:translate3d(0,calc(var(--y) - 10px),0)}40%,45%{opacity:1;transform:translate3d(0,calc(var(--y) + 20px),0)}to{opacity:0;transform:translate3d(0,-2000px,0)}}@keyframes Toastify__bounceInDown{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(0,-3000px,0)}60%{opacity:1;transform:translate3d(0,25px,0)}75%{transform:translate3d(0,-10px,0)}90%{transform:translate3d(0,5px,0)}to{transform:none}}@keyframes Toastify__bounceOutDown{20%{transform:translate3d(0,calc(var(--y) - 10px),0)}40%,45%{opacity:1;transform:translate3d(0,calc(var(--y) + 20px),0)}to{opacity:0;transform:translate3d(0,2000px,0)}}.Toastify__bounce-enter--bottom-left,.Toastify__bounce-enter--top-left{animation-name:Toastify__bounceInLeft}.Toastify__bounce-enter--bottom-right,.Toastify__bounce-enter--top-right{animation-name:Toastify__bounceInRight}.Toastify__bounce-enter--top-center{animation-name:Toastify__bounceInDown}.Toastify__bounce-enter--bottom-center{animation-name:Toastify__bounceInUp}.Toastify__bounce-exit--bottom-left,.Toastify__bounce-exit--top-left{animation-name:Toastify__bounceOutLeft}.Toastify__bounce-exit--bottom-right,.Toastify__bounce-exit--top-right{animation-name:Toastify__bounceOutRight}.Toastify__bounce-exit--top-center{animation-name:Toastify__bounceOutUp}.Toastify__bounce-exit--bottom-center{animation-name:Toastify__bounceOutDown}@keyframes Toastify__zoomIn{0%{opacity:0;transform:scale3d(.3,.3,.3)}50%{opacity:1}}@keyframes Toastify__zoomOut{0%{opacity:1}50%{opacity:0;transform:translate3d(0,var(--y),0) scale3d(.3,.3,.3)}to{opacity:0}}.Toastify__zoom-enter{animation-name:Toastify__zoomIn}.Toastify__zoom-exit{animation-name:Toastify__zoomOut}@keyframes Toastify__flipIn{0%{animation-timing-function:ease-in;opacity:0;transform:perspective(400px) rotateX(90deg)}40%{animation-timing-function:ease-in;transform:perspective(400px) rotateX(-20deg)}60%{opacity:1;transform:perspective(400px) rotateX(10deg)}80%{transform:perspective(400px) rotateX(-5deg)}to{transform:perspective(400px)}}@keyframes Toastify__flipOut{0%{transform:translate3d(0,var(--y),0) perspective(400px)}30%{opacity:1;transform:translate3d(0,var(--y),0) perspective(400px) rotateX(-20deg)}to{opacity:0;transform:translate3d(0,var(--y),0) perspective(400px) rotateX(90deg)}}.Toastify__flip-enter{animation-name:Toastify__flipIn}.Toastify__flip-exit{animation-name:Toastify__flipOut}@keyframes Toastify__slideInRight{0%{transform:translate3d(110%,0,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideInLeft{0%{transform:translate3d(-110%,0,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideInUp{0%{transform:translate3d(0,110%,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideInDown{0%{transform:translate3d(0,-110%,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideOutRight{0%{transform:translate3d(0,var(--y),0)}to{transform:translate3d(110%,var(--y),0);visibility:hidden}}@keyframes Toastify__slideOutLeft{0%{transform:translate3d(0,var(--y),0)}to{transform:translate3d(-110%,var(--y),0);visibility:hidden}}@keyframes Toastify__slideOutDown{0%{transform:translate3d(0,var(--y),0)}to{transform:translate3d(0,500px,0);visibility:hidden}}@keyframes Toastify__slideOutUp{0%{transform:translate3d(0,var(--y),0)}to{transform:translate3d(0,-500px,0);visibility:hidden}}.Toastify__slide-enter--bottom-left,.Toastify__slide-enter--top-left{animation-name:Toastify__slideInLeft}.Toastify__slide-enter--bottom-right,.Toastify__slide-enter--top-right{animation-name:Toastify__slideInRight}.Toastify__slide-enter--top-center{animation-name:Toastify__slideInDown}.Toastify__slide-enter--bottom-center{animation-name:Toastify__slideInUp}.Toastify__slide-exit--bottom-left,.Toastify__slide-exit--top-left{animation-duration:.3s;animation-name:Toastify__slideOutLeft;animation-timing-function:ease-in}.Toastify__slide-exit--bottom-right,.Toastify__slide-exit--top-right{animation-duration:.3s;animation-name:Toastify__slideOutRight;animation-timing-function:ease-in}.Toastify__slide-exit--top-center{animation-duration:.3s;animation-name:Toastify__slideOutUp;animation-timing-function:ease-in}.Toastify__slide-exit--bottom-center{animation-duration:.3s;animation-name:Toastify__slideOutDown;animation-timing-function:ease-in}@keyframes Toastify__spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.sidebar{background:linear-gradient(180deg,#50cada,#3ca2aa);box-shadow:4px 0 24px #0000001f;display:flex;flex-direction:column;height:100vh;left:0;overflow-x:hidden;overflow-y:auto;padding:0;position:fixed;top:0;transition:width .3s cubic-bezier(.4,0,.2,1),transform .4s cubic-bezier(.4,0,.2,1);width:280px;z-index:1000}.sidebar.collapsed{width:80px}@media (max-width:1399px) and (min-width:1280px){.sidebar{width:280px}.sidebar.collapsed{width:75px}.toplogo{height:36px}.logo{padding:20px}.nav-menu ul li a,.nav-menu ul li button{font-size:14px;margin:0 7px;padding:12px 14px}.sidebar.collapsed .nav-menu ul li a,.sidebar.collapsed .nav-menu ul li button{margin:0 3px;padding:12px}.nav-menu ul li a svg,.nav-menu ul li button svg{font-size:16.5px;height:17.5px;margin-right:11px;width:17.5px}.sidebar.collapsed .nav-menu ul li a svg,.sidebar.collapsed .nav-menu ul li button svg{font-size:19px;height:21px;margin-right:0;width:21px}.nav-menu{padding:14px 10px}.collapse-toggle{font-size:13.5px;height:38px;margin:14px auto 18px;min-width:38px;padding:0 12px}.collapse-toggle span{font-size:12.5px}.sidebar.collapsed .collapse-toggle{height:38px;margin:11px auto 15px;min-width:38px;padding:0;width:38px}.sidebar.collapsed .collapse-toggle span{display:none}}.sidebar::-webkit-scrollbar{width:6px}.sidebar::-webkit-scrollbar-track{background:#ffffff1a}.sidebar::-webkit-scrollbar-thumb{background:#ffffff4d;border-radius:3px}.sidebar::-webkit-scrollbar-thumb:hover{background:#ffffff80}.toplogo{filter:drop-shadow(0 2px 8px rgba(0,0,0,.1));height:40px;transition:transform .3s ease}.sidebar-header{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff0d;border-bottom:1px solid #ffffff26;display:flex;justify-content:center;padding:28px 24px;position:relative}.sidebar.collapsed .sidebar-header{padding:28px 16px}.logo{text-align:center;transition:opacity .3s ease;width:100%}.sidebar.collapsed .logo{opacity:0;overflow:hidden;width:0}.collapse-toggle{align-items:center;align-self:center;background:#ffffff26;border:none;border-radius:10px;color:#fff;cursor:pointer;display:flex;flex-shrink:0;font-size:14px;font-weight:500;gap:8px;height:40px;justify-content:center;margin:16px auto 20px;min-width:40px;padding:0 12px;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1);white-space:nowrap}.collapse-toggle span{font-size:13px;font-weight:500;letter-spacing:.01em}.collapse-toggle:before{background:#ffffff26;content:"";height:1px;left:50%;position:absolute;top:-16px;transform:translateX(-50%);width:calc(100% - 32px)}.sidebar.collapsed .collapse-toggle{gap:0;height:36px;margin:12px auto 16px;min-width:36px;padding:0;width:36px}.sidebar.collapsed .collapse-toggle span{display:none}.sidebar.collapsed .collapse-toggle:before{top:-12px;width:calc(100% - 16px)}.collapse-toggle:hover{background:#ffffff40;transform:scale(1.1)}.collapse-toggle:active{transform:scale(.95)}@media (max-width:767px){.collapse-toggle{display:none!important}.sidebar.collapsed{max-width:320px;width:100vw}.sidebar.collapsed .logo{opacity:1;width:100%}.sidebar.collapsed .nav-menu ul li a span,.sidebar.collapsed .nav-menu ul li button span{display:inline}.sidebar.collapsed .nav-menu ul li a,.sidebar.collapsed .nav-menu ul li button{justify-content:flex-start;margin:0 8px;padding:14px 16px}.sidebar.collapsed .nav-menu ul li a svg,.sidebar.collapsed .nav-menu ul li button svg{font-size:18px;height:20px;margin-right:14px;width:20px}.sidebar.collapsed .logout-btn{justify-content:flex-start;margin:8px;padding:14px 16px;width:calc(100% - 16px)}}.nav-menu{flex:1 1;padding:16px 12px}.nav-menu ul{display:flex;flex-direction:column;gap:4px;list-style:none;margin:0;padding:0}.nav-menu ul li{margin:0}.nav-menu ul li a,.nav-menu ul li button{align-items:center;border-radius:12px;color:#fffffff2;display:flex;font-size:15px;font-weight:500;letter-spacing:.01em;margin:0 8px;overflow:hidden;padding:14px 16px;position:relative;text-decoration:none;transition:all .3s cubic-bezier(.4,0,.2,1);white-space:nowrap}.sidebar.collapsed .nav-menu ul li a,.sidebar.collapsed .nav-menu ul li button{justify-content:center;margin:0 4px;padding:14px}.sidebar.collapsed .nav-menu ul li a span,.sidebar.collapsed .nav-menu ul li button span{display:none}.nav-menu ul li a:before,.nav-menu ul li button:before{background:#ffffffe6;border-radius:0 4px 4px 0;content:"";height:100%;left:0;position:absolute;top:0;transform:scaleY(0);transition:transform .3s cubic-bezier(.4,0,.2,1);width:4px}.nav-menu ul li a svg,.nav-menu ul li button svg{align-items:center;display:flex;flex-shrink:0;font-size:18px;height:20px;justify-content:center;margin-right:14px;transition:transform .3s ease,margin .3s ease;width:20px}.sidebar.collapsed .nav-menu ul li a svg,.sidebar.collapsed .nav-menu ul li button svg{font-size:20px;height:24px;margin-right:0;width:24px}.nav-menu ul li a:hover,.nav-menu ul li button:hover{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff26;color:#fff;transform:translateX(4px)}.sidebar.collapsed .nav-menu ul li a:hover,.sidebar.collapsed .nav-menu ul li button:hover{transform:scale(1.1)}.nav-menu ul li a:hover:before,.nav-menu ul li button:hover:before{transform:scaleY(1)}.nav-menu ul li a:hover svg,.nav-menu ul li button:hover svg{transform:scale(1.1)}.nav-menu ul li a.active{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff3;box-shadow:0 4px 12px #00000026;color:#fff;font-weight:600}.nav-menu ul li a.active:before{transform:scaleY(1)}.nav-menu ul li a.active svg{filter:drop-shadow(0 2px 4px rgba(0,0,0,.2));transform:scale(1.1)}.logout-btn{align-items:center;background:none;border:none;border-radius:12px;border-top:1px solid #ffffff26;color:#fffffff2;cursor:pointer;display:flex;font-size:15px;font-weight:500;letter-spacing:.01em;margin:auto 8px 8px;overflow:hidden;padding:14px 16px;position:relative;text-align:left;text-decoration:none;transition:all .3s cubic-bezier(.4,0,.2,1);white-space:nowrap;width:calc(100% - 16px)}.sidebar.collapsed .logout-btn{justify-content:center;margin:8px 4px;padding:14px;width:calc(100% - 8px)}.logout-btn:before{background:#ffffffe6;border-radius:0 4px 4px 0;content:"";height:100%;left:0;position:absolute;top:0;transform:scaleY(0);transition:transform .3s cubic-bezier(.4,0,.2,1);width:4px}.logout-btn svg{align-items:center;display:flex;flex-shrink:0;font-size:18px;height:20px;justify-content:center;margin-right:14px;transition:transform .3s ease;width:20px}.logout-btn:hover{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ef444433;color:#fff;transform:translateX(4px)}.logout-btn:hover:before{background:#ef4444e6;transform:scaleY(1)}.logout-btn:hover svg{transform:scale(1.1) rotate(-5deg)}.mobile-menu-toggle{align-items:center;background:linear-gradient(135deg,#50cada,#3ca2aa);border:none;border-radius:12px;box-shadow:0 4px 12px #50cada66,0 2px 6px #0003;color:#fff;cursor:pointer;display:none;font-size:20px;height:44px;justify-content:center;left:16px;padding:12px;position:fixed;top:16px;transition:all .3s cubic-bezier(.4,0,.2,1);width:44px;z-index:1001}.mobile-menu-toggle:hover{background:linear-gradient(135deg,#3ca2aa,#50cada);box-shadow:0 6px 16px #50cada80,0 4px 8px #00000040;transform:scale(1.05)}.mobile-menu-toggle:active{transform:scale(.95)}@media (min-width:768px){.mobile-menu-toggle{display:none!important}}.logout-modal-header h3{color:#1a202c;font-size:1.5rem;font-weight:700;margin:0 0 1rem;text-align:center}.logout-modal-body p{color:#64748b;font-size:1rem;line-height:1.6;margin:0;text-align:center}.cancel-btn,.confirm-btn{border:none;border-radius:12px;cursor:pointer;font-size:.9rem;font-weight:600;min-width:100px;padding:.75rem 1.5rem;transition:all .3s ease}.cancel-btn{background:#f1f5f9;border:1px solid #e2e8f0;color:#64748b}.cancel-btn:hover{background:#e2e8f0;color:#475569;transform:translateY(-1px)}.confirm-btn{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff}.confirm-btn:hover{background:linear-gradient(135deg,#dc2626,#b91c1c);box-shadow:0 4px 12px #ef44444d;transform:translateY(-1px)}@media (min-width:1400px){.sidebar{width:320px}.toplogo{height:42px}.logo{padding:20px}.nav-menu ul li a,.nav-menu ul li button{font-size:15.5px;padding:15px 18px}.nav-menu{padding:20px 14px}}@media (max-width:1399px) and (min-width:1200px){.sidebar{width:285px}.toplogo{height:38px}.logo{padding:28px 24px}.nav-menu ul li a,.nav-menu ul li button{font-size:15px;padding:14px 16px}}@media (max-width:1199px) and (min-width:992px){.sidebar{width:260px}.sidebar.collapsed{width:70px}.toplogo{height:34px}.logo{padding:22px 18px}.sidebar-header{min-height:76px;padding:24px 20px}.nav-menu ul li a,.nav-menu ul li button{font-size:13.5px;margin:0 6px;padding:11px 12px}.sidebar.collapsed .nav-menu ul li a,.sidebar.collapsed .nav-menu ul li button{margin:0 3px;padding:12px}.nav-menu ul li a svg,.nav-menu ul li button svg{font-size:16px;height:17px;margin-right:10px;width:17px}.sidebar.collapsed .nav-menu ul li a svg,.sidebar.collapsed .nav-menu ul li button svg{font-size:18px;height:20px;margin-right:0;width:20px}.nav-menu{padding:12px 8px}.collapse-toggle{font-size:12.5px;height:36px;margin:12px auto 16px;min-width:36px;padding:0 10px}.collapse-toggle span{font-size:11.5px}.sidebar.collapsed .collapse-toggle{height:36px;margin:10px auto 14px;min-width:36px;padding:0;width:36px}.sidebar.collapsed .collapse-toggle span{display:none}}@media (max-width:991px) and (min-width:768px){.sidebar{width:240px}.sidebar.collapsed{width:65px}.toplogo{height:32px}.logo{padding:20px 16px}.sidebar-header{min-height:72px;padding:22px 18px}.nav-menu ul li a,.nav-menu ul li button{font-size:13px;margin:0 5px;padding:10px 12px}.sidebar.collapsed .nav-menu ul li a,.sidebar.collapsed .nav-menu ul li button{margin:0 2px;padding:11px}.nav-menu ul li a svg,.nav-menu ul li button svg{font-size:15px;height:16px;margin-right:10px;width:16px}.sidebar.collapsed .nav-menu ul li a svg,.sidebar.collapsed .nav-menu ul li button svg{font-size:17px;height:19px;margin-right:0;width:19px}.nav-menu{padding:10px 6px}.logout-btn{font-size:13px;padding:10px 12px}.sidebar.collapsed .logout-btn{margin:8px 2px;padding:11px;width:calc(100% - 4px)}.collapse-toggle{font-size:12px;height:34px;margin:12px auto 16px;min-width:34px;padding:0 8px}.collapse-toggle span{font-size:11px}.sidebar.collapsed .collapse-toggle{height:34px;margin:10px auto 12px;min-width:34px;padding:0;width:34px}.sidebar.collapsed .collapse-toggle span{display:none}}@media (max-width:767px) and (min-width:576px){.sidebar{box-shadow:4px 0 32px #00000040;transform:translateX(-100%);z-index:1002}.sidebar,.sidebar.collapsed{max-width:85vw;width:320px}.sidebar.open{animation:slideInLeft .4s cubic-bezier(.4,0,.2,1)}.sidebar.collapsed.open,.sidebar.open{transform:translateX(0)}@keyframes slideInLeft{0%{transform:translateX(-100%)}to{transform:translateX(0)}}.mobile-menu-toggle{display:flex}.toplogo{height:32px}.logo{padding:24px 20px}.sidebar.collapsed .logo{opacity:1;width:100%}.nav-menu ul li a,.nav-menu ul li button{font-size:15px;margin:0 8px;padding:14px 16px}.sidebar.collapsed .nav-menu ul li a,.sidebar.collapsed .nav-menu ul li button{justify-content:flex-start;margin:0 8px;padding:14px 16px}.nav-menu ul li a svg,.nav-menu ul li button svg,.sidebar.collapsed .nav-menu ul li a svg,.sidebar.collapsed .nav-menu ul li button svg{font-size:18px;height:20px;margin-right:14px;width:20px}.sidebar.collapsed .nav-menu ul li a span,.sidebar.collapsed .nav-menu ul li button span{display:inline}.nav-menu{padding:16px 12px}.sidebar.collapsed .logout-btn{justify-content:flex-start;margin:8px;padding:14px 16px;width:calc(100% - 16px)}}@media (max-width:575px){.sidebar{box-shadow:4px 0 32px #00000040;transform:translateX(-100%);z-index:1002}.sidebar,.sidebar.collapsed{max-width:320px;width:100vw}.sidebar.open{animation:slideInLeft .4s cubic-bezier(.4,0,.2,1)}.sidebar.collapsed.open,.sidebar.open{transform:translateX(0)}.mobile-menu-toggle{display:flex;font-size:18px;height:40px;left:12px;padding:10px;top:12px;width:40px}.toplogo{height:30px}.logo{padding:20px 16px}.sidebar.collapsed .logo{opacity:1;width:100%}.nav-menu ul li a,.nav-menu ul li button{font-size:14.5px;margin:0 6px;padding:12px 14px}.sidebar.collapsed .nav-menu ul li a,.sidebar.collapsed .nav-menu ul li button{justify-content:flex-start;margin:0 6px;padding:12px 14px}.nav-menu ul li a svg,.nav-menu ul li button svg,.sidebar.collapsed .nav-menu ul li a svg,.sidebar.collapsed .nav-menu ul li button svg{font-size:17px;height:18px;margin-right:12px;width:18px}.sidebar.collapsed .nav-menu ul li a span,.sidebar.collapsed .nav-menu ul li button span{display:inline}.nav-menu{padding:12px 8px}.logout-btn,.sidebar.collapsed .logout-btn{margin:8px 6px;padding:12px 14px}.sidebar.collapsed .logout-btn{justify-content:flex-start;width:calc(100% - 12px)}}.sidebar-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0009;display:none;height:100vh;left:0;opacity:0;position:fixed;top:0;transition:opacity .3s ease,-webkit-backdrop-filter .3s ease;transition:opacity .3s ease,backdrop-filter .3s ease;transition:opacity .3s ease,backdrop-filter .3s ease,-webkit-backdrop-filter .3s ease;width:100vw;z-index:1001}.sidebar-overlay.active{animation:fadeIn .3s ease;display:block;opacity:1}@media (max-width:767px){.sidebar-overlay.active{display:block}.mobile-menu-toggle{display:flex}}.layout-container{background-color:#f8fafc;display:flex;flex-direction:column;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;height:100vh}.topbar{align-items:center;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#fffffff2;border-bottom:1px solid #0000000f;box-shadow:0 2px 20px #00000014,0 1px 3px #0000000d;box-sizing:border-box;display:flex;height:72px;justify-content:space-between;left:300px;padding:0 28px;position:fixed;top:0;transition:left .3s cubic-bezier(.4,0,.2,1),width .3s cubic-bezier(.4,0,.2,1);width:calc(100vw - 300px);z-index:999}body.sidebar-collapsed .topbar{left:80px;width:calc(100vw - 80px)}.topbar-left,.topbar-right{align-items:center;display:flex;gap:8px}.topbar-icon-link{align-items:center;background:#50cada14;border-radius:12px;color:#64748b;cursor:pointer;display:flex;height:40px;justify-content:center;padding:8px;position:relative;text-decoration:none;transition:all .3s cubic-bezier(.4,0,.2,1);width:40px}.topbar-icon-link:hover{background:#50cada26;color:#50cada;transform:scale(1.1)}.topbar-icon{font-size:20px;height:38px;width:38px}.notifications-container{position:relative}.notification-badge{align-items:center;animation:bounce 1s infinite;background:#ef4444;border:2px solid #fff;border-radius:50%;box-shadow:0 2px 4px #ef44444d;color:#fff;display:flex;font-size:.625rem;font-weight:700;height:18px;justify-content:center;position:absolute;right:-4px;top:-4px;width:18px}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}.notification-dropdown{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border:1px solid #fff3;border-radius:12px;box-shadow:0 20px 40px #00000026;margin-top:.5rem;max-height:70vh;overflow-y:auto;padding:1rem;position:absolute;right:0;top:100%;width:300px;z-index:100}.notification-dropdown::-webkit-scrollbar{width:6px}.notification-dropdown::-webkit-scrollbar-track{background:#f1f5f9;border-radius:3px}.notification-dropdown::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}.notification-dropdown::-webkit-scrollbar-thumb:hover{background:#94a3b8}.notification-title{border-bottom:2px solid #f1f5f9;color:#50cada;font-size:1rem;font-weight:600;margin:0 0 1rem;padding-bottom:.5rem}.notification-item{border-bottom:1px solid #f1f5f9;border-radius:8px;color:#374151;cursor:pointer;font-size:.875rem;padding:.75rem;transition:all .3s ease}.notification-item:hover{background:#f8fafc;color:#50cada}.notification-item:last-child{border-bottom:none}.notification-item h5{color:#1e293b;font-weight:600;margin:0 0 .25rem}.notification-item p{line-height:1.4;margin:0 0 .5rem}.notification-item small{color:#64748b;font-size:.75rem}.no-notifications{color:#64748b;font-style:italic;padding:1rem;text-align:center}.mark-read-button{background:linear-gradient(135deg,#50cada,#3ca2aa);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.875rem;font-weight:600;margin-top:1rem;padding:.75rem 1rem;transition:all .3s ease;width:100%}.mark-read-button:hover{box-shadow:0 4px 12px #50cada4d;transform:translateY(-1px)}.profile-container{align-items:center;display:flex;position:relative}.profile-icon{cursor:pointer;position:relative}.profile-icon svg{align-items:center;background:#50cada14;border-radius:12px;color:#64748b;cursor:pointer;display:flex;height:40px;justify-content:center;padding:8px;transition:all .3s cubic-bezier(.4,0,.2,1);width:40px}.profile-icon svg:hover{background:#50cada26;color:#50cada;transform:scale(1.05)}.profile-image{border:2px solid #50cada33;border-radius:50%;box-shadow:0 2px 8px #0000001a;cursor:pointer;height:44px;transition:all .3s ease;width:44px}.profile-image:hover{border-color:#50cada;box-shadow:0 4px 12px #50cada4d;transform:scale(1.05)}.profile-dropdown{animation:slideDown .3s cubic-bezier(.4,0,.2,1);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#fffffffa;border:1px solid #0000000f;border-radius:10px;box-shadow:0 8px 32px #0000001f,0 2px 8px #00000014;overflow:hidden;position:absolute;right:0;top:calc(100% + 12px);width:200px;z-index:1000}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.profile-dropdown-list{list-style:none;margin:0;padding:8px}.profile-dropdown-list li{border-radius:12px;margin:2px 0;overflow:hidden;padding:10px}.profile-dropdown-item{background:#0000;border:none;border-radius:12px;color:#1a202c;cursor:pointer;display:block;font-size:14.5px;font-weight:500;padding:12px 16px;text-align:left;transition:all .2s ease;width:85%}.profile-dropdown-item:hover{background:#50cada1a;color:#50cada;transform:translateX(4px)}.profile-dropdown-item:last-child{color:#ef4444}.profile-dropdown-item:last-child:hover{background:#ef44441a;color:#ef4444}.profile-dropdown-item:last-child{border-bottom:none}.main-content{background-color:initial;box-sizing:border-box;height:calc(100vh - 72px);margin-left:300px;margin-right:0;overflow-x:hidden;overflow-y:auto;padding-top:72px;transition:margin-left .3s cubic-bezier(.4,0,.2,1),width .3s cubic-bezier(.4,0,.2,1);width:calc(100vw - 300px)}.content{min-height:calc(100vh - 72px)}.content,.page-content{box-sizing:border-box;overflow:visible;padding:0}.logout-modal-overlay{align-items:center;animation:fadeIn .3s ease-out;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#00000080;display:flex;height:100%;justify-content:center;left:0;position:fixed;top:0;width:100%;z-index:2000}.logout-modal{animation:slideIn .3s ease-out;background:#fff;border-radius:20px;box-shadow:0 25px 50px #00000040;max-width:400px;padding:2rem;width:90%}.logout-modal-header{margin-bottom:1.5rem;text-align:center}.logout-title{color:#1e293b;font-size:1.5rem;font-weight:700;margin:0}.logout-modal-body{margin-bottom:2rem}.logout-message{color:#64748b;font-size:1rem;line-height:1.6;margin:0;text-align:center}.logout-modal-actions{display:flex;gap:1rem;justify-content:center}.cancel-button{background:#f1f5f9;border:1px solid #e2e8f0;border-radius:12px;color:#64748b;cursor:pointer;font-size:.9rem;font-weight:600;min-width:100px;padding:.75rem 1.5rem;transition:all .3s ease}.cancel-button:hover{background:#e2e8f0;color:#475569;transform:translateY(-1px)}.logout-button{background:linear-gradient(135deg,#ef4444,#dc2626);border:none;border-radius:12px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:600;min-width:100px;padding:.75rem 1.5rem;transition:all .3s ease}.logout-button:hover{background:linear-gradient(135deg,#dc2626,#b91c1c);box-shadow:0 4px 12px #ef44444d;transform:translateY(-1px)}@keyframes slideIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.font-icon{vertical-align:middle}.font-icon-big{height:30px;margin:5px;width:30px}body.sidebar-collapsed .main-content{margin-left:80px;width:calc(100vw - 80px)}body,html{overflow-x:hidden}@media (min-width:1400px){.main-content{height:100vh;margin-left:320px;margin-right:0;padding-top:76px;width:calc(100vw - 320px)}.page-content{padding-left:28px;padding-right:10px}body.sidebar-collapsed .main-content{margin-left:80px;width:calc(100vw - 80px)}.topbar{height:76px;left:320px;padding:0 25px;width:calc(100vw - 339px)}body.sidebar-collapsed .topbar{left:80px;width:calc(100vw - 80px)}.topbar-icon-link{height:44px;width:44px}.topbar-icon{font-size:22px}.profile-icon svg{height:48px;width:48px}}@media (max-width:1279px) and (min-width:1200px){.main-content{height:calc(100vh - 72px);margin-left:300px;margin-right:0;padding-top:72px;width:calc(100vw - 300px)}.page-content{padding-left:24px}body.sidebar-collapsed .main-content{margin-left:80px;width:calc(100vw - 80px)}.topbar{height:72px;left:300px;padding:0 28px;width:calc(100vw - 300px)}body.sidebar-collapsed .topbar{left:80px;width:calc(100vw - 80px)}}@media (max-width:1399px) and (min-width:1280px){.main-content{height:calc(100vh - 72px);margin-left:280px;margin-right:0;padding-top:72px;width:calc(100vw - 280px)}.page-content{padding-left:20px}body.sidebar-collapsed .main-content{margin-left:75px;width:calc(100vw - 75px)}.topbar{height:72px;left:280px;padding:0 26px;width:calc(100vw - 280px)}body.sidebar-collapsed .topbar{left:75px;width:calc(100vw - 75px)}.topbar-icon-link{height:38px;width:38px}.topbar-icon{font-size:19px}.profile-icon svg{height:40px;width:40px}}@media (max-width:1199px) and (min-width:992px){.main-content{height:calc(100vh - 68px);margin-left:260px;margin-right:0;padding-top:68px;width:calc(100vw - 260px)}.page-content{padding-left:18px}body.sidebar-collapsed .main-content{margin-left:70px;width:calc(100vw - 70px)}.topbar{height:68px;left:260px;padding:0 24px;width:calc(100vw - 260px)}body.sidebar-collapsed .topbar{left:70px;width:calc(100vw - 70px)}.topbar-icon-link{height:36px;width:36px}.topbar-icon{font-size:18px}.profile-icon svg{height:38px;width:38px}}@media (max-width:991px) and (min-width:768px){.main-content{height:calc(100vh - 68px);margin-left:240px;margin-right:0;padding-top:68px;width:calc(100vw - 240px)}.page-content{padding-left:16px}body.sidebar-collapsed .main-content{margin-left:65px;width:calc(100vw - 65px)}.topbar{height:68px;left:240px;padding:0 20px;width:calc(100vw - 240px)}body.sidebar-collapsed .topbar{left:65px;width:calc(100vw - 65px)}.topbar-icon-link{height:34px;width:34px}.topbar-icon{font-size:17px}.profile-icon svg{height:36px;width:36px}}@media (max-width:767px) and (min-width:576px){.main-content{height:calc(100vh - 64px);margin-left:0;margin-right:0;padding-top:64px;width:100vw}.page-content{padding-left:12px}body.sidebar-collapsed .main-content{margin-left:0;width:100vw}.topbar{height:64px;padding:0 16px}.topbar,body.sidebar-collapsed .topbar{left:0!important;width:100vw!important}.topbar-left,.topbar-right{gap:6px}.topbar-icon-link{height:36px;padding:8px;width:36px}.topbar-icon{font-size:18px}.profile-icon svg,.profile-image{height:36px;width:36px}}@media (max-width:575px){.main-content{height:calc(100vh - 60px);margin-left:0;margin-right:0;padding-top:60px;width:100vw}.page-content{padding-left:10px}body.sidebar-collapsed .main-content{margin-left:0;width:100vw}.topbar{height:60px;padding:0 12px}.topbar,body.sidebar-collapsed .topbar{left:0!important;width:100vw!important}.topbar-left,.topbar-right{gap:4px}.topbar-icon-link{height:32px;padding:6px;width:32px}.topbar-icon{font-size:16px}.profile-icon svg,.profile-image{height:32px;width:32px}}.dashboard-container{box-sizing:border-box;overflow-x:hidden;padding:20px 0;transition:width .3s cubic-bezier(.4,0,.2,1)}.dashboard-container,body.sidebar-collapsed .dashboard-container{max-width:100%;width:100%}.dashboard-header{animation:fadeInDown .6s ease-out;margin-bottom:15px}.dashboard-header h1{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#1a202c,#2d3748);-webkit-background-clip:text;background-clip:text;color:#1a202c;font-size:2rem;font-weight:700;letter-spacing:-.02em;line-height:1.2;margin-bottom:12px;margin-top:0;text-align:left}.dashboard-header p{color:#64748b;font-size:1.125rem;font-weight:400;line-height:1.6;margin:0}.kpi-row{grid-gap:15px;align-items:start;animation:fadeInUp .6s ease-out .1s both;display:grid;gap:15px;grid-template-columns:repeat(5,1fr);margin-bottom:15px;max-width:100%;width:100%}.kpi-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border:1px solid #fffc;border-radius:20px;box-shadow:0 4px 20px #00000014,0 1px 3px #0000000d;display:flex;flex-direction:column;min-width:0;overflow:hidden;padding:0;position:relative;transition:all .4s cubic-bezier(.4,0,.2,1);width:100%}.kpi-card.clickable{cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.kpi-card.clickable:hover{box-shadow:0 12px 30px #00000026;transform:translateY(-4px)}.kpi-card:before{background:linear-gradient(90deg,#0000,currentColor,#0000);content:"";height:5px;left:0;opacity:.8;position:absolute;right:0;top:0}.kpi-card:first-child{--card-color:#50cada;--card-gradient:linear-gradient(135deg,#50cada,#3ca2aa);--card-bg:linear-gradient(135deg,#50cada1a,#3ca2aa0d)}.kpi-card:nth-child(2){--card-color:#3b82f6;--card-gradient:linear-gradient(135deg,#3b82f6,#2563eb);--card-bg:linear-gradient(135deg,#3b82f61a,#2563eb0d)}.kpi-card:nth-child(3){--card-color:#ff9800;--card-gradient:linear-gradient(135deg,#ff9800,#f57c00);--card-bg:linear-gradient(135deg,#ff98001a,#f57c000d)}.kpi-card:nth-child(4){--card-color:#4caf50;--card-gradient:linear-gradient(135deg,#4caf50,#388e3c);--card-bg:linear-gradient(135deg,#4caf501a,#388e3c0d)}.kpi-card:nth-child(5){--card-color:#10b981;--card-gradient:linear-gradient(135deg,#10b981,#059669);--card-bg:linear-gradient(135deg,#10b9811a,#0596690d)}.kpi-card:nth-child(6){--card-color:#9c27b0;--card-gradient:linear-gradient(135deg,#9c27b0,#7b1fa2);--card-bg:linear-gradient(135deg,#9c27b01a,#7b1fa20d)}.kpi-card-rejected{--card-color:#ef4444;--card-gradient:linear-gradient(135deg,#ef4444,#dc2626);--card-bg:linear-gradient(135deg,#ef44441a,#dc26260d);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border:1px solid #fffc;border-radius:20px;box-shadow:0 4px 20px #00000014,0 1px 3px #0000000d;display:flex;flex-direction:column;height:100%;min-width:0;overflow:hidden;padding:0;position:relative;transition:all .4s cubic-bezier(.4,0,.2,1);width:100%}.kpi-card-rejected.clickable{cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.kpi-card-rejected.clickable:hover{box-shadow:0 12px 30px #ef444433;transform:translateY(-4px)}.kpi-card-rejected:before{background:var(--card-gradient);content:"";height:5px;left:0;opacity:.8;position:absolute;right:0;top:0}.kpi-card-rejected:hover{border-color:#fff;box-shadow:0 12px 40px #ef444426,0 4px 12px #0000001a;transform:translateY(-8px) scale(1.02)}.kpi-card-rejected:after{background:var(--card-bg);border-radius:50%;content:"";height:200%;opacity:0;pointer-events:none;position:absolute;right:-50%;top:-50%;transition:opacity .4s ease;width:200%}.kpi-card-rejected:hover:after{opacity:1}.kpi-icon-rejected{align-items:center;background:var(--card-bg);border-radius:14px;box-shadow:0 4px 12px #00000014;color:var(--card-color);display:flex;font-size:1.25rem;height:48px;justify-content:center;position:relative;transition:all .3s ease;width:48px;z-index:1}.kpi-card-rejected:hover .kpi-icon-rejected{box-shadow:0 6px 20px #ef444426;transform:scale(1.1)}.kpi-card:before{background:var(--card-gradient)}.kpi-card:hover{border-color:#fff;box-shadow:0 12px 40px #00000026,0 4px 12px #0000001a;transform:translateY(-8px) scale(1.02)}.kpi-card:after{background:var(--card-bg);border-radius:50%;content:"";height:200%;opacity:0;pointer-events:none;position:absolute;right:-50%;top:-50%;transition:opacity .4s ease;width:200%}.kpi-card:hover:after{opacity:1}.kpi-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:20px;padding:24px 28px 0;position:relative;z-index:1}.kpi-title{color:#64748b;font-size:.875rem;font-weight:600;letter-spacing:.05em;line-height:1.4;margin:0;text-transform:uppercase}.kpi-icon{align-items:center;background:var(--card-bg);border-radius:14px;box-shadow:0 4px 12px #00000014;color:var(--card-color);display:flex;font-size:1.25rem;height:48px;justify-content:center;position:relative;transition:all .3s ease;width:48px;z-index:1}.kpi-card:hover .kpi-icon{box-shadow:0 6px 20px #00000026;transform:scale(1.1)}.kpi-content{align-items:flex-end;display:flex;justify-content:space-between;padding:0 28px 28px;position:relative;z-index:1}.kpi-value{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#1a202c,#2d3748);-webkit-background-clip:text;background-clip:text;color:#1a202c;font-size:2.1rem;font-weight:700;letter-spacing:-.02em;line-height:1;margin:0}.kpi-change{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff9;border-radius:12px;display:flex;font-size:.875rem;font-weight:600;gap:6px;padding:6px 12px;transition:all .3s ease}.kpi-card:hover .kpi-change{background:#ffffffe6;transform:scale(1.05)}.kpi-change.positive{color:#10b981}.kpi-change.negative{color:#ef4444}.change-arrow{font-size:.75rem;font-weight:700}.charts-row{grid-gap:24px;animation:fadeInUp .6s ease-out .2s both;display:grid;gap:24px;grid-template-columns:1fr 1fr;margin-bottom:40px}.chart-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border:1px solid #fffc;border-radius:20px;box-shadow:0 4px 20px #00000014,0 1px 3px #0000000d;padding:32px;transition:all .4s cubic-bezier(.4,0,.2,1)}.chart-card:hover{box-shadow:0 12px 40px #0000001f,0 4px 12px #00000014;transform:translateY(-4px)}.chart-header{align-items:flex-start;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;margin-bottom:32px}.chart-title-section h3{color:#1a202c;font-size:1.5rem;font-weight:700;letter-spacing:-.01em;line-height:1.3;margin:0 0 8px}.chart-title-section p{color:#64748b;font-size:.9375rem;font-weight:400;line-height:1.5;margin:0}.chart-content{justify-content:center;min-height:320px}.chart-content,.chart-data{align-items:center;display:flex;flex-direction:column}.chart-data{gap:16px;text-align:center}.chart-icon{align-items:center;background:linear-gradient(135deg,#50cada1a,#3ca2aa0d);border-radius:20px;color:#50cada;display:flex;font-size:2rem;height:80px;justify-content:center;margin-bottom:8px;width:80px}.chart-data p{color:#64748b;font-size:1.125rem;font-weight:500;line-height:1.6;margin:0}.chart-data p strong{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#50cada,#3ca2aa);-webkit-background-clip:text;background-clip:text;color:#1a202c;font-size:1.5rem;font-weight:700}.chart-placeholder{align-items:center;color:#94a3b8;display:flex;flex-direction:column;gap:16px;text-align:center}.placeholder-icon{color:#cbd5e1;font-size:4rem;opacity:.6}.chart-placeholder p{color:#94a3b8;font-size:1rem;font-weight:500;margin:0}.donut-chart{align-items:center;display:flex;flex-direction:column;margin-bottom:32px;position:relative}.donut-chart-svg{filter:drop-shadow(0 4px 12px rgba(0,0,0,.08));margin-bottom:32px;transition:transform .3s ease}.donut-chart:hover .donut-chart-svg{transform:scale(1.05)}.chart-legend{display:flex;flex-direction:row;gap:16px;justify-content:center;max-width:200px;width:100%}.legend-item{align-items:center;background:#f5f7fa99;border-radius:10px;cursor:pointer;display:flex;gap:12px;padding:8px 12px;transition:all .3s ease}.legend-item:hover{background:#f5f7fae6;transform:translateX(4px)}.legend-color{border-radius:4px;box-shadow:0 2px 8px #00000026;flex-shrink:0;height:16px;width:16px}.legend-item span{color:#475569;font-size:.9375rem;font-weight:500}.content-section{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border:1px solid #fffc;border-radius:20px;box-shadow:0 4px 20px #00000014,0 1px 3px #0000000d;margin-bottom:24px;padding:32px;transition:all .4s cubic-bezier(.4,0,.2,1)}.content-section:hover{box-shadow:0 12px 40px #0000001f,0 4px 12px #00000014;transform:translateY(-4px)}.content-section-header{align-items:center;border-bottom:2px solid #f1f5f9;display:flex;margin-bottom:24px;padding-bottom:16px}.content-section-icon{align-items:center;background:linear-gradient(135deg,#50cada,#3ca2aa);border-radius:10px;color:#fff;display:flex;font-size:1rem;height:40px;justify-content:center;margin-right:1rem;width:40px}.content-section-title{color:#1a202c;font-size:1.5rem;font-weight:700;letter-spacing:-.01em;margin:0}.history-list{list-style:none;margin:0;max-height:300px;overflow-y:auto;padding:0}.history-list::-webkit-scrollbar{width:6px}.history-list::-webkit-scrollbar-track{background:#f1f5f9;border-radius:3px}.history-list::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}.history-list::-webkit-scrollbar-thumb:hover{background:#94a3b8}.history-item{background:#f8fafc;border-left:4px solid #50cada;border-radius:12px;margin-bottom:.5rem;padding:1rem;transition:all .3s ease}.history-item:hover{background:#f1f5f9;transform:translateX(5px)}.history-item:last-child{margin-bottom:0}.map-container{border-radius:12px;box-shadow:0 10px 25px #0000001a;height:300px;overflow:hidden}.payment-section{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border:1px solid #fffc;border-radius:20px;box-shadow:0 4px 20px #00000014,0 1px 3px #0000000d;margin-bottom:40px;overflow:hidden;padding:32px;position:relative;text-align:center;transition:all .4s cubic-bezier(.4,0,.2,1)}.payment-section:before{background:linear-gradient(135deg,#9c27b0,#7b1fa2);content:"";height:5px;left:0;position:absolute;right:0;top:0}.payment-section:hover{box-shadow:0 12px 40px #0000001f,0 4px 12px #00000014;transform:translateY(-4px)}.payment-header{margin-bottom:24px}.payment-header,.payment-icon{align-items:center;display:flex;justify-content:center}.payment-icon{background:linear-gradient(135deg,#9c27b0,#7b1fa2);border-radius:12px;color:#fff;font-size:1.2rem;height:50px;margin-right:1rem;width:50px}.payment-title{color:#1a202c;font-size:1.5rem;font-weight:700;letter-spacing:-.01em;margin:0}.payment-amount{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#9c27b0,#7b1fa2);-webkit-background-clip:text;background-clip:text;color:#1a202c;font-size:3rem;font-weight:700;margin-bottom:.5rem}.payment-description{color:#64748b;font-size:1rem;font-weight:400;margin:0}.loading-spinner{align-items:center;color:#64748b;display:flex;font-size:1rem;gap:.5rem;justify-content:center;padding:2rem}.error-message{background:#ef44441a;border:1px solid #ef44444d;border-radius:12px;color:#dc2626;font-size:.9rem;padding:1rem;text-align:center}.empty-state{color:#64748b;font-size:1rem;padding:2rem}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@media (min-width:1400px){.kpi-row{gap:15px;grid-template-columns:repeat(5,1fr)}.chart-card{padding:36px}}@media (max-width:1399px) and (min-width:1200px){.kpi-row{gap:15px;grid-template-columns:repeat(5,1fr)}.chart-card{padding:32px}}@media (max-width:1199px) and (min-width:992px){.kpi-row{gap:18px;grid-template-columns:repeat(3,1fr)}.charts-row{gap:20px;grid-template-columns:1fr}.chart-card{padding:28px}.kpi-value{font-size:1.9rem}}@media (max-width:991px) and (min-width:768px){.kpi-row{gap:16px;grid-template-columns:repeat(3,1fr)}.kpi-header{padding:20px 24px 0}.kpi-content{padding:0 24px 24px}.kpi-value{font-size:1.75rem}.kpi-icon,.kpi-icon-rejected{font-size:1.1rem;height:40px;width:40px}.chart-card{padding:24px}.chart-content{min-height:280px}}@media (max-width:767px) and (min-width:576px){.dashboard-header{margin-bottom:32px}.dashboard-header h1{font-size:1.875rem}.dashboard-header p{font-size:.9375rem}.kpi-row{gap:14px;grid-template-columns:repeat(2,1fr);margin-bottom:32px}.kpi-header{padding:18px 20px 0}.kpi-content{padding:0 20px 20px}.kpi-value{font-size:1.5rem}.kpi-icon,.kpi-icon-rejected{font-size:1rem;height:40px;width:40px}.chart-card{padding:20px}.chart-content{min-height:240px}.chart-header{margin-bottom:24px}}@media (max-width:575px){.dashboard-header{margin-bottom:15px}.dashboard-header h1{font-size:1.75rem}.dashboard-header p{font-size:.875rem}.kpi-row{gap:12px;grid-template-columns:1fr;margin-bottom:28px}.kpi-header{padding:16px 18px 0}.kpi-content{padding:0 18px 18px}.kpi-value{font-size:1.5rem}.kpi-icon,.kpi-icon-rejected{font-size:1.1rem;height:44px;width:44px}.chart-card{padding:20px}.chart-content{min-height:220px}.chart-header{margin-bottom:20px}.chart-title-section h3{font-size:1.25rem}.donut-chart-svg svg{height:160px;width:160px}.payment-amount{font-size:2rem}}.kpi-modal-overlay{align-items:center;animation:fadeIn .3s ease-out;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0009;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.kpi-modal-content{animation:slideUp .3s ease-out;background:#fff;border-radius:20px;box-shadow:0 20px 60px #0000004d;display:flex;flex-direction:column;max-height:90vh;max-width:1200px;overflow:hidden;width:100%}.kpi-modal-header{align-items:flex-start;background:#f8fafc;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;padding:24px 28px}.kpi-modal-title-section h2{color:#1a202c;font-size:1.5rem;font-weight:700;margin:0 0 8px}.kpi-modal-title-section p{color:#64748b;font-size:.875rem;margin:0}.kpi-modal-close-btn{align-items:center;background:#0000;border:none;border-radius:8px;color:#64748b;cursor:pointer;display:flex;font-size:1.5rem;justify-content:center;padding:8px;transition:all .2s ease}.kpi-modal-close-btn:hover{background:#e2e8f0;color:#1a202c}.kpi-modal-body{flex:1 1;overflow-y:auto;padding:24px 28px}.kpi-modal-body .appointments-table-wrapper{overflow-x:auto}.kpi-modal-body .appointments-table{border-collapse:collapse;width:100%}.kpi-modal-body .appointments-table thead{background:#f8fafc;border-bottom:2px solid #e2e8f0}.kpi-modal-body .appointments-table th{color:#64748b;font-size:.75rem;font-weight:600;letter-spacing:.05em;padding:16px;text-align:left;text-transform:uppercase;white-space:nowrap}.kpi-modal-body .appointments-table tbody tr{border-bottom:1px solid #f1f5f9;transition:all .15s ease}.kpi-modal-body .appointments-table tbody tr:hover{background:#f8fafc}.kpi-modal-body .appointments-table td{color:#0f172a;font-size:.9375rem;padding:16px}.kpi-modal-body .appointments-table .hide-mobile{display:table-cell}@media (max-width:768px){.kpi-modal-body .appointments-table .hide-mobile{display:none}}.kpi-modal-body .appointment-id-cell,.kpi-modal-body .date-cell,.kpi-modal-body .practitioner-cell,.kpi-modal-body .time-cell{align-items:center;display:flex;gap:10px}.kpi-modal-body .practitioner-avatar{align-items:center;background:#f1f5f9;border-radius:50%;color:#64748b;display:flex;flex-shrink:0;height:36px;justify-content:center;overflow:hidden;width:36px}.kpi-modal-body .practitioner-avatar img{height:100%;object-fit:cover;width:100%}.kpi-modal-body .status-badge{align-items:center;border-radius:6px;display:inline-flex;font-size:.8125rem;font-weight:500;gap:6px;padding:6px 12px;white-space:nowrap}.kpi-modal-body .status-badge svg{font-size:.75rem}.kpi-modal-body .status-badge-pending{background:#fef2f2;color:#d97706}.kpi-modal-body .status-badge-accepted{background:#eff6ff;color:#028329}.kpi-modal-body .status-badge-cancelled{background:#fef2f2;color:#dc2626}.kpi-modal-body .status-badge-completed{background:#f0fdf4;color:#16a34a}.kpi-modal-body .status-badge-default{background:#f8fafc;color:#0f172a}.kpi-modal-body .appointments-cards-view{display:none}@media (max-width:768px){.kpi-modal-body .appointments-table-wrapper{display:none}.kpi-modal-body .appointments-cards-view{display:block}.kpi-modal-body .appointment-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;margin-bottom:16px;padding:16px;transition:all .15s ease}.kpi-modal-body .appointment-card:hover{box-shadow:0 4px 12px #0000001a}.kpi-modal-body .card-header-section{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.kpi-modal-body .card-id{align-items:center;color:#1a202c;display:flex;font-weight:600;gap:8px}.kpi-modal-body .card-body-section{display:flex;flex-direction:column;gap:16px}.kpi-modal-body .card-participants{display:flex;flex-direction:column;gap:12px}.kpi-modal-body .participant-item{align-items:center;display:flex;gap:12px}.kpi-modal-body .participant-avatar{align-items:center;background:#f1f5f9;border-radius:50%;color:#64748b;display:flex;flex-shrink:0;height:40px;justify-content:center;overflow:hidden;width:40px}.kpi-modal-body .participant-avatar img{height:100%;object-fit:cover;width:100%}.kpi-modal-body .participant-info{flex:1 1}.kpi-modal-body .participant-label{color:#64748b;font-size:.75rem;letter-spacing:.05em;margin-bottom:4px;text-transform:uppercase}.kpi-modal-body .participant-name{color:#1a202c;font-size:.9375rem;font-weight:600}.kpi-modal-body .card-datetime{border-top:1px solid #e2e8f0;display:flex;gap:16px;padding-top:12px}.kpi-modal-body .datetime-item{align-items:center;color:#64748b;display:flex;font-size:.875rem;gap:8px}.kpi-modal-content{max-height:95vh}.kpi-modal-body,.kpi-modal-header{padding:20px}}.kpi-modal-body .empty-appointments-state{padding:60px 20px;text-align:center}.kpi-modal-body .empty-state-icon{color:#cbd5e1;font-size:4rem;margin-bottom:24px}.kpi-modal-body .empty-appointments-state h3{color:#1a202c;font-size:1.25rem;font-weight:600;margin:0 0 8px}.kpi-modal-body .empty-appointments-state p{color:#64748b;font-size:.9375rem;margin:0}.appointment-form-modal-overlay{align-items:center;background:#00000080;display:flex;height:100vh;justify-content:center;left:0;padding:20px;position:fixed;top:0;width:100vw;z-index:1000}.appointment-form-modal-content{background:#fff;border-radius:8px;box-shadow:0 4px 12px #00000026;display:flex;flex-direction:column;max-height:90vh;max-width:700px;overflow:hidden;position:relative;width:100%}.modal-close-btn{background:#0000;border-radius:4px;color:#666;font-size:20px;height:32px;transition:background-color .2s;width:32px}.modal-close-btn:hover{background:#f5f5f5;color:#333}.modal-header{background:#fafafa;border-bottom:1px solid #e0e0e0;padding:12px 50px 12px 20px}.modal-header h2{color:#333;font-size:16px;font-weight:600;margin:0}.practitioner-name{color:#666;font-size:12px;font-weight:400;margin:4px 0 0}.modal-body{background:#fff;max-height:calc(90vh - 80px);overflow-y:auto;padding:16px 20px}.modal-body::-webkit-scrollbar{width:8px}.modal-body::-webkit-scrollbar-track{background:#f5f5f5}.modal-body::-webkit-scrollbar-thumb{background:#ccc;border-radius:4px}.modal-body::-webkit-scrollbar-thumb:hover{background:#999}.form-section{margin-bottom:12px}.form-section:last-child{margin-bottom:0;padding:0 20px}.form-section-title{border-bottom:1px solid #e0e0e0;color:#333;font-size:15px;font-weight:600;margin:0 0 10px;padding-bottom:6px}.field-label{color:#333;font-size:12px;font-weight:600;letter-spacing:.5px;margin:0 0 8px;text-transform:uppercase}.body-chart-section{margin-bottom:12px}.body-chart-container{background:#fafafa;border:1px solid #e0e0e0;border-radius:4px;display:inline-block;padding:8px;position:relative;width:100%}.body-chart-image{display:block;height:auto;max-width:100%;width:100%}.chart-pin{align-items:center;background:#50cada;border:2px solid #fff;border-radius:50%;color:#fff;display:flex;font-size:11px;font-weight:600;height:24px;justify-content:center;position:absolute;transform:translate(-50%,-50%);width:24px;z-index:5}.qa-section{margin-bottom:12px}.qa-list{display:flex;flex-direction:column;gap:8px}.qa-item{background:#fafafa;border:1px solid #e0e0e0;border-radius:4px;padding:10px}.question-row{align-items:flex-start;display:flex;gap:8px;margin-bottom:6px}.question-label{color:#333;font-size:13px;font-weight:600;min-width:35px}.question-text{color:#333;flex:1 1;font-size:13px;line-height:1.5}.answer-row{align-items:flex-start;display:flex;gap:10px;padding-left:45px}.answer-label{color:#666;font-size:13px;font-weight:600;min-width:55px}.answer-text{color:#555;flex:1 1;font-size:13px;line-height:1.5}.answer-text em{color:#999;font-style:italic}.body-points-section{margin-bottom:0;padding-bottom:0}.body-points-list{display:flex;flex-direction:column;gap:8px}.body-point-item{align-items:flex-start;background:#fafafa;border:1px solid #e0e0e0;border-radius:4px;display:flex;gap:8px;padding:8px}.point-label{color:#333;font-size:13px;font-weight:600;min-width:55px}.point-text{color:#555;flex:1 1;font-size:13px;line-height:1.5}.no-data-state{color:#999;padding:30px 20px;text-align:center}.no-data-state p{font-size:13px;margin:0}@media (max-width:768px){.appointment-form-modal-overlay{padding:10px}.appointment-form-modal-content{max-height:95vh}.modal-header{padding:12px 50px 12px 20px}.modal-header h2{font-size:15px}.practitioner-name{font-size:11px}.modal-body{max-height:calc(95vh - 80px);padding:12px 16px}.form-section-title{font-size:14px;margin-bottom:10px}.field-label{font-size:11px;margin-bottom:8px}.body-chart-container,.qa-item{padding:10px}.answer-row,.question-row{flex-direction:column;gap:8px}.answer-row{padding-left:0}.body-point-item{flex-direction:column;gap:8px}}@media (max-width:480px){.appointment-form-modal-overlay{padding:0}.appointment-form-modal-content{border-radius:0;max-height:100vh}.modal-header{padding:16px 20px}.modal-body{max-height:calc(100vh - 80px);padding:12px 16px}.form-section{margin-bottom:12px}}.patient-appointment-details-modal-overlay{align-items:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0000004d;display:flex;height:100vh;justify-content:center;left:0;overflow-y:auto;padding:20px;position:fixed;top:0;width:100vw;z-index:1000}.patient-appointment-details-modal-content{background:linear-gradient(135deg,#fff,#f8fbfc);border:1px solid #50cada1a;border-radius:20px;box-shadow:0 20px 60px #00000026,0 8px 25px #50cada1a;display:flex;flex-direction:column;font-family:Montserrat,sans-serif;max-height:85vh;max-width:700px;min-height:400px;overflow:hidden;padding:0;position:relative;width:100%;z-index:1001}.patient-appointment-details-modal-close-btn{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffe6;border:none;border-radius:50%;box-shadow:0 2px 8px #0000001a;color:#50cada;cursor:pointer;display:flex;font-family:Montserrat,sans-serif;font-size:1.2rem;height:40px;justify-content:center;line-height:1;position:absolute;right:16px;top:16px;transition:all .3s ease;width:40px;z-index:10}.patient-appointment-details-modal-close-btn:hover{background:#fff;box-shadow:0 4px 16px #00000026;color:#1a3c4f;transform:scale(1.1)}.patient-appointment-details-modal-header{align-items:center;background:linear-gradient(135deg,#f8fbfc,#fff);border-bottom:1px solid #50cada1a;display:flex;flex-direction:row;flex-wrap:nowrap;gap:25px;justify-content:flex-start;padding:32px 32px 24px;position:relative;text-align:center}.patient-appointment-details-modal-header-icon-wrapper{margin-bottom:16px}.patient-appointment-details-modal-header-icon{color:#50cada;font-size:3rem;opacity:.8}.patient-appointment-details-modal-header h2{color:#1a3c4f;font-family:Montserrat,sans-serif;font-size:1.8rem;font-weight:700;margin:0 0 8px}.patient-appointment-details-modal-appointment-id{color:#6b7c93;font-family:Montserrat,sans-serif;font-size:.9rem;font-weight:500;margin:0}.patient-appointment-details-modal-body{flex:1 1;overflow-y:auto;padding:24px 32px 32px}.patient-appointment-details-modal-loading-state{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:40px 20px;text-align:center}.patient-appointment-details-modal-loading-spinner{animation:patient-appointment-details-modal-spin 1s linear infinite;border:4px solid #e8f4f8;border-radius:50%;border-top-color:#50cada;height:40px;margin-bottom:20px;width:40px}@keyframes patient-appointment-details-modal-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.patient-appointment-details-modal-loading-state p{color:#6b7c93;font-family:Montserrat,sans-serif;font-size:1rem;margin:0}.patient-appointment-details-modal-error-state{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:40px 20px;text-align:center}.patient-appointment-details-modal-error-icon{font-size:3rem;margin-bottom:16px}.patient-appointment-details-modal-error-message{background:#dc35451a;border:1px solid #dc354533;border-radius:12px;color:#dc3545;font-family:Montserrat,sans-serif;font-size:1rem;margin:0;padding:16px 24px}.patient-appointment-details-modal-no-data-state{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:40px 20px;text-align:center}.patient-appointment-details-modal-no-data-icon{font-size:3rem;margin-bottom:16px;opacity:.6}.patient-appointment-details-modal-no-data-state p{color:#6b7c93;font-family:Montserrat,sans-serif;font-size:1rem;margin:0}.patient-appointment-details-modal-appointment-info{display:flex;flex-direction:column;gap:24px}.patient-appointment-details-modal-status-section{display:flex;justify-content:center;margin-bottom:8px}.patient-appointment-details-modal-status-badge-large{align-items:center;border-radius:30px;box-shadow:0 4px 12px #0000001a;display:inline-flex;font-family:Montserrat,sans-serif;font-size:.95rem;font-weight:700;gap:8px;letter-spacing:.5px;padding:12px 24px;text-transform:uppercase}.patient-appointment-details-modal-status-badge-large svg{font-size:1rem}.patient-appointment-details-modal-info-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr}.patient-appointment-details-modal-info-item{align-items:center;background:linear-gradient(135deg,#f8fbfc,#e3f2fd);border:1px solid #50cada33;border-radius:16px;box-shadow:0 2px 12px #50cada14;display:flex;gap:16px;padding:20px;transition:all .3s ease}.patient-appointment-details-modal-info-item-highlight{background:linear-gradient(135deg,#e3f2fd,#bbdefb);border:1px solid #50cada4d;box-shadow:0 4px 16px #50cada1f}.patient-appointment-details-modal-info-item:hover{box-shadow:0 4px 20px #50cada26;transform:translateY(-2px)}.patient-appointment-details-modal-info-icon{align-items:center;background:linear-gradient(135deg,#50cada,#22c1d6);border-radius:12px;color:#fff;display:flex;flex-shrink:0;font-size:1.2rem;height:50px;justify-content:center;width:50px}.patient-appointment-details-modal-info-content{display:flex;flex:1 1;flex-direction:column;gap:4px}.patient-appointment-details-modal-info-label{color:#6b7c93;font-family:Montserrat,sans-serif;font-size:.8rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.patient-appointment-details-modal-info-value{color:#1a3c4f;font-family:Montserrat,sans-serif;font-size:1.1rem;font-weight:700}.patient-appointment-details-modal-status-badge{border-radius:20px;display:inline-block;font-family:Montserrat,sans-serif;font-size:.8rem;font-weight:600;letter-spacing:.5px;padding:6px 12px;text-transform:uppercase}.patient-appointment-details-modal-status-badge-large.status-confirmed{background:linear-gradient(135deg,#d4edda,#c3e6cb);border:2px solid #c3e6cb;color:#155724}.patient-appointment-details-modal-status-badge-large.status-pending{background:linear-gradient(135deg,#fff3cd,#ffeaa7);border:2px solid #ffeaa7;color:#856404}.patient-appointment-details-modal-status-badge-large.status-cancelled{background:linear-gradient(135deg,#f8d7da,#f5c6cb);border:2px solid #f5c6cb;color:#721c24}.patient-appointment-details-modal-status-badge-large.status-completed{background:linear-gradient(135deg,#d1ecf1,#bee5eb);border:2px solid #bee5eb;color:#0c5460}.patient-appointment-details-modal-status-badge-large.status-default{background:linear-gradient(135deg,#e9ecef,#dee2e6);border:2px solid #dee2e6;color:#495057}.patient-appointment-details-modal-action-section{border-top:1px solid #50cada1a;display:flex;flex-wrap:wrap;gap:12px;justify-content:center;padding-top:24px}.patient-appointment-details-modal-action-btn{align-items:center;border:none;border-radius:12px;cursor:pointer;display:flex;font-family:Montserrat,sans-serif;font-size:16px;font-weight:700;gap:12px;justify-content:center;letter-spacing:.5px;min-width:180px;padding:16px 32px;text-transform:uppercase;transition:all .3s ease}.patient-appointment-details-modal-view-forms-btn{background:linear-gradient(135deg,#50cada,#22c1d6);box-shadow:0 4px 16px #50cada40;color:#fff}.patient-appointment-details-modal-view-forms-btn:hover{background:linear-gradient(135deg,#22c1d6,#50cada);box-shadow:0 6px 24px #50cada59;transform:translateY(-2px)}.patient-appointment-details-modal-view-forms-btn:active{transform:translateY(0)}.patient-appointment-details-modal-video-call-btn{background:linear-gradient(135deg,#28a745,#20c997);box-shadow:0 4px 16px #28a74540;color:#fff}.patient-appointment-details-modal-video-call-btn:hover{background:linear-gradient(135deg,#20c997,#28a745);box-shadow:0 6px 24px #28a74559;transform:translateY(-2px)}.patient-appointment-details-modal-video-call-btn:active{transform:translateY(0)}.patient-appointment-details-modal-video-call-btn svg{font-size:1.1rem}@media (max-width:768px){.patient-appointment-details-modal-overlay{align-items:flex-start;justify-content:flex-start;padding:10px}.patient-appointment-details-modal-content{border-radius:0;display:flex;flex-direction:column;height:100vh;margin:0;max-height:100vh;max-width:100%;overflow:hidden;padding:0;width:100%}.patient-appointment-details-modal-close-btn{background:#ffffffe6;border-radius:50%;box-shadow:0 2px 8px #0003;font-size:20px;height:40px;position:fixed;right:15px;top:15px;width:40px;z-index:1000}.patient-appointment-details-modal-header{border-bottom:1px solid #50cada1a;flex-shrink:0;padding:20px 20px 15px}.patient-appointment-details-modal-header-icon{font-size:2.5rem}.patient-appointment-details-modal-header h2{font-size:1.5rem;margin-bottom:8px}.patient-appointment-details-modal-appointment-id{font-size:.85rem}.patient-appointment-details-modal-status-badge-large{font-size:.85rem;padding:10px 20px}.patient-appointment-details-modal-action-section{flex-direction:column}.patient-appointment-details-modal-action-btn{min-width:auto;width:100%}.patient-appointment-details-modal-body{flex:1 1;overflow-y:auto;padding:20px}.patient-appointment-details-modal-info-grid{gap:16px}.patient-appointment-details-modal-info-item{padding:16px}.patient-appointment-details-modal-info-icon{font-size:1rem;height:40px;width:40px}.patient-appointment-details-modal-info-label{font-size:.75rem}.patient-appointment-details-modal-info-value{font-size:1rem}.patient-appointment-details-modal-view-forms-btn{border-radius:8px;font-size:14px;padding:14px 24px}}@media (max-width:480px){.patient-appointment-details-modal-overlay{padding:0}.patient-appointment-details-modal-content{border-radius:0}.patient-appointment-details-modal-header{padding:15px 15px 10px}.patient-appointment-details-modal-header h2{font-size:1.3rem;margin-bottom:8px}.patient-appointment-details-modal-body{padding:15px}.patient-appointment-details-modal-info-grid{gap:12px}.patient-appointment-details-modal-info-item{padding:12px}.patient-appointment-details-modal-info-icon{font-size:.9rem;height:35px;width:35px}.patient-appointment-details-modal-info-label{font-size:.7rem}.patient-appointment-details-modal-info-value{font-size:.9rem}.patient-appointment-details-modal-view-forms-btn{font-size:13px;padding:12px 20px}}@media (max-width:768px) and (orientation:landscape){.patient-appointment-details-modal-overlay{padding:5px}.patient-appointment-details-modal-content{height:95vh;max-height:95vh}.patient-appointment-details-modal-header{padding:10px 20px}.patient-appointment-details-modal-header h2{font-size:1.2rem;margin-bottom:5px}.patient-appointment-details-modal-body{padding:15px 20px}.patient-appointment-details-modal-info-grid{gap:10px}.patient-appointment-details-modal-info-item{padding:12px 16px}}.patient-appt-page{animation:patient-appt-fadeIn .4s ease-out;background:#0000;box-sizing:border-box;color:#0f172a;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;max-width:100%;overflow-x:hidden;padding:20px 0;width:100%}@keyframes patient-appt-fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.patient-appt-page-header{animation:patient-appt-fadeInDown .5s ease-out;margin-bottom:15px}@keyframes patient-appt-fadeInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.patient-appt-header-content{align-items:flex-start;display:flex;justify-content:space-between}.patient-appt-header-content>div{flex:1 1}.patient-appt-header-content h2{color:#0f172a;font-size:2rem;font-weight:700;letter-spacing:-.02em;line-height:1.2;margin:0 0 8px}.patient-appt-header-content p{color:#64748b;font-size:1.125rem;font-weight:400;line-height:1.6;margin:0}.patient-appt-stats-grid-top{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(6,minmax(190px,1fr));margin-bottom:32px}.patient-appt-stats-text{align-items:center;background-color:#fff;border:1px solid #ddd;border-radius:10px;box-shadow:0 1px 3px 0 #0000001a,0 1px 2px 0 #0000000f;display:flex;flex-wrap:wrap;gap:24px;justify-content:center;margin:10px 0;padding:12px 5px}.patient-appt-stat-item{align-items:center;display:flex;font-size:.9375rem;gap:8px}.patient-appt-stat-label-text{color:#64748b;font-weight:500}.patient-appt-stat-value-text{color:#0f172a;font-size:1rem;font-weight:700}@keyframes patient-appt-fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.patient-appt-stat-card{animation:none!important;border:1px solid #e2e8f0;box-shadow:0 1px 3px 0 #0000001a,0 1px 2px 0 #0000000f;gap:16px;padding:15px;transform:none!important}.patient-appt-stat-card,.patient-appt-stat-icon{align-items:center;border-radius:12px;display:flex;transition:none!important}.patient-appt-stat-icon{border:none!important;box-shadow:none!important;flex-shrink:0;font-size:1.5rem;height:48px;justify-content:center;width:48px}.patient-appt-stat-icon:active,.patient-appt-stat-icon:focus,.patient-appt-stat-icon:hover{border:none!important;box-shadow:none!important;outline:none!important;transform:none!important}.patient-appt-stat-total .patient-appt-stat-icon{background:#f0f9ff;color:#0ea5e9}.patient-appt-stat-pending .patient-appt-stat-icon{background:#fef2f2!important;color:#d18800!important}.patient-appt-stat-today .patient-appt-stat-icon{background:#eff6ff!important;color:#3b82f6!important}.patient-appt-stat-accepted .patient-appt-stat-icon{background:#eff6ff!important;color:#05a500!important}.patient-appt-stat-cancelled .patient-appt-stat-icon{background:#fef2f2!important;color:#dc2626!important}.patient-appt-stat-completed .patient-appt-stat-icon{background:#f0fdf4!important;color:#16a34a!important}.patient-appt-stat-content{flex:1 1;min-width:0}.patient-appt-stat-content,.patient-appt-stat-value{border:none!important;box-shadow:none!important;outline:none!important}.patient-appt-stat-value{color:#0f172a;font-size:1.75rem;font-weight:700;line-height:1.2;margin-bottom:4px}.patient-appt-stat-label{border:none!important;box-shadow:none!important;color:#64748b;font-size:.875rem;font-weight:500;outline:none!important}.patient-appt-controls{animation:patient-appt-fadeInUp .5s ease-out .2s both;background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 3px 0 #0000001a,0 1px 2px 0 #0000000f;margin-bottom:10px;padding:10px}.patient-appt-search-section{align-items:center;display:flex;gap:12px}.patient-appt-search-input-wrapper{align-items:center;display:flex;flex:1 1;position:relative}.patient-appt-search-icon{color:#94a3b8;font-size:1rem;left:16px;position:absolute;z-index:1}.patient-appt-search-input{background:#fff;border:1px solid #e2e8f0;border-radius:8px;box-sizing:border-box;color:#0f172a;font-family:inherit;font-size:.9375rem;padding:12px 16px 12px 44px;transition:all .15s ease;width:100%}.patient-appt-search-input:focus{border-color:#0f172a;box-shadow:0 0 0 3px #0f172a0d;outline:none}.patient-appt-search-input::placeholder{color:#94a3b8}.patient-appt-clear-search-btn{align-items:center;background:#0000;border:none;border-radius:4px;color:#94a3b8;cursor:pointer;display:flex;height:24px;justify-content:center;position:absolute;right:12px;transition:all .15s ease;width:24px;z-index:1}.patient-appt-clear-search-btn:hover{background:#f1f5f9;color:#0f172a}.patient-appt-filter-toggle-btn{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;color:#0f172a;cursor:pointer;display:inline-flex;font-size:.875rem;font-weight:500;gap:8px;padding:12px 20px;transition:all .15s ease;white-space:nowrap}.patient-appt-filter-toggle-btn:hover{background:#f1f5f9;border-color:#cbd5e1}.patient-appt-filters-panel{grid-gap:20px;border-top:1px solid #e2e8f0;display:grid;gap:20px;grid-template-columns:1fr;justify-content:center;margin-top:20px;padding-top:20px}.patient-appt-filter-group{display:flex;flex-direction:column;gap:8px}.patient-appt-filter-group label{align-items:center;color:#0f172a;display:flex;font-size:.875rem;font-weight:600;gap:8px}.patient-appt-filter-group label svg{color:#64748b;font-size:.875rem}.patient-appt-status-select{background:#fff;border:1px solid #e2e8f0;border-radius:8px;box-sizing:border-box;color:#0f172a;cursor:pointer;font-family:inherit;font-size:.9375rem;padding:10px 12px;transition:all .15s ease;width:100%}.patient-appt-status-select:focus{border-color:#0f172a;box-shadow:0 0 0 3px #0f172a0d;outline:none}.patient-appt-filter-actions{align-items:flex-end;display:flex;flex-wrap:nowrap;gap:10px;grid-column:1/-1;justify-content:center}.patient-appt-btn-apply-filters,.patient-appt-btn-clear-filters{align-items:center;border:1px solid;border-radius:8px;cursor:pointer;display:inline-flex;font-family:inherit;font-size:.875rem;font-weight:500;gap:8px;padding:10px 20px;transition:all .15s ease;width:100%}.patient-appt-btn-apply-filters{background:#00a3bb;color:#fff}.patient-appt-btn-apply-filters:hover{background:#00a3bb;box-shadow:0 4px 6px -1px #0000001a;transform:translateY(-1px)}.patient-appt-btn-clear-filters{background:#fff;border-color:#e2e8f0;color:#0f172a}.patient-appt-btn-clear-filters:hover{background:#f8fafc;border-color:#cbd5e1}.patient-appt-list-container{animation:patient-appt-fadeInUp .5s ease-out .3s both;background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 3px 0 #0000001a,0 1px 2px 0 #0000000f;overflow:hidden}.patient-appt-table-wrapper{display:block;overflow-x:auto}@media (max-width:768px){.patient-appt-table-wrapper{display:none}}.patient-appt-table{border-collapse:collapse;width:100%}.patient-appt-table thead{background:#f8fafc;border-bottom:2px solid #e2e8f0}.patient-appt-table th{color:#64748b;font-size:.75rem;font-weight:600;letter-spacing:.05em;padding:16px;text-align:left;text-transform:uppercase;white-space:nowrap}.patient-appt-table tbody tr{border-bottom:1px solid #f1f5f9;cursor:pointer;transition:all .15s ease}.patient-appt-table tbody tr:hover{background:#f8fafc}.patient-appt-table td{color:#0f172a;font-size:.9375rem;padding:16px}.patient-appt-date-cell,.patient-appt-id-cell,.patient-appt-practitioner-cell,.patient-appt-time-cell{align-items:center;display:flex;gap:10px}.patient-appt-date-cell svg,.patient-appt-id-cell svg,.patient-appt-time-cell svg{color:#94a3b8;font-size:.875rem}.patient-appt-practitioner-avatar{align-items:center;background:#f1f5f9;border-radius:50%;color:#64748b;display:flex;flex-shrink:0;height:36px;justify-content:center;overflow:hidden;width:36px}.patient-appt-practitioner-avatar img{height:100%;object-fit:cover;width:100%}.patient-appt-status-badge{align-items:center;border-radius:6px;display:inline-flex;font-size:.8125rem;font-weight:500;gap:6px;padding:6px 12px;white-space:nowrap}.patient-appt-status-badge svg{font-size:.75rem}.patient-appt-status-badge-pending{background:#fef2f2;color:#d97706}.patient-appt-status-badge-accepted{background:#eff6ff;color:#028329}.patient-appt-status-badge-cancelled{background:#fef2f2;color:#dc2626}.patient-appt-status-badge-completed{background:#f0fdf4;color:#16a34a}.patient-appt-status-badge-default{background:#f8fafc;color:#0f172a}.patient-appt-action-buttons{display:flex;gap:8px}.patient-appt-action-btn{align-items:center;background:#0000;border:1px solid #e2e8f0;border-radius:6px;color:#64748b;cursor:pointer;display:flex;height:32px;justify-content:center;transition:all .15s ease;width:32px}.patient-appt-action-btn:hover{background:#f8fafc;border-color:#cbd5e1;color:#0f172a}.patient-appt-view-btn:hover{background:#f0f9ff;border-color:#0ea5e9;color:#0ea5e9}.patient-appt-video-btn{color:#00a3bb}.patient-appt-video-btn:hover{background:#f0f9ff;border-color:#00a3bb;color:#00a3bb}.patient-appt-cards-view{display:none;gap:16px;padding:16px}@media (max-width:768px){.patient-appt-cards-view{display:flex;flex-direction:column}}.patient-appt-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 2px 0 #0000000d;cursor:pointer;padding:16px;transition:all .15s ease}.patient-appt-card:hover{box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;transform:translateY(-2px)}.patient-appt-card-header-section{align-items:center;border-bottom:1px solid #f1f5f9;display:flex;justify-content:space-between;margin-bottom:16px;padding-bottom:12px}.patient-appt-card-id{align-items:center;color:#0f172a;display:flex;font-size:.875rem;font-weight:600;gap:8px}.patient-appt-card-id svg{color:#94a3b8}.patient-appt-card-body-section{margin-bottom:16px}.patient-appt-card-participants{display:flex;flex-direction:column;gap:12px;margin-bottom:16px}.patient-appt-participant-item{align-items:center;display:flex;gap:12px}.patient-appt-participant-avatar{align-items:center;background:#f1f5f9;border-radius:50%;color:#64748b;display:flex;flex-shrink:0;height:40px;justify-content:center;overflow:hidden;width:40px}.patient-appt-participant-avatar img{height:100%;object-fit:cover;width:100%}.patient-appt-participant-info{flex:1 1;min-width:0}.patient-appt-participant-label{color:#64748b;font-size:.75rem;font-weight:500;letter-spacing:.025em;margin-bottom:2px;text-transform:uppercase}.patient-appt-participant-name{word-wrap:break-word;color:#0f172a;font-size:.9375rem;font-weight:600}.patient-appt-card-datetime{background:#f8fafc;border-radius:8px;display:flex;gap:16px;padding:12px}.patient-appt-datetime-item{align-items:center;color:#0f172a;display:flex;font-size:.875rem;font-weight:500;gap:8px}.patient-appt-datetime-item svg{color:#94a3b8;font-size:.875rem}.patient-appt-card-footer-section{border-top:1px solid #f1f5f9;display:flex;flex-direction:column;gap:12px;padding-top:12px}.patient-appt-view-details-btn{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;color:#0f172a;cursor:pointer;display:flex;font-size:.875rem;font-weight:500;justify-content:space-between;padding:10px 16px;transition:all .15s ease;width:100%}.patient-appt-view-details-btn:hover{background:#f1f5f9;border-color:#cbd5e1}.patient-appt-view-details-btn svg{color:#94a3b8;font-size:.75rem}.patient-appt-video-call-button{align-items:center;background:linear-gradient(135deg,#00a3bb,#008ba3);border:none;border-radius:12px;box-shadow:0 10px 25px #00a3bb33;color:#fff;cursor:pointer;display:flex;font-weight:600;gap:.5rem;justify-content:center;padding:.75rem 1.5rem;transition:all .3s ease;width:100%}.patient-appt-video-call-button:hover{box-shadow:0 15px 30px #00a3bb4d;transform:translateY(-2px)}.patient-appt-video-icon{margin-right:.5rem}.patient-appt-completed-buttons{display:flex;flex-wrap:wrap;gap:.75rem}.patient-appt-action-button{background:linear-gradient(135deg,#00a3bb,#008ba3);border:none;border-radius:12px;box-shadow:0 10px 25px #00a3bb33;color:#fff;cursor:pointer;flex:1 1;font-weight:600;min-width:120px;padding:.75rem 1.5rem;transition:all .3s ease}.patient-appt-action-button:hover:not(:disabled){box-shadow:0 15px 30px #00a3bb4d;transform:translateY(-2px)}.patient-appt-pay-button{background:linear-gradient(135deg,#00a3bb,#008ba3);border:none;border-radius:12px;box-shadow:0 10px 25px #00a3bb33;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;max-width:200px;padding:.75rem 1.5rem;transition:all .3s ease;width:100%}.patient-appt-pay-button:hover:not(:disabled){box-shadow:0 15px 30px #00a3bb4d;transform:translateY(-2px)}.patient-appt-pay-button:disabled{background:#e5e7eb;box-shadow:none;color:#9ca3af;cursor:not-allowed;transform:none}.patient-appt-payment-warning{color:#dc2626;font-size:.875rem;font-weight:500;margin:.5rem 0 0;text-align:center}.patient-appt-empty-state{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:60px 20px;text-align:center}.patient-appt-empty-state-icon{align-items:center;background:#f8fafc;border-radius:50%;color:#94a3b8;display:flex;font-size:2rem;height:80px;justify-content:center;margin-bottom:24px;width:80px}.patient-appt-empty-state h3{color:#0f172a;font-size:1.25rem;font-weight:600;margin:0 0 8px}.patient-appt-empty-state p{color:#64748b;font-size:.9375rem;margin:0;max-width:400px}.patient-appt-loading-spinner{align-items:center;color:#64748b;display:flex;font-size:1rem;justify-content:center;padding:2rem}.patient-appt-error-message{background:#ef44441a;border:1px solid #ef44444d;border-radius:12px;color:#dc2626;font-size:.9rem;margin:1rem;padding:1rem;text-align:center}.patient-appt-book-button{align-items:center;background:linear-gradient(135deg,#50cada,#00a3bb);border:none;border-radius:10px;box-shadow:0 5px 10px #00a3bb4d;color:#fff;cursor:pointer;display:flex;font-size:1rem;font-weight:700;gap:.75rem;justify-content:center;margin-right:15px;min-width:200px;overflow:hidden;padding:15px;position:relative;transition:all .4s cubic-bezier(.175,.885,.32,1.275)}.patient-appt-book-button:before{background:linear-gradient(90deg,#0000,#fff3,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s;width:100%}.patient-appt-book-button:hover{box-shadow:0 20px 40px #00a3bb66;padding:15px 40px;transform:translateY(-1px)}.patient-appt-book-button:hover:before{left:100%}.patient-appt-book-button:active{transform:translateY(-1px) scale(1.02)}.patient-appt-book-button .patient-appt-book-icon{font-size:1.2rem;font-weight:700}.patient-appt-chart-container{display:inline-block;position:relative}.patient-appt-chart-image{height:auto;max-width:100%}.patient-appt-chart-point{align-items:center;background-color:#50cada;border:2px solid #fff;border-radius:50%;color:#fff;display:flex;font-size:.75rem;font-weight:600;height:20px;justify-content:center;position:absolute;transform:translate(-50%,-50%);width:20px;z-index:5}.patient-appt-hide-mobile{display:table-cell}@media (max-width:768px){.patient-appt-hide-mobile{display:none}.patient-appt-stats-text{font-size:.875rem;gap:16px}.patient-appt-stat-value-text{font-size:.9375rem}.patient-appt-filters-panel{grid-template-columns:1fr}.patient-appt-filter-actions{flex-direction:column;width:100%}.patient-appt-btn-apply-filters,.patient-appt-btn-clear-filters{justify-content:center;width:100%}}.patient-profile-page{background:#0000;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;overflow:visible;padding:20px 20px 20px 0;width:100%}.patient-profile-page-header{animation:patient-profile-fadeInDown .5s ease-out;margin-bottom:32px}@keyframes patient-profile-fadeInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.patient-profile-header-content{align-items:flex-start;display:flex;justify-content:space-between}.patient-profile-header-content>div{flex:1 1}.patient-profile-header-content h2{color:#0f172a;font-size:2rem;font-weight:700;letter-spacing:-.02em;line-height:1.2;margin:0 0 8px}.patient-profile-header-content p{color:#64748b;font-size:1.125rem;font-weight:400;line-height:1.6;margin:0}.patient-profile-header-edit-btn{align-items:center;background:linear-gradient(135deg,#50cada,#3ca2aa);border:1px solid #fff;border-radius:8px;color:#fff;cursor:pointer;display:inline-flex;font-size:.875rem;font-weight:500;gap:8px;padding:11px 20px;transition:all .2s ease;white-space:nowrap}.patient-profile-header-edit-btn:hover{background:linear-gradient(135deg,#3ca2aa,#50cada);box-shadow:0 4px 6px -1px #0000001a;transform:translateY(-1px)}.patient-profile-header-edit-btn:active{transform:translateY(0)}.patient-profile-tab-buttons{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#ffffffe6;border:1px solid #ffffff4d;border-radius:20px;box-shadow:0 8px 32px #0000001a;display:flex;justify-content:center;margin-bottom:30px;padding:8px}.patient-profile-tab-btn{background:#0000;border:none;border-radius:15px;color:#64748b;cursor:pointer;font-size:14px;font-weight:600;margin:0 4px;overflow:hidden;padding:12px 24px;position:relative;transition:all .3s ease}.patient-profile-tab-btn:hover{background:#50cada1a;color:#50cada;transform:translateY(-1px)}.patient-profile-tab-btn.patient-profile-active{background:linear-gradient(135deg,#50cada,#45b8c8);box-shadow:0 4px 20px #50cada59;color:#fff;transform:translateY(-1px)}.patient-profile-settings{width:100%}.patient-profile-billing,.patient-profile-insurance{background:#fff;border:1px solid #e2e8f0cc;border-radius:15px;box-shadow:0 20px 60px #00000014,0 0 0 1px #0000000a;margin:0 auto;max-width:1200px;overflow:hidden;padding:50px;position:relative}.patient-profile-billing:before,.patient-profile-insurance:before{background:linear-gradient(90deg,#50cada,#45b8c8 50%,#50cada);content:"";height:4px;left:0;position:absolute;right:0;top:0}.patient-profile-billing h1,.patient-profile-insurance h1{color:#1e293b;font-size:32px;font-weight:700;letter-spacing:-.5px;margin-bottom:40px;position:relative;text-align:center}.patient-profile-billing h1:after,.patient-profile-insurance h1:after{background:linear-gradient(90deg,#50cada,#45b8c8);border-radius:2px;bottom:-15px;box-shadow:0 2px 8px #50cada4d;content:"";height:4px;left:50%;position:absolute;transform:translateX(-50%);width:80px}.patient-profile-layout{grid-gap:24px;align-items:start;display:grid;gap:24px;grid-template-columns:320px 1fr}.patient-profile-sidebar{display:flex;flex-direction:column;gap:24px;position:sticky;top:24px}.patient-profile-sidebar-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 3px 0 #0000001a,0 1px 2px 0 #0000000f;padding:24px}.patient-profile-avatar-section{border-bottom:1px solid #e2e8f0;margin-bottom:24px;padding-bottom:24px;text-align:center}.patient-profile-avatar-wrapper{height:120px;margin:0 auto 20px;position:relative;width:120px}.patient-profile-avatar-image,.patient-profile-avatar-placeholder{border:3px solid #e2e8f0;border-radius:50%;height:100%;object-fit:cover;width:100%}.patient-profile-avatar-placeholder{align-items:center;background:#f8fafc;border:3px solid #e2e8f0;color:#94a3b8;display:flex;font-size:3rem;justify-content:center}.patient-profile-avatar-overlay{align-items:center;background:#0f172abf;border-radius:50%;bottom:0;color:#fff;cursor:pointer;display:flex;font-size:1.5rem;justify-content:center;left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .2s ease}.patient-profile-avatar-wrapper:hover .patient-profile-avatar-overlay{opacity:1}.patient-profile-avatar-section h2{color:#0f172a;font-size:1.5rem;font-weight:600;letter-spacing:-.02em;margin:0 0 6px}.patient-profile-owner-name{color:#64748b;font-size:.9375rem;font-weight:400;margin:0 0 16px}.patient-profile-status-badge{align-items:center;background:#d1fae5;border-radius:20px;color:#065f46;display:inline-flex;font-size:.8125rem;font-weight:500;gap:6px;padding:6px 12px}.patient-profile-status-badge svg{font-size:.875rem}.patient-profile-sidebar-stats{display:flex;flex-direction:column;gap:16px}.patient-profile-stat-item{align-items:center;border-bottom:1px solid #f1f5f9;display:flex;justify-content:space-between;padding:12px 0}.patient-profile-stat-item:last-child{border-bottom:none}.patient-profile-stat-label{color:#64748b;font-size:.8125rem;font-weight:500}.patient-profile-stat-value{color:#0f172a;font-size:.9375rem;font-weight:600}.patient-profile-quick-links h3{color:#0f172a;font-size:1rem;font-weight:600;margin:0 0 16px}.patient-profile-links-list{display:flex;flex-direction:column;gap:8px}.patient-profile-link-item{align-items:center;border-radius:8px;color:#475569;display:flex;font-size:.875rem;font-weight:500;gap:12px;padding:12px;text-decoration:none;transition:all .2s ease}.patient-profile-link-item:hover{background:#f8fafc;color:#0f172a}.patient-profile-link-item svg{color:#64748b;font-size:1rem;width:18px}.patient-profile-link-item:hover svg{color:#0f172a}.patient-profile-notice-section{background:#fef3c7;border:1px solid #fde68a;border-radius:12px;padding:24px}.patient-profile-notice-header{align-items:center;display:flex;gap:12px;margin-bottom:12px}.patient-profile-notice-header svg{color:#d97706;font-size:1.25rem}.patient-profile-notice-header h4{color:#92400e;font-size:1rem;font-weight:600;margin:0}.patient-profile-notice-section p{color:#78350f;font-size:.875rem;line-height:1.6;margin:0}.patient-profile-main{display:flex;flex-direction:column;gap:24px}.patient-profile-content-section{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 3px 0 #0000001a,0 1px 2px 0 #0000000f;padding:32px}.patient-profile-section-title{align-items:center;border-bottom:1px solid #e2e8f0;display:flex;gap:12px;margin-bottom:24px;padding-bottom:16px}.patient-profile-section-title svg{color:#475569;font-size:1.25rem}.patient-profile-section-title h3{color:#0f172a;font-size:1.25rem;font-weight:600;letter-spacing:-.015em;margin:0}.patient-profile-section-body{display:flex;flex-direction:column;gap:24px}.patient-profile-field-row{display:flex;flex-direction:column;gap:8px}.patient-profile-field-label{align-items:center;color:#475569;display:flex;font-size:.8125rem;font-weight:500;gap:8px;letter-spacing:.05em;text-transform:uppercase}.patient-profile-field-label svg{color:#64748b;font-size:.875rem;width:16px}.patient-profile-field-input{background:#fff;border:1px solid #cbd5e1;border-radius:8px;box-sizing:border-box;color:#0f172a;font-family:inherit;font-size:.9375rem;padding:12px 16px;transition:all .15s ease;width:100%}.patient-profile-field-input:focus{border-color:#0f172a;box-shadow:0 0 0 3px #0f172a0d;outline:none}.patient-profile-field-input::placeholder{color:#94a3b8}textarea.patient-profile-field-input{line-height:1.5;min-height:100px;resize:vertical}.patient-profile-field-display{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;color:#0f172a;display:flex;font-size:.9375rem;font-weight:400;min-height:44px;padding:12px 16px}.patient-profile-field-display .patient-profile-empty{color:#94a3b8;font-style:normal}.patient-profile-field-input:disabled{background:#f8fafc;color:#64748b;cursor:not-allowed}.patient-profile-field-input select{-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12'%3E%3Cpath fill='%230f172a' d='M6 9 1 4h10z'/%3E%3C/svg%3E");background-position:right 16px center;background-repeat:no-repeat;cursor:pointer;padding-right:40px}.patient-profile-action-bar{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 3px 0 #0000001a;display:flex;gap:12px;justify-content:flex-end;padding:24px 32px}.patient-profile-btn-primary{align-items:center;background:#0f172a;border:1px solid #0f172a;border-radius:8px;color:#fff;cursor:pointer;display:inline-flex;font-family:inherit;font-size:.875rem;font-weight:500;gap:8px;padding:11px 20px;transition:all .15s ease}.patient-profile-btn-primary:hover:not(:disabled){background:#1e293b;border-color:#1e293b;box-shadow:0 4px 6px -1px #0000001a;transform:translateY(-1px)}.patient-profile-btn-primary:disabled{background:#0f172a;border-color:#0f172a;color:#fff;cursor:not-allowed;opacity:.5;transform:none}.patient-profile-btn-secondary{align-items:center;background:#fff;border:1px solid #cbd5e1;border-radius:8px;color:#475569;cursor:pointer;display:inline-flex;font-family:inherit;font-size:.875rem;font-weight:500;gap:8px;padding:11px 20px;transition:all .15s ease}.patient-profile-btn-secondary:hover{background:#f8fafc;border-color:#94a3b8;color:#334155}.patient-profile-inputs-main{margin:0 auto;max-width:1200px}.patient-profile-all-inputs{grid-gap:30px;display:grid;gap:30px;grid-template-columns:repeat(2,1fr);margin-bottom:40px}.patient-profile-all-inputs .patient-profile-input-container-full{grid-column:1/-1}@media (max-width:968px){.patient-profile-all-inputs{gap:25px;grid-template-columns:1fr}.patient-profile-all-inputs .patient-profile-input-container-full{grid-column:1}}.patient-profile-input-container{border-radius:10px!important;display:flex;flex-direction:column;position:relative;width:100%}.patient-profile-labels{color:#334155;display:block;font-size:13px;font-weight:600;letter-spacing:.8px;line-height:1.4;margin-bottom:10px;text-transform:uppercase}.patient-profile-inputs{background:#fff;border:2px solid #e2e8f0;border-radius:10px;box-sizing:border-box;color:#1e293b;font-family:inherit;font-size:15px;line-height:1.5;margin-top:0;padding:14px 18px 14px 48px;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1);width:100%}.patient-profile-inputs::placeholder{color:#94a3b8;font-size:14px}.patient-profile-inputs:focus{background:#fff;border-color:#50cada;box-shadow:0 0 0 4px #50cada1f;outline:none;transform:translateY(-1px)}.patient-profile-inputs:hover:not(:disabled){border-color:#cbd5e0}.patient-profile-inputs:disabled{background:#f1f5f9;cursor:not-allowed;opacity:.7}.patient-profile-inputs select{-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12'%3E%3Cpath fill='%2350cada' d='M6 9 1 4h10z'/%3E%3C/svg%3E");background-position:right 16px center;background-repeat:no-repeat;cursor:pointer;padding-right:40px}.patient-profile-inputs textarea{font-family:inherit;line-height:1.5;min-height:100px;padding-top:14px;resize:vertical}.patient-profile-input-container-full .patient-profile-input-icon{top:53px}.patient-profile-input-icon{color:#50cada;font-size:18px;left:16px;pointer-events:none;position:absolute;top:63px;transition:color .3s ease;z-index:1}.patient-profile-input-container:focus-within .patient-profile-input-icon{color:#50cada}.patient-profile-pic-preview{border:5px solid #fff;border-radius:50%;box-shadow:0 10px 30px #00000026,0 0 0 3px #50cada1a;cursor:pointer;display:block;height:140px;margin:30px auto;object-fit:cover;transition:all .4s cubic-bezier(.4,0,.2,1);width:140px}.patient-profile-pic-preview:hover{box-shadow:0 15px 40px #0003,0 0 0 4px #50cada33;transform:scale(1.08)}.patient-profile-pic-upload{margin:20px 0;text-align:center}.patient-profile-file-input{display:none}.patient-profile-upload-label{align-items:center;background:linear-gradient(135deg,#50cada,#45b8c8);border:none;border-radius:12px;box-shadow:0 4px 15px #50cada59;color:#fff;cursor:pointer;display:inline-flex;font-size:14px;font-weight:600;gap:10px;letter-spacing:.8px;padding:14px 28px;text-transform:uppercase;transition:all .3s cubic-bezier(.4,0,.2,1)}.patient-profile-upload-label:hover{background:linear-gradient(135deg,#45b8c8,#3aa8b8);box-shadow:0 8px 25px #50cada73;transform:translateY(-2px)}.patient-profile-upload-label:active{transform:translateY(0)}.patient-profile-submit-btn{align-items:center;background:linear-gradient(135deg,#50cada,#45b8c8);border:none;border-radius:12px;box-shadow:0 6px 20px #50cada59;color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:600;gap:10px;justify-content:center;letter-spacing:.8px;margin:40px auto 0;min-width:200px;overflow:hidden;padding:16px 40px;position:relative;text-transform:uppercase;transition:all .3s cubic-bezier(.4,0,.2,1)}.patient-profile-submit-btn:before{background:linear-gradient(90deg,#0000,#fff3,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s;width:100%}.patient-profile-submit-btn:hover:not(:disabled):before{left:100%}.patient-profile-submit-btn:hover:not(:disabled){background:linear-gradient(135deg,#45b8c8,#3aa8b8);box-shadow:0 10px 30px #50cada73;transform:translateY(-3px)}.patient-profile-submit-btn:active:not(:disabled){transform:translateY(-1px)}.patient-profile-submit-btn:disabled{background:#cbd5e0;box-shadow:none;cursor:not-allowed;opacity:.7;transform:none}.patient-profile-spinner{animation:spin .8s linear infinite;border:3px solid #ffffff4d;border-radius:50%;border-top-color:#fff;display:inline-block;height:18px;width:18px}.patient-profile-saved-billing-method{background:linear-gradient(135deg,#f8fafc,#f1f5f9);border:1px solid #e2e8f0;border-radius:16px;margin:20px 0;padding:25px}.patient-profile-billing-details p{color:#475569;font-size:16px;margin:8px 0}.patient-profile-billing-details strong{color:#1e293b;font-weight:600}.patient-profile-billing-buttons{display:flex;flex-wrap:wrap;gap:15px;justify-content:center;margin:20px 0}.patient-profile-billing-buttons .patient-profile-submit-btn{margin:0;min-width:180px}.patient-profile-transaction-history{background:#fff;border-radius:16px;box-shadow:0 4px 15px #0000001a;margin-top:30px;padding:25px}.patient-profile-transaction-table{border-collapse:collapse;margin-top:15px;width:100%}.patient-profile-transaction-table th{background:linear-gradient(135deg,#50cada,#45b8c8);color:#fff;font-size:13px;font-weight:600;letter-spacing:.5px;padding:16px;text-align:left;text-transform:uppercase}.patient-profile-transaction-table td{border-bottom:1px solid #e2e8f0;color:#475569;padding:15px}.patient-profile-transaction-table tr:hover{background:#f8fafc}.patient-profile-saved-insurance-methods{grid-gap:25px;display:grid;gap:25px;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));margin:30px 0}.patient-profile-insurance-card{background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 4px 15px #0000001a;overflow:hidden;padding:25px;position:relative;transition:all .3s ease}.patient-profile-insurance-card:before{background:linear-gradient(90deg,#50cada,#45b8c8);content:"";height:4px;left:0;position:absolute;right:0;top:0}.patient-profile-insurance-card:hover{box-shadow:0 12px 30px #00000026;transform:translateY(-5px)}.patient-profile-insurance-card-header{align-items:center;border-bottom:1px solid #e2e8f0;display:flex;gap:15px;margin-bottom:20px;padding-bottom:15px}.patient-profile-insurance-icon{color:#50cada;font-size:28px}.patient-profile-insurance-card-header h3{color:#1e293b;font-size:20px;font-weight:700;margin:0}.patient-profile-insurance-card-details p{color:#475569;font-size:14px;line-height:1.6;margin:10px 0}.patient-profile-insurance-card-details strong{color:#1e293b;font-weight:600}.patient-profile-insurance-card-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:20px}.patient-profile-delete-btn,.patient-profile-edit-btn{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;letter-spacing:.5px;padding:10px 20px;text-transform:uppercase;transition:all .3s ease}.patient-profile-edit-btn{background:linear-gradient(135deg,#50cada,#45b8c8);color:#fff}.patient-profile-edit-btn:hover{background:linear-gradient(135deg,#45b8c8,#3aa8b8);box-shadow:0 4px 15px #50cada59;transform:translateY(-2px)}.patient-profile-delete-btn{background:#ef4444;color:#fff}.patient-profile-delete-btn:hover{background:#dc2626;box-shadow:0 4px 15px #ef44444d;transform:translateY(-2px)}.patient-profile-add-insurance-btn{align-items:center;background:linear-gradient(135deg,#50cada,#45b8c8);border:none;border-radius:12px;box-shadow:0 4px 15px #50cada59;color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:600;gap:10px;letter-spacing:.8px;margin:30px auto;padding:16px 32px;text-transform:uppercase;transition:all .3s cubic-bezier(.4,0,.2,1)}.patient-profile-add-insurance-btn:hover{background:linear-gradient(135deg,#45b8c8,#3aa8b8);box-shadow:0 8px 25px #50cada73;transform:translateY(-2px)}.patient-profile-insurance-modal-overlay{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0009;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:9999}.patient-profile-insurance-modal{background:#fff;border-radius:16px;box-shadow:0 20px 60px #00000026;max-height:90vh;max-width:520px;overflow-y:auto;padding:24px;position:relative;width:90%}.patient-profile-insurance-modal-header{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;margin-bottom:20px;padding-bottom:16px}.patient-profile-insurance-modal-header h2{color:#111827;font-size:18px;font-weight:600;margin:0}.patient-profile-close-modal-btn{background:none;border:none;border-radius:50%;color:#94a3b8;cursor:pointer;font-size:24px;padding:8px;transition:all .3s ease}.patient-profile-close-modal-btn:hover{background:#f1f5f9;color:#1e293b;transform:rotate(90deg)}.patient-profile-insurance-form .patient-profile-all-inputs{gap:20px;grid-template-columns:1fr}.patient-profile-form-buttons{align-items:center;border-top:1px solid #e5e7eb;display:flex;flex-direction:column;gap:12px;justify-self:center}.patient-profile-cancel-btn{align-items:center;background:#94a3b8;border:none;border-radius:12px;box-sizing:border-box;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:600;justify-content:center;letter-spacing:.5px;padding:14px 28px;text-align:center;text-transform:uppercase;transition:all .2s ease;width:140px}.patient-profile-cancel-btn:hover{background:#64748b;transform:translateY(-2px)}.patient-profile-delete-confirmation-modal{max-width:500px}.patient-profile-delete-confirmation-content{background:linear-gradient(135deg,#fef2f2,#fee2e2);border:1px solid #fecaca;border-radius:16px;margin:30px 0;padding:30px;text-align:center}.patient-profile-warning-icon{color:#ef4444;font-size:48px;margin-bottom:20px}.patient-profile-delete-confirmation-content p{color:#1e293b;font-size:16px;line-height:1.6;margin:15px 0}.patient-profile-delete-confirmation-content .patient-profile-warning-text{color:#ef4444;font-size:14px;font-weight:700;letter-spacing:.5px;text-transform:uppercase}.delete-confirmation-modal .patient-profile-form-buttons{gap:20px;justify-content:center}.delete-confirmation-modal .patient-profile-delete-btn{align-items:center;background:#ef4444;border:none;border-radius:12px;color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:600;gap:10px;letter-spacing:.5px;padding:14px 28px;text-transform:uppercase;transition:all .3s ease}.delete-confirmation-modal .patient-profile-delete-btn:hover{background:#dc2626;box-shadow:0 4px 15px #ef44444d;transform:translateY(-2px)}.delete-confirmation-modal .patient-profile-cancel-btn{background:#94a3b8;border:none;border-radius:12px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;letter-spacing:.5px;padding:14px;text-transform:uppercase;transition:all .3s ease}.delete-confirmation-modal .patient-profile-cancel-btn:hover{background:#64748b;transform:translateY(-2px)}.modal-overlay{animation:fadeIn .2s ease-out;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000080;z-index:10000}.modal-overlay,.patient-profile-modal-overlay{align-items:center;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0}.patient-profile-modal-overlay{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0009;z-index:9999}.patient-profile-stripe-modal{animation:slideUp .3s ease-out;background:#fff;border-radius:20px;box-shadow:0 25px 50px #0003;max-height:90vh;max-width:500px;overflow-y:auto;padding:40px;position:relative;text-align:center;width:90%}.stripe-modal img{margin:0 10px}

;@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.patient-profile-error-message{background:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#ef4444;font-size:14px;margin-bottom:15px;padding:10px}.patient-profile-stripe-modal form{margin-top:30px}.patient-profile-stripe-logo{width:65px}.patient-profile-card-element-container{background:#f8fafc;border:2px solid #e2e8f0;border-radius:12px;margin:20px 0;padding:20px}.patient-profile-modal-buttons{display:flex;gap:15px;justify-content:center;margin-top:20px}.patient-profile-modal-buttons button{border:none;border-radius:12px;cursor:pointer;font-size:16px;font-weight:600;letter-spacing:.5px;min-width:120px;padding:14px 28px;text-transform:uppercase;transition:all .3s ease}.patient-profile-modal-buttons button[type=submit]{background:linear-gradient(135deg,#50cada,#45b8c8);color:#fff}.patient-profile-modal-buttons button[type=submit]:hover:not(:disabled){background:linear-gradient(135deg,#45b8c8,#3aa8b8);box-shadow:0 4px 15px #50cada59;transform:translateY(-2px)}.patient-profile-modal-buttons button[type=button]{background:#94a3b8;color:#fff}.patient-profile-modal-buttons button[type=button]:hover{background:#64748b;transform:translateY(-2px)}.patient-profile-billing,.patient-profile-insurance,.patient-profile-settings{animation:fadeInUp .5s ease-out}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.patient-profile-input-container:focus-within{transform:translateY(-1px)}@media (min-width:1400px){.patient-profile-layout{grid-template-columns:360px 1fr}}@media (max-width:1399px) and (min-width:992px){.patient-profile-layout{grid-template-columns:300px 1fr}}@media (max-width:991px) and (min-width:768px){.patient-profile-layout{gap:20px;grid-template-columns:280px 1fr}.patient-profile-content-section{padding:24px}.patient-profile-sidebar-card{padding:20px}}@media (max-width:767px){.patient-profile-layout{gap:20px;grid-template-columns:1fr}.patient-profile-sidebar{order:2;position:static}.patient-profile-main{order:1}.patient-profile-content-section{padding:24px}.patient-profile-sidebar-card{padding:20px}.patient-profile-action-bar{flex-direction:column;padding:20px}.patient-profile-btn-primary{justify-content:center;width:100%}}@media (max-width:575px){.patient-profile-content-section{padding:20px}.patient-profile-section-title h3{font-size:1.125rem}.patient-profile-sidebar-card{padding:20px}.patient-profile-avatar-wrapper{height:100px;width:100px}.patient-profile-avatar-section h2{font-size:1.25rem}}@media (max-width:768px){.patient-profile-page{padding:15px}.patient-profile-billing,.patient-profile-insurance{margin:0;padding:30px 20px}.patient-profile-billing h1,.patient-profile-insurance h1{font-size:26px;margin-bottom:30px}.patient-profile-all-inputs{gap:25px;grid-template-columns:1fr}.patient-profile-tab-buttons{flex-direction:column;gap:8px}.patient-profile-tab-btn{border-radius:12px;margin:0}.patient-profile-saved-insurance-methods{grid-template-columns:1fr}.patient-profile-insurance-card-actions{flex-direction:column}.patient-profile-billing-buttons,.patient-profile-form-buttons{align-items:center;flex-direction:column}.patient-profile-insurance-modal,.patient-profile-stripe-modal{padding:20px;width:95%}.insurance-form-grid{gap:14px;grid-template-columns:1fr}.patient-profile-modal-buttons{align-items:center;flex-direction:column}}@media (max-width:480px){.patient-profile-billing h1,.patient-profile-insurance h1{font-size:24px}.patient-profile-inputs{font-size:16px;padding:14px 18px 14px 45px}.patient-profile-input-icon{left:14px;top:38px}.patient-profile-submit-btn{font-size:14px;padding:14px 24px}.patient-profile-insurance-modal-header{flex-direction:column;gap:15px;text-align:center}}.patient-profile-password-section-toggle{padding:24px;text-align:center}.patient-profile-password-section-toggle p{color:#64748b;font-size:.9375rem;margin:0 0 16px}.patient-profile-password-input-wrapper{align-items:center;display:flex;position:relative}.patient-profile-password-input-wrapper .patient-profile-field-input{padding-right:45px}.patient-profile-password-toggle-btn{align-items:center;background:#0000;border:none;color:#64748b;cursor:pointer;display:flex;justify-content:center;padding:8px;position:absolute;right:12px;transition:color .15s ease;z-index:1}.patient-profile-password-toggle-btn:hover{color:#0f172a}.patient-profile-password-toggle-btn:focus{color:#0f172a;outline:none}.patient-profile-password-toggle-btn svg{font-size:.875rem}.patient-profile-password-requirements{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;margin-top:16px;padding:20px}.patient-profile-requirements-title{color:#0f172a;display:block;font-size:.875rem;font-weight:600;margin:0 0 16px;width:100%}.patient-profile-requirements-buttons{clear:both;display:flex;flex-wrap:wrap;gap:12px;justify-content:flex-start;margin-top:0;width:100%}.patient-profile-requirement-button{align-items:center;background:#fce7f3;border:2px solid #fbcfe8;border-radius:8px;cursor:default;display:flex;flex-direction:column;flex-shrink:0;height:42px;justify-content:center;padding:12px 16px;position:relative;transition:all .3s ease;width:40px}.patient-profile-requirement-button.patient-profile-valid{background:#d1fae5;border-color:#10b981;box-shadow:0 2px 8px #10b98133}.patient-profile-requirement-button.patient-profile-invalid{background:#fce7f3;border-color:#fbcfe8}.patient-profile-requirement-icon{align-items:center;background:#fff;border:2px solid;border-radius:50%;display:flex;height:32px;justify-content:center;margin-bottom:8px;transition:all .3s ease;width:32px}.patient-profile-requirement-button.patient-profile-valid .patient-profile-requirement-icon{background:#10b981;border-color:#10b981;color:#fff}.patient-profile-requirement-button.patient-profile-invalid .patient-profile-requirement-icon{background:#fff;border-color:#f43f5e;color:#f43f5e}.patient-profile-requirement-icon svg{font-size:16px;height:16px;width:16px}.patient-profile-requirement-x{color:#f43f5e;font-size:18px;font-weight:700;line-height:1}.patient-profile-requirement-text{color:#be185d;font-size:.875rem;font-weight:600;text-align:center;transition:color .3s ease}.patient-profile-requirement-button.patient-profile-valid .patient-profile-requirement-text{color:#065f46}.patient-profile-requirement-button.patient-profile-invalid .patient-profile-requirement-text{color:#be185d}.patient-profile-password-actions{border-top:1px solid #e2e8f0;display:flex;gap:12px;margin-top:24px;padding-top:24px}.patient-profile-password-actions .patient-profile-btn-primary,.patient-profile-password-actions .patient-profile-btn-secondary{flex:1 1}@media (max-width:767px){.patient-profile-password-actions{flex-direction:column}.patient-profile-password-actions .patient-profile-btn-primary,.patient-profile-password-actions .patient-profile-btn-secondary{width:100%}}.patient-billing-page{background:#0000;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;overflow:visible;padding:20px 20px 20px 0;width:100%}.patient-billing-page-header{animation:patient-billing-fadeInDown .5s ease-out;margin-bottom:32px}@keyframes patient-billing-fadeInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.patient-billing-header-content{align-items:flex-start;display:flex;justify-content:space-between}.patient-billing-header-content>div{flex:1 1}.patient-billing-header-content h2{color:#0f172a;font-size:2rem;font-weight:700;letter-spacing:-.02em;line-height:1.2;margin:0 0 8px}.patient-billing-header-content p{color:#64748b;font-size:1.125rem;font-weight:400;line-height:1.6;margin:0}.patient-billing-content{display:flex;flex-direction:column;gap:24px}.patient-billing-content-section{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 3px 0 #0000001a,0 1px 2px 0 #0000000f;padding:32px}.patient-billing-section-title{align-items:center;border-bottom:1px solid #e2e8f0;display:flex;gap:12px;margin-bottom:24px;padding-bottom:16px}.patient-billing-section-title svg{color:#475569;font-size:1.25rem}.patient-billing-section-title h3{color:#0f172a;font-size:1.25rem;font-weight:600;letter-spacing:-.015em;margin:0}.patient-billing-section-body{display:flex;flex-direction:column;gap:24px}.patient-billing-section-body h4{color:#0f172a;font-size:1rem;font-weight:600;margin:0 0 16px}.patient-billing-saved-billing-method{background:linear-gradient(135deg,#f8fafc,#f1f5f9);border:1px solid #e2e8f0;border-radius:16px;margin:20px 0;padding:25px}.patient-billing-billing-details p{color:#475569;font-size:16px;margin:8px 0}.patient-billing-billing-details strong{color:#1e293b;font-weight:600}.patient-billing-billing-buttons{display:flex;flex-wrap:wrap;gap:15px;justify-content:flex-start;margin:20px 0}.patient-billing-btn-primary,.patient-billing-btn-secondary{align-items:center;border:1px solid;border-radius:8px;cursor:pointer;display:inline-flex;font-family:inherit;font-size:.875rem;font-weight:500;gap:8px;padding:11px 20px;transition:all .15s ease}.patient-billing-btn-primary{background:#50cada;border-color:#1ac7e2;color:#fff}.patient-billing-btn-primary:hover:not(:disabled){background:#50cada;border-color:#00a3bb;box-shadow:0 4px 6px -1px #0000001a;transform:translateY(-1px)}.patient-billing-btn-primary:disabled{cursor:not-allowed;opacity:.7;transform:none}.patient-billing-spinner{animation:patient-billing-spin .6s linear infinite;border:2px solid #ffffff4d;border-radius:50%;border-top-color:#fff;display:inline-block;height:14px;width:14px}@keyframes patient-billing-spin{to{transform:rotate(1turn)}}.patient-billing-btn-secondary{background:#fff;border-color:#cbd5e1;color:#475569}.patient-billing-btn-secondary:hover{background:#f8fafc;border-color:#94a3b8;color:#334155}.patient-billing-transaction-history{background:#fff;border-radius:16px;box-shadow:0 4px 15px #0000001a;margin-top:30px;padding:25px}.patient-billing-transaction-table{border-collapse:collapse;margin-top:15px;width:100%}.patient-billing-transaction-table th{background:linear-gradient(135deg,#50cada,#45b8c8);color:#fff;font-size:13px;font-weight:600;letter-spacing:.5px;padding:16px;text-align:left;text-transform:uppercase}.patient-billing-transaction-table td{border-bottom:1px solid #e2e8f0;color:#475569;padding:15px}.patient-billing-transaction-table tr:hover{background:#f8fafc}.patient-billing-status-complete{color:#10b981;font-weight:600}.patient-billing-modal-overlay{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0009;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:9999}.patient-billing-stripe-modal{background:#50cada;border-radius:20px;box-shadow:0 25px 50px #0003;max-width:500px;padding:40px;text-align:center;width:90%}.patient-billing-stripe-logo{margin:0 20px;width:65px}.patient-billing-error-message{background:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#ef4444;font-size:14px;margin-bottom:15px;padding:10px}.patient-billing-card-element-container{background:#f8fafc;border:2px solid #e2e8f0;border-radius:12px;margin:20px 0;padding:20px}.patient-billing-modal-buttons{display:flex;gap:15px;justify-content:center;margin-top:20px}.patient-billing-modal-buttons button{border:none;border-radius:12px;cursor:pointer;font-size:16px;font-weight:600;letter-spacing:.5px;min-width:120px;padding:14px 28px;text-transform:uppercase;transition:all .3s ease}.patient-billing-modal-buttons button[type=submit]{background:linear-gradient(135deg,#eaf8fa,#ecfbfd);border:1px solid #0000;color:#00a3bb}.patient-billing-modal-buttons button[type=submit]:hover:not(:disabled){background:linear-gradient(45deg,#eaf8fa,#ecfbfd);border:1px solid #50cada;box-shadow:0 4px 15px #50cada59;transform:translateY(-2px)}.patient-billing-modal-buttons button[type=button]{background:#94a3b8;color:#fff}.patient-billing-modal-buttons button[type=button]:hover{background:#64748b;transform:translateY(-2px)}@media (max-width:768px){.patient-billing-page{padding:15px}.patient-billing-content-section{padding:24px}.patient-billing-billing-buttons{align-items:stretch;flex-direction:column}.patient-billing-btn-primary,.patient-billing-btn-secondary{justify-content:center;width:100%}.patient-billing-transaction-table{font-size:.875rem}.patient-billing-transaction-table td,.patient-billing-transaction-table th{padding:12px 8px}}@media (max-width:480px){.patient-billing-header-content h2{font-size:1.75rem}.patient-billing-header-content p{font-size:1rem}.patient-billing-content-section{padding:20px}.patient-billing-section-title h3{font-size:1.125rem}}.patient-insurance-page{background:#0000;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;overflow:visible;padding:20px 20px 20px 0;width:100%}.patient-insurance-page-header{animation:patient-insurance-fadeInDown .5s ease-out;margin-bottom:32px}@keyframes patient-insurance-fadeInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.patient-insurance-header-content{align-items:flex-start;display:flex;justify-content:space-between}.patient-insurance-header-content>div{flex:1 1}.patient-insurance-header-content h2{color:#0f172a;font-size:2rem;font-weight:700;letter-spacing:-.02em;line-height:1.2;margin:0 0 8px}.patient-insurance-header-content p{color:#64748b;font-size:1.125rem;font-weight:400;line-height:1.6;margin:0}.patient-insurance-content{display:flex;flex-direction:column;gap:24px}.patient-insurance-content-section{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 3px 0 #0000001a,0 1px 2px 0 #0000000f;padding:32px}.patient-insurance-section-title{align-items:center;border-bottom:1px solid #e2e8f0;display:flex;gap:12px;margin-bottom:24px;padding-bottom:16px}.patient-insurance-section-title svg{color:#475569;font-size:1.25rem}.patient-insurance-section-title h3{color:#0f172a;font-size:1.25rem;font-weight:600;letter-spacing:-.015em;margin:0}.patient-insurance-section-body{display:flex;flex-direction:column;gap:24px}.patient-insurance-saved-insurance-methods{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));margin-bottom:24px}.patient-insurance-insurance-card{background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 4px 15px #0000001a;padding:25px;position:relative;transition:all .3s ease}.patient-insurance-insurance-card:hover{box-shadow:0 12px 30px #00000026;transform:translateY(-5px)}.patient-insurance-insurance-card-header{align-items:center;border-bottom:1px solid #e2e8f0;display:flex;gap:15px;margin-bottom:20px;padding-bottom:15px}.patient-insurance-insurance-icon{color:#50cada;font-size:28px}.patient-insurance-insurance-card-header h3{color:#1e293b;font-size:20px;font-weight:700;margin:0}.patient-insurance-insurance-card-details p{color:#475569;font-size:14px;line-height:1.6;margin:10px 0}.patient-insurance-insurance-card-details strong{color:#1e293b;font-weight:600}.patient-insurance-insurance-card-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:20px}.patient-insurance-delete-btn,.patient-insurance-edit-btn{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;padding:10px 20px;transition:all .3s ease}.patient-insurance-edit-btn{background:linear-gradient(135deg,#50cada,#45b8c8);color:#fff}.patient-insurance-edit-btn:hover{background:linear-gradient(135deg,#45b8c8,#3aa8b8);box-shadow:0 4px 15px #50cada59;transform:translateY(-2px)}.patient-insurance-add-insurance-btn{align-items:center;background:linear-gradient(135deg,#50cada,#45b8c8);border:none;border-radius:12px;box-shadow:0 4px 15px #50cada59;color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:600;gap:10px;justify-content:center;letter-spacing:.8px;margin:30px auto 0;max-width:300px;padding:16px 32px;text-transform:uppercase;transition:all .3s cubic-bezier(.4,0,.2,1)}.patient-insurance-add-insurance-btn:hover{background:linear-gradient(135deg,#45b8c8,#3aa8b8);box-shadow:0 8px 25px #50cada73;transform:translateY(-2px)}.patient-insurance-modal-overlay{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0009;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:9999}.patient-insurance-modal{background:#fff;border-radius:15px;box-shadow:0 25px 50px #0003;max-height:90vh;max-width:600px;overflow-y:auto;padding:25px;position:relative;width:90%}.patient-insurance-modal-header{align-items:center;border-bottom:2px solid #e2e8f0;display:flex;justify-content:space-between;margin-bottom:10px}.patient-insurance-modal-header h2{color:#1e293b;font-size:24px;font-weight:700;margin:0}.patient-insurance-close-modal-btn{background:none;border:none;border-radius:50%;color:#94a3b8;cursor:pointer;font-size:24px;padding:8px;transition:all .3s ease}.patient-insurance-close-modal-btn:hover{background:#f1f5f9;color:#1e293b;transform:rotate(90deg)}.patient-insurance-form{display:flex;flex-direction:column}.patient-insurance-all-inputs{grid-gap:10px;display:grid;gap:10px;grid-template-columns:1fr}.patient-insurance-input-container{position:relative}.patient-insurance-input-icon{color:#64748b;font-size:18px;left:14px;position:absolute;top:40px;z-index:1}.patient-insurance-labels{color:#1e293b;display:block;font-size:14px;font-weight:600;margin-bottom:8px}.patient-insurance-inputs{background:#fff;border:2px solid #e2e8f0;border-radius:10px;color:#1e293b;font-family:inherit;font-size:16px;padding:10px 10px 10px 40px;transition:all .3s ease;width:-webkit-fill-available}.patient-insurance-inputs:focus{border-color:#50cada;box-shadow:0 0 0 3px #50cada1a;outline:none}.patient-insurance-form-buttons{display:flex;gap:15px;justify-content:center;margin-top:30px}.patient-insurance-submit-btn{background:linear-gradient(135deg,#50cada,#45b8c8);border:none;border-radius:12px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;letter-spacing:.5px;padding:14px 28px;text-transform:uppercase;transition:all .3s ease}.patient-insurance-submit-btn:hover:not(:disabled){background:linear-gradient(135deg,#45b8c8,#3aa8b8);box-shadow:0 4px 15px #50cada59;transform:translateY(-2px)}.patient-insurance-submit-btn:disabled{cursor:not-allowed;opacity:.6}.patient-insurance-cancel-btn{background:#94a3b8;border:none;border-radius:12px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;letter-spacing:.5px;padding:14px 28px;text-transform:uppercase;transition:all .3s ease}.patient-insurance-cancel-btn:hover{background:#64748b;transform:translateY(-2px)}.patient-insurance-delete-confirmation-modal{max-width:500px}.patient-insurance-delete-confirmation-content{background:linear-gradient(135deg,#fef2f2,#fee2e2);border:1px solid #fecaca;border-radius:16px;margin:30px 0;padding:30px;text-align:center}.patient-insurance-warning-icon{color:#ef4444;font-size:48px;margin-bottom:20px}.patient-insurance-delete-confirmation-content p{color:#1e293b;font-size:16px;line-height:1.6;margin:15px 0}.patient-insurance-warning-text{color:#ef4444;font-size:14px;font-weight:700;letter-spacing:.5px;text-transform:uppercase}.patient-insurance-delete-btn{align-items:center;background:#ef4444;border:none;border-radius:12px;color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:600;gap:10px;letter-spacing:.5px;padding:14px 28px;text-transform:uppercase;transition:all .3s ease}.patient-insurance-delete-btn:hover{background:#dc2626;box-shadow:0 4px 15px #ef44444d;transform:translateY(-2px)}@media (max-width:768px){.patient-insurance-page{padding:15px}.patient-insurance-content-section{padding:24px}.patient-insurance-saved-insurance-methods{grid-template-columns:1fr}.patient-insurance-insurance-card-actions{flex-direction:column}.patient-insurance-delete-btn,.patient-insurance-edit-btn{justify-content:center;width:100%}.patient-insurance-form-buttons{flex-direction:column}.patient-insurance-cancel-btn,.patient-insurance-submit-btn{width:100%}.patient-insurance-modal{padding:25px;width:95%}.patient-insurance-modal-header{flex-direction:column;gap:15px;text-align:center}}@media (max-width:480px){.patient-insurance-header-content h2{font-size:1.75rem}.patient-insurance-header-content p{font-size:1rem}.patient-insurance-content-section{padding:20px}.patient-insurance-section-title h3{font-size:1.125rem}.patient-insurance-inputs{font-size:16px;padding:14px 18px 14px 45px}.patient-insurance-input-icon{left:14px;top:40px}}.patient-messages-page{background:#0000;padding:20px 0;width:100%}.doctors-list{display:flex;flex-direction:column;gap:15px;justify-content:center;padding:20px}.doctor-card{background-color:#fff;border:1px solid #ccc;border-radius:10px;cursor:pointer;gap:15px;padding:15px;transition:transform .3s ease,background-color .3s ease}.doctor-card:hover{background-color:#f0f0f0;transform:scale(1.01)}.doctor-card img{border-radius:50%;height:60px;width:60px}.doctor-card.selected{background-color:#50cada;color:#fff}.chat-screen{border:2px solid #50cada;border-radius:25px;flex-direction:column;height:90vh}.chat-header,.chat-screen{background-color:#fff;display:flex}.chat-header{align-items:center;border-bottom:2px solid #50cada;border-radius:25px 25px 0 0;color:#000;gap:15px;padding:15px;position:sticky;top:0}.chat-header .back-button{background-color:#50cada;border:none;color:#fff;cursor:pointer;font-size:16px;transition:.3s}.chat-header .back-button:hover{background-color:#3a929e}.chat-doctor-image{border-radius:50%;height:50px;width:50px}.chat-conversation{background:#f9f9f9;border:1px solid #ccc;border-radius:5px;display:flex;flex-direction:column-reverse;height:-webkit-fill-available;margin-bottom:10px;overflow-y:auto;padding:10px}.chat-message.sent{align-items:center;align-self:flex-end;background-color:#50cada;border-radius:20px;color:#fff;display:flex;flex-direction:row-reverse;gap:10px;margin:10px 0;padding:10px;width:fit-content}.chat-message.sent img{border-radius:50px;height:50px;width:50px}.chat-message.received{align-items:center;align-self:flex-start;background-color:#e0e0e0;border-radius:20px;color:#000;display:flex;gap:10px;margin:10px 0;padding:10px;width:fit-content}.chat-message.received img{border-radius:50px;height:50px;width:50px}.message-chat-input{align-items:center;background-color:#fff;border-radius:0 0 25px 25px;border-top:1px solid #ddd;bottom:0;display:flex;gap:10px;padding:10px;position:sticky;width:98%}.message-chat-input input{border:1px solid #ccc;border-radius:5px;flex:1 1;padding:10px}.message-chat-input button{background-color:#50cada;border:none;border-radius:5px;color:#fff;cursor:pointer;padding:10px 20px}.message-chat-input button:hover{background-color:#3a94a0}.attach-label{color:#555;font-size:20px;transition:.3s}.attach-label:hover{color:#50cada}.patient-messages-chat-layout{background:#fff;border-radius:20px;box-shadow:0 25px 50px #00000026;display:flex;height:calc(100vh - 225px)}@media (max-width:992px){.patient-messages-chat-layout{height:calc(100vh - 116px);margin:1rem 0;min-height:calc(100vh - 116px)}}@media (max-width:768px){.patient-messages-chat-layout{border-radius:16px;height:calc(100vh - 104px);margin:.75rem 0;min-height:calc(100vh - 104px)}}@media (max-width:480px){.patient-messages-chat-layout{border-radius:12px;height:calc(100vh - 92px);margin:.5rem 0;min-height:calc(100vh - 92px)}}.patient-messages-chat-sidebar{background:#f8f9fa;border-radius:20px 0 0 20px;border-right:1px solid #e9ecef;display:flex;flex-direction:column;width:300px}.patient-messages-chat-header{align-items:center;border-bottom:1px solid #e9ecef;gap:1rem;padding:1.5rem}.patient-messages-chat-header h3{color:#00a3bb;font-size:21px;font-weight:600;margin:0;text-align:center}.patient-messages-back-button{align-items:center;background:#00a3bb;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;height:35px;justify-content:center;transition:all .3s ease;width:35px}.patient-messages-back-button:hover{background:#008ba3;transform:scale(1.1)}.patient-messages-doctors-list{flex:1 1;overflow-y:auto}.patient-messages-doctor-item{align-items:center;border-left:3px solid #0000;cursor:pointer;display:flex;gap:1rem;padding:13px 24px;transition:all .3s ease}.patient-messages-doctor-item:hover{background:#00a3bb0d}.patient-messages-doctor-item.active{background:#00a3bb1a;border-left-color:#00a3bb}.patient-messages-doctor-avatar{border:2px solid #00a3bb;border-radius:50%;height:45px;object-fit:cover;width:45px}.patient-messages-doctor-info{flex:1 1}.patient-messages-doctor-name{color:#1e293b;font-size:1.1rem;font-weight:600;margin:0 0 .25rem}.patient-messages-doctor-status{color:#00a3bb;font-size:.8rem}.patient-messages-doctor-specialty{color:#64748b;font-size:.9rem;margin:0}.patient-messages-chat-main{background:#fff;display:flex;flex:1 1;flex-direction:column}.patient-messages-chat-topbar{align-items:center;background:#f8f9fa;border-bottom:1px solid #e9ecef;display:flex;justify-content:space-between;padding:12px 24px}.patient-messages-doctor-profile{align-items:center;display:flex;gap:1rem}.patient-messages-chat-actions{display:flex;gap:.5rem}.patient-messages-action-button{align-items:center;background:#0000;border:none;border-radius:50%;color:#64748b;cursor:pointer;display:flex;height:35px;justify-content:center;transition:all .3s ease;width:35px}.patient-messages-action-button:hover{background:#00a3bb1a;color:#00a3bb}.patient-messages-chat-messages{display:flex;flex:1 1;flex-direction:column;gap:1rem;overflow-y:auto;padding:1.5rem}.patient-messages-chat-messages::-webkit-scrollbar{width:6px}.patient-messages-chat-messages::-webkit-scrollbar-track{background:#0000}.patient-messages-chat-messages::-webkit-scrollbar-thumb{background:#00a3bb;border-radius:3px}.patient-messages-message-container{display:flex}.patient-messages-message-container.sent{justify-content:flex-end}.patient-messages-message-container.received{justify-content:flex-start}.patient-messages-message-content{border-radius:18px;max-width:70%;padding:.75rem 1rem;position:relative}.patient-messages-message-content.sent{background:#00a3bb;border-bottom-right-radius:6px;color:#fff}.patient-messages-message-content.received{background:#f1f5f9;border-bottom-left-radius:6px;color:#1e293b}.patient-messages-message-text{font-size:.9rem;line-height:1.4;margin:0 0 .5rem}.patient-messages-message-meta{align-items:center;display:flex;font-size:.75rem;gap:.5rem;opacity:.8}.patient-messages-message-status{color:#00a3bb}.patient-messages-empty-chat{color:#64748b;padding:3rem 2rem;text-align:center}.patient-messages-empty-chat .empty-icon{font-size:3rem;margin-bottom:1rem}.patient-messages-empty-chat h4{color:#1e293b;font-size:1.1rem;margin:0 0 .5rem}.patient-messages-empty-chat p{font-size:.9rem;margin:0}.patient-messages-empty-chat-main{align-items:center;background:#f8f9fa;display:flex;height:100%;justify-content:center}.patient-messages-empty-chat-main .patient-messages-empty-chat{padding:4rem 2rem}.patient-messages-empty-chat-main .patient-messages-empty-chat h4{font-size:1.5rem;margin-bottom:.75rem}.patient-messages-empty-chat-main .patient-messages-empty-chat p{font-size:1rem}.patient-messages-chat-input{background:#f8f9fa;border-top:1px solid #e9ecef;padding:1rem 1.5rem}.patient-messages-input-group{align-items:flex-end;display:flex;gap:.75rem}.patient-messages-text-input{background:#fff;border:1px solid #00a3bb;border-radius:20px;color:#1e293b;flex:1 1;font-size:.9rem;padding:.75rem 1rem;transition:all .3s ease}.patient-messages-text-input:focus{border-color:#008ba3;box-shadow:0 0 0 3px #00a3bb1a;outline:none}.patient-messages-text-input::placeholder{color:#94a3b8}.patient-messages-input-actions{align-items:center;display:flex;gap:.5rem}.patient-messages-send-button{align-items:center;background:#00a3bb;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;height:40px;justify-content:center;transition:all .3s ease;width:40px}.patient-messages-send-button:hover:not(:disabled){background:#008ba3;transform:scale(1.1)}.patient-messages-send-button:disabled{cursor:not-allowed;opacity:.6}.patient-messages-doctors-layout{margin:0;max-width:100%;padding:20px 0;width:100%}@media (max-width:768px){.patient-messages-doctors-layout{padding:16px 0}}@media (max-width:480px){.patient-messages-doctors-layout{padding:12px 0}}.patient-messages-page-header{animation:patient-messages-fadeInDown .5s ease-out;margin-bottom:15px}@keyframes patient-messages-fadeInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.patient-messages-header-content h2{color:#0f172a;font-size:2rem;font-weight:700;letter-spacing:-.02em;line-height:1.2;margin:0 0 8px}.patient-messages-header-content p{color:#64748b;font-size:1.125rem;font-weight:400;line-height:1.6;margin:0}.patient-messages-controls{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 3px 0 #0000001a,0 1px 2px 0 #0000000f;margin-bottom:24px;padding:20px}.patient-messages-search-section{display:flex;gap:12px;justify-content:center}.patient-messages-search-input-wrapper{align-items:center;display:flex;flex:1 1;max-width:100%;position:relative}.patient-messages-search-icon{color:#94a3b8;font-size:1rem;left:16px;position:absolute;z-index:1}.patient-messages-search-input{background:#fff;border:1px solid #e2e8f0;border-radius:8px;box-sizing:border-box;color:#0f172a;font-family:inherit;font-size:.9375rem;padding:12px 16px 12px 44px;transition:all .15s ease;width:100%}.patient-messages-search-input:focus{border-color:#0f172a;box-shadow:0 0 0 3px #0f172a0d;outline:none}.patient-messages-search-input::placeholder{color:#94a3b8}.patient-messages-clear-search-btn{align-items:center;background:#0000;border:none;border-radius:4px;color:#94a3b8;cursor:pointer;display:flex;font-size:1.25rem;height:24px;justify-content:center;line-height:1;position:absolute;right:12px;transition:all .15s ease;width:24px;z-index:1}.patient-messages-clear-search-btn:hover{background:#f1f5f9;color:#0f172a}.patient-messages-loading-container{color:#64748b;padding:2rem 1rem;text-align:center}.patient-messages-loading-container p{font-size:.9rem;margin-top:1rem}.patient-messages-loading-spinner{animation:spin 1s linear infinite;border:4px solid #e9ecef;border-radius:50%;border-top-color:#00a3bb;height:50px;margin:0 auto;width:50px}.patient-messages-error-container{background:#ef44441a;border:1px solid #ef444433;border-radius:12px;color:#fca5a5;font-size:.9rem;margin:1rem;padding:1.5rem 1rem;text-align:center}.patient-messages-doctors-container{display:flex;flex-direction:column;gap:1rem;margin:0 auto;max-width:800px}.patient-messages-doctor-card{background:#fff;border:1px solid #e9ecef;border-radius:16px;cursor:pointer;overflow:hidden;padding:1.25rem;position:relative;transition:all .3s ease}.patient-messages-doctor-card:hover{border-color:#00a3bb;box-shadow:0 10px 25px #00a3bb26;transform:translateY(-2px)}.patient-messages-doctor-card:before{background:linear-gradient(90deg,#00a3bb,#008ba3);content:"";height:3px;left:0;position:absolute;right:0;top:0;transform:scaleX(0);transition:transform .3s ease}.patient-messages-doctor-card:hover:before{transform:scaleX(1)}.patient-messages-card-content{align-items:center;display:flex;gap:1rem}.patient-messages-doctor-image{border:2px solid #00a3bb;border-radius:50%;height:60px;object-fit:cover;width:60px}.patient-messages-doctor-details{flex:1 1}.patient-messages-doctor-meta{display:flex;gap:1rem;margin-top:.5rem}.patient-messages-doctor-meta .status{background:#00a3bb33;border-radius:12px;color:#00a3bb;font-size:.8rem;font-weight:600;padding:.25rem .75rem}.patient-messages-doctor-meta .last-seen{color:#64748b;font-size:.8rem}.patient-messages-card-actions{display:flex;justify-content:flex-end}.patient-messages-chat-icon{font-size:1.5rem;opacity:.8;transition:opacity .3s ease}.patient-messages-doctor-card:hover .patient-messages-chat-icon{opacity:1}.patient-videocall-page{background:#0000;box-sizing:border-box;color:#0f172a;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;max-width:100%;min-height:calc(100vh - 72px);overflow-x:hidden;padding:20px 0;width:100%}.patient-videocall-container{display:flex;gap:0;height:calc(100vh - 112px);min-height:calc(100vh - 112px);overflow:hidden;position:relative;width:100%}@media (max-width:992px){.patient-videocall-container{flex-direction:column;height:calc(100vh - 112px);min-height:calc(100vh - 112px)}}@media (max-width:768px){.patient-videocall-container{height:calc(100vh - 100px);min-height:calc(100vh - 100px)}}@media (max-width:480px){.patient-videocall-container{height:calc(100vh - 88px);min-height:calc(100vh - 88px)}}.patient-videocall-main-section{background:#0000;display:flex;flex:1 1;flex-direction:column;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;gap:1rem;min-height:0;min-width:0;overflow:hidden;padding:1rem;width:100%}@media (max-width:992px){.patient-videocall-main-section{flex:1 1 auto;gap:.75rem;min-height:0;padding:.75rem}}@media (max-width:768px){.patient-videocall-main-section{gap:.5rem;padding:.5rem}}.patient-videocall-video-section{align-items:center;background:#1a1a1a;border-radius:12px;display:flex;flex:1 1;height:600px;justify-content:center;min-height:500px;overflow:hidden;position:relative;width:100%}@media (max-width:992px){.patient-videocall-video-section{height:500px;min-height:400px}}@media (max-width:768px){.patient-videocall-video-section{height:50vh;min-height:50vh}}@media (max-width:480px){.patient-videocall-video-section{height:45vh;min-height:45vh}}.patient-videocall-practitioner-video{align-items:center;background:#1a1a1a;border-radius:12px;display:flex;height:100%;justify-content:center;min-height:500px;overflow:hidden;position:relative;width:100%}@media (max-width:992px){.patient-videocall-practitioner-video{min-height:400px}}@media (max-width:768px){.patient-videocall-practitioner-video{min-height:50vh}}@media (max-width:480px){.patient-videocall-practitioner-video{min-height:45vh}}.patient-videocall-patient-video-card{background:#1a1a1a;border:2px solid #00a3bb;border-radius:8px;box-shadow:0 4px 12px #0006;cursor:grab;height:225px;overflow:hidden;position:absolute;transition:box-shadow .2s ease;-webkit-user-select:none;user-select:none;width:300px;z-index:100}.patient-videocall-patient-video-card.patient-videocall-dragging{cursor:grabbing}.patient-videocall-patient-video-card:hover{border-color:#008ba3;box-shadow:0 6px 16px #00000080}.patient-videocall-patient-video-card #local-video{height:100%;overflow:hidden;position:relative;width:100%}.patient-videocall-patient-video-card #local-video>div{height:100%!important;width:100%!important}.patient-videocall-patient-video-card #local-video video{display:block;height:100%!important;object-fit:cover;width:100%!important}@media (max-width:992px){.patient-videocall-patient-video-card{height:188px;min-height:188px;min-width:250px;width:250px}}@media (max-width:768px){.patient-videocall-patient-video-card{height:150px;min-height:150px;min-width:200px;width:200px}}@media (max-width:480px){.patient-videocall-patient-video-card{height:113px;min-height:113px;min-width:150px;width:150px}}.patient-videocall-patient-video-label{background:#0009;border-radius:4px;color:#fff;font-size:12px;font-weight:600;left:8px;padding:4px 8px;pointer-events:none;position:absolute;top:8px;z-index:101}@media (max-width:768px){.patient-videocall-patient-video-label{font-size:11px;padding:3px 6px}}@media (max-width:480px){.patient-videocall-patient-video-label{font-size:10px;padding:2px 5px}}.patient-videocall-video-title{align-items:center;background:#0009;border-radius:6px;color:#fff;display:flex;font-size:14px;font-weight:600;gap:6px;left:12px;margin:0;padding:6px 12px;pointer-events:none;position:absolute;top:12px;z-index:10}@media (max-width:768px){.patient-videocall-video-title{font-size:12px;padding:4px 8px}}@media (max-width:480px){.patient-videocall-video-title{font-size:11px;padding:3px 6px}}.patient-videocall-video-stream{background:#1a1a1a;height:100%;overflow:hidden;position:relative;width:100%}.patient-videocall-video-stream.local-video{border-radius:8px}.patient-videocall-video-stream.remote-video{border-radius:12px}.patient-videocall-waiting-message{color:#fff;font-size:18px;left:50%;position:absolute;text-align:center;top:50%;transform:translate(-50%,-50%)}.patient-videocall-video-loading{align-items:center;color:#fff;display:flex;font-size:14px;height:100%;justify-content:center}.patient-videocall-camera-test-video{display:block}.patient-videocall-precall-overlay{align-items:center;bottom:20px;display:flex;justify-content:center;left:50%;pointer-events:auto;position:absolute;transform:translateX(-50%);z-index:100}.patient-videocall-precall-controls{align-items:center;backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);background:#ffffff1a;border:1px solid #fff3;border-radius:16px;box-shadow:0 8px 32px 0 #0000005e;display:flex;flex-direction:column;gap:1rem;padding:1.5rem 2rem}@media (max-width:768px){.patient-videocall-precall-controls{gap:.75rem;padding:1rem 1.5rem}}.patient-videocall-precall-buttons-row{align-items:center;display:flex;flex-direction:row;flex-wrap:wrap;gap:1rem;justify-content:center}@media (max-width:768px){.patient-videocall-precall-buttons-row{gap:.75rem}}.patient-videocall-device-control-wrapper{align-items:center;display:flex;flex-direction:column;gap:.5rem}.patient-videocall-device-selector{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #ffffff4d;border-radius:6px;color:#fff;cursor:pointer;font-size:.75rem;max-width:150px;overflow:hidden;padding:.25rem .5rem;text-overflow:ellipsis;white-space:nowrap}.patient-videocall-device-selector:hover{background:#ffffff26;border-color:#fff6}.patient-videocall-device-selector:focus{background:#fff3;border-color:#ffffff80;outline:none}.patient-videocall-device-selector option{background:#2a2a2a;color:#fff}@media (max-width:768px){.patient-videocall-device-selector{font-size:.7rem;max-width:120px;padding:.2rem .4rem}}.patient-videocall-device-button-group{align-items:center;display:flex;flex-direction:row;gap:.5rem}.patient-videocall-device-arrow-wrapper{align-items:center;display:flex;position:relative}.patient-videocall-device-arrow-btn{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #ffffff4d;border-radius:50%;color:#fff;cursor:pointer;display:flex;flex-shrink:0;font-size:.7rem;height:30px;justify-content:center;transition:all .2s ease;width:30px}.patient-videocall-device-arrow-btn.active{background:#fff3}.patient-videocall-device-arrow-btn:hover{background:#fff3;border-color:#fff6;transform:scale(1.1)}.patient-videocall-device-arrow-btn:active{transform:scale(.95)}@media (max-width:768px){.patient-videocall-device-arrow-btn{font-size:.65rem;height:28px;width:28px}}.patient-videocall-device-dropdown{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#282828f2;border:1px solid #fff3;border-radius:8px;bottom:100%;box-shadow:0 8px 32px #0006;display:flex;flex-direction:column;gap:.25rem;left:0;margin-bottom:.5rem;max-height:200px;max-width:250px;min-width:200px;overflow-y:auto;padding:.5rem 0;position:absolute;z-index:200}.patient-videocall-device-dropdown::-webkit-scrollbar{width:6px}.patient-videocall-device-dropdown::-webkit-scrollbar-track{background:#ffffff1a;border-radius:3px}.patient-videocall-device-dropdown::-webkit-scrollbar-thumb{background:#ffffff4d;border-radius:3px}.patient-videocall-device-dropdown::-webkit-scrollbar-thumb:hover{background:#fff6}@media (max-width:768px){.patient-videocall-device-dropdown{max-height:150px;max-width:200px;min-width:180px}}.patient-videocall-device-option{background:#0000;border-left:3px solid #0000;color:#fff;cursor:pointer;font-size:.85rem;padding:.5rem 1rem;transition:all .2s ease}.patient-videocall-device-option.active{background:#00a3bb4d;border-left:3px solid #00a3bb}.patient-videocall-device-option:hover{background:#ffffff1a;padding-left:1.25rem}@media (max-width:768px){.patient-videocall-device-option{font-size:.8rem;padding:.4rem .75rem}}.patient-videocall-controls-section{align-items:center;backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);background:#ffffff1a;border:1px solid #fff3;border-radius:16px;bottom:20px;box-shadow:0 8px 32px 0 #0000005e;display:flex;flex-direction:row;gap:16px;justify-content:center;left:50%;min-width:300px;padding:20px 24px;pointer-events:auto;position:absolute;transform:translateX(-50%);width:auto;z-index:1000}@media (max-width:768px){.patient-videocall-controls-section{bottom:15px;gap:12px;min-width:280px;padding:16px 20px}}@media (max-width:480px){.patient-videocall-controls-section{bottom:10px;gap:10px;min-width:260px;padding:12px 16px}}.patient-videocall-control-buttons{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;justify-content:center}.patient-videocall-control-btn{align-items:center;background:#6c757d;border:none;border-radius:50%;box-shadow:0 4px 12px #00000026;color:#fff;cursor:pointer;display:flex;flex-shrink:0;font-size:1.2rem;height:60px;justify-content:center;position:relative;transition:all .3s ease;width:60px}.patient-videocall-control-btn.active{background:#4caf50}.patient-videocall-control-btn.active:hover{background:#45a049;transform:scale(1.05)}.patient-videocall-control-btn:not(.active):hover{background:#5a6268;transform:scale(1.05)}.patient-videocall-control-btn.join{background:linear-gradient(135deg,#00a3bb,#008ba3);color:#fff}.patient-videocall-control-btn.join:hover:not(:disabled){background:linear-gradient(135deg,#008ba3,#007a8f);transform:scale(1.05)}.patient-videocall-control-btn.leave{background:#dc3545;color:#fff}.patient-videocall-control-btn.leave:hover{background:#c82333;transform:scale(1.05)}.patient-videocall-control-btn:disabled{cursor:not-allowed;opacity:.5;transform:none!important}.patient-videocall-control-btn:active:not(:disabled){transform:scale(.95)}@media (max-width:768px){.patient-videocall-control-btn{font-size:18px;height:50px;width:50px}}@media (max-width:480px){.patient-videocall-control-btn{font-size:16px;height:44px;width:44px}}.patient-videocall-join-button{background:linear-gradient(135deg,#00a3bb,#008ba3);border:none;border-radius:16px;color:#fff;cursor:pointer;font-size:1.1rem;font-weight:700;min-width:200px;padding:1rem 2rem;transition:all .2s ease}.patient-videocall-join-button:disabled{background:#6c757d;cursor:not-allowed;opacity:.6}.patient-videocall-join-button:not(:disabled):hover{background:linear-gradient(135deg,#008ba3,#007a8f);box-shadow:0 8px 25px #00a3bb4d;transform:translateY(-2px)}.patient-videocall-subtitle-overlay{word-wrap:break-word;animation:patient-videocall-fadeIn .3s ease-in;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#000000bf;border-radius:8px;bottom:20px;box-shadow:0 4px 12px #0000004d;color:#fff;font-size:18px;font-weight:500;left:50%;line-height:1.4;max-width:90%;padding:12px 20px;position:absolute;text-align:center;transform:translateX(-50%);z-index:10}@keyframes patient-videocall-fadeIn{0%{opacity:0;transform:translateX(-50%) translateY(10px)}to{opacity:1;transform:translateX(-50%) translateY(0)}}@media (max-width:992px){.patient-videocall-subtitle-overlay{font-size:17px;max-width:88%;padding:11px 18px}}@media (max-width:768px){.patient-videocall-subtitle-overlay{border-radius:6px;bottom:15px;font-size:16px;max-width:85%;padding:10px 16px}}@media (max-width:480px){.patient-videocall-subtitle-overlay{border-radius:4px;bottom:10px;font-size:14px;line-height:1.3;max-width:80%;padding:8px 12px}}@media (max-width:360px){.patient-videocall-subtitle-overlay{bottom:8px;font-size:12px;max-width:85%;padding:6px 10px}}.patient-videocall-volume-indicator{align-items:center;background:#ffffffe6;border:1px solid #00a3bb33;border-radius:12px;display:flex;flex-direction:column;gap:.5rem;min-width:200px;padding:1rem}.patient-videocall-volume-label{color:#495057;font-size:.8rem;font-weight:600}.patient-videocall-volume-bar{background:#e9ecef;border:1px solid #dee2e6;border-radius:10px;height:20px;overflow:hidden;position:relative;width:100%}.patient-videocall-volume-fill{background:linear-gradient(90deg,#00a3bb,#008ba3);border-radius:10px;height:100%;transition:width .05s ease-out}.patient-videocall-volume-readout{color:#1e293b;font-size:.85rem;font-weight:600}.patient-videocall-volume-hint{color:#6c757d;font-size:.75rem;font-style:italic;text-align:center}.patient-videocall-listening-indicator{background-color:#4caf50;border-radius:50%;display:inline-block;height:10px;margin-right:.5rem;width:10px}.patient-videocall-camera-test-container{align-items:center;background:#ffffffe6;border:1px solid #00a3bb33;border-radius:12px;display:flex;flex-direction:column;gap:.5rem;min-width:300px;padding:1rem}.patient-videocall-camera-status{color:#495057;font-size:.8rem;font-weight:600}.patient-videocall-camera-test-video{background:#f8f9fa;border:2px solid #e9ecef;border-radius:10px;height:225px;object-fit:cover;width:300px}.patient-videocall-camera-hint{color:#6c757d;font-size:.75rem;font-style:italic;text-align:center}.patient-videocall-questions-sidebar{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border:none;border-radius:0;box-shadow:-4px 0 16px #0000001a;flex-shrink:0;max-height:100%;opacity:0;overflow:hidden;overflow-y:hidden;padding:0;position:relative;transition:width .3s ease,padding .3s ease,border .3s ease,opacity .3s ease;width:0}.patient-videocall-questions-sidebar.visible{border:1px solid #fff3;opacity:1;overflow:visible;overflow-y:auto;padding:16px;width:320px}@media (max-width:1200px){.patient-videocall-questions-sidebar.visible{padding:14px;width:280px}}@media (max-width:992px){.patient-videocall-questions-sidebar{border:none;border-radius:0;bottom:0;box-shadow:-4px 0 16px #0000004d;height:100vh;max-width:0;overflow-y:hidden;padding:0;position:fixed;right:-100%;top:0;transition:right .3s ease,width .3s ease,padding .3s ease;width:0;z-index:2000}.patient-videocall-questions-sidebar.visible{max-width:75%;overflow-y:auto;padding:14px;right:0;width:75%}}@media (max-width:768px){.patient-videocall-questions-sidebar.visible{max-width:75%;padding:12px;right:0;width:75%}}@media (max-width:480px){.patient-videocall-questions-sidebar.visible{padding:10px}}.patient-videocall-close-btn{align-items:center;background:#0000001a;border:none;border-radius:50%;color:#2c3e50;cursor:pointer;display:flex;font-size:16px;height:32px;justify-content:center;position:absolute;right:12px;top:12px;transition:all .2s ease;width:32px;z-index:10}.patient-videocall-close-btn:hover{background:#0003;transform:scale(1.1)}.patient-videocall-close-btn:active{transform:scale(.95)}@media (max-width:768px){.patient-videocall-close-btn{font-size:14px;height:28px;right:10px;top:10px;width:28px}}@media (max-width:480px){.patient-videocall-close-btn{font-size:13px;height:26px;right:8px;top:8px;width:26px}}.patient-videocall-panel-title{align-items:center;color:#2c3e50;display:flex;font-size:18px;font-weight:700;gap:8px;margin:0 0 20px}.patient-videocall-panel-title svg{color:#000}@media (max-width:992px){.patient-videocall-panel-title{font-size:17px;margin-bottom:18px}}@media (max-width:768px){.patient-videocall-panel-title{font-size:16px;gap:6px;margin-bottom:16px}}@media (max-width:480px){.patient-videocall-panel-title{font-size:15px;gap:5px;margin-bottom:14px}}.patient-videocall-questions-content{flex:1 1;margin-top:20px;overflow-y:auto;padding:0}@media (max-width:768px){.patient-videocall-questions-content{margin-top:16px}}.patient-videocall-questions-list{display:flex;flex:1 1;flex-direction:column;gap:1.5rem;overflow-y:auto;padding:1rem}.patient-videocall-questions-section{display:flex;flex-direction:column;gap:.75rem}.patient-videocall-questions-section-title{color:#64748b;font-size:.9rem;font-weight:600;letter-spacing:.5px;margin:0 0 .5rem;text-transform:uppercase}.patient-videocall-empty-questions{align-items:center;color:#64748b;display:flex;flex-direction:column;height:100%;justify-content:center;padding:2rem;text-align:center}.patient-videocall-empty-questions-icon{color:#94a3b8;font-size:2rem;margin-bottom:.5rem}.patient-videocall-empty-questions-subtitle{color:#64748b;font-size:.9rem;margin-top:.25rem}.patient-videocall-question-item{align-items:flex-start;background:#f8fafc;border:1px solid #e2e8f0;border-left:3px solid #cbd5e1;border-radius:8px;display:flex;gap:.75rem;margin-bottom:.75rem;padding:1rem;transition:all .2s ease}.patient-videocall-question-item.backend{background:#e0f2fe;border:1px solid #7dd3fc;border-left:3px solid #00a3bb}.patient-videocall-question-item:hover{background:#f1f5f9;border-color:#cbd5e1}.patient-videocall-question-item.backend:hover{background:#dbeafe;border-color:#38bdf8}.patient-videocall-questions-text-container{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;margin-top:.5rem;max-height:500px;overflow-y:auto;padding:1rem}.patient-videocall-questions-text-container::-webkit-scrollbar{width:6px}.patient-videocall-questions-text-container::-webkit-scrollbar-track{background:#f1f5f9;border-radius:3px}.patient-videocall-questions-text-container::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}.patient-videocall-questions-text-container::-webkit-scrollbar-thumb:hover{background:#94a3b8}.patient-videocall-question-text{word-wrap:break-word;color:#1e293b;flex:1 1;font-size:.95rem;line-height:1.5;white-space:pre-wrap}.patient-videocall-summary-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0009;bottom:0;left:0;position:fixed;right:0;top:0;transition:opacity .3s ease;z-index:3000}.patient-videocall-summary-overlay.hidden{display:none}.patient-videocall-summary-modal{animation:patient-videocall-slideIn .3s ease;background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;display:flex;flex-direction:column;left:50%;max-height:90vh;max-width:800px;overflow:hidden;position:fixed;top:50%;transform:translate(-50%,-50%);width:90%;z-index:3001}@keyframes patient-videocall-slideIn{0%{opacity:0;transform:translate(-50%,-45%)}to{opacity:1;transform:translate(-50%,-50%)}}.patient-videocall-summary-modal.hidden{display:none}@media (max-width:768px){.patient-videocall-summary-modal{border-radius:12px;max-height:95vh;width:95%}}.patient-videocall-summary-modal-header{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-bottom:1px solid #e2e8f0;color:#fff;display:flex;justify-content:space-between;padding:1.5rem}@media (max-width:768px){.patient-videocall-summary-modal-header{padding:1rem}}.patient-videocall-summary-modal-title{align-items:center;display:flex;font-size:1.5rem;font-weight:600;gap:.75rem;margin:0}@media (max-width:768px){.patient-videocall-summary-modal-title{font-size:1.25rem}}.patient-videocall-summary-modal-close{align-items:center;background:#fff3;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;height:36px;justify-content:center;transition:all .2s ease;width:36px}.patient-videocall-summary-modal-close:hover{background:#ffffff4d;transform:scale(1.1)}.patient-videocall-summary-modal-close:active{transform:scale(.95)}.patient-videocall-summary-modal-content{display:flex;flex:1 1;flex-direction:column;gap:1.5rem;overflow-y:auto;padding:1.5rem}@media (max-width:768px){.patient-videocall-summary-modal-content{gap:1rem;padding:1rem}}.patient-videocall-summary-section{display:flex;flex-direction:column;gap:.75rem}.patient-videocall-summary-section-title{border-bottom:2px solid #e2e8f0;color:#1e293b;font-size:1.1rem;font-weight:600;margin:0;padding-bottom:.5rem}@media (max-width:768px){.patient-videocall-summary-section-title{font-size:1rem}}.patient-videocall-summary-text{word-wrap:break-word;color:#475569;font-size:1rem;line-height:1.7;white-space:pre-wrap}.patient-videocall-summary-text.loading{color:#6c757d;font-style:italic;padding:2rem;text-align:center}@media (max-width:768px){.patient-videocall-summary-text{font-size:.95rem}}.patient-videocall-summary-modal-footer{background:#f8fafc;border-top:1px solid #e2e8f0;display:flex;justify-content:flex-end;padding:1rem 1.5rem}@media (max-width:768px){.patient-videocall-summary-modal-footer{padding:.75rem 1rem}}.patient-videocall-summary-modal-button{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:.75rem 2rem;transition:all .2s ease}.patient-videocall-summary-modal-button:hover{box-shadow:0 4px 12px #667eea66;transform:translateY(-2px)}.patient-videocall-summary-modal-button:active{transform:translateY(0)}@media (max-width:768px){.patient-videocall-summary-modal-button{font-size:.9rem;padding:.625rem 1.5rem}}@media (max-width:1200px){.patient-videocall-page{padding:20px 0}}@media (max-width:992px){.patient-videocall-page{padding:20px 0}}@media (max-width:768px){.patient-videocall-page{min-height:calc(100vh - 68px);padding:16px 0}}@media (max-width:480px){.patient-videocall-page{min-height:calc(100vh - 64px);padding:12px 0}}.patient-chatbot-page{background:#0000;display:flex;flex-direction:column;padding:20px 0;position:relative;width:100%}.patient-chatbot-page-header{animation:patient-chatbot-fadeInDown .5s ease-out;margin-bottom:32px}@keyframes patient-chatbot-fadeInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.patient-chatbot-header-content{align-items:flex-start;display:flex;justify-content:space-between}.patient-chatbot-header-content>div{flex:1 1}.patient-chatbot-header-content h2{color:#0f172a;font-size:2rem;font-weight:700;letter-spacing:-.02em;line-height:1.2;margin:0 0 8px}.patient-chatbot-header-content p{color:#64748b;font-size:1.125rem;font-weight:400;line-height:1.6;margin:0}.patient-chatbot-icon{color:#fff;font-size:1.2rem;margin-right:.5rem}.patient-chatbot-mode-toggle-btn{background:#00a3bb;border:none;border-radius:16px;box-shadow:0 15px 35px #00a3bb4d;color:#fff;cursor:pointer;font-size:1rem;font-weight:700;margin-right:15px;overflow:hidden;padding:1rem 2rem;position:relative;transition:all .4s cubic-bezier(.175,.885,.32,1.275)}.patient-chatbot-mode-toggle-btn:before{background:linear-gradient(90deg,#0000,#fff3,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s;width:100%}.patient-chatbot-mode-toggle-btn:hover{box-shadow:0 20px 40px #00a3bb66;transform:translateY(-3px) scale(1.05)}.patient-chatbot-mode-toggle-btn:hover:before{left:100%}.patient-chatbot-mode-toggle-btn:active{transform:translateY(-1px) scale(1.02)}.patient-chatbot-header-actions{align-items:center;display:flex;flex-shrink:0;gap:.75rem;justify-content:flex-end}.patient-chatbot-clear-btn{align-items:center;background:#0000;border:2px solid #e2e8f0;border-radius:16px;color:#64748b;cursor:pointer;display:flex;font-size:.95rem;font-weight:600;gap:.5rem;overflow:hidden;padding:.875rem 1.5rem;position:relative;transition:all .3s cubic-bezier(.175,.885,.32,1.275)}.patient-chatbot-clear-btn:before{background:linear-gradient(90deg,#0000,#ef44441a,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s;width:100%}.patient-chatbot-clear-btn:hover:not(:disabled){background:#ef444414;border-color:#ef4444;box-shadow:0 8px 20px #ef444426;color:#ef4444;transform:translateY(-2px)}.patient-chatbot-clear-btn:hover:not(:disabled):before{left:100%}.patient-chatbot-clear-btn:active:not(:disabled){transform:translateY(0) scale(.98)}.patient-chatbot-clear-btn:disabled{cursor:not-allowed;opacity:.5;transform:none}.patient-chatbot-clear-btn svg{font-size:.9rem;transition:transform .3s ease}.patient-chatbot-clear-btn:hover:not(:disabled) svg{transform:scale(1.1)}@media (max-width:768px){.patient-chatbot-header-actions{flex-direction:column;gap:.5rem;width:100%}.patient-chatbot-clear-btn,.patient-chatbot-mode-toggle-btn{font-size:.9rem;justify-content:center;padding:.75rem 1rem;width:100%}.patient-chatbot-header-content{flex-direction:column;gap:1rem}}.patient-chatbot-chatbox{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#fffffffa;border:1px solid #ffffff4d;border-radius:24px;box-shadow:0 25px 50px #00000026;display:flex;flex:1 1;flex-direction:column;max-height:calc(100vh - 300px);min-height:73.5vh;overflow:scroll;padding:1.5rem;position:relative}.patient-chatbot-messages-container{flex:1 1;margin-bottom:1rem;padding-bottom:1rem}.patient-chatbot-messages-container::-webkit-scrollbar{width:8px}.patient-chatbot-messages-container::-webkit-scrollbar-track{background:#f1f5f980;border-radius:4px}.patient-chatbot-messages-container::-webkit-scrollbar-thumb{background:#00a3bb;border-radius:4px}.patient-chatbot-messages-container::-webkit-scrollbar-thumb:hover{background:#008ba3}.patient-chatbot-message-wrapper{display:flex;margin-bottom:.75rem}.patient-chatbot-message-wrapper.user{justify-content:flex-end}.patient-chatbot-message-wrapper.bot{justify-content:flex-start}.patient-chatbot-message-bubble{word-wrap:break-word;border-radius:20px;box-shadow:0 8px 25px #0000001a;font-size:1rem;line-height:1.5;max-width:70%;padding:1rem 1.5rem;position:relative}.patient-chatbot-message-bubble.user{background:#00a3bb;border-bottom-right-radius:8px;color:#fff;transform:translateX(0)}.patient-chatbot-message-bubble.user:before{border-left:8px solid #00a3bb;border-top:8px solid #0000;bottom:0;content:"";height:0;position:absolute;right:-3px;width:0}.patient-chatbot-message-bubble.bot{background:linear-gradient(135deg,#fffffff2,#ffffffd9);border:2px solid #00a3bb33;border-bottom-left-radius:8px;color:#1e293b;transform:translateX(0)}.patient-chatbot-message-bubble.bot:before{border-right:8px solid #fffffff2;border-top:8px solid #0000;bottom:0;content:"";height:0;left:-8px;position:absolute;width:0}.patient-chatbot-typing-indicator{align-items:center;background:linear-gradient(135deg,#ffffffe6,#ffffffb3);border:2px solid #00a3bb33;border-radius:20px;display:flex;gap:.5rem;max-width:120px;padding:1.5rem 2rem}.patient-chatbot-typing-indicator span{animation:patient-chatbot-typing 1.4s ease-in-out infinite;background:#00a3bb;border-radius:50%;box-shadow:0 2px 8px #00a3bb4d;height:12px;width:12px}.patient-chatbot-typing-indicator span:first-child{animation-delay:-.32s}.patient-chatbot-typing-indicator span:nth-child(2){animation-delay:-.16s}@keyframes patient-chatbot-typing{0%,80%,to{opacity:.5;transform:scale(.8)}40%{opacity:1;transform:scale(1.2)}}.patient-chatbot-doctor-carousel{background:#ffffffe6;border:2px solid #e5e7eb;border-radius:16px;margin-top:1rem;overflow:hidden;padding:1.5rem;position:relative}.patient-chatbot-doctor-carousel h4{color:#1e293b;font-size:1.1rem;font-weight:600;margin:0 0 1rem}.patient-chatbot-doctor-slider{display:flex;gap:1rem;overflow-x:auto;padding:.5rem 0;scroll-behavior:smooth}.patient-chatbot-doctor-slider::-webkit-scrollbar{height:6px}.patient-chatbot-doctor-slider::-webkit-scrollbar-track{background:#f1f5f9;border-radius:3px}.patient-chatbot-doctor-slider::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}.patient-chatbot-doctor-slider::-webkit-scrollbar-thumb:hover{background:#94a3b8}.patient-chatbot-doctor-card{background:#fffc;border:2px solid #e5e7eb;border-radius:12px;cursor:pointer;min-width:320px;padding:1rem;position:relative;transition:all .3s ease}.patient-chatbot-doctor-card:hover{border-color:#00a3bb;box-shadow:0 10px 25px #00a3bb26;transform:translateY(-2px)}.patient-chatbot-doctor-card-row{display:flex;gap:1rem;margin-bottom:1rem}.patient-chatbot-doctor-image{border:2px solid #e5e7eb;border-radius:50%;height:60px;object-fit:cover;width:60px}.patient-chatbot-doctor-info{flex:1 1}.patient-chatbot-doctor-name{align-items:center;color:#1e293b;display:flex;font-size:1rem;font-weight:600;gap:.5rem;margin-bottom:.25rem}.patient-chatbot-verified-badge{align-items:center;background:#00a3bb;border-radius:50%;color:#fff;display:flex;font-size:.7rem;font-weight:700;height:16px;justify-content:center;width:16px}.patient-chatbot-doctor-specialty{color:#64748b;font-size:.9rem;margin-bottom:.25rem}.patient-chatbot-doctor-experience{color:#64748b;font-size:.8rem;margin-bottom:.25rem}.patient-chatbot-doctor-rating{align-items:center;color:#64748b;display:flex;font-size:.8rem;gap:.25rem}.patient-chatbot-stars{color:#fbbf24}.patient-chatbot-doctor-actions{display:flex;gap:.5rem;margin-top:1rem}.patient-chatbot-doctor-button{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;flex:1 1;font-size:.8rem;font-weight:600;gap:.25rem;justify-content:center;padding:.5rem;transition:all .3s ease}.patient-chatbot-doctor-button.view-profile{background:#00a3bb1a;color:#00a3bb}.patient-chatbot-doctor-button.view-profile:hover{background:#00a3bb33}.patient-chatbot-doctor-button.book-appointment{background:linear-gradient(135deg,#00a3bb,#008ba3);color:#fff}.patient-chatbot-doctor-button.book-appointment:hover{box-shadow:0 5px 15px #00a3bb4d;transform:translateY(-1px)}.patient-chatbot-doctor-button.book-appointment:disabled{cursor:not-allowed;opacity:.7;transform:none}.patient-chatbot-doctor-button.invite{background:#6b72801a;color:#6b7280}.patient-chatbot-doctor-button.invite:hover{background:#6b728033}.patient-chatbot-badge{border-radius:6px;font-size:.7rem;font-weight:600;padding:.25rem .5rem;position:absolute;right:.5rem;top:.5rem}.patient-chatbot-badge.instant-book{background:#22c55e1a;color:#16a34a}.patient-chatbot-badge.approval-required{background:#f59e0b1a;color:#d97706}.patient-chatbot-carousel-nav{align-items:center;background:#ffffffe6;border:1px solid #e5e7eb;border-radius:50%;cursor:pointer;display:flex;height:32px;justify-content:center;position:absolute;top:50%;transform:translateY(-50%);transition:all .3s ease;width:32px;z-index:10}.patient-chatbot-carousel-nav:hover{background:#fff;box-shadow:0 5px 15px #0000001a}.patient-chatbot-carousel-nav.left{left:.5rem}.patient-chatbot-carousel-nav.right{right:.5rem}.patient-chatbot-carousel-dots{display:flex;gap:.5rem;justify-content:center;margin-top:1rem}.patient-chatbot-carousel-dot{background:#cbd5e1;border:none;border-radius:50%;cursor:pointer;height:8px;transition:all .3s ease;width:8px}.patient-chatbot-carousel-dot:hover{background:#94a3b8}.patient-chatbot-carousel-dot.active,.patient-chatbot-carousel-dot.active:hover{background:#00a3bb}.patient-chatbot-suggested-responses{animation:suggestedResponsesFadeIn .5s ease-out forwards;display:flex;flex-direction:column;gap:.625rem;margin-bottom:.5rem;margin-top:.75rem;max-width:30%;padding:0 .5rem}@keyframes suggestedResponsesFadeIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.patient-chatbot-suggested-responses:before{color:#64748b;content:"💡 Quick replies";display:block;font-size:.75rem;font-weight:600;letter-spacing:.05em;margin-bottom:.25rem;padding-left:.25rem;text-transform:uppercase}.patient-chatbot-suggested-response-button{align-items:center;animation:suggestedButtonSlideIn .4s ease-out forwards;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:linear-gradient(135deg,#fffffff2,#f8fafcf2);border:1.5px solid #00a3bb40;border-radius:16px;box-shadow:0 2px 8px #0000000a,0 1px 2px #0000000f;color:#0f172a;cursor:pointer;display:flex;font-size:.9rem;font-weight:500;gap:.75rem;line-height:1.4;opacity:0;overflow:hidden;padding:.875rem 1.25rem;position:relative;text-align:left;transition:all .3s cubic-bezier(.4,0,.2,1)}.patient-chatbot-suggested-response-button:nth-child(2){animation-delay:.1s}.patient-chatbot-suggested-response-button:nth-child(3){animation-delay:.2s}.patient-chatbot-suggested-response-button:nth-child(4){animation-delay:.3s}@keyframes suggestedButtonSlideIn{0%{opacity:0;transform:translateX(-16px)}to{opacity:1;transform:translateX(0)}}.patient-chatbot-suggested-response-button:before{align-items:center;background:linear-gradient(135deg,#00a3bb,#008ba3);border-radius:50%;box-shadow:0 2px 6px #00a3bb4d;color:#fff;content:"→";display:flex;flex-shrink:0;font-size:.85rem;font-weight:600;height:28px;justify-content:center;transition:all .3s cubic-bezier(.4,0,.2,1);width:28px}.patient-chatbot-suggested-response-button:after{background:linear-gradient(90deg,#0000,#00a3bb14,#0000);content:"";height:100%;left:-100%;pointer-events:none;position:absolute;top:0;transition:left .5s ease;width:100%}.patient-chatbot-suggested-response-button:hover{background:linear-gradient(135deg,#00a3bb14,#00a3bb1f);border-color:#00a3bb80;box-shadow:0 6px 20px #00a3bb26,0 2px 6px #00000014;transform:translateX(4px)}.patient-chatbot-suggested-response-button:hover:before{box-shadow:0 4px 12px #00a3bb66;transform:scale(1.1)}.patient-chatbot-suggested-response-button:hover:after{left:100%}.patient-chatbot-suggested-response-button:active{box-shadow:0 2px 8px #00a3bb33;transform:translateX(2px) scale(.99)}.patient-chatbot-suggested-response-button:focus{border-color:#00a3bb;box-shadow:0 0 0 3px #00a3bb33,0 6px 20px #00a3bb26;outline:none}.patient-chatbot-suggested-response-button:disabled{cursor:not-allowed;opacity:.6;transform:none}.patient-chatbot-suggested-response-text{-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;flex:1 1;overflow:hidden;text-overflow:ellipsis}@media (max-width:768px){.patient-chatbot-suggested-responses{gap:.5rem;max-width:95%}.patient-chatbot-suggested-response-button{border-radius:14px;font-size:.85rem;padding:.75rem 1rem}.patient-chatbot-suggested-response-button:before{font-size:.75rem;height:24px;width:24px}}@media (max-width:480px){.patient-chatbot-suggested-responses:before{font-size:.7rem}.patient-chatbot-suggested-response-button{font-size:.8rem;gap:.5rem;padding:.625rem .875rem}.patient-chatbot-suggested-response-button:before{font-size:.7rem;height:22px;width:22px}}.patient-chatbot-input-container{border-top:1px solid #00a3bb1a;display:flex;flex-shrink:0;gap:1.5rem;padding-top:1rem}.patient-chatbot-text-input{background:#fffffff2;border:2px solid #00a3bb33;border-radius:20px;box-shadow:0 8px 25px #0000000d;flex:1 1;font-size:1.1rem;padding:1.25rem 1.5rem;transition:all .4s cubic-bezier(.175,.885,.32,1.275)}.patient-chatbot-text-input:focus{border-color:#00a3bb;box-shadow:0 0 0 4px #00a3bb26,0 12px 35px #00a3bb33;outline:none;transform:translateY(-2px)}.patient-chatbot-text-input::placeholder{color:#94a3b8;font-weight:500}.patient-chatbot-text-input:hover{border-color:#00a3bb66;transform:translateY(-1px)}.patient-chatbot-send-button{align-items:center;background:#00a3bb;border:none;border-radius:20px;box-shadow:0 15px 35px #00a3bb4d;color:#fff;cursor:pointer;display:flex;font-size:1.1rem;font-weight:700;gap:.75rem;justify-content:center;min-width:140px;overflow:hidden;padding:1.25rem 2rem;position:relative;transition:all .4s cubic-bezier(.175,.885,.32,1.275)}.patient-chatbot-send-button:before{background:linear-gradient(90deg,#0000,#fff3,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s;width:100%}.patient-chatbot-send-button:hover:not(:disabled){box-shadow:0 20px 40px #00a3bb66;transform:translateY(-3px) scale(1.05)}.patient-chatbot-send-button:hover:not(:disabled):before{left:100%}.patient-chatbot-send-button:active:not(:disabled){transform:translateY(-1px) scale(1.02)}.patient-chatbot-send-button:disabled{box-shadow:0 8px 20px #00a3bb33;cursor:not-allowed;opacity:.7;transform:none}.patient-chatbot-loading-spinner{animation:patient-chatbot-spin 1s ease-in-out infinite;border:2px solid #ffffff4d;border-radius:50%;border-top-color:#fff;box-shadow:0 2px 8px #fff3;display:inline-block;height:18px;width:18px}@keyframes patient-chatbot-spin{to{transform:rotate(1turn)}}.chat-widget{animation:chatWidgetEntrance .8s cubic-bezier(.34,1.56,.64,1);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:linear-gradient(135deg,#fff,#f8fafc);border-radius:20px;bottom:32px;box-shadow:0 20px 60px #0000001f,0 8px 25px #00000014,0 0 0 1px #fffc;display:flex;flex-direction:column;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;height:600px;max-height:85vh;max-width:90vw;overflow:visible;position:fixed;right:32px;transition:all .4s cubic-bezier(.4,0,.2,1);width:450px;z-index:3000}@keyframes chatWidgetEntrance{0%{opacity:0;transform:translateY(40px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.chat-widget:hover{box-shadow:0 40px 100px #50cada4d,0 20px 50px #0000001f;cursor:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='36' height='36' viewBox='0 0 24 24'%3E%3Cpath fill='%23FFF' stroke='%2300A1AA' stroke-width='1.25' stroke-linejoin='round' d='M10 11V8.99c0-.88.59-1.64 1.44-1.86h.05A1.99 1.99 0 0 1 14 9.05V12v-2c0-.88.6-1.65 1.46-1.87h.05A1.98 1.98 0 0 1 18 10.06V13v-1.94a2 2 0 0 1 1.51-1.94A2 2 0 0 1 22 11.06V14c0 .6-.08 1.27-.21 1.97a7.96 7.96 0 0 1-7.55 6.48 54.98 54.98 0 0 1-4.48 0 7.96 7.96 0 0 1-7.55-6.48C2.08 15.27 2 14.59 2 14v-1.49c0-1.11.9-2.01 2.01-2.01a2 2 0 0 1 2.01 2.03l-.01.97v-10c0-1.1.9-2 2-2a2 2 0 0 1 2 2V11Z'/%3E%3C/svg%3E"),auto!important;transform:translateY(-2px)}.chat-widget-header{align-items:center;animation:headerSlideIn .6s ease-out .2s both;background:linear-gradient(135deg,#50cada,#3bb8c8);border-bottom:1px solid #ffffff1a;border-radius:20px;box-sizing:border-box;color:#fff;display:flex;gap:16px;justify-content:flex-end;min-height:70px;overflow:visible;padding:20px 24px;position:relative}@keyframes headerSlideIn{0%{opacity:0;transform:translateY(-20px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.chat-widget-header-logo{align-items:center;display:flex;height:80px;justify-content:center;left:18%;position:absolute;top:-25px;transform:translateX(-50%);width:80px;z-index:10}.chat-widget-header-logo img{background:#ffffff1a;border-radius:50%;box-sizing:border-box;filter:drop-shadow(0 4px 12px rgba(0,0,0,.3));height:100%;object-fit:contain;padding:8px;width:100%}.chat-widget-header-text{color:#fff;font-size:14px;font-weight:600;left:30%;position:absolute;text-align:left;text-shadow:0 2px 4px #0000004d;top:50%;transform:translateY(-50%);z-index:10}.chat-widget-header-text h3{color:#fff;font-size:16px;font-weight:700;margin:0 0 4px;text-shadow:none}.chat-widget-online-status{align-items:center;display:flex;font-size:12px;gap:6px;justify-content:center;opacity:.9}.online-dot{animation:pulse 2s ease-in-out infinite;background:#10b981;border-radius:50%;box-shadow:0 0 8px #10b98199;height:8px;width:8px}@keyframes logoFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}.chat-widget-header-actions{align-items:center;display:flex;gap:8px;justify-content:flex-end;margin-left:auto;position:relative;z-index:20}.header-close-btn,.header-minimize-btn{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #fff3;border-radius:50%;box-sizing:border-box;color:#fff;cursor:pointer;display:flex;flex-shrink:0;height:32px;justify-content:center;margin:0;padding:0;transition:all .3s ease;width:32px}.header-minimize-btn:hover{background:#ffffff40;border-color:#ffffff4d;transform:scale(1.05)}.header-close-btn:hover{background:#ef444433;border-color:#ef44444d;transform:scale(1.05)}.header-close-btn svg,.header-minimize-btn svg{height:16px;transition:transform .3s ease;width:16px}.header-minimize-btn:hover svg{transform:scale(1.1)}.header-close-btn:hover svg{transform:rotate(90deg)}.chat-widget-messages{animation:messagesFadeIn .6s ease-out .4s both;background:linear-gradient(180deg,#f8fafc,#fff);border-radius:0 0 40px 40px;box-sizing:border-box;display:flex;flex:1 1;flex-direction:column;gap:20px;max-height:600px;min-height:150px;overflow-x:hidden;overflow-y:auto;padding:20px}@keyframes messagesFadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.chat-widget-messages::-webkit-scrollbar{width:6px}.chat-widget-messages::-webkit-scrollbar-track{background:#50cada0d;border-radius:3px}.chat-widget-messages::-webkit-scrollbar-thumb{background:#50cada4d;border-radius:3px;-webkit-transition:all .3s ease;transition:all .3s ease}.chat-widget-messages::-webkit-scrollbar-thumb:hover{background:#50cada80}.chat-widget-message{align-items:flex-start;animation:messageSlideIn .5s ease-out both;animation-delay:0s;animation-delay:calc(var(--message-index, 0)*.1s);box-sizing:border-box;display:flex;gap:12px;max-width:100%}.message-container{box-sizing:border-box;width:100%}.bot-avatar{align-items:center;background:linear-gradient(135deg,#50cada,#3bb8c8);border-radius:50%;box-shadow:0 2px 8px #50cada33;display:flex;flex-shrink:0;height:32px;justify-content:center;width:32px}.message-content{background:#fff;border:1px solid #0000000d;border-radius:20px;box-shadow:0 2px 12px #00000014;color:#1e293b;font-size:.95rem;padding:5px 12px;position:relative;text-align:left;transition:all .3s cubic-bezier(.4,0,.2,1);word-break:break-word}.message-content:hover{box-shadow:0 4px 16px #0000001f}@keyframes messageSlideIn{0%{opacity:0;transform:translateY(20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.chat-widget-message.user{align-self:flex-end;flex-direction:row-reverse}.chat-widget-message.user .message-content{background:linear-gradient(135deg,#50cada,#3bb8c8);border:none;box-shadow:0 2px 12px #50cada4d;color:#fff}.chat-widget-message.user .message-content:hover{box-shadow:0 4px 20px #50cada66}.chat-widget-message.bot{align-items:flex-start;align-self:flex-start;display:flex;gap:8px}.chat-widget-input{animation:inputSlideIn .6s ease-out .6s both;background:#fff;border-radius:20px;border-top:1px solid #00000014;padding:20px 24px;position:relative}.input-container{align-items:center;background:#f8fafc;border:1px solid #00000014;border-radius:24px;display:flex;gap:12px;padding:4px;transition:all .3s ease}.input-container:focus-within{background:#fff;border-color:#50cada;box-shadow:0 0 0 3px #50cada1a}@keyframes inputSlideIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.chat-widget-input-icons{align-items:center;display:flex;gap:8px}.chat-widget-input-icon{align-items:center;border-radius:4px;color:#64748b;cursor:pointer;display:flex;height:24px;justify-content:center;transition:all .2s ease;width:24px}.chat-widget-input-icon:hover{background:#50cada1a;color:#50cada}.chat-widget-input input{background:#0000;border:none;border-radius:20px;color:#1e293b;flex:1 1;font-size:.95rem;outline:none;padding:12px 16px;transition:all .3s cubic-bezier(.4,0,.2,1)}.chat-widget-input input:focus{background:#0000}.chat-widget-input input::placeholder{color:#64748b;font-weight:400}.send-button{align-items:center;background:linear-gradient(135deg,#50cada,#3bb8c8);border:none;border-radius:50%;box-shadow:0 2px 12px #50cada4d;color:#fff;cursor:pointer;display:flex;flex-shrink:0;font-size:14px;height:40px;justify-content:center;overflow:hidden;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1);width:40px}.send-button:before{background:linear-gradient(90deg,#0000,#fff3,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s ease;width:100%}.send-button:hover:not(:disabled){background:linear-gradient(135deg,#3bb8c8,#2aa8b8);box-shadow:0 4px 16px #50cada66;transform:translateY(-1px)}.send-button:hover:not(:disabled):before{left:100%}.send-button:disabled{background:#e2e8f0;box-shadow:none;color:#94a3b8;cursor:not-allowed;transform:none}.send-button svg{display:block;height:16px;transition:transform .3s ease;width:16px}.send-button:hover:not(:disabled) svg{transform:translateX(1px)}.loading-spinner{animation:spin 1s linear infinite;border:2px solid #ffffff4d;border-radius:50%;border-top-color:#fff;height:16px;width:16px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.chat-widget-mini{align-items:center!important;animation:miniWidgetBounce 1.2s cubic-bezier(.68,-.55,.265,1.55)!important;background:#00a3bb;border:2px solid #fff3!important;border-radius:25px!important;bottom:32px!important;box-shadow:0 12px 40px #50cada66,0 6px 20px #0000001a!important;color:#fff!important;cursor:pointer!important;display:flex!important;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif!important;font-size:20px!important;font-weight:600!important;gap:8px!important;height:50px!important;justify-content:center!important;overflow:hidden;padding:0 16px!important;position:fixed!important;right:32px!important;transition:all .5s cubic-bezier(.68,-.55,.265,1.55)!important;width:120px!important;z-index:3000!important}.chat-widget-mini:hover{border-color:#fff6!important;box-shadow:0 16px 50px #50cada80,0 8px 25px #00000026!important;transform:scale(1.02)!important}.chat-widget.chat-widget-mini{align-items:center!important;animation:miniWidgetBounce 1.2s cubic-bezier(.68,-.55,.265,1.55)!important;background:linear-gradient(135deg,#50cada,#3bb8c8)!important;border:3px solid #fff3!important;border-radius:50%!important;box-shadow:0 12px 40px #50cada66,0 6px 20px #0000001a!important;cursor:pointer!important;display:flex!important;flex-direction:row!important;height:70px!important;justify-content:center!important;max-height:70px!important;max-width:70px!important;overflow:hidden!important;position:relative!important;transition:all .5s cubic-bezier(.68,-.55,.265,1.55)!important;width:70px!important}.chat-widget.chat-widget-mini:before{animation:pulse 2s ease-in-out infinite;background:radial-gradient(circle at 30% 30%,#ffffff4d 0,#0000 50%),radial-gradient(circle at 70% 70%,#ffffff1a 0,#0000 50%);border-radius:50%;bottom:0;content:"";left:0;position:absolute;right:0;top:0}@keyframes miniWidgetBounce{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.chat-widget.chat-widget-mini:hover{border-color:#fff6!important;box-shadow:0 16px 50px #50cada80,0 8px 25px #00000026!important;transform:scale(1.02)!important}.chat-widget.chat-widget-mini svg{color:#fff!important;filter:drop-shadow(0 2px 4px rgba(0,0,0,.2))!important;font-size:28px!important;position:relative!important;transition:all .3s ease!important;z-index:1!important}.chat-widget.chat-widget-mini:hover svg{filter:drop-shadow(0 4px 8px rgba(0,0,0,.3))!important;transform:scale(1.05)!important}.chat-widget-doctor-profile{animation:doctorCardSlideIn .6s ease-out both;animation-delay:0s;animation-delay:calc(var(--card-index, 0)*.15s);box-sizing:border-box!important;display:flex!important;flex-wrap:wrap!important;gap:8px!important;margin:0!important;padding:0!important;width:100%!important}.doctor-card{align-items:center;background:#fff;border:1px solid #0000000d;border-radius:12px;box-shadow:0 2px 10px #00000014;box-sizing:border-box!important;display:flex;flex-basis:calc(50% - 4px);flex-direction:column;flex-grow:1;flex-shrink:1;max-width:calc(50% - 4px)!important;min-width:calc(50% - 4px)!important;overflow:hidden;padding:10px;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1)}.doctor-card:before{background:linear-gradient(90deg,#50cada,#3bb8c8);content:"";height:3px;left:0;position:absolute;right:0;top:0}@keyframes doctorCardSlideIn{0%{opacity:0;transform:translateY(30px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}.doctor-card:hover{box-shadow:0 8px 30px #0000001f;transform:translateY(-1px)}.doctor-avatar{align-items:center;display:flex;justify-content:center;margin-bottom:8px;order:1}.chat-widget-doctor-img{border:2px solid #50cada33;box-shadow:0 2px 6px #50cada33;height:45px;width:45px}.doctor-card:hover .chat-widget-doctor-img{border-color:#50cada4d;transform:scale(1.05)}.doctor-info{align-items:center;display:flex;flex-direction:column;order:2;width:100%}.doctor-info h3{color:#1e293b;font-size:.85rem;font-weight:700;margin:0 0 6px;order:1;text-align:center}.specialization{color:#64748b;font-size:.7rem;font-weight:500;margin:0 0 8px;order:2;text-align:center}.doctor-details{color:#64748b;font-weight:500;gap:8px;margin-bottom:8px;order:3;width:100%}.doctor-details,.fee,.rating{align-items:center;display:flex;font-size:.65rem;justify-content:center}.fee,.rating{background:#50cada1a;border-radius:6px;box-sizing:border-box;flex-shrink:0;font-weight:600;gap:3px;height:20px;padding:3px 6px;white-space:nowrap;width:45px}.chat-widget-book-btn{align-items:center;background:linear-gradient(135deg,#00a3bb,#3bb8c8);border:none;border-radius:8px;box-shadow:0 2px 8px #50cada4d;color:#fff;cursor:pointer;display:flex;font-size:.75rem;font-weight:600;gap:4px;justify-content:center;margin-top:auto;order:4;overflow:hidden;padding:6px 10px;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1);width:100%}.chat-widget-book-btn:before{background:linear-gradient(90deg,#0000,#fff3,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s ease;width:100%}.chat-widget-book-btn:hover:not(:disabled){background:linear-gradient(135deg,#3bb8c8,#2aa8b8);box-shadow:0 6px 20px #50cada66;transform:translateY(-1px)}.chat-widget-book-btn:hover:not(:disabled):before{left:100%}.chat-widget-book-btn:disabled{background:#e2e8f0;box-shadow:none;color:#94a3b8;cursor:not-allowed;transform:none}.suggested-responses{animation:suggestedResponsesSlideIn .5s ease-out both;display:flex;flex-direction:column;gap:10px;margin-top:12px}@keyframes suggestedResponsesSlideIn{0%{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}.suggested-response-btn{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(135deg,#50cada14,#50cada1f);border:1px solid #50cada33;border-radius:16px;box-sizing:border-box;color:#50cada;cursor:pointer;font-size:.9rem;font-weight:500;overflow:hidden;padding:12px 16px;position:relative;text-align:left;transition:all .3s cubic-bezier(.4,0,.2,1);width:100%}.suggested-response-btn:before{background:linear-gradient(90deg,#0000,#50cada1a,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s ease;width:100%}.suggested-response-btn:hover{background:linear-gradient(135deg,#50cada26,#50cada33);border-color:#50cada66;box-shadow:0 4px 12px #50cada40;color:#3bb8c8;transform:translateY(-2px)}.suggested-response-btn:hover:before{left:100%}.suggested-response-btn:active{box-shadow:0 2px 8px #50cada4d;transform:translateY(-1px)}.chat-widget-doctor-carousel{background:#0000;border:none;border-radius:0;margin-top:0;overflow:visible;padding:0}.chat-widget-doctor-carousel h4{color:#1e293b;font-size:1.1rem;font-weight:600;margin:0 0 1rem}.chat-widget-doctor-slider{grid-gap:20px;display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));min-width:100%}@media (max-width:1400px){.chat-widget-doctor-slider{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}}@media (max-width:1200px){.chat-widget-doctor-slider{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}}@media (max-width:768px){.chat-widget-doctor-slider{gap:15px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}}.chat-widget-doctor-card{border:1px solid #50cada1a;border-radius:16px;box-shadow:0 8px 32px #00000014,0 4px 16px #0000000a,0 0 0 1px #fffc;justify-content:space-between;min-height:280px;padding:20px;width:100%}.chat-widget-doctor-card:before{background:linear-gradient(90deg,#50cada,#3bb8c8);border-radius:16px 16px 0 0;content:"";height:4px;left:0;position:absolute;right:0;top:0}.carousel-nav{align-items:center;background:#ffffffe6;border:none;border-radius:50%;box-shadow:0 4px 12px #00000026;color:#1f2937;cursor:pointer;display:flex;font-size:18px;height:40px;justify-content:center;position:absolute;top:50%;transform:translateY(-50%);transition:all .3s ease;width:40px;z-index:10}.carousel-nav:hover{background:#fff;box-shadow:0 6px 20px #0003;transform:translateY(-50%) scale(1.1)}.carousel-nav.left{left:10px}.carousel-nav.right{right:10px}.chat-widget-doctor-card:hover{box-shadow:0 16px 48px #50cada26,0 8px 24px #00000014,0 0 0 1px #50cada33;transform:translateY(-4px)}.instant-book-badge{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00a3bb;border:1px solid #fff3;border-radius:0 30px 0 30px;box-shadow:0 2px 8px #22c55e33;color:#fff;font-size:12px}.approval-required-badge,.instant-book-badge{font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;line-height:1.2;min-width:80px;padding:4px 10px;position:absolute;right:3px;text-align:center;top:0;z-index:10}.approval-required-badge{background:#f7e498;border:1px solid #fff3;border-radius:0 25px 0 25px;box-shadow:0 2px 8px #f59e0b33;color:#000;font-size:10px}.chat-widget-doctor-header{display:flex;gap:16px;margin-bottom:5px;margin-top:40px}.chat-widget-doctor-header.clickable{border-radius:12px;cursor:pointer;margin:30px -12px 5px;padding:12px;transition:all .3s cubic-bezier(.4,0,.2,1)}.chat-widget-doctor-header.clickable:hover{background:#00a3bb0f}.chat-widget-doctor-header.clickable:focus{background:#00a3bb14;box-shadow:0 0 0 2px #00a3bb33;outline:none}.chat-widget-doctor-header.clickable:active{background:#00a3bb1a;transform:scale(.99)}.chat-widget-doctor-header.clickable:hover .chat-widget-doctor-img{border-color:#00a3bb80;transform:scale(1.05)}.chat-widget-doctor-header.clickable:hover .chat-widget-doctor-name{color:#00a3bb}.chat-widget-doctor-img{border:3px solid #50cada33;box-shadow:0 4px 16px #0000001a;height:80px;width:80px}.chat-widget-doctor-card:hover .chat-widget-doctor-img{border-color:#50cada66;transform:scale(1.05)}.chat-widget-doctor-info{gap:8px}.chat-widget-doctor-name{font-size:18px;line-height:1.3}.chat-widget-doctor-name,.chat-widget-doctor-specialty{font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif}.chat-widget-doctor-specialty{font-size:14px}.chat-widget-doctor-experience{margin:0}.chat-widget-doctor-experience,.chat-widget-doctor-rating{color:#6b7280;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;font-size:13px;font-weight:500}.chat-widget-doctor-rating{align-items:center;display:flex;gap:8px}.stars{color:#f7b500;letter-spacing:1px}.chat-widget-doctor-actions{gap:8px;margin-top:auto}.chat-widget-doctor-btn.view-profile{background:#00a3bb;border:1px solid #00a3bb;color:#fff}.chat-widget-doctor-btn.view-profile:hover{background:#50cada;border-color:#50cada}.chat-widget-doctor-btn.invite{background:#00a3bb;border:1px solid #00a3bb;color:#fff}.chat-widget-doctor-btn.invite:hover{background:#50cada;border-color:#50cada}.verified-badge{background:#00a3bb;border-radius:50%;display:inline-flex;font-size:10px;font-weight:700;height:16px;margin-left:8px;width:16px}.chat-widget-doctor-btn,.verified-badge{align-items:center;color:#fff;justify-content:center}.chat-widget-doctor-btn{background:linear-gradient(135deg,#50cada,#3bb8c8);border:none;border-radius:8px;box-shadow:0 4px 12px #50cada4d;cursor:pointer;display:flex;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;font-size:13px;font-weight:600;gap:6px;overflow:hidden;padding:10px 16px;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1)}.chat-widget-doctor-btn:before{background:linear-gradient(90deg,#0000,#fff3,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s ease;width:100%}.chat-widget-doctor-btn:hover{box-shadow:0 8px 20px #50cada66;transform:translateY(-2px)}.chat-widget-doctor-btn:hover:before{left:100%}.chat-widget-doctor-btn:active{transform:translateY(0)}.book-appointment-btn{background-color:#00a3bb!important;box-shadow:0 4px 12px #8b5cf64d}.book-appointment-btn:hover{background:#00a3bb!important;color:#fff!important;cursor:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='36' height='36' viewBox='0 0 24 24'%3E%3Cpath fill='%23FFF' stroke='%2300A1AA' stroke-width='1.25' stroke-linejoin='round' d='M10 11V8.99c0-.88.59-1.64 1.44-1.86h.05A1.99 1.99 0 0 1 14 9.05V12v-2c0-.88.6-1.65 1.46-1.87h.05A1.98 1.98 0 0 1 18 10.06V13v-1.94a2 2 0 0 1 1.51-1.94A2 2 0 0 1 22 11.06V14c0 .6-.08 1.27-.21 1.97a7.96 7.96 0 0 1-7.55 6.48 54.98 54.98 0 0 1-4.48 0 7.96 7.96 0 0 1-7.55-6.48C2.08 15.27 2 14.59 2 14v-1.49c0-1.11.9-2.01 2.01-2.01a2 2 0 0 1 2.01 2.03l-.01.97v-10c0-1.1.9-2 2-2a2 2 0 0 1 2 2V11Z'/%3E%3C/svg%3E"),auto!important}.invite-btn{box-shadow:0 4px 12px #8b5cf64d}.invite-btn:hover{box-shadow:0 8px 20px #8b5cf666}.icon-margin-right{margin-right:4px}.chat-widget-carousel-dots{display:flex;gap:8px;justify-content:center;margin-top:16px}.chat-widget-carousel-dot{background:#50cada4d;border:none;border-radius:50%;cursor:pointer;height:8px;padding:0;transition:all .3s ease;width:8px}.chat-widget-carousel-dot:hover{background:#50cada99;transform:scale(1.2)}.chat-widget-carousel-dot.active{background:#50cada;transform:scale(1.2)}.chat-widget-doctor-btn:disabled{cursor:not-allowed;opacity:.7;transform:none}.chat-widget-doctor-btn:disabled:hover{box-shadow:0 4px 12px #50cada4d;transform:none}.chat-widget-doctor-carousel{margin:16px 0;padding:0 8px;position:relative}.chat-widget-doctor-slider{-ms-overflow-style:none;cursor:grab;display:flex;gap:20px;justify-content:center;overflow-x:auto;padding:8px 0;scroll-behavior:smooth;scrollbar-width:none}.chat-widget-doctor-slider:active{cursor:grabbing}.chat-widget-doctor-slider::-webkit-scrollbar{display:none}@media (max-width:600px){.chat-widget-doctor-card{min-width:280px;padding:16px}.chat-widget-doctor-name{font-size:16px}.chat-widget-doctor-specialty{font-size:13px}.chat-widget-doctor-actions{flex-direction:column;gap:6px}.chat-widget-doctor-btn{font-size:12px;padding:8px 12px}.chat-widget-doctor-img{height:70px;width:70px}.approval-required-badge,.instant-book-badge{font-size:9px;padding:4px 8px}}.chat-widget.chat-widget-large{border-radius:24px;box-shadow:0 32px 80px #00000026,0 16px 40px #0000001a,0 0 0 1px #ffffffe6;height:700px;max-height:90vh;max-width:95vw;width:600px;z-index:5000}.chat-widget.chat-widget-large .chat-widget-header{border-radius:24px 24px 0 0;min-height:60px;padding:16px 20px}.chat-widget.chat-widget-large .chat-widget-messages{border-radius:0 0 24px 24px;gap:16px;padding:16px 20px}.chat-widget.chat-widget-large .chat-widget-input{border-radius:0 0 24px 24px;padding:16px 20px}.chat-widget.chat-widget-large .chat-widget-doctor-carousel{margin:12px 0}.chat-widget.chat-widget-large .chat-widget-doctor-card{height:140px;max-width:280px;min-width:280px;padding:16px}.chat-widget.chat-widget-large .chat-widget-doctor-img{height:60px;width:60px}.chat-widget.chat-widget-large .chat-widget-doctor-name{font-size:16px}.chat-widget.chat-widget-large .chat-widget-doctor-specialty{font-size:13px}.chat-widget.chat-widget-large .chat-widget-doctor-btn{font-size:12px;padding:8px 12px}.chat-widget-doctor-card{align-items:center;background:linear-gradient(135deg,#fff,#f8fafc);border:1px solid #50cada14;border-radius:30px;box-shadow:0 4px 16px #00000012,0 0 0 1px #50cada14;display:flex;flex-direction:column;flex-shrink:0;max-width:220px;min-height:220px;min-width:220px;overflow:hidden;padding:14px 14px 16px;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1)}.chat-widget-doctor-experience{font-size:small}.chat-widget-doctor-img{height:54px;margin-bottom:10px;object-fit:cover;transition:all .3s ease;width:54px}.chat-widget-doctor-name{font-weight:600;text-align:center}.chat-widget-doctor-rating,.chat-widget-doctor-specialty{text-align:center}.chat-widget-doctor-actions{display:flex;flex-direction:column;gap:6px;margin-top:6px}.chat-widget-doctor-btn{border-radius:6px;font-size:12px;padding:7px 10px}.chat-widget-carousel-nav{align-items:center;background:#50cadad9;border:none;border-radius:50%;box-shadow:0 2px 8px #50cada2e;color:#fff;cursor:pointer;display:flex;font-size:18px;height:32px;justify-content:center;opacity:1;outline:none;position:absolute;top:50%;transform:translateY(-50%);transition:opacity .3s,background .2s;width:32px;z-index:20}.chat-widget-carousel-nav-left{left:4px}.chat-widget-carousel-nav-right{right:4px}.chat-widget-carousel-nav:focus,.chat-widget-carousel-nav:hover{background:#50cada}@media (max-width:600px){.chat-widget-doctor-card{height:180px;max-width:160px;min-width:160px;padding:8px 8px 10px}.chat-widget-doctor-img{height:36px;width:36px}.chat-widget-doctor-name{font-size:12px}.chat-widget-doctor-specialty{font-size:10px}.chat-widget-doctor-btn{font-size:10px;padding:5px 7px}.chat-widget-carousel-nav{font-size:14px;height:24px;width:24px}}.chat-widget-doctor-card-row{align-items:center;display:flex;flex-direction:row;gap:12px;margin-bottom:8px;margin-top:15px;min-height:120px;width:100%}.chat-widget-doctor-img{border:2px solid #50cada2e;border-radius:50%;box-shadow:0 2px 8px #00000014;flex-shrink:0;height:75px;margin-bottom:0;margin-right:0;object-fit:contain;width:75px}.chat-widget-doctor-info{align-items:flex-start;display:flex;flex-direction:column;gap:2px;justify-content:center;min-width:0}.chat-widget-doctor-name{color:#1f2937;font-size:15px;font-weight:700;line-height:1.2;white-space:revert}.chat-widget-doctor-name,.chat-widget-doctor-specialty{margin:0;max-width:120px;overflow:hidden;text-align:left;text-overflow:ellipsis}.chat-widget-doctor-specialty{color:#6b7280;font-size:12px;font-weight:500;white-space:nowrap}.chat-widget-doctor-rating{font-size:12px;margin-bottom:2px;margin-top:2px;text-align:left}@media (max-width:600px){.chat-widget-doctor-card-row{gap:7px}.chat-widget-doctor-img{height:32px;width:32px}.chat-widget-doctor-name,.chat-widget-doctor-specialty{font-size:11px;max-width:60px}}.chat-widget{transition:width .5s cubic-bezier(.4,0,.2,1),height .5s cubic-bezier(.4,0,.2,1),max-width .5s cubic-bezier(.4,0,.2,1),max-height .5s cubic-bezier(.4,0,.2,1),border-radius .5s cubic-bezier(.4,0,.2,1),box-shadow .5s cubic-bezier(.4,0,.2,1),top .5s cubic-bezier(.4,0,.2,1),left .5s cubic-bezier(.4,0,.2,1),right .5s cubic-bezier(.4,0,.2,1),bottom .5s cubic-bezier(.4,0,.2,1),opacity .5s cubic-bezier(.4,0,.2,1),transform .5s cubic-bezier(.4,0,.2,1)}.chat-widget:not(.chat-widget-large){animation:fadeInSmall .5s cubic-bezier(.34,1.56,.64,1) both}@keyframes fadeInSmall{0%{opacity:0;transform:scale(.95) translateY(40px)}to{opacity:1;transform:scale(1) translateY(0)}}.chat-widget.chat-widget-large{animation:fadeInCenter .5s cubic-bezier(.34,1.56,.64,1) both;bottom:auto;left:50%;position:fixed;right:auto;top:50%;transform:translate(-50%,-50%)}@keyframes fadeInCenter{0%{opacity:0;transform:scale(.85) translate(-50%,-50%)}to{opacity:1;transform:scale(1) translate(-50%,-50%)}}.chat-widget.chat-widget-large .chat-widget-header{align-items:center;flex-direction:column;gap:0;justify-content:flex-start;max-height:120px;padding-bottom:10px;padding-top:30px;position:relative}.chat-widget.chat-widget-large .chat-widget-header-logo{align-items:center;display:flex;height:80px;justify-content:center;left:50%;position:absolute;top:-36px;transform:translateX(-50%);width:80px;z-index:10}.chat-widget.chat-widget-large .chat-widget-header-logo img{background:#ffffff1a;border-radius:50%;box-sizing:border-box;height:100%;object-fit:contain;padding:8px;width:100%}.chat-widget.chat-widget-large .chat-widget-header-text{align-items:center;color:#fff;display:flex;flex-direction:column;font-size:15px;font-weight:600;gap:4px;margin:48px 0 0;position:static;text-align:center;text-shadow:0 2px 4px #0000004d;z-index:10}.chat-widget.chat-widget-large .chat-widget-header-text h3{color:#fff;font-size:18px;font-weight:700;margin:0 0 4px;text-shadow:none}.chat-widget.chat-widget-large .chat-widget-online-status{font-size:13px;justify-content:center}.chat-widget.chat-widget-large .chat-widget-header-actions{margin-left:0;position:absolute;right:18px;top:12px}.doctor-profile-modal-overlay{align-items:center;animation:doctorProfileOverlayFadeIn .3s ease-out;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0f172ab3;bottom:0;display:flex;justify-content:center;left:0;padding:1rem;position:fixed;right:0;top:0;z-index:10000}@keyframes doctorProfileOverlayFadeIn{0%{opacity:0}to{opacity:1}}.doctor-profile-modal{animation:doctorProfileModalSlideIn .4s cubic-bezier(.34,1.56,.64,1);background:linear-gradient(135deg,#fff,#f8fafc);border-radius:24px;box-shadow:0 32px 64px #0003,0 16px 32px #0000001a,0 0 0 1px #ffffff1a;display:flex;flex-direction:column;max-height:90vh;max-width:580px;overflow:hidden;position:relative;width:100%}@keyframes doctorProfileModalSlideIn{0%{opacity:0;transform:scale(.9) translateY(20px)}to{opacity:1;transform:scale(1) translateY(0)}}.doctor-profile-modal-close{align-items:center;background:#ffffffe6;border:1px solid #00000014;border-radius:50%;box-shadow:0 2px 8px #0000001a;color:#64748b;cursor:pointer;display:flex;font-size:1rem;height:40px;justify-content:center;position:absolute;right:16px;top:16px;transition:all .3s ease;width:40px;z-index:10}.doctor-profile-modal-close:hover{background:#fff;box-shadow:0 4px 12px #00000026;color:#ef4444;transform:rotate(90deg)}.doctor-profile-modal-loading{align-items:center;display:flex;flex-direction:column;gap:1rem;justify-content:center;padding:4rem 2rem}.doctor-profile-modal-spinner{animation:doctorProfileSpin 1s linear infinite;border:4px solid #00a3bb33;border-radius:50%;border-top-color:#00a3bb;height:48px;width:48px}@keyframes doctorProfileSpin{to{transform:rotate(1turn)}}.doctor-profile-modal-loading p{color:#64748b;font-size:.95rem;font-weight:500}.doctor-profile-modal-header{background:linear-gradient(135deg,#00a3bb,#008ba3);color:#fff;display:flex;gap:1.25rem;overflow:hidden;padding:1.75rem;position:relative}.doctor-profile-modal-header:before{background:radial-gradient(circle,#ffffff1a 0,#0000 70%);content:"";height:200%;pointer-events:none;position:absolute;right:-50%;top:-50%;width:100%}.doctor-profile-modal-image{border:4px solid #ffffff4d;border-radius:50%;box-shadow:0 8px 24px #0003;flex-shrink:0;height:100px;object-fit:cover;width:100px}.doctor-profile-modal-header-info{display:flex;flex:1 1;flex-direction:column;gap:.5rem;min-width:0}.doctor-profile-modal-name{align-items:center;display:flex;flex-wrap:wrap;font-size:1.5rem;font-weight:700;gap:.5rem;margin:0}.doctor-profile-modal-verified{color:#fbbf24;font-size:1.1rem}.doctor-profile-modal-experience,.doctor-profile-modal-specialty{align-items:center;display:flex;font-size:.95rem;gap:.5rem;margin:0;opacity:.95}.doctor-profile-modal-icon{font-size:.85rem;opacity:.8}.doctor-profile-modal-rating{align-items:center;display:flex;font-size:.9rem;gap:.375rem;margin-top:.25rem}.doctor-profile-modal-star{color:#fbbf24}.doctor-profile-modal-content{display:flex;flex:1 1;flex-direction:column;gap:1.25rem;overflow-y:auto;padding:1.5rem}.doctor-profile-modal-section{display:flex;flex-direction:column;gap:.75rem}.doctor-profile-modal-section-title{align-items:center;color:#374151;display:flex;font-size:.9rem;font-weight:600;gap:.5rem;letter-spacing:.03em;margin:0;text-transform:uppercase}.doctor-profile-modal-section-icon{color:#00a3bb;font-size:.85rem}.doctor-profile-modal-tags{display:flex;flex-wrap:wrap;gap:.5rem}.doctor-profile-modal-tag{background:linear-gradient(135deg,#00a3bb14,#00a3bb1f);border:1px solid #00a3bb26;border-radius:20px;color:#0f766e;font-size:.8rem;font-weight:500;padding:.375rem .75rem;transition:all .2s ease}.doctor-profile-modal-tag:hover{background:linear-gradient(135deg,#00a3bb1f,#00a3bb2e);transform:translateY(-1px)}.doctor-profile-modal-tag-more{background:#64748b1a;border-color:#64748b33;color:#64748b}.doctor-profile-modal-about{background:#f8fafc99;border:1px solid #0000000a;border-radius:10px;color:#475569;font-size:.9rem;line-height:1.6;margin:0;padding:.75rem}.doctor-profile-modal-fees{display:flex;flex-wrap:wrap;gap:1rem}.doctor-profile-modal-fee-item{background:linear-gradient(135deg,#00a3bb14,#00a3bb0a);border:1px solid #00a3bb26;border-radius:12px;display:flex;flex:1 1;flex-direction:column;gap:.25rem;min-width:140px;padding:.875rem 1.25rem}.doctor-profile-modal-fee-label{color:#64748b;font-size:.75rem;font-weight:500;letter-spacing:.03em;text-transform:uppercase}.doctor-profile-modal-fee-value{color:#00a3bb;font-size:1.25rem;font-weight:700}.doctor-profile-modal-locations{display:flex;flex-direction:column;gap:.5rem}.doctor-profile-modal-location{background:#f8fafccc;border:1px solid #0000000d;border-radius:10px;display:flex;flex-direction:column;gap:.125rem;padding:.75rem}.doctor-profile-modal-location-name{color:#1e293b;font-size:.9rem;font-weight:600}.doctor-profile-modal-location-address{color:#64748b;font-size:.8rem}.doctor-profile-modal-actions{background:#f8fafccc;border-top:1px solid #0000000f;display:flex;gap:.75rem;padding:1.25rem 1.5rem}.doctor-profile-modal-btn{align-items:center;border:none;border-radius:12px;cursor:pointer;display:flex;flex:1 1;font-size:.95rem;font-weight:600;gap:.5rem;justify-content:center;padding:.875rem 1.25rem;text-decoration:none;transition:all .3s cubic-bezier(.4,0,.2,1)}.doctor-profile-modal-btn-icon{font-size:.9rem}.doctor-profile-modal-btn-primary{background:linear-gradient(135deg,#00a3bb,#008ba3);box-shadow:0 4px 12px #00a3bb4d;color:#fff}.doctor-profile-modal-btn-primary:hover{box-shadow:0 8px 20px #00a3bb66;transform:translateY(-2px)}.doctor-profile-modal-btn-secondary{background:#fff;border:2px solid #00a3bb4d;color:#00a3bb}.doctor-profile-modal-btn-secondary:hover{background:#00a3bb0d;border-color:#00a3bb;transform:translateY(-2px)}@media (max-width:600px){.doctor-profile-modal{border-radius:0;max-height:100vh;max-width:100%}.doctor-profile-modal-header{align-items:center;flex-direction:column;padding:1.5rem 1rem;text-align:center}.doctor-profile-modal-image{height:80px;width:80px}.doctor-profile-modal-name{font-size:1.25rem;justify-content:center}.doctor-profile-modal-experience,.doctor-profile-modal-rating,.doctor-profile-modal-specialty{justify-content:center}.doctor-profile-modal-content{padding:1rem}.doctor-profile-modal-actions{flex-direction:column;padding:1rem}.doctor-profile-modal-btn{width:100%}.doctor-profile-modal-close{height:36px;right:12px;top:12px;width:36px}}.modal-backdrop{align-items:center;animation:fadeIn .3s;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:4000}.appointment-request-modal{animation:scaleIn .3s;background:#fff;border-radius:2.5vh;box-shadow:0 8px 40px 0 #00a3bb22;box-sizing:border-box;max-height:95vh;max-width:90vw;overflow-y:auto;padding:2.5vh 4vw 2vh;position:relative;text-align:center;width:520px}.appointment-request-modal .modal-close-btn{align-items:center!important;-webkit-backdrop-filter:blur(10px)!important;backdrop-filter:blur(10px)!important;background:#ffffffe6!important;border:none!important;border-radius:50%!important;box-shadow:0 2px 8px #0000001a!important;color:#00a3bb!important;cursor:pointer!important;display:flex!important;font-family:Montserrat,sans-serif!important;font-size:1.8rem!important;height:35px!important;justify-content:center!important;line-height:1!important;margin-top:0!important;padding:0!important;position:absolute!important;right:15px!important;top:15px!important;transition:all .3s ease!important;width:35px!important;z-index:10!important}.appointment-request-modal .modal-close-btn:hover{background:#fff!important;box-shadow:0 4px 16px #00000026!important;color:#1a3c4f!important;transform:scale(1.1)!important}.appointment-request-modal h2{color:#00a3bb;font-family:Montserrat,sans-serif;font-size:1.4rem;margin-bottom:.8vh;margin-top:0}.appointment-request-modal p{color:#444;font-family:Inter,sans-serif;font-size:.95rem;line-height:1.4;margin-bottom:1.5vh;text-align:justify}.appointment-request-modal form{box-sizing:border-box;display:flex;flex-direction:column;gap:1vh;margin-bottom:1.5vh;width:100%}.appointment-request-modal input,.appointment-request-modal textarea{border:1px solid #b2ebf2;border-radius:1vh;box-sizing:border-box;font-family:Inter,sans-serif;font-size:.95rem;padding:1vh 1.5vw;transition:border-color .3s ease}.appointment-request-modal input:focus,.appointment-request-modal textarea:focus{border-color:#00a3bb;box-shadow:0 0 0 2px #00a3bb1a;outline:none}.appointment-request-modal input:disabled,.appointment-request-modal textarea:disabled{background-color:#f8f9fa;color:#6c757d;cursor:not-allowed}.appointment-request-modal textarea{min-height:60px;resize:vertical}.recaptcha-container{display:flex;justify-content:center;margin:.8vh 0}.appointment-request-modal button{background:#22c1d6;border:none;border-radius:25px;box-shadow:0 .3vh 2vh 0 #00a3bb22;color:#fff;cursor:pointer;font-family:Montserrat,sans-serif;font-size:1rem;font-weight:600;margin-top:.8vh;padding:2vh 3vh;transition:background .2s}.appointment-request-modal button:hover:not(:disabled){background:#00a3bb}.appointment-request-modal button:disabled{background:#ccc;box-shadow:none;cursor:not-allowed}.submit-btn-disabled{background:#ccc!important;box-shadow:none!important;cursor:not-allowed!important}.status-message{border-radius:1vh;font-family:Inter,sans-serif;font-size:.9rem;margin-top:1.5vh;padding:.8vh 2vh}.status-message.success{background:#d4edda;border:1px solid #c3e6cb;color:#155724}.status-message.error{background:#f8d7da;border:1px solid #f5c6cb;color:#721c24}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleIn{0%{opacity:0;transform:scale(.85)}to{opacity:1;transform:scale(1)}}@media (max-width:768px){.appointment-request-modal{max-height:95vh;padding:3vh 3vw 2vh;width:95vw}.appointment-request-modal h2{font-size:1.3rem}.appointment-request-modal p{font-size:.9rem}.appointment-request-modal input,.appointment-request-modal textarea{font-size:.9rem;padding:1vh 1.2vw}.appointment-request-modal button{font-size:1rem;padding:1vh 2.5vh}}@media (max-width:480px){.appointment-request-modal{padding:2.5vh 2.5vw 2vh;width:98vw}.appointment-request-modal h2{font-size:1.2rem}.appointment-request-modal p{font-size:.85rem}.appointment-request-modal form{gap:1.2vh}.modal-close-btn-req{align-items:center!important;-webkit-backdrop-filter:blur(10px)!important;backdrop-filter:blur(10px)!important;background:#ffffffe6!important;border:none!important;border-radius:50%!important;box-shadow:0 2px 8px #0000001a!important;color:#50cada!important;cursor:pointer!important;display:flex!important;font-family:Montserrat,sans-serif!important;font-size:1.8rem!important;height:40px!important;justify-content:center!important;line-height:1!important;position:absolute!important;right:16px!important;top:16px!important;transition:all .3s ease!important;width:40px!important;z-index:10!important}.modal-close-btn-req:hover{background:#fff!important;box-shadow:0 4px 16px #00000026!important;color:#1a3c4f!important;transform:scale(1.1)!important}}.appointment-booked-modal-overlay{align-items:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;height:100vh;justify-content:center;left:0;overflow-y:auto;padding:20px;position:fixed;top:0;width:100vw;z-index:1000}.appointment-booked-modal-content{background:linear-gradient(135deg,#fff,#f8fbfc);border:1px solid #50cada1a;border-radius:20px;box-shadow:0 20px 60px #00000026,0 8px 25px #50cada1a;display:flex;flex-direction:column;font-family:Montserrat,sans-serif;max-height:85vh;max-width:600px;min-height:400px;overflow:hidden;padding:0;position:relative;width:100%;z-index:1001}.modal-close-btn{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffe6;border:none;border-radius:50%;box-shadow:0 2px 8px #0000001a;color:#50cada;cursor:pointer;display:flex;font-family:Montserrat,sans-serif;font-size:1.2rem;height:40px;justify-content:center;line-height:1;position:absolute;right:16px;top:16px;transition:all .3s ease;width:40px;z-index:10}.modal-close-btn:hover{background:#fff;box-shadow:0 4px 16px #00000026;color:#1a3c4f;transform:scale(1.1)}.success-header{border-bottom:1px solid #50cada1a;padding:40px 32px 24px;text-align:center}.success-icon{animation:pulse 2s infinite;color:#50cada;font-size:4rem;margin-bottom:20px}.success-header h2{color:#1a3c4f;font-family:Montserrat,sans-serif;font-size:1.8rem;font-weight:700;margin:0 0 12px}.success-header p{color:#6b7c93;font-family:Montserrat,sans-serif;font-size:1rem;margin:0}.appointment-details{background:linear-gradient(135deg,#f8fbfc,#e3f2fd);border:1px solid #50cada33;border-radius:16px;box-shadow:0 2px 12px #50cada14;margin:24px 32px;padding:20px 20px 0}.detail-item{align-items:center;border-bottom:1px solid #50cada1a;display:flex;justify-content:space-between;padding:12px 0}.detail-item:last-child{border-bottom:none}.detail-label{color:#6b7c93;font-size:.9rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.detail-label,.detail-value{font-family:Montserrat,sans-serif}.detail-value{color:#1a3c4f;font-size:1rem;font-weight:700}.calendar-section{flex:1 1;margin-bottom:0;padding:24px 32px 0}.calendar-section h4{align-items:center;color:#1a3c4f;display:flex;font-family:Montserrat,sans-serif;font-size:1.2rem;font-weight:600;gap:8px;margin:0 0 12px}.calendar-section p{color:#6b7c93;font-family:Montserrat,sans-serif;font-size:.9rem;line-height:1.5;margin:0 0 24px}.appointment-calendar-buttons{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr;margin-bottom:24px}.calendar-btn{align-items:center;background:#fff;border:2px solid #e8f4f8;border-radius:12px;color:#1a3c4f;cursor:pointer;display:flex;font-family:Montserrat,sans-serif;font-size:.9rem;font-weight:600;gap:12px;justify-content:center;letter-spacing:.5px;padding:16px 20px;text-transform:uppercase;transition:all .3s ease}.calendar-btn:hover{background:linear-gradient(135deg,#50cada,#22c1d6);border-color:#50cada;box-shadow:0 4px 16px #50cada40;color:#fff;transform:translateY(-2px)}.calendar-btn span{font-size:.85rem}.modal-actions{border-top:1px solid #50cada1a;display:flex;justify-content:center;padding:24px 32px 32px}.close-button{background:linear-gradient(135deg,#50cada,#22c1d6);border:none;border-radius:12px;box-shadow:0 4px 16px #50cada40;color:#fff;cursor:pointer;font-family:Montserrat,sans-serif;font-size:16px!important;font-weight:700;letter-spacing:.5px;padding:16px 32px;text-transform:uppercase;transition:all .3s ease}.close-button:hover{background:linear-gradient(135deg,#22c1d6,#50cada);box-shadow:0 6px 24px #50cada59;transform:translateY(-2px)}@media (max-width:768px){.appointment-booked-modal-overlay{align-items:flex-start;justify-content:flex-start;padding:10px}.appointment-booked-modal-content{border-radius:0;display:flex;flex-direction:column;height:100vh;margin:0;max-height:100vh;max-width:100%;overflow:hidden;padding:0;width:100%}.modal-close-btn{background:#ffffffe6;border-radius:50%;box-shadow:0 2px 8px #0003;font-size:20px;height:40px;position:fixed;right:15px;top:15px;width:40px;z-index:1000}.success-header{border-bottom:1px solid #50cada1a;flex-shrink:0;padding:20px 20px 15px}.success-header h2{font-size:1.5rem;margin-bottom:10px}.success-icon{font-size:3rem;margin-bottom:15px}.appointment-details{margin:20px;padding:15px}.calendar-section{flex:1 1;overflow-y:auto;padding:20px}.calendar-section h4{font-size:1.1rem;margin-bottom:10px}.calendar-section p{font-size:.85rem;margin-bottom:20px}.appointment-calendar-buttons{gap:12px;margin-bottom:20px}.calendar-btn{padding:14px 16px}.calendar-btn,.calendar-btn span{font-size:.8rem}.modal-actions{border-top:1px solid #50cada1a;flex-shrink:0;padding:15px 20px}.close-button{border-radius:8px;font-size:14px;padding:14px 24px}}@media (max-width:480px){.appointment-booked-modal-overlay{padding:0}.appointment-booked-modal-content{border-radius:0}.success-header{padding:15px 15px 10px}.success-header h2{font-size:1.3rem;margin-bottom:8px}.success-icon{font-size:2.5rem;margin-bottom:12px}.appointment-details{margin:15px;padding:12px}.calendar-section{padding:15px}.calendar-section h4{font-size:1rem;margin-bottom:8px}.calendar-section p{font-size:.8rem;margin-bottom:15px}.appointment-calendar-buttons{gap:10px;margin-bottom:15px}.calendar-btn{padding:12px 14px}.calendar-btn,.calendar-btn span{font-size:.75rem}.modal-actions{padding:15px}.close-button{font-size:13px;padding:12px 20px}}.stripe-payment-modal{align-items:center;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:2000}.payment-modal-content{animation:modalSlideIn .3s ease-out;background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d;box-sizing:border-box;max-width:600px;min-height:85vh;overflow:hidden;width:100%}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.payment-modal-header{align-items:center;border-bottom:1px solid #e6ebf1;box-sizing:border-box;display:flex;justify-content:space-between;padding:16px 16px 12px}.payment-header-left{align-items:center;display:flex;gap:12px}.payment-icon{color:#00a3bb;font-size:24px}.payment-modal-header h3{color:#32325d;font-size:1.25rem;font-weight:600;margin:0}.payment-modal-header p{color:#6b7c93;font-size:.875rem;margin:4px 0 0}.payment-close-btn{align-items:center;background:none;border:none;border-radius:50%;color:#6b7c93;cursor:pointer;display:flex;font-size:18px;justify-content:center;padding:8px;transition:all .15s ease}.payment-close-btn:hover{background:#f6f9fc;color:#32325d}.payment-close-btn:disabled{cursor:not-allowed;opacity:.5}.payment-modal-body{box-sizing:border-box;max-height:calc(80vh - 60px);overflow-y:auto;padding:16px}.payment-summary{background:#f8fafc;border:1px solid #e6ebf1;border-radius:8px;margin-bottom:16px;padding:12px}.package-info{align-items:center;display:flex;justify-content:space-between;margin-bottom:6px}.package-info h4{color:#32325d;font-size:.9rem;font-weight:600;margin:0}.amount{color:#00a3bb;font-size:1.1rem;font-weight:700}.security-badge{align-items:center;color:#6b7c93;display:flex;font-size:.75rem;gap:4px}.security-badge svg{color:#00a3bb}.payment-form{margin-bottom:16px;width:100%}.customer-details{margin-bottom:20px}.form-group{margin-bottom:16px}.form-group label{color:#32325d;display:block;font-size:.875rem;font-weight:500;margin-bottom:6px}.form-group input{background:#fff;border:1px solid #e6ebf1;border-radius:6px;box-sizing:border-box;color:#32325d;font-family:inherit;font-size:16px;padding:12px;transition:all .15s ease;width:100%}.form-group input:focus{border-color:#00a3bb;box-shadow:0 0 0 1px #00a3bb;outline:none}.form-group input::placeholder{color:#aab7c4}.saved-payment-methods{margin-bottom:20px}.saved-methods-header{align-items:center;color:#32325d;display:flex;font-size:.875rem;font-weight:500;gap:8px;margin-bottom:12px}.saved-methods-list{margin-bottom:12px}.saved-method{align-items:center;background:#fff;border:1px solid #e6ebf1;border-radius:6px;cursor:pointer;display:flex;gap:12px;margin-bottom:8px;padding:12px;transition:all .15s ease}.saved-method:hover{background:#f8fafc;border-color:#00a3bb}.saved-method.selected{background:#f0fdfd;border-color:#00a3bb;box-shadow:0 0 0 1px #00a3bb}.saved-method span{color:#32325d;font-size:.875rem}.use-new-card-btn{background:#f8fafc;border:1px solid #e6ebf1;border-radius:6px;color:#6b7c93;cursor:pointer;font-size:.875rem;padding:10px;transition:all .15s ease;width:100%}.use-new-card-btn:hover{background:#f1f5f9;border-color:#00a3bb;color:#00a3bb}.card-element-container{margin-bottom:16px}.card-element-container label{color:#32325d;display:block;font-size:.875rem;font-weight:500;margin-bottom:6px}.card-element-container .StripeElement{background:#fff;border:1px solid #e6ebf1;border-radius:6px;box-sizing:border-box;padding:12px;position:relative;transition:all .15s ease;width:100%;z-index:1}.card-element-container .StripeElement--focus{border-color:#00a3bb;box-shadow:0 0 0 1px #00a3bb}.card-element-container .StripeElement--invalid{border-color:#fa755a}.save-payment-option{margin-bottom:20px}.save-payment-option label{align-items:center;color:#32325d;cursor:pointer;display:flex;font-size:.875rem;gap:8px}.save-payment-option input[type=checkbox]{accent-color:#00a3bb;height:16px;width:16px}.form-row{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:10px;width:100%}.form-field{flex:1 1;min-width:0;width:100%}.form-field.full-width{flex:1 1 100%;min-width:0;width:100%}.form-field label{color:#32325d;display:block;font-size:.75rem;font-weight:500;margin-bottom:3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.payment-input{background:#fff;border:1px solid #e6ebf1;border-radius:6px;box-sizing:border-box;color:#32325d;font-family:inherit;font-size:.75rem;min-width:0;padding:8px 10px;transition:all .15s ease;width:100%}.payment-input:focus{border-color:#00a3bb;box-shadow:0 0 0 1px #00a3bb;outline:none}.payment-input::placeholder{color:#aab7c4}.billing-address-section{margin-top:12px;padding-top:12px;width:100%}.billing-address-section h4{color:#32325d;font-size:.8rem;font-weight:600;margin:0 0 8px}.billing-address-section .form-row{margin-bottom:8px}.billing-address-section .form-field{flex:1 1;min-width:0}.billing-address-section .form-field.full-width{flex:1 1 100%;min-width:0}.billing-toggle{margin-bottom:12px;text-align:center}.billing-toggle-btn{background:none;border:1px solid #e6ebf1;border-radius:6px;color:#6b7c93;cursor:pointer;font-size:.75rem;padding:6px 12px;transition:all .15s ease}.billing-toggle-btn:hover{background:#f6f9fc;border-color:#00a3bb;color:#00a3bb}.billing-address-section{border-top:1px solid #e6ebf1;margin-top:16px;padding-top:16px}.payment-button{align-items:center;background:#00a3bb;border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-family:inherit;font-size:.85rem;font-weight:600;gap:8px;justify-content:center;padding:12px;transition:all .15s ease;width:100%}.payment-button:hover:not(:disabled){background:#50cada;transform:translateY(-1px)}.payment-button:active:not(:disabled){transform:translateY(0)}.payment-button:disabled{background:#6b7c93;cursor:not-allowed;transform:none}.payment-error{background:#fef2f2;border:1px solid #fecaca;border-radius:6px;color:#dc2626;font-size:.875rem;margin-bottom:16px;padding:12px 16px}.payment-footer{border-top:1px solid #e6ebf1;padding-top:12px;text-align:center}.payment-footer p{color:#6b7c93;font-size:.7rem;line-height:1.3;margin:0 0 8px}.payment-methods{align-items:center;color:#6b7c93;display:flex;font-size:.7rem;gap:6px;justify-content:center}.card-icons{display:flex;font-size:.9rem;gap:4px}.saved-payment-methods{margin-bottom:24px}.payment-method-toggle{margin-bottom:16px}.toggle-label{align-items:center;color:#32325d;cursor:pointer;display:flex;font-weight:600;gap:12px}.toggle-label input[type=checkbox]{accent-color:#50cada;height:18px;width:18px}.toggle-text{font-size:.9rem}.saved-cards-list{margin-top:16px}.saved-cards-list>label{color:#32325d;display:block;font-size:.9rem;font-weight:600;margin-bottom:12px}.saved-card-item{align-items:center;background:#fff;border:2px solid #e6ebf1;border-radius:8px;cursor:pointer;display:flex;justify-content:space-between;margin-bottom:8px;padding:16px;transition:all .2s ease}.saved-card-item:hover{border-color:#50cada;box-shadow:0 2px 8px #50cada1a}.saved-card-item.selected{background:linear-gradient(135deg,#f0fdfd,#e6f9fa);border-color:#50cada;box-shadow:0 2px 8px #50cada26}.card-info{flex:1 1}.card-brand{color:#32325d;font-size:.9rem;font-weight:600;margin-bottom:4px;text-transform:capitalize}.card-number{color:#6b7c93;font-size:.85rem;margin-bottom:2px}.card-expiry{color:#6b7c93;font-size:.8rem}.card-radio{margin-left:16px}.card-radio input[type=radio]{accent-color:#50cada;height:16px;width:16px}.new-card-section{margin-bottom:24px}@media (max-width:480px){.stripe-payment-modal{align-items:flex-start;justify-content:flex-start;padding:0}.payment-modal-content{border-radius:0;display:flex;flex-direction:column;height:100vh;margin:0;max-height:100vh;max-width:100%;overflow:hidden}.payment-modal-header{flex-shrink:0;padding:15px}.payment-modal-body{flex:1 1;max-height:none;overflow-y:auto;padding:15px}.payment-header-left{gap:6px}.payment-icon{font-size:18px}.payment-modal-header h3{font-size:1rem}.form-row{flex-direction:column;gap:8px}.form-field,.form-field.full-width{flex:none;width:100%}.billing-address-section{margin-top:10px;padding-top:10px}.payment-summary{margin-bottom:12px;padding:10px}.package-info h4{font-size:.85rem}.amount{font-size:1rem}.payment-input{font-size:.8rem}.card-element-container .StripeElement,.payment-input{padding:10px 12px}.payment-button{align-self:center;font-size:14px;max-width:200px;min-width:120px;padding:12px 20px;width:auto}.customer-details{margin-bottom:16px}.form-group{margin-bottom:12px}.form-group input{font-size:16px;padding:12px}.saved-payment-methods{margin-bottom:16px}.saved-method{gap:8px;padding:10px}.saved-method span{font-size:.8rem}.use-new-card-btn{font-size:.8rem;padding:12px}.card-element-container .StripeElement{font-size:16px;padding:12px}.save-payment-option{margin-bottom:16px}.save-payment-option label{font-size:.8rem;gap:6px}.payment-success{padding:20px 15px}.success-icon{font-size:36px;margin-bottom:12px}.payment-success h3{font-size:1.2rem;margin-bottom:8px}.payment-success p{font-size:.8rem;margin-bottom:16px}.success-details{margin-top:12px;padding:12px}.success-item{font-size:.8rem}}@media (hover:none) and (pointer:coarse){.card-element-container .StripeElement,.form-group input,.payment-button,.saved-method,.use-new-card-btn{min-height:44px}.payment-close-btn{min-height:44px;min-width:44px}}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){.card-element-container .StripeElement{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}}@media (max-width:768px) and (orientation:landscape){.stripe-payment-modal{padding:5px}.payment-modal-content{height:95vh;max-height:95vh}.payment-modal-body,.payment-modal-header{padding:10px 15px}.payment-modal-header h3{font-size:.9rem}.payment-modal-header p{font-size:.8rem}.customer-details{margin-bottom:12px}.form-group{margin-bottom:8px}.save-payment-option,.saved-payment-methods{margin-bottom:12px}}.payment-success{animation:successFadeIn .5s ease-out;padding:32px 16px;text-align:center}@keyframes successFadeIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.success-icon{animation:successBounce .6s ease-out;font-size:48px;margin-bottom:16px}@keyframes successBounce{0%{transform:scale(0)}50%{transform:scale(1.2)}to{transform:scale(1)}}.payment-success h3{color:#059669;font-size:1.5rem;font-weight:600;margin:0 0 12px}.payment-success p{color:#6b7c93;font-size:.95rem;line-height:1.5;margin:0 0 24px}.success-details{background:#f0fdf4;border:1px solid #bbf7d0;border-radius:8px;margin-top:16px;padding:16px}.success-item{align-items:center;display:flex;font-size:.9rem;justify-content:space-between;margin-bottom:8px}.success-item:last-child{margin-bottom:0}.success-item span:first-child{color:#6b7c93;font-weight:500}.success-item span:last-child{color:#059669;font-weight:600}@media (max-width:480px){.payment-success{padding:24px 12px}.success-icon{font-size:40px;margin-bottom:12px}.payment-success h3{font-size:1.25rem;margin-bottom:8px}.payment-success p{font-size:.85rem;margin-bottom:20px}.success-details{margin-top:12px;padding:12px}.success-item{font-size:.85rem}}:root{--bm-primary:#00a3bb;--bm-primary-light:#50cada;--bm-primary-dark:#008a9e;--bm-text:#1e293b;--bm-text-light:#64748b;--bm-text-muted:#94a3b8;--bm-border:#94a3b833;--bm-white:#fff;--bm-background:#f8fbfc;--bm-error:#ef4444;--bm-success:#22c55e;--bm-shadow:#00a3bb1a;--bm-radius-sm:8px;--bm-radius-md:12px;--bm-radius-lg:16px}.book-modal-overlay{align-items:center;animation:bmFadeIn .2s ease-out;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f172a99;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:10000}@keyframes bmFadeIn{0%{opacity:0}to{opacity:1}}.book-modal-container{animation:bmSlideUp .3s ease-out;background:#fff;background:var(--bm-white);border-radius:16px;border-radius:var(--bm-radius-lg);box-shadow:0 25px 50px -12px #00000040;display:flex;flex-direction:column;max-height:90vh;max-width:600px;overflow:hidden;position:relative;width:100%}@keyframes bmSlideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.book-modal-close-btn{align-items:center;background:#ffffffe6;border:none;border-radius:50%;box-shadow:0 2px 8px #0000001a;color:#94a3b8;color:var(--bm-text-muted);cursor:pointer;display:flex;justify-content:center;padding:8px;position:absolute;right:16px;top:16px;transition:all .2s ease;z-index:10}.book-modal-close-btn:hover{background:#fff;background:var(--bm-white);color:#1e293b;color:var(--bm-text);transform:scale(1.1)}.book-modal-step{display:flex;flex-direction:column;height:100%;max-height:90vh}.book-modal-header{border-bottom:1px solid #94a3b833;border-bottom:1px solid var(--bm-border);flex-shrink:0;padding:24px 24px 16px}.book-modal-title{color:#1e293b;color:var(--bm-text);font-size:1.5rem;font-weight:700;margin:0 0 4px}.book-modal-subtitle{color:#64748b;color:var(--bm-text-light);font-size:.95rem;margin:0}.book-modal-content{flex:1 1;overflow-y:auto;padding:24px}.book-modal-form-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr}.book-modal-field{display:flex;flex-direction:column}.book-modal-field-full{grid-column:1/-1}.book-modal-label{color:#1e293b;color:var(--bm-text);font-size:.875rem;font-weight:600;margin-bottom:6px}.book-modal-input,.book-modal-select,.book-modal-textarea{background:#fff;background:var(--bm-white);border:2px solid #94a3b833;border:2px solid var(--bm-border);border-radius:12px;border-radius:var(--bm-radius-md);box-sizing:border-box;color:#1e293b;color:var(--bm-text);font-size:1rem;padding:12px 14px;transition:all .2s ease;width:100%}.book-modal-input:hover,.book-modal-select:hover,.book-modal-textarea:hover{border-color:#50cada;border-color:var(--bm-primary-light)}.book-modal-input:focus,.book-modal-select:focus,.book-modal-textarea:focus{border-color:#00a3bb;border-color:var(--bm-primary);box-shadow:0 0 0 3px #00a3bb1a;outline:none}.book-modal-textarea{min-height:100px;resize:vertical}.book-modal-select{-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none' stroke='%2364748b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;background-size:16px;cursor:pointer;padding-right:40px}.book-modal-chart-container{background:#f8fbfc;background:var(--bm-background);border:1px solid #94a3b833;border:1px solid var(--bm-border);border-radius:12px;border-radius:var(--bm-radius-md);margin:20px 0;padding:20px;text-align:center}.book-modal-chart-title{color:#1e293b;color:var(--bm-text);font-size:.95rem;font-weight:600;margin:0 0 16px}.book-modal-chart-wrapper{cursor:crosshair;display:inline-block;position:relative}.book-modal-chart-image{border-radius:8px;border-radius:var(--bm-radius-sm);box-shadow:0 4px 12px #00a3bb1a;box-shadow:0 4px 12px var(--bm-shadow);max-height:300px;max-width:100%}.book-modal-chart-point{align-items:center;background:#00a3bb;background:var(--bm-primary);border:2px solid #fff;border:2px solid var(--bm-white);border-radius:50%;box-shadow:0 2px 8px #00a3bb66;color:#fff;display:flex;font-size:12px;font-weight:700;height:24px;justify-content:center;position:absolute;transform:translate(-50%,-50%);width:24px;z-index:5}.book-modal-explanations{margin-top:20px}.book-modal-summary{background:#f8fbfc;background:var(--bm-background);border:1px solid #94a3b833;border:1px solid var(--bm-border);border-radius:12px;border-radius:var(--bm-radius-md);padding:20px}.book-modal-summary-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr}.book-modal-summary-item{display:flex;flex-direction:column;gap:4px}.book-modal-summary-label{color:#94a3b8;color:var(--bm-text-muted);font-size:.8rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.book-modal-summary-value{color:#1e293b;color:var(--bm-text);font-size:1rem;font-weight:600}.book-modal-summary-fee{color:#00a3bb;color:var(--bm-primary);font-size:1.125rem}.book-modal-terms{border-top:1px solid #94a3b833;border-top:1px solid var(--bm-border);margin-top:20px;padding-top:16px}.book-modal-checkbox-label{align-items:flex-start;color:#1e293b;color:var(--bm-text);cursor:pointer;display:flex;font-size:.95rem;gap:12px}.book-modal-checkbox{accent-color:#00a3bb;accent-color:var(--bm-primary);cursor:pointer;height:20px;margin-top:2px;width:20px}.book-modal-checkbox-label a{color:#00a3bb;color:var(--bm-primary);font-weight:600;text-decoration:underline}.book-modal-checkbox-label a:hover{color:#008a9e;color:var(--bm-primary-dark)}.book-modal-notice{background:linear-gradient(135deg,#e0f7fa,#b2ebf2);border:1px solid #50cada;border:1px solid var(--bm-primary-light);border-radius:12px;border-radius:var(--bm-radius-md);display:flex;gap:16px;margin-bottom:20px;padding:20px}.book-modal-notice-icon{color:#00a3bb;color:var(--bm-primary);flex-shrink:0}.book-modal-notice-content h4{color:#008a9e;color:var(--bm-primary-dark);font-size:1rem;font-weight:700;margin:0 0 8px}.book-modal-notice-content p{color:#64748b;color:var(--bm-text-light);font-size:.9rem;line-height:1.5;margin:0}.book-modal-payment-summary{background:#f8fbfc;background:var(--bm-background);border:1px solid #94a3b833;border:1px solid var(--bm-border);border-radius:12px;border-radius:var(--bm-radius-md);padding:16px 20px}.book-modal-payment-item{align-items:center;color:#1e293b;color:var(--bm-text);display:flex;font-size:1rem;justify-content:space-between}.book-modal-payment-amount{color:#00a3bb;color:var(--bm-primary);font-size:1.5rem;font-weight:700}.book-modal-actions{border-top:1px solid #94a3b833;border-top:1px solid var(--bm-border);display:flex;flex-shrink:0;justify-content:flex-end;padding:20px 24px}.book-modal-actions-split{justify-content:space-between}.book-modal-actions-group{display:flex;gap:12px}.book-modal-btn-primary{align-items:center;background:linear-gradient(135deg,#00a3bb,#50cada);background:linear-gradient(135deg,var(--bm-primary),var(--bm-primary-light));border:none;border-radius:12px;border-radius:var(--bm-radius-md);box-shadow:0 4px 12px #00a3bb4d;color:#fff;cursor:pointer;display:inline-flex;font-size:.95rem;font-weight:600;gap:8px;justify-content:center;padding:14px 24px;transition:all .3s cubic-bezier(.4,0,.2,1)}.book-modal-btn-primary:hover:not(:disabled){box-shadow:0 6px 20px #00a3bb66;transform:translateY(-2px)}.book-modal-btn-primary:disabled{box-shadow:none;cursor:not-allowed;opacity:.5;transform:none}.book-modal-btn-secondary{align-items:center;background:#0000;border:2px solid #94a3b833;border:2px solid var(--bm-border);border-radius:12px;border-radius:var(--bm-radius-md);color:#64748b;color:var(--bm-text-light);cursor:pointer;display:inline-flex;font-size:.95rem;font-weight:600;gap:8px;justify-content:center;padding:14px 24px;transition:all .2s ease}.book-modal-btn-secondary:hover{background:#00000005;border-color:#94a3b8;border-color:var(--bm-text-muted);color:#1e293b;color:var(--bm-text)}.book-modal-btn-outline{align-items:center;background:#0000;border:2px solid #00a3bb;border:2px solid var(--bm-primary);border-radius:12px;border-radius:var(--bm-radius-md);color:#00a3bb;color:var(--bm-primary);cursor:pointer;display:inline-flex;font-size:.95rem;font-weight:600;gap:8px;justify-content:center;padding:14px 20px;transition:all .2s ease}.book-modal-btn-outline:hover{background:#00a3bb0d}@media (max-width:640px){.book-modal-overlay{padding:0}.book-modal-container{border-radius:0;height:100vh;max-height:100vh}.book-modal-header{padding:20px}.book-modal-title{font-size:1.25rem}.book-modal-content{padding:20px}.book-modal-form-grid,.book-modal-summary-grid{grid-template-columns:1fr}.book-modal-actions{flex-direction:column;gap:12px;padding:16px 20px}.book-modal-actions-split{flex-direction:column-reverse}.book-modal-actions-group{flex-direction:column;width:100%}.book-modal-btn-outline,.book-modal-btn-primary,.book-modal-btn-secondary{justify-content:center;width:100%}.book-modal-notice{align-items:flex-start;flex-direction:column}}:root{--sm-primary:#00a3bb;--sm-primary-light:#50cada;--sm-primary-dark:#008a9e;--sm-text:#1e293b;--sm-text-light:#64748b;--sm-text-muted:#94a3b8;--sm-border:#94a3b833;--sm-white:#fff;--sm-background:#f8fbfc;--sm-error:#ef4444;--sm-success:#22c55e;--sm-shadow:#00a3bb1a;--sm-radius-sm:8px;--sm-radius-md:12px;--sm-radius-lg:16px}.slot-modal-overlay{align-items:center;animation:smFadeIn .2s ease-out;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f172a99;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:10000}@keyframes smFadeIn{0%{opacity:0}to{opacity:1}}.slot-modal-container{animation:smSlideUp .3s ease-out;background:#fff;background:var(--sm-white);border-radius:16px;border-radius:var(--sm-radius-lg);box-shadow:0 25px 50px -12px #00000040;display:flex;flex-direction:column;max-height:90vh;max-width:520px;overflow:hidden;position:relative;width:100%}@keyframes smSlideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.slot-modal-loading{align-items:center;display:flex;flex-direction:column;gap:16px;justify-content:center;padding:60px 40px}.slot-modal-spinner{animation:smSpin 1s linear infinite;border:4px solid #00a3bb33;border-radius:50%;border-top:4px solid var(--sm-primary);height:48px;width:48px}.slot-modal-spinner-small{animation:smSpin 1s linear infinite;border:3px solid #00a3bb33;border-radius:50%;border-top:3px solid var(--sm-primary);height:24px;width:24px}@keyframes smSpin{to{transform:rotate(1turn)}}.slot-modal-loading-text{color:#64748b;color:var(--sm-text-light);font-size:1rem;font-weight:500;margin:0}.slot-modal-loading-inline{color:#64748b;color:var(--sm-text-light);gap:12px;padding:40px}.slot-modal-error,.slot-modal-loading-inline{align-items:center;display:flex;justify-content:center}.slot-modal-error{flex-direction:column;gap:20px;padding:60px 40px;text-align:center}.slot-modal-error-icon{color:#ef4444;color:var(--sm-error)}.slot-modal-error-text{color:#64748b;color:var(--sm-text-light);font-size:1rem;margin:0}.slot-modal-close{align-items:center;background:#ffffffe6;border:none;border-radius:50%;box-shadow:0 2px 8px #0000001a;color:#94a3b8;color:var(--sm-text-muted);cursor:pointer;display:flex;justify-content:center;padding:8px;position:absolute;right:16px;top:16px;transition:all .2s ease;z-index:10}.slot-modal-close:hover{background:#fff;background:var(--sm-white);color:#1e293b;color:var(--sm-text);transform:scale(1.1)}.slot-modal-header{border-bottom:1px solid #94a3b833;border-bottom:1px solid var(--sm-border);padding:24px 24px 16px}.slot-modal-title{color:#1e293b;color:var(--sm-text);font-size:1.5rem;font-weight:700;margin:0 0 4px}.slot-modal-subtitle{color:#64748b;color:var(--sm-text-light);font-size:.95rem;margin:0}.slot-modal-subtitle strong{color:#00a3bb;color:var(--sm-primary)}.slot-modal-body{flex:1 1;overflow-y:auto;padding:24px}.slot-modal-step-header{margin-bottom:24px;text-align:center}.slot-modal-step-title{color:#1e293b;color:var(--sm-text);font-size:1.125rem;font-weight:600;margin:0 0 4px}.slot-modal-step-desc{color:#64748b;color:var(--sm-text-light);font-size:.9rem;margin:0}.slot-modal-type-grid{display:flex;flex-direction:column;gap:12px;margin-bottom:24px}.slot-modal-type-card{align-items:center;background:#fff;background:var(--sm-white);border:2px solid #94a3b833;border:2px solid var(--sm-border);border-radius:12px;border-radius:var(--sm-radius-md);cursor:pointer;display:flex;gap:16px;padding:16px 20px;position:relative;transition:all .2s ease}.slot-modal-type-card:hover{background:#00a3bb05;border-color:#50cada;border-color:var(--sm-primary-light)}.slot-modal-type-card.selected{background:linear-gradient(135deg,#00a3bb0d,#50cada0d);border-color:#00a3bb;border-color:var(--sm-primary)}.slot-modal-type-icon{align-items:center;background:linear-gradient(135deg,#00a3bb1a,#50cada1a);border-radius:8px;border-radius:var(--sm-radius-sm);color:#00a3bb;color:var(--sm-primary);display:flex;flex-shrink:0;height:48px;justify-content:center;width:48px}.slot-modal-type-content{flex:1 1;min-width:0}.slot-modal-type-name{color:#1e293b;color:var(--sm-text);font-size:1rem;font-weight:600;margin:0 0 2px}.slot-modal-type-desc{color:#64748b;color:var(--sm-text-light);font-size:.85rem;margin:0 0 4px}.slot-modal-type-price{color:#00a3bb;color:var(--sm-primary);font-size:1.125rem;font-weight:700}.slot-modal-type-check{align-items:center;border:2px solid #94a3b833;border:2px solid var(--sm-border);border-radius:50%;display:flex;flex-shrink:0;height:24px;justify-content:center;transition:all .2s ease;width:24px}.slot-modal-type-check.active{background:#00a3bb;background:var(--sm-primary);border-color:#00a3bb;border-color:var(--sm-primary);color:#fff}.slot-modal-date-section{margin-bottom:20px}.slot-modal-label{color:#1e293b;color:var(--sm-text);display:block;font-size:.875rem;font-weight:600;margin-bottom:8px}.slot-modal-date-input-wrapper{position:relative}.slot-modal-date-input{background:#fff;background:var(--sm-white);border:2px solid #94a3b833;border:2px solid var(--sm-border);border-radius:12px;border-radius:var(--sm-radius-md);box-sizing:border-box;color:#1e293b;color:var(--sm-text);cursor:pointer;font-size:1rem;padding:14px 48px 14px 16px;transition:all .2s ease;width:100%}.slot-modal-date-input:hover{border-color:#50cada;border-color:var(--sm-primary-light)}.slot-modal-date-input:focus{border-color:#00a3bb;border-color:var(--sm-primary);box-shadow:0 0 0 3px #00a3bb1a;outline:none}.slot-modal-date-icon{color:#94a3b8;color:var(--sm-text-muted);pointer-events:none;position:absolute;right:16px;top:50%;transform:translateY(-50%)}.slot-modal-alert{align-items:center;background:#ef44441a;border:1px solid #ef444433;border-radius:12px;border-radius:var(--sm-radius-md);color:#ef4444;color:var(--sm-error);display:flex;font-size:.9rem;gap:10px;margin-bottom:20px;padding:12px 16px}.slot-modal-slots-section{margin-bottom:24px}.slot-modal-slots-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(3,1fr)}.slot-modal-slot{align-items:center;background:#fff;background:var(--sm-white);border:2px solid #94a3b833;border:2px solid var(--sm-border);border-radius:8px;border-radius:var(--sm-radius-sm);color:#1e293b;color:var(--sm-text);cursor:pointer;display:flex;font-size:.875rem;font-weight:500;gap:4px;justify-content:center;padding:12px 8px;transition:all .2s ease}.slot-modal-slot:hover:not(.disabled):not(.selected){background:#00a3bb0d;border-color:#50cada;border-color:var(--sm-primary-light)}.slot-modal-slot.selected{background:#00a3bb;background:var(--sm-primary);border-color:#00a3bb;border-color:var(--sm-primary);color:#fff}.slot-modal-slot.disabled{background:#f1f5f9;cursor:not-allowed;opacity:.4}.slot-modal-slot-time{font-weight:600}.slot-modal-slot-dash{color:#94a3b8;color:var(--sm-text-muted)}.slot-modal-slot.selected .slot-modal-slot-dash{color:#ffffffb3}.slot-modal-no-slots{align-items:center;color:#94a3b8;color:var(--sm-text-muted);display:flex;flex-direction:column;justify-content:center;padding:40px 20px;text-align:center}.slot-modal-no-slots svg{margin-bottom:16px;opacity:.5}.slot-modal-no-slots h4{color:#1e293b;color:var(--sm-text);font-size:1.1rem;font-weight:600;margin:0 0 8px}.slot-modal-no-slots p{color:#64748b;color:var(--sm-text-light);font-size:.9rem;margin:0}.slot-modal-actions{border-top:1px solid #94a3b833;border-top:1px solid var(--sm-border);display:flex;justify-content:flex-end;padding-top:16px}.slot-modal-actions-split{justify-content:space-between}.slot-modal-btn-primary{align-items:center;background:linear-gradient(135deg,#00a3bb,#50cada);background:linear-gradient(135deg,var(--sm-primary),var(--sm-primary-light));border:none;border-radius:12px;border-radius:var(--sm-radius-md);box-shadow:0 4px 12px #00a3bb4d;color:#fff;cursor:pointer;display:inline-flex;font-size:.95rem;font-weight:600;gap:8px;justify-content:center;padding:14px 24px;transition:all .3s cubic-bezier(.4,0,.2,1)}.slot-modal-btn-primary:hover:not(:disabled){box-shadow:0 6px 20px #00a3bb66;transform:translateY(-2px)}.slot-modal-btn-primary:disabled{box-shadow:none;cursor:not-allowed;opacity:.5;transform:none}.slot-modal-btn-secondary{align-items:center;background:#0000;border:2px solid #94a3b833;border:2px solid var(--sm-border);border-radius:12px;border-radius:var(--sm-radius-md);color:#64748b;color:var(--sm-text-light);cursor:pointer;display:inline-flex;font-size:.95rem;font-weight:600;gap:8px;justify-content:center;padding:14px 24px;transition:all .2s ease}.slot-modal-btn-secondary:hover{background:#00000005;border-color:#94a3b8;border-color:var(--sm-text-muted);color:#1e293b;color:var(--sm-text)}@media (max-width:640px){.slot-modal-overlay{padding:0}.slot-modal-container{border-radius:0;height:100vh;max-height:100vh;max-width:100%}.slot-modal-header{padding:20px}.slot-modal-title{font-size:1.25rem}.slot-modal-body{padding:20px}.slot-modal-type-card{padding:14px 16px}.slot-modal-type-icon{height:40px;width:40px}.slot-modal-slots-grid{grid-template-columns:repeat(2,1fr)}.slot-modal-actions{gap:12px}.slot-modal-actions,.slot-modal-actions-split{flex-direction:column-reverse}.slot-modal-btn-primary,.slot-modal-btn-secondary{justify-content:center;width:100%}}@media (max-width:400px){.slot-modal-slots-grid{gap:8px;grid-template-columns:1fr 1fr}.slot-modal-slot{font-size:.8rem;padding:10px 6px}}:root{--dd-primary:#00a3bb;--dd-primary-light:#50cada;--dd-primary-dark:#008a9e;--dd-text:#1e293b;--dd-text-light:#64748b;--dd-text-muted:#94a3b8;--dd-border:#94a3b826;--dd-white:#fff;--dd-background:#f8fbfc;--dd-accent:#e0f7fa;--dd-accent-light:#f0fdfd;--dd-shadow:#00a3bb14;--dd-shadow-hover:#00a3bb26;--dd-radius-sm:8px;--dd-radius-md:12px;--dd-radius-lg:16px;--dd-radius-xl:24px}.doctor-details-page{animation:ddFadeInUp .5s ease-out;padding:20px 0;width:100%}@keyframes ddFadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.doctor-details-loading{align-items:center;display:flex;flex-direction:column;gap:1rem;justify-content:center;min-height:400px}.doctor-details-spinner{animation:ddSpin 1s linear infinite;border:4px solid #00a3bb33;border-radius:50%;border-top:4px solid var(--dd-primary);height:48px;width:48px}@keyframes ddSpin{to{transform:rotate(1turn)}}.doctor-details-loading p{color:#64748b;color:var(--dd-text-light);font-size:1rem;font-weight:500}.doctor-details-back-btn{align-items:center;background:#0000;border:2px solid #94a3b826;border:2px solid var(--dd-border);border-radius:12px;border-radius:var(--dd-radius-md);color:#64748b;color:var(--dd-text-light);cursor:pointer;display:inline-flex;font-size:.95rem;font-weight:600;gap:.5rem;margin-bottom:1.5rem;padding:.75rem 1.25rem;transition:all .3s cubic-bezier(.4,0,.2,1)}.doctor-details-back-btn:hover{background:#00a3bb0d;border-color:#00a3bb;border-color:var(--dd-primary);color:#00a3bb;color:var(--dd-primary);transform:translateX(-4px)}.doctor-details-back-btn svg{font-size:.9rem;transition:transform .3s ease}.doctor-details-back-btn:hover svg{transform:translateX(-2px)}.doctor-details-hero{background:#fff;background:var(--dd-white);border:1px solid #94a3b826;border:1px solid var(--dd-border);border-radius:16px;border-radius:var(--dd-radius-lg);box-shadow:0 4px 24px #00a3bb14;box-shadow:0 4px 24px var(--dd-shadow);margin-bottom:32px;padding:48px}.doctor-details-hero-content{align-items:flex-start;display:flex;gap:48px}.doctor-details-hero-left{align-items:flex-start;display:flex;flex:1 1;gap:32px}.doctor-details-hero-img-wrapper{flex-shrink:0;position:relative}.doctor-details-hero-img{border:4px solid #fff;border:4px solid var(--dd-white);border-radius:16px;border-radius:var(--dd-radius-lg);box-shadow:0 8px 32px #00a3bb26;box-shadow:0 8px 32px var(--dd-shadow-hover);height:160px;object-fit:cover;width:160px}.doctor-details-verified-badge{align-items:center;background:linear-gradient(135deg,#00a3bb,#50cada);background:linear-gradient(135deg,var(--dd-primary),var(--dd-primary-light));border:2px solid #fff;border:2px solid var(--dd-white);border-radius:12px;border-radius:var(--dd-radius-md);bottom:-8px;box-shadow:0 4px 12px #00a3bb4d;color:#fff;display:flex;font-size:.75rem;font-weight:600;gap:6px;padding:6px 12px;position:absolute;right:-8px}.doctor-details-hero-info{flex:1 1;min-width:0}.doctor-details-hero-name{color:#1e293b;color:var(--dd-text);font-size:2rem;font-weight:700;letter-spacing:-.02em;line-height:1.2;margin:0 0 8px}.doctor-details-hero-specialty{color:#64748b;color:var(--dd-text-light);font-size:1.125rem;font-weight:500;line-height:1.4;margin-bottom:16px}.doctor-details-hero-meta{align-items:center;display:flex;flex-wrap:wrap;gap:32px;margin-bottom:16px}.doctor-details-hero-rating{align-items:center;display:flex;gap:12px}.doctor-details-stars{color:#fbbf24;filter:drop-shadow(0 2px 4px rgba(251,191,36,.3));font-size:1.25rem;letter-spacing:2px}.doctor-details-rating-text{color:#64748b;color:var(--dd-text-light);font-size:.95rem;font-weight:500}.doctor-details-rating-text strong{color:#1e293b;color:var(--dd-text);font-size:1rem;font-weight:700}.doctor-details-hero-experience{align-items:center;color:#64748b;color:var(--dd-text-light);display:flex;font-size:.95rem;font-weight:500;gap:8px}.doctor-details-hero-experience svg{color:#00a3bb;color:var(--dd-primary)}.doctor-details-hero-location{align-items:center;color:#64748b;color:var(--dd-text-light);display:flex;font-size:.95rem;font-weight:500;gap:8px}.doctor-details-hero-location svg{color:#00a3bb;color:var(--dd-primary);flex-shrink:0}.doctor-details-hero-right{display:flex;flex-direction:column;gap:20px;min-width:280px}.doctor-details-hero-fees{background:linear-gradient(135deg,#f0fdfd,#fff);background:linear-gradient(135deg,var(--dd-accent-light),var(--dd-white));border:1px solid #94a3b826;border:1px solid var(--dd-border);border-radius:16px;border-radius:var(--dd-radius-lg);display:flex;flex-direction:column;gap:16px;padding:24px}.doctor-details-hero-fee-item{align-items:center;border-bottom:1px solid #94a3b826;border-bottom:1px solid var(--dd-border);display:flex;justify-content:space-between;padding-bottom:16px}.doctor-details-hero-fee-item:last-child{border-bottom:none;padding-bottom:0}.doctor-details-fee-label{color:#64748b;color:var(--dd-text-light);font-size:.9375rem;font-weight:500}.doctor-details-fee-amount{color:#00a3bb;color:var(--dd-primary);font-size:1.5rem;font-weight:700}.doctor-details-hero-book-btn{align-items:center;background:linear-gradient(135deg,#00a3bb,#50cada);background:linear-gradient(135deg,var(--dd-primary) 0,var(--dd-primary-light) 100%);border:none;border-radius:12px;border-radius:var(--dd-radius-md);box-shadow:0 8px 24px #00a3bb4d;color:#fff;cursor:pointer;display:flex;font-size:1rem;font-weight:600;gap:10px;justify-content:center;padding:16px 32px;transition:all .3s cubic-bezier(.4,0,.2,1);width:100%}.doctor-details-hero-book-btn:hover:not(:disabled){box-shadow:0 12px 32px #00a3bb66;transform:translateY(-2px)}.doctor-details-hero-book-btn:disabled{cursor:not-allowed;opacity:.6}.doctor-details-btn-spinner{animation:ddSpin .8s linear infinite;border:2px solid #ffffff4d;border-radius:50%;border-top-color:#fff;height:18px;width:18px}.doctor-details-main{display:flex;flex-direction:column;gap:24px}.doctor-details-section{background:#fff;background:var(--dd-white);border:1px solid #94a3b826;border:1px solid var(--dd-border);border-radius:16px;border-radius:var(--dd-radius-lg);box-shadow:0 2px 12px #00a3bb14;box-shadow:0 2px 12px var(--dd-shadow);padding:32px;transition:all .3s cubic-bezier(.4,0,.2,1)}.doctor-details-section:hover{border-color:#50cada4d;box-shadow:0 4px 20px #00a3bb26;box-shadow:0 4px 20px var(--dd-shadow-hover)}.doctor-details-section-full{grid-column:1/-1}.doctor-details-section-title{font-size:1.5rem;font-weight:700}.doctor-details-section-subtitle,.doctor-details-section-title{color:#1e293b;color:var(--dd-text);letter-spacing:-.01em;margin:0 0 20px}.doctor-details-section-subtitle{align-items:center;display:flex;font-size:1.125rem;font-weight:600;gap:12px}.doctor-details-section-subtitle svg{color:#00a3bb;color:var(--dd-primary);flex-shrink:0}.doctor-details-about-text{color:#64748b;color:var(--dd-text-light);font-size:1rem;line-height:1.8;margin:0}.doctor-details-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:1fr 1fr}.doctor-details-column{display:flex;flex-direction:column;gap:24px}.doctor-details-list{display:flex;flex-direction:column;gap:12px;list-style:none;margin:0;padding:0}.doctor-details-list li{align-items:flex-start;color:#64748b;color:var(--dd-text-light);display:flex;font-size:.95rem;gap:12px;line-height:1.6;transition:color .2s ease}.doctor-details-list li:hover{color:#1e293b;color:var(--dd-text)}.doctor-details-dot{background:linear-gradient(135deg,#50cada,#00a3bb);background:linear-gradient(135deg,var(--dd-primary-light),var(--dd-primary));border-radius:50%;box-shadow:0 2px 4px #50cada4d;flex-shrink:0;height:8px;margin-top:7px;width:8px}@media (max-width:1024px){.doctor-details-hero{padding:32px}.doctor-details-hero-content{flex-direction:column;gap:32px}.doctor-details-hero-right{min-width:auto;width:100%}.doctor-details-hero-fees{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr}.doctor-details-hero-fee-item{border-bottom:none;border-right:1px solid #94a3b826;border-right:1px solid var(--dd-border);padding-bottom:0;padding-right:16px}.doctor-details-hero-fee-item:last-child{border-right:none}.doctor-details-grid{grid-template-columns:1fr}}@media (max-width:768px){.doctor-details-page{padding:16px 0}.doctor-details-hero{padding:24px}.doctor-details-hero-left{align-items:center;flex-direction:column;gap:20px;text-align:center}.doctor-details-hero-img{height:140px;width:140px}.doctor-details-hero-name{font-size:1.5rem}.doctor-details-hero-meta{gap:16px;justify-content:center}.doctor-details-hero-location{justify-content:center}.doctor-details-hero-fees{grid-template-columns:1fr}.doctor-details-hero-fee-item{border-bottom:1px solid #94a3b826;border-bottom:1px solid var(--dd-border);border-right:none;padding-bottom:16px;padding-right:0}.doctor-details-hero-fee-item:last-child{border-bottom:none;padding-bottom:0}.doctor-details-section{padding:24px}.doctor-details-section-title{font-size:1.25rem}.doctor-details-section-subtitle{font-size:1rem}}@media (max-width:480px){.doctor-details-back-btn{font-size:.875rem;padding:.625rem 1rem}.doctor-details-hero{border-radius:12px;border-radius:var(--dd-radius-md);padding:20px}.doctor-details-hero-img{height:120px;width:120px}.doctor-details-hero-name{font-size:1.375rem}.doctor-details-hero-specialty{font-size:1rem}.doctor-details-hero-meta{flex-direction:column;gap:8px}.doctor-details-section{border-radius:12px;border-radius:var(--dd-radius-md);padding:20px}.doctor-details-fee-amount{font-size:1.25rem}}.login-container{align-items:center;display:flex;flex-direction:column;height:100vh;justify-content:center;overflow:hidden;position:relative}.login-background-video{height:auto;left:0;min-height:100%;min-width:100%;position:fixed;top:0;width:auto;z-index:-1}.login-container:before{background:linear-gradient(45deg,#179bad,#12e4ff);content:"";height:100%;left:0;position:absolute;top:0;width:100%;z-index:-2}.login-logo{padding:25px}.login-form-logo{margin:-215px -100px;scale:.2}.login-form{background-color:#fff;border-radius:8px;box-shadow:0 0 10px #0000001a;padding:30px;width:300px}.login-form h2{color:#333;margin-bottom:20px;text-align:center}.form-group-login{display:flex;flex-direction:column;gap:8px;margin-bottom:15px}.form-group-login label{color:#555;display:block;font-weight:700;margin-bottom:5px}.form-group-login input{-webkit-font-smoothing:antialiased!important;-moz-osx-font-smoothing:grayscale!important;border:1px solid #ccc;border-radius:4px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif!important;font-size:16px!important;font-weight:400!important;letter-spacing:normal!important;line-height:normal!important;padding:10px;text-rendering:auto!important;width:100%}.form-group-login input,.form-group-login input::placeholder{text-align:left!important}.form-group-login input:focus{-webkit-font-smoothing:antialiased!important;-moz-osx-font-smoothing:grayscale!important;border-color:#179bad;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif!important;font-size:16px!important;font-weight:400!important;letter-spacing:normal!important;line-height:normal!important;outline:none;text-rendering:auto!important}.password-input-container{align-items:center;display:flex;position:relative}.password-input-container input{-webkit-font-smoothing:antialiased!important;-moz-osx-font-smoothing:grayscale!important;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif!important;font-size:16px!important;font-weight:400!important;letter-spacing:normal!important;line-height:normal!important;padding-right:45px;text-align:left!important;text-rendering:auto!important;width:100%}.password-input-container input::placeholder{text-align:left!important}.password-input-container input:focus{-webkit-font-smoothing:antialiased!important;-moz-osx-font-smoothing:grayscale!important;border-color:#179bad;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif!important;font-size:16px!important;font-weight:400!important;letter-spacing:normal!important;line-height:normal!important;outline:none;text-rendering:auto!important}.password-input-container input::-webkit-credentials-auto-fill-button,.password-input-container input::-webkit-strong-password-auto-fill-button{display:none!important;opacity:0!important;pointer-events:none!important;position:absolute!important;right:-9999px!important;visibility:hidden!important}.password-input-container input::-ms-clear,.password-input-container input::-ms-reveal{display:none!important}.form-group-login input,.form-group-login input:focus,.password-input-container input,.password-input-container input:focus{-webkit-appearance:none!important;appearance:none!important;box-sizing:border-box!important;vertical-align:initial!important}.password-toggle-btn{align-items:center;background:none;border:none;color:#666;cursor:pointer;display:flex;justify-content:center;padding:5px;position:absolute;right:10px;transition:color .3s ease}.password-toggle-btn:hover{color:#179bad}.password-toggle-btn:focus{color:#179bad;outline:none}.error{margin-bottom:10px}.login-button{background-color:#50cada;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:16px;padding:10px;transition:.5s;width:100%}.login-button:hover{background-color:#3c9aa7}.login-button:disabled{cursor:not-allowed;opacity:.7}.forgot-password-text{color:#555;margin-bottom:10px;text-align:center}.forgot-password-link{color:#179bad;transition:.5s}.forgot-password-link,.forgot-password-link:hover{border-radius:8px;font-weight:700;padding:5px;text-decoration:none}.forgot-password-link:hover{background-color:#179bad;color:#f4feff}.divider-container{align-items:center;display:flex;margin:20px 0;width:100%}.divider-line{background-color:#e0e0e0;flex:1 1;height:1px;margin:0 10px}.divider-text{background-color:#fff;color:#999;font-size:14px;font-weight:500;letter-spacing:.5px;padding:0 5px;text-transform:uppercase}.sign-up-text{color:#555;text-align:center}.sign-up-text p{margin:5px 0}.signup-link{color:#179bad;transition:.5s}.signup-link,.signup-link:hover{border-radius:8px;font-weight:700;padding:5px;text-decoration:none}.signup-link:hover{background-color:#179bad;color:#f4feff}.google-signin-container{margin-top:15px}#google-login-btn,.google-signin-container{display:flex;justify-content:center;width:100%}.otp-container{align-items:center;display:flex;flex-direction:column;height:100vh;justify-content:center;overflow:hidden;position:relative}.otp-background-video{height:auto;left:0;min-height:100%;min-width:100%;position:fixed;top:0;width:auto;z-index:-1}.otp-container:before{background:linear-gradient(45deg,#179bad,#12e4ff);content:"";height:100%;left:0;position:absolute;top:0;width:100%;z-index:-2}.otp-logo{margin-bottom:20px}.otp-form{background-color:#fff;border-radius:8px;box-shadow:0 4px 10px #0000001a;padding:30px;text-align:center}.otp-form-logo{margin-bottom:10px;width:80px}.otp-h2{color:#333;font-size:24px;margin-bottom:5px;margin-top:5px}.otp-form-group{margin-bottom:20px;text-align:left}.otp-form-group label{color:#50cada;display:block;font-weight:700;margin-bottom:5px;text-align:center}.otp-form-group input{border:1px solid #ccc;border-radius:4px;padding:10px;text-align:center;width:92%}.otp-form-group input,.otp-form-group input:focus{-webkit-font-smoothing:antialiased!important;-moz-osx-font-smoothing:grayscale!important;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif!important;font-size:16px!important;font-weight:400!important;letter-spacing:normal!important;line-height:normal!important;text-rendering:auto!important}.otp-form-group input:focus{border-color:#179bad;outline:none}.otp-button{background-color:#50cada;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:16px;padding:10px;transition:.5s;width:100%}.otp-button:hover{background-color:#3c9aa7}.otp-button:disabled{cursor:not-allowed}.otp-button:disabled,.otp-button:disabled:hover{background-color:#ccc}.otp-description{color:#666;font-size:14px;line-height:1.4}.otp-description,.otp-timer-info{margin-bottom:15px;text-align:center}.otp-expiration-timer{color:#666;font-size:14px;margin:0}.otp-expiration-timer strong{color:#50cada;font-size:16px}.error{color:red}.error,.success{font-size:14px;margin-bottom:15px;text-align:center}.success{color:green}.resend-section{margin:15px 0;text-align:center}.resend-button{background-color:initial;border:1px solid #50cada;border-radius:4px;color:#50cada;cursor:pointer;font-size:14px;padding:8px 16px;transition:.5s}.resend-button:hover{background-color:#50cada;color:#fff}.timer-text{color:#666;font-size:14px;margin:0}.error-container{background:#ef44441a;border:1px solid #ef44444d;border-radius:8px;color:#dc2626;font-size:.9rem;margin-bottom:1rem;padding:1rem;text-align:center}.go-back-button{background-color:#50cada;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;margin-top:10px;padding:8px 16px;transition:.5s}.go-back-button:hover{background-color:#3c9aa7}.clinic-page{background:#fff;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;min-height:auto}.clinic-loading{align-items:center;background:#fff;color:#333;display:flex;flex-direction:column;justify-content:center;min-height:100vh;text-align:center}.loading-animation{display:flex;gap:8px;margin-bottom:20px}.pulse{animation:pulse 1.5s ease-in-out infinite;background:#50cada;border-radius:50%;height:20px;width:20px}.pulse:nth-child(2){animation-delay:.2s}.pulse:nth-child(3){animation-delay:.4s}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.2)}}.clinic-loading h3{font-size:24px;font-weight:600;margin-bottom:10px}.clinic-loading p{font-size:16px;opacity:.9}.clinic-error{align-items:center;background:#fff;color:#333;display:flex;flex-direction:column;justify-content:center;min-height:100vh;padding:20px;text-align:center}.error-icon{font-size:64px;margin-bottom:20px}.clinic-error h2{font-size:28px;font-weight:600;margin-bottom:15px}.clinic-error p{font-size:18px;margin-bottom:30px;max-width:500px;opacity:.9}.retry-btn{background:#50cada;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;padding:15px 30px;transition:all .3s ease}.retry-btn:hover{background:#3a929e}.clinic-hero{background:#f8f9fa;border-bottom:1px solid #e9ecef;color:#333;padding:40px 20px}.hero-content{align-items:center;display:flex;gap:40px;margin:0 auto;max-width:1200px}.clinic-avatar{flex-shrink:0}.clinic-avatar img{border:3px solid #50cada;border-radius:50%;height:120px;object-fit:cover;width:120px}.clinic-info{flex:1 1}.clinic-info h1{color:#333;font-size:32px;font-weight:700;margin-bottom:15px;text-align:left}.clinic-meta{display:flex;flex-wrap:wrap;gap:15px;margin-bottom:15px}.specialty-badge{background:#50cada;color:#fff;font-weight:600}.location-badge,.specialty-badge{border-radius:20px;font-size:14px;padding:8px 16px}.location-badge{background:#e9ecef;color:#333}.contact-info{color:#666;font-size:16px}.clinic-content{margin:0 auto;max-width:1200px;padding:40px 20px}.section-header{margin-bottom:30px}.section-header h2{color:#333;font-size:28px;font-weight:600;margin-bottom:10px;text-align:left}.section-header p{color:#666;font-size:16px;margin:0}.hours-section{background:#fff;border-radius:12px;box-shadow:0 2px 10px #0000001a;margin-bottom:30px;padding:30px}.hours-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-top:20px}.hour-item{background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;padding:20px;text-align:center}.day-name{color:#333;font-size:16px;font-weight:600;margin-bottom:8px}.hour-time{color:#666;font-size:14px;font-weight:500}.practitioners-section{background:#fff;border-radius:12px;box-shadow:0 2px 10px #0000001a;padding:30px}.practitioners-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));margin-top:20px}.practitioner-card{background:#f8f9fa;border:1px solid #e9ecef;border-radius:12px;padding:25px;transition:all .3s ease}.practitioner-card:hover{box-shadow:0 4px 15px #0000001a}.practitioner-header{align-items:center;display:flex;gap:15px;margin-bottom:20px}.practitioner-avatar{flex-shrink:0;position:relative}.practitioner-avatar img{border:2px solid #50cada;border-radius:50%;height:70px;object-fit:cover;width:70px}.rating-overlay{background:#ffc107;border:2px solid #fff;border-radius:10px;color:#333;font-size:12px;font-weight:600;padding:4px 8px;position:absolute;right:-5px;top:-5px}.practitioner-info h3{color:#333;font-size:18px;font-weight:600;margin:0 0 5px}.practitioner-info .specialty{color:#666;font-size:14px;margin:0 0 8px}.rating-display{align-items:center;display:flex;gap:6px}.stars{font-size:14px}.rating-text{color:#666;font-size:12px;font-weight:500}.practitioner-actions{text-align:center}.book-btn{align-items:center;background:#50cada;border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;justify-content:center;padding:12px 24px;transition:all .3s ease;width:100%}.book-btn:hover{background:#3a929e}.book-btn span{font-size:16px}.no-practitioners{grid-column:1/-1}.empty-state{padding:40px 20px;text-align:center}.empty-icon{font-size:48px;margin-bottom:15px}.empty-state h3{color:#333;font-size:20px;margin-bottom:10px}.empty-state p{color:#666;font-size:14px}.booking-overlay{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;height:100%;justify-content:center;left:0;padding:20px;position:fixed;top:0;width:100%;z-index:1000}.booking-modal{background:#fff;border-radius:12px;box-shadow:0 10px 30px #0000004d;max-height:90vh;max-width:600px;overflow-y:auto;width:100%}.modal-header{align-items:flex-start;border-bottom:1px solid #e9ecef;display:flex;justify-content:space-between;padding:25px 25px 15px}.modal-title h2{color:#333;font-size:24px;font-weight:700;margin:0 0 5px}.modal-title p{color:#666;font-size:18px;font-weight:500;margin:0;text-align:-webkit-left}.close-btn{align-items:center;background:none;border:none;border-radius:50%;color:#666;cursor:pointer;display:flex;font-size:20px;height:35px;justify-content:center;padding:5px;transition:all .3s ease;width:35px}.close-btn:hover{background:#f8f9fa;color:#e74c3c}.modal-body{padding:25px}.loading-section{align-items:center;color:#666;display:flex;flex-direction:column;gap:15px;padding:30px}.loading-dots{display:flex;gap:8px}.loading-dots span{animation:loadingDots 1.4s ease-in-out infinite;background:#50cada;border-radius:50%;height:10px;width:10px}.loading-dots span:nth-child(2){animation-delay:.2s}.loading-dots span:nth-child(3){animation-delay:.4s}@keyframes loadingDots{0%,80%,to{opacity:.5;transform:scale(.8)}40%{opacity:1;transform:scale(1)}}.schedule-section{margin-bottom:25px}.schedule-section h3{color:#333;font-size:18px;font-weight:600;margin-bottom:15px}.schedule-cards{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(100px,1fr))}.schedule-card{background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;padding:12px;text-align:center}.schedule-card.available{background:#d4edda;border-color:#28a745}.schedule-card.unavailable{background:#f8d7da;border-color:#dc3545}.day-label{color:#333;font-size:12px;font-weight:600;margin-bottom:5px}.status{font-size:11px;font-weight:500}.schedule-card.available .status{color:#155724}.schedule-card.unavailable .status{color:#721c24}.appointment-section{margin-bottom:25px}.appointment-section h3{color:#333;font-size:18px;font-weight:600;margin-bottom:15px}.appointment-options{align-items:center;background:#f8f9fa;border-radius:8px;display:flex;gap:20px;justify-content:space-between;padding:15px}.type-selector{flex:1 1}.type-select{background:#fff;border:1px solid #e9ecef;border-radius:6px;font-size:14px;outline:none;padding:10px 12px;transition:border-color .3s ease;width:100%}.type-select:focus{border-color:#50cada}.fee-display{text-align:center}.fee-label{color:#666;display:block;font-size:12px;margin-bottom:5px}.fee-amount{color:#000;font-size:20px;font-weight:600}.datetime-section h3{color:#333;font-size:18px;font-weight:600;margin-bottom:15px}.date-picker-wrapper{margin-bottom:20px}.date-input{background:#fff;border:1px solid #e9ecef;border-radius:6px;font-size:14px;outline:none;padding:12px 15px;transition:border-color .3s ease;width:-webkit-fill-available}.date-input:focus{border-color:#50cada}.slots-section{margin-top:15px}.slots-grid h4{color:#333;font-size:16px;font-weight:600;margin-bottom:12px}.time-slots{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(100px,1fr))}.time-slot{background:#fff;border:1px solid #e9ecef;border-radius:6px;cursor:pointer;font-size:13px;font-weight:500;padding:10px 12px;text-align:center;transition:all .3s ease}.time-slot:hover{background:#f8f9fa;border-color:#50cada}.time-slot.selected{background:#50cada;border-color:#50cada;color:#fff}.no-slots{color:#666;padding:30px 20px;text-align:center}.no-slots .empty-icon{font-size:36px;margin-bottom:10px}.no-slots h4{color:#333;font-size:16px;margin-bottom:5px}.no-slots p{font-size:13px;margin:0}.modal-footer{border-top:1px solid #e9ecef;display:flex;gap:12px;justify-content:flex-end;padding:15px 25px 25px}.proceed-btn{background:#50cada;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:12px 24px;transition:all .3s ease}.proceed-btn:hover:not(:disabled){background:#3a929e}.proceed-btn:disabled{background:#bdc3c7;cursor:not-allowed}.cancel-btn{background:#95a5a6;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:12px 24px;transition:all .3s ease}.cancel-btn:hover{background:#7f8c8d}@media (max-width:768px){.hero-content{flex-direction:column;gap:20px;text-align:center}.clinic-info h1{font-size:24px}.clinic-meta{justify-content:center}.practitioners-grid{grid-template-columns:1fr}.booking-modal{margin:10px;max-height:95vh}.appointment-options{align-items:stretch;flex-direction:column}.fee-display{text-align:center}.time-slots{grid-template-columns:repeat(auto-fill,minmax(80px,1fr))}.modal-footer{flex-direction:column}.schedule-cards{grid-template-columns:repeat(auto-fit,minmax(80px,1fr))}}@media (max-width:480px){.clinic-content,.hours-section,.practitioners-section{padding:20px 15px}.booking-modal{margin:5px}.modal-body,.modal-footer,.modal-header,.practitioner-card{padding:15px}.practitioner-header{flex-direction:column;gap:10px;text-align:center}}
/*# sourceMappingURL=main.035341ae.css.map*/