@layer tokens{:root{--blue:#3b67ac;--blue-600:#345d9d;--blue-700:#2c4f87;--blue-50:#eef3fb;--blue-100:#dbe6f6;--navy:#252f61;--navy-900:#1b2350;--ink:#292b3b;--ink-2:#4a4e63;--muted:#6b7083;--faint:#9aa0b3;--orange:#ec6b31;--orange-600:#d95b22;--orange-50:#feeae0;--sky:#77b8e3;--sky-500:#429bdf;--sky-50:#ecf6fc;--teal:#63bfbd;--teal-600:#3a9e9b;--teal-50:#e3f4f3;--peach:#ffa280;--green:#2f9e6e;--green-50:#e3f5ec;--amber:#c98a0b;--amber-50:#fdf3dc;--red:#d64545;--red-50:#fbe7e7;--bg:#f4f6fa;--surface:#fff;--line:#e6e9f0;--line-2:#d6dbe6;--r-sm:8px;--r:12px;--r-lg:16px;--r-xl:22px;--shadow-xs:0 1px 2px #252f610f;--shadow-sm:0 1px 3px #252f6114, 0 1px 2px #252f610a;--shadow:0 6px 24px -6px #252f6124, 0 2px 6px #252f610d;--shadow-lg:0 24px 60px -12px #252f6147, 0 8px 20px -8px #252f611f;--ring:0 0 0 4px #3b67ac29;--font:"Open Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--serif:"Merriweather", Georgia, serif;--ease:cubic-bezier(.2, .8, .2, 1);--bp-phone:640px;--bp-tablet:960px;--bp-wide:1180px;--z-toast:1000;--z-overlay:900;--z-banner:800;--imp-banner-h:40px;--accent-strong:#c04d19}}@layer base{*,:before,:after{box-sizing:border-box}html,body,#root{height:100%}body{font-family:var(--font);color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;font-size:14px;line-height:1.5}button,input,textarea,select{font:inherit;color:inherit}button{cursor:pointer}:where(a,button,input,select,textarea,[tabindex]):focus-visible{outline:2px solid var(--blue);outline-offset:2px}:where(h1,h2)[tabindex="-1"]:focus{box-shadow:none;outline:none}a{color:var(--blue);text-decoration:none}h1,h2,h3,h4{margin:0;line-height:1.25}p{margin:0}::selection{background:var(--blue-100)}.serif{font-family:var(--serif)}.muted{color:var(--muted)}.faint{color:var(--faint)}.mono{font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:.92em}.row{align-items:center;gap:8px;display:flex}.grow{flex:1;min-width:0}.ellipsis{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.sr-only{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.hint{color:var(--muted);font-size:12px}@keyframes fade{0%{opacity:0}}@keyframes rise{0%{opacity:0;transform:translateY(12px)scale(.98)}}@keyframes pop{0%{opacity:0;transform:translateY(-4px)scale(.98)}}@keyframes slide-in{0%{opacity:0;transform:translate(40px)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse-ring{0%{box-shadow:0 0 #2f9e6e80}to{box-shadow:0 0 0 8px #2f9e6e00}}@keyframes flash{0%{background:var(--sky-50)}to{background:0 0}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}}@layer components{.btn{white-space:nowrap;-webkit-user-select:none;user-select:none;border:1px solid #0000;border-radius:10px;justify-content:center;align-items:center;gap:8px;height:40px;padding:0 16px;font-size:14px;font-weight:600;transition:background .15s,border-color .15s,box-shadow .15s,transform 80ms,color .15s;display:inline-flex}.btn:active:not(:disabled){transform:translateY(1px)}.btn:focus-visible{box-shadow:var(--ring);outline:none}.btn:disabled{opacity:.5;cursor:not-allowed}.btn svg{flex-shrink:0;width:17px;height:17px}.btn-primary{background:var(--blue);color:#fff;box-shadow:0 1px 2px #252f6133,inset 0 1px #ffffff1f}.btn-primary:hover:not(:disabled){background:var(--blue-600)}.btn-accent{background:var(--orange);color:#fff;box-shadow:0 4px 14px -4px #ec6b318c,inset 0 1px #ffffff2e}.btn-accent:hover:not(:disabled){background:var(--orange-600)}.btn-secondary{background:var(--surface);border-color:var(--line-2);color:var(--ink);box-shadow:var(--shadow-xs)}.btn-secondary:hover:not(:disabled){border-color:var(--blue);color:var(--blue)}.btn-ghost{color:var(--ink-2);background:0 0}.btn-ghost:hover:not(:disabled){background:var(--blue-50);color:var(--blue)}.btn-danger{color:#fff;background:#c23a3a}.btn-danger:hover:not(:disabled){background:#a83232}.btn-danger-ghost{color:var(--red);background:0 0;border-color:#f0c8c8}.btn-danger-ghost:hover:not(:disabled){background:var(--red-50)}.btn-lg{border-radius:12px;height:50px;padding:0 24px;font-size:15px}.btn-sm{border-radius:8px;height:32px;padding:0 12px;font-size:13px}.btn-icon{border-radius:10px;width:36px;height:36px;padding:0}.btn-block{width:100%}.close-btn{margin-left:auto}.field{flex-direction:column;gap:6px;display:flex}.label{letter-spacing:.04em;text-transform:uppercase;color:var(--ink-2);font-size:12px;font-weight:700}.label .req{color:var(--orange);margin-left:2px}.input,.textarea{border:1px solid var(--line-2);background:var(--surface);border-radius:10px;width:100%;height:44px;padding:0 14px;transition:border-color .15s,box-shadow .15s}.textarea{resize:vertical;height:auto;min-height:92px;padding:12px 14px;line-height:1.5}.input:hover,.textarea:hover{border-color:#c3cad9}.input:focus,.textarea:focus{border-color:var(--blue);box-shadow:var(--ring);outline:none}.input::placeholder,.textarea::placeholder{color:var(--faint)}.input-wrap{position:relative}.input-wrap>svg{width:18px;height:18px;color:var(--faint);pointer-events:none;position:absolute;top:50%;left:13px;transform:translateY(-50%)}.input-wrap>.input{padding-left:40px}.err-text{color:#b42f2f;font-weight:600}.radio{width:18px;height:18px;accent-color:var(--blue);cursor:pointer;margin:0}.radio:disabled{cursor:not-allowed;opacity:.4}.input.static{color:var(--muted);background:#f6f8fc;align-items:center;display:flex}.segmented{background:#eceff5;border-radius:12px;gap:2px;padding:4px;display:inline-flex}.segmented button{height:34px;color:var(--ink-2);transition:all .15s var(--ease);background:0 0;border:0;border-radius:9px;padding:0 14px;font-size:13px;font-weight:600}.segmented button:hover{color:var(--ink)}.segmented button[aria-pressed=true],.segmented button[aria-checked=true]{background:var(--surface);color:var(--blue);box-shadow:var(--shadow-sm)}.segmented.block{display:flex}.segmented.block button{flex:1}.chip{border:1px solid var(--line-2);background:var(--surface);height:32px;color:var(--ink-2);border-radius:999px;align-items:center;gap:6px;padding:0 12px;font-size:13px;font-weight:600;transition:all .15s;display:inline-flex}.chip:hover{border-color:var(--blue);color:var(--blue)}.chip[aria-pressed=true]{background:var(--blue-50);border-color:var(--blue);color:var(--blue)}.chip svg{width:15px;height:15px}.chip .count{color:var(--muted);background:#eceff5;border-radius:999px;padding:1px 7px;font-size:11px}.chip[aria-pressed=true] .count{background:var(--blue);color:#fff}.toggle{background:#cfd5e2;border:0;border-radius:999px;flex-shrink:0;width:40px;height:24px;padding:0;transition:background .2s;position:relative}.toggle:after{content:"";width:18px;height:18px;transition:transform .2s var(--ease);background:#fff;border-radius:50%;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #0003}.toggle[aria-checked=true]{background:var(--blue)}.toggle[aria-checked=true]:after{transform:translate(16px)}.select{position:relative}.select-trigger{border:1px solid var(--line-2);background:var(--surface);text-align:left;border-radius:10px;align-items:center;gap:10px;width:100%;min-height:44px;padding:6px 12px 6px 14px;transition:border-color .15s,box-shadow .15s;display:flex}.select-trigger:hover{border-color:#c3cad9}.select-trigger[aria-expanded=true],.select-trigger:focus-visible{border-color:var(--blue);box-shadow:var(--ring);outline:none}.select-trigger .placeholder{color:var(--muted)}.select-trigger>svg:last-child{color:var(--faint);width:18px;height:18px;margin-left:auto;transition:transform .2s}.select-trigger[aria-expanded=true]>svg:last-child{transform:rotate(180deg)}.select-menu{z-index:40;background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-lg);max-height:320px;animation:pop .16s var(--ease);border-radius:14px;padding:6px;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow:auto}.select-search{background:var(--surface);z-index:1;margin:-2px 0 0;padding:4px 2px 8px;position:sticky;top:-6px}.select-option{text-align:left;background:0 0;border:0;border-radius:9px;align-items:center;gap:10px;width:100%;padding:9px 10px;display:flex}.select-option:hover,.select-option[data-active=true],.select-option.active{background:var(--blue-50)}.select-option[aria-selected=true]{color:var(--blue);font-weight:600}.select-option .check{color:var(--blue);width:16px;height:16px;margin-left:auto}.select-group{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);padding:10px 10px 4px;font-size:11px;font-weight:700}.select-empty{text-align:center;color:var(--muted);padding:18px}.select-empty a{text-decoration:underline}.select-search .input{height:38px}.select-option{cursor:pointer}.select-option .ellipsis{display:block}.select-option.active .hint,.select-option:hover .hint,.select-option[aria-selected=true] .hint{color:var(--ink-2)}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-xs)}.card-pad{padding:20px}.card-head{align-items:center;gap:12px;padding:18px 20px 0;display:flex}.card-head h3{font-size:15px;font-weight:700}.card-head .sub{color:var(--muted);font-size:12.5px}.divider{background:var(--line);border:0;height:1px;margin:16px 0}.empty{text-align:center;color:var(--muted);justify-items:center;gap:8px;padding:48px 20px;display:grid}.empty svg{width:36px;height:36px;color:var(--faint)}.card-foot{border-top:1px solid var(--line);padding:12px 16px}.card-foot a{cursor:pointer;font-weight:600}.avatar{color:#fff;letter-spacing:.02em;border-radius:50%;flex-shrink:0;place-items:center;width:36px;height:36px;font-size:13px;font-weight:700;display:grid}.avatar.sm{width:28px;height:28px;font-size:11px}.avatar.lg{width:48px;height:48px;font-size:16px}.avatar.xl{width:64px;height:64px;font-size:20px}.pill{white-space:nowrap;border-radius:999px;align-items:center;gap:6px;height:24px;padding:0 10px;font-size:12px;font-weight:700;display:inline-flex}.pill svg{width:13px;height:13px}.pill .dot{background:currentColor;border-radius:50%;width:6px;height:6px}.pill-booked,.pill-active{background:var(--green-50);color:#237a54}.pill-expired{background:var(--amber-50);color:#855800}.pf-ref{color:var(--muted);background:#f3f5f9;border-radius:999px;align-items:center;gap:6px;padding:4px 10px;font-size:12px;display:inline-flex}.pf-ref svg{width:13px;height:13px;color:var(--green);flex-shrink:0}.tag{height:20px;color:var(--ink-2);white-space:nowrap;vertical-align:middle;background:#eceff5;border-radius:999px;align-items:center;padding:0 8px;font-size:11px;font-weight:700;display:inline-flex}.tag-red{background:var(--red-50);color:#b42f2f}.tag-blue{background:var(--blue-50);color:var(--blue)}.pf-ref{overflow-wrap:anywhere;max-width:100%}.tag-amber{color:#8a5a00;background:#fdf1d7}.truncate{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.text-tip{z-index:120;background:var(--navy-900);color:#fff;max-width:320px;box-shadow:var(--shadow-lg);pointer-events:none;white-space:normal;word-wrap:break-word;border-radius:10px;padding:10px 12px;font-size:12.5px;line-height:1.5;animation:.12s fade;position:fixed;transform:translate(-50%,-100%)}.text-tip.below{transform:translate(-50%)}.overlay{z-index:80;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#1b23506b;place-items:center;padding:20px;animation:.18s fade;display:grid;position:fixed;inset:0}.modal{background:var(--surface);border-radius:var(--r-xl);width:100%;max-width:560px;max-height:calc(100vh - 40px);box-shadow:var(--shadow-lg);animation:rise .24s var(--ease);overflow:auto}.modal.wide{max-width:1040px}.modal-head{align-items:flex-start;gap:12px;padding:22px 24px 0;display:flex}.modal-head h2{font-size:19px;font-weight:700}.modal-body{padding:20px 24px}.modal-foot{border-top:1px solid var(--line);justify-content:flex-end;gap:10px;padding:16px 24px 22px;display:flex}@media (width<=640px){.modal-head,.modal-body{padding-left:18px;padding-right:18px}.overlay:not(.drawer-overlay){place-items:stretch stretch;padding:0}.modal{border-radius:0;min-height:100%;max-height:none;max-width:none!important}}.drawer-overlay{place-items:stretch end;padding:0}.drawer{background:var(--surface);width:min(480px,100vw);height:100dvh;box-shadow:var(--shadow-lg);animation:slide-in .28s var(--ease);flex-direction:column;display:flex}.drawer-head{border-bottom:1px solid var(--line);align-items:flex-start;gap:12px;padding:22px 24px 16px;display:flex}.drawer-body{overscroll-behavior:contain;flex:1;min-height:0;padding:20px 24px;overflow-y:auto}.drawer-h{margin:24px 0 12px;font-size:14px}.drawer-body>.drawer-h:first-child{margin-top:0}@media (width<=640px){.drawer{border-radius:0;width:100%;max-width:none;height:100%}}.toasts{z-index:100;pointer-events:none;justify-items:center;gap:8px;display:grid;position:fixed;bottom:20px;left:50%;transform:translate(-50%)}.toast{pointer-events:auto;background:var(--navy-900);color:#fff;box-shadow:var(--shadow-lg);animation:rise .25s var(--ease);border-radius:12px;align-items:center;gap:10px;max-width:calc(100vw - 32px);padding:12px 16px;font-size:13.5px;font-weight:600;display:flex}.toast svg{flex-shrink:0;width:18px;height:18px}.toast.success svg{color:#6fdcaa}.toast.error svg{color:#ff9b9b}.toast.info svg{color:var(--sky)}.toast-text{gap:2px;display:grid}.toast-ref{opacity:.75;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:12px;font-weight:500}.toast-actions{align-items:center;gap:4px;margin-left:6px;display:flex}.toast-action{color:#fff;font:inherit;cursor:pointer;background:0 0;border:1px solid #fff6;border-radius:8px;padding:4px 10px;font-size:13px}.toast-action:hover{background:#ffffff1f}.toast-dismiss{color:#fff;cursor:pointer;background:0 0;border:0;border-radius:6px;padding:4px;display:inline-flex}.toast .toast-dismiss svg{color:#fff;width:16px;height:16px}.spinner{border:2.5px solid;border-right-color:#0000;border-radius:50%;width:18px;height:18px;animation:.7s linear infinite spin}.cal-head{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.cal-title{font-size:16px;font-weight:700}.cal-nav{gap:6px;display:flex}.cal-nav button{border:1px solid var(--line);background:var(--surface);width:34px;height:34px;color:var(--ink-2);border-radius:10px;place-items:center;transition:all .15s;display:grid}.cal-nav button:hover:not(:disabled){border-color:var(--blue);color:var(--blue)}.cal-nav button:disabled{opacity:.35;cursor:default}.cal-nav svg{width:18px;height:18px}.cal-dow{text-align:center;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);padding-bottom:6px;font-size:11px;font-weight:700}.wk{-webkit-user-select:none;user-select:none}.wk-months{gap:8px;margin-bottom:16px;display:flex}.wk-month{border:1px solid var(--line);background:var(--surface);height:36px;color:var(--ink-2);border-radius:999px;padding:0 16px;font-weight:600;transition:all .15s}.wk-month:hover:not(:disabled){border-color:var(--blue);color:var(--blue)}.wk-month[aria-selected=true]{background:var(--blue);border-color:var(--blue);color:#fff}.wk-month:disabled{opacity:.4;cursor:default}.wk-head{align-items:center;gap:10px;margin-bottom:12px;display:flex}.wk-title{text-align:center;flex:1;font-size:16px;font-weight:700}.wk-arrow{border:1px solid var(--line);background:var(--surface);width:36px;height:36px;color:var(--ink-2);border-radius:10px;place-items:center;transition:all .15s;display:grid}.wk-arrow:hover:not(:disabled){border-color:var(--blue);color:var(--blue)}.wk-arrow:disabled{opacity:.35;cursor:default}.wk-arrow svg{width:18px;height:18px}.wk-body{position:relative}.wk-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;display:grid}.wk-grid.dim{opacity:.45;filter:grayscale()}.wk-day{min-height:86px;color:var(--faint);transition:all .15s var(--ease);background:0 0;border:0;border-radius:12px;justify-items:center;gap:2px;padding:10px 2px;display:grid;position:relative}.wk-day.available{color:var(--blue);background:var(--blue-50)}.wk-day.available:hover{background:var(--blue-100);transform:translateY(-1px)}.wk-day.today:before{content:"";background:var(--orange);border-radius:50%;width:5px;height:5px;position:absolute;top:7px;right:7px}.wk-day.selected{box-shadow:0 6px 16px -6px #3b67acb3;background:var(--blue)!important;color:#fff!important}.wk-day:disabled{cursor:default}.wk-day.loading .wk-count{background:linear-gradient(90deg, var(--line) 0%, var(--blue-50) 50%, var(--line) 100%);background-size:200% 100%;border-radius:5px;width:70%;height:10px;margin-top:3px;animation:1.2s ease-in-out infinite shimmer}@keyframes shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.slots-loading{color:var(--muted)}.slots-loading .spinner{width:28px;height:28px;color:var(--blue)}.wk-dow{font-size:12px;font-weight:600}.wk-date{font-size:18px;font-weight:700;line-height:1.2}.wk-count{text-align:center;font-size:11.5px;font-weight:600;line-height:1.2}.wk-overlay{place-items:center;padding:8px;display:grid;position:absolute;inset:0}.wk-empty{text-align:center;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);max-width:360px;box-shadow:var(--shadow);color:var(--muted);justify-items:center;gap:6px;padding:16px 20px;display:grid}.wk-empty>svg{width:26px;height:26px;color:var(--faint)}.wk-empty b{color:var(--ink)}.wk-empty .btn{margin-top:4px}.slots-head{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:14px;display:flex}.slots-head h2{font-size:16px;font-weight:700}.slot-group+.slot-group{margin-top:18px}.slot-group-title{letter-spacing:.04em;text-transform:uppercase;color:var(--muted);align-items:center;gap:6px;margin-bottom:10px;font-size:12px;font-weight:700;display:flex}.slot-group-title svg{width:15px;height:15px}.slot-grid{grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:8px;display:grid}.slot{border:1.5px solid var(--blue-100);background:var(--surface);height:44px;color:var(--blue);transition:all .15s var(--ease);border-radius:11px;font-size:14px;font-weight:700}.slot:hover{border-color:var(--blue);background:var(--blue-50);transform:translateY(-1px)}.slot[aria-pressed=true]{background:var(--blue);color:#fff;border-color:var(--blue);box-shadow:0 6px 16px -6px #3b67acb3}.slot.taken{color:var(--faint);border-style:dashed;border-color:var(--line-2);pointer-events:none;background:0 0;text-decoration:line-through}.slots-empty{text-align:center;color:var(--muted);border:1.5px dashed var(--line-2);border-radius:var(--r-lg);place-items:center;gap:10px;padding:36px 16px;display:grid}.slots-empty svg{width:32px;height:32px;color:var(--faint)}@media (width<=560px){.wk-grid{gap:3px}.wk-day{border-radius:10px;min-height:78px;padding:8px 1px}}.wk-day.closed .wk-count{color:var(--orange-600)}.wk-day.closed .wk-date{text-decoration:line-through;text-decoration-thickness:1px}.brand-mark{background:var(--blue);border-radius:10px;place-items:center;width:36px;height:36px;display:grid;box-shadow:inset 0 1px #fff3}.brand-mark svg{width:20px;height:20px}.brand-mark{color:#fff}.date-filter{position:relative}.filter-trigger{border:1px solid var(--line-2);background:var(--surface);height:36px;color:var(--ink);border-radius:10px;align-items:center;gap:8px;padding:0 12px;font-size:13px;font-weight:600;transition:all .15s;display:inline-flex}.filter-trigger:hover{border-color:var(--blue)}.filter-trigger svg{width:16px;height:16px;color:var(--muted)}.filter-trigger .ft-label{color:var(--muted);font-weight:600}.filter-trigger.active{border-color:var(--blue);background:var(--blue-50);color:var(--blue)}.filter-trigger.active svg{color:var(--blue)}.filter-trigger.active .ft-label{color:var(--ink-2)}.filter-trigger .ft-main{height:100%;font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:8px;padding:0;display:inline-flex}.ft-clear{width:20px;height:20px;color:inherit;cursor:pointer;background:0 0;border:0;border-radius:6px;place-items:center;margin-right:-4px;padding:0;display:grid}.ft-clear:hover{background:var(--blue-100)}.df-pop{z-index:40;background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-lg);animation:pop .16s var(--ease);border-radius:16px;display:flex;position:absolute;top:calc(100% + 6px);left:0;overflow:hidden}.df-presets{border-right:1px solid var(--line);background:#fafbfd;flex-direction:column;gap:2px;min-width:150px;padding:10px;display:flex}.df-presets button{text-align:left;color:var(--ink-2);background:0 0;border:0;border-radius:9px;padding:8px 12px;font-size:13px;font-weight:600}.df-presets button:hover{background:var(--blue-50);color:var(--blue)}.df-presets button[aria-pressed=true]{background:var(--blue);color:#fff}.df-cal{width:290px;padding:14px 16px}.rc-grid{grid-template-columns:repeat(7,1fr);gap:2px 0;display:grid}.rc-day{height:34px;color:var(--ink-2);background:0 0;border:0;border-radius:0;font-size:13px;font-weight:600;transition:background .1s}.rc-day:hover:not(:disabled){background:var(--blue-50)}.rc-day.in{background:var(--blue-50);color:var(--blue)}.rc-day.edge{background:var(--blue);color:#fff;border-radius:9px}.rc-day.today:not(.edge){box-shadow:inset 0 -2px 0 var(--orange)}.rc-day:disabled{color:var(--line-2);cursor:default}@media (width<=640px){.df-pop{flex-direction:column}.df-presets{border-right:0;border-bottom:1px solid var(--line);flex-flow:wrap}}.filter-menu{min-width:240px;right:auto}.df-pop.align-right,.filter-menu.align-right{left:auto;right:0}@media (width<=640px){.df-pop,.filter-menu{z-index:90;max-height:80vh;padding-bottom:env(safe-area-inset-bottom);border-radius:18px 18px 0 0;position:fixed;top:auto;bottom:0;overflow:auto;box-shadow:0 0 0 100vmax #1b235066;left:0!important;right:0!important}.df-cal{width:auto}}:root{--up:#3fb27f;--up-soft:#a8dcc2;--minor:#f0b429;--major:#e05252;--nodata:#dfe3eb}.status-hero{border-radius:var(--r-lg);background:var(--green);color:#fff;align-items:center;gap:14px;margin-bottom:18px;padding:16px 20px;display:flex;box-shadow:0 8px 24px -10px #2f9e6e99}.status-hero svg{flex-shrink:0;width:28px;height:28px}.status-hero b{font-size:17px;display:block}.status-hero span{opacity:.9;font-size:13px}.status-card{padding:4px 24px 18px}.status-row{border-bottom:1px solid var(--line);padding:20px 0 18px}.status-row-head{align-items:center;gap:8px;margin-bottom:12px;display:flex}.status-row-head b{font-size:16px}.help-dot{color:var(--faint);cursor:help;place-items:center;display:inline-grid}.help-dot svg{width:16px;height:16px}.status-now{color:var(--green);align-items:center;gap:6px;margin-left:auto;font-size:13px;font-weight:700;display:inline-flex}.status-now svg{width:20px;height:20px}.uptime-bars{gap:3px;height:40px;display:flex}.ub{border-radius:2px;flex:1;min-width:2px;transition:opacity .12s,transform .12s}.uptime-bars:hover .ub{opacity:.55}.uptime-bars .ub:hover{opacity:1;transform:scaleY(1.08)}.lv-ok{background:var(--up-soft)}.lv-minor{background:var(--minor)}.lv-major{background:var(--major)}.lv-none{background:var(--nodata)}.uptime-axis{color:var(--muted);align-items:center;gap:14px;margin-top:10px;font-size:12.5px;display:flex}.uptime-axis i{background:var(--line-2);flex:1;height:1px}.uptime-axis .pct{color:var(--ink-2);font-weight:700}.uptime-legend{color:var(--muted);flex-wrap:wrap;gap:18px;padding-top:14px;font-size:12.5px;display:flex}.uptime-legend span{align-items:center;gap:7px;display:inline-flex}.uptime-legend i{border-radius:2px;width:10px;height:14px}.uptime-tip{z-index:120;background:var(--surface);border:1px solid var(--line);width:280px;box-shadow:var(--shadow-lg);pointer-events:none;border-radius:12px;padding:12px 14px;font-size:12.5px;animation:.1s fade;position:fixed;transform:translate(-50%,-100%)}.uptime-tip>b{margin-bottom:6px;font-size:13.5px;display:block}.ut-level{align-items:center;gap:6px;font-weight:700;display:flex}.ut-level svg{width:15px;height:15px}.ut-incident{border-top:1px solid var(--line);color:var(--ink);margin-top:8px;padding-top:8px;font-weight:600}.ut-incident span{color:var(--muted);margin-top:2px;font-weight:500;display:block}.incidents{margin:8px 0 0;padding:0 20px 6px;list-style:none}.incidents li{border-bottom:1px solid var(--line);gap:14px;padding:14px 0;display:flex}.incidents li:last-child{border-bottom:0}.inc-dot{border-radius:50%;flex-shrink:0;width:10px;height:10px;margin-top:5px}.inc-title{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.inc-title b{font-size:14px}.inc-comp{color:var(--ink-2);background:#eceff5;border-radius:999px;padding:1px 8px;font-size:11.5px;font-weight:700}.inc-meta{color:var(--muted);margin-top:3px;font-size:12.5px}.inc-res{color:var(--ink-2);margin-top:4px;font-size:13px}button.ub{cursor:default;font:inherit;border:0;padding:0}button.ub:focus-visible{outline:2px solid var(--blue);outline-offset:1px;opacity:1}.status-hero{background:#1f7a52}.status-hero span{opacity:1}.status-hero.is-degraded{background:#8a5a00;box-shadow:0 8px 24px -10px #8a5a008c}.status-hero.is-down{background:#a42f2f;box-shadow:0 8px 24px -10px #a42f2f8c}.status-hero.is-unknown,.status-hero.is-not_connected,.status-hero.is-inactive{box-shadow:none;background:#5b6382}.status-now.is-up{color:#1f7a52}.status-now.is-degraded{color:#8a5a00}.status-now.is-down{color:#a42f2f}.status-now.is-unknown{color:var(--muted)}.lv-text-ok{color:#1f7a52}.lv-text-minor{color:#8a5a00}.lv-text-major{color:#a42f2f}.status-note{font-weight:600}.lv-text-none{color:var(--muted)}.status-incidents{margin-top:18px}.card-head h2.card-title{margin:0;font-size:15px;font-weight:700}.status-tab-purpose{margin:0 0 14px}.uptime-strip{gap:1px;min-width:160px;height:18px;margin-top:4px}.uptime-strip:hover .ub,.uptime-strip .ub:hover{opacity:1;transform:none}.state-dot{background:var(--nodata);border-radius:50%;width:8px;height:8px;margin-right:4px;display:inline-block}.state-dot.sd-ok{background:var(--up)}.state-dot.sd-warn{background:var(--minor)}.state-dot.sd-down{background:var(--major)}.health-pill{color:#3f4459;background:#eceff5;border-radius:999px;margin-left:8px;padding:1px 8px;font-size:11.5px;font-weight:700;display:inline-block}.health-pill.hp-healthy{color:#1f7a52;background:#e3f4ec}.health-pill.hp-degraded{color:#8a5a00;background:#fdf1d6}.health-pill.hp-down{color:#a42f2f;background:#fbe3e3}.health-table tr.clickable{cursor:pointer}.c-uptime .pct{color:var(--ink-2);font-weight:700}.check-inline{color:var(--ink-2);align-items:center;gap:6px;font-size:13px;display:inline-flex}.bridge-dot.warn{background:var(--minor);animation:none}.bridge-dot.down{background:var(--major);animation:none}a.bridge{text-decoration:none;display:block}.route-error{place-items:center;min-height:50vh;padding:24px 16px;display:grid}.route-error-card{text-align:center;justify-items:center;gap:12px;max-width:420px;display:grid}.route-error-card>svg{color:#a86f00;width:28px;height:28px}.route-error-card p{margin:0}.route-error-ref{color:var(--muted);font-size:12px}.overview-kpis{margin-bottom:18px}.kpi-top h2.kpi-label{font:inherit;margin:0}.kpi-value small{font-size:13px}.kpi-sub{color:var(--muted);margin-top:4px;font-size:13px}.overview-section+.overview-section{margin-top:18px}.overview-section .card-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.health-cell{white-space:nowrap;gap:2px;font-size:13px;display:grid}.pager{border-top:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:12px;padding:12px 16px;font-size:13px;display:flex}.pager .btn svg{width:15px;height:15px}.pager-pages{align-items:center;gap:4px;margin-left:auto;display:flex}.pager-page{min-width:32px}.trend{padding-bottom:22px;position:relative}.trend svg{width:100%;display:block;overflow:visible}.trend-grid{stroke:var(--line);stroke-width:1px;stroke-dasharray:3 4}.trend-line{fill:none;stroke:var(--blue);stroke-width:2.5px;stroke-linejoin:round;stroke-linecap:round}.trend-dot{background:var(--blue);width:10px;height:10px;box-shadow:0 0 0 4px var(--blue-100);border-radius:50%;margin:-5px 0 0 -5px;position:absolute}.trend-axis{height:16px;color:var(--muted);font-size:11.5px;font-weight:600;position:absolute;bottom:0;left:0;right:0}.trend-axis span{white-space:nowrap;position:absolute;transform:translate(-50%)}.trend-axis span:first-child{transform:none}.trend-axis span:last-child{transform:translate(-100%)}.contact-block{text-align:left;gap:8px;display:grid}.cb-row{border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:14px;align-items:center;gap:12px;padding:12px 14px;display:flex}a.cb-row:hover{border-color:var(--blue)}.cb-ic{background:var(--blue-50);width:38px;height:38px;color:var(--blue);border-radius:11px;flex-shrink:0;place-items:center;display:grid}.cb-ic svg{width:18px;height:18px}.cb-row small{color:var(--muted);font-size:12.5px;display:block}.cb-row b{word-break:break-word;font-size:15px;display:block}.site-message{place-items:center;min-height:100%;padding:24px 16px;display:grid}.site-message .card{gap:10px;width:min(560px,100%);display:grid}.site-message h1{font-size:22px}.site-message dl{grid-template-columns:max-content 1fr;gap:4px 16px;margin:6px 0 0;display:grid}.site-message dt{color:var(--muted)}.site-message dd{margin:0}.auth-page{background:var(--bg);place-items:center;min-height:100vh;padding:24px 16px;display:grid}.auth-card{gap:16px;width:min(420px,100%);display:grid}.auth-card .brand-row{align-items:center;gap:10px;font-weight:700;display:flex}.auth-card .brand-row .brand-mark{width:32px;height:32px}.auth-card h1{font-size:22px}.auth-card form{gap:14px;display:grid}.auth-banner{background:var(--blue-50);color:var(--ink-2);border-radius:12px;align-items:flex-start;gap:10px;padding:10px 14px;font-size:14px;display:flex}.auth-banner.error{background:var(--red-50);color:#b42f2f}.auth-banner>svg{flex-shrink:0;width:18px;height:18px;margin-top:1px}.picker-list{gap:8px;display:grid}.picker-item{border:1px solid var(--line);text-align:left;cursor:pointer;background:#fff;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;width:100%;padding:12px 14px;display:flex}.picker-item:hover{border-color:var(--blue)}.env-label{background:var(--amber-50);color:#8a5a00;letter-spacing:.06em;text-transform:uppercase;border-radius:6px;align-items:center;height:22px;padding:0 8px;font-size:11px;font-weight:700;display:inline-flex}.check-items{gap:10px;margin:0;padding:0;list-style:none;display:grid}.check-items li{align-items:center;gap:10px;display:flex}.check-items svg{flex-shrink:0;width:18px;height:18px}.check-items .ok svg{color:#237a54}.check-items .no svg{color:var(--muted)}.temp-secret{align-items:center;gap:8px;display:flex}.temp-secret .input.static{font-family:var(--mono,ui-monospace, monospace);color:var(--ink);flex:1}.form-grid{gap:14px;display:grid}.form-grid.two{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.form-section-title{font-size:15px;font-weight:700}.top-tab[aria-current=page]{background:var(--surface);color:var(--blue);box-shadow:var(--shadow-sm)}.top-tab{text-decoration:none}.env-row{padding:0 12px 10px}.grid.two{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.detail-head{flex-wrap:wrap;align-items:center;gap:8px 12px;display:flex}.auth-card p a,.site-message p a{text-decoration:underline}.pw-field{position:relative}.pw-field>.input{padding-right:48px}.pw-toggle{width:36px;height:36px;color:var(--muted);background:0 0;border:0;border-radius:8px;place-items:center;padding:0;display:inline-grid;position:absolute;top:50%;right:4px;transform:translateY(-50%)}.pw-toggle:hover{color:var(--ink);background:var(--bg)}.pw-toggle svg{width:18px;height:18px}.auth-link{color:var(--blue);justify-self:center;font-size:13.5px;font-weight:600;text-decoration:underline}}@layer app{.imp-banner{z-index:var(--z-banner);min-height:var(--imp-banner-h);background:var(--amber-50);color:#5e4104;border-bottom:1px solid #f2dca6;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:4px 16px;padding:8px 20px;font-size:13.5px;display:flex;position:sticky;top:0}.imp-banner b{font-weight:700}.imp-inactive{font-weight:600}.imp-exit{color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;padding:0 2px;font-weight:700;text-decoration:underline}.imp-exit:disabled{cursor:progress;opacity:.7}.imp-ends{font-variant-numeric:tabular-nums;color:#6b4e0d}body:has(.imp-banner) .sidebar{top:var(--imp-banner-h);height:calc(100vh - var(--imp-banner-h))}.admin{grid-template-columns:252px 1fr;min-height:100%;display:grid}.sidebar{background:linear-gradient(180deg, var(--navy) 0%, var(--navy-900) 100%);color:#c9cfe6;flex-direction:column;gap:4px;height:100vh;padding:20px 14px;display:flex;position:sticky;top:0}.brand{color:#fff;align-items:center;gap:10px;padding:4px 8px 20px;display:flex}.brand b{letter-spacing:.01em;font-size:14.5px;font-weight:700;display:block}.brand span:not(.avatar):not(.pt-logo):not(.brand-mark):not(.pt-secure):not(.s-ic){color:#98a0c4;font-size:11.5px;display:block}.nav-section{letter-spacing:.1em;text-transform:uppercase;color:#7880a8;padding:14px 12px 6px;font-size:10.5px;font-weight:700}.nav-item{color:#c9cfe6;text-align:left;background:0 0;border:0;border-radius:10px;align-items:center;gap:12px;width:100%;height:42px;padding:0 12px;font-weight:600;transition:all .15s;display:flex}.nav-item svg{opacity:.85;width:19px;height:19px}.nav-item:hover{color:#fff;background:#ffffff0f}.nav-item.active{color:#fff;box-shadow:inset 3px 0 0 var(--sky);background:#77b8e329}.nav-item .badge{background:var(--accent-strong);color:#fff;border-radius:999px;margin-left:auto;padding:1px 8px;font-size:11px;font-weight:700}.sidebar-foot{margin-top:auto}.bridge{background:#ffffff0d;border:1px solid #ffffff14;border-radius:14px;padding:14px}.bridge-row{color:#fff;align-items:center;gap:8px;font-size:12.5px;font-weight:600;display:flex}.bridge-dot{background:#4ad295;border-radius:50%;width:8px;height:8px;animation:2s infinite pulse-ring}.bridge-meta{color:#98a0c4;gap:2px;margin-top:6px;font-size:11.5px;display:grid}.bridge-meta b{color:#d5daf0;font-weight:600}.main{flex-direction:column;min-width:0;display:flex}.topbar{z-index:30;-webkit-backdrop-filter:saturate(1.4)blur(10px);backdrop-filter:saturate(1.4)blur(10px);background:#f4f6fad9;border-bottom:1px solid #0000;align-items:center;gap:16px;height:68px;padding:0 28px;display:flex;position:sticky;top:0}.topbar.scrolled{border-bottom-color:var(--line)}.topbar-actions{align-items:center;gap:10px;margin-left:auto;display:flex}.user-chip{border-radius:999px;align-items:center;gap:10px;padding:4px;display:flex}.user-chip b{font-size:13px;display:block}.user-chip span:not(.avatar):not(.pt-logo):not(.brand-mark):not(.pt-secure):not(.s-ic){color:var(--muted);font-size:11.5px;display:block}.page{width:100%;max-width:1360px;margin:0 auto;padding:8px 28px 48px}.page-head{flex-wrap:wrap;align-items:flex-end;gap:16px;margin:12px 0 22px;display:flex}.page-head h1{letter-spacing:-.01em;font-size:26px;font-weight:800}.page-head p{color:var(--muted);margin-top:4px}.page-head .actions{gap:10px;margin-left:auto;display:flex}.grid{gap:18px;display:grid}.kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.kpi{padding:18px 20px;position:relative;overflow:hidden}.kpi-top{color:var(--muted);align-items:center;gap:10px;font-size:13px;font-weight:600;display:flex}.kpi-icon{border-radius:10px;place-items:center;width:34px;height:34px;display:grid}.kpi-icon svg{width:18px;height:18px}.kpi-value{letter-spacing:-.02em;color:var(--ink);margin-top:12px;font-size:30px;font-weight:800}.kpi-value small{color:var(--muted);margin-left:4px;font-size:15px;font-weight:700}.kpi-period{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin:-6px 0 10px;font-size:12px;font-weight:700}.table-wrap{overflow-x:auto}table.table{border-collapse:separate;border-spacing:0;width:100%}.table th{text-align:left;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);border-bottom:1px solid var(--line);white-space:nowrap;background:#fafbfd;padding:12px 16px;font-size:11.5px;font-weight:700}.table th:first-child{border-top-left-radius:var(--r-lg)}.table th:last-child{border-top-right-radius:var(--r-lg)}.table td{border-bottom:1px solid var(--line);vertical-align:middle;padding:14px 16px;font-size:13.5px}.table tbody tr{transition:background .12s}.table tbody tr.clickable{cursor:pointer}.table tbody tr.clickable:hover{background:#f8fafd}.table tbody tr:last-child td{border-bottom:0}.table tr.flash td{animation:2.5s flash}.cell-person{align-items:center;gap:12px;display:flex}.cell-person b{font-weight:700;display:block}.cell-person span:not(.avatar):not(.pt-logo):not(.brand-mark):not(.pt-secure):not(.s-ic),.cell-sub{color:var(--muted);font-size:12px;display:block}.toolbar{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:10px;padding:16px;display:flex}.toolbar .search{width:260px}.toolbar .search .input{height:36px}.toolbar.filters .search{flex:220px;width:auto;max-width:360px}.toolbar.filters .segmented button{height:28px}.appt-table .day-head td{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#f6f8fc;padding:16px 16px 12px}.appt-table tbody tr.day-head:first-child td{border-top:0}.day-head-inner{align-items:center;gap:14px;display:flex}.day-tile{background:var(--surface);width:44px;box-shadow:0 0 0 1px var(--line), 0 2px 6px -2px #252f612e;text-align:center;border-radius:10px;flex-direction:column;flex-shrink:0;display:flex;overflow:hidden}.day-tile .m{background:var(--blue);color:#fff;letter-spacing:.08em;text-transform:uppercase;padding:2px 0;font-size:10px;font-weight:800}.day-tile .d{color:var(--navy);padding:5px 0 6px;font-size:18px;font-weight:800;line-height:1}.day-head b{color:var(--ink);font-size:15px;font-weight:800;display:block}.day-head span{color:var(--muted);font-size:12.5px}.day-head .rel{color:var(--blue);font-weight:700}.day-head.today .day-tile .m{background:var(--accent-strong)}.day-head.today .rel{color:var(--accent-strong)}.day-head.past .day-tile .m{background:var(--muted)}.day-head.past .rel{color:var(--muted)}.appt-table .day-row td:first-child{padding-left:74px;position:relative}.appt-table .day-row td:first-child:before{content:"";background:var(--blue-100);width:2px;position:absolute;top:0;bottom:0;left:37px}.appt-table .day-row td:first-child:after{content:"";background:var(--surface);border:2px solid var(--blue);border-radius:50%;width:10px;height:10px;margin-top:-5px;position:absolute;top:50%;left:33px}.appt-table .day-row:hover td{background:#fafcff}.appt-table .day-row td{white-space:nowrap}.appt-table .day-row td:first-child{padding-left:66px}.appt-table .day-row td:first-child:before{left:37px}.time-cell{white-space:nowrap}.time-cell b{font-size:14px}.bridge.clickable{cursor:pointer;transition:background .15s,border-color .15s}.bridge.clickable:hover{background:#ffffff17;border-color:#ffffff29}.timeline{margin:0;padding:0;list-style:none;position:relative}.timeline li{gap:14px;padding-bottom:18px;display:flex;position:relative}.timeline li:not(:last-child):before{content:"";background:var(--line);width:2px;position:absolute;top:34px;bottom:2px;left:15px}.timeline .t-icon{border-radius:50%;flex-shrink:0;place-items:center;width:32px;height:32px;display:grid}.timeline .t-icon svg{width:15px;height:15px}.timeline b{font-size:13.5px;display:block}.timeline span{color:var(--muted);font-size:12px}.kv{grid-template-columns:120px 1fr;gap:10px 14px;font-size:13.5px;display:grid}.kv dt{color:var(--muted)}.kv dd{margin:0;font-weight:600}.link-box{background:var(--blue-50);border:1px solid var(--blue-100);border-radius:12px;align-items:center;gap:8px;padding:6px 6px 6px 14px;display:flex}.link-box .url{min-width:0;color:var(--blue);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:13.5px;font-weight:600;overflow:hidden}.ci{grid-template-columns:minmax(0,1fr) 380px;min-height:560px;display:grid}.ci-form{flex-direction:column;gap:20px;padding:24px 28px;display:flex}.ci-side{background:linear-gradient(160deg, var(--sky-50), #f3f6fc 60%);border-left:1px solid var(--line);border-top-right-radius:var(--r-xl);border-bottom-right-radius:var(--r-xl);flex-direction:column;gap:14px;padding:24px;display:flex}.ci-steps{align-items:center;gap:6px;display:flex}.ci-step{color:var(--faint);align-items:center;gap:8px;font-size:13px;font-weight:600;display:flex}.ci-step .n{width:24px;height:24px;color:var(--muted);background:#eceff5;border-radius:50%;place-items:center;font-size:12px;transition:all .2s;display:grid}.ci-step.active{color:var(--ink)}.ci-step.active .n{background:var(--blue);color:#fff;box-shadow:0 0 0 4px var(--blue-100)}.ci-step.done .n{background:var(--green);color:#fff}.ci-step.done .n svg{width:13px;height:13px}.ci-sep{background:var(--line);border-radius:2px;width:28px;height:2px}.ci-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.ci-foot{justify-content:space-between;gap:10px;margin-top:auto;padding-top:8px;display:flex}.patient-pick{gap:6px;max-height:340px;margin:-2px;padding:2px;display:grid;overflow:auto}.patient-opt{border:1.5px solid var(--line);background:var(--surface);text-align:left;border-radius:12px;align-items:center;gap:12px;width:100%;padding:10px 12px;transition:all .15s;display:flex}.patient-opt:hover{border-color:var(--blue-100);background:#fafcff}.patient-opt[aria-pressed=true]{border-color:var(--blue);background:var(--blue-50);box-shadow:var(--ring)}.patient-opt b{font-size:14px;display:block}.patient-opt .meta{color:var(--muted);flex-wrap:wrap;gap:4px 12px;font-size:12px;display:flex}.patient-opt .meta span{align-items:center;gap:4px;display:inline-flex}.patient-opt .meta svg{width:12px;height:12px}.type-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:8px;max-height:268px;margin:-2px;padding:2px;display:grid;overflow:auto}.type-opt{border:1.5px solid var(--line);background:var(--surface);text-align:left;border-radius:12px;align-items:center;gap:10px;min-height:52px;padding:10px 12px;transition:all .15s;display:flex}.type-opt:hover{border-color:var(--blue-100);background:#fafcff}.type-opt[aria-pressed=true]{border-color:var(--blue);background:var(--blue-50);box-shadow:var(--ring)}.type-opt .t-ic{width:32px;height:32px;color:var(--blue);background:#eef2f8;border-radius:9px;flex-shrink:0;place-items:center;display:grid}.type-opt[aria-pressed=true] .t-ic{background:var(--blue);color:#fff}.type-opt .t-ic svg{width:16px;height:16px}.type-opt b{font-size:13px;font-weight:600;line-height:1.3;display:block}.type-opt span{color:var(--muted);font-size:11.5px}.channel{border:1.5px solid var(--line);background:var(--surface);border-radius:14px;align-items:center;gap:14px;padding:14px 16px;display:flex}.channel.on{border-color:var(--blue);background:#fafcff}.channel .c-ic{background:var(--blue-50);width:40px;height:40px;color:var(--blue);border-radius:12px;place-items:center;display:grid}.channel .c-ic svg{width:20px;height:20px}.channel b{display:block}.channel span{color:var(--muted);font-size:12.5px}.phone{width:100%;box-shadow:var(--shadow-lg);background:#fff;border:8px solid #1d2240;border-radius:30px;flex-direction:column;gap:10px;padding:14px 12px 18px;display:flex;position:relative}.phone:before{content:"";background:#1d2240;border-radius:0 0 12px 12px;width:80px;height:18px;position:absolute;top:-1px;left:50%;transform:translate(-50%)}.phone-head{text-align:center;color:var(--muted);padding-top:12px;font-size:11px}.phone-head b{color:var(--ink);font-size:12.5px;display:block}.bubble{max-width:92%;color:var(--ink);background:#eceef3;border-radius:18px 18px 18px 6px;align-self:flex-start;padding:10px 13px;font-size:12.5px;line-height:1.45}.bubble a{color:#2a72d6;word-break:break-all;text-decoration:underline}.bubble-time{color:var(--faint);text-align:center;font-size:10.5px}.success-burst{text-align:center;justify-items:center;gap:10px;padding:24px 8px 8px;display:grid}.success-icon{background:var(--green);color:#fff;width:72px;height:72px;box-shadow:0 0 0 10px var(--green-50), 0 14px 30px -8px #2f9e6e99;animation:rise .4s var(--ease);border-radius:50%;place-items:center;display:grid}.success-icon svg{width:34px;height:34px}@media (width<=1180px){.ci{grid-template-columns:minmax(0,1fr)}.ci-side{border-left:0;border-top:1px solid var(--line);border-radius:0 0 var(--r-xl) var(--r-xl)}}@media (width<=960px){.admin{grid-template-columns:1fr}.sidebar{flex-flow:wrap;align-items:center;height:auto;padding:10px 12px;position:static}.sidebar .brand{padding:0 8px 0 0}.sidebar .nav-section,.sidebar-foot,.brand span:not(.avatar):not(.pt-logo):not(.brand-mark):not(.pt-secure):not(.s-ic){display:none}.nav-item{width:auto;height:36px}.topbar{padding:0 16px}.page{padding:8px 16px 40px}}@media (width<=640px){.kpis{gap:8px}.kpi{padding:12px}.kpi-top{flex-direction:column;align-items:flex-start;gap:6px;font-size:12px;line-height:1.3}.kpi-icon{width:28px;height:28px}.kpi-value{margin-top:6px;font-size:22px}.ci-form{padding:20px 16px}.toolbar.filters .search{width:100%}.ci-grid{grid-template-columns:1fr}.ci-steps .ci-step .txt,.user-chip>div{display:none}}.nav-list{flex-direction:column;gap:4px;display:flex}.label-short,.topbar-brand{display:none}.type-filter{width:200px}.table-wrap{container:tbl/inline-size}.rtable .c-pf .pf-ref,.rtable .c-source .src-name{white-space:nowrap}.topbar{padding-left:max(28px,50% - 652px);padding-right:max(28px,50% - 652px)}@media (width>=1800px){.page{max-width:1680px}.topbar{padding-left:max(28px,50% - 812px);padding-right:max(28px,50% - 812px)}}@media (width<=960px){.sidebar{scrollbar-width:none;gap:6px;overflow-x:auto}.nav-list{flex-direction:row;gap:2px}.nav-item{white-space:nowrap;padding:0 10px}.topbar{padding-left:16px;padding-right:16px}}@container tbl (width<=1000px){.rtable thead{display:none}.rtable{display:block}.rtable tbody{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:14px;display:grid}.rtable tbody tr{border:1px solid var(--line);background:var(--surface);border-radius:14px;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-content:start;gap:12px 16px;padding:16px;display:grid}.rtable tbody tr.clickable:hover{border-color:var(--blue-100);background:#fafcff}.rtable td{overflow-wrap:anywhere;min-width:0;display:block;white-space:normal!important;border:0!important;padding:0!important}.rtable td[data-label]:before{content:attr(data-label);letter-spacing:.05em;text-transform:uppercase;color:var(--muted);margin-bottom:3px;font-size:11px;font-weight:700;display:block}.rtable .truncate{white-space:normal;max-width:none!important}.rtable tbody tr{grid-template-columns:repeat(3,minmax(0,1fr))}.users-table tbody tr{grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;grid-template-areas:"patient patient actions""role twofa twofa""last last last"}.appt-table tbody tr.day-row{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-areas:"time booked""type source""provider provider""pf pf"}.appt-table .day-row:hover td{background:0 0}.rtable .c-patient{grid-area:patient}.rtable .c-status{grid-area:status;justify-self:end}.rtable .c-type{grid-area:type}.rtable .c-provider{grid-area:provider}.rtable .c-location{grid-area:location}.rtable .c-sent{grid-area:sent}.rtable .c-actions{grid-area:actions;place-self:end}.rtable .c-role{grid-area:role}.rtable .c-2fa{grid-area:twofa}.rtable .c-last{grid-area:last}.rtable .c-time{grid-area:time}.rtable .c-pf{grid-area:pf;justify-self:start;max-width:100%}.rtable .c-pf .pf-ref,.rtable .src-name,.rtable .src-unlisted,.rtable .tag,.rtable .pill{white-space:normal;max-width:100%}.rtable .src-name{flex-wrap:wrap;row-gap:2px}.rtable .tag{height:auto;min-height:20px}.rtable .pill{height:auto;min-height:24px}.rtable .c-reason{grid-area:reason}.appt-table tbody tr.day-head{background:0 0;border:0;grid-column:1/-1;margin-top:6px;padding:0;display:block}.appt-table tbody tr.day-head:first-child{margin-top:0}.appt-table .day-head td{background:#f6f8fc;border-radius:12px;padding:12px 14px!important}.appt-table .day-row td:first-child:before,.appt-table .day-row td:first-child:after{display:none}}@container tbl (width<=620px){.rtable tbody{grid-template-columns:1fr;padding:12px}}@media (width<=640px){.admin{padding-bottom:calc(68px + env(safe-area-inset-bottom))}.sidebar{z-index:60;height:auto;padding:4px 4px calc(4px + env(safe-area-inset-bottom));background:var(--navy-900);position:fixed;inset:auto 0 0;overflow:visible;box-shadow:0 -6px 20px #1b235040}.sidebar .brand{display:none}.nav-list{flex:1;grid-template-columns:repeat(6,minmax(0,1fr));gap:2px;display:grid}.nav-item{border-radius:12px;flex-direction:column;justify-content:center;gap:4px;height:58px;padding:4px 2px;position:relative}.nav-item svg{width:21px;height:21px}.nav-item .label-text{display:none}.nav-item .label-short{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:11px;line-height:1.1;display:block;overflow:hidden}.nav-item.active{box-shadow:none;background:#77b8e333}.nav-item .badge{margin:0;padding:0 6px;font-size:10px;position:absolute;top:3px;left:calc(50% + 6px)}.topbar{height:60px;padding-left:12px;padding-right:12px}.topbar-brand{align-items:center;gap:8px;min-width:0;display:flex}.topbar-brand .brand-mark{border-radius:9px;width:32px;height:32px}.topbar-brand .brand-mark svg{width:18px;height:18px}.topbar-brand b{white-space:nowrap;font-size:15px}.topbar-actions{gap:8px}.topbar .btn .label-text{display:none}.topbar .btn .label-short{display:inline}.topbar .btn{padding:0 12px}.page-head h1{font-size:22px}body:has(.admin) .toasts{bottom:calc(84px + env(safe-area-inset-bottom))}.toolbar.filters .search{flex-basis:100%;max-width:none}.ci-side{border-radius:0}.type-head{flex-wrap:wrap;gap:8px}.type-filter{width:100%}}.sm-icon{opacity:0;border-radius:8px;width:28px;height:28px;transition:opacity .15s}.sm-icon svg{width:14px;height:14px}tr:hover .sm-icon,.sm-icon:focus-visible{opacity:1}.code-block{background:var(--navy-900);color:#dfe6f6;white-space:pre-wrap;word-break:break-all;border-radius:12px;margin:0;padding:14px 16px;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:12.5px;line-height:1.6}.pf-ref.pf-open{font:inherit;text-align:left;cursor:pointer;border:0;font-size:12px}.pf-ref.pf-open:hover{color:var(--ink)}.privacy-note{background:var(--teal-50);color:#1f6f6c;border-radius:12px;align-items:flex-start;gap:10px;margin-top:24px;padding:12px 14px;font-size:13px;display:flex}.privacy-note svg{flex-shrink:0;width:18px;height:18px;margin-top:1px}.src-dot{background:var(--blue);border-radius:50%;flex-shrink:0;width:8px;height:8px;display:inline-block}.src-name{align-items:center;gap:7px;font-weight:600;display:inline-flex}.stat-card{grid-template-columns:minmax(260px,340px) minmax(0,1fr);align-items:center;gap:28px;margin-bottom:18px;padding:20px 24px;display:grid}.stat-left{justify-items:start;gap:10px;display:grid}.stat-left .segmented button{height:30px;padding:0 12px}.stat-label{color:var(--muted);margin-top:6px;font-size:13px;font-weight:600}.stat-value{letter-spacing:-.03em;color:var(--navy);font-size:44px;font-weight:800;line-height:1}.stat-sources{color:var(--ink-2);flex-wrap:wrap;gap:6px 14px;font-size:12.5px;display:flex}.stat-sources span{align-items:center;gap:6px;display:inline-flex}.stat-sources b{color:var(--ink)}.stat-chart{min-width:0}.view-bar{border-bottom:0;gap:14px;padding-bottom:0}.err-counts{color:var(--muted);gap:18px;font-size:13px;display:flex}.err-counts b{color:var(--ink);font-size:16px}.step-pill{white-space:nowrap;border-radius:999px;align-items:center;height:24px;padding:0 10px;font-size:12px;font-weight:700;display:inline-flex}.st-lookup{background:var(--sky-50);color:#1d5f96}.st-avail{color:#6a4bb8;background:#f0ebfb}.st-hold{background:var(--teal-50);color:#1f6f6c}.st-write{background:var(--red-50);color:#b42f2f}.err-code{color:var(--navy);white-space:nowrap;background:#f1f3f8;border-radius:6px;padding:2px 7px;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:12px;font-weight:600}.err-code.lg{word-break:break-all;white-space:normal;background:0 0;padding:0;font-size:15px}.err-hint{color:var(--muted);margin:12px 0 0;font-size:13px}.err-code.err-open{cursor:pointer;border:0}.err-code.err-open:hover{color:var(--ink)}.err-tab-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}.err-message{background:var(--red-50);color:#8f2a2a;border-radius:12px;padding:12px 14px;font-size:14.5px;font-weight:600;line-height:1.5}.camp-table .c-num{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.manual-note{flex-wrap:wrap;align-items:center;gap:14px;margin-top:18px;display:flex}.manual-note .kpi-icon{flex-shrink:0}.manual-note p{margin-top:2px;font-size:13px}.camp-stats{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.camp-stats div{background:#f6f8fc;border-radius:12px;gap:2px;padding:12px;display:grid}.camp-stats b{font-size:20px;font-weight:800}.camp-stats span{color:var(--muted);font-size:12px}.mini-list{gap:6px;margin:0;padding:0;list-style:none;display:grid}.mini-list li{border:1px solid var(--line);border-radius:10px;flex-wrap:wrap;align-items:center;gap:10px;padding:8px 10px;font-size:13px;display:flex}.mini-list li .pf-ref{margin-left:auto}.dropzone{border:1.5px dashed var(--line-2);cursor:pointer;background:#fafbfd;border-radius:14px;align-items:center;gap:14px;padding:18px;transition:all .15s;display:flex}.dropzone:hover{border-color:var(--blue);background:var(--blue-50)}.dropzone>svg{width:28px;height:28px;color:var(--blue);flex-shrink:0}.dropzone b{display:block}.dropzone span{color:var(--muted);font-size:12.5px}.recip-summary{border:1px solid var(--line);background:var(--surface);border-radius:14px;gap:8px;padding:14px 16px;display:grid}.rs-main{align-items:center;gap:8px;font-size:15px;display:flex}.rs-main svg{width:18px;height:18px;color:var(--green)}.rs-warn{color:#9a6a08;background:var(--amber-50);border-radius:8px;padding:6px 10px;font-size:13px}.name-list{flex-wrap:wrap;gap:6px;max-height:120px;display:flex;overflow:auto}.name-list span{background:#f1f3f8;border-radius:999px;padding:3px 9px;font-size:12.5px}.name-list small{color:var(--faint)}.sync-box{align-items:center;gap:14px}.sync-box .hint{text-align:right;line-height:1.35}.sync-box .hint b{color:var(--ink)}.tabs{border-bottom:1px solid var(--line);scrollbar-width:none;gap:2px;margin-bottom:18px;display:flex;overflow-x:auto}.tab{white-space:nowrap;height:42px;color:var(--muted);background:0 0;border:0;border-bottom:2.5px solid #0000;align-items:center;gap:8px;margin-bottom:-1px;padding:0 14px;font-weight:600;transition:color .15s;display:inline-flex}.tab svg{width:16px;height:16px}.tab:hover{color:var(--ink)}.tab[aria-selected=true]{color:var(--blue);border-bottom-color:var(--blue)}.warn-box{background:var(--amber-50);color:#7a5205;border:1px solid #f2dca6;border-radius:14px;align-items:flex-start;gap:12px;margin-bottom:16px;padding:12px 16px;font-size:13.5px;display:flex}.warn-box>svg{flex-shrink:0;width:18px;height:18px;margin-top:1px}.warn-box p+p{margin-top:4px}.set-table tr.off td{background:#fbfcfd}.set-table tr.off .c-name b,.set-table tr.off .c-name .cell-sub{color:var(--muted)}.set-table .c-len .select-trigger{min-height:38px}.map-btn{text-align:left;background:0 0;border:1px solid #0000;border-radius:10px;align-items:center;gap:8px;margin:-4px -8px;padding:4px 8px;font-weight:600;display:inline-flex}.map-btn:hover{border-color:var(--line-2);background:var(--surface)}.map-edit{color:var(--blue);opacity:0;font-size:12px;transition:opacity .15s}.map-btn:hover .map-edit,.map-btn:focus-visible .map-edit{opacity:1}.avatar-stack{display:inline-flex}.avatar-stack .avatar{box-shadow:0 0 0 2px var(--surface)}.avatar-stack .avatar+.avatar{margin-left:-8px}.chip-list{flex-wrap:wrap;gap:6px;display:flex}.mini-chip{background:#f1f3f8;border-radius:999px;align-items:center;gap:6px;height:30px;padding:0 10px 0 4px;font-size:12.5px;font-weight:600;display:inline-flex}.mini-chip:not(:has(.avatar)){padding-left:10px}.mini-chip small{color:var(--muted);font-weight:500}.mini-chip.dim{opacity:.5}.mini-chip button{width:20px;height:20px;color:var(--muted);background:0 0;border:0;border-radius:50%;place-items:center;margin-right:-4px;display:grid}.mini-chip button:hover{background:var(--red-50);color:var(--red)}.mini-chip button svg{width:13px;height:13px}.choice-row{border:1.5px solid var(--line);cursor:pointer;border-radius:12px;align-items:center;gap:12px;padding:12px 14px;display:flex}.choice-row.on{border-color:var(--blue);background:var(--blue-50)}.choice-row b,.check-row b{font-size:14px;display:block}.choice-row small,.check-row small{color:var(--muted);font-size:12.5px}.check-list{border:1px solid var(--line);border-radius:12px;gap:4px;margin-left:30px;padding:6px;display:grid}.check-row{cursor:pointer;border-radius:9px;align-items:center;gap:10px;padding:8px;display:flex}.check-row:hover{background:#f6f8fc}.check-row input{width:17px;height:17px;accent-color:var(--blue);margin:0}.set-form{gap:0;padding:4px 24px;display:grid}.set-field{border-bottom:1px solid var(--line);grid-template-columns:minmax(200px,300px) minmax(0,1fr);gap:24px;padding:20px 0;display:grid}.set-field:last-child{border-bottom:0}.sf-label b{font-size:14px;display:block}.sf-label .hint{margin-top:4px;line-height:1.45;display:block}.sf-control{min-width:0}.sf-control .segmented{flex-wrap:wrap}.contact-tab{grid-template-columns:minmax(0,1fr) 360px;align-items:start;gap:18px;display:grid}.add-source{gap:10px}.add-source .hint{min-width:200px}.save-bar{z-index:25;background:var(--navy-900);color:#fff;box-shadow:var(--shadow-lg);animation:rise .2s var(--ease);border-radius:16px;align-items:center;gap:12px;margin-top:18px;padding:12px 14px 12px 20px;display:flex;position:sticky;bottom:16px}.save-bar b{font-size:14px;display:block}.save-bar span{color:#b7c0e0;font-size:12.5px}.save-bar .err{color:#ffb0b0;font-weight:600}.save-bar .btn-ghost{color:#dfe4f6}.save-bar .btn-ghost:hover{color:#fff;background:#ffffff1a}.src-unlisted{color:#9a3f14;background:var(--orange-50);white-space:nowrap;border-radius:999px;padding:1px 7px;font-size:11.5px;font-weight:600}.src-unknown{color:var(--muted);font-style:italic}@media (width<=1100px){.stat-card{grid-template-columns:1fr;gap:16px}.contact-tab{grid-template-columns:1fr}}@media (width<=900px){.set-field{grid-template-columns:1fr;gap:10px}}@media (width<=640px){.stat-value{font-size:36px}.camp-stats{grid-template-columns:repeat(2,1fr)}.save-bar{bottom:calc(80px + env(safe-area-inset-bottom));flex-wrap:wrap}.sync-box .hint,.err-counts{display:none}}@container tbl (width<=1000px){.bk-table tbody tr{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-areas:"booked when""type source""provider location""pf pf"}.err-table tbody tr{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-areas:"time step""code code""msg msg""ctx source"}.err-table tbody tr:has(.c-clinic){grid-template-areas:"time step""clinic clinic""code code""msg msg""ctx source"}.clinics-table tbody tr{grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;grid-template-areas:"patient patient status""health health health""bookings errors users""created actions actions"}.attention-table tbody tr{grid-template-areas:"patient patient actions""problem lasting lasting"}.activity-table tbody tr{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-areas:"time who""action action""what what"}.security-table tbody tr{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-areas:"time decision""action action""rules rules"}.health-table tbody tr{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-areas:"patient patient""keeper session""beat beat""uptime uptime"}.rtable .c-clinic{grid-area:clinic}.rtable .c-health{grid-area:health}.rtable .c-bookings{grid-area:bookings}.rtable .c-errors{grid-area:errors}.rtable .c-users{grid-area:users}.rtable .c-created{grid-area:created}.rtable .c-problem{grid-area:problem}.rtable .c-lasting{grid-area:lasting}.rtable .c-who{grid-area:who}.rtable .c-action{grid-area:action}.rtable .c-what{grid-area:what}.rtable .c-decision{grid-area:decision}.rtable .c-rules{grid-area:rules}.rtable .c-keeper{grid-area:keeper}.rtable .c-session{grid-area:session}.rtable .c-beat{grid-area:beat}.rtable .c-uptime{grid-area:uptime}.rtable .uptime-strip{min-width:0}.rtable .uptime-strip .ub{min-width:1px}.camp-table tbody tr{grid-template-columns:repeat(3,minmax(0,1fr));grid-template-areas:"name name name""sent sent status""n1 n2 n3"}.set-table tbody tr{grid-template-columns:auto minmax(0,1fr) auto}.vt-table tbody tr{grid-template-areas:"toggle name default""len len len""prov prov prov"}.loc-table tbody tr{grid-template-areas:"toggle name name""prov prov prov"}.prov-table tbody tr{grid-template-areas:"toggle name name""locs locs locs""types types types"}.src-table tbody tr{grid-template-columns:repeat(3,minmax(0,1fr));grid-template-areas:"name name name""kind count added""actions actions actions"}.rtable .c-booked{grid-area:booked}.rtable .c-when{grid-area:when}.rtable .c-source{grid-area:source}.rtable .c-step{grid-area:step;justify-self:end}.rtable .c-code{grid-area:code}.rtable .c-msg{grid-area:msg}.rtable .c-ctx{grid-area:ctx}.rtable .c-name{grid-area:name}.rtable .c-toggle{grid-area:toggle}.rtable .c-default{grid-area:default}.rtable .c-len{grid-area:len}.rtable .c-prov{grid-area:prov}.rtable .c-locs{grid-area:locs}.rtable .c-types{grid-area:types}.rtable .c-kind{grid-area:kind}.rtable .c-count{grid-area:count}.rtable .c-added{grid-area:added}.camp-table .c-num{text-align:left}.camp-table .c-num:nth-child(3){grid-area:n1}.camp-table .c-num:nth-child(4){grid-area:n2}.camp-table .c-num:nth-child(5){grid-area:n3}.rtable .c-default:before{display:none!important}.map-btn{margin:0}.src-table .c-actions{justify-self:start}}@container tbl (width<=420px){.clinics-table tbody tr{grid-template-areas:"patient patient status""health health health""bookings errors users""created created created""actions actions actions"}}.top-tabs{background:#eceff5;border-radius:12px;gap:4px;margin-bottom:14px;padding:4px;display:inline-flex}.top-tab{height:36px;color:var(--ink-2);border-radius:9px;align-items:center;gap:8px;padding:0 16px;font-size:14px;font-weight:600;display:inline-flex}.top-tab svg{width:16px;height:16px}.top-tab:hover{color:var(--ink)}.top-tab[aria-selected=true]{background:var(--surface);color:var(--blue);box-shadow:var(--shadow-sm)}@keyframes row-focus-bg{0%,35%{background-color:var(--blue-100)}to{background-color:#0000}}@keyframes row-focus-ring{0%,35%{box-shadow:0 0 0 3px #3b67ac73}to{box-shadow:0 0 0 3px #3b67ac00}}tr.row-focus>td{animation:2.4s ease-out row-focus-bg}tr.row-focus,.bm-node.row-focus{animation:2.4s ease-out row-focus-ring}.bm{gap:14px;display:grid}.bm .card{margin:0}.bm-summary{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:14px 18px;display:flex}.bm-counts{color:var(--muted);flex-wrap:wrap;gap:6px 20px;font-size:13.5px;display:flex}.bm-counts b{color:var(--ink);margin-right:2px;font-size:18px}.bm-issues{flex-wrap:wrap;gap:8px;display:flex}.bm-issue{border:1px solid;border-radius:999px;align-items:center;gap:6px;height:32px;padding:0 10px 0 12px;font-size:13px;font-weight:700;display:inline-flex}.bm-issue svg{width:15px;height:15px}.bm-issue.red{background:var(--red-50);color:#b42f2f;border-color:#f0c0c0}.bm-issue.amber{background:var(--amber-50);color:#8a5d06;border-color:#f2dca6}.bm-issue:hover{filter:brightness(.97)}.bm-allgood{color:#237a54;font-size:13px;font-weight:600}.bm-toolbar{flex-wrap:wrap;gap:10px 14px}.bm-hidden-toggle{color:var(--ink-2);cursor:pointer;align-items:center;gap:8px;font-size:13px;display:inline-flex}.bm-read{margin:0;padding:0 18px 12px}.bm-tree{gap:16px;padding:4px 18px 22px;display:grid;overflow-x:auto}.bm-branch{align-items:center;display:flex}.bm-kids{flex-direction:column;gap:8px;padding-left:36px;display:flex;position:relative}.bm-kids:before{content:"";border-top:1.5px solid var(--line-2);width:18px;position:absolute;top:50%;left:0}.bm-kids>.bm-branch{position:relative}.bm-kids>.bm-branch:before{content:"";border-top:1.5px solid var(--line-2);width:18px;position:absolute;top:50%;left:-18px}.bm-kids>.bm-branch:after{content:"";border-left:1.5px solid var(--line-2);position:absolute;top:-4px;bottom:-4px;left:-18px}.bm-kids>.bm-branch:first-child:after{top:50%}.bm-kids>.bm-branch:last-child:after{bottom:50%}.bm-kids>.bm-branch:only-child:after{display:none}.bm-node{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-xs);border-radius:12px;flex-shrink:0;align-items:center;gap:10px;padding:8px 10px;display:flex}.d1>.bm-node{width:260px}.d2>.bm-node{min-width:270px;max-width:400px}.bm-text{flex-direction:column;flex:1;min-width:0;display:flex}.bm-text b{font-size:13.5px;font-weight:600;line-height:1.3}.d0>.bm-node .bm-text b{font-size:14.5px;font-weight:700}.bm-text small{color:var(--muted);font-size:12px}.bm-reason{color:var(--muted);align-items:center;gap:4px;margin-top:3px;font-size:11.5px;font-weight:700;display:inline-flex}.bm-reason svg{flex-shrink:0;width:13px;height:13px}.bm-ic{background:var(--blue-50);width:30px;height:30px;color:var(--blue);border-radius:9px;flex-shrink:0;place-items:center;display:grid}.bm-ic svg{width:15px;height:15px}.k-provider .bm-ic{background:0 0}.bm-chev{width:24px;height:24px;color:var(--muted);border-radius:6px;flex-shrink:0;place-items:center;margin-right:-4px;display:grid}.bm-chev:hover{background:var(--blue-50);color:var(--blue)}.bm-chev svg{width:16px;height:16px}.bm-actions{flex-shrink:0;align-items:center;gap:6px;display:flex}.bm-go{width:26px;height:26px;color:var(--muted);opacity:0;border-radius:8px;place-items:center;transition:opacity .15s;display:grid}.bm-go svg{width:15px;height:15px}.bm-go:hover{background:var(--blue-50);color:var(--blue)}.bm-node:hover .bm-go,.bm-go:focus-visible,.s-red .bm-go,.s-amber .bm-go{opacity:1}.bm-off{background:var(--surface);color:#b42f2f;white-space:nowrap;border:1px solid #f0c0c0;border-radius:8px;align-items:center;gap:4px;height:26px;padding:0 9px;font-size:12px;font-weight:700;display:inline-flex}.bm-off:hover{background:#fff5f5}.bm-off svg{width:13px;height:13px}.bm-node.s-red{background:var(--red-50);border-color:#f0c0c0}.bm-node.s-red .bm-text b,.bm-node.s-red .bm-reason{color:#9b2727}.bm-node.s-red .bm-text small{color:#873535}.bm-node.s-amber .bm-text small{color:#6b4a08}.bm-node.s-red .bm-ic{color:#b42f2f;background:#fff}.bm-node.s-amber{background:var(--amber-50);border-color:#f2dca6}.bm-node.s-amber .bm-reason{color:#8a5d06}.bm-node.s-amber .bm-ic{color:#8a5d06;background:#fff}.bm-node.s-off{box-shadow:none;background:0 0;border-style:dashed}.bm-node.s-off .bm-ic{opacity:.6}.bm-node.s-off .bm-text b,.bm-node.s-off .bm-text small,.bm-node.s-off .bm-reason{color:var(--muted)}.bm-unplaced{border-color:#f2dca6;padding:16px 18px}.bm-unplaced-head{align-items:flex-start;gap:10px;display:flex}.bm-unplaced-head>svg{width:18px;height:18px;color:var(--amber);flex-shrink:0;margin-top:2px}.bm-unplaced-head b,.bm-unplaced-head h2{display:block}.bm-unplaced-head h2{font-size:inherit;margin:0;font-weight:700}.bm-unplaced-list{flex-wrap:wrap;gap:10px;margin-top:12px;display:flex}.bm-unplaced-list .bm-node{width:340px;max-width:100%}@media (width<=760px){.top-tabs{display:flex}.top-tab{flex:1;justify-content:center;padding:0 10px;font-size:13px}.bm-summary{padding:12px 14px}.bm-read{padding:0 14px 10px}.bm-tree{gap:10px;padding:4px 12px 16px;overflow:visible}.bm-branch{display:block}.bm-kids{border-left:1.5px solid var(--line-2);margin:8px 0 0 14px;padding-left:12px}.bm-kids:before,.bm-kids>.bm-branch:before,.bm-kids>.bm-branch:after{display:none}.d0>.bm-node,.d1>.bm-node,.d2>.bm-node{width:auto;min-width:0;max-width:none}.bm-node{flex-wrap:wrap}.bm-go{opacity:1}.bm-unplaced{padding:14px}}.top-tab,.bm-chev,.bm-go,.bm-issue{background:0 0;border:0}.bm-issue{border:1px solid}.top-tab[aria-selected=true]{background:var(--surface)}.bm-issue.red{background:var(--red-50)}.bm-issue.amber{background:var(--amber-50)}.bm-kids.leafy:before{width:36px}.bm-leafbox{border:1px solid var(--line);background:#f7f9fc;border-radius:14px;grid-template-columns:repeat(3,210px);gap:6px;padding:8px;display:grid}.bm-leafbox .bm-node{width:auto;min-width:0;max-width:none;box-shadow:none;gap:8px;padding:6px 8px}.bm-leafbox .bm-ic{border-radius:8px;width:26px;height:26px}.bm-leafbox .bm-text b{font-size:13px}@media (width<=1280px){.bm-leafbox{grid-template-columns:repeat(2,210px)}}@media (width<=760px){.bm-kids.leafy:before{display:none}.bm-leafbox{grid-template-columns:1fr;padding:6px}.bm-leafbox .bm-node.s-red,.bm-leafbox .bm-node.s-amber{grid-column:auto}}.bm{grid-template-columns:minmax(0,1fr)}.bm-branch>.bm-kids{flex:1;min-width:0}.d0>.bm-node,.d1>.bm-node{width:230px}@media (width<=760px){.bm-leafbox{grid-template-columns:1fr}}.bm-leafbox{grid-template-columns:repeat(auto-fill,minmax(165px,1fr));grid-auto-flow:dense}.bm-off{align-self:flex-start;margin-top:6px}.top-tab{white-space:nowrap}@media (width<=760px){.d0>.bm-node,.d1>.bm-node,.d2>.bm-node{width:auto}.top-tab svg{display:none}}.bm-leafbox{grid-template-columns:repeat(auto-fill,minmax(215px,1fr))}.bm-leafbox .bm-node.s-red,.bm-leafbox .bm-node.s-amber{grid-column:span 2}.bm-leafbox .s-red .bm-text{flex-flow:wrap;align-items:center;column-gap:8px}.bm-leafbox .s-red .bm-text b{width:100%}.bm-leafbox .s-red .bm-off,.bm-leafbox .s-red .bm-reason{margin-top:2px}@media (width<=760px){.bm-leafbox .bm-node.s-red,.bm-leafbox .bm-node.s-amber{grid-column:auto}}@media (width>=641px){.admin:has(.page-fill){grid-template-rows:minmax(0,1fr);height:100dvh;min-height:0}.admin:has(.page-fill) .main{min-height:0}.page-fill{flex-direction:column;flex:1;min-height:0;padding-bottom:24px;display:flex;overflow-y:auto}.page-fill>*{flex-shrink:0}.page-fill .card-fill{flex-direction:column;flex:1 0 0;min-width:0;display:flex}.page-fill>.appt-layout{flex:1 0 0}.page-fill .card-fill>.table-wrap{flex:1 1 0;min-height:300px;overflow:auto}.card-fill .table thead th{z-index:3;position:sticky;top:0}.card-fill .appt-table .day-head td{top:var(--thead-h,0px);z-index:2;position:sticky}.card-fill>.pager{flex-shrink:0}.page-fill .save-bar{bottom:0}}@media (width>=641px) and (width<=960px){.admin:has(.page-fill){grid-template-rows:auto minmax(0,1fr)}}@container tbl (width<=1000px){.card-fill .appt-table .day-head td{position:static}.card-fill .appt-table tbody tr.day-head{z-index:2;background:var(--surface);padding-top:8px;position:sticky;top:0}}@media (width<=640px){.page-fill .card>.pager{bottom:calc(66px + env(safe-area-inset-bottom));z-index:5;background:var(--surface);border-radius:0 0 var(--r-lg) var(--r-lg);position:sticky;box-shadow:0 -6px 14px -8px #1b235040}}.topbar{display:none}.page{padding-top:20px}.side-user{border-top:1px solid #ffffff14;align-items:center;gap:10px;margin-top:10px;padding:12px 6px 0 8px;display:flex}.side-user b{color:#fff;font-size:13px;display:block}.side-user .grow>span{color:#98a0c4;font-size:11.5px;display:block}.side-signout{color:#c9cfe6;background:0 0;border:0;border-radius:9px;flex:none;place-items:center;width:32px;height:32px;transition:all .15s;display:grid}.side-signout:hover{color:#fff;background:#ffffff14}.side-signout svg{width:17px;height:17px}.strip-user{display:none}.user-menu-btn{cursor:pointer;background:0 0;border:0;border-radius:50%;padding:0;display:grid}.user-menu-btn:focus-visible{outline:2px solid var(--sky);outline-offset:2px}.user-menu{z-index:80;background:var(--surface);min-width:210px;color:var(--ink);border:1px solid var(--line);box-shadow:var(--shadow-lg,0 18px 40px -12px #1b23504d);border-radius:12px;padding:6px;position:fixed}.um-who{border-bottom:1px solid var(--line);margin-bottom:4px;padding:8px 10px 10px}.um-who b{font-size:13.5px;display:block}.um-who span{color:var(--muted);font-size:12px;display:block}.um-item{width:100%;height:36px;color:var(--ink-2);text-align:left;background:0 0;border:0;border-radius:8px;align-items:center;gap:8px;padding:0 10px;font-weight:600;display:flex}.um-item:hover{background:var(--blue-50);color:var(--blue)}.um-item svg{width:16px;height:16px}@media (width>=641px) and (width<=960px){.strip-user{margin-left:auto;padding-left:8px;display:block}}@media (width<=640px){.topbar{display:flex}.page{padding-top:8px}}.appt-layout{flex-direction:column;gap:18px;display:flex}.appt-layout>.stat-card{margin:0}.stat-head{justify-self:stretch;align-items:center;gap:8px;display:flex}.stat-title{color:var(--ink-2);align-items:center;gap:8px;margin:0;font-size:13px;font-weight:700;display:inline-flex}.stat-title svg{width:16px;height:16px;color:var(--blue)}.stat-left>.segmented{justify-self:stretch}.stat-left>.segmented button{white-space:nowrap;padding:0 6px;font-size:12.5px}.title-row{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.stats-toggle svg{width:15px;height:15px}@media (width>=1101px){.appt-layout{flex-direction:row;align-items:stretch}.appt-layout>.card-fill{flex:1 1 0;min-width:0}.appt-layout>.stat-card{flex-direction:column;flex:none;align-self:flex-start;align-items:stretch;gap:18px;width:340px;max-height:100%;padding:18px;display:flex;overflow-y:auto}.appt-layout>.stat-card .stat-left{gap:10px}}.profile-tab{gap:30px;display:grid}.profile-h{margin-bottom:4px;font-size:17px;font-weight:800}.profile-tab>section>.hint{margin-bottom:12px;display:block}.profile-h-row{flex-wrap:wrap;align-items:flex-end;gap:16px;margin-bottom:12px;display:flex}.profile-h-row>div{flex:320px}.profile-h-row .btn svg,.hr-copy svg{width:15px;height:15px}.profile-tab .contact-tab{margin-top:10px}.contact-preview .cb-row b+b{margin-top:2px}.hours-card{padding:4px 0}.hours-row{border-bottom:1px solid var(--line);grid-template-columns:120px 120px minmax(0,1fr) 36px;align-items:center;gap:16px;min-height:60px;padding:10px 20px;display:grid}.hours-row:last-child{border-bottom:0}.hours-row.closed .hr-day{color:var(--muted)}.hr-open{color:var(--ink-2);cursor:pointer;align-items:center;gap:10px;font-size:13px;font-weight:600;display:inline-flex}.hours-row.closed .hr-open{color:var(--muted)}.hr-times{flex-wrap:wrap;align-items:center;gap:10px;font-size:13px;display:flex}.hr-times .select{width:140px}.hr-bad{font-size:12.5px}.holidays-card{padding:0}.hol-add{border-bottom:1px solid var(--line);border-radius:var(--r-lg) var(--r-lg) 0 0;background:#fafbfd;flex-wrap:wrap;align-items:flex-end;gap:14px;padding:18px 20px;display:flex}.hol-add .field{min-width:0}.hol-add .field.grow{flex:200px}.hol-add input[type=date]{width:170px}.hol-where{flex:100%;order:3}.hol-where .label .muted,.hol-add .label .muted{text-transform:none;letter-spacing:0;font-weight:500}.chip-row{flex-wrap:wrap;gap:6px;display:flex}.hol-btn{order:2}.hol-msg{flex-basis:100%;order:4;font-size:12.5px}.hol-list{display:grid}.hol-row{border-bottom:1px solid var(--line);align-items:center;gap:12px;padding:12px 20px;display:flex}.hol-row:last-child{border-bottom:0}.hol-row.past{opacity:.6}.hol-row b{font-weight:700;display:block}.hol-ic{background:var(--orange-50);width:34px;height:34px;color:var(--orange-600);border-radius:10px;flex:none;place-items:center;display:grid}.hol-ic svg{width:17px;height:17px}.hol-row .btn svg{width:16px;height:16px}.hol-empty{padding:32px 20px}.hol-past-toggle{border:0;border-top:1px solid var(--line);width:100%;color:var(--muted);text-align:left;background:0 0;align-items:center;gap:6px;padding:12px 20px;font-size:13px;font-weight:600;display:flex}.hol-past-toggle:hover{color:var(--blue)}.hol-past-toggle svg{width:15px;height:15px;transition:transform .15s}@media (width<=760px){.hours-row{grid-template-columns:minmax(0,1fr) auto 36px;grid-template-areas:"day open copy""times times times";row-gap:10px;padding:12px 16px}.hr-day{grid-area:day}.hr-open{grid-area:open}.hr-times{grid-area:times}.hr-copy{grid-area:copy}.hr-times .select{width:calc(50% - 22px)}.hol-add{padding:16px}.hol-add .field,.hol-add input[type=date]{flex-basis:100%;width:100%}.hol-btn{justify-content:center;width:100%}.hol-row{flex-wrap:wrap;padding:12px 16px}}.booking-link{gap:14px;margin-bottom:18px;display:grid}.bl-head{align-items:center;gap:14px;display:flex}.bl-head h3{font-size:16px}.bl-row{flex-wrap:wrap;align-items:flex-end;gap:12px;display:flex}.bl-source{width:220px}.bl-check{align-items:flex-start;margin:-4px -8px}.bl-check input{margin-top:2px}.bl-row .link-box{flex:320px;min-width:0}@media (width<=640px){.bl-source{width:100%}}.add-source code{white-space:nowrap}@media (width<=640px){.add-source{flex-wrap:wrap}.add-source .input,.add-source .search{flex:100%;max-width:none!important}.add-source .hint{min-width:0}}.bridge-dot.idle{background:#7880a8;animation:none}.tab{text-decoration:none}.tab[aria-current=page]{color:var(--blue);border-bottom-color:var(--blue)}.top-tab[aria-current=page]{background:var(--surface);color:var(--blue);box-shadow:var(--shadow-sm)}.sync-box .hint b{font-weight:600}.q2-input{width:100%;max-width:360px;height:34px;margin-top:6px;font-size:13px}textarea.q2-input{resize:vertical;height:auto;min-height:54px;padding-top:6px}.q2-label{color:var(--muted);margin-top:8px;font-size:11.5px;font-weight:600;display:block}.swatches{flex-wrap:wrap;gap:6px;margin-top:6px;display:flex}.swatch{cursor:pointer;border:2px solid #0000;border-radius:50%;width:22px;height:22px;padding:0;box-shadow:inset 0 0 0 2px #fff9}.swatch[aria-checked=true]{border-color:var(--ink)}.swatch:focus-visible{outline:2px solid var(--blue);outline-offset:2px}.video-switch{color:var(--muted);align-items:center;gap:6px;margin-top:6px;font-size:12.5px;display:inline-flex}.pf-hours{color:var(--muted);margin-top:4px;font-size:12px;display:block}.link-in-text{text-decoration:underline}.tag-row{flex-wrap:wrap;gap:6px;margin-top:2px}.offered-count{margin-left:auto}.who-can-take{gap:10px;display:grid}.vt-table th:first-child,.loc-table th:first-child,.prov-table th:first-child{width:70px}.vt-table th:nth-child(3){width:200px}.vt-table th:last-child{text-align:center;width:90px}.vt-table td.c-default{text-align:center}.loc-name{align-items:flex-start;gap:10px}.loc-pin{width:18px;height:18px;color:var(--blue);flex-shrink:0;margin-top:2px}.rules-select{max-width:320px}.reasons-list{margin-bottom:10px}.reason-add{max-width:420px}.reason-add .input{height:38px}.contact-input{max-width:420px}.preview-label{color:var(--blue)}.contact-preview .hint{margin:4px 0 14px}.flip{transform:rotate(180deg)}.provider-details-head{gap:12px}.src-name{gap:8px}.src-tag{width:15px;height:15px;color:var(--faint)}.src-tag.saved{color:var(--blue)}.src-actions{justify-content:flex-end;gap:4px}.add-source .input.mono{max-width:260px;height:38px}.add-source .search{max-width:240px}.bl-icon{background:var(--blue-50);color:var(--blue)}.bl-head .bl-title{font-size:16px}.bl-actions{flex-wrap:wrap;gap:8px}.choice-row.on small{color:#565b6e}.users-tab-head{flex-wrap:wrap;gap:12px;margin-bottom:12px}.users-table .role-name{font-weight:600}.row-actions{justify-content:flex-end;gap:2px;display:flex}.protection-tab{gap:18px;display:grid}.protection-form fieldset{border:0;min-width:0;margin:0;padding:0}.protection-form .field{gap:8px;display:grid}.protection-form .field-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.protection-form .cap-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.protection-form .num-input{width:84px}.protection-form .thresholds-table td{vertical-align:top}.protection-form .thresholds-table .cell-sub{display:block}.protection-form .origin-row{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;display:grid}.protection-form .origin-row .err-text{grid-column:1/-1}.protection-form .info-note{color:var(--muted);margin:0;font-size:13px}.protection-form .kv-row{display:contents}.protection-form .form-actions{gap:8px;display:flex}.change-list{gap:4px;margin:8px 0 0;padding-left:20px;display:grid}.security-table .rules{color:var(--ink-2);font-size:12px}}@font-face{font-family:Open Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/open-sans-latin-400-normal-Bk63H6sG.woff2)format("woff2"),url(/assets/open-sans-latin-400-normal-DKniycaP.woff)format("woff")}@font-face{font-family:Open Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/open-sans-latin-500-normal-C0rntwkW.woff2)format("woff2"),url(/assets/open-sans-latin-500-normal-BxcNt415.woff)format("woff")}@font-face{font-family:Open Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/open-sans-latin-600-normal-Cp4N6AwT.woff2)format("woff2"),url(/assets/open-sans-latin-600-normal-C3dWW5mx.woff)format("woff")}@font-face{font-family:Open Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/open-sans-latin-700-normal-CceUhp2e.woff2)format("woff2"),url(/assets/open-sans-latin-700-normal-CZCQA30i.woff)format("woff")}@font-face{font-family:Open Sans;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/open-sans-latin-800-normal-C0t39IfQ.woff2)format("woff2"),url(/assets/open-sans-latin-800-normal-w4vykUBk.woff)format("woff")}@font-face{font-family:Merriweather;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/merriweather-latin-400-normal-G4kZaoXi.woff2)format("woff2"),url(/assets/merriweather-latin-400-normal-CvqO63Ah.woff)format("woff")}@font-face{font-family:Merriweather;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/merriweather-latin-700-normal-DoUP8Ce-.woff2)format("woff2"),url(/assets/merriweather-latin-700-normal-D4-nzrAh.woff)format("woff")}
