:root{--small-widget-height:153px;--board-radius:10px;--dash-side-width:clamp(160px, 40vw, 320px);--bg:#efebe3;--bg-2:#e7e1d6;--surface:#fffdf9;--surface-2:#f7f3ec;--ink:#1c1b18;--muted:#7a776e;--line:#1c1b1814;--teal:#15798a;--teal-2:#2b96a8;--sage:#d4e8eb;--peach:#f6d8c8;--lilac:#e6def4;--butter:#f3e6c0;--sky:#d5e6f3;--coral:#f3c8c4;--mint:#cfe8dc;--moss:#d5e3c8;--sand:#ead7c0;--rose:#edc6d6;--slate:#dde1e8;--plum:#ecd3ea;--clay:#e6cfc4;--status-done:#1f8a45;--status-progress:#e2b000;--status-start:#3b8fd6;--shadow:0 18px 40px #463a2614;--radius:24px;--widget-radius:22px;--btn-radius:10px;--sidebar:252px;--glow-warm:#f7efe2;--glow-cool:#d5eaee;--sidebar-fill:#fffdf98c;--overlay:#1c1b1847;--hatch:#1c1b180f;--brand-glow:#15798a47;--scroll-track:color-mix(in srgb, var(--sage) 45%, var(--surface-2));--scroll-thumb:color-mix(in srgb, var(--teal) 38%, var(--sage));--scroll-thumb-hover:color-mix(in srgb, var(--teal) 72%, var(--sage));--select-chevron:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231c1b18' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");--select-chevron-open:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231c1b18' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m18 15-6-6-6 6'/%3E%3C/svg%3E")}html{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}html[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#12181b;--bg-2:#182024;--surface:#1c2529;--surface-2:#243033;--ink:#edf3f4;--muted:#9aa8ac;--line:#edf3f41a;--teal:#3aadc0;--teal-2:#5bc4d4;--sage:#2c4f55;--peach:#5c433c;--lilac:#423d54;--butter:#4a4432;--sky:#2c4454;--coral:#5c3d3b;--mint:#2f4a42;--moss:#3d4a35;--sand:#4a4034;--rose:#4e3844;--slate:#3a3f4a;--plum:#4d3a4b;--clay:#4c3d36;--status-done:#3dbe6e;--status-progress:#f0c14a;--status-start:#6eb6f5;--shadow:0 18px 40px #00000061;--glow-warm:#1a2830;--glow-cool:#16343c;--sidebar-fill:#1c2529c7;--overlay:#00000085;--hatch:#edf3f40f;--brand-glow:#3aadc047;--scroll-track:color-mix(in srgb, var(--sage) 40%, var(--surface-2));--scroll-thumb:color-mix(in srgb, var(--teal) 45%, var(--sage));--scroll-thumb-hover:var(--teal-2);--select-chevron:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23edf3f4' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");--select-chevron-open:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23edf3f4' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m18 15-6-6-6 6'/%3E%3C/svg%3E")}*{box-sizing:border-box;scrollbar-width:thin;scrollbar-color:var(--scroll-thumb) var(--scroll-track)}::-webkit-scrollbar{width:4px;height:4px}::-webkit-scrollbar-track{background:var(--scroll-track);border-radius:999px;margin-block:28px;margin-inline:28px}::-webkit-scrollbar-thumb{background:var(--scroll-thumb);background-clip:padding-box;border:1px solid #0000;border-radius:999px}::-webkit-scrollbar-thumb:hover{background:var(--scroll-thumb-hover);background-clip:padding-box;border:1px solid #0000}::-webkit-scrollbar-corner{background:0 0}html,body,#root{max-width:100%;height:100%;overflow:hidden}a,a:visited,a:hover,a:active{color:inherit;-webkit-text-fill-color:inherit;text-decoration:none}a[href^=tel],a[href^=mailto],a[href^=sms],a[x-apple-data-detectors]{color:inherit!important;-webkit-text-fill-color:currentColor!important;background-color:#0000!important;text-decoration:none!important}a:-webkit-any-link[href^=tel]{color:inherit!important;-webkit-text-fill-color:currentColor!important;background-color:#0000!important;text-decoration:none!important}a:-webkit-any-link[href^=mailto]{color:inherit!important;-webkit-text-fill-color:currentColor!important;background-color:#0000!important;text-decoration:none!important}a[href^=tel] svg,a[href^=mailto] svg,a[href^=sms] svg,a[x-apple-data-detectors] svg,a[href^=tel] svg *,a[href^=mailto] svg *,a[href^=sms] svg *,a[x-apple-data-detectors] svg *{color:inherit!important;stroke:currentColor!important;fill:none!important}body{color:var(--ink);background:radial-gradient(1200px 500px at 10% -10%, var(--glow-warm), transparent 55%), radial-gradient(900px 400px at 100% 0%, var(--glow-cool), transparent 50%), var(--bg);margin:0;font-family:Plus Jakarta Sans,sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer;color:inherit;-webkit-text-fill-color:currentColor;appearance:none;-webkit-tap-highlight-color:transparent}button:disabled{cursor:default}.primary-btn,.ghost-chip,.icon-btn,.nav-item,.chair-chip,.colleague-chip,.add-colleague,.add-colleague .select-trigger,.update-appt,.cancel-appt,.chart-fab,.slot-cta,.cell-add,.cell-more,.day-chip,.upcoming-toggle,.view-toggle button,.settings-tabs button,.mode-pills button,.chip-remove,.cta-chip,.stat-cta,.text-link,.upcoming-row,.appt,.month-event,.history-row{transition:background-color .18s,color .18s,border-color .18s,box-shadow .18s,transform .16s,filter .16s,opacity .18s}.primary-btn:hover:not(:disabled){background:var(--teal-2);transform:translateY(-1px);box-shadow:0 2px 6px #15798a38}.primary-btn:active:not(:disabled){transform:translateY(0)scale(.98);box-shadow:0 1px 2px #15798a29}.ghost-chip:hover:not(:disabled),.colleague-chip:hover,.add-colleague .select-trigger:hover:not(:disabled),.upcoming-toggle:hover:not(.is-active),.day-chip:hover:not(.is-active){background:color-mix(in srgb, var(--surface-2) 72%, var(--teal));border-color:color-mix(in srgb, var(--teal) 28%, var(--line));color:var(--ink);transform:translateY(-1px)}.ghost-chip:active:not(:disabled),.chair-chip:active,.colleague-chip:active,.add-colleague .select-trigger:active:not(:disabled),.upcoming-toggle:active,.day-chip:active{transform:translateY(0)scale(.97)}.icon-btn:hover:not(:disabled){background:color-mix(in srgb, var(--surface) 70%, var(--teal));border-color:color-mix(in srgb, var(--teal) 35%, var(--line));color:var(--teal);transform:translateY(-1px)}.icon-btn:active:not(:disabled){transform:translateY(0)scale(.94)}.nav-item:active{transform:scale(.98)}.update-appt:active,.cancel-appt:active{transform:scale(.97)}.chart-fab:active{transform:scale(.94)}.slot-cta:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 10px 22px #463a261a}.slot-cta:active:not(:disabled){box-shadow:none;transform:translateY(0)scale(.98)}.view-toggle button:hover:not(.is-active),.settings-tabs button:hover:not(.is-active),.mode-pills button:hover:not(.is-active){background:var(--surface-2);color:var(--ink)}.view-toggle button.is-active:hover,.settings-tabs button.is-active:hover,.mode-pills .is-active:hover{filter:brightness(1.08)}.view-toggle button:active,.settings-tabs button:active,.mode-pills button:active{transform:scale(.97)}.cell-add:hover,.cell-more:hover{background:color-mix(in srgb, var(--surface-2) 60%, var(--teal));color:var(--teal)}.cell-add:active,.cell-more:active{transform:scale(.92)}.appt:hover,.month-event:hover{filter:brightness(.97);box-shadow:0 8px 18px #463a261a}.appt:active,.month-event:active{filter:brightness(.93);transform:scale(.99)}.upcoming-row:active{transform:scale(.99)}.text-link:active:not(:disabled){opacity:.7}@media (prefers-reduced-motion:reduce){.primary-btn,.ghost-chip,.icon-btn,.nav-item,.chair-chip,.colleague-chip,.add-colleague .select-trigger,.update-appt,.cancel-appt,.chart-fab,.slot-cta,.cell-add,.cell-more,.day-chip,.upcoming-toggle,.view-toggle button,.settings-tabs button,.mode-pills button,.chip-remove,.cta-chip,.stat-cta,.text-link,.upcoming-row,.appt,.month-event,.history-row{transition:none;transform:none}.dashboard-now-dots{animation:none}}img{max-width:100%;display:block}.app{grid-template-columns:var(--sidebar) minmax(0, 1fr);max-width:100%;height:100dvh;min-height:0;display:grid;overflow:hidden}.sidebar{border-right:1px solid var(--line);background:var(--sidebar-fill);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);flex-direction:column;gap:28px;height:100dvh;padding:22px 16px;display:flex;position:sticky;top:0}.sidebar-top,.topbar,.user-card,.doctor-head,.panel-head,.detail-meta,.week-nav{align-items:center;display:flex}.sidebar-top{justify-content:space-between;padding:0 8px}.brand{letter-spacing:-.04em;align-items:center;gap:10px;font-weight:800;display:flex}.brand-mark{border-radius:var(--btn-radius);object-fit:cover;background:var(--surface);width:38px;height:38px;box-shadow:0 8px 16px var(--brand-glow);flex-shrink:0;display:block}.brand-text span{color:var(--teal)}.icon-btn.sidebar-close,.icon-btn.menu-btn{display:none}.nav{flex-direction:column;gap:6px;display:flex}.nav-item{width:100%;color:var(--muted);border-radius:var(--btn-radius);text-align:left;background:0 0;border:0;align-items:center;gap:12px;padding:12px 14px;text-decoration:none;display:flex}.nav-item.is-active,.nav-item:hover{background:var(--surface);color:var(--ink);box-shadow:var(--shadow)}.badge{border-radius:var(--btn-radius);color:#fff;background:#e36b54;place-items:center;min-width:20px;height:20px;margin-left:auto;font-size:11px;font-style:normal;display:grid}.sidebar-foot{gap:12px;margin-top:auto;display:grid}.user-card{border-radius:var(--btn-radius);background:var(--surface);box-shadow:var(--shadow);gap:10px;padding:10px}.user-card img,.user-card .avatar,.doctor-head img,.doctor-head .avatar,.doctor-tabs img{border-radius:var(--btn-radius);object-fit:cover;width:40px;height:40px}.user-card strong,.doctor-head strong,.appt strong,.upcoming strong,.panel h3,.detail-body h4{font-size:13.5px;display:block}.user-card p,.doctor-head p,.appt p,.upcoming p,.eyebrow,.date-meta p,.muted,.empty,.stat p{color:var(--muted);-webkit-text-fill-color:var(--muted);margin:0;font-size:12px}.muted-icon{color:var(--muted);margin-left:auto}.content{flex-direction:column;gap:16px;min-width:0;height:100%;min-height:0;padding:22px 22px 28px;display:flex;overflow:hidden}.topbar{z-index:5;flex-wrap:wrap;flex-shrink:0;justify-content:space-between;gap:16px;position:relative}.topbar-left,.topbar-actions,.search,.stat,.upcoming li,.detail-meta{align-items:center;gap:12px;display:flex}h1,h2,h3,h4{letter-spacing:-.04em;margin:0}h1{font-size:clamp(22px,2vw,30px)}.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:11px;font-weight:700}.app-back{text-transform:uppercase;letter-spacing:.12em;color:var(--teal);-webkit-text-fill-color:var(--teal);cursor:pointer;background:0 0;border:0;align-items:center;margin:0;padding:0;font-size:11px;font-weight:700;text-decoration:none;display:inline-flex}.app-back:hover:not(:disabled){color:var(--teal-2);-webkit-text-fill-color:var(--teal-2)}.app-back:disabled{opacity:.45;cursor:default}.search{background:var(--surface);border:1px solid var(--line);border-radius:var(--btn-radius);max-width:520px;color:var(--muted);flex:1;padding:8px 8px 8px 16px}.search input{min-width:0;color:var(--ink);text-overflow:ellipsis;background:0 0;border:0;outline:none;flex:1}.ghost-chip,.primary-btn,.day-chip,.doctor-tabs button,.status,.pill,.icon-btn{border-radius:var(--btn-radius);border:0}.ghost-chip,.day-chip,.doctor-tabs button,.status,.pill{background:var(--surface-2);color:var(--ink)}.ghost-chip,.primary-btn{white-space:nowrap;align-items:center;gap:8px;padding:8px 12px;display:inline-flex}.primary-btn{background:var(--teal);color:#fff;-webkit-text-fill-color:white;padding:11px 16px;font-weight:700;box-shadow:0 1px 2px #15798a2e}.primary-btn.invite-btn{color:var(--teal);-webkit-text-fill-color:var(--teal);box-shadow:inset 0 0 0 1.5px var(--teal);background:0 0}.primary-btn.invite-btn:hover:not(:disabled){background:color-mix(in srgb, var(--teal) 10%, transparent);box-shadow:inset 0 0 0 1.5px var(--teal)}.colleague-bar{--colleague-control-size:36px;flex-wrap:wrap;align-items:center;gap:8px;display:flex}.colleague-chip,.add-colleague .select-trigger{border:1px solid var(--line);background:var(--surface);border-radius:var(--btn-radius);align-items:center;gap:8px;padding:6px 10px 6px 6px;font-size:13px;font-weight:700;display:inline-flex}.colleague-chip img,.colleague-chip .avatar{border-radius:var(--btn-radius);object-fit:cover;width:24px;height:24px}.colleague-chip.is-you{background:var(--sage);border-color:#0000}.chip-remove:hover{background:color-mix(in srgb, var(--surface-2) 50%, var(--teal));color:var(--ink)}.chip-remove:active{transform:scale(.9)}.add-colleague{color:var(--teal);align-items:center;display:inline-flex;position:relative}.add-colleague:hover{color:var(--ink)}.add-colleague .select{width:auto}.add-colleague>svg{z-index:1;pointer-events:none;position:absolute;left:10px}.add-colleague .select-trigger{width:auto;height:var(--colleague-control-size);box-sizing:border-box;color:var(--teal);white-space:nowrap;cursor:pointer;background-image:none;padding-left:28px}.add-colleague .select-trigger.is-placeholder,.add-colleague .select.is-open .select-trigger,.add-colleague .select-trigger:hover:not(:disabled),.add-colleague .select-trigger:active:not(:disabled){background-image:none}.add-colleague .select.is-open .select-trigger,.add-colleague .select-trigger:active:not(:disabled){box-shadow:none}.calendar-toolbar{gap:10px;display:grid}.announced-treatments{flex-wrap:wrap;gap:8px;display:flex}.announced-chip{text-align:left;border:1px dashed color-mix(in srgb, var(--teal) 45%, var(--line));background:color-mix(in srgb, var(--sage) 55%, var(--surface));color:var(--ink);border-radius:10px;gap:2px;min-width:160px;padding:8px 12px;display:grid}.announced-chip .eyebrow{color:var(--teal)}.announced-chip strong{font-size:13px}.chair-filter{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.chair-filter .icon-btn{width:32px;height:32px;color:var(--teal);border-color:var(--teal);background:0 0}.colleague-bar .chair-filter .icon-btn{width:var(--colleague-control-size);height:var(--colleague-control-size)}.chair-filter .icon-btn.is-all{background:var(--teal);color:#fff}.chair-filter .icon-btn:hover:not(:disabled){border-color:var(--teal);color:var(--teal);background:0 0}.chair-filter .icon-btn.is-all:hover:not(:disabled){background:var(--teal);color:#fff;filter:brightness(1.08)}.chair-chip{border:1px solid var(--line);background:var(--surface);border-radius:var(--btn-radius);min-width:34px;height:32px;font-size:12px;font-weight:700}.chair-chip.is-active{background:var(--teal);color:#fff;border-color:#0000}.stat-cta{text-align:left;border:0}.stat-cta:hover,.cta-chip:hover{box-shadow:var(--shadow)}.text-link{color:var(--ink);background:0 0;border:0;padding:0;font-size:13.5px;font-weight:800}.text-link:hover{color:var(--teal)}.cta-card{gap:12px;display:grid}.icon-btn{background:var(--surface);border:1px solid var(--line);width:42px;height:42px;color:var(--ink);-webkit-text-fill-color:currentColor;place-items:center;display:grid}.icon-btn.pay-due{color:var(--teal);-webkit-text-fill-color:var(--teal);background:var(--surface)}.icon-btn.pay-settled{color:#fff;-webkit-text-fill-color:white;background:var(--teal);border-color:var(--teal)}.icon-btn svg{color:inherit;stroke:currentColor}.notify-wrap,.notify{position:relative}.notify-dot{border-radius:var(--btn-radius);background:#e36b54;width:8px;height:8px;position:absolute;top:10px;right:11px}.notify-menu ul{margin:0;padding:0;list-style:none}.notify-menu{z-index:30;background:var(--surface);border:1px solid var(--line);width:min(320px,100vw - 28px);box-shadow:var(--shadow);border-radius:14px;max-height:min(360px,60vh);margin:0;padding:8px;list-style:none;position:absolute;top:calc(100% + 8px);right:0;overflow:auto}.notify-menu .empty{margin:0;padding:10px 12px}.notify-item{width:100%;color:var(--ink);text-align:left;border-radius:var(--btn-radius);cursor:pointer;background:0 0;border:0;gap:2px;padding:10px 12px;display:grid}.notify-item:hover,.notify-item:focus-visible{background:var(--surface-2)}.notify-item strong{font-size:13.5px;font-weight:700}.notify-item span{color:var(--muted);-webkit-text-fill-color:var(--muted);font-size:12px}.date-strip{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"meta toggle";align-items:start;gap:12px 16px;padding:8px 4px 0;display:grid}.date-strip.is-month{grid-template-areas:"meta toggle"}.date-meta{grid-area:meta;min-width:0}.month-shift{flex-direction:column;align-items:flex-start;gap:10px;display:flex}.month-shift-nav,.date-controls,.week-nav,.view-toggle,.form-head,.form-actions,.form-actions-end,.mode-pills,.month-cell header{align-items:center;gap:8px;display:flex}.view-toggle{background:var(--surface);border-radius:var(--btn-radius);border:1px solid var(--line);grid-area:toggle;justify-self:end;width:max-content;max-width:100%;padding:4px}.view-toggle button{appearance:none;color:var(--muted);border-radius:var(--btn-radius);background:0 0;border:0;align-items:center;gap:6px;min-height:36px;padding:8px 12px;font-size:13px;font-weight:700;display:inline-flex}.view-toggle .is-active,.view-toggle button.is-active{appearance:none;background:var(--teal);color:#fff;-webkit-text-fill-color:white;border-radius:var(--btn-radius)}.view-toggle button.is-active svg{color:#fff;stroke:#fff}.week-nav{justify-content:flex-end;gap:8px;width:100%}.week-nav .week-days{flex:0 auto;min-width:0;overflow:hidden}.calendar-stage{flex-direction:column;flex:1;gap:8px;min-height:0;display:flex;overflow:hidden}.calendar-nav{align-items:center;gap:8px;width:100%;min-height:52px;display:flex}.calendar-nav .chair-filter .icon-btn{width:42px;height:42px}.calendar-nav .week-nav{flex:1;min-width:0}.week-days,.doctor-tabs{gap:8px;padding-bottom:4px;display:flex;overflow-x:auto}.day-chip{box-sizing:border-box;text-align:center;flex:0 0 62px;place-content:center;place-items:center;gap:2px;width:62px;min-width:62px;max-width:62px;min-height:52px;padding:8px 10px;display:grid;overflow:hidden}.day-chip strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.day-chip span{min-height:1.2em;color:var(--muted);font-size:11px;line-height:1.2}.day-chip.is-active{color:var(--ink);box-shadow:inset 0 0 0 2px var(--teal);border-radius:var(--btn-radius);background:0 0}.day-chip.is-active span{color:var(--muted)}.day-chip.is-today{background:color-mix(in srgb, var(--surface) 78%, var(--teal));color:var(--teal)}.day-chip.is-today span,.day-chip.is-today strong{color:var(--teal)}.doctor-tabs{display:none}.doctor-tabs button{white-space:nowrap;align-items:center;gap:8px;padding:7px 12px 7px 7px;display:inline-flex}.doctor-tabs img{width:24px;height:24px}.doctor-tabs .is-active{background:var(--teal);color:#fff}.workspace{flex:1;grid-template-columns:minmax(0,1fr);gap:16px;min-height:0;display:grid;overflow:hidden}.board,.panel,.stat,.search,.user-card{background:var(--surface)}.board{border-radius:var(--radius);min-width:0;box-shadow:var(--shadow);overflow:hidden}.board-scroll{box-sizing:border-box;max-height:calc(100dvh - 230px);padding-bottom:32px;overflow:auto}.board-grid{min-width:980px;display:grid}.appointments-page .board-grid{width:100%;min-width:0}.time-head,.doctor-head{z-index:3;background:var(--surface);border-bottom:1px solid var(--line);position:sticky;top:0}.doctor-head{gap:12px;padding:16px}.doctor-head.is-self-solo{border:0;min-height:0;padding:0}.doctor-head img{width:46px;height:46px}.status{background:var(--sage);margin-left:auto;padding:6px 10px;font-size:11px;font-weight:700}.status.is-online{background:var(--sky)}.time-col{border-right:1px solid var(--line)}.time-slot{color:var(--muted);align-content:start;padding:8px 10px 0;font-size:11px;font-weight:700;display:grid}.doctor-col{border-right:1px solid var(--line);background-image:linear-gradient(var(--line) 1px, transparent 1px);background-size:100% 92px;position:relative}.grid-line{background:var(--line);height:1px;position:absolute;left:0;right:0}.appt-wrap{z-index:1;isolation:isolate;box-sizing:border-box;padding-block:4px;display:flex;position:absolute;left:8px;right:8px}@media (width>=768px){.appt-wrap{padding-block:2px}}.appt-wrap.abuts-prev{padding-top:0}.appt-wrap.abuts-next{padding-bottom:0}.appt-wrap.abuts-prev .appt{border-top:1px solid color-mix(in srgb, var(--ink) 22%, transparent)}.appt{border-radius:var(--btn-radius);text-align:left;width:100%;height:100%;min-height:0;color:var(--ink);-webkit-text-fill-color:var(--ink);border:0;flex:1;grid-template-columns:1fr 1fr 1fr;align-items:center;gap:4px;padding:8px 10px;line-height:1.25;display:grid;overflow:hidden}.appt.is-compact{gap:2px;padding:4px 8px}.appt.is-compact p{display:none}.appt-sage{background:var(--sage)}.appt-peach{background:var(--peach)}.appt-lilac{background:var(--lilac)}.appt-butter{background:var(--butter)}.appt-sky{background:var(--sky)}.appt-coral{background:var(--coral)}.appt-mint{background:var(--mint)}.appt-moss{background:var(--moss)}.appt-sand{background:var(--sand)}.appt-rose{background:var(--rose)}.appt-indigo{background:var(--surface-2)}.appt-slate{background:var(--slate)}.appt-plum{background:var(--plum)}.appt-clay{background:var(--clay)}.appt-time{text-align:center;color:var(--muted);-webkit-text-fill-color:var(--muted);place-content:center;font-size:11px;font-weight:700;display:grid}.appt-copy{text-align:center;justify-items:center;gap:2px;min-width:0;display:grid}.chair-tag{--chair-tone:#c9c6bf;color:var(--chair-tone);justify-content:center;align-items:center;gap:4px;display:inline-flex}.chair-tag svg{width:22px;height:22px;stroke:var(--chair-tone);stroke-width:2.4px;display:block}.chair-number{color:var(--chair-tone);font-size:20px;font-weight:800;line-height:1}html[data-theme=dark] .chair-tag{--chair-tone:#9aa3a6}.appt strong,.appt p{text-align:center;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.appt strong{color:var(--ink);-webkit-text-fill-color:var(--ink)}.appt-type{color:var(--muted);-webkit-text-fill-color:var(--muted);text-align:center;overflow-wrap:normal;word-break:normal;font-size:11px;font-weight:700}.rail{align-content:start;gap:12px;display:grid}.stat-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.stat,.panel,.widget-card{border-radius:var(--widget-radius);box-shadow:var(--shadow);padding:16px}.widget-card{min-width:0}.stat{gap:10px}.stat strong{letter-spacing:-.04em;font-size:22px}.panel-head{justify-content:space-between;margin-bottom:12px}.panel-head span{color:var(--muted);font-size:12px}.upcoming-toggle{border:1px solid var(--line);background:var(--surface-2);color:var(--muted);border-radius:var(--widget-radius);padding:5px 10px;font-size:11px;font-weight:700}.upcoming-toggle.is-active{background:var(--sage);color:var(--teal);border-color:#0000}.upcoming{gap:10px;margin:0;padding:0;list-style:none;display:grid}.upcoming li{justify-content:space-between}.dot{border-radius:50%}.avatar-lg{border-radius:var(--btn-radius)}.dot{flex:none;width:10px;height:10px}.dot-sage,.pill-sage{background:#9dcebc}.dot-peach,.pill-peach{background:#efb79d}.dot-lilac,.pill-lilac{background:#cbbce8}.dot-butter,.pill-butter{background:#e4cc7d}.dot-sky,.pill-sky{background:#9fc5e0}.dot-coral,.pill-coral{background:#e9a39c}.dot-mint,.pill-mint{background:#8ec9b4}.dot-moss,.pill-moss{background:#b5c98a}.dot-sand,.pill-sand{background:#d4b48a}.dot-rose,.pill-rose{background:#e4a0bc}.dot-indigo,.pill-indigo{background:var(--surface-2)}.dot-slate,.pill-slate{background:#aab3c2}.dot-plum,.pill-plum{background:#d3a9cf}.dot-clay,.pill-clay{background:#cfa995}.detail-body{text-align:left;gap:12px;display:grid}.visit-identity{grid-template-columns:repeat(3,minmax(0,1fr));align-items:center;gap:12px;display:grid}.visit-identity-col{text-align:center;align-content:center;justify-items:center;gap:8px;min-width:0;display:grid}.visit-identity-col h4,.visit-identity-col .visit-name{text-overflow:ellipsis;white-space:nowrap;letter-spacing:-.04em;min-width:0;max-width:100%;margin:0;font-size:13.5px;font-weight:700;line-height:normal;overflow:hidden}.visit-identity-col .visit-name{width:fit-content;box-shadow:none;color:var(--ink);-webkit-text-fill-color:var(--ink);text-align:center;cursor:pointer;background:0 0;border:0;border-radius:0;padding:0;transition:color .18s;display:block}.visit-identity-col .visit-name:hover,.visit-identity-col .visit-name:active{box-shadow:none;color:var(--teal);-webkit-text-fill-color:var(--teal);text-underline-offset:3px;background:0 0;text-decoration:underline;transform:none}.visit-identity .avatar-lg{margin:0}.current-appointment .visit-identity .avatar-lg{--avatar-size:64px}.visit-time{font-variant-numeric:tabular-nums;font-weight:700}.visit-chair svg{width:18px;height:18px}.visit-chair .chair-number{font-size:15px}.avatar-lg{background:var(--sage);border-radius:var(--btn-radius);object-fit:cover;place-items:center;width:56px;height:56px;margin:4px auto 0;font-weight:800;display:grid}.avatar{border-radius:var(--btn-radius);background:var(--sage);color:var(--teal);-webkit-text-fill-color:var(--teal);flex-shrink:0;place-items:center;font-weight:800;line-height:1;display:inline-grid;overflow:hidden}.avatar img{object-fit:cover;border-radius:inherit;width:100%;height:100%}.avatar-initials{letter-spacing:.02em;font-size:36%}.detail-section{text-align:left;gap:8px;padding-top:6px;display:grid}.detail-section h5{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:0;font-size:11px}.condition-list{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.condition-chip{background:var(--surface-2);border-radius:14px;padding:5px 10px;font-size:11px;font-weight:700}.note{background:var(--surface-2);border-radius:14px;margin:0;padding:10px}.detail-meta{justify-content:space-between}.detail-pills{flex-wrap:wrap;justify-content:start;gap:8px;display:flex}.visit-copy{text-align:left;grid-template-rows:auto minmax(0,1fr);grid-template-columns:minmax(0,1fr) 1px 13.5rem;align-items:start;gap:8px 20px;min-height:0;display:grid}.visit-copy.is-solo{grid-template-columns:minmax(0,1fr)}.visit-details-label,.visit-notes-label{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:0;font-size:11px}.visit-details-label{grid-area:1/1}.visit-notes-label{grid-area:1/3}.visit-copy-rule{background:var(--line);grid-area:1/2/-1;align-self:stretch}.exam-note{overflow-clip-margin:.4em;text-align:left;letter-spacing:.01em;width:100%;height:80%;min-height:0;max-height:80%;color:var(--muted);overflow-wrap:break-word;word-break:normal;grid-area:2/1;align-self:start;padding:10px 12px 14px;font-size:13.5px;font-weight:500;line-height:1.65;display:block;overflow:hidden}.visit-notes-body{grid-area:2/3;align-self:start;min-width:0}.illness-notes{gap:8px;margin:0;padding:0;list-style:none;display:grid}.illness-notes li{min-width:0;color:color-mix(in srgb, var(--ink) 80%, var(--muted));align-items:center;gap:10px;font-size:14px;font-weight:500;line-height:1.45;display:flex}.illness-notes li span.dot{flex:none}.pill{overflow-wrap:break-word;max-width:100%;padding:6px 10px;font-size:12px;font-weight:700}button.pill.visit-type{text-align:center;white-space:normal;cursor:pointer;width:fit-content;max-width:100%;height:auto;margin-inline:auto;font-size:12px;line-height:normal;transition:filter .18s,box-shadow .18s}button.pill.visit-type:hover,button.pill.visit-type:active{filter:brightness(.96);box-shadow:inset 0 0 0 2px var(--teal)}.empty{line-height:1.5}.backdrop{display:none}.month-board{grid-template-rows:minmax(0,1fr);height:100%;min-height:0;display:grid;overflow:hidden}.month-scroll{min-width:0;height:100%;min-height:0;overflow:auto}.month-canvas{grid-template-rows:auto minmax(0,1fr);width:max(100%,840px);min-width:840px;min-height:100%;display:grid}.month-weekdays,.month-grid{grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.month-weekdays{z-index:2;background:var(--surface);color:var(--muted);text-transform:uppercase;letter-spacing:.06em;padding:14px 0 0;font-size:12px;font-weight:700;position:sticky;top:0}.month-weekdays span,.month-cell{padding:8px}.month-weekdays span{border-top:1px solid var(--line);border-left:1px solid var(--line)}.month-weekdays span:last-child{border-right:1px solid var(--line)}.month-grid{grid-auto-rows:minmax(128px,1fr);min-height:max(768px,100%);overflow:visible}.month-cell{border-top:1px solid var(--line);border-left:1px solid var(--line);background:var(--surface);cursor:pointer;flex-direction:column;gap:6px;min-width:0;min-height:0;display:flex;position:relative;overflow:hidden}.month-cell:nth-child(7n){border-right:1px solid var(--line)}.month-cell:nth-last-child(-n+7){border-bottom:1px solid var(--line)}.month-cell header{z-index:1;background:inherit;flex:none;justify-content:space-between;position:relative}.month-cell.is-outside{color:var(--muted);background:color-mix(in srgb, var(--ink) 6%, transparent)}.month-cell.is-outside strong,.month-cell.is-outside .month-events{opacity:.72}.month-cell.is-today strong{border-radius:var(--btn-radius);background:color-mix(in srgb, var(--surface) 78%, var(--teal));width:22px;height:22px;color:var(--teal);place-items:center;font-size:11px;display:grid}.month-cell.is-selected{box-shadow:inset 0 0 0 2px var(--teal);background:0 0}.cell-more-slot{flex:none;width:24px;height:24px;position:relative}.cell-more,.cell-add{border-radius:var(--widget-radius);border:0;place-items:center;width:24px;height:24px;display:grid;position:absolute;inset:0}.cell-more{color:var(--teal);background:0 0;padding:0;font-size:11px;font-weight:800}.cell-add{opacity:0;background:var(--surface-2);color:var(--ink);pointer-events:none}.month-cell:hover .cell-add{opacity:1;pointer-events:auto}.month-cell:hover .cell-more{opacity:0;pointer-events:none}.month-events{flex:1;align-content:start;gap:4px;min-height:0;display:grid;overflow:hidden}.month-event{text-align:left;white-space:nowrap;text-overflow:ellipsis;border-radius:var(--btn-radius);border:0;align-items:center;padding:5px 8px;font-size:11px;font-weight:700;line-height:1.2;display:flex;overflow:hidden}.month-event em{color:var(--muted);margin-right:4px;font-style:normal}.modal-backdrop{background:var(--overlay);z-index:50;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.modal-backdrop+.modal-backdrop{z-index:60}.form-sheet{background:var(--surface);width:min(440px,100%);height:auto;min-height:0;max-height:min(92dvh,100%);box-shadow:var(--shadow);border-radius:28px;flex-direction:column;padding:0;display:flex;overflow:hidden}.form-sheet-body{flex:auto;min-height:0;padding:0 28px 28px;overflow:auto}.form-sheet-compact{border-radius:22px;width:min(360px,100%)}.form-sheet-compact .form-head{padding:22px 22px 16px}.form-sheet-compact .form-sheet-body{padding:0 22px 22px}.chair-sheet{flex:none;align-self:center;height:auto;max-height:min(92dvh,100%)}.nav-sheet .form-sheet-body{flex-direction:column;gap:22px;display:flex}.nav-sheet .nav{align-items:stretch}.nav-sheet .form-head{grid-template-columns:42px minmax(0,1fr) 42px;align-items:center;gap:8px;display:grid}.nav-sheet .form-head>div{text-align:center;grid-column:2}.nav-sheet .form-head .title-with-info{letter-spacing:-.03em;justify-content:center;font-size:15px;font-weight:700}.nav-sheet .form-head .icon-btn{grid-column:3;justify-self:end}.title-with-info{align-items:center;gap:8px;display:flex}.info-tip{flex-shrink:0;display:inline-flex;position:relative}.info-tip-btn{width:28px;height:28px;color:var(--muted);border-radius:var(--btn-radius);background:0 0;border:0;place-items:center;padding:0;display:grid}.info-tip-btn:hover,.info-tip-btn:focus-visible{color:var(--teal);background:color-mix(in srgb, var(--teal) 12%, transparent)}.info-tip-bubble{z-index:2147483647;background:var(--ink);width:min(280px,70vw);color:var(--surface);border-radius:var(--btn-radius);box-shadow:var(--shadow);pointer-events:auto;padding:10px 12px;font-size:13px;font-weight:500;line-height:1.45;position:fixed}.form-head{background:var(--surface);z-index:1;flex-shrink:0;justify-content:space-between;align-items:flex-start;margin:0;padding:28px 28px 22px}.form-head p{color:var(--muted);margin:4px 0 0}.appt-form{align-content:start;gap:0;display:grid}.form-row{grid-template-columns:1fr 1fr;align-items:start;gap:0 14px;display:grid}.account-form .form-row{gap:0 var(--settings-field-gap);flex-wrap:wrap;display:flex}.account-form .form-row>.form-field{width:var(--settings-field);max-width:100%}.form-row>.form-field{grid-template-rows:28px auto;align-content:start}.form-field{width:100%;min-width:0;box-sizing:border-box;min-inline-size:0;color:var(--muted);border:0;gap:8px;margin:0;padding-block:10px;font-size:12px;font-weight:700;display:grid}.form-field-label{width:100%;min-height:28px;color:var(--muted);align-items:center;margin:0;padding:0;font-size:12px;font-weight:700;display:flex}.form-field .form-field{padding-block:0}.form-field-legend-row{justify-content:space-between;align-items:center;gap:12px;width:100%;display:flex}.appt-form .form-field{padding-block:10px}.appt-form .mode-pills{flex-wrap:nowrap;width:100%}.appt-form .mode-pills button{flex:1 1 0;min-width:0}.form-actions{padding-block:10px}.appt-form label:not(.form-field),.appt-form fieldset:not(.form-field){color:var(--muted);border:0;gap:8px;margin:0;padding-block:10px;padding-inline:0;font-size:12px;font-weight:700;display:grid}.appt-form input:not([type=checkbox]),.appt-form select,.appt-form textarea{box-sizing:border-box;border:1px solid var(--line);background:var(--surface-2);width:100%;color:var(--ink);border-radius:14px;outline:none;align-self:start;padding:11px 12px;font-size:13.5px;font-weight:500;line-height:1.35}.appt-form label.form-check{color:var(--ink);cursor:pointer;flex-direction:row;align-items:center;gap:10px;padding-block:4px 12px;font-size:13px;font-weight:650;display:flex}.appt-form .form-check input[type=checkbox]{width:18px;height:18px;accent-color:var(--teal);border-radius:5px;flex:none;margin:0;padding:0}.money-input{border:1px solid var(--line);background:var(--surface-2);border-radius:14px;align-items:center;gap:6px;width:100%;min-height:44px;padding:11px 12px;display:flex}.appt-form .money-input input{width:100%;min-width:2ch;box-shadow:none;background:0 0;border:0;border-radius:0;outline:none;padding:0}.money-input.has-symbol{background:0 0;border:0;padding-inline:0}.money-input.has-symbol input{width:auto}.money-suffix{color:var(--muted);font-weight:600}.appt-form select{appearance:none;background-color:var(--surface-2);background-image:var(--select-chevron);background-position:right 11px center;background-repeat:no-repeat;background-size:14px 14px;padding-right:36px}.select{width:100%;position:relative}.appt-form input:not([type=checkbox]):hover:not(:disabled),.appt-form textarea:hover,.money-input:hover{border-color:color-mix(in srgb, var(--teal) 38%, var(--line))}.select.has-clear input{padding-right:40px}.select input{outline:none}.select input:hover:not(:disabled){border-color:color-mix(in srgb, var(--teal) 38%, var(--line))}.select.is-open input,.select input:focus{border-color:color-mix(in srgb, var(--teal) 55%, var(--line));box-shadow:0 0 0 3px color-mix(in srgb, var(--teal) 16%, transparent)}.select-clear{width:28px;height:28px;box-shadow:none;color:var(--ink);z-index:1;background:0 0;border:0;position:absolute;top:50%;right:6px;transform:translateY(-50%)}.select-clear:hover:not(:disabled){background:color-mix(in srgb, var(--teal) 14%, transparent);box-shadow:none;color:var(--teal);border:0;transform:translateY(-50%)scale(1.08)}.select-clear:active:not(:disabled){background:color-mix(in srgb, var(--teal) 22%, transparent);color:var(--teal);transform:translateY(-50%)scale(.9)}.select-native{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.select-trigger{border:1px solid var(--line);background-color:var(--surface-2);background-image:var(--select-chevron);width:100%;color:var(--ink);text-align:left;background-position:right 11px center;background-repeat:no-repeat;background-size:14px 14px;border-radius:14px;justify-content:space-between;align-items:center;gap:12px;padding:11px 36px 11px 12px;font-weight:500;transition:background-color .16s,border-color .16s,box-shadow .16s;display:flex}.select-trigger.is-placeholder{color:var(--muted)}.select-trigger:hover:not(:disabled){border-color:color-mix(in srgb, var(--teal) 38%, var(--line));background-color:color-mix(in srgb, var(--surface) 55%, var(--surface-2))}.select-trigger:active:not(:disabled),.select.is-open .select-trigger{border-color:color-mix(in srgb, var(--teal) 55%, var(--line));box-shadow:0 0 0 3px color-mix(in srgb, var(--teal) 16%, transparent)}.select.is-open .select-trigger{background-image:var(--select-chevron-open)}.select-trigger:disabled{opacity:1;color:var(--muted);cursor:default;border-color:var(--line);background-color:var(--surface-2)}.select-menu{z-index:80;background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:14px;max-height:min(280px,50vh);margin:0;padding:6px;list-style:none;position:fixed;overflow:auto}.select-menu.is-docked{z-index:auto;width:100%;max-height:min(220px,36dvh);margin-top:6px;position:static;inset:auto}.select-menu.is-docked .select-option{padding:12px}.select-group{gap:2px;display:grid}.select-group+.select-group{margin-top:6px}.select-group-label{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:0;padding:8px 10px 4px;font-size:11px;font-weight:700}.select-option{width:100%;color:var(--ink);text-align:left;border-radius:var(--btn-radius);background:0 0;border:0;padding:10px 12px;font-size:13.5px;font-weight:600;transition:background-color .16s,color .16s,transform .12s}.select-option:hover{background:color-mix(in srgb, var(--teal) 14%, var(--surface));color:var(--ink)}.select-option:active{background:color-mix(in srgb, var(--teal) 22%, var(--surface));transform:scale(.985)}.select-option.is-selected{background:var(--teal);color:#fff}.select-option.is-selected:hover{background:var(--teal-2);color:#fff}.select-option:disabled,.select-option.is-disabled{opacity:.55;cursor:default}.select-option:disabled:hover,.select-option.is-disabled:hover{color:var(--ink);background:0 0}.select-empty{color:var(--muted);padding:10px 12px;font-size:13px}.appt-form textarea.treatment-details{resize:none;min-height:calc(7.25em + 22px);line-height:1.45;overflow:hidden}.mode-pills button{border:1px solid var(--line);background:var(--surface-2);border-radius:var(--btn-radius);flex:1;padding:10px 12px;font-weight:700}.mode-pills .is-active{background:var(--teal);border-color:var(--teal);color:#fff;border-radius:var(--btn-radius)}.account-form .mode-pills{width:var(--settings-pair);gap:var(--settings-field-gap);flex-wrap:nowrap;max-width:100%}.account-form .mode-pills button{box-sizing:border-box;flex:1 1 0;width:auto;min-width:0}.service-pills{box-sizing:border-box;border:1px solid var(--line);background:var(--surface-2);border-radius:14px;flex-wrap:wrap;align-content:flex-start;gap:8px;width:100%;min-height:96px;padding:8px;display:flex}.service-pill{background:var(--surface);border-radius:var(--btn-radius);align-items:center;gap:2px;padding:4px 4px 4px 8px;display:inline-flex}.service-pill-body{color:var(--ink);cursor:pointer;background:0 0;border:0;align-items:center;gap:8px;padding:4px 6px 4px 2px;font-size:13px;font-weight:700;display:inline-flex}.service-pill-count{text-align:center;min-width:1.4em;color:var(--teal)}.service-pill .chip-remove{width:24px;height:24px;color:var(--muted);border-radius:var(--btn-radius);background:0 0;border:0;place-items:center;padding:0;display:grid}.treatment-total{width:100%;color:var(--ink);justify-content:space-between;align-items:center;margin:0;font-size:13px;font-weight:600;display:flex}.hours-summary-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.hours-label{color:var(--muted);font-size:12px;font-weight:700}.hours-summary{gap:6px;margin:0;padding:0;list-style:none;display:grid}.service-list{gap:8px;margin:12px 0 0;padding:0;list-style:none;display:grid}.service-row{background:var(--surface-2);border-radius:10px;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;display:flex}.service-row p{margin:4px 0 0}.service-row .icon-btn{color:var(--ink);background:0 0;border:0}.service-row .icon-btn:hover:not(:disabled){background:color-mix(in srgb, var(--teal) 14%, transparent);color:var(--teal);border:0;transform:scale(1.08)}.service-row .icon-btn:active:not(:disabled){background:color-mix(in srgb, var(--teal) 22%, transparent);color:var(--teal);transform:scale(.9)}.invite-row{background:var(--surface-2);border-radius:10px;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;display:flex}.invite-row p{margin:4px 0 0}.invite-meta{flex-wrap:wrap;flex-shrink:0;align-items:center;gap:8px;display:flex}.invite-status{letter-spacing:.04em;text-transform:uppercase;border-radius:var(--btn-radius);padding:4px 8px;font-size:11px;font-weight:700}.invite-status.is-pending{background:color-mix(in srgb, #d97706 16%, var(--surface));color:#b45309}.invite-status.is-active{background:color-mix(in srgb, var(--teal) 16%, var(--surface));color:var(--teal)}.services-panel .primary-btn{padding:8px 12px}.hours-summary li{justify-content:space-between;gap:12px;font-size:13px;font-weight:500;display:flex}.hours-summary span{color:var(--muted);font-weight:600}.hours-modal{justify-content:center;align-items:center;padding:24px}.hours-sheet{border-radius:28px;width:min(560px,100%);height:auto;max-height:min(90dvh,760px)}.hours-table{gap:8px;display:grid}.hours-row{grid-template-columns:48px 108px minmax(0,1fr) 16px minmax(0,1fr);align-items:center;gap:8px;display:grid}.hours-row .select{min-width:0}.hours-row strong{font-size:13px}.hours-dash{text-align:center;color:var(--muted)}.hours-row select:disabled,.hours-row input:disabled{opacity:.45}.hours-row input[type=time]{min-width:0}.unavailable-slot{background:repeating-linear-gradient(-45deg, transparent, transparent 6px, var(--hatch) 6px, var(--hatch) 12px);pointer-events:none;border-radius:10px;position:absolute;left:8px;right:8px}.dashboard-board{flex:1;grid-template-rows:auto minmax(0,1fr);gap:14px;width:100%;min-height:0;display:grid;overflow:hidden}.dashboard-board .widget-card,.dashboard-board .dash-end-card,.dashboard-board .ad-slot,.dashboard-board .slot-cta,.dashboard-board .upcoming-row,.dashboard-board .upcoming-toggle,.dashboard-board .upcoming-switch,.dashboard-board .update-appt,.dashboard-board .pill,.dashboard-board .note,.dashboard-board .exam-note{border-radius:var(--board-radius)}.appointments-page{flex-direction:column;flex:1;gap:16px;min-height:0;display:flex}.appointments-page .board,.appointments-page .day-chip,.appointments-page .day-chip.is-active,.appointments-page .view-toggle,.appointments-page .view-toggle button,.appointments-page .view-toggle button.is-active,.appointments-page .colleague-chip,.appointments-page .add-colleague .select-trigger,.appointments-page .chair-chip,.appointments-page .status,.appointments-page .cell-more,.appointments-page .cell-add,.appointments-page .appt,.appointments-page .month-event{border-radius:var(--btn-radius)}:is(.content:has(.appointments-page) .topbar-actions .primary-btn,.content:has(.appointments-page) .topbar-actions .ghost-chip){border-radius:10px}.dashboard-head{gap:4px;display:grid}.dashboard-head h2{font-size:22px}.dashboard-date-row{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.dashboard-now{letter-spacing:-.05em;color:var(--ink);font-variant-numeric:tabular-nums;align-items:center;margin:0;font-size:clamp(28px,3vw,36px);font-weight:800;line-height:1;display:inline-flex}.dashboard-now-dots{flex-direction:column;justify-content:space-between;width:.16em;height:.62em;margin-inline:.16em;animation:1.4s ease-in-out infinite dashboard-colon-pulse;display:inline-flex}.dashboard-now-dots span{background:currentColor;border-radius:50%;width:.16em;height:.16em}@media (width>=768px){.dashboard-date-row{min-height:clamp(28px,3vw,36px);position:relative}.dashboard-now{top:50%;left:calc(50vw - var(--sidebar) - 22px);z-index:1;position:absolute;transform:translate(-50%,-50%)}}@keyframes dashboard-colon-pulse{0%,to{opacity:1}50%{opacity:.2}}.dashboard-head .app-back{justify-self:start}.dashboard-back{min-height:1.35em}.dashboard-back.is-hidden{visibility:hidden;pointer-events:none}.dash-end-card{box-sizing:border-box;width:100%;max-width:none;margin:0;position:relative;overflow:hidden}.dash-end-mark{width:84px;height:84px;color:var(--teal);opacity:.16;pointer-events:none;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.dash-end-card.is-warn .dash-end-mark{color:#9a7b12}.dashboard-end-pair>.dash-end-card span,.dashboard-end-pair>.dash-end-card strong{z-index:1;position:relative}.today-census{align-self:start;height:auto;padding:12px 12px 10px}.new-appointments{gap:8px;width:100%;display:grid}.new-appointments .eyebrow{margin:0 2px 2px}.slot-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.slot-cta{border-radius:var(--widget-radius);background:color-mix(in srgb, var(--sage) 55%, var(--surface));width:100%;color:var(--ink);text-align:center;cursor:pointer;border:0;flex-direction:column;justify-content:center;align-items:center;gap:2px;padding:8px 10px;display:flex}.slot-cta-last{text-align:left;align-items:flex-start}.dash-end-card.slot-cta{box-sizing:border-box;width:100%;max-width:none;height:100%}.slot-cta span{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-size:10px;font-weight:700}.slot-cta strong{letter-spacing:-.04em;font-size:14px;font-weight:800;line-height:1.1}.slot-cta:hover:not(:disabled){background:color-mix(in srgb, var(--sage) 80%, var(--surface))}.slot-cta.is-warn{background:color-mix(in srgb, var(--butter) 70%, var(--surface))}.slot-cta.is-warn span{color:color-mix(in srgb, var(--ink) 62%, #9a7b12)}.slot-cta.is-warn:hover:not(:disabled){background:color-mix(in srgb, var(--butter) 85%, var(--surface))}.slot-cta.is-red{background:color-mix(in srgb, #e25b5b 24%, var(--surface))}.slot-cta.is-red span,.dashboard-end-pair>.dash-end-card.is-red span{color:color-mix(in srgb, var(--ink) 55%, #b42318)}.slot-cta.is-red:hover:not(:disabled){background:color-mix(in srgb, #e25b5b 34%, var(--surface))}.dash-end-card.is-red .dash-end-mark{color:#d45c5c}.slot-cta:disabled{opacity:.55;cursor:default}.dashboard-end-pair{box-sizing:border-box;grid-template-columns:repeat(3,minmax(0,1fr));align-self:stretch;gap:14px;width:100%;min-width:0;min-height:0;display:grid}.dashboard-end-pair>.dash-end-card{text-align:center;flex-direction:column;justify-content:center;place-self:stretch stretch;align-items:center;width:100%;max-width:none;height:100%;min-height:0;display:flex}.dashboard-end-pair>.dash-end-card.slot-cta-last{text-align:center;align-items:center}.dashboard-end-pair>.dash-end-card span{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin:0;font-size:10px;font-weight:700}.dashboard-end-pair>.dash-end-card.is-warn span{color:color-mix(in srgb, var(--ink) 62%, #9a7b12)}.dashboard-end-pair>.dash-end-card strong{letter-spacing:-.04em;font-size:14px;font-weight:800;line-height:1.1}.dash-end-blank{background:var(--surface-2);border-radius:var(--widget-radius);box-shadow:none;color:inherit;cursor:pointer;font:inherit;border:0}.dash-end-blank:hover{filter:brightness(.98)}.dashboard-appointments{grid-template-rows:auto minmax(0,1fr);grid-template-columns:minmax(0,1fr);align-items:stretch;gap:14px;width:100%;height:100%;min-height:0;display:grid;overflow:hidden}.dashboard-lower{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:stretch;gap:14px;height:100%;min-height:0;display:grid}.dashboard-side-extras{grid-template-rows:minmax(0,1fr) minmax(0,1fr);gap:14px;min-height:0;display:grid}.dashboard-side-extras .new-appointments,.dashboard-side-extras .today-census{align-self:stretch;height:auto;min-height:0;overflow:auto}.dashboard-appointments>.current-appointment,.dashboard-lower>.upcoming-panel{align-self:stretch;height:100%;min-height:0}.visit-expanded{border-top:1px solid var(--line);gap:16px;margin-top:4px;padding-top:14px;display:grid}.current-appointment{flex-direction:column;width:100%;min-width:0;height:100%;min-height:0;max-height:560px;display:flex;overflow:hidden}.current-appointment .detail-body{flex:1;grid-template-rows:auto minmax(0,1fr);min-height:0}.current-appointment .visit-copy{height:100%;min-height:0}.visit-phase{text-align:center;letter-spacing:-.04em;width:100%;color:var(--teal);text-transform:uppercase;margin:0 0 8px;font-size:20px;font-weight:800;line-height:1.1}.visit-actions{justify-content:space-between;align-items:center;gap:10px;width:100%;margin-top:auto;padding-top:18px;display:flex}.visit-actions-end{align-items:center;gap:10px;display:flex}.update-appt{border:1px solid color-mix(in srgb, #e07a2f 42%, var(--line));background:color-mix(in srgb, #e07a2f 12%, var(--surface));color:#c45e12;border-radius:var(--widget-radius);align-items:center;gap:8px;padding:10px 14px;font-size:13px;font-weight:700;display:inline-flex}.update-appt:hover{background:color-mix(in srgb, #e07a2f 22%, var(--surface))}.cancel-appt{border:1px solid color-mix(in srgb, #c4473a 42%, var(--line));background:color-mix(in srgb, #c4473a 10%, var(--surface));color:#c4473a;border-radius:var(--widget-radius);align-items:center;gap:8px;padding:10px 14px;font-size:13px;font-weight:700;display:inline-flex}.cancel-appt:hover{background:color-mix(in srgb, #c4473a 18%, var(--surface))}.ghost-chip.cancel-appt,.ghost-chip.cancel-appt:hover:not(:disabled){border:1px solid color-mix(in srgb, #c4473a 42%, var(--line));border-radius:var(--btn-radius);color:#c4473a}.ghost-chip.cancel-appt:hover:not(:disabled){background:color-mix(in srgb, #c4473a 18%, var(--surface))}.form-actions{justify-content:flex-end;width:100%}.form-actions-spread{justify-content:space-between;width:100%}.form-actions-end{margin-left:auto}.record-delete-confirm{color:var(--ink);margin:0 0 16px;font-size:14px;font-weight:650;line-height:1.4}.chart-fab{border:1.5px dashed color-mix(in srgb, var(--teal) 65%, var(--line));background:var(--sage);width:44px;height:44px;color:var(--teal);box-shadow:none;border-radius:var(--btn-radius);place-items:center;display:grid}.chart-fab:hover{background:color-mix(in srgb, var(--sage) 70%, white);border-style:solid}.chart-modal{justify-content:center;align-items:center;padding:24px}.chart-sheet{border-radius:24px;width:min(960px,100%);height:min(88dvh,100%)}.chart-sheet .form-sheet-body{flex-direction:column;display:flex}.chart-sheet .odontogram.is-text{flex:1;grid-template-rows:auto minmax(0,1fr);min-height:0}.chart-sheet .odontogram.is-text .appt-form{flex-direction:column;min-height:0;display:flex}.chart-sheet .odontogram.is-text .appt-form textarea{resize:none;flex:auto;align-self:stretch;height:100%;min-height:0;overflow:auto}.chart-head-actions{align-items:center;gap:8px;display:flex}.chart-save-icon{display:none}.icon-btn.chart-save-icon,.icon-btn.chart-save-icon:hover:not(:disabled){background:var(--teal);color:#fff;-webkit-text-fill-color:white;border-color:var(--teal)}.icon-btn.chart-save-icon svg{color:#fff;stroke:#fff}@media (width<=767px){.chart-save-label{display:none}.chart-save-icon{display:grid}}.upcoming-panel{flex-direction:column;place-self:stretch stretch;width:100%;max-width:none;height:100%;min-height:0;max-height:none;display:flex;overflow:hidden}.upcoming-panel .upcoming{align-content:start;gap:8px;display:grid}.upcoming-panel .upcoming:not(.current-slot){flex:1;grid-template-rows:none;grid-auto-rows:minmax(40px,auto);align-content:start;min-height:0;overflow:auto}.upcoming-panel .upcoming:not(.current-slot) .upcoming-row{flex:none;height:auto;min-height:40px}.upcoming-panel .current-slot{flex:none;grid-template-rows:minmax(40px,52px);min-height:0;margin-bottom:8px}.upcoming-panel .upcoming li{min-height:0}.upcoming li.is-empty{background:0 0}.upcoming-row{text-align:left;width:100%;min-width:0;height:100%;min-height:0;color:inherit;cursor:pointer;border-radius:var(--widget-radius);background:0 0;border:0;flex:1;align-items:center;gap:12px;padding:0 6px;display:flex}.upcoming-row:hover{background:color-mix(in srgb, var(--surface-2) 85%, transparent)}.upcoming-row.is-now{background:color-mix(in srgb, var(--surface) 90%, var(--teal));box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--teal) 22%, transparent)}.upcoming-row.is-now:hover{background:color-mix(in srgb, var(--surface) 84%, var(--teal))}.upcoming-row div{flex:1;justify-items:start;gap:4px;min-width:0;display:grid}.upcoming-row strong{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.upcoming-row p{color:var(--muted);margin:0;font-size:12px;font-weight:700}.upcoming-row em{color:var(--muted);flex-shrink:0;font-size:12px;font-style:normal;font-weight:700}.odontogram{text-align:left;gap:12px;display:grid}.odontogram.is-readonly .tooth-hit,.odontogram.is-readonly .tooth-face,.odontogram.is-readonly .tooth-canal-hit,.odontogram.is-readonly .tooth-root{pointer-events:none;cursor:default}.odontogram.is-readonly .tooth-note{pointer-events:none;background:0 0}.odontogram-toolbar{justify-content:flex-start;display:flex}.odontogram-switch{justify-self:start}.odontogram-switch button{justify-content:center;width:40px;padding:0}.dx-legend{justify-items:start;gap:8px;display:grid}.dx-legend-values,.dx-bar{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.dx-chip{border-radius:var(--widget-radius);background:var(--surface-2);color:var(--ink);border:0;align-items:center;gap:6px;padding:6px 10px;font-size:11px;font-weight:700;display:inline-flex}.dx-chip.dx-healthy{background:var(--surface);border:1px solid var(--line)}.dx-chip.dx-caries{color:#fff;-webkit-text-fill-color:white;background:#d94a4a}.dx-chip.dx-filling{background:#7aa0c4}.dx-code{opacity:.85;font-weight:800}.dx-chip.dx-erupting{background:#b9e0b4}.dx-chip.dx-caries1{background:#e8837a}.dx-chip.dx-caries2{color:#fff;-webkit-text-fill-color:white;background:#d94a4a}.dx-chip.dx-secondary{color:#fff;-webkit-text-fill-color:white;background:#9c2f2f}.dx-chip.dx-fractured{color:#fff;-webkit-text-fill-color:white;background:#4a4640}.dx-chip.dx-composite{background:#7aa0c4}.dx-chip.dx-amalgam{color:#fff;-webkit-text-fill-color:white;background:#8a8f98}.dx-chip.dx-denture{background:#c9a6d8}.dx-chip.dx-primary{background:#cfe6f5}.dx-chip.dx-implant{color:#fff;-webkit-text-fill-color:white;background:#5fa8a0}.dx-chip.dx-post{color:#fff;-webkit-text-fill-color:white;background:#6f8aa3}.dx-chip.dx-lesion{background:#e08a3c}.dx-chip.dx-fracture{color:#fff;-webkit-text-fill-color:white;background:#4a4640}.dx-chip.dx-resorption{background:#c78b9a}.dx-chip.dx-apicectomy{color:#fff;-webkit-text-fill-color:white;background:#3a9a8a}.dx-chip.dx-crown{background:#d4b56a}.dx-chip.dx-rct{color:#fff;-webkit-text-fill-color:white;background:#8b6bb0}.dx-chip.dx-missing{border:1px solid var(--line);background:linear-gradient(to top right, transparent calc(50% - .6px), var(--muted) calc(50% - .6px), var(--muted) calc(50% + .6px), transparent calc(50% + .6px)), var(--surface)}.odontogram-status ul{gap:6px;margin:0;padding:0;list-style:none;display:grid}.odontogram-status li{border-radius:var(--btn-radius);background:var(--surface-2);align-items:center;gap:10px;padding:8px 10px;display:flex}.odontogram-status li span{flex:1;min-width:0}.odontogram-status .icon-btn{width:28px;height:28px}.odontogram-summary-form{justify-items:start;gap:10px;display:grid}.tooth-part-ring{fill:none;stroke:var(--teal);stroke-width:2.4px;stroke-linejoin:round;pointer-events:none;vector-effect:non-scaling-stroke}.dx-popup-layout{grid-template-columns:minmax(260px,340px) minmax(0,1fr);align-items:start;gap:20px;display:grid}.dx-popup-visual{gap:4px;min-width:0;display:grid}.dx-popup-footer{background:linear-gradient(to top, var(--surface) 70%, transparent);justify-content:flex-end;margin-top:auto;padding-top:14px;display:flex;position:sticky;bottom:0}.dx-history-remove{width:22px;height:22px;color:var(--muted);background:0 0;border:0;border-radius:6px;flex:none;place-items:center;padding:0;display:grid}.dx-history-remove:hover{background:color-mix(in srgb, var(--ink) 10%, transparent);color:var(--ink)}.dx-popup-side{gap:10px;min-width:0;display:grid}.dx-popup .dx-history ul{max-height:320px}@media (width<=767px){.dx-popup-layout{grid-template-columns:1fr}}.dx-popup-figure{background:color-mix(in srgb, var(--surface-2) 70%, var(--surface));border-radius:16px;place-items:center;padding:16px;display:grid}.dx-popup-figure .tooth-glyph{max-width:170px}.tooth-dimmed{opacity:.32;filter:grayscale()}.dx-history{gap:8px;margin-top:14px;display:grid}.dx-history ul{gap:6px;max-height:220px;margin:0;padding:0;list-style:none;display:grid;overflow-y:auto}.dx-history li{border-radius:var(--btn-radius);background:var(--surface-2);align-items:baseline;gap:10px;padding:8px 10px;font-size:12px;display:flex}.dx-history li.is-pending{opacity:.8;font-style:italic}.dx-history time{text-align:right;color:var(--muted);white-space:nowrap;flex:none;margin-left:auto;padding-left:12px;font-weight:700}.dx-history-tooth{background:var(--surface);text-align:center;border-radius:6px;flex:none;min-width:24px;padding:1px 6px;font-weight:800}.dx-history-text{overflow-wrap:anywhere;flex:auto;min-width:0}.dx-history-empty{color:var(--muted);margin:0;font-size:12px}.dx-popup .dx-chip.dx-part{border:1px solid var(--line);background:var(--surface)}.dx-popup .dx-legend-values{gap:8px}.dx-popup .dx-chip{cursor:pointer;padding:10px 14px;font-size:13px}.dx-chip.is-active{box-shadow:inset 0 0 0 2px var(--teal)}.odontogram-board{border:1px solid var(--line);background:color-mix(in srgb, var(--surface) 88%, var(--surface-2));border-radius:16px;gap:8px;padding:12px 10px;display:grid;overflow-x:auto}.tooth-arch{grid-template-columns:repeat(16,minmax(28px,1fr));gap:3px;min-width:520px;display:grid}.tooth-arch.is-primary{grid-template-columns:repeat(10,minmax(28px,1fr));width:62.5%;min-width:320px;margin-inline:auto}.tooth-cell{justify-items:center;gap:2px;min-width:0;display:grid}.tooth-select{fill:none;stroke:var(--teal);stroke-width:2px;pointer-events:none}.tooth-root{stroke:var(--ink);stroke-width:1px;stroke-opacity:.8;stroke-linejoin:round;cursor:pointer;vector-effect:non-scaling-stroke}.tooth-hit{background:0 0;border:0;place-items:center;width:100%;padding:0;display:grid}.tooth-glyph,.tooth-face,.tooth-root{-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;outline:none}.tooth-glyph{shape-rendering:geometricprecision;width:100%;max-width:48px;height:auto;display:block}.tooth-face{stroke:var(--ink);stroke-width:1.15px;cursor:pointer;vector-effect:non-scaling-stroke}.tooth-absent-shape{fill:none;stroke:var(--ink);stroke-width:1px;stroke-dasharray:3 3;opacity:.28;vector-effect:non-scaling-stroke}.tooth-note{border:1px solid var(--line);background:var(--surface);width:100%;height:16px;color:var(--ink);text-align:center;border-radius:2px;padding:0;font-size:10px;font-weight:700}.tooth-fdi{color:var(--muted);font-size:10px;font-weight:700;line-height:1.1}@media (width<=1023px){.chart-sheet{width:min(920px,100%)}.odontogram-board{overflow-x:hidden}.tooth-arch,.tooth-arch.is-primary{gap:2px;min-width:0}.tooth-arch{grid-template-columns:repeat(16,minmax(0,1fr))}.tooth-arch.is-primary{grid-template-columns:repeat(10,minmax(0,1fr));width:62.5%}.tooth-glyph{max-width:none}}.odontogram-map{justify-content:center;display:flex}.odontogram-map-frame{touch-action:none;cursor:grab;border:1px solid var(--line);background:color-mix(in srgb, var(--surface) 88%, var(--surface-2));border-radius:10px;position:relative;overflow:hidden}.odontogram-map-frame:active{cursor:grabbing}.odontogram-map-frame:focus-visible{outline:2px solid var(--teal);outline-offset:2px}.odontogram-map-board{pointer-events:none;position:absolute;top:0;left:0}.odontogram-lens{border:2px solid var(--teal);background:color-mix(in srgb, var(--teal) 22%, transparent);box-shadow:0 0 0 1px color-mix(in srgb, var(--teal) 35%, transparent);pointer-events:none;border-radius:4px;position:absolute}@media (width<=767px){.odontogram-enhance{gap:10px;display:grid}.odontogram-enhance .odontogram-window{border:1px solid var(--line);background:color-mix(in srgb, var(--surface) 88%, var(--surface-2));border-radius:16px;position:relative;overflow:hidden}.odontogram-enhance .odontogram-board{transform-origin:0 0;background:0 0;border:0;width:640px;max-width:none;overflow:visible}.odontogram-enhance .odontogram-window>.odontogram-board{position:absolute;top:0;left:0}.odontogram-enhance .tooth-arch{grid-template-columns:repeat(16,minmax(28px,1fr));gap:3px;min-width:520px}.odontogram-enhance .tooth-arch.is-primary{grid-template-columns:repeat(10,minmax(28px,1fr));width:62.5%;min-width:320px}.odontogram-enhance .tooth-glyph{max-width:34px}}.dental-record{text-align:left}.history-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.history-row{background:color-mix(in srgb, var(--surface-2) 55%, transparent);text-align:left;border:0;border-radius:16px;align-items:center;gap:12px;width:100%;padding:10px 14px;display:flex}.history-row:hover{background:var(--surface-2)}.history-row .dot{opacity:.5}.history-copy{flex:1;gap:2px;min-width:0;display:grid}.history-copy strong{color:var(--muted);font-size:12px;font-weight:600}.history-copy p{color:color-mix(in srgb, var(--ink) 72%, var(--muted));text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:12.5px;font-weight:500;overflow:hidden}.history-row em{letter-spacing:.02em;color:var(--muted);flex-shrink:0;font-size:11px;font-style:normal;font-weight:600}.page-board{--page-gutter:18px;min-width:0;min-height:0;padding:var(--page-gutter) 0 1px var(--page-gutter);flex:1;gap:14px;position:relative;overflow:hidden}.page-board.account-board,.page-board.documents-board,.page-board.collections-board{--page-gutter:24px}.page-board.account-board{gap:0}.page-header{gap:inherit;padding-right:var(--page-gutter);z-index:2;flex-direction:column;flex-shrink:0;min-width:0;display:flex;position:relative}.page-scroll{min-height:0;padding-right:var(--page-gutter);z-index:1;flex:1;padding-bottom:40px;position:relative;overflow:hidden auto}.page-scroll::-webkit-scrollbar-track{margin-inline:0}.page-footer{box-sizing:border-box;width:100%;padding:12px var(--page-gutter) 0 0;z-index:2;background:0 0;flex:none;justify-content:flex-end;align-self:stretch;align-items:center;display:flex;position:relative}.account-board .page-scroll{scrollbar-width:thin;scrollbar-color:var(--scroll-thumb) var(--scroll-track);padding-bottom:8px;overflow-y:auto}.account-board .page-scroll::-webkit-scrollbar{background:var(--scroll-track);width:4px;height:4px}.account-board .page-scroll::-webkit-scrollbar-track{background:var(--scroll-track);border-radius:999px;margin:0}.account-board .page-scroll::-webkit-scrollbar-thumb{background:var(--scroll-thumb);border:0;border-radius:999px;min-height:24px}.patients-board{gap:14px}.patients-board:not(.patient-record) .page-scroll{padding-top:16px;padding-bottom:32px;padding-left:12px}.patients-board .patients-list{gap:12px}.patient-record{overflow:hidden}.patient-record-page{flex:1;gap:4px;min-height:0}.record-back{text-align:left;align-self:flex-start}.record-facts{grid-template-columns:1fr 1fr;gap:12px 18px;margin:0;display:grid}.record-facts-pair{grid-column:1/-1;grid-template-columns:1fr 1fr;gap:12px 18px;display:grid}.record-facts>div:not(.record-facts-pair),.record-facts-pair>div{align-content:start;gap:6px;display:grid}.record-facts-wide{grid-column:1/-1}.record-facts dt{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:0;font-size:11px;font-weight:700;line-height:1.2}.record-facts dd{align-items:center;gap:6px;margin:0;font-weight:600;line-height:1.3;display:flex}.record-facts>div.record-notes{gap:14px}.record-notes-body{align-items:flex-start;font-weight:500}.record-notes-body .empty{line-height:1.3}.tag-input{border:1px solid var(--line);background:var(--surface-2);border-radius:14px;flex-wrap:wrap;align-items:center;gap:6px;padding:8px;display:flex}.tag-input input{background:0 0;border:0;flex:1;min-width:140px;padding:6px 8px}.medical-note-chips{margin-top:8px}.record-nav{border-top:1px solid var(--line);width:100%;margin-top:8px;padding-top:18px}.record-tab{gap:12px;display:grid}.patients-search{flex:none;width:520px;max-width:100%}.records-filters{flex-wrap:wrap;flex-shrink:0;justify-content:space-between;gap:8px;width:100%}.records-filters .view-toggle,.records-filters .view-toggle button,.records-filters .view-toggle button.is-active,.patient-record-page .patients-search{border-radius:var(--btn-radius)}.records-filters .view-toggle{justify-self:start}.records-day-toggle{margin-left:auto}.treatment-filters .view-toggle{flex-wrap:wrap;width:100%;max-width:100%}.treatment-filters .view-toggle button{white-space:nowrap;flex:auto;justify-content:center}.patients-list{gap:8px;width:720px;max-width:100%;display:grid}.patient-row,.doc-row{box-sizing:border-box;background:var(--surface-2);border-radius:var(--widget-radius);text-align:left;border:0;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;width:100%;max-width:720px;padding:12px 14px;display:grid}.patient-row{color:var(--ink);-webkit-text-fill-color:var(--ink);cursor:pointer;-webkit-tap-highlight-color:transparent;font:inherit;box-shadow:0 1px 2px color-mix(in srgb, var(--ink) 8%, transparent), 0 10px 22px color-mix(in srgb, var(--ink) 12%, transparent);border-radius:10px}.patient-row strong{color:var(--ink);-webkit-text-fill-color:var(--ink)}.patient-row .record-incomplete{color:#e8b400;-webkit-text-fill-color:#e8b400}.patient-row:hover{box-shadow:0 2px 4px color-mix(in srgb, var(--ink) 10%, transparent), 0 14px 28px color-mix(in srgb, var(--ink) 16%, transparent)}.treatment-row{grid-template-columns:minmax(0,1fr) auto}.treatment-row .patient-copy{display:contents}.treatment-row .patient-copy strong{grid-area:1/1;min-width:0}.treatment-row .patient-meta{grid-area:1/2/span 2;align-self:center}.patient-meta .treatment-status{justify-self:end;gap:8px}.patient-meta .treatment-progress{color:var(--ink);-webkit-text-fill-color:var(--ink);font-variant-numeric:tabular-nums;font-weight:700}.patient-meta .treatment-status.is-complete svg,.patient-meta .treatment-status.is-complete svg *{-webkit-text-fill-color:var(--status-done);color:var(--status-done)!important;stroke:var(--status-done)!important}.patient-meta .treatment-status.is-active svg,.patient-meta .treatment-status.is-active svg *{-webkit-text-fill-color:var(--status-progress);color:var(--status-progress)!important;stroke:var(--status-progress)!important}.patient-meta .treatment-status.is-announced svg,.patient-meta .treatment-status.is-announced svg *{-webkit-text-fill-color:var(--status-start);color:var(--status-start)!important;stroke:var(--status-start)!important}.treatment-row .patient-copy p{white-space:nowrap;text-overflow:ellipsis;grid-area:2/1;max-width:min(50ch,100%);display:block;overflow:hidden}.patient-row img,.patient-row .avatar{border-radius:var(--btn-radius);object-fit:cover;width:44px;height:44px}.patient-copy strong{align-items:center;gap:6px;display:inline-flex}.record-incomplete{color:#e8b400;flex-shrink:0}.patient-copy p,.patient-meta span,.doc-row p{color:var(--muted);-webkit-text-fill-color:var(--muted);align-items:center;gap:6px;margin:0;font-size:12px;display:flex}.plain-contact,.plain-contact a{color:inherit!important;-webkit-text-fill-color:currentColor!important;text-decoration:none!important}.patient-copy svg:not(.record-incomplete),.patient-copy svg:not(.record-incomplete) *,.patient-meta svg,.patient-meta svg *,.record-facts dd svg,.record-facts dd svg *,.plain-contact svg,.plain-contact svg *{color:var(--muted)!important;stroke:var(--muted)!important;fill:none!important}.patient-meta{color:var(--muted);justify-items:end;gap:4px;font-size:12px;display:grid}.status-chip{border-radius:var(--widget-radius);padding:6px 10px;font-size:11px;font-style:normal;font-weight:800}.status-active{background:var(--sage)}.status-new{background:var(--sky)}.status-inactive{background:var(--peach)}.patients-empty{padding:24px 8px}.settings-save{flex-shrink:0}.page-watermark{display:none}@media (width>=768px){.page-watermark{z-index:0;aspect-ratio:1;pointer-events:none;-webkit-user-select:none;user-select:none;width:552.96px;max-width:none;height:auto;max-height:none;color:var(--teal);opacity:.07;display:block;position:absolute;top:50%;right:0;transform:translate(15%,-50%)rotate(12deg)}}@media (width>=1024px){.account-board{padding-left:56px}.account-form{grid-template-columns:3fr 1fr;max-width:none}.account-form>*{grid-column:1}.page-watermark{width:864px}}@media (width>=1440px){.page-watermark{width:60vw}}.collections-board{--balance-completed:color-mix(in srgb, var(--sky) 52%, var(--surface));--balance-outstanding:color-mix(in srgb, var(--butter) 52%, var(--surface));--balance-received:color-mix(in srgb, var(--mint) 52%, var(--surface))}.collections-toolbar{flex-shrink:0;justify-content:space-between;gap:12px;width:100%;margin-bottom:16px}.collections-period{letter-spacing:-.03em;margin:0;font-size:24px}.collections-board .month-shift-nav .icon-btn{border-radius:var(--btn-radius);width:48px;height:48px}.collections-toolbar .view-toggle,.collections-toolbar .view-toggle button,.collections-toolbar .view-toggle button.is-active,button.collections-stat,.mobile-balance-stat{border-radius:var(--btn-radius)}.collections-toolbar .view-toggle{flex-shrink:0;justify-self:end}.collections-toolbar .view-toggle button{padding:10px 16px;font-size:14px}.collections-stats{flex-direction:row;align-items:stretch;gap:14px;margin-bottom:18px}.collections-stat,.collections-list{flex:1;min-width:0}.collections-list{background:var(--surface-2);border:1px solid var(--line);box-shadow:0 8px 22px color-mix(in srgb, var(--ink) 10%, transparent)}.collections-stat strong{letter-spacing:-.04em;font-size:28px}button.collections-stat{text-align:left;cursor:pointer;border:1px solid var(--line);width:100%;color:inherit;font:inherit;background:var(--surface-2);box-shadow:0 8px 22px color-mix(in srgb, var(--ink) 10%, transparent)}button.collections-stat.balance-stat--completed,.mobile-balance-stat.balance-stat--completed,.collections-row.balance-stat--completed{background:var(--balance-completed)}button.collections-stat.balance-stat--outstanding,.mobile-balance-stat.balance-stat--outstanding,.collections-row.balance-stat--outstanding{background:var(--balance-outstanding)}button.collections-stat.balance-stat--received,.mobile-balance-stat.balance-stat--received,.collections-row.balance-stat--received{background:var(--balance-received)}button.collections-stat.balance-stat--completed:hover:not(.is-active){background:color-mix(in srgb, var(--balance-completed) 88%, var(--ink))}button.collections-stat.balance-stat--outstanding:hover:not(.is-active){background:color-mix(in srgb, var(--balance-outstanding) 88%, var(--ink))}button.collections-stat.balance-stat--received:hover:not(.is-active){background:color-mix(in srgb, var(--balance-received) 88%, var(--ink))}button.collections-stat.is-active{box-shadow:inset 0 0 0 2px var(--teal);border:0}button.collections-stat.is-active.balance-stat--completed,.mobile-balance-stat.is-active.balance-stat--completed{background:var(--balance-completed);box-shadow:inset 0 0 0 2px color-mix(in srgb, var(--ink) 28%, var(--sky));border-color:#0000}button.collections-stat.is-active.balance-stat--outstanding,.mobile-balance-stat.is-active.balance-stat--outstanding{background:var(--balance-outstanding);box-shadow:inset 0 0 0 2px color-mix(in srgb, var(--ink) 28%, var(--butter));border-color:#0000}button.collections-stat.is-active.balance-stat--received,.mobile-balance-stat.is-active.balance-stat--received{background:var(--balance-received);box-shadow:inset 0 0 0 2px color-mix(in srgb, var(--ink) 28%, var(--mint));border-color:#0000}button.collections-stat:focus-visible{outline:2px solid var(--teal);outline-offset:2px}.collections-stat span{color:var(--muted);font-size:13px;font-weight:600}.collections-cta{flex-wrap:wrap;gap:14px;margin-bottom:18px}.collections-cta .empty{margin:0}.collections-lists{flex-direction:row;align-items:stretch;gap:14px}.collections-list ul{flex-direction:column;gap:10px;margin:12px 0 0;padding:0;list-style:none;display:flex}.collections-row{border:1px solid var(--line);border-radius:var(--btn-radius);background:var(--surface);text-align:left;width:100%;color:inherit;box-shadow:0 2px 6px color-mix(in srgb, var(--ink) 10%, transparent);align-items:center;gap:12px;padding:10px 12px;display:flex}.collections-row-main{text-align:left;min-width:0;color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;flex:1;align-items:center;padding:0;display:flex}.collections-row-main>div{flex:1;min-width:0}.collections-row-main strong{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.collections-row-end{flex-shrink:0;align-items:center;gap:10px;margin-left:auto;display:flex}.collections-row-end .icon-btn{width:36px;height:36px}.collections-row-end .icon-btn.pay-due{color:var(--teal);-webkit-text-fill-color:var(--teal);background:0 0;border-color:#0000}.collections-row-end .icon-btn.pay-due:hover:not(:disabled){background:color-mix(in srgb, var(--teal) 12%, transparent);color:var(--teal);-webkit-text-fill-color:var(--teal);border-color:#0000}.collections-row-end .icon-btn.pay-settled,.collections-row-end .icon-btn.pay-settled:hover:not(:disabled){background:var(--teal);border-color:var(--teal);color:#fff;-webkit-text-fill-color:white}.collections-row-end .icon-btn.pay-settled:hover:not(:disabled){background:var(--teal-2);border-color:var(--teal-2)}.collections-row-edit-spacer{flex-shrink:0;width:36px;height:36px}.collections-row p,.collections-row em{color:var(--muted);margin:4px 0 0;font-size:12px;font-style:normal;font-weight:600}.collections-row-amount{white-space:nowrap;font-size:13px;font-weight:800}.record-hero{gap:4px;margin-bottom:22px}.account-hero{align-items:center;gap:16px;width:100%;margin-bottom:22px;display:flex}.record-hero .account-hero{align-items:flex-start;margin-bottom:0}.record-hero .account-hero-identity{flex-direction:row;align-items:center;display:flex}.account-hero-identity{flex:1;gap:16px;min-width:0}.account-hero img,.account-hero .avatar{border-radius:var(--btn-radius);object-fit:cover;flex-shrink:0;width:72px;height:72px}.account-hero-copy{flex:1;min-width:0}.account-hero h2{align-items:center;gap:8px;display:inline-flex}.account-form .account-hero h2{letter-spacing:-.04em;min-width:0;color:var(--ink);font-size:1.5em;font-weight:800;line-height:1.2}.account-form .account-hero .icon-btn{width:24px;height:24px;color:var(--teal);border-color:var(--teal);background:0 0}.account-form .account-hero .icon-btn:hover:not(:disabled){color:var(--teal-2);border-color:var(--teal-2);background:0 0}.account-hero-meta{color:var(--muted);flex-wrap:wrap;align-items:baseline;gap:0 2px;margin:4px 0 0;font-size:13px;font-weight:600;display:flex}.account-form input.account-hero-name:not([type=checkbox]),.account-form input.account-hero-role:not([type=checkbox]){flex:none;width:100%;max-width:none}@media (width>=768px){.account-form input:not([type=checkbox]),.account-form textarea,.account-form .select{max-width:var(--settings-field)}.account-form input.account-hero-name:not([type=checkbox]),.account-form input.account-hero-role:not([type=checkbox]){width:var(--settings-field);max-width:var(--settings-field)}}.account-hero .inquiry-share-actions{flex-shrink:0;margin-left:auto}.inquiry-status{color:var(--muted);margin:4px 0 0;font-size:12px}.inquiry-share-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px}.record-edit svg,.visit-actions-end .primary-btn svg,.visit-actions-end .ghost-chip svg{display:none}.ghost-chip.record-edit,.ghost-chip.record-edit:hover:not(:disabled){border:1px solid var(--teal)}.inquiry-page{background:radial-gradient(circle at top left, var(--glow-cool), transparent 42%), radial-gradient(circle at bottom right, var(--glow-warm), transparent 40%), var(--bg);justify-content:center;align-items:center;min-height:100dvh;padding:24px 16px}.inquiry-card{background:var(--surface);width:min(440px,100%);box-shadow:var(--shadow);border-radius:28px;padding:28px}.inquiry-card h1{margin:4px 0 8px}.inquiry-card .appt-form{margin-top:12px}.account-form{--settings-field:16rem;--settings-field-gap:8px;--settings-pair:calc(var(--settings-field) * 2 + var(--settings-field-gap));align-content:start;width:100%;max-width:720px;min-height:0;display:grid;overflow:visible}.account-form>.form-field,.account-form .calendar-pause-field{width:var(--settings-pair);max-width:100%}.profile-locale-row>.form-field{min-width:0}@media (width>=481px){.calendar-pause-field{width:33.3333%;max-width:33.3333%}.account-form .calendar-pause-field{width:var(--settings-pair);max-width:100%}}.settings-tabs{overscroll-behavior-x:contain;scrollbar-width:none;-webkit-overflow-scrolling:touch;box-sizing:border-box;background:var(--surface);border:1px solid var(--line);border-radius:var(--btn-radius);z-index:2;flex-flow:row;flex-shrink:0;align-items:center;gap:8px;min-width:0;max-width:100%;padding:4px;display:flex;position:relative;overflow-x:auto}.settings-tabs button{appearance:none;white-space:nowrap;color:var(--muted);border-radius:var(--btn-radius);background:0 0;border:0;flex:none;min-height:36px;padding:8px 14px;font-weight:700}.settings-tabs button.is-active{appearance:none;background:var(--teal);color:#fff;border-radius:var(--btn-radius)}.calendar-connect{gap:8px;min-width:0;margin:0;padding:0;list-style:none;display:grid}.calendar-connect-row{background:var(--surface-2);border-radius:16px;grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:12px;padding:10px 12px;display:grid}.calendar-connect-row p{color:var(--muted);margin:4px 0 0;font-size:12px;font-weight:500}.calendar-mark{border-radius:var(--btn-radius);place-items:center;width:40px;height:40px;font-weight:800;display:grid}.calendar-mark-google,.calendar-mark-outlook{background:var(--surface)}.calendar-mark-apple{background:var(--surface);color:var(--ink)}.calendar-connect-btn{border:1.5px solid var(--teal);border-radius:var(--btn-radius);width:36px;height:36px;color:var(--teal);cursor:pointer;background:0 0;place-items:center;padding:0;transition:background .15s,transform .15s;display:grid}.calendar-connect-btn:hover{background:color-mix(in srgb, var(--teal) 10%, transparent);transform:translateY(-1px)}.calendar-connect-btn:active{transform:translateY(0)scale(.94)}.calendar-connect-row>div{min-width:0}.doc-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.doc-row{grid-template-columns:auto 1fr auto}.doc-icon{background:var(--sage);width:42px;height:42px;color:var(--teal);border-radius:14px;place-items:center;display:grid}.doc-row em{color:var(--muted);font-size:12px;font-style:normal;font-weight:700}@media (width<=1023px){.workspace{grid-template-columns:1fr}.rail{grid-template-columns:1fr 1fr}.rail .detail{grid-column:1/-1}.board-scroll{max-height:64dvh}}@media (width<=1439px){:root{--sidebar:0px}.app{grid-template-columns:1fr}.icon-btn.menu-btn,.icon-btn.sidebar-close{display:grid}.backdrop{background:var(--overlay);opacity:0;pointer-events:none;z-index:20;transition:all .2s;display:block;position:fixed;inset:0}.backdrop.is-open{opacity:1;pointer-events:auto}.sidebar{z-index:30;background:var(--surface);width:min(320px,88vw);transition:transform .22s;position:fixed;top:0;left:0;transform:translate(-105%)}.sidebar.is-open{transform:none}}@media (width<=1023px){.topbar .search{order:3;width:100%;max-width:none}.doctor-tabs{display:flex}.board-grid{min-width:720px}.appointments-page .board-grid{min-width:0}.content:has(.dashboard-board){overflow:auto}.dashboard-board{flex:none;height:auto;overflow:visible}.dashboard-appointments{grid-template-rows:auto;grid-template-columns:1fr;height:auto;overflow:visible}.dashboard-lower,.dashboard-side-extras{height:auto;min-height:0}.dashboard-appointments>.upcoming-panel,.upcoming-panel{height:auto;max-height:none;overflow:visible}.dashboard-appointments>.current-appointment,.current-appointment{height:auto;max-height:560px}.dash-end-card,.dash-end-card.slot-cta{width:100%;max-width:none}.slot-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-board .visit-copy{grid-template-rows:auto auto auto auto;grid-template-columns:1fr}.dashboard-board .visit-copy-rule{display:none}.dashboard-board .visit-notes-label,.dashboard-board .visit-notes-body{grid-column:1}.dashboard-board .visit-notes-label{grid-row:3}.dashboard-board .exam-note{grid-row:2;height:auto;max-height:none}.dashboard-board .visit-notes-body{grid-row:4;width:auto}}@media (width>=768px){.dashboard-end-pair{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-end-pair>.dash-end-card{min-height:128px}}@media (width>=1024px){.dashboard-appointments{grid-template-rows:minmax(0,1fr) auto;grid-template-columns:minmax(0,1fr) minmax(220px,320px);height:100%;overflow:hidden}.dashboard-lower,.dashboard-side-extras{display:contents}.dashboard-side-extras .new-appointments,.dashboard-side-extras .today-census{align-self:start;height:auto;overflow:visible}.dashboard-appointments>.current-appointment,.dashboard-lower>.upcoming-panel{align-self:stretch;height:100%;min-height:0}}@media (width<=767px){.content{padding:16px 14px max(24px, env(safe-area-inset-bottom))}.select input,.appt-form input:not([type=checkbox]),.appt-form select,.appt-form textarea,.account-form input:not([type=checkbox]),.account-form textarea,.search input{font-size:16px}.view-toggle,.mode-pills,.settings-tabs{justify-content:center;justify-self:center}.view-toggle button,.mode-pills button,.settings-tabs button{text-align:center;justify-content:center}.treatment-filters .view-toggle button{padding-inline:8px;font-size:12px}.dashboard-lower,.dashboard-end-pair{grid-template-columns:1fr}.dashboard-end-pair>.dash-end-card{height:auto;min-height:45px}.dashboard-side-extras{grid-template-rows:auto auto}.visit-actions,.visit-actions-end,.form-actions,.form-actions-spread,.form-actions-end{flex-wrap:wrap}.form-actions-end{margin-left:0}.primary-btn,.ghost-chip,.update-appt,.cancel-appt{white-space:normal}.settings-tabs button{padding:6px 10px}.collections-row{flex-wrap:nowrap}.calendar-connect-row{box-sizing:border-box;align-items:center;gap:8px;width:100%;min-width:0;max-width:100%;display:flex}.calendar-connect-row .calendar-mark{flex:none;width:36px;height:36px}.calendar-connect-row>div{flex:1 1 0;min-width:0}.calendar-connect-btn{flex:none;margin-left:auto}.account-hero{flex-wrap:wrap}.record-hero .account-hero-identity{flex-direction:column;align-items:flex-start}.visit-copy{grid-template-rows:auto auto auto auto;grid-template-columns:1fr}.visit-copy-rule{display:none}.visit-notes-label,.visit-notes-body{grid-column:1}.visit-notes-label{grid-row:3}.exam-note{grid-row:2;height:auto;max-height:none}.visit-notes-body{grid-row:4;width:auto}.topbar-actions .primary-btn,.record-edit,.visit-actions-end .primary-btn,.visit-actions-end .ghost-chip{border-radius:var(--btn-radius);justify-content:center;width:42px;height:42px;padding:0}.record-edit svg,.visit-actions-end .primary-btn svg,.visit-actions-end .ghost-chip svg{display:block}:is(.content:has(.patients-board) .topbar-actions .primary-btn,.content:has(.appointments-page) .topbar-actions .primary-btn,.content:has(.appointments-page) .topbar-actions .ghost-chip){border-radius:10px}.btn-label,.add-colleague{display:none}.date-strip{grid-template-columns:minmax(0,1fr) auto}.date-strip.is-month{grid-template-areas:"meta toggle"}.week-nav{width:100%}.week-days{flex:1;min-width:0}.day-chip{width:62px;min-width:62px}.rail,.stat-grid{grid-template-columns:1fr}.board-grid{min-width:0;grid-template-columns:52px minmax(0,1fr)!important}.appointments-page .workspace{overflow:auto}.appointments-page:has(.month-board) .workspace{overflow:hidden}.board-scroll{max-height:none}.status{display:none}.doctor-head{padding:12px}.form-row{grid-template-columns:1fr}.account-form .form-row{flex-direction:column;gap:0}.account-form .form-row>.form-field{width:100%}.account-form{--settings-field:100%;--settings-pair:100%}.hours-row{grid-template-columns:40px 1fr}.hours-dash,.hours-row select,.hours-row input{grid-column:2}.record-facts{grid-template-columns:1fr}.record-facts-pair{grid-template-columns:1fr 1fr}.patient-row,.doc-row{grid-template-columns:auto minmax(0,1fr)}.patient-meta{display:none}.patient-row.treatment-row{grid-template-columns:minmax(0,1fr) auto;align-items:center}.patient-row.treatment-row .patient-copy strong{white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.patient-row.treatment-row .patient-copy p{grid-column:1/-1}.patient-row.treatment-row .patient-meta{flex-flow:row;grid-row:1;justify-content:flex-end;align-self:center;align-items:center;gap:8px;display:flex}.patient-row.treatment-row .patient-meta span{white-space:nowrap;flex:none}.patient-row.treatment-row .patient-meta>span:not(.treatment-status){display:none}.collections-lists{flex-direction:column}}@media (width<=480px){.modal-backdrop,.chart-modal,.hours-modal{align-items:stretch;padding-block:0;padding-inline:0}.form-sheet,.form-sheet-compact,.hours-sheet,.chart-sheet{width:100%;max-width:none;height:auto;max-height:100dvh}.form-sheet-compact.chair-sheet,.form-sheet-compact.nav-sheet{border-radius:22px;flex:none;align-self:center;width:min(360px,100% - 48px);height:auto;max-height:min(92dvh,100%)}.chart-sheet{height:100dvh}.dashboard-appointments,.slot-grid{grid-template-columns:1fr}.patient-row,.doc-row{grid-template-columns:auto minmax(0,1fr)}.visit-copy{grid-template-rows:auto auto auto auto;grid-template-columns:1fr}.visit-copy-rule{display:none}.visit-notes-label,.visit-notes-body{grid-column:1}.visit-notes-label{grid-row:3}.exam-note{grid-row:2;height:auto;max-height:none}.visit-notes-body{grid-row:4;width:auto}h1{font-size:22px}.appt p{display:none}}.account-board .page-footer{padding:12px var(--page-gutter) 24px 0;justify-content:flex-start}.account-board .settings-save{--settings-pair:calc(16rem * 2 + 8px);width:var(--settings-pair);justify-content:flex-end;max-width:100%;display:flex}.primary-btn:disabled{opacity:.45;cursor:not-allowed}@media (hover:none){.month-cell.is-selected .cell-add{opacity:1;pointer-events:auto}.month-cell.is-selected .cell-more{opacity:0;pointer-events:none}button,[role=tab],.month-cell,.tooth-shape{touch-action:manipulation}}.settings-tabs::-webkit-scrollbar{display:none}.scroll-tabs{align-self:start;min-width:0;max-width:100%;margin-bottom:22px;position:relative}.scroll-tabs .settings-tabs{max-width:100%}.scroll-tabs-arrow{z-index:3;width:34px;color:var(--teal);cursor:pointer;border:0;align-items:center;padding:0;display:none;position:absolute;top:1px;bottom:1px}.scroll-tabs-arrow.is-start{border-radius:var(--btn-radius) 0 0 var(--btn-radius);background:linear-gradient(90deg, var(--surface) 55%, transparent);justify-content:flex-start;padding-left:6px;left:1px}.scroll-tabs-arrow.is-end{border-radius:0 var(--btn-radius) var(--btn-radius) 0;background:linear-gradient(270deg, var(--surface) 55%, transparent);justify-content:flex-end;padding-right:6px;right:1px}.scroll-tabs.has-start .scroll-tabs-arrow.is-start,.scroll-tabs.has-end .scroll-tabs-arrow.is-end{display:flex}.scroll-tabs .settings-tabs{justify-content:safe center;justify-self:stretch;gap:2px;padding:3px}.scroll-tabs .settings-tabs button{padding:8px 12px}.scroll-tabs-arrow.is-start{padding-left:4px}.scroll-tabs-arrow.is-end{padding-right:4px}.scroll-tabs .settings-tabs{overscroll-behavior-x:none;scroll-snap-type:x proximity;scroll-padding-inline:3px}.scroll-tabs .settings-tabs button{scroll-snap-align:start}@media (width>=1024px){.dashboard-appointments{grid-template-rows:auto minmax(0,1fr);grid-template-columns:minmax(0,1fr) minmax(220px,320px)}.dashboard-appointments>.current-appointment{grid-area:1/1;height:auto}.dashboard-side-extras .new-appointments{grid-area:1/2;align-self:stretch;overflow:auto}.dashboard-appointments>.upcoming-panel,.dashboard-lower>.upcoming-panel{grid-area:2/1}.dashboard-end-pair{grid-area:2/2}}.collections-period{text-align:center;white-space:nowrap;text-overflow:ellipsis;font-variant-numeric:tabular-nums;width:9.5em;overflow:hidden}@media (width<=1439px){.appointments-page:not(:has(.month-board)) .workspace{-webkit-overflow-scrolling:touch;grid-auto-rows:max-content;overflow-y:auto}.appointments-page:not(:has(.month-board)) .workspace>.board{overflow:visible}}.inquiry-page{-webkit-overflow-scrolling:touch;box-sizing:border-box;justify-content:flex-start;height:100dvh;min-height:0;overflow-y:auto}.inquiry-page>.inquiry-card{flex-shrink:0;margin-block:auto}.hours-row,.hours-row.is-closed{grid-template-columns:minmax(104px,132px) minmax(0,1fr);gap:10px}.hours-day{border:1px solid var(--teal);border-radius:var(--btn-radius);background:var(--teal);color:#fff;cursor:pointer;text-align:left;align-items:center;gap:10px;min-height:44px;padding:0 14px 0 10px;display:flex}.hours-day strong{font-size:14px}.hours-day-check{border:2px solid #ffffffd9;border-radius:50%;flex:0 0 20px;place-items:center;width:20px;height:20px;display:grid}.hours-row.is-closed .hours-day{border-color:var(--line);color:var(--muted);background:0 0}.hours-row.is-closed .hours-day-check{border-color:var(--muted)}.hours-times{align-items:center;gap:6px;min-width:0;display:flex}.hours-times input[type=time]{text-align:center;flex:1 1 0;min-width:0;max-width:110px;height:40px;padding:0 8px;font-size:14px}.hours-off{color:var(--muted);font-size:13px;font-weight:600}@media (width<=767px){.hours-row,.hours-row.is-closed{grid-template-columns:96px minmax(0,1fr);gap:8px}.hours-day{gap:8px;padding:0 10px 0 8px}.hours-times input[type=time]{max-width:92px;height:36px;padding:0 4px;font-size:13px}.hours-row .hours-dash,.hours-row input{grid-column:auto}}.inquiry-card .form-row{grid-template-columns:minmax(0,1fr);gap:0}.inquiry-card .form-field,.inquiry-card .select,.inquiry-card .search-select{width:100%;min-width:0}.inquiry-card input:not([type=checkbox]),.inquiry-card textarea,.inquiry-card .select-trigger{box-sizing:border-box;width:100%;min-width:0;max-width:none}.scroll-tabs-arrow{width:76px}.scroll-tabs-arrow.is-start{background:linear-gradient(90deg, var(--surface) 0%, var(--surface) 30%, transparent 100%)}.scroll-tabs-arrow.is-end{background:linear-gradient(270deg, var(--surface) 0%, var(--surface) 30%, transparent 100%)}.appt-form input[type=date]{appearance:none;box-sizing:border-box;text-align:left;width:100%;min-width:0;max-width:100%;min-height:42px;line-height:1.35;display:block}.appt-form input[type=date]::-webkit-date-and-time-value{text-align:left;min-height:1.35em;margin:0}.appt-form input[type=date]::-webkit-datetime-edit{padding:0}.picker{width:100%;min-width:0;position:relative}.picker-trigger{box-sizing:border-box;border:1px solid var(--line);background:var(--surface-2);width:100%;min-height:42px;color:var(--ink);font:inherit;text-align:left;cursor:pointer;border-radius:14px;justify-content:space-between;align-items:center;gap:10px;padding:0 12px;font-size:13.5px;font-weight:500;display:flex}.picker-trigger svg{color:var(--teal);flex:none}.picker-trigger.is-placeholder{color:var(--muted)}.picker-trigger:hover:not(:disabled){border-color:color-mix(in srgb, var(--teal) 38%, var(--line))}.picker.is-open .picker-trigger{border-color:color-mix(in srgb, var(--teal) 55%, var(--line));box-shadow:0 0 0 3px color-mix(in srgb, var(--teal) 16%, transparent)}.picker-trigger:disabled{opacity:.45;cursor:default}.picker-panel{z-index:90;box-sizing:border-box;background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:18px;padding:12px;position:fixed}.picker-date{width:300px}.picker-head{justify-content:space-between;align-items:center;gap:6px;margin-bottom:8px;display:flex}.picker-head .icon-btn{width:36px;height:36px}.picker-title{color:var(--ink);font:inherit;text-transform:capitalize;cursor:pointer;background:0 0;border:0;border-radius:10px;flex:1;padding:8px;font-size:15px;font-weight:800}.picker-title:hover{background:var(--surface-2)}.picker-weekdays,.picker-days{grid-template-columns:repeat(7,1fr);gap:2px;display:grid}.picker-weekdays span{text-align:center;color:var(--muted);text-transform:uppercase;padding:4px 0 6px;font-size:11px;font-weight:700}.picker-day{aspect-ratio:1;color:var(--ink);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:12px;place-items:center;font-size:14px;font-weight:600;display:grid}.picker-day:hover{background:var(--surface-2)}.picker-day.is-outside{color:var(--muted);opacity:.55}.picker-day.is-today{box-shadow:inset 0 0 0 1.5px var(--teal)}.picker-day.is-selected{background:var(--teal);color:#fff;opacity:1}.picker-months{grid-template-columns:repeat(3,1fr);gap:6px;display:grid}.picker-month{background:var(--surface-2);color:var(--ink);font:inherit;text-transform:capitalize;cursor:pointer;border:0;border-radius:12px;padding:14px 0;font-weight:700}.picker-month.is-selected{background:var(--teal);color:#fff}.picker-foot{justify-content:center;margin-top:10px;display:flex}.picker-time{width:190px}.picker-time-cols{grid-template-columns:1fr 1fr;gap:8px;display:grid}.picker-time-col{overscroll-behavior:contain;scrollbar-width:thin;align-content:start;gap:2px;max-height:200px;display:grid;overflow-y:auto}.picker-time-item{min-height:36px;color:var(--ink);font:inherit;font-variant-numeric:tabular-nums;cursor:pointer;background:0 0;border:0;border-radius:10px;font-weight:600}.picker-time-item:hover{background:var(--surface-2)}.picker-time-item.is-selected{background:var(--teal);color:#fff}.picker-done{width:100%;min-height:38px}.hours-times .picker-time-field{flex:1 1 0;max-width:110px}.hours-times .picker-trigger{font-variant-numeric:tabular-nums;min-height:40px;padding:0 10px;font-size:14px}@media (width<=767px){.hours-times .picker-trigger{min-height:36px;padding:0 8px;font-size:13px}.hours-times .picker-trigger svg{display:none}}.breadcrumbs ol{letter-spacing:.1em;text-transform:uppercase;flex-wrap:wrap;align-items:center;gap:4px;margin:0;padding:0;font-size:11px;font-weight:700;list-style:none;display:flex}.breadcrumb-link{color:var(--teal);-webkit-text-fill-color:var(--teal);text-decoration:none}.breadcrumb-link:hover{color:var(--teal-2);-webkit-text-fill-color:var(--teal-2);text-decoration:underline}.breadcrumb-current{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;vertical-align:bottom;max-width:28ch;display:inline-block;overflow:hidden}.breadcrumb-sep{color:var(--muted);display:inline-flex}.new-appointments .slot-grid{grid-template-columns:repeat(auto-fill,minmax(112px,1fr))}.new-appointments .slot-cta{min-width:0;padding:8px 6px}.new-appointments .slot-cta strong{white-space:nowrap;letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:13px}.dashboard-appointments>.upcoming-panel,.dashboard-lower>.upcoming-panel,.upcoming-panel{max-height:500px;overflow-y:auto}.dashboard-board .exam-note{box-sizing:border-box;min-height:calc(3.3em + 24px)}textarea{box-sizing:border-box;resize:vertical;width:100%;min-width:0;max-width:100%}.copy-field{display:block;position:relative}.copy-field input{cursor:copy;text-overflow:ellipsis;padding-right:40px}.copy-field-icon{color:var(--muted);opacity:.3;pointer-events:none;place-items:center;transition:opacity .2s,color .2s;display:grid;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.copy-field-icon.is-copied{opacity:1;color:var(--teal,var(--ink))}.ghost-chip.open-page-btn{border:1px solid var(--line)}.upcoming-switch{background:var(--surface-2);border:1px solid var(--line);border-radius:12px;grid-template-columns:1fr 1fr;gap:4px;margin-bottom:12px;padding:4px;display:grid}.upcoming-switch button{color:var(--muted);background:0 0;border:0;border-radius:9px;padding:7px 10px;font-size:12px;font-weight:700;transition:background .15s,color .15s,box-shadow .15s}.upcoming-switch button.is-active{background:var(--surface);color:var(--teal);box-shadow:0 1px 3px #0000001f}.upcoming-switch{grid-template-columns:auto auto;place-self:flex-start start;width:fit-content;display:inline-grid}.upcoming-switch button{white-space:nowrap;padding-inline:14px}.upcoming-panel .upcoming:not(.current-slot) .upcoming-row{background:var(--surface-2);padding-inline:12px}.upcoming-panel .upcoming:not(.current-slot) .upcoming-row:hover{background:color-mix(in srgb, var(--surface-2) 88%, var(--ink))}.upcoming-row .dot{box-shadow:0 0 0 1px color-mix(in srgb, var(--ink) 10%, transparent)}.modal-backdrop.is-top-end{justify-content:flex-end;align-items:flex-start;padding:68px 22px 24px}.modal-backdrop.is-top-end .notify-menu{position:static;top:auto;right:auto}@media (width<=480px){.modal-backdrop.is-top-end{align-items:flex-start;padding:68px 14px 14px}}.notify-menu li+li{border-top:1px solid var(--line)}.visit-phase-row{justify-content:space-between;align-items:center;gap:12px;width:100%;margin-bottom:8px;display:flex}.visit-phase-row .visit-phase{flex:1;width:auto;margin:0}.visit-step{border:1px solid var(--line);background:var(--surface-2);width:32px;height:32px;color:var(--teal);cursor:pointer;border-radius:50%;flex:none;place-items:center;padding:0;display:grid}.visit-step:hover:not(:disabled){background:var(--sage)}.visit-step:disabled{opacity:.35;cursor:default}.upcoming-panel .upcoming-row.is-now:not(.is-selected){background:var(--surface-2);box-shadow:none}.upcoming-panel .upcoming-row.is-selected,.upcoming-panel .upcoming:not(.current-slot) .upcoming-row.is-selected{background:color-mix(in srgb, var(--surface) 90%, var(--teal));box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--teal) 28%, transparent)}@media (width>=481px){.upcoming-row{grid-template-columns:10px minmax(0,1fr) auto minmax(0,1fr) 10px;align-items:center;column-gap:12px;display:grid}.upcoming-row:after{content:"";grid-column:5}.upcoming-row>div{display:contents}.upcoming-row>div>strong{text-overflow:ellipsis;white-space:nowrap;grid-column:2;min-width:0;overflow:hidden}.upcoming-row>div>p{text-align:center;white-space:nowrap;grid-column:3}.upcoming-row>em{grid-column:4;justify-self:end}}.notify-item{grid-template-columns:minmax(0,1fr) auto;align-items:center;column-gap:12px}.notify-item>div{gap:2px;min-width:0;display:grid}.notify-item time{color:var(--muted);white-space:nowrap;text-align:right;font-size:11px;font-weight:700}.account-hero h2 .account-hero-edit{vertical-align:middle;width:24px;min-width:24px;height:24px;padding:0}.account-hero h2{align-items:flex-start}.account-hero h2 .account-hero-edit{align-self:flex-start;width:18px;min-width:18px;height:18px;margin-top:0}.account-hero h2 .account-hero-edit svg{width:10px;height:10px}.account-hero h2 .account-hero-edit{border-radius:50%;width:15px;min-width:15px;height:15px}.account-form .account-hero h2 .account-hero-edit{border-radius:50%;align-self:flex-start;width:15px;min-width:15px;height:15px;min-height:15px;padding:0}.account-form .account-hero h2 .account-hero-edit svg{width:10px;height:10px}.account-form .account-hero h2 .account-hero-edit{border-radius:var(--btn-radius);border-radius:4px}.account-board .page-scroll{flex:0 auto}.discount-pills{flex-wrap:wrap;justify-content:flex-start}.discount-pills button{justify-content:center;min-width:52px}.mode-pills.discount-pills{flex-wrap:wrap;gap:6px;width:100%;display:flex}.mode-pills.discount-pills button{flex:none;min-width:0;padding-inline:12px}.ghost-chip.discount-open{justify-self:start;gap:6px}.discount-kind{grid-template-columns:1fr 1fr;width:100%;display:grid}.discount-kind button{justify-content:center;align-items:center;gap:6px;display:inline-flex}.form-sheet.pay-dialog{min-height:min(410px,92dvh)}.form-sheet.pay-dialog .form-sheet-body{flex-direction:column;flex:1;min-height:0;display:flex}.form-sheet.pay-dialog .appt-form{flex:1;align-content:start}.form-sheet.pay-dialog .appt-form{flex-direction:column;display:flex}.form-sheet.pay-dialog .appt-form>.form-actions{align-self:stretch;margin-top:auto}.login-card{justify-items:stretch;gap:4px;display:grid}.login-brand{margin-bottom:12px}.login-card h1{color:var(--ink);margin:4px 0}.login-card .appt-form{margin-top:8px}.login-card .copy-field input{cursor:text;padding-right:44px}.login-eye{border-radius:var(--btn-radius);width:30px;height:30px;color:var(--muted);cursor:pointer;background:0 0;border:0;place-items:center;padding:0;display:grid;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.login-eye:hover{color:var(--teal)}.login-error{color:#c4472f}.login-card .form-actions .primary-btn{justify-content:center;width:100%}.login-hero{display:none}@media (width>=1024px){.login-split{grid-template-columns:1fr 1fr;height:100dvh;display:grid}.login-hero{color:#fff;background:linear-gradient(155deg, color-mix(in srgb, var(--teal) 78%, #000), var(--teal) 60%, var(--teal-2));justify-content:center;align-items:center;padding:48px;display:flex;position:relative;overflow:hidden}.login-hero:before,.login-hero:after{content:"";border:36px solid #ffffff14;border-radius:50%;position:absolute}.login-hero:before{width:520px;height:520px;top:-150px;right:-170px}.login-hero:after{border-width:28px;width:380px;height:380px;bottom:-130px;left:-120px}.login-hero-inner{z-index:1;max-width:460px;position:relative}.login-hero-eyebrow{letter-spacing:.14em;text-transform:uppercase;color:#ffffffb8;margin:0 0 18px;font-size:13px;font-weight:800}.login-hero h2{letter-spacing:-.04em;color:#fff;margin:0 0 16px;font-size:40px;font-weight:800;line-height:1.1}.login-hero-lead{color:#ffffffdb;margin:0 0 32px;font-size:17px;line-height:1.55}.login-hero ul{gap:14px;margin:0;padding:0;list-style:none;display:grid}.login-hero li{color:#fff;align-items:center;gap:12px;font-size:15px;font-weight:600;display:flex}.login-hero li span{border-radius:var(--btn-radius);background:#ffffff29;flex:none;place-items:center;width:36px;height:36px;display:grid}.login-hero:before,.login-hero:after{display:none}.login-hero-logo{opacity:.2;mix-blend-mode:soft-light;filter:saturate(0)contrast(1.1);pointer-events:none;-webkit-user-select:none;user-select:none;border-radius:28%;width:620px;height:620px;position:absolute;bottom:-110px;right:-90px;transform:rotate(-14deg);box-shadow:0 40px 90px #00000059}.login-hero-inner{z-index:2}}.login-links{color:var(--muted);justify-items:center;gap:8px;margin-top:14px;font-size:13px;display:grid}.login-links p{margin:0}.login-link{font:inherit;color:var(--teal);cursor:pointer;background:0 0;border:0;padding:0;font-weight:700;text-decoration:none}.login-link:hover{color:var(--teal-2);text-decoration:underline}.reset-done{text-align:center;justify-items:center;gap:12px}.reset-done-icon{background:var(--sage);width:52px;height:52px;color:var(--teal);border-radius:50%;place-items:center;display:grid}.copy-field input{padding-right:56px}.copy-field-icon{grid-auto-flow:column;gap:6px}.copy-field-icon.is-copied{opacity:1}.copy-field-check{color:var(--teal)}.copy-field.is-link{box-sizing:border-box;border:1px solid var(--line);background:var(--surface-2);border-radius:14px;align-items:center;gap:8px;padding-right:12px;display:flex}.copy-field.is-link:focus-within{border-color:var(--teal)}.copy-field.is-link input{width:auto;min-width:0;box-shadow:none;cursor:text;background:0 0;border:0;flex:auto;padding-right:0}.copy-field.is-link .copy-field-icon{flex:none;position:static;transform:none}.select-option.select-create{align-items:center;gap:10px;min-width:0;display:flex}.select-create-tag{background:color-mix(in srgb, var(--teal) 14%, var(--surface));color:var(--teal);border-radius:999px;flex:none;align-items:center;gap:4px;padding:3px 9px 3px 6px;font-size:12px;font-weight:800;display:inline-flex}.select-create-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--ink);overflow:hidden}.service-row-main{text-align:left;min-width:0;color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;flex:1;gap:2px;padding:0;display:grid}.service-row.is-unpriced .service-row-todo{background:var(--butter);color:var(--ink);border-radius:999px;justify-self:start;margin-top:4px;padding:2px 8px;font-size:11px;font-weight:700}.service-row-actions{flex:none;align-items:center;gap:6px;display:flex}.service-row .icon-btn.service-edit:hover:not(:disabled),.service-row .icon-btn.service-edit:focus-visible{color:var(--teal);border-color:var(--teal)}.service-row .icon-btn.service-delete:hover:not(:disabled),.service-row .icon-btn.service-delete:focus-visible{color:#d64545;background:color-mix(in srgb, #d64545 10%, var(--surface));border-color:#d64545}.account-form .select.service-search{width:100%;max-width:none;margin-bottom:10px}.service-search input:focus::placeholder{color:#0000}.content:has(.dashboard-board){overflow:clip}.dashboard-board{flex:auto;height:100%;min-height:0;overflow:visible}.dashboard-appointments{--shadow-room:48px;grid-template-columns:minmax(0, 1fr) var(--dash-side-width);box-sizing:border-box;height:calc(100% + var(--shadow-room));margin:0 calc(-1 * var(--shadow-room)) calc(-1 * var(--shadow-room));padding:0 var(--shadow-room) var(--shadow-room);width:calc(100% + 2 * var(--shadow-room));grid-template-rows:auto minmax(0,1fr);overflow:hidden}.dashboard-lower{display:contents}.dashboard-appointments>.current-appointment{grid-area:1/1}.dashboard-lower>.upcoming-panel{grid-area:2/1;height:100%;min-height:0;max-height:500px;overflow-y:auto}.dashboard-side-extras{flex-direction:column;grid-area:1/2/span 2;align-self:stretch;gap:14px;min-width:0;min-height:0;display:flex}.dashboard-side-extras .new-appointments,.dashboard-end-pair>.dash-end-card{height:var(--small-widget-height);min-height:var(--small-widget-height);max-height:var(--small-widget-height)}.dashboard-side-extras .new-appointments{flex:none;width:100%;overflow:auto}.dashboard-side-extras .dashboard-end-pair{flex:none;grid-area:auto;grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;align-self:stretch}.dashboard-end-pair>.dash-end-card{align-self:start}@media (width<=1023px){.dashboard-appointments>.current-appointment{height:auto}.current-appointment .visit-identity{grid-template-columns:minmax(0,1fr)}}.current-appointment .visit-identity,.current-appointment .visit-identity-col{text-align:left;justify-items:start}.current-appointment .visit-identity-col .visit-name{text-align:left}@media (width<=480px){.current-appointment .visit-identity,.current-appointment .visit-identity-col{text-align:center;justify-items:center}.current-appointment .visit-identity-col .visit-name{text-align:center}}@media (width>=1024px){.current-appointment .visit-identity-col{justify-self:stretch}.current-appointment .visit-identity-col:nth-child(2){text-align:center;justify-items:center}.current-appointment .visit-identity-col:nth-child(3){text-align:right;justify-items:end}.current-appointment .visit-identity-col:nth-child(3)>*{justify-self:end;margin-inline:0}}@media (width>=481px) and (width<=1023px){.current-appointment .visit-phase-row{gap:6px}.current-appointment .visit-phase{font-size:15px}.current-appointment .visit-step{width:26px;height:26px}.upcoming-panel .upcoming{grid-template-columns:minmax(0,1fr)}.upcoming-panel .upcoming>li{min-width:0}.upcoming-panel .upcoming-row{gap:8px;padding-inline:8px}.upcoming-panel .upcoming-row>div{min-width:0;display:block;overflow:hidden}.upcoming-panel .upcoming-row>div>strong,.upcoming-panel .upcoming-row>div>p{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}}@media (width<=480px){.content:has(.dashboard-board){overflow:auto}.dashboard-appointments{width:100%;height:auto;margin:0;padding:0}.dashboard-board{flex:none;height:auto;overflow:visible}.dashboard-appointments{grid-template-rows:auto;grid-template-columns:minmax(0,1fr);height:auto;overflow:visible}.dashboard-lower{display:contents}.dashboard-appointments>.current-appointment,.dashboard-lower>.upcoming-panel,.dashboard-side-extras{grid-area:auto}.dashboard-lower>.upcoming-panel{height:auto;max-height:none;overflow:visible}.dashboard-appointments{gap:14px}.dashboard-side-extras{display:contents}.dashboard-appointments>.current-appointment{order:0}.dashboard-side-extras>.ad-slot{order:1}.dashboard-lower>.upcoming-panel{order:2}.dashboard-side-extras>.new-appointments{order:3}.dashboard-side-extras>.dashboard-end-pair{order:4}.dashboard-side-extras .dashboard-end-pair{grid-template-columns:minmax(0,1fr)}.dashboard-end-pair>.dash-end-card{height:auto;min-height:45px;max-height:none}.dashboard-side-extras .ad-slot{flex:none;min-height:150px}}.ad-slot{box-sizing:border-box;background:radial-gradient(circle at top right, color-mix(in srgb, var(--teal) 18%, transparent), transparent 60%), var(--surface);border:1px dashed color-mix(in srgb, var(--teal) 35%, var(--line));flex-direction:column;flex:1 1 0;justify-content:center;align-items:flex-start;gap:8px;min-height:0;padding:18px;display:flex;position:relative;overflow:hidden}.ad-slot-label{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-size:10px;font-weight:800;position:absolute;top:10px;right:12px}.ad-slot-icon{border-radius:var(--btn-radius);background:color-mix(in srgb, var(--teal) 14%, var(--surface));width:40px;height:40px;color:var(--teal);place-items:center;display:grid}.ad-slot strong{letter-spacing:-.02em;color:var(--ink);font-size:15px}.ad-slot p{color:var(--muted);margin:0;font-size:12.5px;line-height:1.45}.ad-slot-cta{background:var(--teal);color:#fff;border-radius:999px;margin-top:4px;padding:6px 12px;font-size:12px;font-weight:700;text-decoration:none}.ad-slot-cta.is-static{cursor:default}.ad-slot{container-type:size}.ad-slot p{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}@container (height<=200px){.ad-slot-icon{display:none}.ad-slot strong{padding-right:70px}.ad-slot p{-webkit-line-clamp:2}}@container (height<=140px){.ad-slot p{-webkit-line-clamp:1;font-size:12px}.ad-slot-cta{margin-top:0;padding:4px 10px;font-size:11px}}@container (height<=105px){.ad-slot p{display:none}}@container (height<=80px){.ad-slot{padding-block:8px}.ad-slot-cta,.ad-slot-label{display:none}.ad-slot strong{padding-right:0}}@container (width<=200px){.ad-slot p{display:none}}.service-groups{gap:18px;margin-top:12px;display:grid}.service-group-label{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:0 0 8px;padding:0 2px;font-size:11px;font-weight:700}.service-groups .service-list{margin-top:0}.service-row{box-sizing:border-box;min-height:44px;padding:6px 10px 6px 14px;position:relative}.service-row-main{align-items:center;min-width:0;display:flex}.service-row-main>strong{overflow-wrap:anywhere;max-width:calc(50% - 6.5em);font-size:13px;line-height:1.25}.service-row-main>p{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums;width:11em;margin:0;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.service-row.is-unpriced .service-row-todo{white-space:nowrap;margin:0;position:absolute;top:50%;left:calc(50% + 6em);transform:translateY(-50%)}.service-row .icon-btn{width:32px;height:32px}.service-row-actions{gap:2px}.service-row{--service-name-lines:3;height:calc(var(--service-name-lines) * 1.25 * 13px + 14px);min-height:0}.service-row-main>strong{-webkit-line-clamp:var(--service-name-lines);line-clamp:var(--service-name-lines);-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.service-row-main{height:100%}.ghost-chip.record-edit.is-icon{border-radius:var(--btn-radius);justify-content:center;width:42px;height:42px;padding:0}.record-edit.is-icon svg{display:block}.ghost-chip.record-edit.is-icon{color:var(--teal)}.service-general-icon{vertical-align:-2px;color:var(--teal);place-items:center;margin-right:6px;display:inline-grid}.form-check-row{align-items:center;gap:6px;padding-block:4px 12px;display:flex}.appt-form .form-check-row label.form-check{padding-block:0;line-height:1.2}.form-check-row .info-tip,.form-check-row .info-tip-btn{place-items:center;line-height:1;display:inline-grid}.service-row-after{align-items:center;gap:8px;display:flex;position:absolute;top:50%;left:calc(50% + 5.5em + 10px);transform:translateY(-50%)}.service-row-after .service-general-icon{margin:0}.service-row.is-unpriced .service-row-after .service-row-todo{position:static;transform:none}button.service-group-label{cursor:pointer;font:inherit;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);text-align:left;background:0 0;border:0;align-items:center;gap:6px;font-size:11px;font-weight:700;display:inline-flex}button.service-group-label svg{opacity:.55;transition:opacity .15s}button.service-group-label:hover,button.service-group-label:focus-visible{color:var(--teal)}button.service-group-label:hover svg,button.service-group-label:focus-visible svg{opacity:1}.money-input.has-symbol{border:1px solid var(--line);background:var(--surface-2);padding:11px 12px}.appt-form .money-input.has-symbol input{flex:auto;width:100%}.money-suffix{white-space:nowrap;flex:none}.record-extra{border:1px solid var(--line);background:var(--surface-2);border-radius:14px;padding:10px 14px}.record-extra>summary{cursor:pointer;color:var(--teal);font-size:13px;font-weight:700;list-style:none}.record-extra>summary::-webkit-details-marker{display:none}.record-extra>summary:after{content:"＋";float:right;font-weight:800}.record-extra[open]>summary:after{content:"－"}.record-extra-title{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:14px 0 4px;font-size:11px;font-weight:700}.record-extra-grid{grid-template-columns:1fr 1fr;gap:0 12px;display:grid}@media (width<=480px){.record-extra-grid{grid-template-columns:1fr}}.record-details{gap:4px;margin:8px 0 12px;display:grid}.record-details-grid{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:10px 16px;margin:0;display:grid}.record-details-grid dt{color:var(--muted);font-size:11px;font-weight:700}.record-details-grid dd{overflow-wrap:anywhere;margin:2px 0 0;font-size:13px;font-weight:600}.inquiry-card.is-wide{width:min(980px,100%)}.record-section{border:1px solid var(--line);background:color-mix(in srgb, var(--surface-2) 55%, var(--surface));border-radius:16px;gap:4px;margin-top:18px;padding:16px 18px 6px;display:grid}.record-section-title{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:0 0 4px;font-size:11px;font-weight:700}.record-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,240px),1fr));column-gap:16px;display:grid}@media (width<=480px){.record-section{padding-inline:14px}}.form-sheet.patient-sheet{width:min(900px,100%)}.record-warning{background:color-mix(in srgb, #c4473a 12%, var(--surface));color:#9a3328;border-radius:12px;align-items:center;gap:8px;margin:0 0 10px;padding:10px 14px;font-size:13.5px;font-weight:600;display:flex}.confirm-body{gap:12px;padding-bottom:8px;display:grid}.confirm-message{color:var(--ink);margin:0;font-size:14px;line-height:1.5}.primary-btn.is-danger,.primary-btn.is-danger:hover:not(:disabled){color:#fff;background:#c4473a;border-color:#c4473a}.primary-btn.is-danger:hover:not(:disabled){background:#b13d31}.confirm-summary{border:1px solid var(--line);background:var(--surface-2);border-radius:14px;max-height:40vh;margin:0;padding:2px 14px;display:grid;overflow-y:auto}.confirm-summary div{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,.45fr) minmax(0,1fr);gap:10px;padding:10px 0;display:grid}.confirm-summary div:last-child{border-bottom:0}.confirm-summary dt{color:var(--muted);font-size:11px;font-weight:700}.confirm-summary dd{overflow-wrap:anywhere;margin:0;font-size:13px;font-weight:600}.confirm-empty-note{color:var(--muted);margin:0;font-size:12.5px;font-weight:600}.dx-legend-btn{border:1px solid var(--line);border-radius:var(--btn-radius);background:var(--surface-2);color:var(--ink);cursor:pointer;align-items:center;gap:6px;padding:7px 12px;font-size:12.5px;font-weight:700;display:inline-flex}.dx-legend-btn:hover,.dx-legend-btn[aria-expanded=true]{color:var(--teal);border-color:color-mix(in srgb, var(--teal) 45%, var(--line))}.dx-legend-panel{z-index:2147483000;background:var(--surface);border:1px solid var(--line);width:min(360px,100vw - 16px);max-height:min(60vh,460px);box-shadow:var(--shadow);border-radius:14px;padding:8px;position:fixed;overflow-y:auto}.dx-legend-panel ul{gap:6px;margin:0;padding:0;list-style:none;display:grid}.dx-legend-row{border-radius:var(--board-radius);background:var(--surface-2);align-items:center;gap:10px;padding:8px 12px;font-size:13px;font-weight:600;display:flex}.dx-legend-name{flex:1;min-width:0}.dx-legend-row em{color:var(--muted);font-size:12px;font-style:normal;font-weight:700}.dx-chip.dx-dot{width:12px;height:12px;box-shadow:0 0 0 1px color-mix(in srgb, var(--ink) 10%, transparent);border-radius:50%;flex:none;gap:0;padding:0}.tooth-outline{stroke:var(--ink);stroke-width:1.15px;vector-effect:non-scaling-stroke;pointer-events:none}.tooth-root{cursor:default;pointer-events:none}.tooth-canal{stroke:var(--ink);stroke-width:.9px;stroke-opacity:.9;stroke-linejoin:round;vector-effect:non-scaling-stroke;pointer-events:none}.tooth-canal-hit{fill:#0000;stroke:#0000;stroke-width:12px;stroke-linejoin:round;vector-effect:non-scaling-stroke;cursor:pointer;pointer-events:all}.dx-popup-select{gap:6px;width:100%;display:grid}.dx-popup-select .select-clear{display:none}.dx-popup-select .select.has-clear input{padding-right:12px}.arch-sides{letter-spacing:.08em;min-width:520px;color:var(--muted);justify-content:space-between;padding:0 4px;font-size:11px;font-weight:800;display:flex}.dx-keep-row{align-items:center;gap:6px;margin-top:4px;display:flex}.dx-keep{cursor:pointer;align-items:center;gap:10px;display:flex}.dx-keep input{width:18px;height:18px;accent-color:var(--teal);flex:none;margin:0}.dx-keep span{color:var(--ink);font-size:13px;font-weight:700}.appt-form label.dx-keep{flex-direction:row;align-items:center;gap:10px;padding:0;display:flex}.odontogram-board{background:color-mix(in srgb, var(--surface-2) 70%, var(--surface))}.select-option-prefix{letter-spacing:.02em;min-width:2.2em;color:var(--teal);margin-right:8px;font-size:11.5px;font-weight:800;display:inline-block}.dx-select-row{gap:6px;display:grid}@media (width>=1024px){.dx-select-row{align-items:center;gap:14px;display:flex}.dx-select-row>.select{flex:auto;min-width:0}.dx-select-row>.dx-keep-row{white-space:nowrap;flex:none;margin-top:0}}.dx-tabs{grid-area:auto;place-self:flex-start start;margin-bottom:10px}.dx-tabs button{width:auto;padding-inline:14px;font-size:13px;font-weight:600}.tooth-letters{fill:#fff;stroke:var(--ink);stroke-width:2.4px;paint-order:stroke;stroke-linejoin:round;pointer-events:none;-webkit-user-select:none;user-select:none;font-size:10px;font-weight:800}.tooth-screw{stroke:var(--ink);stroke-width:.9px;stroke-opacity:.9;stroke-linejoin:round;vector-effect:non-scaling-stroke;pointer-events:none}.tooth-screw-thread{fill:none;stroke:var(--ink);stroke-width:.8px;stroke-opacity:.75;vector-effect:non-scaling-stroke;pointer-events:none}.mobile-records-filters{flex-wrap:nowrap;justify-content:center;align-items:stretch;gap:4px;width:100%;min-width:0;display:flex}.mobile-records-filters .view-toggle,.mobile-records-filters .view-toggle button,.mobile-records-filters .view-toggle button.is-active,.mobile-records .patients-search{border-radius:var(--btn-radius)}.mobile-records-filters .view-toggle{flex:1 1 0;justify-content:center;gap:2px;min-width:0;padding:2px}.mobile-records-filters .view-toggle button,.mobile-records-filters .view-toggle button.is-active{appearance:none;letter-spacing:-.02em;white-space:nowrap;text-align:center;border-radius:var(--btn-radius);flex:1 1 0;justify-content:center;min-width:0;min-height:36px;padding:8px 3px;font-size:12px;font-weight:700;line-height:1.2;overflow:visible}.mobile-records .patients-search{width:100%}.mobile-appointments .date-strip{flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;padding:0;display:flex}.mobile-appointments .date-meta{flex:100%;min-width:0}.mobile-appointments .view-toggle,.mobile-appointments .view-toggle button,.mobile-appointments .view-toggle button.is-active{border-radius:var(--btn-radius)}.mobile-appointments .view-toggle{flex:none;order:-1;justify-content:center;gap:2px;width:max-content;max-width:100%;margin-inline:auto;padding:2px}.mobile-appointments .view-toggle button,.mobile-appointments .view-toggle button.is-active{appearance:none;border-radius:var(--btn-radius);flex:none;justify-content:center;gap:4px;min-height:36px;padding:8px 12px;font-size:11px}.mobile-appointments .calendar-nav{justify-content:center;min-height:0}.mobile-appointments .calendar-nav .week-nav,.mobile-appointments .week-nav{flex:0 auto;justify-content:center;gap:4px;width:auto;max-width:100%;margin-inline:auto}.mobile-appointments .week-nav .icon-btn{width:28px;height:28px}.mobile-appointments .week-nav .icon-btn svg{width:14px;height:14px}.mobile-appointments .week-days{flex:none;gap:4px;padding-bottom:0}.mobile-appointments .day-chip{flex:0 0 44px;gap:0;width:44px;min-width:44px;max-width:44px;min-height:40px;padding:4px 2px}.mobile-appointments .day-chip span{font-size:9px}.mobile-appointments .day-chip strong{font-size:12px}.mobile-appt-toolbar{gap:8px;display:grid}.mobile-appointments.is-month .add-colleague{display:inline-flex}.mobile-appointments.is-month .colleague-bar{width:100%}.mobile-balance .collections-toolbar{flex-flow:column;justify-content:center;align-items:center;gap:8px;width:100%;min-width:0;margin-bottom:10px;display:flex}.mobile-balance .month-shift{justify-content:center;align-items:center;width:100%;min-width:0}.mobile-balance .month-shift-nav{justify-content:center;gap:2px;width:100%}.mobile-balance .month-shift-nav .icon-btn{border-radius:var(--btn-radius);flex:none;width:34px;height:34px}.mobile-balance .month-shift-nav .icon-btn svg{width:16px;height:16px}.mobile-balance .collections-period{letter-spacing:-.03em;white-space:nowrap;margin:0;font-size:15px;font-weight:700;line-height:1.2}.mobile-balance .view-toggle,.mobile-balance .view-toggle button,.mobile-balance .view-toggle button.is-active,.mobile-balance-stat{border-radius:var(--btn-radius)}.mobile-balance .view-toggle{flex:none;justify-content:center;margin-inline:0;padding:4px}.mobile-balance .view-toggle button,.mobile-balance .view-toggle button.is-active{appearance:none;border-radius:var(--btn-radius);justify-content:center;min-height:36px;padding:8px 12px;font-size:13px}.mobile-balance-stats{flex-flow:row;gap:6px;width:100%;margin-bottom:10px;display:flex}.mobile-balance-stat{text-align:center;border:1px solid var(--line);background:var(--surface-2);border-radius:var(--btn-radius);min-width:0;color:inherit;cursor:pointer;flex:1 1 0;justify-items:center;gap:2px;padding:6px 4px;display:grid}.mobile-balance-stat span{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:8px;font-weight:800;overflow:hidden}.mobile-balance-stat strong{letter-spacing:-.03em;white-space:nowrap;text-overflow:ellipsis;font-size:11px;font-weight:800;overflow:hidden}
