@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/dm-sans-latin-ext-400-normal-BtiwyxMk.woff2) format("woff2"),url(/assets/dm-sans-latin-ext-400-normal-BjWJ59Pq.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/dm-sans-latin-400-normal-CW0RaeGs.woff2) format("woff2"),url(/assets/dm-sans-latin-400-normal-BwCSEQnW.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/dm-sans-latin-ext-500-normal-BJfUCQsA.woff2) format("woff2"),url(/assets/dm-sans-latin-ext-500-normal-DR84L5F-.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/dm-sans-latin-500-normal-B9HHJjqV.woff2) format("woff2"),url(/assets/dm-sans-latin-500-normal-Dr3UlScf.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/dm-sans-latin-ext-600-normal-4vooXBpG.woff2) format("woff2"),url(/assets/dm-sans-latin-ext-600-normal-DRtaDpgU.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/dm-sans-latin-600-normal-Aqo67rzb.woff2) format("woff2"),url(/assets/dm-sans-latin-600-normal-BmdmIIQ2.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"Source Serif 4";src:url(/assets/SourceSerif4-Regular.ttf) format("truetype");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:"Source Serif 4";src:url(/assets/SourceSerif4-It.ttf) format("truetype");font-style:italic;font-weight:400;font-display:swap}:root{font-family:DM Sans,sans-serif;color:#2c3e52;background:#f0e6d2;font-synthesis:none;--navy: #1f2d3d;--muted: #526274;--paper: #fbf8f1;--line: #dacdb5;--accent: #9c4e2f;--text-h1: clamp(2.25rem, 1.6rem + 1.6vw, 4rem);--text-h2: clamp(1.75rem, 1.4rem + .7vw, 2.5rem);--text-h3: clamp(1.25rem, 1.2rem + .2vw, 1.375rem);--text-body: clamp(1rem, .98rem + .1vw, 1.0625rem);--text-small: .9375rem;--text-caption: .8125rem;--text-micro: .6875rem;font-size:16px;line-height:1.55}*{box-sizing:border-box;scrollbar-color:#b9a88c #f6f0e2}::selection{color:#1f2d3d;background:#dcc59b}input,textarea{caret-color:#9c4e2f}.appointment-time,.invoice-summary,.practice-summary,.payment-history,time,input[type=number]{font-variant-numeric:tabular-nums}body{margin:0}button,input,select,textarea{font:inherit;color:inherit}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}button{border:1px solid var(--line);border-radius:5px;min-height:44px;background:var(--paper);padding:.65rem 1rem;font-size:var(--text-small);font-weight:500;display:inline-flex;gap:.55rem;align-items:center;justify-content:center}button:hover:not(:disabled){background:#f0e6d2;border-color:#b9a88c}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible,[role=button]:focus-visible{outline:3px solid #9c4e2f;outline-offset:3px}button.primary{background:var(--navy);color:var(--paper);border-color:var(--navy)}button.primary:hover:not(:disabled){background:#384d63}.primary svg{flex-shrink:0}.text-button{border:0;padding-left:0;color:var(--accent);background:transparent}.shell{max-width:1440px;margin:0 auto;padding-left:1.5rem;padding-right:1.5rem}h1,h2,h3,h4,p{margin:0}h1,h2,h3,h4{color:var(--navy)}h1,h2,h3{font-family:"Source Serif 4",Georgia,serif;font-weight:400;line-height:1.15}h1{font-size:var(--text-h1);letter-spacing:-.035em}h2{font-size:var(--text-h2);letter-spacing:-.025em}h3{font-size:var(--text-h3)}h4{font-size:var(--text-body);font-weight:600}p{font-size:var(--text-body)}.small,small{font-size:var(--text-caption)}.muted{color:var(--muted)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:absolute;top:-80px;left:1rem;z-index:100;background:var(--paper);padding:1rem;color:var(--navy)}.skip-link:focus{top:1rem}.demo-banner{padding:.5rem 1rem;background:var(--navy);color:#f6f0e2;display:flex;align-items:center;justify-content:center;gap:.5rem;font-size:var(--text-caption)}.demo-dot{width:6px;height:6px;background:#dcc1a4;border-radius:50%}.banner-detail{opacity:.85;margin-left:.25rem}.topbar{background:var(--paper);border-bottom:1px solid var(--line)}.header-inner{display:flex;justify-content:space-between;align-items:center;min-height:100px;gap:1.5rem}.brand{display:flex;align-items:center;gap:.8rem;text-decoration:none;color:var(--navy);flex-shrink:0}.brand img{width:46px;height:50px;object-fit:contain}.brand>span{font-family:"Source Serif 4",Georgia,serif;font-size:var(--text-h3);line-height:1.15}.brand small{display:block;font-family:DM Sans,sans-serif;font-size:var(--text-micro);letter-spacing:.04em;color:var(--muted);margin-top:.4rem}.topbar nav{display:flex;align-self:stretch;gap:.5rem}.topbar nav button{border:0;border-bottom:3px solid transparent;border-radius:0;background:transparent;padding:.75rem 1rem;color:var(--muted)}.topbar nav button.nav-active{color:var(--navy);border-bottom-color:var(--accent)}.owner{display:flex;gap:.7rem;align-items:center;font-size:var(--text-caption)}.avatar{width:38px;height:38px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;font-size:var(--text-caption);font-weight:500}.owner small{display:block;color:var(--muted);font-size:var(--text-micro)}.page-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:1.5rem;padding:2.6rem 0 1.8rem}.context{font-size:var(--text-caption);color:var(--muted);margin-bottom:.5rem}.practice-summary{display:flex;gap:2rem;padding-bottom:1.8rem;color:var(--muted);font-size:var(--text-caption);flex-wrap:wrap}.practice-summary strong{color:var(--navy);font-weight:600;margin-right:.25rem}.workspace{display:grid;grid-template-columns:286px minmax(0,1fr);background:var(--paper);border:1px solid var(--line);border-radius:6px;overflow:hidden;min-height:620px}.schedule{background:#f6f0e2;border-right:1px solid var(--line);padding-top:1.65rem;display:flex;flex-direction:column;min-width:0}.schedule-heading{padding:0 1.3rem;display:flex;align-items:center;justify-content:space-between;gap:.5rem}.schedule-heading h2{font-size:var(--text-h3)}.date-control input{padding:.25rem .4rem;width:137px;font-size:var(--text-caption);min-height:38px;background:transparent}.date-label{padding:.8rem 1.3rem 1.3rem;line-height:1.7}.date-label span{display:block}.appointment-row{width:100%;border:0;border-radius:0;border-top:1px solid var(--line);display:flex;flex-direction:column;align-items:flex-start;padding:1.3rem 1.25rem;gap:.25rem;background:transparent;text-align:left;position:relative;font-weight:400}.appointment-row:last-child{border-bottom:1px solid var(--line)}.appointment-row.selected{background:var(--paper)}.appointment-row.selected:before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:var(--accent)}.appointment-row:hover:not(:disabled){background:#ede3cf}.appointment-row strong{font-weight:600;font-size:var(--text-body)}.appointment-time{font-size:var(--text-caption);color:var(--accent);font-weight:600;margin-bottom:.2rem}.row-state{display:flex;align-items:center;gap:.5rem;font-size:var(--text-micro);color:var(--muted);margin-top:.5rem}.row-state svg{width:14px;height:14px}.flag-dot,.tab-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--accent)}.schedule-foot{margin-top:auto;padding:3rem 1.3rem 1.8rem}.schedule-foot p{font-family:"Source Serif 4",serif;font-style:italic;font-size:var(--text-body);margin-bottom:.45rem}.line-mark{display:block;width:32px;height:2px;background:#b8623d;margin-bottom:1rem}.schedule-empty{padding:1.3rem}.encounter{min-width:0}.encounter-heading{padding:1.8rem 2rem 1.5rem;display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.encounter-heading h2{margin:.35rem 0 .4rem}.badge{display:inline-flex;align-items:center;padding:.3rem .65rem;border:1px solid var(--line);border-radius:4px;font-size:var(--text-micro);font-weight:500;background:#f6f0e2;white-space:nowrap}.badge.success{background:#e6ece3;border-color:#c7d4c1;color:#33523e}.badge.warm{background:#f2ded2;border-color:#e1bfa9;color:#864123}.tabs{display:flex;padding:0 2rem;border-bottom:1px solid var(--line);gap:1rem}.tabs button{border:0;border-bottom:2px solid transparent;border-radius:0;background:transparent;padding:.8rem .15rem;font-size:var(--text-caption);color:var(--muted);gap:.35rem}.tabs button[aria-selected=true]{color:var(--navy);border-bottom-color:var(--accent)}.tab-content{padding:1.8rem 2rem 2rem}.section-intro{margin-bottom:1.6rem}.section-intro p{margin-top:.5rem;font-size:var(--text-caption)}.section-intro.row{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.visit-steps{border-top:1px solid var(--line)}.step{display:flex;justify-content:flex-start;width:100%;text-align:left;border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent;padding:1.1rem 0;gap:1rem}.step>svg{margin-left:auto;color:var(--muted);width:18px}.step>span:nth-child(2){flex:1}.step strong{display:block;font-size:var(--text-small);font-weight:500}.step small{display:block;color:var(--muted);margin-top:.2rem}.step-number{width:32px;height:32px;border:1px solid var(--line);border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--muted);font-size:var(--text-caption)}.step-number.done{background:#e6ece3;color:#33523e;border-color:#c7d4c1}.step-number svg{width:16px;height:16px}.visit-details{display:grid;grid-template-columns:1fr 1fr;gap:2rem;padding:1.6rem 0}.visit-details>div{display:flex;flex-direction:column;gap:.15rem;font-size:var(--text-caption)}.visit-details strong{font-weight:500}.detail-label{color:var(--muted);margin-bottom:.35rem;font-size:var(--text-micro)}.complete-action{margin-top:.8rem;padding:1.4rem;background:#f0e6d2;display:flex;align-items:center;gap:1rem;border-radius:4px}.complete-action>div{flex:1}.complete-action strong{font-size:var(--text-small);font-weight:500}.complete-action p{margin-top:.3rem}.complete-action button{flex-shrink:0}.complete-check{color:#33523e}.requirement{color:#924724;margin-top:.5rem}.critical{margin:0 2rem 1.2rem;background:#f2ded2;border-left:3px solid #9c4e2f;padding:1rem;display:flex;align-items:flex-start;gap:.75rem;color:#753c24}.critical>svg{flex-shrink:0;margin-top:2px}.critical>div{flex:1}.critical strong{font-size:var(--text-small)}.critical p{font-size:var(--text-caption);margin:.25rem 0}.critical button{font-size:var(--text-caption);background:transparent;border-color:#c19e87;padding:.4rem .65rem}.feedback{margin:1rem 0;padding:1rem;display:flex;gap:.75rem;align-items:center;position:relative}.feedback.error{background:#f2ded2;color:#753c24;border:1px solid #c19e87}.feedback>span{flex:1}.feedback>svg{flex-shrink:0}.feedback button{border:0;background:transparent;padding:0 .5rem}.empty{padding:4rem 2rem;text-align:center;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:1rem}.empty>svg{width:32px;height:32px}.empty p{max-width:30rem;color:var(--muted)}label{display:flex;flex-direction:column;gap:.4rem;font-size:var(--text-caption);font-weight:500}input,textarea,select{min-width:0;width:100%;border:1px solid #bdae96;border-radius:4px;background:#fffdf8;padding:.65rem .75rem;font-size:var(--text-small);font-weight:400;min-height:44px}textarea{resize:vertical;line-height:1.65}input::placeholder,textarea::placeholder{color:#6b756f;opacity:1}.soap-layout{display:grid;grid-template-columns:minmax(0,1fr) 235px;gap:1.8rem}.soap-fields{display:flex;flex-direction:column;gap:1rem}.soap-field>span{display:flex;align-items:center;gap:.5rem}.soap-field b{font-family:"Source Serif 4",serif;color:var(--accent);font-size:var(--text-h3);font-weight:400;width:20px}.soap-field textarea{font-size:var(--text-caption);min-height:114px}.body-chart{border-left:1px solid var(--line);padding-left:1.5rem;min-width:0}.body-chart h4{font-size:var(--text-small)}.segmented{display:flex;margin-top:1rem;border:1px solid var(--line);border-radius:4px;padding:3px;background:#f6f0e2}.segmented button{font-size:var(--text-caption);flex:1;background:transparent;border:0;min-height:38px;padding:.4rem}.segmented button.active{background:var(--paper);box-shadow:0 1px 2px #1f2d3d15}.laterality{display:flex;justify-content:space-between;font-size:var(--text-micro);color:var(--muted);margin-top:.75rem}.body-svg{display:block;width:100%;max-width:280px;margin:auto}.body-outline{fill:#efe4cf;stroke:#8f8069;stroke-width:1.3}.body-detail{fill:none;stroke:#bcab90;stroke-width:1}.body-region{cursor:pointer;outline:none}.region-hit{fill:transparent}.region-dot{fill:#a99b83;stroke:var(--paper);stroke-width:1.5}.body-region:hover .region-dot,.body-region:focus-visible .region-dot{fill:var(--accent);stroke:var(--navy);stroke-width:2}.body-region:focus-visible .region-hit{stroke:var(--accent);stroke-width:2;fill:#b8623d20}.body-region.marked .region-dot{fill:var(--accent)}.region-check{fill:none;stroke:#fff;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.marked-regions{display:flex;gap:.35rem;flex-wrap:wrap;margin-top:.75rem}.marked-regions button{font-size:var(--text-micro);padding:.3rem .5rem;min-height:44px;background:#f2ded2;border-color:#e1bfa9;color:#753c24}.note-actions{display:flex;align-items:center;justify-content:space-between;gap:1rem;border-top:1px solid var(--line);padding-top:1.3rem;margin-top:1.7rem}.button-group{display:flex;flex-wrap:wrap;gap:.5rem}.addenda{border-top:1px solid var(--line);margin-top:1rem;padding-top:1rem}.addenda label{margin:1rem 0}.addenda blockquote{margin:1rem 0;padding:1rem;border-left:2px solid var(--accent);background:#f6f0e2;white-space:pre-wrap}.addenda small{display:block;margin-top:.5rem;color:var(--muted)}.invoice-summary{margin:1.4rem 0;border-top:1px solid var(--line)}.invoice-summary>div{display:flex;justify-content:space-between;padding:.9rem 0;font-size:var(--text-small);gap:1rem}.invoice-summary strong{font-weight:500}.invoice-summary .balance{border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-weight:600;padding:1.2rem 0}.invoice-summary .balance strong{font-family:"Source Serif 4",serif;font-size:var(--text-h2);line-height:1}.callout,.terminal-state,.payment-complete{margin-top:1.5rem;padding:1.5rem;background:#f6f0e2;border:1px solid var(--line);border-radius:4px}.callout p,.terminal-state p,.payment-complete p{margin:.65rem 0;font-size:var(--text-small)}.terminal-state h4{margin-top:1rem}.terminal-state>button{margin-top:.5rem}.payment-complete>svg{color:#33523e;width:28px;height:28px;margin-bottom:.5rem}.simulator{margin-top:1.5rem;padding-top:1rem;border-top:1px solid var(--line)}summary{cursor:pointer;min-height:44px;align-content:center;font-size:var(--text-caption)}.simulator .button-group button{font-size:var(--text-caption)}.payment-form{display:grid;grid-template-columns:1fr auto;gap:1rem;margin-top:2rem;align-items:end}.payment-form>div{grid-column:1/-1}.payment-form input{max-width:200px}.payment-history{margin-top:2rem}.payment-history>div{display:grid;grid-template-columns:1fr 2fr auto;gap:1rem;padding:.9rem 0;border-bottom:1px solid var(--line);font-size:var(--text-caption)}.payment-history small{color:var(--muted);font-size:var(--text-micro)}.guardian-callout{padding:1rem;background:#f0e6d2;display:flex;gap:.75rem;align-items:flex-start;margin-bottom:1.5rem}.guardian-callout>svg{flex-shrink:0}.guardian-callout>div{flex:1}.guardian-callout strong{font-size:var(--text-small)}.intake-form{display:flex;flex-direction:column;gap:.8rem}.intake-form button{align-self:flex-start}.checkbox{display:flex;flex-direction:row;align-items:center;gap:.65rem;min-height:44px;font-size:var(--text-small)}.checkbox input{width:20px;height:20px;min-height:20px;flex-shrink:0;accent-color:var(--accent)}.consent{margin-top:2rem;border-top:1px solid var(--line);padding-top:1.5rem}.consent form{display:flex;flex-direction:column;gap:1rem;margin-top:.75rem}.consent form p{font-size:var(--text-small)}.consent form button{align-self:flex-start}.consent-confirmed{display:flex;align-items:center;gap:.75rem;font-size:var(--text-small);color:#33523e;margin-top:1rem}.consent-confirmed svg{flex-shrink:0}.client-directory,.activity{background:var(--paper);padding:2rem;border:1px solid var(--line);border-radius:6px}.search-label{max-width:400px;margin-bottom:.6rem}.client-list{margin-top:1.5rem}.client-record{display:grid;grid-template-columns:1fr 1.2fr auto;gap:2rem;border-top:1px solid var(--line);padding:1.7rem 0;align-items:start}.client-record h2{font-size:var(--text-h3);margin-bottom:.35rem}.client-record p{font-size:var(--text-small);overflow-wrap:anywhere}.client-record strong{font-size:var(--text-small);font-weight:500}.client-record .family-note{font-size:var(--text-caption);color:var(--accent);margin-top:.5rem}.activity>p{margin-top:.75rem}.activity ul{list-style:none;padding:0;margin:1.5rem 0}.activity li{display:flex;justify-content:space-between;gap:1rem;padding:1rem 0;border-bottom:1px solid var(--line);font-size:var(--text-small)}.activity li time{color:var(--muted);font-size:var(--text-caption)}.app-footer{display:flex;justify-content:space-between;gap:1rem;margin:2rem auto;font-size:var(--text-micro);color:var(--muted)}.app-footer>span:first-child{font-family:"Source Serif 4",serif;font-size:var(--text-small)}dialog{border:1px solid var(--line);border-radius:6px;padding:1.75rem;background:var(--paper);color:var(--navy);width:min(540px,calc(100% - 2rem));max-height:calc(100dvh - 3rem)}dialog::backdrop{background:#1f2d3d80}.dialog-heading{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.5rem}.dialog-heading h2{font-size:var(--text-h2)}.dialog-heading button{border:0;background:transparent;padding:.25rem .75rem}.dialog-actions{display:flex;justify-content:flex-end;gap:.5rem;margin-top:.5rem}dialog form{display:flex;flex-direction:column;gap:1rem;margin-top:1rem}@media(min-width:768px){.shell{padding-left:2.5rem;padding-right:2.5rem}}@media(min-width:1600px){.workspace{grid-template-columns:310px minmax(0,1fr)}.tab-content{padding:2rem 2.5rem}.encounter-heading{padding:2rem 2.5rem 1.5rem}.tabs{padding:0 2.5rem}.soap-layout{grid-template-columns:minmax(0,1fr) 280px}.body-chart{padding-left:2rem}}@media(max-width:1100px){.owner{display:none}.workspace{grid-template-columns:245px minmax(0,1fr)}.complete-action{align-items:flex-start;flex-direction:column}.complete-action button{width:100%}.schedule-heading{flex-direction:column;align-items:flex-start;gap:.65rem}.soap-layout{grid-template-columns:minmax(0,1fr)}.body-chart{padding:1.5rem 0 0;border-left:0;border-top:1px solid var(--line)}.body-chart .segmented,.body-chart label,.body-chart .laterality{max-width:280px;margin-left:auto;margin-right:auto}.body-chart .marked-regions{justify-content:center}.note-actions{flex-wrap:wrap}.payment-form{grid-template-columns:1fr}.payment-form button{justify-self:start}.client-record{grid-template-columns:1fr 1fr}.client-record>div:last-child{grid-column:2}.critical{flex-wrap:wrap}.critical button{margin-left:1.9rem}}@media(max-width:767px){.shell{padding-left:1rem;padding-right:1rem}.header-inner{flex-wrap:wrap;justify-content:center;gap:0;padding-top:1rem;min-height:auto}.brand{margin-bottom:.75rem}.brand img{width:36px;height:40px}.topbar nav{width:100%;justify-content:center}.topbar nav button{padding:.8rem .45rem;gap:.35rem;min-width:0;flex:1;max-width:140px;font-size:var(--text-caption)}.demo-banner{font-size:var(--text-micro);padding:.5rem .6rem;gap:.3rem;flex-wrap:wrap}.banner-detail{margin:0}.page-heading{padding:1.75rem 0 1.3rem;align-items:flex-start;flex-direction:column;gap:1rem}.page-heading h1{max-width:15ch}.page-heading>.primary{align-self:stretch}.context{font-size:var(--text-micro)}.practice-summary{gap:.65rem 1rem;padding-bottom:1.3rem;font-size:var(--text-micro)}.practice-summary>span:first-child{width:100%}.workspace{grid-template-columns:1fr;min-height:0}.schedule{border-right:0;border-bottom:1px solid var(--line);padding:1.1rem 0 0}.schedule-heading{flex-direction:row;align-items:center;padding:0 1rem}.date-label{padding:.65rem 1rem 1rem}.date-label span{display:inline}.date-label span:before{content:" · "}.appointment-list{display:flex;overflow-x:auto;scroll-snap-type:x proximity;scroll-padding:1rem;padding:0 1rem 1rem;gap:.6rem}.appointment-row{flex:0 0 205px;border:1px solid var(--line);border-radius:4px;padding:1rem;scroll-snap-align:start}.appointment-row:last-child{border-bottom:1px solid var(--line)}.appointment-row.selected:before{border-radius:4px 0 0 4px}.appointment-time{font-size:var(--text-micro)}.appointment-row strong{font-size:var(--text-small)}.appointment-row .small{font-size:var(--text-micro)}.schedule-foot{display:none}.encounter-heading{padding:1.4rem 1rem 1.1rem;flex-direction:column;gap:.75rem}.encounter-heading h2{margin:.5rem 0}.encounter-heading>.badge{align-self:flex-start}.tabs{padding:0 .8rem;gap:.7rem;justify-content:space-between}.tabs button{font-size:var(--text-micro);gap:.25rem;min-height:48px;white-space:nowrap}.tab-content{padding:1.4rem 1rem}.section-intro{margin-bottom:1.2rem}.section-intro p{line-height:1.6}.step{gap:.7rem}.step strong{font-size:var(--text-caption)}.step small{font-size:var(--text-micro)}.visit-details{grid-template-columns:1fr;gap:1.25rem;padding:1.5rem 0}.complete-action{padding:1rem;margin-top:0}.complete-action button{font-size:var(--text-caption)}.critical{margin:0 1rem 1rem;padding:.85rem;gap:.6rem}.critical strong{font-size:var(--text-caption)}.critical .small{font-size:var(--text-micro)}.critical button{margin-left:1.85rem}.critical>div{min-width:150px}.soap-layout{gap:1.5rem}.soap-field textarea{min-height:125px}.body-chart{padding-top:1.3rem}.note-actions{align-items:stretch}.note-actions .button-group{width:100%}.note-actions button{flex:1}.payment-history>div{grid-template-columns:auto 1fr;gap:.3rem .75rem}.payment-history small{grid-column:2}.terminal-state,.callout,.payment-complete{padding:1rem}.terminal-state .button-group button{width:100%}.invoice-summary .balance{align-items:center}.invoice-summary .balance strong{font-size:var(--text-h3)}.guardian-callout{flex-wrap:wrap}.guardian-callout button{width:100%}.client-directory,.activity{padding:1.2rem}.client-record{grid-template-columns:1fr;gap:.8rem}.client-record>div:last-child{grid-column:1}.activity li{flex-direction:column;gap:.25rem;overflow-wrap:anywhere}.app-footer{flex-direction:column;text-align:center;gap:.35rem}.feedback{align-items:flex-start;font-size:var(--text-caption)}.feedback>svg{display:none}dialog{padding:1.1rem}.dialog-heading h2{font-size:var(--text-h3)}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}@media(max-width:380px){.tabs{display:grid;grid-template-columns:1fr 1fr;gap:0 .75rem}.tabs button{white-space:normal;font-size:var(--text-caption)}.section-intro.row{flex-wrap:wrap}}.portal{max-width:850px;padding-block:40px 80px}.portal .brand{margin-bottom:32px}.panel-form{display:grid;gap:16px;margin-block:20px}.panel-form label,.records>label{display:grid;gap:8px}.panel-form .checkbox{display:flex}.record-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}.record-section{padding-block:28px;border-bottom:1px solid var(--line, #dacdb5);min-width:0}.record-section h3{margin-bottom:16px}.record-section summary,.schedule-actions summary{cursor:pointer;padding-block:14px;font-weight:600}.form-wording{white-space:pre-wrap;line-height:1.7}.record-data{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;font-size:.85rem}.invitation{display:block;overflow-wrap:anywhere}.records input[type=file]{max-width:100%}.records .button-group{margin-bottom:20px}.record-section>label{display:grid;gap:10px}.schedule-actions{margin-bottom:24px;border-bottom:1px solid var(--line, #dacdb5)}.schedule-actions .field-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.signout{white-space:nowrap}@media(max-width:800px){.record-grid{grid-template-columns:1fr;gap:0}.topbar .owner{display:none}.header-inner{flex-wrap:wrap}.header-inner nav{order:3;width:100%;justify-content:space-between}}.table-scroll{overflow-x:auto}.table-scroll table{border-collapse:collapse;width:100%;font-size:.9rem}.table-scroll th,.table-scroll td{padding:16px 12px;text-align:left;border-bottom:1px solid var(--line, #dacdb5)}.table-scroll th{font-weight:600}.block{display:block}.delivery-list{list-style:none;padding:0;margin-block:1.5rem}.delivery-job{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,15rem),1fr));gap:1rem;padding-block:1.25rem;border-bottom:1px solid var(--line);overflow-wrap:anywhere}.delivery-job h4,.delivery-job p,.delivery-job dl{margin:0}.delivery-job dt{font-size:var(--text-caption);color:var(--muted)}.delivery-job dd{margin:0 0 .5rem}.delivery-job .button-group{margin-top:.75rem}.waitlist-controls{min-width:0;border:0;margin:0;padding:0}.waitlist-add{margin-block:1.5rem}.waitlist-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,18rem),1fr));gap:1.5rem}.waitlist-fields>*{min-width:0}.weekday-picks{display:flex;flex-wrap:wrap;gap:.75rem 1.25rem}.waitlist-requests{list-style:none;padding:0}.waitlist-requests>li,.waitlist-offer,.waitlist-match{padding-block:1.25rem;border-bottom:1px solid var(--line);overflow-wrap:anywhere}.waitlist-offer>.text-button{display:block;margin-top:.75rem}.availability-result{margin-top:1.5rem}.availability-copy{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;padding:1rem;border:1px solid var(--line)}.compact-form{max-width:420px}.value-row{display:flex;flex-wrap:wrap;gap:16px;align-items:center;padding-block:20px;border-bottom:1px solid var(--line, #dacdb5)}.value-row code{overflow-wrap:anywhere}.gift-email{flex-basis:100%;min-width:0;overflow-wrap:anywhere}.records a{color:var(--ink, #1f2d3d);text-underline-offset:4px}@media(max-width:1100px){.topbar .owner{display:none}.header-inner{flex-wrap:wrap}.header-inner nav{order:3;width:100%;flex-wrap:wrap;justify-content:flex-start}}.mobile-invoice-status{display:none}.selected-invoice-context{margin-bottom:16px}.selected-invoice-context strong{font-size:1.1rem}.selected-invoice-context p{margin-top:4px}@media(max-width:600px){.ledger-table{table-layout:fixed}.ledger-table :is(th,td):nth-child(3),.ledger-table :is(th,td):nth-child(4),.ledger-table :is(th,td):nth-child(6){display:none}.ledger-table :is(th,td){padding:16px 8px;overflow-wrap:anywhere}.ledger-table :is(th,td):nth-child(1){width:23%}.ledger-table :is(th,td):nth-child(2){width:45%}.ledger-table :is(th,td):nth-child(5){width:32%;text-align:right}.mobile-invoice-status{display:block;margin-top:4px;font-weight:600}.header-inner{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px 16px;align-items:center}.header-inner .brand{min-width:0;gap:8px;justify-self:start}.header-inner .brand img{width:36px}.header-inner .brand span{font-size:1.125rem;white-space:nowrap}.header-inner .brand small{font-size:.625rem;letter-spacing:.035em}.header-inner .signout{justify-self:end;margin:0}.header-inner nav{grid-column:1/-1;order:unset}}@media(max-width:600px){.header-inner .brand{grid-column:1;grid-row:1}.header-inner .signout{grid-column:2;grid-row:1}.header-inner nav{grid-row:2}.ledger-table :is(th,td):nth-child(1){width:26%}.ledger-table :is(th,td):nth-child(2){width:42%}.ledger-table .text-button{padding-inline:0;min-width:44px;white-space:nowrap}}@media(max-width:380px){.header-inner nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0}}.recovery-list{list-style:none;padding:0}.recovery-list>li{padding:20px 0;border-bottom:1px solid var(--line);overflow-wrap:anywhere}.recovery-context{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 20px}.refund-panel{overflow-wrap:anywhere}.refund-review{display:grid;gap:12px;padding:20px;background:var(--paper);border:1px solid var(--line)}.refund-review :is(h4,p){margin:0}.refund-history{list-style:none;padding:0}.refund-history>li{display:grid;gap:4px;padding:12px 0;border-bottom:1px solid var(--line)}.card-check{overflow-wrap:anywhere}.card-check-controls{display:flex;flex-wrap:wrap;align-items:end;gap:16px}.card-check-controls label,.card-check-selector{display:grid;gap:8px;min-width:0}.card-check-selector{margin:20px 0}.card-check-totals{width:100%;margin-bottom:20px;border-collapse:collapse}.card-check-totals :is(th,td){text-align:left;padding:12px 4px;border-bottom:1px solid var(--line)}.card-check-totals caption{text-align:left;margin-bottom:8px}.card-check-note{border-left:2px solid var(--line);padding-left:16px;margin-bottom:20px}.card-check-coverage{margin-block:1rem;padding:1rem;border:1px solid var(--line);border-radius:.25rem}.card-check-coverage p+p{margin-top:.5rem}.note-history,.note-conflict{margin-block:1.5rem;padding:1rem;border:1px solid var(--line)}.note-conflict{border-color:var(--accent)}.note-history>label{display:grid;gap:.4rem;margin-top:1rem}.saved-note{overflow-wrap:anywhere}.saved-note dt{font-weight:600;margin-top:.7rem}.saved-note dd{margin:0;white-space:pre-wrap}.processor-panel{margin:1.5rem 0;padding:1.25rem;border:1px solid var(--line);border-radius:12px}.processor-reference{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center;margin:1rem 0}.processor-reference code,.processor-panel code,.processor-match code{overflow-wrap:anywhere;min-width:0}.processor-panel form,.processor-match{display:grid;gap:1rem;margin:1rem 0}.processor-panel label,.processor-match label{min-width:0}.processor-panel input,.processor-match input,.processor-match select{width:100%;min-width:0}.processor-panel input[type=checkbox]{width:auto}
