@font-face{font-family:Syllabus;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/Syllabus-Regular-CRCn7jiF.woff2) format("woff2")}@font-face{font-family:Dentio Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/DentioSans-Regular-BG2gZM7t.otf) format("opentype")}@font-face{font-family:Dentio Sans;font-style:normal;font-weight:600;font-display:swap;src:url(/assets/DentioSans-SemiBold-Dv6xCVwz.otf) format("opentype")}:root{color:var(--portal-text);background:var(--portal-canvas);font-family:Dentio Sans,Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;line-height:1.45;text-rendering:optimizeLegibility;--portal-background: #f6f3ed;--portal-card: #fffdfa;--portal-muted: #f0ece6;--portal-ink: #05023c;--portal-text: #151213;--portal-subtle: #667188;--portal-border: #e4ded6;--portal-primary: #7155ad;--portal-primary-strong: #5b3e99;--portal-info: #1683a5;--portal-warning: #9d6617;--portal-danger: #c83d33;--portal-success: #2d8159;--portal-shadow: 0 18px 42px rgb(21 18 19 / 8%);--portal-white: #fff;--portal-canvas: #fbf7ef;--portal-warm-border: #e6dfd4;--portal-warm-muted: #eee8df;--portal-cool-border: #e4e6ee;--portal-copy-muted: #64728a;--portal-copy-warm: #6f6860;--portal-copy-warm-strong: #5c5751;--portal-copy-cool: #5f6c82;--portal-copy-cool-strong: #625d58;--portal-primary-link: #5b3e99;--portal-primary-medium: #6b4fa7;--portal-primary-light: #7d66b8;--portal-primary-vivid: #7131c9;--portal-primary-surface: #f7f4fb;--portal-primary-surface-strong: #f1edf9;--portal-primary-border: #e2dde9;--portal-neutral-surface: #efedf4;--portal-cool-surface: #f4f4f8;--portal-info-surface: #e6f5fb;--portal-warning-surface: #fff8e8;--portal-warning-border: #e8c989;--portal-warning-strong: #7b5014;--portal-danger-surface: #fff1ee;--portal-danger-border: #f1c5bf;--portal-danger-strong: #8a2923;--portal-danger-ink: #6f231d;--portal-success-surface: #edf9f2;--portal-success-strong: #226746;--portal-high-contrast-subtle: #3e4657;--portal-high-contrast-border: #8e8b91;--portal-high-contrast-primary: #7155ad;--portal-high-contrast-primary-strong: #5b3e99}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0;background:var(--portal-canvas);overflow-x:hidden}#root{min-width:320px;min-height:100vh;background:var(--portal-canvas)}button{font:inherit}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.login-page{display:grid;width:100%;min-height:100dvh;padding:28px;background:var(--portal-neutral-surface);grid-template-rows:1fr auto;justify-items:center}.login-page__center{display:grid;width:100%;padding:20px 0;place-items:center}.login-page--loading{background:var(--portal-neutral-surface)}.portal-loading-status{display:grid;width:min(100%,300px);justify-self:center;align-self:center;gap:12px;color:var(--portal-copy-warm-strong);justify-items:center;text-align:center}.portal-loading-status__mascot{display:block;width:112px;height:96px;object-fit:contain;animation:portal-loading-mascot 2.4s ease-in-out infinite;transform-origin:center bottom}.portal-loading-status p{margin:0;font-size:.9375rem;line-height:1.4}.portal-loading-status--overlay{position:fixed;z-index:40;inset:0;width:auto;min-height:100dvh;padding:28px;cursor:wait;background:color-mix(in srgb,var(--portal-neutral-surface) 74%,transparent);-webkit-backdrop-filter:blur(14px) saturate(85%);backdrop-filter:blur(14px) saturate(85%);align-content:center}.portal-loading-status__dots{display:inline-flex;min-width:1.75em;text-align:left}.portal-loading-status__dots span{opacity:0}.portal-loading-status__dots span:nth-child(1){animation:portal-loading-dot-one 1.4s ease-in-out infinite}.portal-loading-status__dots span:nth-child(2){animation:portal-loading-dot-two 1.4s ease-in-out infinite}.portal-loading-status__dots span:nth-child(3){animation:portal-loading-dot-three 1.4s ease-in-out infinite}.portal-loading-status__dots span:nth-child(4){animation:portal-loading-dot-four 1.4s ease-in-out infinite}@keyframes portal-loading-mascot{0%,to{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(-5px) rotate(1deg)}}@keyframes portal-loading-dot-one{0%,15%{opacity:0}20%,90%{opacity:1}to{opacity:0}}@keyframes portal-loading-dot-two{0%,30%{opacity:0}35%,90%{opacity:1}to{opacity:0}}@keyframes portal-loading-dot-three{0%,45%{opacity:0}50%,90%{opacity:1}to{opacity:0}}@keyframes portal-loading-dot-four{0%,60%{opacity:0}65%,90%{opacity:1}to{opacity:0}}@media(prefers-reduced-motion:reduce){.portal-loading-status__mascot{animation:none}.portal-loading-status__dots span:nth-child(n){animation:none}.portal-loading-status__dots span:not(:first-child){display:none}.portal-loading-status__dots span:first-child{opacity:1}}.login-card{display:flex;width:min(100%,392px);min-height:min(636px,calc(100dvh - 126px));padding:50px 26px 34px;border:1px solid var(--portal-cool-border);border-radius:8px;color:var(--portal-ink);background:var(--portal-white);box-shadow:0 20px 58px color-mix(in srgb,var(--portal-ink) 9%,transparent);flex-direction:column}.portal-brand{display:inline-flex;align-items:center;width:fit-content}.portal-brand__wordmark{display:block;width:auto;height:30px}.portal-brand--compact .portal-brand__wordmark{height:24px}.login-card .portal-brand__wordmark{height:30px}.login-heading{margin:22px 0 24px}.login-heading h1{max-width:11.5ch;margin:0 0 10px;color:var(--portal-ink);font-family:Syllabus,Georgia,Times New Roman,serif;font-size:clamp(2rem,8.4vw,2.4375rem);font-weight:400;line-height:.98;letter-spacing:-.01em}.login-heading p{max-width:36ch;margin:0;color:var(--portal-copy-muted);font-size:.875rem;line-height:1.45}.login-methods{display:grid;margin-top:2px;gap:10px}.login-option{display:flex;width:100%;min-height:40px;padding:0 16px;border:1px solid var(--portal-cool-border);border-radius:8px;color:var(--portal-ink);background:var(--portal-white);align-items:center;justify-content:center;cursor:pointer;font-size:.875rem;font-weight:600;line-height:1.2;text-align:center;transition:background .16s ease,border-color .16s ease,box-shadow .16s ease,transform .16s ease}.login-option:hover{border-color:var(--portal-cool-border);background:var(--portal-white);box-shadow:0 8px 24px color-mix(in srgb,var(--portal-ink) 8%,transparent);transform:translateY(-1px)}.login-option:focus-visible{outline:3px solid color-mix(in srgb,var(--portal-primary) 45%,transparent);outline-offset:3px}.login-option--primary{border-color:var(--portal-primary);color:var(--portal-white);background:var(--portal-primary);box-shadow:0 10px 22px color-mix(in srgb,var(--portal-primary) 22%,transparent)}.login-option--primary:hover{border-color:var(--portal-primary-link);background:var(--portal-primary-link);box-shadow:0 12px 28px color-mix(in srgb,var(--portal-primary) 28%,transparent)}.login-option--secondary{color:var(--portal-ink);background:var(--portal-white)}.bankid-panel,.bankid-status,.login-success{display:flex;align-items:center}.bankid-panel{padding:16px;border:1px solid var(--portal-cool-border);border-radius:8px;background:var(--portal-white);flex-direction:column;gap:13px}.bankid-qr{position:relative;display:grid;width:216px;height:216px;border:1px solid var(--portal-cool-border);border-radius:8px;background:var(--portal-white);place-items:center}.bankid-qr-overlay{position:absolute;inset:0;display:grid;border-radius:8px;color:var(--portal-success);background:color-mix(in srgb,var(--portal-white) 82%,transparent);place-items:center}.bankid-message{max-width:28ch;margin:0;color:var(--portal-copy-muted);font-size:.875rem;line-height:1.45;text-align:center}.bankid-open-link,.login-secondary-button{min-height:40px;border-radius:8px;font-size:.875rem;font-weight:600}.bankid-open-link{display:inline-flex;padding:0 16px;border:1px solid var(--portal-primary);color:var(--portal-white);background:var(--portal-primary);align-items:center;justify-content:center;text-decoration:none}.bankid-open-link:hover{background:var(--portal-primary-link);text-decoration:none}.login-secondary-button{display:inline-flex;padding:0 12px;border:1px solid transparent;color:var(--portal-copy-muted);background:transparent;align-items:center;justify-content:center;gap:7px;cursor:pointer}.login-secondary-button:hover{color:var(--portal-ink);background:var(--portal-primary-surface-strong)}.login-secondary-button:focus-visible,.bankid-open-link:focus-visible{outline:3px solid color-mix(in srgb,var(--portal-primary) 45%,transparent);outline-offset:3px}.bankid-status{min-height:48px;padding:14px 16px;border-radius:8px;color:var(--portal-copy-muted);background:var(--portal-cool-surface);gap:10px;font-size:.875rem}.bankid-status p{margin:0}.bankid-status--error{color:var(--portal-danger-ink);background:var(--portal-danger-surface);flex-direction:column;align-items:flex-start}.bankid-spinner{color:var(--portal-primary);animation:bankid-spin .8s linear infinite}.login-success{min-height:52px;padding:14px 16px;border-radius:8px;color:var(--portal-ink);background:var(--portal-cool-surface);gap:10px;font-size:.875rem;font-weight:600}.login-success .dentio-icon{color:var(--portal-success);flex:none}.login-success .login-secondary-button{margin-left:auto}.login-notice{margin:18px 0 0;color:var(--portal-copy-muted);font-size:.875rem}.login-help-link{width:fit-content;margin:4px auto 0;color:var(--portal-primary);font-size:.8125rem;font-weight:600;text-align:center;text-decoration:none}.login-help-link:hover{color:var(--portal-primary-strong)}.login-help-link:focus-visible{border-radius:6px;outline:3px solid color-mix(in srgb,var(--portal-primary) 45%,transparent);outline-offset:3px}.login-secure-note{display:inline-flex;margin:10px auto 0;color:var(--portal-copy-cool);align-items:center;justify-content:center;font-size:.6875rem;line-height:1.35;text-align:center}@media(max-width:520px){.login-page{min-height:100svh;padding:max(14px,env(safe-area-inset-top)) 14px max(12px,env(safe-area-inset-bottom));background:radial-gradient(circle at 50% -8%,color-mix(in srgb,var(--portal-primary) 22%,transparent),transparent 34rem),var(--portal-primary-surface);grid-template-rows:1fr auto;align-content:stretch;place-items:stretch center;gap:10px}.login-page--loading{background:var(--portal-neutral-surface)}.login-page__center{min-width:0;padding:clamp(12px,4.5vh,42px) 0 8px;place-items:center}.login-card{width:min(100%,420px);min-height:auto;padding:32px 24px 26px;border:1px solid color-mix(in srgb,var(--portal-primary) 18%,transparent);border-radius:24px;box-shadow:0 24px 60px color-mix(in srgb,var(--portal-ink) 11%,transparent),0 2px 8px color-mix(in srgb,var(--portal-ink) 5%,transparent);justify-self:center}.login-card .portal-brand__wordmark{height:30px}.login-heading{margin:24px 0 28px}.login-heading h1{max-width:15ch;margin-bottom:12px;font-size:clamp(2.125rem,9.4vw,2.375rem);line-height:.98}.login-heading p{max-width:35ch;color:var(--portal-copy-cool);font-size:.9375rem;line-height:1.45}.login-methods{margin-top:0;gap:12px}.login-option{min-height:52px;border-radius:12px;font-size:.9375rem}.login-option--primary{box-shadow:0 12px 24px color-mix(in srgb,var(--portal-primary) 28%,transparent)}.login-option--secondary{border-color:var(--portal-cool-border)}.login-help-link{margin-top:4px;font-size:.875rem}.login-secure-note{margin-top:10px;font-size:.75rem}.bankid-panel{padding:16px 12px;border-radius:14px}.bankid-qr{width:210px;height:210px;border-radius:12px}.login-success{border-radius:14px;align-items:flex-start;flex-direction:column}.login-success .login-secondary-button{margin-left:0}}@media(max-width:520px)and (max-height:700px){.login-page__center{padding-top:4px}.login-card{padding:24px 24px 20px}.login-heading{margin:18px 0 20px}.login-heading h1{margin-bottom:8px;font-size:2rem}.login-methods{gap:9px}.login-option{min-height:48px}.login-help-link,.login-secure-note{margin-top:2px}.login-page .portal-footer--login{padding-block:4px}}@media(max-width:360px){.login-page{padding-inline:10px}.login-card{padding-inline:20px;border-radius:20px}.login-option{padding-inline:12px}}@media(min-width:900px){.login-page{padding:0;background:linear-gradient(135deg,color-mix(in srgb,var(--portal-primary) 10%,transparent),var(--portal-background) 55%);grid-template-rows:1fr}.login-page__center{padding:0;place-items:stretch}.login-card{display:grid;width:100%;min-height:100dvh;padding:clamp(64px,6.8vw,96px);border:0;border-radius:0;background:transparent;box-shadow:none;grid-template-columns:minmax(380px,1fr) minmax(360px,500px);grid-template-rows:auto auto;align-content:center;align-items:center;column-gap:clamp(64px,8vw,150px);row-gap:32px}.login-card .portal-brand{align-self:end}.login-card .portal-brand__wordmark{height:clamp(28px,2.1vw,36px)}.login-heading{align-self:start;margin:0}.login-heading h1{max-width:14.5ch;margin-bottom:22px;font-size:clamp(2.875rem,4.05vw,4rem);line-height:.98}.login-heading p{max-width:27ch;font-size:clamp(1.125rem,1.55vw,1.375rem);line-height:1.45}.login-methods,.login-success{grid-column:2;grid-row:1 / span 2;align-self:center;justify-self:stretch;margin:0;padding:clamp(28px,2.5vw,34px);border:1px solid var(--portal-cool-border);border-radius:24px;background:var(--portal-white);box-shadow:0 18px 42px color-mix(in srgb,var(--portal-ink) 12%,transparent)}.login-methods{gap:18px}.login-option{min-height:64px;border-radius:8px;font-size:1.25rem;font-weight:400}.login-help-link{margin-top:8px;font-size:1.125rem}.login-secure-note{margin-top:14px;font-size:1rem}.bankid-panel,.bankid-status{min-height:64px;padding:18px;border:0;background:transparent;box-shadow:none}.bankid-panel{gap:18px}.bankid-message,.bankid-status{font-size:1rem}.bankid-open-link,.login-secondary-button{min-height:48px;font-size:1rem}}@media(min-width:521px)and (max-width:899px){.login-page{grid-template-rows:auto auto;align-content:start}.login-page__center{padding:0;place-items:start center}.login-card{width:min(100%,664px);min-height:auto;padding:46px 44px 24px}.login-heading{margin:20px 0 22px}.login-heading h1{max-width:17ch;margin-bottom:12px;font-size:clamp(2.4375rem,6.2vw,3rem);line-height:1}.login-heading p{max-width:36ch;font-size:1rem;line-height:1.42}.login-methods{gap:10px}.login-option{min-height:50px;font-size:1rem}.login-help-link{margin-top:4px;font-size:.9375rem}.login-secure-note{margin-top:9px;font-size:.8125rem}.login-page .portal-footer--login{width:min(100%,664px);padding-top:0}}.portal-app{display:flex;min-height:100vh;color:var(--portal-text);background:var(--portal-canvas);flex-direction:column}.portal-brand-link{color:inherit;text-decoration:none}.portal-account{position:relative;display:flex;align-items:center;color:var(--portal-copy-warm-strong);font-size:.875rem;font-weight:600}.portal-account-trigger{display:inline-flex;min-height:40px;max-width:min(48vw,280px);padding:0 10px 0 13px;border:1px solid transparent;border-radius:8px;color:var(--portal-text);background:transparent;align-items:center;justify-content:center;gap:7px;cursor:pointer;font:inherit;font-size:.875rem;font-weight:600}.portal-account-trigger--link{text-decoration:none}.portal-account-trigger:hover,.portal-account-trigger[aria-expanded=true],.portal-account-trigger--active{border-color:var(--portal-primary-border);background:var(--portal-primary-surface);text-decoration:none}.portal-account-trigger span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.portal-account-trigger__initials{display:none}.portal-account-trigger .dentio-icon{color:var(--portal-copy-warm);flex:none;transition:transform .16s ease}.portal-account-trigger[aria-expanded=true] .dentio-icon{transform:rotate(180deg)}.portal-account-popover{position:absolute;z-index:20;top:calc(100% + 8px);right:0;display:grid;width:min(300px,calc(100vw - 28px));padding:10px;border:1px solid var(--portal-primary-border);border-radius:8px;background:var(--portal-card);box-shadow:0 18px 45px color-mix(in srgb,var(--portal-text) 14%,transparent);gap:8px}.portal-account-popover__header{display:flex;padding:8px 8px 6px;align-items:center;gap:8px;color:var(--portal-text);font-size:.875rem;font-weight:600}.portal-account-popover__header .dentio-icon{color:var(--portal-primary-vivid)}.portal-account-settings{display:grid;margin:0;padding:4px 0;border-top:1px solid var(--portal-warm-muted);border-bottom:1px solid var(--portal-warm-muted);gap:0}.portal-account-settings div{display:grid;padding:8px;grid-template-columns:minmax(78px,auto) minmax(0,1fr);gap:14px}.portal-account-settings dt{color:var(--portal-copy-warm);font-size:.8125rem;font-weight:600}.portal-account-settings dd{min-width:0;margin:0;overflow:hidden;color:var(--portal-text);font-size:.8125rem;font-weight:600;text-align:right;text-overflow:ellipsis;white-space:nowrap}.portal-account-action{display:inline-flex;min-height:40px;padding:0 10px;border:0;border-radius:8px;color:var(--portal-text);background:transparent;align-items:center;gap:8px;cursor:pointer;font:inherit;font-size:.875rem;font-weight:600}.portal-account-action:hover{background:var(--portal-primary-surface)}.portal-account-trigger:focus-visible,.portal-account-action:focus-visible,.portal-back-link:focus-visible{outline:3px solid var(--portal-primary-light);outline-offset:3px}.portal-app__content{width:min(100%,1040px);margin:0 auto;padding:48px 24px 64px;flex:1}.portal-footer{display:flex;width:min(100%,1040px);margin:0 auto;padding:22px 24px 30px;border-top:1px solid var(--portal-warm-border);color:var(--portal-copy-warm);align-items:center;justify-content:space-between;gap:16px;font-size:.8125rem;font-weight:600}.portal-footer nav{display:flex;flex-wrap:wrap;gap:14px}.portal-footer a{color:inherit;text-decoration:none}.portal-footer a:hover{color:var(--portal-text)}.portal-footer--login{width:min(100%,392px);padding:0 4px 2px;border-top:0;color:var(--portal-copy-cool);font-size:.6875rem;font-weight:600}.portal-footer--login nav{gap:11px}.portal-footer--login a:hover{color:var(--portal-ink)}@media(min-width:900px){.portal-footer--login{display:none}}@media(max-width:520px){.portal-account{width:100%;justify-content:space-between}.portal-account-trigger{max-width:100%;padding-left:0}.portal-account-popover{right:auto;left:0;width:min(100%,320px)}.portal-app__content{padding:34px 14px 48px}.portal-footer{padding:18px 14px 24px;align-items:flex-start;flex-direction:column}.portal-footer--login{width:min(100%,420px);padding:8px 12px;color:var(--portal-copy-cool);background:transparent;align-items:center;flex-direction:row;justify-content:center;font-size:.75rem}.portal-footer--login nav{justify-content:center;gap:18px}.portal-footer--login>span{display:none}}@media(max-width:360px){.portal-footer--login nav{gap:12px}}.portal-info-page{display:flex;min-height:100vh;color:var(--portal-text);background:var(--portal-canvas);flex-direction:column}.portal-info-topbar{display:flex;min-height:70px;padding:0 28px;border-bottom:1px solid var(--portal-warm-border);background:var(--portal-card);align-items:center}.portal-info-content{width:min(100%,860px);margin:0 auto;padding:44px 24px 72px;flex:1}.portal-info-hero{display:grid;margin-top:24px;padding-bottom:28px;border-bottom:1px solid var(--portal-warm-border);gap:10px}.portal-info-hero p{margin:0;color:var(--portal-primary-vivid);font-size:.8125rem;font-weight:600;letter-spacing:0;text-transform:uppercase}.portal-info-hero h1{max-width:14ch;margin:0;color:var(--portal-text);font-size:2.625rem;line-height:1.02;letter-spacing:0}.portal-info-hero span{max-width:62ch;color:var(--portal-copy-warm-strong);font-size:1.0625rem}.portal-info-hero small{color:var(--portal-copy-cool-strong);font-size:.8125rem;font-weight:600}.portal-info-sections{display:grid;margin-top:34px;gap:24px}.portal-info-section{display:grid;gap:10px}.portal-info-section h2{margin:0;color:var(--portal-text);font-size:1.375rem;line-height:1.2;letter-spacing:0}.portal-info-section p,.portal-info-section li{color:var(--portal-copy-warm-strong);font-size:1rem}.portal-info-section p{margin:0}.portal-info-section p+p{margin-top:10px}.portal-info-section ul{display:grid;margin:0;padding-left:20px;gap:8px}.portal-info-section a{color:var(--portal-text);font-weight:600}@media(max-width:520px){.portal-info-topbar{padding:14px}.portal-info-content{padding:34px 14px 54px}.portal-info-hero h1{font-size:2.125rem}}.contact-empty{width:min(100%,560px);align-self:center}.contact-chat{display:grid;width:100%;min-height:min(600px,calc(100dvh - 260px));border:1px solid var(--portal-warm-border);border-radius:12px;overflow:hidden;background:var(--portal-card);box-shadow:0 16px 38px color-mix(in srgb,var(--portal-text) 6%,transparent);grid-template-rows:minmax(0,1fr) auto}.contact-chat__messages{display:flex;min-height:0;padding:22px;overflow-y:auto;background:linear-gradient(180deg,var(--portal-white) 0%,var(--portal-card) 100%);flex-direction:column;gap:14px}.contact-chat__status{display:inline-flex;width:fit-content;max-width:100%;min-height:42px;padding:0 13px;border:1px solid var(--portal-warm-border);border-radius:999px;color:var(--portal-copy-warm-strong);background:var(--portal-card);align-items:center;gap:8px;font-size:.875rem;font-weight:600;align-self:center}.contact-chat__status--error{color:var(--portal-danger-strong);background:var(--portal-danger-surface);border-color:var(--portal-danger-border)}.contact-chat__live-status{width:fit-content;max-width:100%;margin:0;padding:7px 10px;border-radius:9px;color:var(--portal-copy-cool-strong);background:var(--portal-cool-surface);font-size:.75rem;font-weight:600;align-self:center;text-align:center}.contact-chat__live-status--error{color:var(--portal-danger-strong);background:var(--portal-danger-surface)}.contact-chat__older{display:grid;justify-items:center;gap:8px}.contact-chat__older .workspace-button{min-height:38px}.contact-chat__older p{margin:0;color:var(--portal-danger-strong);font-size:.8125rem;text-align:center}.contact-message{display:grid;width:min(82%,520px);gap:5px}.contact-message--patient{align-self:flex-end;justify-items:end}.contact-message--clinic{align-self:flex-start}.contact-message__bubble{padding:13px 15px;border-radius:14px 14px 14px 5px;color:var(--portal-text);background:var(--portal-primary-surface-strong)}.contact-message--patient .contact-message__bubble{color:var(--portal-text);background:var(--portal-primary-border);border-bottom-right-radius:5px;border-bottom-left-radius:14px}.contact-message__bubble p{margin:0;overflow-wrap:anywhere;font-size:.9375rem;line-height:1.45;white-space:pre-wrap}.contact-message footer{display:flex;color:var(--portal-copy-warm);align-items:center;gap:8px;font-size:.75rem;font-weight:600}.contact-composer{display:grid;padding:14px;border-top:1px solid var(--portal-warm-border);background:var(--portal-card);gap:8px}.contact-composer__surface{display:grid;min-width:0;padding:5px;border:1px solid var(--portal-primary-border);border-radius:14px;background:var(--portal-white);align-items:end;grid-template-columns:minmax(0,1fr) auto;gap:6px;transition:border-color .16s ease,box-shadow .16s ease}.contact-composer__surface:focus-within{border-color:var(--portal-primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--portal-primary) 16%,transparent)}.contact-composer label{color:var(--portal-text);font-size:.8125rem;font-weight:600}.contact-composer textarea{display:block;width:100%;min-height:86px;padding:11px 12px;border:0;border-radius:10px;outline:0;color:var(--portal-text);background:transparent;font:inherit;font-size:.9375rem;resize:vertical}.contact-composer textarea::placeholder{color:var(--portal-copy-cool-strong)}.contact-composer__error{margin:0;color:var(--portal-danger-strong);font-size:.8125rem;font-weight:600}.contact-thread-page{display:grid;width:min(100%,720px);height:100%;min-height:0;margin:0 auto;padding:22px 20px 48px;align-content:start;gap:24px}.contact-thread-page{overflow:hidden;padding-bottom:14px;grid-template-rows:auto minmax(0,1fr);gap:0}.contact-thread-page--with-context{grid-template-rows:auto auto minmax(0,1fr)}.contact-clinic-avatar{display:grid;width:52px;height:52px;overflow:hidden;border-radius:12px;color:var(--portal-white);background:linear-gradient(145deg,var(--portal-primary-light) 0%,var(--portal-primary-medium) 100%);place-items:center;flex:none}.contact-clinic-avatar--compact{width:40px;height:40px;border-radius:11px}.contact-clinic-avatar img{display:block;width:100%;height:100%;padding:6px;background:var(--portal-white);object-fit:contain}.contact-clinic-avatar span{display:grid;width:100%;height:100%;color:var(--portal-white);font-family:Dentio Sans,sans-serif;place-items:center;font-size:1.25rem;font-weight:600;line-height:1}.contact-clinic-avatar--compact span{font-size:1rem}.contact-overview__group{display:grid;width:100%;min-width:0;gap:10px}.contact-overview__group>h2{margin:0;color:var(--portal-subtle);font-size:.875rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.contact-overview .contact-overview__group>h2{font-size:.75rem}.contact-message-row{display:flex;width:100%;max-width:100%;min-width:0;min-height:70px;padding:14px;border:1px solid var(--portal-border);border-radius:14px;color:var(--portal-text);background:var(--portal-card);align-items:center;gap:13px;text-decoration:none;box-shadow:0 3px 12px color-mix(in srgb,var(--portal-text) 5%,transparent)}.contact-message-row:hover{border-color:color-mix(in srgb,var(--portal-primary) 42%,transparent);text-decoration:none}.contact-message-row__icon{display:grid;width:46px;height:46px;border-radius:13px;background:color-mix(in srgb,var(--portal-primary) 12%,transparent);flex:none;place-items:center}.contact-message-row__body,.contact-message-row__body>span{display:flex;min-width:0;align-items:center;gap:8px}.contact-message-row__body{width:100%;overflow:hidden;flex:1;flex-direction:column;align-items:stretch;gap:2px}.contact-message-row__body>span{width:100%;overflow:hidden}.contact-message-row__body strong{min-width:0;overflow:hidden;font-size:1rem;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.contact-message-row__body time{margin-left:auto;color:var(--portal-subtle);flex:none;font-size:.75rem}.contact-message-row__body small{display:block;min-width:0;overflow:hidden;color:var(--portal-subtle);flex:1;font-size:.875rem;text-overflow:ellipsis;white-space:nowrap}.contact-message-row__body b{display:grid;min-width:20px;height:20px;padding:0 6px;border-radius:999px;color:var(--portal-white);background:var(--portal-primary);place-items:center;font-size:.6875rem}.contact-thread-header{display:grid;min-width:0;min-height:62px;padding:11px 12px;border-bottom:1px solid var(--portal-border);background:var(--portal-card);align-items:center;grid-template-columns:auto auto minmax(0,1fr);gap:11px}.contact-thread-header__back{display:grid;width:40px;height:40px;border-radius:999px;color:var(--portal-text);place-items:center;text-decoration:none}.contact-thread-header__back:hover{background:var(--portal-primary-surface-strong)}.contact-thread-header__icon{display:grid;width:40px;height:40px;border-radius:12px;color:var(--portal-primary);background:var(--portal-primary-surface-strong);place-items:center}.contact-thread-header div{display:grid;min-width:0;gap:4px}.contact-thread-header h1{margin:0;overflow:hidden;color:var(--portal-text);font-size:1rem;font-weight:600;line-height:1.14;text-overflow:ellipsis;white-space:nowrap}.contact-thread-header p{margin:0;overflow:hidden;color:var(--portal-subtle);font-size:.75rem;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.contact-thread-context{display:flex;min-height:52px;padding:9px 13px;border-bottom:1px solid color-mix(in srgb,var(--portal-primary) 20%,transparent);color:var(--portal-primary-strong);background:color-mix(in srgb,var(--portal-primary) 7%,transparent);align-items:center;gap:10px;font-size:.75rem;font-weight:600;text-decoration:none}.contact-thread-context>span{display:grid;min-width:0;flex:1;gap:1px}.contact-thread-context small{color:var(--portal-subtle);font-size:.6875rem;font-weight:400}.contact-thread-context strong{overflow:hidden;color:var(--portal-text);text-overflow:ellipsis;white-space:nowrap}.contact-thread-page .contact-chat{min-width:0;min-height:0;height:100%;overflow:hidden;border:0;border-radius:0;box-shadow:none;background:transparent;grid-template-rows:minmax(0,1fr) auto}.contact-thread-page .contact-chat__messages{height:auto;min-height:0;padding:14px 6px 28px;overscroll-behavior:contain;scroll-padding-block:14px 28px;touch-action:pan-y pinch-zoom;-webkit-overflow-scrolling:touch;background:transparent}.contact-thread-page .contact-message:last-of-type{margin-bottom:4px}.contact-chat-guidance{display:flex;width:100%;margin-bottom:6px;padding:9px 11px;border:1px solid color-mix(in srgb,var(--portal-warning) 28%,transparent);border-radius:11px;color:var(--portal-text);background:color-mix(in srgb,var(--portal-warning) 8%,transparent);align-items:flex-start;gap:9px;font-size:.75rem;line-height:1.45}.contact-chat-guidance .dentio-icon{flex:0 0 auto;margin-top:1px;color:var(--portal-warning)}.contact-thread-page .contact-message{width:min(88%,520px)}.contact-thread-page .contact-message__bubble{padding:13px 16px;border:1px solid var(--portal-primary-border);border-radius:18px 18px 18px 7px;background:var(--portal-white);box-shadow:0 3px 12px color-mix(in srgb,var(--portal-text) 5%,transparent)}.contact-thread-page .contact-message--automated .contact-message__bubble{border-color:color-mix(in srgb,var(--portal-primary) 24%,transparent);background:color-mix(in srgb,var(--portal-primary) 6%,transparent)}.contact-message__automation-mark{display:flex;padding:0 4px;align-items:center;gap:6px}.contact-message__automation-mark>span{display:grid;width:22px;height:22px;border-radius:7px;color:var(--portal-primary-strong);background:color-mix(in srgb,var(--portal-primary) 14%,transparent);place-items:center}.contact-message__automation-mark strong{font-size:.75rem;font-weight:600}.contact-message__automation-mark b{padding:2px 6px;border:1px solid color-mix(in srgb,var(--portal-primary) 30%,transparent);border-radius:999px;color:var(--portal-primary-strong);background:color-mix(in srgb,var(--portal-primary) 11%,transparent);font-size:.6875rem;letter-spacing:.06em}.contact-message__automation-disclosure{display:inline-flex;padding:0 4px;color:var(--portal-subtle);align-items:center;gap:4px;font-size:.6875rem}.contact-thread-page .contact-message--patient .contact-message__bubble{border-color:transparent;color:var(--portal-white);background:var(--portal-primary);border-bottom-right-radius:7px;border-bottom-left-radius:18px}.contact-thread-page .contact-message__bubble p{font-size:1rem;line-height:1.43}.contact-thread-page .contact-message footer{color:var(--portal-subtle);font-size:.8125rem}.contact-thread-page .contact-composer{position:relative;z-index:1;display:grid;min-height:68px;padding:10px 6px 6px;border-top:0;background:transparent;gap:6px}.contact-thread-page .contact-composer__surface{width:100%;padding:5px;border-color:var(--portal-border);border-radius:20px;box-shadow:0 7px 24px color-mix(in srgb,var(--portal-text) 7%,transparent)}.contact-composer__send{display:grid;width:48px;height:48px;border:1px solid transparent;border-radius:15px;outline:0;color:var(--portal-subtle);background:var(--portal-cool-surface);cursor:pointer;place-items:center;transition:background-color .16s ease,box-shadow .16s ease,transform .12s ease}.contact-composer__send:not(:disabled){color:var(--portal-white);background:var(--portal-primary)}.contact-composer__send:not(:disabled):hover{background:var(--portal-primary-strong);box-shadow:0 5px 12px color-mix(in srgb,var(--portal-primary) 24%,transparent)}.contact-composer__send:not(:disabled):active{transform:scale(.94)}.contact-composer__send:disabled{cursor:default}.contact-thread-page .contact-composer textarea{min-height:48px;max-height:140px;padding:12px 11px;border-radius:15px;font-size:1.0625rem;line-height:1.3;resize:none}.contact-thread-page .contact-composer__error{padding:0 8px}@media(max-width:520px){.contact-chat{min-height:0}.contact-chat__messages{height:220px;min-height:220px;padding:16px}.contact-message{width:min(92%,520px)}.contact-composer{padding:12px}.contact-thread-page .contact-composer{padding:9px 0 5px}.contact-thread-page .contact-composer__surface{border-radius:18px}.contact-composer__send{width:46px;height:46px;border-radius:14px}.contact-thread-page .contact-composer textarea{min-height:46px;padding-block:11px}}@media(max-width:899px){.portal-app__content:has(.contact-thread-page){display:flex;overflow:hidden}.contact-thread-page{width:100%;padding:0;flex:1}.contact-thread-page .contact-chat__messages{padding:12px 18px 16px;scroll-padding-block:12px 16px}.contact-thread-page .contact-composer{padding:8px 18px max(8px,env(safe-area-inset-bottom,0px))}}@media(prefers-reduced-motion:reduce){.contact-composer__surface,.contact-composer__send{transition:none}.contact-composer__send:not(:disabled):active{transform:none}}.login-heading h1,.portal-dashboard__intro h1,.clinic-choice-hero h1{font-family:Syllabus,Georgia,Times New Roman,serif;font-weight:400}.portal-app{display:flex;height:var(--patient-portal-viewport-height, 100dvh);min-height:var(--patient-portal-viewport-height, 100dvh);overflow:hidden;color:var(--portal-text);background:var(--portal-background);flex-direction:row}.portal-app--minimal{background:linear-gradient(180deg,var(--portal-primary-surface) 0%,var(--portal-white) 44%,var(--portal-white) 100%)}.portal-app__frame{display:flex;min-width:0;height:100%;min-height:0;overflow:hidden;flex:1;flex-direction:column}@media(max-width:899px){.portal-app{position:fixed;top:0;right:0;left:0;width:100%}}.portal-app__content{width:100%;max-width:none;min-width:0;min-height:0;margin:0;padding:0;flex:1;overflow-x:hidden;overflow-y:auto;overflow-anchor:none}.portal-mobile-topbar{position:sticky;z-index:12;top:0;display:grid;border-bottom:1px solid var(--portal-border);background:var(--portal-card)}.portal-mobile-topbar__main{display:flex;min-width:0;min-height:62px;padding:0 12px 0 14px;align-items:center;justify-content:space-between;gap:12px}.portal-mobile-topbar__main>.portal-account:first-child{margin-left:auto}.portal-clinic-label,.portal-clinic-label__name{display:flex;min-width:0;align-items:center}.portal-clinic-label strong{overflow:hidden;color:var(--portal-text);font-weight:600;line-height:1.15;text-overflow:ellipsis;white-space:nowrap}.portal-clinic-label--bar{max-width:240px;padding:4px;gap:9px}.portal-clinic-label--bar .clinic-logo{width:32px;height:32px;border:0;border-radius:9px;color:var(--portal-white);background:var(--portal-primary)}.portal-clinic-label--bar .clinic-logo>span{font-size:.8125rem;font-weight:600}.portal-clinic-label--bar .clinic-logo img,.portal-clinic-label--side .clinic-logo img{padding:2px;border-radius:inherit}.portal-clinic-label--bar strong{font-size:.9375rem}.portal-clinic-label--side{min-height:58px;margin-bottom:14px;padding:10px 12px;border:1px solid var(--portal-border);border-radius:12px;background:var(--portal-card);gap:11px}.portal-clinic-label--side .clinic-logo{width:36px;height:36px;border:0;border-radius:9px;color:var(--portal-white);background:var(--portal-primary)}.portal-clinic-label--side .clinic-logo>span{font-size:.875rem;font-weight:600}.portal-clinic-label--side strong{font-size:.875rem}.portal-app--minimal .portal-mobile-topbar{border-bottom:0;background:transparent}.portal-mobile-topbar .portal-brand-link{flex:none}.portal-sidebar{display:none}.portal-sidebar__brand{display:inline-flex;width:fit-content;padding:8px 10px 16px;color:inherit;text-decoration:none}.portal-sidebar__nav{display:grid;align-content:start;gap:3px;flex:1}.portal-sidebar-link{display:flex;min-height:44px;padding:0 12px;border:0;border-radius:8px;color:var(--portal-text);background:transparent;align-items:center;gap:12px;cursor:pointer;font:inherit;font-size:.875rem;font-weight:600;text-align:left;text-decoration:none}.portal-sidebar-link:hover{background:var(--portal-neutral-surface);text-decoration:none}.portal-sidebar-link--active{color:var(--portal-white);background:var(--portal-primary)}.portal-sidebar-link--active:hover{background:var(--portal-primary-strong)}.portal-sidebar-link--loading{cursor:default;pointer-events:none}.portal-sidebar-link--loading:hover{background:transparent}.portal-sidebar-link__skeleton-icon,.portal-sidebar-link__skeleton-label{display:block;border:0;background:color-mix(in srgb,var(--portal-copy-warm) 22%,var(--portal-warm-muted));box-shadow:none;animation:portal-nav-skeleton-pulse 1.15s ease-in-out infinite alternate}.portal-sidebar-link__skeleton-icon{width:20px;height:20px;border-radius:6px;flex:0 0 auto}.portal-sidebar-link__skeleton-label{width:116px;height:12px;border-radius:999px}@keyframes portal-nav-skeleton-pulse{0%{opacity:.62}to{opacity:1}}.portal-sidebar__account{display:grid;padding:12px;border-top:1px solid var(--portal-border);align-items:center;grid-template-columns:minmax(0,1fr) auto;gap:11px}.portal-sidebar__profile{display:grid;min-width:0;margin:-6px;padding:6px;border-radius:8px;color:inherit;align-items:center;grid-template-columns:auto minmax(0,1fr);gap:11px;text-decoration:none}.portal-sidebar__profile:hover,.portal-sidebar__profile--active{background:var(--portal-neutral-surface);text-decoration:none}.portal-account-avatar{display:grid;width:36px;height:36px;border-radius:8px;color:var(--portal-white);background:var(--portal-primary);place-items:center;font-size:.8125rem;font-weight:600}.portal-sidebar__account strong,.portal-sidebar__account small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.portal-sidebar__account strong{color:var(--portal-text);font-size:.875rem;font-weight:600}.portal-sidebar__account small{color:var(--portal-subtle);font-size:.75rem;font-weight:600}.portal-sidebar__logout{display:grid;width:34px;height:34px;border:0;border-radius:8px;color:var(--portal-subtle);background:transparent;cursor:pointer;place-items:center}.portal-sidebar__logout:hover{color:var(--portal-text);background:var(--portal-neutral-surface)}.portal-header-nav{display:grid;min-width:0;min-height:48px;padding:0 6px;overflow-x:auto;border-top:1px solid var(--portal-border);background:var(--portal-card);grid-template-columns:repeat(5,minmax(0,1fr));scrollbar-width:none}.portal-header-nav::-webkit-scrollbar{display:none}.portal-header-nav__item{position:relative;display:flex;width:100%;min-width:0;min-height:48px;padding:0 4px;border:0;color:var(--portal-subtle);background:transparent;align-items:center;justify-content:center;gap:5px;cursor:pointer;font:inherit;font-size:.75rem;font-weight:600;text-decoration:none}.portal-header-nav__item:after{position:absolute;right:4px;bottom:0;left:4px;height:2px;border-radius:999px 999px 0 0;background:transparent;content:""}.portal-header-nav__item--active{color:var(--portal-primary);background:transparent}.portal-header-nav__item--active:after{background:var(--portal-primary)}.portal-header-nav__item>.dentio-icon{width:20px;height:20px;opacity:.72}.portal-header-nav__item--active>.dentio-icon{opacity:1}@media(hover:hover)and (pointer:fine){.portal-header-nav__item:hover{color:var(--portal-primary);background:var(--portal-primary-surface);text-decoration:none}}@media(prefers-reduced-motion:reduce){.portal-sidebar-link__skeleton-icon,.portal-sidebar-link__skeleton-label{animation:none}}.portal-dashboard{display:grid;width:min(100%,920px);margin:0 auto;padding:26px 20px 48px;gap:22px}.invite-status-page{display:grid;min-height:100dvh;padding:24px;background:var(--portal-background);place-items:center}.invite-status-card{display:grid;width:min(100%,430px);padding:30px;border:1px solid var(--portal-border);border-radius:20px;background:var(--portal-card);text-align:center;place-items:center;gap:13px;box-shadow:var(--portal-shadow)}.invite-status-card>.dentio-icon{color:var(--portal-primary)}.invite-status-card h1{margin:0;font-family:Syllabus,Georgia,serif;font-size:2rem;font-weight:400}.invite-status-card p{margin:0;color:var(--portal-subtle);line-height:1.5}.invite-status-card button{min-height:44px;padding:0 17px;border:0;border-radius:10px;color:var(--portal-white);background:var(--portal-primary);cursor:pointer;font:inherit;font-weight:600}.invite-status-card .invite-status-card__secondary{color:var(--portal-primary-strong);background:transparent}.portal-dashboard__intro{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.portal-dashboard__intro h1{margin:0;color:var(--portal-ink);font-size:2.75rem;line-height:1.02;letter-spacing:0}.portal-dashboard__intro span{display:block;margin-top:4px;color:var(--portal-subtle);font-size:.9375rem;font-weight:600;text-transform:capitalize}.portal-kicker{margin:0 0 6px;color:var(--portal-primary);font-size:.75rem;font-weight:600;letter-spacing:0;text-transform:uppercase}.portal-dashboard__trust{display:inline-flex;min-height:38px;padding:0 12px;border:1px solid var(--portal-border);border-radius:999px;color:var(--portal-subtle);background:var(--portal-card);align-items:center;gap:8px;font-size:.8125rem;font-weight:600;white-space:nowrap}.portal-dashboard__trust .dentio-icon{color:var(--portal-primary)}.portal-dashboard--clinic-choice{width:min(100%,516px);padding-top:26px;gap:22px}.portal-dashboard--clinic-choice .portal-dashboard__intro{display:grid;justify-content:stretch}.clinic-choice-hero{display:grid;justify-items:center;text-align:center}.clinic-choice-hero__icon{display:grid;width:64px;height:64px;margin-top:0;margin-bottom:14px;border-radius:16px;color:var(--portal-primary);background:linear-gradient(145deg,color-mix(in srgb,var(--portal-primary) 16%,transparent),color-mix(in srgb,var(--portal-primary) 8%,transparent));place-items:center;font-size:inherit;text-transform:none}.portal-dashboard__intro .clinic-choice-hero__icon{display:grid;margin-top:0;margin-bottom:22px;color:var(--portal-primary);font-size:inherit;text-transform:none;place-items:center}.clinic-choice-hero__icon svg,.clinic-choice-hero__icon .dentio-icon{display:block;width:34px;height:34px}.clinic-choice-hero h1{margin:0;color:var(--portal-ink);font-size:2rem;line-height:1.02;letter-spacing:0}.clinic-choice-hero span:not(.clinic-choice-hero__icon){display:block;margin-top:6px;color:var(--portal-subtle);font-size:1rem;font-weight:400;line-height:1.35;text-transform:none}.clinic-choice{display:grid;width:100%;gap:12px}.clinic-choice__label{margin:0;color:var(--portal-subtle);font-size:.75rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.clinic-choice__list{display:grid;gap:12px}.clinic-choice-card{display:grid;min-height:86px;padding:16px;border:1px solid var(--portal-warm-border);border-radius:16px;color:var(--portal-text);background:color-mix(in srgb,var(--portal-white) 86%,transparent);align-items:center;grid-template-columns:auto minmax(0,1fr) auto;gap:14px;box-shadow:0 12px 28px color-mix(in srgb,var(--portal-text) 6%,transparent);transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}.clinic-choice-card:hover{border-color:color-mix(in srgb,var(--portal-primary) 46%,transparent);box-shadow:var(--portal-shadow);transform:translateY(-1px)}.clinic-choice-card__avatar{display:grid;width:54px;height:54px;overflow:hidden;border-radius:13px;color:var(--portal-white);background:linear-gradient(145deg,var(--portal-primary-light) 0%,var(--portal-primary-medium) 100%);place-items:center}.clinic-choice-card__avatar>span{display:grid;width:100%;height:100%;padding-top:1px;place-items:center;font-size:1.4375rem;font-weight:600;line-height:1;text-align:center}.clinic-choice-card__avatar img{display:block;width:100%;height:100%;padding:8px;background:var(--portal-white);object-fit:contain}.clinic-choice-card__content{display:grid;min-width:0;gap:4px}.clinic-choice-card__clinic-link{display:grid;min-width:0;color:inherit;gap:4px;text-decoration:none}.clinic-choice-card__clinic-link:hover strong{text-decoration:underline;text-underline-offset:3px}.clinic-choice-card__content strong{overflow:hidden;color:var(--portal-text);font-size:1.125rem;font-weight:600;line-height:1.16;text-overflow:ellipsis;white-space:nowrap}.clinic-choice-card__address{color:var(--portal-subtle);font-size:.875rem;font-weight:400;line-height:1.25;overflow-wrap:anywhere}.clinic-choice-card__message{display:grid;min-width:0;color:var(--portal-subtle);align-items:baseline;grid-template-columns:minmax(0,1fr) auto;gap:10px;font-size:.875rem;line-height:1.3}.clinic-choice-card__message>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.clinic-choice-card__message time{color:var(--portal-copy-warm-strong);font-size:.75rem;white-space:nowrap}.clinic-choice-card__unread{display:inline-flex;min-width:0;color:var(--portal-primary-strong);align-items:center;gap:8px;font-size:.8125rem;font-weight:600;line-height:1.25;text-decoration:none;width:fit-content}.clinic-choice-card__unread:hover{text-decoration:underline;text-underline-offset:3px}.clinic-choice-card__action{display:grid;border-radius:8px;place-items:center}.clinic-choice-card__action .dentio-icon{opacity:.72}.clinic-choice-card__clinic-link:focus-visible,.clinic-choice-card__unread:focus-visible,.clinic-choice-card__action:focus-visible{outline:3px solid var(--portal-primary-light);outline-offset:3px}.portal-empty--dashboard{width:min(100%,560px);border-radius:14px}.portal-sidebar-link:focus-visible,.portal-sidebar__profile:focus-visible,.portal-sidebar__logout:focus-visible,.portal-header-nav__item:focus-visible{outline:3px solid color-mix(in srgb,var(--portal-primary) 45%,transparent);outline-offset:3px}@media(min-width:900px){.portal-sidebar{position:sticky;top:0;display:flex;width:264px;height:100dvh;padding:14px;border-right:1px solid var(--portal-border);background:var(--portal-card);flex-direction:column;gap:4px}.portal-mobile-topbar{display:none}.portal-app--minimal .portal-mobile-topbar{display:grid}.portal-dashboard{padding:42px 42px 64px}.portal-dashboard__intro h1{font-size:3.625rem}}@media(max-width:720px){.portal-mobile-topbar,.portal-mobile-topbar--with-clinic{display:grid}.portal-mobile-topbar__main{min-height:62px;padding:0 12px 0 14px}.portal-mobile-topbar .portal-brand__wordmark{height:24px}.portal-dashboard__intro{flex-direction:column}.portal-dashboard__intro h1{font-size:2.5rem}.portal-dashboard--clinic-choice{padding:18px 20px 48px;gap:22px}.clinic-choice-hero__icon{width:64px;height:64px;margin-bottom:14px;border-radius:16px}.clinic-choice-hero h1{font-size:2rem}.clinic-choice-hero span:not(.clinic-choice-hero__icon){margin-top:6px;font-size:1rem}.clinic-choice__label{font-size:.75rem}.clinic-choice-card{min-height:86px;padding:16px;border-radius:16px;gap:14px}.clinic-choice-card__avatar{width:54px;height:54px;border-radius:12px;font-size:1.4375rem}.clinic-choice-card__content strong{font-size:1.125rem}.clinic-choice-card__address{font-size:.875rem}.clinic-choice-card__unread{font-size:.8125rem}.portal-dashboard__trust{min-height:34px}}@media(max-width:360px){.portal-header-nav__item>span{display:none}}.workspace-page{display:grid;width:min(100%,900px);min-height:100%;margin:0 auto;padding:30px 24px 112px;align-content:start;gap:22px}.portal-status,.portal-empty{border:1px solid var(--portal-warm-border);border-radius:8px;background:var(--portal-card)}.portal-status{display:inline-flex;min-height:50px;padding:13px 16px;align-items:center;gap:10px;color:var(--portal-copy-warm-strong);font-size:.9375rem}.portal-status--error{color:var(--portal-danger-ink);background:var(--portal-danger-surface)}.portal-empty{display:flex;width:min(100%,520px);padding:24px;flex-direction:column;align-items:flex-start;gap:16px}.portal-empty .dentio-icon{width:38px;height:38px;color:var(--portal-primary-vivid)}.portal-empty h2{margin:0;color:var(--portal-text);font-size:1.25rem;line-height:1.2;letter-spacing:0}.portal-empty p{max-width:42ch;margin:-4px 0 0;color:var(--portal-copy-warm-strong);font-size:.9375rem}.clinic-logo{display:grid;width:52px;height:52px;overflow:hidden;border:1px solid var(--portal-primary-border);border-radius:8px;color:var(--portal-text);background:var(--portal-primary-surface);flex:none;place-items:center}.clinic-logo img{display:block;width:100%;height:100%;padding:6px;background:var(--portal-white);object-fit:contain}.clinic-logo span{font-family:Dentio Sans,sans-serif;font-size:1.0625rem;font-weight:600;letter-spacing:0}.portal-back-link{display:inline-flex;width:fit-content;min-height:36px;margin-bottom:22px;padding:0 10px 0 6px;border-radius:8px;color:var(--portal-copy-warm-strong);align-items:center;gap:5px;font-size:.875rem;font-weight:600;text-decoration:none}.portal-back-link:hover{color:var(--portal-text);background:var(--portal-neutral-surface)}.workspace-page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.workspace-page-header>div:first-child{display:grid;gap:6px}.workspace-page-header h1,.workspace-card h2,.workspace-modal h2{margin:0;color:var(--portal-ink)}.workspace-page-header h1{font-family:Syllabus,Georgia,Times New Roman,serif;font-size:clamp(2.375rem,6vw,3.375rem);font-weight:400;line-height:1.03}.workspace-page-header p:not(.workspace-eyebrow),.workspace-card p,.workspace-empty p{margin:0;color:var(--portal-subtle);line-height:1.5}.workspace-eyebrow{margin:0;color:var(--portal-primary);font-size:.75rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.workspace-page-header__actions{display:flex;flex-wrap:wrap;gap:10px}.workspace-card{padding:20px;border:1px solid var(--portal-border);border-radius:18px;background:var(--portal-card);box-shadow:0 7px 22px color-mix(in srgb,var(--portal-text) 4%,transparent)}.workspace-card--primary{border-color:color-mix(in srgb,var(--portal-primary) 30%,transparent);background:linear-gradient(145deg,var(--portal-primary-surface),var(--portal-card))}.workspace-card--muted{background:var(--portal-muted);box-shadow:none}.workspace-card--warning{border-color:var(--portal-warning-border);background:var(--portal-warning-surface)}.workspace-button{display:inline-flex;min-height:44px;padding:0 17px;border:1px solid transparent;border-radius:10px;align-items:center;justify-content:center;gap:8px;cursor:pointer;font:inherit;font-weight:600;text-decoration:none;transition:transform .14s ease,background-color .14s ease,border-color .14s ease}.workspace-button:disabled{cursor:not-allowed;opacity:.58}.workspace-button--primary{color:var(--portal-white);background:var(--portal-primary)}.workspace-button--secondary{border-color:var(--portal-border);color:var(--portal-text);background:var(--portal-white)}.workspace-button--ghost{color:var(--portal-primary-strong);background:transparent}@media(hover:hover)and (pointer:fine){.workspace-button:hover:not(:disabled){transform:translateY(-1px)}.workspace-button--primary:hover:not(:disabled){background:var(--portal-primary-strong)}}.workspace-button--danger{color:var(--portal-white);background:var(--portal-danger)}.workspace-button--full{width:100%}.workspace-spinner{flex:none;animation:workspace-spin .8s linear infinite}.workspace-button--primary .workspace-spinner,.workspace-button--danger .workspace-spinner{border-color:var(--portal-white);border-right-color:transparent}@keyframes workspace-spin{to{transform:rotate(360deg)}}.workspace-loading{width:100%;pointer-events:none}.workspace-page--skeleton{overflow:hidden;pointer-events:none}.workspace-page-skeleton__header{display:flex;align-items:flex-start;justify-content:space-between;gap:24px}.workspace-page-skeleton__header>span{display:grid;width:min(100%,580px);gap:10px}.workspace-skeleton__shape{display:block;margin:0;border:0;border-radius:999px;background-color:var(--portal-warm-muted)}.workspace-skeleton__eyebrow{width:96px;height:11px}.workspace-skeleton__title{width:min(72%,360px);height:46px;border-radius:13px}.workspace-skeleton__lead{width:min(88%,520px);height:15px}.workspace-skeleton__header-action{width:124px;height:44px;flex:0 0 auto;border-radius:10px}.workspace-skeleton__cards{display:grid;gap:18px}.workspace-skeleton__card{display:grid;min-height:224px;padding:22px;border:1px solid var(--portal-border);border-radius:18px;background:var(--portal-card);align-content:start;gap:22px;box-shadow:0 7px 22px color-mix(in srgb,var(--portal-text) 4%,transparent)}.workspace-skeleton__card--compact{min-height:190px}.workspace-skeleton__identity{display:grid;align-items:center;grid-template-columns:auto minmax(0,1fr);gap:14px}.workspace-skeleton__avatar{width:58px;height:58px;border-radius:17px}.workspace-skeleton__identity-copy,.workspace-skeleton__copy{display:grid;min-width:0;gap:9px}.workspace-skeleton__line{width:100%;height:13px}.workspace-skeleton__line--name{width:min(64%,330px);height:18px}.workspace-skeleton__line--meta{width:min(42%,210px)}.workspace-skeleton__line--short{width:72%}.workspace-skeleton__footer{display:flex;margin-top:auto;align-items:center;justify-content:space-between;gap:16px}.workspace-skeleton__footer>span{display:flex;align-items:center;gap:7px}.workspace-skeleton__pill{width:34px;height:34px}.workspace-skeleton__button{width:118px;height:40px;border-radius:10px}.workspace-loading .workspace-skeleton__card{min-height:206px}.workspace-status{display:grid;padding:14px 16px;border:1px solid var(--portal-border);border-radius:12px;background:var(--portal-card);gap:3px}.workspace-status span{color:var(--portal-subtle)}.workspace-status--error{border-color:color-mix(in srgb,var(--portal-danger) 35%,transparent);color:var(--portal-danger-strong);background:var(--portal-danger-surface)}.workspace-status--success{border-color:color-mix(in srgb,var(--portal-success) 35%,transparent);color:var(--portal-success-strong);background:var(--portal-success-surface)}.workspace-status--warning{border-color:var(--portal-warning-border);color:var(--portal-warning-strong);background:var(--portal-warning-surface)}.workspace-empty{display:grid;min-height:260px;text-align:center;place-items:center;align-content:center;gap:10px}.workspace-empty__icon{display:grid;width:58px;height:58px;border-radius:16px;color:var(--portal-primary);background:color-mix(in srgb,var(--portal-primary) 13%,transparent);place-items:center}.workspace-empty h2{font-size:1.5rem}.workspace-empty--booking{min-height:310px;padding:44px 26px;gap:14px}.workspace-empty--booking .workspace-empty__icon{width:76px;height:76px;border-radius:22px;background:color-mix(in srgb,var(--portal-primary) 10%,transparent)}.workspace-empty--booking h2{font-size:1.0625rem;font-weight:600}.workspace-empty--booking p{max-width:38ch;margin-top:-10px;font-size:.9375rem}.workspace-modal{position:fixed;z-index:100;inset:0;display:grid;padding:24px;background:color-mix(in srgb,var(--portal-ink) 42%,transparent);place-items:center}.workspace-modal__panel{display:grid;width:min(100%,520px);max-height:min(760px,calc(100dvh - 32px));overflow:hidden;border-radius:20px;background:var(--portal-card);grid-template-rows:auto minmax(0,1fr) auto;box-shadow:0 30px 80px color-mix(in srgb,var(--portal-ink) 28%,transparent)}.workspace-modal__panel>header,.workspace-modal__panel>footer{display:flex;padding:18px 20px;align-items:center;justify-content:space-between;gap:12px}.workspace-modal__panel>header{border-bottom:1px solid var(--portal-border)}.workspace-modal__panel>header button{display:grid;width:38px;height:38px;border:0;border-radius:999px;color:var(--portal-subtle);background:var(--portal-muted);cursor:pointer;place-items:center}.workspace-modal__body{display:grid;padding:20px;overflow-y:auto;overscroll-behavior:contain;gap:14px}.workspace-modal__panel>footer{border-top:1px solid var(--portal-border);justify-content:flex-end}@media(min-width:900px){.workspace-page{padding:42px 42px 70px}}@media(max-width:620px){.workspace-page{padding:22px 18px 106px}.workspace-page-header{align-items:stretch;flex-direction:column}.workspace-page-skeleton__header{gap:14px}.workspace-skeleton__title{width:76%;height:38px}.workspace-skeleton__lead{width:94%}.workspace-skeleton__header-action{display:none}.workspace-skeleton__card{min-height:210px;padding:18px}.workspace-skeleton__card--compact{min-height:178px}.workspace-skeleton__avatar{width:52px;height:52px;border-radius:15px}.workspace-skeleton__button{width:92px}.workspace-page-header__actions>*{flex:1}.workspace-modal{padding:0;align-items:end}.workspace-modal__panel{width:100%;max-height:88dvh;border-radius:22px 22px 0 0}}@media(prefers-reduced-motion:reduce){.workspace-button{transition:none}}.dentio-icon{display:block;max-width:100%;flex:0 0 auto;object-fit:contain;pointer-events:none;-webkit-user-select:none;user-select:none}.workspace-button--primary .dentio-icon,.login-option--primary .dentio-icon,.welcome-intro__next .dentio-icon,.portal-sidebar-link--active .dentio-icon,.booking-person__avatar .dentio-icon,.booking-slot--selected .dentio-icon,.booking-payment__methods button[aria-pressed=true] i .dentio-icon,.contact-composer__send:not(:disabled) .dentio-icon{filter:brightness(0) invert(1)}.dentio-spinner{display:inline-block;border:2px solid currentColor;border-right-color:transparent;border-radius:999px;flex:0 0 auto;animation:dentio-icon-spin .7s linear infinite}.dentio-close-glyph{display:inline-grid;line-height:1;place-items:center}@keyframes dentio-icon-spin{to{transform:rotate(360deg)}}.appointments-page .workspace-page-header__actions .workspace-button{white-space:nowrap}.appointments-skeleton{display:grid;gap:36px;pointer-events:none}.appointment-card--skeleton{--appointment-skeleton-fill: color-mix(in srgb, var(--portal-copy-warm) 18%, var(--portal-warm-muted));--appointment-skeleton-fill-strong: color-mix(in srgb, var(--portal-copy-warm) 28%, var(--portal-warm-muted));box-shadow:none}.appointment-skeleton-block{border:0;background:var(--appointment-skeleton-fill);box-shadow:none;animation:appointment-skeleton-pulse 1.15s ease-in-out infinite alternate}.appointment-skeleton-line{display:block;max-width:100%;border-radius:999px}.appointment-card--skeleton .appointment-card__date{display:grid;background:var(--appointment-skeleton-fill-strong);gap:7px;animation:none}.appointment-card--skeleton .appointment-card__date .appointment-skeleton-line{margin-inline:auto;background:color-mix(in srgb,var(--portal-card) 58%,transparent)}.appointment-card-skeleton__heading{display:grid;width:min(100%,420px);gap:9px}.appointment-card-skeleton__status{width:74px;height:23px;border-radius:999px}.appointment-card--skeleton .appointment-card__meta span{width:100%}.appointment-card-skeleton__icon{width:17px;height:17px;border-radius:5px;flex:0 0 auto}.appointment-card-skeleton__actions>span{width:92px;height:42px;border-radius:9px}@keyframes appointment-skeleton-pulse{0%{opacity:.62}to{opacity:1}}.appointments-tabs{display:flex;width:fit-content;padding:4px;border-radius:12px;background:var(--portal-warm-muted);gap:4px}.appointments-tabs__tab{display:inline-flex;min-height:40px;padding:0 16px;border:0;border-radius:9px;color:var(--portal-subtle);background:transparent;align-items:center;gap:8px;cursor:pointer;font:inherit;font-weight:600}.appointments-tabs__tab--active{color:var(--portal-text);background:var(--portal-card);box-shadow:0 2px 8px color-mix(in srgb,var(--portal-text) 8%,transparent)}.appointments-tabs__tab span{display:grid;min-width:21px;height:21px;padding:0 5px;border-radius:999px;color:var(--portal-white);background:var(--portal-primary);place-items:center;font-size:.6875rem}.appointments-list,.appointments-section{display:grid;gap:13px}.appointments-section>h2,.appointments-section__heading h2{font-family:inherit;font-size:1.125rem;font-weight:600}.appointments-section__heading{display:grid;gap:3px}.appointments-section__heading p{color:var(--portal-subtle);font-size:.875rem}.appointments-list--previous .appointment-card{border-color:var(--portal-border);box-shadow:none}.appointment-card--previous .appointment-card__date{color:var(--portal-subtle);background:var(--portal-cool-surface)}.appointment-card{display:grid;grid-template-columns:auto minmax(0,1fr);gap:16px}.appointment-card__date{display:grid;width:58px;height:64px;border-radius:14px;color:var(--portal-primary-strong);background:color-mix(in srgb,var(--portal-primary) 12%,transparent);place-items:center;align-content:center}.appointment-card__date span{font-size:.6875rem;font-weight:600;text-transform:uppercase}.appointment-card__date strong{font-size:1.5625rem;line-height:1}.appointment-card__body{display:grid;min-width:0;gap:13px}.appointment-card__heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.appointment-card__heading h3{margin:0;font-family:inherit;font-size:1.125rem;font-weight:600;line-height:1.25}.appointment-card__clinic-label{display:none;margin:0 0 3px;color:var(--portal-primary-strong);font-size:.6875rem;font-weight:600;letter-spacing:.06em;line-height:1.2;text-transform:uppercase}.appointment-card__heading>div>strong{display:block;margin-top:3px;color:var(--portal-primary-strong);font-size:.9375rem}.appointment-status{padding:4px 9px;border-radius:999px;color:var(--portal-success);background:color-mix(in srgb,var(--portal-success) 11%,transparent);font-size:.6875rem;font-weight:600;white-space:nowrap}.appointment-status--cancelled{color:var(--portal-danger);background:color-mix(in srgb,var(--portal-danger) 10%,transparent)}.appointment-card__meta{display:grid;color:var(--portal-subtle);gap:7px;font-size:.875rem}.appointment-card__mobile-meta{display:none}.appointment-card__meta span{display:flex;align-items:center;gap:8px}.appointment-card__summary{padding-top:11px;border-top:1px solid var(--portal-border)}.appointment-card__actions{display:flex;padding-top:2px;flex-wrap:wrap;gap:9px}.appointment-card__actions small{color:var(--portal-subtle)}@media(max-width:560px){.appointments-page .workspace-page-header__actions{display:none}.appointments-skeleton{gap:28px}.appointments-tabs{display:grid;width:100%;padding:3px;border-radius:6px;background:var(--portal-cool-surface);grid-template-columns:repeat(2,minmax(0,1fr));gap:0}.appointments-tabs__tab{min-height:26px;padding:0 10px;border-radius:4px;justify-content:center;gap:6px;font-size:.6875rem;font-weight:400}.appointments-tabs__tab--active{font-weight:600;box-shadow:0 1px 4px color-mix(in srgb,var(--portal-text) 9%,transparent)}.appointments-tabs__tab span{min-width:17px;height:17px;padding:0 4px;font-size:.6875rem}.appointments-list{gap:12px}.appointment-card{padding:16px;border-radius:14px;align-items:start;grid-template-columns:52px minmax(0,1fr);gap:13px}.appointment-card__date{width:52px;height:56px;border-radius:12px}.appointment-card__date span{font-size:.6875rem;font-weight:600}.appointment-card__date strong{font-size:1.375rem}.appointment-card__body{gap:10px}.appointment-card__heading{min-width:0;gap:8px}.appointment-card__heading>div{display:grid;min-width:0;gap:4px}.appointment-card__heading h3{font-size:.9375rem;line-height:1.25}.appointment-card__clinic-label{display:block;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.appointment-card__heading>div>strong{display:none}.appointment-status{padding:3px 7px;font-size:.6875rem}.appointment-card__mobile-meta{display:grid;min-width:0;color:var(--portal-subtle);gap:7px;font-size:.75rem;line-height:1.35}.appointment-card__meta{display:none}.appointment-card__summary{margin-top:2px}.appointment-card__actions{display:grid;padding-top:0;grid-template-columns:1fr 1fr;gap:10px}.appointment-card__actions .workspace-button{min-height:40px;padding:0 12px;border-radius:7px;font-size:.75rem;white-space:nowrap}.appointment-card__actions small{grid-column:1 / -1}.appointment-card__cancel{color:var(--portal-danger)}.appointment-card--previous{align-items:start}.appointment-card--previous .appointment-card__date{grid-row:auto}.appointment-card--previous .appointment-card__body{display:grid;gap:7px}.appointment-card--previous .appointment-card__heading,.appointment-card--previous .appointment-card__mobile-meta{grid-column:auto;grid-row:auto}.appointment-card--skeleton .appointment-card__date{display:grid}.appointment-card--skeleton .appointment-card__body{display:contents}.appointment-card--skeleton .appointment-card__mobile-meta{display:block}.appointment-card--skeleton .appointment-card__actions{display:grid}}@media(prefers-reduced-motion:reduce){.appointment-skeleton-block{animation:none}}.booking-page{width:min(100%,1180px);container-type:inline-size}.booking-layout{display:grid;align-items:start;grid-template-columns:minmax(0,1fr) 310px;gap:18px}.booking-layout--skeleton{--booking-skeleton-fill: color-mix(in srgb, var(--portal-copy-warm) 18%, var(--portal-warm-muted));--booking-skeleton-fill-strong: color-mix(in srgb, var(--portal-copy-warm) 28%, var(--portal-warm-muted));pointer-events:none}.booking-layout--skeleton .booking-section,.booking-review--skeleton{background:color-mix(in srgb,var(--portal-subtle) 7%,var(--portal-card));box-shadow:none}.booking-choice--skeleton,.booking-person--skeleton,.booking-date--skeleton,.booking-slot--skeleton{border:0;background:var(--booking-skeleton-fill);box-shadow:none}.booking-skeleton-line,.booking-skeleton-chevron,.booking-slot-skeleton__clock{border:0;background:var(--booking-skeleton-fill-strong);box-shadow:none;animation:booking-skeleton-pulse 1.15s ease-in-out infinite alternate}.booking-choice--skeleton,.booking-person--skeleton,.booking-date--skeleton,.booking-slot--skeleton{cursor:default}.booking-choice--skeleton .booking-skeleton-line:last-child{margin-top:4px}.booking-person--skeleton .booking-person__avatar{border:0;background:var(--booking-skeleton-fill-strong);box-shadow:none;animation:booking-skeleton-pulse 1.15s ease-in-out infinite alternate}.booking-person--skeleton>span:nth-child(2){gap:8px}.booking-skeleton-line{display:block;max-width:100%;border-radius:999px}.booking-skeleton-chevron{display:block;width:16px;height:16px;border-radius:5px}.booking-date--skeleton{align-content:center;gap:7px}.booking-date--skeleton .booking-skeleton-line{margin-inline:auto}.booking-slot--skeleton{display:grid;min-height:62px;align-content:center;justify-items:center;gap:7px}.booking-slot--skeleton>.booking-skeleton-line{margin-inline:auto}.booking-slot-skeleton__time{display:flex;width:100%;align-items:center;justify-content:center;gap:6px}.booking-slot-skeleton__clock{width:14px;height:14px;border-radius:999px}.booking-availability-skeleton{display:grid;--booking-skeleton-fill: color-mix(in srgb, var(--portal-copy-warm) 18%, var(--portal-warm-muted));--booking-skeleton-fill-strong: color-mix(in srgb, var(--portal-copy-warm) 28%, var(--portal-warm-muted))}.booking-review--skeleton{min-height:330px;align-content:start}.booking-review-skeleton__details{display:grid;padding:8px 0;gap:16px}@keyframes booking-skeleton-pulse{0%{opacity:.58}to{opacity:1}}.booking-origin-cue{display:flex;padding:10px 12px;border:1px solid color-mix(in srgb,var(--portal-primary) 18%,transparent);border-radius:11px;color:var(--portal-subtle);background:color-mix(in srgb,var(--portal-primary) 6%,transparent);align-items:center;gap:8px;font-size:.8125rem;line-height:1.4}.booking-origin-cue .dentio-icon{flex:0 0 auto;color:var(--portal-primary)}.booking-origin-cue strong{color:var(--portal-text)}.booking-layout>*,.booking-form,.booking-section,.booking-section>div,.booking-slots,.booking-slot{min-width:0}.booking-form{display:grid;gap:15px}.booking-original{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:13px}.booking-original>span{display:grid;width:48px;height:48px;border-radius:13px;color:var(--portal-primary);background:color-mix(in srgb,var(--portal-primary) 13%,transparent);place-items:center}.booking-original>div{display:grid;gap:3px}.booking-original h2{font-family:inherit;font-size:1.125rem;font-weight:600}.booking-original p:not(.workspace-eyebrow){color:var(--portal-subtle)}.booking-section{display:grid;gap:18px}.booking-section>header{display:flex;align-items:center;gap:10px}.booking-section>header>span{display:grid;width:27px;height:27px;border-radius:999px;color:var(--portal-white);background:var(--portal-primary);place-items:center;font-size:.75rem;font-weight:600}.booking-section>header h2,.booking-review h2{font-family:inherit;font-size:1.25rem;font-weight:600}.booking-type-grid{display:grid;grid-template-columns:1fr;gap:10px}.booking-choice{position:relative;display:grid;min-height:84px;padding:14px 16px;border:1px solid var(--portal-border);border-radius:14px;color:var(--portal-text);background:var(--portal-white);align-content:center;gap:4px;cursor:pointer;font:inherit;text-align:left}.booking-choice--selected,.booking-person--selected{border-color:var(--portal-primary);background:color-mix(in srgb,var(--portal-primary) 7%,transparent);box-shadow:0 0 0 3px color-mix(in srgb,var(--portal-primary) 12%,transparent)}.booking-choice strong{font-size:1rem}.booking-choice small,.booking-choice>span:last-child,.booking-person small,.booking-review>small{color:var(--portal-subtle);line-height:1.4}.booking-choice>span:last-child{margin-top:0;padding-top:2px;font-size:.75rem;font-weight:600}.booking-practitioners{display:grid;gap:8px}.booking-person{display:grid;min-height:68px;padding:10px 12px;border:1px solid var(--portal-border);border-radius:13px;color:var(--portal-text);background:var(--portal-white);align-items:center;grid-template-columns:auto minmax(0,1fr) auto;gap:11px;cursor:pointer;font:inherit;text-align:left}.booking-person__avatar{display:grid;width:42px;height:42px;border-radius:11px;color:var(--portal-white);background:var(--portal-primary);place-items:center;font-size:.8125rem;font-weight:600}.booking-person>span:nth-child(2){display:grid;gap:2px}.booking-dates{display:flex;max-width:100%;padding:4px 2px 10px;overflow-x:auto;gap:8px}.booking-date-navigation{display:flex;margin-bottom:4px;justify-content:space-between;gap:12px}.booking-date-navigation button{padding:4px 0;border:0;color:var(--portal-primary-strong);background:transparent;cursor:pointer;font:inherit;font-size:.75rem;font-weight:600}.booking-date-navigation button:disabled{color:var(--portal-subtle);cursor:default;opacity:.55}.booking-date{position:relative;display:grid;min-width:65px;min-height:78px;padding:8px;border:1px solid var(--portal-border);border-radius:13px;color:var(--portal-text);background:var(--portal-white);cursor:pointer;font:inherit;place-items:center}.booking-choice-control{position:absolute;width:1px;height:1px;overflow:hidden;opacity:0;pointer-events:none}.booking-date:has(.booking-choice-control:focus-visible),.booking-slot:has(.booking-choice-control:focus-visible){outline:3px solid var(--portal-primary-light);outline-offset:2px}.booking-date span,.booking-date small{color:var(--portal-subtle);font-size:.6875rem;text-transform:capitalize}.booking-date strong{font-size:1.375rem}.booking-date--selected,.booking-slot--selected{border-color:var(--portal-primary);color:var(--portal-white);background:var(--portal-primary)}.booking-date--selected span,.booking-date--selected small{color:color-mix(in srgb,var(--portal-white) 84%,transparent)}.booking-slots{display:grid;margin-top:8px;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.booking-no-slots{display:grid;margin-top:8px;padding:16px;border-radius:13px;background:var(--portal-muted);align-items:start;grid-template-columns:auto minmax(0,1fr);gap:12px}.booking-no-slots>span{display:grid;width:44px;height:44px;border-radius:12px;color:var(--portal-subtle);background:var(--portal-card);place-items:center}.booking-no-slots>div{display:grid;gap:4px}.booking-no-slots strong{font-size:.9375rem}.booking-no-slots small{color:var(--portal-subtle);font-size:.8125rem;line-height:1.4}.booking-no-slots__actions{display:flex;margin-top:8px;flex-wrap:wrap;gap:8px}.booking-no-slots__actions .workspace-button{min-height:38px;padding:0 12px;font-size:.8125rem}.booking-no-slots .booking-no-slots__error{color:var(--portal-danger)}.booking-slot{position:relative;display:flex;min-height:48px;padding:8px 10px;border:1px solid var(--portal-border);border-radius:10px;color:var(--portal-text);background:var(--portal-white);align-items:center;justify-content:center;flex-wrap:wrap;gap:6px;cursor:pointer;font:inherit;font-weight:600}.booking-slot.booking-slot--selected{border-color:var(--portal-primary);color:var(--portal-white);background:var(--portal-primary)}.booking-slot small{width:100%;color:inherit;font-size:.6875rem;font-weight:400;text-align:center;opacity:.76}.booking-review{position:sticky;top:24px;display:grid;padding:21px;border:1px solid color-mix(in srgb,var(--portal-primary) 30%,transparent);border-radius:18px;background:linear-gradient(145deg,var(--portal-primary-surface),var(--portal-card));gap:14px;box-shadow:0 10px 30px color-mix(in srgb,var(--portal-text) 6%,transparent)}.booking-mobile-summary-anchor,.booking-mobile-review{display:none}.booking-summary-details{display:grid;margin:0;overflow:hidden;border:1px solid var(--portal-border);border-radius:14px;background:var(--portal-card)}.booking-summary-details>div{display:grid;min-height:49px;padding:10px 12px;border-bottom:1px solid var(--portal-border);align-items:center;grid-template-columns:minmax(90px,.72fr) minmax(0,1.28fr);gap:12px}.booking-summary-details>div:last-child{border-bottom:0}.booking-summary-details dt{color:var(--portal-subtle);font-size:.8125rem;font-weight:600}.booking-summary-details dd{margin:0;color:var(--portal-text);font-size:.875rem;font-weight:600;overflow-wrap:anywhere;text-align:right}.booking-summary-details .booking-summary-details__price{min-height:54px;background:var(--portal-muted)}.booking-summary-details__price dt{color:var(--portal-text)}.booking-summary-details__price dd{font-size:1rem}.booking-payment-notice{display:grid;margin:0;padding:11px 12px;border-radius:12px;color:var(--portal-subtle);background:var(--portal-muted);gap:3px;font-size:.8125rem;line-height:1.45}.booking-payment-notice strong{color:var(--portal-text)}.booking-mobile-summary__lead{margin:0 0 14px;color:var(--portal-subtle);font-size:.875rem;line-height:1.45}.booking-mobile-summary .booking-payment-notice{margin-top:12px}.booking-success{display:grid;width:min(100%,640px);margin:30px auto;padding:38px;text-align:center;place-items:center;gap:14px}.booking-success__icon{display:grid;width:72px;height:72px;border-radius:999px;background:color-mix(in srgb,var(--portal-success) 12%,transparent);place-items:center}.booking-success h1{margin:0;color:var(--portal-ink);font-family:Syllabus,Georgia,serif;font-size:clamp(2.375rem,7vw,3.25rem);font-weight:400;line-height:1.05}.booking-success__summary{display:grid;width:100%;padding:17px;border-radius:14px;background:var(--portal-white);gap:5px}.booking-success__summary span{display:inline-flex;color:var(--portal-subtle);align-items:center;justify-content:center;gap:6px}.booking-success__actions{display:flex;justify-content:center;flex-wrap:wrap;gap:9px}@container (max-width: 860px){.booking-layout{grid-template-columns:1fr}.booking-review{position:static}}@media(max-width:560px){.booking-type-grid{grid-template-columns:1fr}.booking-slots{grid-template-columns:repeat(2,minmax(0,1fr))}.booking-success{padding:25px 18px}.booking-success__actions{display:grid;width:100%}.booking-no-slots__actions{display:grid}}@media(max-width:899px){.booking-page--has-mobile-review{padding-bottom:max(12px,env(safe-area-inset-bottom,0px))}.booking-review{display:none}.booking-step-anchor{scroll-margin-top:18px}.booking-mobile-summary-anchor{display:block;scroll-margin-top:18px}.booking-mobile-review{position:sticky;z-index:10;bottom:max(12px,env(safe-area-inset-bottom,0px));display:grid;width:100%;min-height:72px;padding:10px 12px;border:1px solid color-mix(in srgb,var(--portal-primary) 34%,transparent);border-radius:14px;background:var(--portal-card);align-items:center;grid-template-columns:minmax(0,1fr) auto;gap:12px;box-shadow:0 8px 24px color-mix(in srgb,var(--portal-text) 14%,transparent)}.booking-mobile-review>div{display:grid;min-width:0;gap:2px}.booking-mobile-review small,.booking-mobile-review strong,.booking-mobile-review span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.booking-mobile-review small{color:var(--portal-subtle)}.booking-mobile-review .workspace-button{min-width:106px}.booking-mobile-review span{color:var(--portal-danger);font-size:.75rem}}@media(prefers-reduced-motion:reduce){.booking-choice--skeleton,.booking-person--skeleton,.booking-date--skeleton,.booking-slot--skeleton,.booking-skeleton-line,.booking-skeleton-chevron,.booking-slot-skeleton__clock{animation:none}}.home-page{container-type:inline-size}.home-next{display:grid;padding:18px;border-radius:18px;gap:14px}.home-next__top{display:flex;color:var(--portal-subtle);align-items:center;justify-content:space-between;gap:10px;font-size:.8125rem;font-weight:600}.home-next__top>span{display:inline-flex;min-width:0;align-items:center;gap:6px}.home-next__top .clinic-logo{width:22px;height:22px;border:0;border-radius:7px;color:var(--portal-white);background:var(--portal-primary)}.home-next__top .clinic-logo>span{font-size:.6875rem;font-weight:600}.home-next__time h2{margin:0;color:var(--portal-text);font-family:inherit;font-size:1.5rem;font-weight:600;line-height:1.1;text-transform:capitalize}.home-next__time strong{display:block;margin-top:2px;color:var(--portal-primary-strong);font-size:1.125rem}.home-next__meta{display:grid;gap:9px;font-size:.9375rem}.home-next__meta span{display:flex;color:var(--portal-text);align-items:center;gap:10px}.home-next__meta .dentio-icon{color:var(--portal-subtle);flex:none}.home-next__actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px}.home-next__actions .workspace-button{min-height:44px}.home-next__cancel{color:var(--portal-danger)}.home-callback-card h2{margin:0;font-family:inherit;font-size:1.0625rem;font-weight:600}.home-tasks,.home-shortcuts{display:grid;gap:10px}.home-tasks>h2,.home-shortcuts>h2{margin:0;color:var(--portal-subtle);font-family:Dentio Sans,sans-serif;font-size:.75rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.home-task{display:grid;min-height:74px;padding:14px;border:1px solid var(--portal-border);border-radius:14px;color:var(--portal-text);background:var(--portal-card);align-items:center;grid-template-columns:auto minmax(0,1fr) auto;gap:13px;text-decoration:none;box-shadow:0 2px 8px color-mix(in srgb,var(--portal-text) 4%,transparent)}.home-task__icon{display:grid;width:44px;height:44px;border-radius:12px;background:color-mix(in srgb,var(--portal-primary) 12%,transparent);place-items:center}.home-task__icon--warning{background:var(--portal-warning-surface)}.home-task__icon--info{background:var(--portal-info-surface)}.home-task>span:nth-child(2){display:grid;min-width:0;gap:2px}.home-task strong{font-size:1rem;font-weight:600}.home-task small{color:var(--portal-subtle);font-size:.8125rem;line-height:1.35}.home-task b{min-height:34px;padding:0 12px;border-radius:8px;background:var(--portal-neutral-surface);align-content:center;font-size:.75rem;font-weight:600}.home-callback-card{display:grid;padding:16px;border-color:var(--portal-border);border-radius:16px;background:var(--portal-card);gap:13px}.home-callback-card__intro{display:grid;align-items:start;grid-template-columns:auto minmax(0,1fr);gap:13px}.home-callback-card__intro>div{display:grid;gap:3px}.home-callback-card__icon{display:grid;width:46px;height:46px;border-radius:13px;background:color-mix(in srgb,var(--portal-primary) 12%,transparent);place-items:center}.home-callback-card--status{border-color:color-mix(in srgb,var(--portal-primary) 25%,transparent);background:color-mix(in srgb,var(--portal-primary) 5%,transparent)}.home-callback-card--status .home-callback-card__icon{color:var(--portal-primary-strong)}.home-callback-card__icon--neutral{color:var(--portal-subtle)!important;background:var(--portal-muted)!important}.home-callback-card__icon--success{color:var(--portal-success)!important;background:color-mix(in srgb,var(--portal-success) 12%,transparent)!important}.home-callback-card__icon--warning{color:var(--portal-warning)!important;background:color-mix(in srgb,var(--portal-warning) 16%,transparent)!important}.home-callback-card p{margin:0;color:var(--portal-subtle);font-size:.875rem;line-height:1.45}.home-callback-card>.workspace-button{width:100%;min-height:48px}.home-callback-form,.home-callback-success{display:grid;gap:16px}.home-callback-topics,.home-callback-windows{display:grid;min-width:0;margin:0;padding:0;border:0;gap:8px}.home-callback-topics legend,.home-callback-windows legend{margin-bottom:8px;color:var(--portal-subtle);font-size:.75rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase}.home-callback-topics legend span{font-weight:400;letter-spacing:0;text-transform:none}.home-callback-topics>div{display:flex;flex-wrap:wrap;gap:8px}.home-callback-topics button{min-height:36px;padding:0 13px;border:1px solid var(--portal-border);border-radius:999px;color:var(--portal-text);background:var(--portal-card);cursor:pointer;font:inherit;font-size:.8125rem;font-weight:600}.home-callback-topics button[aria-pressed=true]{border-color:var(--portal-primary);color:var(--portal-primary-strong);background:color-mix(in srgb,var(--portal-primary) 9%,transparent)}.home-callback-windows>button{display:grid;width:100%;min-height:66px;padding:11px 13px;border:1px solid var(--portal-border);border-radius:13px;color:var(--portal-text);background:var(--portal-card);align-items:center;grid-template-columns:auto minmax(0,1fr) auto;gap:11px;cursor:pointer;font:inherit;text-align:left}.home-callback-windows>button[aria-pressed=true]{border-color:var(--portal-primary);background:color-mix(in srgb,var(--portal-primary) 7%,transparent)}.home-callback-windows>button>span:first-child{display:grid;width:38px;height:38px;border-radius:11px;color:var(--portal-primary-strong);background:color-mix(in srgb,var(--portal-primary) 12%,transparent);place-items:center}.home-callback-windows>button>span:nth-child(2){display:grid;gap:2px}.home-callback-windows small{color:var(--portal-subtle);font-size:.75rem}.home-callback-windows>button>.dentio-icon{color:var(--portal-primary)}.home-callback-phone{display:flex;padding:13px;border-radius:12px;color:var(--portal-subtle);background:var(--portal-muted);align-items:center;gap:11px}.home-callback-phone span{display:grid;gap:2px}.home-callback-phone small{font-size:.6875rem;font-weight:600;text-transform:uppercase}.home-callback-phone strong{color:var(--portal-text);font-size:.875rem}.home-callback-success{padding:12px 4px 2px;text-align:center;place-items:center}.home-callback-success>span{display:grid;width:62px;height:62px;border-radius:999px;color:var(--portal-success);background:color-mix(in srgb,var(--portal-success) 12%,transparent);place-items:center}.home-callback-success h3{margin:0;font-family:inherit;font-size:1.0625rem}.home-callback-success p{max-width:340px;margin:0;color:var(--portal-subtle);font-size:.875rem;line-height:1.5}.home-shortcuts__tiles{display:grid;grid-template-columns:minmax(0,1fr);gap:12px}.home-big-shortcut{display:flex;min-height:132px;padding:18px;border:1px solid var(--portal-border);border-radius:16px;color:var(--portal-text);background:var(--portal-card);align-items:flex-start;flex-direction:column;gap:12px;text-decoration:none;box-shadow:0 2px 8px color-mix(in srgb,var(--portal-text) 4%,transparent)}.home-big-shortcut>span{display:grid;width:48px;height:48px;border-radius:13px;background:color-mix(in srgb,var(--portal-primary) 12%,transparent);place-items:center}.home-big-shortcut>div{display:grid;gap:3px}.home-big-shortcut strong{font-size:1.0625rem;font-weight:600}.home-big-shortcut small{color:var(--portal-subtle);font-size:.875rem;line-height:1.35}.home-shortcuts__list{padding:6px;overflow:hidden;border:1px solid var(--portal-border);border-radius:14px;background:var(--portal-card);box-shadow:0 2px 8px color-mix(in srgb,var(--portal-text) 4%,transparent)}.home-shortcut-row{display:grid;min-height:68px;padding:14px 4px;border-bottom:1px solid var(--portal-border);color:var(--portal-text);align-items:center;grid-template-columns:40px minmax(0,1fr) auto auto;gap:14px;text-decoration:none}.home-shortcut-row--last{border-bottom:0}.home-shortcut-row__icon{display:grid;width:40px;height:40px;border-radius:11px;color:var(--portal-primary);background:color-mix(in srgb,var(--portal-primary) 10%,transparent);place-items:center}.home-shortcut-row>span:nth-child(2){display:grid;min-width:0;gap:2px}.home-shortcut-row strong{font-size:1rem;font-weight:600}.home-shortcut-row small{color:var(--portal-subtle);font-size:.8125rem;line-height:1.35}.home-shortcut-row>b{display:grid;min-width:21px;height:21px;padding:0 5px;border-radius:999px;color:var(--portal-white);background:var(--portal-primary);place-items:center;font-size:.6875rem}.home-shortcut-row>.dentio-icon{color:var(--portal-subtle)}@media(max-width:620px){.home-page{padding:20px 20px 48px}.home-task strong,.home-big-shortcut strong,.home-shortcut-row strong{font-size:.9375rem}.home-task small,.home-big-shortcut small,.home-shortcut-row small{font-size:.75rem}}@media(max-width:360px){.home-next__top>span{max-width:145px}.home-next__top>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.home-task{grid-template-columns:auto minmax(0,1fr)}.home-task>b{grid-column:2;justify-self:start}}.welcome-intro{display:grid;min-height:100dvh;color:var(--portal-text);background:linear-gradient(180deg,color-mix(in srgb,var(--portal-primary) 9%,transparent),transparent 42%),var(--portal-canvas);grid-template-rows:auto minmax(0,1fr) auto}.welcome-intro__topbar{display:flex;width:min(100%,1160px);margin:0 auto;min-height:44px;padding:14px 16px 2px;align-items:center;justify-content:space-between}.welcome-intro__topbar button,.welcome-intro__back{border:0;color:var(--portal-subtle);background:transparent;cursor:pointer;font:inherit;font-weight:600}.welcome-intro__stage{display:flex;width:min(100%,480px);margin:0 auto;padding:8px 30px 22px;align-items:center;justify-content:center;flex-direction:column;text-align:center;gap:22px}.welcome-intro__visual{position:relative;display:grid;width:196px;height:196px;background:transparent;place-items:center}.welcome-intro__visual>span{position:relative;z-index:2;display:grid;width:100%;height:100%;border-radius:44px;background:color-mix(in srgb,var(--portal-primary) 9%,var(--portal-card));place-items:center;box-shadow:0 18px 42px color-mix(in srgb,var(--portal-primary) 12%,transparent)}.welcome-intro__visual img{width:88%;height:88%;object-fit:contain}.welcome-intro__visual .dentio-icon{width:68%;height:68%}.welcome-intro__visual i,.welcome-intro__visual b{display:none}.welcome-intro__visual i{top:15%;right:-3%;width:54px;height:54px}.welcome-intro__visual b{bottom:8%;left:3%;width:32px;height:32px}.welcome-intro__copy{display:grid;gap:14px;justify-items:center}.welcome-intro__copy p{margin:0;color:var(--portal-primary-strong);font-size:.8125rem;font-weight:600;letter-spacing:.09em;text-transform:uppercase}.welcome-intro__copy h1{margin:0;color:var(--portal-ink);font-family:Dentio Sans,sans-serif;font-size:1.5625rem;font-weight:600;line-height:1.2}.welcome-intro__copy .welcome-intro__title--hero{font-family:Syllabus,Georgia,serif;font-size:2.5rem;font-weight:400;line-height:1.05}.welcome-intro__copy>span{max-width:48ch;color:var(--portal-subtle);font-size:1rem;line-height:1.5}.welcome-intro__controls{display:grid;width:min(100%,480px);margin:0 auto;padding:22px 32px 34px;gap:18px}.welcome-intro__dots{display:flex;justify-content:center;gap:7px}.welcome-intro__dot{width:8px;height:8px;border-radius:999px;background:var(--portal-primary-border);transition:width .16s ease,background .16s ease}.welcome-intro__dot--active{width:28px;background:var(--portal-primary)}.welcome-intro__controls>div:last-child{display:flex;align-items:center;justify-content:space-between}.welcome-intro__back,.welcome-intro__next{display:inline-flex;min-height:48px;padding:0 18px;border-radius:11px;align-items:center;gap:7px}.welcome-intro__next{border:0;color:var(--portal-white);background:var(--portal-primary);cursor:pointer;font:inherit;font-weight:600}@media(max-width:720px){.welcome-intro__topbar{padding:18px 20px}.welcome-intro__stage{padding:8px 30px 22px}.welcome-intro__visual{width:184px;height:184px;margin:0 auto}.welcome-intro__visual>span{width:100%;height:100%}.welcome-intro__copy{justify-items:center}.welcome-intro__copy h1{font-size:1.5625rem}.welcome-intro__copy .welcome-intro__title--hero{font-size:2.5rem}.welcome-intro__copy>span{font-size:1rem}.welcome-intro__controls{padding:18px 20px 26px}}.profile-identity-card{display:flex;align-items:center;gap:16px;padding:16px;box-shadow:0 3px 12px color-mix(in srgb,var(--portal-text) 5%,transparent)}.profile-identity-card__avatar{display:grid;width:54px;height:54px;flex:0 0 auto;border-radius:16px;color:var(--portal-white);background:var(--portal-primary);place-items:center;font-size:1.125rem;font-weight:600}.profile-identity-card>div{display:grid;gap:4px}.profile-identity-card h2{font-family:inherit;font-size:1.25rem;font-weight:600}.profile-identity-card>div>span{display:inline-flex;color:var(--portal-subtle);align-items:center;gap:6px;font-size:.875rem}.profile-section-label{color:var(--portal-primary-strong)!important;font-size:.6875rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.profile-section{display:grid;gap:11px}.profile-section>header{display:grid;gap:4px}.profile-section>header h2{margin:0;color:var(--portal-ink);font-family:inherit;color:var(--portal-subtle);font-size:.75rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.profile-section>header p{max-width:680px;margin:0;color:var(--portal-subtle);font-size:.875rem;line-height:1.5}.profile-clinic-list{display:grid;gap:9px}.profile-clinic-link{display:flex;min-height:74px;padding:12px 14px;border:1px solid var(--portal-border);border-radius:15px;color:var(--portal-text);background:var(--portal-card);align-items:center;gap:12px;text-decoration:none;transition:border-color .14s ease,box-shadow .14s ease,transform .14s ease}.profile-clinic-link:hover{border-color:color-mix(in srgb,var(--portal-primary) 48%,transparent);box-shadow:0 6px 18px color-mix(in srgb,var(--portal-text) 6%,transparent);transform:translateY(-1px);text-decoration:none}.profile-clinic-link--selected{border-color:var(--portal-primary);background:var(--portal-primary-surface);box-shadow:0 0 0 3px color-mix(in srgb,var(--portal-primary) 12%,transparent)}.profile-clinic-link__body{display:grid;min-width:0;flex:1;gap:2px}.profile-clinic-link__body>strong,.profile-clinic-link__body>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-clinic-link__body>span{color:var(--portal-subtle);font-size:.8125rem}.profile-clinic-link__body small{display:inline-flex;margin-top:3px;color:var(--portal-primary-strong);align-items:center;gap:5px;font-size:.75rem;font-weight:600}.profile-clinic-link__selected{display:inline-flex;padding:5px 9px;border-radius:999px;color:var(--portal-primary-strong);background:color-mix(in srgb,var(--portal-primary) 13%,transparent);align-items:center;gap:4px;font-size:.6875rem;font-weight:600}.profile-toggle-card,.profile-link-card{padding:5px}.profile-toggle{display:flex;width:100%;min-height:76px;padding:12px 11px;border:0;border-bottom:1px solid var(--portal-border);color:var(--portal-text);background:transparent;align-items:center;gap:12px;cursor:pointer;font:inherit;text-align:left}.profile-toggle:last-child{border-bottom:0}.profile-toggle:disabled{cursor:wait;opacity:.66}.profile-toggle__icon,.profile-info-link__icon{display:grid;width:43px;height:43px;flex:0 0 auto;border-radius:13px;color:var(--portal-subtle);background:var(--portal-muted);place-items:center}.profile-toggle__icon--active{color:var(--portal-primary-strong);background:color-mix(in srgb,var(--portal-primary) 13%,transparent)}.profile-toggle__copy{display:grid;min-width:0;flex:1;gap:2px}.profile-toggle__copy>strong{font-size:.9375rem}.profile-toggle__copy>span{color:var(--portal-subtle);font-size:.8125rem;line-height:1.4}.profile-switch{display:flex;width:48px;height:29px;padding:3px;flex:0 0 auto;border:1px solid color-mix(in srgb,var(--portal-subtle) 28%,transparent);border-radius:999px;background:var(--portal-warm-border);justify-content:flex-start;transition:background-color .16s ease}.profile-switch>span{width:21px;height:21px;border-radius:999px;background:var(--portal-white);box-shadow:0 1px 4px color-mix(in srgb,var(--portal-text) 22%,transparent);transition:transform .16s ease}.profile-switch--checked{border-color:var(--portal-primary);background:var(--portal-primary)}.profile-switch--checked>span{transform:translate(19px)}.profile-link-card{display:grid}.profile-account-card{display:grid;padding:5px}.profile-account-row{display:flex;min-height:58px;padding:11px;border-bottom:1px solid var(--portal-border);align-items:center;justify-content:space-between;gap:16px}.profile-account-row:last-child{border-bottom:0}.profile-account-row>span{color:var(--portal-subtle);font-size:.875rem}.profile-account-row>strong{text-align:right}.profile-info-link{display:flex;min-height:70px;padding:10px 11px;border-bottom:1px solid var(--portal-border);color:var(--portal-text);align-items:center;gap:12px;text-decoration:none}.profile-info-link:last-child{border-bottom:0}.profile-info-link:hover{border-radius:12px;background:var(--portal-background);text-decoration:none}.profile-info-link>span:nth-child(2){display:grid;min-width:0;flex:1;gap:2px}.profile-info-link small{color:var(--portal-subtle);font-size:.8125rem}.profile-logout-button{min-height:50px;border-color:color-mix(in srgb,var(--portal-danger) 40%,transparent);color:var(--portal-danger)}html[data-portal-large-text=true]{font-size:112%}html[data-portal-high-contrast=true]{--portal-subtle: var(--portal-high-contrast-subtle);--portal-border: var(--portal-high-contrast-border);--portal-primary: var(--portal-high-contrast-primary);--portal-primary-strong: var(--portal-high-contrast-primary-strong)}html[data-portal-high-contrast=true] .workspace-card,html[data-portal-high-contrast=true] .profile-clinic-link,html[data-portal-high-contrast=true] .workspace-button--secondary{border-width:2px}@media(max-width:560px){.profile-page{gap:19px}.profile-identity-card{padding:17px}.profile-clinic-link{padding:11px}.profile-clinic-link__selected{padding:5px;font-size:0}.profile-toggle{padding:12px 9px}.profile-toggle__icon{width:40px;height:40px}}@media(prefers-reduced-motion:reduce){.profile-clinic-link,.profile-switch,.profile-switch>span{transition:none}}.health-progress{display:grid;gap:8px}.health-progress__label{display:flex;color:var(--portal-subtle);align-items:center;justify-content:space-between;gap:14px;font-size:.8125rem}.health-progress__label strong{color:var(--portal-text);font-weight:600}.health-progress__track{height:7px;overflow:hidden;border-radius:999px;background:var(--portal-border)}.health-progress__track span{display:block;height:100%;border-radius:inherit;background:var(--portal-primary);transition:width .18s ease}.health-security-note{display:flex;padding:16px 18px;color:var(--portal-info);align-items:flex-start;gap:11px}.health-security-note .dentio-icon{flex:none;margin-top:1px}.health-security-note p{color:var(--portal-text)}.health-form{display:grid;gap:18px}.health-form__fields{display:grid;min-width:0;padding:0;margin:0;border:0;gap:18px}.health-section{display:grid;gap:20px}.health-section>h2{display:flex;font-size:1.125rem;align-items:center;gap:9px}.health-section>h2 span{display:grid;width:38px;height:38px;border-radius:11px;color:var(--portal-primary);background:color-mix(in srgb,var(--portal-primary) 12%,transparent);place-items:center}.health-section__questions{display:grid;gap:22px}.health-conditional-details{display:grid;gap:14px}.health-question,.health-category-fieldset{min-width:0;padding:0;margin:0;border:0}.health-question>legend,.health-category-fieldset>legend,.health-text-field>label{padding:0;margin-bottom:9px;color:var(--portal-text);font-size:.9375rem;font-weight:600}.health-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.health-choices--three{grid-template-columns:repeat(3,minmax(0,1fr))}.health-choice{position:relative;display:grid;min-height:48px;overflow:hidden;border:1px solid var(--portal-border);border-radius:11px;color:var(--portal-text);background:var(--portal-card);cursor:pointer;place-items:center;font-weight:600}.health-choice input{position:absolute;width:1px;height:1px;opacity:0}.health-choice--selected{border-color:var(--portal-primary);color:var(--portal-white);background:var(--portal-primary)}.health-choice:focus-within{outline:3px solid color-mix(in srgb,var(--portal-primary) 28%,transparent);outline-offset:2px}.health-question--readonly .health-choice{cursor:default}.health-question--readonly .health-choice:not(.health-choice--selected){color:var(--portal-subtle);background:var(--portal-muted)}.health-question--readonly .health-choice:focus-within{outline:0}.health-question[data-health-invalid=true] .health-choice{border-color:color-mix(in srgb,var(--portal-danger) 55%,transparent)}.health-category-fieldset{display:grid;padding:16px;border:1px solid var(--portal-border);border-radius:13px;background:var(--portal-muted);gap:13px}.health-checkboxes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px 14px}.health-category-fieldset .health-checkboxes{grid-template-columns:1fr}.health-checkboxes label{display:flex;min-height:36px;color:var(--portal-text);align-items:center;gap:9px;cursor:pointer}.health-checkboxes input{width:18px;height:18px;margin:0;accent-color:var(--portal-primary)}.health-category-fieldset--readonly label{cursor:default}.health-category-fieldset--readonly input:disabled{opacity:1}.health-text-field{display:grid;gap:7px}.health-text-field>label{margin:0}.health-text-field__control{width:100%;min-height:46px;padding:11px 12px;border:1px solid var(--portal-border);border-radius:9px;color:var(--portal-text);background:var(--portal-card);font:inherit}textarea.health-text-field__control{min-height:104px;resize:vertical}.health-text-field__control::placeholder{color:var(--portal-copy-cool-strong)}.health-text-field__control:focus{border-color:var(--portal-primary);outline:3px solid color-mix(in srgb,var(--portal-primary) 20%,transparent)}.health-text-field__control[aria-invalid=true]{border-color:var(--portal-danger)}.health-text-field__control[readonly]{color:var(--portal-text);background:var(--portal-muted);cursor:default}.health-field-error{margin:7px 0 0;color:var(--portal-danger);font-size:.8125rem;line-height:1.4}.health-form__actions{display:flex;padding:16px;border:1px solid var(--portal-border);border-radius:16px;background:var(--portal-card);box-shadow:0 12px 30px color-mix(in srgb,var(--portal-text) 7%,transparent);justify-content:flex-end;gap:10px}.health-summary{display:grid;width:100%;gap:0}.health-summary__intro{display:flex;padding-bottom:20px;align-items:flex-start;justify-content:space-between;gap:18px}.health-summary__intro>div{display:grid;gap:5px}.health-summary__intro h2,.health-summary__intro p{margin:0}.health-summary__intro h2{font-size:1.25rem}.health-summary__intro p:not(.workspace-eyebrow){color:var(--portal-subtle);font-size:.875rem}.health-summary__intro .workspace-button{flex:none}.health-section--contained{padding:22px 0;border-top:1px solid var(--portal-border)}.health-section--contained:last-child{padding-bottom:0}@media(max-width:620px){.health-progress__label{align-items:flex-start;flex-direction:column;gap:2px}.health-checkboxes{grid-template-columns:1fr}.health-form__actions{padding:12px}.health-form__actions>*{flex:1}.health-summary__intro{flex-direction:column}.health-summary__intro .workspace-button{width:100%}}@media(prefers-reduced-motion:reduce){.health-progress__track span{transition:none}}@keyframes bankid-spin{to{transform:rotate(360deg)}}@keyframes portal-skeleton-shimmer{0%{background-position:180% 0}to{background-position:-180% 0}}@keyframes portal-content-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}:is(.workspace-skeleton__shape,.appointment-skeleton-block,.booking-skeleton-line,.booking-skeleton-chevron,.booking-slot-skeleton__clock,.booking-person--skeleton .booking-person__avatar,.booking-date--skeleton,.booking-slot--skeleton,.portal-sidebar-link__skeleton-icon,.portal-sidebar-link__skeleton-label){background-image:linear-gradient(100deg,transparent 15%,color-mix(in srgb,var(--portal-white) 62%,transparent) 46%,transparent 72%);background-repeat:no-repeat;background-size:240% 100%;animation:portal-skeleton-shimmer 1.7s ease-in-out infinite}.workspace-page>*,.portal-dashboard>*,.contact-thread-page>*{animation:portal-content-enter .26s ease-out both}.workspace-page>:nth-child(2),.portal-dashboard>:nth-child(2),.contact-thread-page>:nth-child(2){animation-delay:35ms}.workspace-page>:nth-child(n+3),.portal-dashboard>:nth-child(n+3),.contact-thread-page>:nth-child(n+3){animation-delay:70ms}.workspace-button:active:not(:disabled),.login-option:active:not(:disabled){transform:scale(.985)}@media(prefers-reduced-motion:reduce){:is(.workspace-skeleton__shape,.appointment-skeleton-block,.booking-skeleton-line,.booking-skeleton-chevron,.booking-slot-skeleton__clock,.booking-person--skeleton .booking-person__avatar,.booking-date--skeleton,.booking-slot--skeleton,.portal-sidebar-link__skeleton-icon,.portal-sidebar-link__skeleton-label),.workspace-page>*,.portal-dashboard>*,.contact-thread-page>*{animation:none}.workspace-button:active:not(:disabled),.login-option:active:not(:disabled){transform:none}}
