/* The owner controls the hue. Tone pairs keep text readable at every hue. */
:root[lang] {
  --h: var(--brand-hue, 342);
  --paper: hsl(var(--h) 75% 97%);
  --wash: hsl(var(--h) 68% 94%);
  --tint: hsl(var(--h) 62% 90%);
  --ink: hsl(var(--h) 31% 18%);
  --muted: hsl(var(--h) 16% 34%);
  --accent: hsl(var(--h) 38% 32%);
  --line: hsl(var(--h) 26% 82%);
  --inverse: white;
  --deep: hsl(var(--h) 38% 20%);
  --dark: var(--accent);
  --green: var(--accent);
  --sage-dark: var(--accent);
  --sage: hsl(var(--h) 33% 65%);
  --mint: var(--tint);
  --border: var(--line);
  --comfortable-text: var(--muted);
  --comfortable-accent: var(--accent);
  --appearance-inset: var(--wash);
  --appearance-selected: var(--tint);
  --appearance-border: var(--line);
  --appearance-text: var(--ink);
  --appearance-muted: var(--muted);
  background-color: var(--paper);
  color: var(--ink);
}
:root[lang]:is([data-theme="dark"],[data-theme="oled"]) {
  --paper: hsl(var(--h) 15% 9%);
  --white: hsl(var(--h) 17% 13%);
  --wash: hsl(var(--h) 18% 16%);
  --tint: hsl(var(--h) 22% 22%);
  --ink: hsl(var(--h) 30% 94%);
  --muted: hsl(var(--h) 18% 78%);
  --accent: hsl(var(--h) 55% 81%);
  --line: hsl(var(--h) 15% 32%);
  --inverse: hsl(var(--h) 33% 13%);
  --deep: var(--inverse);
  --night-section: var(--paper);
  --night-soft: var(--tint);
  --night-feature: var(--wash);
  --night-chrome: var(--paper);
  --night-lab: var(--paper);
  --night-footer: var(--paper);
  --night-on-accent: var(--inverse);
  --night-accent-hover: hsl(var(--h) 54% 88%);
  --appearance-surface: var(--white);
  --portal-bg: var(--paper);
  --portal-surface: var(--white);
  --portal-inset: var(--wash);
  --portal-sidebar: var(--paper);
  --portal-accent: var(--accent);
  --portal-on-accent: var(--inverse);
}
:root[lang][data-theme="oled"] {
  --paper: #000;
  --white: #000;
  --wash: hsl(var(--h) 14% 6%);
  --tint: hsl(var(--h) 20% 12%);
}
:root[lang] body {background-color:var(--paper);color:var(--ink)}
:root[lang] ::selection {background:var(--accent);color:var(--inverse)}
:root[lang] :focus-visible {outline-color:var(--accent)}
:root[lang] :is(.hero h1 em,.section h2 em,.endcap h2 em,.brand-period,.auth-safety svg,.endcap-eyebrow) {color:var(--accent)}
:root[lang] :is(.header,.topbar) {background:var(--paper);border-color:var(--line)}
:root[lang] :is(.values-band,.network-section,.journey-section,.qualification-panel,.preview-appointment,.filter-pills,.mini-site,.owner-toolkit-grid article) {background:var(--wash);border-color:var(--line)}
:root[lang] :is(.endcap,.journey-detail,.preview-bottom,.founder-portrait-caption,.stat-icon,.task-icon:not(.peach),.service-feature .service-arrow,.credential-icon,.journey-detail-icon,.preview-appointment-icon,.network-card-icon) {background:var(--tint);color:var(--ink)}
:root[lang] .service-feature {background:linear-gradient(135deg,var(--tint),var(--wash));border-color:var(--line)}
:root[lang] :is(.blob-lilac,.founder-shape-one) {background:var(--tint)}
:root[lang] .founder-portrait:not(:has(.founder-photo)) {background:linear-gradient(145deg,var(--tint),var(--sage));color:var(--ink)}
:root[lang] .network-orbit {background:radial-gradient(circle at center,var(--tint) 0 28%,transparent 29%)}
:root[lang] :is(.scroll-track span,.preview-meter span:nth-child(-n+3),.eyebrow-line) {background:var(--sage)}
:root[lang] :is(.nav,.endcap-inner>p:not(.endcap-eyebrow),.journey-step,.lab-panel>p) {color:var(--muted)}
:root[lang] :is(.button-dark,.primary,.preview-button) {background:var(--accent);color:var(--inverse)}
:root[lang] :is(.button-dark,.primary,.preview-button):hover {background:color-mix(in srgb,var(--accent) 88%,var(--ink));color:var(--inverse)}
:root[lang]:where(:not([data-theme="dark"]):not([data-theme="oled"])) :is(.lab-section,.footer) {background:var(--deep);color:white}
:root[lang] :is(.footer-main p,.footer-bottom p,.footer-bottom>div,.lab-footnote,.lab-copy>p) {color:hsl(var(--h) 19% 83%)}
:root[lang]:where(:not([data-theme="dark"]):not([data-theme="oled"])) :is(.auth-brand,.sidebar) {background:var(--tint);color:var(--ink)}
:root[lang]:where(:not([data-theme="dark"]):not([data-theme="oled"])) :is(.auth-brand p,.sidebar nav button,.sidebar .account-button,.sidebar .account-button small,.sidebar .security-link,.sidebar .logout) {color:var(--ink)}
:root[lang] :is(.sidebar,.auth-brand) .brand>span:last-child {color:var(--accent)}
:root[lang] :is(.sidebar nav button.active,.sidebar nav button:hover,.avatar) {background:var(--accent);color:var(--inverse)}
:root[lang] :is(.brand-mark,.sidebar .security-link) {border-color:var(--line)}
:root[lang] .appearance-panel:has(.site-colour-setting) {max-height:75vh;max-height:75dvh;overflow-y:auto;overscroll-behavior:contain}
.site-colour-setting {border-top:1px solid var(--line);margin-top:6px;padding:12px 8px 4px;display:grid;gap:8px}
.site-colour-setting label {font-size:calc((14px) * var(--text-scale, 1));font-weight:700}
.site-colour-setting p,.site-colour-setting small {font-size:calc((12px) * var(--text-scale, 1));margin:0;color:var(--muted)}
.site-colour-setting select {color:var(--ink);background:var(--appearance-surface)}
.site-colour-setting .hue-control {font-size:calc((12px) * var(--text-scale, 1));color:var(--muted)}
.site-colour-setting input[type="range"] {display:block;accent-color:var(--accent);padding:0;min-height:32px}
.site-colour-setting .colour-sample {background:hsl(var(--sample-hue) 62% 90%);color:hsl(var(--sample-hue) 31% 18%);border-radius:7px;padding:10px;text-align:center;font-weight:600}
.site-colour-setting small:empty {display:none}

