.journey-draft-status{min-block-size:3em;color:var(--text-muted,#64748b);margin-block-start:8px;font-size:.875rem;line-height:1.5}.journey-draft-status p{margin:0}.date-picker-popover{min-width:0;position:relative}.date-picker-field{min-width:0;color:var(--muted);gap:7px;font-size:.9rem;font-weight:500;display:grid}.birth-date-control{grid-template-columns:minmax(64px,.68fr) minmax(100px,1fr) minmax(92px,1.02fr);gap:6px;min-width:0;display:grid}.month-picker-control{grid-template-columns:minmax(140px,1fr) minmax(92px,.7fr);gap:8px;min-width:0;display:grid}.month-picker-control select{border-radius:var(--control-radius);background-color:var(--surface);width:100%;min-width:0;min-height:44px;color:var(--ink);font:inherit;border:1px solid #1b243029;padding:10px 30px 10px 12px;font-weight:500}.month-picker-control select:focus-visible{border-color:var(--accent);outline:3px solid var(--accent-line)}.date-range-field{border:0;min-width:0;margin:0;padding:0}.date-range-field>legend{color:var(--muted);margin-bottom:7px;font-size:.9rem;font-weight:500}.date-range-control{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.birth-date-control .ui-select-menu-trigger{background-color:var(--input-bg);width:100%;min-width:0;min-height:44px;font-weight:500}.birth-date-control .is-empty .ui-select-menu-trigger{color:var(--muted)}.birth-date-control[aria-invalid=true] .ui-select-menu-trigger{border-color:var(--danger-line)}.birth-date-control[aria-invalid=true] .ui-select-menu-trigger:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb, var(--danger-line) 56%, transparent)}.birth-date-control .ui-select-menu-trigger:disabled{background:var(--surface-muted);color:var(--muted);cursor:not-allowed}@media (width<=520px){.birth-date-control{grid-template-columns:minmax(74px,.7fr) minmax(0,1fr)}.birth-date-year-select{grid-column:1/-1}}.date-picker-trigger{border:1px solid var(--line);border-radius:var(--control-radius);background:var(--input-bg);width:100%;min-height:44px;color:var(--ink);font:inherit;text-align:left;cursor:pointer;grid-template-columns:18px minmax(0,1fr);align-items:center;gap:10px;padding:10px 12px;font-weight:500;display:grid}.date-picker-trigger:hover,.date-picker-trigger:focus-visible{border-color:var(--accent);outline:3px solid var(--accent-line)}.date-picker-trigger.is-empty{color:var(--muted)}.date-picker-trigger:disabled{background:var(--surface-muted);color:var(--muted);cursor:not-allowed}.date-picker-trigger span:last-child{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.date-picker-icon{width:16px;height:16px;color:var(--muted);font-size:16px}.date-picker-popup{z-index:1000;opacity:1;transform-origin:0 0;width:min(324px,100vw - 24px);transition:opacity .15s var(--motion-ease-out), transform .15s var(--motion-ease-out);position:fixed;transform:translateY(0)scale(1)}@starting-style{.date-picker-popup{opacity:0;transform:translateY(-4px)scale(.98)}}.datetime-card{border:1px solid var(--line);background:var(--surface-raised);width:100%;color:var(--text-body);box-shadow:var(--shadow-floating);border-radius:13px;display:grid;overflow:hidden}.datetime-calendar{gap:12px;padding:14px;display:grid}.datetime-calendar-header{grid-template-columns:36px minmax(0,1fr) 36px;align-items:center;gap:8px;display:grid}.datetime-calendar-period{grid-template-columns:minmax(0,1fr) 82px;gap:6px;display:grid}.datetime-calendar-period select{border:1px solid var(--line);border-radius:var(--control-radius);background-color:var(--surface);width:100%;min-width:0;height:36px;color:var(--ink);font:inherit;padding:0 28px 0 9px;font-size:.86rem;font-weight:650}.datetime-calendar-period select:focus-visible{border-color:var(--accent);outline:3px solid var(--accent-line)}.datetime-calendar-header button{width:36px;height:36px;color:var(--ink);font:inherit;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:999px;place-items:center;font-size:1.18rem;line-height:1;display:inline-grid}.datetime-calendar-header button:hover,.datetime-calendar-header button:focus-visible{border-color:var(--line);background:var(--accent-soft);outline:0}.datetime-calendar-weekdays,.datetime-calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.datetime-calendar-weekdays{gap:2px}.datetime-calendar-weekdays span{color:var(--muted);text-align:center;font-size:.74rem;font-weight:500}.datetime-calendar-grid{gap:4px 3px}.datetime-calendar-day{min-width:0;height:36px;color:var(--ink);font:inherit;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:999px;place-items:center;font-size:.86rem;font-weight:500;display:inline-grid}.datetime-calendar-day:hover,.datetime-calendar-day:focus-visible{border-color:var(--line);background:var(--accent-soft);outline:0}.datetime-calendar-day.is-muted{color:color-mix(in srgb, var(--muted) 62%, transparent)}.datetime-calendar-day:disabled{color:color-mix(in srgb, var(--muted) 42%, transparent);cursor:not-allowed;opacity:.65;background:0 0}.datetime-calendar-day.is-today:not(.is-selected){background:var(--accent-soft);color:var(--accent-text)}.datetime-calendar-day.is-selected{color:#fff;background:#17212b;border-color:#17212b;box-shadow:0 8px 18px #17203329}.datetime-calendar-footer{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:8px;padding-top:2px;display:flex}.datetime-calendar-footer button{border-radius:var(--control-radius);min-height:36px;color:var(--accent-text);font:inherit;cursor:pointer;background:0 0;border:0;padding:0 10px;font-size:.84rem;font-weight:700}.datetime-calendar-footer button:hover,.datetime-calendar-footer button:focus-visible{background:var(--accent-soft);outline:0}.datetime-calendar-footer button:disabled{color:#98a2b3;cursor:not-allowed}@media (width<=520px){.date-range-control{grid-template-columns:1fr}.date-picker-popup{transform-origin:bottom;width:auto;bottom:12px;right:12px;top:auto!important;left:12px!important}.datetime-calendar-day{height:40px}}.patient-auth-actions{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:1fr;gap:12px;display:grid}.patient-auth-actions>:is(button,a){box-sizing:border-box;white-space:normal;text-align:center;width:100%;min-width:0;height:100%;min-height:56px;margin:0}.patient-auth-actions>:only-child{grid-column:1/-1}@media (width<=640px){.patient-auth-actions{grid-template-columns:minmax(0,1fr)}}.patient-account-identity-fields{gap:12px;min-width:0;display:grid}.workshop-registration-dialog .public-booking-identity-gate{width:100%}.workshop-registration-dialog .public-booking-identity-gate h1{text-align:center}.workshop-registration-dialog .public-booking-identity-gate>p{margin:0 0 16px;font-size:14px;line-height:1.5}.workshop-registration-dialog .public-booking-identity-gate form{gap:14px;display:grid}.workshop-registration-dialog .public-booking-identity-gate form>p{margin:0;font-size:13px;line-height:1.5}.workshop-registration-dialog .patient-account-identity-fields>*{min-width:0;margin:0}@media (width>=641px){.workshop-registration-dialog .patient-account-identity-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 18px}}:root[data-theme=light-minimal] .client-portal-layout{--confirm:#697482;--confirm-text:#46515f;--confirm-soft:#6974821f;--confirm-line:#46515f47;--plus-green:var(--accent);--plus-green-hover:var(--accent-hover);--plus-green-line:var(--accent-line);--teal-dark:var(--accent-text)}.client-portal-layout{--client-booking-action-bg:#dcefe8;--client-booking-action-hover:#cfe8df;--client-booking-action-line:#9bcbb9;--client-booking-action-text:#215f4d;--client-profile-accent-gradient:var(--calendar-today-accent-gradient);--client-profile-menu-surface:color-mix(in srgb, var(--surface) 92%, #d7dde3 8%);--client-profile-selected-surface:color-mix(in srgb, var(--surface) 82%, #efb8aa 18%);--client-family-accent:#f4bfa9;--client-family-line-accent:#df9f86;--client-panel-shadow:var(--shadow-dashboard-block)}:root[data-theme=dark-minimal] .client-portal-layout{--client-booking-action-bg:#285e4d;--client-booking-action-hover:#32705c;--client-booking-action-line:#4d8b74;--client-booking-action-text:#ecfff7;--client-profile-accent-gradient:linear-gradient(135deg, color-mix(in srgb, #ef5e85 25%, var(--surface-raised)) 0%, color-mix(in srgb, #ff9347 24%, var(--surface-raised)) 58%, color-mix(in srgb, #ffc857 22%, var(--surface-raised)) 100%);--client-profile-menu-surface:color-mix(in srgb, var(--surface-raised) 94%, #aab2bd 6%);--client-profile-selected-surface:color-mix(in srgb, var(--surface-raised) 88%, #efb8aa 12%);--client-family-accent:#c99582;--client-family-line-accent:#b9826d}:root[data-theme=light-minimal] .client-portal-layout .client-profile-switcher-option.is-selected .client-profile-switcher-avatar{color:#46515f;background:#eef1f4;border-color:#46515f38}.client-pre-consultation-form .date-picker-field{color:#536171;gap:7px;font-size:.9rem;font-weight:500;display:grid}.client-portal-layout .primary-button:active,.client-portal-layout .secondary-button:active,.client-portal-layout .icon-button:active,.client-portal-layout .icon-nav-button:active{transform:scale(.98)}.client-appointment-actions{justify-content:flex-end;align-items:center;gap:8px;display:flex}.client-appointment-actions .secondary-button{min-height:30px;padding:0 10px;font-size:.78rem}.client-portal-panel .messages-shell .message-bubble-row .message-bubble p{color:currentColor;margin:0}.client-portal-panel{border-color:var(--line);border-radius:var(--panel-radius);background:var(--surface);box-shadow:var(--client-panel-shadow)}.client-portal-tabs{max-width:100%}@media (width<=920px){.client-portal-layout{--client-panel-shadow:0 8px 22px #17212b13, 0 2px 7px #17212b0b}:root[data-theme=dark-minimal] .client-portal-layout{--client-panel-shadow:0 10px 24px #0000003d, 0 2px 8px #0000002e}.client-portal-layout:has(.client-messages-panel .messages-shell.thread-open) .sidebar{opacity:0;pointer-events:none;animation:none;transform:translateY(100%)}.client-portal-layout .main-content:has(.client-messages-panel .messages-shell){--messages-mobile-nav-offset:var(--mobile-nav-occupied-height);top:var(--mobile-top-clearance);right:0;bottom:var(--messages-mobile-nav-offset);grid-template-rows:minmax(0,1fr);align-content:stretch;height:auto;min-height:0;padding:0;position:fixed;left:0;overflow:hidden}.client-portal-layout .main-content:has(.client-messages-panel .messages-shell.thread-open){--messages-mobile-nav-offset:0px}.client-portal-layout .client-messages-panel .messages-shell.embedded{height:100%;min-height:0;max-height:none}.client-portal-layout .main-content:has(.client-messages-panel .messages-shell.thread-open) .client-portal-grid{height:100%;min-height:0;max-height:none}.client-portal-layout .main-content:has(.client-messages-panel .messages-shell.thread-open) .client-messages-panel{height:100%;min-height:0;max-height:none}.client-portal-layout .main-content:has(.client-messages-panel .messages-shell.thread-open) .messages-shell.embedded{height:100%;min-height:0;max-height:none}.client-portal-layout .main-content:has(.client-messages-panel .messages-shell.thread-open) .messages-main{height:100%;min-height:0;max-height:none}.client-portal-layout .main-content:has(.client-messages-panel .messages-shell.thread-open) .message-thread{height:100%;min-height:0;max-height:none}:is(.client-portal-layout .main-content:has(.client-messages-panel .messages-shell) .client-portal-shell,.client-portal-layout .main-content:has(.client-messages-panel .messages-shell) .client-portal-grid,.client-portal-layout .main-content:has(.client-messages-panel .messages-shell) .client-messages-panel){width:100%;height:100%;block-size:100%;min-block-size:0;min-height:0;max-height:none;box-shadow:none;background:0 0;border:0;border-radius:0;grid-template-rows:minmax(0,1fr);align-content:stretch;align-self:stretch;margin:0;padding:0;overflow:hidden}:is(.client-portal-layout .main-content:has(.client-messages-panel .messages-shell) .client-portal-toolbar,.client-portal-layout .main-content:has(.client-messages-panel .messages-shell) .client-portal-action-banner){display:none}}@media (width<=920px) and (display-mode:standalone){.client-portal-layout{--mobile-top-clearance:calc(10px + env(safe-area-inset-top,0px))}.client-portal-layout.app-layout-enter .main-content,.client-portal-layout .main-content.page-transitioning{will-change:auto;animation:none;transform:none}}.client-portal-shell{background:var(--app-bg);min-height:100vh;color:var(--text);padding:28px}.client-portal-action-banner{top:calc(16px + env(safe-area-inset-top));z-index:80;border:1px solid var(--confirm-line);background:color-mix(in srgb, var(--confirm) 16%, var(--surface-raised));width:min(100% - 32px,560px);min-height:54px;color:var(--confirm-text);box-shadow:0 20px 60px color-mix(in srgb, var(--confirm) 22%, transparent);border-radius:12px;align-items:center;gap:12px;padding:12px 16px;animation:.18s ease-out client-portal-banner-in;display:flex;position:fixed;left:50%;transform:translate(-50%)}.client-portal-action-banner strong{flex:none;font-size:.95rem}.client-portal-action-banner span{min-width:0;color:var(--text);white-space:normal;font-size:.9rem;line-height:1.35}.client-portal-action-banner.is-danger{border-color:var(--cancel-line);background:color-mix(in srgb, var(--cancel) 13%, var(--surface-raised));color:var(--cancel-text);box-shadow:0 20px 60px #b54a4438}.client-portal-action-banner.is-danger span{color:var(--cancel-text)}.client-portal-topbar{justify-content:space-between;align-items:center;gap:18px;max-width:1120px;margin:0 auto 28px;display:flex}.client-portal-brand,.client-portal-session{align-items:center;gap:12px;display:flex}.client-portal-brand{font-weight:500}.client-portal-session{color:var(--muted);font-weight:500}.client-auth-panel{max-width:1120px;margin-inline:auto}.client-portal-toolbar,.client-portal-grid{width:100%;max-width:none;margin-inline:0}.client-auth-panel{border:1px solid var(--line);border-radius:var(--panel-radius);background:var(--surface);gap:18px;width:min(100%,460px);margin-top:12vh;padding:28px;display:grid;box-shadow:0 24px 60px #1b243014}.client-auth-panel h1,.client-portal-panel h1,.client-portal-panel h2{margin:0}.client-portal-toolbar{margin-bottom:22px}.client-portal-toolbar .page-toolbar-actions{align-items:end}.client-unlinked-beneficiary-panel{align-content:center;min-height:190px}.client-unlinked-beneficiary-content{justify-content:space-between;align-items:end;gap:24px;min-width:0;display:flex}.client-unlinked-beneficiary-copy{gap:8px;min-width:0;display:grid}.client-unlinked-beneficiary-copy p{max-width:680px;color:var(--text-muted);margin:0}.client-unlinked-beneficiary-copy .eyebrow{color:var(--text)}.client-messages-unlinked-state{align-content:start;gap:28px;min-height:360px;padding:24px;display:grid}.client-messages-unlinked-heading{justify-content:space-between;align-items:center;gap:18px;display:flex}.client-messages-unlinked-heading>div:first-child{gap:4px;display:grid}.client-messages-unlinked-heading p,.client-messages-unlinked-heading h2{margin:0}.client-messages-unlinked-shell{grid-template-columns:minmax(0,1fr)}.client-messages-unlinked-shell .messages-sidebar{border-right:0}.client-portal-profile-bar{z-index:70;isolation:isolate;background:0 0;border:0;justify-content:center;align-items:center;width:min(340px,100%);min-width:0;min-height:50px;margin:0 auto 18px;padding:5px 10px;display:flex;position:sticky;top:12px}.client-portal-profile-bar:before{z-index:0;border:1px solid color-mix(in srgb, var(--ink) 54%, transparent);background:var(--client-profile-accent-gradient);content:"";pointer-events:none;transform-origin:50%;border-radius:18px;transition:transform .18s cubic-bezier(.23,1,.32,1),box-shadow .18s;position:absolute;inset:0;transform:scale(1);box-shadow:0 10px 26px #17212b1c}.client-portal-layout .client-profile-selector{z-index:1;width:100%;min-width:0;margin-inline:auto;position:relative}@media (hover:hover) and (pointer:fine){.client-portal-profile-bar:hover:before{transform:scale(1.025);box-shadow:0 14px 34px #17212b29}}.client-portal-layout .client-profile-switcher-trigger{min-height:37px;box-shadow:none;background:0 0;border:0;border-radius:0;grid-template-columns:minmax(44px,1fr) auto minmax(44px,1fr);padding:2px 0;transition:none}.client-portal-layout .client-profile-switcher-identity{grid-column:2;justify-self:center;align-items:center;gap:10px;min-width:0;display:inline-flex}.client-portal-layout .client-profile-switcher-trigger .client-profile-switcher-avatar{width:32px;height:32px;font-weight:500}.client-portal-layout .client-profile-switcher-trigger .client-profile-switcher-copy strong{font-size:.88rem;font-weight:500}.client-portal-layout .client-profile-switcher-trigger .client-profile-switcher-copy span{font-size:.72rem;font-weight:400}.client-portal-layout .client-profile-switcher-trigger:hover,.client-portal-layout .client-profile-switcher-trigger:focus-visible{box-shadow:none;background:0 0;border:0;transform:none}.client-portal-layout .client-profile-switcher-trigger:focus-visible{outline:2px solid color-mix(in srgb, var(--ink) 72%, transparent);outline-offset:4px}.client-portal-layout .client-profile-switcher-avatar{border-color:color-mix(in srgb, var(--ink) 18%, transparent);background:color-mix(in srgb, var(--surface) 78%, transparent);color:var(--ink)}.client-portal-layout .client-profile-switcher-copy strong,.client-portal-layout .client-profile-switcher-copy span,.client-portal-layout .client-profile-switcher-action{color:var(--ink)}.client-portal-layout .client-profile-switcher-action{border-left:1px solid color-mix(in srgb, var(--ink) 36%, transparent);grid-column:3;justify-content:center;place-self:stretch end;align-items:center;width:44px;min-width:44px;padding:0;font-size:.72rem;font-weight:500;line-height:1;display:inline-flex}.client-portal-layout .client-profile-switcher-action svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;width:14px;height:14px;transition:transform var(--motion-fast) var(--motion-ease-out);overflow:visible}.client-portal-layout .client-profile-switcher-trigger.is-open{z-index:82;position:relative}.client-portal-layout .client-profile-switcher-trigger.is-open .client-profile-switcher-action svg{transform:rotate(180deg)}.client-portal-layout .client-profile-switcher-backdrop{z-index:75;cursor:default;-webkit-backdrop-filter:blur(9px)saturate(82%);width:100vw;height:100dvh;transition:opacity .24s var(--motion-ease-out), backdrop-filter .26s var(--motion-ease-out);background:#191f2675;border:0;padding:0;position:fixed;inset:0}@starting-style{.client-portal-layout .client-profile-switcher-backdrop{opacity:0;-webkit-backdrop-filter:blur()saturate()}}.client-portal-layout .client-profile-switcher-check{border:1px solid color-mix(in srgb, var(--ink) 48%, transparent);background:var(--client-profile-accent-gradient);color:var(--ink);box-shadow:inset 0 1px #ffffff80}.client-portal-layout .client-profile-switcher-menu{z-index:83;border-color:color-mix(in srgb, var(--ink) 34%, transparent);background:var(--client-profile-menu-surface);opacity:1;transform-origin:top;width:min(340px,100vw - 36px);transition:opacity .18s var(--motion-ease-out), transform .22s var(--motion-ease-out);left:50%;right:auto;transform:translate(-50%)translateY(0)scale(1);box-shadow:0 34px 92px #11181f57,0 14px 34px #11181f2e}@starting-style{.client-portal-layout .client-profile-switcher-menu{opacity:0;transform:translate(-50%)translateY(-8px)scale(.98)}}.client-portal-layout .client-profile-switcher-option.is-selected{border-color:color-mix(in srgb, var(--ink) 34%, transparent);background:var(--client-profile-selected-surface);box-shadow:0 8px 20px #17212b14,inset 0 1px #ffffffb8}.client-portal-layout .client-profile-switcher-option.is-selected .client-profile-switcher-copy strong{color:var(--ink);font-weight:800}.client-portal-layout .client-profile-switcher-option:not(.is-selected){background:color-mix(in srgb, var(--surface) 54%, transparent);opacity:.7;border-color:#0000}.client-portal-layout .client-profile-switcher-option:not(.is-selected) .client-profile-switcher-copy strong{color:color-mix(in srgb, var(--ink) 72%, var(--surface));font-weight:600}.client-portal-layout .client-profile-switcher-option:not(.is-selected) .client-profile-switcher-copy span{color:color-mix(in srgb, var(--muted) 70%, var(--surface));font-weight:500}@media (hover:hover) and (pointer:fine){.client-portal-layout .client-profile-switcher-option:not(.is-selected):hover{background:color-mix(in srgb, var(--surface) 76%, transparent);opacity:.86}}@media (prefers-reduced-motion:reduce){.client-portal-layout .client-portal-profile-bar:before,.client-portal-layout .client-profile-switcher-backdrop,.client-portal-layout .client-profile-switcher-action svg,.client-portal-layout .client-profile-switcher-menu{transition:none}}:root[data-theme=dark-minimal] .client-portal-layout .client-portal-profile-bar:before{border-color:color-mix(in srgb, var(--line-strong) 82%, #efb8aa 18%);box-shadow:0 12px 30px #00000047}:root[data-theme=dark-minimal] .client-portal-layout .client-profile-switcher-action{border-left-color:var(--line-strong)}:root[data-theme=dark-minimal] .client-portal-layout .client-profile-switcher-menu{border-color:var(--line-strong);box-shadow:0 34px 92px #00000080,0 14px 34px #0000004d}:root[data-theme=dark-minimal] .client-portal-layout .client-profile-switcher-option.is-selected{border-color:color-mix(in srgb, var(--line-strong) 78%, #efb8aa 22%);box-shadow:0 8px 20px #00000038,inset 0 1px #ffffff1f}:root[data-theme=dark-minimal] .client-portal-layout .client-profile-switcher-option:not(.is-selected){background:color-mix(in srgb, var(--surface) 72%, transparent);opacity:.9}:root[data-theme=dark-minimal] .client-portal-layout .client-profile-switcher-option:not(.is-selected) .client-profile-switcher-copy strong{color:var(--text);font-weight:500}:root[data-theme=dark-minimal] .client-portal-layout .client-profile-switcher-option:not(.is-selected) .client-profile-switcher-copy span{color:var(--muted);font-weight:400}@media (width<=920px){.client-portal-layout .client-portal-profile-bar{--client-profile-bar-gutter:18px;width:calc(100% + var(--client-profile-bar-gutter) + var(--client-profile-bar-gutter));min-height:calc(46px + env(safe-area-inset-top));margin:0 calc(-1 * var(--client-profile-bar-gutter)) 14px;padding:env(safe-area-inset-top) 14px 4px;border-style:solid;border-width:0 0 1px;border-color:color-mix(in srgb, var(--ink) 58%, transparent);background:var(--client-profile-accent-gradient);border-radius:0 0 18px 18px;top:0;box-shadow:0 8px 22px #17212b14}.client-portal-layout.client-portal-home-route .client-portal-profile-bar{margin-top:5px}.client-portal-layout .client-portal-profile-bar:before{content:none}.client-portal-layout .client-profile-switcher-menu{transform-origin:top;width:100%;left:0;right:auto;transform:translateY(0)scale(1)}@starting-style{.client-portal-layout .client-profile-switcher-menu{opacity:0;transform:translateY(-8px)scale(.98)}}}@media (width<=920px) and (display-mode:standalone){.client-portal-layout .client-portal-profile-bar{top:env(safe-area-inset-top,0px);min-height:46px;padding-top:0}.client-portal-layout.client-portal-family-route .client-portal-profile-bar{position:relative;top:auto}}.client-portal-panel p{color:var(--muted);margin:8px 0 0}.client-portal-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;min-width:0;display:grid}.client-pending-actions-alert{border:1px solid var(--accent-line);border-radius:var(--control-radius);background:color-mix(in srgb, var(--accent-soft) 58%, var(--surface));grid-column:1/-1;justify-content:space-between;align-items:center;gap:16px;margin:0;padding:12px 14px;display:flex}.patient-identity-change-alert{justify-content:space-between;align-items:center}.patient-identity-change-alert>span{gap:3px;display:grid}.patient-identity-change-review{max-width:680px}.patient-identity-change-intro{color:var(--text-muted);margin:0 0 18px;line-height:1.55}.patient-identity-change-comparison{border:1px solid var(--line);border-radius:var(--control-radius);background:var(--line);gap:1px;margin-bottom:18px;display:grid;overflow:hidden}.patient-identity-change-row{background:var(--surface);grid-template-columns:minmax(110px,.7fr) minmax(0,1fr) minmax(0,1fr);align-items:center;gap:14px;padding:13px 15px;display:grid}.patient-identity-change-row span{overflow-wrap:anywhere;gap:3px;min-width:0;display:grid}.patient-identity-change-row small{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;font-size:.72rem;font-weight:700}.patient-identity-change-row .is-proposed{color:#176d5b;font-weight:700}@media (width<=640px){.patient-identity-change-row{grid-template-columns:1fr 1fr}.patient-identity-change-row>strong{grid-column:1/-1}}.client-pending-actions-copy{gap:2px;min-width:0;display:grid}.client-pending-actions-copy strong{color:var(--text);font-size:.9rem}.client-pending-actions-copy span{color:var(--muted);font-size:.82rem}.client-dashboard-assets-panel{gap:16px}.client-dashboard-assets-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.client-dashboard-assets-section{border:1px solid var(--line);background:var(--surface-raised);border-radius:8px;align-content:start;gap:12px;min-width:0;padding:12px;display:grid}.client-dashboard-section-head{justify-content:space-between;align-items:center;gap:10px;min-width:0;display:flex}.client-dashboard-section-head>strong{min-width:0;color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:.95rem;overflow:hidden}.client-dashboard-mini-list{gap:10px;display:grid}.client-dashboard-mini-row{border:1px solid var(--line);background:var(--surface-muted);border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;min-width:0;padding:12px;display:grid}.client-dashboard-mini-row div{gap:3px;min-width:0;display:grid}.client-dashboard-mini-row strong,.client-dashboard-mini-row span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.client-dashboard-mini-row span{color:var(--muted);font-size:.82rem}.client-admin-hub-panel{justify-items:center;gap:0;padding:10px}.client-admin-tabs button strong{background:var(--accent-soft);min-width:20px;height:20px;color:var(--accent-text);border-radius:999px;place-items:center;padding:0 6px;font-size:.72rem;font-weight:850;line-height:1;display:inline-grid}.client-portal-panel{border:1px solid var(--line);border-radius:var(--panel-radius);background:var(--surface);width:100%;min-width:0;box-shadow:var(--client-panel-shadow);align-content:start;gap:14px;padding:20px;display:grid}.client-portal-panel-wide{grid-column:1/-1}.client-profile-upgrade-reminder{border:1px solid var(--warning-line);border-radius:var(--control-radius);background:var(--warning-soft);min-width:0;color:var(--warning-text);justify-content:space-between;align-items:center;gap:14px;margin-bottom:14px;padding:12px 14px;display:flex}.client-profile-upgrade-reminder>div{gap:3px;min-width:0;display:grid}.client-profile-upgrade-reminder span{color:color-mix(in srgb, var(--warning-text) 82%, var(--text));font-size:.88rem;line-height:1.4}.client-profile-upgrade-reminder .secondary-button{border-color:var(--warning-line);background:var(--surface-raised);color:var(--warning-text);flex:none}.client-profile-upgrade-inline{border:1px solid var(--warning-line);border-radius:var(--control-radius);background:var(--warning-soft);color:var(--warning-text);padding:10px 12px;line-height:1.4}.client-portal-list{gap:10px;display:grid}.client-portal-list.compact{gap:8px}.client-portal-list-item{border:1px solid var(--line);background:var(--surface-muted);border-radius:8px;justify-content:space-between;align-items:center;gap:14px;min-width:0;padding:12px;display:flex}.client-portal-list-item.is-deep-link-target{border-color:color-mix(in srgb, var(--accent) 58%, var(--line));background:color-mix(in srgb, var(--accent-soft) 62%, var(--surface));box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 14%, transparent);animation:.9s ease-out both client-invoice-target-arrival}@keyframes client-invoice-target-arrival{0%{opacity:.7;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.client-portal-list-item.is-deep-link-target{animation:none}}.client-portal-list-item>div{gap:4px;min-width:0;display:grid}.client-portal-list-item .client-portal-list-actions{justify-content:flex-end;align-items:center;gap:8px;min-width:max-content;display:flex}.client-portal-list-item .compact-action{white-space:nowrap;min-height:30px;padding:0 10px;font-size:.82rem;text-decoration:none}.client-portal-list-item strong,.client-portal-list-item>div>span{overflow-wrap:anywhere;min-width:0}.client-portal-list-item>div>span,.client-portal-details dt{color:var(--muted)}.client-settings-preferences-panel{gap:16px}.client-account-holder-panel,.client-account-holder-panel .panel-heading-row>div{gap:6px}.client-account-holder-panel .panel-heading-row p,.client-settings-section-description{color:var(--muted);margin:0}.client-settings-preferences-panel .theme-picker{gap:12px;min-width:0;display:grid}.client-settings-preferences-panel .theme-picker-description{color:var(--muted);overflow-wrap:anywhere;margin:0;font-size:.9rem;font-weight:500;line-height:1.45}.client-settings-preferences-panel .theme-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;min-width:0;display:grid}.client-settings-preferences-panel .theme-option{border:1px solid var(--line);background:var(--surface-muted);width:100%;min-width:0;color:var(--text);font:inherit;text-align:left;cursor:pointer;border-radius:8px;gap:10px;padding:12px;transition:border-color .16s,background .16s,box-shadow .16s;display:grid}.client-settings-preferences-panel .theme-option:hover,.client-settings-preferences-panel .theme-option:focus-visible,.client-settings-preferences-panel .theme-option.is-active{border-color:var(--accent-line);background:var(--surface);box-shadow:inset 0 0 0 2px var(--accent-soft);outline:0}.client-settings-preferences-panel .theme-option:disabled{cursor:progress;opacity:.78}.client-settings-preferences-panel .theme-swatch-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;min-width:0;display:grid}.client-settings-preferences-panel .theme-swatch-row span{border:1px solid #17201c14;border-radius:6px;min-width:0;height:28px;display:block}.client-settings-preferences-panel .theme-option-copy{gap:4px;min-width:0;display:grid}.client-settings-preferences-panel .theme-option-copy strong,.client-settings-preferences-panel .theme-option-copy span,.client-settings-preferences-panel .theme-option-copy small{overflow-wrap:anywhere;min-width:0}.client-settings-preferences-panel .theme-option-copy strong{color:var(--text);font-size:.95rem}.client-settings-preferences-panel .theme-option-copy span{color:var(--accent-text);text-transform:uppercase;font-size:.78rem;font-weight:700}.client-settings-preferences-panel .theme-option-copy small{color:var(--muted);font-size:.82rem;font-weight:500;line-height:1.35}.client-family-profile-panel{--family-panel-bg:color-mix(in srgb, var(--surface) 94%, var(--client-family-accent));border-color:color-mix(in srgb, var(--line) 76%, var(--client-family-line-accent));background:var(--family-panel-bg);isolation:isolate;align-content:start;position:relative;overflow:hidden}:root[data-theme=dark-minimal] .client-family-profile-panel{--family-panel-bg:color-mix(in srgb, var(--surface) 94%, var(--client-family-accent))}.client-family-profile-panel:before,.client-family-profile-panel:after{z-index:0;aspect-ratio:1;content:"";pointer-events:none;width:min(64%,560px);position:absolute;top:0;right:0}.client-family-profile-panel:before{opacity:.54;background:url(/assets/patient/family-illustration.png) 100% 0/contain no-repeat;transform:translate(8%,-14%)}.client-family-profile-panel:after{background:linear-gradient(180deg, transparent 62%, var(--family-panel-bg) 100%), linear-gradient(90deg, var(--family-panel-bg) 0%, color-mix(in srgb, var(--family-panel-bg) 62%, transparent) 36%, transparent 100%)}:root[data-theme=dark-minimal] .client-family-profile-panel:before{opacity:.42;filter:saturate(.82)brightness(.88)}.client-family-profile-panel>*{z-index:1;position:relative}.client-family-profile-panel>.client-family-profile-heading{grid-template-columns:minmax(0,1fr) auto;align-content:start;column-gap:18px;min-height:clamp(108px,14vw,136px);display:grid}.client-family-profile-heading>h2{align-self:center}.client-family-profile-heading>p{grid-column:1/-1;margin-top:0}.client-family-profile-heading-action.secondary-button{white-space:nowrap;flex:none;align-self:start;max-width:100%;min-height:44px;padding-inline:16px;font-weight:700}.client-family-profile-add-button.secondary-button{border-color:var(--confirm-line);background:color-mix(in srgb, var(--surface-raised) 88%, var(--confirm-soft));color:var(--confirm-text);box-shadow:0 10px 22px color-mix(in srgb, var(--confirm) 10%, transparent)}.client-family-profile-add-button .ui-icon{background:var(--confirm-text);width:18px;height:18px;color:var(--surface);border-radius:999px;flex:none;font-size:.74rem;line-height:18px}.client-family-profile-add-button.secondary-button:hover,.client-family-profile-add-button.secondary-button:focus-visible{border-color:var(--confirm-line);background:color-mix(in srgb, var(--confirm-soft) 88%, var(--surface-raised));color:var(--confirm-text);box-shadow:0 12px 26px color-mix(in srgb, var(--confirm) 12%, transparent)}.client-family-empty-state{justify-items:center;min-height:174px;padding:116px 16px 2px;display:grid;position:relative}.client-family-empty-copy{text-align:center;justify-items:center;gap:5px;max-width:360px;display:grid}.client-family-empty-copy strong{color:var(--text);font-size:1.02rem;line-height:1.2}.client-family-empty-copy span{color:var(--muted);font-size:.9rem;line-height:1.45}.client-family-profile-form{border:1px solid var(--line);background:var(--surface);border-radius:8px;gap:12px;padding:12px;display:grid}.client-family-responsible-contact-hint{align-self:end}.client-family-profile-form.is-inline{background:0 0;border:0;width:100%;padding:0}.client-family-profile-fields{grid-template-columns:repeat(auto-fit,minmax(154px,1fr));gap:10px;display:grid}.client-portal-list-item .client-family-profile-fields{grid-template-columns:repeat(auto-fit,minmax(154px,1fr));display:grid}.client-portal-list-item .client-family-profile-form .inline-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.client-family-profile-fields label,.client-family-profile-fields .date-picker-field{min-width:0;color:var(--muted);gap:6px;font-size:.82rem;font-weight:700;display:grid}.client-family-profile-fields input,.client-family-profile-fields select{border:1px solid var(--line-strong);background:var(--surface);width:100%;min-height:40px;color:var(--text);font:inherit;border-radius:8px}.client-family-profile-fields .birth-date-control{grid-template-columns:minmax(64px,.62fr) minmax(118px,1.14fr) minmax(92px,.84fr);gap:8px;min-width:0;display:grid}.client-family-profile-fields .birth-date-field{grid-column:span 2}.client-family-profile-fields .birth-date-control .ui-select-menu-trigger{min-width:0;padding:10px 30px 10px 12px;font-weight:500}.client-family-profile-fields .birth-date-control .is-empty .ui-select-menu-trigger{color:var(--muted)}.client-family-profile-fields .birth-date-control .ui-select-menu-trigger:disabled{background:var(--surface-muted);color:var(--muted);cursor:not-allowed}.client-family-profile-item{border-color:color-mix(in srgb, var(--ink) 14%, transparent);background:color-mix(in srgb, var(--surface-raised) 70%, transparent);min-width:0;box-shadow:0 16px 38px color-mix(in srgb, var(--ink) 10%, transparent), inset 0 1px 0 color-mix(in srgb, var(--surface-raised) 82%, transparent);-webkit-backdrop-filter:blur(20px)saturate(1.12);backdrop-filter:blur(20px)saturate(1.12);grid-template-columns:minmax(0,1fr);align-items:flex-start;gap:14px 18px;display:grid}:root[data-theme=dark-minimal] .client-family-profile-item{background:color-mix(in srgb, var(--surface-raised) 76%, transparent)}.client-family-profile-item small{color:var(--muted)}.client-family-profile-item>.client-family-member-heading{grid-column:1/-1;justify-content:space-between;align-items:flex-start;gap:10px;width:100%;min-width:0;display:flex}.client-family-profile-list,.client-family-profile-list>.client-family-profile-item{width:100%;min-width:0;max-width:100%}.client-family-member-identity{gap:3px;min-width:0;display:grid}.client-family-followup-status{color:var(--text);font-size:.78rem;font-weight:600;line-height:1.35}.client-family-member-menu{z-index:3;flex:none;position:relative}.client-family-member-menu>summary{width:32px;height:32px;color:var(--muted);cursor:pointer;border:1px solid #0000;border-radius:50%;place-items:center;list-style:none;display:grid}.client-family-member-menu>summary::-webkit-details-marker{display:none}.client-family-member-menu>summary:hover,.client-family-member-menu>summary:focus-visible,.client-family-member-menu[open]>summary{border-color:var(--line);background:color-mix(in srgb, var(--surface-raised) 76%, transparent);color:var(--text);outline:0}.client-family-member-menu-popover{border:1px solid var(--line);background:var(--surface-raised);width:138px;box-shadow:0 14px 34px color-mix(in srgb, var(--ink) 16%, transparent);border-radius:10px;padding:5px;display:grid;position:absolute;top:calc(100% + 5px);right:0}.client-family-member-menu-popover button{min-height:34px;color:var(--text);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:7px;padding:7px 9px;font-size:.84rem}.client-family-member-menu-popover button:hover,.client-family-member-menu-popover button:focus-visible{background:var(--surface-muted);outline:0}.client-family-member-menu-popover button.is-danger{color:var(--danger-text)}.client-family-member-menu-popover button:disabled{opacity:.46;cursor:not-allowed}.client-family-profile-meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:5px 7px;font-size:.9rem;display:flex}.client-family-profile-meta>span:not(:last-child):after{color:color-mix(in srgb, var(--muted) 58%, transparent);content:"·";margin-left:7px}.client-family-profile-sex{align-items:center;gap:5px;display:inline-flex}.client-family-profile-sex.is-icon-only{gap:0}.client-family-profile-sex .sex-symbol{width:19px;height:19px}.client-family-profile-sex .sex-symbol:after{content:none}.client-family-linked-records{grid-column:1/-1;gap:8px;min-width:0;display:grid}.client-family-linked-record{border:1px solid color-mix(in srgb, var(--line) 82%, transparent);border-radius:var(--control-radius);background:color-mix(in srgb, var(--surface-raised) 48%, transparent);min-width:0;display:grid;overflow:hidden}.client-family-practitioner-trigger{width:100%;min-width:0;color:var(--text);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:9px 11px;display:grid}.client-family-practitioner-trigger:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.client-family-practitioner-avatar.client-booking-avatar{width:34px;height:34px;font-size:.72rem;font-weight:600}.client-family-practitioner-copy{gap:1px;min-width:0;display:grid}.client-family-practitioner-copy strong,.client-family-practitioner-copy small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.client-family-practitioner-copy strong{font-size:.9rem;font-weight:600}.client-family-practitioner-copy small{color:var(--muted);font-size:.78rem;font-weight:400}.client-family-practitioner-chevron{color:var(--muted);transition:transform .18s;transform:rotate(90deg)}.client-family-linked-record.is-expanded .client-family-practitioner-chevron{transform:rotate(-90deg)}.client-family-practitioner-actions{border-top:1px solid color-mix(in srgb, var(--line) 70%, transparent);flex-wrap:wrap;align-items:center;gap:8px;padding:9px 11px 11px 55px;display:flex}.client-family-member-actions{grid-column:1}@media (width<=760px){.client-portal-layout .client-portal-profile-bar{--client-profile-bar-gutter:8px}.client-unlinked-beneficiary-content,.client-messages-unlinked-heading{flex-direction:column;align-items:stretch}.client-unlinked-beneficiary-content .primary-button{justify-content:center;width:100%}.client-messages-unlinked-state{min-height:280px;padding:16px}.client-family-profile-panel:before,.client-family-profile-panel:after{width:min(96%,390px)}.client-family-profile-panel:before{opacity:.52;transform:translate(18%,-5%)}.client-family-profile-panel:after{background:linear-gradient(180deg, transparent 58%, var(--family-panel-bg) 100%), linear-gradient(90deg, var(--family-panel-bg) 0%, color-mix(in srgb, var(--family-panel-bg) 48%, transparent) 34%, transparent 100%)}.client-family-profile-panel>.client-family-profile-heading{min-height:0}.client-family-profile-heading-action.secondary-button{justify-self:end;width:auto}.client-family-empty-state{min-height:158px;padding:112px 12px 0}.client-family-empty-copy strong{font-size:.98rem}.client-family-empty-copy span{font-size:.86rem}.client-family-profile-fields,.client-portal-list-item .client-family-profile-fields{grid-template-columns:1fr}.client-family-profile-fields .birth-date-control{grid-template-columns:minmax(74px,.7fr) minmax(0,1fr)}.client-family-profile-fields .birth-date-field,.client-family-profile-fields .birth-date-year-select{grid-column:1/-1}.client-family-profile-item,.client-family-profile-item .client-portal-list-actions{align-items:stretch}.client-family-profile-item{flex-direction:column;grid-template-columns:minmax(0,1fr)}.client-family-member-actions{grid-column:auto}.client-family-practitioner-actions{padding-left:11px}}.client-portal-layout .client-booking-action.primary-button{border-color:var(--client-booking-action-line);background:var(--client-booking-action-bg);color:var(--client-booking-action-text);box-shadow:0 7px 16px #2d6c581a}.client-portal-layout .client-booking-action.primary-button:hover,.client-portal-layout .client-booking-action.primary-button:focus-visible{border-color:color-mix(in srgb, var(--client-booking-action-line) 82%, var(--client-booking-action-text));background:var(--client-booking-action-hover);color:var(--client-booking-action-text)}.client-portal-layout .mobile-more-link.client-booking-navigation-action{color:inherit;background:0 0;border-color:#0000}.client-portal-layout .mobile-more-link.client-booking-navigation-action:hover,.client-portal-layout .mobile-more-link.client-booking-navigation-action:focus-visible,.client-portal-layout .mobile-more-link.client-booking-navigation-action.active{color:#202b27;background:0 0;border-color:#0000}.client-appointment-item{grid-template-columns:minmax(0,1fr) minmax(230px,auto);align-items:flex-start;display:grid}.client-appointment-item.is-targeted{border-color:color-mix(in srgb, var(--brand) 54%, var(--line));box-shadow:0 0 0 3px color-mix(in srgb, var(--brand) 14%, transparent)}.client-appointment-copy{align-content:start}.client-appointment-information{border:1px solid var(--line);background:color-mix(in srgb, var(--accent-soft) 48%, var(--surface));border-radius:8px;gap:3px;margin-top:5px;padding:9px 11px;display:grid}.client-appointment-information strong{color:var(--accent-text);font-size:.78rem}.client-appointment-information p{color:var(--text);overflow-wrap:anywhere;white-space:pre-line;margin:0;font-size:.86rem;line-height:1.48}.client-appointment-waitlist{border:1px solid var(--line);border-radius:var(--control-radius);background:var(--surface-muted);gap:8px;margin-top:8px;padding:10px;display:grid}.client-appointment-waitlist>div:first-child{gap:2px;display:grid}.client-appointment-waitlist span{color:var(--muted);font-size:.82rem}.client-appointment-waitlist>button{width:100%}.client-workshop-item{grid-template-columns:minmax(0,1.2fr) minmax(220px,.8fr);align-items:start;display:grid}.client-workshop-copy,.client-workshop-resources{align-content:start;gap:8px;min-width:0;display:grid}.client-workshop-copy .secondary-button{justify-self:start}.client-workshop-resources{border:1px solid var(--line);background:var(--surface);border-radius:8px;padding:10px}.client-workshop-resources a,.client-workshop-resources span{color:var(--muted);overflow-wrap:anywhere;font-size:.92rem}.client-appointment-title-row{align-items:center;gap:8px;min-width:0;display:flex!important}.client-appointment-title-row strong{min-width:0}.client-appointment-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;min-width:230px;display:flex}.client-appointment-actions .secondary-button,.client-appointment-actions .danger-button{white-space:nowrap;border-radius:8px;flex:104px;min-height:34px;padding:0 10px;font-size:.86rem}.client-appointment-actions .secondary-button.danger{border-color:color-mix(in srgb, var(--danger-line) 56%, var(--line));background:color-mix(in srgb, var(--danger-soft) 48%, var(--surface));color:var(--danger-text)}.client-appointment-actions .secondary-button.danger:hover,.client-appointment-actions .secondary-button.danger:focus-visible{border-color:color-mix(in srgb, var(--danger-line) 72%, var(--line));background:color-mix(in srgb, var(--danger-soft) 62%, var(--surface))}.client-appointment-button-icon{stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:1.05rem;height:1.05rem}.client-appointment-actions .secondary-button .client-appointment-button-icon{margin-right:7px}.client-appointment-reschedule-icon{overflow:visible;transform:translateY(-.25px)}.client-appointment-actions .is-disabled{pointer-events:none;opacity:.48}.client-appointment-action-note{background:var(--warning-soft);color:var(--warning-text);text-align:left;border-radius:4px;flex:1 0 100%;margin:0;padding:7px 9px;font-size:.8rem;line-height:1.35}.client-practitioner-identity-row{grid-template-columns:52px minmax(0,1fr);align-items:center;gap:12px;min-width:0;display:grid}.client-practitioner-avatar{border:1px solid var(--accent-line);background:var(--surface);width:52px;height:52px;color:var(--accent-text);border-radius:50%;place-items:center;font-size:.84rem;font-weight:700;display:grid;overflow:hidden}.client-practitioner-avatar img{object-fit:cover;width:100%;height:100%}.client-practitioner-summary{gap:5px;min-width:0;display:grid}.client-practitioner-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;min-width:0;display:grid}.client-practitioner-name-link{min-width:0;color:inherit;text-overflow:ellipsis;white-space:nowrap;text-decoration:none;display:block;overflow:hidden}.client-practitioner-name-link:hover{color:inherit;text-decoration:none}.client-practitioner-name-link:focus-visible{outline:2px solid var(--accent-line);outline-offset:2px;border-radius:4px}.client-practitioner-actions .primary-button,.client-practitioner-actions .secondary-button{justify-content:center;width:100%}.client-practitioner-actions>:only-child{grid-column:1/-1}.client-portal-details{gap:12px;margin:0;display:grid}.client-portal-details div{gap:4px;display:grid}.client-portal-details dd{overflow-wrap:anywhere;margin:0;font-weight:500}.client-user-card{gap:16px}.client-user-card-head{align-items:center;gap:13px;min-width:0;display:flex}.client-user-avatar{border:1px solid var(--accent-line);background:var(--accent-soft);width:54px;height:54px;color:var(--accent-text);border-radius:50%;flex:none;place-items:center;font-size:1rem;font-weight:700;display:inline-grid}.client-user-identity{flex:auto;min-width:0;display:grid}.client-user-title-row{justify-content:space-between;align-items:center;gap:10px;min-width:0;display:flex}.client-user-title-row strong{min-width:0;color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:1.08rem;overflow:hidden}.client-user-contact-list{gap:9px;display:grid}.client-user-contact-list div{grid-template-columns:28px minmax(0,1fr);align-items:center;gap:9px;min-width:0;display:grid}.client-user-contact-list span:last-child{overflow-wrap:anywhere;min-width:0;color:var(--text);font-weight:500}.client-user-contact-icon{border:1px solid var(--line);background:var(--surface-muted);width:28px;height:28px;color:var(--muted);border-radius:8px;place-items:center;font-size:.86rem;display:inline-grid}.client-pre-consultation-form{gap:16px;display:grid}.client-pre-consultation-section{border:1px solid var(--line);border-radius:8px;gap:12px;padding:14px;display:grid}.client-pre-consultation-section h3{color:var(--text);margin:0;font-size:1rem}.client-pre-consultation-section p{margin:0}.client-pre-consultation-form label,.client-pre-consultation-choice-group{color:var(--muted);gap:7px;font-size:.9rem;font-weight:500;display:grid}.client-pre-consultation-form input,.client-pre-consultation-form select,.client-pre-consultation-form textarea{background:var(--input-bg);border:1px solid var(--line-strong);color:var(--input-text);font:inherit;border-radius:8px;width:100%;min-height:42px;padding:0 12px}.client-pre-consultation-form textarea{resize:vertical;min-height:92px;padding-block:10px}.client-pre-consultation-choice-group{border:0;margin:0;padding:0}.client-pre-consultation-choice-group label{color:var(--text);align-items:center;gap:8px;display:flex}.client-pre-consultation-choice-group input{width:auto;min-height:auto}.client-pre-consultation-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.client-consent-card{gap:16px}.client-consent-layout{grid-template-columns:minmax(180px,.34fr) minmax(0,1fr);gap:14px;min-width:0;display:grid}.client-consent-layout.is-single{grid-template-columns:minmax(0,760px)}.client-consent-list{align-content:start;gap:8px;min-width:0;display:grid}.client-consent-list button{border:1px solid var(--line);background:var(--surface-muted);width:100%;min-height:64px;color:var(--text);font:inherit;text-align:left;cursor:pointer;border-radius:8px;gap:4px;padding:12px;display:grid}.client-consent-list button.is-selected,.client-consent-list button:hover,.client-consent-list button:focus-visible{border-color:var(--accent-line);background:var(--accent-soft)}.client-consent-list strong,.client-consent-list span{overflow-wrap:anywhere}.client-consent-list span{color:var(--muted);font-size:.84rem}.client-consent-form,.client-consent-document{gap:14px;min-width:0;display:grid}.client-consent-document{border:1px solid var(--line);background:var(--surface-raised);border-radius:8px;padding:16px}.client-consent-document-head{justify-content:space-between;align-items:flex-start;gap:12px;min-width:0;display:flex}.client-consent-document-head>div{gap:4px;min-width:0;display:grid}.client-consent-document-head strong{color:var(--text)}.client-consent-document-head span:not(.status-badge,.status-badge-label,.status-badge-dot){color:var(--muted);font-size:.86rem}.client-consent-document p{color:var(--text);white-space:pre-wrap;margin:0;line-height:1.58}.client-consent-signature-grid{grid-template-columns:minmax(0,1fr) minmax(180px,.4fr);gap:12px;display:grid}.client-consent-signature-grid label,.client-consent-signature-pad{min-width:0;color:var(--muted);gap:7px;font-size:.9rem;font-weight:500;display:grid}.client-consent-signature-grid input,.client-consent-signature-grid select{border:1px solid var(--line-strong);background:var(--input-bg);width:100%;min-height:42px;color:var(--input-text);font:inherit;border-radius:8px;padding:0 12px}.client-consent-signature-pad{align-items:start}.client-consent-signature-canvas{width:100%;min-width:0;max-width:100%;min-height:150px}.client-consent-signed-summary{border:1px solid var(--confirm-line);background:var(--confirm-soft);border-radius:8px;gap:4px;padding:14px;display:grid}.client-consent-signed-summary strong{color:var(--confirm-text)}.client-consent-signed-summary span,.client-consent-signed-summary small{color:color-mix(in srgb, var(--confirm-text) 76%, var(--text))}@media (width<=760px){.client-consent-layout,.client-consent-signature-grid{grid-template-columns:1fr}}.client-booking-panel{gap:16px}.client-booking-practitioner-card{border:1px solid var(--line);background:linear-gradient(180deg, var(--surface-raised) 0%, var(--surface-muted) 100%);min-height:178px;color:var(--text);border-radius:8px;align-content:space-between;gap:14px;padding:16px;text-decoration:none;transition:background .16s,border-color .16s,box-shadow .16s,transform .16s;display:grid}.client-booking-practitioner-card:hover,.client-booking-practitioner-card:focus-visible{border-color:var(--accent);background:var(--surface-raised);outline:0;transform:translateY(-1px);box-shadow:0 12px 26px #1b243014}.client-booking-practitioner-main{align-items:center;gap:12px;min-width:0;display:flex}.client-booking-avatar{border:1px solid var(--line);background:var(--surface);width:48px;height:48px;color:var(--accent-text);border-radius:50%;flex:none;place-items:center;font-weight:700;display:inline-grid}.client-booking-avatar img{border-radius:inherit;object-fit:cover;width:100%;height:100%;display:block}.client-booking-practitioner-main div{gap:4px;min-width:0;display:grid}.client-booking-practitioner-card strong,.client-booking-practitioner-card span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.client-booking-practitioner-card span{color:var(--muted)}.client-booking-practitioner-action{background:var(--accent);border-radius:8px;justify-content:center;align-items:center;gap:7px;width:100%;padding:10px 12px;font-weight:500;display:inline-flex;color:var(--agenda-slot-action-text)!important}.client-booking-practitioner-action span{background:#ffffff2e;border-radius:50%;place-items:center;width:20px;height:20px;display:inline-grid}.client-booking-controls{grid-template-columns:minmax(0,1.4fr) minmax(160px,.6fr);gap:12px;display:grid}.client-booking-controls label{color:var(--muted);gap:6px;font-size:.88rem;font-weight:500;display:grid}.client-booking-controls select,.client-booking-controls input{border:1px solid var(--line-strong);background:var(--input-bg);width:100%;min-height:42px;color:var(--input-text);font:inherit;border-radius:8px;padding:0 12px}.client-booking-service-copy{color:var(--muted);margin:0;font-weight:500}.client-booking-slots{gap:10px;display:grid}.client-booking-slot-grid{grid-template-columns:repeat(auto-fit,minmax(118px,1fr));gap:8px;display:grid}.client-booking-slot-grid button{border:1px solid var(--line-strong);background:var(--surface-raised);min-height:40px;color:var(--text);font:inherit;cursor:pointer;border-radius:8px;padding:0 10px;font-weight:500}.client-booking-slot-grid button:hover,.client-booking-slot-grid button:focus-visible,.client-booking-slot-grid button.is-selected{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-text)}.client-booking-actions{justify-content:flex-end;display:flex}.client-cancel-appointment-modal{--app-modal-width:min(100%, 520px)}.client-cancel-appointment-modal .app-modal-body{gap:14px}.client-cancel-appointment-modal .app-modal-body>p{color:var(--muted);margin:0;line-height:1.5}.client-cancel-reason-field{min-width:0;color:var(--text-title);gap:7px;font-size:.9rem;font-weight:500;display:grid}.client-cancel-reason-field textarea{border:1px solid var(--line);border-radius:var(--control-radius);background:var(--input-bg);width:100%;min-width:0;min-height:112px;color:var(--input-text);font:inherit;resize:vertical;padding:10px 12px;line-height:1.45;display:block}.client-cancel-reason-field textarea:focus{border-color:var(--accent);outline:3px solid var(--accent-line)}@media (prefers-reduced-motion:reduce){.client-portal-action-banner{transition:none;animation:none}}.client-pre-consultation-panel{margin-top:16px}.client-portal-account-message{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.client-portal-account-message span{min-width:min(100%,260px)}@media (width<=760px){.client-profile-upgrade-reminder{flex-direction:column;align-items:stretch;margin-bottom:12px}.client-profile-upgrade-reminder .secondary-button{justify-content:center;width:100%}.client-portal-layout .main-content{min-height:0;padding:var(--mobile-top-clearance) 8px var(--mobile-nav-occupied-height);overscroll-behavior-y:contain}.client-portal-layout .client-portal-toolbar{flex-direction:column;align-items:stretch;gap:10px;margin-bottom:14px}.client-portal-layout .client-portal-toolbar .page-toolbar-copy{min-width:0}.client-portal-layout .client-portal-toolbar h1{font-size:1.55rem;line-height:1.15}.client-portal-layout .client-portal-toolbar .page-toolbar-copy p{overflow-wrap:anywhere;font-size:.86rem}.client-portal-layout .client-portal-toolbar .page-toolbar-actions{justify-content:flex-start;width:100%}.client-portal-layout .client-settings-preferences-panel .theme-grid{grid-template-columns:minmax(0,1fr);gap:8px}.client-portal-layout .client-settings-preferences-panel .theme-option{padding:10px}.client-portal-layout .client-portal-panel:not(.client-messages-panel){border:1px solid var(--line);border-radius:var(--panel-radius);background:var(--surface);box-shadow:var(--client-panel-shadow);gap:12px;padding:12px}.client-portal-layout .client-pre-consultation-card,.client-portal-layout .client-dashboard-assets-section{border:1px solid var(--line);background:var(--surface);box-shadow:none;border-radius:8px}.client-portal-layout .client-portal-list{border:0;gap:8px}.client-portal-layout .client-portal-list-item,.client-portal-layout .client-appointment-item,.client-portal-layout .client-practitioner-item,.client-portal-layout .client-booking-practitioner-card,.client-portal-layout .client-dashboard-mini-row,.client-portal-layout .client-family-profile-item,.client-portal-layout .client-workshop-item{border:1px solid var(--line);background:var(--surface-muted);box-shadow:none;border-radius:8px;padding:10px}.client-portal-layout .client-portal-list-item{flex-flow:column wrap;align-items:stretch}.client-portal-layout .client-appointment-item,.client-portal-layout .client-dashboard-mini-row,.client-portal-layout .client-workshop-item{grid-template-columns:minmax(0,1fr);align-items:stretch}.client-portal-layout .client-portal-list-actions,.client-portal-layout .client-appointment-actions{flex-wrap:wrap;justify-content:flex-start;min-width:0}.client-portal-layout .client-appointment-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;width:100%;display:grid}.client-portal-layout .client-appointment-actions .secondary-button,.client-portal-layout .client-appointment-actions .danger-button{text-align:center;white-space:normal;overflow-wrap:anywhere;width:100%;min-width:0;min-height:42px;padding:6px 8px;line-height:1.15}.client-portal-layout .client-appointment-action-note{grid-column:1/-1}.client-portal-layout .client-dashboard-section-head .secondary-button,.client-portal-layout .client-practitioner-item .secondary-button{justify-content:center;width:auto}.client-portal-layout .client-practitioner-actions .primary-button,.client-portal-layout .client-practitioner-actions .secondary-button{width:100%}.client-portal-layout .client-portal-grid{grid-template-columns:minmax(0,1fr);gap:12px}.client-portal-layout .client-portal-panel-wide{grid-column:auto}.client-portal-layout .client-dashboard-assets-grid,.client-portal-layout .client-practitioner-appointments-layout{grid-template-columns:minmax(0,1fr)}.client-portal-layout .panel-heading-row{flex-wrap:wrap;align-items:start;gap:8px;display:flex}.client-portal-layout .panel-heading-row .secondary-button,.client-portal-layout .panel-heading-row .primary-button{justify-self:end;width:auto}.client-portal-layout .client-portal-list-actions{grid-template-columns:repeat(2,minmax(0,1fr));width:100%;display:grid}.client-portal-layout .client-portal-panel h1,.client-portal-layout .client-portal-panel h2{font-size:1.1rem;line-height:1.18}.client-portal-layout .client-portal-panel .eyebrow{font-size:.68rem}:root[data-theme] .client-portal-layout .client-portal-panel:not(.client-messages-panel){border-color:var(--line);background:var(--surface);box-shadow:var(--client-panel-shadow)}:root[data-theme] .client-portal-layout .client-family-profile-panel:not(.client-messages-panel),.client-portal-layout .client-family-profile-panel:not(.client-messages-panel){border-color:color-mix(in srgb, var(--line) 76%, var(--client-family-line-accent));background:var(--family-panel-bg)}:root[data-theme] .client-portal-layout .client-portal-list-item,:root[data-theme] .client-portal-layout .client-appointment-item,:root[data-theme] .client-portal-layout .client-practitioner-item,:root[data-theme] .client-portal-layout .client-booking-practitioner-card,:root[data-theme] .client-portal-layout .client-dashboard-mini-row,:root[data-theme] .client-portal-layout .client-family-profile-item,:root[data-theme] .client-portal-layout .client-workshop-item{border-color:var(--line);background:var(--surface-muted);box-shadow:none}:root[data-theme] .client-portal-layout .client-family-profile-panel .client-family-profile-item,.client-portal-layout .client-family-profile-panel .client-family-profile-item{border-color:color-mix(in srgb, var(--ink) 14%, transparent);background:color-mix(in srgb, var(--surface-raised) 70%, transparent);box-shadow:inset 0 1px 0 color-mix(in srgb, var(--surface-raised) 82%, transparent);-webkit-backdrop-filter:blur(20px)saturate(1.12);backdrop-filter:blur(20px)saturate(1.12)}}@media (width<=760px) and (display-mode:standalone){:root[data-theme] .client-portal-layout .client-family-profile-panel .client-family-profile-item,.client-portal-layout .client-family-profile-panel .client-family-profile-item{background:color-mix(in srgb, var(--surface-raised) 94%, var(--client-family-accent));-webkit-backdrop-filter:none;backdrop-filter:none}:root[data-theme=dark-minimal] .client-portal-layout .client-family-profile-panel .client-family-profile-item{background:color-mix(in srgb, var(--surface-raised) 92%, var(--client-family-accent))}}.client-portal-layout .has-tab-indicator:before{border-color:var(--line-strong);background:var(--surface-raised);box-shadow:0 6px 14px color-mix(in srgb, var(--ink) 10%, transparent), inset 0 0 0 1px var(--line)}:root[data-theme=dark-minimal] .client-portal-layout .sidebar-nav .nav-icon-image{filter:brightness(0)invert();opacity:.82}:root[data-theme=dark-minimal] .client-portal-layout .sidebar-nav .nav-item.active .nav-icon-image{opacity:1}:root[data-theme=dark-minimal] .client-portal-layout.app-layout-rail .nav-item.active{box-shadow:inset 0 0 0 1px var(--line-strong), 0 8px 18px #0000002e}@media (width>=921px){.client-portal-layout.app-layout-rail .sidebar{padding-bottom:22px}}:root[data-theme=dark-minimal] .client-portal-layout.app-layout-rail .sidebar-session-security,:root[data-theme=dark-minimal] .client-portal-layout.app-layout-rail .sidebar-session-logout,:root[data-theme=dark-minimal] .client-portal-layout.app-layout-rail .sidebar-session-security:hover,:root[data-theme=dark-minimal] .client-portal-layout.app-layout-rail .sidebar-session-security:focus-visible,:root[data-theme=dark-minimal] .client-portal-layout.app-layout-rail .sidebar-session-logout:hover,:root[data-theme=dark-minimal] .client-portal-layout.app-layout-rail .sidebar-session-logout:focus-visible{box-shadow:none;color:var(--text-title);background:0 0;border-color:#0000}:root[data-theme=dark-minimal] .client-portal-layout.app-layout-rail .active-practitioner-hover-card,:root[data-theme=dark-minimal] .client-portal-layout.app-layout-rail .sidebar-session-action-hover-card{border-color:var(--line-strong);background:linear-gradient(180deg, #434a54fa, #2b313afa), var(--surface-raised);color:var(--text-title);box-shadow:0 18px 38px #00000061,inset 0 1px #ffffff1a}:root[data-theme=dark-minimal] .client-portal-layout.app-layout-rail .active-practitioner-hover-card span,:root[data-theme=dark-minimal] .client-portal-layout.app-layout-rail .sidebar-session-action-hover-card span{background:color-mix(in srgb, var(--surface-raised) 82%, var(--accent-soft));color:var(--text-title)}:root[data-theme=dark-minimal] .client-portal-layout.app-layout-rail .active-practitioner-hover-card small,:root[data-theme=dark-minimal] .client-portal-layout.app-layout-rail .sidebar-session-action-hover-card small{color:var(--muted)}.patient-booking-hub{gap:16px;min-width:0;display:grid}.patient-booking-beneficiary-heading h2,.patient-practitioner-card h2,.patient-practitioner-card p,.patient-practitioner-card span{margin:0}.patient-booking-beneficiary-panel{gap:16px;display:grid}.patient-booking-beneficiary-heading h2{font-size:1.05rem}.patient-booking-choice-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:10px;display:grid}.patient-booking-choice-grid>button{border:1px solid var(--line);border-radius:var(--control-radius);background:var(--surface-raised);min-width:0;color:var(--text);text-align:left;cursor:pointer;gap:4px;padding:14px 16px;display:grid}.patient-booking-choice-grid>button:hover,.patient-booking-choice-grid>button:focus-visible{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:none}.patient-booking-beneficiary-bar{border:1px solid var(--line);border-radius:var(--control-radius);background:var(--surface-raised);justify-content:space-between;align-items:center;gap:14px;padding:11px 14px;display:flex}.patient-booking-beneficiary-bar>div{gap:2px;min-width:0;display:grid}.patient-booking-beneficiary-bar span{color:var(--muted);font-size:.8rem}.patient-booking-beneficiary-bar strong{color:var(--text-title);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.patient-practitioner-gallery{grid-template-columns:repeat(auto-fit,minmax(min(100%,330px),1fr));gap:16px;min-width:0;display:grid}.patient-practitioner-card{border:1px solid color-mix(in srgb, var(--text) 28%, transparent);border-radius:var(--panel-radius);background:var(--surface-raised);min-width:0;box-shadow:var(--shadow-page-block);grid-template-rows:1fr auto;gap:18px;padding:20px;display:grid}.patient-practitioner-card-main{align-items:center;gap:16px;min-width:0;display:flex}.patient-practitioner-avatar{border:1px solid var(--line-strong);object-fit:cover;border-radius:50%;flex:0 0 76px;width:76px;height:76px;display:block}.patient-practitioner-avatar-fallback{background:color-mix(in srgb, var(--accent-soft) 64%, var(--surface-raised));color:var(--accent);place-items:center;font-weight:750;display:grid}.patient-practitioner-card-copy{gap:4px;min-width:0;display:grid}.patient-practitioner-card h2{color:var(--text-title);font-size:1.05rem}.patient-practitioner-card p,.patient-practitioner-card-copy>span{overflow-wrap:anywhere;color:var(--muted)}.patient-practitioner-card-copy>span{font-size:.84rem}.patient-practitioner-card-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.patient-practitioner-card-actions>:only-child{grid-column:1/-1}.patient-practitioner-card-actions .primary-button,.patient-practitioner-card-actions .secondary-button{width:100%;min-width:0}.patient-booking-directory-action{justify-content:center;display:flex}.patient-booking-empty-state{border:1px solid var(--line);border-radius:var(--panel-radius);background:var(--surface-raised);text-align:center;justify-items:center;gap:14px;padding:28px 18px;display:grid}@media (width<=640px){.patient-booking-hub{gap:12px}.patient-booking-beneficiary-panel{padding:14px}.patient-booking-choice-grid{grid-template-columns:minmax(0,1fr)}.patient-practitioner-gallery{grid-template-columns:minmax(0,1fr);gap:12px}.patient-practitioner-card{gap:15px;padding:16px}.patient-practitioner-avatar{flex-basis:68px;width:68px;height:68px}}.client-appointments-by-practitioner{--confirm:#4c9f82;--confirm-text:#2d6c58;--confirm-soft:#63be9b24;--confirm-line:#4c9f824d;--practitioner-heading-bg:#fff;--practitioner-card-line:color-mix(in srgb, var(--text) 30%, transparent);--practitioner-booking-bg:#dcefe8;--practitioner-booking-hover:#cfe8df;--practitioner-booking-line:#9bcbb9;--practitioner-booking-text:#215f4d;gap:16px}.client-portal-layout .client-appointments-by-practitioner.client-portal-panel:not(.client-messages-panel),:root[data-theme] .client-portal-layout .client-appointments-by-practitioner.client-portal-panel:not(.client-messages-panel){box-shadow:none;background:0 0;border:0;border-radius:0;padding:0}:root[data-theme=dark-minimal] .client-appointments-by-practitioner{--confirm:#70c9a8;--confirm-text:#b7ead7;--confirm-soft:#4faf8b2e;--confirm-line:#70c9a866;--practitioner-heading-bg:var(--surface-raised);--practitioner-card-line:color-mix(in srgb, var(--text) 42%, transparent);--practitioner-booking-bg:#285e4d;--practitioner-booking-hover:#32705c;--practitioner-booking-line:#4d8b74;--practitioner-booking-text:#ecfff7}.client-practitioner-groups{gap:18px;min-width:0;display:grid}.client-practitioner-group{border:1px solid var(--practitioner-card-line);background:var(--surface);min-width:0;box-shadow:var(--shadow-subtle);border-radius:12px;gap:0;display:grid;overflow:hidden}.client-practitioner-group+.client-practitioner-group{border-top:0;padding-top:0}.client-practitioner-group-heading{border-bottom:1px solid var(--line);background:var(--practitioner-heading-bg);grid-template-columns:minmax(0,1fr);align-items:start;gap:11px;min-width:0;margin-inline:0;padding:13px 16px 14px;display:grid}.client-practitioner-group-heading .client-practitioner-identity-row{grid-template-columns:52px minmax(0,1fr)}.client-practitioner-avatar.is-compact{width:44px;height:44px}.client-practitioner-group-heading .client-practitioner-summary{gap:2px}.client-practitioner-group-heading .client-practitioner-summary>strong,.client-practitioner-group-heading .client-practitioner-summary>span,.client-practitioner-group-heading .client-practitioner-summary>small{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.client-practitioner-group-heading .client-practitioner-summary>span,.client-practitioner-group-heading .client-practitioner-summary>small{color:var(--muted)}.client-practitioner-group-heading .client-practitioner-summary>small{font-size:.78rem;font-weight:500}.client-practitioner-group-heading .client-practitioner-actions{justify-self:start;gap:8px;width:auto;display:flex}.client-practitioner-group-heading .client-practitioner-actions .primary-button,.client-practitioner-group-heading .client-practitioner-actions .secondary-button{justify-content:center;width:auto;min-width:116px}.client-practitioner-group-heading .client-practitioner-actions .primary-button{border-color:var(--practitioner-booking-line);background:var(--practitioner-booking-bg);color:var(--practitioner-booking-text);box-shadow:0 7px 16px #2d6c581a}.client-practitioner-group-heading .client-practitioner-actions .primary-button:hover,.client-practitioner-group-heading .client-practitioner-actions .primary-button:focus-visible{border-color:color-mix(in srgb, var(--practitioner-booking-line) 82%, var(--practitioner-booking-text));background:var(--practitioner-booking-hover);color:var(--practitioner-booking-text)}.client-practitioner-date-list,.client-portal-layout .client-practitioner-date-list{border:0;gap:0;display:grid}.client-practitioner-date-list .client-appointment-item,.client-practitioner-date-list .client-workshop-item,.client-portal-layout .client-practitioner-date-list .client-appointment-item,.client-portal-layout .client-practitioner-date-list .client-workshop-item,:root[data-theme] .client-portal-layout .client-practitioner-date-list .client-appointment-item,:root[data-theme] .client-portal-layout .client-practitioner-date-list .client-workshop-item{border:0;border-top:1px solid var(--line);box-shadow:none;background:0 0;border-radius:0;margin:0;padding:13px 16px}.client-practitioner-date-list .client-appointment-item.is-targeted{background:var(--accent-soft);box-shadow:none;border-radius:8px;margin-inline:-8px;padding-inline:8px}.client-practitioner-date-list .client-appointment-item:first-child,.client-practitioner-date-list .client-workshop-item:first-child,.client-portal-layout .client-practitioner-date-list .client-appointment-item:first-child,.client-portal-layout .client-practitioner-date-list .client-workshop-item:first-child,:root[data-theme] .client-portal-layout .client-practitioner-date-list .client-appointment-item:first-child,:root[data-theme] .client-portal-layout .client-practitioner-date-list .client-workshop-item:first-child{border-top:0}.client-practitioner-date-list .client-workshop-resources{border:0;border-left:1px solid var(--line);background:0 0;border-radius:0;gap:5px;padding:2px 0 2px 14px}.client-workshop-resource-note{color:var(--muted);align-self:center;font-size:.8rem}@media (width<=720px){.client-portal-layout .main-content:has(.client-appointments-by-practitioner){padding-left:8px;padding-right:8px}.client-portal-layout .client-appointments-by-practitioner.client-portal-panel:not(.client-messages-panel),:root[data-theme] .client-portal-layout .client-appointments-by-practitioner.client-portal-panel:not(.client-messages-panel){box-shadow:none;background:0 0;border:0;border-radius:0;gap:12px;padding:0}.client-practitioner-groups{gap:14px}.client-practitioner-group+.client-practitioner-group{padding-top:0}.client-practitioner-group-heading{gap:9px;margin-inline:0;padding:11px 10px 12px}.client-practitioner-group-heading .client-practitioner-actions{grid-template-columns:repeat(2,minmax(0,1fr));justify-self:stretch;width:100%;display:grid}.client-practitioner-group-heading .client-practitioner-actions .primary-button,.client-practitioner-group-heading .client-practitioner-actions .secondary-button{width:100%;min-width:0}.client-practitioner-group-heading .client-practitioner-actions>:only-child{grid-column:1/-1}.client-practitioner-date-list .client-appointment-item,.client-practitioner-date-list .client-workshop-item{grid-template-columns:minmax(0,1fr);padding:12px 10px}.client-practitioner-date-list .client-workshop-resources{border-top:1px solid var(--line);border-left:0;padding:9px 0 0}}.client-portal-home-route{--client-home-panel-line:color-mix(in srgb, var(--text) 30%, transparent)}:root[data-theme=dark-minimal] .client-portal-home-route{--client-home-panel-line:color-mix(in srgb, var(--text) 42%, transparent)}.client-portal-home-route .client-portal-grid{gap:16px}.client-portal-home-route .client-portal-panel:not(.client-messages-panel),:root[data-theme] .client-portal-home-route .client-portal-panel:not(.client-messages-panel){border-color:var(--client-home-panel-line);background-color:var(--surface);box-shadow:var(--shadow-subtle);overflow:hidden}.client-portal-home-route .client-family-profile-panel:not(.client-messages-panel),:root[data-theme] .client-portal-home-route .client-family-profile-panel:not(.client-messages-panel){border-color:var(--client-home-panel-line);background-color:var(--family-panel-bg)}.client-portal-home-route .client-upcoming-appointments-panel .client-portal-list,.client-portal-home-route .client-dashboard-assets-panel .client-dashboard-mini-list{gap:0}.client-portal-home-route .client-upcoming-appointments-panel .client-appointment-item,:root[data-theme] .client-portal-home-route .client-upcoming-appointments-panel .client-appointment-item{border:0;border-top:1px solid var(--line);box-shadow:none;background:0 0;border-radius:0;margin:0;padding:13px 0}.client-portal-home-route .client-upcoming-appointments-panel .client-appointment-item:first-child,:root[data-theme] .client-portal-home-route .client-upcoming-appointments-panel .client-appointment-item:first-child{border-top:0;padding-top:2px}.client-portal-home-route .client-dashboard-assets-grid{gap:0 20px}.client-portal-home-route .client-dashboard-assets-section,:root[data-theme] .client-portal-home-route .client-dashboard-assets-section{box-shadow:none;background:0 0;border:0;border-radius:0;padding:0}.client-portal-home-route .client-dashboard-mini-row,:root[data-theme] .client-portal-home-route .client-dashboard-mini-row{border:0;border-top:1px solid var(--line);box-shadow:none;background:0 0;border-radius:0;padding:10px 0}.client-portal-home-route .client-dashboard-mini-row:first-child,:root[data-theme] .client-portal-home-route .client-dashboard-mini-row:first-child{border-top:0}@media (width<=760px){.client-portal-home-route .client-portal-grid{gap:14px}.client-portal-home-route .client-portal-panel:not(.client-messages-panel),:root[data-theme] .client-portal-home-route .client-portal-panel:not(.client-messages-panel){border-color:var(--client-home-panel-line);padding:12px 10px}.client-portal-home-route .client-family-profile-panel:not(.client-messages-panel),:root[data-theme] .client-portal-home-route .client-family-profile-panel:not(.client-messages-panel){border-color:var(--client-home-panel-line)}.client-portal-home-route .client-dashboard-assets-grid{gap:14px}.client-portal-home-route .client-dashboard-assets-section+.client-dashboard-assets-section{border-top:1px solid var(--line);padding-top:14px}}.patient-profile-picker{min-width:0}.client-portal-layout .patient-profile-picker-trigger{width:100%;min-width:44px;height:auto;min-height:64px;box-shadow:none;color:var(--text-title);background:0 0;border:0;flex-direction:column;justify-content:center;align-items:center;gap:5px;padding:3px 0;display:flex}.client-portal-layout .patient-profile-picker-trigger:hover,.client-portal-layout .patient-profile-picker-trigger:active{box-shadow:none;background:0 0;transform:none}.patient-profile-picker-trigger>.ui-action-menu-chevron{display:none}.patient-profile-picker-avatar{background:var(--accent);width:42px;height:42px;color:var(--accent-contrast,#fff);box-shadow:var(--shadow-subtle);border-radius:50%;flex:none;place-items:center;font-size:.8rem;font-weight:650;transition:transform .18s cubic-bezier(.22,1,.36,1),box-shadow .18s ease-out;display:grid}.patient-profile-picker-firstname{text-overflow:ellipsis;white-space:nowrap;text-align:center;width:100%;max-width:64px;font-size:.65rem;font-weight:600;line-height:1.2;display:block;overflow:hidden}@media (hover:hover) and (pointer:fine){.patient-profile-picker-trigger:hover .patient-profile-picker-avatar{box-shadow:0 5px 12px color-mix(in srgb, var(--accent) 24%, transparent);transform:translateY(-2px)scale(1.06)}}.patient-profile-picker-trigger:active .patient-profile-picker-avatar{transform:scale(.95)}.patient-profile-picker-trigger:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.patient-profile-picker-menu{width:min(300px,100vw - 24px)}.patient-profile-picker-menu>button[aria-checked=true]{background:var(--surface-muted)}.patient-mobile-profile-control{display:none}@media (width<=920px){.patient-mobile-profile-control{flex:1;justify-content:center;min-width:0;display:flex}.patient-mobile-profile-control .patient-profile-picker-trigger{gap:2px;min-height:52px;padding:0 4px}.patient-mobile-profile-control .patient-profile-picker-avatar{width:34px;height:34px}}.patient-profile-picker-menu:popover-open{animation:patient-profile-menu-enter .18s var(--motion-ease-out)}@keyframes patient-profile-menu-enter{0%{opacity:0;transform:translateY(5px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@media (prefers-reduced-motion:reduce){.patient-profile-picker-menu:popover-open{animation:none}.patient-profile-picker-avatar{transition:none}}:root[data-theme=dark-minimal] .patient-profile-picker-avatar{color:#202a34}.client-portal-layout .patient-profile-picker-trigger .patient-profile-picker-firstname{color:var(--text-title)}.patient-profile-picker-stack{isolation:isolate;flex:none;width:42px;height:42px;display:block;position:relative}.patient-profile-picker-stack .patient-profile-picker-avatar{position:relative}.patient-profile-picker-layer{border:1px solid var(--surface);pointer-events:none;border-radius:50%;position:absolute;inset:0}@media (width<=920px){.patient-mobile-profile-control .patient-profile-picker-stack{width:34px;height:34px}}.client-portal-overview-filter{width:min(100%,300px);margin-bottom:16px}.client-workshop-participant{flex-wrap:wrap;align-items:center;gap:8px;display:flex}@media (width<=920px){.client-portal-layout.app-layout-enter .sidebar,.client-portal-layout.app-layout-enter .sidebar-brand,.client-portal-layout.app-layout-enter .sidebar-session,.client-portal-layout.app-layout-enter .sidebar-nav a{animation:none}}.patient-access-invitation-page{justify-items:center;padding:clamp(12px,3vw,36px) 0;display:grid}.patient-access-invitation-card{gap:22px;width:100%;max-width:760px;display:grid}.patient-access-invitation-heading,.patient-access-management-heading,.patient-family-access-heading{justify-content:space-between;align-items:flex-start;gap:16px;min-width:0;display:flex}.patient-access-invitation-heading h1,.patient-access-management-heading h3{margin:4px 0 0}.patient-access-authorization{background:var(--surface-muted);border:1px solid var(--line);border-radius:var(--panel-radius);grid-template-columns:minmax(0,1fr);align-items:stretch;min-width:0;display:grid;overflow:hidden}.patient-access-authorization-body{gap:5px;min-width:0;padding:20px;display:grid}.patient-access-authorization-body>span,.patient-access-authorization-body dt,.patient-access-form-actions small,.patient-access-row-copy small,.patient-family-record small{color:var(--muted);font-size:.78rem}.patient-access-authorization-body>strong{font-size:1.2rem}.patient-access-authorization-body p,.patient-access-management-heading p,.patient-family-access-heading p{color:var(--muted);margin:0}.patient-access-authorization-body dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:12px 0 0;display:grid}.patient-access-authorization-body dl>div{gap:2px;min-width:0;display:grid}.patient-access-authorization-body dd{overflow-wrap:anywhere;margin:0;font-weight:560}.patient-access-privacy-copy{color:var(--muted);margin:0;padding-left:0}.patient-access-beneficiary-choice{background:var(--surface-muted);border:1px solid var(--line);border-radius:var(--control-radius);gap:14px;padding:16px;display:grid}.patient-access-beneficiary-choice>div:first-child{gap:4px;display:grid}.patient-access-beneficiary-choice p{color:var(--muted);margin:0}.patient-access-invitation-actions,.patient-access-result,.patient-access-form-actions,.patient-access-row-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.patient-access-primary-action{align-items:flex-end;gap:4px;display:grid}.patient-access-primary-action small{color:var(--text-muted);text-align:right;font-size:.75rem}.patient-access-result{flex-direction:column;align-items:stretch}.patient-access-result>a{align-self:flex-start}.patient-access-management{background:var(--surface-muted);border:1px solid var(--line);border-radius:var(--panel-radius);gap:16px;min-width:0;margin-top:16px;padding:18px;display:grid;container:patient-access-management/inline-size}.patient-access-management-heading>div,.patient-family-access-heading>div{min-width:0}.patient-access-management-heading-actions{flex-wrap:wrap;flex:none;justify-content:flex-end;align-items:center;gap:8px;display:flex}.patient-access-status-summary{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:.35rem;min-width:0;margin-top:.55rem;display:grid}.patient-access-status-detail{color:var(--muted);min-width:0;font-size:.84rem}.patient-access-history{border-top:1px solid var(--line);padding-top:.8rem}.patient-access-correction{border-top:1px solid var(--line);color:var(--muted);padding-top:.8rem}.patient-access-correction summary{color:var(--text);cursor:pointer;width:fit-content;font-size:.84rem;font-weight:650}.patient-access-correction>div{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:10px;padding-top:10px;display:flex}.patient-access-correction p{max-width:560px;margin:0}.patient-access-history>summary{color:var(--text-muted);cursor:pointer;width:fit-content;font-size:.88rem;font-weight:700}.patient-access-history[open]>summary{margin-bottom:.75rem}.patient-access-management-heading h3{font-size:var(--font-card-title)}.patient-access-invitation-form{background:var(--surface);border:1px solid var(--line);border-radius:var(--control-radius);gap:16px;padding:16px;display:grid}.patient-access-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.patient-access-form-notice{gap:4px;display:grid}.patient-access-preset-fieldset{border:0;min-width:0;margin:0;padding:0}.patient-access-preset-fieldset legend{margin-bottom:8px;font-weight:560}.patient-access-preset-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.patient-access-preset-grid label{background:var(--surface);border:1px solid var(--line);border-radius:var(--control-radius);cursor:pointer;gap:4px;min-width:0;padding:12px;display:grid}.patient-access-preset-grid label.is-selected{background:var(--accent-soft);border-color:var(--accent-line)}.patient-access-preset-grid input{width:fit-content;margin:0 0 4px}.patient-access-preset-grid span,.patient-access-row-copy span,.patient-family-access-person header span,.patient-family-record-main>span{color:var(--muted);font-size:.84rem}.patient-access-management-content{gap:18px;display:grid}.patient-access-management-group,.patient-access-row-list{gap:8px;min-width:0;display:grid}.patient-access-group-title{justify-content:space-between;align-items:center;display:flex}.patient-access-group-title>span{color:var(--muted);font-variant-numeric:tabular-nums}.patient-access-management-row,.patient-family-record{background:var(--surface);border:1px solid var(--line);border-radius:var(--control-radius);justify-content:space-between;align-items:center;gap:14px;min-width:0;padding:12px;display:flex}.patient-access-management-row{grid-template-columns:minmax(240px,1fr) minmax(0,auto);display:grid}.patient-access-row-copy,.patient-family-record>div{gap:2px;min-width:0;display:grid}.patient-access-row-copy strong{overflow-wrap:anywhere}.patient-access-recipient-form{grid-template-columns:minmax(220px,1fr) auto;align-items:end;gap:12px;width:100%;min-width:0;display:grid}.patient-access-management-row>.patient-access-recipient-form{grid-column:1/-1}.patient-access-account-holder-form,.patient-access-replacement-form{border-top:1px solid var(--line);grid-column:1/-1;gap:12px;min-width:0;padding-top:12px;display:grid}.patient-access-account-holder-form>div:first-child,.patient-access-replacement-form>div:first-child{gap:3px;display:grid}.patient-access-account-holder-form>div:first-child span,.patient-access-replacement-form>div:first-child span,.patient-access-replacement-form>div:first-child small{color:var(--muted);font-size:.86rem}.patient-access-replacement-confirmation{color:var(--text);cursor:pointer;align-items:flex-start;gap:9px;line-height:1.4;display:flex}.patient-access-replacement-confirmation input{accent-color:var(--accent);margin:3px 0 0}.patient-access-management-row>.patient-access-row-actions{justify-content:flex-end}.patient-family-access-panel{gap:18px;display:grid}.patient-family-access-list{gap:12px;display:grid}.patient-family-access-person{border:1px solid var(--line);border-radius:var(--panel-radius);gap:12px;padding:14px;display:grid}.patient-family-access-person>header{grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:10px;display:grid}.patient-family-access-person>header>div:nth-child(2){min-width:0;display:grid}.patient-family-access-avatar{aspect-ratio:1;background:var(--accent-soft);border:1px solid var(--accent-line);color:var(--accent-text);border-radius:50%;justify-content:center;align-items:center;font-weight:650;display:flex}.patient-family-record-list{gap:8px;padding-left:52px;display:grid}.patient-family-record-main{gap:8px;width:100%;min-width:0;display:grid}.patient-family-record-heading{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.patient-family-record-heading>div{min-width:0;display:grid}.patient-family-record-meta{justify-content:flex-start}.patient-family-record-actions{flex-wrap:wrap;gap:8px;margin-top:2px;display:flex}@container patient-access-management (width<=720px){.patient-access-management-heading{flex-direction:column;align-items:stretch}.patient-access-management-row{grid-template-columns:minmax(0,1fr);align-items:stretch}.patient-access-form-grid,.patient-access-preset-grid,.patient-access-recipient-form{grid-template-columns:minmax(0,1fr)}.patient-access-recipient-form{align-items:stretch}.patient-access-management-heading-actions,.patient-access-row-actions{justify-content:flex-start}.patient-access-status-summary{grid-template-columns:minmax(0,1fr);align-items:start}}@media (width<=720px){.patient-access-invitation-heading,.patient-access-management-heading,.patient-family-access-heading,.patient-access-management-row,.patient-family-record{flex-direction:column;align-items:stretch}.patient-access-authorization-body{padding:16px}.patient-access-authorization-body dl,.patient-access-form-grid,.patient-access-preset-grid{grid-template-columns:1fr}.patient-access-management{padding:14px}.patient-access-management-heading-actions{justify-content:flex-start}.patient-access-recipient-form{grid-template-columns:1fr;align-items:stretch}.patient-access-row-actions{justify-content:flex-start}.patient-family-access-person>header{grid-template-columns:38px minmax(0,1fr)}.patient-family-access-person>header>.status-badge{grid-column:2}.patient-family-record-list{padding-left:0}.patient-family-record-heading{flex-direction:column;align-items:stretch}}.patient-access-invitation-form .ui-select-menu-trigger{text-align:left;height:auto;min-height:44px;padding-block:10px}.patient-access-invitation-form .ui-select-menu-trigger>span:not(.ui-icon){white-space:normal;overflow-wrap:anywhere;min-width:0;line-height:1.4}.patient-access-entry-page{box-sizing:border-box;width:min(100%,880px);min-width:0;margin-inline:auto;padding:clamp(12px,3vw,32px)}.patient-access-entry-page>.client-portal-panel,.patient-access-entry-page form,.patient-access-entry-list{gap:16px;min-width:0;display:grid}.patient-access-entry-page .button,.patient-access-entry-page p{overflow-wrap:anywhere}.auth-panel{border:1px solid var(--line);border-radius:var(--panel-radius);background:var(--surface);gap:18px;width:min(100%,440px);padding:24px;display:grid}.auth-panel h1{margin:0;font-size:2rem;line-height:1}.login-shell{--login-card-border:#5d748726;--login-card-shadow:0 28px 72px #2e435e24;--login-card-glow-a:#78dcd442;--login-card-glow-b:#ff934738;--login-heading:#17212b;--login-muted:#536171;--login-brand-bg:#ffffffdb;--login-brand-line:#17202b1a;--login-brand-text:#17212b;--login-texture-opacity:.24;isolation:isolate;background:#fbfcfd;align-items:center;min-height:100vh;padding:28px;display:grid;position:relative;overflow:hidden}.login-shell .hero-ribbon-background:after{z-index:6;content:"";mix-blend-mode:multiply;opacity:var(--login-texture-opacity);background-image:linear-gradient(115deg,#ffffff57 0 18%,#fff0 18% 100%),repeating-linear-gradient(95deg,#17202b09 0 1px,#0000 1px 18px),repeating-linear-gradient(4deg,#ffffff2e 0 1px,#0000 1px 24px);position:absolute;inset:0}.pro-login-shell{--login-card-border:#26819542;--login-card-shadow:0 30px 78px #1451682e;--login-card-glow-a:#5fbbb13d;--login-card-glow-b:#659edf2e;--login-heading:#12313b;--login-muted:#506a70;--login-brand-bg:#f5fcfbe6;--login-brand-line:#25817f2e;--login-brand-text:#12313b;--login-texture-opacity:.2}.patient-login-shell{--login-card-border:#e28b7e4d;--login-card-shadow:0 30px 78px #7c4d612b;--login-card-glow-a:#ffbe8f57;--login-card-glow-b:#ee9dbe40;--login-heading:#432c39;--login-muted:#725c65;--login-brand-bg:#fffaf7e6;--login-brand-line:#cc76702e;--login-brand-text:#432c39;--login-texture-opacity:.26}.login-shell.is-authenticated .hero-ribbon-background{animation:.34s cubic-bezier(.16,1,.3,1) both loginBackgroundSettle}.login-card{z-index:1;border:1px solid var(--login-card-border);border-radius:var(--panel-radius);width:min(100%,620px);box-shadow:var(--login-card-shadow);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#ffffffdb;gap:18px;margin-inline:auto;padding:26px;display:grid;position:relative;overflow:hidden}.login-card:before{z-index:0;border-radius:inherit;background:radial-gradient(circle at 18% 18%, var(--login-card-glow-a), transparent 34%), radial-gradient(circle at 82% 12%, var(--login-card-glow-b), transparent 30%), linear-gradient(135deg, #ffffffeb, #f5f8fcc7);content:"";opacity:0;position:absolute;inset:-1px;transform:scale(.98)}.login-card>*{z-index:1;position:relative}.login-card.is-exiting{animation:.34s cubic-bezier(.16,1,.3,1) both loginCardExit}.login-card.is-exiting:before{animation:.34s cubic-bezier(.16,1,.3,1) both loginCardExitGlow}.login-card.is-exiting .login-form{animation:.26s cubic-bezier(.16,1,.3,1) both loginFormExit}.login-card.is-exiting .eyebrow,.login-card.is-exiting h1{animation:.3s cubic-bezier(.16,1,.3,1) both loginHeadingExit}.login-card h1{color:var(--login-heading);margin:0;font-size:clamp(1.75rem,4.6vw,2.2rem);line-height:1.04}.login-card-heading{text-align:center;justify-items:center;gap:9px;display:grid}.pro-signup-referral-origin{color:var(--login-accent-strong);margin:0;font-size:.88rem;font-weight:750;line-height:1.35}.login-brand-lockup{width:100%;max-width:100%;color:var(--login-brand-text);background:0 0;border:0;justify-items:center;gap:9px;margin-bottom:8px;padding:0;font-size:1.18rem;font-weight:850;line-height:1;display:grid}.login-brand-home-link{opacity:1;border-radius:20px;outline:none;transition:transform .15s cubic-bezier(.22,1,.36,1),opacity .15s ease-out;display:inline-flex;transform:translateY(0)scale(1)}.login-brand-home-link:focus-visible{box-shadow:0 0 0 3px #fffffff5, 0 0 0 6px var(--login-brand-text)}.login-brand-home-link:active{transform:translateY(0)scale(.97)}.login-brand-lockup img{border-radius:20px;width:78px;height:78px;display:block;box-shadow:0 18px 38px #17202b1f}.login-brand-lockup span{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}@media (hover:hover) and (pointer:fine){.login-brand-home-link:hover{opacity:.92;transform:translateY(-2px)scale(1.015)}}@media (prefers-reduced-motion:reduce){.login-brand-home-link{transition:none}.login-brand-home-link:hover,.login-brand-home-link:active{transform:none}}.login-intro{color:var(--login-muted);margin:8px 0 0;font-size:.95rem;line-height:1.5}.login-return-notice{color:var(--login-muted);margin:8px 0 0;font-size:.92rem;line-height:1.5}.login-form{gap:14px;display:grid}.login-primary-actions{grid-template-columns:minmax(130px,.78fr) minmax(0,1.22fr);gap:12px;display:grid}.login-primary-actions>.primary-button,.login-primary-actions>.secondary-button{text-align:center;justify-content:center;width:100%}.login-primary-actions>.login-passkey-button{background:#fff;gap:24px;min-height:50px;padding-inline:14px}.login-primary-actions>.login-passkey-button:has(.login-passkey-method){justify-content:space-between}.login-primary-actions>.login-passkey-button:hover,.login-primary-actions>.login-passkey-button:focus-visible{background:#fff}.login-passkey-button .login-passkey-icon{color:#078bff;flex:none;width:36px;height:36px}.login-passkey-button>span{white-space:normal;min-width:0}.login-passkey-method{align-items:center;gap:6px;display:inline-flex}.login-passkey-method>span{text-align:left}.login-passkey-method:first-child{white-space:nowrap;flex-shrink:0}.login-passkey-button .login-passkey-fingerprint{color:#19cd8b}@media (width<=380px){.login-primary-actions>.login-passkey-button{gap:20px;padding-inline:6px}.login-passkey-method>span{max-width:9ch}}.login-form>.primary-button{width:100%;min-height:46px}.patient-login-shell .login-primary-actions>.primary-button{border-color:var(--confirm-line);background:color-mix(in srgb, var(--confirm-soft) 72%, #fff);color:var(--confirm-text);box-shadow:none}.patient-login-shell .login-primary-actions>.primary-button:hover,.patient-login-shell .login-primary-actions>.primary-button:focus-visible{border-color:color-mix(in srgb, var(--plus-green) 50%, transparent);background:color-mix(in srgb, var(--confirm-soft) 86%, #fff);color:var(--confirm-text)}.auth-notice{border:1px solid #0000;border-radius:8px;margin:0;padding:10px 12px;font-size:.91rem;font-weight:600;line-height:1.4}.auth-notice--success{color:#17683d;background:#259d681a;border-color:#259d6840}.auth-notice--info{color:#74460f;background:#fff8e8f5;border-color:#e3982e47}.mfa-email-otp-panel{color:#31465f;background:#fff8e8b8;border:1px solid #e3982e33;border-radius:8px;gap:8px;padding:12px;font-size:.92rem;line-height:1.45;display:grid}.mfa-passkey-panel{color:#31465f;background:#5b8cff14;border:1px solid #5b8cff33;border-radius:8px;gap:8px;padding:12px;font-size:.92rem;line-height:1.45;display:grid}.mfa-passkey-panel p,.mfa-email-otp-panel p{margin:0}.mfa-method-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.mfa-method-heading strong{color:#17212b}.mfa-method-heading span{color:#74460f;background:#e3982e21;border-radius:999px;flex:none;padding:3px 8px;font-size:.72rem;font-weight:800;line-height:1}.mfa-support-actions{flex-wrap:wrap;justify-content:center;gap:6px 16px;margin-top:-4px;display:flex}.mfa-inline-action.secondary-button{color:#31465f;min-height:30px;box-shadow:none;background:0 0;border-color:#0000;padding:0;font-weight:800}.mfa-inline-action.secondary-button:hover,.mfa-inline-action.secondary-button:focus-visible{color:#17212b;background:0 0;text-decoration:underline;transform:none}.mfa-secondary-methods{color:#536171;margin:0;font-size:.9rem;line-height:1.45}.mfa-secondary-methods summary{cursor:pointer;color:#31465f;font-weight:800}.mfa-secondary-methods summary:hover,.mfa-secondary-methods summary:focus-visible{color:#17212b;outline:0;text-decoration:underline}.mfa-secondary-methods p{margin:0}.mfa-secondary-methods-body{background:#f8fbffad;border:1px solid #24799a1f;border-radius:8px;gap:8px;margin-top:8px;padding:10px 12px;display:grid}.mfa-secondary-action{gap:8px;display:grid}.mfa-setup-grid{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:16px;display:grid}.mfa-setup-steps{color:#31465f;gap:8px;margin:0;padding-left:20px;font-size:.94rem;line-height:1.45;display:grid}.mfa-manual-secret input,.mfa-advanced-uri input{letter-spacing:0;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.mfa-advanced-uri{color:#536171;gap:8px;font-size:.92rem;display:grid}.mfa-advanced-uri summary{cursor:pointer;font-weight:700}.mfa-advanced-uri input{width:100%}.mfa-recovery-panel{gap:16px}.mfa-recovery-header{gap:6px;display:grid}.mfa-recovery-header strong{color:#17212b;font-size:1rem}.mfa-recovery-header p{color:#536171;margin:0;font-size:.94rem;line-height:1.5}.mfa-recovery-actions{flex-wrap:wrap;gap:10px;display:flex}.mfa-recovery-actions .primary-button,.mfa-recovery-actions .secondary-button{flex:210px}.signup-card{width:min(100%,720px)}.signup-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.pro-signup-card{gap:22px;width:min(100%,760px)}.pro-signup-card .login-brand-lockup{margin-bottom:2px}.pro-signup-card .login-brand-lockup img{border-radius:18px;width:64px;height:64px}.pro-signup-benefits{border-top:1px solid #25817f21;border-bottom:1px solid #25817f21;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:0;padding:12px 0;list-style:none;display:grid}.pro-signup-benefits li{gap:5px;min-width:0;display:grid}.pro-signup-benefits strong{color:var(--login-heading);font-size:.88rem;line-height:1.2}.pro-signup-benefits span{color:var(--login-muted);font-size:.82rem;line-height:1.35}.login-secondary-actions{flex-wrap:wrap;justify-content:center;gap:8px 16px;min-height:24px;font-size:.9rem;display:flex}.login-secondary-actions a{color:#31465f;font-weight:700;text-decoration:none}.login-secondary-actions a:hover,.login-secondary-actions a:focus-visible{color:#17212b;text-decoration:underline}@keyframes loginCardExit{0%{opacity:1;transform:translateY(0)scale(1)}56%{opacity:1;transform:translateY(-6px)scale(.992)}to{opacity:0;transform:translateY(-16px)scale(.975)}}@keyframes loginCardExitGlow{0%{opacity:0;transform:scale(.98)}46%{opacity:1;transform:scale(1.01)}to{opacity:0;transform:scale(1.04)}}@keyframes loginFormExit{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-8px)}}@keyframes loginHeadingExit{0%{opacity:1;transform:translateY(0)}to{opacity:.72;transform:translateY(-4px)}}@keyframes loginBackgroundSettle{0%{opacity:1;transform:scale(1)}to{opacity:.72;transform:scale(1.018)}}@media (prefers-reduced-motion:reduce){.login-shell.is-authenticated .hero-ribbon-background,.login-card.is-exiting,.login-card.is-exiting:before,.login-card.is-exiting .login-form,.login-card.is-exiting .eyebrow,.login-card.is-exiting h1{animation:none!important}}.appointment-form label,.appointment-form .date-picker-field,.appointment-edit-form label,.appointment-service-form label,.service-practitioner-select,.client-form label,.client-form .date-picker-field,.client-detail-form label,.client-detail-form .date-picker-field,.client-search-field,.reminder-form label,.template-form label,.template-editor-label,.personal-reminder-form label,.user-form label,.professional-profile-form label,.appointment-client-panel label,.appointment-client-panel .date-picker-field,.appointment-payment-field,.settings-form-grid label,.settings-textarea-field,.public-page-form-grid .date-picker-field,.client-pre-consultation-form .date-picker-field,.login-form label{color:#536171;gap:7px;font-size:.9rem;font-weight:500;display:grid}.login-form input{border-radius:var(--control-radius);width:100%;min-height:44px;color:var(--ink);font:inherit;border:1px solid #1b243029;padding:10px 12px}.login-form input:focus{border-color:var(--accent);outline:3px solid var(--accent-line)}.auth-terms-checkbox{color:var(--muted);grid-template-columns:auto minmax(0,1fr);align-items:flex-start;gap:10px;font-size:.84rem;line-height:1.45;display:grid}.auth-terms-checkbox input{width:18px;height:18px;margin-top:1px}.auth-checkbox-row{color:var(--muted);grid-template-columns:auto minmax(0,1fr);align-items:flex-start;gap:10px;font-size:.86rem;line-height:1.45;display:grid}.login-form .auth-checkbox-row input{border-radius:4px;width:18px;height:18px;min-height:18px;margin-top:2px;padding:0}.auth-terms-checkbox a{color:var(--accent-text);font-weight:700}.login-google-button,.login-account-button,.login-passkey-button,.sidebar-session-security{text-align:center;justify-content:center}.login-passkey-button{gap:9px}.login-passkey-icon{object-fit:contain;flex:none;width:24px;height:24px}.login-account-button{border-color:var(--control-border,#7d8da347);color:#263445;background:#fff;gap:10px;font-weight:740}.login-account-button:hover,.login-account-button:focus-visible{border-color:color-mix(in srgb, var(--control-border,#7d8da347) 72%, var(--plus-green));color:#263445;background:#fff}.login-account-add-badge{flex-basis:22px;width:22px;height:22px}@media (width<=560px){.login-shell{padding:18px}.login-shell .hero-ribbon-background:after{mix-blend-mode:normal;opacity:.34;background-image:linear-gradient(115deg,#ffffff47 0 22%,#fff0 22% 100%)}.login-card{-webkit-backdrop-filter:none;backdrop-filter:none;background:#fffffff2;padding:22px 18px}.login-primary-actions{grid-template-columns:1fr}}@font-face{font-family:uicons-regular-rounded;font-display:block;font-style:normal;font-weight:400;src:url(/assets/uicons/uicons-regular-rounded.woff2)format("woff2"),url(/assets/uicons/uicons-regular-rounded.woff)format("woff")}.ui-icon{flex:none;justify-content:center;align-items:center;width:1em;height:1em;font-size:1em;line-height:1;display:inline-flex}.ui-icon:before{font-variant:normal;text-transform:none;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-style:normal;line-height:1;display:block;font-family:uicons-regular-rounded!important;font-weight:400!important}.fi-rr-add:before{content:""}.fi-rr-alarm-exclamation:before{content:""}.fi-rr-angle-small-right:before{content:""}.fi-rr-ban:before{content:""}.fi-rr-bell:before{content:""}.fi-rr-cake-birthday:before{content:""}.fi-rr-calendar:before{content:""}.fi-rr-calendar-check:before{content:""}.fi-rr-calendar-clock:before{content:""}.fi-rr-chart-line-up:before{content:""}.fi-rr-check:before{content:""}.fi-rr-circle-xmark:before{content:""}.fi-rr-clipboard-list-check:before{content:""}.fi-rr-clock:before{content:""}.fi-rr-comment-alt:before{content:""}.fi-rr-comment-alt-edit:before{content:""}.fi-rr-comment-text:before{content:""}.fi-rr-dashboard:before{content:""}.fi-rr-envelope:before{content:""}.fi-rr-face-viewfinder:before{content:""}.fi-rr-file-invoice-dollar:before{content:""}.fi-rr-file-signature:before{content:""}.fi-rr-folder:before{content:""}.fi-rr-globe:before{content:""}.fi-rr-headset:before{content:""}.fi-rr-home:before{content:""}.fi-rr-hourglass:before{content:""}.fi-rr-house-medical:before{content:""}.fi-rr-mars:before{content:""}.fi-rr-marker:before{content:""}.fi-rr-memo-pad:before{content:""}.fi-rr-menu-dots:before{content:""}.fi-rr-messages:before{content:""}.fi-rr-microphone:before{content:""}.fi-rr-notes-medical:before{content:""}.fi-rr-pencil:before{content:""}.fi-rr-phone-call:before{content:""}.fi-rr-plus-small:before{content:""}.fi-rr-refresh:before{content:""}.fi-rr-settings:before{content:""}.fi-rr-share:before{content:""}.fi-rr-shield-check:before{content:""}.fi-rr-star:before{content:""}.fi-rr-star-comment-alt:before{content:""}.fi-rr-stop:before{content:""}.fi-rr-time-past:before{content:"酪"}.fi-rr-user:before{content:"秊"}.fi-rr-user-add:before{content:"閭"}.fi-rr-user-slash:before{content:"漣"}.fi-rr-users-medical:before{content:"輦"}.fi-rr-venus:before{content:"捻"}.fi-rr-venus-mars:before{content:"念"}.fi-rr-video-camera:before{content:"寧"}.fi-rr-x:before{content:"離"}.ui-form-field{color:var(--muted);font-size:.86rem;font-weight:var(--weight-label);gap:7px;min-width:0;display:grid}.ui-form-field-label{color:var(--text-body);line-height:1.3}.ui-form-control{appearance:none;background:var(--input-bg);border:1px solid var(--line-strong);border-radius:var(--control-radius);color:var(--input-text);font:inherit;min-width:0;min-height:44px;transition:background var(--motion-fast) ease, border-color var(--motion-fast) ease, box-shadow var(--motion-fast) ease;width:100%;padding:10px 12px;font-size:.92rem;font-weight:500}.ui-form-control::placeholder{color:color-mix(in srgb, var(--muted) 76%, transparent);opacity:1}.ui-form-control:hover:not(:disabled){border-color:var(--accent-line)}.ui-form-control:focus-visible{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent-line) 62%, transparent);outline:0}.ui-form-control:disabled{cursor:not-allowed;opacity:.58}.ui-form-control[aria-invalid=true]{border-color:var(--danger-line)}.ui-form-control[aria-invalid=true]:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb, var(--danger-line) 56%, transparent)}.ui-form-field>.ui-select-menu .ui-select-menu-trigger{border-color:var(--line-strong);background:var(--input-bg);min-height:44px;color:var(--input-text);padding-inline:12px;font-size:.92rem;font-weight:500}.ui-form-field>.ui-select-menu .ui-select-menu-trigger[aria-invalid=true]{border-color:var(--danger-line)}.ui-form-field>.ui-select-menu .ui-select-menu-trigger[aria-invalid=true]:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb, var(--danger-line) 56%, transparent)}.ui-form-select-control{min-width:0;display:block;position:relative}.ui-form-select-control:after{color:var(--muted);content:"";pointer-events:none;border-bottom:2px solid;border-right:2px solid;width:7px;height:7px;position:absolute;top:calc(50% - 5px);right:15px;transform:rotate(45deg)}.ui-form-select-control .ui-form-control{cursor:pointer;padding-right:40px}.ui-form-field-hint{color:var(--muted);font-size:.76rem;font-weight:450;line-height:1.35}.ui-form-field-error{color:var(--danger-text,#a33434);font-size:.76rem;font-weight:650;line-height:1.35}.ui-checkbox-field{color:var(--text-body);cursor:pointer;grid-template-columns:20px minmax(0,auto);align-items:center;gap:9px;min-width:0;font-size:.86rem;font-weight:650;display:inline-grid}.ui-checkbox-field input{opacity:0;width:1px;height:1px;position:absolute}.ui-checkbox-field-indicator{background:var(--input-bg);border:1.5px solid var(--line-strong);height:20px;transition:background var(--motion-fast) ease, border-color var(--motion-fast) ease, box-shadow var(--motion-fast) ease;border-radius:6px;justify-content:center;align-items:center;width:20px;display:flex}.ui-checkbox-field-indicator:after{content:"";opacity:0;border:2px solid #fff;border-width:0 2px 2px 0;width:5px;height:9px;transform:rotate(45deg)translate(-1px,-1px)}.ui-checkbox-field input:checked+.ui-checkbox-field-indicator,.ui-checkbox-field input:indeterminate+.ui-checkbox-field-indicator{background:var(--accent);border-color:var(--accent)}.ui-checkbox-field input:checked+.ui-checkbox-field-indicator:after{opacity:1}.ui-checkbox-field input:indeterminate+.ui-checkbox-field-indicator:after{opacity:1;background:#fff;border:0;border-radius:999px;width:10px;height:2px;transform:none}.ui-checkbox-field input:focus-visible+.ui-checkbox-field-indicator{box-shadow:0 0 0 3px color-mix(in srgb, var(--accent-line) 62%, transparent)}.ui-checkbox-field input:disabled~*{cursor:not-allowed;opacity:.55}.ui-checkbox-field-label{overflow-wrap:anywhere;min-width:0}.ui-file-field-input{display:none}.ui-file-field-control{background:var(--input-bg);border:1px solid var(--line-strong);border-radius:var(--control-radius);min-width:0;min-height:52px;transition:border-color var(--motion-fast) ease, box-shadow var(--motion-fast) ease;align-items:center;gap:12px;padding:5px;display:flex}.ui-file-field-control:hover{border-color:var(--accent-line)}.ui-file-field-control:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent-line) 62%, transparent)}.ui-file-field-control .secondary-button{flex:none}.ui-file-field-name{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;min-width:0;padding-right:8px;font-size:.86rem;font-weight:500;overflow:hidden}.ui-file-field-name.is-selected{color:var(--text-body);font-weight:650}@media (prefers-reduced-motion:reduce){.ui-form-control,.ui-file-field-control,.ui-checkbox-field-indicator{transition:none}}input:is([type=time],[type=date],[type=datetime-local]){appearance:none;box-sizing:border-box;min-inline-size:0;max-inline-size:100%}input:is([type=time],[type=date],[type=datetime-local])::-webkit-date-and-time-value{text-align:start;min-width:0}.ui-select-menu{min-width:0;position:relative}.ui-select-menu-trigger{border:1px solid var(--line);border-radius:var(--control-radius);background:var(--surface);width:100%;min-width:116px;min-height:38px;color:var(--ink);font:inherit;cursor:pointer;justify-content:space-between;align-items:center;gap:10px;padding:0 11px;font-weight:600;line-height:1;transition:border-color .15s,box-shadow .15s,background .15s,transform .12s cubic-bezier(.23,1,.32,1);display:inline-flex}.ui-select-menu-trigger:hover,.ui-select-menu-trigger[aria-expanded=true]{border-color:var(--accent-line);background:color-mix(in srgb, var(--accent-soft) 28%, var(--surface))}.ui-select-menu-trigger:focus-visible{border-color:var(--accent-line);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent-line) 56%, transparent);outline:0}.ui-select-menu-trigger:active:not(:disabled){transform:scale(.98)}.ui-select-menu-trigger:disabled{cursor:not-allowed;opacity:.58}.ui-select-menu-chevron{color:var(--muted);flex:none;font-size:.78rem;transition:transform .15s;transform:rotate(90deg)}.ui-select-menu-trigger[aria-expanded=true] .ui-select-menu-chevron{transform:rotate(-90deg)}.ui-select-menu-popup{z-index:1200;border:1px solid var(--line-strong);border-radius:var(--control-radius);background:var(--surface-raised);color:var(--ink);box-shadow:var(--shadow-floating);overscroll-behavior:contain;scrollbar-width:thin;animation:ui-select-menu-enter .12s var(--motion-ease-out) both;gap:2px;padding:5px;display:grid;position:fixed;overflow:hidden auto}.ui-select-menu-option-row{gap:2px;display:grid}.ui-select-menu-group{color:var(--muted);letter-spacing:.045em;text-transform:uppercase;padding:8px 9px 3px;font-size:.68rem;font-weight:760}.ui-select-menu-option{width:100%;min-height:34px;color:var(--text-body);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;justify-content:space-between;align-items:center;gap:10px;padding:6px 9px;font-size:.84rem;font-weight:580;line-height:1.2;display:flex}.ui-select-menu-option:is(:hover,.is-active){background:var(--accent-soft);color:var(--accent-text)}.ui-select-menu-option:disabled{color:var(--muted);cursor:not-allowed;opacity:.56;background:0 0}.ui-select-menu-option.is-selected{background:var(--confirm-soft);color:var(--confirm-text);font-weight:720}.ui-select-menu-option.is-selected.is-active{box-shadow:inset 0 0 0 1px var(--confirm-line)}.ui-select-menu-option .ui-icon{color:var(--confirm-text);flex:none;font-size:.75rem}@keyframes ui-select-menu-enter{0%{opacity:0;transform:translateY(-3px)scale(.985)}to{opacity:1;transform:translateY(0)scale(1)}}@media (width<=560px){.ui-select-menu-popup{max-width:calc(100dvw - 20px)}.ui-select-menu-option{min-height:38px;font-size:.88rem}}@media (prefers-reduced-motion:reduce){.ui-select-menu-popup,.ui-select-menu-chevron{transition:none;animation:none}}.gleny-wordmark,.brand-copy .gleny-wordmark,.landing-reset-brand .gleny-wordmark,.landing-reset-footer-logo .gleny-wordmark,.login-brand-lockup .gleny-wordmark{vertical-align:middle;background:currentColor;flex:none;width:106px;max-width:100%;height:22px;font-size:0;line-height:0;display:inline-block;overflow:hidden;-webkit-mask:url(/assets/brand/gleny/wordmark-black.png) 50%/contain no-repeat;mask:url(/assets/brand/gleny/wordmark-black.png) 50%/contain no-repeat}.login-brand-lockup .gleny-wordmark{width:132px;height:28px;margin-top:5px}img[src="/assets/brand/gleny/icon-512.png"]{object-fit:contain;border-radius:24%}.landing-reset-brand,.landing-reset-footer-logo,.brand-link{min-width:0}.login-brand-lockup img{box-shadow:0 10px 28px #4c38241f}@media (forced-colors:active){.gleny-wordmark{background:canvastext}}.auth-natural-background{pointer-events:none;background:#f5dfcb url(/assets/brand/gleny/natural-background.webp) 50%/cover no-repeat;position:absolute;inset:0}.login-card-heading h1,.login-card-heading .gleny-wordmark{color:#171717}.login-card-heading p{color:#333}.domain-migration-notice a{text-underline-offset:.2em;font-weight:var(--weight-title);text-decoration:underline}:root{--brand-peach:#e5c7ac;--brand-rose:#eddbc9;--brand-lavender:#f5e6d7;--brand-blue:#e8d5bf;--brand-cyan:#d4b698;--brand-gradient:url(/assets/brand/gleny/natural-background.webp) center / cover;--ink:#343b45;--text:var(--ink);--muted:#656d78;--line:#aab2bd5c;--line-strong:#656d7847;--soft:#f5f7fa;--app-bg:#f6f3ef;--body-highlight:none;--body-wash:none;--surface:#fff;--surface-tint:#ffffffe6;--surface-muted:#f6f3eff0;--surface-raised:#fff;--input-bg:#fff;--input-text:var(--ink);--text-title:var(--ink);--text-body:var(--ink);--font-body-size:14px;--font-body-line-height:1.5;--font-page-title:1.25rem;--font-panel-title:1.0625rem;--font-card-title:1rem;--font-metric:2.25rem;--font-metric-compact:1.5rem;--font-label:.75rem;--weight-title:600;--weight-panel-title:560;--weight-label:500;--weight-metric:650;--accent:#656d78;--accent-hover:#434a54;--accent-text:#434a54;--accent-soft:#aab2bd29;--accent-line:#656d7847;--unread-badge-bg:#cc4b3d;--unread-badge-shadow:#cc4b3d38;--agenda-column-bg:color-mix(in srgb, var(--surface) 88%, transparent);--agenda-slot-bg:color-mix(in srgb, var(--surface) 84%, transparent);--agenda-slot-hover-bg:var(--surface);--agenda-slot-border:color-mix(in srgb, var(--line) 78%, transparent);--agenda-slot-text:color-mix(in srgb, var(--ink) 80%, transparent);--agenda-slot-muted:color-mix(in srgb, var(--muted) 90%, var(--ink) 10%);--agenda-slot-unavailable-bg:var(--surface-muted);--agenda-slot-unavailable-mark-bg:color-mix(in srgb, var(--muted) 82%, var(--ink) 18%);--agenda-slot-action-bg:var(--accent-text);--agenda-slot-action-text:#fff;--agenda-today-accent:var(--accent);--agenda-today-bg:color-mix(in srgb, var(--agenda-today-accent) 6%, transparent);--agenda-today-chip-bg:color-mix(in srgb, var(--agenda-today-accent) 8%, var(--surface));--agenda-today-outline:#656d782e;--calendar-date-accent-gradient:linear-gradient(135deg, #ef5e85 0%, #ff9347 58%, #ffc857 100%);--calendar-today-accent-gradient:linear-gradient(135deg, color-mix(in srgb, #ef5e85 40%, var(--surface)) 0%, color-mix(in srgb, #ff9347 40%, var(--surface)) 58%, color-mix(in srgb, #ffc857 40%, var(--surface)) 100%);--agenda-drop-bg:color-mix(in srgb, var(--accent) 8%, transparent);--agenda-drop-outline:color-mix(in srgb, var(--accent) 28%, transparent);--neutral-warm:#e6e9ed;--neutral-cool:#ccd1d9;--neutral-mist:#f5f7fa;--confirm:#237f68;--confirm-text:#176b57;--confirm-soft:#48cfad24;--confirm-line:#37bc9b57;--warning-text:#7a5715;--warning-soft:#fff8e6;--warning-line:#e6ca72;--danger-text:#8a2f2a;--danger-soft:#b54a441a;--danger-line:#b54a4447;--plus-green:var(--confirm);--plus-green-hover:#1d6e5b;--plus-green-line:var(--confirm-line);--teal-dark:var(--confirm-text);--cancel:#b54a44;--cancel-text:#8a2f2a;--cancel-soft:#b54a441a;--cancel-line:#b54a4447;--personal-reminder-urgent-bg:#fff2f0;--personal-reminder-urgent-line:#f4bcb5;--personal-reminder-urgent-text:#7d3f3a;--personal-reminder-today-bg:#fff8e6;--personal-reminder-today-line:#e6ca72;--personal-reminder-today-text:#6f5614;--personal-reminder-nonurgent-bg:#f8fbff;--personal-reminder-nonurgent-line:#d7e4ed;--personal-reminder-nonurgent-text:#466174;--shadow-subtle:0 8px 22px #17201c0d;--shadow-panel:0 18px 50px #17201c14;--shadow-floating:0 24px 70px #17201c24;--shadow-page-block:0 24px 64px #17212b1f, 0 8px 22px #17212b12;--shadow-dashboard-block:var(--shadow-page-block);--motion-fast:.18s;--motion-panel:.24s;--motion-return:.22s;--motion-ease-out:cubic-bezier(.22, 1, .36, 1);--modal-radius:12px;--modal-border-width:1px;--modal-exit-duration:.18s;--modal-resize-duration:.28s;--modal-viewport-top:clamp(56px, 8dvh, 84px);--modal-viewport-side:24px;--modal-viewport-bottom:24px;--appointment-modal-viewport-top:calc(var(--modal-viewport-top) + 40px);--mobile-nav-height:64px;--mobile-safe-area-top:env(safe-area-inset-top,0px);--mobile-active-safe-area-top:0px;--mobile-top-gutter:10px;--mobile-safe-area-bottom:env(safe-area-inset-bottom,0px);--mobile-nav-occupied-height:calc(var(--mobile-nav-height) + var(--mobile-safe-area-bottom));--mobile-nav-bottom-offset:calc(0px - var(--mobile-safe-area-bottom));--primary-button-bg:linear-gradient(135deg, #656d78 0%, #434a54 100%);--primary-button-hover-bg:linear-gradient(135deg, #707984 0%, #3b424c 100%);--primary-button-text:#fff;--primary-button-shadow:0 6px 14px #434a5429;--primary-button-hover-shadow:0 9px 20px #17201c29;--button-shadow-clearance:20px;--sidebar-bg:linear-gradient(160deg, #434a54f5 0%, #656d78e6 52%, #343a42f7 100%), linear-gradient(135deg, #ccd1d9, #f5f7fa 46%, #aab2bd 100%);--sidebar-ink:#fff;--sidebar-line:#ffffff2e;--sidebar-active-bg:#ffffff29;--sidebar-shadow:inset -1px 0 0 #ffffff14;--control-radius:10px;--panel-radius:8px;--card-radius:8px;color:var(--ink);background:var(--app-bg);font-synthesis:none;text-rendering:optimizelegibility;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.appointment-dashboard{--panel-radius:16px;--shadow-dashboard-block:0 2px 5px #17212b06, 0 10px 28px #17212b0b}@media (width<=920px){:root[data-installed-app=true][data-app-surface=pro]{--mobile-active-safe-area-top:var(--mobile-safe-area-top)}}.password-visibility-field{color:#536171;gap:7px;min-width:0;font-size:.9rem;font-weight:500;display:grid}.password-visibility-control{min-width:0;display:block;position:relative}.password-visibility-field .password-visibility-control input{width:100%;padding-right:54px}.password-visibility-field .password-visibility-control input[aria-invalid=true]{border-color:var(--danger-line)}.password-visibility-field .password-visibility-control input[aria-invalid=true]:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb, var(--danger-line) 56%, transparent)}.password-visibility-toggle{border-radius:var(--control-radius);color:#263445;cursor:pointer;background:#fffffff0;border:1px solid #1b243029;place-items:center;width:36px;min-width:36px;height:36px;min-height:36px;padding:0;transition:background .16s,border-color .16s,box-shadow .16s,color .16s;display:inline-grid;position:absolute;top:50%;right:6px;transform:translateY(-50%);box-shadow:0 1px 2px #1b243014}.password-visibility-icon{color:currentColor;stroke:currentColor;width:20px;height:20px}.password-visibility-toggle.is-visible{border-color:color-mix(in srgb, var(--accent-text) 32%, #1b243029);background:color-mix(in srgb, var(--accent-soft) 58%, #fff);color:var(--accent-text)}.password-visibility-toggle:hover,.password-visibility-toggle:focus-visible{border-color:color-mix(in srgb, var(--accent-text) 42%, #1b243029);color:var(--accent-text);background:#fff;outline:none}.password-visibility-toggle:focus-visible{box-shadow:0 0 0 3px var(--accent-line), 0 1px 2px #1b24301a}.password-visibility-toggle:disabled{cursor:not-allowed;opacity:.55}.public-booking-confirm .password-visibility-toggle{width:36px}:root[data-theme=dark-minimal]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--ink:#f5f7fa;--text:var(--ink);--muted:#ccd1d9;--line:#e6e9ed29;--line-strong:#f5f7fa42;--soft:#343b45;--app-bg:linear-gradient(135deg, #262c34 0%, #343b45 48%, #434a54 100%);--body-highlight:linear-gradient(180deg, #ffffff0e 0%, #fff0 42%);--body-wash:linear-gradient(120deg, #aab2bd24 0%, #aab2bd00 56%);--surface:#343b45;--surface-tint:#343b45e6;--surface-muted:#434a54f0;--surface-raised:#434a54;--input-bg:#2b313a;--input-text:#f5f7fa;--accent:#ccd1d9;--accent-hover:#f5f7fa;--accent-text:#f5f7fa;--accent-soft:#ccd1d924;--accent-line:#e6e9ed52;--neutral-warm:#434a54;--neutral-cool:#656d78;--neutral-mist:#343b45;--confirm:#48cfad;--confirm-text:#a7f2de;--confirm-soft:#48cfad24;--confirm-line:#48cfad57;--warning-text:#f5d680;--warning-soft:#e6ca721f;--warning-line:#e6ca7257;--danger-text:#ffb7ad;--danger-soft:#b54a442e;--danger-line:#b54a446b;--agenda-column-bg:#434a54d1;--agenda-slot-bg:#f5f7fa24;--agenda-slot-hover-bg:#f5f7fa33;--agenda-slot-border:#e6e9ed33;--agenda-slot-text:#f5f7fae0;--agenda-slot-muted:#ccd1d9e6;--agenda-slot-unavailable-bg:#f5f7fa12;--agenda-slot-unavailable-mark-bg:#ccd1d957;--agenda-slot-action-bg:var(--accent);--agenda-slot-action-text:#111816;--agenda-today-bg:#f5f7fa0f;--agenda-today-chip-bg:#f5f7fa2e;--agenda-today-outline:#f5f7fa47;--agenda-drop-bg:#ccd1d91f;--agenda-drop-outline:#e6e9ed47;--cancel:#ed5565;--cancel-text:#ffb5bd;--cancel-soft:#ed556524;--cancel-line:#ed556557;--personal-reminder-urgent-bg:#ed556521;--personal-reminder-urgent-line:#ed55654d;--personal-reminder-urgent-text:#ffb7ad;--personal-reminder-today-bg:#e6ca721f;--personal-reminder-today-line:#e6ca724d;--personal-reminder-today-text:#f5d680;--personal-reminder-nonurgent-bg:#4fc1e91a;--personal-reminder-nonurgent-line:#4fc1e942;--personal-reminder-nonurgent-text:#b8e4f4;--shadow-subtle:0 8px 22px #0000003d;--shadow-panel:0 18px 50px #00000047;--shadow-floating:0 24px 70px #0000006b;--shadow-page-block:0 24px 64px #0000004d, 0 8px 22px #0003;--shadow-dashboard-block:var(--shadow-page-block);--primary-button-bg:linear-gradient(135deg, #f5f7fa 0%, #ccd1d9 100%);--primary-button-hover-bg:linear-gradient(135deg, #fff 0%, #e6e9ed 100%);--primary-button-text:#262c34;--primary-button-shadow:0 6px 16px #00000042;--primary-button-hover-shadow:0 9px 20px #0000004d;--sidebar-bg:linear-gradient(160deg, #262c34fa 0%, #434a54f5 56%, #20252cfa 100%), linear-gradient(135deg, #656d78, #434a54 52%, #2b313a 100%)}:root[data-theme=ocean]{--ink:#304451;--muted:#656d78;--line:#3bafda33;--line-strong:#24799a47;--soft:#edf9fd;--app-bg:linear-gradient(135deg, #f7fcfe 0%, #edf9fd 48%, #f5f7fa 100%);--body-highlight:linear-gradient(180deg, #ffffffb8 0%, #fff0 42%);--body-wash:linear-gradient(120deg, #4fc1e929 0%, #4fc1e900 56%);--surface-muted:#f5fbfdf0;--surface-raised:#fff;--accent:#3bafda;--accent-hover:#2d96bd;--accent-text:#24799a;--accent-soft:#4fc1e924;--accent-line:#3bafda57;--primary-button-bg:linear-gradient(135deg, #24799a 0%, #1c5f7a 100%);--primary-button-hover-bg:linear-gradient(135deg, #2b89ad 0%, #184f66 100%);--sidebar-bg:linear-gradient(160deg, #1c5f7af5 0%, #3bafdad6 56%, #20495cf7 100%), linear-gradient(135deg, #4fc1e9, #f5f7fa 52%, #3bafda 100%)}:root[data-theme=lavender]{--ink:#3b3448;--muted:#6f687a;--line:#967adc33;--line-strong:#634ca847;--soft:#f5f1fd;--app-bg:linear-gradient(135deg, #fbf9fd 0%, #f2ecfb 48%, #f7f3f8 100%);--body-wash:linear-gradient(120deg, #ac92ec29 0%, #ac92ec00 56%);--surface-muted:#fbf9fff0;--accent:#967adc;--accent-hover:#7c62c6;--accent-text:#634ca8;--accent-soft:#ac92ec26;--accent-line:#967adc57;--primary-button-bg:linear-gradient(135deg, #7258bd 0%, #594196 100%);--primary-button-hover-bg:linear-gradient(135deg, #8065cf 0%, #4d3984 100%);--sidebar-bg:linear-gradient(160deg, #4b3a7cf5 0%, #967adcd6 56%, #372b5af7 100%), linear-gradient(135deg, #ac92ec, #f5f7fa 52%, #967adc 100%)}:root[data-theme=sunrise]{--ink:#453731;--muted:#6f625b;--line:#e9573f2e;--line-strong:#9e3a2b47;--soft:#fff4ee;--app-bg:linear-gradient(135deg, #fffaf7 0%, #fff2ed 48%, #f5f7fa 100%);--body-wash:linear-gradient(120deg, #fc6e5129 0%, #fc6e5100 56%);--surface-muted:#fffaf7f0;--accent:#e9573f;--accent-hover:#cc4731;--accent-text:#9e3a2b;--accent-soft:#fc6e5121;--accent-line:#e9573f52;--primary-button-bg:linear-gradient(135deg, #c8462f 0%, #963225 100%);--primary-button-hover-bg:linear-gradient(135deg, #dd523a 0%, #832a20 100%);--sidebar-bg:linear-gradient(160deg, #963225f5 0%, #e9573fd6 56%, #652c23f7 100%), linear-gradient(135deg, #ffce54, #fc6e51 52%, #e9573f 100%)}:root[data-theme=forest]{--ink:#334331;--muted:#63705e;--line:#8cc15238;--line-strong:#4f7d2d4d;--soft:#f3faef;--app-bg:linear-gradient(135deg, #fbfdf9 0%, #f1faec 48%, #f5f7fa 100%);--body-wash:linear-gradient(120deg, #a0d4682e 0%, #a0d46800 56%);--surface-muted:#fafdf8f0;--accent:#8cc152;--accent-hover:#73a83d;--accent-text:#4f7d2d;--accent-soft:#a0d46829;--accent-line:#8cc15257;--primary-button-bg:linear-gradient(135deg, #4f7d2d 0%, #385e22 100%);--primary-button-hover-bg:linear-gradient(135deg, #5c9035 0%, #304f1d 100%);--sidebar-bg:linear-gradient(160deg, #385e22f5 0%, #8cc152d6 56%, #2f4822f7 100%), linear-gradient(135deg, #a0d468, #f5f7fa 52%, #8cc152 100%)}:root[data-theme=rose]{--ink:#44323e;--muted:#736675;--line:#d770ad33;--line-strong:#8d3e7247;--soft:#fff2fa;--app-bg:linear-gradient(135deg, #fff8fc 0%, #fff0f9 48%, #f5f7fa 100%);--body-wash:linear-gradient(120deg, #ec87c029 0%, #ec87c000 56%);--surface-muted:#fffafdf0;--accent:#d770ad;--accent-hover:#bd5b95;--accent-text:#8d3e72;--accent-soft:#ec87c024;--accent-line:#d770ad57;--primary-button-bg:linear-gradient(135deg, #ad4f88 0%, #7f3865 100%);--primary-button-hover-bg:linear-gradient(135deg, #c05d9a 0%, #703058 100%);--sidebar-bg:linear-gradient(160deg, #7f3865f5 0%, #d770add6 56%, #532d48f7 100%), linear-gradient(135deg, #ec87c0, #f5f7fa 52%, #d770ad 100%)}:root[data-theme=aqua]{--ink:#2f4741;--muted:#60736e;--line:#37bc9b38;--line-strong:#1f7f6a4d;--soft:#effcf8;--app-bg:linear-gradient(135deg, #f8fdfb 0%, #ecfbf7 48%, #f5f7fa 100%);--body-wash:linear-gradient(120deg, #48cfad2e 0%, #48cfad00 56%);--surface-muted:#f8fdfcf0;--accent:#37bc9b;--accent-hover:#2e9d82;--accent-text:#1f7f6a;--accent-soft:#48cfad26;--accent-line:#37bc9b57;--primary-button-bg:linear-gradient(135deg, #1f7f6a 0%, #176b5d 100%);--primary-button-hover-bg:linear-gradient(135deg, #218873 0%, #145c50 100%);--sidebar-bg:linear-gradient(160deg, #176b5df5 0%, #37bc9bd6 56%, #1b4c44f7 100%), linear-gradient(135deg, #48cfad, #f5f7fa 52%, #37bc9b 100%)}:root[data-theme]:not([data-theme=dark-minimal]){--soft:#f5f7fa;--app-bg:#f5f7fa;--body-highlight:none;--body-wash:none;--surface-muted:#f5f7faf0}:root[data-theme=high-contrast][data-app-surface=pro]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--ink:#0b1f33;--text:var(--ink);--muted:#334c66;--line:#8297ab;--line-strong:#27445f;--soft:#e7f0f8;--app-bg:#e7f0f8;--body-highlight:none;--body-wash:none;--surface:#fff;--surface-tint:#fff;--surface-muted:#edf4fa;--surface-raised:#fff;--input-bg:#fff;--input-text:#0b1f33;--text-title:#07192b;--text-body:#0b1f33;--font-body-size:16px;--font-body-line-height:1.58;--font-page-title:1.5rem;--font-panel-title:1.1875rem;--font-card-title:1.0625rem;--font-metric:2.5rem;--font-metric-compact:1.75rem;--font-label:.8125rem;--weight-title:750;--weight-panel-title:700;--weight-label:650;--weight-metric:750;--accent:#005fcc;--accent-hover:#003f8f;--accent-text:#004c9e;--accent-soft:#d7eaff;--accent-line:#005fcc;--unread-badge-bg:#b50026;--unread-badge-shadow:#b5002652;--agenda-column-bg:#fff;--agenda-slot-bg:#fff;--agenda-slot-hover-bg:#d7eaff;--agenda-slot-border:#55718b;--agenda-slot-text:#0b1f33;--agenda-slot-muted:#334c66;--agenda-slot-unavailable-bg:#dce6ef;--agenda-slot-unavailable-mark-bg:#526b82;--agenda-slot-action-bg:#005fcc;--agenda-slot-action-text:#fff;--agenda-today-accent:#005fcc;--agenda-today-bg:#e2f0ff;--agenda-today-chip-bg:#005fcc;--agenda-today-outline:#005fcc;--agenda-drop-bg:#c9e2ff;--agenda-drop-outline:#005fcc;--neutral-warm:#dce6ef;--neutral-cool:#b7c8d8;--neutral-mist:#edf4fa;--confirm:#007a46;--confirm-text:#005b34;--confirm-soft:#d7f5e5;--confirm-line:#007a46;--warning-text:#674500;--warning-soft:#fff2bf;--warning-line:#9a6700;--danger-text:#920d24;--danger-soft:#ffe0e6;--danger-line:#b50026;--plus-green:#007a46;--plus-green-hover:#005b34;--plus-green-line:#007a46;--teal-dark:#005b34;--cancel:#b50026;--cancel-text:#920d24;--cancel-soft:#ffe0e6;--cancel-line:#b50026;--personal-reminder-urgent-bg:#ffe0e6;--personal-reminder-urgent-line:#b50026;--personal-reminder-urgent-text:#75091c;--personal-reminder-today-bg:#fff2bf;--personal-reminder-today-line:#9a6700;--personal-reminder-today-text:#674500;--personal-reminder-nonurgent-bg:#d7eaff;--personal-reminder-nonurgent-line:#005fcc;--personal-reminder-nonurgent-text:#003f8f;--shadow-subtle:0 2px 0 #0b1f3329;--shadow-panel:0 8px 24px #0b1f3333;--shadow-floating:0 18px 48px #0b1f3347;--shadow-page-block:0 5px 0 #0b1f332e;--shadow-dashboard-block:var(--shadow-page-block);--primary-button-bg:#005fcc;--primary-button-hover-bg:#003f8f;--primary-button-text:#fff;--primary-button-shadow:0 3px 0 #003f8f;--primary-button-hover-shadow:0 4px 0 #002f6b;--sidebar-bg:#0a3159;--sidebar-ink:#fff;--sidebar-line:#fff;--sidebar-active-bg:#ffd43b;--sidebar-shadow:inset -2px 0 0 #07192b;--control-radius:8px;--panel-radius:6px;--card-radius:6px}*{box-sizing:border-box}.sr-only{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}body{background:var(--app-bg);min-width:320px;min-height:100vh;color:var(--text-body);font-size:var(--font-body-size);font-weight:400;line-height:var(--font-body-line-height);margin:0}body.app-modal-open{overflow:hidden}@media (width<=760px){.app-layout input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]):not([type=color]),.app-layout textarea,.app-layout select,.client-portal-shell input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]):not([type=color]),.client-portal-shell textarea,.client-portal-shell select,.client-portal-layout input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]):not([type=color]),.client-portal-layout textarea,.client-portal-layout select,.login-form input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]):not([type=color]),.login-form textarea,.login-form select{box-sizing:border-box;min-width:0;max-width:100%;font-size:16px!important}}a{color:inherit;text-decoration:none}h1,h2,h3,strong{font-weight:var(--weight-panel-title)}.eyebrow{color:var(--accent-text);font-size:var(--font-label);font-weight:var(--weight-label);text-transform:none;margin:0}.form-error{color:#b42318;margin:0;font-size:.92rem;font-weight:500}.ui-text-disclosure-trigger{border-radius:var(--control-radius);width:100%;min-width:0;color:inherit;font:inherit;text-align:left;cursor:pointer;transform-origin:0;background:0 0;border:0;align-items:baseline;gap:4px;margin:0;padding:0;transition:transform .16s cubic-bezier(.23,1,.32,1),background .16s;display:flex}.ui-text-disclosure-trigger>strong{flex:none}.ui-text-disclosure-trigger>span{text-overflow:ellipsis;white-space:nowrap;text-underline-offset:3px;min-width:0;overflow:hidden}.ui-text-disclosure-trigger:focus-visible{outline-offset:3px;outline:2px solid}@media (hover:hover) and (pointer:fine){.ui-text-disclosure-trigger:hover>span{-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.ui-text-disclosure-trigger:hover{background:color-mix(in srgb, currentColor 8%, transparent);transform:scale(1.015)}.ui-text-disclosure-trigger:active{transform:scale(.99)}}.ui-text-disclosure-bubble{box-sizing:border-box;overscroll-behavior:contain;border:1px solid var(--line);border-radius:var(--panel-radius);background:var(--surface-raised);color:var(--ink);box-shadow:var(--shadow-page-block);white-space:normal;overflow-wrap:anywhere;opacity:1;margin:0;padding:16px;font-size:.9rem;line-height:1.55;transition:opacity .18s cubic-bezier(.23,1,.32,1),transform .18s cubic-bezier(.23,1,.32,1);position:fixed;inset:auto;overflow:auto;transform:scale(1)}.ui-text-disclosure-heading{z-index:1;border-bottom:1px solid var(--line);background:var(--surface-raised);justify-content:space-between;align-items:center;gap:12px;margin:-16px -16px 0;padding:12px 16px;display:flex;position:sticky;top:-16px}.ui-text-disclosure-bubble p{white-space:pre-wrap;margin:10px 0 0}.ui-text-disclosure-bubble:focus-visible{outline:2px solid var(--accent-line);outline-offset:2px}@starting-style{.ui-text-disclosure-bubble:popover-open{opacity:0;transform:scale(.97)}}.ui-text-disclosure-bubble[data-keyboard]{transition:none}@media (prefers-reduced-motion:reduce){.ui-text-disclosure-trigger,.ui-text-disclosure-bubble{transition:none;transform:none}}.success-message{color:#17683d;margin:0;font-size:.92rem;font-weight:500}.primary-button,.secondary-button,.icon-nav-button,.icon-button{appearance:none;border-radius:var(--control-radius);-webkit-text-fill-color:currentColor;min-width:0;min-height:42px;font:inherit;text-align:center;cursor:pointer;border:1px solid #0000;justify-content:center;align-items:center;gap:6px;padding-inline:14px;font-weight:500;line-height:1.2;text-decoration:none;transition:background .18s,border-color .18s,box-shadow .18s,color .18s,transform .18s cubic-bezier(.2,.82,.2,1);display:inline-flex}.primary-button{background:var(--primary-button-bg);color:#fff;box-shadow:var(--primary-button-shadow)}.primary-button:hover,.primary-button:focus-visible{background:var(--primary-button-hover-bg);box-shadow:var(--primary-button-hover-shadow);outline:0;transform:translateY(-1px)}.ui-warning-notice{border:1px solid var(--warning-line);border-radius:var(--panel-radius);background:color-mix(in srgb, var(--warning-soft) 55%, var(--surface));align-items:flex-start;gap:12px;min-width:0;padding:16px;display:flex}.ui-warning-notice>.ui-icon{color:#bd7a29;flex-shrink:0;font-size:1.15rem}.ui-warning-notice-content{gap:8px;min-width:0;font-size:.875rem;display:grid}.ui-warning-notice-content>strong{color:var(--text-title)}.ui-warning-notice-content p{margin:0}.ui-warning-notice-content>button,.ui-warning-notice-content>a{white-space:normal;justify-self:start}.primary-button.success-button{color:#fff;background:linear-gradient(135deg,#2b9277 0%,#176b57 100%);border-color:#176b57c7;box-shadow:0 7px 16px #176b5738}.primary-button.success-button:hover,.primary-button.success-button:focus-visible{background:linear-gradient(135deg,#237f68 0%,#115545 100%);border-color:#176b57;box-shadow:0 9px 20px #176b5742}.primary-button.success-soft-button{color:#195c3b;box-shadow:none;background:#d7f1e1;border-color:#a7d9be}.primary-button.success-soft-button:hover:not(:disabled),.primary-button.success-soft-button:focus-visible{box-shadow:none;background:#c3e8d2;border-color:#7cbea0;transform:none}.primary-button.success-soft-button:focus-visible{outline-offset:3px;outline:2px solid #7cbea0}.secondary-button{border-color:var(--line);background:var(--surface);color:var(--ink);align-items:center;padding:0 12px;display:inline-flex}.secondary-button:hover,.secondary-button:focus-visible,.icon-nav-button:hover,.icon-nav-button:focus-visible{border-color:var(--accent-line);background:var(--accent-soft);outline:0}.secondary-button.danger{color:#8a1f16;border-color:#f3d0cc}.secondary-button.danger:hover,.secondary-button.danger:focus-visible{background:var(--cancel-soft);border-color:#e58a7f}.client-modal,.modal-card,.app-modal-sheet{position:relative}:root :is(.app-modal-sheet,.modal-card,.client-modal,[role=dialog][aria-modal=true],[role=alertdialog][aria-modal=true],dialog){--modal-inner-radius:max(0px, calc(var(--modal-radius) - var(--modal-border-width)));border-radius:var(--modal-radius)}:root[data-theme=high-contrast]{--modal-border-width:2px}:root :is(.app-modal-sheet,.modal-card,.client-modal)>.app-modal-footer:last-child{border-bottom-left-radius:var(--modal-inner-radius);border-bottom-right-radius:var(--modal-inner-radius)}:is(.client-modal:has(.modal-close-button),.modal-card:has(.modal-close-button),.app-modal-sheet:has(.modal-close-button)){overflow:visible}.modal-close-button,.secondary-button.modal-close-button,.icon-button.modal-close-button{--modal-close-size:38px;z-index:30;width:var(--modal-close-size);min-width:var(--modal-close-size);height:var(--modal-close-size);min-height:var(--modal-close-size);border:1px solid var(--line-strong);background:color-mix(in srgb, var(--surface-raised) 86%, transparent);color:var(--muted);box-shadow:0 16px 38px #0f172a29, 0 2px 8px #0f172a14, inset 0 1px 0 color-mix(in srgb, var(--ink) 12%, transparent);-webkit-backdrop-filter:blur(16px)saturate(135%);backdrop-filter:blur(16px)saturate(135%);transition:background-color .16s var(--motion-ease-out), border-color .16s var(--motion-ease-out), box-shadow .16s var(--motion-ease-out), color .16s var(--motion-ease-out), transform .16s var(--motion-ease-out);border-radius:999px;place-items:center;padding:0;font-size:1rem;font-weight:500;line-height:1;display:inline-grid;position:absolute;top:-14px;right:-14px}.modal-close-button svg,.modal-close-button .ui-icon{width:18px;height:18px;font-size:18px;display:block}.modal-close-button:hover{border-color:var(--accent-line);background:var(--surface-raised);color:var(--ink);box-shadow:0 18px 44px #0f172a2e, 0 4px 12px #0f172a1a, inset 0 1px 0 color-mix(in srgb, var(--ink) 14%, transparent);transform:translateY(-1px)}.modal-close-button:focus-visible{border-color:var(--accent-line);background:var(--surface-raised);color:var(--ink);box-shadow:0 0 0 4px var(--accent-line), 0 18px 44px #0f172a2e, inset 0 1px 0 color-mix(in srgb, var(--ink) 14%, transparent);outline:0}.modal-close-button:active{transform:scale(.97)}.ui-pill-group{flex-wrap:wrap;align-items:flex-start;gap:7px;min-width:0;display:flex}.ui-pill{--ui-pill-bg:var(--surface-muted);--ui-pill-border:color-mix(in srgb, var(--line) 76%, transparent);--ui-pill-ink:var(--accent-text);border:1px solid var(--ui-pill-border);background:var(--ui-pill-bg);width:fit-content;min-width:0;max-width:100%;min-height:28px;color:var(--ui-pill-ink);text-align:center;vertical-align:middle;white-space:nowrap;box-sizing:border-box;border-radius:999px;flex:0 auto;justify-content:center;align-self:flex-start;align-items:center;gap:6px;padding:4px 10px;font-size:.82rem;font-weight:680;line-height:1;display:inline-flex}.ui-pill--sm{min-height:24px;padding:3px 8px;font-size:.76rem}.ui-pill--xs{min-height:18px;padding:1px 2px;font-size:.68rem;font-weight:500}.ui-pill--neutral{--ui-pill-bg:var(--surface-muted);--ui-pill-border:color-mix(in srgb, var(--line) 76%, transparent);--ui-pill-ink:var(--accent-text)}.ui-pill--accent{--ui-pill-bg:var(--accent-soft);--ui-pill-border:var(--accent-line);--ui-pill-ink:var(--accent-text)}.ui-pill--success{--ui-pill-bg:var(--confirm-soft);--ui-pill-border:var(--confirm-line);--ui-pill-ink:var(--confirm-text)}.ui-pill--warning,.ui-pill--gold{--ui-pill-bg:var(--warning-soft);--ui-pill-border:var(--warning-line);--ui-pill-ink:var(--warning-text)}.ui-pill--danger{--ui-pill-bg:var(--danger-soft);--ui-pill-border:var(--danger-line);--ui-pill-ink:var(--danger-text)}.ui-pill--info{--ui-pill-bg:#4175b11a;--ui-pill-border:#4175b13d;--ui-pill-ink:#315f91}.ui-pill--outline{--ui-pill-bg:var(--surface)}.ui-pill-label{text-overflow:ellipsis;white-space:nowrap;justify-content:center;align-items:center;gap:6px;min-width:0;max-width:100%;line-height:1.16;display:inline-flex;overflow:hidden}.ui-pill--wrap .ui-pill-label{overflow-wrap:anywhere;text-overflow:clip;white-space:normal;overflow:visible}.ui-chip-group{flex-wrap:wrap;align-items:flex-start;gap:7px;min-width:0;display:flex}.ui-chip{--ui-chip-bg:var(--surface-muted);--ui-chip-border:color-mix(in srgb, var(--line) 82%, transparent);--ui-chip-ink:var(--accent-text);--ui-chip-hover-bg:color-mix(in srgb, var(--ui-chip-bg) 70%, var(--surface));--ui-chip-selected-bg:var(--accent-text);--ui-chip-selected-border:var(--accent-text);--ui-chip-selected-ink:#fff;border:1px solid var(--ui-chip-border);background:var(--ui-chip-bg);width:fit-content;min-width:0;max-width:100%;min-height:32px;color:var(--ui-chip-ink);font:inherit;text-align:center;vertical-align:middle;white-space:nowrap;box-sizing:border-box;cursor:pointer;transition:background-color .16s var(--motion-ease-out), border-color .16s var(--motion-ease-out), box-shadow .16s var(--motion-ease-out), color .16s var(--motion-ease-out), transform .16s var(--motion-ease-out);border-radius:999px;flex:0 auto;justify-content:center;align-self:flex-start;align-items:center;gap:7px;padding:5px 11px;font-size:.84rem;font-weight:700;line-height:1;text-decoration:none;display:inline-flex}.ui-chip--sm{min-height:28px;padding:4px 9px;font-size:.78rem}.ui-chip--neutral{--ui-chip-bg:var(--surface-muted);--ui-chip-border:color-mix(in srgb, var(--line) 82%, transparent);--ui-chip-ink:var(--accent-text)}.ui-chip--accent{--ui-chip-bg:var(--accent-soft);--ui-chip-border:var(--accent-line);--ui-chip-ink:var(--accent-text);--ui-chip-selected-bg:var(--accent-text);--ui-chip-selected-border:var(--accent-text)}.ui-chip--success{--ui-chip-bg:var(--confirm-soft);--ui-chip-border:var(--confirm-line);--ui-chip-ink:var(--confirm-text);--ui-chip-selected-bg:var(--confirm-text);--ui-chip-selected-border:var(--confirm-text)}:root[data-theme=dark-minimal] .ui-chip--success{--ui-chip-selected-bg:color-mix(in srgb, var(--confirm) 28%, var(--surface));--ui-chip-selected-border:color-mix(in srgb, var(--confirm) 72%, var(--surface));--ui-chip-selected-ink:#f5f7fa}.ui-chip--warning{--ui-chip-bg:var(--warning-soft);--ui-chip-border:var(--warning-line);--ui-chip-ink:var(--warning-text);--ui-chip-selected-bg:var(--warning-text);--ui-chip-selected-border:var(--warning-text)}.ui-chip--danger{--ui-chip-bg:var(--danger-soft);--ui-chip-border:var(--danger-line);--ui-chip-ink:var(--danger-text);--ui-chip-selected-bg:var(--danger-text);--ui-chip-selected-border:var(--danger-text)}.ui-chip--info{--ui-chip-bg:#4175b11a;--ui-chip-border:#4175b13d;--ui-chip-ink:#315f91;--ui-chip-selected-bg:#315f91;--ui-chip-selected-border:#315f91}.ui-chip--outline{--ui-chip-bg:var(--surface)}.ui-chip:hover{border-color:color-mix(in srgb, var(--ui-chip-ink) 42%, var(--ui-chip-border));background:var(--ui-chip-hover-bg);color:var(--ui-chip-ink);transform:translateY(-1px);box-shadow:0 8px 20px #17212b14}.ui-chip:focus-visible,.ui-chip-remove:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb, var(--ui-chip-ink) 22%, transparent), 0 8px 20px #17212b14;outline:0}.ui-chip:active{transform:scale(.98)}.ui-chip:disabled,.ui-chip[aria-disabled=true]{cursor:not-allowed;opacity:.56;transform:none}.ui-chip--selected,.ui-chip[aria-current=page]{border-color:var(--ui-chip-selected-border);background:var(--ui-chip-selected-bg);color:var(--ui-chip-selected-ink);box-shadow:0 10px 24px color-mix(in srgb, var(--ui-chip-selected-bg) 20%, transparent)}.ui-chip-label{text-overflow:ellipsis;white-space:nowrap;min-width:0;max-width:100%;line-height:1.16;overflow:hidden}.ui-chip--removable{cursor:default;padding-right:4px}.ui-chip-remove{background:color-mix(in srgb, currentColor 12%, transparent);color:currentColor;cursor:pointer;width:22px;height:22px;font:inherit;transition:background-color .16s var(--motion-ease-out), transform .16s var(--motion-ease-out);border:0;border-radius:999px;flex:0 0 22px;place-items:center;padding:0;display:inline-grid}.ui-chip-remove:hover{background:color-mix(in srgb, currentColor 20%, transparent)}.ui-chip-remove:active{transform:scale(.92)}.ui-chip-remove:disabled{cursor:not-allowed;opacity:.5}.ui-chip-remove .ui-icon{font-size:.78rem;line-height:1}.status-badge{--status-badge-bg:var(--surface-muted);--status-badge-border:var(--line);--status-badge-ink:var(--accent-text);--status-badge-dot:currentColor;border:1px solid var(--status-badge-border);background:var(--status-badge-bg);width:fit-content;min-width:0;max-width:100%;min-height:28px;color:var(--status-badge-ink);text-align:center;vertical-align:middle;box-sizing:border-box;border-radius:999px;flex:0 auto;justify-content:center;align-self:flex-start;align-items:center;gap:6px;padding:4px 10px;font-size:.78rem;font-weight:700;line-height:1;display:inline-flex}.status-badge--sm{min-height:24px;padding:3px 8px;font-size:.72rem}.status-badge--xs{gap:4px;min-height:20px;padding:2px 6px;font-size:.66rem}.status-badge--xs .status-badge-dot{flex-basis:5px;width:5px;height:5px}.status-badge--success,.status-badge--active{--status-badge-bg:var(--confirm-soft);--status-badge-border:var(--confirm-line);--status-badge-ink:var(--confirm-text)}.status-badge--warning,.status-badge--pending{--status-badge-bg:var(--warning-soft);--status-badge-border:var(--warning-line);--status-badge-ink:var(--warning-text)}.status-badge--danger{--status-badge-bg:var(--danger-soft);--status-badge-border:var(--danger-line);--status-badge-ink:var(--danger-text)}.status-badge--info{--status-badge-bg:#4175b11a;--status-badge-border:#4175b13d;--status-badge-ink:#315f91}.status-badge--neutral{--status-badge-bg:var(--surface-muted);--status-badge-border:var(--line);--status-badge-ink:var(--accent-text)}.status-badge--on-dark.status-badge--neutral{--status-badge-bg:#f4f7fa1f;--status-badge-border:#f4f7fa57;--status-badge-ink:#f4f7fa}.status-badge--on-dark.status-badge--info{--status-badge-bg:#7ebeff29;--status-badge-border:#aed8ff75;--status-badge-ink:#eaf5ff}.status-badge--on-dark:is(.status-badge--success,.status-badge--active){--status-badge-bg:#53d3a629;--status-badge-border:#97efcf7a;--status-badge-ink:#eafff7}.status-badge--on-dark:is(.status-badge--warning,.status-badge--pending){--status-badge-bg:#ffc15c2b;--status-badge-border:#ffda9e80;--status-badge-ink:#fff4d9}.status-badge--on-dark.status-badge--danger{--status-badge-bg:#ff68762e;--status-badge-border:#ffaeb68a;--status-badge-ink:#fff1f3}.status-badge-dot{background:var(--status-badge-dot);width:7px;height:7px;box-shadow:0 0 0 3px color-mix(in srgb, currentColor 14%, transparent);border-radius:999px;flex:0 0 7px}.status-badge-label{text-overflow:ellipsis;white-space:nowrap;justify-content:center;align-items:center;gap:6px;min-width:0;max-width:100%;line-height:1.16;display:inline-flex;overflow:hidden}.status-badge--wrap .status-badge-label{white-space:normal;overflow-wrap:anywhere;text-align:left;line-height:1.35;display:block;overflow:visible}.notification-badge{border:2px solid var(--surface);color:#fff;background:#d92d3f;border-radius:999px;flex:none;justify-content:center;align-self:center;align-items:center;width:fit-content;min-width:19px;max-width:100%;height:19px;padding:0 4px;font-size:.66rem;font-weight:750;line-height:1;display:inline-flex;box-shadow:0 5px 12px #97192c3d}:is([role=tablist],[role=radiogroup]).app-tabs.app-tabs{border:1px solid var(--line);background:color-mix(in srgb, var(--neutral-cool) 38%, var(--surface));width:fit-content;max-width:100%;box-shadow:none;isolation:isolate;scrollbar-width:none;border-radius:999px;justify-content:flex-start;align-items:center;gap:3px;padding:3px;display:inline-flex;position:relative;overflow:auto hidden}:is([role=tablist],[role=radiogroup]).app-tabs.app-tabs::-webkit-scrollbar{display:none}:is([role=tablist],[role=radiogroup]).app-tabs.app-tabs>button{z-index:1;min-height:34px;color:var(--muted);font:inherit;font-size:var(--font-label);font-weight:var(--weight-label);white-space:nowrap;cursor:pointer;transition:background .16s ease, border-color .16s ease, box-shadow .16s ease, color .16s ease, transform .14s var(--motion-ease-out);background:0 0;border:1px solid #0000;border-radius:999px;flex:none;justify-content:center;align-items:center;gap:8px;padding:0 13px;line-height:1;display:inline-flex;position:relative}:is([role=tablist],[role=radiogroup]).app-tabs.app-tabs>button:hover,:is([role=tablist],[role=radiogroup]).app-tabs.app-tabs>button:focus-visible{border-color:color-mix(in srgb, var(--line) 72%, transparent);background:color-mix(in srgb, var(--surface) 58%, transparent);color:var(--text-title)}:is([role=tablist],[role=radiogroup]).app-tabs.app-tabs>button:focus-visible{outline:2px solid color-mix(in srgb, var(--accent) 38%, transparent);outline-offset:2px}:is([role=tablist],[role=radiogroup]).app-tabs.app-tabs>button:active{transform:scale(.98)}:is([role=tablist],[role=radiogroup]).app-tabs.app-tabs>button.active,:is([role=tablist],[role=radiogroup]).app-tabs.app-tabs>button.is-active{background:var(--surface);color:var(--text-title);border-color:#0000;box-shadow:0 4px 10px #1b24300f}:is([role=tablist],[role=radiogroup]).app-tabs.app-tabs.has-tab-indicator>button.active,:is([role=tablist],[role=radiogroup]).app-tabs.app-tabs.has-tab-indicator>button.is-active{box-shadow:none;background:0 0;border-color:#0000}:is([role=tablist],[role=radiogroup]).app-tabs.app-tabs--compact>button{min-height:28px;font-size:var(--font-ui-small);padding-inline:10px}:is([role=tablist],[role=radiogroup]).app-tabs.app-tabs--equal{width:100%;display:flex}:is([role=tablist],[role=radiogroup]).app-tabs.app-tabs--equal>button{flex:1 1 0;min-width:0}@media (width<=760px){:is([role=tablist],[role=radiogroup]).app-tabs.app-tabs.has-tab-indicator:before{display:none}:is([role=tablist],[role=radiogroup]).app-tabs.app-tabs.has-tab-indicator>button.active,:is([role=tablist],[role=radiogroup]).app-tabs.app-tabs.has-tab-indicator>button.is-active{border-color:var(--line-strong);background:var(--surface);color:var(--text-title);box-shadow:0 4px 10px #1b243014}}.has-tab-indicator{box-sizing:border-box;isolation:isolate;--tab-indicator-x:0px;--tab-indicator-y:3px;--tab-indicator-width:0px;--tab-indicator-height:calc(100% - 6px);--tab-indicator-opacity:0;position:relative}.has-tab-indicator:before{top:var(--tab-indicator-y);z-index:0;box-sizing:border-box;width:var(--tab-indicator-width);height:var(--tab-indicator-height);border:1px solid var(--line);background:var(--surface);content:"";opacity:var(--tab-indicator-opacity);pointer-events:none;transform:translate3d(var(--tab-indicator-x), 0, 0);border-radius:999px;transition:transform .22s cubic-bezier(.22,1,.36,1),width .22s cubic-bezier(.22,1,.36,1),height .18s,top .18s,opacity .12s;position:absolute;left:0;box-shadow:0 4px 10px #1b24300f}.has-tab-indicator.tab-indicator-initializing:before,.has-tab-indicator.is-keyboard-switching:before{transition:none}.has-tab-indicator>*{z-index:1;position:relative}.has-tab-indicator>.tab.active,.has-tab-indicator>button.active,.has-tab-indicator>button.is-active{box-shadow:none;background:0 0;border-color:#0000}.icon-nav-button{border-color:var(--line);background:var(--surface);width:42px;color:var(--ink);place-items:center;font-size:1.35rem;line-height:1;display:inline-grid}.primary-button:disabled,.secondary-button:disabled,.icon-nav-button:disabled,.icon-button:disabled{cursor:not-allowed;opacity:.64;transform:none}.form-success{border:1px solid var(--confirm-line);background:var(--confirm-soft);color:var(--confirm-text);border-radius:8px;margin:0;padding:10px 12px;font-weight:500}.patient-message-button.secondary-button{color:#fff;background:#24799a;border-color:#24799a;border-radius:10px;flex:none;justify-content:center;align-items:center;width:32px;min-width:32px;min-height:32px;padding:0;display:inline-flex;box-shadow:0 5px 12px #24799a33}.patient-message-button.secondary-button:hover,.patient-message-button.secondary-button:focus-visible{color:#fff;background:#1c5f7a;border-color:#1c5f7a;box-shadow:0 7px 16px #24799a42}body.mobile-more-open{overflow:hidden}.route-error-state{text-align:center;min-height:100svh;color:var(--text-primary,#172033);background:var(--surface-page,#f8fafc);flex-direction:column;justify-content:center;align-items:center;gap:14px;padding:32px;display:flex}.route-error-state span{letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted,#64748b);font-size:.78rem;font-weight:700}.route-error-state h1{max-width:520px;margin:0;font-size:clamp(1.15rem,2vw,1.55rem);line-height:1.25}.route-loading-public{min-width:0;min-height:100svh}.route-loading-static-block{background:linear-gradient(105deg,#edf0f2 0%,#f7f8f9 52%,#edf0f2 100%);border:1px solid #1118270f;border-radius:7px;width:100%;height:16px;display:block}.route-loading-static-block.is-medium{width:72%}.route-loading-static-block.is-short{width:44%}.route-loading-public-label{width:92px;height:11px}.route-loading-public-title{width:min(310px,78%);height:24px}.route-loading-public-copy{width:min(210px,62%);height:15px}.route-loading-public-control{height:48px}.route-loading-public-button{border-radius:8px;height:44px}.route-loading-public-avatar{border-radius:8px;width:68px;height:68px}.route-loading-public-booking{--route-booking-panel-height:clamp(560px, calc(100vh - 150px), 760px);background:#fbfcfd;padding:28px}.route-loading-public-booking-hero,.route-loading-public-booking-progress,.route-loading-public-booking-layout{width:min(100%,1180px);margin-inline:auto}.route-loading-public-booking-hero{min-height:48px;margin-bottom:20px;padding:6px 0 2px}.route-loading-public-booking-progress{min-height:27px;margin-bottom:16px}.route-loading-public-booking-layout{min-height:var(--route-booking-panel-height);background:#fff;border:1px solid #1118271a;border-radius:12px;place-items:center;display:grid;box-shadow:0 18px 48px #1b24300f}.route-loading-public-booking-status{color:var(--text-muted,#64748b);background:#fbfcfd;border:1px solid #1118271a;border-radius:999px;align-items:center;gap:10px;padding:10px 14px;font-size:.88rem;font-weight:700;display:inline-flex}.route-loading-public-booking-status-dot{background:#6ebc91;border-radius:999px;width:8px;height:8px;box-shadow:0 0 0 4px #b7e6cc6b}.route-loading-public-directory{background:linear-gradient(#f5f7f6 0%,#fafafa 38%,#fff 100%);min-height:100svh}.route-loading-public-directory-hero{background:radial-gradient(86% 130% at 5% 0,#fff0cb75 0%,#fff0cb00 62%),radial-gradient(78% 118% at 100% 100%,#b9e2e966 0%,#b9e2e900 66%),linear-gradient(128deg,#d9a65a 0%,#dc826b 46%,#6c91ad 76%,#3c879f 100%);border-radius:0 0 clamp(28px,5vw,72px) clamp(28px,5vw,72px);width:100%;box-shadow:0 30px 70px #3a667033}.route-loading-public-directory-hero-inner{grid-template-columns:minmax(0,.9fr) minmax(360px,1.1fr);align-items:end;gap:28px;width:min(1180px,100% - 32px);min-height:304px;margin:0 auto;padding:44px 0 46px;display:grid}.route-loading-public-directory-copy{gap:14px;display:grid}.route-loading-public-brand{background:#ffffffb8;width:116px;height:34px}.route-loading-public-directory-title{color:#ffffffb8;max-width:720px;font-size:clamp(2.2rem,5vw,4.6rem);font-weight:var(--weight-panel-title);line-height:.98;display:block}.route-loading-public-directory-search{background:#fffffff5;border:1px solid #ffffff4d;border-radius:8px;grid-template-columns:minmax(0,1.1fr) minmax(170px,.8fr) minmax(150px,.55fr);gap:12px;padding:16px;display:grid;box-shadow:0 22px 56px #1115143d}.route-loading-public-directory-search>span:nth-child(-n+3){height:68px}.route-loading-public-directory-search>.is-wide{grid-column:1/-1;height:44px}.route-loading-public-directory-toolbar{border-block:1px solid #1115141a;justify-content:space-between;align-items:center;gap:18px;width:min(1180px,100% - 32px);min-height:76px;margin:30px auto 18px;padding:14px 0;display:flex}.route-loading-public-directory-toolbar>span:first-child{width:230px;height:34px}.route-loading-public-directory-toolbar>span:last-child{width:180px;height:46px}.route-loading-public-directory-layout{grid-template-columns:250px minmax(0,1fr);gap:20px;width:min(1180px,100% - 32px);margin:0 auto;padding-bottom:56px;display:grid}.route-loading-public-directory-layout>aside{align-content:start;gap:14px;display:grid}.route-loading-public-directory-layout>aside>span{background:#ffffffb8;height:38px}.route-loading-public-directory-results{align-content:start;gap:14px;display:grid}.route-loading-public-directory-results>article{background:#fff;border:1px solid #1115141a;border-radius:8px;grid-template-columns:minmax(0,1fr) 250px;gap:18px;min-height:220px;padding:18px;display:grid;box-shadow:0 14px 34px #11151414}.route-loading-public-directory-practitioner{grid-template-columns:68px minmax(0,1fr);gap:14px;min-width:0;display:grid}.route-loading-public-directory-practitioner>div,.route-loading-public-directory-results article>aside{align-content:start;gap:10px;min-width:0;display:grid}.route-loading-public-directory-results article>aside{border-left:1px solid #1115141a;padding-left:18px}.route-loading-public-service{background:0 0;border-top:1px solid #1115141a;border-radius:0;height:34px}.route-loading-state{background:var(--app-bg);width:100%;min-width:0;min-height:100svh;padding:24px 28px 36px}.main-content>.route-loading-state{background:0 0;min-height:calc(100svh - 60px);padding:0}.route-loading-template{gap:18px;width:min(100%,1500px);margin:0 auto;display:grid}.route-loading-template-toolbar{justify-content:space-between;align-items:center;gap:20px;min-height:44px;display:flex}.route-loading-template-title,.route-loading-template-control,.route-loading-template-metrics i,.route-loading-template-primary,.route-loading-template-secondary,.route-loading-template-primary>span,.route-loading-template-agenda i{border:1px solid color-mix(in srgb, var(--line) 72%, transparent);background:linear-gradient(145deg, var(--surface) 0%, var(--surface-muted) 100%);box-shadow:var(--shadow-subtle);animation:1.2s ease-in-out infinite alternate route-loading-breathe;display:block;overflow:hidden}.route-loading-template-title{border-radius:8px;width:min(240px,48vw);height:26px}.route-loading-template-control{border-radius:var(--control-radius);width:132px;height:40px}.route-loading-template-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.route-loading-template-metrics i{border-radius:var(--panel-radius);min-height:112px}.route-loading-template-content{grid-template-columns:minmax(0,1fr) minmax(240px,.32fr);gap:18px;min-width:0;display:grid}.route-loading-template-primary,.route-loading-template-secondary{border-radius:var(--panel-radius);min-width:0;min-height:min(620px,100svh - 142px)}.route-loading-state--dashboard .route-loading-template-primary,.route-loading-state--dashboard .route-loading-template-secondary{min-height:min(430px,100svh - 280px)}.route-loading-template-primary{align-content:start;gap:14px;padding:22px;display:grid}.route-loading-template-primary>span{border-radius:var(--control-radius);width:100%;height:58px;box-shadow:none}.route-loading-template-primary>span:nth-child(2){width:82%}.route-loading-template-primary>span:nth-child(3){width:92%}.route-loading-template-primary>span:nth-child(4){width:68%}.route-loading-state--agenda .route-loading-template-content{grid-template-columns:minmax(0,1fr)}.route-loading-state--agenda .route-loading-template-primary{min-height:max(420px,100svh - 128px);padding:0}.route-loading-template-agenda{grid-template-columns:42px repeat(5,minmax(0,1fr));gap:6px;height:100%;padding:0 10px 10px 0;display:grid}.route-loading-template-agenda:before{content:"";min-width:0}.route-loading-template-agenda i{border-radius:0 0 var(--panel-radius) var(--panel-radius);min-width:0;box-shadow:none}@keyframes route-loading-breathe{0%{opacity:.62}to{opacity:1}}.route-error-state p{max-width:460px;color:var(--text-muted,#64748b);margin:0}.route-error-state button{color:#fff;background:var(--accent,#2563eb);cursor:pointer;border:0;border-radius:8px;padding:10px 16px;font-weight:700}.route-loading-mark{background:#fff;border-radius:14px;place-items:center;width:48px;height:48px;display:grid;box-shadow:0 16px 40px #0f172a1f}.route-loading-mark img{width:30px;height:30px;animation:1s linear infinite route-loading-spin}.route-error-state .route-loading-mark img{animation:none}@keyframes route-loading-spin{to{transform:rotate(360deg)}}@media (width<=980px){.route-loading-public-directory-hero-inner,.route-loading-public-directory-layout,.route-loading-public-directory-results>article{grid-template-columns:minmax(0,1fr)}.route-loading-public-directory-layout>aside{grid-template-columns:repeat(3,minmax(0,1fr))}.route-loading-public-directory-results article>aside{border-top:1px solid #1115141a;border-left:0;padding-top:14px;padding-left:0}}@media (width<=680px){.route-loading-public-directory-hero{border-radius:0 0 clamp(24px,10vw,42px) clamp(24px,10vw,42px)}.route-loading-public-directory-hero-inner{gap:16px;width:min(100% - 24px,1180px);min-height:0;padding:20px 0 22px}.route-loading-public-directory-title{font-size:2.05rem}.route-loading-public-directory-search{grid-template-columns:minmax(0,1.2fr) minmax(118px,.8fr)}.route-loading-public-directory-search>span:nth-child(3){grid-column:1/-1}.route-loading-public-directory-search>.is-wide{grid-column:auto}.route-loading-public-directory-toolbar{grid-template-columns:minmax(0,1fr) minmax(150px,.7fr);gap:12px;width:min(100% - 24px,1180px);min-height:68px;margin:18px auto 12px;padding:10px 0;display:grid}.route-loading-public-directory-toolbar>span:first-child,.route-loading-public-directory-toolbar>span:last-child{width:100%}.route-loading-public-directory-layout{width:min(100% - 24px,1180px)}.route-loading-public-directory-layout>aside{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.route-loading-public-directory-practitioner{grid-template-columns:minmax(0,1fr)}}@media (width<=760px){.route-loading-public-booking{padding:18px 18px 132px}.route-loading-public-booking-hero{min-height:42px;margin-bottom:18px}.route-loading-public-booking-progress{display:none}.route-loading-public-booking-layout{min-height:420px;box-shadow:none}.route-loading-state{min-height:calc(100svh - var(--mobile-nav-occupied-height));padding:18px 18px var(--mobile-nav-occupied-height)}.main-content>.route-loading-state{min-height:calc(100svh - var(--mobile-nav-occupied-height));padding:18px 0 0}.route-loading-template{gap:14px}.route-loading-template-toolbar{min-height:40px}.route-loading-template-control{width:96px;height:36px}.route-loading-template-metrics{grid-template-columns:1fr}.route-loading-template-metrics i:not(:first-child),.route-loading-template-secondary{display:none}.route-loading-template-content{grid-template-columns:minmax(0,1fr)}.route-loading-template-primary{min-height:calc(100svh - 152px - var(--mobile-nav-occupied-height));padding:14px}.route-loading-template-agenda{grid-template-columns:minmax(0,1fr);padding:0 4px 8px}.route-loading-template-agenda:before,.route-loading-template-agenda i:not(:first-of-type){display:none}}@media (prefers-reduced-motion:reduce){.route-loading-template-title,.route-loading-template-control,.route-loading-template-metrics i,.route-loading-template-primary,.route-loading-template-secondary,.route-loading-template-primary>span,.route-loading-template-agenda i{animation:none}}@keyframes app-message-alert-in{0%{opacity:0;transform:translateY(10px)scale(.98)}to{opacity:1;transform:translate(0,0)scale(1)}}.app-message-alert{z-index:1200;width:min(360px,100vw - 24px);color:var(--text);background:var(--surface);border:1px solid var(--line);border-radius:var(--control-radius);box-shadow:var(--shadow-dashboard-block);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:12px 14px;text-decoration:none;animation:.18s ease-out both app-message-alert-in;display:grid;position:fixed;bottom:18px;right:18px}.app-message-alert span{min-width:0;display:grid}.app-message-alert strong{font-size:.92rem}.app-message-alert small{color:var(--muted)}.app-message-alert:hover{border-color:var(--primary);transform:translateY(-1px)}@media (width<=720px){.app-message-alert{right:12px;bottom:calc(84px + env(safe-area-inset-bottom))}}@media (prefers-reduced-motion:reduce){.app-message-alert{animation:none}}.ui-action-menu{box-sizing:border-box;overscroll-behavior:contain;border:1px solid var(--line);border-radius:var(--control-radius);background:var(--surface);width:min(256px,100vw - 24px);color:var(--text);box-shadow:var(--shadow-page-block);margin:0;padding:6px;position:fixed;inset:auto;overflow:auto}.ui-action-menu:popover-open{gap:2px;display:grid}.ui-action-menu>button{border-radius:var(--control-radius);width:100%;min-width:0;min-height:40px;color:inherit;font:inherit;text-align:left;overflow-wrap:anywhere;cursor:pointer;background:0 0;border:0;padding:10px 12px;font-size:.875rem}.ui-action-menu>button:hover,.ui-action-menu>button:focus-visible{background:var(--surface-muted);outline:2px solid #0000}.ui-action-menu>button.is-danger{color:var(--danger-text,#991b1b)}.ui-action-menu>button:disabled{opacity:.5;cursor:not-allowed}.ui-action-menu-chevron{width:12px;height:12px;transform:rotate(90deg)}.ui-action-menu-heading{color:var(--muted);justify-content:space-between;align-items:center;gap:12px;padding:4px 6px 8px 12px;font-size:.75rem;display:flex;position:relative}.ui-action-menu-add{flex:none;width:32px;height:32px;min-height:32px}.ui-action-menu-tooltip{z-index:1;border:1px solid var(--line);border-radius:var(--control-radius);background:var(--surface);max-width:calc(100vw - 48px);color:var(--text);box-shadow:var(--shadow-subtle);pointer-events:none;visibility:hidden;opacity:0;padding:8px 10px;transition:opacity .12s ease-out;position:absolute;top:100%;right:0}.ui-action-menu-add:hover+.ui-action-menu-tooltip,.ui-action-menu-add:focus-visible+.ui-action-menu-tooltip{visibility:visible;opacity:1}.ui-action-menu-add:focus-visible+.ui-action-menu-tooltip{transition:none}.ui-action-menu>button{justify-content:space-between;align-items:center;gap:12px;display:flex}.ui-action-menu-item-content{gap:4px;min-width:0;display:grid}.ui-action-menu-description{color:var(--muted);font-size:.75rem;line-height:1.5}.ui-action-menu-check{width:16px;height:16px;color:var(--accent);flex:none}@media (prefers-reduced-motion:reduce){.ui-action-menu-tooltip{transition:none}}.ui-action-menu-leading{flex:none;display:inline-flex}.ui-action-menu-item-content{flex:1}.patient-access-invitation-details{margin-top:12px;font-size:.875rem}.patient-access-invitation-details summary{cursor:pointer}.patient-access-invitation-details p{margin:8px 0 0}.app-tabs[data-overflow-edges=end]{-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 14px),#0000);mask-image:linear-gradient(90deg,#000 calc(100% - 14px),#0000)}.app-tabs[data-overflow-edges=start]{-webkit-mask-image:linear-gradient(270deg,#000 calc(100% - 14px),#0000);mask-image:linear-gradient(270deg,#000 calc(100% - 14px),#0000)}.app-tabs[data-overflow-edges=both]{-webkit-mask-image:linear-gradient(90deg,#0000,#000 14px calc(100% - 14px),#0000);mask-image:linear-gradient(90deg,#0000,#000 14px calc(100% - 14px),#0000)}
