@import url(https://cdn.jsdelivr.net/npm/bootstrap-icons@1.13.1/font/bootstrap-icons.min.css);@import url(https://fonts.googleapis.com/css2?family=Manrope:wght@200..800&display=swap);@import url(https://fonts.googleapis.com/css2?family=Space+Mono:ital,wght@0,400;0,700;1,400;1,700&display=swap);@import url(https://fonts.googleapis.com/css2?family=JetBrains+Mono:ital,wght@0,100..800;1,100..800&family=Space+Mono:ital,wght@0,400;0,700;1,400;1,700&display=swap);body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}*{font-family:Manrope,sans-serif;font-optical-sizing:auto}:root{--color-primary:#f40;--color-primary-hover:#e03c00;--color-primary-shadow:#ff44003d;--color-text:#2f241f;--color-text-strong:#1f1612;--color-text-muted:#7b675f;--color-text-disabled:#b49b90;--color-background:#fff8f4;--color-surface:#fff;--color-input-surface:#fff;--color-border:#f1ddd4;--color-border-light:#fff1ea;--color-info:#f97316;--color-info-shadow:#f9731633;--color-disabled-bg-dark:#dccac1;--color-disabled-bg-light:#f9ede7}#root{display:grid;grid-template-columns:100%;grid-template-rows:auto 1fr auto;min-height:100vh}#main{min-height:max-content;width:100%}body,html{height:100%;margin:0;padding:0}body{background-color:#fff8f4;background-color:var(--color-background);color:#2f241f;color:var(--color-text);transition:background-color .3s,color .3s}a,a:hover{color:inherit;text-decoration:none}button{background-color:initial;border:initial;color:inherit;margin:initial;padding:initial}input[type=date]::-webkit-calendar-picker-indicator{background:url(/static/media/calendario.672b7fe9a29bf4603807.svg) 50%/90% no-repeat;cursor:pointer;height:20px;opacity:1;width:20px}input[type=color]{appearance:none;background:none;border:none;cursor:pointer;height:42px;padding:0;width:42px}input[type=color]::-webkit-color-swatch-wrapper{padding:0}input[type=color]::-webkit-color-swatch{border:none;border-radius:8px}input,select,textarea{transition:border .2s ease,box-shadow .2s ease}input:focus-visible,select:focus-visible,textarea:focus-visible{border-color:#f40;border-color:var(--color-primary);box-shadow:0 0 0 1px #f40;box-shadow:0 0 0 1px var(--color-primary);outline:none}html[data-theme=dark] input[type=date]::-webkit-calendar-picker-indicator{filter:invert(1)}h1,h2,h3,h4,h5,h6,p,span{margin:0;padding:0}input,select{box-sizing:initial;margin:0;padding-block:0;padding-inline:0}: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)}}.auth-page{background:radial-gradient(circle at top left,#ff440014,#0000 28%),linear-gradient(180deg,var(--color-background) 0,#fff 100%);display:flex;min-height:100vh}.auth-main-container{align-items:center;box-sizing:border-box;display:flex;margin:0 auto;max-width:1540px;padding:clamp(20px,3vh,32px) 20px;width:100%}.auth-layout{grid-gap:24px;align-items:stretch;display:grid;gap:24px;grid-template-columns:minmax(0,1.05fr) minmax(420px,.95fr);width:100%}.auth-intro-column{flex-direction:column;gap:20px}.auth-access-column,.auth-intro-column{display:flex;min-width:0}.auth-access-column .access-portal-card{width:100%}.auth-hero-card{align-items:center;background:linear-gradient(135deg,var(--color-surface) 0,var(--color-background) 100%);border:1px solid var(--color-border);border-radius:24px;box-shadow:0 16px 40px #0f172a0f;box-sizing:border-box;display:flex;gap:20px;justify-content:space-between;min-height:220px;padding:clamp(24px,3vw,36px)}.auth-hero-content{min-width:0}.auth-hero-eyebrow{align-items:center;background:#ff440014;border-radius:999px;color:var(--color-primary);display:inline-flex;font-size:12px;font-weight:800;letter-spacing:.05em;margin-bottom:14px;min-height:32px;padding:0 14px;text-transform:uppercase}.auth-hero-content h1{color:var(--color-text-strong);font-size:clamp(1.3rem,3.2vw,1.8rem);font-weight:800;line-height:1.05;margin:0 0 10px}.auth-hero-content p{color:var(--color-text-muted);font-size:16px;line-height:1.7;margin:0;max-width:560px}.auth-hero-shield{align-items:center;background:linear-gradient(135deg,#ffffffeb 0,var(--color-background) 100%);border:1px solid var(--color-border);border-radius:24px;box-shadow:inset 0 1px 0 #ffffffbf;display:flex;height:168px;justify-content:center;min-width:236px;overflow:hidden;width:236px}.auth-hero-shield svg{color:var(--color-primary);font-size:96px;opacity:.22}.auth-hero-shield--image{background:var(--color-surface)}.auth-hero-image{box-sizing:border-box;height:100%;object-fit:contain;padding:12px;width:100%}.auth-features{grid-gap:18px;display:grid;gap:18px;grid-template-columns:repeat(3,minmax(0,1fr))}.auth-feature-item{align-items:flex-start;background:var(--color-surface);border:1px solid var(--color-border);border-radius:20px;box-shadow:0 12px 28px #0f172a0a;color:var(--color-text);display:flex;flex-direction:column;gap:12px;min-width:0;padding:22px 18px}.auth-feature-icon{align-items:center;background:#ff440014;border-radius:14px;color:var(--color-primary);display:flex;font-size:24px;height:46px;justify-content:center;width:46px}.auth-feature-item strong{color:var(--color-text-strong);font-size:16px;font-weight:800}.auth-feature-item span{color:var(--color-text-muted);font-size:14px;line-height:1.6}.auth-footer{align-items:center;border-top:1px solid var(--color-border);color:var(--color-text-muted);display:flex;font-size:13px;gap:8px;justify-content:center;margin-top:auto;min-height:56px;padding:0 24px;text-align:center}.auth-footer svg{flex-shrink:0;font-size:16px}@media (max-width:1100px){.auth-main-container{align-items:flex-start;padding-bottom:32px;padding-top:24px}.auth-layout{grid-template-columns:1fr}.auth-access-column .access-portal-card{min-height:0;min-height:auto}}@media (max-width:900px){.auth-features{grid-template-columns:1fr}}@media (max-width:768px){.auth-main-container{padding:20px 16px 28px}.auth-hero-card{align-items:flex-start;flex-direction:column;min-height:auto}.auth-hero-content p{max-width:none}.auth-hero-shield{height:180px;min-width:0;width:100%}.auth-footer{min-height:auto;padding:12px 16px}}@media (max-width:520px){.auth-hero-card{border-radius:20px;padding:22px 18px}.auth-hero-shield{border-radius:20px;height:160px}.auth-feature-item{border-radius:18px;padding:20px 16px}}.access-portal-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:18px;box-shadow:0 12px 36px #0f234014;overflow:hidden}.access-portal-tabs{background:var(--color-surface);border-bottom:1px solid var(--color-border);display:grid;grid-template-columns:1fr 1fr}.access-tab-button{align-items:center;background:#0000;border:0;border-bottom:3px solid #0000;color:var(--color-text-muted);cursor:pointer;display:flex;font-size:17px;font-weight:700;gap:10px;height:64px;justify-content:center;transition:color .2s ease,border-color .2s ease,background-color .2s ease}.access-tab-button svg{font-size:22px}.access-tab-button:hover{background:var(--color-background)}.access-tab-button.active{border-bottom-color:var(--color-primary);color:var(--color-primary)}.access-portal-body{grid-gap:0;display:grid;gap:0;grid-template-columns:minmax(0,1fr) 48px minmax(0,1fr);padding:38px 40px}.access-portal-panel{min-width:0}.access-panel-content h2{color:var(--color-text-strong);font-size:25px;font-weight:800;line-height:1.15;margin:0 0 10px}.access-panel-content p{color:var(--color-text-muted);font-size:16px;line-height:1.5;margin:0 0 28px;max-width:350px}.access-portal-divider{align-items:center;display:flex;justify-content:center;position:relative}.access-portal-divider:before{background:var(--color-disabled-bg-dark);content:"";height:100%;left:50%;position:absolute;top:0;transform:translateX(-50%);width:1px}.access-portal-divider span{background:#fff;color:#94a2b6;font-size:16px;font-weight:700;padding:8px 0;position:relative;text-align:center;width:100%;z-index:1}.access-form{width:100%}.access-input-group{margin-bottom:18px}.access-input-group label{color:var(--color-text);display:inline-block;font-size:16px;font-weight:700;margin-bottom:10px}.access-input-group:last-of-type{margin-bottom:0}.access-input-wrapper{position:relative}.access-input-wrapper input{background:#fff;border:1px solid var(--color-border);border-radius:10px;box-sizing:border-box;color:var(--color-text);font-size:16px;height:50px;outline:none;padding:0 16px;transition:border-color .2s ease,box-shadow .2s ease,background-color .2s ease;width:100%}.access-input-wrapper input:focus-visible{border-color:var(--color-primary);box-shadow:0 0 0 1px var(--color-primary);outline:none}.access-input-wrapper input:disabled{background:var(--color-background);color:var(--color-disabled-bg-dark);cursor:not-allowed}.access-input-wrapper input.input-error{border-color:#d9534f}.access-input-icon{color:var(--color-text-disabled);font-size:20px!important;left:14px;position:absolute;top:50%;transform:translateY(-50%)}.access-input-group:first-of-type .access-input-wrapper input{padding-left:42px}.access-input-error{color:#d9534f;font-size:13px;min-height:18px;padding-top:6px}.access-info-box{align-items:flex-start;background:var(--color-background);border:1px solid var(--color-border);border-radius:12px;box-sizing:border-box;color:#48617f;display:flex;gap:12px;margin:12px 0 18px;min-height:92px;padding:16px}.access-info-box svg{color:var(--color-primary);flex-shrink:0;font-size:22px;margin-top:2px}.access-info-box span{font-size:14px;line-height:1.45}.access-primary-button,.access-secondary-button{border:0;border-radius:10px;cursor:pointer;font-size:16px;font-weight:800;height:54px;transition:filter .2s ease,opacity .2s ease,background-color .2s ease;width:100%}.access-primary-button{align-items:center;background:var(--color-primary);box-shadow:0 8px 18px #1565b838;color:var(--color-surface);display:flex;gap:10px;justify-content:center}.access-primary-button svg{font-size:20px}.access-primary-button:hover:not(:disabled),.access-secondary-button:hover:not(:disabled){filter:brightness(.97)}.access-secondary-button{background:var(--color-primary);color:var(--color-surface)}.access-primary-button:disabled,.access-secondary-button:disabled{box-shadow:none;cursor:not-allowed;opacity:.45}.access-password-toggle{align-items:center;background:#0000;border:0;color:#7f8ea3;cursor:pointer;display:flex;font-size:20px;justify-content:center;position:absolute;right:12px;top:50%;transform:translateY(-50%)}.access-password-toggle:disabled{cursor:not-allowed}.access-disabled-hint{color:#a1adbd;display:block;font-size:13px;font-style:italic;margin-top:18px;text-align:center}.active-panel{opacity:1}.inactive-panel{opacity:.5}.username-input-icon{background:#0000;border:0;color:#7f8ea3;cursor:pointer;font-size:20px;left:12px;position:absolute;top:50%;transform:translateY(-50%)}.access-admin-loading,.username-input-icon{align-items:center;display:flex;justify-content:center}.access-forgot-password-link{align-items:center;align-self:flex-end;color:var(--color-primary);display:inline-flex;font-size:14px;font-weight:600;gap:6px;justify-content:flex-end;margin-bottom:12px;margin-top:-2px;text-decoration:none;transition:opacity .2s ease}.access-forgot-password-link:hover{opacity:.85;text-decoration:underline}@media (max-width:768px){.access-portal-body,.access-portal-tabs{grid-template-columns:1fr}.access-portal-body{gap:24px;padding:24px 20px 28px}.access-portal-divider{min-height:24px}.access-portal-divider:before{height:1px;left:0;top:50%;transform:translateY(-50%);width:100%}.access-portal-divider span{padding:0 12px;width:auto}.access-panel-content h2{font-size:22px}.access-panel-content p{margin-bottom:22px;max-width:none}}.admin-panel-section{overflow:hidden;width:100%}.admin-panel-container,.admin-panel-section{background-color:var(--color-background);display:flex;height:100vh}.admin-panel-container{flex:1 1 auto;flex-direction:column;min-width:0;overflow-x:hidden;overflow-y:auto}.admin-panel-header{background-color:var(--color-surface);border-bottom:1px solid var(--color-border);gap:1rem;justify-content:end;padding:1rem 2rem;position:sticky;top:0;z-index:10}.header-actions{align-items:center;gap:.75rem}.header-actions .action-button{align-items:center;border-radius:.5rem;cursor:pointer;display:flex;font-size:.875rem;font-weight:700;gap:.5rem;line-height:1.25rem;padding:.5rem 1rem;transition:all .2s ease-in-out}.header-actions .action-button.export{background-color:var(--color-primary-shadow);color:var(--color-primary)}.header-actions .action-button.export:hover{background-color:var(--color-background)}.header-actions .action-button.add{background-color:var(--color-primary);color:var(--color-surface)}.header-actions .action-button.add:hover{background-color:var(--color-primary-hover)}@media (max-width:767px){.admin-panel-section{flex-direction:column;height:100dvh}.admin-panel-container{flex:1 1;height:auto;min-height:0}.admin-panel-header{padding:1rem}.header-actions .action-button{font-size:.8125rem;padding:.5rem .75rem}}.admin-panel-side-menu{background-color:var(--color-surface);border-right:1px solid var(--color-border);display:flex;flex-direction:column;flex-shrink:0;justify-content:space-between;min-width:18rem;overflow-y:auto;padding:1rem}.admin-menu-top{display:contents}.admin-user-info-wrapper{border-top:1px solid var(--color-border);margin-top:1rem;padding-top:1rem}.admin-user-info{align-items:center;display:flex;gap:.75rem;padding:0 .5rem}.admin-mobile-user{display:none}@media (min-width:768px) and (max-width:1023px){.admin-panel-side-menu{min-width:6rem;padding:1rem .75rem;width:6rem}.menu-logo{justify-content:center;padding:0}.menu-text{display:none}.menu-options{align-items:center;margin-top:2rem}.side-menu-option{gap:0;justify-content:center;padding:.875rem;width:100%}.side-menu-option span{display:none}.admin-user-info{justify-content:center;padding:0}.admin-user-info .logout-button,.user-info{display:none}}@media (max-width:767px){.admin-panel-side-menu{border-bottom:1px solid var(--color-border);border-right:none;gap:.75rem;padding:.75rem 1rem 1rem}.admin-menu-top{align-items:center;display:flex;gap:1rem;justify-content:space-between}.menu-logo{min-width:0;padding:0}.menu-text h5{font-size:.88rem}.menu-text span{font-size:.6875rem}.admin-mobile-user{align-items:center;display:flex;flex-shrink:0;gap:.5rem}.admin-mobile-user .logout-button{background-color:var(--color-background);border-radius:.625rem;height:2.25rem;width:2.25rem}.menu-options{flex:initial;flex-direction:row;gap:.5rem;margin-top:0;overflow-x:auto;padding-bottom:.25rem}.menu-options::-webkit-scrollbar{height:4px}.side-menu-option{border-radius:.875rem;justify-content:center;min-width:max-content;padding:.75rem 1rem;white-space:nowrap}.admin-user-info-wrapper{display:none}}.side-menu-brand{align-items:center;display:flex;gap:.75rem;min-width:0;padding:0 .5rem}.side-menu-brand-media{align-items:center;border-radius:.875rem;display:flex;flex-shrink:0;height:3rem;justify-content:center;overflow:hidden;width:3rem}.side-menu-brand-media--fallback{background-color:var(--color-primary);color:var(--color-surface)}.side-menu-brand-media--logo{background-color:var(--color-background);border:1px solid var(--color-border-light);padding:.35rem}.side-menu-brand-image{display:block;height:100%;object-fit:contain;width:100%}.side-menu-brand-icon{font-size:1.65rem!important}.side-menu-brand-text{display:flex;flex-direction:column;min-width:0}.side-menu-brand-text h5{color:var(--color-primary);font-size:1.125rem;font-weight:700;line-height:1.25;margin:0}.side-menu-brand-text span{color:var(--color-text-muted);font-size:.75rem;font-weight:500;line-height:1rem}.patient-panel-section{overflow:hidden;width:100%}.patient-panel-container,.patient-panel-section{background-color:var(--color-background);display:flex;height:100vh}.patient-panel-container{flex:1 1 auto;flex-direction:column;min-width:0;overflow-x:hidden;overflow-y:auto}@media (max-width:767px){.patient-panel-section{flex-direction:column;height:100dvh}.patient-panel-container{flex:1 1;height:auto;min-height:0}}.patient-panel-side-menu{background-color:var(--color-surface);border-right:1px solid var(--color-border);display:flex;flex-direction:column;flex-shrink:0;justify-content:space-between;min-width:18rem;padding:1rem;width:18rem}.patient-menu-top{display:contents}.patient-menu-logo{align-items:center;display:flex;gap:.75rem;padding:0 .5rem}.patient-menu-icon{align-items:center;background-color:var(--color-primary);border-radius:.75rem;color:var(--color-surface);display:flex;flex-shrink:0;justify-content:center;padding:.5rem}.patient-menu-text{display:flex;flex-direction:column;min-width:0}.patient-menu-text h5{color:var(--color-primary);font-size:1.125rem;font-weight:700;line-height:1.25}.patient-menu-text span{color:var(--color-text-muted);font-size:.75rem;font-weight:500;line-height:1rem}.patient-menu-options{display:flex;flex:1 1;flex-direction:column;gap:.5rem;margin-top:2rem}.patient-side-menu-option{align-items:center;border-radius:.75rem;color:var(--color-text-muted);display:flex;font-weight:500;gap:.75rem;min-height:3rem;padding:.75rem 1rem;transition:all .3s ease-in-out}.patient-side-menu-option:hover{background-color:var(--color-disabled-bg-dark)}.patient-side-menu-active{background-color:var(--color-primary);color:var(--color-surface)}.patient-user-info-wrapper{border-top:1px solid var(--color-border);margin-top:1rem;padding-top:1rem}.patient-user-info{align-items:center;display:flex;gap:.75rem;padding:0 .5rem}.patient-user-avatar{align-items:center;background:var(--color-primary);border-radius:50%;color:var(--color-surface);display:flex;flex-shrink:0;font-weight:700;height:2.5rem;justify-content:center;width:2.5rem}.patient-user-details{display:flex;flex:1 1;flex-direction:column;min-width:0}.patient-user-details h5{color:var(--color-text-strong);font-size:.875rem;font-weight:700;line-height:1.25rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.patient-user-details span{color:var(--color-text-muted);font-size:.75rem;line-height:1rem}.patient-mobile-user{display:none}@media (min-width:768px) and (max-width:1023px){.patient-panel-side-menu{min-width:6rem;padding:1rem .75rem;width:6rem}.patient-menu-logo{justify-content:center;padding:0}.patient-menu-text{display:none}.patient-menu-options{align-items:center;margin-top:2rem}.patient-side-menu-option{gap:0;justify-content:center;padding:.875rem;width:100%}.patient-side-menu-option span{display:none}.patient-user-info{justify-content:center;padding:0}.patient-user-details,.patient-user-info .logout-button{display:none}}@media (max-width:767px){.patient-panel-side-menu{border-bottom:1px solid var(--color-border);border-right:none;gap:.75rem;padding:.25rem 1rem 1rem}.patient-menu-top{align-items:center;display:flex;gap:1rem;justify-content:space-between}.patient-menu-logo{min-width:0;padding:0}.patient-menu-text h5{font-size:.88rem}.patient-menu-text span{font-size:.6875rem}.patient-mobile-user{align-items:center;display:flex;flex-shrink:0;gap:.5rem}.patient-mobile-user .logout-button{background-color:var(--color-background);border-radius:.625rem;height:2.25rem;width:2.25rem}.patient-menu-options{flex:initial;flex-direction:row;gap:.5rem;margin-top:0;overflow-x:auto;padding-bottom:.25rem}.patient-menu-options::-webkit-scrollbar{height:4px}.patient-side-menu-option{border-radius:.875rem;justify-content:center;min-width:max-content;padding:.75rem 1rem;white-space:nowrap}.patient-user-info-wrapper{display:none}}.booking-topbar{align-items:center;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between}.booking-topbar h1{color:var(--color-text-strong);font-size:1.875rem;font-weight:800;line-height:2.25rem;margin:0}.booking-step-badge{background:#eef4ff;border-radius:999px;color:var(--color-primary);font-weight:700;padding:.65rem 1rem}.booking-progress{background:#dbe3ef;border-radius:999px;height:8px;overflow:hidden;width:100%}.booking-progress-bar{background:var(--color-primary);height:100%;width:100%}.booking-layout{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr}.booking-main-column,.booking-summary-column{display:flex;flex-direction:column;gap:20px}.booking-card,.booking-summary-card{background:var(--color-surface);border:1px solid #eaecf0;border-radius:18px;box-shadow:0 2px 8px #1018280a;padding:24px}.booking-card-header{align-items:center;display:flex;gap:12px;margin-bottom:20px}.booking-card-header h2,.booking-summary-card h2{color:var(--color-text-strong);font-size:1.2rem;margin:0}.booking-card-icon{align-items:center;background:#eef4ff;border-radius:10px;color:var(--color-primary);display:flex;height:36px;justify-content:center;width:36px}.booking-calendar-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr}.booking-calendar-wrapper .fc{font-family:inherit}.booking-calendar-wrapper .fc-toolbar-title{color:var(--color-text-strong);font-size:1.2rem}.booking-calendar-wrapper .fc-button{background:#0000!important;border:none!important;box-shadow:none!important;color:var(--color-text-strong)!important}.booking-calendar-wrapper .fc-daygrid-day-frame{min-height:48px}.booking-calendar-wrapper .fc-daygrid-day-number{color:var(--color-text-strong)}.booking-calendar-wrapper .fc-day-today{background:#0000!important}.booking-calendar-wrapper .fc-daygrid-day.fc-day-selected,.booking-calendar-wrapper .fc-daygrid-day:hover{background:#0000}.booking-slots-panel h3{color:var(--color-text-strong);font-size:1.1rem;margin:0}.booking-selected-date{color:var(--color-text-muted);margin:8px 0 0}.booking-empty-slots,.booking-slots-loading{align-items:center;color:var(--color-text-muted);display:flex;justify-content:center;min-height:120px}.booking-slots-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:16px}.booking-slot-button{background:#fff;border:1px solid #d0d5dd;border-radius:12px;color:var(--color-text-strong);cursor:pointer;font-weight:600;height:48px}.booking-slot-button.selected{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-surface)}.booking-card-description{color:var(--color-text-strong);margin:0 0 12px}.booking-textarea{background:var(--color-surface);border:1px solid #d0d5dd;border-radius:14px;box-sizing:border-box;font:inherit;min-height:120px;outline:none;padding:14px 16px;resize:vertical;width:100%}.booking-textarea:focus-visible{border-color:var(--color-primary);box-shadow:0 0 0 1px var(--color-primary);outline:none}.booking-summary-doctor{border-bottom:1px solid #eaecf0;border-top:1px solid #eaecf0;display:flex;gap:12px;margin-top:12px;padding-bottom:16px;padding-top:16px}.booking-summary-avatar{align-items:center;background:#eef4ff;border-radius:12px;color:var(--color-primary);display:flex;flex-shrink:0;font-weight:700;height:48px;justify-content:center;width:48px}.booking-summary-doctor-info{display:flex;flex-direction:column;gap:4px}.booking-summary-doctor-info small{color:#667085;font-weight:700}.booking-summary-doctor-info strong{color:var(--color-text-strong);font-size:1.1rem}.booking-summary-doctor-info span{color:var(--color-primary)}.booking-summary-items{display:flex;flex-direction:column;gap:18px;margin-top:20px}.booking-summary-item{color:#98a2b3;display:flex;gap:12px}.booking-summary-item div{display:flex;flex-direction:column;gap:2px}.booking-summary-item span{color:#667085}.booking-summary-item strong{color:var(--color-text-strong);font-weight:600}.booking-confirm-button{align-items:center;background:var(--color-primary);border:none;border-radius:14px;box-shadow:0 10px 22px #055fb32e;color:var(--color-surface);cursor:pointer;display:flex;font-size:1rem;font-weight:700;gap:10px;height:54px;justify-content:center}.booking-back-button{background:#0000;border:none;color:var(--color-text);cursor:pointer;font-size:1rem}.booking-footer-note{color:#98a2b3;font-size:.95rem;margin:0}@media (min-width:1100px){.booking-layout{align-items:start;grid-template-columns:minmax(0,2fr) minmax(320px,1fr)}.booking-summary-column{position:sticky;top:96px}.booking-calendar-grid{grid-template-columns:minmax(0,1.2fr) minmax(280px,1fr)}}@media (max-width:768px){.booking-topbar h1{font-size:1.6rem}.booking-card,.booking-summary-card{padding:18px}.booking-slots-grid{grid-template-columns:1fr}}.booking-slots-legend{display:flex;flex-wrap:wrap;gap:12px;margin-top:12px}.booking-legend-item{align-items:center;color:var(--color-text-muted);display:inline-flex;font-size:.9rem;gap:8px}.booking-legend-dot{border-radius:999px;display:inline-block;height:10px;width:10px}.booking-legend-dot.available{background:#22c55e}.booking-legend-dot.waitlist{background:#f59e0b}.booking-slot-button{align-items:center;display:flex;flex-direction:column;gap:4px;justify-content:center;padding:8px}.booking-slot-button.available{border-color:#d0d5dd}.booking-slot-button.waitlist{background:#fffaf0;border-color:#f2c572}.booking-slot-button.waitlist.selected{background:#f59e0b;border-color:#f59e0b;color:#fff}.booking-slot-button .booking-slot-time{font-size:1rem;font-weight:700}.booking-slot-button .booking-slot-caption{font-size:.76rem;line-height:1rem;text-align:center}.booking-slot-notice{border:1px solid #eaecf0;border-radius:16px;margin-top:20px;padding:16px}.booking-slot-notice.available{background:#f0fdf4;border-color:#bbf7d0}.booking-slot-notice.waitlist{background:#fffaf0;border-color:#f2c572}.booking-slot-notice-header{align-items:center;color:var(--color-text-strong);display:flex;gap:8px}.booking-slot-notice p{color:#667085;margin:10px 0 0}.booking-slot-notice-meta{color:var(--color-text-strong);display:flex;flex-direction:column;gap:6px;margin-top:12px}.booking-confirm-button:disabled{cursor:not-allowed;opacity:.7}.patient-booking-page{gap:20px}.patient-booking-page,.patient-booking-topbar{display:flex;flex-direction:column;min-width:0}.patient-booking-topbar{gap:12px}.patient-booking-topbar h1{color:var(--color-text-strong);font-size:2rem;font-weight:800;line-height:1.1;margin:0;word-break:break-word}.patient-booking-topbar p{color:var(--color-text-muted);font-size:1rem;line-height:1.5;margin:0}.patient-step-chip{align-self:flex-start;background:#eef4ff;border-radius:999px;color:var(--color-primary);font-weight:700;padding:.65rem 1rem;white-space:nowrap}.patient-booking-progress{background:#dbe3ef;border-radius:999px;height:8px;overflow:hidden;width:100%}.patient-booking-progress-bar{background:var(--color-primary);border-radius:999px;height:100%}.patient-booking-progress-bar.step-1{width:33.33%}.patient-booking-progress-bar.step-2{width:66.66%}.patient-booking-progress-bar.step-3{width:100%}.patient-booking-step-layout{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr;min-width:0}.patient-doctor-card,.patient-step-main,.patient-step-sidebar-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:20px;box-shadow:0 2px 8px #1018280a;min-width:0}.patient-step-sidebar-card{display:flex;flex-direction:column;gap:16px;padding:20px}.patient-step-sidebar-header{align-items:center;display:flex;gap:12px;justify-content:space-between}.patient-step-sidebar-header strong{color:var(--color-text-strong);font-size:1.2rem;line-height:1.2}.patient-step-sidebar-header span{color:var(--color-primary);font-weight:800;white-space:nowrap}.patient-step-sidebar-progress{background:#dbe3ef;border-radius:999px;height:8px;overflow:hidden;width:100%}.patient-step-sidebar-progress-bar{background:var(--color-primary);border-radius:999px;height:100%}.patient-step-sidebar-progress-bar.step-1{width:33.33%}.patient-step-sidebar-progress-bar.step-2{width:66.66%}.patient-step-sidebar-progress-bar.step-3{width:100%}.patient-step-sidebar-card p{color:var(--color-text-muted);line-height:1.5;margin:0}.patient-step-list{display:flex;flex-direction:column;gap:10px}.patient-step-item{align-items:center;border-radius:14px;color:var(--color-text-disabled);display:flex;font-weight:600;gap:10px;min-width:0;padding:12px 14px}.patient-step-item span{min-width:0;word-break:break-word}.patient-step-item.active{background:var(--color-primary);color:var(--color-surface)}.patient-step-main{display:flex;flex-direction:column;gap:20px;min-width:0;padding:20px}.patient-booking-filters{grid-gap:12px;display:grid;gap:12px;grid-template-columns:1fr;min-width:0}.patient-booking-search{align-items:center;background:var(--color-surface);border:1px solid var(--color-border);border-radius:16px;box-sizing:border-box;display:flex;gap:10px;height:52px;min-width:0;padding:0 16px;width:100%}.patient-booking-search svg{color:var(--color-text-disabled);flex-shrink:0}.patient-booking-search input{background:#0000;border:none;color:var(--color-text);flex:1 1;font-size:1rem;min-width:0;outline:none;width:100%}.patient-booking-search input:focus-visible,.patient-booking-select:focus-visible{border-color:var(--color-primary);box-shadow:0 0 0 1px var(--color-primary);outline:none}.patient-booking-select{background:var(--color-surface);border:1px solid var(--color-border);border-radius:16px;box-sizing:border-box;color:var(--color-text);font-size:1rem;height:52px;min-width:0;outline:none;padding:0 14px;width:100%}.patient-filter-button,.patient-primary-button,.patient-secondary-button{border:none;border-radius:16px;box-sizing:border-box;cursor:pointer;font-size:1rem;font-weight:700;height:52px;min-width:0;transition:.2s;width:100%}.patient-filter-button,.patient-primary-button{background:var(--color-primary);box-shadow:0 10px 22px #055fb32e;color:var(--color-surface)}.patient-secondary-button{background:#0000;border:1px solid var(--color-border);color:var(--color-text)}.patient-booking-loading,.patient-empty-state{align-items:center;color:var(--color-text-muted);display:flex;justify-content:center;min-height:220px;padding:0 16px;text-align:center}.patient-doctors-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr;min-width:0}.patient-doctor-card{display:flex;flex-direction:column;gap:16px;padding:18px}.patient-doctor-card-top{align-items:center;display:flex;gap:14px;min-width:0}.patient-doctor-avatar{align-items:center;background:#eef4ff;border-radius:18px;color:var(--color-primary);display:flex;flex-shrink:0;font-size:1.4rem;font-weight:800;height:72px;justify-content:center;overflow:hidden;width:72px}.patient-doctor-info{display:flex;flex:1 1;flex-direction:column;gap:6px;min-width:0}.patient-doctor-info strong{color:var(--color-text-strong);font-size:1.2rem;line-height:1.3;word-break:break-word}.patient-doctor-specialty{color:var(--color-primary);font-weight:700;letter-spacing:.03em;text-transform:uppercase;word-break:break-word}.patient-doctor-location{align-items:flex-start;color:var(--color-text-muted);display:flex;font-size:.95rem;gap:8px;min-width:0}.patient-doctor-location svg{flex-shrink:0;margin-top:2px}.patient-doctor-location span{word-break:break-word}.patient-booking-footer{display:flex;flex-direction:column;gap:14px;padding-top:4px}.patient-booking-footer span{color:var(--color-text-muted);line-height:1.5}.patient-pagination{display:flex;flex-wrap:wrap;gap:12px}.patient-pagination button{background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;color:var(--color-text);cursor:pointer;font-weight:600;height:44px;padding:0 16px}.patient-pagination button:disabled{cursor:not-allowed;opacity:.5}@media (max-width:767px){.patient-booking-page{gap:16px}.patient-booking-topbar h1{font-size:1.5rem}.patient-booking-topbar p{font-size:.95rem}.patient-step-chip{font-size:.875rem;padding:.55rem .9rem}.patient-doctor-card,.patient-step-main,.patient-step-sidebar-card{border-radius:18px}.patient-step-main,.patient-step-sidebar-card{padding:16px}.patient-step-sidebar-header strong{font-size:1rem}.patient-step-list{gap:8px}.patient-step-item{font-size:.92rem;padding:10px 12px}.patient-booking-search,.patient-booking-select,.patient-filter-button,.patient-primary-button,.patient-secondary-button{font-size:.95rem;height:48px}.patient-doctor-card{gap:14px;padding:16px}.patient-doctor-card-top{align-items:flex-start}.patient-doctor-avatar{border-radius:16px;font-size:1.15rem;height:60px;width:60px}.patient-doctor-info strong{font-size:1.05rem}.patient-doctor-specialty{font-size:.8rem}.patient-doctor-location{font-size:.9rem}.patient-booking-footer{gap:12px}.patient-pagination{display:grid;grid-template-columns:1fr 1fr;width:100%}.patient-pagination button{width:100%}}@media (min-width:768px) and (max-width:1023px){.patient-booking-page{gap:18px}.patient-booking-topbar{align-items:flex-start;flex-direction:row;gap:16px;justify-content:space-between}.patient-booking-topbar h1{font-size:1.75rem}.patient-booking-step-layout{grid-template-columns:1fr}.patient-step-sidebar-card{padding:18px}.patient-step-list{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(3,minmax(0,1fr))}.patient-step-item{flex-direction:column;justify-content:center;min-height:96px;text-align:center}.patient-step-item span{font-size:.9rem}.patient-step-main{padding:18px}.patient-booking-filters{grid-template-columns:minmax(0,1fr) minmax(220px,280px)}.patient-filter-button{grid-column:1/-1;width:100%}.patient-doctors-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.patient-doctor-avatar{font-size:1.25rem;height:64px;width:64px}.patient-doctor-info strong{font-size:1.1rem}.patient-booking-footer{align-items:center;flex-direction:row;gap:16px;justify-content:space-between}}@media (min-width:1024px) and (max-width:1299px){.patient-booking-topbar{align-items:flex-start;flex-direction:row;gap:16px;justify-content:space-between}.patient-booking-step-layout{align-items:start;grid-template-columns:240px minmax(0,1fr)}.patient-step-sidebar-card{position:sticky;top:20px}.patient-step-main{min-width:0}.patient-booking-filters{grid-template-columns:minmax(0,1fr) minmax(220px,260px)}.patient-filter-button{grid-column:1/-1;width:100%}.patient-doctors-grid{grid-template-columns:1fr}.patient-doctor-card,.patient-doctor-card-top,.patient-doctor-info,.patient-doctor-location{min-width:0}.patient-doctor-info strong,.patient-doctor-location span,.patient-doctor-specialty{overflow-wrap:anywhere;word-break:break-word}.patient-booking-footer{align-items:center;flex-direction:row;gap:16px;justify-content:space-between}}@media (min-width:1300px){.patient-booking-topbar{align-items:flex-start;flex-direction:row;gap:16px;justify-content:space-between}.patient-booking-step-layout{align-items:start;grid-template-columns:280px minmax(0,1fr)}.patient-step-sidebar-card{position:sticky;top:20px}.patient-booking-filters{align-items:center;grid-template-columns:minmax(0,1fr) 280px 140px}.patient-doctors-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.patient-booking-footer{align-items:center;flex-direction:row;gap:16px;justify-content:space-between}}.patient-booking-loading-page{align-items:center;display:flex;justify-content:center;min-height:320px}.patient-step-main-full{box-shadow:0 2px 8px #1018280a;gap:24px;padding:20px}.patient-doctor-highlight-card,.patient-step-main-full{background:var(--color-surface);border:1px solid var(--color-border);border-radius:20px;display:flex;flex-direction:column}.patient-doctor-highlight-card{gap:18px;padding:22px}.patient-doctor-highlight-avatar{align-items:center;background:#eef4ff;border-radius:28px;color:var(--color-primary);display:flex;font-size:2rem;font-weight:800;height:120px;justify-content:center;overflow:hidden;width:120px}.patient-doctor-highlight-content{display:flex;flex-direction:column;gap:16px}.patient-doctor-highlight-main{display:flex;flex-direction:column;gap:8px}.patient-doctor-highlight-main strong{color:var(--color-text-strong);font-size:2rem;line-height:1.1}.patient-doctor-highlight-main span{color:var(--color-primary);font-size:1.1rem;font-weight:700}.patient-doctor-highlight-main p{color:var(--color-text);line-height:1.6;margin:0}.patient-doctor-crm-badge{align-self:flex-start;background:#eef4ff;border-radius:999px;color:var(--color-primary);font-weight:700;padding:.6rem 1rem}.patient-location-section{display:flex;flex-direction:column;gap:16px}.patient-section-title{align-items:center;display:flex;gap:10px}.patient-section-title h2{color:var(--color-text-strong);font-size:1.4rem;margin:0}.patient-section-title svg{color:var(--color-primary)}.patient-location-list{display:flex;flex-direction:column;gap:14px}.patient-location-card{align-items:center;background:var(--color-surface);border:1px solid var(--color-border);border-radius:18px;cursor:pointer;display:flex;gap:14px;padding:18px;width:100%}.patient-location-card.selected{border-color:var(--color-primary);box-shadow:0 0 0 4px var(--color-primary-shadow)}.patient-location-card-radio{background:var(--color-surface);border:2px solid #cbd5e1;border-radius:50%;height:20px;min-width:20px;width:20px}.patient-location-card.selected .patient-location-card-radio{background:radial-gradient(circle,var(--color-primary) 0 45%,#fff 46% 100%);border-color:var(--color-primary)}.patient-location-card-content{display:flex;flex:1 1;flex-direction:column;gap:6px;text-align:left}.patient-location-card-content strong{color:var(--color-text-strong);font-size:1.15rem}.patient-location-card-content span{color:var(--color-text-muted)}.patient-location-card-tag{align-items:center;background:#eef4ff;border-radius:12px;color:var(--color-primary);display:flex;height:42px;justify-content:center;width:42px}.patient-step-actions{display:flex;flex-direction:column-reverse;gap:12px;padding-top:8px}.patient-action-inline{align-items:center;display:inline-flex;gap:10px;justify-content:center}@media (min-width:900px){.patient-doctor-highlight-card{align-items:center;flex-direction:row;justify-content:space-between}.patient-doctor-highlight-content{align-items:center;flex:1 1;gap:20px}.patient-doctor-highlight-content,.patient-step-actions{flex-direction:row;justify-content:space-between}.patient-action-inline{min-width:180px}}.denied-container{height:100%;width:100%}.denied-container,.denied-content{align-items:center;display:flex;justify-content:center}.denied-content{--tw-ring-offset-shadow:0 0 #0000;--tw-shadow:0 20px 25px -5px #0000001a,0 8px 10px -6px #0000001a;--tw-shadow-colored:0 20px 25px -5px var(--tw-shadow-color),0 8px 10px -6px var(--tw-shadow-color);background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;box-shadow:0 0 #0000,0 0 #0000,var(--tw-shadow);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow);flex-direction:column;gap:24px;margin:0 auto;max-width:85vw;padding:32px}.denied-icon{align-items:center;background-color:var(--color-primary-shadow);border-radius:50%;display:flex;height:128px;justify-content:center;width:128px}.denied-icon svg{color:var(--color-primary);height:auto;width:60px}.denied-text{align-items:center;display:flex;flex-direction:column;gap:16px;justify-content:center;margin-bottom:40px}.denied-text h2{font-size:30px;font-weight:800;line-height:36px}.denied-text p{color:var(--color-info);font-size:16px;font-weight:400;letter-spacing:.012rem;line-height:1.625;max-width:32rem;text-align:center}.denied-buttons,.denied-buttons .cancel-button{align-items:center;display:flex}.denied-buttons .cancel-button{background-color:var(--color-disabled-bg-light);border-radius:12px;cursor:pointer;gap:8px;padding:12px 32px}@media (min-width:768px){.denied-text h2{font-size:2.25rem;line-height:2.5rem}.denied-text p{line-height:1.75rem}}.not-found-container{height:100%;padding:48px 24px}.not-found-container,.not-found-content{align-items:center;display:flex;justify-content:center}.not-found-content{flex-direction:column;max-width:42rem;width:100%}.nf-header{margin-bottom:2rem;position:relative}.nf-404{--tw-text-opacity:1;color:#e2e8f0;color:rgb(226 232 240/var(--tw-text-opacity,1));font-size:120px;font-weight:900;line-height:1;-webkit-user-select:none;user-select:none}.nf-header-icon{align-items:center;color:var(--color-primary);display:flex;inset:0;justify-content:center;position:absolute}.nf-header-icon svg{height:auto;width:76px}.nf-text{align-items:center;display:flex;flex-direction:column;gap:1rem;justify-content:center;margin-bottom:2.5rem}.nf-text h2{color:var(--color-text);font-size:1.875rem;font-weight:800;letter-spacing:-.025em;line-height:1.25}.nf-text span{color:var(--color-info);font-size:1rem;line-height:1.625;max-width:500px;text-align:center}.nf-buttons,.nf-return-home{align-items:center;display:flex}.nf-return-home{background-color:var(--color-primary);border-radius:8px;color:var(--color-surface);cursor:pointer;font-weight:700;gap:10px;padding:12px 24px}@media (min-width:768px){.nf-404{font-size:180px}.nf-text h2{font-size:2.25rem;line-height:2.5rem}.nf-text p{font-size:1.125rem;line-height:1.75rem}}.patient-appointments-page{background:#f7f9fc;min-height:100%;padding:1rem}.appointments-header,.patient-appointments-page{display:flex;flex-direction:column;gap:1rem}.appointments-title-group{align-items:center;display:flex;flex-wrap:wrap;gap:.75rem}.appointments-title-group h1{color:#1f2a44;font-size:1.5rem;margin:0}.appointments-badge{background:#e8f1ff;border-radius:999px;color:var(--color-primary);font-size:.85rem;font-weight:700;padding:.35rem .7rem}.new-appointment-button{align-items:center;background:var(--color-primary);border:none;border-radius:12px;box-shadow:0 8px 20px #055fb32e;color:#fff;cursor:pointer;display:inline-flex;font-weight:700;gap:.5rem;justify-content:center;padding:.9rem 1rem}.appointments-toolbar{background:#eef2f7;border-radius:14px;display:flex;gap:.4rem;overflow-x:auto;padding:.35rem}.appointments-toolbar button{background:#0000;border:none;border-radius:10px;color:#44536c;cursor:pointer;font-weight:700;padding:.8rem 1rem;white-space:nowrap}.appointments-toolbar button.active{background:#fff;box-shadow:0 2px 8px #0f172a14;color:var(--color-primary)}.appointments-content{grid-gap:1rem;display:grid;gap:1rem}.appointments-content.calendar-mode,.appointments-content.list-mode,.appointments-content.split-mode{grid-template-columns:1fr}.appointments-calendar-section,.appointments-list-section{min-width:0}.appointments-list-section .section-header{margin-bottom:10px}.section-header h2{color:#1f2a44;font-size:1.15rem;margin:0}.appointments-list{display:flex;flex-direction:column;gap:1rem}.appointment-card{background:#fff;border:1px solid #e5ebf3;border-radius:18px;box-shadow:0 4px 16px #0f172a0a;padding:1rem;position:relative}.appointment-card:before{border-radius:999px;bottom:14px;content:"";left:0;position:absolute;top:14px;width:4px}.appointment-card.confirmed:before{background:#22c55e}.appointment-card.completed:before{background:#3b82f6}.appointment-card.canceled:before{background:#9ca3af}.appointment-card-top{align-items:flex-start;display:flex;gap:.9rem}.appointment-date-box{align-items:center;background:#f2f5f9;border-radius:12px;display:flex;flex-direction:column;min-width:56px;padding:.55rem .35rem}.appointment-date-box span{color:var(--color-primary);font-size:.75rem;font-weight:700}.appointment-date-box strong{color:#1f2a44;font-size:1.45rem}.appointment-main-info{flex:1 1;min-width:0}.appointment-title-row{display:flex;flex-direction:column;gap:.5rem}.appointment-title-row h3{color:#1f2a44;font-size:1.15rem;margin:0}.status-pill{border-radius:999px;font-size:.82rem;font-weight:700;padding:.35rem .75rem;width:fit-content}.status-pill.confirmed{background:#dcfce7;color:#15803d}.status-pill.completed{background:#dbeafe;color:#1d4ed8}.status-pill.canceled{background:#f3f4f6;color:#6b7280}.appointment-subtitle{color:#5f6f89;margin:.45rem 0 0}.appointment-full-date,.appointment-meta span{align-items:center;color:#4b5a73;display:inline-flex;gap:.35rem}.appointment-full-date{font-size:.92rem;margin:.75rem 0 0}.appointment-meta{display:flex;flex-direction:column;font-size:.95rem;gap:.5rem;margin-top:.75rem}.appointment-actions{border-top:1px solid #edf2f7;display:flex;flex-wrap:wrap;gap:1rem;margin-top:1rem;padding-top:1rem}.appointment-actions button{background:#0000;border:none;color:var(--color-primary);cursor:pointer;font-weight:700}.appointment-actions button.secondary{color:#7b8aa5}.calendar-card{background:#fff;border:1px solid #e5ebf3;border-radius:18px;box-shadow:0 4px 16px #0f172a0a;overflow:hidden;padding:1rem}.calendar-legend{border-top:1px solid #edf2f7;display:flex;flex-wrap:wrap;gap:1rem;margin-top:1rem;padding-top:1rem}.legend-item{align-items:center;color:#44536c;display:flex;font-size:.92rem;gap:.45rem}.legend-dot{border-radius:50%;height:10px;width:10px}.legend-dot.confirmed{background:#22c55e}.legend-dot.completed{background:#3b82f6}.legend-dot.canceled{background:#9ca3af}.empty-state{background:#fff;border:1px dashed #d9e2ec;border-radius:18px;color:#66758f;padding:1rem}.fc{--fc-border-color:#e6edf5;--fc-page-bg-color:#fff;--fc-neutral-bg-color:#f8fafc;--fc-list-event-hover-bg-color:#f8fafc;--fc-today-bg-color:#055fb30f}.fc .fc-toolbar.fc-header-toolbar{margin-bottom:1rem}.fc .fc-toolbar-title{color:#1f2a44;font-size:1.35rem;font-weight:700;text-transform:capitalize}.fc .fc-button{background:#0000!important;border:none!important;box-shadow:none!important;color:#1f2a44!important;padding:.35rem .5rem!important}.fc .fc-button:hover{background:#f2f5f9!important;border-radius:8px}.fc .fc-scrollgrid{border-radius:14px;overflow:hidden}.fc .fc-col-header-cell{background:#fff;padding:.35rem 0}.fc .fc-col-header-cell-cushion{color:#8a99b2;font-size:.82rem;font-weight:700;text-decoration:none;text-transform:uppercase}.fc .fc-daygrid-day-frame{min-height:72px}.fc .fc-daygrid-day-number{color:#1f2a44;font-weight:600;padding:.45rem;text-decoration:none}.fc .fc-day-today .fc-daygrid-day-number{color:var(--color-primary)}.fc .fc-day-other .fc-daygrid-day-number{color:#c0cada}.fc .fc-daygrid-event{background:#0000!important;border:none!important;margin-top:2px!important}.fc-custom-event{align-items:center;display:inline-flex;font-size:.72rem;font-weight:600;gap:.3rem;padding-left:.25rem}.fc-custom-event-dot{border-radius:50%;flex-shrink:0;height:7px;width:7px}.fc-custom-event-time{color:#44536c;line-height:1}@media (min-width:768px){.patient-appointments-page{padding:1.5rem}.appointment-title-row,.appointments-header{align-items:center;flex-direction:row;justify-content:space-between}.appointment-title-row{gap:1rem}.appointment-meta{column-gap:1rem;flex-direction:row;flex-wrap:wrap}.appointments-content.split-mode{align-items:start;grid-template-columns:minmax(0,1.7fr) minmax(340px,.95fr)}}.appointment-modal-overlay-box{align-items:center;box-sizing:border-box;display:flex;justify-content:center;min-height:100dvh;padding:12px;width:100%}.appointment-modal{background:var(--color-surface);border:1px solid #eaecf0;border-radius:24px;box-shadow:0 24px 64px #0f172a38;display:flex;flex-direction:column;max-height:min(92dvh,920px);overflow:hidden;width:100%}.appointment-modal-large{max-width:920px}.appointment-modal-header{align-items:center;background:var(--color-surface);border-bottom:1px solid #eaecf0;display:flex;flex-shrink:0;gap:16px;justify-content:space-between;padding:20px}.appointment-modal-title-group{align-items:center;display:flex;gap:12px;min-width:0}.appointment-modal-title-group h2{color:var(--color-text-strong);font-size:1.35rem;font-weight:800;line-height:1.15;margin:0;word-break:break-word}.appointment-modal-icon{align-items:center;border-radius:14px;display:flex;flex-shrink:0;height:44px;justify-content:center;min-width:44px;width:44px}.appointment-modal-icon.blue{background:#eef4ff;color:var(--color-primary)}.appointment-modal-icon.red{background:#fdecec;color:#ef4444}.appointment-modal-close{background:#0000;border:none;border-radius:10px;color:#98a2b3;cursor:pointer;flex-shrink:0;height:40px;min-width:40px;width:40px}.appointment-modal-body{display:flex;flex:1 1;flex-direction:column;gap:20px;min-height:0;min-width:0;overflow-x:hidden;overflow-y:auto;padding:20px}.appointment-current-card{background:#f8fafc;border:1px solid #eaecf0;border-radius:18px;min-width:0;padding:16px}.appointment-current-card small{color:#94a3b8;display:block;font-size:.75rem;font-weight:800;letter-spacing:.08em;margin-bottom:12px}.appointment-current-content{display:flex;flex-direction:column;gap:16px;min-width:0}.appointment-current-doctor{align-items:center;display:flex;gap:12px;min-width:0}.appointment-current-avatar{align-items:center;background:#e8f1fb;border-radius:14px;color:var(--color-primary);display:flex;flex-shrink:0;height:48px;justify-content:center;width:48px}.appointment-doctor-info{display:flex;flex-direction:column;gap:4px;min-width:0}.appointment-current-doctor strong{color:var(--color-text-strong);display:block;font-size:1.05rem;line-height:1.3;word-break:break-word}.appointment-current-doctor span,.appointment-doctor-info span{color:var(--color-text-muted);font-size:14px;font-weight:500;line-height:1.4;word-break:break-word}.appointment-current-meta{display:flex;flex-wrap:wrap;gap:10px;min-width:0}.appointment-current-meta svg{color:var(--color-primary);flex-shrink:0}.appointment-current-chip{align-items:center;background:#fff;border:1px solid #d0d5dd;border-radius:12px;color:var(--color-text-strong);display:inline-flex;font-weight:600;gap:10px;min-height:48px;min-width:0;padding:0 14px}.appointment-reschedule-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr;min-width:0}.appointment-reschedule-column{min-width:0}.appointment-reschedule-column h3{color:var(--color-text-strong);font-size:1.1rem;line-height:1.3;margin:0 0 8px;word-break:break-word}.appointment-selected-date{color:var(--color-text-muted);line-height:1.5;margin:0 0 16px;word-break:break-word}.appointment-calendar-wrapper{min-width:0;overflow-x:auto}.appointment-slots-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:1fr;min-width:0}.appointment-slot-button{background:#fff;border:1px solid #d0d5dd;border-radius:14px;color:var(--color-text-strong);cursor:pointer;font-weight:700;min-height:48px;padding:0 12px}.appointment-slot-button.selected{background:#eef4ff;border-color:var(--color-primary);box-shadow:inset 0 0 0 1px var(--color-primary);color:var(--color-primary)}.appointment-slots-state{align-items:center;border:1px dashed #d0d5dd;border-radius:16px;color:var(--color-text-muted);display:flex;justify-content:center;min-height:140px;padding:16px;text-align:center}.appointment-modal-footer{grid-gap:12px;background:#fcfcfd;border-top:1px solid #eaecf0;display:grid;flex-shrink:0;gap:12px;grid-template-columns:1fr;padding:20px}.appointment-danger-button,.appointment-neutral-button,.appointment-primary-button,.appointment-secondary-button{border-radius:14px;cursor:pointer;font-size:1rem;font-weight:800;min-height:54px;width:100%}.appointment-primary-button{background:var(--color-primary);border:none;box-shadow:0 10px 22px #055fb32e;color:#fff}.appointment-primary-button:disabled{cursor:not-allowed;opacity:.7}.appointment-secondary-button{background:#fff;border:1px solid #d0d5dd;color:var(--color-text-strong)}.appointment-danger-button{background:#ef2323;border:none;box-shadow:0 10px 22px #ef23232e;color:#fff}.appointment-neutral-button{background:#e9eef6;border:none;color:#24324a}@media (max-width:767px){.appointment-modal-overlay-box{align-items:stretch;padding:8px}.appointment-modal{border-radius:20px;max-height:100dvh}.appointment-modal-header{gap:12px;padding:16px}.appointment-modal-title-group h2{font-size:1.15rem}.appointment-modal-body{gap:16px;padding:16px}.appointment-current-card{padding:14px}.appointment-current-meta{align-items:stretch;flex-direction:column}.appointment-current-chip{box-sizing:border-box;width:100%}.appointment-reschedule-grid{gap:16px}.appointment-reschedule-column h3{font-size:1rem}.appointment-modal-footer{gap:10px;padding:16px}.appointment-danger-button,.appointment-neutral-button,.appointment-primary-button,.appointment-secondary-button{font-size:.95rem;min-height:50px}}@media (min-width:768px){.appointment-modal-body,.appointment-modal-footer,.appointment-modal-header{padding-left:24px;padding-right:24px}.appointment-slots-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.appointment-modal-footer{grid-template-columns:240px minmax(0,1fr)}}@media (min-width:1024px){.appointment-reschedule-grid{grid-template-columns:minmax(0,1.15fr) minmax(280px,1fr)}.appointment-current-content{align-items:center;flex-direction:row;justify-content:space-between}}.mini-calendar{background:#fff;border:1px solid #dbe3ef;border-radius:18px;padding:14px}.mini-calendar-header{align-items:center;display:flex;gap:12px;justify-content:space-between;margin-bottom:14px}.mini-calendar-header strong{color:var(--color-text-strong);font-size:1.05rem;font-weight:800;text-transform:capitalize}.mini-calendar-nav{align-items:center;background:#0000;border:none;border-radius:10px;color:var(--color-text-strong);cursor:pointer;display:flex;height:36px;justify-content:center;width:36px}.mini-calendar-nav:hover{background:#f5f7fb}.mini-calendar-weekdays{grid-gap:6px;display:grid;gap:6px;grid-template-columns:repeat(7,minmax(0,1fr));margin-bottom:8px}.mini-calendar-weekdays span{color:#94a3b8;font-size:.72rem;font-weight:800;padding:6px 0;text-align:center}.mini-calendar-grid{grid-gap:6px;display:grid;gap:6px;grid-template-columns:repeat(7,minmax(0,1fr))}.mini-calendar-day{background:#0000;border:none;border-radius:12px;color:var(--color-text-strong);cursor:pointer;font-size:.95rem;font-weight:600;height:42px;transition:background .2s ease,color .2s ease,box-shadow .2s ease}.mini-calendar-day:hover:not(:disabled){background:#f5f9ff}.mini-calendar-day.outside{color:#c0cad8}.mini-calendar-day.today{box-shadow:inset 0 0 0 1px #c7d7f2}.mini-calendar-day.selected{background:var(--color-primary);box-shadow:0 8px 18px #055fb333;color:#fff}.mini-calendar-day.disabled{color:#d0d5dd;cursor:not-allowed;opacity:.65}.appointment-cancel-body{text-align:center}.appointment-cancel-alert-icon{align-items:center;background:#fde8e8;border-radius:999px;color:#ef2323;display:flex;height:72px;justify-content:center;margin:0 auto 20px;width:72px}.appointment-cancel-alert-icon svg{font-size:2rem}.appointment-cancel-title{color:var(--color-text-strong);font-size:1.9rem;font-weight:800;margin:0}.appointment-cancel-description{color:#667085;line-height:1.5;margin:12px auto 0;max-width:420px}.appointment-cancel-card{margin-top:24px;text-align:left}.appointment-cancel-summary{align-items:center;display:flex;gap:14px}.appointment-cancel-datebox{align-items:center;background:#e8f1fb;border-radius:14px;color:var(--color-primary);display:flex;flex-direction:column;flex-shrink:0;height:64px;justify-content:center;width:64px}.appointment-cancel-datebox span{font-size:.85rem;font-weight:800;line-height:1}.appointment-cancel-datebox strong{font-size:1.8rem;line-height:1}.appointment-cancel-info strong{color:var(--color-text-strong);display:block;font-size:1.05rem}.appointment-cancel-info span{color:#667085}.appointment-cancel-reasons{margin-top:24px;text-align:left}.appointment-cancel-reasons h3{color:var(--color-text-strong);font-size:1.05rem;margin:0 0 14px}.appointment-cancel-options{display:flex;flex-direction:column;gap:12px}.appointment-cancel-option{align-items:center;background:#fff;border:1px solid #d0d5dd;border-radius:14px;color:var(--color-text-strong);cursor:pointer;display:flex;font-size:1rem;gap:12px;min-height:56px;padding:0 14px;text-align:left}.appointment-cancel-option.selected{background:#f8fbff;border-color:#bfd3f5}.appointment-cancel-radio{align-items:center;border:1.5px solid #cbd5e1;border-radius:999px;display:inline-flex;flex-shrink:0;height:20px;justify-content:center;width:20px}.appointment-cancel-radio span{background:#0000;border-radius:999px;height:10px;width:10px}.appointment-cancel-option.selected .appointment-cancel-radio{border-color:var(--color-primary)}.appointment-cancel-option.selected .appointment-cancel-radio span{background:var(--color-primary)}.password-card{background:var(--color-surface);border-radius:18px;box-shadow:0 10px 30px #0f172a14;max-width:520px;padding:32px 34px 40px;width:100%}.password-card__brand{color:#0f172a;font-size:22px;font-weight:700;gap:12px;margin-bottom:26px}.password-card__brand,.password-card__logo{align-items:center;display:flex;justify-content:center}.password-card__logo{background:var(--color-primary);border-radius:8px;color:var(--color-surface);font-size:24px;height:40px;width:40px}.password-card__hero{align-items:center;background:var(--color-background);border-radius:12px;display:flex;height:138px;justify-content:center;margin-bottom:28px}.forgot-hero__icon{color:var(--color-primary);font-size:52px}.password-card__title{color:var(--color-text-strong);font-size:28px;font-weight:700;margin:0 0 14px;text-align:center}.password-card__description{color:var(--color-text-muted);font-size:16px;line-height:1.6;margin:0 0 28px;text-align:center}.password-card__form{display:flex;flex-direction:column;gap:14px}.password-card__label{color:var(--color-text);font-size:15px;font-weight:600}.password-input{position:relative}.password-input input{border:1px solid var(--color-border);border-radius:10px;box-sizing:border-box;font-size:16px;height:54px;outline:none;padding:0 16px 0 44px;width:100%}.password-input input:focus-visible{border-color:var(--color-primary);box-shadow:0 0 0 1px var(--color-primary);outline:none}.password-input__icon-left{color:#94a3b8;font-size:18px;left:14px;position:absolute;top:50%;transform:translateY(-50%)}.password-primary-button{align-items:center;background:var(--color-primary);border:none;border-radius:10px;box-shadow:0 8px 18px var(--color-primary-shadow);color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:700;gap:10px;height:54px;justify-content:center;margin-top:14px}.password-primary-button:disabled{cursor:not-allowed;opacity:.7}.password-back-link{align-items:center;color:var(--color-primary);display:flex;font-weight:600;gap:8px;justify-content:center;margin-top:28px;text-decoration:none}.public-auth-layout{background:#f3f6f9;display:flex;flex-direction:column;min-height:100vh}.public-auth-header{align-items:center;background:#fff;border-bottom:1px solid #dbe4ee;display:flex;height:74px;justify-content:space-between;padding:0 28px}.public-auth-header__brand{align-items:center;color:var(--color-text-strong);display:flex;font-size:22px;font-weight:700;gap:12px}.public-auth-header__logo{align-items:center;background:var(--color-primary);border-radius:6px;color:var(--color-surface);display:flex;font-weight:700;height:28px;justify-content:center;width:28px}.public-auth-header__support{color:var(--color-text-muted);font-size:15px}.public-auth-main{align-items:center;display:flex;flex:1 1;justify-content:center;padding:32px 16px}.public-auth-footer{color:var(--color-text-muted);font-size:14px;padding:18px 16px 28px;text-align:center}@media (max-width:768px){.public-auth-header{height:64px;padding:0 16px}.public-auth-header__support{display:none}.public-auth-header__brand{font-size:20px}}.token-password-card{background:#fff;border-radius:18px;box-shadow:0 10px 30px #0f172a14;max-width:520px;padding:34px;width:100%}.token-password-card__icon-wrap{display:flex;justify-content:center;margin-bottom:20px}.token-password-card__icon{align-items:center;background:var(--color-background);border-radius:50%;color:var(--color-primary);display:flex;font-size:30px;height:68px;justify-content:center;width:68px}.token-password-card__title{color:#0f172a;font-size:28px;font-weight:700;margin:0 0 14px;text-align:center}.token-password-card__description{color:var(--color-text-muted);font-size:16px;line-height:1.6;margin:0 0 28px;text-align:center}.token-password-card__form{display:flex;flex-direction:column;gap:12px}.token-password-card__form label{color:var(--color-text);font-size:15px;font-weight:600;margin-top:8px}.token-password-input{position:relative}.token-password-input input{border:1px solid var(--color-border);border-radius:10px;box-sizing:border-box;font-size:16px;height:52px;outline:none;padding:0 50px 0 16px;width:100%}.token-password-input input:focus-visible{border-color:var(--color-primary);box-shadow:0 0 0 1px var(--color-primary);outline:none}.token-password-input button{background:#0000;border:none;color:#94a3b8;cursor:pointer;font-size:20px;position:absolute;right:12px;top:50%;transform:translateY(-50%)}.password-rules-box{background:var(--color-background);border-radius:12px;margin-top:12px;padding:18px}.password-rules-box__title{color:var(--color-text-muted);display:block;font-size:14px;font-weight:700;margin-bottom:12px}.password-rule{align-items:center;color:var(--color-text-muted);display:flex;font-size:15px;gap:10px;margin-bottom:10px}.password-rule:last-child{margin-bottom:0}.password-rule__dot{background:#94a3b8;border-radius:50%;height:10px;width:10px}.password-rule.valid .password-rule__dot{background:#16a34a}.token-password-primary-button{align-items:center;background:var(--color-primary);border:none;border-radius:10px;box-shadow:0 8px 18px var(--color-primary-shadow);color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:700;gap:10px;height:54px;justify-content:center;margin-top:12px}.token-password-primary-button:disabled{cursor:not-allowed;opacity:.7}.token-password-card__support{color:#64748b;margin:28px 0 0;text-align:center}.token-password-card__loading{color:var(--color-text-muted);font-size:16px;text-align:center}.reset-password-card{background:var(--color-surface);border-radius:18px;box-shadow:0 10px 30px #0f172a14;max-width:520px;padding:34px;width:100%}.reset-password-card__brand{align-items:center;color:var(--color-text-strong);display:flex;font-size:22px;font-weight:700;gap:12px;justify-content:center;margin-bottom:30px}.reset-password-card__logo{align-items:center;background:var(--color-primary);border-radius:8px;color:var(--color-surface);display:flex;font-size:24px;height:40px;justify-content:center;width:40px}.reset-password-card__title{color:var(--color-text-strong);font-size:28px;font-weight:700;margin:0 0 14px;text-align:center}.reset-password-card__description{color:#42526b;font-size:16px;line-height:1.6;margin:0 0 28px;text-align:center}.reset-password-card__form{display:flex;flex-direction:column;gap:12px}.reset-password-card__form label{color:#233554;font-size:15px;font-weight:600;margin-top:8px}.reset-password-input{position:relative}.reset-password-input input{border:1px solid var(--color-border);border-radius:10px;box-sizing:border-box;font-size:16px;height:52px;outline:none;padding:0 50px 0 16px;width:100%}.reset-password-input input:focus-visible{border-color:var(--color-primary);box-shadow:0 0 0 1px var(--color-primary);outline:none}.reset-password-input button{background:#0000;border:none;color:var(--color-text-disabled);cursor:pointer;font-size:20px;position:absolute;right:12px;top:50%;transform:translateY(-50%)}.reset-password-card__helper{color:var(--color-text-muted);margin-top:-4px}.reset-password-primary-button{align-items:center;background:var(--color-primary);border:none;border-radius:10px;box-shadow:0 8px 18px #1565c02e;color:var(--color-surface);cursor:pointer;display:flex;font-size:16px;font-weight:700;gap:10px;height:54px;justify-content:center;margin-top:14px}.reset-password-primary-button:disabled{cursor:not-allowed;opacity:.7}.reset-password-back-link{color:var(--color-primary);display:flex;font-weight:600;justify-content:center;margin-top:28px;text-decoration:none}.reset-password-card__loading{color:#42526b;font-size:16px;text-align:center}.password-field-error{color:#dc2626;font-size:13px;margin-top:-6px}.receptionist-panel-section{background-color:var(--color-background);display:flex;height:100vh;overflow:hidden;width:100%}.receptionist-panel-container{background-color:var(--color-background);display:flex;flex:1 1 auto;flex-direction:column;min-height:0;min-width:0;overflow-x:hidden;overflow-y:auto}@media (max-width:767px){.receptionist-panel-section{flex-direction:column;height:100dvh}.receptionist-panel-container{flex:1 1;height:auto;min-height:0}}.receptionist-panel-side-menu{background-color:var(--color-surface);border-right:1px solid var(--color-border);display:flex;flex-direction:column;flex-shrink:0;justify-content:space-between;min-width:18rem;padding:1rem}.receptionist-menu-top{display:contents}.menu-logo{gap:.75rem;padding:0 .5rem}.menu-icon,.menu-logo{align-items:center;display:flex}.menu-icon{background-color:var(--color-primary);border-radius:.75rem;color:var(--color-surface);flex-shrink:0;justify-content:center;padding:.5rem}.menu-text{display:flex;flex-direction:column;min-width:0}.menu-text h5{color:var(--color-primary);font-size:1.125rem;font-weight:700;line-height:1.25}.menu-text span{color:var(--color-text-muted);font-size:.75rem;font-weight:500;line-height:1rem}.menu-options{display:flex;flex:1 1;flex-direction:column;gap:.5rem;margin-top:2rem}.side-menu-option{align-items:center;border-radius:.75rem;color:var(--color-text-muted);display:flex;font-weight:500;gap:.75rem;min-height:3rem;padding:.75rem 1rem;transition:all .3s ease-in-out}.side-menu-option:hover{background-color:var(--color-disabled-bg-dark)}.side-menu-active{background-color:var(--color-primary);color:var(--color-surface)}.receptionist-user-info-wrapper{border-top:1px solid var(--color-border);margin-top:1rem;padding-top:1rem}.receptionist-user-info{align-items:center;display:flex;gap:.75rem;padding:0 .5rem}.user-avatar{border-radius:50%;flex-shrink:0;height:2.5rem;object-fit:cover;width:2.5rem}.user-info{display:flex;flex:1 1;flex-direction:column;min-width:0}.user-info h5{color:var(--color-text-strong);font-size:.875rem;font-weight:700;line-height:1.25rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-info span{color:var(--color-text-muted);font-size:.75rem;line-height:1rem}.logout-button{align-items:center;color:var(--color-text-muted);cursor:pointer;display:flex;flex-shrink:0;justify-content:center}.receptionist-mobile-user{display:none}@media (min-width:768px) and (max-width:1023px){.receptionist-panel-side-menu{min-width:6rem;padding:1rem .75rem;width:6rem}.menu-logo{justify-content:center;padding:0}.menu-text{display:none}.menu-options{align-items:center;margin-top:2rem}.side-menu-option{gap:0;justify-content:center;padding:.875rem;width:100%}.side-menu-option span{display:none}.receptionist-user-info{justify-content:center;padding:0}.receptionist-user-info .logout-button,.user-info{display:none}}@media (max-width:767px){.receptionist-panel-side-menu{border-bottom:1px solid var(--color-border);border-right:none;gap:.75rem;padding:.75rem 1rem 1rem}.receptionist-menu-top{align-items:center;display:flex;gap:1rem;justify-content:space-between}.menu-logo{min-width:0;padding:0}.menu-text h5{font-size:.88rem}.menu-text span{font-size:.6875rem}.receptionist-mobile-user{align-items:center;display:flex;flex-shrink:0;gap:.5rem}.receptionist-mobile-user .logout-button{background-color:var(--color-background);border-radius:.625rem;height:2.25rem;width:2.25rem}.menu-options{flex:initial;flex-direction:row;gap:.5rem;margin-top:0;overflow-x:auto;padding-bottom:.25rem}.menu-options::-webkit-scrollbar{height:4px}.side-menu-option{border-radius:.875rem;justify-content:center;min-width:max-content;padding:.75rem 1rem;white-space:nowrap}.receptionist-user-info-wrapper{display:none}}.receptionist-calendar-side-card,.receptionist-card,.receptionist-card-header,.receptionist-card-inner-header,.receptionist-doctor-card,.receptionist-doctor-card-content,.receptionist-doctor-grid,.receptionist-doctors-list,.receptionist-form-group,.receptionist-hours-card,.receptionist-patient-grid,.receptionist-schedule-grid,.receptionist-steps-card,.receptionist-summary-card{min-width:0}.receptionist-panel-header{align-items:center;display:flex;justify-content:flex-end;margin-bottom:24px;padding:1.5rem 2rem 0}.receptionist-header-search{align-items:center;background:var(--color-surface);border:1px solid #d0d5dd;border-radius:12px;color:#667085;display:flex;gap:.75rem;height:44px;max-width:320px;padding:0 .875rem;width:100%}.receptionist-header-search input{background:#0000;border:none;color:var(--color-text-strong);font-size:15px;outline:none;width:100%}.receptionist-form-group input:focus-visible,.receptionist-form-group select:focus-visible,.receptionist-header-search input:focus-visible{border-color:var(--color-primary);box-shadow:0 0 0 1px var(--color-primary);outline:none}.receptionist-panel-content{display:flex;flex-direction:column;gap:2rem;padding:0 2rem 2rem}.receptionist-topbar{align-items:flex-start;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between}.receptionist-topbar h1{color:var(--color-text-strong);font-size:1.875rem;font-weight:800;letter-spacing:-.025em;line-height:2.25rem;margin:0}.receptionist-topbar p{color:#667085;font-size:1rem;margin:8px 0 0}.receptionist-card,.receptionist-steps-card{background:var(--color-surface);border:1px solid #eaecf0;border-radius:18px;box-shadow:0 2px 8px #1018280a;padding:24px}.receptionist-steps{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;justify-content:center}.receptionist-step-item{align-items:center;display:flex;flex-direction:column;gap:.5rem;min-width:72px}.receptionist-step-badge{align-items:center;background:#eef4ff;border-radius:.875rem;color:var(--color-primary);display:flex;font-weight:700;height:2.75rem;justify-content:center;width:2.75rem}.receptionist-step-item span{color:#667085;font-size:.875rem;font-weight:600}.receptionist-step-item.active .receptionist-step-badge{background:var(--color-primary);color:var(--color-surface)}.receptionist-step-item.active span{color:var(--color-primary)}.receptionist-step-line{background:#d0d5dd;height:1px;width:60px}.receptionist-card-header{align-items:center;display:flex;gap:12px;justify-content:space-between;margin-bottom:20px}.receptionist-card-header h2{color:#101828;font-size:1.15rem;margin:0}.receptionist-card-header span{color:#667085;font-size:.95rem}.receptionist-form-grid{grid-gap:20px;display:grid;gap:20px}.receptionist-form-grid.single{grid-template-columns:minmax(0,1fr);max-width:420px}.receptionist-form-group{display:flex;flex-direction:column;gap:8px}.receptionist-form-group label{color:#344054;font-size:14px;font-weight:600}.receptionist-form-group input,.receptionist-form-group select{background:var(--color-surface);border:1px solid #d0d5dd;border-radius:12px;box-sizing:border-box;font-size:15px;height:44px;max-width:100%;min-width:0;outline:none;padding:0 14px;width:100%}.receptionist-card-header h2,.receptionist-card-header span,.receptionist-card-inner-header h3,.receptionist-card-inner-header span,.receptionist-doctor-card p,.receptionist-doctor-card span,.receptionist-doctor-card strong,.receptionist-info-card p,.receptionist-summary-box p{overflow-wrap:anywhere;word-break:break-word}.receptionist-action-row,.receptionist-footer-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}.receptionist-footer-actions{justify-content:space-between}.receptionist-primary-button,.receptionist-secondary-button{align-items:center;border:none;border-radius:12px;cursor:pointer;display:flex;font-size:15px;font-weight:600;gap:8px;height:44px;justify-content:center;padding:0 18px;transition:.2s}.receptionist-primary-button{background:var(--color-primary);color:var(--color-surface)}.receptionist-secondary-button{background:#edf4ff;color:var(--color-primary)}.receptionist-patient-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1.3fr 1fr 1fr}.receptionist-calendar-side-card,.receptionist-hours-card,.receptionist-info-card,.receptionist-note-card,.receptionist-summary-card{background:var(--color-surface);border:1px solid #eaecf0;border-radius:18px;box-sizing:border-box;padding:24px}.receptionist-patient-main-card{align-items:center;display:flex;gap:18px}.receptionist-patient-avatar{align-items:center;background:#eef4ff;border-radius:50%;color:var(--color-primary);display:flex;font-size:1.75rem;font-weight:700;height:72px;justify-content:center;min-width:72px;width:72px}.receptionist-patient-main-content h3{color:#101828;font-size:1.1rem;margin:0 0 6px}.receptionist-patient-main-content p,.receptionist-patient-main-content span{color:#667085;font-size:.95rem;margin:0}.receptionist-info-card{align-items:flex-start;display:flex;gap:14px}.receptionist-info-card-icon{align-items:center;background:#eef4ff;border-radius:12px;color:var(--color-primary);display:flex;height:42px;justify-content:center;min-width:42px;width:42px}.receptionist-info-card strong{color:#101828;display:block;margin-bottom:6px}.receptionist-info-card p{color:#667085;margin:0;word-break:break-word}.receptionist-note-card{align-items:center;background:#edf4ff;color:var(--color-primary);display:flex;gap:12px;grid-column:1/-1}.receptionist-doctor-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:320px minmax(0,1fr)}.receptionist-summary-card{align-self:start;display:flex;flex-direction:column;gap:10px}.receptionist-summary-box{background:#f8faff;border:1px solid #eaecf0;border-radius:16px;margin-top:20px;padding:18px}.receptionist-summary-box h3{color:#101828;font-size:1rem;margin:0 0 12px}.receptionist-summary-box p{color:#667085;margin:0 0 8px}.receptionist-doctors-list{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(2,minmax(0,1fr))}.receptionist-doctor-card{background:var(--color-surface);border:1px solid #eaecf0;border-radius:18px;cursor:pointer;padding:20px;text-align:left;transition:.2s}.receptionist-doctor-card:hover{border-color:var(--color-primary)}.receptionist-doctor-card.selected{border-color:var(--color-primary);box-shadow:0 0 0 2px #055fb31a}.receptionist-doctor-card-content{display:flex;gap:16px;justify-content:space-between}.receptionist-doctor-card strong{color:#101828;font-size:1rem}.receptionist-doctor-card p,.receptionist-doctor-card span{color:#667085;font-size:.95rem;margin:6px 0 0}.receptionist-doctor-check{color:var(--color-primary);flex-shrink:0}.receptionist-schedule-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:320px minmax(0,1fr)}.receptionist-card-inner-header{align-items:center;display:flex;gap:12px;justify-content:space-between;margin-bottom:20px}.receptionist-card-inner-header h3{color:#101828;font-size:1rem;margin:0}.receptionist-card-inner-header span{color:#667085;font-size:.95rem}.receptionist-selected-box{background:#edf4ff;border:1px solid #dbeafe;border-radius:16px;color:var(--color-primary);display:flex;flex-direction:column;gap:6px;margin-top:20px;padding:16px}.receptionist-period-section+.receptionist-period-section{margin-top:24px}.receptionist-period-section h4{color:#101828;font-size:1rem;margin:0 0 12px}.receptionist-slots-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(4,minmax(90px,1fr))}.receptionist-slot-button{background:var(--color-surface);border:1px solid #d0d5dd;border-radius:12px;color:#344054;cursor:pointer;font-weight:600;height:44px}.receptionist-slot-button.selected{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-surface)}.receptionist-bottom-note{margin-top:20px}.receptionist-empty-message{color:#667085;margin:20px 0 0}.receptionist-loading{display:flex;justify-content:center;padding:60px 0}@media (max-width:450px){.receptionist-panel-header{padding:.75rem .75rem 0}.receptionist-panel-content{gap:1rem;padding:0 .75rem .75rem}.receptionist-calendar-side-card,.receptionist-card,.receptionist-hours-card,.receptionist-info-card,.receptionist-note-card,.receptionist-steps-card,.receptionist-summary-card{border-radius:16px;padding:14px}.receptionist-card-header,.receptionist-card-inner-header{align-items:flex-start;flex-direction:column}.receptionist-card-header h2{font-size:1.05rem;line-height:1.35rem}.receptionist-card-header span,.receptionist-card-inner-header span{font-size:.9rem}.receptionist-summary-box{padding:14px}.receptionist-doctor-card{padding:16px}.receptionist-doctor-card-content{gap:10px}.receptionist-primary-button,.receptionist-secondary-button{font-size:14px;padding:0 14px}}@media (max-width:1100px){.receptionist-doctor-grid,.receptionist-doctors-list,.receptionist-patient-grid,.receptionist-schedule-grid{grid-template-columns:1fr}}@media (max-width:768px){.receptionist-panel-header{justify-content:stretch;padding:1rem 1rem 0}.receptionist-header-search{max-width:none}.receptionist-panel-content{padding:0 1rem 1rem}.receptionist-topbar{align-items:stretch;flex-direction:column}.receptionist-topbar h1{font-size:1.6rem}.receptionist-calendar-side-card,.receptionist-card,.receptionist-hours-card,.receptionist-info-card,.receptionist-note-card,.receptionist-steps-card,.receptionist-summary-card{padding:18px}.receptionist-step-line{display:none}.receptionist-steps{justify-content:flex-start}.receptionist-slots-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.receptionist-action-row,.receptionist-footer-actions{flex-direction:column}.receptionist-primary-button,.receptionist-secondary-button{width:100%}}.doctor-panel-section{overflow:hidden;width:100%}.doctor-panel-container,.doctor-panel-section{background-color:var(--color-background);display:flex;height:100vh}.doctor-panel-container{flex:1 1 auto;flex-direction:column;min-width:0;overflow-x:hidden;overflow-y:auto}@media (max-width:767px){.doctor-panel-section{flex-direction:column;height:100dvh}.doctor-panel-container{flex:1 1;height:auto;min-height:0}}.doctor-panel-side-menu{background-color:var(--color-surface);border-right:1px solid var(--color-border);display:flex;flex-direction:column;flex-shrink:0;justify-content:space-between;min-width:18rem;padding:1rem;width:18rem}.doctor-menu-top{display:contents}.doctor-menu-logo{align-items:center;display:flex;gap:.75rem;padding:0 .5rem}.doctor-menu-icon{align-items:center;background-color:var(--color-primary);border-radius:.75rem;color:var(--color-surface);display:flex;flex-shrink:0;justify-content:center;padding:.5rem}.doctor-menu-text{display:flex;flex-direction:column;min-width:0}.doctor-menu-text h5{color:var(--color-primary);font-size:1.125rem;font-weight:700;line-height:1.25}.doctor-menu-text span{color:var(--color-text-muted);font-size:.75rem;font-weight:500;line-height:1rem}.doctor-menu-options{display:flex;flex:1 1;flex-direction:column;gap:.5rem;margin-top:2rem}.doctor-side-menu-option{align-items:center;background:#0000;border:none;border-radius:.75rem;box-sizing:border-box;color:var(--color-text-muted);cursor:pointer;display:flex;font-weight:500;gap:.75rem;min-height:3rem;padding:.75rem 1rem;text-align:left;transition:all .3s ease-in-out;width:100%}.doctor-side-menu-option:hover{background-color:var(--color-disabled-bg-light)}.doctor-side-menu-active{background-color:var(--color-primary);color:var(--color-surface)}.doctor-side-menu-active:hover{background-color:var(--color-primary-hover)}.doctor-disabled-menu-option{cursor:default;opacity:.7}.doctor-disabled-menu-option:hover{background-color:initial}.doctor-user-info-wrapper{border-top:1px solid var(--color-border);margin-top:1rem;padding-top:1rem}.doctor-user-info{align-items:center;display:flex;gap:.75rem;padding:0 .5rem}.doctor-user-avatar{align-items:center;background:var(--color-primary);border-radius:50%;color:var(--color-surface);display:flex;flex-shrink:0;font-weight:700;height:2.5rem;justify-content:center;width:2.5rem}.doctor-user-details{display:flex;flex:1 1;flex-direction:column;min-width:0}.doctor-user-details h5{color:var(--color-text-strong);font-size:.875rem;font-weight:700;line-height:1.25rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.doctor-user-details span{color:var(--color-text-muted);font-size:.75rem;line-height:1rem}.doctor-mobile-user{display:none}@media (min-width:768px) and (max-width:1023px){.doctor-panel-side-menu{min-width:6rem;padding:1rem .75rem;width:6rem}.doctor-menu-logo{justify-content:center;padding:0}.doctor-menu-text{display:none}.doctor-menu-options{align-items:center;margin-top:2rem}.doctor-side-menu-option{gap:0;justify-content:center;padding:.875rem;width:100%}.doctor-side-menu-option span{display:none}.doctor-user-info{justify-content:center;padding:0}.doctor-user-details,.doctor-user-info .logout-button{display:none}}@media (max-width:767px){.doctor-panel-side-menu{border-bottom:1px solid var(--color-border);border-right:none;gap:.75rem;padding:.25rem 1rem 1rem}.doctor-menu-top{align-items:center;display:flex;gap:1rem;justify-content:space-between}.doctor-menu-logo{min-width:0;padding:0}.doctor-menu-text h5{font-size:.88rem}.doctor-menu-text span{font-size:.6875rem}.doctor-mobile-user{align-items:center;display:flex;flex-shrink:0;gap:.5rem}.doctor-mobile-user .logout-button{background-color:var(--color-background);border-radius:.625rem;height:2.25rem;width:2.25rem}.doctor-menu-options{flex:initial;flex-direction:row;gap:.5rem;margin-top:0;overflow-x:auto;padding-bottom:.25rem}.doctor-menu-options::-webkit-scrollbar{height:4px}.doctor-side-menu-option{border-radius:.875rem;justify-content:center;min-width:max-content;padding:.75rem 1rem;white-space:nowrap}.doctor-user-info-wrapper{display:none}}.appointment-confirmation-page{align-items:center;background:radial-gradient(circle at top left,#ff44001f,#0000 28%),radial-gradient(circle at bottom right,#f973161f,#0000 24%),linear-gradient(135deg,var(--color-background) 0,#fffdfb 100%);display:flex;justify-content:center;min-height:100vh;overflow:hidden;padding:24px;position:relative}.appointment-confirmation-overlay{-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);inset:0;position:absolute}.appointment-confirmation-card{background:#fffffff7;border:1px solid var(--color-border);border-radius:28px;box-shadow:0 24px 60px #1f16121f;display:flex;flex-direction:column;gap:28px;max-width:680px;padding:32px;position:relative;width:100%;z-index:1}.appointment-confirmation-brand{align-items:center;display:flex;gap:16px}.brand-icon{align-items:center;background:linear-gradient(135deg,var(--color-primary) 0,var(--color-primary-hover) 100%);border-radius:18px;box-shadow:0 14px 32px var(--color-primary-shadow);color:#fff;display:flex;height:58px;justify-content:center;width:58px}.brand-icon svg{font-size:1.9rem}.brand-text{display:flex;flex-direction:column;gap:4px}.brand-text strong{color:var(--color-text-strong);font-size:1.45rem;line-height:1.2}.brand-text span{color:var(--color-text-muted);font-size:.96rem}.appointment-confirmation-status{align-items:center;display:flex;justify-content:center}.status-icon{height:100px!important;width:100px!important}.status-icon.success{color:#16a34a;filter:drop-shadow(0 10px 24px rgba(22,163,74,.22))}.status-icon.error{color:#dc2626;filter:drop-shadow(0 10px 24px rgba(220,38,38,.18))}.confirmation-loader-wrapper{align-items:center;display:flex;justify-content:center;min-height:100px}.appointment-confirmation-content{text-align:center}.appointment-confirmation-content h1{color:var(--color-text-strong);font-size:2rem;font-weight:800;letter-spacing:-.02em;line-height:1.15;margin:0 0 14px}.appointment-confirmation-content p{color:var(--color-text-muted);font-size:1.02rem;line-height:1.7;margin:0}.appointment-confirmation-note{background:#f8fafc;border:1px solid #dbe3ee;border-radius:16px;color:#475569;font-size:.95rem;line-height:1.6;margin-top:18px;padding:14px 16px}.appointment-confirmation-note--warning{background:#fff4ed;border-color:#ffd8c2;color:#9a3412}.appointment-confirmation-note-header{align-items:center;display:flex;gap:10px;margin-bottom:10px}.appointment-confirmation-note-header svg{font-size:1.15rem}.appointment-confirmation-step-list{grid-gap:8px;display:grid;gap:8px;margin:0;padding-left:18px}.appointment-confirmation-step-list li{line-height:1.6}.appointment-confirmation-actions{display:flex;flex-wrap:wrap;gap:14px;justify-content:center}.primary-action-button,.secondary-action-button{align-items:center;border-radius:14px;display:inline-flex;font-size:.96rem;font-weight:700;gap:10px;justify-content:center;min-height:48px;padding:0 18px;text-decoration:none;transition:transform .18s ease,box-shadow .18s ease,background .18s ease,border-color .18s ease}.primary-action-button{background:linear-gradient(135deg,var(--color-primary) 0,var(--color-primary-hover) 100%);box-shadow:0 12px 24px var(--color-primary-shadow);color:#fff}.primary-action-button:hover{box-shadow:0 16px 28px var(--color-primary-shadow);transform:translateY(-1px)}.secondary-action-button{background:#fff;border:1px solid var(--color-border);color:var(--color-text)}.secondary-action-button:hover{background:var(--color-background);border-color:var(--color-border);transform:translateY(-1px)}.appointment-confirmation-footer{border-top:1px solid var(--color-border-light);padding-top:6px;text-align:center}.appointment-confirmation-footer span{color:var(--color-text-muted);font-size:.92rem;line-height:1.6}@media (max-width:640px){.appointment-confirmation-page{padding:16px}.appointment-confirmation-card{border-radius:22px;gap:24px;padding:24px 20px}.appointment-confirmation-brand{align-items:flex-start}.appointment-confirmation-content h1{font-size:1.6rem}.appointment-confirmation-content p{font-size:.96rem}.primary-action-button,.secondary-action-button{width:100%}}.doctor-panel-content{display:flex;flex-direction:column;gap:2rem;padding:2rem}.doctor-dashboard-topbar{align-items:flex-start;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between}.doctor-dashboard-topbar h1{color:var(--color-text-strong);font-size:1.875rem;font-weight:800;letter-spacing:-.025em;line-height:2.25rem;margin:0}.doctor-dashboard-topbar p{color:var(--color-text-muted);font-size:1rem;margin:8px 0 0}.doctor-dashboard-loading{display:flex;justify-content:center;padding:60px 0}.doctor-profile-avatar{flex-shrink:0;font-size:2rem;font-weight:700}.doctor-profile-info{gap:6px}.doctor-profile-name-row{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.doctor-profile-name-row h2{color:var(--color-text-strong);font-size:2rem;margin:0}.doctor-profile-info p{color:var(--color-text);margin:0}.doctor-profile-info span{color:var(--color-text-muted)}.doctor-profile-badge{background:#eef4ff;border-radius:999px;color:var(--color-primary);display:inline-flex;font-size:.82rem;font-weight:700;padding:6px 10px}.doctor-dashboard-metrics-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(3,minmax(220px,1fr))}.doctor-dashboard-metric-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:18px;box-shadow:0 2px 8px #1018280a;padding:24px}.doctor-metric-card-top{align-items:flex-start;display:flex;gap:16px;justify-content:space-between;margin-bottom:18px}.doctor-metric-card-top span{color:var(--color-text-muted);font-size:1rem;font-weight:500}.doctor-dashboard-metric-card strong{color:var(--color-text-strong);font-size:2.2rem;font-weight:700}.doctor-dashboard-metric-card p{color:var(--color-primary);margin:8px 0 0}.doctor-metric-icon{align-items:center;border-radius:14px;display:flex;height:52px;justify-content:center;width:52px}.doctor-metric-icon.blue{background:#eef4ff;color:var(--color-primary)}.doctor-metric-icon.light{background:#eff6ff;color:var(--color-primary)}.doctor-metric-icon.yellow{background:#fff7ed;color:#d97706}.doctor-dashboard-main-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:minmax(0,2fr) minmax(320px,1fr)}.doctor-dashboard-section-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:18px;box-shadow:0 2px 8px #1018280a;padding:24px}.doctor-dashboard-section-header{align-items:center;display:flex;gap:12px;justify-content:space-between;margin-bottom:18px}.doctor-dashboard-section-header h2{color:var(--color-text-strong);font-size:1.5rem;margin:0}.doctor-dashboard-link-button{background:#0000;border:none;color:var(--color-primary);cursor:pointer;font-weight:700}.doctor-weekly-chart{min-height:320px;width:100%}.doctor-weekly-chart .recharts-wrapper{font-family:inherit}.doctor-dashboard-upcoming-list{display:flex;flex-direction:column;gap:16px}.doctor-dashboard-empty-card,.doctor-dashboard-upcoming-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:16px;padding:18px}.doctor-dashboard-upcoming-card{grid-gap:14px;align-items:center;display:grid;gap:14px;grid-template-columns:52px minmax(0,1fr) auto}.doctor-dashboard-upcoming-avatar{align-items:center;background:#eef4ff;border-radius:50%;color:var(--color-primary);display:flex;font-weight:700;height:48px;justify-content:center;width:48px}.doctor-dashboard-upcoming-main{display:flex;flex-direction:column;gap:6px;min-width:0}.doctor-dashboard-upcoming-main h3{color:var(--color-text-strong);font-size:1rem;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.doctor-dashboard-upcoming-meta{color:var(--color-text-muted);display:flex;flex-wrap:wrap;gap:10px}.doctor-dashboard-upcoming-meta span{align-items:center;display:inline-flex;gap:6px}.doctor-dashboard-upcoming-status{display:flex;justify-content:flex-end}.doctor-status-pill{border-radius:999px;display:inline-flex;font-size:.82rem;font-weight:700;padding:6px 10px}.doctor-status-scheduled{background:#e0f2fe;color:#0369a1}.doctor-status-confirmed{background:#dcfce7;color:#15803d}.doctor-status-rescheduled{background:#ede9fe;color:#6d28d9}.doctor-status-completed{background:#ecfdf3;color:#027a48}.doctor-status-canceled{background:#fee2e2;color:#b91c1c}.doctor-status-default{background:var(--color-border-light);color:var(--color-text-muted)}@media (max-width:1200px){.doctor-dashboard-main-grid{grid-template-columns:1fr}}@media (max-width:900px){.doctor-dashboard-metrics-grid{grid-template-columns:1fr}}@media (max-width:768px){.doctor-panel-content{padding:1rem}.doctor-dashboard-metric-card,.doctor-dashboard-section-card{padding:18px}.doctor-dashboard-topbar h1,.doctor-profile-name-row h2{font-size:1.6rem}.doctor-dashboard-upcoming-card{grid-template-columns:1fr}.doctor-dashboard-upcoming-status{justify-content:flex-start}.doctor-weekly-chart{gap:10px}.doctor-weekly-chart-bar-area{max-width:100%}}.doctor-appointments-topbar{align-items:flex-start;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between}.doctor-appointments-topbar h1{color:var(--color-text-strong);font-size:1.875rem;font-weight:800;letter-spacing:-.025em;line-height:2.25rem;margin:0}.doctor-appointments-topbar p{color:var(--color-text-muted);font-size:1rem;margin:8px 0 0}.doctor-appointments-filters-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:18px;box-shadow:0 2px 8px #1018280a;display:flex;flex-direction:column;gap:1rem;padding:24px}.doctor-appointments-filters-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1.4fr 1fr 1fr 1fr}.doctor-field-group{display:flex;flex-direction:column;gap:8px}.doctor-field-group label{color:var(--color-text);font-size:.9rem;font-weight:600}.doctor-field-group input,.doctor-field-group select{background:var(--color-input-surface);border:1px solid var(--color-border);border-radius:12px;color:var(--color-text-strong);height:44px;outline:none;padding:0 14px}.doctor-field-group input:focus-visible,.doctor-field-group select:focus-visible{border-color:var(--color-primary);box-shadow:0 0 0 1px var(--color-primary);outline:none}.doctor-appointments-filter-actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:flex-end}.doctor-filter-primary-button,.doctor-filter-secondary-button,.doctor-finish-button,.doctor-pagination-buttons button{align-items:center;border-radius:12px;cursor:pointer;display:inline-flex;font-size:15px;font-weight:600;gap:8px;height:44px;justify-content:center;padding:0 18px;transition:.2s}.doctor-filter-primary-button{background:var(--color-primary);border:none;color:var(--color-surface)}.doctor-filter-primary-button:hover{background:var(--color-primary-hover)}.doctor-filter-secondary-button{color:var(--color-text-strong)}.doctor-appointments-table-wrapper,.doctor-filter-secondary-button{background:var(--color-surface);border:1px solid var(--color-border)}.doctor-appointments-table-wrapper{border-radius:18px;box-shadow:0 2px 8px #1018280a;overflow:hidden}.doctor-appointments-loading{display:flex;justify-content:center;padding:60px 0}.doctor-appointments-table-scroll{overflow-x:auto}.doctor-appointments-table{border-collapse:collapse;min-width:1100px;width:100%}.doctor-appointments-table td,.doctor-appointments-table th{border-bottom:1px solid var(--color-border);padding:18px 20px;text-align:left;vertical-align:middle}.doctor-appointments-table th{color:var(--color-text-muted);font-size:.9rem;text-transform:uppercase}.doctor-appointments-table td{color:var(--color-text-strong)}.doctor-appointments-empty{color:var(--color-text-muted);text-align:center}.doctor-finish-button{background:#16a34a;border:none;color:#fff}.doctor-finish-button:hover:not(:disabled){background:#15803d}.doctor-finish-button:disabled{cursor:not-allowed;opacity:.5}.doctor-appointments-pagination{align-items:center;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;padding:18px 20px}.doctor-appointments-pagination-left{color:var(--color-text)}.doctor-appointments-pagination-right{align-items:center;display:flex;flex-wrap:wrap;gap:18px}.doctor-pagination-size{align-items:center;display:flex;gap:10px}.doctor-pagination-size label{color:var(--color-text);font-size:.92rem}.doctor-pagination-size select{background:var(--color-input-surface);border:1px solid var(--color-border);border-radius:10px;height:40px;padding:0 12px}.doctor-pagination-buttons{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.doctor-pagination-buttons button{background:var(--color-surface);border:1px solid var(--color-border);color:var(--color-text-strong);height:40px}.doctor-pagination-buttons button:disabled{cursor:not-allowed;opacity:.5}@media (max-width:1100px){.doctor-appointments-filters-grid{grid-template-columns:1fr 1fr}}@media (max-width:768px){.doctor-appointments-filters-card{padding:18px}.doctor-appointments-filters-grid{grid-template-columns:1fr}.doctor-appointments-filter-actions{justify-content:stretch}.doctor-filter-primary-button,.doctor-filter-secondary-button{width:100%}.doctor-appointments-pagination,.doctor-appointments-pagination-right{align-items:flex-start;flex-direction:column}.doctor-appointments-pagination-right{width:100%}}.theme-wrapper{padding:2rem 2rem 1rem}.theme-configuration-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(1,minmax(0,1fr))}.theme-grid-element{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;padding:20px}.theme-grid-element .header{align-items:center;display:flex;gap:8px}.theme-grid-element .header span{color:var(--color-text-strong);font-size:14px;font-weight:700;letter-spacing:.1rem;line-height:20px;text-transform:uppercase}.theme-grid-element .header svg{color:var(--color-primary)}.visual-identity .body{display:flex;flex-direction:column;margin-top:15px}.visual-identity-file-dropzone{background-color:var(--color-background);border:2px dashed var(--color-primary-shadow);border-radius:10px;display:flex;flex-direction:column;font-size:14px;justify-content:center;margin-bottom:15px;padding:25px;text-align:center;transition:.3s ease;width:auto}.visual-identity-file-dropzone svg{color:var(--color-primary);margin:0 auto}.visual-identity-file-dropzone.drag-over{background-color:var(--color-primary-shadow);border-color:var(--color-primary)}.visual-identity-file-preview{width:100%}.visual-identity-file-preview .file-info img{border:0;max-height:70px;max-width:135px;min-height:35px;min-width:100px;object-fit:contain}.color-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:1fr}.color-grid,.color-grid>*{max-width:100%;min-width:0}.theme-configuration-footer{align-items:center;background-color:var(--color-surface);border-top:1px solid var(--color-border);display:flex;justify-content:space-between;margin-top:15px;min-height:60px;padding:8px 24px}.theme-configuration-actions{align-items:center;display:flex;gap:12px;overflow-x:auto}.theme-configuration-actions .submit-button{background-color:var(--color-primary);border-radius:10px;color:var(--color-surface);gap:10px;transition:box-shadow .4s ease-in-out}.theme-configuration-actions .cancel-button,.theme-configuration-actions .submit-button{align-items:center;cursor:pointer;display:flex;font-size:16px;font-weight:700;gap:8px;padding:12px 16px}.theme-configuration-actions .cancel-button{border:1px solid var(--color-border);border-radius:10px;color:var(--color-text);height:43px;min-width:118px}.theme-configuration-actions .submit-button:hover{box-shadow:0 0 12px 5px var(--color-primary-shadow)}.not-saved-info{align-items:center;display:flex;gap:10px}.not-saved-info svg{color:#f5a00f}.not-saved-info span{color:var(--color-info);font-size:14px;font-weight:500;line-height:20px}.visual-identity-upload-group{display:flex;flex-direction:column;gap:12px}.current-theme-image{max-width:220px}.current-theme-favicon{background:var(--color-surface);border:1px solid var(--color-border);border-radius:10px;height:48px;object-fit:contain;padding:6px;width:48px}.danger-outline-button{align-items:center;background:#0000;border:1px solid #ef4444;border-radius:.75rem;color:#ef4444;cursor:pointer;display:inline-flex;font-weight:600;gap:.5rem;height:2.5rem;padding:0 .9rem;transition:.2s ease}.danger-outline-button:hover:not(:disabled){background:#ef444414}.danger-outline-button:disabled{cursor:not-allowed;opacity:.6}.visual-identity-upload-header{align-items:center;display:flex;justify-content:space-between}.theme-preset-list{display:flex;flex-direction:column;gap:12px;max-height:320px;overflow-y:auto}.theme-preset-item{background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;cursor:pointer;padding:12px;text-align:left;transition:all .2s ease}.theme-preset-item.active{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-shadow)}.theme-preset-item strong{color:var(--color-text-strong);display:block}.theme-preset-item span{color:var(--color-text-muted);display:block;font-size:.92rem;margin-top:4px}.theme-preset-toolbar{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:16px;margin-top:12px}.theme-preset-toolbar .submit-button{align-items:center;background-color:var(--color-primary);border-radius:8px;color:var(--color-surface);cursor:pointer;display:flex;font-weight:700;gap:8px;padding:6px 12px}.theme-input,.theme-textarea{background:var(--color-input-surface);border:1px solid var(--color-border);border-radius:10px;box-sizing:border-box;color:var(--color-text);padding:10px 12px;width:100%}.theme-textarea{min-height:90px;resize:vertical}.theme-badges{display:flex;flex-wrap:wrap;gap:8px}.theme-badge{align-items:center;background:var(--color-border-light);border-radius:999px;color:var(--color-text-strong);display:inline-flex;font-size:.75rem;font-weight:600;padding:4px 10px}@media (min-width:768px){.current-theme-image{max-width:260px}}@media (min-width:1440px){.theme-configuration-grid{grid-gap:24px;align-items:stretch;display:grid;gap:24px;grid-template-areas:"visual preview" "colors preview";grid-template-columns:1fr 1fr}.visual-identity{grid-area:visual}.system-colors{grid-area:colors}.theme-preview{grid-area:preview}.theme-grid-element{padding:24px}.visual-identity .body{gap:10px}.visual-identity-file-preview{height:100%;width:240px}.visual-identity-file-preview .file-info{align-items:center;display:flex;flex-direction:column;justify-content:center}.visual-identity-file-preview .file-info .file-data{text-align:center}.visual-identity-file-preview .file-info .file-data .file-subinfo{margin:3px auto 0}.visual-identity-file-dropzone{margin-bottom:0}.color-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:1fr 1fr}.current-theme-image{max-width:320px}}@media (min-width:1800px){.current-theme-image{max-width:360px}}.theme-color-input{display:flex;flex-direction:column;gap:8px;margin-top:10px}.theme-color-input label{font-size:14px;font-weight:600;line-height:20px}.color-input-wrapper{align-items:center;display:flex;gap:8px}.color-input-wrapper .color{border-radius:8px;height:42px;width:42px}.color-input-text-wrapper{align-items:center;display:flex;position:relative;width:100%}.color-input-text-wrapper svg{color:var(--color-info);height:17px;margin-left:5px;position:absolute;width:17px}.color-input-wrapper .text{background-color:var(--color-disabled-bg-light);border:1px solid var(--color-border);border-radius:8px;font-size:16px;font-weight:400;padding:8px 12px 8px 24px;width:100%}.theme-preview-card{background:var(--color-background);border:1px solid var(--color-border);border-radius:12px;height:calc(100% - 40px);overflow:hidden;padding:20px}.theme-preview-card *{box-sizing:border-box;transition:background .2s ease,color .2s ease,border-color .2s ease,box-shadow .2s ease}.preview-shell{grid-gap:20px;display:grid;gap:20px;grid-template-columns:220px 1fr;height:100%}.preview-sidebar{background:var(--color-surface);border:1px solid var(--color-border);border-radius:16px;display:flex;flex-direction:column;gap:20px;padding:18px}.preview-sidebar-logo{align-items:center;background:var(--color-primary);border-radius:10px;box-shadow:0 4px 12px var(--color-primary-shadow);color:#fff;display:flex;font-weight:700;height:44px;justify-content:center}.preview-sidebar-nav{display:flex;flex-direction:column;gap:10px}.preview-sidebar-item{align-items:center;background:#0000;border:1px solid #0000;border-radius:10px;color:var(--color-text);display:flex;font-size:14px;gap:10px;min-height:40px;padding:0 12px}.preview-sidebar-item.active{background:var(--color-primary-shadow);border-color:var(--color-primary);color:var(--color-primary);font-weight:600}.preview-sidebar-icon{background:currentColor;border-radius:4px;height:12px;opacity:.8;width:12px}.preview-main{display:flex;flex-direction:column;gap:16px;min-width:0}.preview-page-header{align-items:flex-start;display:flex;gap:16px;justify-content:space-between}.preview-page-header h3{color:var(--color-text);color:var(--color-text-strong,var(--color-text));font-size:20px;margin:0}.preview-page-header p{color:var(--color-text-muted);font-size:13px;margin:4px 0 0}.preview-page-actions{display:flex;flex-wrap:wrap;gap:10px}.btn-primary,.btn-secondary{border:1px solid #0000;border-radius:10px;cursor:default;font-size:13px;font-weight:600;height:38px;padding:0 14px}.btn-primary{background:var(--color-primary);box-shadow:0 4px 12px var(--color-primary-shadow);color:#fff}.btn-primary:hover{background:var(--color-primary-hover)}.btn-secondary{background:var(--color-surface);border-color:var(--color-border);color:var(--color-primary)}.preview-filters{grid-gap:12px;align-items:end;background:var(--color-surface);border:1px solid var(--color-border);border-radius:16px;display:grid;gap:12px;grid-template-columns:1.4fr 1fr 1fr auto;padding:16px}.preview-field{display:flex;flex-direction:column;gap:6px}.preview-field label{color:var(--color-text-muted);font-size:12px}.preview-input{align-items:center;background:var(--color-background);border:1px solid var(--color-border);border-radius:10px;color:var(--color-text);display:flex;min-height:40px;padding:10px 12px}.preview-stats{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(3,1fr)}.preview-stat-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:16px;display:flex;flex-direction:column;gap:6px;padding:16px}.preview-stat-card.highlight{border-color:var(--color-primary);box-shadow:0 0 0 1px var(--color-primary-shadow)}.preview-stat-label{color:var(--color-text-muted);font-size:12px}.preview-stat-card strong{color:var(--color-text);color:var(--color-text-strong,var(--color-text));font-size:26px;line-height:1}.preview-stat-card small{color:var(--color-text-muted);font-size:12px}.preview-table-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:16px;padding:16px}.preview-table-header{align-items:center;color:var(--color-text);display:flex;font-weight:600;justify-content:space-between;margin-bottom:12px}.preview-table-link{color:var(--color-primary);font-size:13px}.preview-table{border-collapse:collapse;font-size:13px;width:100%}.preview-table thead th{border-bottom:1px solid var(--color-border);color:var(--color-text-muted);font-weight:600;padding:10px 8px;text-align:left}.preview-table tbody td{border-bottom:1px solid var(--color-border);color:var(--color-text);padding:12px 8px}.preview-badge{align-items:center;border:1px solid #0000;border-radius:999px;display:inline-flex;font-size:12px;font-weight:600;justify-content:center;min-height:26px;padding:0 10px}.preview-badge.success{background:#22c55e1f;border-color:#22c55e33;color:#15803d}.preview-badge.warning{background:#f59e0b1f;border-color:#f59e0b33;color:#b45309}.preview-badge.danger{background:#ef44441f;border-color:#ef444433;color:#b91c1c}.preview-pagination{align-items:center;color:var(--color-text-muted);display:flex;font-size:12px;gap:12px;justify-content:space-between;margin-top:14px}.preview-pagination-buttons{display:flex;flex-wrap:wrap;gap:8px}.preview-page-button{background:var(--color-background);border:1px solid var(--color-border);border-radius:8px;color:var(--color-text);height:32px;min-width:34px;padding:0 10px}.preview-page-button.active{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.preview-feedback-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:1fr 1fr 1.3fr}.preview-alert,.preview-modal{background:var(--color-surface);border:1px solid var(--color-border);border-radius:16px;padding:14px}.preview-alert{color:var(--color-text);font-size:13px}.preview-alert.success{border-left:4px solid #22c55e}.preview-alert.warning{border-left:4px solid #f59e0b}.preview-modal strong{color:var(--color-text);color:var(--color-text-strong,var(--color-text));display:block;margin-bottom:6px}.preview-modal p{color:var(--color-text-muted);font-size:13px;margin:0}.preview-modal-actions{display:flex;gap:10px;margin-top:14px}@media (max-width:1400px){.preview-shell{grid-template-columns:1fr}.preview-sidebar{display:none}.preview-feedback-grid,.preview-filters,.preview-stats{grid-template-columns:1fr}}.admin-appointments-topbar{display:flex;flex-direction:column;gap:1rem}.admin-appointments-topbar h1{color:var(--color-text-strong);font-size:1.5rem;font-weight:800;letter-spacing:-.02em;line-height:1.9rem;margin:0}.admin-appointments-topbar p{color:var(--color-text-muted);font-size:.95rem;line-height:1.45rem;margin:.35rem 0 0}.admin-appointments-new-button{align-items:center;background:var(--color-primary);border:none;border-radius:12px;color:var(--color-surface);cursor:pointer;display:inline-flex;font-size:.95rem;font-weight:700;gap:.5rem;justify-content:center;min-height:44px;padding:.85rem 1rem;transition:background .2s ease,transform .2s ease,box-shadow .2s ease;width:100%}.admin-appointments-new-button:hover{background:var(--color-primary-hover)}.admin-appointments-new-button:focus-visible{border-color:var(--color-primary);box-shadow:0 0 0 1px var(--color-primary);outline:none}.admin-appointments-filters-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:18px;box-shadow:0 2px 8px #1018280a;display:flex;flex-direction:column;gap:1rem;padding:1rem}.admin-appointments-filters-grid{grid-gap:.875rem;display:grid;gap:.875rem;grid-template-columns:1fr}.admin-field-group{display:flex;flex-direction:column;gap:.45rem}.admin-field-group label{color:var(--color-text);font-size:.9rem;font-weight:600}.admin-field-group input,.admin-field-group select{background:var(--color-input-surface);border:1px solid var(--color-border);border-radius:12px;box-sizing:border-box;color:var(--color-text-strong);font-size:.95rem;height:44px;outline:none;padding:0 .9rem;transition:border-color .2s ease,box-shadow .2s ease,background .2s ease;width:100%}.admin-field-group input::placeholder{color:var(--color-text-disabled)}.admin-field-group input:focus,.admin-field-group select:focus{border-color:var(--color-primary);box-shadow:0 0 0 4px var(--color-primary-shadow)}.admin-field-group input:disabled,.admin-field-group select:disabled{background:var(--color-disabled-bg-light);color:var(--color-text-disabled);cursor:not-allowed}.admin-appointments-filter-actions{display:flex;flex-direction:column-reverse;gap:.75rem}.admin-filter-primary-button,.admin-filter-secondary-button,.admin-pagination-buttons button,.admin-table-icon-button{align-items:center;border-radius:12px;cursor:pointer;display:inline-flex;font-size:.95rem;font-weight:600;gap:.5rem;justify-content:center;min-height:44px;transition:background .2s ease,border-color .2s ease,color .2s ease,box-shadow .2s ease,opacity .2s ease}.admin-filter-primary-button,.admin-filter-secondary-button{padding:0 1rem;width:100%}.admin-filter-primary-button{background:var(--color-primary);border:none;color:var(--color-surface)}.admin-filter-primary-button:hover{background:var(--color-primary-hover)}.admin-filter-primary-button:focus-visible{border-color:var(--color-primary);box-shadow:0 0 0 1px var(--color-primary);outline:none}.admin-filter-secondary-button{background:var(--color-surface);border:1px solid var(--color-border);color:var(--color-text-strong)}.admin-filter-secondary-button:hover{border-color:var(--color-primary);color:var(--color-primary)}.admin-filter-secondary-button:focus-visible{border-color:var(--color-primary);box-shadow:0 0 0 1px var(--color-primary);outline:none}.admin-appointments-table-wrapper{background:var(--color-surface);border:1px solid var(--color-border);border-radius:18px;box-shadow:0 2px 8px #1018280a;overflow:hidden}.admin-appointments-loading{align-items:center;display:flex;justify-content:center;padding:3rem 1rem}.admin-appointments-table-scroll{-webkit-overflow-scrolling:touch;overflow-x:auto;width:100%}.admin-appointments-table{border-collapse:collapse;min-width:980px;width:100%}.admin-appointments-table td,.admin-appointments-table th{border-bottom:1px solid var(--color-border);padding:1rem;text-align:left;vertical-align:middle}.admin-appointments-table th{background:var(--color-surface);color:var(--color-text-muted);font-size:.8rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase;white-space:nowrap}.admin-appointments-table td{color:var(--color-text-strong);font-size:.95rem}.admin-appointments-empty{color:var(--color-text-muted);padding:2rem 1rem!important;text-align:center}.admin-appointment-main-text{display:flex;flex-direction:column;gap:.2rem}.admin-appointment-main-text strong{color:var(--color-text-strong);font-size:.95rem;font-weight:700}.admin-appointment-main-text span{color:var(--color-text-muted);font-size:.85rem}.admin-appointment-actions{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem}.admin-table-icon-button{background:var(--color-surface);border:1px solid var(--color-border);color:var(--color-text-strong);min-width:44px;padding:0;width:44px}.admin-table-icon-button:hover{background:var(--color-border-light);border-color:var(--color-primary);color:var(--color-primary)}.admin-table-icon-button:focus-visible{border-color:var(--color-primary);box-shadow:0 0 0 1px var(--color-primary);outline:none}.admin-table-icon-button.danger{color:#dc2626}.admin-table-icon-button.danger:hover{background:#fef2f2;border-color:#fecaca;color:#b91c1c}.admin-table-icon-button:disabled{background:var(--color-disabled-bg-light);border-color:var(--color-border);color:var(--color-text-disabled);cursor:not-allowed;opacity:.45}.admin-appointments-pagination{align-items:flex-start;display:flex;flex-direction:column;gap:1rem;padding:1rem}.admin-appointments-pagination-left{color:var(--color-text);font-size:.92rem}.admin-appointments-pagination-left strong{color:var(--color-text-strong)}.admin-appointments-pagination-right{gap:.875rem}.admin-appointments-pagination-right,.admin-pagination-size{align-items:flex-start;display:flex;flex-direction:column;width:100%}.admin-pagination-size{gap:.45rem}.admin-pagination-size label{color:var(--color-text);font-size:.9rem;font-weight:600}.admin-pagination-size select{background:var(--color-input-surface);border:1px solid var(--color-border);border-radius:10px;color:var(--color-text-strong);height:40px;max-width:140px;outline:none;padding:0 .75rem;width:100%}.admin-pagination-size select:focus{border-color:var(--color-primary);box-shadow:0 0 0 4px var(--color-primary-shadow)}.admin-pagination-buttons{align-items:stretch;display:flex;flex-direction:column;gap:.75rem;width:100%}.admin-pagination-buttons span{color:var(--color-text);font-size:.92rem;line-height:1.4rem}.admin-pagination-buttons strong{color:var(--color-text-strong)}.admin-pagination-buttons button{background:var(--color-surface);border:1px solid var(--color-border);color:var(--color-text-strong);padding:0 1rem;width:100%}.admin-pagination-buttons button:hover:not(:disabled){border-color:var(--color-primary);color:var(--color-primary)}.admin-pagination-buttons button:focus-visible{border-color:var(--color-primary);box-shadow:0 0 0 1px var(--color-primary);outline:none}.admin-pagination-buttons button:disabled{background:var(--color-disabled-bg-light);color:var(--color-text-disabled);cursor:not-allowed;opacity:.5}@media (min-width:640px){.admin-appointments-topbar h1{font-size:1.75rem;line-height:2.1rem}.admin-appointments-filters-card{padding:1.25rem}.admin-appointments-filters-grid{grid-template-columns:1fr 1fr}.admin-appointments-filter-actions{flex-direction:row;flex-wrap:wrap;justify-content:flex-end}.admin-filter-primary-button,.admin-filter-secondary-button{min-width:140px;width:auto}.admin-appointments-pagination{padding:1rem 1.25rem}.admin-pagination-buttons{align-items:center;flex-direction:row;flex-wrap:wrap}.admin-pagination-buttons button{width:auto}}@media (min-width:900px){.admin-appointments-topbar{align-items:flex-start;flex-direction:row;flex-wrap:wrap;gap:1rem;justify-content:space-between}.admin-appointments-new-button{min-width:190px;width:auto}.admin-appointments-filters-card{padding:1.5rem}.admin-appointments-filters-grid{gap:1rem;grid-template-columns:1.4fr 1fr 1fr 1fr}.admin-appointments-table td,.admin-appointments-table th{padding:1.1rem 1.25rem}.admin-appointments-pagination{align-items:center;flex-direction:row;justify-content:space-between}.admin-appointments-pagination-right{align-items:center;flex-direction:row;gap:1.2rem;width:auto}.admin-pagination-size{gap:.65rem}.admin-pagination-buttons,.admin-pagination-size{align-items:center;flex-direction:row;width:auto}}@media (min-width:1200px){.admin-appointments-topbar h1{font-size:1.875rem;line-height:2.25rem}.admin-appointments-topbar p{font-size:1rem}}.admin-appointments-topbar-helper{color:var(--color-primary)!important;font-weight:600;margin-top:.6rem!important}.receptionist-dashboard-topbar{align-items:flex-start;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between}.receptionist-dashboard-topbar h1{color:var(--color-text-strong);font-size:1.875rem;font-weight:800;letter-spacing:-.025em;line-height:2.25rem;margin:0}.receptionist-dashboard-topbar p{color:#667085;font-size:1rem;margin:8px 0 0}.receptionist-dashboard-last-updated{color:#667085;display:inline-block;font-size:.88rem;font-weight:600;margin-top:10px}.receptionist-dashboard-refresh-button{align-items:center;background:#eef4ff;border:none;border-radius:12px;color:var(--color-primary);cursor:pointer;display:inline-flex;font-size:15px;font-weight:700;gap:8px;height:44px;padding:0 18px;transition:.2s}.receptionist-dashboard-refresh-button:disabled{cursor:not-allowed;opacity:.7}.spinning-icon{animation:receptionist-dashboard-spin 1s linear infinite}@keyframes receptionist-dashboard-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.receptionist-dashboard-loading{display:flex;justify-content:center;padding:60px 0}.receptionist-dashboard-metrics-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:minmax(260px,340px)}.receptionist-dashboard-metric-card{background:var(--color-surface);border:1px solid #eaecf0;border-radius:18px;box-shadow:0 2px 8px #1018280a;padding:24px}.receptionist-metric-card-top{align-items:flex-start;display:flex;gap:16px;justify-content:space-between;margin-bottom:18px}.receptionist-metric-icon{align-items:center;border-radius:14px;display:flex;height:58px;justify-content:center;width:58px}.receptionist-metric-icon.blue{background:#eef4ff;color:var(--color-primary)}.receptionist-metric-trend{align-items:center;background:#e8f7ef;border-radius:999px;color:#067647;display:inline-flex;font-size:.86rem;font-weight:700;justify-content:center;min-height:32px;padding:0 12px}.receptionist-metric-card-content{display:flex;flex-direction:column;gap:8px}.receptionist-metric-card-content span{color:#667085;font-size:1rem;font-weight:500}.receptionist-metric-card-content strong{color:#101828;font-size:2.4rem;font-weight:800;line-height:1}.receptionist-dashboard-main-card{background:var(--color-surface);border:1px solid #eaecf0;border-radius:18px;box-shadow:0 2px 8px #1018280a;padding:24px}.receptionist-dashboard-section-header{align-items:flex-start;display:flex;flex-wrap:wrap;gap:20px;justify-content:space-between;margin-bottom:24px}.receptionist-dashboard-section-header h2{color:#101828;font-size:1.1rem;margin:0}.receptionist-dashboard-section-header p{color:#667085;margin:8px 0 0}.receptionist-dashboard-filters{grid-gap:16px;display:grid;gap:16px;grid-template-columns:minmax(300px,1fr) minmax(220px,270px);max-width:760px;width:100%}.receptionist-dashboard-filter-group{display:flex;flex-direction:column;gap:8px}.receptionist-dashboard-filter-group label{color:#667085;font-size:.875rem;font-weight:700;text-transform:uppercase}.receptionist-dashboard-search{align-items:center;background:var(--color-surface);border:1px solid #d0d5dd;border-radius:12px;color:#98a2b3;display:flex;gap:12px;height:44px;padding:0 14px}.receptionist-dashboard-search input{background:#0000;border:none;color:var(--color-text-strong);font-size:15px;outline:none;width:100%}.receptionist-dashboard-filter-group select{background:var(--color-surface);border:1px solid #d0d5dd;border-radius:12px;color:var(--color-text-strong);font-size:15px;height:44px;outline:none;padding:0 14px}.receptionist-dashboard-filter-group select:focus-visible,.receptionist-dashboard-search input:focus-visible{border-color:var(--color-primary);box-shadow:0 0 0 1px var(--color-primary);outline:none}.receptionist-dashboard-table{background:var(--color-surface);border:1px solid #eaecf0;border-radius:16px;overflow:hidden}.receptionist-dashboard-table-head,.receptionist-dashboard-table-row{grid-gap:20px;align-items:center;display:grid;gap:20px;grid-template-columns:minmax(280px,2fr) minmax(120px,.8fr) minmax(180px,1.2fr) minmax(140px,.7fr);padding:18px 24px}.receptionist-dashboard-table-head{background:#f8fafc;border-bottom:1px solid #eaecf0}.receptionist-dashboard-table-head span{color:#667085;font-size:.92rem;font-weight:700;text-transform:uppercase}.receptionist-dashboard-table-head .actions{text-align:right}.receptionist-dashboard-row-wrapper+.receptionist-dashboard-row-wrapper{border-top:1px solid #eaecf0}.receptionist-dashboard-table-row{background:var(--color-surface)}.doctor-column{align-items:center;display:flex;gap:14px;min-width:0}.doctor-avatar{background:#dbeafe;border-radius:14px;font-size:1rem;height:44px;min-width:44px;width:44px}.doctor-main-info{display:flex;flex-direction:column;min-width:0}.doctor-main-info strong{color:#101828;font-size:1rem}.doctor-main-info span{color:#667085;font-size:.9rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.doctor-actions-cell{display:flex;justify-content:flex-end}.receptionist-dashboard-action-button{align-items:center;background:var(--color-primary);border:none;border-radius:10px;color:#fff;cursor:pointer;display:inline-flex;font-size:.92rem;font-weight:700;gap:6px;height:40px;padding:0 14px}.receptionist-dashboard-empty{color:#667085;padding:32px 24px;text-align:center}.receptionist-dashboard-schedule-panel{background:#fcfdff;border-top:1px solid #eaecf0;padding:24px}.receptionist-dashboard-schedule-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:minmax(280px,340px) minmax(0,1fr)}.receptionist-dashboard-calendar-card,.receptionist-dashboard-slots-card{background:var(--color-surface);border:1px solid #eaecf0;border-radius:18px;padding:24px}.receptionist-dashboard-card-header{align-items:flex-start;display:flex;gap:12px;justify-content:space-between;margin-bottom:20px}.receptionist-dashboard-card-header h3{color:#101828;font-size:1rem;margin:0}.receptionist-dashboard-card-header span{color:#667085;display:block;font-size:.92rem;margin-top:6px}.receptionist-dashboard-mini-icon{align-items:center;background:#eef4ff;border-radius:12px;color:var(--color-primary);display:flex;height:42px;justify-content:center;width:42px}.receptionist-dashboard-selected-date{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;display:flex;flex-direction:column;gap:6px;margin-top:20px;padding:14px 16px}.receptionist-dashboard-selected-date strong{color:#344054;font-size:.88rem}.receptionist-dashboard-selected-date span{color:#101828;font-weight:600;text-transform:capitalize}.receptionist-dashboard-doctor-meta{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:20px}.doctor-meta-chip{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:999px;color:#475467;display:inline-flex;font-size:.88rem;font-weight:600;gap:6px;padding:8px 12px}.receptionist-dashboard-slots-loading{display:flex;justify-content:center;padding:40px 0}.receptionist-dashboard-slots-groups{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(2,minmax(0,1fr))}.receptionist-dashboard-slot-group{background:#fbfdff;border:1px solid #eaecf0;border-radius:16px;padding:18px}.slot-group-header{align-items:center;display:flex;gap:12px;justify-content:space-between;margin-bottom:16px}.slot-group-header h4{color:#101828;font-size:1rem;margin:0}.slot-group-header span{color:#667085;font-size:.88rem;font-weight:600}.slot-list{display:flex;flex-wrap:wrap;gap:10px}.slot-chip{align-items:center;background:#eef4ff;border-radius:10px;color:var(--color-primary);display:inline-flex;font-size:.92rem;font-weight:700;gap:6px;min-height:40px;padding:0 12px}.slot-empty{color:#667085;font-size:.92rem}@media (max-width:1100px){.receptionist-dashboard-filters{grid-template-columns:1fr;max-width:100%}.receptionist-dashboard-schedule-grid,.receptionist-dashboard-slots-groups{grid-template-columns:1fr}}@media (max-width:900px){.receptionist-dashboard-table-head{display:none}.receptionist-dashboard-table-row{gap:12px;grid-template-columns:1fr}.doctor-actions-cell{justify-content:flex-start}}.users-search-box,.users-topbar{align-items:center}.users-search-box{background:var(--color-surface);border:1px solid #d0d5dd;border-radius:14px;display:flex;gap:10px;height:48px;max-width:420px;padding:0 14px;width:100%}.users-search-box svg{color:#98a2b3}.users-search-box input{background:#0000;border:none;color:#101828;font-size:15px;outline:none;width:100%}.users-search-box input:focus-visible{border-color:var(--color-primary);box-shadow:0 0 0 1px var(--color-primary);outline:none}.users-table-card{overflow:hidden;padding:0}.users-table-wrapper{overflow-x:auto;width:100%}.users-table{border-collapse:collapse;min-width:900px;width:100%}.users-table thead th{background:#f8fafc;border-bottom:1px solid #eaecf0;color:#344054;font-size:14px;font-weight:700;padding:18px 22px;text-align:left}.users-table tbody td{border-bottom:1px solid #eaecf0;color:#475467;font-size:15px;padding:20px 22px;vertical-align:middle}.user-name-cell{gap:12px}.user-avatar,.user-name-cell{align-items:center;display:flex}.user-avatar{background:#eef4ff;border-radius:12px;color:var(--color-primary);font-size:.9rem;font-weight:800;height:40px;justify-content:center;min-width:40px;width:40px}.user-name-content{display:flex;flex-direction:column;gap:4px}.user-name-content strong{color:#101828;font-size:15px}.user-name-content span{color:#667085;font-size:13px}.user-profile-badge{align-items:center;border-radius:10px;display:inline-flex;font-size:13px;font-weight:700;min-height:30px;padding:0 12px}.user-profile-badge.admin{background:#dbeafe;color:#1d4ed8}.user-profile-badge.doctor{background:#eff6ff;color:#2563eb}.user-profile-badge.receptionist{background:#ede9fe;color:#7c3aed}.user-profile-badge.client{background:#ecfdf3;color:#067647}.user-profile-badge.default{background:#f2f4f7;color:#344054}.user-status-badge{align-items:center;border-radius:10px;display:inline-flex;font-size:14px;font-weight:600;gap:8px;min-height:32px;padding:0 12px}.user-status-badge .dot{border-radius:50%;height:8px;width:8px}.user-status-badge.active{background:#dcfae6;color:#067647}.user-status-badge.active .dot{background:#12b76a}.user-status-badge.inactive{background:#f2f4f7;color:#344054}.user-status-badge.inactive .dot{background:#98a2b3}.actions-column{width:180px}.user-actions{align-items:center;display:flex;gap:6px}.user-icon-button{align-items:center;background:#0000;border:none;border-radius:10px;color:#98a2b3;cursor:pointer;display:flex;height:38px;justify-content:center;transition:.2s;width:38px}.user-icon-button:hover{background:#f2f4f7;color:#344054}.users-empty-state{color:#667085;font-weight:500;padding:32px 0;text-align:center}.users-table-footer{align-items:center;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;padding:18px 22px}.users-table-footer span{color:#667085;font-size:14px;font-weight:600}.users-stats-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(3,minmax(0,1fr))}.users-stat-card{align-items:center;display:flex;gap:16px}.users-stat-icon{align-items:center;border-radius:14px;display:flex;height:52px;justify-content:center;width:52px}.users-stat-icon.blue{background:#eef4ff;color:var(--color-primary)}.users-stat-icon.purple{background:#f4f3ff;color:#7c3aed}.users-stat-icon.green{background:#dcfae6;color:#067647}.users-stat-card span{color:#667085;display:block;font-size:14px;margin-bottom:4px}.users-stat-card strong{color:#101828;font-size:2rem;line-height:1}@media (max-width:1100px){.users-stats-grid{grid-template-columns:1fr}}@media (max-width:768px){.admin-panel-content{padding:1rem}.users-table-footer{align-items:flex-start;flex-direction:column}}.admin-user-modal{padding:32px;position:relative}.admin-user-modal-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:28px}.admin-user-modal-header h2{color:#1f2a44;font-size:2rem;font-weight:700;margin:0}.admin-user-modal-close{align-items:center;background:#0000;border:none;color:#8c99b2;cursor:pointer;display:flex;justify-content:center}.admin-user-form{display:flex;flex-direction:column;gap:20px}.admin-user-form-group{display:flex;flex-direction:column;gap:8px}.admin-user-form-group label{color:#6d7b99;font-size:.8rem;font-weight:700;letter-spacing:.04em}.admin-user-form-group input,.admin-user-form-group select{background-color:#f7f9fc;border:1px solid #e3e8f2;border-radius:12px;box-sizing:border-box;color:#1f2a44;font-size:1rem;height:52px;outline:none;padding:0 16px;width:100%}.admin-user-form-group input:focus-visible,.admin-user-form-group select:focus-visible{border-color:var(--color-primary);box-shadow:0 0 0 1px var(--color-primary);outline:none}.admin-user-form-group input:disabled{background-color:#eef2f8;color:#7f8aa3}.admin-user-form-label-row{align-items:center;display:flex;justify-content:space-between}.admin-user-form-label-row span{color:#8c99b2;font-size:.75rem;font-style:italic}.admin-user-select-wrapper{position:relative}.admin-user-select-wrapper select{appearance:none;box-sizing:border-box;cursor:pointer;padding-right:42px}.admin-user-select-wrapper svg{color:#7f8aa3;pointer-events:none;position:absolute;right:14px;top:14px}.form-error{color:#d14343;font-size:.82rem}.admin-user-modal-actions{display:flex;flex-direction:column;gap:12px;justify-content:center;margin-top:12px}.admin-user-btn{border:none;border-radius:12px;cursor:pointer;font-size:.98rem;font-weight:700;height:48px;min-width:160px}.admin-user-btn-secondary{background:#0000;color:#33415c}.admin-user-btn-primary{background:#0d5db8;color:#fff}.admin-user-btn-primary:disabled{cursor:not-allowed;opacity:.7}@media (min-width:768px){.admin-user-modal-actions{flex-direction:row;justify-content:flex-end}}.doctors-topbar{align-items:center}.doctors-search-box{align-items:center;background:var(--color-surface);border:1px solid #d0d5dd;border-radius:14px;display:flex;gap:10px;height:48px;max-width:360px;padding:0 14px;width:100%}.doctors-search-box svg{color:#98a2b3}.doctors-search-box input{background:#0000;border:none;color:#101828;font-size:15px;outline:none;width:100%}.doctors-search-box input:focus-visible{border-color:var(--color-primary);box-shadow:0 0 0 1px var(--color-primary);outline:none}.doctors-table-card{overflow:hidden;padding:0}.doctors-table-wrapper{overflow-x:auto;width:100%}.doctors-table{border-collapse:collapse;min-width:1100px;width:100%}.doctors-table thead th{background:#f8fafc;border-bottom:1px solid #eaecf0;color:#344054;font-size:14px;font-weight:700;padding:18px 22px;text-align:left}.doctors-table tbody td{border-bottom:1px solid #eaecf0;color:#475467;font-size:15px;padding:20px 22px;vertical-align:middle}.doctor-name-cell{align-items:center;display:flex;gap:12px}.doctor-avatar{align-items:center;background:#eef4ff;border-radius:50%;color:var(--color-primary);display:flex;font-size:.9rem;font-weight:800;height:40px;justify-content:center;min-width:40px;width:40px}.doctor-name-content{display:flex;flex-direction:column;gap:4px}.doctor-name-content strong{color:#101828;font-size:15px}.doctor-name-content span{color:#667085;font-size:13px}.doctor-tag{background:#f2f4f7;color:#344054;font-size:13px;min-height:30px}.doctor-status-badge,.doctor-tag{align-items:center;border-radius:999px;display:inline-flex;font-weight:600;padding:0 12px}.doctor-status-badge{font-size:14px;gap:8px;min-height:32px}.doctor-status-badge .dot{border-radius:50%;height:8px;width:8px}.doctor-status-badge.active{background:#dcfae6;color:#067647}.doctor-status-badge.active .dot{background:#12b76a}.doctor-status-badge.inactive{background:#f2f4f7;color:#344054}.doctor-status-badge.inactive .dot{background:#98a2b3}.actions-column{width:120px}.doctor-actions{align-items:center;display:flex;gap:8px}.doctor-icon-button{align-items:center;background:#0000;border:none;border-radius:10px;color:#98a2b3;cursor:pointer;display:flex;height:38px;justify-content:center;transition:.2s;width:38px}.doctor-icon-button:hover{background:#f2f4f7;color:#344054}.doctors-empty-state{color:#667085;padding:32px 0;text-align:center}.doctors-table-footer{align-items:center;background:#fff;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;padding:18px 22px}.doctors-table-footer span{color:#667085;font-size:14px}@media (max-width:768px){.admin-panel-header{justify-content:stretch}.header-actions{flex-direction:column;width:100%}.action-button{justify-content:center;width:100%}.dashboard-topbar{align-items:stretch;flex-direction:column}.dashboard-topbar h1{font-size:1.6rem}.dashboard-card{padding:18px}.doctors-search-box{box-sizing:border-box;max-width:100%}.doctors-table-footer{align-items:stretch;flex-direction:column}}.admin-doctor-modal-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f172a73;display:flex;inset:0;justify-content:center;padding:24px;position:fixed;z-index:1400}.admin-doctor-modal{background:var(--color-surface);border:1px solid #eaecf0;border-radius:24px;box-shadow:0 24px 64px #0f172a2e;display:flex;flex-direction:column;max-height:min(92dvh,980px);overflow:hidden;width:min(860px,100%)}.admin-doctor-modal-header{align-items:flex-start;background:var(--color-surface);border-bottom:1px solid #eaecf0;display:flex;flex-shrink:0;gap:16px;justify-content:space-between;padding:28px 28px 22px}.admin-doctor-modal-title-wrapper{align-items:flex-start;display:flex;gap:16px;min-width:0}.admin-doctor-modal-icon{align-items:center;background:#eef4ff;border-radius:14px;color:var(--color-primary);display:flex;flex-shrink:0;height:52px;justify-content:center;min-width:52px;width:52px}.admin-doctor-modal-title-wrapper h2{color:#101828;font-size:1.9rem;line-height:1.2;margin:0;word-break:break-word}.admin-doctor-modal-title-wrapper p{color:#667085;font-size:.98rem;line-height:1.5;margin:8px 0 0}.admin-doctor-modal-close{align-items:center;background:#0000;border:none;border-radius:12px;color:#98a2b3;cursor:pointer;display:flex;flex-shrink:0;height:42px;justify-content:center;min-width:42px;width:42px}.admin-doctor-modal-form{display:flex;flex:1 1;flex-direction:column;min-height:0}.admin-doctor-modal-body{flex:1 1;min-height:0;overflow-x:hidden;overflow-y:auto;padding:28px}.admin-doctor-modal-loading{display:flex;justify-content:center;padding:48px 0}.doctor-form-section{display:flex;flex-direction:column;gap:22px;min-width:0}.doctor-form-section-header{align-items:center;display:flex;gap:14px}.doctor-form-section-header span{color:var(--color-primary);font-size:1.05rem;font-weight:800;letter-spacing:.02em}.doctor-form-grid{grid-gap:18px;display:grid;gap:18px;min-width:0}.doctor-form-grid-1{grid-template-columns:minmax(0,1fr)}.doctor-form-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.doctor-form-field{min-width:0}.doctor-form-field input,.doctor-form-field select{box-sizing:border-box;min-width:0;transition:border-color .2s,box-shadow .2s;width:100%}.doctor-form-field input:focus,.doctor-form-field select:focus{border-color:var(--color-primary);box-shadow:0 0 0 4px #055fb314}.doctor-field-error{color:#d92d20;font-size:13px;font-weight:500;margin-top:-2px}.doctor-status-box,.doctor-status-box>div{min-width:0}.doctor-status-box strong{font-size:1.1rem}.doctor-status-box span{line-height:1.5}.doctor-switch{flex-shrink:0}.doctor-switch em{white-space:nowrap}.admin-doctor-modal-footer{background:#fcfcfd;border-top:1px solid #eaecf0;display:flex;flex-shrink:0;gap:12px;justify-content:flex-end;padding:22px 28px 28px}.doctor-modal-button{box-sizing:border-box;min-height:48px;transition:.2s}@media (max-width:768px){.admin-doctor-modal-overlay{align-items:stretch;padding:12px}.admin-doctor-modal{border-radius:20px;max-height:100dvh;max-width:100%;width:100%}.admin-doctor-modal-header{gap:12px;padding:18px}.admin-doctor-modal-title-wrapper{gap:12px}.admin-doctor-modal-icon{border-radius:12px;height:44px;min-width:44px;width:44px}.admin-doctor-modal-title-wrapper h2{font-size:1.35rem;line-height:1.15}.admin-doctor-modal-title-wrapper p{font-size:.95rem;line-height:1.45}.admin-doctor-modal-body{padding:18px}.doctor-form-grid-2{grid-template-columns:1fr}.doctor-status-box{align-items:flex-start;flex-direction:column}.doctor-switch{justify-content:space-between;width:100%}.admin-doctor-modal-footer{flex-direction:column-reverse;padding:16px 18px 18px}.doctor-modal-button{width:100%}}@media (max-width:420px){.admin-doctor-modal-overlay{padding:8px}.admin-doctor-modal{border-radius:16px}.admin-doctor-modal-body,.admin-doctor-modal-header{padding:16px}.admin-doctor-modal-footer{padding:14px 16px 16px}.admin-doctor-modal-title-wrapper h2{font-size:1.2rem}.admin-doctor-modal-title-wrapper p{font-size:.9rem}.doctor-form-field input,.doctor-form-field select{font-size:14px;height:48px}.doctor-form-section{gap:18px}.doctor-status-box{padding:16px}.doctor-status-box strong{font-size:1rem}.doctor-status-box span{font-size:.9rem}}.doctor-schedule-breadcrumb{align-items:center;display:flex}.doctor-schedule-back{align-items:center;background:#fff;border:1px solid #d0d5dd;border-radius:12px;color:#344054;cursor:pointer;display:inline-flex;font-size:14px;font-weight:600;gap:8px;height:42px;padding:0 14px}.doctor-schedule-topbar h1{color:var(--color-text-strong);font-size:1.875rem;font-weight:800;letter-spacing:-.025em;line-height:2.25rem;margin:0}.doctor-schedule-topbar p{color:#667085;font-size:1rem;margin:8px 0 0}.doctor-schedule-grid{grid-gap:20px;align-items:start;display:grid;gap:20px;grid-template-columns:340px minmax(0,1fr)}.doctor-schedule-left-column{display:flex;flex-direction:column;gap:20px}.doctor-schedule-card{background:var(--color-surface);border:1px solid #eaecf0;border-radius:20px;box-shadow:0 2px 8px #1018280a}.doctor-profile-card{padding:28px;text-align:center}.doctor-profile-avatar{align-items:center;background:#eef4ff;border-radius:50%;color:var(--color-primary);display:flex;font-size:1.6rem;font-weight:800;height:88px;justify-content:center;margin:0 auto 18px;width:88px}.doctor-profile-card h2{color:#101828;font-size:1.8rem;margin:0}.doctor-profile-card p{color:var(--color-primary);font-size:1rem;font-weight:600;margin:8px 0 0}.doctor-profile-status{align-items:center;border-radius:999px;display:inline-flex;font-size:14px;font-weight:700;margin-top:16px;min-height:32px;padding:0 14px}.doctor-profile-status.active{background:#dcfae6;color:#067647}.doctor-profile-status.inactive{background:#f2f4f7;color:#344054}.doctor-profile-info{border-top:1px solid #eaecf0;display:flex;flex-direction:column;gap:18px;margin-top:24px;padding-top:24px;text-align:left}.doctor-profile-info strong{color:#667085;display:block;font-size:13px;letter-spacing:.04em;margin-bottom:6px;text-transform:uppercase}.doctor-profile-info span{color:#101828;font-size:1rem}.doctor-config-card{padding:24px}.doctor-card-header{margin-bottom:18px}.doctor-card-header h3{color:#101828;font-size:1.4rem;margin:0}.doctor-card-header p{color:#667085;font-size:.95rem;margin:8px 0 0}.doctor-config-form{display:flex;flex-direction:column;gap:18px}.doctor-form-field{display:flex;flex-direction:column;gap:8px}.doctor-form-field label{color:#344054;font-size:15px;font-weight:700}.doctor-form-field input,.doctor-form-field select{background:var(--color-surface);border:1px solid #d0d5dd;border-radius:14px;color:#101828;font-size:15px;height:52px;outline:none;padding:0 16px}.doctor-form-field input:focus-visible,.doctor-form-field select:focus-visible{border-color:var(--color-primary);box-shadow:0 0 0 1px var(--color-primary);outline:none}.doctor-availability-card{padding:24px}.availability-header{align-items:flex-start;display:flex;gap:12px;justify-content:space-between}.doctor-availability-list{display:flex;flex-direction:column;gap:16px}.doctor-day-row{background:#fcfcfd;border:1px solid #eaecf0;border-radius:18px;padding:18px}.doctor-day-header{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between}.doctor-day-toggle{align-items:center;cursor:pointer;display:flex;gap:10px}.doctor-day-toggle input{height:18px;width:18px}.doctor-day-toggle span{color:#101828;font-size:1.05rem;font-weight:700}.doctor-add-period-button{align-items:center;background:#eef4ff;border:none;border-radius:10px;color:var(--color-primary);cursor:pointer;display:inline-flex;font-size:14px;font-weight:700;gap:6px;height:38px;padding:0 14px}.doctor-add-period-button:disabled{cursor:not-allowed;opacity:.5}.doctor-day-disabled{color:#98a2b3;font-style:italic;margin-top:14px}.doctor-periods-list{display:flex;flex-direction:column;gap:12px;margin-top:16px}.doctor-period-row{grid-gap:12px;align-items:end;display:grid;gap:12px;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto}.doctor-period-field{display:flex;flex-direction:column;gap:8px}.doctor-period-field label{color:#667085;font-size:14px;font-weight:600}.doctor-period-field input{border:1px solid #d0d5dd;border-radius:12px;font-size:15px;height:46px;outline:none;padding:0 14px}.doctor-period-field input:focus-visible{border-color:var(--color-primary);box-shadow:0 0 0 1px var(--color-primary);outline:none}.doctor-remove-period-button{background:#fff5f3;border:1px solid #fecdca;border-radius:12px;color:#d92d20;cursor:pointer;font-size:14px;font-weight:700;height:46px;padding:0 14px}.doctor-remove-period-button:disabled{cursor:not-allowed;opacity:.45}.doctor-status-box{align-items:center;background:#f8fafc;border:1px solid #eaecf0;border-radius:18px;display:flex;gap:16px;justify-content:space-between;padding:18px 20px}.doctor-status-box strong{color:#101828;display:block;font-size:1.05rem;margin-bottom:4px}.doctor-status-box span{color:#667085;font-size:.95rem}.doctor-switch{align-items:center;cursor:pointer;display:flex;gap:12px}.doctor-switch input{display:none}.doctor-switch-slider{background:#d0d5dd;border-radius:999px;height:30px;position:relative;transition:.2s;width:52px}.doctor-switch-slider:after{background:#fff;border-radius:50%;box-shadow:0 2px 8px #0f172a26;content:"";height:24px;left:4px;position:absolute;top:3px;transition:.2s;width:24px}.doctor-switch input:checked+.doctor-switch-slider{background:var(--color-primary)}.doctor-switch input:checked+.doctor-switch-slider:after{transform:translateX(20px)}.doctor-switch em{color:#101828;font-style:normal;font-weight:700}.doctor-schedule-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:24px}.doctor-modal-button{align-items:center;border:none;border-radius:14px;cursor:pointer;display:inline-flex;font-size:15px;font-weight:700;gap:8px;height:48px;justify-content:center;padding:0 22px}.doctor-modal-button.secondary{background:#0000;color:#344054}.doctor-modal-button.primary{background:var(--color-primary);box-shadow:0 10px 24px #055fb32e;color:var(--color-surface)}.doctor-modal-button:disabled{cursor:not-allowed;opacity:.7}.doctor-blocks-card{grid-column:1/-1;margin-top:20px;padding:24px}.doctor-blocks-header{align-items:flex-start;display:flex;gap:12px;justify-content:space-between}.doctor-blocks-add-button{align-items:center;background:var(--color-primary);border:none;border-radius:12px;box-shadow:0 10px 24px var(--color-primary-shadow);color:var(--color-surface);cursor:pointer;display:inline-flex;font-size:14px;font-weight:700;gap:8px;height:42px;padding:0 16px}.doctor-blocks-empty{background:#fcfcfd;border:1px dashed var(--color-border);border-radius:16px;color:var(--color-text-muted);margin-top:12px;padding:24px;text-align:center}.doctor-blocks-table-wrap{border:1px solid var(--color-border);border-radius:18px;margin-top:18px;overflow-x:auto}.doctor-blocks-table{background:var(--color-surface);border-collapse:collapse;min-width:760px;width:100%}.doctor-blocks-table thead th{background:#f8fafc;border-bottom:1px solid var(--color-border);color:#94a3b8;font-size:.82rem;letter-spacing:.04em;padding:14px 18px;text-align:left;text-transform:uppercase}.doctor-blocks-table tbody td{border-bottom:1px solid var(--color-border-light);color:var(--color-text);padding:16px 18px;vertical-align:middle}.doctor-blocks-table tbody tr:last-child td{border-bottom:none}.doctor-blocks-table td strong{color:var(--color-text-strong);display:block;font-size:.98rem}.doctor-blocks-table td span{color:var(--color-text-muted);display:block;font-size:.9rem}.doctor-block-status-pill{align-items:center;border-radius:999px;display:flex;font-weight:700;justify-content:center;min-height:28px}.doctor-block-status-pill.active{background:#dcfce7;color:#166534}.doctor-block-status-pill.inactive{background:#f1f5f9;color:#475569}.doctor-block-action-button{align-items:center;background:#fff1f2;border:1px solid #fecaca;border-radius:12px;color:#dc2626;cursor:pointer;display:inline-flex;font-size:.9rem;font-weight:700;gap:6px;height:38px;padding:0 14px}@media (max-width:1100px){.doctor-schedule-grid{grid-template-columns:1fr}}@media (max-width:768px){.doctor-day-header,.doctor-schedule-actions,.doctor-status-box{align-items:stretch;flex-direction:column}.doctor-period-row{grid-template-columns:1fr}.doctor-blocks-header{align-items:stretch;flex-direction:column}.doctor-blocks-add-button{justify-content:center;width:100%}}.doctor-block-modal-box{background:var(--color-surface);border-radius:24px;box-shadow:0 24px 64px #0f172a3d;display:flex;flex-direction:column;margin:24px auto;max-height:92vh;outline:none;overflow:auto;width:min(92vw,680px)}.doctor-block-modal-box:focus-visible{border-color:var(--color-primary);box-shadow:0 0 0 1px var(--color-primary);outline:none}.doctor-block-modal-header{align-items:flex-start;border-bottom:1px solid var(--color-border-light);display:flex;gap:16px;justify-content:space-between;padding:20px 20px 16px}.doctor-block-modal-title-wrap{align-items:flex-start;display:flex;gap:14px}.doctor-block-modal-icon{align-items:center;background:#edf4ff;border-radius:16px;color:var(--color-primary);display:flex;height:52px;justify-content:center;min-width:52px;width:52px}.doctor-block-modal-title-wrap h2{color:var(--color-text-strong);font-size:1.4rem;font-weight:800;margin:0}.doctor-block-modal-title-wrap p{color:var(--color-text-muted);font-size:.95rem;margin:6px 0 0}.doctor-block-modal-close{background:#0000;border:none;border-radius:12px;color:var(--color-text-muted);cursor:pointer;height:40px;width:40px}.doctor-block-modal-body{display:flex;flex-direction:column;gap:18px;padding:20px}.doctor-block-form-grid{grid-gap:16px;display:grid;gap:16px}.doctor-block-form-grid.two-columns{grid-template-columns:1fr}.doctor-block-form-group{display:flex;flex-direction:column;gap:8px}.doctor-block-form-group label{color:var(--color-text);font-size:.98rem;font-weight:700}.doctor-block-form-group input,.doctor-block-form-group textarea{background:var(--color-input-surface);border:1px solid var(--color-border);border-radius:14px;box-sizing:border-box;color:var(--color-text);font-size:.98rem;outline:none;padding:0 14px;transition:border-color .2s,box-shadow .2s;width:100%}.doctor-block-form-group input:focus-visible,.doctor-block-form-group textarea:focus-visible{border-color:var(--color-primary);box-shadow:0 0 0 1px var(--color-primary);outline:none}.doctor-block-form-group input{height:48px}.doctor-block-form-group textarea{min-height:110px;padding-bottom:12px;padding-top:12px;resize:vertical}.doctor-block-form-group input:focus,.doctor-block-form-group textarea:focus{border-color:var(--color-primary);box-shadow:0 0 0 4px var(--color-primary-shadow)}.doctor-block-form-error{color:#d92d20;font-size:.85rem;font-weight:600}.doctor-block-status-row{background:#f8fbff;border:1px solid var(--color-border-light);border-radius:16px;display:flex;flex-direction:column;gap:14px;padding:16px}.doctor-block-status-row strong{color:var(--color-text-strong);display:block;margin-bottom:4px}.doctor-block-status-row span{color:var(--color-text-muted);font-size:.95rem}.doctor-block-status-toggle{align-items:center;color:var(--color-text);display:flex;font-weight:600;gap:8px}.doctor-block-modal-footer{border-top:1px solid var(--color-border-light);display:flex;flex-direction:column-reverse;gap:12px;padding:20px}.doctor-block-primary-button,.doctor-block-secondary-button{border-radius:14px;cursor:pointer;font-size:.98rem;font-weight:700;height:46px;transition:.2s;width:100%}.doctor-block-primary-button{background:var(--color-primary);border:none;color:var(--color-surface)}.doctor-block-primary-button:hover{background:var(--color-primary-hover)}.doctor-block-secondary-button{background:var(--color-surface);border:1px solid var(--color-border);color:var(--color-text)}@media (min-width:768px){.doctor-block-modal-header{padding:24px 24px 18px}.doctor-block-modal-body{padding:24px}.doctor-block-modal-footer{flex-direction:row;justify-content:flex-end;padding:20px 24px 24px}.doctor-block-primary-button,.doctor-block-secondary-button{min-width:140px;padding:0 22px;width:auto}.doctor-block-form-grid.two-columns{grid-template-columns:1fr 1fr}}.doctor-block-delete-modal-box{background:var(--color-surface);border-radius:24px;box-shadow:0 24px 64px #0f172a3d;display:flex;flex-direction:column;margin:24px auto;outline:none;width:min(92vw,520px)}.doctor-block-delete-modal-box:focus-visible{border-color:var(--color-primary);box-shadow:0 0 0 1px var(--color-primary);outline:none}.doctor-block-delete-modal-header{align-items:flex-start;border-bottom:1px solid var(--color-border-light);display:flex;gap:16px;justify-content:space-between;padding:20px 20px 16px}.doctor-block-delete-modal-title-wrap{align-items:flex-start;display:flex;gap:14px}.doctor-block-delete-modal-icon{align-items:center;background:#fff4ed;border-radius:16px;color:#d92d20;display:flex;height:52px;justify-content:center;min-width:52px;width:52px}.doctor-block-delete-modal-title-wrap h2{color:var(--color-text-strong);font-size:1.35rem;font-weight:800;margin:0}.doctor-block-delete-modal-title-wrap p{color:var(--color-text-muted);font-size:.95rem;margin:6px 0 0}.doctor-block-delete-modal-close{background:#0000;border:none;border-radius:12px;color:var(--color-text-muted);cursor:pointer;height:40px;width:40px}.doctor-block-delete-modal-body{color:var(--color-text);font-size:1rem;line-height:1.5;padding:20px}.doctor-block-delete-modal-footer{border-top:1px solid var(--color-border-light);display:flex;flex-direction:column-reverse;gap:12px;padding:20px}.doctor-block-delete-primary-button,.doctor-block-delete-secondary-button{border-radius:14px;cursor:pointer;font-size:.98rem;font-weight:700;height:46px;width:100%}.doctor-block-delete-primary-button{background:#d92d20;border:none;color:#fff}.doctor-block-delete-secondary-button{background:var(--color-surface);border:1px solid var(--color-border);color:var(--color-text)}@media (min-width:768px){.doctor-block-delete-modal-header{padding:24px 24px 18px}.doctor-block-delete-modal-body{padding:24px}.doctor-block-delete-modal-footer{flex-direction:row;justify-content:flex-end;padding:20px 24px 24px}.doctor-block-delete-primary-button,.doctor-block-delete-secondary-button{min-width:140px;padding:0 22px;width:auto}}.action-button.add:hover{background:var(--color-primary-hover)}.admin-panel-content{gap:1.5rem;padding:1rem}.entity-page-topbar{display:flex;flex-direction:column;gap:16px}.entity-page-topbar h1{color:var(--color-text-strong);font-size:1.9rem;font-weight:800;letter-spacing:-.03em;line-height:1.1;margin:0}.entity-page-topbar p{color:var(--color-text-muted);font-size:1rem;margin:8px 0 0}.entity-search-box{align-items:center;background:var(--color-surface);border:1px solid var(--color-border);border-radius:14px;display:flex;gap:10px;height:48px;padding:0 14px;width:100%}.entity-search-box svg{color:var(--color-text-disabled)}.entity-search-box input{background:#0000;border:none;color:var(--color-text);flex:1 1;font-size:.98rem;outline:none}.entity-search-box input:focus-visible{border-color:var(--color-primary);box-shadow:0 0 0 1px var(--color-primary);outline:none}.entity-metrics-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr}.entity-metric-card{align-items:center;background:var(--color-surface);border:1px solid var(--color-border);border-radius:18px;box-shadow:0 2px 8px #1018280a;display:flex;gap:14px;padding:18px}.entity-metric-icon{align-items:center;border-radius:14px;display:flex;height:52px;justify-content:center;width:52px}.entity-metric-icon.blue{background:#eef4ff;color:var(--color-primary)}.entity-metric-icon.green{background:#eafaf1;color:#12b76a}.entity-metric-icon.gray{background:#f1f5f9;color:#64748b}.entity-metric-card span{color:var(--color-text-muted);display:block;font-size:.95rem;margin-bottom:6px}.entity-metric-card strong{color:var(--color-text-strong);font-size:2rem;line-height:1}.entity-table-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:20px;box-shadow:0 2px 8px #1018280a;overflow:hidden}.entity-loading{display:flex;justify-content:center;padding:48px 16px}.entity-table-scroll{overflow-x:auto;width:100%}.entity-table{border-collapse:collapse;min-width:760px;width:100%}.entity-table thead th{background:#f8fafc;border-bottom:1px solid var(--color-border);color:#64748b;font-size:.85rem;letter-spacing:.04em;padding:18px 20px;text-align:left;text-transform:uppercase}.entity-table tbody td{border-bottom:1px solid var(--color-border-light);color:var(--color-text);padding:20px;vertical-align:middle}.entity-name-cell{display:flex;flex-direction:column;gap:6px}.entity-name-cell strong{color:var(--color-text-strong);font-size:1rem}.entity-name-cell span{color:var(--color-text-disabled);font-size:.9rem}.status-badge{align-items:center;border-radius:999px;display:inline-flex;font-size:.92rem;font-weight:700;height:32px;justify-content:center;min-width:88px;padding:0 12px}.status-badge.active{background:#dcfce7;color:#15803d}.status-badge.inactive{background:#e2e8f0;color:#475569}.entity-table .actions{text-align:right;white-space:nowrap}.icon-action-button{background:#0000;border:none;border-radius:12px;cursor:pointer;height:38px;transition:.2s;width:38px}.icon-action-button.edit{color:var(--color-primary)}.icon-action-button.activate{color:#16a34a}.icon-action-button.deactivate{color:#f59e0b}.icon-action-button:hover{background:#f8fafc}.entity-empty-message{color:var(--color-text-muted);margin:0;padding:24px 0;text-align:center}.entity-table-footer{background:#f8fafc;display:flex;flex-direction:column;gap:14px;padding:16px 20px}.entity-table-footer span{color:var(--color-text-muted);font-size:.95rem}.entity-pagination{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between}.entity-pagination button{background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;color:var(--color-text);cursor:pointer;font-weight:600;height:40px;padding:0 16px}.entity-pagination button:disabled{cursor:not-allowed;opacity:.5}.page-indicator{color:var(--color-text);font-weight:600}@media (min-width:768px){.admin-panel-content{gap:2rem;padding:2rem}.entity-page-topbar{align-items:flex-start;flex-direction:row;justify-content:space-between}.entity-search-box{max-width:420px}.entity-metrics-grid{grid-template-columns:repeat(3,minmax(220px,1fr))}.entity-table-footer{align-items:center;flex-direction:row;justify-content:space-between}.entity-pagination{justify-content:flex-end}}@media (max-width:767px){.admin-panel-header{justify-content:stretch}.header-actions{width:100%}.action-button{justify-content:center;width:100%}}.admin-entity-modal-box{background:var(--color-surface);border:1px solid #eaecf0;border-radius:24px;box-shadow:0 24px 64px #0f172a2e;display:flex;flex-direction:column;left:50%;max-height:min(92dvh,760px);outline:none;overflow:hidden;position:absolute;top:50%;transform:translate(-50%,-50%);width:min(640px,calc(100vw - 48px))}.admin-entity-modal-box:focus-visible{border-color:var(--color-primary);box-shadow:0 0 0 1px var(--color-primary);outline:none}.admin-entity-modal-header{align-items:flex-start;background:var(--color-surface);border-bottom:1px solid #eaecf0;display:flex;flex-shrink:0;gap:16px;justify-content:space-between;padding:28px 28px 22px}.admin-entity-modal-title-wrap{align-items:flex-start;display:flex;gap:16px;min-width:0}.admin-entity-modal-icon{align-items:center;background:#eef4ff;border-radius:14px;color:var(--color-primary);display:flex;flex-shrink:0;height:52px;justify-content:center;min-width:52px;width:52px}.admin-entity-modal-title-wrap h2{color:#101828;font-size:1.75rem;line-height:1.2;margin:0;word-break:break-word}.admin-entity-modal-title-wrap p{color:#667085;font-size:.98rem;line-height:1.5;margin:8px 0 0}.admin-entity-modal-close{background:#0000;border:none;border-radius:12px;color:#98a2b3;cursor:pointer;flex-shrink:0;height:42px;min-width:42px;width:42px}.admin-entity-modal-close,.admin-entity-modal-loading{align-items:center;display:flex;justify-content:center}.admin-entity-modal-loading{min-height:220px;padding:48px 28px}.admin-entity-modal-form{display:flex;flex:1 1;flex-direction:column;min-height:0}.admin-entity-modal-body{display:flex;flex:1 1;flex-direction:column;gap:22px;min-height:0;overflow-x:hidden;overflow-y:auto;padding:28px}.admin-form-group{display:flex;flex-direction:column;gap:8px;min-width:0}.admin-form-group label{color:#344054;font-size:15px;font-weight:700}.admin-form-group input,.admin-form-group select,.admin-form-group textarea{background:var(--color-surface);border:1px solid #d0d5dd;border-radius:14px;box-sizing:border-box;color:#101828;font-size:15px;height:52px;min-width:0;outline:none;padding:0 16px;transition:border-color .2s,box-shadow .2s;width:100%}.admin-form-group input:focus-visible,.admin-form-group select:focus-visible,.admin-form-group textarea:focus-visible{border-color:var(--color-primary);box-shadow:0 0 0 1px var(--color-primary);outline:none}.admin-form-error{color:#dc2626;font-size:.85rem;margin-top:-2px}.admin-status-row{align-items:center;border:1px solid #eaecf0;border-radius:18px;display:flex;gap:16px;justify-content:space-between;min-width:0;padding:18px 20px}.specialty-status-row{background:#f8fafc}.admin-status-row>div:first-child{min-width:0}.admin-status-row strong{color:#101828;display:block;font-size:1.05rem;margin-bottom:4px}.admin-status-row>div:first-child span{color:#667085;font-size:.95rem;line-height:1.45}.admin-status-toggle{align-items:center;display:flex;flex-shrink:0;gap:10px}.admin-status-toggle span{color:#101828;font-weight:700;white-space:nowrap}.admin-info-box{align-items:flex-start;background:#eff6ff;border:1px solid #bfdbfe;border-radius:16px;color:var(--color-primary);display:flex;gap:10px;padding:16px}.admin-info-box svg{flex-shrink:0;margin-top:2px}.admin-info-box p{font-size:.95rem;line-height:1.45;margin:0}.admin-entity-modal-footer{background:#fcfcfd;border-top:1px solid #eaecf0;display:flex;flex-shrink:0;gap:12px;justify-content:flex-end;padding:22px 28px 28px}.admin-primary-button,.admin-secondary-button{align-items:center;border:none;border-radius:14px;box-sizing:border-box;cursor:pointer;display:inline-flex;font-size:15px;font-weight:700;justify-content:center;min-height:48px;padding:0 22px;transition:.2s}.admin-secondary-button{background:#0000;color:#344054}.admin-primary-button{background:var(--color-primary);box-shadow:0 10px 24px #055fb32e;color:var(--color-surface)}.admin-primary-button:disabled,.admin-secondary-button:disabled{cursor:not-allowed;opacity:.7}.admin-entity-modal-actions{align-items:center;display:flex;gap:16px;justify-content:flex-end;padding:12px}.admin-entity-modal-actions button{align-items:center;border-radius:12px;display:flex;font-size:15px;font-weight:700;letter-spacing:.01rem;padding:8px 12px}.admin-entity-primary-button{background-color:var(--color-primary);color:var(--color-surface)}@media (max-width:768px){.admin-entity-modal-box{border-radius:20px;max-height:100dvh;max-width:100%;width:calc(100vw - 24px)}.admin-entity-modal-header{gap:12px;padding:18px}.admin-entity-modal-title-wrap{gap:12px}.admin-entity-modal-icon{border-radius:12px;height:44px;min-width:44px;width:44px}.admin-entity-modal-title-wrap h2{font-size:1.3rem;line-height:1.15}.admin-entity-modal-title-wrap p{font-size:.95rem;line-height:1.45}.admin-entity-modal-loading{min-height:180px;padding:36px 18px}.admin-entity-modal-body{gap:18px;padding:18px}.admin-status-row{align-items:flex-start;flex-direction:column}.admin-status-toggle{justify-content:space-between;width:100%}.admin-entity-modal-footer{flex-direction:column-reverse;padding:16px 18px 18px}.admin-primary-button,.admin-secondary-button{width:100%}}@media (max-width:420px){.admin-entity-modal-box{border-radius:16px;width:calc(100vw - 16px)}.admin-entity-modal-body,.admin-entity-modal-header{padding:16px}.admin-entity-modal-footer{padding:14px 16px 16px}.admin-entity-modal-title-wrap h2{font-size:1.15rem}.admin-entity-modal-title-wrap p{font-size:.9rem}.admin-form-group input,.admin-form-group select,.admin-form-group textarea{font-size:14px;height:48px}.admin-status-row{padding:16px}.admin-status-row strong{font-size:1rem}.admin-info-box p,.admin-status-row>div:first-child span{font-size:.9rem}.admin-entity-modal-actions{justify-content:center;padding:6px 0}}.admin-entity-modal-grid-2{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(2,minmax(0,1fr))}@media (max-width:768px){.admin-entity-modal-grid-2{grid-template-columns:1fr}}.patient-panel-content{display:flex;flex-direction:column;gap:2rem;padding:2rem}.patient-dashboard-header-button{align-items:center;background:var(--color-primary);border:none;border-radius:12px;color:var(--color-surface);cursor:pointer;display:flex;font-size:15px;font-weight:600;gap:8px;height:44px;padding:0 18px;transition:.2s}.patient-dashboard-topbar{align-items:flex-start;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between}.patient-dashboard-topbar h1{color:var(--color-text-strong);font-size:1.875rem;font-weight:800;letter-spacing:-.025em;line-height:2.25rem;margin:0}.patient-dashboard-topbar p{color:#667085;font-size:1rem;margin:8px 0 0}.patient-dashboard-loading{display:flex;justify-content:center;padding:60px 0}.patient-profile-card{align-items:center;background:var(--color-surface);border:1px solid #eaecf0;border-radius:18px;box-shadow:0 2px 8px #1018280a;display:flex;gap:1rem;padding:24px}.patient-profile-avatar{align-items:center;background:#eef4ff;border-radius:50%;color:var(--color-primary);display:flex;flex-shrink:0;font-size:2rem;font-weight:700;height:88px;justify-content:center;width:88px}.patient-profile-info{display:flex;flex-direction:column;gap:6px}.patient-profile-name-row{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.patient-profile-name-row h2{color:var(--color-text-strong);font-size:2rem;margin:0}.patient-profile-info p{color:var(--color-text);margin:0}.patient-profile-info span{color:var(--color-text-muted)}.patient-profile-badge{background:#2196531f;border-radius:999px;color:#1f8f49;display:inline-flex;font-size:.82rem;font-weight:700;padding:6px 10px}.patient-dashboard-metrics-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(2,minmax(220px,1fr))}.patient-dashboard-metric-card{background:var(--color-surface);border:1px solid #eaecf0;border-radius:18px;box-shadow:0 2px 8px #1018280a;padding:24px}.patient-metric-card-top{align-items:flex-start;display:flex;gap:16px;justify-content:space-between;margin-bottom:18px}.patient-metric-card-top span{color:#667085;font-size:1rem;font-weight:500}.patient-dashboard-metric-card strong{color:#101828;font-size:2.2rem;font-weight:700}.patient-dashboard-metric-card p{color:var(--color-primary);margin:8px 0 0}.patient-metric-icon{align-items:center;border-radius:14px;display:flex;height:52px;justify-content:center;width:52px}.patient-metric-icon.blue{background:#eef4ff;color:var(--color-primary)}.patient-metric-icon.gray{background:#f2f4f7;color:#667085}.patient-dashboard-section{display:flex;flex-direction:column;gap:1rem}.patient-dashboard-section-header{align-items:center;display:flex;gap:12px;justify-content:space-between}.patient-dashboard-section-header h2{color:var(--color-text-strong);font-size:1.5rem;margin:0}.patient-dashboard-link-button{background:#0000;border:none;color:var(--color-primary);cursor:pointer;font-weight:700}.patient-dashboard-appointments-list{display:flex;flex-direction:column;gap:16px}.patient-dashboard-appointment-card,.patient-dashboard-empty-card{background:var(--color-surface);border:1px solid #eaecf0;border-radius:18px;box-shadow:0 2px 8px #1018280a;padding:24px}.patient-dashboard-appointment-card{grid-gap:20px;align-items:center;display:grid;gap:20px;grid-template-columns:88px minmax(0,1fr) auto}.patient-dashboard-date-box{align-items:center;background:#f8fafc;border-radius:18px;display:flex;flex-direction:column;height:92px;justify-content:center}.patient-dashboard-date-box span{color:var(--color-primary);font-size:1rem;font-weight:700}.patient-dashboard-date-box strong{color:var(--color-text-strong);font-size:2rem;line-height:1}.patient-dashboard-appointment-main{display:flex;flex-direction:column;gap:6px}.patient-dashboard-appointment-main small{color:var(--color-primary);font-weight:700;text-transform:uppercase}.patient-dashboard-appointment-main h3{color:var(--color-text-strong);font-size:1.4rem;margin:0}.patient-dashboard-appointment-meta{color:var(--color-text);display:flex;flex-wrap:wrap;gap:10px 16px}.patient-dashboard-appointment-meta span{align-items:center;display:inline-flex;gap:6px}.patient-dashboard-appointment-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}.patient-dashboard-danger-button,.patient-dashboard-primary-button,.patient-dashboard-secondary-button{border-radius:12px;cursor:pointer;font-size:15px;font-weight:600;height:44px;padding:0 18px}.patient-dashboard-secondary-button{background:#f8fafc;border:1px solid #d0d5dd;color:var(--color-text-strong)}.patient-dashboard-danger-button{background:#fff;border:1px solid #fecdca;color:#f04438}.patient-dashboard-primary-button{background:#136d36;border:1px solid #7eb894;color:#fff}.patient-dashboard-history-table-wrapper{background:var(--color-surface);border:1px solid #eaecf0;border-radius:18px;box-shadow:0 2px 8px #1018280a;overflow-x:auto}.patient-dashboard-history-table{border-collapse:collapse;min-width:680px;width:100%}.patient-dashboard-history-table td,.patient-dashboard-history-table th{border-bottom:1px solid #eaecf0;padding:18px 20px;text-align:left}.patient-dashboard-history-table th{color:#667085;font-size:.9rem;text-transform:uppercase}.patient-dashboard-history-table td{color:var(--color-text-strong)}.patient-dashboard-history-empty{color:var(--color-text-muted);text-align:center}@media (max-width:1100px){.patient-dashboard-appointment-card{grid-template-columns:1fr}.patient-dashboard-appointment-actions{justify-content:flex-start}}@media (max-width:900px){.patient-dashboard-metrics-grid{grid-template-columns:1fr}}@media (max-width:768px){.patient-panel-content,.patient-panel-header{padding:1rem}.patient-dashboard-header-button{justify-content:center;width:100%}.patient-panel-header-right{align-items:stretch;flex-direction:column-reverse;width:100%}.patient-header-user{justify-content:space-between}.patient-dashboard-appointment-card,.patient-dashboard-metric-card,.patient-profile-card{padding:18px}.patient-profile-card{align-items:flex-start;flex-direction:column}.patient-dashboard-topbar h1,.patient-profile-name-row h2{font-size:1.6rem}.patient-dashboard-section-header{align-items:flex-start;flex-direction:column}.patient-dashboard-appointment-actions{flex-direction:column}.patient-dashboard-danger-button,.patient-dashboard-secondary-button{width:100%}}.patient-panel-header{align-items:center;background-color:var(--color-surface);border-bottom:1px solid var(--color-border);display:flex;justify-content:flex-end;padding:1rem 2rem;position:sticky;top:0;z-index:10}.patient-panel-header-right{align-items:center;display:flex;gap:1rem}.patient-header-icons{align-items:center;display:flex;gap:.75rem}.patient-header-icon-button{align-items:center;background:var(--color-background);border-radius:.75rem;color:var(--color-text);display:flex;height:2.75rem;justify-content:center;width:2.75rem}.patient-header-user{align-items:center;display:flex;gap:.75rem}.patient-header-user-text{align-items:flex-end;display:flex;flex-direction:column}.patient-header-user-text strong{color:var(--color-text-strong);font-size:1rem}.patient-header-user-text span{color:var(--color-text-muted);font-size:.875rem}.patient-header-avatar{align-items:center;background:var(--color-primary);border-radius:50%;color:var(--color-surface);display:flex;font-weight:700;height:2.75rem;justify-content:center;width:2.75rem}.admin-panel-header{align-items:center;display:flex;justify-content:flex-end;margin-bottom:24px}.header-actions{display:flex;flex-wrap:wrap;gap:12px}.action-button{align-items:center;border:none;border-radius:12px;cursor:pointer;display:flex;font-size:15px;font-weight:600;gap:8px;height:44px;padding:0 18px;transition:.2s}.action-button.export{background:#edf4ff;color:var(--color-primary)}.action-button.refresh{background:#eef4ff;color:var(--color-primary)}.spinning-icon{animation:dashboard-spin 1s linear infinite}@keyframes dashboard-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.action-button.add{background:var(--color-primary);color:var(--color-surface)}.action-button:disabled{cursor:not-allowed;opacity:.7}.admin-panel-content{display:flex;flex-direction:column;gap:2rem;padding:2rem}.dashboard-topbar{align-items:flex-start;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between}.dashboard-topbar h1{color:var(--color-text-strong);font-size:1.875rem;font-weight:800;letter-spacing:-.025em;line-height:2.25rem;margin:0}.dashboard-topbar p{color:#667085;font-size:1rem;margin:8px 0 0}.dashboard-last-updated{color:#667085;display:inline-block;font-size:.88rem;font-weight:600;margin-top:10px}.dashboard-filter{display:flex;flex-direction:column;gap:8px;min-width:180px}.dashboard-filter label{color:#344054;font-size:14px;font-weight:600}.dashboard-filter input,.dashboard-filter select{background:var(--color-surface);border:1px solid #d0d5dd;border-radius:12px;font-size:15px;height:44px;outline:none;padding:0 14px}.dashboard-filter input:focus-visible,.dashboard-filter select:focus-visible{border-color:var(--color-primary);box-shadow:0 0 0 1px var(--color-primary);outline:none}.dashboard-filter-visualizacao{min-width:min(100%,420px)}.dashboard-loading{display:flex;justify-content:center;padding:60px 0}.dashboard-metrics-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(3,minmax(220px,1fr))}.dashboard-metric-card{background:var(--color-surface);border:1px solid #eaecf0;border-radius:18px;box-shadow:0 2px 8px #1018280a;padding:24px}.metric-card-top{align-items:flex-start;display:flex;gap:16px;justify-content:space-between;margin-bottom:18px}.metric-card-top span{color:#667085;font-size:1rem;font-weight:500}.dashboard-metric-card strong{color:#101828;font-size:2.2rem;font-weight:700}.metric-icon{align-items:center;border-radius:14px;display:flex;height:52px;justify-content:center;width:52px}.metric-icon.blue{background:#eef4ff;color:var(--color-primary)}.metric-icon.red{background:#feeceb;color:#f04438}.metric-icon.yellow{background:#fff7e8;color:#d18b00}.metric-icon.green{background:#e8f7ef}.metric-icon.gray{color:#667085}.dashboard-main-grid{grid-gap:20px;align-items:start;display:grid;gap:20px;grid-template-columns:minmax(0,2fr) minmax(280px,1fr)}.dashboard-card{background:var(--color-surface);border:1px solid #eaecf0;border-radius:18px;box-shadow:0 2px 8px #1018280a;padding:24px}.dashboard-card-header{align-items:center;display:flex;gap:12px;justify-content:space-between;margin-bottom:20px}.dashboard-card-header h2{color:#101828;font-size:1.15rem;margin:0}.dashboard-card-header span{color:#667085;font-size:.95rem}.chart-wrapper{height:320px;width:100%}.top-doctors-list{display:flex;flex-direction:column;gap:18px}.top-doctor-item{align-items:center;display:flex;gap:14px}.top-doctor-rank{align-items:center;background:#eef4ff;border-radius:50%;color:var(--color-primary);display:flex;font-weight:700;height:32px;justify-content:center;min-width:32px;width:32px}.top-doctor-content{display:flex;flex-direction:column;gap:4px}.top-doctor-content strong{color:#101828;font-size:1rem}.top-doctor-content span{color:#667085;font-size:.95rem}.empty-dashboard-message{color:#667085;margin:0}.recharts-cartesian-grid-horizontal line{stroke:#e9eef5}.recharts-xAxis .recharts-cartesian-axis-tick-value,.recharts-yAxis .recharts-cartesian-axis-tick-value{fill:#94a3b8;font-size:12px}.recharts-tooltip-wrapper .recharts-default-tooltip{border:1px solid #e5e7eb!important;border-radius:12px!important;box-shadow:0 8px 24px #0f172a14!important}@media (max-width:1100px){.dashboard-main-grid{gap:2rem;grid-template-columns:1fr}}@media (max-width:900px){.dashboard-metrics-grid{grid-template-columns:1fr}}@media (max-width:768px){.admin-panel-header{justify-content:stretch}.header-actions{flex-direction:column;width:100%}.action-button{justify-content:center;width:100%}.dashboard-topbar{align-items:stretch;flex-direction:column}.dashboard-topbar h1{font-size:1.6rem}.dashboard-card,.dashboard-metric-card{padding:18px}.chart-wrapper{height:330px}}.dashboard-metrics-grid-expanded{grid-template-columns:repeat(4,minmax(220px,1fr))}.metric-icon.green{background:#ecfdf3;color:#067647}.metric-icon.gray{background:#f2f4f7;color:#475467}.dashboard-main-grid-expanded{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.dashboard-tabs{display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:1rem}.dashboard-tabs button{background:var(--color-surface);border:1px solid #d0d5dd;border-radius:999px;color:#475467;cursor:pointer;font-weight:600;min-height:38px;padding:0 1rem}.dashboard-tabs button.active{background:#eef4ff;border-color:var(--color-primary);color:var(--color-primary)}.dashboard-list{display:flex;flex-direction:column;gap:.85rem}.dashboard-list.compact{gap:.75rem}.dashboard-list-item{align-items:center;border:1px solid #eaecf0;border-radius:14px;display:flex;gap:1rem;justify-content:space-between;padding:.95rem 1rem}.dashboard-list-item strong{color:#101828;display:block;font-size:.96rem}.dashboard-list-item small,.dashboard-list-item span{color:#667085;display:block;line-height:1.45rem}.dashboard-pill{align-items:center;background:#eef4ff;border-radius:999px;color:var(--color-primary);display:inline-flex;font-size:.78rem;font-weight:700;justify-content:center;min-height:32px;padding:0 .85rem;white-space:nowrap}.dashboard-pill.subtle{background:#f2f4f7;color:#475467}.occupancy-list{gap:1rem}.occupancy-item,.occupancy-list{display:flex;flex-direction:column}.occupancy-item{gap:.55rem}.occupancy-item-top{display:flex;gap:1rem;justify-content:space-between}.occupancy-item-top strong{color:#101828}.occupancy-item small,.occupancy-item-top span{color:#667085}.occupancy-bar{background:#eef2f6;border-radius:999px;height:10px;overflow:hidden}.occupancy-bar-fill{background:var(--color-primary);border-radius:999px;height:100%}@media (max-width:1200px){.dashboard-metrics-grid-expanded{grid-template-columns:repeat(2,minmax(220px,1fr))}}@media (max-width:900px){.dashboard-main-grid,.dashboard-main-grid-expanded{grid-template-columns:1fr}}@media (max-width:640px){.dashboard-metrics-grid,.dashboard-metrics-grid-expanded{grid-template-columns:1fr}.dashboard-list-item{align-items:flex-start;flex-direction:column}}.dashboard-topbar-filters{grid-gap:16px;align-items:end;display:grid;gap:16px;grid-template-columns:minmax(0,460px) minmax(180px,220px)}.dashboard-topbar-filters-custom{grid-template-columns:minmax(0,460px)}.dashboard-filter-visualizacao{min-width:0;width:100%}.dashboard-filter-period{min-width:180px}.dashboard-custom-range{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(2,minmax(160px,1fr));margin-top:16px}.dashboard-filter-compact{min-width:0}.dashboard-range-toggle{align-items:center;background:#f4f6f8;background:var(--color-background-secondary,#f4f6f8);border:1px solid #d9dee3;border:1px solid var(--color-border,#d9dee3);border-radius:10px;display:inline-flex;gap:4px;padding:4px;width:100%}.dashboard-range-toggle button{background:#0000;border:none;border-radius:8px;color:#5f6b7a;color:var(--color-text-secondary,#5f6b7a);cursor:pointer;font-size:.95rem;font-weight:600;padding:10px 14px;transition:all .2s ease}.dashboard-range-toggle button:hover{background:#0000000a}.dashboard-range-toggle button.active{background:#055fb3;background:var(--color-primary,#055fb3);box-shadow:0 2px 8px #0000001f;color:#fff}@media (max-width:768px){.admin-panel-header{justify-content:stretch}.header-actions{flex-direction:column;width:100%}.action-button{justify-content:center;width:100%}.dashboard-topbar{align-items:stretch;flex-direction:column}.dashboard-topbar h1{font-size:1.6rem}.dashboard-card,.dashboard-metric-card{padding:18px}.chart-wrapper{height:330px}.dashboard-topbar-filters,.dashboard-topbar-filters.dashboard-topbar-filters-custom{grid-template-columns:1fr;width:100%}.dashboard-filter,.dashboard-filter-period,.dashboard-filter-visualizacao{min-width:100%;width:100%}.dashboard-range-toggle{flex-wrap:wrap;width:100%}.dashboard-range-toggle button{flex-basis:calc(50% - 4px);flex-grow:1;flex-shrink:1;justify-content:center}.dashboard-custom-range{grid-template-columns:1fr}}.dashboard-card-header-stacked-mobile{align-items:flex-start}.dashboard-secondary-action{align-items:center;background:var(--color-surface);border:1px solid #d0d5dd;border-radius:12px;color:var(--color-text-strong);cursor:pointer;display:inline-flex;font-size:.9rem;font-weight:600;gap:8px;justify-content:center;min-height:40px;padding:0 14px;transition:border-color .2s ease,color .2s ease,background .2s ease,box-shadow .2s ease}.dashboard-secondary-action:hover{background:#eef4ff;border-color:var(--color-primary);color:var(--color-primary)}.dashboard-secondary-action:focus-visible{border-color:var(--color-primary);box-shadow:0 0 0 4px var(--color-primary-shadow);outline:none}.dashboard-modal-shell{display:flex;flex-direction:column;max-height:inherit}.dashboard-modal-header{align-items:flex-start;border-bottom:1px solid #eaecf0;display:flex;gap:16px;justify-content:space-between;padding:24px 24px 18px}.dashboard-modal-header h2{color:#101828;font-size:1.25rem;margin:0}.dashboard-modal-header p{color:#667085;margin:8px 0 0}.dashboard-modal-close{border:1px solid #d0d5dd;border-radius:12px;color:#475467;cursor:pointer;display:inline-flex;height:40px;justify-content:center;min-width:40px;width:40px}.dashboard-modal-close,.dashboard-modal-search{align-items:center;background:var(--color-surface)}.dashboard-modal-search{border:1px solid #d0d5dd;border-radius:14px;color:#98a2b3;display:flex;gap:10px;height:46px;margin:18px 24px 0;padding:0 14px}.dashboard-modal-search input{background:#0000;border:none;color:#101828;font-size:.95rem;height:100%;outline:none;width:100%}.dashboard-modal-content{overflow-y:auto;padding:20px 24px 24px}.occupancy-list-modal{max-height:calc(100vh - 220px)}.occupancy-item-modal{border:1px solid #eaecf0;border-radius:16px;padding:16px}.occupancy-item-top-ranked strong{max-width:calc(100% - 72px)}@media (max-width:768px){@media (max-width:768px){.dashboard-topbar-filters{width:100%}.dashboard-filter,.dashboard-filter-visualizacao{min-width:100%;width:100%}.dashboard-range-toggle{flex-wrap:wrap;width:100%}.dashboard-range-toggle button{flex-basis:calc(50% - 4px);flex-grow:1;flex-shrink:1;justify-content:center}}.dashboard-card-header-stacked-mobile{align-items:stretch;flex-direction:column}.dashboard-secondary-action{width:100%}.dashboard-modal-content,.dashboard-modal-header{padding-left:16px;padding-right:16px}.dashboard-modal-search{margin-left:16px;margin-right:16px}}.header-actions .action-button:disabled{cursor:not-allowed;opacity:.65}.integration-topbar{align-items:center}.integration-loading-card{align-items:center;background:var(--color-surface);border:1px solid var(--color-border);border-radius:18px;box-shadow:0 2px 8px #1018280a;display:flex;justify-content:center;min-height:280px}.integration-alert{align-items:flex-start;background:var(--color-surface);border:1px solid var(--color-border);border-radius:16px;display:flex;gap:.875rem;padding:1rem 1.125rem}.integration-alert svg{flex-shrink:0;margin-top:.125rem}.integration-alert div{display:flex;flex-direction:column;gap:.25rem}.integration-alert strong{color:var(--color-text-strong);font-size:.95rem}.integration-alert span{color:var(--color-text);font-size:.92rem;line-height:1.45rem}.integration-alert.warning{background:#f59e0b14;border-color:#f59e0b3d}.integration-alert.warning svg{color:#f59e0b}.integration-layout{grid-gap:1.5rem;align-items:start;display:grid;gap:1.5rem;grid-template-columns:minmax(0,1.8fr) minmax(320px,1fr)}.integration-sidebar{display:flex;flex-direction:column;gap:1.5rem}.integration-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:18px;box-shadow:0 2px 8px #1018280a;overflow:hidden}.integration-form-card{padding:1.5rem}.integration-card-header{margin-bottom:1.25rem;padding-left:1rem;padding-top:1rem}.integration-card-title{align-items:flex-start;display:flex;gap:.875rem}.integration-card-title svg{color:var(--color-primary);margin-top:.125rem}.integration-card-title h2{color:var(--color-text-strong);font-size:1.125rem;font-weight:800;line-height:1.5rem;margin:0}.integration-card-title p{color:var(--color-text-muted);font-size:.92rem;line-height:1.45rem;margin:.35rem 0 0}.integration-fields{display:flex;flex-direction:column;gap:1.125rem}.integration-field-group{display:flex;flex-direction:column;gap:.5rem}.integration-field-group label{color:var(--color-text);font-size:.92rem;font-weight:700}.integration-field-group input{background:var(--color-input-surface);border:1px solid var(--color-border);border-radius:14px;box-sizing:border-box;color:var(--color-text-strong);font-size:.95rem;height:48px;outline:none;padding:0 .95rem;transition:border-color .2s ease,box-shadow .2s ease,background .2s ease;width:100%}.integration-field-group input:focus-visible{border-color:var(--color-primary);box-shadow:0 0 0 1px var(--color-primary);outline:none}.integration-field-group input[readonly]{background:var(--color-disabled-bg-light);color:var(--color-text-muted);cursor:default}.integration-field-group small{color:var(--color-text-muted);font-size:.85rem;line-height:1.35rem}.integration-input-with-icon{align-items:center;display:flex;position:relative}.integration-input-with-icon>svg:first-child{color:var(--color-text-muted);left:.9rem;pointer-events:none;position:absolute}.integration-input-with-icon input{padding-left:2.75rem;padding-right:3rem}.integration-inline-icon-button{align-items:center;background:#0000;border:none;border-radius:10px;color:var(--color-text-muted);cursor:pointer;display:flex;height:2.25rem;justify-content:center;position:absolute;right:.55rem;transition:background .2s ease,color .2s ease;width:2.25rem}.integration-inline-icon-button:hover{background:var(--color-disabled-bg-dark);color:var(--color-text-strong)}.integration-token-actions{display:flex;justify-content:flex-start}.integration-secondary-button{background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;color:var(--color-text-strong);cursor:pointer;font-size:.9rem;font-weight:600;min-height:40px;padding:0 1rem;transition:border-color .2s ease,color .2s ease,box-shadow .2s ease}.integration-secondary-button:hover:not(:disabled){border-color:var(--color-primary);color:var(--color-primary)}.integration-secondary-button:disabled{cursor:not-allowed;opacity:.6}.integration-toggle-box{align-items:center;background:var(--color-background);border:1px solid var(--color-border);border-radius:16px;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;padding:1rem}.integration-toggle-header{align-items:flex-start;display:flex;flex:1 1;gap:.875rem;min-width:220px}.integration-toggle-icon{align-items:center;background:var(--color-primary-shadow);border-radius:14px;color:var(--color-primary);display:flex;flex-shrink:0;height:2.75rem;justify-content:center;width:2.75rem}.integration-toggle-header strong{color:var(--color-text-strong);display:block;font-size:.95rem;margin-bottom:.25rem}.integration-toggle-header span{color:var(--color-text-muted);font-size:.9rem;line-height:1.4rem}.integration-checkbox{align-items:center;color:var(--color-text-strong);cursor:pointer;display:inline-flex;font-weight:700;gap:.65rem}.integration-checkbox input{accent-color:var(--color-primary);height:1.05rem;width:1.05rem}.integration-status-list{display:flex;flex-direction:column}.integration-status-item{align-items:flex-start;border-top:1px solid var(--color-border);display:flex;gap:1rem;justify-content:space-between;padding:1rem 1.25rem}.integration-status-item:first-of-type{border-top:none}.integration-status-item span:first-child{color:var(--color-text-muted);font-size:.9rem;font-weight:600}.integration-status-item strong{color:var(--color-text-strong);font-size:.92rem;text-align:right}.integration-break-text{word-break:break-word}.integration-badge{align-items:center;border-radius:999px;display:inline-flex;font-size:.82rem;font-weight:700;justify-content:center;min-height:2rem;padding:0 .75rem;white-space:nowrap}.integration-badge.success{background:#12b76a1f;color:#067647}.integration-badge.warning{background:#f59e0b24;color:#b54708}.integration-badge.neutral{background:var(--color-disabled-bg-dark);color:var(--color-text)}.integration-note-item,.integration-notes{display:flex;flex-direction:column}.integration-note-item{border-top:1px solid var(--color-border);gap:.35rem;padding:1rem 1.25rem}.integration-note-item:first-of-type{border-top:none}.integration-note-item strong{color:var(--color-text-strong);font-size:.92rem}.integration-note-item span{color:var(--color-text-muted);font-size:.9rem;line-height:1.45rem}@media (max-width:1100px){.integration-layout{grid-template-columns:1fr}}@media (max-width:767px){.integration-form-card{padding:1rem}.integration-note-item,.integration-status-item{padding:.95rem 1rem}.integration-status-item{flex-direction:column}.integration-toggle-box{align-items:flex-start}}.waitlist-inline-loader,.waitlist-loading-card{align-items:center;display:flex;justify-content:center;padding:3rem 1rem}.waitlist-topbar h1{color:var(--color-text-strong);font-size:1.875rem;font-weight:800;letter-spacing:-.025em;line-height:2.25rem;margin:0}.waitlist-topbar p{color:var(--color-text-muted);font-size:.98rem;line-height:1.55rem;margin:.5rem 0 0}.waitlist-alert{align-items:flex-start;background:var(--color-surface);border:1px solid var(--color-border);border-radius:16px;box-shadow:0 2px 8px #1018280a;display:flex;gap:.875rem;padding:1rem 1.1rem}.waitlist-alert svg{color:var(--color-primary);flex-shrink:0;margin-top:.1rem}.waitlist-alert div{display:flex;flex-direction:column;gap:.35rem}.waitlist-alert strong{color:var(--color-text-strong);font-size:.95rem}.waitlist-alert span{color:var(--color-text-muted);font-size:.92rem;line-height:1.45rem}.waitlist-layout{grid-gap:1.25rem;align-items:start;display:grid;gap:1.25rem;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr)}.waitlist-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:18px;box-shadow:0 2px 8px #1018280a;padding:1.25rem}.waitlist-card-header{align-items:flex-start;display:flex;gap:1rem;justify-content:space-between;margin-bottom:1rem}.waitlist-card-header h2{color:var(--color-text-strong);font-size:1.1rem;font-weight:800;margin:0}.waitlist-card-header p{color:var(--color-text-muted);font-size:.92rem;line-height:1.45rem;margin:.35rem 0 0}.waitlist-fields-grid{grid-gap:.95rem;display:grid;gap:.95rem;grid-template-columns:repeat(2,minmax(0,1fr))}.waitlist-search-actions{display:flex;justify-content:flex-end;margin-top:1rem}.waitlist-slot-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(2,minmax(0,1fr))}.waitlist-slot-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:16px;cursor:pointer;display:flex;flex-direction:column;gap:.85rem;padding:1rem;text-align:left;transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease,background .2s ease;width:100%}.waitlist-slot-card.active,.waitlist-slot-card:hover{border-color:var(--color-primary);box-shadow:0 0 0 4px var(--color-primary-shadow)}.waitlist-slot-card.active{background:#f8fbff}.waitlist-slot-card-top{align-items:flex-start;display:flex;gap:.75rem;justify-content:space-between}.waitlist-slot-card-title{align-items:center;color:var(--color-text-strong);display:flex;gap:.55rem}.waitlist-slot-card-title svg{color:var(--color-primary)}.waitlist-slot-card-title strong{font-size:.98rem;line-height:1.35rem}.waitlist-slot-card-body{display:flex;flex-direction:column;gap:.35rem}.waitlist-slot-card-body span{color:var(--color-text-muted);font-size:.9rem;line-height:1.4rem}.waitlist-slot-card-body strong{color:var(--color-text)}.waitlist-slot-status,.waitlist-status{align-items:center;border-radius:999px;display:inline-flex;font-size:.78rem;font-weight:700;justify-content:center;min-height:30px;padding:0 .75rem;white-space:nowrap}.waitlist-slot-status.scheduled{background:#eff6ff;color:#1d4ed8}.waitlist-slot-status.confirmed{background:#ecfdf3;color:#067647}.waitlist-slot-status.rescheduled{background:#fff7e8;color:#b54708}.waitlist-status.waiting{background:#eff6ff;color:#1d4ed8}.waitlist-status.pending{background:#fff7e8;color:#b54708}.waitlist-status.confirmed{background:#ecfdf3;color:#067647}.waitlist-status.skipped{background:#fff4ed;color:#c2410c}.waitlist-status.canceled,.waitlist-status.expired{background:#f2f4f7;color:#475467}.waitlist-empty-state{background:var(--color-background);border:1px dashed var(--color-border);border-radius:14px;color:var(--color-text-muted);font-size:.95rem;line-height:1.45rem;padding:1.2rem;text-align:center}.waitlist-queue-header{align-items:center}.waitlist-selected-slot-summary{display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:1rem}.waitlist-summary-pill{align-items:center;background:var(--color-background);border:1px solid var(--color-border);border-radius:999px;color:var(--color-text);display:inline-flex;font-size:.9rem;font-weight:600;gap:.45rem;min-height:40px;padding:0 .85rem}.waitlist-summary-pill svg{color:var(--color-primary)}.waitlist-add-form{grid-gap:.85rem;align-items:end;display:grid;gap:.85rem;grid-template-columns:minmax(0,1fr) auto;margin-bottom:1rem}.waitlist-icon-button,.waitlist-primary-button,.waitlist-secondary-button{align-items:center;border-radius:12px;cursor:pointer;display:inline-flex;font-size:.92rem;font-weight:700;gap:.5rem;justify-content:center;min-height:44px;transition:background .2s ease,border-color .2s ease,color .2s ease,box-shadow .2s ease,opacity .2s ease}.waitlist-primary-button{background:var(--color-primary);border:none;color:var(--color-surface);padding:0 1rem}.waitlist-primary-button:hover{background:var(--color-primary-hover)}.waitlist-primary-button:focus-visible{border-color:var(--color-primary);box-shadow:0 0 0 1px var(--color-primary);outline:none}.waitlist-secondary-button{background:var(--color-surface);border:1px solid var(--color-border);color:var(--color-text-strong);padding:0 1rem}.waitlist-secondary-button:hover{border-color:var(--color-primary);color:var(--color-primary)}.waitlist-icon-button{background:var(--color-surface);border:1px solid var(--color-border);color:var(--color-text-strong);min-width:44px;padding:0;width:44px}.waitlist-icon-button:hover{background:var(--color-border-light);border-color:var(--color-primary);color:var(--color-primary)}.waitlist-icon-button.danger{color:#dc2626}.waitlist-icon-button.danger:hover{background:#fef2f2;border-color:#fecaca;color:#b91c1c}.waitlist-icon-button:disabled,.waitlist-primary-button:disabled,.waitlist-secondary-button:disabled{cursor:not-allowed;opacity:.55}.waitlist-entry-list{display:flex;flex-direction:column;gap:.85rem}.waitlist-entry-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:16px;display:flex;gap:1rem;justify-content:space-between;padding:1rem}.waitlist-entry-main{display:flex;flex:1 1;flex-direction:column;gap:.75rem;min-width:0}.waitlist-entry-title-row{align-items:center;display:flex;flex-wrap:wrap;gap:.75rem;justify-content:space-between}.waitlist-entry-title-row strong{color:var(--color-text-strong);font-size:1rem}.waitlist-entry-meta{display:flex;flex-wrap:wrap;gap:.6rem 1rem}.waitlist-entry-meta span{color:var(--color-text-muted);font-size:.88rem;line-height:1.4rem}.waitlist-entry-meta strong{color:var(--color-text)}.waitlist-entry-actions{align-items:flex-start;display:flex;flex-shrink:0}.admin-panel-content,.receptionist-panel-content{padding-bottom:2rem}@media (max-width:1100px){.waitlist-layout,.waitlist-slot-grid{grid-template-columns:1fr}}@media (max-width:767px){.waitlist-add-form,.waitlist-fields-grid{grid-template-columns:1fr}.waitlist-entry-card{flex-direction:column}.waitlist-entry-actions{justify-content:flex-end}}.financial-reports-content{display:flex;flex-direction:column;gap:1.5rem}.financial-reports-topbar h1{margin:0}.financial-reports-topbar p{color:#667085;color:var(--color-text-muted,#667085);margin:.35rem 0 0}.financial-report-card,.financial-reports-filters-card{background:var(--color-surface);border:1px solid #eaecf0;border:1px solid var(--color-border,#eaecf0);border-radius:16px;box-shadow:0 10px 30px #0f172a0f;padding:1.25rem}.financial-reports-filters-grid{grid-gap:1rem;align-items:end;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.financial-reports-filter-actions{align-items:end;display:flex}.financial-reports-primary-button{background:var(--color-primary);border:none;border-radius:12px;color:#fff;cursor:pointer;font-weight:600;height:44px;width:100%}.financial-reports-loading{align-items:center;display:flex;justify-content:center;min-height:220px}.financial-metrics-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.financial-metric-card{background:var(--color-surface);border:1px solid #eaecf0;border:1px solid var(--color-border,#eaecf0);border-radius:16px;padding:1.25rem}.financial-metric-card-top,.financial-report-card-header{align-items:center;display:flex;gap:1rem;justify-content:space-between}.financial-metric-card strong{display:block;font-size:2rem;margin-top:.9rem}.financial-metric-card small{color:#667085;color:var(--color-text-muted,#667085)}.financial-report-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}.financial-chart-wrapper{height:320px;margin-top:1rem;width:100%}.financial-table-scroll{margin-top:1rem;overflow-x:auto}.financial-table{border-collapse:collapse;width:100%}.financial-table td,.financial-table th{border-bottom:1px solid #eaecf0;border-bottom:1px solid var(--color-border,#eaecf0);padding:.85rem;text-align:left;white-space:nowrap}.appointment-rules-loading{align-items:center;display:flex;justify-content:center;padding:4rem 1rem}.appointment-rules-page{gap:1.5rem}.appointment-rules-topbar h1{color:var(--color-text-strong);font-size:1.875rem;font-weight:800;line-height:2.25rem;margin:0}.appointment-rules-topbar p{color:var(--color-text-muted);line-height:1.5rem;margin:.5rem 0 0}.appointment-rules-alert{align-items:flex-start;background:var(--color-surface);border:1px solid var(--color-border);border-radius:16px;display:flex;gap:.875rem;padding:1rem 1.1rem}.appointment-rules-alert svg,.appointment-rules-card-icon{color:var(--color-primary)}.appointment-rules-alert div{display:flex;flex-direction:column;gap:.35rem}.appointment-rules-alert strong{color:var(--color-text-strong)}.appointment-rules-alert span{color:var(--color-text-muted);line-height:1.45rem}.appointment-rules-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:18px;box-shadow:0 2px 8px #1018280a;padding:1.5rem}.appointment-rules-card-header{align-items:flex-start;display:flex;gap:1rem;justify-content:space-between;margin-bottom:1.25rem}.appointment-rules-card-title{align-items:center;display:flex;gap:.9rem}.appointment-rules-card-icon{align-items:center;background:#eef4ff;border-radius:14px;display:flex;height:48px;justify-content:center;width:48px}.appointment-rules-card-title h2{color:var(--color-text-strong);margin:0}.appointment-rules-card-title p{color:var(--color-text-muted);margin:.35rem 0 0}.appointment-rules-save-button{align-items:center;background:var(--color-primary);border:none;border-radius:12px;color:var(--color-surface);cursor:pointer;display:inline-flex;font-weight:700;gap:.5rem;min-height:44px;padding:0 1rem}.appointment-rules-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(2,minmax(0,1fr))}.appointment-rules-field{display:flex;flex-direction:column;gap:.55rem}.appointment-rules-field span{color:var(--color-text-strong);font-size:.95rem;font-weight:600}.appointment-rules-field input{background:var(--color-input-surface);border:1px solid var(--color-border);border-radius:12px;color:var(--color-text);font-size:1rem;height:46px;padding:0 .95rem}@media (max-width:900px){.appointment-rules-card-header,.appointment-rules-grid{flex-direction:column;grid-template-columns:1fr}.appointment-rules-save-button{justify-content:center;width:100%}}
/*# sourceMappingURL=main.44e7e3b3.css.map*/