/* Footer navigation, sharing actions and staff editing controls. */
:root[lang] .footer .appearance-options {
  border-color: hsl(var(--h) 18% 55%);
  background: hsl(var(--h) 26% 16%);
}
:root[lang] .footer .appearance-options button,
:root[lang] .footer .haptics-toggle { color: hsl(var(--h) 30% 94%); }
:root[lang] .footer .appearance-options button:hover,
:root[lang] .footer .haptics-toggle:is(:hover,[aria-pressed="true"]) { background: hsl(var(--h) 25% 29%); }
:root[lang] .footer .appearance-options button[aria-pressed="true"] {
  background: hsl(var(--h) 44% 89%);
  color: hsl(var(--h) 32% 17%);
}
.footer .haptics-toggle, .footer .footer-bottom { border-color: hsl(var(--h) 16% 47%); }
@media (max-width:700px) {
  .footer .footer-main { gap: 18px; padding-block: 32px 20px; }
  .footer .footer-links { display:grid; width:100%; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 16px; }
  .footer .footer-links a { min-height:44px; line-height:1.35; font-size:calc((13px) * var(--text-scale, 1)); }
  .footer .footer-bottom { gap:16px; padding-block:18px 24px; }
  html[data-enhanced] .footer .experience-preferences { display:grid; width:100%; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
  .experience-preferences .appearance-options { grid-column:1/-1; }
  .experience-preferences .appearance-options button { flex:1; }
  .experience-preferences .haptics-toggle { justify-content:center; white-space:normal; }
  .footer .experience-preferences>span { grid-column:1/-1; margin-top:4px; text-align:left; }
}
@media screen and (max-width:480px) {
  .gp-card .gp-actions { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
  .gp-actions #gp-share:not([hidden]) { grid-column:1/-1; }
  .gp-card .gp-actions :is(a,button) { min-height:44px; padding-inline:8px; }
}
.loading .appearance-buttons .appearance-toggle svg {width:18px;height:18px;}
.loading .appearance-buttons .appearance-menu-toggle svg {width:14px;height:14px;}
@supports (field-sizing:content) {
  .studio-form .editor-fields textarea { field-sizing:content; min-height:5em; max-height:18rem; }
}


/* App-wide readability: shared by the public site, workspace and role previews. */
:root[lang] {
  --control-line:hsl(var(--h) 18% 43%);
  --line:hsl(var(--h) 24% 73%);
  --muted:hsl(var(--h) 17% 30%);
}
:root[lang]:is([data-theme="dark"],[data-theme="oled"]) {
  --paper:hsl(var(--h) 15% 8%);
  --white:hsl(var(--h) 17% 14%);
  --wash:hsl(var(--h) 18% 19%);
  --tint:hsl(var(--h) 22% 25%);
  --ink:hsl(var(--h) 30% 95%);
  --muted:hsl(var(--h) 17% 81%);
  --line:hsl(var(--h) 15% 42%);
  --control-line:hsl(var(--h) 15% 61%);
}
:root[lang][data-theme="oled"] {--paper:#000;--white:#000;--wash:hsl(var(--h) 14% 8%);--tint:hsl(var(--h) 20% 15%)}
:root[lang][data-theme] {
  --border:var(--line);--green:var(--accent);--mint:var(--tint);
  --appearance-surface:var(--white,#fff);--appearance-inset:var(--wash);--appearance-selected:var(--tint);
  --appearance-border:var(--control-line);--appearance-text:var(--ink);--appearance-muted:var(--muted);
  --portal-bg:var(--paper);--portal-surface:var(--white,#fff);--portal-inset:var(--wash);--portal-sidebar:var(--paper);
  --portal-accent:var(--accent);--portal-on-accent:var(--inverse);
}
:root[lang][data-theme] :is(.primary,.preview-button,.button-dark,.button-small-dark) {
  background:var(--accent);color:var(--inverse);border-color:var(--accent);transition:none;
}
:root[lang][data-theme] :is(.primary,.preview-button,.button-dark,.button-small-dark):hover {
  background:color-mix(in srgb,var(--accent) 88%,var(--ink));color:var(--inverse);
}
:root[lang][data-theme] :is(.secondary,.button-outline,.appearance-toggle,.appearance-menu-toggle,.view-as-button) {
  background:var(--appearance-surface);color:var(--ink);border-color:var(--control-line);
}
:root[lang][data-theme] :is(input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="file"]),textarea,select) {
  color:var(--ink);background:var(--appearance-surface);border-color:var(--control-line);border-width:1px;
}
:root[lang][data-theme] :is(input,textarea)::placeholder {color:var(--muted);opacity:1}
:root[lang][data-theme] :is(button,input,textarea,select):disabled {
  opacity:1;color:var(--muted);background:var(--wash);border-color:var(--control-line);border-style:dashed;
}
:root[lang][data-theme] :is(button,a,input,textarea,select,summary,[tabindex]):focus-visible {
  outline:3px solid var(--accent);outline-offset:3px;
}
:root[lang][data-theme] :is(.footer,.lab-section) :is(button,a,[tabindex]):focus-visible {outline-color:#fff}
:root[lang][data-theme] :is(.primary,.secondary,.text-button,.text-link,.button,.appearance-toggle,.appearance-option strong,.view-as-button) {font-size:calc((14px) * var(--text-scale, 1));line-height:1.5}
:root[lang][data-theme] :is(.workspace-main,.auth-panel,.form-dialog,.view-as-appointments) p {font-size:calc((16px) * var(--text-scale, 1));line-height:1.65}
:root[lang][data-theme] :is(.field-hint,.workspace-footnote,.count-label,.editor-status,.overview-freshness,.draft-status) {font-size:calc((14px) * var(--text-scale, 1));line-height:1.6;color:var(--muted)}
:root[lang][data-theme] :is(.workspace-main,.auth-panel,.form-dialog,.sidebar-bottom) small {font-size:calc((14px) * var(--text-scale, 1));line-height:1.6}
:root[lang][data-theme] :is(.workspace-main,.auth-panel,.form-dialog) label {font-size:calc((15px) * var(--text-scale, 1));line-height:1.5}
:root[lang][data-theme] .workspace-main :is(input,textarea,select) {font-size:calc((16px) * var(--text-scale, 1))}
:root[lang][data-theme] :is(table,td) {font-size:calc((14px) * var(--text-scale, 1));line-height:1.6}
:root[lang][data-theme] th {font-size:calc((13px) * var(--text-scale, 1));font-weight:650;color:var(--ink);background:var(--wash)}
:root[lang][data-theme] .status {font-size:calc((13px) * var(--text-scale, 1));font-weight:600;line-height:1.5;white-space:normal}
:root[lang][data-theme] .sidebar :is(.ws-disclosure,.security-link,.logout) {font-size:calc((14px) * var(--text-scale, 1));line-height:1.5}
:root[lang][data-theme] .sidebar nav button:not(.ws-disclosure) {font-size:calc((16px) * var(--text-scale, 1));line-height:1.45}
:root[lang][data-theme] .breadcrumb {font-size:calc((14px) * var(--text-scale, 1));line-height:1.4;color:var(--muted)}
:root[lang][data-theme] .breadcrumb strong {font-weight:650}
:root[lang][data-theme] :is(.editor-tabs,.practice-tabs,.business-tabs,.appointment-tabs,.lab-tabs) button {font-size:calc((14px) * var(--text-scale, 1));line-height:1.5}
:root[lang][data-theme] :is(.editor-tabs,.practice-tabs,.business-tabs,.appointment-tabs) :is(button.active,button[aria-selected="true"],button[aria-pressed="true"]) {
  color:var(--ink);background:var(--tint);border-color:var(--accent);font-weight:700;
}
:root[lang][data-theme] :is(.lab-tab[aria-selected="true"],.journey-step[aria-pressed="true"],.filter-pill.active,.appearance-option[aria-pressed="true"]) {
  color:var(--ink);background:var(--tint);border-color:var(--accent);font-weight:700;
}
:root[lang][data-theme] :is(.journey-step[aria-pressed="true"],.appearance-option[aria-pressed="true"]) :is(strong,small,span) {color:inherit}
:root[lang][data-theme] .nav {font-size:calc((14px) * var(--text-scale, 1));line-height:1.5}
:root[lang][data-theme] :is(.launch-note,.hero-footnote,.hero-underline,.service-count,.service-label,.stage-caption,.founder-caption,.service-tag,.eyebrow,.faq-tag) {font-size:calc((13px) * var(--text-scale, 1));line-height:1.5}
:root[lang][data-theme] :is(.service-card p,.journey-copy>p,.story-copy>p,.faq-intro p) {font-size:calc((16px) * var(--text-scale, 1));line-height:1.7}
:root[lang][data-theme] :is(.journey-step small,.footer a,.footer small,.footer-bottom p,.footer-bottom>div,.appearance-option small,.appearance-panel>p,.site-colour-setting p,.site-colour-setting small) {font-size:calc((14px) * var(--text-scale, 1));line-height:1.6}
:root[lang][data-theme] .footer-links a {min-height:44px}
@media(max-width:600px) {
  :root[lang][data-theme] :is(.workspace-main,.auth-panel,.form-dialog) label {font-size:calc((14px) * var(--text-scale, 1))}
  :root[lang][data-theme] .breadcrumb {font-size:calc((13px) * var(--text-scale, 1))}
  :root[lang][data-theme] :is(.view-as-controls .view-as-picker,.view-as-note p) {font-size:calc((12px) * var(--text-scale, 1))}
}
@media(forced-colors:active) {
  :root[lang] :is(button,a,input,textarea,select,summary):focus-visible {outline:3px solid Highlight}
  :root[lang] :is(button.active,[aria-selected="true"],[aria-pressed="true"]) {outline:2px solid Highlight;outline-offset:-2px}
}

:root[lang][data-theme] :is(.values-inner span,.service-badge,.service-number,.network-tags span,.founder-credentials strong,.founder-credentials div span,.journey-detail-label,.lab-card-top,.lab-card-caption,.lab-footnote,.lab-panel-bottom>span:first-child,.modal-scope) {font-size:calc((13px) * var(--text-scale, 1));line-height:1.6}
:root[lang][data-theme] :is(.filter-pill,.service-action,.care-legal-note,.journey-note,.founder-side-note,.network-card strong,.haptics-toggle,.appearance-options button) {font-size:calc((14px) * var(--text-scale, 1));line-height:1.6}
:root[lang][data-theme] :is(.journey-detail p,.network-card p,.footer-main p) {font-size:calc((15px) * var(--text-scale, 1));line-height:1.7}
:root[lang][data-theme] :is(.faq-question,.faq-answer>div) {font-size:calc((16px) * var(--text-scale, 1));line-height:1.65}
:root[lang][data-theme] :is(.icon-button,.calendar-control,.appearance-toggle,.appearance-menu-toggle) svg {stroke-width:2}

:root[lang][data-theme] .eyebrow {color:var(--accent)}
:root[lang][data-theme] .founder-portrait-caption :is(strong,span) {color:var(--ink)}
:root[lang]:not([data-theme="dark"]):not([data-theme="oled"]) .lab-section :is(.eyebrow,h2 em) {color:hsl(var(--h) 55% 84%)}
:root[lang]:not([data-theme="dark"]):not([data-theme="oled"]) .lab-section .lab-copy>p:not(.eyebrow) {color:hsl(var(--h) 20% 86%)}
:root[lang][data-theme] :is(.format-stage,.footer-bottom>div>span) {font-size:calc((13px) * var(--text-scale, 1));line-height:1.6}
:root[lang][data-theme] .founder-edit-link {font-size:calc((14px) * var(--text-scale, 1));min-height:44px;line-height:1.6}

:root[lang][data-theme] .founder-side-note,:root[lang][data-theme] .founder-side-note span {color:var(--ink)}
:root[lang][data-theme] .lab-interactive .lab-footnote {color:var(--muted);font-size:calc((14px) * var(--text-scale, 1));line-height:1.65}
:root[lang][data-theme] :is(.journey-step-num,.lab-panel-stage,.endcap-eyebrow) {font-size:calc((13px) * var(--text-scale, 1));line-height:1.6}

@media(min-width:851px) and (max-width:1000px){:root[lang][data-theme] .header .nav{font-size:calc((13px) * var(--text-scale, 1));gap:10px}}

@media(max-width:360px){:root[lang][data-theme] .header-actions .button-small{font-size:calc((13px) * var(--text-scale, 1))}}

/* Personal text size. Fixed font sizes below use this scale, including controls. */
:root[data-text-size="larger"]{--text-scale:1.25}
:root[data-text-size="largest"]{--text-scale:1.5}
body{font-size:calc(16px * var(--text-scale,1))}
.text-size-setting{border-top:1px solid var(--appearance-border,var(--line));margin-top:7px;padding:12px 4px 4px;min-width:0}
.text-size-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 4px 10px;color:var(--appearance-text,var(--ink));font-size:calc((14px) * var(--text-scale, 1))}
.text-size-heading output{font-variant-numeric:tabular-nums;font-size:calc((13px) * var(--text-scale, 1));color:var(--appearance-muted,var(--muted))}
.text-size-choices{display:flex;gap:5px;flex-wrap:wrap}
.text-size-choices button{flex:1;min-width:0;min-height:44px;padding:9px 6px;border:1px solid var(--appearance-border,var(--line));border-radius:8px;background:var(--appearance-surface,var(--paper));color:var(--appearance-text,var(--ink));font:inherit;font-size:calc((12px) * var(--text-scale, 1));line-height:1.4;overflow-wrap:anywhere;cursor:pointer}
.text-size-choices button[aria-pressed="true"]{background:var(--appearance-selected,var(--tint));border:2px solid var(--accent);font-weight:700}
.text-size-setting>small{display:block;margin:8px 4px 0;font-size:calc((12px) * var(--text-scale, 1));line-height:1.5;color:var(--appearance-muted,var(--muted))}
.appearance-panel{max-height:calc(100dvh - 100px);overflow-y:auto;overscroll-behavior:contain}

/* Give enlarged text space to reflow and keep the size control easy to reach. */
.text-size-choices button{flex:1 0 auto;white-space:nowrap;overflow-wrap:normal}
.text-size-setting:first-child{border-top:0;margin-top:0;padding-top:4px;padding-bottom:12px;border-bottom:1px solid var(--appearance-border,var(--line))}
.appearance-buttons .appearance-menu-toggle{width:auto;min-width:44px;padding:0 9px}
:root[lang] .sidebar .brand{font-size:calc(28px + 0 * var(--text-scale,1))}
:root[data-text-size]:not([data-text-size="standard"]) :is(h1,h2,h3){overflow-wrap:anywhere;hyphens:auto}
@media(min-width:851px) and (max-width:1250px){
:root[data-text-size]:not([data-text-size="standard"]) .header .menu-toggle{display:inline-grid}
:root[data-text-size]:not([data-text-size="standard"]) .header .nav{position:absolute;top:100%;left:0;right:0;display:flex;flex-direction:column;align-items:stretch;gap:0;padding:12px 24px;background:var(--paper);border-bottom:1px solid var(--line);visibility:hidden;opacity:0;pointer-events:none}
:root[data-text-size]:not([data-text-size="standard"]) .header .nav.is-open{visibility:visible;opacity:1;pointer-events:auto}
:root[data-text-size]:not([data-text-size="standard"]) .header .nav>a{padding:12px 3px;white-space:normal}
}

:root[data-text-size]:not([data-text-size="standard"]) :is(.lab-heading,.lab-interactive){min-width:0}
:root[data-text-size]:not([data-text-size="standard"]) .lab-tab{white-space:normal;overflow-wrap:anywhere}
:root[data-text-size]:not([data-text-size="standard"]) .lab-panel-bottom{flex-wrap:wrap}
@media(max-width:850px){:root[data-text-size]:not([data-text-size="standard"]) .lab-wrap{grid-template-columns:minmax(0,1fr)}}

@media(max-width:480px){:root[data-text-size]:not([data-text-size="standard"]) .owner-shortcuts{grid-template-columns:minmax(0,1fr)}}

:root[data-text-size]:not([data-text-size="standard"]) .sidebar nav button{white-space:normal;overflow-wrap:anywhere}

/* Reflow at enlarged text sizes: keep headings, forms and actions readable. */
@media(max-width:700px){
:root[data-text-size="largest"] .page-heading{flex-wrap:wrap}
:root[data-text-size="largest"] .page-heading>div{flex:1 1 100%;min-width:0}
:root[data-text-size="largest"] .calendar-switch{max-width:100%;flex-wrap:wrap}
:root[data-text-size="largest"] .calendar-switch button{flex:1 0 auto;white-space:nowrap}
:root[data-text-size="largest"] .calendar-jump{width:100%}
:root[data-text-size="largest"] .calendar-jump form{position:static;width:100%;max-width:100%;display:grid;grid-template-columns:minmax(0,1fr)}
:root[data-text-size="largest"] .account-security .security-summary{grid-template-columns:minmax(0,1fr)}
:root[data-text-size="largest"] .account-security .page-heading p{overflow-wrap:anywhere}
}
@media(max-width:500px){:root[data-text-size="largest"] .calendar-times{grid-template-columns:minmax(0,1fr)}}
@media(max-width:700px){
:root[data-text-size="largest"] :is(.practice-sticky-actions,.invite-actions,.owner-save-bar){position:static}
}
@media(max-width:500px){:root[data-text-size="largest"] .practice-week{grid-template-columns:minmax(0,1fr)}}
@media(max-width:600px){
:root[data-text-size="largest"] .view-as-tabs{flex-direction:column;align-items:stretch;width:100%}
:root[data-text-size="largest"] .view-as-tabs button{width:100%;white-space:normal}
}
@media(max-width:700px){
:root[lang][data-text-size="largest"] .owner-calendar .page-heading{display:flex;flex-direction:column;align-items:stretch}
:root[lang][data-text-size="largest"] .owner-calendar .page-heading>div{display:block;flex:0 1 auto}
:root[lang][data-text-size="largest"] .owner-calendar .page-heading>button{align-self:flex-start}
:root[data-text-size="largest"] .calendar-switch{display:flex}
:root[data-text-size="largest"] .business-form{min-width:0;max-width:100%}
:root[data-text-size="largest"] .business-field{min-width:0;grid-template-columns:minmax(0,1fr)}
:root[data-text-size="largest"] .business-field :is(input,select,textarea){min-width:0;max-width:100%}
}

.local-datetime-parts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;min-width:0}
.local-datetime-parts label{margin:0;min-width:0}
@media(max-width:700px){.local-datetime-parts{grid-template-columns:minmax(0,1fr)}}

@media(min-width:481px) and (max-width:1050px){:root[data-text-size="largest"] .owner-shortcuts{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Keep all form sections visible when larger labels would need horizontal scrolling. */
@media(max-width:700px){
:root[data-text-size="largest"] .practice-tabs{flex-wrap:wrap;overflow:visible;gap:6px}
:root[data-text-size="largest"] .practice-tabs button{flex:1 1 auto;min-width:0;max-width:100%;white-space:normal}
}
