: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(to right, #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:.2}.Toastify__toast-container{z-index:var(--toastify-z-index);-webkit-transform:translate3d(0, 0, var(--toastify-z-index));width:var(--toastify-container-width);box-sizing:border-box;color:#fff;flex-direction:column;display:flex;position:fixed}.Toastify__toast-container--top-left{top:var(--toastify-toast-top);left:var(--toastify-toast-left)}.Toastify__toast-container--top-center{top:var(--toastify-toast-top);align-items:center;left:50%;transform:translate(-50%)}.Toastify__toast-container--top-right{top:var(--toastify-toast-top);right:var(--toastify-toast-right);align-items:end}.Toastify__toast-container--bottom-left{bottom:var(--toastify-toast-bottom);left:var(--toastify-toast-left)}.Toastify__toast-container--bottom-center{bottom:var(--toastify-toast-bottom);align-items:center;left:50%;transform:translate(-50%)}.Toastify__toast-container--bottom-right{bottom:var(--toastify-toast-bottom);right:var(--toastify-toast-right);align-items:end}.Toastify__toast{--y:0px;touch-action:none;width:var(--toastify-toast-width);min-height:var(--toastify-toast-min-height);box-sizing:border-box;padding:var(--toastify-toast-padding);border-radius:var(--toastify-toast-bd-radius);box-shadow:var(--toastify-toast-shadow);max-height:var(--toastify-toast-max-height);font-family:var(--toastify-font-family);z-index:0;word-break:break-word;flex:auto;align-items:center;margin-bottom:1rem;display:flex;position:relative}@media only screen and (width<=480px){.Toastify__toast-container{width:100vw;left:env(safe-area-inset-left);margin:0}.Toastify__toast-container--top-left,.Toastify__toast-container--top-center,.Toastify__toast-container--top-right{top:env(safe-area-inset-top);transform:translate(0)}.Toastify__toast-container--bottom-left,.Toastify__toast-container--bottom-center,.Toastify__toast-container--bottom-right{bottom:env(safe-area-inset-bottom);transform:translate(0)}.Toastify__toast-container--rtl{right:env(safe-area-inset-right);left:initial}.Toastify__toast{--toastify-toast-width:100%;border-radius:0;margin-bottom:0}}.Toastify__toast-container[data-stacked=true]{width:var(--toastify-toast-width)}@media only screen and (width<=480px){.Toastify__toast-container[data-stacked=true]{width:100vw}}.Toastify__toast--stacked{width:100%;transform:translate3d(0, var(--y), 0) scale(var(--s));transition:transform .3s;position:absolute}.Toastify__toast--stacked[data-collapsed] .Toastify__toast-body,.Toastify__toast--stacked[data-collapsed] .Toastify__close-button{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{content:"";height:calc(var(--g) * 1px);position:absolute;bottom:100%;left:0;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{content:"";z-index:-1;height:100%;position:absolute;bottom:0;left:0;right:0;transform:scaleY(3)}.Toastify__toast--rtl{direction:rtl}.Toastify__toast--close-on-click{cursor:pointer}.Toastify__toast-icon{flex-shrink:0;width:22px;margin-inline-end:10px;display:flex}.Toastify--animate{animation-duration:.5s;animation-fill-mode:both}.Toastify--animate-icon{animation-duration:.3s;animation-fill-mode:both}.Toastify__toast-theme--dark{background:var(--toastify-color-dark);color:var(--toastify-text-color-dark)}.Toastify__toast-theme--light,.Toastify__toast-theme--colored.Toastify__toast--default{background:var(--toastify-color-light);color:var(--toastify-text-color-light)}.Toastify__toast-theme--colored.Toastify__toast--info{color:var(--toastify-text-color-info);background:var(--toastify-color-info)}.Toastify__toast-theme--colored.Toastify__toast--success{color:var(--toastify-text-color-success);background:var(--toastify-color-success)}.Toastify__toast-theme--colored.Toastify__toast--warning{color:var(--toastify-text-color-warning);background:var(--toastify-color-warning)}.Toastify__toast-theme--colored.Toastify__toast--error{color:var(--toastify-text-color-error);background:var(--toastify-color-error)}.Toastify__progress-bar-theme--light{background:var(--toastify-color-progress-light)}.Toastify__progress-bar-theme--dark{background:var(--toastify-color-progress-dark)}.Toastify__progress-bar--info{background:var(--toastify-color-progress-info)}.Toastify__progress-bar--success{background:var(--toastify-color-progress-success)}.Toastify__progress-bar--warning{background:var(--toastify-color-progress-warning)}.Toastify__progress-bar--error{background:var(--toastify-color-progress-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,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--error{background:var(--toastify-color-transparent)}.Toastify__close-button{color:#fff;cursor:pointer;opacity:.7;z-index:1;background:0 0;border:none;outline:none;padding:0;transition:all .3s;position:absolute;top:6px;right:6px}.Toastify__toast--rtl .Toastify__close-button{left:6px;right:unset}.Toastify__close-button--light{color:#000;opacity:.3}.Toastify__close-button>svg{fill:currentColor;width:14px;height:16px}.Toastify__close-button:hover,.Toastify__close-button:focus{opacity:1}@keyframes Toastify__trackProgress{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.Toastify__progress-bar{z-index:1;opacity:.7;transform-origin:0;width:100%;height:100%;position:absolute;bottom:0;left:0}.Toastify__progress-bar--animated{animation:linear forwards Toastify__trackProgress}.Toastify__progress-bar--controlled{transition:transform .2s}.Toastify__progress-bar--rtl{right:0;left:initial;transform-origin:100%;border-bottom-left-radius:initial}.Toastify__progress-bar--wrp{border-bottom-left-radius:var(--toastify-toast-bd-radius);border-bottom-right-radius:var(--toastify-toast-bd-radius);width:100%;height:5px;position:absolute;bottom:0;left:0;overflow:hidden}.Toastify__progress-bar--wrp[data-hidden=true]{opacity:0}.Toastify__progress-bar--bg{opacity:var(--toastify-color-progress-bgo);width:100%;height:100%}.Toastify__spinner{box-sizing:border-box;border:2px solid;border-color:var(--toastify-spinner-color-empty-area);border-right-color:var(--toastify-spinner-color);border-radius:100%;width:20px;height:20px;animation:.65s linear infinite Toastify__spin}@keyframes Toastify__bounceInRight{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate(3000px)}60%{opacity:1;transform:translate(-25px)}75%{transform:translate(10px)}90%{transform:translate(-5px)}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:translate(-3000px)}60%{opacity:1;transform:translate(25px)}75%{transform:translate(-10px)}90%{transform:translate(5px)}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:translateY(3000px)}60%{opacity:1;transform:translateY(-20px)}75%{transform:translateY(10px)}90%{transform:translateY(-5px)}to{transform:translate(0,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:translateY(-2000px)}}@keyframes Toastify__bounceInDown{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translateY(-3000px)}60%{opacity:1;transform:translateY(25px)}75%{transform:translateY(-10px)}90%{transform:translateY(5px)}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:translateY(2000px)}}.Toastify__bounce-enter--top-left,.Toastify__bounce-enter--bottom-left{animation-name:Toastify__bounceInLeft}.Toastify__bounce-enter--top-right,.Toastify__bounce-enter--bottom-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--top-left,.Toastify__bounce-exit--bottom-left{animation-name:Toastify__bounceOutLeft}.Toastify__bounce-exit--top-right,.Toastify__bounce-exit--bottom-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%{opacity:0;animation-timing-function:ease-in;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%{transform:translate3d(0, var(--y), 0) perspective(400px) rotate3d(1, 0, 0, -20deg);opacity:1}to{transform:translate3d(0, var(--y), 0) perspective(400px) rotate3d(1, 0, 0, 90deg);opacity:0}}.Toastify__flip-enter{animation-name:Toastify__flipIn}.Toastify__flip-exit{animation-name:Toastify__flipOut}@keyframes Toastify__slideInRight{0%{visibility:visible;transform:translate(110%)}to{transform:translate3d(0, var(--y), 0)}}@keyframes Toastify__slideInLeft{0%{visibility:visible;transform:translate(-110%)}to{transform:translate3d(0, var(--y), 0)}}@keyframes Toastify__slideInUp{0%{visibility:visible;transform:translateY(110%)}to{transform:translate3d(0, var(--y), 0)}}@keyframes Toastify__slideInDown{0%{visibility:visible;transform:translateY(-110%)}to{transform:translate3d(0, var(--y), 0)}}@keyframes Toastify__slideOutRight{0%{transform:translate3d(0, var(--y), 0)}to{visibility:hidden;transform:translate3d(110%, var(--y), 0)}}@keyframes Toastify__slideOutLeft{0%{transform:translate3d(0, var(--y), 0)}to{visibility:hidden;transform:translate3d(-110%, var(--y), 0)}}@keyframes Toastify__slideOutDown{0%{transform:translate3d(0, var(--y), 0)}to{visibility:hidden;transform:translateY(500px)}}@keyframes Toastify__slideOutUp{0%{transform:translate3d(0, var(--y), 0)}to{visibility:hidden;transform:translateY(-500px)}}.Toastify__slide-enter--top-left,.Toastify__slide-enter--bottom-left{animation-name:Toastify__slideInLeft}.Toastify__slide-enter--top-right,.Toastify__slide-enter--bottom-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--top-left,.Toastify__slide-exit--bottom-left{animation-name:Toastify__slideOutLeft;animation-duration:.3s;animation-timing-function:ease-in}.Toastify__slide-exit--top-right,.Toastify__slide-exit--bottom-right{animation-name:Toastify__slideOutRight;animation-duration:.3s;animation-timing-function:ease-in}.Toastify__slide-exit--top-center{animation-name:Toastify__slideOutUp;animation-duration:.3s;animation-timing-function:ease-in}.Toastify__slide-exit--bottom-center{animation-name:Toastify__slideOutDown;animation-duration:.3s;animation-timing-function:ease-in}@keyframes Toastify__spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.react-international-phone-country-selector{position:relative}.react-international-phone-country-selector-button{height:var(--react-international-phone-height,36px);box-sizing:border-box;border:1px solid var(--react-international-phone-country-selector-border-color,var(--react-international-phone-border-color,gainsboro));appearance:button;background-color:var(--react-international-phone-country-selector-background-color,var(--react-international-phone-background-color,white));cursor:pointer;text-transform:none;-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;margin:0;padding:0;display:flex}.react-international-phone-country-selector-button:hover{background-color:var(--react-international-phone-country-selector-background-color-hover,whitesmoke)}.react-international-phone-country-selector-button--hide-dropdown{cursor:auto}.react-international-phone-country-selector-button--hide-dropdown:hover{background-color:#0000}.react-international-phone-country-selector-button__button-content{justify-content:center;align-items:center;display:flex}.react-international-phone-country-selector-button__flag-emoji{margin:0 4px}.react-international-phone-country-selector-button__flag-emoji--disabled{opacity:.75}.react-international-phone-country-selector-button__dropdown-arrow{border-top:var(--react-international-phone-country-selector-arrow-size,4px) solid var(--react-international-phone-country-selector-arrow-color,#777);border-right:var(--react-international-phone-country-selector-arrow-size,4px) solid transparent;border-left:var(--react-international-phone-country-selector-arrow-size,4px) solid transparent;margin-right:4px;transition:all .1s ease-out}.react-international-phone-country-selector-button__dropdown-arrow--active{transform:rotateX(180deg)}.react-international-phone-country-selector-button__dropdown-arrow--disabled{border-top-color:var(--react-international-phone-disabled-country-selector-arrow-color,#999)}.react-international-phone-country-selector-button--disabled,.react-international-phone-country-selector-button--disabled:hover{background-color:var(--react-international-phone-disabled-country-selector-background-color,var(--react-international-phone-disabled-background-color,whitesmoke))}.react-international-phone-country-selector-button--disabled{cursor:auto}.react-international-phone-flag-emoji{width:var(--react-international-phone-flag-width,24px);height:var(--react-international-phone-flag-height,24px);box-sizing:border-box}.react-international-phone-country-selector-dropdown{z-index:1;top:var(--react-international-phone-dropdown-top,44px);left:var(--react-international-phone-dropdown-left,0);background-color:var(--react-international-phone-dropdown-item-background-color,var(--react-international-phone-background-color,white));width:300px;max-height:200px;box-shadow:var(--react-international-phone-dropdown-shadow,2px 2px 16px #00000040);color:var(--react-international-phone-dropdown-item-text-color,var(--react-international-phone-text-color,#222));flex-direction:column;margin:0;padding:4px 0;list-style:none;display:flex;position:absolute;overflow-y:scroll}.react-international-phone-country-selector-dropdown__preferred-list-divider{height:1px;margin:var(--react-international-phone-dropdown-preferred-list-divider-margin,0);background:var(--react-international-phone-dropdown-preferred-list-divider-color,var(--react-international-phone-border-color,gainsboro));border:none}.react-international-phone-country-selector-dropdown__list-item{min-height:var(--react-international-phone-dropdown-item-height,28px);box-sizing:border-box;align-items:center;padding:2px 8px;display:flex}.react-international-phone-country-selector-dropdown__list-item-flag-emoji{margin-right:8px}.react-international-phone-country-selector-dropdown__list-item-country-name{font-size:var(--react-international-phone-dropdown-item-font-size,14px);text-overflow:ellipsis;white-space:nowrap;margin-right:8px;overflow:hidden}.react-international-phone-country-selector-dropdown__list-item-dial-code{color:var(--react-international-phone-dropdown-item-dial-code-color,gray);font-size:var(--react-international-phone-dropdown-item-font-size,14px)}.react-international-phone-country-selector-dropdown__list-item:hover{background-color:var(--react-international-phone-selected-dropdown-item-background-color,var(--react-international-phone-selected-dropdown-item-background-color,whitesmoke));cursor:pointer}.react-international-phone-country-selector-dropdown__list-item--selected,.react-international-phone-country-selector-dropdown__list-item--focused{background-color:var(--react-international-phone-selected-dropdown-item-background-color,whitesmoke);color:var(--react-international-phone-selected-dropdown-item-text-color,var(--react-international-phone-text-color,#222))}.react-international-phone-country-selector-dropdown__list-item--selected .react-international-phone-country-selector-dropdown__list-item-dial-code,.react-international-phone-country-selector-dropdown__list-item--focused .react-international-phone-country-selector-dropdown__list-item-dial-code{color:var(--react-international-phone-selected-dropdown-item-dial-code-color,var(--react-international-phone-dropdown-item-dial-code-color,gray))}.react-international-phone-country-selector-dropdown__list-item--focused{background-color:var(--react-international-phone-selected-dropdown-item-background-color,var(--react-international-phone-selected-dropdown-item-background-color,whitesmoke))}.react-international-phone-dial-code-preview{border:1px solid var(--react-international-phone-dial-code-preview-border-color,var(--react-international-phone-border-color,gainsboro));background-color:var(--react-international-phone-dial-code-preview-background-color,var(--react-international-phone-background-color,white));color:var(--react-international-phone-dial-code-preview-text-color,var(--react-international-phone-text-color,#222));font-size:var(--react-international-phone-dial-code-preview-font-size,var(--react-international-phone-font-size,13px));justify-content:center;align-items:center;margin-right:-1px;padding:0 8px;display:flex}.react-international-phone-dial-code-preview--disabled{background-color:var(--react-international-phone-dial-code-preview-disabled-background-color,var(--react-international-phone-disabled-background-color,whitesmoke));color:var(--react-international-phone-dial-code-preview-disabled-text-color,var(--react-international-phone-disabled-text-color,#666))}.react-international-phone-input-container{display:flex}.react-international-phone-input-container .react-international-phone-country-selector-button{border-radius:var(--react-international-phone-border-radius,4px);border-top-right-radius:0;border-bottom-right-radius:0;margin-right:-1px}.react-international-phone-input-container .react-international-phone-input{height:var(--react-international-phone-height,36px);box-sizing:border-box;border:1px solid var(--react-international-phone-border-color,gainsboro);border-radius:var(--react-international-phone-border-radius,4px);background-color:var(--react-international-phone-background-color,white);color:var(--react-international-phone-text-color,#222);font-family:inherit;font-size:var(--react-international-phone-font-size,13px);border-top-left-radius:0;border-bottom-left-radius:0;margin:0;padding:0 8px;overflow:visible}.react-international-phone-input-container .react-international-phone-input:focus{outline:none}.react-international-phone-input-container .react-international-phone-input--disabled{background-color:var(--react-international-phone-disabled-background-color,whitesmoke);color:var(--react-international-phone-disabled-text-color,#666)}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:#1d2826;--bg:#f5f3ee;--panel:#ffffffe0;--panel-solid:#fff;--ink:#1d2826;--muted:#6a766f;--line:#e2ded4;--green:#2f7d64;--green-soft:#e5f3ed;--amber:#a66b19;--amber-soft:#fbefd9;--red:#ae3f36;--red-soft:#fae4e1;--blue:#356a9a;--blue-soft:#e4eef7;--shadow:0 20px 55px #3036311c;--radius:22px;background:#f5f3ee;font-family:Aptos,Segoe UI,sans-serif}*{box-sizing:border-box}body{background:radial-gradient(circle at top left, #e7f1ea 0, transparent 34%), radial-gradient(circle at 80% 10%, #f8e8d1 0, transparent 30%), var(--bg);min-width:320px;min-height:100vh;margin:0}a{color:var(--green);font-weight:700;text-decoration:none}button,input,select,textarea{font:inherit}.app-shell{grid-template-columns:280px 1fr;min-height:100vh;transition:grid-template-columns .2s;display:grid}.app-shell-collapsed{grid-template-columns:84px 1fr}.sidebar{border-right:1px solid var(--line);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#faf9f5d1;flex-direction:column;gap:28px;height:100vh;padding:26px 18px;transition:padding .2s;display:flex;position:sticky;top:0}.sidebar-header{justify-content:space-between;align-items:center;gap:8px;display:flex}.brand{align-items:center;gap:12px;min-width:0;padding:8px;display:flex}.brand-mark{color:#fff;letter-spacing:-.05em;background:#1f3d35;border-radius:16px;place-items:center;width:44px;height:44px;font-weight:800;display:grid}.brand strong{display:block}.brand span,.muted{color:var(--muted);font-size:.9rem}.brand-copy{min-width:0}.sidebar nav{gap:8px;display:grid}.sidebar nav a{color:#4e5b55;border-radius:16px;align-items:center;gap:12px;padding:13px 14px;font-weight:700;display:flex}.sidebar nav a span{color:currentColor;flex:0 0 22px;place-items:center;display:grid}.sidebar nav a svg{display:block}.sidebar nav a strong{font-size:1rem;font-weight:800}.sidebar nav a.active,.sidebar nav a:hover{color:#193f34;background:#eaf2ed}.sidebar-toggle{color:#1f3d35;cursor:pointer;background:#ffffffb8;border:1px solid #1f3d3538;border-radius:999px;flex:none;width:34px;height:34px;font-size:1.45rem;font-weight:900;line-height:1}.sidebar-toggle:hover{background:#fff;border-color:#1f3d3566}.sidebar-collapsed{align-items:center;padding-inline:14px}.sidebar-collapsed .sidebar-header{flex-direction:column;justify-content:center}.sidebar-collapsed .brand{padding:0}.sidebar-collapsed .brand-copy,.sidebar-collapsed nav a strong{display:none}.sidebar-collapsed nav{width:100%}.sidebar-collapsed nav a{justify-content:center;padding:13px 0}.sidebar-collapsed nav a span{flex-basis:auto}.sidebar-logout{color:#486058;cursor:pointer;background:0 0;border:0;border-radius:16px;align-items:center;gap:12px;margin-top:auto;padding:13px 14px;font-weight:800;display:flex}.sidebar-logout:hover{color:#9d332b;background:#fae4e1}.sidebar-logout span{flex:0 0 22px;place-items:center;display:grid}.sidebar-collapsed .sidebar-logout{justify-content:center;width:100%;padding-inline:0}.sidebar-collapsed .sidebar-logout strong{display:none}.login-page{place-items:center;min-height:100vh;padding:24px;display:grid}.login-panel{gap:18px;width:min(440px,100%);display:grid}.login-brand{align-items:center;gap:12px;padding:0 4px;display:flex}.login-brand img{object-fit:contain;width:52px;height:52px}.login-brand strong{color:#193f34;font-size:1.1rem;display:block}.login-brand span{color:var(--muted);font-weight:700}.login-form{border-radius:var(--radius);background:var(--panel);box-shadow:var(--shadow);border:1px solid #e2ded4e6;gap:16px;padding:26px;display:grid}.login-icon{background:var(--green-soft);width:48px;height:48px;color:var(--green);border-radius:16px;place-items:center;display:grid}.login-form h1{color:#193f34;margin:0 0 6px;font-size:2rem;line-height:1}.login-form p{color:var(--muted);margin:0}.login-form .btn{gap:8px;width:100%}.page-container{align-content:start;gap:24px;width:min(1500px,100%);padding:34px;display:grid}.attendance-page-container{width:100%;max-width:none}.page-header{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.attendance-header-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.financial-header-actions{justify-content:flex-end;align-items:end;gap:12px;display:flex}.financial-period-select{min-width:190px}.financial-header-actions .btn{min-height:47px}.page-header h1{letter-spacing:-.07em;margin:4px 0 8px;font-size:clamp(2rem,4vw,3.4rem);line-height:.95}.page-header p{color:var(--muted);max-width:680px;margin:0}.eyebrow,.metric-label{color:var(--green);text-transform:uppercase;letter-spacing:.12em;margin:0 0 8px;font-size:.72rem;font-weight:900}.card{background:var(--panel);border-radius:var(--radius);box-shadow:var(--shadow);border:1px solid #e2ded4e6;padding:22px}.card-header{justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:18px;display:flex}.card h2{letter-spacing:-.03em;margin:0;font-size:1.15rem}.metric-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}.dashboard-metric-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.metric-value{letter-spacing:-.06em;margin-bottom:4px;font-size:clamp(1.8rem,3vw,2.8rem);display:block}.card span,.detail-list span{color:var(--muted)}.dashboard-grid{grid-template-columns:1.4fr .9fr .9fr;align-items:start;gap:18px;display:grid}.two-columns,.split-layout{grid-template-columns:1fr 1fr;align-items:start;gap:18px;display:grid}.split-layout{grid-template-columns:minmax(0,1fr) 360px}.stack{gap:18px;display:grid}.btn{color:#1f3d35;cursor:pointer;white-space:nowrap;background:#ffffff75;border:1px solid #1f3d3538;border-radius:999px;justify-content:center;align-items:center;min-height:42px;padding:10px 16px;font-weight:850;line-height:1;transition:background-color .18s,border-color .18s,box-shadow .18s,color .18s,transform .18s;display:inline-flex;box-shadow:inset 0 1px #ffffffd1,0 8px 18px #1f3d350d}.btn:hover{background:#ffffffc7;border-color:#1f3d3561;transform:translateY(-1px);box-shadow:inset 0 1px #ffffffe6,0 12px 24px #1f3d3517}.btn:focus-visible{border-color:#2f7d64;outline:0;box-shadow:0 0 0 4px #2f7d6426,0 10px 24px #1f3d3514}.btn:disabled{cursor:not-allowed;opacity:.58;box-shadow:none;transform:none}.btn-primary{color:#14372d;background:linear-gradient(#e5f3edfa,#d1e8ded1);border-color:#1f3d359e;box-shadow:inset 0 1px #ffffffe6,0 12px 26px #1f3d351f}.btn-primary:hover{background:linear-gradient(#eff8f4,#cfe9de);border-color:#1f3d35c7;box-shadow:inset 0 1px #fffffff2,0 15px 30px #1f3d3529}.btn-secondary,.btn-outlined{color:#31413b;border-color:#6a766f47}.btn-ghost{color:#486058;box-shadow:none;background:0 0;border-color:#0000}.btn-ghost:hover{background:#ffffff8f;border-color:#6a766f38}.btn-danger{color:#9d332b;background:#fae4e17a;border-color:#ae3f365c}.btn-danger:hover{color:#842920;background:#fae4e1d1;border-color:#ae3f3694}.field{color:#31413b;gap:8px;font-size:.88rem;font-weight:800;display:grid}.field input,.field select,.field textarea{border:1px solid var(--line);width:100%;color:var(--ink);background:#ffffffe0;border-radius:16px;outline:none;padding:12px 13px}.field textarea{resize:vertical;min-height:92px}.field input:focus,.field select:focus,.field textarea:focus{border-color:#7fb69f;box-shadow:0 0 0 4px #2f7d641f}.phone-field .react-international-phone-input-container{width:100%}.phone-field .react-international-phone-country-selector-button{border:1px solid var(--line);background:#ffffffe0;border-right:0;border-radius:16px 0 0 16px;height:46px}.phone-field .react-international-phone-input{border:1px solid var(--line);width:100%;height:46px;color:var(--ink);font:inherit;background:#ffffffe0;border-radius:0 16px 16px 0}.phone-field .react-international-phone-input:focus{border-color:#7fb69f;box-shadow:0 0 0 4px #2f7d641f}.modal:has(.phone-field){overflow:visible}.phone-field .react-international-phone-country-selector-dropdown{z-index:40;border:1px solid var(--line);border-radius:12px;max-height:220px;box-shadow:0 18px 42px #1f2d282e}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.form-grid.single,.clinical-form{grid-template-columns:1fr}.clinical-form{gap:14px;display:grid}.form-actions{justify-content:flex-end;gap:10px;margin-top:18px;display:flex}.profile-layout{grid-template-columns:360px minmax(0,1fr);align-items:start;gap:18px;display:grid}.profile-summary-card{position:sticky;top:24px}.profile-summary{gap:16px;display:grid}.profile-summary h2{color:#193f34;letter-spacing:-.04em;margin:0 0 8px;font-size:1.55rem}.profile-summary p:not(.eyebrow){color:var(--muted);margin:0;line-height:1.45}.profile-avatar{color:#fff;letter-spacing:.04em;background:#1f3d35;border-radius:22px;place-items:center;width:78px;height:78px;font-size:1.45rem;font-weight:950;display:grid}.profile-settings-summary{gap:10px;margin:20px 0 0;display:grid}.profile-settings-summary div{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:14px;padding-top:10px;display:flex}.profile-settings-summary dt{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-size:.78rem;font-weight:900}.profile-settings-summary dd{color:#193f34;margin:0;font-weight:950}.profile-actions{margin-top:0}.session-recurring-toggle{align-self:end;min-height:47px}.session-recurring-preview{border:1px solid var(--line);background:#f8fbf9;border-radius:16px;gap:12px;margin-top:14px;padding:14px;display:grid}.session-recurring-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.session-recurring-preview span{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-size:.78rem;font-weight:900;display:block}.session-recurring-preview strong{color:#193f34;margin-top:5px;font-size:.98rem;display:block}.session-recurring-preview ul{flex-wrap:wrap;gap:8px;margin:8px 0 0;padding:0;list-style:none;display:flex}.session-recurring-preview li{background:var(--green-soft);color:var(--green);border-radius:999px;padding:6px 10px;font-size:.78rem;font-weight:900}.session-recurring-preview p{color:var(--muted);margin:0;font-weight:800}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%}th{text-align:left;color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:.78rem}th,td{border-bottom:1px solid var(--line);vertical-align:middle;padding:13px 12px}td{color:#2d3935}tr.clickable-row{cursor:pointer;transition:background-color .18s}tr.clickable-row:hover{background:#eaf2ed9e}.patient-status-row{box-shadow:inset 4px 0 #0000}.patient-status-row-active{background:#e0f1e861;box-shadow:inset 4px 0 #2e7d5447}.patient-status-row-inactive{background:#ece8df70;box-shadow:inset 4px 0 #5c5a5338}.patient-status-row-referred{background:#e2f1fd75;box-shadow:inset 4px 0 #2c75a83d}.patient-status-row-dropout{background:#fde8e56b;box-shadow:inset 4px 0 #b041373d}.patient-status-row-discharged{background:#fff6e175;box-shadow:inset 4px 0 #ae6f1c3d}.row-actions{flex-wrap:wrap;gap:4px;display:flex}.badge{border-radius:999px;align-items:center;width:fit-content;padding:6px 10px;font-size:.78rem;font-weight:900;display:inline-flex}.badge-neutral{color:#5c5a53;background:#ece8df}.badge-green{background:var(--green-soft);color:var(--green)}.badge-amber{background:var(--amber-soft);color:var(--amber)}.badge-red{background:var(--red-soft);color:var(--red)}.badge-blue{background:var(--blue-soft);color:var(--blue)}.badge-button{cursor:pointer;font:inherit;background:0 0;border:0;padding:0}.badge-button .badge{pointer-events:none}.payable-status-button{outline-offset:2px;border-radius:999px;outline:1px solid}.payable-status-button-pending{outline-color:var(--amber)}.payable-status-button-overdue{outline-color:var(--red)}.payable-status-button:hover{outline-width:2px}.financial-transactions-card th,.financial-transactions-card td{text-align:center}.financial-transactions-card th:nth-child(2),.financial-transactions-card td:nth-child(2){text-align:left}.financial-transactions-card .badge,.financial-transactions-card .row-actions{margin-inline:auto}.financial-transactions-card td:nth-child(2) .badge,.financial-transactions-card td:nth-child(2) .row-actions{margin-inline:0}.financial-transactions-card .row-actions{justify-content:center}.financial-planning-panel{border:1px solid var(--line);background:#ffffff8f;border-radius:16px;gap:12px;padding:14px;display:grid}.financial-planning-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.financial-planning-header strong{color:#193f34;display:block}.financial-planning-header span,.financial-planning-panel p{color:var(--muted);font-size:.88rem}.financial-planning-panel p{margin:0}.financial-planning-list{gap:10px;display:grid}.financial-planning-row{grid-template-columns:1fr 1fr minmax(180px,1.4fr) auto;align-items:end;gap:10px;display:grid}.financial-planning-actions{align-items:center;gap:8px;display:flex}.financial-delete-button{min-height:30px;padding:6px 10px;font-size:.76rem}.financial-groups{gap:14px;display:grid}.financial-patient-group,.financial-ungrouped-transactions{border:1px solid var(--line);background:#ffffff94;border-radius:16px;overflow:hidden}.financial-patient-toggle{cursor:pointer;color:#193f34;width:100%;font:inherit;text-align:left;background:0 0;border:0;grid-template-columns:minmax(0,1fr) auto 18px;align-items:center;gap:14px;padding:14px 16px;font-weight:900;display:grid}.financial-patient-toggle:after{content:"⌄";color:var(--green);font-size:1.05rem;line-height:1;transition:transform .24s;transform:rotate(0)}.financial-patient-group.open .financial-patient-toggle:after{transform:rotate(180deg)}.financial-patient-toggle:hover,.financial-patient-toggle:focus-visible{background:#eaf2ed9e;outline:none}.financial-patient-panel{opacity:0;grid-template-rows:0fr;transition:grid-template-rows .28s,opacity .2s;display:grid}.financial-patient-panel>div{min-height:0;overflow:hidden}.financial-patient-group.open .financial-patient-panel{opacity:1;grid-template-rows:1fr}.financial-patient-title{gap:4px;min-width:0;display:grid}.financial-patient-title strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.financial-patient-title small,.financial-ungrouped-header span{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-size:.78rem;font-weight:900}.financial-patient-summary{color:#263632;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;font-weight:900;display:inline-flex}.financial-patient-summary .badge{margin-inline:0}.financial-patient-group .table-wrap,.financial-ungrouped-transactions .table-wrap{border-top:1px solid var(--line)}.financial-ungrouped-header{color:#193f34;justify-content:space-between;align-items:center;gap:14px;padding:14px 16px;display:flex}.empty-state{color:var(--muted);margin:0;font-weight:800}.agenda-fab{z-index:25;justify-items:end;gap:12px;display:grid;position:fixed;bottom:28px;right:28px}.agenda-fab-triggers{align-items:center;gap:10px;display:flex}.agenda-fab-trigger.btn{border-radius:999px;place-items:center;width:56px;min-height:56px;padding:0;font-size:2rem;line-height:1;display:inline-grid;position:relative;box-shadow:0 18px 40px #1f3d3538}.agenda-fab-trigger>span{line-height:1;display:block;transform:translateY(-3px)}.agenda-fab-trigger:after{content:attr(data-tooltip);color:#fff;opacity:0;pointer-events:none;white-space:nowrap;z-index:2;background:#193f34f5;border:1px solid #1f3d3524;border-radius:10px;width:max-content;max-width:180px;padding:7px 10px;font-size:.78rem;font-weight:850;line-height:1.2;transition:opacity .16s,transform .16s;position:absolute;bottom:calc(100% + 10px);right:50%;transform:translate(50%,6px);box-shadow:0 14px 28px #1f3d352e}.agenda-fab-trigger:before{content:"";opacity:0;pointer-events:none;z-index:1;background:#193f34f5;width:10px;height:10px;transition:opacity .16s,transform .16s;position:absolute;bottom:calc(100% + 5px);right:50%;transform:translate(50%,6px)rotate(45deg)}.agenda-fab-trigger:hover:after,.agenda-fab-trigger:focus-visible:after,.agenda-fab-trigger:hover:before,.agenda-fab-trigger:focus-visible:before{opacity:1;transform:translate(50%)}.agenda-fab-trigger:hover:before,.agenda-fab-trigger:focus-visible:before{transform:translate(50%)rotate(45deg)}.agenda-fab-trigger-cancel.btn{color:#9f3128;background:#fff1ef;border-color:#ae3f3661}.agenda-fab-trigger-cancel>span{transform:translateY(-4px)}.agenda-fab-trigger-cancel.btn:hover,.agenda-fab-trigger-cancel.btn:focus{color:#842920;background:#ffe1dd;border-color:#ae3f368f}.agenda-fab.open .agenda-fab-trigger{transform:rotate(45deg)}.agenda-fab.open .agenda-fab-trigger-cancel{transform:none}.agenda-fab-actions{justify-items:end;gap:10px;display:grid}.agenda-fab-actions button{color:#193f34;font:inherit;cursor:pointer;background:0 0;border:0;grid-template-columns:minmax(0,max-content) 56px;align-items:center;gap:10px;padding:0;display:grid}.agenda-fab-actions button span{color:#1f3d35;background:#fff;border:1px solid #1f3d3547;border-radius:999px;grid-area:1/2;justify-self:center;place-items:center;width:42px;height:42px;font-size:1.35rem;font-weight:950;line-height:1;display:inline-grid;box-shadow:0 12px 28px #1f3d3529}.agenda-fab-actions button strong{white-space:nowrap;background:#fffffff5;border:1px solid #e2ded4f2;border-radius:999px;grid-area:1/1;align-items:center;min-height:34px;padding:7px 11px;font-size:.84rem;display:inline-flex;box-shadow:0 10px 24px #1f3d351f}.agenda-fab-actions button:hover span,.agenda-fab-actions button:focus span{background:#eef5f1;border-color:#1f3d3573}.agenda-fab-actions button:hover strong,.agenda-fab-actions button:focus strong{border-color:#1f3d3552}.agenda-fab-actions .agenda-fab-action-session span{color:#a66b19;background:#fff4df;border-color:#c2751357}.agenda-fab-actions .agenda-fab-action-session strong{color:#7a4f13;background:#fff8ec;border-color:#c2751338}.agenda-fab-actions .agenda-fab-action-session:hover span,.agenda-fab-actions .agenda-fab-action-session:focus span{background:#ffe8bc;border-color:#c2751385}.agenda-fab-actions .agenda-fab-action-commitment span{color:#2b6f9f;background:#eaf5ff;border-color:#2b6f9f52}.agenda-fab-actions .agenda-fab-action-commitment strong{color:#1f5d88;background:#f3f9ff;border-color:#2b6f9f33}.agenda-fab-actions .agenda-fab-action-commitment:hover span,.agenda-fab-actions .agenda-fab-action-commitment:focus span{background:#d8edff;border-color:#2b6f9f80}.agenda-fab-actions .agenda-fab-action-block span{color:#ae3f36;background:#fff1ef;border-color:#ae3f3657}.agenda-fab-actions .agenda-fab-action-block strong{color:#842920;background:#fff7f6;border-color:#ae3f3638}.agenda-fab-actions .agenda-fab-action-block:hover span,.agenda-fab-actions .agenda-fab-action-block:focus span{background:#ffe1dd;border-color:#ae3f368a}.calendar-actions{flex-wrap:wrap;gap:8px;display:flex}.calendar-toolbar{justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.calendar-toolbar strong{color:#193f34;letter-spacing:-.04em;text-transform:capitalize;font-size:1.35rem}.calendar-toolbar .btn{min-height:38px;padding:9px 14px}.calendar-grid{border:1px solid var(--line);background:#ffffff94;border-radius:20px;grid-template-columns:repeat(7,minmax(120px,1fr));display:grid;overflow:hidden}.calendar-weekday{color:#1f3d35;text-transform:uppercase;letter-spacing:.1em;border-right:1px solid var(--line);background:#eef5f1;padding:11px 12px;font-size:.74rem;font-weight:900}.calendar-weekday:nth-child(7){border-right:0}.calendar-day{border-right:1px solid var(--line);border-top:1px solid var(--line);cursor:pointer;background:#ffffffc7;min-height:124px;padding:10px;transition:all .18s}.calendar-day:hover,.calendar-day:focus{background:#f8fbf9;outline:none}.calendar-day:nth-child(7n){border-right:0}.calendar-day.outside{color:var(--muted);background:#f5f3ee9e}.calendar-day.today{background:#f8fbf9;box-shadow:inset 0 0 0 2px #2f7d645c}.calendar-day.selected{background:#eef7f2;box-shadow:inset 0 0 0 2px #1f3d35}.calendar-day.blocked{background:#fff1ef;box-shadow:inset 0 0 0 2px #ae3f3657}.calendar-day.blocked:hover,.calendar-day.blocked:focus{background:#ffe9e6}.calendar-day-top{justify-content:space-between;align-items:center;gap:8px;display:flex}.calendar-day-number{color:#31413b;border-radius:999px;place-items:center;min-width:28px;height:28px;font-weight:900;display:inline-grid}.calendar-day.today .calendar-day-number{color:#fff;background:#1f3d35}.calendar-block-x{color:#ae3f36;cursor:pointer;background:#fff;border:1px solid #ae3f3647;border-radius:999px;place-items:center;width:26px;height:26px;font-size:.78rem;font-weight:950;display:inline-grid;box-shadow:0 6px 14px #ae3f361f}.calendar-block-x:hover,.calendar-block-x:focus{background:#fff7f6;border-color:#ae3f368a;outline:none}.calendar-block-reason{color:#842920;text-align:center;place-items:center;min-height:calc(100% - 36px);margin:0;font-size:.82rem;font-weight:900;line-height:1.35;display:grid;overflow:hidden}.calendar-day-summary{gap:7px;margin-top:10px;display:grid}.calendar-session-list{gap:5px;display:grid}.calendar-session-item{color:#fff8ec;background:#c27513;border-radius:9px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px;padding:5px 6px;font-size:.72rem;font-weight:500;display:grid}.calendar-session-confirmed,.calendar-session-completed{color:#f3fff9;background:#23815f}.calendar-session-no_show{color:#fff5f3;background:#c63d32}.calendar-session-cancelled{color:#fffaf0;background:#69655b}.calendar-commitment-item{color:#f3f9ff;background:#2b6f9f}.calendar-session-item .calendar-session-patient{text-overflow:ellipsis;white-space:nowrap;color:#fff;min-width:0;overflow:hidden}.calendar-session-item .calendar-session-time{color:#fff;opacity:.95;white-space:nowrap}.calendar-session-more{color:#4e5b55;background:#f2eee6;border-radius:999px;width:fit-content;padding:4px 7px;font-size:.72rem;font-weight:900}.calendar-empty{color:var(--muted);margin:14px 0 0;font-weight:800}.selected-day-heading{border:1px solid var(--line);background:#fff9;border-radius:16px;gap:6px;padding:14px;display:grid}.selected-day-heading span{color:var(--muted);text-transform:capitalize}.selected-day-heading strong{color:#193f34;letter-spacing:-.05em;font-size:1.35rem}.day-session-list{gap:12px;margin-top:14px;display:grid}.day-session-card{border:1px solid var(--line);cursor:pointer;background:#ffffffad;border-radius:18px;gap:12px;padding:14px;transition:all .18s;display:grid}.day-session-card:hover,.day-session-card:focus{border-color:#9fc7b6;outline:none;transform:translateY(-1px);box-shadow:0 12px 28px #1f3d351a}.day-card-actions{justify-content:flex-end;margin-left:auto;display:flex}.day-card-complete-button{min-height:34px;padding:7px 12px;font-size:.8rem}.day-card-complete-button.btn{background:var(--green-soft);color:var(--green);border-color:#23815f52}.day-card-complete-button.btn:hover{color:#176348;background:#d7efe4;border-color:#23815f85}.day-session-header{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.day-session-header div{gap:4px;display:grid}.day-session-header span{color:var(--green);font-size:.82rem;font-weight:900}.day-session-header strong{color:#263632;letter-spacing:-.03em;font-size:1.08rem}.day-session-details{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.day-session-chip,.day-session-payment-badge{border-radius:999px;padding:6px 10px;font-size:.78rem;font-weight:900}.day-session-modality-online{background:var(--blue-soft);color:var(--blue)}.day-session-modality-presencial{background:var(--green-soft);color:var(--green)}.day-session-modality-domiciliar{background:var(--amber-soft);color:var(--amber)}.day-session-finance-value{background:var(--green-soft);color:var(--green)}.day-session-finance-empty{color:#5c5a53;background:#ece8df}.session-detail-modal{gap:16px;display:grid}.session-detail-hero{border:1px solid var(--line);background:#f8fbf9;border-radius:18px;justify-content:space-between;align-items:flex-start;gap:14px;padding:16px;display:flex}.session-detail-hero div{gap:6px;display:grid}.session-detail-hero span{color:var(--muted);font-weight:850;line-height:1.5}.session-detail-hero strong{color:#193f34;letter-spacing:-.05em;font-size:1.55rem;line-height:1.05}.session-status-badge{padding:8px 12px;font-size:.84rem;box-shadow:0 8px 18px #1f3d3514}.patient-session-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.patient-session-summary div,.session-hub-card{border:1px solid var(--line);background:#ffffff9e;border-radius:16px;padding:14px}.patient-session-summary span,.session-finance-grid span{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-size:.78rem;font-weight:900;display:block}.patient-session-summary strong,.session-finance-grid strong{color:#263632;letter-spacing:-.03em;margin-top:6px;font-size:1rem;display:block}.session-reschedule-link{background:#f8fbf9;border:1px solid #9db7aa;border-radius:16px;justify-content:space-between;align-items:center;gap:12px;padding:14px;display:flex}.session-reschedule-link div{gap:5px;display:grid}.session-reschedule-link span{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-size:.78rem;font-weight:900}.session-reschedule-link strong{color:#193f34;letter-spacing:-.03em;font-size:1.05rem}.session-hub-card{gap:14px;display:grid}.session-hub-card-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.session-hub-card-header strong{color:#193f34;letter-spacing:-.03em;font-size:1.05rem}.session-hub-card-badges{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.session-observation{color:#31413b;white-space:pre-wrap;margin:0;line-height:1.6}.session-finance-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.session-finance-grid div{background:#f8fbf9;border-radius:14px;padding:12px}.session-total-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:14px;display:grid}.session-total-summary div{border:1px solid var(--line);background:#f8fbf9;border-radius:14px;padding:12px}.session-total-summary span{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-size:.72rem;font-weight:900;display:block}.session-total-summary strong{color:#193f34;letter-spacing:-.05em;margin-top:6px;font-size:1.4rem;display:block}.session-detail-placeholder{background:#f8fbf9;border:1px dashed #9db7aa;border-radius:18px;gap:6px;padding:16px;display:grid}.session-detail-placeholder strong{color:#263632}.session-detail-placeholder span{color:var(--muted);line-height:1.5}.session-actions{border-top:1px solid var(--line);flex-wrap:wrap;gap:8px;padding-top:12px;display:flex}.session-actions .btn{flex:calc(50% - 8px);justify-content:center}.session-actions .session-open-panel-button{color:#214f78;background:linear-gradient(#e4eef7,#cfe1f0);border-color:#356a9a8a;flex-basis:100%}.session-actions .session-open-panel-button:hover{color:#183f63;background:linear-gradient(#eef5fb,#c8ddec);border-color:#356a9ac2}.session-edit-button{color:#7a5b2a;background:#fbefd961;border-color:#a66b193d;box-shadow:inset 0 1px #ffffffd1,0 8px 18px #a66b190a}.session-edit-button:hover{color:#6e501f;background:#fbefd994;border-color:#a66b195c}.tabs{gap:18px;display:grid}.tab-list{border-bottom:1px solid var(--line);gap:8px;padding-bottom:8px;display:flex;overflow-x:auto}.tab-list button{color:var(--muted);white-space:nowrap;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:999px;padding:10px 14px;font-weight:900;transition:all .18s}.tab-list button:hover{color:#31413b;background:#ffffff8a;border-color:#6a766f40}.tab-list button:focus-visible{border-color:#2f7d64;outline:0;box-shadow:0 0 0 4px #2f7d641f}.tab-list button.active{color:#193f34;background:#eef7f2;border-color:#2f7d6461}.patient-hero{border:1px solid var(--line);border-radius:var(--radius);background:#ffffff94;justify-content:space-between;align-items:center;gap:18px;padding:18px 22px;display:flex}.patient-hero p{color:var(--muted);margin:8px 0 0}.patient-hero strong,.patient-hero span{text-align:right;display:block}.alert-list,.finance-summary,.detail-list{gap:14px;display:grid}.alert-list div,.finance-summary div,.detail-list div{border:1px solid var(--line);background:#fff9;border-radius:16px;padding:14px}.alert-list p,.finance-summary span,.detail-list span{margin:8px 0 0}.finance-summary strong,.detail-list strong{letter-spacing:-.04em;margin-top:6px;font-size:1.25rem;display:block}.financial-session-link{border:1px solid var(--line);background:#f8fbf9;border-radius:16px;gap:8px;padding:14px;display:grid}.financial-session-link p{color:var(--muted);margin:0;font-size:.86rem;line-height:1.5}.bar-chart{align-items:end;gap:14px;height:260px;padding-top:28px;display:flex}.bar-item{flex-direction:column;flex:1;justify-content:end;align-items:center;gap:8px;height:100%;display:flex}.bar{background:linear-gradient(#3f8d72,#1f3d35);border-radius:16px 16px 8px 8px;justify-content:center;width:100%;min-height:18px;display:flex;position:relative}.bar span{color:var(--ink);white-space:nowrap;font-size:.75rem;font-weight:900;position:absolute;top:-24px}.side-panel{gap:18px;display:grid}.rich-editor{gap:12px;display:grid}.editor-toolbar{border:1px solid var(--line);background:#ffffffad;border-radius:16px;gap:8px;padding:8px;display:flex}.editor-toolbar button{color:#31413b;cursor:pointer;background:#ffffff9e;border:1px solid #6a766f47;border-radius:10px;padding:8px 10px;font-weight:900;transition:all .18s}.editor-toolbar button:hover{background:#fff;border-color:#1f3d3557}.modal-backdrop{z-index:20;isolation:isolate;background:#1f2d2861;place-items:center;padding:20px;display:grid;position:fixed;inset:0;overflow-y:auto}.modal{z-index:2;background:#fff;border-radius:26px;width:min(720px,100%);max-height:calc(100dvh - 40px);padding:22px;position:relative;overflow:hidden auto;box-shadow:0 30px 90px #0000003d}.modal-header{flex:none;justify-content:space-between;align-items:center;gap:14px;margin-bottom:18px;display:flex}.modal-header h2{margin:0}.modal-close-button{align-items:center;width:38px;min-height:38px;padding:0 0 2px;font-size:1.45rem;line-height:1}.modal-body{padding-right:0;overflow:visible}.modal,.custom-select-menu{scrollbar-width:thin;scrollbar-color:#2f7d648c #e2ded473}.modal::-webkit-scrollbar{width:10px}.custom-select-menu::-webkit-scrollbar{width:10px}.modal::-webkit-scrollbar-track{background:#e2ded45c;border-radius:999px}.custom-select-menu::-webkit-scrollbar-track{background:#e2ded45c;border-radius:999px}.modal::-webkit-scrollbar-thumb{background:linear-gradient(#7fb69f,#2f7d64);border:2px solid #ffffffdb;border-radius:999px}.custom-select-menu::-webkit-scrollbar-thumb{background:linear-gradient(#7fb69f,#2f7d64);border:2px solid #ffffffdb;border-radius:999px}.modal::-webkit-scrollbar-thumb:hover{background:linear-gradient(#5fa88a,#1f3d35)}.custom-select-menu::-webkit-scrollbar-thumb:hover{background:linear-gradient(#5fa88a,#1f3d35)}.modal-body form{gap:14px;display:grid}.modal-body .form-actions{margin:0 -4px -2px;padding:14px 4px 2px}@media (width<=1100px){.app-shell,.app-shell-collapsed{grid-template-columns:1fr}.sidebar,.sidebar-collapsed{align-items:stretch;height:auto;padding:18px;position:static}.sidebar-header,.sidebar-collapsed .sidebar-header{flex-direction:row;justify-content:space-between}.sidebar-collapsed .brand-copy,.sidebar-collapsed nav a strong{display:block}.sidebar nav{grid-template-columns:repeat(5,1fr)}.sidebar nav a,.sidebar-collapsed nav a{justify-content:center;padding:13px 14px}.metric-grid,.dashboard-grid,.two-columns,.split-layout{grid-template-columns:1fr 1fr}.profile-layout{grid-template-columns:1fr}.profile-summary-card{position:static}.side-panel{grid-column:1/-1}}@media (width<=720px){.page-container{padding:22px}.page-header,.patient-hero,.session-detail-hero,.session-reschedule-link,.financial-planning-header{flex-direction:column;align-items:stretch}.financial-header-actions{justify-content:stretch;align-items:stretch}.financial-header-actions .field{flex:1}.financial-period-select{min-width:0}.patient-hero strong,.patient-hero span{text-align:left}.sidebar nav{grid-template-columns:1fr 1fr}.metric-grid,.dashboard-grid,.two-columns,.split-layout,.profile-layout,.form-grid,.patient-session-summary,.session-finance-grid,.session-total-summary,.session-recurring-summary,.financial-planning-row{grid-template-columns:1fr}.card{padding:18px}.agenda-fab{bottom:18px;right:18px}.agenda-fab-actions button strong{text-overflow:ellipsis;max-width:calc(100vw - 100px);overflow:hidden}.modal-backdrop{align-items:start;padding:12px}.modal{border-radius:22px;max-height:calc(100dvh - 24px);padding:18px}}.error-text{color:var(--red);margin:0;font-weight:800}.confirm-message{color:var(--muted);margin:0;line-height:1.6}.session-limit-alert-field{z-index:1;pointer-events:none;position:fixed;inset:0;overflow:hidden}.session-limit-alert-image{opacity:0;filter:drop-shadow(0 18px 24px #00000047);width:185px;height:auto;transform:translateY(18px) scale(.72) rotate(var(--alert-rotation,0deg));animation:.48s cubic-bezier(.2,1.35,.42,1) forwards session-limit-alert-pop;position:absolute}.session-limit-alert-image:first-child{--alert-rotation:-14deg;animation-delay:.12s;top:8%;left:7%}.session-limit-alert-image:nth-child(2){--alert-rotation:9deg;animation-delay:.36s;top:4%;left:20%}.session-limit-alert-image:nth-child(3){--alert-rotation:-7deg;animation-delay:.6s;top:5%;right:19%}.session-limit-alert-image:nth-child(4){--alert-rotation:16deg;animation-delay:.84s;top:12%;right:6%}.session-limit-alert-image:nth-child(5){--alert-rotation:11deg;animation-delay:1.08s;top:28%;left:4%}.session-limit-alert-image:nth-child(6){--alert-rotation:-12deg;animation-delay:1.32s;top:28%;right:4%}.session-limit-alert-image:nth-child(7){--alert-rotation:-4deg;animation-delay:1.56s;bottom:30%;left:11%}.session-limit-alert-image:nth-child(8){--alert-rotation:7deg;animation-delay:1.8s;bottom:31%;right:12%}.session-limit-alert-image:nth-child(9){--alert-rotation:18deg;animation-delay:2.04s;bottom:12%;left:6%}.session-limit-alert-image:nth-child(10){--alert-rotation:-10deg;animation-delay:2.28s;bottom:6%;left:23%}.session-limit-alert-image:nth-child(11){--alert-rotation:13deg;animation-delay:2.52s;bottom:7%;right:24%}.session-limit-alert-image:nth-child(12){--alert-rotation:-18deg;animation-delay:2.76s;bottom:12%;right:5%}.session-limit-alert-image:nth-child(13){--alert-rotation:5deg;animation-delay:.64s;top:2%;left:36%}.session-limit-alert-image:nth-child(14){--alert-rotation:-5deg;animation-delay:.69s;top:2%;right:36%}.session-limit-alert-image:nth-child(15){--alert-rotation:-16deg;animation-delay:.74s;top:46%;left:1%}.session-limit-alert-image:nth-child(16){--alert-rotation:16deg;animation-delay:.79s;top:47%;right:1%}.session-limit-alert-image:nth-child(17){--alert-rotation:-8deg;animation-delay:.84s;bottom:1%;left:34%}.session-limit-alert-image:nth-child(18){--alert-rotation:8deg;animation-delay:.89s;bottom:1%;right:34%}.session-limit-alert-image:nth-child(19){--alert-rotation:20deg;animation-delay:.94s;top:18%;left:14%}.session-limit-alert-image:nth-child(20){--alert-rotation:-20deg;animation-delay:.99s;top:19%;right:15%}.session-limit-alert-image:nth-child(21){--alert-rotation:6deg;animation-delay:1.04s;bottom:20%;left:15%}.session-limit-alert-image:nth-child(22){--alert-rotation:-6deg;animation-delay:1.09s;bottom:20%;right:16%}.session-limit-alert-image:nth-child(23){--alert-rotation:13deg;animation-delay:1.14s;top:1%;left:43%}.session-limit-alert-image:nth-child(24){--alert-rotation:-13deg;animation-delay:1.19s;bottom:2%;right:43%}.session-limit-alert-image:nth-child(25){--alert-rotation:10deg;animation-delay:1.24s;bottom:37%;left:2%}.session-limit-alert-image:nth-child(26){--alert-rotation:-10deg;animation-delay:1.29s;bottom:38%;right:2%}.session-limit-alert-image:nth-child(27){--alert-rotation:-18deg;animation-delay:1.34s;top:10%;left:28%}.session-limit-alert-image:nth-child(28){--alert-rotation:18deg;animation-delay:1.39s;top:11%;right:28%}.session-limit-confirmation{gap:16px;display:grid}.session-limit-confirmation ul{color:#31413b;gap:10px;margin:0;padding-left:22px;font-weight:750;line-height:1.45;display:grid}.session-limit-confirmation li::marker{color:var(--amber)}.bulk-cancel-session-list{gap:10px;max-height:340px;padding-right:4px;display:grid;overflow:auto}.bulk-cancel-alert{color:#7a4f13;background:#fff8ec;border:1px solid #c275133d;border-radius:12px;margin:0;padding:12px;font-weight:800;line-height:1.45}.bulk-cancel-session-item{align-items:center}.bulk-cancel-session-item span{gap:2px;display:grid}.bulk-cancel-session-item small{color:#66746f;font-weight:750}.bulk-cancel-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.bulk-cancel-summary div{border:1px solid var(--line);background:#ffffffad;border-radius:12px;padding:12px}.bulk-cancel-summary span{color:var(--muted);font-size:.82rem;font-weight:800;display:block}.bulk-cancel-summary strong{color:var(--text);font-size:1.35rem;display:block}@keyframes session-limit-alert-pop{0%{opacity:0;transform:translateY(18px) scale(.72) rotate(var(--alert-rotation,0deg))}72%{opacity:.98;transform:translateY(-4px) scale(1.08) rotate(var(--alert-rotation,0deg))}to{opacity:.92;transform:translateY(0) scale(1) rotate(var(--alert-rotation,0deg))}}@media (width<=720px){.session-limit-alert-image{width:96px}.session-limit-alert-image:nth-child(n+11){display:none}}.form-grid-full{grid-column:1/-1}.custom-select-field{position:relative}.custom-select-trigger{border:1px solid var(--line);width:100%;min-height:47px;color:var(--ink);cursor:pointer;text-align:left;background:#ffffffe0;border-radius:16px;outline:none;justify-content:space-between;align-items:center;gap:12px;padding:12px 13px;font-weight:800;display:flex}.custom-select-trigger.open,.custom-select-trigger:focus{border-color:#7fb69f;box-shadow:0 0 0 4px #2f7d641f}.custom-select-trigger:disabled{cursor:not-allowed;opacity:.7}.custom-select-trigger .placeholder{color:var(--muted)}.custom-select-chevron{color:var(--muted);font-size:1rem;line-height:1}.custom-select-menu{z-index:30;background:#fffffffa;border:1px solid #e2ded4f2;border-radius:18px;max-height:280px;padding:8px;position:absolute;top:calc(100% + 8px);left:0;right:0;overflow-y:auto;box-shadow:0 18px 45px #1f2d2829}.custom-select-option{color:#263632;cursor:pointer;text-align:left;background:0 0;border:0;border-radius:12px;width:100%;padding:10px 12px;font-weight:800}.custom-select-option:hover{color:#193f34;background:#eef5f1}.custom-select-option.selected{color:#fff;background:#1f3d35}.anamnesis-form{gap:18px;display:grid}.question-field{gap:10px;display:grid}.question-field>strong{color:#31413b;font-size:.92rem;line-height:1.4}.choice-list{flex-wrap:wrap;gap:10px;display:flex}.checkbox-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.choice-item{border:1px solid var(--line);color:#31413b;cursor:pointer;background:#ffffffb3;border-radius:14px;align-items:center;gap:10px;padding:11px 12px;font-weight:800;display:flex}.choice-item input{accent-color:#1f3d35}.choice-item:has(input:checked){color:#193f34;background:#eaf2ed;border-color:#7fb69f}@media (width<=720px){.checkbox-grid{grid-template-columns:1fr}}.anamnesis-sections{gap:28px;display:grid}.anamnesis-section{gap:16px;display:grid}.anamnesis-section h3{border-bottom:1px solid var(--line);color:#193f34;letter-spacing:-.03em;margin:0;padding-bottom:10px;font-size:1.05rem}.risk-section{border:1px solid var(--amber-soft);background:#fffaf0;border-radius:18px;padding:18px}.risk-result{border:1px solid var(--line);background:#ffffffd1;border-radius:16px;flex-wrap:wrap;align-items:center;gap:12px;padding:14px;display:flex}.risk-result span{color:var(--muted);font-weight:800}.risk-result strong{letter-spacing:-.04em;font-size:1.2rem}.attendance-room-layout{grid-template-columns:minmax(220px,280px) minmax(420px,1fr) minmax(300px,380px);align-items:stretch;gap:16px;min-height:calc(100dvh - 180px);display:grid}.attendance-column,.attendance-video-column{min-width:0}.attendance-column{background:#ffffffbd;border:1px solid #e2ded4e6;border-radius:20px;padding:16px;box-shadow:0 14px 36px #30363114}.attendance-patient-column,.attendance-work-column{flex-direction:column;gap:16px;display:flex}.attendance-patient-card{border-bottom:1px solid var(--line);align-items:center;gap:12px;padding-bottom:14px;display:flex}.attendance-patient-card div{gap:4px;min-width:0;display:grid}.attendance-patient-card span,.attendance-info-list span,.attendance-detail-grid span,.attendance-financial-list span{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-size:.74rem;font-weight:900}.attendance-patient-card strong{color:#193f34;letter-spacing:-.04em;font-size:1.2rem;line-height:1.1}.attendance-avatar{color:#1f3d35;background:linear-gradient(#eaf2ed,#d7e8df);border-radius:18px;flex:none;place-items:center;width:58px;height:58px;font-weight:950;display:grid;overflow:hidden;box-shadow:inset 0 0 0 1px #1f3d3514}.attendance-avatar img{object-fit:cover;width:100%;height:100%}.attendance-info-list{gap:10px;display:grid}.attendance-info-list div{border:1px solid var(--line);background:#f8fbf9;border-radius:14px;gap:5px;padding:11px;display:grid}.attendance-info-list strong{color:#263632;overflow-wrap:anywhere;line-height:1.3}.attendance-quick-actions{gap:8px;margin-top:auto;display:grid}.attendance-quick-actions .btn{width:100%}.video-shell{background:#16221f;border:1px solid #1f3d352e;border-radius:22px;grid-template-rows:auto minmax(360px,1fr) auto auto;min-height:100%;display:grid;position:relative;overflow:hidden;box-shadow:0 22px 58px #1f2d282e}.video-topbar{z-index:1;color:#fff;background:#0e1815d1;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;display:flex}.video-topbar div{gap:3px;display:grid}.video-topbar span{color:#ffffffb3;text-transform:uppercase;letter-spacing:.08em;font-size:.72rem;font-weight:900}.video-topbar strong{letter-spacing:.03em;font-size:1.18rem}.video-topbar .call-status-badge{color:#193f34;background:#eef7f2}.video-topbar .call-status-badge.badge-amber{color:#7a4e14;background:#fbefd9}.video-topbar .call-status-badge.badge-neutral{color:#4f5753;background:#ece8df}.patient-video-placeholder{background:linear-gradient(135deg,#2f7d6438,#356a9a29),#182b26;place-items:center;min-height:360px;padding:32px 32px 108px;display:grid;position:relative}.patient-video-placeholder>div{color:#fff;text-align:center;place-items:center;gap:12px;display:grid}.patient-video-placeholder .attendance-avatar{border-radius:24px;width:86px;height:86px}.patient-video-placeholder strong{letter-spacing:-.04em;font-size:1.55rem}.patient-video-placeholder span{color:#ffffffb8;font-weight:800}.patient-video-placeholder .video-error-message{z-index:4;color:#ffb4ad;position:absolute;top:18px;left:18px}.video-room-name{z-index:4;color:#ffffffc7;background:#0a12109e;border-radius:999px;padding:8px 11px;font-size:.78rem;position:absolute;top:18px;right:18px}.local-camera-preview{background:#101b18;position:absolute;inset:0;overflow:hidden}.local-camera-preview video{object-fit:cover;width:100%;height:100%;transform:scaleX(-1)}.patient-camera-preview video{object-fit:cover;object-position:center center}.local-camera-preview>span{z-index:2;color:#fff;background:#0a12109e;border-radius:999px;padding:8px 11px;font-size:.78rem;position:absolute;bottom:88px;left:18px}.local-camera-paused{color:#fff;align-content:center;place-items:center;gap:12px;width:100%;height:100%;display:grid}.local-camera-paused .video-control-icon{width:42px;height:42px}.livekit-room,.livekit-call-surface{width:100%;height:100%;min-height:360px}.patient-video-placeholder .livekit-room{min-height:0;position:absolute;inset:0}.livekit-call-surface{color:#fff;grid-template-rows:auto minmax(0,1fr);gap:12px;padding:14px;display:grid}.patient-video-placeholder .livekit-call-surface{min-height:0;padding:0;display:block;position:absolute;inset:0}.livekit-call-status{background:#0a12108f;border:1px solid #ffffff24;border-radius:14px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;padding:9px 12px;display:flex}.patient-video-placeholder .livekit-call-status{z-index:3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#080f0d94;position:absolute;top:16px;left:16px;right:16px}.livekit-call-status span,.livekit-call-status strong{color:#fff;font-weight:900}.livekit-call-status span{text-transform:uppercase;letter-spacing:.06em;font-size:.78rem}.livekit-video-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;min-height:280px;display:grid}.patient-video-placeholder .livekit-video-grid{gap:0;height:100%;min-height:0;display:block;position:absolute;inset:0}.livekit-screen-share-stage{background:#101b18;border:1px solid #ffffff24;border-radius:18px;min-height:280px;position:relative;overflow:hidden}.patient-video-placeholder .livekit-screen-share-stage{z-index:2;border:0;border-radius:0;min-height:0;position:absolute;inset:0}.patient-video-placeholder .livekit-screen-mode-presenter .livekit-screen-share-stage{aspect-ratio:16/10;z-index:5;border:1px solid #ffffff38;border-radius:16px;width:min(260px,30vw);inset:auto auto 92px 18px;box-shadow:0 18px 42px #00000057}.patient-video-placeholder .livekit-screen-mode-viewer .livekit-screen-share-stage{z-index:3}.livekit-screen-share-tile,.livekit-screen-share-tile.lk-participant-tile,.livekit-screen-share-tile>*,.livekit-screen-share-tile video,.livekit-screen-share-tile .lk-video{width:100%;height:100%}.livekit-screen-share-tile,.livekit-screen-share-tile.lk-participant-tile{background:#101b18;border:0;border-radius:0;min-height:0;display:block;overflow:hidden}.livekit-screen-share-tile video,.livekit-screen-share-tile .lk-video{background:#101b18;object-fit:contain!important}.livekit-video-grid.single-participant{grid-template-columns:minmax(0,1fr)}.livekit-participant-tile,.livekit-participant-tile.lk-participant-tile{background:#101b18;border:1px solid #ffffff24;border-radius:18px;min-height:260px;position:relative;overflow:hidden}.patient-video-placeholder .livekit-participant-tile,.patient-video-placeholder .livekit-participant-tile.lk-participant-tile{border:0;border-radius:0;width:100%;height:100%;min-height:0}.patient-video-placeholder .livekit-participant-tile>*,.patient-video-placeholder .lk-participant-tile>*{width:100%;height:100%}.livekit-participant-tile video,.livekit-participant-tile .lk-video{object-fit:cover;width:100%;height:100%}.patient-video-placeholder .livekit-participant-tile video,.patient-video-placeholder .livekit-participant-tile .lk-video,.patient-video-placeholder .lk-participant-tile video,.patient-video-placeholder .lk-participant-tile .lk-video{object-fit:cover!important;width:100%!important;height:100%!important}.patient-video-placeholder .lk-participant-tile[data-lk-local-participant=true] video,.patient-video-placeholder .livekit-participant-tile[data-lk-local-participant=true] video{transform:scaleX(-1)}.patient-video-placeholder .livekit-participant-tile:not([data-lk-local-participant=true]),.patient-video-placeholder .lk-participant-tile:not([data-lk-local-participant=true]){width:100%;height:100%;position:absolute;inset:0}.patient-video-placeholder .livekit-screen-mode-viewer.has-screen-share .livekit-participant-tile:not([data-lk-local-participant=true]),.patient-video-placeholder .livekit-screen-mode-viewer.has-screen-share .lk-participant-tile:not([data-lk-local-participant=true]){z-index:4;aspect-ratio:16/10;border:1px solid #ffffff38;border-radius:16px;width:min(220px,28vw);height:auto;min-height:0;inset:auto auto 92px 18px;overflow:hidden;box-shadow:0 18px 42px #00000057}.patient-video-placeholder .livekit-participant-tile[data-lk-local-participant=true],.patient-video-placeholder .lk-participant-tile[data-lk-local-participant=true]{z-index:4;aspect-ratio:16/10;background:#101b18;border:1px solid #ffffff38;border-radius:16px;width:min(220px,28vw);height:auto;min-height:0;position:absolute;bottom:92px;right:18px;overflow:hidden;box-shadow:0 18px 42px #00000057}.patient-video-placeholder .livekit-screen-share-stage .livekit-screen-share-tile,.patient-video-placeholder .livekit-screen-share-stage .lk-participant-tile{width:100%!important;height:100%!important;min-height:0!important;box-shadow:none!important;border:0!important;border-radius:0!important;position:relative!important;inset:auto!important}.therapist-video-thumbnail{aspect-ratio:16/10;color:#fff;background:linear-gradient(#33423e,#1a2824);border:1px solid #ffffff2e;border-radius:16px;align-content:end;gap:3px;width:178px;padding:12px;display:grid;position:absolute;bottom:92px;right:16px;box-shadow:0 14px 32px #00000047}.therapist-video-thumbnail span{color:#ffffffad;text-transform:uppercase;letter-spacing:.06em;font-size:.75rem;font-weight:900}.therapist-video-thumbnail strong{font-size:.92rem}.patient-consultation-link{color:#fff;background:#0e1815eb;border-top:1px solid #ffffff1f;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;display:flex}.patient-consultation-link div{gap:4px;min-width:0;display:grid}.patient-consultation-link span{color:#ffffffad;text-transform:uppercase;letter-spacing:.06em;font-size:.72rem;font-weight:900}.patient-consultation-link strong{overflow-wrap:anywhere;color:#fff;font-size:.86rem;font-weight:850}.patient-consultation-link small{color:#d7efe4;font-size:.9rem;font-weight:900}.patient-consultation-link .btn{flex:none}.video-controls{background:#0e1815e6;flex-wrap:wrap;justify-content:center;gap:8px;padding:16px;display:flex}.video-shell>.video-controls{display:none}.patient-video-placeholder .video-controls{z-index:5;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#080f0db8;border:1px solid #ffffff24;border-radius:22px;flex-wrap:nowrap;align-items:center;width:max-content;max-width:calc(100% - 32px);padding:10px;display:flex;position:absolute;bottom:16px;left:50%;right:auto;transform:translate(-50%)}.patient-video-placeholder .video-controls .video-main-control{flex-basis:auto}.video-device-panel{z-index:7;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#080f0ddb;border:1px solid #ffffff29;border-radius:18px;gap:10px;width:min(360px,100% - 36px);padding:14px;display:grid;position:absolute;bottom:78px;right:18px;box-shadow:0 18px 44px #00000052}.video-device-field{color:#ffffffd6;text-align:left}.video-device-field span{color:#ffffffc7}.video-device-field select{background:#ffffffeb;border-color:#ffffff2e}.video-device-empty{color:#ffffffb3;text-align:left;font-size:.82rem;line-height:1.35}.video-controls .btn{min-height:38px;padding:9px 13px}.video-controls .video-icon-button{border-radius:999px;width:42px;min-width:42px;height:42px;min-height:42px;padding:0}.video-icon-button.is-on{color:#193f34;background:#ffffffeb}.video-icon-button.is-off{color:#9d332b;background:#fae4e1eb;border-color:#ae3f3680}.video-control-icon{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:20px;height:20px}.video-control-slash{stroke-width:2.4px}.video-main-control{flex-basis:100%}.call-ended-summary{color:#fff;background:#ffffff14;border:1px solid #ffffff2e;border-radius:999px;flex:100%;justify-content:center;align-items:center;gap:8px;padding:9px 13px;display:flex}.call-ended-summary span{color:#ffffffad;text-transform:uppercase;letter-spacing:.06em;font-size:.75rem;font-weight:900}.call-active-warning{color:#7a4e14;background:#fff8eb;border:1px solid #a66b1947;border-radius:14px;padding:12px;font-weight:850;line-height:1.45}.attendance-work-column{overflow:hidden}.attendance-work-column .tabs{grid-template-rows:auto minmax(0,1fr);min-height:100%}.attendance-work-column .tab-panel{min-height:0}.attendance-notes-panel{grid-template-rows:auto minmax(360px,1fr);gap:10px;min-height:100%;display:grid}.autosave-indicator{justify-content:flex-end;display:flex}.autosave-indicator span{color:#1f3d35;background:#eef7f2;border-radius:999px;padding:6px 10px;font-size:.75rem;font-weight:900}.attendance-notes-panel .field,.attendance-notes-panel textarea{min-height:100%}.attendance-notes-panel textarea{resize:none;line-height:1.55}.attendance-history-list,.attendance-form-list,.attendance-financial-list,.attendance-modal-stack{gap:12px;display:grid}.attendance-history-item{border:1px solid var(--line);color:#263632;text-align:left;cursor:pointer;background:#ffffffb8;border-radius:14px;gap:6px;width:100%;padding:12px;display:grid}.attendance-history-item:hover,.attendance-history-item:focus-visible{background:#f8fbf9;border-color:#9fc7b6;outline:0}.attendance-history-item span{color:var(--green);font-size:.8rem;font-weight:900}.attendance-history-item strong{line-height:1.35}.attendance-empty-state{color:var(--muted);margin:0;font-weight:800;line-height:1.5}.attendance-form-item{border:1px solid var(--line);background:#f8fbf9;border-radius:14px;justify-content:space-between;gap:12px;padding:12px;display:flex}.attendance-form-item div{gap:5px;min-width:0;display:grid}.attendance-form-item strong{color:#193f34}.attendance-form-item span{color:var(--muted);line-height:1.4}.attendance-detail-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.attendance-detail-grid div,.attendance-financial-list div,.attendance-session-summary{border:1px solid var(--line);background:#f8fbf9;border-radius:14px;gap:7px;padding:12px;display:grid}.attendance-detail-grid strong,.attendance-financial-list strong,.attendance-session-summary strong{color:#263632}.attendance-session-summary span{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-size:.74rem;font-weight:900}.attendance-session-summary p{color:#31413b;white-space:pre-wrap;margin:0;font-weight:750;line-height:1.55}.attendance-planning-header{justify-content:space-between;align-items:center;gap:10px;display:flex}.attendance-planning-header div{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.attendance-finish-form{gap:14px;display:grid}.modal:has(.clinical-record-editor){flex-direction:column;width:min(1120px,100%);display:flex;overflow:hidden}.modal:has(.clinical-record-editor) .modal-header{border-bottom:1px solid var(--line);flex:none;padding-bottom:12px}.modal:has(.clinical-record-editor) .modal-header h2{font-size:1.12rem}.modal:has(.clinical-record-editor) .modal-body{scrollbar-width:thin;scrollbar-color:#2f7d648c #e2ded473;min-height:0;padding-right:10px;overflow:hidden auto}.clinical-record-editor{gap:16px;display:grid}.clinical-record-meta-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;display:grid}.clinical-record-meta-grid div,.clinical-record-section{border:1px solid var(--line);background:#f8fbf9;border-radius:14px;padding:12px}.clinical-record-meta-grid div{gap:7px;display:grid}.clinical-record-meta-grid span{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:.7rem;font-weight:900}.clinical-record-meta-grid strong{color:#263632;font-size:.92rem}.clinical-record-section{gap:12px;display:grid}.clinical-record-section>strong{color:#193f34;font-size:.92rem}.clinical-record-segmented{flex-wrap:wrap;gap:10px;display:flex}.clinical-record-segmented button{border:1px solid var(--line);color:#31413b;cursor:pointer;background:#fff;border-radius:12px;min-height:38px;padding:8px 16px;font-weight:850}.clinical-record-segmented button.active{background:var(--green-soft);color:#1f3d35;border-color:#2f7d6447}.clinical-record-segmented button:disabled{cursor:not-allowed;opacity:.72}.dictation-mode-switch{border:1px solid var(--line);background:#ffffffd1;border-radius:999px;flex-wrap:wrap;justify-content:center;justify-self:center;gap:6px;padding:5px;display:flex}.dictation-mode-switch button{color:#31413b;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;min-height:36px;padding:8px 16px;font-weight:850;display:inline-flex;position:relative}.dictation-mode-switch button span{background:var(--blue-soft);color:var(--blue);pointer-events:none;border:1px solid #356a9a38;border-radius:999px;padding:2px 7px;font-size:.68rem;font-weight:900;line-height:1.2;position:absolute;top:-11px;right:10px}.dictation-mode-switch button.active{background:var(--green-soft);color:#1f3d35;border-color:#2f7d6447;box-shadow:inset 0 1px #ffffffbd}.dictation-mode-switch button:hover:not(.active){background:#fff}.clinical-record-grid{grid-template-columns:1fr 1fr;align-items:start;gap:14px;display:grid}.clinical-record-editor .field textarea{height:132px;min-height:132px}.speech-textarea-control{grid-template-columns:minmax(0,1fr) 42px;align-items:stretch;gap:8px;display:grid}.speech-textarea-control textarea{min-width:0}.speech-mic-button{color:#31413b;cursor:pointer;background:#ffffffdb;border:1px solid #1f3d3538;border-radius:14px;align-self:start;place-items:center;width:42px;min-height:42px;transition:background-color .18s,border-color .18s,color .18s,box-shadow .18s;display:grid;box-shadow:inset 0 1px #ffffffd1,0 8px 18px #1f3d350d}.speech-mic-button svg{fill:none;stroke:currentColor;stroke-width:1.9px;stroke-linecap:round;stroke-linejoin:round;width:20px;height:20px}.speech-mic-button:hover:not(:disabled){background:#fff;border-color:#1f3d356b}.speech-mic-button.is-listening{background:var(--red-soft);color:var(--red);border-color:#ae3f368c;animation:1.1s ease-in-out infinite speech-recording-pulse}.speech-mic-button.is-starting{background:var(--blue-soft);color:var(--blue);border-color:#356a9a6b}.speech-mic-button:disabled{cursor:not-allowed;opacity:.5;box-shadow:none}.speech-status-message{color:var(--muted);margin-top:-2px;font-size:.76rem;font-weight:800}.speech-status-message.is-active{color:var(--green)}@keyframes speech-recording-pulse{0%,to{box-shadow:0 0 #ae3f3638}50%{box-shadow:0 0 0 7px #ae3f3614}}.clinical-record-technique-row{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:10px;display:grid}.clinical-record-technique-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.clinical-record-technique-list li{background:#ffffffad;border:1px solid #1f3d351f;border-radius:12px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;padding:8px 10px;display:grid}.clinical-record-technique-list span{overflow-wrap:anywhere;color:#263632;min-width:0;font-weight:850}.clinical-record-technique-list .btn{min-height:32px;padding:6px 10px;font-size:.76rem}.clinical-record-empty-list{color:var(--muted);margin:0;font-weight:800}.clinical-record-mood-field{gap:8px;display:grid}.clinical-record-mood-field>span{color:#31413b;font-weight:850}.clinical-record-mood-row{grid-template-columns:minmax(0,1fr) 96px auto;align-items:end;gap:8px;display:grid}.clinical-record-mood-list{gap:7px;margin:0;padding:0;list-style:none;display:grid}.clinical-record-mood-list li{background:#ffffffad;border:1px solid #1f3d351f;border-radius:12px;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:8px;padding:8px 10px;display:grid}.clinical-record-mood-list span{overflow-wrap:anywhere;color:#263632;min-width:0;font-weight:850}.clinical-record-mood-list strong{background:var(--green-soft);color:var(--green);border-radius:999px;padding:4px 8px;font-size:.78rem}.clinical-record-mood-list .btn{min-height:32px;padding:6px 10px;font-size:.76rem}.clinical-record-observed-grid{grid-template-columns:1fr;gap:10px;display:grid}.clinical-record-observed-grid-compact{grid-template-columns:repeat(2,minmax(0,1fr))}.clinical-record-observed-grid .field{grid-template-columns:92px minmax(0,1fr);align-items:center}.clinical-record-observed-grid .field span{color:#31413b}.clinical-record-observed-other-row{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr) auto;align-items:end;gap:8px;display:grid}.clinical-record-observed-other-list{gap:7px;margin:0;padding:0;list-style:none;display:grid}.clinical-record-observed-other-list li{background:#ffffffad;border:1px solid #1f3d351f;border-radius:12px;grid-template-columns:minmax(120px,.45fr) minmax(0,1fr) auto;align-items:center;gap:8px;padding:8px 10px;display:grid}.clinical-record-observed-other-list strong,.clinical-record-observed-other-list span{overflow-wrap:anywhere;min-width:0}.clinical-record-observed-other-list strong{color:#263632}.clinical-record-observed-other-list span{color:#4e5b55;font-weight:750}.clinical-record-observed-other-list .btn{min-height:32px;padding:6px 10px;font-size:.76rem}.clinical-record-ai-row{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:10px;display:grid}.clinical-record-ai-row .field textarea{height:132px;min-height:132px}.clinical-record-error{background:var(--red-soft);color:#842920;border:1px solid #ae3f3647;border-radius:12px;margin:0;padding:10px 12px;font-weight:800}.clinical-record-footer{border-top:1px solid var(--line);background:#fff;justify-content:space-between;align-items:center;gap:14px;margin:2px -2px -4px;padding:14px 2px 4px;display:flex;position:sticky;bottom:0}.clinical-record-footer>span{color:var(--green);font-size:.86rem;font-weight:850}.clinical-record-footer .form-actions{flex-wrap:wrap;margin:0}.modal:has(.attendance-anamnesis-panel){flex-direction:column;width:min(1120px,100%);display:flex;overflow:hidden}.modal:has(.attendance-anamnesis-panel) .modal-header{flex:none}.modal:has(.attendance-anamnesis-panel) .modal-body{scrollbar-width:thin;scrollbar-color:#2f7d648c #e2ded473;min-height:0;padding-right:10px;overflow:hidden auto}.modal:has(.attendance-anamnesis-panel) .modal-body::-webkit-scrollbar{width:10px}.modal:has(.attendance-anamnesis-panel) .modal-body::-webkit-scrollbar-track{background:#e2ded45c;border-radius:999px}.modal:has(.attendance-anamnesis-panel) .modal-body::-webkit-scrollbar-thumb{background:linear-gradient(#7fb69f,#2f7d64);border:2px solid #ffffffdb;border-radius:999px}.modal:has(.attendance-financial-list){flex-direction:column;display:flex;overflow:hidden}.modal:has(.attendance-financial-list) .modal-header{flex:none}.modal:has(.attendance-financial-list) .modal-body{scrollbar-width:thin;scrollbar-color:#2f7d648c #e2ded473;min-height:0;padding-right:10px;overflow:hidden auto}.modal:has(.attendance-financial-list) .modal-body::-webkit-scrollbar{width:10px}.modal:has(.attendance-financial-list) .modal-body::-webkit-scrollbar-track{background:#e2ded45c;border-radius:999px}.modal:has(.attendance-financial-list) .modal-body::-webkit-scrollbar-thumb{background:linear-gradient(#7fb69f,#2f7d64);border:2px solid #ffffffdb;border-radius:999px}.attendance-anamnesis-panel{gap:18px;display:grid}.attendance-anamnesis-header{z-index:2;border-bottom:1px solid var(--line);background:#fff;justify-content:space-between;align-items:center;gap:14px;margin:-4px 0 2px;padding:12px 0;display:flex;position:sticky;top:0}.attendance-anamnesis-header div{gap:4px;display:grid}.attendance-anamnesis-header strong{color:#193f34;letter-spacing:-.03em;font-size:1.12rem}.attendance-anamnesis-header span{color:var(--green);text-transform:uppercase;letter-spacing:.12em;font-size:.72rem;font-weight:900}@media (width<=1280px){.attendance-room-layout{grid-template-columns:minmax(220px,280px) minmax(420px,1fr)}.attendance-work-column{grid-column:1/-1}.attendance-notes-panel{grid-template-rows:auto minmax(260px,38dvh)}}@media (width<=860px){.attendance-room-layout{grid-template-columns:1fr;min-height:0}.video-shell{min-height:560px}.therapist-video-thumbnail{width:142px;bottom:106px}.patient-video-placeholder .livekit-participant-tile[data-lk-local-participant=true],.patient-video-placeholder .lk-participant-tile[data-lk-local-participant=true]{width:min(170px,34vw);bottom:104px}.attendance-detail-grid,.clinical-record-meta-grid,.clinical-record-grid,.clinical-record-ai-row{grid-template-columns:1fr}.clinical-record-footer{flex-direction:column;align-items:stretch;position:static}}@media (width<=520px){.video-shell{grid-template-rows:auto minmax(300px,1fr) auto auto;min-height:520px}.patient-video-placeholder{min-height:300px;padding:22px}.therapist-video-thumbnail{width:auto;margin:0 14px 14px;position:static}.patient-video-placeholder .livekit-participant-tile[data-lk-local-participant=true],.patient-video-placeholder .lk-participant-tile[data-lk-local-participant=true]{border-radius:12px;width:min(138px,42vw);bottom:122px;right:12px}.patient-consultation-link{flex-direction:column;align-items:stretch}.video-controls{justify-content:stretch}.video-controls .btn{flex:calc(50% - 8px)}.video-controls .video-main-control{flex-basis:100%}}.public-consultation-page{background:radial-gradient(circle at top left, #e7f1ea 0, transparent 34%), var(--bg);place-items:center;min-height:100dvh;padding:24px;display:grid}.public-consultation-card{width:min(640px,100%);box-shadow:var(--shadow);background:#ffffffeb;border:1px solid #e2ded4e6;border-radius:24px;padding:24px}.public-consultation-card-video{width:min(1480px,100vw - 32px)}.public-consultation-card-maximized{width:min(1760px,100vw - 12px);padding:14px}.public-consultation-brand{gap:4px;margin-bottom:22px;display:grid}.public-consultation-brand span{color:var(--green);text-transform:uppercase;letter-spacing:.12em;font-size:.72rem;font-weight:900}.public-consultation-brand strong{color:#193f34;letter-spacing:-.04em;font-size:1.25rem}.public-access-form,.public-waiting-room{gap:16px;display:grid}.public-access-form h1,.public-waiting-room h1{color:#193f34;letter-spacing:-.06em;margin:0;font-size:2rem}.public-access-form p,.public-waiting-room p{color:var(--muted);margin:6px 0 0;line-height:1.5}.public-error{color:var(--red);margin:0;font-weight:850}.public-session-summary{justify-content:space-between;align-items:start;gap:16px;display:flex}.public-video-shell{grid-template-rows:auto minmax(640px,1fr);min-height:min(820px,100dvh - 150px)}.public-video-shell.is-frame-maximized{grid-template-rows:auto minmax(760px,1fr);min-height:min(920px,100dvh - 96px)}.public-video-stage{min-height:min(720px,100dvh - 230px)}.public-video-shell.is-frame-maximized .public-video-stage{min-height:min(840px,100dvh - 170px)}.public-video-stage.is-fit-contain{background:linear-gradient(135deg,#2f7d6429,#356a9a1f),#101b18}.public-video-stage.is-fit-contain .local-camera-preview video,.public-video-stage.is-fit-contain .livekit-participant-tile video,.public-video-stage.is-fit-contain .livekit-participant-tile .lk-video,.public-video-stage.is-fit-contain .lk-participant-tile video,.public-video-stage.is-fit-contain .lk-participant-tile .lk-video{background:#101b18;object-fit:contain!important}.public-video-stage .local-camera-preview>span{bottom:88px}.public-room-placeholder{background:#f8fbf9;border:1px dashed #9db7aa;border-radius:18px;gap:6px;padding:18px;display:grid;overflow:hidden}.public-room-placeholder .livekit-room{background:#182b26;border-radius:14px;min-height:430px;overflow:hidden}.public-room-placeholder .livekit-call-surface{min-height:430px}.public-room-placeholder .livekit-call-status span,.public-room-placeholder .livekit-call-status strong{color:#fff}.public-room-placeholder strong{color:#193f34}.public-room-placeholder span{color:var(--muted);line-height:1.45}
