:root{--bg:#f6f7f9;--panel:#fff;--ink:#0f172a;--ink-2:#334155;--muted:#5b6b80;--line:#e2e8f0;--line-2:#f1f5f9;--accent:#0f766e;--accent-2:#0d9488;--accent-bg:#ecfdf5;--accent-ink:#fff;--on:#1d4ed8;--on-bg:#eff6ff;--danger:#b42318;--danger-bg:#fef3f2;--ok:#067647;--ok-bg:#ecfdf3;--warn:#b54708;--warn-bg:#fffaeb;--panel-2:#f8fafc;--line-strong:#cbd5e1;--faint:#94a3b8;--field-line:#8090a4;--hatch-1:#eef0f3;--hatch-2:#e2e6ea;--glass:#ffffffd9;--warn-ink:#7c4a08;--radius:12px;--radius-sm:8px;--shadow:0 1px 2px #0f172a0a, 0 1px 3px #0f172a0f;--shadow-md:0 4px 12px #0f172a14, 0 1px 3px #0f172a0f;--shadow-lg:0 12px 32px #0f172a24, 0 2px 6px #0f172a14;--font-sans:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif}:root[data-theme=dark] body:has(.shell){--bg:#0a1114;--panel:#111b1f;--panel-2:#0e171b;--ink:#e6eef0;--ink-2:#b6c3c8;--muted:#8697a0;--faint:#5f7079;--line:#1f2d32;--line-2:#172328;--line-strong:#2c3d43;--field-line:#566a74;--accent:#14a395;--accent-2:#19b5a6;--accent-bg:#34d1bd1f;--accent-ink:#fff;--on:#7aa7ff;--on-bg:#7aa7ff24;--danger:#f6877d;--danger-bg:#f6877d21;--ok:#6fdc9b;--ok-bg:#6fdc9b21;--warn:#f5b454;--warn-bg:#f5b45421;--warn-ink:#f5c77e;--hatch-1:#121d21;--hatch-2:#17252a;--glass:#0a1114d1;--shadow:0 1px 2px #0006, 0 1px 3px #0000004d;--shadow-md:0 4px 12px #00000073, 0 1px 3px #0000004d;--shadow-lg:0 12px 32px #0000008c, 0 2px 6px #00000059;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}@media (prefers-color-scheme:dark){:root[data-theme=system] body:has(.shell){--bg:#0a1114;--panel:#111b1f;--panel-2:#0e171b;--ink:#e6eef0;--ink-2:#b6c3c8;--muted:#8697a0;--faint:#5f7079;--line:#1f2d32;--line-2:#172328;--line-strong:#2c3d43;--field-line:#566a74;--accent:#14a395;--accent-2:#19b5a6;--accent-bg:#34d1bd1f;--accent-ink:#fff;--on:#7aa7ff;--on-bg:#7aa7ff24;--danger:#f6877d;--danger-bg:#f6877d21;--ok:#6fdc9b;--ok-bg:#6fdc9b21;--warn:#f5b454;--warn-bg:#f5b45421;--warn-ink:#f5c77e;--hatch-1:#121d21;--hatch-2:#17252a;--glass:#0a1114d1;--shadow:0 1px 2px #0006, 0 1px 3px #0000004d;--shadow-md:0 4px 12px #00000073, 0 1px 3px #0000004d;--shadow-lg:0 12px 32px #0000008c, 0 2px 6px #00000059;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}@media print{:root[data-theme] body:has(.shell){--bg:#fff;--panel:#fff;--panel-2:#f8fafc;--ink:#0f172a;--ink-2:#334155;--muted:#5b6b80;--faint:#94a3b8;--line:#e2e8f0;--line-2:#f1f5f9;--line-strong:#cbd5e1;--field-line:#8090a4;--accent:#0f766e;--accent-2:#0d9488;--accent-bg:#ecfdf5;--danger:#b42318;--danger-bg:#fef3f2;--ok:#067647;--ok-bg:#ecfdf3;--warn:#b54708;--warn-bg:#fffaeb;--warn-ink:#7c4a08;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--ink);font:14.5px/1.55 var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-variant-numeric:tabular-nums;font-feature-settings:"cv11", "ss01";overflow-wrap:break-word;margin:0;padding:0}a{color:var(--accent);text-underline-offset:2px;text-decoration-thickness:1px}a:hover{color:var(--accent-2)}h1{letter-spacing:-.02em;margin:0 0 4px;font-size:26px;font-weight:700;line-height:1.2}h2{letter-spacing:-.01em;margin:0 0 14px;font-size:16px;font-weight:600;line-height:1.35}h3{margin:0 0 8px;font-size:14px;font-weight:600}p{margin:0 0 12px}.muted{color:var(--muted);font-size:13px}.shell{grid-template-columns:216px minmax(0,1fr);min-height:100vh;display:grid}.shell[data-side=narrow]{grid-template-columns:64px minmax(0,1fr)}.side{background:var(--panel);border-right:1px solid var(--line);flex-direction:column;gap:14px;height:100vh;padding:12px 10px;display:flex;position:sticky;top:0;overflow-y:auto}.side>*{flex:none}.rail-logo{min-height:44px;color:var(--ink);align-items:center;gap:10px;padding:2px 4px;text-decoration:none;display:flex}.rail-logo img{flex:none;width:auto;max-width:44px;max-height:36px;display:block}.rail-art.is-narrow{display:none}.rail-logo.has-logo{align-items:flex-start;min-height:104px;padding:6px 6px 2px}.rail-logo.has-logo img{object-fit:contain;object-position:left top;width:auto;max-width:100%;height:auto;max-height:96px}.rail-mark{background:var(--accent);width:36px;height:36px;color:var(--accent-ink);border-radius:10px;flex:none;place-items:center;font-size:16px;font-weight:700;display:grid}.rail-name{min-width:0}.rail-name b,.rail-name span{overflow-wrap:anywhere;display:block}.rail-name b{letter-spacing:-.005em;font-size:14px;font-weight:650;line-height:1.2}.rail-name span{color:var(--muted);font-size:12px}.nav-group{flex-direction:column;gap:2px;display:flex}.nav-cap{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);padding:0 10px 6px;font-size:10.5px;font-weight:600}.side nav{flex-direction:column;gap:2px;display:flex}.side nav a{border-radius:var(--radius-sm);min-height:40px;color:var(--ink-2);align-items:center;gap:10px;padding:0 10px;font-size:13.5px;font-weight:500;line-height:1.2;text-decoration:none;transition:background 90ms,color 90ms;display:flex}.side nav .nav-ico{opacity:.8;flex:none;line-height:0;display:block}.nav-lbl{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.side nav a:hover{background:var(--line-2);color:var(--ink)}.side nav a[aria-current=page]{background:var(--accent-bg);color:var(--accent);font-weight:600;box-shadow:inset 0 0 0 1px #0f766e26}.side nav a[aria-current=page] .nav-ico{opacity:1}.nav-fold-btn{border-radius:var(--radius-sm);width:100%;min-height:40px;box-shadow:none;text-align:left;color:var(--ink-2);background:0 0;border:none;align-items:center;gap:10px;padding:0 10px;font-size:13.5px;font-weight:500;line-height:1.2;display:flex}.nav-fold-btn .nav-ico{opacity:.8;flex:none;line-height:0;display:block}.nav-fold-btn:hover:not(:disabled){background:var(--line-2);color:var(--ink)}.nav-fold-btn:active:not(:disabled){transform:none}.nav-fold-btn.is-here{color:var(--accent);font-weight:600}.nav-chev{color:var(--muted);flex:none;margin-left:auto;transition:transform .12s}.nav-fold-btn[aria-expanded=true] .nav-chev{transform:rotate(180deg)}.side nav a.nav-fold-link{display:none}.nav-sub{border-left:1px solid var(--line);margin:2px 0 6px 21px;padding-left:8px}.nav-sub-group+.nav-sub-group{margin-top:6px}.nav-sub-cap{letter-spacing:.07em;text-transform:uppercase;color:var(--muted);padding:6px 8px 2px;font-size:10px;font-weight:600}.side nav .nav-sub a{gap:0;min-height:30px;padding:5px 8px;font-size:13px;line-height:1.3}.side nav .nav-sub a[aria-current=page]{box-shadow:none}.side-toggle{min-height:40px;box-shadow:none;color:var(--muted);border-radius:var(--radius-sm);background:0 0;border:none;align-items:center;gap:10px;margin-top:auto;padding:0 10px;font-size:13px;font-weight:500;display:flex}.side-toggle:hover:not(:disabled){background:var(--line-2);color:var(--ink)}.side-toggle:active:not(:disabled){transform:none}.shell[data-side=narrow] .side{padding:12px 6px}.shell[data-side=narrow] .rail-logo{justify-content:center;align-items:center;padding:0}.shell[data-side=narrow] .rail-logo.has-logo{align-items:center;min-height:0}.shell[data-side=narrow] .rail-logo.has-mark .rail-art.is-wide{display:none}.shell[data-side=narrow] .rail-logo.has-mark .rail-art.is-narrow{display:block}.shell[data-side=narrow] .rail-logo.has-logo img{object-position:center;max-width:48px;max-height:48px}.shell[data-side=narrow] .rail-name,.shell[data-side=narrow] .nav-cap{display:none}.shell[data-side=narrow] .nav-group+.nav-group{border-top:1px solid var(--line);padding-top:10px}.shell[data-side=narrow] .side nav a,.shell[data-side=narrow] .side-toggle{text-align:center;flex-direction:column;gap:3px;min-height:0;padding:6px 2px 5px;font-size:10px;line-height:1.15}.shell[data-side=narrow] .nav-lbl{white-space:normal}.shell[data-side=narrow] .nav-fold-btn,.shell[data-side=narrow] .nav-sub{display:none}.shell[data-side=narrow] .side nav a.nav-fold-link{display:flex}.frame{flex-direction:column;min-width:0;display:flex}.nav-progress{z-index:100;background:var(--accent-2);transform-origin:0;opacity:0;pointer-events:none;height:3px;transition:opacity .15s;position:fixed;top:0;left:0;right:0;transform:scaleX(0)}.nav-progress.is-on{opacity:1;animation:2s ease-out forwards nav-progress}@keyframes nav-progress{0%{transform:scaleX(0)}30%{transform:scaleX(.55)}70%{transform:scaleX(.85)}to{transform:scaleX(.96)}}.topbar{background:var(--panel);border-bottom:1px solid var(--line);z-index:20;align-items:center;gap:12px;height:56px;padding:0 20px;display:flex;position:sticky;top:0}.topbar-left{flex:auto;align-items:center;gap:12px;min-width:0;display:flex}.topbar-left form{min-width:0;margin:0}.topbar-left p{white-space:nowrap;margin:0;font-weight:500}.branch-pick{min-width:0;margin:0;display:block}.branch-pick .choice-btn{width:auto;min-width:0;max-width:100%;min-height:36px;padding:0 30px 0 10px;font-size:13.5px;font-weight:500}.top-search{border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--panel);height:36px;color:var(--muted);flex:auto;align-items:center;gap:8px;min-width:0;max-width:420px;padding:0 10px;transition:border-color 90ms,box-shadow 90ms;display:flex;box-shadow:inset 0 1px 1px #0f172a08}.top-search:focus-within{border-color:var(--accent-2);box-shadow:0 0 0 3px #0f766e1f}.top-search input{min-width:0;height:100%;box-shadow:none;background:0 0;border:none;flex:1;padding:0;font-size:13.5px}.top-search input:focus{box-shadow:none;border:none}.top-search input::-webkit-search-cancel-button{-webkit-appearance:none}.top-search-kbd{font:11px/1.4 var(--font-sans);color:var(--muted);border:1px solid var(--line);background:var(--line-2);border-radius:5px;padding:1px 5px}.top-new{white-space:nowrap}.bottom-nav{display:none}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.trap{opacity:0;width:1px;height:1px;position:absolute;left:-9999px}.brand{letter-spacing:-.005em;font-weight:650}.account{position:relative}.account-btn{color:var(--ink);font:inherit;cursor:pointer;box-shadow:none;background:0 0;border:1px solid #0000;border-radius:999px;align-items:center;gap:8px;padding:4px 8px 4px 4px;display:flex}.account-btn:active:not(:disabled){transform:none}.account-btn:hover,.account-btn[aria-expanded=true]{background:var(--line-2)}.avatar{background:var(--accent-bg);width:30px;height:30px;color:var(--accent);border-radius:50%;place-items:center;font-size:12px;font-weight:600;display:grid}.account-name{white-space:nowrap;font-size:14px;font-weight:500}.account-chev{color:var(--muted);font-size:11px}@media screen and (max-width:1199px){.account-name,.account-chev{display:none}}.account-menu{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);min-width:240px;box-shadow:var(--shadow-lg);z-index:30;padding:12px 14px;position:absolute;top:calc(100% + 6px);right:0}.account-who{margin-bottom:10px}.topbar .account.is-top{display:none}.side .account.is-rail{margin-top:auto}.side .account.is-rail+.side-toggle{margin-top:0}.account.is-rail .account-btn{border-radius:var(--radius-sm);justify-content:flex-start;width:100%;padding:6px 8px}.account.is-rail .account-name{text-align:left;white-space:normal;overflow-wrap:anywhere;flex:1;min-width:0;line-height:1.3}.account.is-rail .account-menu{width:280px;position:fixed;inset:auto auto 108px 12px}.shell[data-side=narrow] .account.is-rail .account-btn{justify-content:center;padding:6px 0}.shell[data-side=narrow] .account.is-rail .account-name,.shell[data-side=narrow] .account.is-rail .account-chev{display:none}.shell[data-side=narrow] .account.is-rail .account-menu{bottom:16px;left:72px}.tg-qr{flex-wrap:wrap;align-items:flex-start;gap:18px;display:flex}.tg-qr-code{border:1px solid var(--line);background:#fff;border-radius:10px;flex:0 0 180px;width:180px;padding:8px}.tg-qr-code svg{width:100%;height:auto;display:block}.tg-qr>div:last-child{flex:260px;min-width:0}.account-theme{background:var(--line-2);border-radius:var(--radius-sm);gap:2px;margin-bottom:12px;padding:2px;display:flex}.account-theme-pick{min-height:32px;color:var(--ink-2);font:inherit;box-shadow:none;white-space:nowrap;background:0 0;border:none;border-radius:6px;flex:1;padding:0 8px;font-size:12.5px}.account-theme-pick:hover:not(:disabled){background:var(--panel);color:var(--ink)}.account-theme-pick:active:not(:disabled){transform:none}.account-theme-pick.is-on{background:var(--panel);color:var(--accent);box-shadow:var(--shadow);font-weight:600}.account-link{color:var(--ink);margin-bottom:10px;text-decoration:none;display:block}.account-link:hover{color:var(--accent)}.account-who .muted{white-space:nowrap}.account-menu form{margin:0}.account-clinics{border-top:1px solid var(--line);border-bottom:1px solid var(--line);gap:2px;margin:0 -8px 10px;padding:6px 0;display:grid}.account-clinic{border-radius:var(--radius-sm);width:100%;color:var(--ink);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:6px 8px;display:block}.account-clinic:hover{background:var(--line-2)}.account-clinic.is-current{color:var(--accent);cursor:default;font-weight:600}.account-clinic.is-current:hover{background:0 0}button.link.danger{color:var(--danger);background:0 0}button.link.danger:hover{background:var(--danger-bg)}.week-table td{vertical-align:middle}.week-table input[type=time]{width:112px}.week-table tr.is-off td:not(:first-child){opacity:.45}.main{min-width:0;padding:20px 24px 48px}.main:has(>.cal-layout){max-width:none}.page-form{min-width:0;max-width:840px}.main>h1+.muted,.main>h1+p,.page-form>h1+.muted,.page-form>h1+p{margin-bottom:20px}.centered{background:radial-gradient(900px 500px at 15% -10%, #0d94881f, transparent 60%), radial-gradient(700px 400px at 100% 110%, #0d948814, transparent 60%), var(--bg);place-items:center;min-height:100vh;padding:24px;display:grid}.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:24px}.card+.card{margin-top:20px}.card>h2:first-child{margin-bottom:16px}.form-card{width:100%;max-width:420px}.form-card.wide{max-width:520px}.practice-pick{border:0;gap:8px;margin:0 0 14px;padding:0;display:grid}.practice-pick legend{color:var(--ink-2);margin-bottom:6px;padding:0;font-size:13px;font-weight:600}.practice-opt{border:1px solid var(--line);border-radius:var(--radius);cursor:pointer;grid-template-columns:auto 1fr;gap:2px 10px;margin:0;padding:12px 14px;display:grid}.practice-opt input{grid-row:span 2;margin-top:3px}.practice-opt-title{color:var(--ink);font-weight:600}.practice-opt-hint{color:var(--muted);font-size:13px}.practice-opt.is-on{border-color:var(--accent);background:var(--accent-bg)}.practice-note{margin:2px 0 0;font-size:12.5px}label{margin-bottom:14px;display:block}label>span{color:var(--ink-2);margin-bottom:5px;font-size:13px;font-weight:500;display:block}label>.field-hint,label>.field-error{margin-top:5px;font-size:12.5px;display:block}label>.field-error{color:var(--danger)}input,textarea{border:1px solid var(--field-line);border-radius:var(--radius-sm);background:var(--panel);width:100%;color:var(--ink);font:inherit;padding:9px 12px;transition:border-color 90ms,box-shadow 90ms;box-shadow:inset 0 1px 1px #0f172a08}input:hover:not(:disabled):not(:focus),textarea:hover:not(:disabled):not(:focus){border-color:var(--muted)}input:disabled,textarea:disabled,input[type=text]:read-only,input[type=email]:read-only,input[type=tel]:read-only,textarea:read-only{background:var(--line-2);color:var(--muted);box-shadow:none}input::placeholder,textarea::placeholder{color:var(--muted)}input[type=checkbox],input[type=radio]{width:16px;height:16px;box-shadow:none;accent-color:var(--accent);vertical-align:-2px;padding:0}input:focus,textarea:focus{border-color:var(--accent-2);outline:none;box-shadow:0 0 0 3px #0f766e1f}button{border-radius:var(--radius-sm);background:var(--accent);color:var(--accent-ink);font:inherit;cursor:pointer;border:1px solid #0000;padding:9px 16px;font-weight:500;line-height:1.45;transition:background 90ms,box-shadow 90ms,transform 60ms;box-shadow:0 1px 2px #0f766e4d,inset 0 1px #ffffff1f}.tooth-no,.tickish,.cond,.tooth-chips .chip button{box-shadow:none}.tooth-no:active,.cond:active:not(:disabled),.tooth-chips .chip button:active{transform:none}button:hover:not(:disabled){background:var(--accent-2)}button:active:not(:disabled){box-shadow:none;transform:translateY(1px)}button:focus-visible{outline:none;box-shadow:0 0 0 3px #0f766e40}button:disabled{opacity:.5;cursor:default;box-shadow:none}button.link{color:var(--accent);box-shadow:none;background:0 0;border:none;padding:0;font-weight:500;text-decoration:underline}button.link:active:not(:disabled){transform:none}button.secondary{background:var(--panel);border-color:var(--line-strong);color:var(--ink-2);box-shadow:var(--shadow)}button.secondary:hover:not(:disabled){background:var(--line-2);color:var(--ink)}.row{align-items:flex-end;gap:12px;display:flex}.row>*{flex:1}.row>button{flex:none}.error,.notice{border-radius:var(--radius-sm);border-left:3px solid;margin-bottom:12px;padding:10px 13px;font-size:14px}.error{background:var(--danger-bg);color:var(--danger)}.notice{background:var(--ok-bg);color:var(--ok)}.resend{margin-bottom:16px}.token{word-break:break-all;background:var(--bg);border:1px solid var(--line);border-radius:var(--radius);color:var(--ink);margin-top:6px;padding:8px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;display:block}table{border-collapse:collapse;width:100%;font-size:14px}th,td{text-align:left;border-bottom:1px solid var(--line-2);padding:11px 10px}th{color:var(--muted);letter-spacing:.05em;text-transform:uppercase;border-bottom-color:var(--line);padding-top:6px;padding-bottom:8px;font-size:11px;font-weight:600}tbody tr:hover{background:var(--panel-2)}tbody tr:last-child td{border-bottom:none}tfoot td{border-bottom:none;border-top:1px solid var(--line);font-weight:600}table a{color:var(--ink);font-weight:500;text-decoration:none}table a:hover{color:var(--accent);text-decoration:underline}table a.act,table button.act{box-shadow:none;font-size:inherit;color:var(--accent);text-underline-offset:3px;background:0 0;border:none;padding:0;font-weight:500;text-decoration:underline;text-decoration-thickness:1px}table a.act:hover,table button.act:hover{color:var(--accent-2);background:0 0;text-decoration-thickness:2px;transform:none}table button.act:disabled{opacity:.5}.tag{background:var(--line-2);color:var(--ink-2);border-radius:999px;padding:2px 10px;font-size:12px;font-weight:500;line-height:1.4;display:inline-block}.tag.danger{background:var(--danger-bg);color:var(--danger)}.cal-top{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:12px 20px;margin-bottom:14px;display:flex}.cal-controls{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.cal-bar{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px;padding:8px 10px;display:flex}.cal-bar-main{flex-wrap:wrap;align-items:center;gap:8px;min-width:0;display:flex}.cal-bar-side{align-items:center;gap:8px;display:flex}.cal-nav{align-items:center;gap:4px;display:flex}.cal-date{margin:0;display:inline-flex;position:relative}.cal-date .cal-date-text{text-align:center;border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--panel);min-width:168px;box-shadow:var(--shadow);white-space:nowrap;cursor:pointer;padding:8px 12px;font-size:14px;font-weight:600;display:inline-block}.cal-date:hover .cal-date-text{background:var(--line-2)}.cal-date input{opacity:0;width:100%;height:100%;box-shadow:none;cursor:pointer;border:none;padding:0;position:absolute;inset:0}.cal-view{width:auto;min-width:116px}.choice.cal-view{vertical-align:middle;display:inline-block}.choice.cal-view .choice-btn{min-height:36px;padding-top:6px;padding-bottom:6px}.cal-pop{position:relative}.cal-pop-menu{z-index:30;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);min-width:250px;max-height:60vh;box-shadow:var(--shadow-lg);flex-direction:column;gap:8px;padding:12px 14px;display:flex;position:absolute;top:calc(100% + 6px);left:0;overflow-y:auto}.cal-pop-menu.is-right{left:auto;right:0}@media screen and (max-width:759px){.cal-pop-menu,.cal-pop-menu.is-right{max-width:calc(100vw - 32px);left:0;right:auto}}.cal-pop-menu .hit{font-size:14px}.btnish.is-primary{background:var(--accent);border-color:var(--accent);color:#fff;box-shadow:0 1px 2px #0f766e4d}.btnish.is-primary:hover{background:var(--accent-2);color:#fff}.chips{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.chips input[type=date]{width:auto}.btnish{border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--panel);color:var(--ink-2);box-shadow:var(--shadow);padding:8px 14px;font-size:14px;font-weight:500;line-height:1.45;text-decoration:none;transition:background 90ms,color 90ms,border-color 90ms;display:inline-block}.btnish:hover{background:var(--line-2);color:var(--ink)}.btnish.on{background:var(--accent-bg);border-color:var(--accent);color:var(--ink);box-shadow:none;font-weight:600}button.btnish:not(.is-primary):hover:not(:disabled){background:var(--line-2);color:var(--ink)}button.btnish.on,button.btnish.on:hover:not(:disabled){background:var(--accent-bg);color:var(--ink)}.cal-layout{align-items:flex-start;gap:16px;min-width:0;display:flex}.cal-scroll{overscroll-behavior-x:contain;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);flex:1;min-width:0;overflow-x:auto}.panel{flex:0 0 400px;margin-top:0!important}.panel-head{justify-content:space-between;align-items:baseline;display:flex}.visit-panel .panel-head{align-items:center;gap:8px}.visit-panel .panel-head h2{margin:0}.visit-panel .panel-close{margin-left:auto}.visit-go{margin:4px 0 14px}.status-strip{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--panel);display:flex;overflow:hidden}.status-strip button{white-space:nowrap;min-height:36px;box-shadow:none;color:var(--ink-2);background:0 0;border:none;border-radius:0;flex:auto;padding:0 8px;font-size:12.5px;font-weight:500;line-height:1.15}.status-strip button+button{border-left:1px solid var(--line)}.status-strip button:hover:not(:disabled){background:var(--line-2);color:var(--ink)}.status-strip button:active:not(:disabled){transform:none}.status-strip button.is-current{background:var(--accent-bg);color:var(--accent);opacity:1;font-weight:650}.status-strip button:disabled:not(.is-current){opacity:.45}.panel-foot{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:8px;margin-top:16px;padding-top:12px;display:flex}.status-strip.is-wrap{flex-wrap:wrap}.status-strip.is-wrap button{border-bottom:1px solid var(--line);margin-bottom:-1px}button.secondary.is-danger{color:var(--danger)}button.secondary.is-danger:hover:not(:disabled){background:var(--danger-bg);color:var(--danger)}.cal-head,.cal-body{min-width:100%;display:grid}.cal-body{padding-top:7px}.cal-head{z-index:6;background:var(--panel);border-bottom:1px solid var(--line);position:sticky;top:0}.cal-col-head{border-left:1px solid var(--line);padding:8px 10px;font-size:13px;font-weight:600}.dot{vertical-align:middle;border-radius:50%;width:8px;height:8px;margin-right:6px;display:inline-block}.cal-time,.cal-corner{background:var(--panel);position:sticky;left:0}.cal-time{z-index:4}.cal-corner{z-index:1}.cal-daylabel.cal-corner{background:var(--bg)}.cal-time{color:var(--muted);text-align:right;padding-right:8px;font-size:11px;line-height:1;transform:translateY(-6px)}.cal-time.hour{color:var(--ink);font-size:12.5px;font-weight:600}.cal-slot{border-left:1px solid var(--line);border-top:1px dotted var(--line);-webkit-user-select:none;user-select:none;-webkit-user-drag:none;touch-action:pan-x pan-y;display:block}.cal-slot.hour{border-top:1px solid var(--line-strong)}.cal-slot:hover{background:var(--accent-bg)}.cal-visit{z-index:2;border-left:4px solid var(--accent);background:var(--accent-bg);color:var(--ink);border-radius:6px;margin:1px 3px;padding:3px 7px;font-size:12px;line-height:1.25;text-decoration:none;overflow:hidden;box-shadow:0 1px 2px #0f172a1a}.cal-visit:hover{filter:brightness(.97)}.cal-visit-time{font-variant-numeric:tabular-nums;color:var(--muted);margin-right:5px}.cal-visit-name{font-weight:500}.cal-visit-sub{color:var(--muted);display:block}.cal-visit.st-unconfirmed{background:var(--panel-2);border-left-color:var(--faint)}.cal-visit.st-confirmed{background:var(--accent-bg);border-left-color:var(--accent)}.cal-visit.st-arrived{background:var(--warn-bg);border-left-color:var(--warn)}.cal-visit.st-in_chair{background:var(--ok-bg);border-left-color:var(--ok)}.cal-visit.st-no_show{background:var(--panel-2);border-left-color:var(--faint)}.cal-visit.is-block{background:repeating-linear-gradient(45deg, var(--hatch-1), var(--hatch-1) 6px, var(--hatch-2) 6px, var(--hatch-2) 12px);border-left-color:var(--faint)}.cal-visit.is-cancelled,.cal-visit.is-free{opacity:.55}.cal-visit.is-unscheduled{opacity:.38;background-image:repeating-linear-gradient(45deg,#0000 0 5px,#64748b1a 5px 10px);border-style:dashed}.cal-visit.is-cancelled .cal-visit-name{text-decoration:line-through}.fs{border:none;border-top:1px solid var(--line);margin:16px 0 0;padding:16px 0 0}.fs legend{color:var(--muted);padding:0;font-size:13px}.fs h2{margin-bottom:10px}.hits{flex-direction:column;gap:2px;margin:6px 0 0;display:flex}.hits button.hit{text-align:left;width:100%;min-height:34px;box-shadow:none;color:var(--ink);border-radius:var(--radius-sm);background:0 0;border:none;justify-content:flex-start;padding:4px 8px;font-weight:500}.hits button.hit:hover:not(:disabled){background:var(--line-2);color:var(--ink)}.hits button.hit:active:not(:disabled){transform:none}.picked{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--accent-bg);justify-content:space-between;align-items:center;gap:8px;padding:8px 10px;display:flex}.hit{align-items:baseline;gap:8px;margin:0;font-size:14px;display:flex}.hit input{width:auto}.statuses{border-top:1px solid var(--line);margin-top:16px;padding-top:16px}.statuses .chips button{padding:5px 9px;font-size:13px}button.danger{background:var(--danger)}.warn{background:var(--warn-bg);color:var(--warn);border-radius:var(--radius);margin-bottom:12px;padding:10px 12px;font-size:14px}.cal-list,.cal-veil{display:none}@media screen and (max-width:1199px){.cal-layout{display:block}.cal-veil{z-index:40;background:#0f172a52;display:block;position:fixed;inset:0}.panel{z-index:50;border:none;border-left:1px solid var(--line);width:400px;max-width:92vw;box-shadow:var(--shadow-lg);border-radius:0;position:fixed;top:0;bottom:0;right:0;overflow-y:auto;margin:0!important}.cal-bar{gap:6px 8px;padding:6px 8px}.cal-bar .btnish{padding:7px 10px}.cal-date .cal-date-text{min-width:0;padding:7px 10px}.cal-view{min-width:0}}@media screen and (max-width:759px){.cal-scroll{display:none}.cal-list{flex-direction:column;gap:7px;display:flex}.cal-list-day+.cal-list-day{margin-top:14px}.cal-list-date{margin-bottom:6px;font-size:13px;font-weight:600}.cal-list-hour{align-items:center;gap:9px;margin:4px 0 1px;display:flex}.cal-list-hour b{color:var(--muted);letter-spacing:.04em;font-size:11px;font-weight:600}.cal-list-hour i{background:var(--line);flex:1;height:1px}.cal-list-hour.is-now b{color:#dc2626}.cal-list-hour.is-now i{background:#dc2626;height:2px}.cal-list-item{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);min-height:56px;box-shadow:var(--shadow);color:var(--ink);align-items:center;gap:10px;padding:9px 12px;text-decoration:none;display:flex}.cal-list-item.st-no_show,.cal-list-item.st-unconfirmed .cal-list-stripe{opacity:.5}.cal-list-stripe{background:var(--accent);border-radius:999px;flex:none;align-self:stretch;width:4px}.cal-list-body{flex-direction:column;flex:1;min-width:0;display:flex}.cal-list-body b{overflow-wrap:anywhere;font-size:14.5px;font-weight:600}.cal-list-body span{color:var(--muted);overflow-wrap:anywhere;font-size:12px}.cal-list-time{text-align:right;flex:none;font-size:13px;font-weight:600;line-height:1.25}.cal-list-time small{color:var(--muted);font-size:10.5px;font-weight:400;display:block}.panel{border-left:none;border-top:1px solid var(--line);border-radius:16px 16px 0 0;width:auto;max-width:none;max-height:88vh;top:auto;left:0;right:0}}.cal-msg{margin:12px 12px 0}.cal-daylabel{background:var(--bg);border-bottom:1px solid var(--line);align-items:center;gap:8px;padding:6px 10px;font-size:13px;font-weight:600;display:flex}.cal-col-head{border-top:3px solid #0000;flex-direction:column;gap:1px;display:flex}.cal-col-head .cal-col-hours{color:var(--ink-2)}.cal-col-name{white-space:normal;overflow-wrap:break-word;align-items:baseline;gap:6px;line-height:1.25;display:flex}.cal-col-hours{color:var(--muted);font-size:11px;font-weight:400}.cal-off{background:repeating-linear-gradient(45deg, var(--hatch-1), var(--hatch-1) 5px, var(--hatch-2) 5px, var(--hatch-2) 10px)}.cal-now{z-index:4;pointer-events:none;border-top:2px solid #dc2626;align-self:start;height:0;position:relative}.cal-now-label{color:#fff;font-variant-numeric:tabular-nums;background:#dc2626;border-radius:3px;padding:2px 4px;font-size:10px;line-height:1;position:absolute;top:-9px;left:0;transform:translate(-100%)}.cal-visit{flex-direction:column;display:flex;position:relative}.cal-visit.is-movable{cursor:grab;touch-action:pan-x pan-y;-webkit-user-select:none;user-select:none}.cal-visit.is-dragging{cursor:grabbing;z-index:5;opacity:.92;box-shadow:0 6px 16px #0000002e}.cal-visit-head{align-items:center;gap:4px;display:flex}.cal-visit-head .mark{text-align:center;color:#fff;background:var(--faint);border-radius:50%;flex:none;width:12px;height:12px;font-size:8px;line-height:12px}.mark.st-confirmed{background:var(--ok)}.mark.st-arrived{background:var(--warn)}.mark.st-in_chair{background:var(--accent)}.mark.st-no_show{background:var(--danger)}.cal-answer{white-space:nowrap;color:var(--ok);background:var(--ok-bg);border-radius:6px;flex:none;margin-left:auto;padding:0 5px;font-size:10px;font-weight:600;line-height:15px}.cal-answer.is-cannot,.cal-answer.is-reschedule{color:#fff;background:var(--danger)}.cal-answer.is-handled{color:var(--danger);background:var(--danger-bg)}.cal-visit-note{color:var(--muted);text-overflow:ellipsis;font-size:11px;overflow:hidden}.cal-resize{cursor:ns-resize;touch-action:pan-x pan-y;height:6px;position:absolute;bottom:0;left:0;right:0}.cal-resize:hover{background:#0f766e40}.cal-filter{margin-bottom:12px;font-size:14px}.cal-filter summary{cursor:pointer;color:var(--muted)}.cal-filter form{margin-top:8px}.cal-draft{z-index:3;border:1.5px dashed var(--accent);color:var(--accent);font-variant-numeric:tabular-nums;pointer-events:none;background:#0f766e1f;border-radius:6px;flex-direction:column;margin:1px 3px;padding:3px 7px;font-size:12px;font-weight:600;line-height:1.25;animation:.16s ease-out cal-draft-in;display:flex;overflow:hidden}.cal-draft-note{opacity:.85;font-size:11px;font-weight:400}@keyframes cal-draft-in{0%{opacity:0;transform:scale(.98)}to{opacity:1;transform:none}}.cal-select{z-index:4;border:1px dashed var(--accent);color:var(--accent);font-variant-numeric:tabular-nums;pointer-events:none;background:#0f766e1a;border-radius:5px;margin:1px 3px;padding:2px 6px;font-size:11px}.patient-layout{grid-template-columns:296px minmax(0,1fr);align-items:start;gap:16px;display:grid}.patient-side{position:sticky;top:72px}.patient-head{padding:0;overflow:hidden}.patient-who{border-bottom:1px solid var(--line-2);align-items:center;gap:12px;padding:16px 16px 14px;display:flex}.patient-portrait{background:var(--accent-bg);width:52px;height:52px;color:var(--accent);border-radius:50%;flex:none;place-items:center;font-size:18px;font-weight:600;display:grid}.patient-name{min-width:0}.patient-name h1{letter-spacing:-.01em;margin:0 0 2px;font-size:17px;line-height:1.25}.patient-phone{border-bottom:1px solid var(--line-2);align-items:center;gap:8px;padding:12px 16px;display:flex}.patient-phone b{letter-spacing:-.01em;font-size:16px;font-weight:600}.patient-phone-acts{gap:6px;margin-left:auto;display:flex}.icobtn{border:1px solid var(--line-strong);background:var(--panel);width:36px;height:36px;color:var(--ink-2);box-shadow:var(--shadow);border-radius:9px;place-items:center;text-decoration:none;display:grid}.icobtn:hover{background:var(--line-2);color:var(--ink)}.patient-facts{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px 12px;margin:0;padding:12px 16px;display:grid}.patient-facts>div{gap:1px;min-width:0;font-size:13.5px;display:grid}.patient-facts>.is-person{grid-column:1/-1}.patient-facts dt{font-size:12.5px}.patient-facts dd{overflow-wrap:anywhere;margin:0;font-weight:500}.patient-debt{border-radius:var(--radius-sm);background:var(--danger-bg);color:var(--danger);align-items:center;gap:10px;margin:0 16px 14px;padding:9px 12px;font-size:13.5px;text-decoration:none;display:flex}.patient-debt>span{flex:1}.patient-debt b{margin-left:4px;font-size:15px;font-weight:700}.patient-debt-n{font-size:12.5px}.patient-debt .btnish{min-height:32px;color:var(--ink);border-color:var(--field-line);background:var(--panel);padding:4px 12px;font-size:13px}.patient-debt.is-none{background:var(--ok-bg);color:var(--ok)}.patient-main{min-width:0}.tabs{border-bottom:1px solid var(--line);scrollbar-width:none;align-items:center;gap:2px;margin:0 0 14px;display:flex;overflow-x:auto}.tabs::-webkit-scrollbar{display:none}.tabs a{color:var(--ink-2);white-space:nowrap;border-bottom:2px solid #0000;margin-bottom:-1px;padding:9px 12px;font-size:13.5px;font-weight:500;text-decoration:none;transition:color 90ms,border-color 90ms}.tabs a:hover{color:var(--ink)}.tabs a[aria-current=page]{color:var(--accent);border-bottom-color:var(--accent);font-weight:600}.tabs a.muted{margin-left:auto;font-weight:400}@media screen and (max-width:1199px){.patient-layout{grid-template-columns:minmax(0,1fr)}.patient-side{position:static}.patient-head{grid-template-columns:minmax(0,1fr) minmax(0,1fr);display:grid}.patient-who{grid-column:1/-1}.patient-phone{border-bottom:none}.patient-facts{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.patient-debt{grid-column:1/-1}}.patient-head-labels{display:none}@media screen and (max-width:759px){.patient-head{grid-template-columns:minmax(0,1fr)}.patient-phone{border-bottom:1px solid var(--line-2)}.tabs a.muted{display:none}.patient-layout{gap:12px;display:grid}.patient-side{display:contents}.patient-head{order:1}.patient-main{order:2}.patient-labels{order:3;margin-top:0}.patient-head-labels{margin:0;padding:10px 16px 0;display:flex}.patient-facts{flex-wrap:wrap;gap:2px 14px;padding:10px 16px;display:flex}.patient-facts>div{flex-wrap:wrap;gap:0 5px;min-width:0;font-size:13px;display:inline-flex}.patient-facts dd{text-align:left}.patient-head .phone-fold-btn{width:100%;min-height:44px;box-shadow:none;color:var(--ink-2);text-align:left;background:0 0;border:0;border-radius:0;justify-content:space-between;align-items:center;gap:10px;padding:0 16px;font-size:14px;font-weight:500;display:flex}.phone-fold-btn:hover:not(:disabled){background:var(--line-2);color:var(--ink)}.phone-fold-more{color:var(--accent);font-size:13px}.phone-fold:not(.is-open) .phone-fold-body{display:none}.patient-book{min-height:44px}}.phone-fold-btn{display:none}.patient-labels.is-empty{padding:2px 4px}.patient-labels.is-empty button.link{min-height:44px;font-size:14px}.chart-top{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.chart{--tooth-w:48px;--tooth-h:84px;--wheel:32px;padding-bottom:4px;overflow-x:auto}.chart-row{justify-content:center;gap:2px;min-width:max-content;display:flex}@media screen{.chart:not(.chart-print){container-type:inline-size}.chart.chart-pick .chart-row{gap:1px}.chart.chart-pick .tooth{padding:2px 0}.chart.chart-pick .tooth-no{min-width:0;padding:1px 0;font-size:11px}.chart.chart-pick>.chart-row{--tooth-w:clamp(14px, calc((100cqw - 30px) / 16 - 2px), 30px);--tooth-h:calc(var(--tooth-w) * 1.75);--wheel:calc(var(--tooth-w) * .8)}.chart:not(.chart-print):not(.chart-pick)>.chart-row{--tooth-w:clamp(24px, calc((100cqw - 30px) / 16 - 6px), 48px);--tooth-h:calc(var(--tooth-w) * 1.75);--wheel:calc(var(--tooth-w) * .667)}}.chart-row+.chart-row{border-top:1px dashed var(--line-strong);margin-top:10px;padding-top:10px}.chart-gap{border-left:1px dashed var(--line-strong);margin-left:14px;padding-left:14px}.tooth{border-radius:6px;flex-direction:column;align-items:center;gap:2px;padding:3px 2px;display:flex;position:relative}.tooth.is-lower{flex-direction:column-reverse}.tooth:hover{background:var(--bg)}.tooth.is-selected{background:var(--on-bg)}.tooth-no{color:var(--ink-2);font-variant-numeric:tabular-nums;cursor:pointer;background:0 0;border:none;border-radius:4px;padding:1px 4px;font-size:12px;font-weight:500}.tooth-no:hover{background:var(--line-2);color:var(--ink)}.tooth-svg{width:var(--tooth-w);height:var(--tooth-h);display:block}.gum-zone,.tooth-body{cursor:pointer}.gum-zone{transition:filter 90ms}.gum-zone:hover{filter:brightness(.93)saturate(1.25)}.gum-zone:focus-visible{stroke:var(--accent);stroke-width:1.4px;outline:none}.tooth-body path{transition:stroke 90ms}.tooth-body:hover path{stroke:var(--accent);stroke-width:1.1px}.tooth-body:focus-visible{outline:none}.tooth-body:focus-visible path{stroke:var(--accent);stroke-width:1.1px}.tooth-wheel{width:var(--wheel);height:var(--wheel);display:block}.wheel-zone{cursor:pointer;transition:stroke 90ms}.wheel-zone:hover{stroke:var(--accent);stroke-width:1.8px}.wheel-zone:focus-visible{stroke:var(--accent);stroke-width:1.8px;outline:none}.tooth-tip{z-index:20;white-space:nowrap;color:#fff;pointer-events:none;background:#1f2937;border-radius:6px;flex-direction:column;gap:1px;padding:5px 8px;font-size:12px;line-height:1.35;display:none;position:absolute;bottom:100%;left:50%;transform:translate(-50%);box-shadow:0 4px 14px #00000040}.tooth:hover .tooth-tip{display:flex}.tooth.is-lower .tooth-tip{top:100%;bottom:auto}.chart-legend{flex-wrap:wrap;gap:10px 16px;margin-top:16px;font-size:13px;display:flex}.legend-item{align-items:center;gap:5px;display:inline-flex}.swatch{border:1px solid var(--line);vertical-align:-1px;border-radius:2px;width:11px;height:11px;margin-right:4px;display:inline-block}textarea{border:1px solid var(--line);border-radius:var(--radius);width:100%;font:inherit;resize:vertical;padding:8px 10px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px}textarea:focus{outline:2px solid var(--accent);outline-offset:-1px}.mark-inline{border:1px solid var(--line);color:var(--muted);white-space:nowrap;border-radius:999px;padding:1px 8px;font-size:12px;display:inline-block}.mark-inline.st-confirmed{border-color:var(--ok);color:var(--ok)}.mark-inline.st-arrived{border-color:var(--warn);color:var(--warn)}.mark-inline.st-in_chair{border-color:var(--accent);color:var(--accent);background:var(--accent-bg)}.mark-inline.st-no_show{border-color:var(--danger);color:var(--danger)}table.row-links tbody tr{cursor:pointer}table.row-links tbody tr:hover{background:var(--line-2)}.danger-zone{margin-top:16px;padding:0 4px}.danger-zone p{max-width:640px}[class*=tag\ st-]{white-space:nowrap}.tag.st-unconfirmed{background:var(--panel-2);color:var(--ink-2)}.tag.st-confirmed{background:var(--accent-bg);color:var(--accent)}.tag.st-arrived{background:var(--warn-bg);color:var(--warn)}.tag.st-in_chair{background:var(--ok-bg);color:var(--ok)}.tag.st-no_show{background:var(--danger-bg);color:var(--danger)}.tag.st-done{background:var(--line-2);color:var(--ink-2)}.tag.st-cancelled{color:var(--muted);background:0 0;text-decoration:line-through}tr.is-cancelled td,.rows>.is-cancelled{opacity:.6}.date-field{display:block;position:relative}.date-field input[type=text]{width:100%;padding-right:36px}.date-field:after{content:"";pointer-events:none;opacity:.55;background:currentColor;width:16px;height:16px;position:absolute;top:50%;right:10px;transform:translateY(-50%);-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'%3E%3Crect x='3' y='5' width='18' height='16' rx='2'/%3E%3Cpath d='M3 10h18M8 3v4M16 3v4'/%3E%3C/svg%3E") 50%/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'%3E%3Crect x='3' y='5' width='18' height='16' rx='2'/%3E%3Cpath d='M3 10h18M8 3v4M16 3v4'/%3E%3C/svg%3E") 50%/contain no-repeat}.date-field .date-field-native{opacity:0;cursor:pointer;border:0;width:36px;height:100%;margin:0;padding:0;position:absolute;top:0;bottom:0;right:0}.date-field.is-disabled .date-field-native{cursor:default}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:10px 16px;margin-bottom:14px;display:flex}.page-head h1{margin-bottom:2px}.page-acts{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.card-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.card-head h2{margin:0}.sheet-back{z-index:60;background:#0f172a59;justify-content:flex-end;display:flex;position:fixed;inset:0}.sheet{background:var(--panel);width:min(520px,100%);height:100%;padding:18px 20px 28px;overflow-y:auto;box-shadow:-12px 0 40px #0000002e}.sheet-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;padding-bottom:12px;display:flex}.sheet-head h2{margin:0}@media screen and (max-width:759px){.sheet{width:100%}}.modal-back{z-index:60;background:#0f172a73;justify-content:center;align-items:flex-start;padding:40px 16px;display:flex;position:fixed;inset:0;overflow-y:auto}.modal{background:var(--panel);border-radius:12px;width:min(760px,100%);padding:18px 20px 20px;box-shadow:0 20px 50px #00000047}.modal:focus{outline:none}.modal-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.modal-head h2{margin:0}.modal-note{margin-bottom:12px;display:flex}.cond-groups{columns:2;column-gap:24px}.cond-groups section{break-inside:avoid;margin-bottom:14px}.cond-groups h3{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin:0 0 4px;font-size:12px}.cond-groups ul{margin:0;padding:0;list-style:none}.cond{text-align:left;width:100%;color:var(--ink);cursor:pointer;background:0 0;border:none;border-radius:5px;align-items:center;gap:8px;padding:4px 6px;font-size:14px;display:flex}.cond:hover{background:var(--bg)}.cond:disabled{opacity:.5;cursor:default}.cond.on{background:var(--on-bg);font-weight:600}.cond .swatch{border-radius:50%;flex:none;width:13px;height:13px;margin:0}.cond-name{flex:1}.cond-code{color:var(--muted);font-variant-numeric:tabular-nums;font-size:11px}.modal-foot{border-top:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:16px;margin-top:4px;padding-top:12px;display:flex}@media screen and (max-width:640px){.cond-groups{columns:1}}.visit-head{padding:16px 18px}.visit-who{align-items:flex-start;gap:12px;margin-bottom:12px;display:flex}.visit-name{flex:1;min-width:0}.visit-name h1{margin:0 0 2px;font-size:20px;line-height:1.25}.visit-name h1 a{color:inherit;text-decoration:none}.visit-name h1 a:hover{color:var(--accent)}.visit-state{flex:none;justify-content:flex-end;margin:0}.visit-state .muted{margin-left:6px}.tag.ok{background:var(--ok-bg);color:var(--ok)}.patient-book{justify-content:center;margin-top:12px;display:flex}.visit-bill{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:14px;padding-top:12px;display:flex}.visit-cols{grid-template-columns:minmax(0,1fr) 380px;align-items:start;gap:16px;display:grid}.visit-main,.visit-side{flex-direction:column;gap:16px;min-width:0;display:flex}.visit-cols .card+.card{margin-top:0}.record-foot{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.visit-bar{z-index:5;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 -4px 16px #0f172a0f, var(--shadow);flex-wrap:wrap;align-items:center;gap:12px;margin-top:16px;padding:10px 16px;display:flex;position:sticky;bottom:12px}.visit-bar .visit-actions{flex:1}.visit-bar .visit-actions form:has(button:not(.secondary):not(.link)){margin-left:auto}.visit-head .visit-header{background:0 0;grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1.4fr) auto;align-items:end;gap:10px;margin:0;padding:0;display:grid}.visit-head .visit-header>button{width:auto}@media screen and (max-width:1199px){.visit-cols{grid-template-columns:minmax(0,1fr)}.visit-head .visit-header{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.visit-head .visit-header label:nth-child(4){grid-column:1/-1}}@media screen and (max-width:759px){.visit-head .visit-header{grid-template-columns:minmax(0,1fr)}.visit-head .visit-header label:nth-child(4){grid-column:auto}.visit-who{flex-wrap:wrap}.visit-state{flex-basis:100%;justify-content:flex-start}.visit-bar{bottom:calc(68px + env(safe-area-inset-bottom));gap:4px 8px;padding:8px 12px}.visit-bar button{min-height:44px}.visit-bar .visit-actions{gap:8px}.visit-bar .visit-actions>form{flex:1 1 0}.visit-bar .visit-actions>form button{width:100%}.visit-bar .visit-hint,.visit-bar>p{flex-basis:100%;font-size:12.5px;line-height:1.35}}.visit-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.tickish{border:1px solid var(--line);color:var(--muted);background:0 0;border-radius:50%;width:26px;height:26px;padding:0;line-height:1}.tickish:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}tr:not(.muted) .tickish{border-color:var(--ok);color:var(--ok)}.record{margin:0}.record>div+div{margin-top:12px}.record dt{color:var(--muted);margin-bottom:2px;font-size:13px}.record dd{white-space:pre-wrap;margin:0}.cond-preview{background:var(--bg);border-radius:var(--radius);align-items:center;gap:12px;width:fit-content;margin-top:4px;padding:8px 10px;display:flex}.cond-preview .tooth:hover{background:0 0}.cond-preview .tooth-svg,.cond-preview .tooth-wheel,.cond-preview .gum-zone,.cond-preview .tooth-body,.cond-preview .wheel-zone{cursor:default}.doc{max-width:190mm}.doc-head{border-bottom:2px solid var(--ink);justify-content:space-between;gap:24px;margin-bottom:16px;padding-bottom:10px;display:flex}.doc-head .doc-clinic{font-size:17px;font-weight:600}.doc-head .doc-logo{width:auto;height:56px;margin-bottom:6px;display:block}.doc-head .muted{font-size:12px;line-height:1.45}.doc h1{margin:0 0 2px;font-size:19px}.doc-kind{letter-spacing:.08em;text-transform:uppercase;margin-bottom:2px;font-size:11px}.doc-meta{flex-wrap:wrap;gap:4px 28px;margin-bottom:16px;display:flex}.doc-meta div{font-size:13px}.doc-meta dt{color:var(--muted);font-size:12px}.doc-meta dd{margin:0}.doc table{margin-bottom:12px}.doc tfoot td{border-top:2px solid var(--ink);font-weight:600}.doc-signs{gap:40px;margin-top:28px;display:flex}.doc-signs div{flex:1}.doc-signs .line{border-bottom:1px solid var(--ink);height:28px;margin-bottom:4px}.doc-signs span{color:var(--muted);font-size:12px}@media print{.side,.topbar,.bottom-nav,.no-print,.cal-top .chips,.sub-banner{display:none!important}.shell,.frame,.patient-layout{display:block}.main{max-width:none;padding:0}.card{box-shadow:none;background:0 0;border:none;padding:0}.card+.card{margin-top:12px}html,body{background:#fff}a{color:inherit;text-decoration:none}table{page-break-inside:auto}tr{page-break-inside:avoid}.chart-print{page-break-inside:avoid;overflow:visible}.chart{--tooth-w:19px;--tooth-h:34px;--wheel:15px}.chart-row{gap:1px}.tooth{padding:1px}.tooth-no{padding:0 1px;font-size:9px}@page{margin:14mm}}.chart-print{pointer-events:none;--tooth-w:32px;--tooth-h:56px;--wheel:26px;margin:4px 0 18px}.chart-print .tooth-tip{display:none!important}.chart-print .tooth-no{cursor:default}.tpl-editor{align-items:flex-start;gap:16px;display:flex}.tpl-editor textarea{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px;line-height:1.5}.tpl-tags{background:var(--bg);border-radius:var(--radius);flex:0 0 300px;max-height:420px;padding:12px 14px;overflow-y:auto}.tpl-tags h3{margin:0 0 2px;font-size:13px}.tpl-tags h3+p{margin-bottom:8px;font-size:12px}.tpl-tags ul{margin:0 0 14px;padding:0;list-style:none}.tpl-tags li{margin-bottom:8px;line-height:1.35}.tpl-tags li button{text-align:left;font-size:13px;display:block}.tpl-tags code{color:var(--muted);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;display:block}.tpl-tags li span{color:var(--muted);font-size:11px}@media screen and (max-width:900px){.tpl-editor{flex-direction:column}.tpl-tags{flex:1;width:100%;max-height:none}}.cal-kebab{width:18px;height:18px;color:var(--muted);opacity:0;background:0 0;border:none;border-radius:4px;padding:0;font-size:15px;line-height:1;transition:opacity 90ms;position:absolute;top:0;right:0}.cal-visit:hover .cal-kebab,.cal-kebab:focus-visible,.cal-kebab[aria-expanded=true]{opacity:1}@media (pointer:coarse){.cal-kebab{opacity:1;width:28px;height:28px;font-size:17px}}.cal-kebab:hover{color:var(--ink);background:#ffffffb3}.cal-menu{z-index:50;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);min-width:208px;padding:5px;font-size:14px;position:fixed;box-shadow:0 8px 24px #00000024}.cal-menu form{flex-direction:column;display:flex}.cal-menu button,.cal-menu a{text-align:left;width:100%;color:var(--ink);font:inherit;cursor:pointer;background:0 0;border:none;border-radius:5px;padding:7px 10px;text-decoration:none;display:block}.cal-menu button:hover,.cal-menu a:hover{background:var(--bg)}.cal-menu .is-danger{color:var(--danger)}.cal-menu .is-danger:hover{background:var(--danger-bg)}.cal-menu-error{color:var(--danger);padding:4px 10px 6px;font-size:13px}.demo-logins{border-top:1px dashed var(--line);align-items:center;gap:8px;margin-top:14px;padding-top:14px;display:flex}.demo-logins button{padding:5px 10px;font-size:13px}.free-slots{margin-bottom:12px}.free-slots-list{flex-wrap:wrap;gap:4px;max-height:132px;margin-top:4px;display:flex;overflow-y:auto}.free-slots-list button{font-variant-numeric:tabular-nums;background:var(--bg);border:1px solid var(--line);color:var(--ink);padding:3px 7px;font-size:12px}.free-slots-list button:hover{background:var(--panel);border-color:var(--accent)}.free-slots-list button.on{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.chart-pick{--tooth-w:30px;--tooth-h:52px;--wheel:24px;margin-bottom:8px}.chart-pick .tooth-tip{display:none!important}.chart-pick .tooth.is-selected{background:var(--on-bg)}.tooth-chips{flex-wrap:wrap;gap:4px;display:inline-flex}.tooth-chips .chip{background:var(--bg);border:1px solid var(--line);font-variant-numeric:tabular-nums;border-radius:999px;align-items:center;gap:2px;padding:1px 4px 1px 7px;font-size:13px;display:inline-flex}.tooth-chips .chip.is-billed{opacity:.7;padding-right:7px}.tooth-chips .chip button{color:var(--muted);cursor:pointer;background:0 0;border:none;padding:0 3px;font-size:14px;line-height:1}.tooth-chips .chip button:hover{color:var(--danger)}.choice{display:block;position:relative}.choice-btn{border:1px solid var(--field-line);border-radius:var(--radius-sm);background:var(--panel);width:100%;min-height:38px;color:var(--ink);font:inherit;text-align:left;align-items:center;gap:8px;padding:8px 34px 8px 12px;transition:border-color 90ms,box-shadow 90ms;display:flex;position:relative;box-shadow:inset 0 1px 1px #0f172a08}.choice-btn:hover:not(:disabled){background:var(--panel);border-color:var(--muted)}.choice-btn:active:not(:disabled){transform:none}.choice-btn:disabled{background:var(--line-2);color:var(--muted);box-shadow:none;opacity:1}.choice.is-open .choice-btn,.choice-btn:focus-visible{border-color:var(--accent-2);outline:none;box-shadow:0 0 0 3px #0f766e1f}.choice-value{overflow-wrap:anywhere;flex:1;min-width:0}.choice-value.is-empty{color:var(--muted)}.choice-note{color:var(--muted);font-variant-numeric:tabular-nums;flex:none;font-size:13px}.choice-chev{border-right:1.75px solid var(--muted);border-bottom:1.75px solid var(--muted);pointer-events:none;width:7px;height:7px;margin-top:-5px;position:absolute;top:50%;right:13px;transform:rotate(45deg)}.choice.is-open .choice-chev{margin-top:-2px;transform:rotate(-135deg)}.choice-menu{z-index:60;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-sm);box-shadow:var(--shadow-lg);width:max-content;max-width:min(420px,100vw - 16px);padding:4px;position:fixed;overflow-y:auto}.choice-row{min-height:34px;color:var(--ink);cursor:pointer;border-radius:6px;align-items:center;gap:8px;padding:6px 10px;font-size:14px;display:flex}.choice-row-label{overflow-wrap:anywhere;flex:1;min-width:0}.choice-row.is-active{background:var(--line-2)}.choice-row.is-on{color:var(--accent);font-weight:600}.choice-row.is-on.is-active{background:var(--accent-bg)}.choice-row.is-off{color:var(--muted);cursor:default}@media (pointer:coarse){.choice-btn,.choice-row{min-height:44px}}.svc-cats{margin:0}.svc-cats .btnish{min-height:32px;padding:4px 12px;font-size:13px}.svc-picker{flex-direction:column;gap:8px;display:flex}.svc-picker>label{margin-bottom:0}.svc-picker input[type=search]::-webkit-search-cancel-button{-webkit-appearance:none}.svc-list{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--panel);max-height:216px;overflow-y:auto}.svc-row{border:none;border-bottom:1px solid var(--line-2);width:100%;min-height:38px;box-shadow:none;font:inherit;color:var(--ink);text-align:left;cursor:pointer;background:0 0;align-items:center;gap:10px;padding:6px 10px;font-size:13.5px;display:flex}.svc-row:last-child{border-bottom:none}.svc-row,.svc-picker{scroll-margin-bottom:96px}.svc-row:hover{background:var(--line-2)}.svc-row:active:not(:disabled){transform:none}.svc-row.is-on{background:var(--accent-bg);color:var(--accent);font-weight:500}.svc-box{border:1.5px solid var(--faint);background:var(--panel);border-radius:4px;flex:none;place-items:center;width:18px;height:18px;font-size:12px;line-height:1;display:grid}.svc-row.is-on .svc-box{background:var(--accent);border-color:var(--accent);color:#fff}.svc-name{flex:1;min-width:0}.svc-price{color:var(--muted);font-variant-numeric:tabular-nums;flex:none}.svc-row.is-on .svc-price{color:var(--accent)}.svc-chosen{font-size:12.5px}@media (pointer:coarse){.svc-row{min-height:44px}.svc-list{max-height:260px}}.cal-new-short{display:none}@media screen and (max-width:759px){.cal-bar{gap:6px;padding:6px}.cal-bar-main,.cal-bar-side{display:contents}.cal-nav{flex:100%;gap:6px}.cal-nav .cal-date{flex:1}.cal-nav .cal-date .cal-date-text{width:100%}.cal-view{flex:auto;min-width:0}.cal-bar .btnish{padding:8px 11px}.cal-bar .chips{display:none}.cal-new{right:16px;bottom:calc(76px + env(safe-area-inset-bottom));z-index:31;border-radius:50%;place-items:center;width:52px;height:52px;padding:0;font-size:26px;line-height:1;display:grid;position:fixed;box-shadow:0 6px 18px #0f766e59}.cal-new-full{display:none}.cal-new-short{display:block}}.bills{flex-direction:column;gap:8px;display:none}.bill{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);flex-direction:column;gap:9px;padding:11px 12px;display:flex}.bill.is-void{opacity:.6}.req-head{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.req-card.is-late{border-color:var(--danger)}.req-acts{align-items:stretch;gap:8px;display:flex}.req-acts button,.req-acts .btnish{justify-content:center;align-items:center;min-height:44px;display:inline-flex}.bill-top{flex-direction:column;gap:1px;min-width:0;display:flex}.bill-who{color:var(--ink);font-size:14.5px;font-weight:600;text-decoration:none}.bill-sum{justify-content:space-between;align-items:flex-end;gap:10px;display:flex}.bill-left{flex-direction:column;gap:2px;min-width:0;display:flex}.bill-left b{letter-spacing:-.01em;font-size:19px;font-weight:700}.bill-sum .btnish{flex:none;align-items:center;min-height:44px;display:inline-flex}.rows{flex-direction:column;display:none}.top-search-open{display:none}.rows>div{border-bottom:1px solid var(--line-2);flex-direction:column;gap:3px;padding:10px 0;display:flex}.rows>div:last-child{border-bottom:none}.rows .r-top{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.rows .r-top b{font-weight:600}.rows .r-sub{color:var(--ink-2);overflow-wrap:anywhere;font-size:13px}.rows>div,.rows .r-top>*{min-width:0}.rows .r-top b{overflow-wrap:anywhere}.rows .r-act{justify-content:flex-end;gap:12px;display:flex}.rows .r-act a{align-items:center;min-height:32px;display:inline-flex}.rows .r-total{flex-direction:row;justify-content:space-between;font-weight:600}.rows.is-links>div{position:relative}.rows.is-links a.row-link{color:var(--ink);text-decoration:none}.rows.is-links a.row-link:after{content:"";position:absolute;inset:0}.rows.is-links .over{z-index:1;position:relative}.rows .r-debt{color:var(--danger);white-space:nowrap;font-size:13.5px;font-weight:600}.rows .r-money{white-space:nowrap;font-weight:600}.invoice-body{flex-direction:column;gap:20px;margin-top:20px;display:flex}.invoice-head h1 a{color:var(--ink);overflow-wrap:anywhere;text-decoration:none}.invoice-head h1 a:hover{color:var(--accent)}.invoice-due{flex-wrap:wrap;align-items:center;gap:6px 12px;margin-top:14px;display:flex}.invoice-due-sum{letter-spacing:-.01em;font-size:24px;font-weight:700;line-height:30px}.invoice-due-sum.is-ok{color:var(--ok);font-size:18px}.invoice-due-sum.is-off{color:var(--muted);font-size:18px}.invoice-body>.card+.card{margin-top:0}@media screen and (max-width:860px){.bills,.rows{display:flex}.card table.stack-table{display:block;overflow:visible}.stack-table thead{display:none}.stack-table tbody,.stack-table tfoot{display:block}.stack-table tr{border-bottom:1px solid var(--line-2);flex-direction:column;gap:2px;padding:10px 0;display:flex}.stack-table tr:last-child{border-bottom:none}.card .stack-table td,.stack-table td{overflow-wrap:anywhere;border:0;min-width:0;padding:0;display:block;white-space:normal!important;text-align:left!important}.stack-table td:empty,.stack-table td.is-empty{display:none}.stack-table .stack-only{display:inline}.journal-table .j-what{order:-1;font-weight:500}.journal-table .j-when,.journal-table .j-who{color:var(--muted);font-size:13px}.wide-only,.card table.wide-only{display:none}}@media screen and (max-width:759px){.invoice-pay{order:-1}.invoice-body{gap:12px}.invoice-pay input,.invoice-pay .choice-btn,.invoice-pay button{min-height:44px}.invoice-pay input[name=amount]{font-size:19px;font-weight:700}}.hd-row{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.hd-row h2{margin:0}.label-row{margin-top:10px}.label-chip{border:1px solid var(--line)}.label-chip.is-pick{background:var(--panel);color:var(--ink-2);cursor:pointer;min-height:30px;box-shadow:none;font:inherit;font-size:12px;font-weight:500}.label-chip.is-pick:hover{background:var(--line-2);color:var(--ink)}.label-chip.is-pick:active:not(:disabled){transform:none}.label-chip.is-pick.is-on{background:var(--accent-bg);color:var(--accent);border-color:var(--accent);font-weight:600}.label-editor{margin-top:4px}.label-new{margin:12px 0 8px}.label-colours{gap:6px}@media (pointer:coarse){.label-chip.is-pick{min-height:38px;font-size:13px}}.fld-block{margin-bottom:14px}.fld-block>label{margin-bottom:0}.complaint-chips{margin-bottom:8px}.complaint-chips .chip,.complaint-editor .chip{border:1px solid var(--line);background:var(--line-2);min-height:32px;color:var(--ink-2);font:inherit;box-shadow:none;cursor:pointer;border-radius:999px;align-items:center;gap:4px;padding:0 12px;font-size:12.5px;transition:background 90ms,color 90ms,border-color 90ms;display:inline-flex}.complaint-chips .chip:hover{background:var(--accent-bg);border-color:var(--accent);color:var(--accent)}.complaint-chips .chip:active:not(:disabled){transform:none}.complaint-chips .chip.is-add{background:var(--panel);color:var(--muted);border-style:dashed}.complaint-chips .chip.is-add[aria-expanded=true]{border-style:solid;border-color:var(--accent);color:var(--accent);background:var(--accent-bg)}.complaint-editor{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--bg);margin:0 0 12px;padding:12px}.complaint-editor .row{margin-bottom:10px}.complaint-editor .chip{cursor:default;padding-right:4px}.complaint-editor .chip button{color:var(--muted);cursor:pointer;box-shadow:none;background:0 0;border:none;min-height:28px;padding:0 6px;font-size:15px;line-height:1}.complaint-editor .chip button:hover{color:var(--danger);background:0 0}.complaint-editor .chip button:active:not(:disabled){transform:none}@media (pointer:coarse){.complaint-chips .chip,.complaint-editor .chip{min-height:38px;font-size:13.5px}}.tooth-cards{margin-top:22px}.tooth-cards h3{margin-bottom:10px}.tooth-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);align-items:flex-start;gap:18px;padding:16px;display:flex}.tooth-card+.tooth-card{margin-top:10px}.tooth-card-tooth{--tooth-w:40px;--tooth-h:68px;--wheel:30px;flex-direction:column;flex:0 0 76px;align-items:center;gap:2px;display:flex}.tooth-card-tooth .tooth-tip{display:none!important}.tooth-card-tooth .tooth-no{color:var(--ink-2);font-size:14px;font-weight:600}.tooth-card-body{flex:1;min-width:0}.tooth-card-label{max-width:84px;color:var(--ink-2);text-align:center;font-size:12px;font-weight:600;line-height:1.25;display:block}.tooth-card input[type=number]{width:100%;padding:5px 8px}.tooth-card-fields{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:0 14px;display:grid}.visit-totals{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px 32px;margin-top:16px;padding-top:16px;display:flex}.visit-discount{align-items:flex-end;gap:10px;display:flex}.visit-discount input{width:90px}.totals{min-width:260px;margin:0;font-size:14px}.totals>div{justify-content:space-between;gap:24px;padding:3px 0;display:flex}.totals dt{color:var(--muted)}.totals dd{font-variant-numeric:tabular-nums;margin:0}.totals .grand{border-top:1px solid var(--line);margin-top:4px;padding-top:8px;font-size:15px;font-weight:650}.totals .grand dt{color:var(--ink)}.tooth-pick{justify-content:center;margin:2px 0 0;display:flex}.tooth-pick input{width:15px;height:15px;accent-color:var(--accent);cursor:pointer;margin:0}.chart-pick .chart-row>div{flex-direction:column;display:flex}.chart-pick .chart-row+.chart-row>div{flex-direction:column-reverse}.visit-header{background:var(--bg);border-radius:var(--radius-sm);grid-template-columns:repeat(auto-fit,minmax(190px,1fr)) auto;align-items:end;gap:0 14px;margin:14px 0 4px;padding:14px;display:grid}.visit-header label,.visit-header>button{margin-bottom:0}.setup{border-color:var(--accent);background:var(--accent-bg)}.setup-steps{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.setup-steps li{align-items:baseline;gap:10px;font-size:14px;display:flex}.setup-steps li.is-done{color:var(--muted)}.setup-mark{border:1.5px solid var(--line);background:var(--panel);height:18px;color:var(--ok);text-align:center;border-radius:50%;flex:0 0 18px;font-size:12px;line-height:15px}.setup-steps li.is-done .setup-mark{border-color:var(--ok)}.setup-line{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.setup-line .bar{background:#0f766e2e;border-radius:999px;flex:none;width:96px;height:5px;overflow:hidden}.setup-line .bar i{background:var(--accent);height:100%;display:block}.setup-line .go{margin-left:auto;font-weight:500}.kpi{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px;display:grid}.kpi .k{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);min-width:0;color:var(--ink);flex-direction:column;gap:2px;padding:12px 14px;text-decoration:none;display:flex}a.k:hover{border-color:var(--line-strong);color:var(--ink)}.kpi .lab{letter-spacing:.05em;text-transform:uppercase;color:var(--muted);font-size:11px;font-weight:600}.kpi .val{letter-spacing:-.02em;font-size:24px;font-weight:700;line-height:1.15}.kpi .val.is-warn{color:var(--warn)}.kpi .val.is-bad{color:var(--danger)}.kpi .sub{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.day-cols{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);align-items:start;gap:16px;display:grid}.day-stack{flex-direction:column;gap:16px;display:flex}.day-cols .card{padding:16px 18px}.day-cols .card+.card{margin-top:0}.day-cols .chart-top{margin-bottom:8px}.day-cols table{font-size:13.5px}.day-cols th{padding-left:8px;padding-right:8px}.day-cols td{padding:8px}.day-cols .sub{color:var(--muted);font-size:12px;font-weight:400;display:block}.day-cols .who{font-weight:500}.day-cols .num{text-align:right;white-space:nowrap;font-weight:600}.day-cols .only-phone{display:none}.day-cols .acts{text-align:right;white-space:normal;max-width:170px;line-height:1.6}.day-cols .acts .act{margin-left:8px}@media screen and (max-width:1199px){.kpi{grid-template-columns:repeat(2,minmax(0,1fr))}.day-cols{grid-template-columns:minmax(0,1fr)}}@media screen and (max-width:759px){.day-cols .card table{display:table}.day-cols .card table td,.day-cols .card table th{white-space:normal}.day-cols .card table td.t,.day-cols .card table td.num{white-space:nowrap}.day-cols .acts{max-width:none}.day-cols .col-status{display:none}.day-cols .only-phone{margin-top:4px;display:inline-block}.kpi{gap:8px;margin-bottom:12px}.kpi .k{padding:9px 11px}.kpi .val{font-size:20px}.kpi .sub{white-space:normal;font-size:11px}.day-cols,.day-stack{gap:12px}}.perm-grid{grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:14px 20px;margin-top:14px;display:grid}.perm-grid h4{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin:0 0 6px;font-size:12px}button.perm{text-align:left;width:100%;color:var(--ink);box-shadow:none;cursor:pointer;background:0 0;border:none;border-radius:5px;margin:0 0 1px;padding:3px 6px;font-size:13px;font-weight:400;display:block}button.perm:hover:not(:disabled){background:var(--line-2)}button.perm:active:not(:disabled){transform:none}button.perm:disabled{color:var(--muted);cursor:not-allowed;opacity:1}.scan-grid{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:14px;display:grid}.scan{margin:0}.scan a{display:block}.scan img{aspect-ratio:4/3;object-fit:cover;border:1px solid var(--line);border-radius:var(--radius);background:#0b1220;width:100%}.scan-pdf{aspect-ratio:4/3;border:1px dashed var(--line);border-radius:var(--radius);color:var(--muted);letter-spacing:.06em;justify-content:center;align-items:center;font-weight:600;display:flex}.scan figcaption{margin-top:6px;font-size:13px;line-height:1.35}.scan figcaption form{display:inline}.scan-form{border:1px solid var(--line);border-radius:var(--radius);padding:14px}button.icon-btn,a.icon-btn{width:30px;height:30px;color:var(--muted);box-shadow:none;background:0 0;border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;padding:0;display:inline-flex}button.icon-btn:hover:not(:disabled),a.icon-btn:hover{background:var(--line-2);border-color:var(--line);color:var(--ink);transform:none}button.icon-btn:active:not(:disabled){transform:none}button.icon-btn.danger,button.icon-btn.danger:disabled{color:var(--muted);background:0 0}button.icon-btn.danger:hover:not(:disabled){background:var(--danger-bg);border-color:var(--danger-bg);color:var(--danger)}button.icon-btn:disabled{opacity:.4}button.icon-btn.on,a.icon-btn.on{color:var(--on);background:var(--on-bg)}button.icon-btn.on:hover:not(:disabled){background:var(--on-bg);border-color:var(--on);color:var(--on)}.kebab{display:inline-flex;position:relative}.kebab-menu{z-index:30;background:var(--panel);border:1px solid var(--line);border-radius:10px;min-width:150px;padding:4px;position:absolute;top:100%;right:0;box-shadow:0 8px 24px #0f172a1f}.kebab-menu button,.kebab-menu a{width:100%;box-shadow:none;color:var(--ink);text-align:left;background:0 0;border:0;border-radius:7px;align-items:center;gap:8px;padding:7px 9px;font-size:13px;text-decoration:none;display:flex}.kebab-menu button:hover,.kebab-menu a:hover{background:var(--line-2);transform:none}.kebab-menu form{display:block}.kebab-menu .danger{color:var(--danger)}.kebab-menu .confirm-inline{padding:7px 9px;font-size:13px}.kebab-menu .danger:hover{background:var(--danger-bg)}.kebab-menu svg{flex:none;width:15px;height:15px}a.icon-btn{text-decoration:none}.confirm-inline{white-space:nowrap;align-items:center;gap:8px;font-size:13px;display:inline-flex}.row-actions{white-space:nowrap;align-items:center;gap:2px;display:flex}.rates{flex-direction:column;display:flex}.rate-row{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:10px;padding:8px 0;display:flex}.rate-row:last-child{border-bottom:0}.rate-name{flex:160px;min-width:0}.rate-input{align-items:center;gap:4px;display:inline-flex}.rate-input input{text-align:right;width:72px}.rate-referral input[name=referralMonths]{width:96px}.cat-chip{border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--panel);color:var(--ink-2);align-items:center;gap:2px;padding:3px 5px 3px 14px;font-size:14px;font-weight:500;line-height:1.45;display:inline-flex}.cat-chip.on{background:var(--accent-bg);border-color:var(--accent);color:var(--ink);font-weight:600}.cat-chip.on button.icon-btn{color:var(--muted)}.cat-chip.on button.icon-btn:hover:not(:disabled){background:var(--line-2);color:var(--ink);border-color:#0000}.cat-chip.is-editing{background:var(--panel);border-color:var(--accent);color:var(--ink);gap:6px;padding:4px 8px}.cat-chip.is-editing input{width:200px;height:30px;margin:0}.cat-problem{padding:4px 10px;font-size:12px}.book{max-width:560px;margin:0 auto;padding:24px 16px 64px}.book-head{margin-bottom:16px}.book-head h1{margin-bottom:2px;font-size:22px}.book-card{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:18px 16px}.book-card h2{margin:18px 0 8px;font-size:15px}.book-card h2:first-of-type{margin-top:0}.book-legal{color:var(--muted);margin:12px 0 0;font-size:12px;line-height:1.45}.book-legal a{color:inherit;text-decoration:underline}.book-legal a:hover{color:var(--ink-2)}.book-choices{flex-wrap:wrap;gap:8px;margin-bottom:12px;display:flex}.book-pick{border:1px solid var(--line-strong);background:var(--panel);min-height:44px;color:var(--ink);box-shadow:none;border-radius:10px;padding:10px 14px;font-size:15px;font-weight:500}.book-pick small{opacity:.7;font-size:11px;font-weight:400;display:block}.book-pick:hover{background:var(--line-2)}.book-pick.on{background:var(--accent);border-color:var(--accent);color:#fff}.book-flow{padding-bottom:8px}.book-steps{flex-direction:column;gap:10px;display:flex}.book-step{text-align:left;border:1px solid var(--line);background:var(--panel);width:100%;min-height:60px;color:var(--ink);font:inherit;box-shadow:none;border-radius:12px;align-items:center;gap:12px;padding:10px 14px;display:flex}button.book-step:hover{border-color:var(--line-strong);background:var(--panel)}.book-step.is-done{border-color:var(--faint)}.book-step-icon{background:var(--line-2);border-radius:50%;flex:none;place-items:center;width:36px;height:36px;font-size:16px;display:grid}.book-step.is-done .book-step-icon{background:var(--ink);color:#fff;font-size:14px}.book-step-text{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.book-step-text small{color:var(--muted);font-size:12px}.book-step-text b{font-size:15px;font-weight:600}.book-step-go{color:var(--muted);font-size:20px}.book-back{box-shadow:none;min-height:0;color:var(--ink-2);font:inherit;background:0 0;border:none;padding:0 0 10px;font-size:14px}.book-back:hover{color:var(--ink);background:0 0}.book-any{background:var(--line-2);border-radius:50%;flex:none;place-items:center;width:46px;height:46px;font-size:20px;display:grid}.book-doctor.is-busy{opacity:.55}.book-part{color:var(--muted);margin:6px 0 8px;font-size:13px;font-weight:600}.book-days{flex-wrap:nowrap;padding-bottom:4px;overflow-x:auto}.book-days .book-pick{white-space:nowrap}.book-bar{background:var(--panel);border-top:1px solid var(--line);border-radius:0 0 14px 14px;justify-content:space-between;align-items:center;gap:12px;margin:16px -16px -8px;padding:12px 16px;display:flex;position:sticky;bottom:0}.book-bar-text{flex-direction:column;min-width:0;display:flex}.book-bar-text b{font-size:14px}.book-bar-text small{color:var(--muted);font-size:12px}.book-bar button{min-height:44px;padding:0 22px}.confirm .confirm-when{font-size:18px;font-weight:400;line-height:1.35}.confirm .confirm-when strong{font-weight:600}.confirm .confirm-line{margin:4px 0}.confirm-answers{flex-direction:column;gap:10px;margin:18px 0 4px;display:flex}.confirm-answers .book-pick{width:100%;font-size:16px}.confirm-answers .book-pick.confirm-coming{background:var(--accent);border-color:var(--accent);color:#fff}.confirm-answers .book-pick.confirm-coming:hover{background:var(--accent-2)}.confirm .notice{margin:16px 0 0}.avatar{object-fit:cover;background:var(--line-2);border-radius:50%;flex:none;justify-content:center;align-items:center;display:inline-flex}.avatar-letters{color:#fff;letter-spacing:.5px;-webkit-user-select:none;user-select:none;font-weight:600}.clinic-logo{object-fit:contain;max-width:200px;max-height:56px}.book-doctor{text-align:left;align-items:center;gap:12px;width:100%;padding:10px 12px;display:flex}.book-doctor .book-doctor-name{min-width:0;box-shadow:none;color:inherit;font:inherit;text-align:left;background:0 0;border:0;flex:1;padding:0;font-weight:600;line-height:1.25}.book-doctor .book-doctor-name:hover{background:0 0}.book-face{box-shadow:none;background:0 0;border:0;border-radius:50%;flex:none;padding:0;line-height:0;position:relative}.book-face:hover{background:0 0}.book-face-zoom{background:var(--panel);width:18px;height:18px;color:var(--ink-2);border-radius:50%;place-items:center;font-size:10px;line-height:1;display:grid;position:absolute;bottom:-2px;right:-2px;box-shadow:0 1px 3px #0f172a4d}.book-doctor .book-doctor-spec{opacity:.75;margin-top:1px;font-size:12px;font-weight:400;display:block}.book-doctor.on .book-doctor-spec{opacity:.9}.book-doctors{flex-direction:column;gap:8px;margin-bottom:12px;display:flex}.photo-row{align-items:center;gap:12px;margin-bottom:12px;display:flex}.photo-row input[type=file]{font-size:13px}.staff-cell{align-items:center;gap:9px;display:inline-flex}.staff-spec{color:var(--muted);font-size:12px;display:block}.invite-panel{white-space:normal;max-width:min(720px,100vw - 72px);padding:6px 0;position:sticky;left:0}.invite-link{flex-wrap:wrap;align-items:flex-start;gap:8px;display:flex}.invite-link .token{flex:260px;min-width:0;margin-top:0}.invite-panel button:not(.link),.invite-panel .btnish{justify-content:center;align-items:center;min-height:40px;display:inline-flex}.invite-terms{margin:8px 0 12px}.invite-send{flex-wrap:wrap;gap:16px;display:flex}.invite-way{flex-direction:column;flex:200px;align-items:flex-start;gap:4px;min-width:0;display:flex}.invite-way form{margin:0}.invite-note{color:var(--muted);font-size:13px}.invite-note.is-failed{color:var(--danger)}.invite-link .invite-note{flex-basis:100%}.invite-reissue{margin:12px 0 0}.invite-issued{border-bottom:1px solid var(--line);margin-bottom:16px;padding-bottom:12px}@media screen and (max-width:759px){.invite-panel button:not(.link),.invite-panel .btnish{min-height:44px}.invite-reissue .link{min-height:40px}}.nav-ico{position:relative}.nav-badge{background:var(--danger);color:#fff;text-align:center;min-width:17px;height:17px;box-shadow:0 0 0 2px var(--panel);border-radius:9px;padding:0 4px;font-size:11px;font-weight:700;line-height:17px;position:absolute;top:-5px;right:-7px}.doors{flex-direction:column;gap:10px;margin-bottom:14px;display:flex}.door{border:1px solid var(--line);background:var(--panel);color:var(--ink);border-radius:12px;padding:14px 16px;text-decoration:none;display:block}.door:hover{border-color:var(--accent);background:var(--line-2)}.door-title{font-weight:600;display:block}.door-sub{color:var(--muted);margin-top:2px;font-size:13px;display:block}.door-main{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.door-main:hover{background:var(--accent-2);border-color:var(--accent-2)}.door-main .door-sub{color:#ffffffd9}.legal article{max-width:680px}.legal h1{margin-bottom:4px;font-size:28px}.legal h2{margin:26px 0 6px;font-size:16px}.legal p,.legal li{color:var(--ink-2);line-height:1.6}.legal ul{padding-left:20px}.legal li+li{margin-top:4px}.legal code{font-size:13px}.legal-top{justify-content:space-between;align-items:center;gap:12px;margin-bottom:24px;font-weight:600;display:flex}.legal-langs{gap:14px;font-weight:400;display:flex}.legal-sep{border:0;border-top:1px solid var(--line);margin:40px 0}.legal-foot{border-top:1px solid var(--line);color:var(--muted);margin-top:40px;padding-top:18px;font-size:13px}.legal-foot p{margin:0 0 4px}.legal-foot-name{color:var(--ink-2);font-weight:600}.legal-foot-links{flex-wrap:wrap;gap:6px 16px;display:flex;margin-top:8px!important}.pdoc{overflow-wrap:anywhere;max-width:720px;margin:0 auto;padding:24px 16px 64px}.pdoc-clinic{color:var(--muted);align-items:center;gap:12px;margin-bottom:20px;font-size:14px;font-weight:600;display:flex}.pdoc-clinic .clinic-logo{max-width:140px;max-height:40px}.pdoc h1{margin:0 0 16px;font-size:24px;line-height:1.25}.pdoc h2{margin:28px 0 8px;font-size:16px;line-height:1.35}.pdoc p{color:var(--ink-2);white-space:pre-line;margin:0 0 10px;line-height:1.6}.pdoc ul{margin:0 0 12px;padding-left:20px}.pdoc li{color:var(--ink-2);line-height:1.6}.pdoc li+li{margin-top:6px}@media print{.chart-print{--tooth-w:24px;--tooth-h:42px;--wheel:19px;margin:2px 0 10px}.doc-end{break-inside:avoid;page-break-inside:avoid}}.pdoc-foot{border-top:1px solid var(--line);color:var(--muted);margin-top:36px;padding-top:16px;font-size:13px}.pdoc-foot p{color:var(--muted);margin:0 0 6px}.pdoc-version{font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.pdoc-links{flex-wrap:wrap;gap:6px 16px;display:flex}@media print{.pdoc{max-width:none;padding:0}.pdoc-links{display:none}}@media screen and (max-width:860px){.main{padding:18px 14px 56px}.card table{-webkit-overflow-scrolling:touch;width:100%;display:block;overflow-x:auto}.card table th,.card table td{white-space:nowrap}.card table.month-grid{width:100%;display:table;overflow:visible}.card table td .staff-spec,.card table td .book-doctor-spec,.card table.month-grid tbody th{white-space:normal}.row{flex-wrap:wrap}.row>*{flex:100%}.row>button{flex:none}.cal-nav,.cal-top,.chart-top{flex-wrap:wrap}.cal-date .cal-date-text{min-width:0}}@media screen and (min-width:760px) and (max-width:1199px){.shell,.shell[data-side=wide]{grid-template-columns:64px minmax(0,1fr)}.side{padding:12px 6px}.rail-logo{justify-content:center;align-items:center;padding:0}.rail-logo.has-logo{align-items:center;min-height:0}.rail-logo.has-logo img{object-position:center;max-width:48px;max-height:48px}.rail-logo.has-mark .rail-art.is-wide{display:none}.rail-logo.has-mark .rail-art.is-narrow{display:block}.rail-name,.nav-cap,.side-toggle{display:none}.account.is-rail .account-btn{justify-content:center;padding:6px 0}.account.is-rail .account-name,.account.is-rail .account-chev{display:none}.account.is-rail .account-menu{bottom:16px;left:72px}.nav-group+.nav-group{border-top:1px solid var(--line);padding-top:10px}.side nav a{text-align:center;flex-direction:column;gap:3px;min-height:0;padding:6px 2px 5px;font-size:10px;line-height:1.15}.nav-lbl{white-space:normal}.nav-fold-btn,.nav-sub{display:none}.side nav a.nav-fold-link{display:flex}.topbar{padding:0 14px}.main{padding:16px 16px 32px}}@media screen and (max-width:759px){.shell,.shell[data-side=narrow]{grid-template-columns:minmax(0,1fr)}.side{display:none}.frame{padding-bottom:calc(64px + env(safe-area-inset-bottom))}.topbar{flex-wrap:wrap;gap:8px;height:auto;min-height:52px;padding:8px 12px}.topbar-left{display:contents}.topbar .account{margin-left:4px}:is(.topbar:has(.top-search.is-open) .account,.topbar:not(:has(.top-search-open)) .account){margin-left:auto}.topbar .account.is-top{display:block}.topbar{min-height:56px}.top-search{flex:100%;order:3;max-width:none;height:44px;display:none}.top-search.is-open{display:flex}.top-search-open{width:44px;height:44px;box-shadow:none;color:var(--ink-2);background:0 0;border:0;justify-content:center;align-items:center;margin-left:auto;padding:0;display:inline-flex}.top-search-open:hover:not(:disabled){background:var(--line-2);color:var(--ink)}.top-search-open[aria-expanded=true],.top-search-kbd,.top-new{display:none}.main{padding:14px 12px 32px}.card{padding:14px 12px}.bottom-nav{z-index:30;background:var(--panel);border-top:1px solid var(--line);padding:4px 4px calc(6px + env(safe-area-inset-bottom));grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;display:grid;position:fixed;bottom:0;left:0;right:0}.bottom-nav a{min-height:48px;color:var(--muted);box-shadow:none;border-radius:var(--radius-sm);background:0 0;border:none;flex-direction:column;justify-content:center;align-items:center;gap:3px;width:100%;padding:0 2px;font-size:10.5px;font-weight:500;line-height:1.1;text-decoration:none;display:flex;position:relative}.bottom-nav a[aria-current=page]{color:var(--accent);font-weight:600}.bottom-nav .nav-ico{line-height:0}.bottom-nav .nav-lbl{max-width:100%}}button.link.more-toggle{min-height:0;color:var(--muted);text-underline-offset:3px;padding:0;font-size:12.5px;font-weight:400;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;display:inline}button.link.more-toggle:hover:not(:disabled){color:var(--accent);background:0 0}.settings-index{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));align-items:start;gap:16px;display:grid}.settings-index .card+.card{margin-top:0}.settings-index h2{margin-bottom:6px}.settings-list{margin:0 -10px;padding:0;list-style:none}.settings-list li+li{border-top:1px solid var(--line)}.settings-list a{border-radius:var(--radius-sm);min-height:56px;color:var(--ink);flex-direction:column;justify-content:center;gap:2px;padding:10px;text-decoration:none;display:flex}.settings-list a b{font-size:15.5px;font-weight:600}.settings-list a .muted{font-size:13.5px;line-height:1.4}.settings-list a:hover{background:var(--line-2)}.settings-list a:hover b{color:var(--accent)}.crumb{color:var(--muted);margin:0 0 6px;font-size:13px}.crumb a{color:var(--muted)}.crumb a:hover{color:var(--accent)}.lp{--lp-ink:#1d1d1f;--lp-soft:#6e6e73;--lp-faint:#86868b;--lp-line:#ececee;--lp-brand:#355490;max-width:430px;color:var(--lp-ink);-webkit-font-smoothing:antialiased;background:#fbfbfd;margin:0 auto;padding:0 24px 40px;font-family:-apple-system,SF Pro Text,system-ui,Segoe UI,sans-serif}.lp h2{letter-spacing:-.5px;text-align:center;margin:0 0 22px;font-size:26px;font-weight:600}.lp a{text-decoration:none}.lp-hero{flex-direction:column;align-items:center;gap:24px;padding:64px 0 40px;display:flex}.lp-logo{object-fit:contain;max-width:190px;max-height:108px;animation:.8s cubic-bezier(.2,.7,.3,1) both lp-logo-in,2.4s ease-in-out .8s both lp-logo-shine}@keyframes lp-logo-in{0%{opacity:0;filter:blur(4px);transform:scale(.9)translateY(10px)}to{opacity:1;filter:none;transform:none}}@keyframes lp-logo-shine{0%,to{filter:none}45%{filter:brightness(1.14)saturate(1.06)}}@media (prefers-reduced-motion:reduce){.lp-logo{animation:none}}.lp-title{letter-spacing:-.8px;margin:0;font-size:34px;font-weight:600}.lp-only-voice{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.lp-lead-tight{margin-top:0}.lp-lead{color:var(--lp-soft);text-align:center;text-wrap:pretty;margin:-14px 0 0;font-size:17px;line-height:1.45}.lp-actions{flex-direction:column;gap:12px;width:100%;display:flex}.lp-btn{background:var(--panel);min-height:54px;color:var(--lp-ink);border:1px solid #d6d6db;border-radius:27px;justify-content:center;align-items:center;gap:9px;font-size:17px;font-weight:500;display:flex}.lp-btn-main{border-color:var(--lp-brand);background:var(--lp-brand);color:#fff;font-weight:600;box-shadow:0 8px 24px #3554903d}.lp-facts{justify-content:center;gap:28px;padding-bottom:36px;display:flex}.lp-fact{flex-direction:column;align-items:center;gap:3px;display:flex}.lp-fact-top{letter-spacing:-.3px;font-size:20px;font-weight:600}.lp-fact-sub{color:var(--lp-faint);font-size:12px}.lp-doctors{padding-bottom:44px}.lp-doctor-list{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:22px 12px;display:grid}.lp-doctor{text-align:center;flex-direction:column;align-items:center;gap:8px;display:flex}.lp-doctor-name{overflow-wrap:anywhere;font-size:15px;font-weight:600;line-height:1.3}.lp-doctor-spec{color:var(--lp-faint);margin-top:-4px;font-size:13px}.lp-steps{padding-bottom:44px}.lp-steps ol{flex-direction:column;gap:24px;margin:0;padding:0;list-style:none;display:flex}.lp-steps li{align-items:flex-start;gap:14px;display:flex}.lp-step-n{width:28px;height:28px;color:var(--lp-brand);background:#eef3fa;border-radius:50%;flex:none;justify-content:center;align-items:center;font-size:14px;font-weight:600;display:flex}.lp-steps li>span:last-child{color:var(--lp-soft);text-wrap:pretty;flex-direction:column;gap:3px;font-size:15px;line-height:1.45;display:flex}.lp-steps b{color:var(--lp-ink);font-size:17px;font-weight:600}.lp-where{padding-bottom:44px}.lp-place{background:var(--panel);min-height:64px;color:var(--lp-ink);border-radius:16px;align-items:center;gap:13px;padding:14px 18px;display:flex;box-shadow:0 1px 2px #0000000a,0 6px 16px #0000000d}.lp-place>span{color:var(--lp-faint);flex-direction:column;gap:1px;font-size:13px;display:flex}.lp-place b{color:var(--lp-ink);font-size:16px;font-weight:600}.lp-map{background:#e8e4dc;border-radius:20px;height:220px;margin-top:14px;display:block;position:relative;overflow:hidden;box-shadow:0 1px 2px #0000000d,0 10px 28px #00000012}.lp-map-canvas,.lp-map-canvas img{display:block;position:absolute}.lp-map-pin{background:var(--lp-brand);color:#fff;border-radius:50% 50% 50% 4px;justify-content:center;align-items:center;width:34px;height:34px;margin-top:-34px;margin-left:-17px;display:flex;position:absolute;transform:rotate(-45deg);box-shadow:0 3px 10px #00000047}.lp-map-pin svg{width:17px;height:17px;transform:rotate(45deg)}.lp-map-credit{background:var(--glass);color:#5b5b60;border-radius:6px;padding:2px 6px;font-size:10px;position:absolute;bottom:5px;right:6px}.lp-link{color:var(--lp-brand);margin-top:6px;font-size:15px;display:inline-block}.lp-contacts{flex-direction:column;gap:10px;padding-bottom:36px;display:flex}.lp-row{background:var(--panel);min-height:60px;color:var(--lp-ink);border-radius:16px;align-items:center;gap:13px;padding:14px 18px;display:flex;box-shadow:0 1px 2px #0000000a,0 6px 16px #0000000d}.lp-row>span{color:var(--lp-faint);flex-direction:column;gap:1px;font-size:13px;display:flex}.lp-row b{color:var(--lp-ink);font-size:16px;font-weight:600}.lp-foot{border-top:1px solid var(--lp-line);text-align:center;padding-top:24px}.lp-foot a{color:var(--lp-faint);padding:10px 14px;font-size:14px}@supports (animation-timeline:view()){@media (prefers-reduced-motion:no-preference){@keyframes lp-rise{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}.lp-rise{animation:.6s ease-out both lp-rise;animation-timeline:view();animation-range:entry 4% cover 26%}}}@media (min-width:700px){.lp{padding-bottom:64px}.lp-hero{padding-top:88px}}.lp.cp{background:#f5f6f8;max-width:none;padding:0 0 48px}.cp>:not(.cp-hero){max-width:600px;margin-left:auto;margin-right:auto;padding-left:16px;padding-right:16px}.cp h2{text-align:left;letter-spacing:-.2px;align-items:center;gap:8px;margin:0 0 12px;font-size:19px;display:flex}.cp h3{color:var(--lp-soft);margin:16px 0 8px;font-size:13px;font-weight:600}.cp-sec{margin-top:32px}.cp-hero{background:linear-gradient(140deg, var(--lp-brand), #1c2f55);color:#fff;background-position:50%;background-size:cover;align-items:flex-end;min-height:340px;display:flex;position:relative;overflow:hidden}.cp-hero.has-cover{min-height:420px}@media screen and (max-width:600px){.cp-hero.has-cover{min-height:460px}}.cp-hero.has-cover:before{content:"";z-index:1;background:linear-gradient(#0000000d 20%,#0000009e 100%);position:absolute;inset:0}.cp-hero-inner{z-index:2;flex-direction:column;align-items:flex-start;gap:6px;width:100%;max-width:600px;margin:0 auto;padding:72px 16px 24px;display:flex;position:relative}.cp-logo{object-fit:contain;background:var(--panel);border-radius:14px;width:64px;height:64px;margin-bottom:6px;padding:6px;box-shadow:0 4px 14px #0000002e}.cp-title{letter-spacing:-.5px;color:#fff;margin:0;font-size:28px;font-weight:700}.cp-line{color:#ffffffe6;align-items:center;gap:6px;margin:0;font-size:14px;display:flex}.cp-line svg{flex:none;width:16px;height:16px}.cp-dot{background:#fff9;border-radius:50%;flex:none;width:8px;height:8px}.cp-dot.is-open{background:#34d399}.cp-cta{background:#fff;border-radius:12px;align-items:center;gap:8px;margin-top:12px;padding:11px 18px;font-size:15px;font-weight:650;display:inline-flex;box-shadow:0 6px 18px #0000002e;color:var(--lp-brand)!important}.cp-cta:hover{background:#eef2fb}.cp-near{color:#ffffffd9;margin:6px 0 0;font-size:13px}.cp-chips{flex-wrap:wrap;gap:8px;margin-top:16px;display:flex}.cp-chip{border:1px solid var(--lp-line);background:#fff;border-radius:999px;align-items:center;gap:6px;padding:8px 14px;font-size:14px;display:inline-flex;color:var(--lp-ink)!important}.cp-chip svg{width:17px;height:17px}.cp-chip:hover{border-color:#c9ccd3}.cp-gallery{grid-template-columns:repeat(3,1fr);gap:6px;margin-top:20px;display:grid}.cp-gallery img{aspect-ratio:1;object-fit:cover;background:#e7e9ee;border-radius:10px;width:100%;height:100%;display:block}.cp-gallery img:first-child{grid-area:span 2/span 2}.cp-gallery.n1{grid-template-columns:1fr}.cp-gallery.n1 img:first-child{aspect-ratio:16/9;grid-area:auto}.cp-gallery.n2 img:first-child{aspect-ratio:auto;grid-row:auto}.cp-about{color:var(--lp-ink);white-space:pre-line;margin:0;font-size:15px;line-height:1.55}.cp-about+.cp-about{margin-top:6px}.cp-about a{color:var(--lp-ink)}.cp-list{border:1px solid var(--lp-line);background:#fff;border-radius:14px;margin:0;padding:0;list-style:none;overflow:hidden}.cp-list li+li{border-top:1px solid var(--lp-line)}.cp-svc{grid-template-columns:1fr auto 14px;grid-template-areas:"name price chev""meta meta chev";align-items:center;gap:2px 10px;padding:12px 14px;display:grid;color:var(--lp-ink)!important}a.cp-svc:hover{background:#fafbfc}.cp-svc-name{grid-area:name;font-size:15px;font-weight:600}.cp-svc-price{white-space:nowrap;grid-area:price;font-size:14px}.cp-svc-meta{color:var(--lp-faint);grid-area:meta;font-size:13px}.cp-svc .cp-chev{color:var(--lp-faint);grid-area:chev}.cp-doctors{grid-template-columns:1fr;gap:10px;display:grid}@media (min-width:560px){.cp-doctors{grid-template-columns:repeat(2,minmax(0,1fr))}}.lp-doctor.cp-doc{text-align:left;border:1px solid var(--lp-line);color:var(--lp-ink);background:#fff;border-radius:14px;flex-direction:row;align-items:center;gap:12px;padding:12px}a.lp-doctor.cp-doc:hover{border-color:#c9ccd3}.cp-doc-text{flex-direction:column;gap:3px;min-width:0;display:flex}.cp-doc .lp-doctor-spec{margin-top:0}.cp-doc-go{color:var(--lp-brand);font-size:13px;font-weight:600}.cp-two{grid-template-columns:1fr;gap:24px;display:grid}@media (min-width:560px){.cp-two{grid-template-columns:1fr 1fr}}.cp-box{border:1px solid var(--lp-line);background:#fff;border-radius:14px;padding:12px 14px}.cp-hours{border-collapse:collapse;width:100%;font-size:14px}.cp-hours th{text-align:left;color:var(--lp-soft);text-transform:none;letter-spacing:0;background:0 0;border:0;width:44px;padding:3px 0;font-size:14px;font-weight:500}.cp-hours td{border:0;padding:3px 0}.cp-hours tr.is-today th,.cp-hours tr.is-today td{color:var(--lp-ink);font-weight:650}.cp-link{align-items:center;gap:4px;margin-top:8px;font-size:14px;font-weight:600;display:inline-flex;color:var(--lp-brand)!important}.clinic-cover{object-fit:cover;border:1px solid var(--line);border-radius:8px;width:160px;height:90px}.gallery-edit{grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:8px;margin-bottom:10px;display:grid}.gallery-edit-item{flex-direction:column;align-items:flex-start;gap:2px;margin:0;display:flex}.gallery-edit-item img{aspect-ratio:1;object-fit:cover;border:1px solid var(--line);border-radius:8px;width:100%}.cp-rules{color:var(--lp-soft);margin:0;padding-left:18px;font-size:14px;line-height:1.55}.cp-rules li::marker{color:var(--lp-brand)}.cp .lp-foot{margin-top:32px}.cp .lp-where{padding-bottom:0}.rate-kind{background:var(--line-2);border-radius:var(--radius-sm);padding:2px;display:inline-flex}.rate-kind-pick{box-shadow:none;font:inherit;color:var(--ink-2);white-space:nowrap;background:0 0;border:none;border-radius:6px;min-height:32px;padding:0 11px;font-size:13px;font-weight:500}.rate-kind-pick:hover:not(:disabled){color:var(--ink);background:#fff9}.rate-kind-pick:active:not(:disabled){transform:none}.rate-kind-pick.is-on{background:var(--panel);color:var(--accent);box-shadow:var(--shadow);font-weight:600}@media (pointer:coarse){.rate-kind-pick{min-height:40px}}.rate-note{flex-basis:100%;font-size:12px}.crop{max-width:260px;margin-top:10px}.crop-window{aspect-ratio:1;background:var(--line-2);cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;border-radius:50%;width:100%;position:relative;overflow:hidden}.crop-window:active{cursor:grabbing}.crop-window img{pointer-events:none;max-width:none;position:absolute;top:50%;left:50%}.crop-mask{pointer-events:none;border-radius:50%;position:absolute;inset:0;box-shadow:inset 0 0 0 2px #ffffffd9,inset 0 0 0 3px #0f172a26}.crop-zoom{align-items:center;gap:10px;margin:10px 0 6px;display:flex}.crop-zoom input{flex:1}.photo-back{align-items:center;padding:24px 16px}.photo-big{background:var(--panel);border-radius:var(--radius-lg,14px);max-width:min(420px,100%);margin:0;padding:10px;position:relative;box-shadow:0 18px 48px #0f172a59}.photo-big img{object-fit:contain;border-radius:10px;width:100%;max-height:70vh;display:block}.photo-big figcaption{text-align:center;padding:10px 4px 2px;font-weight:600}.photo-close{width:34px;height:34px;box-shadow:none;background:#0f172a8c;border-radius:50%;padding:0;font-size:20px;line-height:1;position:absolute;top:16px;right:16px}.photo-close:hover{background:#0f172abf}.month-grid-scroll{margin:0 -8px;padding:0 8px;overflow-x:auto}.month-grid{border-collapse:separate;border-spacing:0;table-layout:fixed;width:100%;min-width:880px;font-size:12px}.month-grid col.month-grid-name{width:170px}.shift-cell sup{vertical-align:0;margin-left:.5px;font-size:7.5px;position:relative;top:-.35em}.month-grid th{text-align:center;letter-spacing:.04em;padding:4px 0 6px;font-size:10.5px}.month-grid th span{text-transform:lowercase;letter-spacing:0;font-weight:400;display:block}.month-grid th.is-weekend{color:var(--danger)}.month-grid th.is-today{color:var(--accent)}.month-grid tbody th{text-align:left;overflow-wrap:break-word;text-transform:none;letter-spacing:0;min-width:150px;color:var(--ink);background:var(--panel);border-right:1px solid var(--line);padding:0 10px 0 0;font-size:13px;font-weight:500;line-height:1.3;position:sticky;left:0}.month-grid td{text-align:center;border-bottom:1px solid var(--line-2);padding:0}.month-grid td.is-weekend{background:var(--panel-2)}.shift-cell{white-space:nowrap;background:var(--accent-bg);height:34px;color:var(--accent);border-radius:5px;flex-direction:column;justify-content:center;align-items:center;margin:2px 1px;padding:0 1px;font-size:10.5px;font-weight:500;line-height:1.15;display:flex;position:relative;overflow:hidden}.shift-cell.has-break:after{content:"";opacity:.55;background:currentColor;border-radius:50%;width:4px;height:4px;position:absolute;top:3px;right:3px}.shift-cell.is-off{background:var(--line-2);color:var(--line-strong)}.shift-list{border-top:1px solid var(--line-2);margin-top:14px;padding-top:10px}.shift-list summary{cursor:pointer;color:var(--ink-2);padding:4px 0 10px;font-size:13.5px;font-weight:500}.plan-cols{grid-template-columns:minmax(0,1fr) 340px;align-items:start;gap:16px;display:grid}.plan-main,.plan-side{flex-direction:column;gap:16px;min-width:0;display:flex}.plan-cols .card+.card{margin-top:0}.plan-progress{flex-direction:column;gap:4px;display:flex}.plan-progress .mrow{justify-content:space-between;align-items:baseline;margin-top:8px;font-size:13.5px;display:flex}.plan-progress .mrow b{font-weight:600}.plan-progress .mrow.is-due{border-top:1px solid var(--line-2);color:var(--danger);padding-top:10px}.plan-progress .mrow.is-due b{font-size:16px}.prog{background:var(--line-2);border-radius:999px;height:7px;overflow:hidden}.prog i{border-radius:999px;height:100%;display:block}.plan-totals{border-top:1px solid var(--line-2);margin-top:12px;padding-top:8px}.plan-totals summary{cursor:pointer;color:var(--muted);padding:4px 0 8px;font-size:13px}.plan-totals table{font-size:13px}.chair-acts{flex-wrap:nowrap}@media screen and (max-width:1439px){.plan-cols{grid-template-columns:minmax(0,1fr)}}@media print{.plan-cols{display:block}}.sub-banner{border-radius:var(--radius);background:var(--line-2);color:var(--ink-2);margin-bottom:14px;padding:10px 14px;font-size:14px;line-height:1.45}.sub-banner a{color:var(--accent);font-weight:600;text-decoration:underline}.sub-banner.is-quiet{border-radius:var(--radius-sm);padding:6px 12px;font-size:13px}.sub-banner.is-urgent{background:var(--warn-bg);color:var(--warn-ink)}.sub-banner.is-unpaid{background:var(--danger-bg);color:var(--danger)}.sub-banner.is-unpaid a{color:inherit}.cols{display:inline-flex;position:relative}.cols-btn.on{background:var(--line-2);color:var(--ink)}.cols-menu{z-index:30;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-sm);min-width:210px;box-shadow:var(--shadow-lg,0 8px 24px #0f172a1f);padding:6px;position:absolute;top:calc(100% + 4px);right:0}.cols-menu label{cursor:pointer;border-radius:6px;align-items:center;gap:8px;margin:0;padding:6px 8px;font-size:13.5px;display:flex}.cols-menu label:hover{background:var(--line-2)}.cols-menu label.is-locked{color:var(--muted);cursor:default}.cols-menu label.is-locked:hover{background:0 0}.cols-menu p{margin:6px 8px 2px;font-size:12px}.list-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px;display:flex}.day-nav .date-field{width:150px}.payday-row{justify-content:flex-start;align-items:flex-end}.payday-row>label{flex:0 0 180px;margin-bottom:0}.list-head h2{margin:0}.list-head-r{align-items:center;gap:10px;margin-left:auto;display:flex}.consents{margin-top:12px}.consent-list{margin:0;padding:0;list-style:none}.consent{border-bottom:1px solid var(--line-2);padding:12px 0}.consent:first-child{padding-top:2px}.consent:last-child{border-bottom:none}.consent-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:6px 10px;display:flex}.consent-head b{overflow-wrap:anywhere;font-weight:600}.consent-meta{color:var(--ink-2);overflow-wrap:anywhere;margin:4px 0 0;font-size:13px}.consent-withdrawn{color:var(--danger)}.consent-acts{flex-wrap:wrap;align-items:center;gap:4px 16px;margin:6px 0 0;display:flex}.consent-acts a,.consent-acts button{align-items:center;min-height:36px;display:inline-flex}.consent-confirm{border-radius:var(--radius-sm);background:var(--line-2);margin-top:10px;padding:10px 12px}.consent-confirm p{max-width:640px;margin:0 0 8px;font-size:13.5px}.consent .notice,.consent .error,.messengers .notice,.messengers .error{margin-top:8px}.messengers{border-top:1px solid var(--line);margin-top:14px;padding-top:12px}.consent-facts{gap:4px;margin:8px 0 12px;display:grid}.consent-facts>div{flex-wrap:wrap;gap:0 10px;font-size:13.5px;display:flex}.consent-facts dt{min-width:190px}.consent-facts dd{margin:0}.consent-note{max-width:680px;font-size:13px}.consent-text .pdoc.consent-body{max-width:none;margin:0;padding:8px 0 0}@media screen and (max-width:759px){.consent-facts dt{min-width:0}.consent-facts>div{flex-direction:column}}.patient-silent{border-bottom:1px solid var(--line-2);flex-wrap:wrap;grid-column:1/-1;align-items:baseline;gap:4px 8px;margin:0;padding:8px 16px;font-size:12.5px;display:flex}.visit-panel .visit-silent{color:var(--danger);margin:-4px 0 8px;font-size:13px}.area-toggle{border:1px solid var(--line);background:var(--panel);vertical-align:middle;border-radius:7px;align-items:center;display:inline-flex;overflow:hidden}.area-toggle button{min-height:0;color:var(--faint);background:var(--panel);box-shadow:none;border:0;border-radius:0;padding:3px 9px;font-size:12.5px;font-weight:400}.area-toggle button+button{border-left:1px solid var(--line)}.area-toggle button:hover:not(:disabled){background:var(--line-2);color:var(--ink-2);transform:none}.area-toggle button:active:not(:disabled){transform:none}.area-toggle button.on{background:var(--accent-bg);color:var(--accent);font-weight:650}.area-toggle button.some{background:repeating-linear-gradient(135deg, var(--accent-bg) 0 5px, #fff 5px 10px);color:var(--ink-2)}.area-toggle .error{margin:0 0 0 8px;padding:2px 8px;font-size:12px}tr.bulk-row td{background:var(--panel-2);color:var(--ink-2);font-size:13px}.area-checks{flex-wrap:wrap;align-items:center;gap:6px 18px;margin:0 0 10px;display:flex}.area-checks-label{width:100%;color:var(--ink-2);font-size:13px}button.area-check{min-height:0;box-shadow:none;color:var(--ink);background:0 0;border:0;align-items:center;gap:8px;padding:4px 0;font-size:14.5px;font-weight:400;display:inline-flex}button.area-check:hover:not(:disabled),button.area-check:active:not(:disabled){background:0 0;transform:none}button.area-check:disabled{opacity:1;cursor:default}button.area-check.is-on .svc-box{background:var(--accent);border-color:var(--accent);color:#fff}.svc-row.is-elsewhere{cursor:default;color:var(--muted);background:var(--panel-2);padding-left:38px}.svc-row.is-elsewhere .svc-price,.svc-area{font-size:12.5px}.phone-field{display:block;position:relative}.phone-row{align-items:stretch;display:flex}.phone-country{border:1px solid var(--line-strong);border-radius:var(--radius-sm) 0 0 var(--radius-sm);background:var(--panel-2);color:var(--ink-2);cursor:pointer;-webkit-user-select:none;user-select:none;border-right:0;flex:none;align-items:center;gap:6px;padding:0 10px;font-size:14px;display:inline-flex}.phone-country:hover,.phone-country[aria-expanded=true]{background:var(--line-2);color:var(--ink)}.phone-country:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.phone-country[aria-disabled=true]{cursor:default;opacity:.6;background:var(--panel-2)}.phone-row input{border-radius:0 var(--radius-sm) var(--radius-sm) 0;min-width:0}.phone-row input[aria-invalid=true]{border-color:var(--danger)}.phone-flag{object-fit:cover;border-radius:2px;flex:none;width:20px;height:14px;box-shadow:0 0 0 1px #0f172a14}.phone-problem{color:var(--danger);margin-top:4px;font-size:12.5px;display:block}.phone-countries{z-index:40;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-sm);width:min(320px,100%);min-width:260px;box-shadow:var(--shadow-lg);padding:6px;position:absolute;top:calc(100% + 4px);left:0}.phone-countries input[type=search]{margin-bottom:6px}.phone-countries ul{max-height:260px;margin:0;padding:0;list-style:none;overflow-y:auto}.phone-countries li{cursor:pointer;border-radius:6px;align-items:center;gap:8px;padding:7px 8px;font-size:14px;display:flex}.phone-countries li:hover{background:var(--line-2)}.phone-countries li.is-on{background:var(--accent-bg);color:var(--accent);font-weight:600}.phone-countries li.is-last-pinned{border-bottom:1px solid var(--line);border-radius:6px 6px 0 0;margin-bottom:4px}.phone-cname{overflow-wrap:anywhere;flex:1;min-width:0}.shell h1{font-family:var(--font-display), var(--font-sans);letter-spacing:-.025em;font-weight:800}.lang-switch{justify-content:center;align-items:center;gap:2px;margin:24px 0 0;font-size:14px;display:flex}.lang-switch button,.lang-switch button:hover:not(:disabled){box-shadow:none;color:var(--muted);background:0 0;border:0;padding:8px 10px;font-weight:500}.lang-switch button+button:before{content:"·";color:var(--muted);margin-right:12px}.lang-switch button[aria-pressed=true],.lang-switch button[aria-pressed=true]:hover:not(:disabled){color:var(--ink);cursor:default;font-weight:600}.lang-switch button:not([aria-pressed=true]):hover:not(:disabled){color:var(--accent)}.lang-switch button:disabled{opacity:1}.cp .lang-switch{color:var(--lp-faint)}.cp .lp-foot .lang-switch{margin-top:4px}.pdoc .pdoc-note{color:var(--muted);margin:0 0 12px;font-size:14px}.file-btn{flex-wrap:wrap;align-items:center;gap:6px 10px;min-width:0;display:inline-flex}.file-btn-label{cursor:pointer;margin:0;display:inline-flex;position:relative}.file-btn-input{opacity:0;cursor:pointer;border:0;width:100%;height:100%;padding:0;position:absolute;inset:0}.file-btn-label>.btnish{margin:0}.file-btn-input:focus-visible+.btnish{outline:2px solid var(--accent-2);outline-offset:2px}.file-btn-label:hover .btnish{background:var(--line-2);color:var(--ink)}.file-btn-name{overflow-wrap:anywhere;min-width:0;font-size:13px}.field-like{justify-items:start;gap:5px;min-width:0;margin-bottom:14px;display:grid}.field-like>span:first-child{color:var(--ink-2);font-size:13px;font-weight:500}.booking-link{border-radius:var(--radius-sm);background:var(--panel-2);border:1px solid var(--line);gap:8px;margin:0 0 14px;padding:12px;display:grid}.booking-link code{overflow-wrap:anywhere;font-size:13px}.booking-link .btnish,.booking-link button{align-items:center;min-height:40px;display:inline-flex}label.booking-switch{grid-template-columns:auto 1fr;align-items:center;gap:2px 10px;display:grid}label.booking-switch>span{color:var(--ink);margin:0;font-size:14px}label.booking-switch>small{grid-column:2;font-size:13px}.doc-draft-note{margin-top:3px;font-size:12.5px;display:block}.stack-only{display:none}.cond-search{flex-wrap:wrap;align-items:center;gap:8px 12px;margin:0 0 12px;display:flex}.cond-search input{max-width:360px;min-height:44px}.cover-thumb{aspect-ratio:1920/420;border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--line-2);width:240px;max-width:100%;box-shadow:none;cursor:pointer;flex:none;padding:0;display:block;position:relative;overflow:hidden}.cover-thumb:hover:not(:disabled){background:var(--line-2);border-color:var(--accent)}.cover-thumb-hint{color:#fff;background:#0000008c;border-radius:999px;padding:2px 8px;font-size:12px;font-weight:500;position:absolute;bottom:6px;right:6px}.cover-crop-back{z-index:60;background:#0f172a80;place-items:center;padding:16px;display:grid;position:fixed;inset:0;overflow:auto}.cover-crop{background:var(--panel);width:min(880px,100%);max-height:calc(100dvh - 32px);color:var(--ink);border-radius:var(--radius);box-shadow:var(--shadow-lg);gap:14px;padding:20px;display:grid;overflow:auto}.cover-crop h2{margin:0}.cover-crop-lead{margin:-6px 0 0;font-size:13.5px}.cover-crop-stage{touch-action:none;cursor:crosshair;-webkit-user-select:none;user-select:none;justify-self:center;max-width:100%;line-height:0;position:relative}.cover-crop-stage img{object-fit:fill;border-radius:var(--radius-sm);pointer-events:none;width:100%;min-width:120px;max-width:none;height:100%;min-height:80px;display:block}.cover-crop-stage[style] img{min-width:0;min-height:0}.cover-crop-frame{pointer-events:none;border:2px solid #fff;border-radius:4px;position:absolute;box-shadow:0 0 0 1px #00000073}.cover-crop-frame.is-phone{border-style:dashed;border-color:#fde047}.cover-crop-frame>span{color:#fff;background:#0009;border-radius:4px;padding:1px 6px;font-size:11px;font-weight:600;line-height:16px;position:absolute;top:4px;left:4px}.cover-crop-frame.is-phone>span{color:#fde047;top:auto;bottom:4px}.cover-crop-point{background:var(--accent);pointer-events:none;border:3px solid #fff;border-radius:50%;width:18px;height:18px;margin:-9px 0 0 -9px;position:absolute;box-shadow:0 0 0 1px #00000080}.cover-crop-zoom{align-items:center;gap:12px;margin:0;display:flex}.cover-crop-zoom>span{flex:none;margin:0}.cover-crop-zoom input{box-shadow:none;border:0;flex:1;padding:0}.cover-crop-previews{grid-template-columns:minmax(0,1fr) 130px;align-items:end;gap:14px;display:grid}.cover-crop-previews figure{min-width:0;margin:0}.cover-crop-previews figcaption{color:var(--muted);margin-top:4px;font-size:12px}.cover-crop-hero{border-radius:var(--radius-sm);background:#1c2f55;position:relative;overflow:hidden}.cover-crop-hero.is-desktop{aspect-ratio:1920/420}.cover-crop-hero.is-phone{aspect-ratio:390/460}.cover-crop-hero:after{content:"";background:linear-gradient(#0000000d 20%,#0000009e 100%);position:absolute;inset:0}.cover-crop-acts{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.cover-crop-acts .error-text{color:var(--danger);font-size:13px}@media screen and (max-width:759px){.cover-crop{padding:14px}.cover-crop-previews{grid-template-columns:minmax(0,1fr) 96px}}.done-facts{gap:8px;margin:0 0 12px;display:grid}.done-facts>div{gap:1px;display:grid}.done-facts dt{color:var(--muted);font-size:13px}.done-facts dd{overflow-wrap:anywhere;margin:0;font-weight:500}.done-facts .done-when{font-size:20px;font-weight:600;line-height:26px}.done-status{margin:0 0 10px}.done-again{color:var(--muted);align-self:center;font-size:14px}.book-note{margin:4px 0 0;font-size:13px}.book-bar-text small{overflow-wrap:anywhere}.chart-sides,.chart-picked{display:none}.picker-surfaces{flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 12px;display:flex}.picker-surfaces button{min-height:44px;padding:0 14px}@media screen and (max-width:759px){.chart-sides{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;margin:0 0 10px;display:grid}.chart-sides .btnish{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:1px;min-height:52px;line-height:1.2;display:flex}.chart-sides small{color:var(--muted);font-size:12px;font-weight:500}.chart[data-side=right] .side-left,.chart[data-side=left] .side-right{display:none}.chart:not(.chart-print) .chart-gap{border-left:0;margin-left:0;padding-left:0}.chart:not(.chart-print):not(.chart-pick)>.chart-row,.chart.chart-pick>.chart-row{--tooth-w:clamp(28px, calc(100cqw / 8 - 6px), 48px);--tooth-h:calc(var(--tooth-w) * 1.75);--wheel:calc(var(--tooth-w) * .8)}.chart.chart-pick .chart-row{gap:2px}.chart.chart-pick .tooth-no{font-size:12px}.chart-pick .tooth-pick input{width:22px;height:22px}.chart-picked{margin:8px 0 0;font-size:14px;font-weight:500;display:block}}.week-list{display:none}@media screen and (max-width:759px){.week-list{display:block}.month-grid-scroll,.month-grid-hint{display:none}.week-nav{justify-content:space-between;align-items:center;gap:8px;margin:0 0 8px;display:flex}.week-nav button{min-width:44px;min-height:44px;padding:0}.week-nav b{text-align:center;font-size:14px}.week-list ul{margin:0;padding:0;list-style:none}.week-list li{border-top:1px solid var(--line-2);gap:4px;padding:10px 0;display:grid}.week-list li.is-today .week-day{color:var(--accent)}.week-list li.is-weekend .week-day{color:var(--danger)}.week-day{color:var(--ink-2);font-size:13px;font-weight:600}.week-entry{gap:1px;font-size:14px;display:grid}.week-entry b{overflow-wrap:anywhere;font-weight:600}}.quote-lines{font-variant-numeric:tabular-nums;width:100%;margin:6px 0 0;font-size:14px}.quote-lines td{border:0;padding:4px 0}.quote-lines td:last-child{text-align:right;white-space:nowrap;padding-left:12px}.quote-lines tr.is-total td{border-top:1px solid var(--line);padding-top:6px;font-weight:700}.card table.quote-lines{display:table;overflow:visible}.card table.quote-lines td:first-child{white-space:normal}.cover-fill,.cover-box{width:100%;height:100%;position:absolute;inset:0}.cover-fill{object-fit:cover;max-width:none}.cover-box{display:block;overflow:hidden;container-type:size}.cover-blur{object-fit:cover;filter:blur(22px)brightness(.8);width:calc(100% + 64px);max-width:none;height:calc(100% + 64px);position:absolute;inset:-32px}.cover-img{--cover-w:max(100cqw, 100cqh * var(--a));--fit-w:min(100cqw, 100cqh * var(--a));--w:max(calc(var(--cover-w) * var(--z)), var(--fit-w));max-width:none;width:var(--w);height:calc(var(--w) / var(--a));left:calc((100cqw - var(--w)) * var(--x) / 100);top:calc((100cqh - var(--w) / var(--a)) * var(--y) / 100);position:absolute}.visit-done{border-radius:var(--radius-sm);background:var(--ok-bg);flex-wrap:wrap;align-items:center;gap:8px 14px;margin:12px 0 0;padding:10px 14px;display:flex}.visit-done-title{color:var(--ok);font-size:16px;font-weight:600}.visit-done-note{font-size:13px}.visit-done button{min-height:40px}button.msg-switch,button.msg-switch:hover:not(:disabled){min-height:44px;box-shadow:none;color:var(--ink);background:0 0;border:0;align-items:center;gap:10px;padding:0 4px;font-weight:500;display:inline-flex}.msg-switch-track{background:var(--field-line);border-radius:999px;flex:none;width:40px;height:24px;transition:background .12s;position:relative}.msg-switch-track>span{background:#fff;border-radius:50%;width:18px;height:18px;transition:transform .12s;position:absolute;top:3px;left:3px}.msg-switch[aria-checked=true] .msg-switch-track{background:var(--on)}.msg-switch[aria-checked=true] .msg-switch-track>span{transform:translate(16px)}.rows .r-act a.btnish{min-height:44px}.setup-all{flex-basis:100%}.setup-all summary{cursor:pointer;color:var(--muted);font-size:13px}.setup-all .setup-steps{margin-top:8px}.follow-book{white-space:nowrap;min-height:36px;padding:0 12px;font-size:13px}@media screen and (max-width:759px){.day-screen{flex-direction:column;display:flex}.day-screen>.kpi{order:2;margin-top:16px;margin-bottom:0}.follow-book{min-height:44px}}.cal-doctors-btn{white-space:normal;text-align:left;max-width:280px;line-height:1.3}@media screen and (max-width:759px){.card table.followups{display:block;overflow:visible}table.followups tbody{display:block}table.followups tr{border-bottom:1px solid var(--line-2);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:4px 12px;padding:10px 0;display:grid}table.followups td{border:0;padding:0;white-space:normal!important}table.followups td:first-child{grid-column:1/-1}table.followups td.num{text-align:left}}.void-form{flex-wrap:wrap}.void-what{flex-basis:100%;margin:0 0 4px;font-size:14px}.sender-lines{gap:10px;margin:0;display:grid}.sender-row{grid-template-columns:minmax(0,220px) minmax(0,1fr);align-items:baseline;gap:4px 16px;display:grid}.sender-row dt{font-size:16px;font-weight:600}.sender-row dd{margin:0}.sender-status{font-weight:600}.sender-row.is-on .sender-status{color:var(--ok)}.sender-row.is-warn .sender-status{color:var(--warn-ink)}.sender-row.is-off .sender-status{color:var(--muted)}@media screen and (max-width:759px){.sender-row{grid-template-columns:1fr}}.tag-buttons{flex-wrap:wrap;align-items:center;gap:6px;margin-top:8px;display:flex}.tag-buttons .tag-btn{min-height:32px;padding:0 10px;font-size:13px}@media screen and (max-width:759px){.tag-buttons .tag-btn{min-height:40px}}.msg-preview{margin:12px 0}.msg-preview-lab{color:var(--muted);margin-bottom:4px;font-size:12px;display:block}.msg-bubble{background:var(--ok-bg);white-space:pre-wrap;overflow-wrap:anywhere;border-radius:10px;max-width:520px;margin:0;padding:10px 12px;font-size:14px}.row-actions:has(.svc-switch){white-space:normal;grid-template-columns:max-content auto;align-items:center;gap:0 6px;display:grid}.row-actions:has(.svc-switch)>.kebab{grid-area:1/2/span 2}.row-actions:has(.svc-switch)>form{grid-column:1}button.svc-switch,button.svc-switch:hover:not(:disabled){gap:8px;min-height:36px;font-size:13px;font-weight:500}@media screen and (max-width:759px){button.svc-switch{min-height:44px}}.row-actions.staff-acts{white-space:normal;flex-wrap:wrap;gap:4px 14px;min-width:250px;max-width:320px}.staff-acts .link{white-space:nowrap;min-height:32px}@media screen and (max-width:759px){.staff-acts .link{min-height:44px}.row-actions.staff-acts{max-width:none}}.rate-referral{flex-wrap:wrap;flex-basis:100%;align-items:center;gap:6px 12px;display:flex}.rate-referral-lab{color:var(--muted);flex-basis:100%;font-size:13px}@media screen and (max-width:759px){.rate-referral input{min-height:44px}}.journal-table tr.j-day th{text-align:left;color:var(--ink);text-transform:none;letter-spacing:0;border-bottom:1px solid var(--line);padding:14px 8px 6px;font-size:13px;font-weight:600}.journal-table tbody:first-of-type tr.j-day th{padding-top:4px}.journal-table .j-when{color:var(--muted);font-variant-numeric:tabular-nums;font-size:14px}.journal-table .j-what{font-size:15px}.j-filters{margin-top:12px}.j-filters summary{cursor:pointer;color:var(--muted);align-items:center;min-height:32px;font-size:14px;display:flex}.j-filter-form{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));align-items:end;gap:10px 14px;margin-top:8px;display:grid}.j-filter-acts{align-items:center;gap:12px;display:flex}@media screen and (max-width:759px){.journal-table tr.j-day{display:block}.journal-table tr.j-day th{padding-left:0;display:block}.journal-table .j-what{order:-1}.j-filters summary{min-height:44px}}.pw-wrap{display:block;position:relative}.pw-wrap input{width:100%;padding-right:96px}.pw-toggle,.pw-toggle:hover:not(:disabled){min-height:36px;box-shadow:none;color:var(--accent);background:0 0;border:0;padding:0 10px;font-size:14px;font-weight:500;position:absolute;top:50%;right:4px;transform:translateY(-50%)}.form-card .back-to-login{justify-content:center;min-height:44px;margin-top:12px;display:flex}@media screen and (max-width:767px){.centered{place-items:start center;padding-top:48px}.form-card button[type=submit]{width:100%;min-height:44px}.form-card input,.pw-toggle,.pw-toggle:hover:not(:disabled){min-height:44px}}.form-card h1{font-size:24px;line-height:30px}.pdoc p,.pdoc li{font-size:16px;line-height:26px}.pdoc h2{margin:32px 0 12px;scroll-margin-top:16px;font-size:18px;font-weight:600;line-height:26px}.pdoc-top{flex-wrap:wrap;align-items:center;gap:8px 16px;margin:0 0 20px;display:flex}.pdoc-top .btnish{min-height:44px}.pdoc-toc{border:1px solid var(--line);border-radius:var(--radius-sm);margin:0 0 8px;padding:0 14px}.pdoc-toc summary{cursor:pointer;align-items:center;min-height:44px;font-weight:600;display:flex}.pdoc-toc ol{margin:0 0 12px;padding:0;list-style:none}.pdoc-toc li{font-size:15px;line-height:22px}.pdoc-toc li+li{margin-top:0}.pdoc-toc a{padding:6px 0;display:block}@media print{.pdoc-top,.pdoc-toc{display:none}}.arrivals{flex:none;position:relative}.arrivals>summary{cursor:pointer;background:var(--ok-bg);min-height:36px;color:var(--ok);border:1px solid var(--ok);white-space:nowrap;border-radius:999px;align-items:center;gap:8px;padding:0 12px;font-size:14px;font-weight:600;list-style:none;display:inline-flex}.arrivals>summary::-webkit-details-marker{display:none}.arrivals-dot{background:var(--ok);border-radius:50%;width:8px;height:8px}.arrivals.is-fresh .arrivals-dot{animation:1.2s ease-in-out 3 arrivals-pulse}@keyframes arrivals-pulse{50%{opacity:.5;transform:scale(1.8)}}@media (prefers-reduced-motion:reduce){.arrivals.is-fresh .arrivals-dot{animation:none}}.arrivals-list{z-index:30;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-sm);width:min(340px,100vw - 32px);box-shadow:var(--shadow);margin:0;padding:6px;list-style:none;position:absolute;top:calc(100% + 6px);right:0}.arrivals-list a{color:var(--ink);border-radius:8px;flex-direction:column;gap:2px;min-height:44px;padding:10px;text-decoration:none;display:flex}.arrivals-list a:hover{background:var(--bg)}.arrivals-name{overflow-wrap:anywhere;font-weight:600}.arrivals-time{color:var(--muted);font-size:13px}@media screen and (max-width:759px){.arrivals>summary{min-height:40px;padding:0 10px;font-size:13px}.arrivals-list{width:auto;position:fixed;top:60px;left:16px;right:16px}}td.wrap-any{overflow-wrap:anywhere}.top-search{position:relative}.top-hits{z-index:60;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-sm);box-shadow:var(--shadow-lg,var(--shadow));min-width:280px;max-height:min(420px,70vh);margin:0;padding:6px;list-style:none;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow-y:auto}.top-hits a{color:var(--ink);border-radius:8px;flex-direction:column;gap:1px;min-height:40px;padding:8px 10px;text-decoration:none;display:flex}.top-hits a:hover,.top-hits a.is-active{background:var(--bg)}.top-hit-name{overflow-wrap:anywhere;font-size:14px;font-weight:600}.top-hit-sub{color:var(--muted);font-size:12.5px}.top-hits-note{color:var(--muted);padding:8px 10px;font-size:13px}.top-hits-all{border-top:1px solid var(--line-2);margin-top:4px;padding-top:4px}.top-hits-all a{color:var(--accent);justify-content:center;min-height:36px;font-size:13px}@media screen and (max-width:759px){.top-hits a{min-height:44px}}[data-visit].is-focused{outline:3px solid var(--accent);outline-offset:2px;transition:outline-color .4s}@media screen and (min-width:1200px){.cal-layout>.panel{max-height:calc(100vh - 216px);position:sticky;top:72px;overflow-y:auto}}.panel .panel-actions{z-index:2;background:var(--panel);border-top:1px solid var(--line-2);margin-bottom:-24px;padding:10px 0 24px;position:sticky;bottom:-24px}.pf-toggle{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.pf-more-btn{display:none}@media screen and (max-width:759px){button.icon-btn,a.icon-btn{width:44px;height:44px}.tickish{width:40px;height:40px}button.link.more-toggle{margin:-12px -4px;padding:12px 4px}.rate-row .act,button.link.act,a.link.act{align-items:center;min-height:44px;display:inline-flex}.branch-pick .choice-btn{min-height:40px}.pf-more-btn{cursor:pointer;justify-content:center;align-items:center;min-height:44px;display:inline-flex}.pf-toggle:not(:checked)~.pf-adv{display:none}.pf-toggle:focus-visible+.pf-more-btn{outline:2px solid var(--accent);outline-offset:2px}.patient-filters>.pf-more-btn,.patient-filters>button[type=submit]{flex:calc(50% - 6px);min-height:44px}.quiet-row>.q-time{flex:calc(50% - 6px)}}@media screen{.plan-main .chart.chart-pick>.chart-row{--tooth-w:clamp(14px, calc((100cqw - 30px) / 16 - 2px), 44px)}}@media screen and (min-width:1200px){.plan-main .chart-pick .tooth-pick input{width:20px;height:20px}}
