.sec-page{display:flex;flex-direction:column;gap:24px;min-width:0}.sec-page>h1{margin-bottom:-16px}.sec-section{border-top:1px solid var(--rule);padding-top:20px;min-width:0}.sec-section>p{max-width:78ch}.sec-timing,.sec-advanced,.sec-rule-form{max-width:440px}.sec-advanced{margin-top:12px}.sec-timing>.btn,.sec-advanced>.btn,.sec-rule-form>.btn{align-self:flex-start}.sec-timing .sec-check{display:flex;flex-direction:row;align-items:center;gap:12px;min-height:44px;cursor:pointer;font-weight:500}.sec-check input{margin:0;width:22px;height:44px;accent-color:var(--ink);cursor:pointer;flex-shrink:0}.sec-integrations{display:flex;flex-direction:column}.sec-integrations>div{padding:16px 0;border-top:1px solid var(--rule)}.sec-integrations>div:first-child{border-top:0;padding-top:0}.sec-integrations p{margin:6px 0;max-width:78ch}.sec-warning{color:var(--warning);font-weight:500}.sec-page [aria-pressed=true]{background:var(--action-tint);border-color:var(--action);color:var(--action)}.sec-list{margin:18px 0;background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius-lg)}.sec-table{border-collapse:collapse;width:100%;table-layout:fixed}.sec-table th,.sec-table td{text-align:left;padding:12px 16px;border-bottom:1px solid var(--rule);overflow-wrap:anywhere;vertical-align:top}.sec-table th{font-size:.8rem;font-weight:500;color:var(--muted)}.sec-table td{font-size:.93rem}.sec-table tbody tr:last-child td{border-bottom:0}.sec-table td:first-child{font-weight:500}.sec-table .btn{max-width:100%}.sec-history{list-style:none;margin:0;padding:0;background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius-lg)}.sec-history:empty{display:none}.sec-history li{padding:12px 16px;border-top:1px solid var(--rule);overflow-wrap:anywhere}.sec-history li:first-child{border-top:0}.sec-public{margin:clamp(32px,9vh,88px) auto;padding:0 20px;width:100%;color:var(--ink)}.sec-login{max-width:460px}.sec-wordmark{display:flex;flex-direction:column;margin-bottom:36px}.sec-wordmark strong{font-size:1.12rem;font-weight:600;letter-spacing:-.015em}.sec-wordmark span{color:var(--muted);font-size:.85rem}.sec-date{display:block;margin-top:18px;font-family:var(--font-figures);font-size:.95rem;color:var(--ink)}.sec-signin{border-top:1px solid var(--rule);padding-top:24px}.sec-signin h1{margin-bottom:24px}.sec-signin .notice{overflow-wrap:anywhere}.sec-landing{max-width:640px}.sec-landing h1{max-width:20ch}.sec-landing p{font-size:1.05rem;margin:20px 0 28px;max-width:52ch}@media(max-width:600px){.sec-page{gap:20px}.sec-messaging{padding:16px}.sec-page .btn,.sec-public .btn{min-height:44px;white-space:normal}.sec-page a,.sec-public a{display:inline-flex;align-items:center;min-height:44px}.sec-page .row{align-items:stretch}.sec-page .row>.btn{flex:1 1 auto}.sec-table,.sec-table tbody{display:block}.sec-table thead{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%)}.sec-table tr{display:block;padding:12px 14px;border-top:1px solid var(--rule)}.sec-table tbody tr:first-child{border-top:0}.sec-table td{display:grid;grid-template-columns:5.5rem minmax(0,1fr);gap:12px;border:0;padding:6px 0}.sec-table td:before{content:attr(data-label);color:var(--muted);font-size:.8rem;font-weight:500}.sec-table td>*{min-width:0}.sec-table .preview-row{border-top:0;padding-top:0}.sec-table .preview-row td{display:block}.sec-table .preview-row td:before{content:none}.sec-public{padding:0 16px}}.sec-public p>a:only-child{display:inline-flex;align-items:center;min-height:44px}.sec-after{display:flex;flex-wrap:wrap;gap:8px;border:0;padding:0;margin:0;min-width:0}.sec-after legend{width:100%;padding:0;margin-bottom:6px;color:var(--ink);font-weight:600;font-size:.88rem}.sec-after input{flex:0 1 8rem}.sec-after select{flex:0 1 9rem}.sec-table .preview-row td{font-weight:400}.msg-preview{display:grid;gap:8px;justify-items:start;background:var(--action-tint);border-radius:var(--radius-md, 6px);padding:12px 14px}.msg-preview p{margin:0}.msg-preview-text{white-space:pre-wrap;background:var(--surface, #fff);border:1px solid var(--rule);border-radius:var(--radius-md, 6px);padding:10px 12px;max-width:60ch}.btn-danger{background:var(--warning);border-color:var(--warning);color:#fff}.btn-danger:hover{background:#6f3f0e;border-color:#6f3f0e;color:#fff}.sec-reasons{margin:0 0 12px;padding-left:1.2em;display:grid;gap:4px}.sec-counts{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:8px;margin:12px 0 16px}.sec-counts div{border:1px solid var(--rule);border-radius:var(--radius);padding:8px 10px;background:var(--surface)}.sec-counts dt{font-size:.8rem;color:var(--muted)}.sec-counts dd{margin:2px 0 0;font-family:var(--font-figures);font-size:1.1rem}.sec-section h3{font-size:.95rem;margin:0 0 6px}.wa-setup{display:grid;gap:14px}.wa-step{border:1px solid var(--rule);border-radius:var(--radius-lg);background:var(--surface);padding:14px 16px;display:grid;gap:10px}.wa-step h3{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0;font-size:.98rem}.wa-step-done{border-color:var(--action)}.wa-step-state{font-size:.8rem;font-weight:500;color:var(--action);margin-left:auto}.wa-step p{margin:0}.wa-form{display:grid;gap:12px;max-width:34rem}.wa-form label{display:grid;gap:6px}.wa-inline input{flex:1 1 14rem}.imp-page{display:flex;flex-direction:column;gap:22px;min-width:0;overflow-wrap:anywhere}.imp-page>h1,.imp-page>p{margin:0}.imp-steps{display:flex;flex-wrap:wrap;gap:8px 32px;margin:0;padding:14px 0 14px 24px;border-block:1px solid var(--rule);color:var(--muted)}.imp-steps li{padding-right:12px}.imp-steps [aria-current=step]{font-weight:600;color:var(--action)}.imp-boundary{max-width:85ch;font-weight:500}.imp-panel{min-width:0;border-top:1px solid var(--rule);padding-top:18px}.imp-panel>:last-child{margin-bottom:0}.imp-connection{display:block;font-weight:500}.imp-warning{color:var(--warning)}.imp-stats{display:flex;flex-wrap:wrap;gap:8px 24px;list-style:none;margin:0 0 18px;padding:12px 0;border-block:1px solid var(--rule)}.imp-pagination{margin-bottom:16px}.imp-mapping{max-width:650px;margin-bottom:18px}.imp-table{width:100%;border-collapse:collapse;table-layout:fixed}.imp-table th,.imp-table td{text-align:left;vertical-align:top;padding:12px 8px;border-bottom:1px solid var(--rule);overflow-wrap:anywhere}.imp-table th{font-size:.85rem;font-weight:500;color:var(--muted)}.imp-table td{font-size:.9rem}.imp-table td p{margin:0 0 8px}.imp-table td select+select{margin-top:10px}.imp-preview{border:1px solid var(--rule);border-radius:var(--radius-lg);margin-bottom:18px}.imp-preview .imp-table th:first-child{width:3rem}.imp-preview .imp-table th:last-child{width:18%}.imp-page input[type=file]{width:100%;min-height:44px}.imp-page input[type=file]::file-selector-button{min-height:44px;padding:8px 12px;margin-right:12px;color:var(--ink);background:var(--surface);border:1px solid var(--control-border);border-radius:var(--radius);font:inherit;cursor:pointer}@media(max-width:1200px){.imp-preview .imp-table,.imp-preview tbody{display:block}.imp-preview thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.imp-preview tr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));padding:12px;border-bottom:1px solid var(--rule)}.imp-preview tr:last-child{border-bottom:0}.imp-preview td{display:block;min-width:0;border:0;padding:8px}.imp-preview td:before{content:attr(data-label);display:block;font-size:.85rem;font-weight:600;margin-bottom:6px;color:var(--muted)}.imp-preview td:last-child{grid-column:1 / -1}}@media(max-width:600px){.imp-panel{padding:16px 0 0}.imp-steps{display:block}.imp-steps li{padding:4px 0}.imp-preview tr{grid-template-columns:minmax(0,1fr);padding:8px}.imp-mapping .imp-table,.imp-mapping tbody{display:block}.imp-mapping thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.imp-mapping tr{display:block;border-bottom:1px solid var(--rule);padding-block:8px}.imp-mapping td{display:block;border:0;padding:6px 0}.imp-mapping td:before{content:attr(data-label);display:block;font-weight:600;margin-bottom:6px;color:var(--muted)}.imp-page button,.imp-page input,.imp-page select{min-height:44px}.imp-page .btn{max-width:100%;white-space:normal}}.imp-blocked{font-weight:600;margin:0 0 4px}.imp-issues{list-style:none;margin:0 0 4px;padding:0}.imp-issues li+li{margin-top:2px}.imp-file{position:relative;display:inline-flex}.imp-file input[type=file]{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer}.imp-file:focus-within .btn{outline:3px solid var(--action);outline-offset:2px}.imp-columns{margin-top:16px;border-top:1px solid var(--rule);padding-top:12px}.imp-columns summary{cursor:pointer;font-weight:600;min-height:44px;line-height:44px;display:list-item;color:var(--action)}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-latin-400-normal-CDDApCn2.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-400-normal-CYLoc0-x.woff) format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-latin-500-normal-6ng42L7E.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-500-normal-BgVn5rGT.woff) format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-latin-600-normal-CuJfVYMP.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-600-normal-Cu4Hd6ag.woff) format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-latin-500-normal-DSY6xOcd.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-500-normal-CB9ihrfo.woff) format("woff")}:root{color-scheme:light;--canvas: #f4f6f5;--surface: #ffffff;--ink: #19282b;--muted: #536366;--rule: #dce4e1;--rule-strong: #b9c6c2;--control-border: #74847f;--action: #176e67;--action-hover: #115750;--action-tint: #e6f1ef;--warning: #8a4f12;--warning-tint: #fbf1e3;--radius: 6px;--radius-lg: 8px;--font-sans: "IBM Plex Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;--font-figures: "IBM Plex Mono", ui-monospace, "SF Mono", Menlo, monospace;--bg: var(--canvas);--text: var(--ink);--text-secondary: var(--muted);--accent: var(--action);--accent-hover: var(--action-hover);--border: var(--rule);--shadow: none;font-family:var(--font-sans);line-height:1.5;font-size:15px;background:var(--canvas);color:var(--ink)}*{box-sizing:border-box}body{margin:0;min-height:100vh}a{color:var(--action);text-decoration:underline;text-decoration-color:transparent;text-underline-offset:3px}a:hover{text-decoration-color:currentColor}button,input,select,textarea{font:inherit}button{cursor:pointer}h1{margin:0 0 8px;font-size:clamp(1.55rem,2.2vw,2rem);font-weight:600;letter-spacing:-.02em;line-height:1.2}h2{margin:0 0 12px;font-size:1.1rem;font-weight:600;letter-spacing:-.01em}h3{margin:0 0 8px;font-size:.97rem;font-weight:600}p{margin:8px 0 14px}:focus-visible{outline:3px solid var(--action);outline-offset:2px;border-radius:3px}@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important;scroll-behavior:auto!important}}.skip-link{position:absolute;left:12px;top:-60px;z-index:20;background:var(--ink);color:#fff;padding:12px 16px;border-radius:var(--radius)}.skip-link:focus{top:12px}.app-shell{display:grid;grid-template-columns:224px minmax(0,1fr);min-height:100vh}.sidebar{background:var(--canvas);padding:28px 0 20px;min-width:0;position:sticky;top:0;height:100vh;display:flex;flex-direction:column;overflow-y:auto}.shell-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 20px}.brand-lockup strong{display:block;font-size:1.12rem;font-weight:600;letter-spacing:-.015em}.brand-lockup small{display:block;color:var(--muted);font-size:.8rem}.menu-toggle{display:none}.shell-panel{display:flex;flex-direction:column;flex:1;min-height:0;padding-top:22px}.shell-role,.clinic-switch{margin:0 20px 14px;color:var(--muted);font-size:.85rem}.shell-role strong{display:block;color:var(--ink);font-weight:600;font-size:.92rem}.shell-role span{display:block}.clinic-switch{display:flex;flex-direction:column;gap:4px;font-weight:500}.clinic-switch select{color:var(--ink)}.sidebar nav{display:flex;flex-direction:column}.nav-link{display:flex;align-items:center;min-height:44px;padding:0 20px 0 17px;border-left:3px solid transparent;color:var(--muted);font-weight:500;text-decoration:none}.nav-link:hover{color:var(--ink);background:#eaeeec;text-decoration:none}.nav-link.active{border-left-color:var(--action);color:var(--ink);font-weight:600;background:var(--surface)}.sidebar-footer{margin-top:auto;display:flex;flex-direction:column;align-items:flex-start;gap:12px;padding:16px 20px 0}.staging-label{font-size:.78rem;color:var(--warning);font-weight:500}.messaging-line{font-size:.84rem;color:var(--ink);font-weight:500}.state-line{margin:0;padding:10px 0;border-block:1px solid var(--rule)}.state-line strong{font-weight:600}.state-line span{color:var(--muted)}.state-line+.sec-section,.state-line+section{border-top:0;padding-top:4px}.messaging-line-bar{display:none}@media(min-width:861px){.sidebar{background:transparent}}.tabbar{display:none}.app-shell{background:linear-gradient(to right,transparent 223px,var(--rule) 223px,var(--rule) 224px,transparent 224px) no-repeat}.main{width:100%;max-width:1320px;min-width:0;padding:32px clamp(20px,3.2vw,48px) 56px}.main:focus{outline:none}.notice{background:var(--warning-tint);color:var(--warning);border:1px solid #ecd9bb;border-radius:var(--radius);padding:10px 14px;margin:0 0 18px}.card{background:var(--surface);border-radius:var(--radius-lg);padding:clamp(16px,2vw,24px);border:1px solid var(--rule);min-width:0}.stack{display:flex;flex-direction:column;gap:22px}.stack>h1{margin-bottom:-12px}.row{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;background:var(--accent);color:#fff;border:1px solid var(--accent);border-radius:var(--radius);padding:10px 16px;min-height:44px;font-weight:600;font-size:.95rem;line-height:1.25;cursor:pointer;text-decoration:none;transition:background .14s ease,border-color .14s ease}.btn:hover{background:var(--accent-hover);color:#fff;text-decoration:none;border-color:var(--accent-hover)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn:active{transform:translateY(1px)}.btn-secondary{background:var(--surface);border-color:var(--control-border);color:var(--ink)}.btn-secondary:hover{background:#eaeeec;border-color:var(--control-border);color:var(--ink)}.muted{color:var(--text-secondary);font-size:.91rem}.badge{display:inline-block;padding:5px 10px;border-radius:7px;font-size:.75rem;font-weight:600;color:var(--muted);background:#e9eeec;white-space:nowrap}.badge-warn{background:var(--warning-tint);color:var(--warning)}.badge-ok{background:#e9f7ed;color:#187348}.table-scroll{overflow-x:auto;max-width:100%}.table{border-collapse:collapse;width:100%;min-width:460px}.table th,.table td{text-align:left;vertical-align:middle;padding:12px 9px;border-bottom:1px solid #edf0f3}.table th{color:var(--muted);font-weight:700;font-size:.76rem;letter-spacing:.015em;white-space:nowrap}.table td{font-size:.89rem}.table tbody tr:last-child td{border-bottom:0}.table tbody tr:hover{background:#f8faf9}.table input{min-width:150px}input[type=text],input[type=email],input[type=password],input[type=datetime-local],input[type=number],input[type=search],input:not([type]),select,textarea{color:var(--text);border:1px solid var(--control-border);border-radius:var(--radius);padding:10px 12px;min-height:44px;background:#fff;width:100%;max-width:100%;min-width:0;outline-offset:2px}input:focus,select:focus,textarea:focus{border-color:var(--action)}input[type=file]{max-width:100%}label{color:var(--ink);font-weight:600;font-size:.88rem}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 16px;max-width:920px;align-items:end}.form-grid>label{display:flex;flex-direction:column;gap:7px}.form-grid .form-wide,.form-actions{grid-column:1/-1}.form-actions{display:flex;flex-wrap:wrap;gap:10px}.subform{margin-top:20px;padding:18px;background:var(--canvas);border:1px solid var(--rule);border-radius:var(--radius-lg)}.actions-small{flex-wrap:nowrap;gap:6px}.actions-small .btn{padding:7px 10px;white-space:nowrap;font-size:.77rem}.page-heading{padding:0 2px}.section-heading{display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;align-items:flex-start;margin-bottom:16px}.section-heading h1,.section-heading h2{margin:0 0 4px}.section-heading p{margin:0}.empty-state{color:var(--muted);margin:12px 0 0;font-size:.95rem}.header-actions{display:flex;gap:10px;flex-wrap:wrap}.today{display:flex;flex-direction:column;gap:28px}.today-head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;flex-wrap:wrap}.today-head h1{margin:0}.today-clinic{display:block;margin:0 0 4px;color:var(--muted);font-size:1rem;font-weight:500;letter-spacing:0;line-height:1.4}.today-date{display:block}.counts{display:flex;flex-wrap:wrap;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule)}.count{display:grid;grid-template-columns:auto 1fr;column-gap:10px;align-items:baseline;flex:1 1 200px;padding:12px 20px 12px 0;margin-right:20px;color:var(--ink);text-decoration:none;min-height:44px}.count+.count{border-left:1px solid var(--rule);padding-left:20px}.count:last-child{margin-right:0}.count-value{font-size:1.3rem;font-weight:600;font-variant-numeric:tabular-nums}.count-label{font-weight:500}.count-detail{grid-column:2;color:var(--muted);font-size:.84rem;overflow-wrap:normal;word-break:keep-all;-webkit-hyphens:none;hyphens:none}.count:hover .count-label{text-decoration:underline;text-underline-offset:3px}.first-run{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:18px;background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius-lg);padding:20px 22px}.first-run h2{margin-bottom:4px}.first-run p{margin:0;max-width:62ch}.today-columns{display:grid;grid-template-columns:minmax(0,1.9fr) minmax(300px,1fr);gap:40px;align-items:start}.today-side{display:flex;flex-direction:column;gap:32px}.schedule .section-heading,.payments .section-heading{align-items:baseline;margin-bottom:12px}.visit-time{font-family:var(--font-figures);font-weight:500;font-variant-numeric:tabular-nums;white-space:nowrap}.visit-what{display:block;color:var(--muted);font-size:.9rem}.next-up{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px;margin:0 0 16px;padding:14px 16px;background:var(--action-tint);border-radius:var(--radius);font-size:1.05rem}.next-up-label{font-weight:600;color:var(--action)}.next-up>a{display:inline-flex;align-items:center;min-height:44px;font-weight:600;color:var(--ink)}.next-up{padding-top:4px;padding-bottom:4px;min-height:52px}.next-up .muted a{display:inline-flex;align-items:center;min-height:44px}.visits{list-style:none;margin:0;padding:0;background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius-lg)}.visit{display:grid;grid-template-columns:5.6rem minmax(0,1.5fr) minmax(0,1fr) 8.5rem;gap:4px 16px;align-items:baseline;padding:13px 16px;border-top:1px solid var(--rule)}.visits>li:first-child{border-top:0}.visit-who a,.person-name a{font-weight:600;color:var(--ink);text-decoration:underline;text-decoration-color:var(--rule-strong);text-underline-offset:4px}.visit-who a:hover,.person-name a:hover{text-decoration-color:currentColor}.visit-balance{font-family:var(--font-figures);font-size:.88rem}.visit-balance .muted{font-family:var(--font-sans);font-size:.84rem}.visit-status{font-weight:500;text-align:right}.visit-actions{grid-column:2 / -1;display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}.next-up .visit-actions{grid-column:auto;margin:0 0 0 auto}.all-clear{margin:8px 0 0}.visit.is-passed .visit-time,.visit.is-passed .visit-who a{color:var(--muted);font-weight:500}.visit-completed .visit-status{color:var(--muted)}.visit-no_show .visit-status,.visit-needs_staff_confirmation .visit-status{color:var(--warning)}.visit-cancelled .visit-who a{text-decoration:line-through}.now-line{display:grid;grid-template-columns:5.6rem 1fr;gap:16px;align-items:center;padding:5px 16px;border-top:2px solid var(--action);color:var(--action);font-size:.84rem;font-weight:600;background:var(--action-tint)}.now-line .visit-time{font-size:.84rem}.needs-action h2{margin-bottom:4px}.needs-count{color:var(--warning);font-variant-numeric:tabular-nums}.action-group{border-top:1px solid var(--rule);padding:14px 0}.action-group h3{color:var(--warning);margin-bottom:6px}.action-group p{margin:0 0 6px}.action-group ul{list-style:none;margin:0 0 4px;padding:0}.action-group li{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:4px 0}.action-who{font-weight:500}.action-link{display:inline-flex;align-items:center;min-height:44px;font-weight:600;white-space:nowrap}.payment-facts{display:grid;grid-template-columns:1fr 1fr;gap:0 20px;margin:0;border-top:1px solid var(--rule);padding-top:12px}.payment-facts dt{color:var(--muted);font-size:.86rem;font-weight:500}.payment-facts dd{margin:0}.payment-facts dd:first-of-type{font-size:1.25rem;font-weight:600;font-variant-numeric:tabular-nums;margin:2px 0 4px}.payment-facts dd.muted{font-size:.84rem}.payments-note{font-size:.84rem;margin:12px 0 0}.balances{list-style:none;margin:12px 0 0;padding:0;border-top:1px solid var(--rule)}.balances li{display:flex;justify-content:space-between;align-items:center;gap:12px;min-height:44px;border-bottom:1px solid var(--rule)}.balances a{color:var(--ink)}.amount{font-family:var(--font-figures);font-variant-numeric:tabular-nums;white-space:nowrap}.today-foot{margin:0;font-size:.84rem;max-width:80ch}.appts{display:flex;flex-direction:column;gap:20px}.appts-columns{display:grid;grid-template-columns:minmax(0,1.9fr) minmax(300px,1fr);gap:40px;align-items:start}.flash{position:sticky;top:12px;z-index:5;display:flex;flex-direction:column;gap:8px}.flash:empty{display:none}.flash p{margin:0}.notice-ok{background:var(--action-tint);color:var(--action-hover);border-color:#c5ddd9}.view-tabs{display:inline-flex;border:1px solid var(--control-border);border-radius:var(--radius);overflow:hidden}.view-tab{min-height:44px;padding:0 16px;background:var(--surface);color:var(--ink);border:0;border-left:1px solid var(--control-border);font-weight:500}.view-tab:first-child{border-left:0}.view-tab[aria-selected=true]{background:var(--ink);color:#fff;font-weight:600}.view-tab:focus-visible{outline-offset:-3px}.day-group+.day-group{margin-top:24px}.show-more{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;margin-top:16px}.show-more p{margin:0}.day-heading{margin:0 0 8px;font-size:.95rem;font-weight:600}.day-heading-warn{color:var(--warning)}.appt-table{background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius-lg)}.appt-head,.appt{display:grid;grid-template-columns:5.6rem minmax(0,1fr) 9.5rem;gap:4px 16px;padding:12px 16px}.appt-head{padding-top:8px;padding-bottom:8px;color:var(--muted);font-size:.8rem;font-weight:500;border-bottom:1px solid var(--rule)}.appt-head>:last-child{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.appt{align-items:baseline;border-top:1px solid var(--rule)}.appt-head+.appt{border-top:0}.appt .visit-who a{font-weight:600;color:var(--ink)}.appt-status{font-weight:500}.appt.is-focus{box-shadow:inset 3px 0 0 var(--action);background:var(--action-tint)}.appt{scroll-margin:96px}.appt-no_show .appt-status,.appt-needs_staff_confirmation .appt-status{color:var(--warning)}.appt-completed .appt-status,.appt-cancelled .appt-status{color:var(--muted)}.appt-completed .visit-time,.appt-cancelled .visit-time,.appt-no_show .visit-time,.appt-completed .visit-who a,.appt-cancelled .visit-who a,.appt-no_show .visit-who a{color:var(--muted);font-weight:500}.appt-cancelled .visit-who a{text-decoration:line-through}.appt-actions{grid-column:2 / -1;display:flex;flex-wrap:wrap;gap:8px}.appt-actions:empty{display:none}.appt-actions-close{display:inline-flex;gap:8px;margin-left:auto;padding-left:16px;border-left:1px solid var(--rule)}.btn-small{padding:8px 14px;font-size:.9rem;min-height:40px}.btn-quiet{background:transparent;border-color:transparent;color:var(--muted);text-decoration:underline;text-underline-offset:3px}.btn-quiet:hover{background:#eaeeec;border-color:transparent;color:var(--ink)}.appt-editor-row{padding:0 16px 14px}.appt-editor{padding:14px 16px;background:var(--canvas);border:1px solid var(--rule);border-radius:var(--radius)}.appt-editor label{display:flex;flex-direction:column;gap:6px;max-width:320px}.appt-editor p{margin:8px 0 12px}.booking{background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius-lg);padding:20px;position:sticky;top:24px}.booking h2{margin-bottom:4px}.booking>p{margin:0 0 14px}.booking-form{display:flex;flex-direction:column;gap:14px}.booking-form label{display:flex;flex-direction:column;gap:6px}.booking-form p,.booking-form.subform h3{margin:0}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.patients,.patient{display:flex;flex-direction:column;gap:20px}.panel{border-top:1px solid var(--rule);padding:18px 0 0}.panel h2{margin-bottom:4px}.panel>p{margin:0 0 14px}.search-field{display:flex;flex-direction:column;gap:6px;max-width:560px;margin-bottom:16px}.search-field input{min-height:48px;font-size:1.02rem}.people{background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius-lg)}.people-head,.person{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr) 11rem 4.5rem;gap:4px 16px;padding:0 16px;align-items:center}.people-head{padding-top:8px;padding-bottom:8px;color:var(--muted);font-size:.8rem;font-weight:500;border-bottom:1px solid var(--rule)}.people-head>:nth-child(3),.person-balance{text-align:right}.form-result{margin:0}.person{min-height:48px;border-top:1px solid var(--rule)}.people-head+.person{border-top:0}.person-name a{display:inline-flex;align-items:center;min-height:44px;font-weight:600;color:var(--ink)}.person-phone{font-family:var(--font-figures);font-size:.9rem}.cell-label{display:none}.person-book{text-align:right}.person-book a{display:inline-flex;align-items:center;justify-content:flex-end;min-height:44px;font-weight:600}.booking-for{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px;margin:0;padding:10px 12px;background:var(--action-tint);border-radius:var(--radius)}.booking-for>span:first-child{color:var(--action);font-weight:600}.no-match{display:flex;flex-direction:column;align-items:flex-start;gap:8px}.no-match p{margin:0}.record-actions{margin-top:12px}.list-note{margin:10px 0 0;font-size:.84rem}.crumb{margin:0 0 4px}.crumb a{display:inline-flex;align-items:center;min-height:44px}.patient .page-heading h1{margin:0}.patient .page-heading .person-phone{margin:4px 0 0}.patient-facts{display:flex;flex-wrap:wrap;margin:0;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule)}.patient-facts>div{flex:1 1 180px;padding:12px 20px 12px 0}.patient-facts>div+div{border-left:1px solid var(--rule);padding-left:20px}.patient-facts dt{color:var(--muted);font-size:.84rem;font-weight:500}.patient-facts dd{margin:2px 0 0;font-size:1.1rem;font-weight:600}.patient-columns{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(300px,1fr);gap:40px;align-items:start}.patient-main,.patient-side{display:flex;flex-direction:column;gap:28px}.patient-main h2+.muted{margin:-8px 0 12px}.visit-head,.past-visit{display:grid;grid-template-columns:12.5rem minmax(0,1fr) 11rem;gap:4px 16px;padding:12px 16px;align-items:baseline}.visit-head{padding-top:8px;padding-bottom:8px;color:var(--muted);font-size:.8rem;font-weight:500;border-bottom:1px solid var(--rule)}.past-visit{border-top:1px solid var(--rule)}.visit-head+.past-visit{border-top:0}.past-visit .visit-time{white-space:normal;font-size:.9rem}.plain-list{list-style:none;margin:0 0 16px;padding:0;border-top:1px solid var(--rule)}.plain-list li{display:flex;flex-wrap:wrap;justify-content:space-between;gap:4px 16px;padding:10px 0;border-bottom:1px solid var(--rule)}.consent-form{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end;margin-top:14px}.panel-paid{border-top:0;background:var(--action-tint);border-radius:var(--radius-lg);padding:18px 20px}.consent-form label{display:flex;flex-direction:column;gap:6px;flex:1 1 180px}.consent-form .form-wide{flex-basis:100%;margin:0}.consent-form textarea{resize:vertical;min-height:4.5em}.integration-status{margin:10px 0 14px}.settings-integrations{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.settings-integrations>div{background:var(--canvas);border:1px solid var(--rule);padding:18px;border-radius:var(--radius-lg)}.settings-integrations p{margin:9px 0 12px}.hero{max-width:720px;margin:80px auto;text-align:center;padding:10px 16px}.hero h1{font-size:clamp(2rem,4vw,2.6rem);font-weight:750;letter-spacing:-.04em}@media(min-width:601px)and (max-width:1100px){.counts{display:grid;grid-template-columns:1fr 1fr}.count,.count+.count{margin:0;padding:12px 16px 12px 0;border-left:0;border-bottom:1px solid var(--rule)}.count:nth-child(2n){padding-left:16px;border-left:1px solid var(--rule)}.count:nth-last-child(-n+2){border-bottom:0}}@media(max-width:1100px){.today-columns{grid-template-columns:1fr;gap:32px}.today-side{display:contents}.today-columns .needs-action{order:-1}.today-columns .payments{order:2}.appts-columns,.patient-columns{grid-template-columns:1fr;gap:28px}.patient-side{order:-1}.booking{position:static}}@media(max-width:860px){.app-shell{display:block;background:none}.sidebar{position:sticky;top:0;z-index:10;height:auto;max-height:100vh;border-right:0;border-bottom:1px solid var(--rule);padding:0}.shell-bar{padding:8px 16px;min-height:56px}.brand-lockup small,.sidebar-footer .messaging-line{display:none}.messaging-line-bar{display:block;order:2;font-size:.76rem;color:var(--muted);font-weight:500}.brand-lockup{display:flex;flex-direction:column}.tabbar{display:grid;grid-template-columns:repeat(4,1fr);position:fixed;left:0;right:0;bottom:0;z-index:12;background:var(--surface);border-top:1px solid var(--rule);padding-bottom:env(safe-area-inset-bottom)}.tab{display:flex;align-items:center;justify-content:center;min-height:56px;color:var(--muted);font-weight:500;font-size:.88rem;text-decoration:none;border-top:3px solid transparent}.tab.active{color:var(--ink);font-weight:600;border-top-color:var(--action)}.tab-book{color:var(--action);font-weight:600}.main{padding-bottom:96px}.menu-toggle{display:inline-flex;align-items:center;justify-content:center;min-height:44px;min-width:72px;padding:0 14px;background:var(--surface);color:var(--ink);border:1px solid var(--control-border);border-radius:var(--radius);font-weight:600}.shell-panel{display:none;padding:4px 0 14px;border-top:1px solid var(--rule)}.shell-panel.is-open{display:flex}.sidebar-footer{flex-direction:row;align-items:center;justify-content:space-between;margin-top:8px;padding:10px 16px 0;border-top:1px solid var(--rule)}.nav-link,.shell-role{padding-left:13px}.shell-role,.clinic-switch{margin:10px 16px;padding-left:0}.main{padding:22px 16px 96px}}@media(max-width:600px){.form-grid,.settings-integrations{grid-template-columns:1fr}.today{gap:22px}.today-head{align-items:flex-start}.header-actions{width:100%}.header-actions .btn{flex:1}.card{padding:16px 14px}.hero{margin:58px auto}.counts{display:grid;grid-template-columns:1fr 1fr}.count,.count+.count{display:block;margin:0;padding:10px 8px 10px 0;border-left:0;border-bottom:1px solid var(--rule)}.count:nth-child(2n){padding-left:12px;border-left:1px solid var(--rule)}.count:nth-last-child(-n+2){border-bottom:0}.count-value{margin-right:8px}.count-detail{display:block}.visit{grid-template-columns:5.2rem 1fr;gap:0 16px;padding:10px 14px 12px}.visit-status{grid-column:2;grid-row:1;text-align:right}.visit-who{grid-column:1 / -1}.visit-who a{display:inline-flex;align-items:center;min-height:44px}.visit-balance{grid-column:1 / -1}.visit-balance:empty{display:none}.visit-actions{grid-column:1 / -1}.visit-actions .btn,.next-up .visit-actions .btn{min-height:44px}.next-up .visit-actions{display:none}.now-line{padding:5px 14px;grid-template-columns:5.2rem 1fr}.payment-facts{grid-template-columns:1fr;gap:12px}.flash{top:68px}.people-head,.visit-head{position:absolute;width:1px;height:1px;padding:0;border:0;overflow:hidden;clip-path:inset(50%)}.people-head+.person,.visit-head+.past-visit{border-top:0}.person{grid-template-columns:1fr auto;padding:4px 14px 8px;gap:0 12px}.person-name{grid-column:1;grid-row:1}.person-book{grid-column:2;grid-row:1}.person-phone{grid-column:1;grid-row:2;font-size:.86rem}.person-balance{grid-column:2;grid-row:2;font-size:.86rem}.person-balance,.person-book{text-align:right}.cell-label{display:inline;font-family:var(--font-sans);color:var(--muted)}.patient-facts{display:block}.patient-facts>div,.patient-facts>div+div{padding:10px 0;border-left:0;border-top:1px solid var(--rule)}.patient-facts>div:first-child{border-top:0}.past-visit{grid-template-columns:1fr;padding:12px 14px}.past-visit .visit-time{white-space:nowrap}.consent-form .btn{width:100%}.panel{padding:16px 0 0}.panel-paid{padding:16px 14px}.view-tabs{display:flex;width:100%}.view-tab{flex:1;padding:0 8px}.appt-head{position:absolute;width:1px;height:1px;padding:0;border:0;overflow:hidden;clip-path:inset(50%)}.appt-head+.appt{border-top:0}.appt{grid-template-columns:5.2rem 1fr;padding:10px 14px 12px;gap:0 16px}.appt-status{grid-column:2;grid-row:1;text-align:right}.appt .visit-who{grid-column:1 / -1}.appt .visit-who a{display:inline-flex;align-items:center;min-height:44px}.appt-actions{grid-column:1 / -1;margin-top:8px}.appt-actions .btn{min-height:44px}.appt-actions-close{margin-left:0;padding-left:0;border-left:0;width:100%;padding-top:8px;border-top:1px dashed var(--rule)}.booking{padding:16px 14px}.balances a{display:inline-flex;align-items:center;min-height:44px}}.badge{white-space:normal;overflow-wrap:anywhere}.row>*,.form-grid>*{min-width:0}@media(max-width:860px){button,.btn{min-height:44px}}@media(max-width:600px){.table td a,.section-heading>a,.empty-state a{display:inline-flex;align-items:center;min-height:44px}}.request-fields{border:0;padding:0;margin:0;min-width:0}
