@import "https://fonts.googleapis.com/css2?family=DM+Sans:opsz,wght@9..40,300;9..40,400;9..40,500;9..40,600;9..40,700&family=Newsreader:ital,opsz,wght@0,6..72,200..800;1,6..72,200..800&display=swap";.auth-view-page{min-height:100vh;padding-inline:var(--screen-margin);background:var(--bg-bloom);font-family:var(--font-system);color:var(--text-primary);justify-content:center;display:flex}.auth-view-shell{flex-direction:column;width:min(100%,460px);display:flex}.auth-view-card{background:0 0;flex-direction:column;width:100%;min-height:100vh;padding:0;display:flex}.auth-view-content{padding-block:var(--space-6);flex:1;grid-template-rows:1fr auto 1fr;display:grid}.auth-view-body{flex-direction:column;display:flex}.auth-view-page--password-change{box-sizing:border-box;align-items:center;padding:16px}.auth-view-page--password-change .auth-view-shell,.auth-view-page--password-change .auth-view-card{min-height:0}.auth-view-page--password-change .auth-view-card{position:relative}.auth-view-page--password-change .auth-view-content{padding:var(--space-6);flex-direction:column;display:flex}.auth-view-page--password-change .auth-view-title{font-size:var(--text-title-1);white-space:normal}.auth-view-page--password-change .auth-view-lead{margin-block:var(--space-2) var(--space-5)}@media (width>=1024px){.auth-view-content{grid-template-rows:2fr auto 1fr}}@media (width>=768px){.auth-view-shell{width:min(100%,560px)}.auth-view-title{white-space:nowrap}}.auth-view-back{align-self:flex-start}.auth-view-wordmark{place-self:center;display:block}.auth-view-title{color:var(--text-primary);margin:0;font-size:40px;line-height:1.05}.auth-view-lead{margin:6px 0 var(--space-5);font-size:var(--text-callout);color:var(--text-secondary)}.auth-view-form{gap:var(--space-5);display:grid}.auth-view-form .web-label{font-size:var(--text-subhead);line-height:var(--lh-subhead);color:var(--text-primary)}.auth-view-notice{margin-bottom:var(--space-3)}.auth-view-second-factor-dialog{border:1px solid var(--border-subtle)}.auth-view-second-factor-dialog .web-dialog-footer{margin-top:2px}.auth-view-two-columns{grid-template-columns:1fr;gap:18px;display:grid}.auth-view-input{box-sizing:border-box;border:1px solid var(--border-strong);border-radius:var(--radius-md);width:100%;min-height:44px;font-family:var(--font-system);font-size:var(--text-callout);color:var(--text-primary);background:var(--surface-card);transition:border-color var(--dur-fast) var(--ease-standard), box-shadow var(--dur-fast) var(--ease-standard);padding:11px 12px;line-height:1.4}.auth-view-input:focus-visible{border-color:var(--accent);box-shadow:0 0 0 3px var(--focus-ring);outline:0}.auth-view-form .auth-view-primary-button{margin-top:calc((var(--lh-subhead) + var(--space-2)) * .6)}.auth-view-primary-button{border-radius:var(--radius-md);background:var(--accent-commit);min-height:52px;color:var(--text-on-accent);cursor:pointer;font-weight:var(--weight-semibold);font-size:var(--text-headline);box-shadow:var(--shadow-accent);width:100%;transition:transform var(--dur-fast) var(--ease-standard), opacity var(--dur-fast) var(--ease-standard), background var(--dur-fast) var(--ease-standard);border:1px solid #0000;padding:15px 22px}.auth-view-primary-button:hover:not(:disabled){background:var(--accent-commit-hover);color:var(--accent-commit-hover-ink)}.auth-view-primary-button:active:not(:disabled),.auth-view-secondary-button:active:not(:disabled){opacity:.9;transform:scale(.97)}.auth-view-primary-button:focus-visible,.auth-view-secondary-button:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.auth-view-primary-button:disabled,.auth-view-secondary-button:disabled{cursor:default;opacity:.45}.auth-view-secondary-button{border-radius:var(--radius-md);min-height:24px;color:var(--accent);cursor:pointer;font-weight:var(--weight-semibold);font-size:var(--text-callout);background:0 0;border:1px solid #0000;width:100%;padding:4px 18px}.auth-view-secondary-button+.auth-view-secondary-button{margin-top:calc(4px - var(--space-5));color:var(--text-body-quiet);font-weight:var(--weight-semibold)}.auth-view-admin-link{min-height:32px;color:var(--text-tertiary);font-size:var(--text-caption-1);text-underline-offset:3px;justify-self:center;align-items:center;text-decoration:underline;display:inline-flex}.auth-view-admin-link:hover{color:var(--text-secondary)}.auth-view-admin-link:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.auth-view-footer{padding:20px 0 calc(28px + env(safe-area-inset-bottom,0px));color:var(--text-tertiary);font-size:var(--text-footnote);justify-content:center;align-items:center;gap:6px;display:flex}.auth-view-footer-icon{justify-content:center;align-items:center;width:14px;height:14px;display:inline-flex}@media (width>=720px){.auth-view-two-columns{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (prefers-reduced-motion:reduce){.auth-view-input,.auth-view-primary-button,.auth-view-secondary-button{transition-duration:.01ms}}.auth-view-visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.license-renewal-page{box-sizing:border-box;min-height:100dvh;padding:var(--screen-margin-block) var(--screen-margin) calc(var(--screen-margin-block-end) + env(safe-area-inset-bottom,0px));background:var(--bg-bloom);place-items:center;display:grid}.license-renewal-card{gap:clamp(24px,4vw,36px);width:min(100%,760px);padding:clamp(24px,5vw,44px);display:grid;position:relative}.license-renewal-card>.license-renewal-header{padding-right:44px}.license-renewal-header{gap:8px;max-width:620px;display:grid}.license-renewal-header .web-kicker{margin:0}.license-renewal-header h1{color:var(--text-primary);font-family:var(--font-display);font-weight:var(--display-weight);font-optical-sizing:auto;letter-spacing:var(--tracking-tight);margin:0;font-size:clamp(2rem,5vw,2.75rem);line-height:1.06}.license-renewal-header p:last-child{color:var(--text-secondary);font-size:var(--text-callout);margin:2px 0 0;line-height:1.5}.license-renewal-form,.license-renewal-status{gap:var(--space-5);display:grid}.license-jurisdiction-list{gap:var(--space-3);margin:0;padding:0;list-style:none;display:grid}.license-renewal-subhead{margin:var(--space-4) 0 0;font-size:1rem;font-weight:600}.license-jurisdiction-row{justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-4);border:1px solid var(--border-subtle,#00000014);border-radius:var(--radius-3,12px);display:flex}.license-jurisdiction-main{gap:2px;min-width:0;display:grid}.license-jurisdiction-detail{color:var(--text-muted,#666);font-size:.875rem}.license-jurisdiction-actions{align-items:center;gap:var(--space-3);flex-shrink:0;display:flex}.license-jurisdiction-add{align-items:flex-end;gap:var(--space-3);padding-top:var(--space-4);border-top:1px solid var(--border-subtle,#00000014);display:flex}.license-jurisdiction-add .license-renewal-field{flex:1}@media (width<=640px){.license-jurisdiction-row,.license-jurisdiction-add{flex-direction:column;align-items:stretch}.license-jurisdiction-actions{justify-content:space-between}}.license-renewal-fields{gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.license-renewal-field{min-width:0}.license-renewal-input{box-sizing:border-box;border:1px solid var(--border-strong);border-radius:var(--radius-md);width:100%;min-height:46px;color:var(--text-primary);background:var(--surface-card);font:inherit;padding:0 12px}.license-renewal-input:focus-visible{border-color:var(--accent);box-shadow:0 0 0 3px var(--focus-ring);outline:0}.license-renewal-upload{align-items:center;gap:var(--space-3);padding:var(--space-4);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);background:var(--surface-sunken);grid-template-columns:auto auto minmax(0,1fr);display:grid}.license-renewal-file-input{opacity:0;width:1px;height:1px;position:absolute;overflow:hidden}.license-renewal-upload-copy{gap:3px;display:grid}.license-renewal-upload-copy strong{color:var(--text-primary);font-size:var(--text-subhead)}.license-renewal-upload-copy span,.license-renewal-file-name{color:var(--text-tertiary);font-size:var(--text-footnote)}.license-renewal-upload-button{white-space:nowrap;cursor:pointer;justify-content:center;align-items:center;min-height:40px;display:inline-flex}.license-renewal-file-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.license-renewal-actions{justify-content:flex-end;gap:var(--space-3);padding-top:var(--space-2);flex-wrap:wrap;display:flex}.license-renewal-actions .web-button,.license-renewal-status .web-button{min-width:148px}@media (width<=620px){.license-renewal-page{padding:12px;display:block}.license-renewal-card{box-sizing:border-box;width:100%;min-height:calc(100dvh - 24px)}.license-renewal-fields,.license-renewal-upload{grid-template-columns:1fr}.license-renewal-upload-button{width:fit-content}.license-renewal-actions{display:grid}.license-renewal-actions .web-button,.license-renewal-status .web-button{width:100%}}:root{--slate-50:#fdfdfc;--slate-100:#fbfaf8;--slate-110:#f3f3f3;--slate-125:#ededed;--slate-150:#f1f4f7;--slate-200:#e4e9ee;--slate-300:#cbd4dc;--slate-350:#8b99a6;--slate-400:#5f6e7c;--slate-500:#52626f;--slate-600:#46586b;--slate-700:#33465a;--slate-800:#22384f;--slate-900:#16304a;--warm-50:var(--slate-50);--warm-100:var(--slate-100);--warm-150:var(--slate-150);--warm-200:var(--slate-200);--warm-300:var(--slate-300);--warm-400:var(--slate-400);--warm-500:var(--slate-500);--warm-600:var(--slate-600);--warm-700:var(--slate-700);--warm-800:var(--slate-800);--warm-900:var(--slate-900);--clay-25:#e7ece1;--clay-50:#e8f5ec;--clay-100:#cce9d6;--clay-200:#a6d8b8;--clay-300:#77c193;--clay-400:#4ea972;--clay-500:#3b9560;--clay-600:#2e7a4d;--clay-700:#245c3b;--sage-50:#e8f5ec;--sage-100:#cce9d6;--sage-200:#a6d8b8;--sage-300:#77c193;--sage-400:#4ea972;--sage-500:#348755;--sage-600:#2e7a4d;--sage-700:#245c3b;--honey-100:#f8eedd;--honey-300:#f0cfa0;--honey-400:#e0a85c;--honey-500:#c8791a;--honey-600:#a0641c;--navy-50:#eef1f6;--navy-100:#dde3ee;--navy-200:#b9c4d8;--navy-500:#2c4e75;--navy-600:#234066;--navy-700:#16304a;--navy-800:#0e2236;--teal-25:#f5f9f6;--teal-50:#e4f1ee;--teal-100:#c7e4de;--teal-125:#e2eaeb;--teal-150:#b3dade;--teal-200:#97cec4;--teal-400:#40a3ac;--teal-500:#2f9285;--teal-550:#298074;--teal-600:#257469;--teal-700:#1c574f;--teal-800:#205156;--teal-900:#10292b;--amber-500:#c8791a;--amber-100:#fbf0e2;--green-500:#2e7a4d;--green-100:#cce9d6;--red-500:#c0392b;--red-100:#fbeeec;--bg-app:#f2f8f4;--bg-grouped:var(--bg-app);--surface-card:#fff;--surface-raised:#fff;--surface-sunken:var(--slate-100);--surface-selected:#edefeb;--bg-bloom:radial-gradient(52% 34% at 92% 0%, #2f928538, transparent 66%), radial-gradient(46% 30% at 4% 28%, #3b95601a, transparent 70%), radial-gradient(58% 32% at 72% 100%, #a6d8b842, transparent 68%), var(--bg-app);--card-ring:0 0 0 1px #16304a0d;--surface-nav:#ffffffd9;--scrim:#0e223675;--gradient-header:var(--navy-700);--text-primary:var(--slate-900);--text-secondary:var(--slate-600);--text-tertiary:var(--slate-400);--text-quaternary:var(--slate-350);--text-on-accent:#fff;--text-on-header:var(--slate-100);--text-link:var(--accent-invite);--text-emphasis:var(--teal-400);--text-body-quiet:#797c7a;--hairline:#16304a14;--hairline-neutral:#0000001f;--border-subtle:var(--hairline);--border-strong:#16304a24;--separator:var(--hairline);--accent:var(--navy-700);--accent-hover:var(--navy-600);--accent-pressed:var(--navy-800);--accent-soft:var(--navy-100);--accent-soft-2:#ccd5e4;--focus-ring:#16304a47;--accent-ink:var(--navy-700);--accent-commit:var(--teal-900);--accent-commit-hover:#e5ebe7;--accent-commit-hover-ink:var(--accent-commit);--accent-commit-pressed:#d5ded9;--accent-commit-pressed-ink:var(--accent-commit);--accent-invite:var(--teal-600);--accent-invite-hover:var(--teal-550);--accent-invite-pressed:var(--teal-700);--accent-invite-soft:var(--teal-50);--accent-teal:var(--teal-500);--accent-teal-soft:var(--teal-50);--accent-2:var(--honey-500);--accent-2-soft:var(--amber-100);--success:var(--clay-500);--success-soft:var(--clay-50);--warning:var(--amber-500);--warning-soft:var(--amber-100);--danger:var(--red-500);--danger-soft:var(--red-100);--text-error:#6c0300;--info:var(--teal-500);--info-soft:var(--teal-50);--fill-primary:#16304a0d;--fill-secondary:#16304a17;--fill-tertiary:#16304a09;--credit-available:#398517;--credit-available-soft:var(--clay-50);--credit-in-use:var(--teal-500);--credit-in-use-soft:var(--teal-50);--credit-needs-review:var(--honey-500);--credit-needs-review-soft:var(--amber-100);--credit-spent:var(--slate-400);--credit-spent-soft:var(--slate-150);--credit-issue:var(--red-500);--credit-issue-soft:var(--red-100);--credit-hostage:var(--navy-500);--credit-hostage-soft:var(--navy-50);--font-system:"DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, "Helvetica Neue", Arial, sans-serif;--font-display:"Newsreader", Georgia, serif;--font-mono:ui-monospace, "SF Mono", "SFMono-Regular", Menlo, Consolas, monospace;--display-weight:600;--weight-light:300;--weight-regular:400;--weight-medium:500;--weight-semibold:600;--weight-bold:700;--text-large-title:34px;--lh-large-title:41px;--text-title-1:28px;--lh-title-1:34px;--text-title-2:22px;--lh-title-2:28px;--text-title-3:20px;--lh-title-3:25px;--text-headline:17px;--lh-headline:22px;--text-body:17px;--lh-body:22px;--text-callout:16px;--lh-callout:21px;--text-subhead:15px;--lh-subhead:20px;--text-footnote:13px;--lh-footnote:18px;--text-caption-1:12px;--lh-caption-1:16px;--text-caption-2:11px;--lh-caption-2:13px;--text-display-xl:56px;--lh-display-xl:60px;--text-display-lg:44px;--lh-display-lg:48px;--text-display-md:32px;--lh-display-md:38px;--text-display-sm:26px;--lh-display-sm:32px;--tracking-tight:-.02em;--tracking-snug:-.01em;--tracking-normal:0;--tracking-wide:.02em;--tracking-caps:.06em;--space-0:0;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-7:32px;--space-8:40px;--space-9:48px;--space-10:64px;--space-11:80px;--space-12:96px;--radius-xs:6px;--radius-sm:11px;--radius-md:13px;--radius-lg:16px;--radius-xl:20px;--radius-2xl:24px;--radius-3xl:28px;--radius-full:999px;--shadow-xs:0 1px 2px #16304a0f;--shadow-sm:0 1px 3px #16304a14, 0 1px 2px #16304a0a;--shadow-card:var(--card-ring);--shadow-raised:0 10px 34px #16304a29, 0 2px 6px #16304a0f;--shadow-popover:0 8px 30px #16304a2e, 0 4px 10px #16304a14;--shadow-accent:var(--shadow-commit);--shadow-nav:var(--glass-bar-shadow);--shadow-header:0 10px 30px #16304a38;--shadow-inset:inset 0 1px 2px #16304a0f;--blur-nav:saturate(180%) blur(20px);--blur-thin:saturate(160%) blur(10px);--ease-ios:cubic-bezier(.32, .72, 0, 1);--ease-standard:cubic-bezier(.4, 0, .2, 1);--ease-out:cubic-bezier(0, 0, .2, 1);--ease-bounce:cubic-bezier(.34, 1.56, .64, 1);--dur-fast:.15s;--dur:.25s;--dur-normal:var(--dur);--dur-slow:.4s;--dur-bounce:.42s;--dur-enter:2.4s;--ease-enter:cubic-bezier(.22, .61, .36, 1);--enter-stagger:.24s;--screen-margin:var(--space-7);--screen-margin-block:var(--space-8);--screen-margin-block-end:var(--space-10);--tap-target:44px;--nav-height:44px;--tabbar-height:49px;--content-max:1200px}@media (width>=1024px){:root{--screen-margin:var(--space-9);--screen-margin-block:var(--space-6);--screen-margin-block-end:var(--space-7)}}@media (width>=1600px){:root{--screen-margin:56px;--screen-margin-block:var(--space-7);--screen-margin-block-end:var(--space-8)}}:root{--radius-commit:13px;--shadow-commit:0 6px 16px -6px #16304a73;--radius-invite:var(--radius-full);--shadow-invite:0 8px 20px -8px #25746980;--glass-bg:#ffffff94;--glass-blur:saturate(180%) blur(14px);--glass-radius:var(--radius-full);--glass-shadow:inset 0 0 0 1px #16304a1a, 0 2px 8px -4px #16304a29;--glass-bar-bg:linear-gradient(180deg, #ffffffb8, #ffffff8a);--glass-bar-blur:saturate(200%) blur(26px);--glass-bar-radius:29px;--glass-bar-shadow:inset 0 1px 0 #ffffffeb, inset 0 0 0 1px #16304a0f, 0 12px 32px -12px #16304a5c;--lens-bg:linear-gradient(180deg, #fffffffa, #ffffffa8);--lens-radius:23px;--lens-inset:6px;--lens-shadow:inset 0 1.5px .5px #fff, inset 0 -1.5px 1px #ffffff80, inset 0 0 0 1px #16304a12, 0 3px 10px -3px #16304a38;--lens-dur:.56s;--lens-ease:cubic-bezier(.32, 1.34, .36, 1);--press-scale:.955}.t-glass{background:var(--glass-bg);-webkit-backdrop-filter:var(--glass-blur);border-radius:var(--glass-radius);box-shadow:var(--glass-shadow);border:none}.t-glass-bar{background:var(--glass-bar-bg);-webkit-backdrop-filter:var(--glass-bar-blur);border-radius:var(--glass-bar-radius);box-shadow:var(--glass-bar-shadow);isolation:isolate;overflow:hidden}.t-lens{top:var(--lens-inset);bottom:var(--lens-inset);left:calc(var(--lens-inset) + 2px);width:var(--cell,calc((100% - 16px) / var(--tabs,4)));border-radius:var(--lens-radius);background:var(--lens-bg);box-shadow:var(--lens-shadow);transform:translateX(calc(var(--i,0) * var(--cell,calc((100% - 16px) / var(--tabs,4)))));transition:transform var(--lens-dur) var(--lens-ease);pointer-events:none;position:absolute}@media (prefers-reduced-motion:reduce){.t-lens{transition-duration:1ms}}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{min-height:100vh;font-family:var(--font-system);font-size:var(--text-body);line-height:var(--lh-body);color:var(--text-primary);background:var(--bg-bloom);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;background-attachment:fixed;margin:0}.t-large-title{font-size:var(--text-large-title);line-height:var(--lh-large-title);font-weight:var(--weight-bold);letter-spacing:var(--tracking-tight)}.t-title-1{font-size:var(--text-title-1);line-height:var(--lh-title-1);font-weight:var(--weight-bold);letter-spacing:var(--tracking-snug)}.t-title-2{font-size:var(--text-title-2);line-height:var(--lh-title-2);font-weight:var(--weight-bold);letter-spacing:var(--tracking-snug)}.t-title-3{font-size:var(--text-title-3);line-height:var(--lh-title-3);font-weight:var(--weight-semibold)}.t-headline{font-size:var(--text-headline);line-height:var(--lh-headline);font-weight:var(--weight-semibold)}.t-body{font-size:var(--text-body);line-height:var(--lh-body);font-weight:var(--weight-regular)}.t-callout{font-size:var(--text-callout);line-height:var(--lh-callout);font-weight:var(--weight-regular)}.t-subhead{font-size:var(--text-subhead);line-height:var(--lh-subhead);font-weight:var(--weight-regular)}.t-footnote{font-size:var(--text-footnote);line-height:var(--lh-footnote);font-weight:var(--weight-regular)}.t-caption{font-size:var(--text-caption-1);line-height:var(--lh-caption-1);font-weight:var(--weight-regular)}.t-display{font-family:var(--font-display);font-weight:var(--display-weight);font-optical-sizing:auto;letter-spacing:var(--tracking-snug)}.t-display em{font-style:italic;font-weight:inherit;color:var(--text-emphasis)}.t-eyebrow{font-size:var(--text-caption-1);line-height:var(--lh-caption-1);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--text-tertiary)}::selection{background:var(--honey-100);color:var(--slate-900)}@keyframes imc-spin{to{transform:rotate(360deg)}}.t-enter{animation:imc-fade-in var(--dur-enter) var(--ease-enter) both;animation-delay:calc(var(--enter-i,0) * var(--enter-stagger))}.t-enter-group>*{animation:imc-fade-in var(--dur-enter) var(--ease-enter) both}.t-enter-group>:first-child{animation-delay:0s}.t-enter-group>:nth-child(2){animation-delay:calc(1 * var(--enter-stagger))}.t-enter-group>:nth-child(3){animation-delay:calc(2 * var(--enter-stagger))}.t-enter-group>:nth-child(4){animation-delay:calc(3 * var(--enter-stagger))}.t-enter-group>:nth-child(5){animation-delay:calc(4 * var(--enter-stagger))}.t-enter-group>:nth-child(n+6){animation-delay:calc(5 * var(--enter-stagger))}html.fonts-pending .t-enter,html.fonts-pending .t-enter-group>*{animation-play-state:paused}@media (prefers-reduced-motion:reduce){.t-enter,.t-enter-group>*{animation:none}}@keyframes imc-fade-in{0%{opacity:0}to{opacity:1}}@keyframes imc-sheet-up{0%{opacity:0;transform:translateY(8%)}to{opacity:1;transform:translateY(0)}}@keyframes imc-wave{0%{transform:scaleY(.5)}to{transform:scaleY(1.6)}}@keyframes imc-ring{0%{opacity:.55;transform:scale(.72)}to{opacity:0;transform:scale(1.25)}}@keyframes imc-pop{0%{opacity:0;transform:scale(.4)}55%{opacity:1;transform:scale(1.18)}to{opacity:1;transform:scale(1)}}#root{min-height:100vh}button,input,select,textarea{font:inherit}a{color:inherit}.web-shell{max-width:1180px;padding:var(--space-7) var(--space-5) var(--space-12);margin:0 auto}.web-shell.web-mobile-shell{--web-mobile-gutter:calc(var(--screen-margin) / 2);--web-tabbar-offset:28px;--web-mobile-bottom:calc(90px + env(safe-area-inset-bottom,0px));--mobile-dashboard-content-inline:16px;--mobile-dashboard-content-top:6px;--mobile-dashboard-content-bottom:20px;--mobile-dashboard-header-inline:18px;max-width:430px;min-height:100dvh;padding:var(--space-2) var(--web-mobile-gutter) var(--web-mobile-bottom)}.web-auth-page{min-height:100vh;padding:var(--space-6);background:var(--bg-bloom);background-attachment:fixed;place-items:center;display:grid}.web-auth-shell{border:1px solid var(--border-subtle);border-radius:var(--radius-3xl);background:var(--surface-card);width:min(100%,1080px);box-shadow:var(--shadow-raised);grid-template-columns:minmax(0,1fr) minmax(340px,440px);display:grid;overflow:hidden}.web-auth-hero{padding:var(--space-6);background:var(--surface-card);color:var(--text-primary)}.web-auth-card{background:var(--surface-card)}.web-auth-tabs{border-radius:var(--radius-full);background:var(--warm-150);gap:4px;padding:4px;display:inline-flex}.web-hero{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:28px;display:flex}.web-kicker{color:var(--text-tertiary);font-size:var(--text-caption-1);letter-spacing:var(--tracking-caps);text-transform:uppercase;margin:0 0 2px}.web-title{font-family:var(--font-display);font-weight:var(--display-weight);font-optical-sizing:auto;color:var(--text-primary);letter-spacing:var(--tracking-tight);margin:0;font-size:clamp(2.1rem,4vw,3.2rem);line-height:1.02}.web-lead{max-width:720px;color:var(--text-secondary);font-size:var(--text-body);margin:10px 0 0;line-height:1.6}.web-grid{gap:18px;display:grid}.web-grid.hero-layout{grid-template-columns:minmax(0,1.24fr) minmax(300px,.76fr);align-items:start}.web-grid.two-up{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.web-grid.three-up{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.web-card{background:var(--surface-card);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:var(--space-5)}.web-mobile-shell .web-card{border-radius:var(--radius-xl);padding:var(--space-4)}.web-shell.web-mobile-shell.client-dashboard-shell{padding-right:calc(var(--web-mobile-gutter) + var(--mobile-dashboard-content-inline));padding-bottom:calc(var(--web-mobile-bottom) + var(--mobile-dashboard-content-bottom));padding-left:calc(var(--web-mobile-gutter) + var(--mobile-dashboard-content-inline))}.mobile-dashboard-header{padding:14px var(--mobile-dashboard-header-inline) 8px}.client-header{margin:0 calc(0px - var(--mobile-dashboard-content-inline)) var(--mobile-dashboard-content-top)}.client-header-top{justify-content:space-between;align-items:center;min-height:36px;display:flex}.client-brand,.client-profile-avatar{color:var(--accent);cursor:pointer;background:0 0;border:0;padding:0}.client-brand{place-items:center start;width:98px;height:34px;display:grid;position:relative}.client-brand img{object-fit:contain;object-position:left center;width:82px;height:28px;transition:opacity var(--dur-fast) var(--ease-ios), transform var(--dur-fast) var(--ease-ios)}.client-profile-avatar .web-avatar{width:36px;height:36px}.client-profile-avatar-icon svg{stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:22px;height:22px}.client-header-titles{margin-top:var(--space-2)}.web-card.raised{box-shadow:var(--shadow-raised);border-radius:var(--radius-xl)}.web-card.sage{background:var(--clay-50)}.web-card.honey{background:var(--honey-100)}.web-card.teal{background:var(--accent-teal-soft)}.web-card.sunken{background:var(--surface-sunken);box-shadow:var(--shadow-inset)}.web-focal-card{border:1px solid var(--border-subtle);border-radius:var(--radius-xl);background:var(--surface-card);box-shadow:var(--shadow-card);padding:0;overflow:hidden}.web-focal-band{border-bottom:1px solid var(--separator);background:var(--accent-soft);padding:20px}.web-display-date{font-family:var(--font-display);font-weight:var(--display-weight);font-optical-sizing:auto;font-size:var(--text-title-1);line-height:var(--lh-title-1);color:var(--text-primary);letter-spacing:var(--tracking-tight)}.web-card-title{font-size:var(--text-title-3);margin:0;font-weight:600}.web-card-copy{color:var(--text-secondary);margin:8px 0 0;line-height:1.45}.web-pill{border-radius:var(--radius-full);min-height:30px;font-size:var(--text-footnote);white-space:nowrap;align-items:center;gap:6px;padding:0 12px;font-weight:600;display:inline-flex}.web-pill.neutral{background:var(--fill-secondary);color:var(--text-secondary)}.web-pill.warn{background:var(--warning-soft);color:var(--honey-600)}.web-pill.ok{background:var(--success-soft);color:var(--sage-700)}.web-pill.danger{background:var(--danger-soft);color:var(--danger)}.web-pill.info{background:var(--accent-teal-soft);color:var(--accent-teal)}.web-button{border-radius:var(--radius-md);background:var(--accent-commit);color:#fff;cursor:pointer;min-height:46px;box-shadow:var(--shadow-xs);transition:transform var(--dur-fast) var(--ease-standard), opacity var(--dur-fast) var(--ease-standard), background var(--dur-fast) var(--ease-standard);border:0;padding:0 16px;font-weight:600}.web-button.sm{min-height:34px;font-size:var(--text-caption-1);padding:0 12px}.web-button:focus-visible,.web-input:focus-visible,.web-select:focus-visible,.web-tab:focus-visible,.web-icon-button:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.web-button:hover{background:var(--accent-commit-hover);color:var(--accent-commit-hover-ink)}.web-button:active{opacity:.9;transform:scale(.97)}.web-button:disabled{cursor:default;opacity:.45}.web-button.secondary{border:1px solid var(--accent);color:var(--accent);background:#ffffffd6}.web-button.ghost{border:1px solid var(--border-subtle);background:var(--surface-card);color:var(--text-primary)}.web-button.tinted{border:1px solid var(--accent-soft-2);background:var(--accent-soft);color:var(--accent-pressed)}.web-button.danger{border:1px solid color-mix(in srgb, var(--danger) 30%, transparent);background:var(--surface-card);color:var(--text-error)}.web-button.danger-commit{background:var(--danger);color:var(--teal-25);border:1px solid #0000}.web-button.danger-commit:hover:not(:disabled){background:color-mix(in srgb, var(--danger) 88%, #000)}.web-loading-label{justify-content:center;align-items:center;gap:8px;display:inline-flex}.web-spinner{box-sizing:border-box;border:2px solid;border-right-color:#0000;border-radius:50%;flex:0 0 16px;width:16px;height:16px;animation:.75s linear infinite web-spinner-rotate}.web-checkbox-field{min-height:var(--tap-target);color:var(--text-secondary);font-size:var(--text-subhead);cursor:pointer;align-items:flex-start;gap:10px;line-height:1.4;display:flex}.web-checkbox-field input{width:20px;height:20px;accent-color:var(--accent);flex:0 0 20px;margin:1px 0 0}.web-checkbox-field input:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.web-checkbox-field:has(input:disabled){cursor:default;opacity:.5}.web-stack{gap:12px;display:grid}.web-list-group{border:1px solid var(--border-subtle);border-radius:var(--radius-xl);background:var(--surface-card);box-shadow:var(--shadow-card);overflow:hidden}.web-list-row{min-height:var(--tap-target);border-top:1px solid var(--separator);justify-content:space-between;align-items:center;gap:14px;padding:14px 16px;display:flex}.web-list-row:first-child{border-top:0}a.web-list-row{color:inherit;text-decoration:none}a.web-list-row:hover{background:var(--fill-tertiary,#0f172a0a)}.web-list-main{flex:auto;gap:3px;min-width:0;display:grid}.web-list-row-actions{flex:none;gap:8px;display:flex}.web-list-main>strong,.web-data-row strong{overflow-wrap:anywhere}.client-list-action{width:100%;color:var(--text-primary);text-align:left;cursor:pointer;font:inherit;transition:background var(--dur-fast) var(--ease-standard);background:0 0;border-bottom:0;border-left:0;border-right:0}.client-list-action:hover{background:var(--fill-tertiary)}.client-list-action:active{background:var(--fill-secondary)}.client-row-icon{border-radius:var(--radius-sm);background:var(--surface-selected);width:38px;height:38px;color:var(--accent-pressed);flex:none;place-items:center;display:inline-grid}.client-row-icon svg{stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:20px;height:20px}.client-first-step-card{border-color:color-mix(in srgb, var(--warning) 20%, transparent)}.client-first-step-card .web-kicker{color:var(--honey-600)}.client-disclosure{color:var(--text-tertiary);font-size:26px;font-weight:var(--weight-regular);line-height:1}.web-avatar{background:var(--clay-50);width:44px;height:44px;color:var(--clay-700);border-radius:50%;flex:none;place-items:center;font-weight:700;display:inline-grid}.web-stat-grid{grid-template-columns:repeat(auto-fit,minmax(132px,1fr));gap:10px;display:grid}.web-stat-tile{border-radius:var(--radius-lg);background:var(--warm-50);border:0;padding:14px}.web-stat-value{font-family:var(--font-display);font-weight:var(--display-weight);font-optical-sizing:auto;margin-top:6px;font-size:2rem;line-height:1;display:block}.web-tabbar{left:50%;bottom:calc(var(--web-tabbar-offset,14px) + env(safe-area-inset-bottom,0px));z-index:60;background:var(--surface-nav);-webkit-backdrop-filter:var(--blur-nav);border:1px solid var(--border-subtle);border-radius:var(--radius-2xl);box-shadow:var(--shadow-nav), inset 0 1px 0 #fff9;gap:2px;padding:7px 8px;display:flex;position:fixed;transform:translate(-50%)}.web-mobile-shell .web-tabbar{justify-content:space-between;width:min(358px,100vw - 32px)}.web-tab{min-width:44px;min-height:44px;color:var(--text-tertiary);cursor:pointer;font-size:10px;font-weight:var(--weight-medium);letter-spacing:.01em;background:0 0;border:0;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;gap:3px;padding:6px 18px;display:flex;position:relative}.web-mobile-shell .web-tab{flex:1;padding:6px 8px}.web-tab.active{color:var(--accent);font-weight:var(--weight-semibold)}.web-tab-icon{transition:transform var(--dur-bounce) var(--ease-bounce);display:inline-flex;transform:scale(1)}.web-tab.active .web-tab-icon{transform:scale(1.14)}.web-tab-badge{border:2px solid var(--surface-nav);border-radius:var(--radius-full);background:var(--accent-2);min-width:17px;height:17px;color:var(--warm-50);font-size:9px;font-weight:var(--weight-bold);place-items:center;padding:0 4px;line-height:1;display:inline-grid;position:absolute;top:3px;right:max(6px,50% - 24px)}@keyframes web-spinner-rotate{to{transform:rotate(360deg)}}.web-segmented{background:var(--fill-secondary);border-radius:var(--radius-sm);gap:3px;padding:3px;display:grid;position:relative}.web-segmented-thumb{background:var(--surface-card);border-radius:calc(var(--radius-sm) - 2px);box-shadow:var(--shadow-xs);transition:left var(--dur-bounce) var(--ease-bounce), width var(--dur-bounce) var(--ease-bounce);position:absolute;top:3px;bottom:3px}.web-segmented-btn{z-index:1;color:var(--text-secondary);--seg-inset:5px;min-width:0;padding:7px var(--seg-inset);font-size:var(--text-subhead);line-height:1.2;font-weight:var(--weight-medium);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;gap:6px;display:flex;position:relative}.web-segmented-label{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.web-segmented-count{border-radius:var(--radius-full);background:var(--accent-soft);min-width:20px;color:var(--accent-pressed);font-size:var(--text-caption-2);white-space:nowrap;flex:none;padding:2px 6px;line-height:1}.web-segmented-btn.active{color:var(--accent);font-weight:var(--weight-semibold);--seg-inset:var(--space-3);overflow:visible}.web-segmented-btn:last-child{padding-left:calc(var(--seg-inset) + 4px)}.web-segmented-btn.active .web-segmented-label{text-overflow:clip;flex:none;overflow:visible}.thdr-top{align-items:center;gap:11px;min-height:30px;display:flex}.thdr-morph,.thdr-av{color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;padding:0}.thdr-morph{flex:1;align-items:center;height:30px;display:flex}.thdr-wm{object-fit:contain;object-position:left center;width:82px;height:28px}.thdr-av{flex-shrink:0}.thdr-av .web-avatar{width:34px;height:34px;font-size:var(--text-footnote)}.thdr-titles{margin-top:12px}.thdr-eyebrow{font-size:var(--text-footnote);color:var(--text-tertiary);margin-bottom:1px;font-weight:500}.thdr-ttl{font-family:var(--font-display);font-weight:var(--display-weight);font-optical-sizing:auto;letter-spacing:-.015em;color:var(--text-primary);font-size:30px;line-height:1.1}.web-date-month{text-transform:uppercase;color:var(--accent-2);letter-spacing:.05em;font-size:9px;font-weight:700}.web-date-day{font-family:var(--font-display);font-weight:var(--display-weight);font-optical-sizing:auto;color:var(--clay-700);font-size:20px;line-height:1}.web-mobile-shell .web-hero{gap:10px;margin-bottom:16px}.web-mobile-shell .web-title{font-size:var(--text-title-1);line-height:var(--lh-title-1)}.web-mobile-shell .web-lead{font-size:var(--text-subhead);margin-top:8px;line-height:1.45}.web-mobile-shell .web-grid.two-up,.web-mobile-shell .web-grid.three-up,.web-mobile-shell .web-grid.hero-layout{grid-template-columns:1fr}.web-mobile-shell .web-focal-band{padding:var(--space-4)}.web-mobile-shell .web-stat-value{font-size:1.7rem}.web-mock-panel{box-shadow:none;background:#dde3ee75;border:1px dashed #16304a47}.web-check-row{color:var(--text-secondary);align-items:flex-start;gap:10px;padding:12px 0;display:flex}.web-label input[type=checkbox]{width:20px;height:20px;accent-color:var(--accent);border-radius:6px;margin:0}.client-booking-card{gap:var(--space-3);background:var(--warm-50);display:grid}.client-booking-card>.web-card-copy{margin-top:0}.client-credit-card{align-items:end;gap:var(--space-4);padding:var(--space-4);border-radius:var(--radius-lg);background:var(--surface-selected);box-shadow:var(--shadow-inset);grid-template-columns:minmax(0,.7fr) minmax(180px,1.3fr);margin-top:0;display:grid}.client-credit-balance{color:var(--accent-pressed);font-family:var(--font-mono);margin:2px 0;font-size:2.4rem;line-height:1;display:block}.client-booking-actions{gap:10px;margin-top:0;display:grid}.client-booking-actions .web-button,.client-booking-full-action{width:100%}.client-sessions-card-header>.client-booking-full-action{flex:1 0 100%}.client-quick-actions,.client-documents,.client-profile{margin-top:var(--space-4)}.client-documents{gap:var(--space-4)}.client-document-footer{color:var(--text-tertiary);font-size:var(--text-caption-1);margin:10px 4px 0;line-height:1.45}.client-consent-action{margin-top:2px}.client-consent-panel{gap:var(--space-3);padding:var(--space-4);border:1px solid var(--border-subtle);border-radius:var(--radius-xl);background:var(--surface-card);box-shadow:var(--shadow-card);display:grid}.client-consent-panel.is-pending{background:var(--warning-soft);border-color:#c8791a33}.client-consent-panel.is-signed{background:var(--success-soft)}.client-consent-heading{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.client-consent-body{gap:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--separator);display:grid}.client-consent-checkbox{padding:0}.client-profile-header{padding:var(--space-3) 0 var(--space-4);text-align:center;justify-items:center;gap:8px;display:grid}.client-profile-header .web-avatar{width:72px;height:72px;font-size:var(--text-title-2);box-shadow:0 0 0 8px var(--clay-50);margin-bottom:12px}.client-profile-header h2,.client-profile-header p{margin:0}.client-profile-header h2{font-family:var(--font-display);font-weight:var(--display-weight);font-optical-sizing:auto;font-size:var(--text-title-1)}.client-profile-header p{color:var(--text-tertiary);font-size:var(--text-footnote)}.client-profile-header .web-card-copy{font-size:calc(var(--text-footnote) * 1.2)}.therapist-portal{box-shadow:none;background:0 0;border:0;overflow:hidden}.mobile-dashboard-content{padding:var(--mobile-dashboard-content-top) var(--mobile-dashboard-content-inline) var(--mobile-dashboard-content-bottom)}.therapist-session-row{border-color:var(--border-subtle);box-shadow:var(--shadow-xs);padding:14px}.therapist-session-actions{flex-wrap:wrap;gap:8px;min-width:0;margin-top:12px;display:flex}.therapist-session-actions>.web-button{flex:132px;min-width:0}.therapist-session-actions>.web-muted{flex:100%}.therapist-history-session{padding:0;overflow:hidden}.web-mobile-shell .therapist-history-session{padding:0}.therapist-history-session-trigger{width:100%;padding:var(--space-4);color:inherit;cursor:pointer;font:inherit;text-align:left;background:0 0;border:0}.therapist-history-session.selected{border-color:var(--accent)}.therapist-history-session-trigger:focus-visible{outline:3px solid var(--accent-teal-soft);outline-offset:-3px}.therapist-history-detail{padding:var(--space-4);border-top:1px solid var(--separator);background:var(--surface-sunken)}.therapist-session-live{color:var(--success);font-size:var(--text-caption-1);font-weight:var(--weight-bold);align-items:center;gap:8px;margin-bottom:10px;display:flex}.therapist-session-live .therapist-live-dot{animation:1.2s ease-in-out infinite therapist-pulse}.therapist-schedule-content{gap:var(--space-4);display:grid}.therapist-schedule-content[hidden]{display:none}.therapist-notification-carousel{border:1px solid color-mix(in srgb, var(--teal-600) 22%, transparent);border-radius:var(--radius-xl);background:var(--teal-100);color:var(--teal-600);gap:9px;margin-top:12px;padding:14px 16px 23px;display:grid}.therapist-notification-carousel.warning{border-color:color-mix(in srgb, var(--warning) 22%, transparent);background:var(--honey-100);color:var(--warning)}.therapist-notification-carousel.danger{border-color:color-mix(in srgb, var(--danger) 22%, transparent);background:var(--red-100);color:var(--danger)}.therapist-notification-carousel-slide{touch-action:pan-y;align-items:flex-start;gap:11px;display:flex}.therapist-notification-icon,.therapist-availability-guidance>span{width:18px;height:18px;font-family:var(--font-serif);border:1.5px solid;border-radius:50%;flex:0 0 18px;place-items:center;margin-top:2px;font-size:12px;font-weight:700;line-height:1;display:inline-grid}.therapist-notification-copy{gap:3px;min-width:0;display:grid}.therapist-notification-copy strong{color:var(--text-primary);font-size:var(--text-footnote)}.therapist-notification-copy p{color:var(--text-secondary);font-size:var(--text-footnote);margin:0;line-height:1.45}.therapist-notification-copy button{width:fit-content;color:var(--text-primary);cursor:pointer;font:inherit;font-size:var(--text-footnote);background:0 0;border:0;border-bottom:1px solid;margin:5px 0 0;padding:0;font-weight:700}.therapist-notification-copy button:focus-visible,.therapist-notification-dots button:focus-visible{outline:3px solid var(--focus-ring);outline-offset:3px}.therapist-notification-dots{justify-content:center;gap:6px;display:flex}.therapist-notification-dots button{border-radius:var(--radius-full);background:color-mix(in srgb, currentColor 28%, transparent);cursor:pointer;border:0;width:6px;height:6px;padding:0}.therapist-notification-dots button.active{background:currentColor;width:18px}.therapist-patient-identity{align-items:center;gap:10px;min-width:0;display:flex}.therapist-softphone{border:1px solid var(--border-subtle);border-radius:var(--radius-xl);background:var(--surface-card);box-shadow:var(--shadow-raised);gap:20px;padding:22px 18px;display:grid}.therapist-softphone-fullscreen{min-height:100dvh;box-shadow:none;background:var(--bg-bloom);border:0;border-radius:0;grid-template-rows:auto minmax(0,1fr) auto;gap:0;padding:0}.therapist-softphone-header{align-items:center;gap:var(--space-3);min-height:64px;padding:calc(var(--space-4) + env(safe-area-inset-top)) var(--screen-margin) var(--space-4);background:var(--accent);color:var(--text-on-accent);grid-template-columns:1fr auto 1fr;display:grid}.therapist-softphone-header h1{align-items:center;gap:var(--space-2);font-size:var(--text-body);font-weight:var(--weight-semibold);margin:0;display:flex}.therapist-softphone-header .therapist-minimize-call{color:var(--text-on-accent);border-color:color-mix(in srgb, var(--text-on-accent) 35%, transparent);background:0 0;justify-self:end}.therapist-softphone-header-live{align-items:center;gap:var(--space-2);font-size:var(--text-footnote);display:inline-flex}.therapist-softphone-stage{align-content:center;justify-items:center;gap:var(--space-4);width:min(100%,520px);padding-inline:var(--screen-margin);text-align:center;margin:auto;display:grid}.therapist-softphone-stage>h2{font-family:var(--font-display);font-weight:var(--display-weight);font-optical-sizing:auto;font-size:var(--text-title-1);text-wrap:balance;margin:0}.therapist-checklist-row{align-items:center;gap:var(--space-3);width:100%;padding:var(--space-4);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);text-align:left;grid-template-columns:24px minmax(0,1fr) auto;display:grid}.therapist-checklist-row>span{color:var(--text-tertiary);font-size:20px;line-height:1}.therapist-checklist-row>span.is-complete{color:var(--success)}.therapist-checklist-row strong{font-size:var(--text-body);font-weight:var(--weight-semibold)}.therapist-checklist-row .web-button,.therapist-checklist-row input{margin:0}.therapist-checklist-row input[type=checkbox]{appearance:none;border:1.5px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface-card);cursor:pointer;width:26px;height:26px;transition:border-color var(--dur-fast) var(--ease-standard), background var(--dur-fast) var(--ease-standard);flex:0 0 26px;margin:0;position:relative}.therapist-checklist-row input[type=checkbox]:after{content:"";border:solid var(--text-on-accent);opacity:0;width:6px;height:11px;transition:opacity var(--dur-fast) var(--ease-standard);border-width:0 2px 2px 0;margin:auto;position:absolute;inset:0;transform:translateY(-1px)rotate(45deg)}.therapist-checklist-row input[type=checkbox]:checked{border-color:var(--accent-teal);background:var(--accent-teal)}.therapist-checklist-row input[type=checkbox]:checked:after{opacity:1}.therapist-checklist-row input[type=checkbox]:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}:is(.therapist-checklist-row:has(input:checked),.therapist-checklist-row:has(.is-complete)){border-color:var(--accent-teal)}:is(.therapist-checklist-row:has(input):hover,.therapist-checklist-row:has(input):focus-within){border-color:var(--accent);background:var(--surface-sunken)}.therapist-softphone-stage>.web-button{width:min(100%,320px)}.therapist-softphone-connecting .therapist-softphone-stage{color:var(--text-secondary)}.therapist-connecting-spinner{border:4px solid var(--accent-teal-soft);border-top-color:var(--accent);border-radius:50%;width:42px;height:42px;animation:.8s linear infinite therapist-spinner}.therapist-dial-button{background:var(--success);width:82px;height:82px;color:var(--text-on-accent);box-shadow:var(--shadow-raised);cursor:pointer;border:0;border-radius:50%;place-items:center;display:grid}.therapist-link-button{color:var(--accent);font:inherit;font-weight:var(--weight-semibold);cursor:pointer;background:0 0;border:0;padding:0}.therapist-softphone-footer{padding:var(--space-4) var(--screen-margin) calc(var(--space-4) + env(safe-area-inset-bottom));border-top:1px solid var(--border-subtle);color:var(--text-tertiary);font-size:var(--text-footnote);text-align:center}.therapist-report-sheet{gap:12px;display:grid}.therapist-report-option{border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--surface-card);width:100%;color:var(--text-primary);font:inherit;font-weight:var(--weight-medium);text-align:left;cursor:pointer;justify-content:space-between;align-items:center;padding:12px;display:flex}.therapist-report-option.therapist-safety-row{color:var(--danger);background:var(--surface-sunken)}.therapist-softphone.status-held{background:var(--warning-soft);border-color:#c8791a47}.therapist-softphone.status-failed{border-color:#c0392b42}.therapist-softphone.status-ended{background:var(--surface-sunken);box-shadow:var(--shadow-card)}.therapist-softphone.status-preparing .therapist-live-dot,.therapist-softphone.status-connecting-audio .therapist-live-dot,.therapist-softphone.status-connecting-webrtc .therapist-live-dot,.therapist-softphone.status-dialing .therapist-live-dot,.therapist-softphone.status-initiated .therapist-live-dot,.therapist-softphone.status-ringing .therapist-live-dot,.therapist-softphone.status-ending .therapist-live-dot{background:var(--warning);box-shadow:0 0 0 5px var(--warning-soft);animation:1.2s ease-in-out infinite therapist-pulse}.therapist-softphone-status{color:var(--text-secondary);font-size:var(--text-footnote);font-weight:var(--weight-semibold);justify-content:center;align-items:center;gap:8px;display:flex}.therapist-softphone-status-row{grid-template-columns:36px 1fr 36px;align-items:center;display:grid}.therapist-softphone-status-row .therapist-softphone-status{grid-column:2}.therapist-minimize-call{border:1px solid var(--border-subtle);background:var(--surface-card);width:44px;height:44px;color:var(--text-secondary);cursor:pointer;border-radius:50%;grid-column:3;place-items:center;display:grid}.therapist-minimize-call svg{stroke:currentColor;stroke-width:2px;stroke-linecap:round;width:18px;height:18px}.therapist-callbar{z-index:55;border-radius:var(--radius-lg);background:var(--clay-700);color:#fff;width:calc(100% - 28px);min-height:62px;box-shadow:var(--shadow-raised);cursor:pointer;text-align:left;border:0;align-items:center;gap:11px;margin:0 14px 8px;padding:10px 14px;display:flex;position:sticky;top:8px}.therapist-callbar .therapist-live-dot.is-live{background:#8fe0b4;box-shadow:0 0 0 5px #8fe0b429}.therapist-callbar-copy{flex:1;gap:1px;min-width:0;display:grid}.therapist-callbar-copy span{color:#ffffffc7;font-size:var(--text-caption-1);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.therapist-callbar .therapist-call-duration{color:#fff}.therapist-callbar>svg{stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:20px;height:20px}.therapist-live-dot{background:var(--text-tertiary);border-radius:50%;width:9px;height:9px}.therapist-live-dot.is-live{background:var(--success);box-shadow:0 0 0 5px var(--success-soft)}.therapist-call-duration{font-family:var(--font-mono);color:var(--accent);font-variant-numeric:tabular-nums}.therapist-softphone-person{justify-content:center;align-items:center;gap:14px;display:flex}.therapist-softphone-person :is(h2,h3){font-family:var(--font-display);font-weight:var(--display-weight);font-optical-sizing:auto;font-size:var(--text-title-1);line-height:var(--lh-title-1);margin:0}.therapist-softphone-person p{color:var(--text-tertiary);font-size:var(--text-footnote);margin:2px 0 0}.therapist-softphone-avatar{width:58px;height:58px;box-shadow:0 0 0 8px var(--clay-50)}.therapist-softphone-person-large{justify-items:center;gap:30px;display:grid}.therapist-softphone-avatar-rings{width:96px;height:96px;font-size:var(--text-title-1);box-shadow:0 0 0 10px var(--accent-teal-soft), 0 0 0 22px var(--surface-sunken);margin-top:12px}.therapist-softphone-avatar-rings.is-pulsing{animation:1.8s ease-in-out infinite therapist-pulse}.therapist-waveform{justify-content:center;align-items:center;gap:3px;height:34px;display:flex}.therapist-waveform span{border-radius:var(--radius-full);background:var(--accent);opacity:.3;width:3px;height:7px}.therapist-waveform.is-active span{opacity:.82;animation:.9s ease-in-out infinite alternate therapist-wave}@keyframes therapist-spinner{to{transform:rotate(360deg)}}.therapist-call-controls{flex-wrap:wrap;justify-content:center;align-items:flex-start;gap:14px;display:flex}.therapist-safety-row{border-radius:var(--radius-lg);color:#991b1b;width:100%;min-height:48px;font:inherit;cursor:pointer;background:#fee2e2d1;border:1px solid #b91c1c59;font-weight:750}.therapist-safety-row:hover{background:#fecacae6}.therapist-risk-dialog{width:min(100%,520px)}.therapist-risk-actions{flex-wrap:wrap;gap:8px;margin:14px 0;display:flex}.therapist-risk-action-unavailable{color:var(--text-secondary);font-size:var(--text-caption-1)}.therapist-call-control{width:82px;color:var(--text-secondary);cursor:pointer;font-size:var(--text-caption-1);font-weight:var(--weight-medium);background:0 0;border:0;justify-items:center;gap:7px;display:grid}.therapist-call-control-icon{border:1px solid var(--border-strong);background:var(--surface-card);width:58px;height:58px;color:var(--accent);box-shadow:var(--shadow-xs);transition:transform var(--dur-fast) var(--ease-standard), background var(--dur-fast) var(--ease-standard);border-radius:50%;place-items:center;display:grid}.therapist-call-control.is-active .therapist-call-control-icon{border-color:var(--accent);background:var(--accent);color:var(--text-on-accent)}.therapist-call-control.is-danger .therapist-call-control-icon{border-color:var(--danger);background:var(--danger);color:#fff}.therapist-call-control:not(:disabled):active .therapist-call-control-icon{transform:scale(.92)}.therapist-call-control:focus-visible{outline:3px solid var(--focus-ring);outline-offset:3px;border-radius:var(--radius-md)}.therapist-call-control:disabled{cursor:default;opacity:.45}.therapist-video-sessions{gap:var(--space-4)}.therapist-video-session-card{gap:0;padding:0;display:grid;overflow:hidden}.therapist-video-session-primary{border-top:0;flex-wrap:wrap;align-items:flex-start;padding:14px 16px}.therapist-video-session-avatar{background:var(--accent-teal-soft);width:46px;height:46px;color:var(--accent-teal)}.therapist-video-session-identity{gap:2px}.therapist-video-session-identity>strong{color:var(--text-primary);font-family:var(--font-display);font-weight:var(--display-weight);font-optical-sizing:auto;font-size:var(--text-title-3)}.therapist-video-session-statuses{flex-wrap:wrap;justify-content:flex-start;gap:6px;width:100%;padding-left:58px;display:flex}.therapist-video-session-actions{border-top:1px solid var(--separator);padding:14px 16px}.therapist-video-technical{color:var(--text-tertiary);font-family:var(--font-mono);font-size:var(--text-caption-2);overflow-wrap:anywhere;gap:1px}.therapist-video-session-buttons{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.therapist-account{gap:var(--space-4)}.therapist-account-group{border-radius:var(--radius-lg)}.therapist-phone-row,.client-phone-row{border-top:0;gap:12px;padding:14px 0;display:grid}.therapist-phone-row>*,.client-phone-row>*{justify-self:stretch;min-width:0}.therapist-account-value{max-width:58%;color:var(--text-secondary);font-size:var(--text-subhead);text-align:right;overflow-wrap:anywhere}.therapist-account-action-row,.client-account-action-row{gap:12px;display:grid}.therapist-account-action,.client-account-action{justify-self:stretch}.client-account-action,.client-account-action .web-button,.client-account-action .imc-btn{width:100%}@keyframes therapist-wave{0%{height:6px}to{height:28px}}@keyframes therapist-pulse{50%{opacity:.42;transform:scale(.82)}}.web-field{gap:8px;display:grid}.web-field label,.web-field>span,.web-label{font-size:var(--text-footnote);color:var(--text-secondary);font-weight:600}.web-input,.web-select{width:100%;min-height:var(--tap-target);box-sizing:border-box;border:1px solid var(--border-strong);border-radius:var(--radius-md);color:var(--text-primary);padding:0 var(--space-3);background:#fffffff0}select.web-select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none'%3E%3Cpath d='M1 1.5 6 6.5 11 1.5' stroke='%2310292b' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right var(--space-3) center;padding-right:calc(var(--space-3) * 3)}.web-search-field{display:block;position:relative}.web-search-field>svg{z-index:1;width:19px;height:19px;stroke:var(--text-tertiary);stroke-width:2px;stroke-linecap:round;position:absolute;top:50%;left:13px;transform:translateY(-50%)}.web-search-field .web-input{background:var(--fill-secondary);border-color:#0000;padding-left:42px}.web-input:disabled,.web-select:disabled{opacity:.48}.web-shell input[type=checkbox]{accent-color:var(--accent)}.web-shell button:focus-visible,.web-shell input:focus-visible,.web-shell select:focus-visible,.web-shell textarea:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.web-data-list{gap:12px;display:grid}.web-data-row{border-top:1px solid var(--separator);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 16px;padding:14px 0;display:flex}.web-data-row>*{min-width:0}.web-data-row:first-child{border-top:0;padding-top:0}.web-muted{color:var(--text-tertiary)}.web-field+.web-muted,.web-field .web-muted{font-size:var(--text-footnote)}.web-error{color:var(--text-error);margin:0;font-weight:600}.web-success{color:var(--sage-700);margin:0;font-weight:600}.web-banner{border-radius:var(--radius-md);color:var(--text-secondary);font-size:var(--text-footnote);border:1px solid #0000;padding:12px 14px;line-height:1.45}.web-banner.info{border-color:color-mix(in srgb, var(--info) 20%, transparent);background:var(--info-soft);color:var(--teal-600)}.web-banner.success{border-color:color-mix(in srgb, var(--success) 28%, transparent);background:var(--success-soft);color:var(--sage-700)}.web-banner.warning{border-color:color-mix(in srgb, var(--warning) 20%, transparent);background:var(--warning-soft);color:var(--honey-600)}.web-banner.danger{border-color:color-mix(in srgb, var(--danger) 20%, transparent);background:var(--danger-soft);color:var(--text-error)}.web-availability{flex-wrap:wrap;gap:8px;display:flex}.web-availability-chip{border-radius:var(--radius-full);background:var(--accent-soft);color:var(--accent-pressed);font-size:var(--text-footnote);padding:6px 10px;font-weight:600}.calendar-legend{color:var(--text-secondary);font-size:var(--text-caption-1);flex-wrap:wrap;gap:8px 16px;margin:0 0 12px;padding:0;list-style:none;display:flex}.calendar-legend li{align-items:center;gap:7px;display:inline-flex}.calendar-legend-swatch{border:1px solid var(--border-subtle);background:var(--surface-sunken);border-radius:4px;flex:0 0 14px;width:14px;height:14px}.calendar-legend-swatch.available{background:var(--accent-teal-soft);border-color:#2f928552}.calendar-legend-swatch.selected{border-color:var(--accent);background:var(--accent-soft);box-shadow:inset 0 0 0 1px var(--accent)}.calendar-legend-swatch.occupied{background:var(--surface-sunken);color:var(--text-tertiary);position:relative}.calendar-legend-swatch.occupied:after{content:"";background:currentColor;width:1px;height:10px;position:absolute;transform:rotate(45deg)}.calendar-legend-swatch.past{opacity:.48;background:var(--fill-tertiary)}.booking-sheet-overlay{background:var(--scrim);-webkit-backdrop-filter:var(--blur-thin);backdrop-filter:var(--blur-thin);justify-content:center;align-items:flex-end;padding:24px;display:flex;position:fixed;inset:0;z-index:100!important}.client-booking-flow{padding:0 0 calc(110px + env(safe-area-inset-bottom,0px));gap:16px;display:grid}.client-booking-flow.is-embedded{padding-bottom:0}.client-booking-flow .booking-sheet{width:100%;max-height:none;box-shadow:none;background:0 0;border:0;border-radius:0;gap:16px;padding:0;overflow:visible}.client-booking-flow .booking-sheet-body{overflow:visible}.booking-sheet{border:1px solid var(--border-subtle);border-radius:var(--radius-3xl);width:min(430px,100%);max-height:min(100dvh - 48px,880px);box-shadow:var(--shadow-raised);background:#fffffff0;grid-template-rows:auto auto minmax(0,1fr) auto;gap:16px;padding:14px 16px 20px;display:grid;position:relative;overflow:hidden}.web-dialog-close{z-index:1;width:34px;height:34px;color:var(--text-muted,#64748b);cursor:pointer;background:0 0;border:0;border-radius:999px;justify-content:center;align-items:center;padding:0;display:inline-flex;position:absolute;top:10px;right:10px}.web-dialog-close:hover{color:inherit;background:#0f172a0f}.web-dialog-close:disabled{opacity:.4;cursor:not-allowed}.booking-sheet-grabber{background:var(--separator);border-radius:999px;width:64px;height:6px;margin:0 auto}.booking-sheet-header{min-height:34px;display:block;position:relative}.booking-therapist-card{align-items:center;gap:var(--space-3);padding:var(--space-4);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);background:var(--surface-card);box-shadow:var(--shadow-card);display:flex}.booking-therapist-card .web-avatar{width:48px;height:48px}.booking-sheet-header .web-stack{gap:2px}.booking-sheet-header .web-kicker{font-size:var(--text-caption-2);margin-bottom:1px;line-height:1.2}.booking-sheet-header .web-card-title{font-size:var(--text-title-3);line-height:1.2}.booking-sheet-header .web-card-copy{font-size:var(--text-footnote);margin-top:4px;line-height:1.3}.booking-sheet-footer{padding-bottom:env(safe-area-inset-bottom,0px);justify-items:center;gap:8px;display:grid}.booking-sheet-footer .web-button{text-align:center;width:100%}.booking-sheet-body{gap:16px;min-height:0;display:grid;overflow:auto}.booking-section-label{margin:0 4px 10px}.booking-scroller{min-width:0;position:relative}.profile-photo-modal{text-align:left;align-items:stretch}.profile-photo-modal-figure{justify-content:center;display:flex}.profile-photo-modal-figure img{object-fit:cover;border-radius:var(--radius-2xl,20px);border:1px solid var(--border-subtle);width:min(260px,62vw);height:min(260px,62vw)}.profile-photo-modal-placeholder{background:var(--clay-50,#efe7e0);width:min(200px,52vw);height:min(200px,52vw);color:var(--clay-700,#7a5c46);border-radius:50%;place-items:center;font-size:44px;font-weight:700;display:grid}.booking-day-picker{scrollbar-width:none;scroll-snap-type:x proximity;gap:8px;max-width:100%;padding:2px;display:flex;overflow-x:auto}.booking-scroller-chevron{border:1px solid var(--border-subtle);background:var(--surface-card);width:26px;height:26px;color:var(--text-secondary);cursor:pointer;z-index:2;border-radius:50%;justify-content:center;align-items:center;padding:0;font-size:16px;line-height:1;display:flex;position:absolute;top:50%;transform:translateY(-50%);box-shadow:0 1px 5px #0f172a24}.booking-scroller-chevron.is-left{left:0}.booking-scroller-chevron.is-right{right:0}.booking-scroller-chevron:hover{color:var(--accent);border-color:var(--accent)}.booking-day{border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--surface-card);min-width:0;min-height:54px;color:var(--text-primary);cursor:pointer;font:inherit;scroll-snap-align:start;transition:transform var(--dur-fast) var(--ease-standard), background var(--dur-fast) var(--ease-standard), color var(--dur-fast) var(--ease-standard);flex:0 0 calc(20% - 6.4px);justify-items:center;gap:2px;padding:8px 4px;display:grid}.booking-day>span{color:var(--text-tertiary);font-size:var(--text-caption-2)}.booking-day>strong{font-family:var(--font-mono);font-size:18px}.booking-day.selected{border-color:var(--accent);background:var(--accent);color:#fff}.booking-day.selected>span,.booking-day.selected>small{color:#ffffffc7}.booking-day:not(:disabled):hover,.booking-slot:not(:disabled):hover{border-color:var(--accent)}.booking-day:focus-visible,.booking-slot:focus-visible{outline:3px solid var(--accent-teal-soft);outline-offset:2px}.booking-slot-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;width:100%;min-width:0;display:grid}.booking-slot{border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--surface-card);min-width:0;min-height:36px;color:var(--text-primary);cursor:pointer;font:inherit;transition:transform var(--dur-fast) var(--ease-standard), background var(--dur-fast) var(--ease-standard), border-color var(--dur-fast) var(--ease-standard);place-items:center;padding:8px 4px;display:grid}.booking-slot>strong{font-family:var(--font-mono);font-size:15px}.booking-slot.available{border-color:var(--border-subtle);background:var(--surface-card);color:var(--text-primary)}.booking-slot.selected{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-pressed);box-shadow:inset 0 0 0 1px var(--accent)}.booking-slot.occupied,.booking-slot.past{cursor:default;background:var(--fill-tertiary);color:var(--text-tertiary)}.booking-slot.occupied{background:var(--surface-sunken);border-style:dashed}.booking-slot.unavailable{cursor:pointer;background:var(--fill-tertiary);color:var(--text-tertiary);border-style:dashed}.booking-slot-blocked-reason{color:var(--text-secondary);margin-top:8px;font-size:13px}.web-field-hint{color:var(--text-secondary);margin:6px 0 0;font-size:13px}.web-field-hint.is-valid{color:var(--success)}.booking-slot.past{opacity:.48}.booking-slot:disabled,.booking-day:disabled{cursor:default}.booking-day:disabled{opacity:.48;background:var(--fill-tertiary)}.booking-slot:not(:disabled):active,.booking-day:active{transform:scale(.97)}.booking-confirmation-summary{margin-top:2px}.booking-selection-summary{min-height:44px;color:var(--text-secondary);text-align:center;font-size:var(--text-footnote);gap:3px;padding:10px 4px 0;display:grid}.booking-selection-summary strong{color:var(--text-primary);font-size:var(--text-subhead)}.booking-recurring-panel{align-items:flex-start;gap:var(--space-3);color:var(--text-primary);flex-direction:column;display:flex}.booking-recurring-panel label,.booking-recurring-panel [role=group]{align-items:center;gap:var(--space-2);display:flex}.booking-recurring-panel [role=group]{justify-content:center}.booking-recurring-panel>.web-button{align-self:flex-start}.booking-recurring-panel ul{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}.booking-recurring-status{color:var(--text-secondary)}.client-booking-flow .booking-slot-grid{grid-template-columns:repeat(4,minmax(0,1fr));max-height:280px;overflow-y:auto}.client-booking-flow,.client-booking-flow .booking-sheet,.client-booking-flow .booking-sheet-body,.client-booking-flow section{min-width:0;max-width:100%}.client-booking-flow .booking-sheet-footer>.web-button{width:100%;min-height:46px;padding:0 var(--space-4);font-size:var(--text-subhead);text-align:center;justify-self:stretch;margin-inline:auto}.landing-page{width:min(100%,560px);min-height:100dvh;padding:var(--screen-margin-block) var(--screen-margin) calc(var(--screen-margin-block-end) + env(safe-area-inset-bottom,0px));--hero-fit:11.6;align-content:start;gap:calc(var(--space-7) * .9);grid-template-rows:repeat(5,auto);margin-inline:auto;display:grid;container-type:inline-size}.landing-page[data-lang=en]{--hero-fit:14.5}.landing-header{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.landing-wordmark{width:104px;height:auto}.landing-language{min-width:44px;min-height:32px;padding:0 var(--space-3);border:1px solid var(--border-subtle);border-radius:var(--radius-full);background:var(--surface-card);color:var(--text-primary);font:inherit;font-size:var(--text-caption-1);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-caps);cursor:pointer;transition:background-color var(--dur-fast) var(--ease-standard), transform var(--dur-fast) var(--ease-standard)}.landing-language:hover{background:var(--warm-50)}.landing-language:active{transform:scale(.96)}.landing-language:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.landing-hero{justify-items:center;gap:var(--space-4);text-align:center;display:grid}.landing-badge-dot{border-radius:var(--radius-full);background:var(--text-emphasis);flex:none;width:7px;height:7px}.landing-title{font-family:var(--font-display);font-weight:var(--display-weight);font-optical-sizing:auto;font-size:min(2rem, calc((100vw - 2 * var(--screen-margin)) / var(--hero-fit,14.5)));font-size:calc(100cqi / var(--hero-fit,14.5));color:var(--text-primary);letter-spacing:var(--tracking-tight);white-space:nowrap;margin:0;line-height:1.05}.landing-title em{color:var(--text-emphasis);white-space:nowrap;font-style:italic}@media (width>=1024px) and (height>=720px){.landing-page{column-gap:var(--space-8);width:min(100%,1040px);padding-block:var(--screen-margin-block) var(--screen-margin-block-end);row-gap:var(--space-6);grid-template-columns:minmax(0,1fr) clamp(300px,32%,380px);grid-template-areas:"header header""hero google""hero access""footer footer";align-content:safe center}.landing-header{grid-area:header}.landing-hero{text-align:left;grid-area:hero;align-content:center;justify-items:start;container-type:inline-size}.landing-google{grid-area:google}.landing-access{grid-area:access}.landing-page>.legal-footer{align-items:center;column-gap:var(--space-6);grid-area:footer;grid-template-columns:minmax(0,1fr) auto;padding-top:0}.landing-page>.legal-footer .legal-footer-links{text-align:right}.landing-highlights{justify-content:center;justify-self:stretch}.landing-highlights li{font-size:var(--text-caption-1);white-space:nowrap}.landing-highlights li:nth-child(2){order:0}}@media (width>=1200px) and (height>=720px){.landing-page{column-gap:calc(var(--space-8) * 2.4);width:min(100%,1240px)}}@media (width>=1600px) and (height>=900px){.landing-page{--space-2:10px;--space-3:14px;--space-4:19px;--space-5:24px;--space-6:29px;--space-7:38px;--space-8:48px;--space-9:58px;--text-caption-1:14px;--lh-caption-1:19px;--text-footnote:16px;--lh-footnote:22px;--text-subhead:18px;--lh-subhead:24px;--text-callout:19px;--lh-callout:25px;--text-body:20px;--lh-body:26px;--text-title-3:24px;--lh-title-3:30px;width:min(100%,1480px)}}@media (width<=439px){.landing-title{white-space:normal;font-size:clamp(1.75rem,6.4vw,2rem)}.landing-title em{display:block}.landing-lead{text-wrap:balance}}.landing-lead strong{font-weight:var(--weight-semibold);color:var(--text-secondary)}.landing-lead{max-width:42ch;color:var(--text-body-quiet);font-size:var(--text-body);text-wrap:pretty;margin:0;line-height:1.6}@media (width>=440px){.landing-lead{max-width:98.8cqi}}.landing-highlights{justify-content:center;align-items:center;gap:var(--space-2);flex-flow:wrap;margin:0;padding:0;list-style:none;display:flex}.landing-highlights li:nth-child(2){order:1}.landing-highlights li{align-items:center;gap:var(--space-2);min-height:32px;padding:0 var(--space-3);border:1px solid var(--border-subtle);border-radius:var(--radius-full);background:var(--surface-card);color:var(--text-primary);font-size:var(--text-footnote);font-weight:var(--weight-medium);display:inline-flex}.landing-access{gap:var(--space-4);justify-items:center;display:grid}.landing-google{justify-items:center;display:grid}.landing-google-card{width:100%;padding:var(--space-5);border:1px solid var(--teal-100);border-radius:var(--radius-xl);background:var(--teal-125);box-shadow:var(--shadow-card)}.landing-google-eyebrow{margin:0 0 var(--space-1);color:var(--teal-800);font-size:var(--text-caption-1);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-caps);text-transform:uppercase}.landing-google-title{color:var(--text-primary);font-family:var(--font-display);font-weight:var(--display-weight);font-optical-sizing:auto;font-size:var(--text-title-3);margin:0;line-height:1.2}.landing-google-copy{margin:var(--space-3) 0 0;color:var(--text-body-quiet);font-size:var(--text-footnote);line-height:1.6}.landing-google-link{margin-top:var(--space-3);color:var(--teal-800);font-size:var(--text-footnote);font-weight:var(--weight-semibold);text-decoration:none;display:inline-block}.landing-google-link:hover{color:var(--accent)}.landing-google-link:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.landing-access-card{width:100%;padding:var(--space-5);border:1px solid var(--border-subtle);border-radius:var(--radius-xl);background:var(--teal-25);box-shadow:var(--shadow-raised);gap:var(--space-3);display:grid}.landing-access-card .web-button{color:var(--teal-25)}.landing-access-card .web-button.secondary{border-color:var(--teal-900);color:var(--teal-900);background:0 0}.landing-footer{padding-top:var(--space-5);border-top:1px solid var(--border-subtle);gap:var(--space-1);text-align:center;color:var(--text-body-quiet);font-size:var(--text-footnote);justify-items:center;display:grid}.landing-footer p{margin:0}.landing-footer a{color:var(--accent-teal);font-weight:var(--weight-semibold);text-decoration:none}.landing-footer a:hover{color:var(--accent)}.landing-footer a:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}@media (prefers-reduced-motion:reduce){.landing-language{transition:none}}.legal-page{width:min(100%,720px);min-height:100dvh;padding:var(--screen-margin-block) var(--screen-margin) calc(var(--screen-margin-block-end) + env(safe-area-inset-bottom,0px));gap:var(--space-6);grid-template-rows:auto 1fr auto;margin-inline:auto;display:grid}.legal-header{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.legal-header a{display:inline-flex}.legal-header a:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.legal-back{align-items:center;gap:var(--space-1);min-height:44px;padding:0 var(--space-3) 0 var(--space-2);border:1px solid var(--border-subtle);border-radius:var(--radius-full);background:var(--surface-card);color:var(--text-primary);font:inherit;font-size:var(--text-footnote);font-weight:var(--weight-semibold);cursor:pointer;transition:background-color var(--dur-fast) var(--ease-standard), transform var(--dur-fast) var(--ease-standard);display:inline-flex}.legal-back:hover{background:var(--warm-50)}.legal-back:active{transform:scale(.97)}.legal-back:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.legal-language{min-height:44px;padding:0 var(--space-3);border:1px solid var(--border-subtle);border-radius:var(--radius-full);background:var(--surface-card);color:var(--text-primary);font:inherit;font-size:var(--text-footnote);font-weight:var(--weight-semibold);cursor:pointer}.legal-language:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.legal-crosslink{margin-top:var(--space-5);padding-top:var(--space-4);border-top:1px solid var(--separator);justify-content:center;align-items:center;gap:var(--space-4);flex-wrap:wrap;display:flex}.legal-crosslink a{min-height:44px;color:var(--text-emphasis);font-size:var(--text-footnote);font-weight:var(--weight-semibold);align-items:center;text-decoration:none;display:inline-flex}.legal-crosslink a:hover{color:var(--accent)}.legal-crosslink a:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}@media (width>=1024px){.legal-page{width:min(100%,900px);padding-block:var(--space-8) var(--space-9);gap:var(--space-7)}.legal-body{gap:var(--space-4);font-size:18px}.legal-body h1{font-size:clamp(2.2rem,3.2vw,2.8rem)}.legal-footer{align-items:center;column-gap:var(--space-6);grid-template-columns:minmax(0,1fr) auto}.legal-footer .legal-footer-links{text-align:right}}@media (width>=1600px) and (height>=900px){.legal-page{--text-footnote:15px;--text-caption-1:13px;width:min(100%,980px)}.legal-body{font-size:20px}}@media (prefers-reduced-motion:reduce){.legal-back{transition:none}}.legal-body{gap:var(--space-3);align-content:start;display:grid}.legal-body h1{font-family:var(--font-display);font-weight:var(--display-weight);font-optical-sizing:auto;color:var(--text-primary);margin:0;font-size:clamp(1.8rem,5vw,2.4rem);line-height:1.1}.legal-effective{color:var(--text-tertiary);font-size:var(--text-footnote);margin:0}.legal-draft-note{margin:0 0 var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background:var(--warm-50);color:var(--text-secondary);font-size:var(--text-footnote)}.legal-body h2{margin:var(--space-4) 0 0;color:var(--text-primary);font-size:var(--text-title-3);font-weight:var(--weight-semibold)}.legal-body p{color:var(--text-secondary);margin:0;line-height:1.6}.legal-body ul{padding-left:var(--space-5);color:var(--text-secondary);gap:var(--space-1);margin:0;line-height:1.6;display:grid}.legal-body ol.legal-sublist{color:var(--text-secondary);gap:var(--space-1);margin:0;padding-left:0;line-height:1.6;list-style:none;display:grid}.legal-body ol.legal-sublist li{gap:var(--space-2);display:flex}.legal-sublist-label{font-variant-numeric:tabular-nums;flex:none}.legal-footer{align-self:end;gap:var(--space-3);padding-top:var(--space-5);border-top:1px solid var(--border-subtle);color:var(--text-tertiary);font-size:var(--text-footnote);text-align:center;display:grid}.legal-footer-crisis,.legal-footer-links{margin:0}.legal-footer-crisis{padding:var(--space-3);border-radius:var(--radius-md);background:var(--slate-125);color:var(--text-secondary)}.legal-footer a{color:var(--text-emphasis);font-weight:var(--weight-semibold);text-decoration:none}.legal-footer a:hover{color:var(--accent)}.legal-footer a:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.client-booking-flow .booking-sheet-header{padding-right:0}.therapist-reschedule-overlay{padding:var(--space-4);align-items:center}.therapist-reschedule-overlay .therapist-reschedule-flow{width:min(430px,100%);max-height:min(100dvh - 32px,880px);padding:0}.therapist-reschedule-flow .booking-sheet{box-sizing:border-box;gap:var(--space-4);width:100%;max-height:min(100dvh - 32px,880px);padding:var(--space-4);border:1px solid var(--border-subtle);border-radius:var(--radius-3xl);background:var(--bg-app);box-shadow:var(--shadow-raised);grid-template-rows:auto minmax(0,1fr) auto;overflow:hidden}.therapist-reschedule-flow .booking-therapist-card{align-items:center}.therapist-reschedule-flow .booking-sheet-body{gap:var(--space-4);overflow-y:auto}.therapist-reschedule-flow .booking-slot-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.therapist-reschedule-flow .booking-sheet-footer{width:100%;padding-top:var(--space-1);grid-template-columns:minmax(0,1fr);justify-self:stretch;justify-items:center}.therapist-reschedule-flow .booking-sheet-footer>.web-button{text-align:center;justify-self:stretch;width:100%;max-width:none;margin-inline:auto}.web-onboarding-shell,.web-status-shell{max-width:980px}.web-onboarding-shell{gap:var(--space-4);display:grid}.therapist-availability-shell,.web-mfa-shell{gap:var(--space-3);max-width:520px;display:grid}.questionnaire-shell{gap:var(--space-4);max-width:680px;display:grid}.questionnaire-progress{border-radius:var(--radius-full);background:var(--fill-secondary);height:8px;overflow:hidden}.questionnaire-progress>span{border-radius:inherit;background:var(--accent);height:100%;transition:width var(--dur-fast) var(--ease-standard);display:block}.questionnaire-card{gap:var(--space-4);padding:clamp(20px,4vw,30px);display:grid}.questionnaire-hint{font-size:var(--text-footnote);margin:0}.questionnaire-options{border:1px solid var(--border-subtle);border-radius:var(--radius-lg);display:grid;overflow:hidden}.questionnaire-options label{border-top:1px solid var(--separator);cursor:pointer;align-items:center;gap:12px;min-height:52px;padding:12px 16px;display:flex}.questionnaire-options label:first-child{border-top:0}.questionnaire-options input{width:20px;height:20px;accent-color:var(--accent);flex:0 0 20px}.questionnaire-textarea{min-height:96px;padding:var(--space-3);resize:vertical}.questionnaire-actions{justify-content:space-between;gap:12px;display:flex}.web-onboarding-header,.therapist-availability-header,.web-mfa-header{padding:0 2px var(--space-2);margin-bottom:0}.imc-btn.web-button-outline{border-color:var(--accent-commit)!important;color:var(--accent-commit)!important;box-shadow:none!important;background:0 0!important}.imc-btn.web-button-outline:hover:not(:disabled){background:var(--accent-commit)!important;color:var(--teal-25)!important;box-shadow:var(--shadow-commit)!important}.imc-btn.web-button-outline.is-pressed:not(:disabled){background:var(--accent-commit)!important;color:var(--teal-25)!important}.imc-btn.web-button-danger-quiet{border-color:var(--danger)!important;color:var(--text-error)!important;box-shadow:none!important;background:0 0!important}.imc-btn.web-button-danger-quiet:hover:not(:disabled),.imc-btn.web-button-danger-quiet.is-pressed:not(:disabled){background:var(--danger-soft)!important;color:var(--text-error)!important}.web-onboarding-titles{justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:nowrap;display:flex}.web-onboarding-titles .thdr-ttl{min-width:0;font-size:clamp(21px,5.4vw,30px)}.web-onboarding-titles .imc-btn{flex:none}@media (width<=480px){.web-onboarding-titles .imc-btn{min-height:36px!important;font-size:var(--text-subhead)!important;padding:8px 13px!important}}.web-file-input{min-width:0}.web-file-input::file-selector-button{border:1px solid var(--accent-commit);border-radius:var(--radius-commit);min-height:32px;color:var(--accent-commit);font:inherit;font-size:var(--text-subhead);font-weight:var(--weight-semibold);cursor:pointer;transition:background var(--dur-fast) var(--ease-standard), color var(--dur-fast) var(--ease-standard);background:0 0;margin-right:10px;padding:0 14px}.web-file-input::file-selector-button:hover{background:var(--accent-commit);color:var(--teal-25)}.web-file-input:disabled::file-selector-button{cursor:default;opacity:.45}.therapist-agreement-row,.therapist-agreement-row>span{min-width:0}.therapist-agreement-row{padding-top:2px}.therapist-agreement-row>span{font-size:min(var(--text-body), calc((100vw - 130px) / 20.5))}.therapist-agreement-row>input{width:16px;height:16px;accent-color:var(--accent);flex:none;margin:0}.therapist-availability-titles{margin-top:10px}.therapist-availability-intro{max-width:48ch;margin:6px 0 0}.therapist-availability-back{width:fit-content;margin-top:12px}.therapist-onboarding-steps{border:1px solid var(--border-subtle);border-radius:var(--radius-xl);background:var(--fill-tertiary);grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:5px;display:grid}.therapist-onboarding-steps button{border-radius:var(--radius-lg);min-height:48px;color:var(--text-secondary);cursor:pointer;font:inherit;background:0 0;border:0;justify-content:center;align-items:center;gap:8px;font-weight:600;display:flex}.therapist-onboarding-steps button>span{background:var(--surface-card);width:24px;height:24px;color:var(--text-tertiary);font-family:var(--font-mono);font-size:var(--text-caption-2);border-radius:50%;place-items:center;display:grid}.therapist-onboarding-steps button.active{background:var(--surface-card);color:var(--accent-pressed);box-shadow:var(--shadow-card)}.therapist-onboarding-steps button.active>span{background:var(--accent-commit);color:var(--teal-25)}.therapist-onboarding-form{gap:var(--space-5)!important;padding:clamp(20px,4vw,32px)!important}.therapist-financial-tail{gap:var(--space-6);display:grid}.therapist-financial-confirms{gap:var(--space-3);display:grid}.therapist-financial-confirm{gap:6px;display:grid}.therapist-financial-actions{gap:var(--space-3);display:grid}.therapist-form-section-heading{border-bottom:1px solid var(--separator);gap:3px;padding-bottom:10px;display:grid}.therapist-form-section-heading>span{color:var(--text-primary);font-size:var(--text-title-3);font-weight:700}.therapist-form-section-heading>small{color:var(--text-tertiary);font-size:var(--text-footnote)}.therapist-vacations{gap:18px!important;padding:clamp(22px,3vw,30px)!important}.therapist-calendar-connection,.therapist-vacations{box-shadow:var(--shadow-card);border-radius:var(--radius-xl)!important}.therapist-calendar-connection{gap:var(--space-3);display:grid;padding:clamp(18px,3vw,22px)!important}.therapist-calendar-connection-header{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;display:grid}.therapist-calendar-connection-mark{border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--surface-card);width:38px;height:38px;box-shadow:var(--shadow-xs);place-items:center;display:inline-grid}.therapist-calendar-connection-heading{min-width:0}.therapist-calendar-connection-heading .web-kicker{margin:0}.therapist-calendar-connection-heading .web-card-title{letter-spacing:0;margin:2px 0 0;font-size:1.05rem}.therapist-calendar-connection-copy{max-width:52ch;color:var(--text-secondary);font-size:var(--text-footnote);margin:-2px 0 0;line-height:1.5}.therapist-calendar-connection-actions{gap:10px;display:grid}.therapist-calendar-connection-actions .google-connect-button{justify-content:center;width:100%}.therapist-calendar-connection-details{border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--surface-sunken);gap:0;margin:0;display:grid;overflow:hidden}.therapist-calendar-connection-detail{border-top:1px solid var(--separator);grid-template-columns:auto minmax(0,1fr);align-items:baseline;gap:12px;padding:9px 12px;display:grid}.therapist-calendar-connection-detail:first-child{border-top:0}.therapist-calendar-connection-detail dt{color:var(--text-tertiary);font-size:var(--text-footnote)}.therapist-calendar-connection-detail dd{color:var(--text-primary);font-size:var(--text-footnote);overflow-wrap:anywhere;text-align:right;margin:0}.therapist-calendar-connection-info{width:100%;min-height:40px;padding:var(--space-3) 0 0;border:0;border-top:1px solid var(--separator);color:var(--text-secondary);cursor:pointer;font:inherit;font-size:var(--text-footnote);text-align:left;background:0 0;justify-content:space-between;align-items:center;gap:8px;font-weight:600;display:flex}.therapist-calendar-connection-info:hover{color:var(--text-primary)}.therapist-calendar-connection-info:focus-visible{outline:3px solid var(--focus-ring);outline-offset:3px;border-radius:var(--radius-xs)}.google-connect-button{box-sizing:border-box;color:#1f1f1f;cursor:pointer;letter-spacing:.25px;white-space:nowrap;background-color:#fff;border:1px solid #747775;border-radius:20px;align-items:center;height:40px;padding:0 12px;font-family:Roboto,arial,sans-serif;font-size:14px;font-weight:500;transition:background-color .218s,border-color .218s,box-shadow .218s;display:inline-flex}.google-connect-button .google-connect-button-icon{flex-shrink:0;margin-right:10px}.google-connect-button:disabled{cursor:default;background-color:#ffffff61;border-color:#1f1f1f1f}.google-connect-button:disabled .google-connect-button-icon{opacity:.38}.google-connect-button:not(:disabled):hover{box-shadow:0 1px 2px #3c40434d,0 1px 3px 1px #3c404326}.therapist-availability-content{gap:var(--space-4);display:grid}.therapist-availability-guidance{border-radius:var(--radius-lg);background:var(--accent-teal-soft);color:var(--accent-teal);align-items:flex-start;gap:10px;padding:13px 14px;display:flex}.therapist-availability-guidance p{color:var(--text-secondary);font-size:var(--text-footnote);margin:0;line-height:1.5}.therapist-working-hours{gap:var(--space-3);display:grid}.therapist-working-hours>.web-kicker{margin:0 0 -2px;padding:0 4px}.therapist-working-hours-list{border:1px solid var(--border-subtle);border-radius:var(--radius-xl);background:var(--surface-card);box-shadow:var(--shadow-xs);display:grid;overflow:hidden}.therapist-working-hours-row{border-top:1px solid var(--separator)}.therapist-working-hours-row:first-child{border-top:0}.therapist-working-hours-summary{width:100%;min-height:52px;color:var(--text-primary);cursor:pointer;font:inherit;text-align:left;transition:background var(--dur-fast) var(--ease-standard);background:0 0;border:0;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:10px 14px;display:grid}.therapist-working-hours-summary:hover{background:var(--fill-tertiary)}.therapist-working-hours-summary:focus-visible{outline:3px solid var(--focus-ring);outline-offset:-3px}.therapist-working-day-name{font-size:var(--text-callout);font-weight:600}.therapist-working-day-hours{color:var(--text-secondary);font-family:var(--font-mono);font-size:var(--text-subhead);white-space:nowrap}.therapist-working-day-hours.off{color:var(--text-quaternary);font-family:var(--font-system)}.therapist-working-hours-chevron{color:var(--text-quaternary);transition:transform var(--dur-fast) var(--ease-standard)}.therapist-working-hours-row.expanded .therapist-working-hours-summary{background:var(--fill-tertiary)}.therapist-working-hours-row.expanded .therapist-working-hours-chevron{transform:rotate(90deg)}.therapist-working-hours-detail{gap:10px;padding:4px 14px 14px;display:grid}.therapist-working-hours-empty{color:var(--text-tertiary);font-size:var(--text-footnote);margin:0}.therapist-working-hours-timezone{color:var(--text-tertiary);font-size:var(--text-footnote);margin:-2px 0 0;padding:0 4px}.therapist-working-day{color:var(--text-primary);font-size:var(--text-subhead);cursor:pointer;align-items:center;gap:10px;font-weight:600;display:inline-flex}.therapist-working-day input[type=checkbox]{appearance:none;border:1px solid var(--border-strong);border-radius:var(--radius-full);background:var(--fill-secondary);cursor:pointer;width:36px;height:22px;transition:border-color var(--dur-fast) var(--ease-standard), background var(--dur-fast) var(--ease-standard);flex:0 0 36px;margin:0;position:relative}.therapist-working-day input[type=checkbox]:after{content:"";background:var(--surface-card);width:14px;height:14px;box-shadow:var(--shadow-xs);transition:transform var(--dur-fast) var(--ease-standard);border-radius:50%;position:absolute;top:3px;left:3px}.therapist-working-day input[type=checkbox]:checked{border-color:var(--accent-teal);background:var(--accent-teal)}.therapist-working-day input[type=checkbox]:checked:after{transform:translate(14px)}.therapist-working-day input[type=checkbox]:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.therapist-time-range input{min-height:40px;font-family:var(--font-mono);border:1px solid var(--border-subtle)!important;border-radius:var(--radius-md)!important;background:var(--surface-card)!important}.therapist-time-range{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:10px;display:grid}.therapist-time-range>span{color:var(--text-tertiary);font-size:var(--text-footnote);text-align:center}.therapist-working-hours-actions{padding-top:var(--space-3);border-top:1px solid var(--separator);display:grid}.web-status{color:var(--text-secondary);font-size:var(--text-footnote);white-space:nowrap;flex:none;align-items:center;gap:7px;font-weight:600;display:inline-flex}.web-status-dot{box-sizing:border-box;border-radius:var(--radius-full);background:var(--text-quaternary);flex:0 0 9px;width:9px;height:9px}.web-status.ok .web-status-dot{background:var(--success)}.web-status.warn .web-status-dot{background:var(--warning)}.web-status.danger .web-status-dot{background:var(--danger)}.web-status.info .web-status-dot{background:var(--accent-teal)}.therapist-calendar-feedback:empty{display:none}.therapist-calendar-feedback{margin-bottom:var(--space-4);gap:10px;display:grid}.therapist-calendar-section-heading{justify-content:space-between;align-items:flex-start;gap:var(--space-3);flex-wrap:wrap;display:flex}.therapist-calendar-section-heading>div{min-width:0}.therapist-calendar-section-heading .web-kicker,.therapist-calendar-section-heading .web-card-title,.therapist-calendar-section-heading .web-card-copy{margin-left:0;margin-right:0}.therapist-calendar-section-heading .web-pill{flex:none}.therapist-calendar-primary-actions{margin:-6px 0 var(--space-5);justify-content:flex-end;display:flex}.auth-view-second-factor-dialog{gap:14px;display:grid;border-radius:var(--radius-xl)!important;background:var(--surface-card)!important;width:min(100%,360px)!important;padding:20px!important}.auth-view-second-factor-dialog .web-banner{margin:0}.auth-view-second-factor-dialog .auth-view-input{min-height:46px}.therapist-vacation-form{gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.therapist-vacation-form>:last-child{grid-column:1/-1}.therapist-vacation-form .web-field,.therapist-vacation-form .web-input{min-width:0}.therapist-vacation-form-actions{gap:8px;display:grid}.vacation-conflict-dialog .web-dialog-heading{text-align:center;justify-items:center}.therapist-vacation-actions{flex-wrap:wrap;gap:8px;display:flex}.therapist-vacation-list,.vacation-conflict-list{gap:10px;display:grid}.therapist-vacation-row,.vacation-conflict-row{border-radius:var(--radius-lg);background:var(--warning-soft);border:1px solid #c8791a38;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 16px;padding:12px;display:flex}.therapist-vacation-copy{justify-items:start;gap:5px;min-width:0;display:grid}.therapist-vacation-copy>:not(.web-pill){padding-left:var(--space-3)}.therapist-vacation-row{justify-content:stretch;display:grid}.therapist-vacation-actions{gap:8px;display:grid}.vacation-conflict-list{max-height:min(34vh,280px);padding-right:2px;overflow-y:auto}.vacation-conflict-row{border-color:var(--border-subtle);background:var(--surface-sunken)}.vacation-conflict-row .web-pill{white-space:normal;text-align:center;max-width:100%}.vacation-conflict-dialog{width:min(100%,560px);max-height:min(100dvh - 40px,760px);overflow-y:auto}.web-mfa-card{gap:var(--space-5);padding:clamp(22px,4vw,34px);display:grid}.web-mfa-header .thdr-titles{margin-top:10px}.web-mfa-progress{grid-template-columns:30px minmax(80px,180px) 30px;align-items:center;width:fit-content;display:grid}.web-mfa-progress span{border:2px solid var(--border-subtle);width:30px;height:30px;color:var(--text-tertiary);font-family:var(--font-mono);font-size:var(--text-caption-1);border-radius:50%;place-items:center;font-weight:700;display:grid}.web-mfa-progress span.complete,.web-mfa-progress span.active{border-color:var(--accent);background:var(--accent);color:#fff}.web-mfa-progress i{background:var(--accent);height:2px}.web-mfa-actions{flex-wrap:wrap;gap:10px;display:flex}.web-mfa-footer{justify-content:space-between;align-items:center;gap:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--separator);display:flex}.web-mfa-footer p{margin:0}.web-mfa-enroll{gap:var(--space-4);justify-items:stretch;display:grid}.web-mfa-qr{padding:var(--space-4);border:1px solid var(--border-subtle);border-radius:var(--radius-xl);background:#fff;place-items:center;display:grid}.web-mfa-codes{gap:var(--space-2);padding:var(--space-3);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);background:var(--surface-sunken);grid-template-columns:repeat(auto-fill,minmax(140px,1fr));margin:0;list-style:none;display:grid}.web-mfa-codes code{letter-spacing:.06em;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.web-status-card{align-items:center;gap:var(--space-4);max-width:620px;padding:var(--space-5);display:flex}.web-timeout-dialog{gap:var(--space-4);border-radius:var(--radius-2xl)!important;width:min(100%,440px)!important}.web-status-card .web-pill,.web-status-card .web-card-copy{margin:0}.web-status-indicator{border:4px solid var(--accent-soft);border-top-color:var(--accent);border-radius:50%;flex:0 0 42px;width:42px;height:42px;animation:1s linear infinite web-status-spin}.web-status-indicator.is-static{border-color:var(--danger-soft);border-top-color:var(--danger-soft);color:var(--danger);font-weight:700;font-size:var(--text-title-3);place-items:center;line-height:1;animation:none;display:grid}@keyframes web-status-spin{to{transform:rotate(360deg)}}.booking-grid{grid-template-columns:120px repeat(7,minmax(108px,1fr));gap:8px;display:grid}.booking-grid-row{display:contents}.booking-grid-head,.booking-grid-time,.booking-cell{border-radius:var(--radius-md);text-align:center;min-height:42px;font-size:var(--text-caption-2);white-space:nowrap;text-overflow:ellipsis;place-items:center;padding:4px;line-height:1.15;display:grid;overflow:hidden}.booking-grid-head{color:var(--text-secondary);background:#e9f7f4c2;font-size:10px;font-weight:600}.booking-grid-time{border:1px solid var(--separator);color:var(--text-secondary);background:#f8fafceb;gap:2px;font-size:10px;font-weight:600}.booking-grid-time span{display:block}.booking-cell{border:1px solid var(--border-subtle);min-width:0;color:var(--text-primary);cursor:pointer;transition:transform var(--dur-fast) var(--ease-standard), background var(--dur-fast) var(--ease-standard), border-color var(--dur-fast) var(--ease-standard);background:#ffffffe0;font-weight:600}.booking-cell.available{color:var(--accent-teal);background:#e9f7f4d1;border-color:#2f92853d}.booking-cell.selected{background:var(--accent);border-color:var(--accent);color:#fff;font-size:10px}.booking-cell.unavailable{cursor:default;color:var(--text-tertiary);background:#f1f5f9eb}.booking-cell:not(:disabled):hover{transform:translateY(-1px)}.cancel-session-overlay{z-index:120!important;place-items:center!important;padding:20px!important;display:grid!important}.cancel-session-dialog{border:1px solid var(--border-subtle);border-radius:var(--radius-2xl);background:var(--surface-card);width:min(100%,420px);box-shadow:var(--shadow-raised);gap:14px;padding:20px;display:grid}.web-dialog-grabber{display:none}.web-dialog-heading{gap:4px;display:grid}.web-dialog-heading .web-kicker,.web-dialog-heading .web-card-title{margin:0}.web-dialog-footer{flex-direction:column;gap:10px;margin-top:4px;display:flex}.web-dialog-footer>.web-button,.web-dialog-footer>.auth-view-primary-button,.web-dialog-footer>.auth-view-secondary-button{width:100%}.cancel-session-summary{border:1px solid var(--border-subtle);border-radius:var(--radius-lg);background:var(--surface-sunken);gap:4px;padding:12px;display:grid}.cancel-session-actions{display:grid}.cancel-session-actions .web-button{width:100%}.cancel-session-actions .web-button.danger{border-color:var(--danger);background:var(--danger);color:var(--text-on-accent);box-shadow:0 8px 18px #c0392b29}.cancel-session-actions .web-button.danger:hover:not(:disabled){border-color:var(--danger);background:var(--danger);filter:brightness(.9)}@media (width<=720px){.web-shell{padding:var(--screen-margin-block) var(--screen-margin) var(--screen-margin-block-end)}.web-shell.web-mobile-shell{padding:var(--space-2) var(--web-mobile-gutter) var(--web-mobile-bottom)}.therapist-availability-shell,.web-mfa-shell{padding:12px var(--screen-margin) calc(32px + env(safe-area-inset-bottom,0px))}.therapist-availability-header,.web-mfa-header{padding-inline:0}.therapist-calendar-connection,.therapist-vacations,.web-mfa-card{padding:16px!important}.therapist-calendar-connection .imc-btn,.therapist-working-hours-actions .imc-btn{width:100%}.web-hero{flex-direction:column}.client-credit-card{grid-template-columns:1fr}.booking-sheet-overlay{padding:12px}.booking-sheet{max-height:calc(100dvh - 24px);padding:var(--space-3) var(--screen-margin) var(--space-4);border-radius:var(--radius-xl);gap:8px}.booking-sheet-header{min-height:34px;padding-right:30px}.booking-sheet-body{gap:10px}.booking-day-picker{grid-template-columns:repeat(7,72px)}.booking-slot-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.therapist-onboarding-steps{grid-template-columns:1fr}.therapist-calendar-primary-actions,.therapist-calendar-primary-actions .imc-btn,.therapist-vacation-form-actions,.therapist-vacation-form-actions .imc-btn,.therapist-vacation-actions,.therapist-vacation-actions .imc-btn{width:100%}.therapist-vacation-row,.vacation-conflict-row,.therapist-video-session-actions{flex-direction:column;align-items:stretch}.therapist-video-session-buttons{justify-content:stretch}.therapist-video-session-buttons .web-button{flex:180px}.therapist-account-detail-row,.therapist-account-action-row,.client-account-action-row{align-items:flex-start}.therapist-account-action-row,.client-account-action-row{grid-template-columns:minmax(0,1fr);width:100%}.therapist-account-value{text-align:left;max-width:100%}.therapist-account-action,.therapist-account-action .web-button,.therapist-account-action .imc-btn,.client-account-action,.client-account-action .web-button,.client-account-action .imc-btn{width:100%}.therapist-account-action,.client-account-action{justify-self:stretch;min-width:0}.web-mfa-footer{flex-direction:column;align-items:stretch}.booking-grid{grid-template-columns:54px repeat(7,minmax(66px,1fr));gap:6px;padding-bottom:2px;overflow-x:auto}.booking-grid-head,.booking-grid-time,.booking-cell{min-height:44px;padding:4px}.booking-sheet-footer{gap:8px}.booking-sheet-footer .web-button{min-height:40px;font-size:var(--text-caption-1);padding:0 12px}.cancel-session-dialog{width:min(100%,520px);padding:10px var(--screen-margin) calc(20px + env(safe-area-inset-bottom,0px));border-radius:var(--radius-3xl) var(--radius-3xl) 0 0}.cancel-session-overlay{align-items:flex-end!important;padding:0!important;display:flex!important}.web-dialog-grabber{border-radius:var(--radius-full);background:var(--warm-300);justify-self:center;width:36px;height:5px;display:block}}.client-sessions-calendar{gap:14px;margin-top:16px;display:grid}.client-sessions-calendar-nav,.client-sessions-calendar-session,.client-sessions-calendar-actions{align-items:center;gap:10px;display:flex}.client-sessions-calendar-nav{justify-content:space-between}.client-sessions-calendar-nav h3,.client-sessions-calendar-detail h3{font-size:var(--text-title-3);margin:0}.client-sessions-calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;display:grid}.client-sessions-calendar-row{display:contents}.client-sessions-calendar-weekday{color:var(--warm-600);font-size:var(--text-caption-1);text-align:center;padding:4px 0}.client-sessions-calendar-day{border:1px solid var(--warm-200);border-radius:var(--radius-md);background:var(--surface-card);min-height:50px;color:var(--warm-900);cursor:pointer;text-align:left;padding:6px;display:grid}.client-sessions-calendar-day.selected{border-color:var(--teal-600);box-shadow:inset 0 0 0 1px var(--teal-600)}.client-sessions-calendar-indicators{align-self:end;gap:3px;display:flex}.client-sessions-calendar-indicators i,.client-sessions-status span{font-style:normal}.client-sessions-calendar-indicators i{background:var(--warm-600);border-radius:50%;width:6px;height:6px}.client-sessions-calendar-indicators .status-booked,.client-sessions-status.status-booked{color:var(--teal-700)}.client-sessions-calendar-indicators .status-completed,.client-sessions-status.status-completed{color:var(--teal-600)}.client-sessions-calendar-indicators .status-cancelled,.client-sessions-status.status-cancelled{color:var(--warm-600);text-decoration:line-through}.client-sessions-calendar-indicators .status-no_show,.client-sessions-status.status-no_show{color:var(--amber-500);font-style:italic}.client-sessions-calendar-indicators .status-booked{background:var(--teal-700)}.client-sessions-calendar-indicators .status-completed{background:var(--teal-600)}.client-sessions-calendar-indicators .status-cancelled{background:var(--warm-600)}.client-sessions-calendar-indicators .status-no_show{background:var(--amber-500)}.client-sessions-calendar-detail,.client-sessions-calendar-group{gap:10px;display:grid}.client-sessions-calendar-session{border-left:3px solid var(--warm-300);background:var(--warm-50);justify-content:space-between;padding:12px}.client-sessions-status{font-size:var(--text-caption-1);margin:4px 0 0}.client-sessions-calendar-actions{flex-wrap:wrap;justify-content:flex-end}@media (width<=900px){.web-auth-shell{grid-template-columns:1fr}.web-auth-hero{min-height:260px}.web-grid.hero-layout{grid-template-columns:1fr}.web-tabbar{justify-content:center;width:calc(100% - 28px)}.web-tab{padding:6px 10px}.web-mobile-shell .web-tabbar{justify-content:space-between;width:min(358px,100vw - 32px)}.web-mobile-shell .web-tab{padding:6px 8px}}@media (prefers-reduced-motion:reduce){.web-button,.web-spinner,.web-tab-icon,.web-segmented-thumb,.booking-day,.booking-slot,.therapist-call-control-icon,.therapist-waveform.is-active span{transition-duration:.01ms;animation:none}.therapist-connecting-spinner,.therapist-softphone-avatar-rings.is-pulsing,.therapist-live-dot{animation:none}}
