@layer tokens,base,components,layout,vendor,legacy,features,utilities;@layer tokens{:root{color-scheme:light;--navy-900: #0A1F2F;--navy-800: #0E2B40;--navy-700: #14374F;--navy-600: #1E4A63;--navy-100: #DCE6EC;--teal-700: #0B605E;--teal-600: #0E7472;--teal-500: #169896;--teal-300: #4FD1C5;--teal-100: #CFE6E2;--teal-50: #E6F2F0;--white: #FFFFFF;--bg: #F3F5F7;--surface: #FFFFFF;--surface-hover: #F7F8FA;--surface-sunken: #EEF1F4;--line: #E4E7EC;--line-strong: #D0D5DD;--control-line: #7F8C93;--ink-1: #10232E;--ink-2: #3E4D56;--ink-3: #5F6D75;--ink-disabled: #9AA6AC;--on-accent: var(--white);--scrim: rgba(10, 31, 47, .44);--shimmer: rgba(255, 255, 255, .7);--success: #2E6B47;--success-bg: #E5F1EA;--success-line: #BFD9C9;--warning: #8A5A00;--warning-bg: #FBF0DC;--warning-line: #EED7A8;--danger: #B42318;--danger-hover: #93190F;--danger-bg: #FBE9E7;--danger-line: #F2C4BF;--info: #1F5F8B;--info-bg: #E6EFF6;--info-line: #BCD3E4;--accent: var(--teal-600);--accent-hover: var(--teal-700);--accent-subtle: var(--teal-50);--accent-line: var(--teal-100);--focus-ring: var(--teal-500);--selection: var(--teal-100);--st-booked-fg: var(--ink-2);--st-booked-bg: var(--surface);--st-booked-line: var(--line-strong);--st-arrived-fg: var(--warning);--st-arrived-bg: var(--warning-bg);--st-arrived-line: var(--warning-line);--st-chair-fg: var(--teal-600);--st-chair-bg: var(--teal-50);--st-chair-line: var(--teal-100);--st-done-fg: var(--success);--st-done-bg: var(--success-bg);--st-done-line: var(--success-line);--st-noshow-fg: var(--danger);--st-noshow-bg: var(--danger-bg);--st-noshow-line: var(--danger-line);--st-cancel-fg: var(--ink-3);--st-cancel-line: var(--line-strong);--who-1: #2F6F8F;--who-2: #8A5A2B;--who-3: #5B6F2E;--who-4: #7A4A7A;--who-5: #2E7D6B;--who-6: #A0522D;--who-7: #4B5D8A;--who-8: #8C6D1F;--sidebar-bg: var(--navy-800);--sidebar-fg: #F1F7FA;--sidebar-fg-muted: #B6C8D4;--sidebar-hover: var(--navy-700);--sidebar-active: #174253;--sidebar-line: rgba(241, 247, 250, .12);--sidebar-mark: var(--teal-300);--sidebar-active-line: rgba(79, 209, 197, .22);--on-dark-subtle: rgba(255, 255, 255, .16);--stage-bg: var(--navy-800);--stage-ink: #F1F7FA;--stage-ink-dim: #B6C8D4;--stage-accent: var(--teal-300);--stage-danger: #F4B4AC;--stage-warn: #F2CF85;--font-sans: "IBM Plex Sans", "IBM Plex Sans Arabic", system-ui, -apple-system, "Segoe UI", sans-serif;--fw-regular: 400;--fw-medium: 500;--fw-semibold: 600;--fs-12: 12px;--fs-13: 13px;--fs-14: 14px;--fs-16: 16px;--fs-20: 20px;--fs-24: 24px;--fs-32: 32px;--fs-body: var(--fs-14);--lh-body: 1.45;--lh-tight: 1.3;--r-xs: 6px;--r-sm: 10px;--r-md: 14px;--r-lg: 18px;--r-full: 999px;--shadow-xs: 0 1px 2px rgba(16, 24, 40, .05);--shadow-sm: 0 1px 3px rgba(16, 24, 40, .07), 0 1px 2px rgba(16, 24, 40, .04);--shadow-md: 0 6px 16px -4px rgba(16, 24, 40, .1), 0 2px 4px -2px rgba(16, 24, 40, .05);--shadow-btn: 0 1px 2px rgba(16, 24, 40, .12), inset 0 1px 0 rgba(255, 255, 255, .14);--ring: 0 0 0 4px rgba(22, 152, 150, .16);--fs-28: 28px;--shadow-pop: 0 1px 2px rgba(16, 35, 46, .06), 0 8px 24px -8px rgba(16, 35, 46, .18);--shadow-modal: 0 2px 4px rgba(16, 35, 46, .06), 0 24px 48px -12px rgba(16, 35, 46, .28);--sp-1: 4px;--sp-2: 8px;--sp-3: 12px;--sp-4: 16px;--sp-5: 20px;--sp-6: 24px;--sp-7: 32px;--sp-8: 40px;--sp-9: 48px;--sp-10: 64px;--control-sm: 34px;--control-md: 40px;--control-lg: 46px;--row-h: 52px;--row-h-touch: 56px;--page-gutter: 28px;--sidebar-w: 248px;--sidebar-w-collapsed: 64px;--page-head-h: 70px;--tabbar-h: 64px;--card-pad: 20px;--section-gap: 24px;--dur-1: .12s;--dur-2: .18s;--dur-3: .24s;--ease-out: cubic-bezier(.2, .8, .2, 1);--z-sticky: 20;--z-tabbar: 30;--z-modal: 40;--z-popover: 50;--z-toast: 60;--z-stage: 80;--icon-chevron-down: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%235F6D75' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");--icon-check: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23FFFFFF' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E");--icon-dash: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23FFFFFF' stroke-width='3' stroke-linecap='round'%3E%3Cpath d='M6 12h12'/%3E%3C/svg%3E");--font-ui: var(--font-sans);--font-num: var(--font-sans);--brand-navy: var(--navy-800);--brand-navy-2: var(--navy-900);--brand-teal: var(--teal-500);--surface-1: var(--surface);--surface-2: var(--bg);--surface-3: var(--surface-hover);--accent-deep: var(--accent-hover);--accent-soft: var(--accent-subtle);--radius: var(--r-md);--bg-soft: var(--surface-sunken);--color-text: var(--ink-1);--tooth-face: var(--surface);--tooth-edge: var(--line)}html[lang=ar]{--fs-body: 15px;--lh-body: 1.7}@media(max-width:768px){:root{--page-gutter: 16px}}}@layer base{*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%}html,body,#root{min-height:100%;margin:0}body{background:var(--bg);color:var(--ink-1);font-family:var(--font-sans);font-size:var(--fs-body);font-weight:var(--fw-regular);line-height:var(--lh-body);font-synthesis:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}h1,h2,h3,h4,h5,h6{font-weight:var(--fw-semibold);line-height:var(--lh-tight)}b,strong{font-weight:var(--fw-semibold)}em,i,cite{font-style:normal}button,input,select,textarea{font:inherit;letter-spacing:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}a{color:var(--accent);font-weight:var(--fw-medium);text-decoration:none}a:hover{text-decoration:underline;text-underline-offset:3px}input::placeholder,textarea::placeholder{color:var(--ink-3);opacity:1}::selection{background:var(--selection);color:var(--ink-1)}table{border-collapse:collapse}:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}svg.lucide[stroke-width="2"]{stroke-width:1.75}time,td,th,output{font-variant-numeric:tabular-nums}[hidden]{display:none!important}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}}@layer components{.btn{--btn-h: var(--control-md);--btn-bg: var(--accent);--btn-bg-hover: var(--accent-hover);--btn-fg: var(--on-accent);--btn-line: transparent;--btn-line-hover: transparent;display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;gap:var(--sp-2);min-block-size:var(--btn-h);padding:0 14px;border:1px solid var(--btn-line);border-radius:var(--r-sm);background:var(--btn-bg);color:var(--btn-fg);font-size:var(--fs-14);font-weight:var(--fw-medium);line-height:1.2;text-align:center;text-decoration:none;white-space:nowrap;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;transition:background-color var(--dur-1) var(--ease-out),border-color var(--dur-1) var(--ease-out),color var(--dur-1) var(--ease-out)}.btn svg{flex:0 0 auto}.btn:hover:not(:disabled):not([aria-disabled=true]){background:var(--btn-bg-hover);border-color:var(--btn-line-hover);text-decoration:none}.btn:disabled,.btn[aria-disabled=true]{cursor:not-allowed;opacity:.5}.btn[aria-busy=true]{cursor:progress}.btn.secondary{--btn-bg: var(--surface);--btn-bg-hover: var(--surface-hover);--btn-fg: var(--ink-1);--btn-line: var(--line-strong);--btn-line-hover: var(--control-line)}.btn.ghost{--btn-bg: transparent;--btn-bg-hover: var(--surface-sunken);--btn-fg: var(--ink-2)}.btn.ghost:hover:not(:disabled){color:var(--ink-1)}.btn.danger{--btn-bg: var(--danger);--btn-bg-hover: var(--danger-hover);--btn-fg: var(--on-accent)}.btn.danger-soft{--btn-bg: var(--surface);--btn-bg-hover: var(--danger-bg);--btn-fg: var(--danger);--btn-line: var(--line-strong);--btn-line-hover: var(--danger-line)}.btn.link{--btn-bg: transparent;--btn-bg-hover: transparent;--btn-fg: var(--accent);min-block-size:0;padding:0;border:0;font-weight:var(--fw-medium)}.btn.link:hover:not(:disabled){color:var(--accent-hover);text-decoration:underline;text-underline-offset:3px}.btn.sm{--btn-h: var(--control-sm);padding:0 10px;gap:6px;font-size:var(--fs-13)}.btn.lg{--btn-h: var(--control-lg);padding:0 18px;font-size:var(--fs-14)}.btn.icon-only{inline-size:var(--btn-h);block-size:var(--btn-h);min-block-size:0;padding:0;gap:0}.btn.block{inline-size:100%}.icon-btn{display:inline-grid;flex:0 0 auto;place-items:center;inline-size:var(--control-sm);block-size:var(--control-sm);padding:0;border:0;border-radius:var(--r-sm);background:transparent;color:var(--ink-3);transition:background-color var(--dur-1) var(--ease-out),color var(--dur-1) var(--ease-out)}.icon-btn:hover:not(:disabled){background:var(--surface-sunken);color:var(--ink-1)}.icon-btn.danger:hover:not(:disabled){background:var(--danger-bg);color:var(--danger)}.icon-btn:disabled{cursor:not-allowed;opacity:.45}.ui-spinner{display:inline-block;flex:0 0 auto;inline-size:1em;block-size:1em;border:2px solid currentColor;border-inline-end-color:transparent;border-radius:var(--r-full);animation:ui-spin .7s linear infinite}@keyframes ui-spin{to{transform:rotate(360deg)}}[dir=rtl] .ui-dir-icon{transform:scaleX(-1)}[dir=rtl] [dir=ltr] .ui-dir-icon{transform:none}}@layer components{.field{display:grid;align-content:start;gap:6px;min-inline-size:0}.field>span:first-child,.field-label{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--sp-1);color:var(--ink-2);font-size:var(--fs-13);font-weight:var(--fw-medium);line-height:var(--lh-tight)}.field-req{color:var(--danger);font-weight:var(--fw-medium)}.field-optional{color:var(--ink-3);font-weight:var(--fw-regular)}.field>small,.field-hint{color:var(--ink-3);font-size:var(--fs-12);line-height:var(--lh-body)}.field-error{display:flex;align-items:flex-start;gap:6px;color:var(--danger);font-size:var(--fs-12);font-weight:var(--fw-medium);line-height:var(--lh-body)}.field-error svg{flex:0 0 auto;margin-block-start:2px}.input,.select,.textarea,:where(textarea){display:block;inline-size:100%;min-block-size:var(--control-md);padding:0 10px;border:1px solid var(--control-line);border-radius:var(--r-sm);background-color:var(--surface);color:var(--ink-1);font-size:var(--fs-body);line-height:1.4;transition:border-color var(--dur-1) var(--ease-out)}.textarea,:where(textarea){min-block-size:88px;padding-block:8px;line-height:var(--lh-body);resize:vertical}.input:hover,.select:hover,.textarea:hover,:where(textarea):hover{border-color:var(--ink-3)}.input:focus-visible,.select:focus-visible,.textarea:focus-visible,:where(textarea):focus-visible,.input:focus,.select:focus,.textarea:focus,:where(textarea):focus{border-color:var(--focus-ring);outline:2px solid var(--focus-ring);outline-offset:-1px}.input[aria-invalid=true],.select[aria-invalid=true],.textarea[aria-invalid=true],:where(textarea)[aria-invalid=true]{border-color:var(--danger)}.input[aria-invalid=true]:focus,.select[aria-invalid=true]:focus,.textarea[aria-invalid=true]:focus,:where(textarea)[aria-invalid=true]:focus{border-color:var(--danger);outline-color:var(--danger)}.input:disabled,.select:disabled,.textarea:disabled,:where(textarea):disabled{border-color:var(--line);background-color:var(--surface-sunken);color:var(--ink-3);cursor:not-allowed}.input[readonly]:not(:disabled),.textarea[readonly]:not(:disabled){background-color:var(--surface-hover)}.input.sm,.select.sm{min-block-size:var(--control-sm);font-size:var(--fs-13)}.input.lg,.select.lg{min-block-size:var(--control-lg)}.input[type=number],.input[type=tel],.input[type=time],.input[type=date]{font-variant-numeric:tabular-nums}.select,select.input{padding-inline-end:34px;appearance:none;-webkit-appearance:none;background-image:var(--icon-chevron-down);background-repeat:no-repeat;background-position:right 10px center;background-size:16px 16px;cursor:pointer;text-overflow:ellipsis}[dir=rtl] :is(.select,select.input){background-position:left 10px center}[dir=rtl] [dir=ltr] :is(.select,select.input){background-position:right 10px center}.select:disabled,select.input:disabled{cursor:not-allowed}:is(.select,select.input)[multiple],:is(.select,select.input)[size]:not([size="1"]){padding-block:var(--sp-1);padding-inline-end:10px;background-image:none}.select.compact{inline-size:140px}.ui-input-wrap{position:relative;display:block;min-inline-size:0}.ui-input-wrap>.ui-input-icon{position:absolute;inset-block-start:50%;inset-inline-start:10px;color:var(--ink-3);pointer-events:none;transform:translateY(-50%)}.ui-input-wrap>.input.has-icon{padding-inline-start:34px}.ui-input-wrap>.input.has-action{padding-inline-end:38px}.ui-input-wrap>.ui-input-action{position:absolute;inset-block-start:50%;inset-inline-end:4px;display:grid;place-items:center;inline-size:28px;block-size:28px;border:0;border-radius:var(--r-xs);background:transparent;color:var(--ink-3);transform:translateY(-50%)}.ui-input-wrap>.ui-input-action:hover{background:var(--surface-sunken);color:var(--ink-1)}.ui-input-suffix{position:absolute;inset-block-start:50%;inset-inline-end:10px;color:var(--ink-3);font-size:var(--fs-13);pointer-events:none;transform:translateY(-50%)}.ui-search .input::-webkit-search-cancel-button{appearance:none}.ui-choice{display:inline-flex;align-items:flex-start;gap:var(--sp-2);min-block-size:24px;color:var(--ink-1);font-size:var(--fs-body);line-height:var(--lh-body);cursor:pointer}.ui-choice:has(input:disabled){color:var(--ink-3);cursor:not-allowed}.ui-choice-text{display:grid;gap:1px;min-inline-size:0}.ui-choice-text small{color:var(--ink-3);font-size:var(--fs-13)}.ui-checkbox,.ui-radio{flex:0 0 auto;inline-size:16px;block-size:16px;margin:0;border:1px solid var(--control-line);border-radius:var(--r-xs);background-color:var(--surface);background-position:center;background-repeat:no-repeat;background-size:12px 12px;appearance:none;-webkit-appearance:none;cursor:pointer;transition:background-color var(--dur-1) var(--ease-out),border-color var(--dur-1) var(--ease-out)}.ui-radio{border-radius:var(--r-full)}.ui-choice>:is(.ui-checkbox,.ui-radio){margin-block-start:max(0px,calc((1em * var(--lh-body) - 16px) / 2))}:is(.ui-checkbox,.ui-radio):not(.ui-choice>*){vertical-align:middle}.ui-checkbox:hover,.ui-radio:hover{border-color:var(--ink-2)}.ui-checkbox:checked,.ui-checkbox:indeterminate{border-color:var(--accent);background-color:var(--accent);background-image:var(--icon-check)}.ui-checkbox:indeterminate{background-image:var(--icon-dash)}.ui-radio:checked{border-color:var(--accent);background-color:var(--accent);box-shadow:inset 0 0 0 3px var(--surface)}.ui-checkbox:focus-visible,.ui-radio:focus-visible{outline-offset:2px}.ui-checkbox:disabled,.ui-radio:disabled{opacity:.5;cursor:not-allowed}.ui-choice-group{display:grid;gap:var(--sp-2);margin:0;padding:0;border:0}.ui-choice-group.inline{display:flex;flex-wrap:wrap;gap:var(--sp-2) var(--sp-5)}.ui-choice-group>legend{margin-block-end:6px;padding:0;color:var(--ink-2);font-size:var(--fs-13);font-weight:var(--fw-medium)}.ui-switch{position:relative;display:inline-flex;align-items:center;gap:10px;min-block-size:24px;color:var(--ink-1);font-size:var(--fs-body);cursor:pointer}.ui-switch-input{position:absolute;inset-block-start:50%;inset-inline-start:0;inline-size:32px;block-size:20px;margin:0;opacity:0;cursor:pointer;transform:translateY(-50%)}.ui-switch-track{position:relative;flex:0 0 auto;inline-size:32px;block-size:20px;border-radius:var(--r-full);background:var(--control-line);transition:background-color var(--dur-1) var(--ease-out);pointer-events:none}.ui-switch-track:after{content:"";position:absolute;inset-block-start:3px;inset-inline-start:3px;inline-size:14px;block-size:14px;border-radius:var(--r-full);background:var(--surface);transition:transform var(--dur-1) var(--ease-out)}.ui-switch-input:checked+.ui-switch-track{background:var(--accent)}.ui-switch-input:checked+.ui-switch-track:after{transform:translate(12px)}[dir=rtl] .ui-switch-input:checked+.ui-switch-track:after{transform:translate(-12px)}.ui-switch-input:focus-visible+.ui-switch-track{outline:2px solid var(--focus-ring);outline-offset:2px}.ui-switch:has(.ui-switch-input:disabled){color:var(--ink-3);cursor:not-allowed}.ui-switch-input:disabled+.ui-switch-track{opacity:.5}.date-control{position:relative;display:block;inline-size:100%;min-inline-size:0;min-block-size:var(--control-md);border:1px solid var(--control-line);border-radius:var(--r-sm);background:var(--surface);transition:border-color var(--dur-1) var(--ease-out)}.date-control:hover{border-color:var(--ink-3)}.date-control:focus-within{border-color:var(--focus-ring);outline:2px solid var(--focus-ring);outline-offset:-1px}.date-control-input{position:absolute;inset:0;inline-size:100%;block-size:100%;min-block-size:0;padding:0;border:0;background:transparent;color:transparent;caret-color:transparent;opacity:0;cursor:pointer}.date-control-input:focus,.date-control-input:focus-visible{border:0;outline:none}.date-control-input::-webkit-datetime-edit,.date-control-input::-webkit-datetime-edit-fields-wrapper,.date-control-input::-webkit-datetime-edit-text,.date-control-input::-webkit-datetime-edit-month-field,.date-control-input::-webkit-datetime-edit-day-field,.date-control-input::-webkit-datetime-edit-year-field{color:transparent}.date-control-input::-webkit-calendar-picker-indicator{position:absolute;inset-block:0;inset-inline-end:0;inline-size:100%;block-size:100%;opacity:0;cursor:pointer}.date-control-value{position:absolute;inset-block-start:50%;inset-inline:10px 36px;overflow:hidden;color:var(--ink-1);font-size:var(--fs-body);font-variant-numeric:tabular-nums;line-height:1;text-align:start;text-overflow:ellipsis;white-space:nowrap;pointer-events:none;transform:translateY(-50%)}.date-control.is-empty .date-control-value{color:var(--ink-3)}.date-control-icon{position:absolute;inset-block-start:50%;inset-inline-end:10px;color:var(--ink-3);pointer-events:none;transform:translateY(-50%)}.date-control:focus-within .date-control-icon{color:var(--accent)}.patient-combobox{position:relative;display:grid;gap:6px}.patient-combobox-control{position:relative;display:flex;align-items:center}.patient-combobox-control>svg:first-child{position:absolute;inset-inline-start:10px;color:var(--ink-3);pointer-events:none}.patient-combobox-control .input{padding-inline:34px}.patient-combobox-control.is-selected .input{padding-inline-end:60px}.patient-combobox-check{position:absolute;inset-inline-end:34px;color:var(--accent);pointer-events:none}.patient-combobox-clear{position:absolute;inset-inline-end:4px;display:grid;place-items:center;inline-size:28px;block-size:28px;border:0;border-radius:var(--r-xs);background:transparent;color:var(--ink-3)}.patient-combobox-clear:hover{background:var(--surface-sunken);color:var(--ink-1)}.patient-combobox-menu{max-block-size:264px;overflow:auto;padding:var(--sp-1);border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);box-shadow:var(--shadow-pop)}.patient-combobox-hint{padding:var(--sp-2) 10px;color:var(--ink-3);font-size:var(--fs-13)}.patient-combobox-option{display:grid;gap:1px;inline-size:100%;padding:6px 10px;border:0;border-radius:var(--r-sm);background:transparent;color:inherit;text-align:start;cursor:pointer}.patient-combobox-option strong{font-size:var(--fs-body);font-weight:var(--fw-medium)}.patient-combobox-option small{overflow:hidden;color:var(--ink-3);font-size:var(--fs-12);text-overflow:ellipsis;white-space:nowrap}.patient-combobox-option.is-active,.patient-combobox-option:hover{background:var(--accent-subtle)}.patient-combobox-option mark{padding:0;background:transparent;color:var(--accent);font-weight:var(--fw-semibold)}.form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--sp-4);align-items:start}.form-grid-1{grid-template-columns:minmax(0,1fr)}.form-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.form-grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.wide{grid-column:1 / -1}.form-section{display:grid;gap:var(--sp-4);padding:var(--sp-5) var(--sp-6);border-block-end:1px solid var(--line)}.form-section:last-child{border-block-end:0}.form-section-head{display:flex;align-items:flex-start;gap:10px}.form-section-head>span{display:grid;flex:0 0 auto;place-items:center;block-size:calc(var(--fs-16) * var(--lh-tight));color:var(--ink-3)}.form-section-head h3{margin:0;color:var(--ink-1);font-size:var(--fs-16);font-weight:var(--fw-semibold);line-height:var(--lh-tight)}.form-section-head p{margin:2px 0 0;color:var(--ink-3);font-size:var(--fs-13);line-height:var(--lh-body)}.form-body{min-block-size:0;overflow:auto}.form-actions{display:flex;flex:0 0 auto;flex-wrap:wrap;grid-column:1 / -1;align-items:center;justify-content:space-between;gap:var(--sp-3);padding:var(--sp-3) var(--sp-6);border-block-start:1px solid var(--line);background:var(--surface)}.form-actions.is-end{justify-content:flex-end}.form-actions>span{color:var(--ink-3);font-size:var(--fs-13);line-height:var(--lh-body)}.form-actions>div{display:flex;flex:0 0 auto;justify-content:flex-end;gap:var(--sp-2)}@media(max-width:760px){.form-grid,.form-grid-2,.form-grid-3,.form-grid-4{grid-template-columns:minmax(0,1fr)}.form-section,.form-actions{padding-inline:var(--sp-4)}}@media(pointer:coarse){.input,.select,.textarea,:where(textarea),.date-control{min-block-size:var(--control-lg);font-size:var(--fs-16)}.date-control-value{font-size:var(--fs-16)}}}@layer components{.badge{display:inline-flex;flex:0 0 auto;align-items:center;gap:5px;max-inline-size:100%;min-block-size:20px;padding:0 6px;border:1px solid transparent;border-radius:var(--r-xs);background:var(--surface-sunken);color:var(--ink-2);font-size:var(--fs-12);font-weight:var(--fw-medium);line-height:1.5;white-space:nowrap;vertical-align:middle}.badge>svg{flex:0 0 auto}.badge.lg{min-block-size:24px;padding:0 8px;font-size:var(--fs-13)}.badge.neutral{background:var(--surface-sunken);color:var(--ink-2)}.badge.muted{background:var(--surface-sunken);color:var(--ink-3)}.badge.accent{background:var(--accent-subtle);color:var(--accent-hover)}.badge.success{background:var(--success-bg);color:var(--success)}.badge.warning{background:var(--warning-bg);color:var(--warning)}.badge.danger{background:var(--danger-bg);color:var(--danger)}.badge.info{background:var(--info-bg);color:var(--info)}.badge.outline{border-color:var(--line-strong);background:var(--surface);color:var(--ink-2)}.badge.solid{background:var(--accent);color:var(--on-accent)}.badge.solid.danger{background:var(--danger);color:var(--on-accent)}.badge.count{min-inline-size:20px;justify-content:center;padding:0 5px;font-variant-numeric:tabular-nums}.badge-dot{flex:0 0 auto;inline-size:6px;block-size:6px;border-radius:var(--r-full);background:currentColor}.badge.status-booked{border-color:var(--st-booked-line);background:var(--st-booked-bg);color:var(--st-booked-fg)}.badge.status-arrived{border-color:var(--st-arrived-line);background:var(--st-arrived-bg);color:var(--st-arrived-fg)}.badge.status-in_chair{border-color:var(--st-chair-line);background:var(--st-chair-bg);color:var(--st-chair-fg)}.badge.status-done{border-color:var(--st-done-line);background:var(--st-done-bg);color:var(--st-done-fg)}.badge.status-noshow{border-color:var(--st-noshow-line);background:var(--st-noshow-bg);color:var(--st-noshow-fg)}.badge.status-cancelled{border-color:var(--st-cancel-line);border-style:dashed;background:transparent;color:var(--st-cancel-fg);text-decoration:line-through}}@layer components{.card{min-inline-size:0;padding:0;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);box-shadow:none}.card.pad,.card.pad-md{padding:var(--card-pad)}.card.pad-sm{padding:var(--sp-3)}.card.pad-lg{padding:var(--sp-6)}.card:has(>.ui-table-wrap),.card:has(>.ui-filterbar){overflow:clip}.card-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--sp-2) var(--sp-3);min-block-size:52px;padding:var(--sp-3) var(--sp-4);border-block-end:1px solid var(--line)}.card-head h2,.card-head h3{margin:0;color:var(--ink-1);font-size:var(--fs-16);font-weight:var(--fw-semibold);line-height:var(--lh-tight)}.card-head p{margin:2px 0 0;color:var(--ink-3);font-size:var(--fs-13)}.card-body{padding:var(--card-pad)}.card-foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:var(--sp-2);padding:var(--sp-3) var(--sp-4);border-block-start:1px solid var(--line)}.section-title{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3);margin:0 0 var(--sp-3);color:var(--ink-1);font-size:var(--fs-16);font-weight:var(--fw-semibold);line-height:var(--lh-tight)}.section-title>span{display:inline-flex;align-items:center;gap:var(--sp-2);min-inline-size:0}.section-title>span>svg{flex:0 0 auto;color:var(--ink-3)}.stat-card{display:flex;flex-direction:column;gap:var(--sp-1);min-block-size:0}.stat-card>span{color:var(--ink-3);font-size:var(--fs-13);font-weight:var(--fw-medium);line-height:var(--lh-tight)}.stat-card>div{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3)}.stat-card>div>svg{flex:0 0 auto;color:var(--ink-3)}.stat-card strong{color:var(--ink-1);font-size:var(--fs-24);font-weight:var(--fw-semibold);font-variant-numeric:tabular-nums;line-height:var(--lh-tight);letter-spacing:0}.stat-card small{color:var(--ink-3);font-size:var(--fs-12);line-height:var(--lh-body)}.ui-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-2);min-inline-size:0}.ui-toolbar-spacer{flex:1 1 auto}.ui-toolbar>.ui-search{flex:1 1 240px;max-inline-size:360px}.ui-filterbar{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-2);padding:var(--sp-3) var(--sp-4);border-block-end:1px solid var(--line);background:var(--surface)}.ui-filterbar>.ui-search{flex:1 1 260px;max-inline-size:420px}.ui-filterbar-end{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-2);margin-inline-start:auto}.ui-filterbar .select{inline-size:auto;min-inline-size:140px}.ui-filterbar-summary{flex-basis:100%;color:var(--ink-3);font-size:var(--fs-13);font-variant-numeric:tabular-nums}@media(max-width:760px){.ui-filterbar{padding-inline:var(--sp-3)}.ui-filterbar>.ui-search{flex-basis:100%;max-inline-size:none}.ui-filterbar-end{margin-inline-start:0}}}@layer components{.avatar{--avatar-size: 32px;display:inline-grid;flex:0 0 auto;place-items:center;inline-size:var(--avatar-size);block-size:var(--avatar-size);overflow:hidden;border-radius:var(--r-full);background:var(--surface-sunken);color:var(--ink-2);box-shadow:inset 0 0 0 2px var(--avatar-ring, var(--line-strong));font-size:calc(var(--avatar-size) * .38);font-weight:var(--fw-semibold);line-height:1;letter-spacing:0;-webkit-user-select:none;user-select:none}.avatar.xs{--avatar-size: 20px;box-shadow:inset 0 0 0 1.5px var(--avatar-ring, var(--line-strong))}.avatar.sm{--avatar-size: 24px;box-shadow:inset 0 0 0 1.5px var(--avatar-ring, var(--line-strong))}.avatar.lg{--avatar-size: 40px}.avatar.xl{--avatar-size: 56px;box-shadow:inset 0 0 0 2.5px var(--avatar-ring, var(--line-strong))}.avatar img{inline-size:100%;block-size:100%;border-radius:inherit;object-fit:cover}}@layer components{.modal-backdrop{position:fixed;inset:0;z-index:var(--z-modal);display:grid;place-items:center;padding:var(--sp-6);overflow-y:auto;background:var(--scrim);animation:ui-fade-in var(--dur-2) var(--ease-out)}.modal{display:flex;flex-direction:column;inline-size:min(560px,100%);max-block-size:calc(100dvh - 2 * var(--sp-6));overflow:auto;padding:var(--sp-5) var(--sp-6);border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);color:var(--ink-1);box-shadow:var(--shadow-modal);animation:ui-rise-in var(--dur-3) var(--ease-out)}.modal:focus{outline:none}.modal.size-sm{inline-size:min(420px,100%)}.modal.size-md{inline-size:min(560px,100%)}.modal.size-lg{inline-size:min(720px,100%)}.modal.size-xl{inline-size:min(960px,100%)}.modal-head{display:flex;flex:0 0 auto;align-items:flex-start;justify-content:space-between;gap:var(--sp-4);margin-block-end:var(--sp-4)}.modal-head>div{display:grid;gap:var(--sp-1);min-inline-size:0}.modal-head h2{margin:0;color:var(--ink-1);font-size:var(--fs-16);font-weight:var(--fw-semibold);line-height:var(--lh-tight)}.modal-head p{max-inline-size:60ch;margin:0;color:var(--ink-3);font-size:var(--fs-13);line-height:var(--lh-body)}.modal-close{margin-block-start:-6px;margin-inline-end:-10px}.modal-foot{display:flex;flex:0 0 auto;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:var(--sp-2)}.modal>.modal-foot{position:sticky;inset-block-end:calc(-1 * var(--sp-5));margin:var(--sp-4) calc(-1 * var(--sp-6)) calc(-1 * var(--sp-5));padding:var(--sp-3) var(--sp-6);border-block-start:1px solid var(--line);background:var(--surface)}.modal-foot-note{margin-inline-end:auto;color:var(--ink-3);font-size:var(--fs-13)}.ui-confirm .modal-head{margin-block-end:var(--sp-2)}.ui-confirm-body{color:var(--ink-2);font-size:var(--fs-body);line-height:var(--lh-body)}.ui-confirm-body p{margin:0 0 var(--sp-2)}.ui-confirm-type{display:grid;gap:6px;margin-block-start:var(--sp-3)}.ui-confirm-type code{padding:0 4px;border-radius:var(--r-xs);background:var(--surface-sunken);color:var(--ink-1);font-family:inherit;font-weight:var(--fw-semibold)}.ui-drawer-backdrop{position:fixed;inset:0;z-index:var(--z-modal);display:flex;justify-content:flex-end;background:var(--scrim);animation:ui-fade-in var(--dur-2) var(--ease-out)}.ui-drawer-backdrop.no-scrim{background:transparent;pointer-events:none}.ui-drawer-backdrop.no-scrim>.ui-drawer{pointer-events:auto}.ui-drawer{--drawer-w: 440px;display:flex;flex-direction:column;inline-size:min(var(--drawer-w),100%);block-size:100%;border-inline-start:1px solid var(--line);background:var(--surface);color:var(--ink-1);box-shadow:var(--shadow-modal);animation:ui-slide-in-end var(--dur-3) var(--ease-out)}[dir=rtl] .ui-drawer{animation-name:ui-slide-in-end-rtl}.ui-drawer:focus{outline:none}.ui-drawer.size-sm{--drawer-w: 360px}.ui-drawer.size-lg{--drawer-w: 560px}.ui-drawer-head{display:flex;flex:0 0 auto;align-items:flex-start;justify-content:space-between;gap:var(--sp-3);padding:var(--sp-4) var(--sp-5);border-block-end:1px solid var(--line)}.ui-drawer-head>div{display:grid;gap:2px;min-inline-size:0}.ui-drawer-head h2{margin:0;font-size:var(--fs-16);font-weight:var(--fw-semibold);line-height:var(--lh-tight)}.ui-drawer-head p{margin:0;color:var(--ink-3);font-size:var(--fs-13)}.ui-drawer-actions{display:flex;flex:0 0 auto;align-items:center;gap:var(--sp-1);margin-block-start:-4px;margin-inline-end:-8px}.ui-drawer-body{flex:1 1 auto;min-block-size:0;overflow:auto;padding:var(--sp-5)}.ui-drawer-foot{display:flex;flex:0 0 auto;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:var(--sp-2);padding:var(--sp-3) var(--sp-5);border-block-start:1px solid var(--line)}@media(max-width:760px){.modal-backdrop{place-items:end stretch;padding:var(--sp-6) 0 0}.modal,.modal.size-sm,.modal.size-md,.modal.size-lg,.modal.size-xl{inline-size:100%;max-block-size:92dvh;padding:var(--sp-4) var(--sp-4) calc(var(--sp-5) + env(safe-area-inset-bottom,0px));border-inline:0;border-block-end:0;border-radius:var(--r-lg) var(--r-lg) 0 0;animation-name:ui-sheet-in}.modal>.modal-foot{inset-block-end:calc(-1 * (var(--sp-5) + env(safe-area-inset-bottom,0px)));margin:var(--sp-4) calc(-1 * var(--sp-4)) calc(-1 * (var(--sp-5) + env(safe-area-inset-bottom,0px)));padding:var(--sp-3) var(--sp-4) calc(var(--sp-3) + env(safe-area-inset-bottom,0px))}.modal-foot .btn{flex:1 1 auto;min-block-size:var(--control-lg)}.ui-drawer-backdrop{align-items:flex-end}.ui-drawer,.ui-drawer.size-sm,.ui-drawer.size-lg{inline-size:100%;block-size:auto;max-block-size:92dvh;border-inline-start:0;border-radius:var(--r-lg) var(--r-lg) 0 0;animation-name:ui-sheet-in}[dir=rtl] .ui-drawer{animation-name:ui-sheet-in}.ui-drawer-foot{padding-block-end:calc(var(--sp-3) + env(safe-area-inset-bottom,0px))}}@keyframes ui-fade-in{0%{opacity:0}}@keyframes ui-rise-in{0%{opacity:0;transform:translateY(8px)}}@keyframes ui-sheet-in{0%{transform:translateY(24px);opacity:0}}@keyframes ui-slide-in-end{0%{transform:translate(24px);opacity:0}}@keyframes ui-slide-in-end-rtl{0%{transform:translate(-24px);opacity:0}}}@layer components{.ui-popover{position:fixed;z-index:var(--z-popover);min-inline-size:180px;max-inline-size:min(380px,calc(100vw - 16px));max-block-size:min(420px,calc(100dvh - 16px));overflow:auto;padding:var(--sp-1);border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);color:var(--ink-1);box-shadow:var(--shadow-pop);animation:ui-pop-in var(--dur-2) var(--ease-out)}.ui-popover:focus{outline:none}.ui-popover.padded{padding:var(--sp-3)}.ui-menu{display:grid;gap:1px;margin:0;padding:0;list-style:none}.ui-menu-item{display:flex;align-items:center;gap:var(--sp-2);inline-size:100%;min-block-size:var(--control-sm);padding:0 10px;border:0;border-radius:var(--r-sm);background:transparent;color:var(--ink-1);font-size:var(--fs-body);line-height:var(--lh-tight);text-align:start;white-space:nowrap}.ui-menu-item>svg{flex:0 0 auto;color:var(--ink-3)}.ui-menu-item>.ui-menu-hint{margin-inline-start:auto;color:var(--ink-3);font-size:var(--fs-12)}.ui-menu-item:hover:not(:disabled),.ui-menu-item:focus-visible{background:var(--surface-sunken);outline:none}.ui-menu-item[aria-checked=true]{color:var(--accent);font-weight:var(--fw-medium)}.ui-menu-item[aria-checked=true]>svg{color:var(--accent)}.ui-menu-item.danger,.ui-menu-item.danger>svg{color:var(--danger)}.ui-menu-item.danger:hover:not(:disabled),.ui-menu-item.danger:focus-visible{background:var(--danger-bg)}.ui-menu-item:disabled{color:var(--ink-disabled);cursor:not-allowed}.ui-menu-sep{block-size:1px;margin:var(--sp-1) calc(-1 * var(--sp-1));background:var(--line)}.ui-menu-label{padding:6px 10px 2px;color:var(--ink-3);font-size:var(--fs-12);font-weight:var(--fw-medium)}@keyframes ui-pop-in{0%{opacity:0;transform:translateY(-4px)}}}@layer components{.ui-tabs{display:flex;gap:var(--sp-1);min-inline-size:0;overflow-x:auto;border-block-end:1px solid var(--line);scrollbar-width:none}.ui-tabs::-webkit-scrollbar{display:none}.ui-tab{position:relative;display:inline-flex;flex:0 0 auto;align-items:center;gap:6px;min-block-size:40px;padding:0 var(--sp-3);border:0;background:transparent;color:var(--ink-3);font-size:var(--fs-14);font-weight:var(--fw-medium);white-space:nowrap;transition:color var(--dur-1) var(--ease-out)}.ui-tab:hover{color:var(--ink-1)}.ui-tab:focus-visible{outline-offset:-2px;border-radius:var(--r-sm)}.ui-tab>svg{flex:0 0 auto}.ui-tab[aria-selected=true]{color:var(--ink-1);font-weight:var(--fw-semibold)}.ui-tab[aria-selected=true]:after{content:"";position:absolute;inset-inline:var(--sp-2);inset-block-end:-1px;block-size:2px;border-radius:2px 2px 0 0;background:var(--accent)}.ui-tab-count{min-inline-size:18px;padding:0 5px;border-radius:var(--r-xs);background:var(--surface-sunken);color:var(--ink-3);font-size:var(--fs-12);font-weight:var(--fw-medium);font-variant-numeric:tabular-nums;line-height:18px;text-align:center}.ui-tab[aria-selected=true] .ui-tab-count{background:var(--accent-subtle);color:var(--accent-hover)}.ui-seg{display:inline-flex;flex:0 0 auto;gap:2px;padding:2px;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface-sunken)}.ui-seg.block{display:flex}.ui-seg.block>.ui-seg-item{flex:1 1 0}.ui-seg-item{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-block-size:calc(var(--control-md) - 6px);padding:0 var(--sp-3);border:1px solid transparent;border-radius:var(--r-xs);background:transparent;color:var(--ink-2);font-size:var(--fs-13);font-weight:var(--fw-medium);white-space:nowrap;transition:background-color var(--dur-1) var(--ease-out),color var(--dur-1) var(--ease-out)}.ui-seg.sm .ui-seg-item{min-block-size:calc(var(--control-sm) - 6px);padding:0 10px;font-size:var(--fs-12)}.ui-seg-item:hover{color:var(--ink-1)}.ui-seg-item:focus-visible{outline-offset:0}.ui-seg-item[aria-checked=true]{border-color:var(--line-strong);background:var(--surface);color:var(--ink-1);font-weight:var(--fw-semibold)}.ui-seg-item:disabled{color:var(--ink-disabled);cursor:not-allowed}.ui-seg-item .ui-tab-count{background:transparent}@media(pointer:coarse){.ui-seg-item{min-block-size:calc(var(--control-lg) - 6px)}}}@layer components{.ui-table-wrap{--table-sticky-top: calc(var(--page-head-h) - var(--main-pad, 0px));position:relative;min-inline-size:0}.ui-table-wrap.scroll-x{overflow-x:auto}.modal .ui-table-wrap,.ui-drawer .ui-table-wrap{--table-sticky-top: 0px}.ui-table{inline-size:100%;border-collapse:separate;border-spacing:0;color:var(--ink-1);font-size:var(--fs-body);font-variant-numeric:tabular-nums}.ui-table caption{padding:var(--sp-3) var(--sp-4);color:var(--ink-3);font-size:var(--fs-13);text-align:start}.ui-table th{block-size:36px;padding:0 var(--sp-3);border-block-end:1px solid var(--line);background:var(--surface);color:var(--ink-3);font-size:var(--fs-13);font-weight:var(--fw-medium);line-height:var(--lh-tight);text-align:start;white-space:nowrap;vertical-align:middle}.ui-table.sticky thead th{position:sticky;inset-block-start:var(--table-sticky-top);z-index:2}.ui-table td{block-size:var(--row-h);padding:6px var(--sp-3);border-block-end:1px solid var(--line);line-height:var(--lh-tight);vertical-align:middle}.ui-table tbody tr:last-child td{border-block-end:0}.ui-table :is(th,td):first-child{padding-inline-start:var(--sp-4)}.ui-table :is(th,td):last-child{padding-inline-end:var(--sp-4)}.ui-table tbody tr{transition:background-color var(--dur-1) var(--ease-out)}.ui-table tbody tr:hover{background:var(--surface-hover)}.ui-table tbody tr.is-clickable{cursor:pointer}.ui-table tbody tr.is-clickable:focus-visible{outline-offset:-2px}.ui-table tbody tr.is-selected{background:var(--accent-subtle)}.ui-table .align-end,.ui-table .num{text-align:end}.ui-table .align-center{text-align:center}.ui-table .num{font-variant-numeric:tabular-nums;white-space:nowrap}.ui-table .nowrap{white-space:nowrap}.ui-table .shrink{inline-size:1%;white-space:nowrap}.ui-cell-main{display:grid;gap:1px;min-inline-size:0}.ui-cell-main>strong{overflow:hidden;font-weight:var(--fw-medium);text-overflow:ellipsis;white-space:nowrap}.ui-cell-main>small{overflow:hidden;color:var(--ink-3);font-size:var(--fs-12);text-overflow:ellipsis;white-space:nowrap}.ui-cell-person{display:flex;align-items:center;gap:10px;min-inline-size:0}.ui-cell-actions{display:flex;align-items:center;justify-content:flex-end;gap:2px}.ui-th-sort{display:inline-flex;align-items:center;gap:var(--sp-1);margin-inline:-4px;padding:2px 4px;border:0;border-radius:var(--r-xs);background:transparent;color:inherit;font:inherit;white-space:nowrap}.ui-th-sort:hover{background:var(--surface-sunken);color:var(--ink-1)}.ui-th-sort>svg{flex:0 0 auto;opacity:.55}.ui-th-sort:hover>svg{opacity:1}th[aria-sort=ascending] .ui-th-sort,th[aria-sort=descending] .ui-th-sort{color:var(--ink-1)}th[aria-sort=ascending] .ui-th-sort>svg,th[aria-sort=descending] .ui-th-sort>svg{color:var(--accent);opacity:1}.ui-table .align-end .ui-th-sort,.ui-table .num .ui-th-sort{flex-direction:row-reverse}.ui-table-empty td{block-size:auto;padding:0}.ui-table-empty:hover{background:transparent}.ui-skeleton-row td{block-size:var(--row-h)}.ui-pagination{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--sp-2) var(--sp-3);min-block-size:48px;padding:var(--sp-2) var(--sp-4);border-block-start:1px solid var(--line);color:var(--ink-3);font-size:var(--fs-13);font-variant-numeric:tabular-nums}.ui-pagination-pages{display:flex;align-items:center;gap:var(--sp-1)}.ui-pagination-pages>span{min-inline-size:64px;color:var(--ink-2);text-align:center}@media(pointer:coarse){.ui-table td{block-size:var(--row-h-touch)}}@media(max-width:760px){.ui-table.cards,.ui-table.cards tbody,.ui-table.cards tr,.ui-table.cards td{display:block}.ui-table.cards thead{position:absolute;inline-size:1px;block-size:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.ui-table.cards tbody tr{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px var(--sp-3);padding:var(--sp-3) var(--sp-4);border-block-end:1px solid var(--line)}.ui-table.cards tbody tr:last-child{border-block-end:0}.ui-table.cards td,.ui-table.cards td:first-child,.ui-table.cards td:last-child{display:flex;grid-column:1 / -1;align-items:baseline;justify-content:space-between;gap:var(--sp-3);block-size:auto;min-inline-size:0;padding:0;border:0;text-align:end}.ui-table.cards td:before{content:attr(data-label);flex:0 0 auto;color:var(--ink-3);font-size:var(--fs-13);text-align:start}.ui-table.cards td[data-mobile=primary]{grid-column:1;grid-row:1;justify-content:flex-start;font-weight:var(--fw-medium);text-align:start}.ui-table.cards td[data-mobile=aside]{grid-column:2;grid-row:1;align-self:center}.ui-table.cards td[data-mobile=actions]{justify-content:flex-end}.ui-table.cards td[data-mobile=primary]:before,.ui-table.cards td[data-mobile=aside]:before,.ui-table.cards td[data-mobile=actions]:before,.ui-table.cards td[data-label=""]:before{content:none}.ui-table.cards td[data-mobile=hidden]{display:none}.ui-table.cards td.shrink{inline-size:auto}.ui-table.cards .ui-table-empty{display:block;padding:0}.ui-table.cards .ui-table-empty td{display:block}.ui-table.cards .ui-table-empty td:before{content:none}}}@layer components{.ui-empty{display:grid;justify-items:center;gap:var(--sp-1);padding:var(--sp-8) var(--sp-6);color:var(--ink-3);text-align:center}.ui-empty.compact{padding:var(--sp-6) var(--sp-4)}.ui-empty.start{justify-items:start;text-align:start}.ui-empty-icon{margin-block-end:var(--sp-1);color:var(--ink-3)}.ui-empty.danger .ui-empty-icon{color:var(--danger)}.ui-empty-title{margin:0;color:var(--ink-1);font-size:var(--fs-16);font-weight:var(--fw-semibold);line-height:var(--lh-tight);text-wrap:balance}.ui-empty.compact .ui-empty-title{font-size:var(--fs-14)}.ui-empty-body{max-inline-size:46ch;margin:0;color:var(--ink-3);font-size:var(--fs-13);line-height:var(--lh-body);text-wrap:pretty}.ui-empty-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--sp-2);margin-block-start:var(--sp-3)}.ui-empty.start .ui-empty-actions{justify-content:flex-start}.ui-skeleton{position:relative;display:block;overflow:hidden;background:var(--surface-sunken)}.ui-skeleton{inline-size:100%;block-size:12px;border-radius:var(--r-xs)}.ui-skeleton.text{block-size:.8em;margin-block:.35em}.ui-skeleton.circle{border-radius:var(--r-full)}.ui-skeleton.block{border-radius:var(--r-md)}.ui-skeleton:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,var(--shimmer),transparent);transform:translate(-100%);animation:ui-shimmer 1.4s var(--ease-out) infinite}[dir=rtl] .ui-skeleton:after{animation-name:ui-shimmer-rtl}.ui-skeleton-lines{display:grid;gap:var(--sp-2)}.ui-skeleton-lines>.ui-skeleton:last-child:not(:first-child){inline-size:60%}@keyframes ui-shimmer{to{transform:translate(100%)}}@keyframes ui-shimmer-rtl{0%{transform:translate(100%)}to{transform:translate(-100%)}}.ui-loading{display:flex;align-items:center;justify-content:center;gap:var(--sp-2);min-block-size:96px;padding:var(--sp-6);color:var(--ink-3);font-size:var(--fs-13)}.ui-loading .ui-spinner{color:var(--accent)}.ui-notice{display:flex;align-items:flex-start;gap:10px;padding:10px var(--sp-3);border:1px solid var(--info-line);border-radius:var(--r-md);background:var(--info-bg);color:var(--ink-1);font-size:var(--fs-13);line-height:var(--lh-body)}.ui-notice>svg{flex:0 0 auto;margin-block-start:2px;color:var(--info)}.ui-notice-body{display:grid;flex:1 1 auto;gap:2px;min-inline-size:0}.ui-notice-body strong{font-weight:var(--fw-semibold)}.ui-notice-action{flex:0 0 auto;margin-block:-4px}.ui-notice.success{border-color:var(--success-line);background:var(--success-bg)}.ui-notice.success>svg{color:var(--success)}.ui-notice.warning{border-color:var(--warning-line);background:var(--warning-bg)}.ui-notice.warning>svg{color:var(--warning)}.ui-notice.danger{border-color:var(--danger-line);background:var(--danger-bg)}.ui-notice.danger>svg{color:var(--danger)}.ui-notice.neutral{border-color:var(--line);background:var(--surface-hover)}.ui-notice.neutral>svg{color:var(--ink-3)}}@layer layout{.app-shell{display:grid;grid-template-columns:var(--sidebar-w) minmax(0,1fr);grid-template-rows:minmax(0,1fr);height:100vh;height:100dvh;overflow:hidden;background:var(--bg)}.app-shell.sidebar-collapsed{grid-template-columns:var(--sidebar-w-collapsed) minmax(0,1fr)}.sidebar{position:sticky;top:0;display:flex;flex-direction:column;gap:var(--sp-4);height:100vh;height:100dvh;min-height:0;padding:var(--sp-3) var(--sp-2);overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;background:var(--sidebar-bg);color:var(--sidebar-fg);scrollbar-width:thin;scrollbar-color:var(--navy-600) transparent}.sidebar :focus-visible{outline-color:var(--sidebar-mark)}.sidebar-head{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-1);min-height:40px;padding-inline:var(--sp-2) 0}.sidebar-brand{display:flex;align-items:center;min-width:0}.brand{display:flex;align-items:center;gap:var(--sp-2);color:var(--ink-1);font-size:17px;font-weight:var(--fw-semibold);line-height:1}.brand.light,.sidebar-head .brand{color:var(--sidebar-fg)}.brand-icon{display:block;flex:0 0 auto;inline-size:26px;block-size:24px;object-fit:contain}.brand-word{direction:ltr;unicode-bidi:isolate;font-weight:var(--fw-semibold);letter-spacing:0}.brand-word b{font-weight:inherit;color:var(--accent)}.brand.light .brand-word b{color:var(--sidebar-mark)}.sidebar .icon-btn{display:grid;place-items:center;flex:0 0 auto;inline-size:28px;block-size:28px;padding:0;border:0;border-radius:var(--r-sm);background:transparent;color:var(--sidebar-fg-muted);transition:background-color var(--dur-1) var(--ease-out),color var(--dur-1) var(--ease-out)}.sidebar .icon-btn:hover{background:var(--sidebar-hover);color:var(--sidebar-fg)}[dir=rtl] .sidebar-collapse-btn svg{transform:scaleX(-1)}.sidebar .nav{display:flex;flex-direction:column;gap:var(--sp-4)}.nav-group{display:flex;flex-direction:column;gap:2px}.nav-group-label{padding:0 var(--sp-3) var(--sp-1);color:var(--sidebar-fg-muted);font-size:var(--fs-12);font-weight:var(--fw-medium);line-height:var(--lh-tight)}.sidebar .nav button,.sidebar .language-toggle{display:flex;align-items:center;gap:10px;inline-size:100%;min-block-size:var(--control-md);padding:0 var(--sp-3);border:0;border-radius:var(--r-sm);background:transparent;color:var(--sidebar-fg-muted);font-size:var(--fs-14);font-weight:var(--fw-medium);line-height:var(--lh-tight);text-align:start;transition:background-color var(--dur-1) var(--ease-out),color var(--dur-1) var(--ease-out)}.sidebar .nav button svg,.sidebar .language-toggle svg{flex:0 0 auto}.sidebar .nav button:hover,.sidebar .language-toggle:hover{background:var(--sidebar-hover);color:var(--sidebar-fg)}.sidebar .nav button.active{background:var(--sidebar-active);color:var(--sidebar-fg);font-weight:var(--fw-semibold)}.sidebar .nav button.active svg{color:var(--sidebar-mark)}.nav-label{min-inline-size:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-foot{display:grid;gap:2px;margin-block-start:auto;padding-block-start:var(--sp-3);border-block-start:1px solid var(--sidebar-line)}.sidebar-foot .nav{gap:2px}.user-card{display:flex;align-items:center;gap:10px;margin-block-start:var(--sp-2);padding:var(--sp-2);border-radius:var(--r-md)}.user-card>div:not(.avatar){display:grid;gap:1px;min-inline-size:0}.user-card strong{overflow:hidden;color:var(--sidebar-fg);font-size:var(--fs-13);font-weight:var(--fw-semibold);text-overflow:ellipsis;white-space:nowrap}.user-card span{overflow:hidden;color:var(--sidebar-fg-muted);font-size:var(--fs-12);text-overflow:ellipsis;white-space:nowrap}.user-card .icon-btn{margin-inline-start:auto}.sidebar .avatar{--avatar-size: 28px;background:var(--navy-600);color:var(--sidebar-fg);box-shadow:0 0 0 2px var(--sidebar-bg),0 0 0 3px var(--avatar-ring, var(--sidebar-mark))}.sidebar.collapsed{align-items:stretch;padding-inline:var(--sp-2)}.sidebar.collapsed .sidebar-head{flex-direction:column;gap:var(--sp-2);padding-inline:0}.sidebar.collapsed .brand-word,.sidebar.collapsed .nav-label,.sidebar.collapsed .nav-group-label{display:none}.sidebar.collapsed .nav-group+.nav-group{padding-block-start:var(--sp-3);border-block-start:1px solid var(--sidebar-line)}.sidebar.collapsed .nav button,.sidebar.collapsed .language-toggle{justify-content:center;padding:0}.sidebar.collapsed .user-card{flex-direction:column;gap:var(--sp-2);padding-inline:0}.sidebar.collapsed .user-card .icon-btn{margin-inline-start:0}.main{--main-pad: var(--page-gutter);min-inline-size:0;min-block-size:0;padding:var(--main-pad);overflow:auto;overscroll-behavior:contain;background:var(--bg)}.page-head{position:sticky;top:calc(-1 * var(--main-pad));z-index:var(--z-sticky);display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--sp-3) var(--sp-4);min-block-size:var(--page-head-h);margin:calc(-1 * var(--main-pad)) calc(-1 * var(--main-pad)) var(--sp-5);padding:var(--sp-3) var(--main-pad);background:var(--bg);border-block-end:1px solid var(--line)}.page-head-main{display:flex;align-items:center;gap:var(--sp-3);min-inline-size:0}.page-head-main>div{min-inline-size:0}.page-head h1{margin:0;color:var(--ink-1);font-size:var(--fs-20);font-weight:var(--fw-semibold);line-height:var(--lh-tight);letter-spacing:0}.page-head h1 .page-head-accent{margin-inline-start:var(--sp-2);color:var(--ink-3);font-size:var(--fs-14);font-weight:var(--fw-regular);font-variant-numeric:tabular-nums}.page-head p{margin:2px 0 0;color:var(--ink-3);font-size:var(--fs-13);line-height:var(--lh-body)}.page-head-meta{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-2);margin-block-start:var(--sp-1)}.head-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-2)}.mobile-tabbar{display:none}@media(max-width:760px){.app-shell,.app-shell.sidebar-collapsed{grid-template-columns:minmax(0,1fr)}.sidebar,.sidebar.collapsed{display:none}.main{padding-block-end:calc(var(--main-pad) + var(--tabbar-h) + env(safe-area-inset-bottom,0px))}.page-head{min-block-size:56px}.page-head h1{font-size:18px}.mobile-tabbar{position:fixed;inset-inline:0;inset-block-end:0;z-index:var(--z-tabbar);display:flex;block-size:calc(var(--tabbar-h) + env(safe-area-inset-bottom,0px));padding:0 var(--sp-1) env(safe-area-inset-bottom,0px);background:var(--surface);border-block-start:1px solid var(--line)}.mobile-tabbar button{position:relative;display:flex;flex:1;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-inline-size:0;border:0;background:transparent;color:var(--ink-3);font-size:var(--fs-12);font-weight:var(--fw-medium);line-height:var(--lh-tight)}.mobile-tabbar button span{max-inline-size:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mobile-tabbar button.active{color:var(--accent);font-weight:var(--fw-semibold)}.mobile-tabbar button.active:before{content:"";position:absolute;inset-block-start:-1px;inset-inline:30%;block-size:2px;border-radius:0 0 var(--r-xs) var(--r-xs);background:var(--accent)}.mobile-sheet-backdrop{position:fixed;inset:0;z-index:var(--z-modal);display:flex;align-items:flex-end;background:var(--scrim)}.mobile-sheet{display:grid;gap:var(--sp-3);inline-size:100%;max-block-size:80vh;overflow:auto;padding:var(--sp-4) var(--sp-4) calc(var(--sp-6) + env(safe-area-inset-bottom,0px));border-radius:var(--r-lg) var(--r-lg) 0 0;background:var(--surface);box-shadow:var(--shadow-modal)}.mobile-sheet-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-block-end:var(--sp-3);border-block-end:1px solid var(--line)}.mobile-sheet-user{display:flex;align-items:center;gap:10px;min-inline-size:0}.mobile-sheet-user span{display:grid;min-inline-size:0}.mobile-sheet-user strong{font-size:var(--fs-14);font-weight:var(--fw-semibold)}.mobile-sheet-user small{color:var(--ink-3);font-size:var(--fs-13)}.mobile-sheet-close{display:grid;place-items:center;inline-size:var(--control-lg);block-size:var(--control-lg);border:0;border-radius:var(--r-sm);background:transparent;color:var(--ink-2)}.mobile-sheet-close:hover{background:var(--surface-sunken)}.mobile-sheet-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sp-2)}.mobile-sheet-grid button{display:flex;align-items:center;gap:10px;min-block-size:var(--row-h-touch);padding:0 var(--sp-3);border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);color:var(--ink-1);font-size:var(--fs-14);font-weight:var(--fw-medium);text-align:start}.mobile-sheet-grid button svg{flex:0 0 auto;color:var(--ink-3)}.mobile-sheet-grid button.active{border-color:var(--accent-line);background:var(--accent-subtle);color:var(--accent)}.mobile-sheet-grid button.active svg{color:var(--accent)}.mobile-sheet-grid button.danger,.mobile-sheet-grid button.danger svg{color:var(--danger)}}}@layer components{.btn{padding:0 16px;border-radius:var(--r-sm);font-weight:var(--fw-semibold);box-shadow:var(--shadow-btn);transition:background-color var(--dur-1) var(--ease-out),border-color var(--dur-1) var(--ease-out),box-shadow var(--dur-1) var(--ease-out),transform var(--dur-1) var(--ease-out),color var(--dur-1) var(--ease-out)}.btn:active:not(:disabled):not([aria-disabled=true]){transform:translateY(1px)}.btn:focus-visible{outline:none;box-shadow:var(--shadow-btn),var(--ring)}.btn.secondary{box-shadow:var(--shadow-xs)}.btn.secondary:hover:not(:disabled){box-shadow:var(--shadow-sm)}.btn.ghost,.btn.link{box-shadow:none}.btn.danger-soft{box-shadow:var(--shadow-xs)}.btn.sm{padding:0 12px;border-radius:calc(var(--r-sm) - 2px)}.btn.lg{padding:0 20px}.btn.icon-only{padding:0}.icon-btn{border-radius:calc(var(--r-sm) - 2px)}.input,.select,.textarea,:where(textarea){padding-inline:12px;border-color:var(--line-strong);border-radius:var(--r-sm);box-shadow:var(--shadow-xs);transition:border-color var(--dur-1) var(--ease-out),box-shadow var(--dur-1) var(--ease-out)}.input:focus,.select:focus,.textarea:focus,:where(textarea):focus{border-color:var(--teal-500);outline:none;box-shadow:var(--ring)}.field>span:first-child,.field-label{color:var(--ink-1);font-weight:var(--fw-medium)}.card{border-color:var(--line);border-radius:var(--r-md);box-shadow:var(--shadow-sm)}.card-head{min-block-size:56px;padding:var(--sp-4) var(--card-pad)}.card-head h2,.card-head h3{font-size:15px}.card-foot{padding:var(--sp-3) var(--card-pad);background:var(--surface-hover);border-end-start-radius:var(--r-md);border-end-end-radius:var(--r-md)}.stat-card strong{font-size:var(--fs-28);letter-spacing:-.01em}.badge{min-block-size:22px;padding:0 9px;border-radius:var(--r-full);font-size:var(--fs-12)}.badge.count{padding:0 7px}.ui-tabs{gap:var(--sp-1);padding:4px;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface);box-shadow:var(--shadow-xs);inline-size:fit-content;max-inline-size:100%}.ui-tab{min-block-size:34px;padding:0 14px;border-radius:calc(var(--r-sm) - 3px);color:var(--ink-2);transition:background-color var(--dur-1) var(--ease-out),color var(--dur-1) var(--ease-out)}.ui-tab:hover{background:var(--surface-hover)}.ui-tab[aria-selected=true]{background:var(--navy-800);color:var(--white)}.ui-tab[aria-selected=true]:after{display:none}.ui-tab[aria-selected=true] svg{color:var(--teal-300)}.ui-tab[aria-selected=true] .ui-tab-count{background:var(--on-dark-subtle);color:var(--white)}.ui-tab-count{border-radius:var(--r-full)}.ui-seg{padding:3px;border-radius:var(--r-sm);background:var(--surface-sunken);border-color:transparent}.ui-seg-item{border-radius:calc(var(--r-sm) - 3px)}.ui-seg-item[aria-checked=true]{border-color:transparent;box-shadow:var(--shadow-sm)}.ui-table thead th{background:var(--surface-hover);color:var(--ink-3);font-size:var(--fs-12);font-weight:var(--fw-semibold)}.ui-table tbody tr{transition:background-color var(--dur-1) var(--ease-out)}.avatar{font-weight:var(--fw-semibold)}}@layer layout{.sidebar{padding:var(--sp-4) var(--sp-3);gap:var(--sp-5)}.sidebar .nav button,.sidebar .language-toggle{min-block-size:40px;border-radius:var(--r-sm);font-size:var(--fs-14)}.sidebar .nav button.active{background:var(--sidebar-active);color:var(--white);font-weight:var(--fw-semibold);box-shadow:inset 0 0 0 1px var(--sidebar-active-line)}.nav-group-label{font-size:11px;letter-spacing:.02em;opacity:.8}.page-head{border-block-end:0;padding-block:var(--sp-5) var(--sp-3)}.page-head h1{font-size:24px;font-weight:var(--fw-semibold);letter-spacing:-.01em}.page-head p{font-size:var(--fs-14)}@media(max-width:760px){.page-head h1{font-size:20px}}}@layer utilities{.sr-only{position:absolute!important;inline-size:1px!important;block-size:1px!important;margin:-1px!important;padding:0!important;overflow:hidden!important;clip-path:inset(50%)!important;border:0!important;white-space:nowrap!important}.u-muted{color:var(--ink-3)}.u-row{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-2)}}@layer features{.app-loading{margin:0;padding:var(--sp-5) var(--page-gutter);color:var(--ink-3);font-size:var(--fs-13)}}@layer features{.modal.bk-modal{inline-size:min(760px,100%)}.bk-body{display:grid;gap:var(--sp-5);min-inline-size:0}.bk-section{display:grid;gap:var(--sp-2);min-inline-size:0}.bk-section-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--sp-2) var(--sp-3);min-block-size:var(--control-md)}.bk-section-head .date-control{inline-size:auto;min-inline-size:190px}.bk-section-title{margin:0;color:var(--ink-1);font-size:var(--fs-14);font-weight:var(--fw-semibold);line-height:var(--lh-tight)}.bk-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sp-3) var(--sp-4);align-items:start}.bk-span{grid-column:1 / -1}.bk-muted{color:var(--ink-3);font-size:var(--fs-13);font-variant-numeric:tabular-nums}.bk-hint{margin:0;color:var(--ink-3);font-size:var(--fs-13);line-height:var(--lh-body)}.bk-hint.is-warning{color:var(--warning)}.bk-picker{display:grid;gap:var(--sp-2);min-inline-size:0}.bk-search{display:flex;gap:var(--sp-2);align-items:center}.bk-search>.ui-input-wrap{flex:1 1 auto}.bk-results{display:grid;max-block-size:320px;overflow-y:auto;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface)}.bk-results-note{margin:0;padding:var(--sp-3);color:var(--ink-3);font-size:var(--fs-13)}.bk-results-list{display:grid}.bk-results-list:empty{display:none}.bk-results-note+.bk-results-list,.bk-results-list+.bk-results-note{border-block-start:1px solid var(--line)}.bk-option{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3);min-block-size:var(--row-h);padding:var(--sp-2) var(--sp-3);border:0;border-block-start:1px solid var(--line);background:transparent;color:var(--ink-1);font:inherit;text-align:start;cursor:pointer}.bk-option:first-child{border-block-start:0}.bk-option.is-active{background:var(--accent-subtle)}.bk-option.is-create{justify-content:flex-start;color:var(--accent);font-weight:var(--fw-medium)}.bk-option-main{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px var(--sp-2);min-inline-size:0}.bk-option-main strong{font-weight:var(--fw-medium)}.bk-picked{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3);padding:var(--sp-2) var(--sp-3);border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface-hover)}.bk-picked-main{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-1) var(--sp-3);min-inline-size:0}.bk-picked-main strong{font-weight:var(--fw-semibold)}.bk-flags{display:inline-flex;flex-wrap:wrap;gap:var(--sp-1);min-inline-size:0}.bk-flags .badge{max-inline-size:200px}.bk-flag-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bk-new{display:grid;gap:var(--sp-3);padding:var(--sp-4);border:1px solid var(--line);border-radius:var(--r-md)}.bk-new-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:var(--sp-2)}.bk-recall{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-2) var(--sp-3);min-inline-size:0}.bk-recall>.ui-seg{max-inline-size:100%;overflow-x:auto;scrollbar-width:none}.bk-days{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(46px,1fr);gap:var(--sp-1);overflow-x:auto;padding-block-end:2px;scrollbar-width:thin}.bk-day{display:grid;justify-items:center;gap:0;min-block-size:48px;padding:var(--sp-1) 2px;border:1px solid var(--line-strong);border-radius:var(--r-sm);background:var(--surface);color:var(--ink-2);font:inherit;cursor:pointer;transition:border-color var(--dur-1) var(--ease-out),background-color var(--dur-1) var(--ease-out)}.bk-day>span{font-size:var(--fs-12);line-height:1.4;white-space:nowrap}.bk-day>b{color:var(--ink-1);font-size:var(--fs-16);font-weight:var(--fw-semibold);font-variant-numeric:tabular-nums;line-height:1.3}.bk-day:hover:not(:disabled){border-color:var(--ink-3)}.bk-day[aria-pressed=true]{border-color:var(--accent);background:var(--accent);color:var(--on-accent)}.bk-day[aria-pressed=true]>b{color:var(--on-accent)}.bk-day:disabled{border-style:dashed;background:var(--surface-sunken);color:var(--ink-3);cursor:not-allowed}.bk-day:disabled>b{color:var(--ink-3)}.bk-slots{display:grid;grid-template-columns:repeat(auto-fill,minmax(84px,1fr));gap:var(--sp-1)}.bk-slots-placeholder{min-block-size:var(--control-sm)}.bk-slot{min-block-size:var(--control-sm);padding:0 var(--sp-2);border:1px solid var(--line-strong);border-radius:var(--r-sm);background:var(--surface);color:var(--ink-1);font:inherit;font-size:var(--fs-13);font-variant-numeric:tabular-nums;cursor:pointer;transition:border-color var(--dur-1) var(--ease-out),background-color var(--dur-1) var(--ease-out)}.bk-slot:hover{border-color:var(--accent)}.bk-slot[aria-pressed=true]{border-color:var(--accent);background:var(--accent);color:var(--on-accent)}.bk-slot.is-custom{border-style:dashed}.bk-custom-time{display:flex;align-items:flex-end}.bk-custom-time .field{inline-size:min(220px,100%)}.bk-summary{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-inline-size:0;flex:1 1 200px}.bk-problems{margin:0 0 var(--sp-2);padding-inline-start:var(--sp-5)}.bk-problems li+li{margin-block-start:var(--sp-1)}@media(max-width:640px){.bk-grid{grid-template-columns:minmax(0,1fr)}.bk-search{flex-wrap:wrap}.bk-search>.btn{inline-size:100%}.bk-section-head .date-control{inline-size:100%}.bk-summary{flex-basis:100%;white-space:normal}}}@layer features{.pt-page{display:grid;gap:var(--sp-5);min-inline-size:0}.pt-page>.page-head{margin-block-end:0}:where(.pt-page) [dir=auto]:not(input,textarea,p){text-align:match-parent}.pt-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));gap:var(--sp-4)}.pt-kpi{--kpi-fg: var(--accent);--kpi-bg: var(--accent-subtle);display:flex;align-items:center;gap:var(--sp-3);min-inline-size:0;padding:var(--sp-4) var(--sp-5);border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);color:var(--ink-1);font:inherit;text-align:start;box-shadow:var(--shadow-sm);cursor:pointer;transition:box-shadow var(--dur-1) var(--ease-out),border-color var(--dur-1) var(--ease-out)}.pt-kpi.tone-danger{--kpi-fg: var(--danger);--kpi-bg: var(--danger-bg)}.pt-kpi.tone-warning{--kpi-fg: var(--warning);--kpi-bg: var(--warning-bg)}.pt-kpi.tone-info{--kpi-fg: var(--info);--kpi-bg: var(--info-bg)}.pt-kpi:hover{box-shadow:var(--shadow-md)}.pt-kpi:focus-visible{outline:none;border-color:var(--teal-500);box-shadow:var(--shadow-sm),var(--ring)}.pt-kpi[aria-pressed=true]{border-color:var(--kpi-fg);box-shadow:inset 0 0 0 1px var(--kpi-fg),var(--shadow-sm)}.pt-kpi-icon{display:grid;flex:0 0 auto;place-items:center;inline-size:44px;block-size:44px;border-radius:var(--r-sm);background:var(--kpi-bg);color:var(--kpi-fg)}.pt-kpi-text{display:grid;gap:2px;min-inline-size:0}.pt-kpi-label{overflow:hidden;color:var(--ink-3);font-size:var(--fs-13);font-weight:var(--fw-medium);line-height:var(--lh-tight);text-overflow:ellipsis;white-space:nowrap}.pt-kpi-value{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px var(--sp-2);min-block-size:30px}.pt-kpi-value>bdi{color:var(--ink-1);font-size:var(--fs-24);font-weight:var(--fw-semibold);font-variant-numeric:tabular-nums;letter-spacing:-.01em;line-height:1.25}.pt-kpi-value>.ui-skeleton{align-self:center}.pt-kpi-value>small{color:var(--ink-3);font-size:var(--fs-12);font-variant-numeric:tabular-nums}.pt-list{min-inline-size:0}.pt-list .ui-filterbar{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:var(--sp-3);padding:var(--sp-4) var(--card-pad)}.pt-list .ui-filterbar>.ui-search{grid-column:1;inline-size:100%;max-inline-size:520px}.pt-list .ui-filterbar-end{grid-column:2;grid-row:1;margin:0}.pt-list .ui-filterbar .select{min-inline-size:200px}.pt-list .ui-filterbar-summary{grid-column:1 / -1}.pt-quick{grid-column:1 / -1;display:flex;min-inline-size:0;max-inline-size:100%;overflow-x:auto;scrollbar-width:none}.pt-quick::-webkit-scrollbar{display:none}.pt-quick .ui-seg{gap:2px;padding:4px;border:0;border-radius:var(--r-full);background:var(--surface-sunken)}.pt-quick .ui-seg-item{gap:var(--sp-2);min-block-size:32px;padding:0 var(--sp-4);border:0;border-radius:var(--r-full);color:var(--ink-2);font-size:var(--fs-13);font-weight:var(--fw-medium);white-space:nowrap}.pt-quick .ui-seg-item:hover{color:var(--ink-1)}.pt-quick .ui-seg-item[aria-checked=true]{background:var(--surface);color:var(--ink-1);font-weight:var(--fw-semibold);box-shadow:var(--shadow-sm)}.pt-quick .ui-seg-item .ui-tab-count{min-inline-size:22px;padding:0 6px;border-radius:var(--r-full);background:var(--surface);color:var(--ink-2);font-size:var(--fs-12);font-weight:var(--fw-semibold);font-variant-numeric:tabular-nums;line-height:20px;text-align:center}.pt-quick .ui-seg-item[aria-checked=true] .ui-tab-count{background:var(--accent-subtle);color:var(--accent)}.pt-notice{margin:var(--sp-3) var(--card-pad) 0}.pt-table :is(th,td):first-child{padding-inline-start:var(--card-pad)}.pt-table :is(th,td):last-child{padding-inline-end:var(--card-pad)}@media(min-width:761px){.pt-table td{block-size:var(--row-h-touch);padding-block:var(--sp-2)}.pt-table thead th{block-size:40px}}.pt-table tbody tr.is-clickable:hover .pt-name-line>strong{color:var(--accent)}.pt-person{display:flex;align-items:center;gap:var(--sp-3);min-inline-size:0}.pt-avatar.avatar{--avatar-size: 36px}.pt-person-text{display:grid;gap:2px;min-inline-size:0}.pt-name-line{display:flex;align-items:center;gap:var(--sp-2);min-inline-size:0}.pt-name-line>strong{overflow:hidden;color:var(--ink-1);font-size:var(--fs-14);font-weight:var(--fw-semibold);text-overflow:ellipsis;white-space:nowrap;transition:color var(--dur-1) var(--ease-out)}.pt-meta{overflow:hidden;color:var(--ink-3);font-size:var(--fs-12);line-height:1.3;text-overflow:ellipsis;white-space:nowrap}.pt-flags{display:inline-flex;flex:0 1 auto;gap:var(--sp-1);min-inline-size:0;overflow:hidden}.pt-name-line>strong{flex:0 0 auto;max-inline-size:100%}.pt-phone{color:var(--ink-2);font-variant-numeric:tabular-nums;white-space:nowrap}.pt-muted{color:var(--ink-3);font-size:var(--fs-13)}.pt-date{color:var(--ink-2);white-space:nowrap}.pt-dentist{display:inline-flex;align-items:center;gap:var(--sp-2);max-inline-size:200px;min-inline-size:0;color:var(--ink-2)}.pt-dentist>span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pt-visit{display:inline-flex;align-items:center;gap:6px;min-block-size:26px;padding:0 10px;border-radius:var(--r-full);background:var(--surface-sunken);color:var(--ink-2);font-size:var(--fs-13);font-weight:var(--fw-medium);font-variant-numeric:tabular-nums;white-space:nowrap}.pt-visit>svg{flex:0 0 auto;color:var(--ink-3)}.pt-visit.is-today{background:var(--accent-subtle);color:var(--accent);font-weight:var(--fw-semibold)}.pt-visit.is-today>svg{color:var(--accent)}.pt-money{display:inline-flex;align-items:center;min-block-size:26px;padding:0 10px;border-radius:var(--r-full);background:var(--surface-sunken);color:var(--ink-3);font-size:var(--fs-13);font-weight:var(--fw-medium);font-variant-numeric:tabular-nums;white-space:nowrap}.pt-money.is-due{background:var(--danger-bg);color:var(--danger);font-weight:var(--fw-semibold)}.pt-money.is-credit{background:var(--info-bg);color:var(--info);font-weight:var(--fw-semibold)}.pt-wait{display:block;min-block-size:120px}.pt-form-modal .modal-head h2{font-size:18px;letter-spacing:-.01em}.pt-form{display:grid;min-inline-size:0}.pt-form .form-section{gap:var(--sp-4);padding-block:var(--sp-5);padding-inline:0;border-block-end:1px solid var(--line)}.pt-form .form-section:first-child{padding-block-start:var(--sp-1)}.pt-form .form-section:last-of-type{border-block-end:0;padding-block-end:var(--sp-2)}.pt-section{--sec-fg: var(--accent);--sec-bg: var(--accent-subtle)}.pt-section.tone-info{--sec-fg: var(--info);--sec-bg: var(--info-bg)}.pt-section.tone-danger{--sec-fg: var(--danger);--sec-bg: var(--danger-bg)}.pt-section.tone-success{--sec-fg: var(--success);--sec-bg: var(--success-bg)}.pt-section .form-section-head{align-items:center;gap:var(--sp-3)}.pt-section .form-section-head>span{inline-size:36px;block-size:36px;border-radius:var(--r-sm);background:var(--sec-bg);color:var(--sec-fg)}.pt-section .form-section-head h3{font-size:15px}.pt-choice{display:grid;align-content:start;gap:6px;min-inline-size:0}.pt-choice .ui-choice-group>legend{color:var(--ink-1);font-size:var(--fs-13);font-weight:var(--fw-medium);line-height:var(--lh-tight)}.pt-choice .ui-choice-group.inline{gap:var(--sp-2)}:is(.pt-choice,.pt-history) .ui-choice{align-items:center;padding:0 var(--sp-3);border:1px solid var(--line-strong);border-radius:var(--r-full);background:var(--surface);box-shadow:var(--shadow-xs);transition:border-color var(--dur-1) var(--ease-out),background-color var(--dur-1) var(--ease-out)}.pt-choice .ui-choice{min-block-size:var(--control-md)}.pt-history .ui-choice{min-block-size:var(--control-sm)}:is(.pt-choice,.pt-history) .ui-choice:hover{border-color:var(--control-line)}:is(.pt-choice,.pt-history) .ui-choice:has(input:checked){border-color:var(--accent);background:var(--accent-subtle)}:is(.pt-choice,.pt-history) .ui-choice:has(input:focus-visible){box-shadow:var(--ring)}:is(.pt-choice,.pt-history) .ui-choice>:is(.ui-radio,.ui-checkbox){margin-block-start:0}.pt-history{padding-block-start:var(--sp-1)}.pt-history.ui-choice-group.inline{gap:var(--sp-2)}.pt-history>legend{color:var(--ink-1);font-weight:var(--fw-medium)}.pt-form-error{margin-block-start:var(--sp-3)}.pt-dentist-field{max-inline-size:360px}@media(max-width:760px){.pt-page{gap:var(--sp-4)}.pt-kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sp-2)}.pt-kpi{gap:var(--sp-2);padding:var(--sp-3)}.pt-kpi-icon{inline-size:36px;block-size:36px}.pt-kpi-icon>svg{inline-size:18px;block-size:18px}.pt-kpi-value{min-block-size:26px}.pt-kpi-value>bdi{font-size:var(--fs-20)}.pt-kpi-value>small{display:none}.pt-list.card{overflow:visible;border:0;background:transparent;box-shadow:none}.pt-list .ui-filterbar{grid-template-columns:minmax(0,1fr);gap:var(--sp-2);margin-block-end:var(--sp-3);padding:0;border:0;background:transparent}.pt-list .ui-filterbar>.ui-search{max-inline-size:none}.pt-list .ui-filterbar-end{grid-column:1;grid-row:auto;order:1}.pt-quick{order:2}.pt-list .ui-filterbar-summary{order:3}.pt-list .ui-filterbar-end>.select,.pt-list .ui-filterbar .select{inline-size:100%}.pt-quick .ui-seg{border:1px solid var(--line);background:var(--surface)}.pt-quick .ui-seg-item[aria-checked=true]{background:var(--navy-800);color:var(--white);box-shadow:var(--shadow-xs)}.pt-quick .ui-seg-item[aria-checked=true] .ui-tab-count{background:var(--on-dark-subtle);color:var(--white)}.pt-quick .ui-seg-item .ui-tab-count{background:var(--surface-sunken)}.pt-notice{margin:0 0 var(--sp-3)}.pt-table.cards tbody{display:grid;gap:var(--sp-2)}.pt-table.cards tbody tr{gap:var(--sp-2) var(--sp-3);padding:var(--sp-3) var(--sp-4);border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);box-shadow:var(--shadow-xs)}.pt-table.cards tbody tr:last-child{border-block-end:1px solid var(--line)}.pt-table.cards tbody tr.is-clickable:active{background:var(--surface-hover)}.pt-table.cards tbody tr.ui-table-empty{padding:0}.pt-table.cards td{align-items:center;font-size:var(--fs-13)}.pt-table.cards td[data-mobile=primary]{align-self:center}.pt-table.cards td.pt-col-actions{margin-block-start:var(--sp-1);padding-block-start:var(--sp-2);border-block-start:1px solid var(--line)}.pt-dentist,.pt-dentist-field{max-inline-size:none}.pt-name-line{flex-wrap:wrap;row-gap:2px}.pt-name-line>strong{flex:1 1 100%}}@media(pointer:coarse){.pt-choice .ui-choice{min-block-size:var(--control-lg)}.pt-history .ui-choice{min-block-size:var(--control-md)}}}@layer features{.app-shell{--topbar-h: 56px}.app-shell:has(>.app-topbar){grid-template-rows:var(--topbar-h) minmax(0,1fr)}.app-shell:has(>.app-topbar)>.sidebar{grid-row:1 / -1}.app-shell:has(>.app-topbar)>.main{grid-column:2;grid-row:2}.app-shell:has(>.app-topbar) .cal-page{block-size:calc(100dvh - var(--topbar-h) - 2 * var(--main-pad, var(--page-gutter)))}.app-topbar{position:relative;z-index:var(--z-sticky);display:flex;grid-column:2;grid-row:1;align-items:center;gap:var(--sp-3);min-inline-size:0;block-size:var(--topbar-h);padding-inline:var(--page-gutter);border-block-end:1px solid var(--line);background:var(--surface)}.tb-spacer{flex:1 1 auto}.tb-search{display:flex;flex:0 1 520px;align-items:center;gap:10px;min-inline-size:0;block-size:var(--control-md);padding-inline:14px 6px;border:1px solid var(--line);border-radius:var(--r-full);background:var(--bg);color:var(--ink-3);font:inherit;font-size:var(--fs-14);text-align:start;cursor:text;transition:border-color var(--dur-1) var(--ease-out),background-color var(--dur-1) var(--ease-out),box-shadow var(--dur-1) var(--ease-out)}.tb-search:hover{border-color:var(--line-strong);background:var(--surface);box-shadow:var(--shadow-xs)}.tb-search:focus-visible{outline:none;border-color:var(--teal-500);background:var(--surface);box-shadow:var(--ring)}.tb-search>svg{flex:0 0 auto;color:var(--ink-3)}.tb-search-text{flex:1 1 auto;min-inline-size:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tb-kbd,.tb-palette-keys kbd{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;min-inline-size:22px;min-block-size:22px;padding-inline:6px;border:1px solid var(--line);border-radius:var(--r-xs);background:var(--surface);box-shadow:0 1px 0 var(--line);color:var(--ink-3);font-family:inherit;font-size:var(--fs-12);font-weight:var(--fw-semibold);line-height:1;direction:ltr;unicode-bidi:isolate}.tb-search>.tb-kbd{min-block-size:26px;padding-inline:9px;border-radius:var(--r-full)}.tb-search-icon{display:none}.tb-actions{display:flex;flex:0 0 auto;align-items:center;gap:var(--sp-2)}.app-topbar .btn.tb-new,.app-topbar .as-launcher.is-inline{block-size:var(--control-md);min-block-size:var(--control-md);border-radius:var(--r-sm);font-size:var(--fs-14);font-weight:var(--fw-semibold);box-shadow:var(--shadow-btn)}.app-topbar .as-launcher.is-inline{gap:var(--sp-2);padding-inline:12px 14px}.app-topbar .as-launcher.is-inline:focus-visible{outline:none;box-shadow:var(--shadow-btn),var(--ring)}.app-topbar .btn.tb-new{padding-inline:14px 12px}.tb-new-chevron{opacity:.8}.modal.tb-palette{position:relative;align-self:start;margin-block-start:12vh;padding:0;overflow:hidden}.tb-palette>.modal-head{position:absolute;inset-block-start:11px;inset-inline-end:12px;z-index:1;margin:0}.tb-palette>.modal-head h2{position:absolute;inline-size:1px;block-size:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.tb-palette>.modal-head .modal-close{margin:0}.tb-palette-body{display:flex;flex-direction:column;min-block-size:0;min-inline-size:0}.tb-palette-search{flex:0 0 auto;padding-block:var(--sp-2);padding-inline:var(--sp-3) 56px;border-block-end:1px solid var(--line)}.tb-palette-search .ui-search>.input{block-size:40px;min-block-size:40px;padding-inline-start:38px;border-color:transparent;background:transparent;box-shadow:none;font-size:var(--fs-16)}.tb-palette-search .ui-search>.input:focus{border-color:transparent;box-shadow:none}.tb-palette-search .ui-search>.ui-input-icon{inset-inline-start:12px;color:var(--accent)}.tb-palette-notice{margin:var(--sp-3) var(--sp-4) 0}.tb-palette-list{display:grid;flex:1 1 auto;align-content:start;gap:var(--sp-2);min-block-size:140px;max-block-size:min(440px,56vh);padding:var(--sp-2);overflow-y:auto;overscroll-behavior:contain}.tb-group{display:grid;gap:2px}.tb-group+.tb-group{padding-block-start:var(--sp-2);border-block-start:1px solid var(--line)}.tb-group-label{padding:var(--sp-2) var(--sp-3) var(--sp-1);color:var(--ink-3);font-size:var(--fs-12);font-weight:var(--fw-semibold);letter-spacing:.02em}.tb-option{display:flex;align-items:center;gap:var(--sp-3);min-block-size:52px;padding:var(--sp-2) var(--sp-3);border-radius:var(--r-sm);color:var(--ink-1);cursor:pointer;transition:background-color var(--dur-1) var(--ease-out)}.tb-option.is-active{background:var(--accent-subtle);box-shadow:inset 0 0 0 1px var(--accent-line)}.tb-option-icon{--chip-fg: var(--accent);--chip-bg: var(--accent-subtle);display:grid;flex:0 0 auto;place-items:center;inline-size:32px;block-size:32px;border-radius:calc(var(--r-sm) - 2px);background:var(--chip-bg);color:var(--chip-fg)}.tb-option-icon.tone-info{--chip-fg: var(--info);--chip-bg: var(--info-bg)}.tb-option-icon.tone-warning{--chip-fg: var(--warning);--chip-bg: var(--warning-bg)}.tb-option-icon.tone-success{--chip-fg: var(--success);--chip-bg: var(--success-bg)}.tb-option.is-active .tb-option-icon{background:var(--surface);box-shadow:var(--shadow-xs)}.tb-option-text{display:grid;flex:1 1 auto;gap:2px;min-inline-size:0}.tb-option-name{display:flex;align-items:center;gap:var(--sp-2);min-inline-size:0}.tb-option-name>strong,.tb-option-text>strong{overflow:hidden;font-weight:var(--fw-semibold);text-overflow:ellipsis;white-space:nowrap}.tb-option-meta{overflow:hidden;color:var(--ink-3);font-size:var(--fs-12);text-overflow:ellipsis;white-space:nowrap}.tb-option-trail{flex:0 0 auto;color:var(--ink-3)}.tb-enter{display:grid;flex:0 0 auto;place-items:center;inline-size:26px;block-size:26px;border-radius:var(--r-xs);background:var(--surface);box-shadow:var(--shadow-xs);color:var(--accent)}.tb-palette-empty,.tb-palette-more{margin:0;padding:var(--sp-4) var(--sp-3);color:var(--ink-3);font-size:var(--fs-13)}.tb-palette-empty{text-align:center}.tb-palette-skeleton,.tb-loading{display:grid;gap:var(--sp-2)}.tb-palette-skeleton{padding:var(--sp-1) var(--sp-2)}.tb-palette-keys{display:flex;flex:0 0 auto;flex-wrap:wrap;gap:var(--sp-2) var(--sp-5);margin:0;padding:var(--sp-3) var(--sp-5);border-block-start:1px solid var(--line);background:var(--surface-hover);color:var(--ink-3);font-size:var(--fs-12)}.tb-palette-keys>span{display:inline-flex;align-items:center;gap:var(--sp-1)}@media(hover:none){.tb-palette-keys{display:none}}@media(max-width:760px){.app-shell{--topbar-h: 52px}.app-shell:has(>.app-topbar)>.main,.app-topbar{grid-column:1}.app-topbar{gap:var(--sp-2)}.app-shell:has(>.app-topbar) .cal-page{block-size:calc(100dvh - var(--topbar-h) - 2 * var(--main-pad, var(--page-gutter)) - var(--tabbar-h) - env(safe-area-inset-bottom,0px))}.tb-search{display:none}.tb-search-icon{display:inline-flex}.tb-new-text{display:none}.app-topbar .as-launcher.is-inline{inline-size:var(--control-md);padding:0}.app-topbar .btn.tb-new{padding-inline:10px 8px}.modal.tb-palette{align-self:end;margin-block-start:0;padding-block-end:env(safe-area-inset-bottom,0px)}.tb-palette-list{max-block-size:60dvh}}}@layer components{.ui-toast-region{position:fixed;inset-inline-end:20px;inset-block-end:calc(20px + var(--toast-offset, 0px));z-index:var(--z-toast);display:grid;justify-items:end;max-inline-size:min(440px,calc(100vw - 32px));pointer-events:none}.ui-toast{pointer-events:auto;display:flex;align-items:center;gap:10px;min-block-size:44px;padding-block:8px;padding-inline:14px 6px;border-radius:var(--r-md);background:var(--ink-1);color:var(--surface);font-size:var(--fs-14);line-height:var(--lh-body);box-shadow:var(--shadow-pop)}.ui-toast.is-error{background:var(--danger)}.ui-toast-icon{flex:none}.ui-toast-message{flex:1;min-inline-size:0;overflow-wrap:anywhere}.ui-toast-action,.ui-toast-close{flex:none;border:0;background:transparent;color:inherit;font:inherit;cursor:pointer}.ui-toast-action{min-block-size:32px;padding-inline:10px;border-radius:var(--r-sm);font-weight:var(--fw-semibold);text-decoration:underline;text-underline-offset:3px}.ui-toast-close{display:grid;place-items:center;inline-size:32px;block-size:32px;border-radius:var(--r-sm);opacity:.8}.ui-toast-action:hover,.ui-toast-close:hover{background:#ffffff24;opacity:1}.ui-toast-action:focus-visible,.ui-toast-close:focus-visible{outline:2px solid currentColor;outline-offset:1px;box-shadow:none}@media(max-width:760px){.ui-toast-region{inset-inline:16px;inset-block-end:calc(var(--tabbar-h) + 16px + env(safe-area-inset-bottom,0px) + var(--toast-offset, 0px));justify-items:stretch;max-inline-size:none}}}@layer features{.as-launcher{position:fixed;inset-inline-end:var(--sp-5);inset-block-end:var(--sp-5);z-index:calc(var(--z-modal) - 1);display:inline-flex;align-items:center;justify-content:center;gap:var(--sp-2);min-inline-size:48px;block-size:48px;padding-inline:14px 18px;border:1px solid var(--sidebar-line);border-radius:var(--r-full);background:var(--stage-bg);color:var(--stage-ink);font-size:var(--fs-14);font-weight:var(--fw-medium);box-shadow:var(--shadow-pop);transition:background-color var(--dur-1) var(--ease-out)}.as-launcher:hover{background:var(--navy-700)}.as-launcher svg{color:var(--stage-accent)}.as-launcher:focus-visible{outline-color:var(--focus-ring)}.tb-assistant-slot{display:contents}.as-launcher.is-inline{position:static;z-index:auto;min-inline-size:0;block-size:var(--control-sm);padding-inline:10px 12px;border-color:transparent;border-radius:var(--r-sm);font-size:var(--fs-13);box-shadow:none}.as-launcher[hidden]{display:none}.app-shell:has(.as-launcher:not(.is-inline):not([hidden])){--toast-offset: 60px}.app-shell:has(.as-dock){--toast-offset: 84px}.as-stage{position:fixed;inset:0;inset-block-end:var(--as-kb, 0px);z-index:var(--z-stage);display:grid;grid-template-rows:auto auto minmax(0,1fr) auto auto;grid-template-columns:minmax(0,1fr);grid-template-areas:"top" "banner" "main" "composer" "dock";overflow:hidden;padding-block:env(safe-area-inset-top,0px) env(safe-area-inset-bottom,0px);padding-inline:max(env(safe-area-inset-left,0px),env(safe-area-inset-right,0px));background:var(--stage-bg);color:var(--stage-ink);outline:none;animation:as-fade-in var(--dur-3) var(--ease-out)}@keyframes as-fade-in{0%{opacity:0}}.as-stage :focus-visible,.as-dock :focus-visible{outline-color:var(--stage-accent)}.as-stage .as-confirm :focus-visible,.as-stage .as-insight :focus-visible,.as-stage .as-transcript :focus-visible,.as-stage .as-composer :focus-visible{outline-color:var(--focus-ring)}.btn.as-on-navy{--btn-bg: transparent;--btn-bg-hover: var(--navy-700);--btn-fg: var(--stage-ink);--btn-line: transparent;--btn-line-hover: transparent}.btn.as-on-navy:hover:not(:disabled){color:var(--stage-ink)}.btn.secondary.as-on-navy{--btn-line: color-mix(in srgb, var(--stage-ink) 40%, transparent);--btn-line-hover: var(--stage-ink)}.btn.as-end:hover:not(:disabled){color:var(--stage-danger)}.as-outcome .btn.primary,.as-dock .btn.primary,.as-composer .btn.primary{--btn-bg: var(--stage-ink);--btn-bg-hover: var(--navy-100);--btn-fg: var(--stage-bg)}.as-top{grid-area:top;display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3);min-block-size:56px;padding-inline:var(--sp-4) var(--sp-3);border-block-end:1px solid var(--sidebar-line)}.as-top-start,.as-top-end{display:flex;align-items:center;min-inline-size:0}.as-top-start{gap:var(--sp-3)}.as-top-end{gap:var(--sp-1);flex:none}.as-top-mark{inline-size:24px;block-size:24px;object-fit:contain}.as-top-title{margin:0;overflow:hidden;color:var(--stage-ink);font-size:var(--fs-16);font-weight:var(--fw-semibold);text-overflow:ellipsis;white-space:nowrap}.as-chip{display:inline-flex;flex:none;align-items:center;gap:6px;padding:2px var(--sp-2);border:1px solid var(--sidebar-line);border-radius:var(--r-xs);color:var(--stage-ink-dim);font-size:var(--fs-12);font-weight:var(--fw-medium);white-space:nowrap}.as-chip.is-live:before{content:"";inline-size:6px;block-size:6px;border-radius:var(--r-full);background:var(--stage-accent)}.as-chip.is-warn{color:var(--stage-warn)}.as-chip.is-danger{color:var(--stage-danger)}.as-banner{grid-area:banner;display:flex;align-items:center;gap:var(--sp-2);block-size:44px;padding-inline:var(--sp-4) var(--sp-2);border-block-end:1px solid var(--sidebar-line);background:var(--navy-700);color:var(--stage-ink);font-size:var(--fs-14)}.as-banner-icon{flex:none;color:var(--stage-warn)}.as-banner-text{flex:1;min-inline-size:0;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.as-banner-text strong{font-weight:var(--fw-semibold)}.as-banner-sub{color:var(--stage-ink-dim)}.as-banner .btn{flex:none}.as-main{grid-area:main;min-block-size:0;display:flex}.as-center{flex:1;min-inline-size:0;min-block-size:0;display:flex;flex-direction:column;overflow-y:auto;overscroll-behavior:contain;padding:var(--sp-6) var(--sp-4)}.as-column{--as-gap: var(--sp-4);flex:0 1 auto;min-block-size:0;margin:auto;inline-size:100%;max-inline-size:820px;display:flex;flex-direction:column;align-items:center;gap:var(--as-gap);text-align:center}.as-status{flex:none;display:flex;flex-direction:column;align-items:center;gap:var(--as-gap)}.as-column.has-card .as-status{flex-direction:row;justify-content:center;gap:var(--sp-3)}.as-ind{--as-grow: .214;--as-ring: var(--stage-accent);position:relative;flex:none;display:grid;place-items:center;inline-size:112px;block-size:112px}.as-ind.size-md{--as-grow: .25;inline-size:64px;block-size:64px}.as-ind.size-sm{--as-grow: 0;inline-size:32px;block-size:32px}.as-ind-ring{position:absolute;inset:0;border:2px solid var(--as-ring);border-radius:var(--r-full);transform:scale(calc(1 + var(--as-level, 0) * var(--as-grow)));will-change:transform}.as-ind.size-sm .as-ind-ring{border-width:1.5px}.as-ind-arc{position:absolute;inset:0;inline-size:100%;block-size:100%;animation:as-turn 1.2s linear infinite}.as-ind-arc circle{fill:none;stroke:var(--stage-accent);stroke-width:3;stroke-dasharray:25 75;stroke-linecap:round}.as-ind.size-sm .as-ind-arc circle{stroke-width:6}@keyframes as-turn{to{transform:rotate(360deg)}}.as-ind-core{position:relative;display:grid;place-items:center;inline-size:56%;block-size:56%;color:var(--stage-ink)}.as-ind-core img{inline-size:100%;block-size:100%;object-fit:contain;-webkit-user-select:none;user-select:none}.as-ind[data-state=speaking]{--as-ring: var(--stage-ink)}.as-ind[data-state=thinking],.as-ind[data-state=acting],.as-ind[data-state=connecting],.as-ind[data-state=reconnecting],.as-ind[data-state=chat],.as-ind[data-state=ended]{--as-ring: color-mix(in srgb, var(--stage-ink) 22%, transparent)}.as-ind[data-state=muted]{--as-ring: color-mix(in srgb, var(--stage-ink) 35%, transparent)}.as-ind[data-state=muted] .as-ind-core{color:var(--stage-ink-dim)}.as-ind[data-state=connecting] .as-ind-core,.as-ind[data-state=reconnecting] .as-ind-core,.as-ind[data-state=ended] .as-ind-core{opacity:.6}.as-ind[data-state=error]{--as-ring: var(--stage-danger)}.as-ind[data-state=error] .as-ind-core{color:var(--stage-danger)}.as-state{margin:0;min-block-size:1.5em;color:var(--stage-ink-dim);font-size:var(--fs-16);font-weight:var(--fw-medium);line-height:1.5}.as-state.is-user,.as-state.is-speaking,.as-state.is-confirming{color:var(--stage-ink)}.as-state.is-reconnecting{color:var(--stage-warn)}.as-state.is-error,.as-state.is-ended{color:var(--stage-ink);font-size:clamp(24px,1.2vw + 18px,32px);font-weight:var(--fw-semibold);line-height:var(--lh-tight)}.as-note{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:var(--sp-2) var(--sp-3);margin:0;color:var(--stage-warn);font-size:var(--fs-14)}.as-user{--as-user-lh: 1.5;flex:none;display:flex;flex-direction:column;justify-content:flex-end;inline-size:100%;max-inline-size:46ch;block-size:calc(2 * var(--as-user-lh) * 1em);margin:0;overflow:hidden;color:var(--stage-ink-dim);font-size:clamp(18px,1vw + 13px,24px);line-height:var(--as-user-lh);unicode-bidi:plaintext}html[lang=ar] .as-user{--as-user-lh: 1.7}.as-user.is-interim{opacity:.7}.as-caption{--as-lines: 3;--as-cap-lh: 1.4;--as-fade: 24px;flex:0 1 auto;display:flex;flex-direction:column;justify-content:flex-end;inline-size:100%;max-inline-size:34ch;min-block-size:calc(var(--as-cap-lh) * 1em + var(--as-fade));max-block-size:calc(var(--as-lines) * var(--as-cap-lh) * 1em + var(--as-fade));overflow:hidden;color:var(--stage-ink);font-size:clamp(28px,2.4vw + 14px,52px);font-weight:var(--fw-medium);line-height:var(--as-cap-lh);mask-image:linear-gradient(to bottom,transparent 0,var(--stage-bg) var(--as-fade));-webkit-mask-image:linear-gradient(to bottom,transparent 0,var(--stage-bg) var(--as-fade));transition:opacity var(--dur-2) var(--ease-out)}html[lang=ar] .as-caption{--as-cap-lh: 1.6}.as-caption.is-compact{--as-lines: 2;--as-fade: 12px;flex-shrink:0;font-size:clamp(20px,1.2vw + 12px,32px)}.as-caption.is-dimmed{opacity:.6}.as-caption.is-dimmed .is-prev{opacity:1}.as-caption-text{margin:0;padding-block-start:var(--as-fade);text-wrap:pretty;unicode-bidi:plaintext}.as-caption-text .is-prev{opacity:.5}.as-hint{max-inline-size:30ch;margin:0;color:var(--stage-ink-dim);font-size:clamp(20px,1.2vw + 14px,28px);line-height:1.5}.as-pill{display:inline-flex;align-items:center;gap:var(--sp-2);min-block-size:36px;margin:0;padding:6px 14px;border:1px solid var(--sidebar-line);border-radius:var(--r-md);background:var(--navy-700);color:var(--stage-ink);font-size:var(--fs-16)}.as-pill .ui-spinner{color:var(--stage-accent)}.as-pill.is-done svg{color:var(--stage-accent)}.as-pill.is-error{color:var(--stage-danger)}.as-confirm,.as-insight{flex:0 1 auto;inline-size:100%;border-radius:var(--r-lg);background:var(--surface);color:var(--ink-1);text-align:start}.as-confirm{--as-card-pad: var(--sp-6);--as-card-btn: 56px;display:flex;flex-direction:column;max-inline-size:480px;min-block-size:calc(2 * var(--as-card-pad) + 2 * var(--lh-tight) * var(--fs-20) + var(--sp-3) + var(--sp-4) + var(--as-card-btn));padding:var(--as-card-pad)}.as-confirm-title{flex:none;margin:0 0 var(--sp-3);font-size:var(--fs-20);font-weight:var(--fw-semibold);line-height:var(--lh-tight)}.as-confirm-body{flex:0 1 auto;min-block-size:0;overflow-y:auto;overscroll-behavior:contain}.as-confirm-actions{flex:none;display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-3);margin-block-start:var(--sp-4)}.btn.as-confirm-btn{--btn-h: var(--as-card-btn);font-size:var(--fs-16)}.as-confirm-hint{margin:var(--sp-3) 0 0;color:var(--ink-3);font-size:var(--fs-14);text-align:center}.as-fields{display:grid;grid-template-columns:minmax(0,max-content) minmax(0,1fr);gap:var(--sp-2) var(--sp-5);margin:0}.as-field{display:contents}.as-fields dt{color:var(--ink-3);font-size:var(--fs-14)}.as-fields dd{margin:0;color:var(--ink-1);font-size:var(--fs-16);font-weight:var(--fw-medium);overflow-wrap:anywhere}.as-fields.is-compact dt{font-size:var(--fs-13)}.as-fields.is-compact dd{font-size:var(--fs-14)}.as-insight{min-block-size:0;max-inline-size:640px;min-inline-size:min(480px,100%);overflow-y:auto;overscroll-behavior:contain;padding:var(--sp-5);font-size:var(--fs-16)}.as-outcome{display:flex;flex-direction:column;align-items:center;gap:var(--sp-3);max-inline-size:520px}.as-outcome-icon{color:var(--stage-danger)}.as-outcome.is-neutral .as-outcome-icon{color:var(--stage-ink-dim)}.as-outcome-title{margin:0;color:var(--stage-ink);font-size:clamp(24px,1.2vw + 18px,32px);font-weight:var(--fw-semibold);line-height:var(--lh-tight)}.as-outcome-body{margin:0;color:var(--stage-ink-dim);font-size:var(--fs-16);line-height:1.6}.as-outcome-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--sp-3);margin-block-start:var(--sp-3)}.as-composer{grid-area:composer;display:flex;align-items:center;gap:var(--sp-2);inline-size:min(760px,calc(100% - 2 * var(--sp-4)));margin:0 auto var(--sp-3)}.as-composer .input{flex:1;min-inline-size:0;min-block-size:48px;font-size:var(--fs-16)}.as-composer .btn.icon-only{--btn-h: 48px}.as-dockbar{grid-area:dock;display:flex;align-items:flex-start;justify-content:center;gap:var(--sp-8);block-size:100px;padding:3px var(--sp-4) var(--sp-1);border-block-start:1px solid var(--sidebar-line)}.as-ctl{display:flex;flex-direction:column;align-items:center;gap:var(--sp-1);min-inline-size:72px}.as-ctl-label{min-block-size:16px;color:var(--stage-ink-dim);font-size:var(--fs-13);line-height:16px;white-space:nowrap}.as-ctl-btn,.as-ctl-spacer{inline-size:56px;block-size:56px;margin-block-start:8px}.as-ctl-btn{display:grid;place-items:center;border:1px solid var(--sidebar-line);border-radius:var(--r-full);background:var(--navy-700);color:var(--stage-ink);transition:background-color var(--dur-1) var(--ease-out),color var(--dur-1) var(--ease-out)}.as-ctl-btn:hover:not(:disabled){background:var(--navy-600)}.as-ctl-btn:disabled{opacity:.5}.as-ctl-btn[aria-pressed=true]{border-color:transparent;background:var(--stage-ink);color:var(--stage-bg)}.as-ctl-btn.is-end{border-color:transparent;background:var(--danger);color:var(--on-accent)}.as-ctl-btn.is-end:hover:not(:disabled){background:var(--danger-hover)}.as-main-btn{position:relative;display:grid;place-items:center;inline-size:72px;block-size:72px;border:0;border-radius:var(--r-full)}.as-main-btn.is-action{background:var(--stage-ink);color:var(--stage-bg);transition:background-color var(--dur-1) var(--ease-out)}.as-main-btn.is-action:hover{background:var(--navy-100)}.as-main-btn.is-meter{border:2px solid color-mix(in srgb,var(--stage-ink) 22%,transparent);color:var(--stage-accent)}.as-main-ring{position:absolute;inset:-2px;border:2px solid var(--stage-accent);border-radius:inherit;opacity:calc(.25 + var(--as-level, 0) * .75);transform:scale(calc(1 + var(--as-level, 0) * .33))}.as-transcript{position:relative;flex:none;display:flex;flex-direction:column;inline-size:380px;border-inline-start:1px solid var(--line);background:var(--surface);color:var(--ink-1)}.as-transcript-head{flex:none;display:flex;align-items:center;justify-content:space-between;gap:var(--sp-2);min-block-size:56px;padding-inline:var(--sp-4) var(--sp-2);border-block-end:1px solid var(--line)}.as-transcript-head h2{margin:0;font-size:var(--fs-16);font-weight:var(--fw-semibold)}.as-transcript-body{flex:1;min-block-size:0;overflow-y:auto;overscroll-behavior:contain;padding:var(--sp-4)}.as-transcript-empty{margin:0;color:var(--ink-3);font-size:var(--fs-14)}.as-log{display:flex;flex-direction:column;gap:var(--sp-3);margin:0;padding:0;list-style:none}.as-log-msg{display:flex;flex-direction:column;align-items:flex-start;align-self:flex-start;gap:2px;max-inline-size:88%}.as-log-msg.is-user{align-items:flex-end;align-self:flex-end}.as-log-who,.as-log-meta{color:var(--ink-3);font-size:var(--fs-13)}.as-log-msg p{margin:0;padding:var(--sp-2) var(--sp-3);border-radius:var(--r-lg);font-size:17px;line-height:1.55;overflow-wrap:anywhere;white-space:pre-wrap;unicode-bidi:plaintext}.as-log-msg.is-assistant p{border-end-start-radius:var(--r-xs);background:var(--surface-sunken)}.as-log-msg.is-user p{border-end-end-radius:var(--r-xs);background:var(--accent-subtle)}.as-log-msg.is-live p{color:var(--ink-2)}.as-log-action{display:flex;flex-direction:column;gap:var(--sp-2);padding:var(--sp-3);border:1px solid var(--line);border-radius:var(--r-md)}.as-log-action-head{display:flex;align-items:center;gap:var(--sp-2);font-size:15px}.as-log-action-head>svg{flex:none;color:var(--ink-3)}.as-log-action.is-done .as-log-action-head>svg{color:var(--success)}.as-log-action.is-error .as-log-action-head>svg{color:var(--danger)}.as-log-action .ui-spinner{color:var(--accent)}.as-log-dot{flex:none;inline-size:6px;block-size:6px;margin-inline:5px;border-radius:var(--r-full);background:var(--ink-disabled)}.as-log-action-label{flex:1;min-inline-size:0;font-weight:var(--fw-medium)}.as-log-badge{flex:none;padding:1px var(--sp-2);border-radius:var(--r-xs);background:var(--surface-sunken);color:var(--ink-2);font-size:var(--fs-13);white-space:nowrap}.as-log-badge.is-active{background:var(--accent-subtle);color:var(--accent)}.as-log-badge.is-done{background:var(--success-bg);color:var(--success)}.as-log-badge.is-error{background:var(--danger-bg);color:var(--danger)}.as-log-action-foot{display:flex;justify-content:flex-end}.as-log-notice{display:flex;align-items:center;justify-content:center;gap:var(--sp-2);color:var(--ink-3);font-size:var(--fs-13);text-align:center}.as-log-notice.is-warning{color:var(--warning)}.as-log-notice.is-success{color:var(--success)}.btn.as-latest{position:absolute;inset-inline:0;inset-block-end:var(--sp-4);inline-size:max-content;margin-inline:auto;box-shadow:var(--shadow-pop)}.as-dock{position:fixed;inset-inline:var(--sidebar-w) 0;inset-block-end:0;z-index:calc(var(--z-modal) - 1);display:flex;align-items:center;gap:var(--sp-2);block-size:calc(72px + env(safe-area-inset-bottom,0px));padding-block-end:env(safe-area-inset-bottom,0px);padding-inline:var(--sp-3);border-block-start:1px solid var(--sidebar-line);background:var(--stage-bg);color:var(--stage-ink)}.app-shell.sidebar-collapsed .as-dock{inset-inline-start:var(--sidebar-w-collapsed)}.app-shell:has(.as-dock) .main{padding-block-end:calc(var(--main-pad) + 72px)}.as-dock-summary{flex:1;min-inline-size:0;display:flex;align-items:center;gap:var(--sp-3);min-block-size:56px;padding:var(--sp-2);border:0;border-radius:var(--r-md);background:transparent;color:inherit;text-align:start;transition:background-color var(--dur-1) var(--ease-out)}.as-dock-summary:hover{background:var(--navy-700)}.as-dock-text{display:flex;flex-direction:column;gap:2px;min-inline-size:0}.as-dock-state,.as-dock-line{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.as-dock-state{color:var(--stage-ink-dim);font-size:var(--fs-13)}.as-dock-state.is-error{color:var(--stage-danger)}.as-dock-state.is-reconnecting{color:var(--stage-warn)}.as-dock-line{color:var(--stage-ink);font-size:18px;line-height:1.4}.as-dock-actions{flex:none;display:flex;align-items:center;gap:var(--sp-1)}.as-chart{margin:0;inline-size:100%}.as-chart-title{margin-block-end:var(--sp-3);color:var(--ink-1);font-size:var(--fs-16);font-weight:var(--fw-semibold)}.as-transcript .as-chart-title{font-size:var(--fs-14)}.as-chart-empty{margin:0;color:var(--ink-3);font-size:var(--fs-14)}.as-chart-canvas{inline-size:100%;overflow-x:auto;direction:ltr}.as-chart-split{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-5)}.as-chart-svg{display:block;inline-size:100%;block-size:auto;overflow:visible}.as-chart-svg text{font-family:var(--font-sans)}.as-chart-axis{font-size:12px;fill:var(--ink-3)}.as-chart-value{font-size:12px;font-weight:var(--fw-medium);fill:var(--ink-2);font-variant-numeric:tabular-nums}.as-chart-label{font-size:12.5px;fill:var(--ink-1)}.as-chart-grid{stroke:var(--line-strong);stroke-width:1}.as-chart-track{fill:var(--surface-sunken);stroke:var(--surface-sunken)}.as-chart-dot{stroke:var(--surface);stroke-width:2}.as-chart-center{font-size:24px;font-weight:var(--fw-semibold);fill:var(--ink-1);font-variant-numeric:tabular-nums}.as-chart-center-label{font-size:11px;fill:var(--ink-3)}.as-chart-donut{flex:none;inline-size:132px;block-size:132px}.as-transcript .as-chart-donut{inline-size:104px;block-size:104px}.as-chart-gauge{display:flex;flex:none;flex-direction:column;align-items:center;gap:var(--sp-1)}.as-chart-gauge-label{color:var(--ink-3);font-size:var(--fs-13)}.as-chart-legend{display:flex;flex-wrap:wrap;gap:var(--sp-1) var(--sp-4);min-inline-size:0;margin:var(--sp-3) 0 0;padding:0;list-style:none}.as-chart-split .as-chart-legend{flex:1 1 160px;flex-direction:column;margin:0}.as-chart-legend li{display:inline-flex;align-items:center;gap:var(--sp-2);color:var(--ink-2);font-size:var(--fs-14)}.as-chart-legend b{color:var(--ink-1);font-weight:var(--fw-semibold);font-variant-numeric:tabular-nums}.as-chart-swatch{flex:none;inline-size:10px;block-size:10px;border-radius:var(--r-xs)}.as-chart-foot{display:flex;align-items:baseline;justify-content:space-between;gap:var(--sp-2);margin-block-start:var(--sp-3);padding-block-start:var(--sp-3);border-block-start:1px solid var(--line)}.as-chart-foot span{color:var(--ink-3);font-size:var(--fs-14)}.as-chart-foot strong{color:var(--ink-1);font-size:var(--fs-20);font-weight:var(--fw-semibold);font-variant-numeric:tabular-nums}.as-transcript .as-chart-foot strong{font-size:var(--fs-16)}.as-chart-breakdown{flex:1 1 160px;display:grid;gap:var(--sp-1);margin:0}.as-chart-breakdown div{display:flex;justify-content:space-between;gap:var(--sp-3)}.as-chart-breakdown dt{color:var(--ink-3);font-size:var(--fs-14)}.as-chart-breakdown dd{margin:0;color:var(--ink-1);font-size:var(--fs-14);font-weight:var(--fw-semibold);font-variant-numeric:tabular-nums}.as-chart-gaps{margin-block-start:var(--sp-3);padding-block-start:var(--sp-3);border-block-start:1px solid var(--line)}.as-chart-gaps-title{color:var(--ink-2);font-size:var(--fs-13);font-weight:var(--fw-medium)}.as-chart-gaps ul{display:grid;gap:var(--sp-1);margin:var(--sp-2) 0 0;padding:0;list-style:none}.as-chart-gaps li{display:flex;justify-content:space-between;gap:var(--sp-2);color:var(--ink-1);font-size:var(--fs-14)}.as-chart-gaps-min{color:var(--ink-3);white-space:nowrap}.ai-visual-focus,.ai-appointment-highlight{outline:2px solid var(--accent);outline-offset:-2px}.ai-visual-focus{animation:none}.ai-appointment-highlight{box-shadow:none}@media(max-width:760px){.as-launcher:not(.is-inline){inset-inline-end:var(--sp-4);inset-block-end:calc(var(--tabbar-h) + env(safe-area-inset-bottom,0px) + var(--sp-3));inline-size:48px;padding:0}.as-launcher.is-inline{inline-size:var(--control-sm);padding:0}.as-launcher-label{display:none}.as-top{padding-inline:var(--sp-3) var(--sp-1)}.as-chip{display:none}.as-end-text{position:absolute;inline-size:1px;block-size:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.btn.as-end{inline-size:var(--btn-h);padding:0}.as-center{padding:var(--sp-4) var(--sp-4)}.as-column{--as-gap: var(--sp-3)}.as-ind.size-lg{inline-size:88px;block-size:88px;--as-grow: .273}.as-ind.size-md{inline-size:48px;block-size:48px;--as-grow: .333}.as-confirm{--as-card-pad: var(--sp-4);--as-card-btn: 48px}.as-insight{padding:var(--sp-4)}.as-dockbar{gap:var(--sp-6)}.as-banner{padding-inline:var(--sp-3) var(--sp-1)}.btn.as-banner-retry{inline-size:var(--btn-h);padding:0}.as-banner-retry-text{position:absolute;inline-size:1px;block-size:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.as-transcript{position:absolute;inset-inline:0;inset-block-end:0;z-index:1;inline-size:auto;block-size:70vh;block-size:70dvh;border:0;border-start-start-radius:var(--r-lg);border-start-end-radius:var(--r-lg);box-shadow:var(--shadow-modal)}.as-dock,.app-shell.sidebar-collapsed .as-dock{inset-inline:0;inset-block-end:calc(var(--tabbar-h) + env(safe-area-inset-bottom,0px));block-size:72px;padding-block-end:0}.as-dock-actions .btn.icon-only{--btn-h: var(--control-lg)}.app-shell:has(.as-dock) .main{padding-block-end:calc(var(--main-pad) + var(--tabbar-h) + env(safe-area-inset-bottom,0px) + 72px)}}@media(max-height:800px){.as-center{padding-block:var(--sp-3)}.as-column{--as-gap: var(--sp-3)}.as-ind.size-lg{inline-size:88px;block-size:88px;--as-grow: .273}.as-ind.size-md{inline-size:48px;block-size:48px;--as-grow: .333}.as-confirm{--as-card-pad: var(--sp-5);--as-card-btn: 48px}}@media(max-height:800px)and (max-width:760px){.as-confirm{--as-card-pad: var(--sp-4)}}@media(max-height:700px){.as-ind.size-lg{inline-size:72px;block-size:72px;--as-grow: .333}}@media(prefers-reduced-motion:reduce){.as-ind-arc{display:none}.as-ind-ring,.as-main-ring{transform:none}}}@layer features{.cal-page{--cal-gutter: 64px;--cal-col-min: 168px;--cal-col-closed: 48px;--cal-head-h: 60px;display:flex;flex-direction:column;block-size:calc(100dvh - 2 * var(--main-pad, var(--page-gutter)));min-block-size:520px}@media(min-width:1100px){.cal-page{transition:margin-inline-end var(--dur-3) var(--ease-out)}.cal-page.has-dock-drawer{margin-inline-end:420px}.cal-page.has-dock-day{margin-inline-end:360px}}.cal-page>.page-head{flex:0 0 auto}:where(.cal-page,.cal-drawer) [dir=auto]:not(input,textarea){text-align:match-parent}.cal-toolbar-wrap{display:grid;flex:0 0 auto;grid-template-columns:minmax(0,1fr);margin-block-end:var(--sp-4);border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);box-shadow:var(--shadow-sm)}.cal-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--sp-3) var(--sp-4);padding:var(--sp-3) var(--sp-4)}.cal-bar-nav,.cal-bar-views{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-2);min-inline-size:0}.cal-bar-steps{display:inline-flex;flex:0 0 auto;overflow:hidden;border:1px solid var(--line-strong);border-radius:var(--r-sm);background:var(--surface);box-shadow:var(--shadow-xs)}.cal-bar-steps>.btn{--btn-h: calc(var(--control-sm) - 2px);inline-size:calc(var(--control-sm) - 2px);border-radius:0;color:var(--ink-2);box-shadow:none}.cal-bar-steps>.btn+.btn{border-inline-start-color:var(--line)}.cal-range-btn.btn{max-inline-size:100%;padding-inline:var(--sp-2);color:var(--ink-1);font-size:18px;font-weight:var(--fw-semibold);letter-spacing:-.01em}.cal-range-btn.btn:hover:not(:disabled){background:var(--surface-hover)}.cal-range-btn svg{color:var(--ink-3)}.cal-range-btn svg:first-child{color:var(--accent)}.cal-range-text{overflow:hidden;font-variant-numeric:tabular-nums;text-overflow:ellipsis}.cal-jumps{display:inline-flex;gap:var(--sp-1);padding-inline-start:var(--sp-3);border-inline-start:1px solid var(--line)}.cal-jumps .btn{padding-inline:10px;border-radius:var(--r-full);color:var(--ink-2);font-weight:var(--fw-medium);font-variant-numeric:tabular-nums}.cal-jumps .btn:hover:not(:disabled){background:var(--surface-sunken);color:var(--ink-1)}.ui-seg.cal-seg{padding:3px;border-color:transparent;border-radius:var(--r-full);background:var(--surface-sunken)}.ui-seg.cal-seg>.ui-seg-item{padding-inline:14px;border-radius:var(--r-full)}.ui-seg.cal-seg>.ui-seg-item[aria-checked=true]{border-color:transparent;background:var(--surface);color:var(--ink-1);box-shadow:var(--shadow-sm)}.cal-filters{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-2) var(--sp-4);min-inline-size:0;padding:10px var(--sp-4);border-block-start:1px solid var(--line)}.cal-switches{display:flex;flex:0 0 auto;flex-wrap:wrap;align-items:center;gap:var(--sp-2) var(--sp-5)}.cal-switches .ui-switch{font-size:var(--fs-13);color:var(--ink-2)}.cal-chips{display:flex;flex-wrap:wrap;gap:var(--sp-2);min-inline-size:0}.cal-chip{display:inline-flex;flex:0 0 auto;align-items:center;gap:var(--sp-2);min-block-size:var(--control-sm);padding-inline:14px;border:1px solid var(--line-strong);border-radius:var(--r-full);background:var(--surface);color:var(--ink-2);font-size:var(--fs-13);font-weight:var(--fw-medium);line-height:var(--lh-tight);white-space:nowrap;box-shadow:var(--shadow-xs);transition:background-color var(--dur-1) var(--ease-out),border-color var(--dur-1) var(--ease-out),box-shadow var(--dur-1) var(--ease-out),color var(--dur-1) var(--ease-out)}.cal-chip:hover{border-color:var(--control-line);background:var(--surface-hover);color:var(--ink-1)}.cal-chip:focus-visible{outline:none;border-color:var(--teal-500);box-shadow:var(--ring)}.cal-chip[aria-pressed=true]{border-color:var(--accent);background:var(--accent-subtle);color:var(--accent-hover);font-weight:var(--fw-semibold);box-shadow:inset 0 0 0 1px var(--accent)}.cal-chip>.avatar,.cal-chip-icon{margin-inline-start:-9px}.cal-chip-icon{display:inline-grid;flex:0 0 auto;place-items:center;inline-size:24px;block-size:24px;border-radius:var(--r-full);background:var(--surface-sunken);color:var(--ink-2)}.cal-chip[aria-pressed=true]>.cal-chip-icon{background:var(--surface);color:var(--accent)}.cal-notice{flex:0 0 auto;margin-block-end:var(--sp-3)}.cal-body{position:relative;display:flex;flex:1 1 auto;flex-direction:column;min-block-size:0;overflow:hidden;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);box-shadow:var(--shadow-sm)}.cal-progress{position:absolute;inset-block-start:0;inset-inline:0;z-index:8;block-size:2px;overflow:hidden;background:var(--accent-subtle);pointer-events:none}.cal-progress:after{content:"";position:absolute;inset-block:0;inset-inline-start:0;inline-size:30%;background:var(--teal-500);animation:cal-progress 1.2s var(--ease-out) infinite}[dir=rtl] .cal-progress:after{animation-name:cal-progress-rtl}@keyframes cal-progress{0%{transform:translate(-100%)}to{transform:translate(340%)}}@keyframes cal-progress-rtl{0%{transform:translate(100%)}to{transform:translate(-340%)}}.cal-scroll{position:relative;flex:1 1 auto;min-block-size:0;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--line-strong) transparent;-webkit-user-select:none;user-select:none}.cal-scroll.v-week{--cal-col-min: 116px}.cal-sheet{display:grid;grid-template-rows:auto var(--cal-body);min-inline-size:min-content}.cal-head{position:sticky;inset-block-start:0;z-index:5;min-block-size:var(--cal-head-h);border-block-end:1px solid var(--line);background:var(--surface)}.cal-corner{inset-inline-start:0;z-index:7}.cal-colhead{position:sticky;display:flex;align-items:stretch;min-inline-size:0;border-inline-start:1px solid var(--line)}.cal-colhead-res{display:flex;align-items:center;gap:10px;inline-size:100%;min-inline-size:0;padding:var(--sp-2) var(--sp-3)}.cal-colhead-icon{display:inline-grid;flex:0 0 auto;place-items:center;inline-size:32px;block-size:32px;border-radius:var(--r-sm);background:var(--surface-sunken);color:var(--ink-2)}.cal-colhead-name{flex:1 1 auto;min-inline-size:0;overflow:hidden;color:var(--ink-1);font-size:var(--fs-14);font-weight:var(--fw-semibold);line-height:var(--lh-tight);text-overflow:ellipsis;white-space:nowrap}.cal-colhead-count{flex:0 0 auto;min-inline-size:22px;padding:0 7px;border-radius:var(--r-full);background:var(--surface-sunken);color:var(--ink-2);font-size:var(--fs-12);font-weight:var(--fw-semibold);font-variant-numeric:tabular-nums;line-height:22px;text-align:center}.cal-colhead-count.is-zero{color:var(--ink-3);font-weight:var(--fw-medium)}.cal-colhead-count:empty{display:none}.cal-colhead-day{position:relative;display:grid;align-content:center;justify-items:center;gap:2px;inline-size:100%;min-inline-size:0;padding:6px var(--sp-2);border:0;background:transparent;color:var(--ink-2);text-align:center}button.cal-colhead-day{transition:background-color var(--dur-1) var(--ease-out)}button.cal-colhead-day:hover{background:var(--surface-hover)}button.cal-colhead-day:focus-visible{outline-offset:-2px}.cal-colhead-weekday{max-inline-size:100%;overflow:hidden;color:var(--ink-3);font-size:var(--fs-12);font-weight:var(--fw-medium);line-height:var(--lh-tight);text-overflow:ellipsis;white-space:nowrap}.cal-colhead-num{display:grid;place-items:center;min-inline-size:30px;block-size:30px;padding-inline:4px;border-radius:var(--r-full);color:var(--ink-1);font-size:var(--fs-16);font-weight:var(--fw-semibold);font-variant-numeric:tabular-nums;line-height:1}.cal-colhead.is-today .cal-colhead-weekday{color:var(--accent);font-weight:var(--fw-semibold)}.cal-colhead.is-today .cal-colhead-num{background:var(--accent);color:var(--on-accent);box-shadow:var(--shadow-xs)}.cal-colhead-day .cal-colhead-count{position:absolute;inset-block-start:var(--sp-2);inset-inline-end:var(--sp-2)}.cal-colhead-closed{color:var(--ink-3);font-size:var(--fs-12);line-height:var(--lh-tight)}.cal-colhead-day.is-closed .cal-colhead-num{color:var(--ink-3)}.cal-colhead.is-collapsed .cal-colhead-day{padding-inline:2px}.cal-colhead.is-collapsed .cal-colhead-num{min-inline-size:0;padding-inline:0;font-size:var(--fs-13)}.cal-colhead.is-collapsed .cal-colhead-weekday{position:absolute;inline-size:1px;block-size:1px;overflow:hidden;clip-path:inset(50%)}.cal-gutter{position:sticky;inset-inline-start:0;z-index:4;background:var(--surface)}.cal-hour{position:absolute;inset-inline:0;padding-inline:var(--sp-2);color:var(--ink-3);font-size:var(--fs-12);font-variant-numeric:tabular-nums;line-height:1;text-align:end;white-space:nowrap;transform:translateY(-50%)}.cal-hour:first-child{padding-block-start:6px;transform:none}.cal-hour.is-hidden{visibility:hidden}.cal-now-chip{position:absolute;inset-inline-end:8px;z-index:1;padding:2px 5px;border-radius:var(--r-full);background:var(--accent);color:var(--on-accent);font-size:var(--fs-12);font-weight:var(--fw-semibold);font-variant-numeric:tabular-nums;line-height:1.2;white-space:nowrap;box-shadow:var(--shadow-xs);transform:translateY(-50%)}.cal-now-dot{position:absolute;inset-inline-end:-5px;z-index:2;inline-size:10px;block-size:10px;border-radius:var(--r-full);background:var(--teal-500);box-shadow:0 0 0 2px var(--surface);transform:translateY(-50%)}.cal-col{position:relative;min-inline-size:0;border-inline-start:1px solid var(--line);background:var(--surface)}.cal-col.is-closed,.cal-col.is-collapsed{background:var(--surface-hover)}.cal-col.is-collapsed{display:flex;justify-content:center}.cal-col-closed{position:sticky;inset-block-start:calc(var(--cal-head-h) + var(--sp-4));align-self:flex-start;margin-block-start:var(--sp-4);color:var(--ink-3);font-size:var(--fs-13);font-weight:var(--fw-medium);writing-mode:vertical-rl}.cal-off{position:absolute;inset-inline:0;background:var(--surface-hover);pointer-events:none}.cal-slots{position:absolute;inset:0;display:flex;flex-direction:column}.cal-slot{position:relative;flex:0 0 auto;inline-size:100%;padding:0;border:0;background:transparent;text-align:start;transition:background-color var(--dur-1) var(--ease-out)}.cal-slot.is-hour{border-block-start:1px solid var(--line)}.cal-slot.is-half:before{content:"";position:absolute;inset-block-start:0;inset-inline:0;border-block-start:1px dashed var(--line);pointer-events:none}.cal-slot[aria-disabled=true]{cursor:default}.cal-slot:not([aria-disabled=true]):hover{background:var(--accent-subtle)}.cal-slot:focus-visible{z-index:1;outline:2px solid var(--focus-ring);outline-offset:-2px;background:var(--accent-subtle)}.cal-slot-time{position:absolute;inset-block-start:50%;inset-inline-start:var(--sp-2);color:var(--accent-hover);font-size:var(--fs-12);font-weight:var(--fw-semibold);font-variant-numeric:tabular-nums;line-height:1;opacity:0;pointer-events:none;transform:translateY(-50%)}.cal-slot:hover .cal-slot-time,.cal-slot:focus-visible .cal-slot-time{opacity:1}.cal-now{position:absolute;inset-inline:0;z-index:3;block-size:0;margin-block-start:-1px;border-block-start:2px solid var(--teal-500);pointer-events:none}.cal-selection{position:absolute;inset-inline:2px;z-index:2;padding:3px var(--sp-2);border:1px dashed var(--accent);border-radius:var(--r-sm);background:var(--accent-subtle);color:var(--accent-hover);font-size:var(--fs-12);font-weight:var(--fw-semibold);font-variant-numeric:tabular-nums;line-height:16px;pointer-events:none}.cal-event{container:cal-event / inline-size;--cal-fg: var(--info);--cal-bg: var(--info-bg);--cal-line: var(--info-line);--cal-bar: var(--info);position:absolute;z-index:2;display:flex;overflow:hidden;border:1px solid var(--cal-line);border-inline-start:3px solid var(--cal-bar);border-radius:var(--r-sm);background:var(--cal-bg);color:var(--ink-1);box-shadow:var(--shadow-xs);-webkit-touch-callout:none;transition:border-color var(--dur-1) var(--ease-out),box-shadow var(--dur-2) var(--ease-out),opacity var(--dur-1) var(--ease-out)}.cal-event.is-arrived{--cal-fg: var(--st-arrived-fg);--cal-bg: var(--st-arrived-bg);--cal-line: var(--st-arrived-line);--cal-bar: var(--warning)}.cal-event.is-chair{--cal-fg: var(--st-chair-fg);--cal-bg: var(--st-chair-bg);--cal-line: var(--st-chair-line);--cal-bar: var(--teal-500)}.cal-event.is-done{--cal-fg: var(--st-done-fg);--cal-bg: var(--st-done-bg);--cal-line: var(--st-done-line);--cal-bar: var(--success)}.cal-event.is-noshow{--cal-fg: var(--st-noshow-fg);--cal-bg: var(--st-noshow-bg);--cal-line: var(--st-noshow-line);--cal-bar: var(--danger)}.cal-event.is-cancel{--cal-fg: var(--st-cancel-fg);--cal-bg: var(--surface);--cal-line: var(--st-cancel-line);--cal-bar: var(--ink-disabled);border-style:dashed;color:var(--ink-3);box-shadow:none}.cal-event.is-cancel .cal-event-name{color:var(--ink-3);text-decoration:line-through}.cal-event.is-stale{--cal-fg: var(--ink-3);--cal-bg: var(--surface-hover);--cal-line: var(--line-strong);--cal-bar: var(--warning)}.cal-event.is-stale .cal-event-name{color:var(--ink-2)}.cal-event.is-stale .cal-event-marker{color:var(--warning)}.cal-event.has-stripe{--cal-bar: var(--cal-who, var(--line-strong))}.cal-event:hover{border-color:var(--control-line);border-inline-start-color:var(--cal-bar);box-shadow:var(--shadow-md)}.cal-event.is-cancel:hover{box-shadow:var(--shadow-sm)}.cal-event:focus-within{z-index:3}.cal-event:has(.cal-event-main:focus-visible){outline:2px solid var(--focus-ring);outline-offset:1px}.cal-event.is-selected{z-index:3;outline:2px solid var(--accent);outline-offset:1px;box-shadow:var(--shadow-md)}.cal-event.is-drag-source{opacity:.4;box-shadow:none}.cal-event.ai-appointment-highlight,.cal-agenda-row.ai-appointment-highlight{z-index:3;outline:2px solid var(--teal-500);outline-offset:2px;box-shadow:none}.cal-event-main{display:flex;flex:1 1 auto;flex-direction:column;gap:1px;min-inline-size:0;overflow:hidden;padding-block:3px;padding-inline:7px var(--sp-2);border:0;background:transparent;color:inherit;text-align:start}.cal-event-main:focus-visible{outline:none}.cal-event.is-draggable .cal-event-main{cursor:grab}.cal-event:has(.cal-event-flag) .cal-event-main{padding-inline-end:22px}.cal-event-line{display:flex;align-items:baseline;gap:6px;min-inline-size:0}.cal-event-name{flex:0 1 auto;min-inline-size:0;overflow:hidden;color:var(--ink-1);font-size:var(--fs-13);font-weight:var(--fw-semibold);line-height:16px;text-overflow:ellipsis;white-space:nowrap}.cal-event-marker{flex:0 0 auto;margin-inline-start:auto;color:var(--cal-fg);font-size:var(--fs-12);font-weight:var(--fw-semibold);line-height:16px;white-space:nowrap}.cal-event-marker.is-stale{display:inline-flex;align-items:center;gap:3px}.cal-event-marker.is-stale svg{flex:none}.cal-scroll.v-week .cal-event-marker-text{display:none}@container cal-event (inline-size < 160px){.cal-event-marker-text{display:none}}.cal-event-meta{overflow:hidden;color:var(--cal-fg);font-size:var(--fs-12);font-variant-numeric:tabular-nums;line-height:15px;text-overflow:ellipsis;white-space:nowrap}.cal-event-service{color:var(--ink-2)}.cal-event-foot{display:flex;align-items:center;gap:6px;min-inline-size:0}.cal-event-time{flex:0 0 auto;padding:0 6px;border-radius:var(--r-full);background:var(--surface);color:var(--ink-2);font-weight:var(--fw-semibold);line-height:16px;white-space:nowrap}.cal-event.is-cancel .cal-event-time,.cal-event.is-stale .cal-event-time{background:var(--surface-sunken);color:var(--ink-3)}.cal-event-who{flex:0 0 auto;color:var(--ink-2);font-weight:var(--fw-semibold)}.cal-event-type{min-inline-size:0;overflow:hidden;color:var(--ink-2);text-overflow:ellipsis}.cal-event.d-xs .cal-event-main{justify-content:center;padding-block:0}.cal-event.d-xs .cal-event-line{align-items:center}.cal-event.d-xs .cal-event-name,.cal-event.d-xs .cal-event-meta{line-height:1.2}.cal-event-flag{position:absolute;inset-block-start:4px;inset-inline-end:5px;color:var(--danger);line-height:0}.cal-event.d-xs .cal-event-flag{inset-block-start:50%;transform:translateY(-50%)}.cal-event-quick{position:absolute;inset-block-end:4px;inset-inline-end:4px;z-index:1;display:grid;place-items:center;inline-size:26px;block-size:26px;padding:0;border:1px solid var(--line);border-radius:var(--r-full);background:var(--surface);color:var(--accent);box-shadow:var(--shadow-sm);opacity:0;transition:opacity var(--dur-1) var(--ease-out),background-color var(--dur-1) var(--ease-out),color var(--dur-1) var(--ease-out)}.cal-event:hover .cal-event-quick,.cal-event:focus-within .cal-event-quick{opacity:1}.cal-event-quick:hover{border-color:var(--accent);background:var(--accent);color:var(--on-accent)}.cal-event-quick:focus-visible{opacity:1;outline-offset:0}.cal-event.d-xs .cal-event-quick{display:none}@media(hover:none){.cal-event-quick{display:none}}.cal-event-resize{position:absolute;inset-block-end:0;inset-inline:0;block-size:6px;cursor:ns-resize;touch-action:none}.cal-ghost{position:absolute;inset-inline:2px;z-index:3;display:flex;flex-direction:column;overflow:hidden;padding:3px var(--sp-2);border:1px solid var(--accent);border-inline-start-width:3px;border-radius:var(--r-sm);background:var(--surface);box-shadow:var(--shadow-pop);pointer-events:none}.cal-ghost-time{color:var(--accent-hover);font-size:var(--fs-12);font-weight:var(--fw-semibold);font-variant-numeric:tabular-nums;line-height:16px;white-space:nowrap}.cal-ghost-name,.cal-ghost-note{overflow:hidden;font-size:var(--fs-12);line-height:15px;text-overflow:ellipsis;white-space:nowrap}.cal-ghost-name{color:var(--ink-2)}.cal-ghost-note{font-weight:var(--fw-medium)}.cal-ghost.is-conflict{border-color:var(--danger);background:var(--danger-bg)}.cal-ghost.is-conflict .cal-ghost-time,.cal-ghost.is-conflict .cal-ghost-note{color:var(--danger)}.cal-ghost.is-warn{border-color:var(--warning);background:var(--warning-bg)}.cal-ghost.is-warn .cal-ghost-time,.cal-ghost.is-warn .cal-ghost-note{color:var(--warning)}html.cal-dragging,html.cal-dragging *{cursor:grabbing}.cal-agenda{display:flex;flex:1 1 auto;flex-direction:column;min-block-size:0}.cal-strip{display:grid;flex:0 0 auto;grid-template-columns:repeat(7,minmax(56px,1fr));gap:var(--sp-1);overflow-x:auto;padding:var(--sp-3);border-block-end:1px solid var(--line);background:var(--surface);scrollbar-width:none}.cal-strip-day{display:grid;justify-items:center;gap:2px;min-inline-size:0;padding:var(--sp-2) 4px;border:1px solid transparent;border-radius:var(--r-md);background:transparent;color:var(--ink-3);transition:background-color var(--dur-1) var(--ease-out),box-shadow var(--dur-1) var(--ease-out)}.cal-strip-day:hover{background:var(--surface-hover)}.cal-strip-weekday{max-inline-size:100%;overflow:hidden;color:var(--ink-3);font-size:var(--fs-12);font-weight:var(--fw-medium);line-height:var(--lh-tight);text-overflow:ellipsis;white-space:nowrap}.cal-strip-num{color:var(--ink-1);font-size:18px;font-weight:var(--fw-semibold);font-variant-numeric:tabular-nums;line-height:var(--lh-tight)}.cal-strip-count{color:var(--ink-3);font-size:var(--fs-12);font-variant-numeric:tabular-nums;line-height:1.2}.cal-strip-day.is-today .cal-strip-num,.cal-strip-day.is-today .cal-strip-weekday{color:var(--accent)}.cal-strip-day.is-closed .cal-strip-num{color:var(--ink-3)}.cal-strip-day.is-selected{border-color:var(--navy-800);background:var(--navy-800);box-shadow:var(--shadow-sm)}.cal-strip-day.is-selected .cal-strip-weekday{color:var(--stage-ink-dim)}.cal-strip-day.is-selected .cal-strip-num{color:var(--stage-ink)}.cal-strip-day.is-selected .cal-strip-count{color:var(--stage-accent);font-weight:var(--fw-semibold)}.cal-agenda-list{position:relative;flex:1 1 auto;min-block-size:0;overflow:auto;overscroll-behavior:contain;padding-block-end:var(--sp-3);background:var(--surface-hover)}.cal-agenda-dayhead{position:sticky;inset-block-start:0;z-index:1;display:flex;align-items:center;gap:var(--sp-3);min-block-size:48px;padding-block:var(--sp-2) var(--sp-1);padding-inline:var(--sp-4) var(--sp-3);background:var(--surface-hover)}.cal-agenda-dayhead h3{display:flex;flex-wrap:wrap;align-items:baseline;gap:0 var(--sp-2);margin:0;color:var(--ink-1);font-size:15px;font-weight:var(--fw-semibold)}.cal-agenda-date{color:var(--ink-3);font-size:var(--fs-13);font-weight:var(--fw-regular)}.cal-agenda-day.is-today .cal-agenda-dayhead h3>span:first-child{color:var(--accent)}.cal-agenda-daycount{margin-inline-start:auto;color:var(--ink-3);font-size:var(--fs-12);font-weight:var(--fw-medium)}.cal-agenda-daycount:not(:empty){padding:0 9px;border-radius:var(--r-full);background:var(--surface);line-height:22px;box-shadow:var(--shadow-xs)}.cal-agenda-rows{display:grid;gap:var(--sp-2);margin:0;padding:0 var(--sp-3) var(--sp-2);list-style:none}.cal-agenda-row{display:grid;grid-template-columns:9.5rem auto minmax(0,1fr) minmax(0,12rem) 7.5rem;align-items:center;gap:var(--sp-3);inline-size:100%;min-block-size:64px;padding-block:10px;padding-inline:calc(var(--sp-4) - 3px) var(--sp-4);border:1px solid var(--line);border-inline-start:3px solid var(--cal-who, var(--line-strong));border-radius:var(--r-sm);background:var(--surface);color:var(--ink-1);text-align:start;box-shadow:var(--shadow-xs);transition:box-shadow var(--dur-2) var(--ease-out),background-color var(--dur-1) var(--ease-out)}.cal-agenda-row:hover{box-shadow:var(--shadow-md)}.cal-agenda-row:focus-visible{outline:2px solid var(--focus-ring);outline-offset:1px}.cal-agenda-row.is-selected{background:var(--accent-subtle);box-shadow:var(--shadow-md)}.cal-agenda-time{justify-self:start;max-inline-size:100%;padding:0 10px;border-radius:var(--r-full);background:var(--surface-sunken);color:var(--ink-1);font-size:var(--fs-13);font-weight:var(--fw-semibold);font-variant-numeric:tabular-nums;line-height:26px;white-space:nowrap}.cal-agenda-main{display:grid;gap:2px;min-inline-size:0}.cal-agenda-name,.cal-agenda-service,.cal-agenda-who>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cal-agenda-name{font-size:var(--fs-14);font-weight:var(--fw-semibold);line-height:var(--lh-tight)}.cal-agenda-service{color:var(--ink-3);font-size:var(--fs-13);line-height:var(--lh-tight)}.cal-agenda-service:empty{display:none}.cal-agenda-who{display:flex;align-items:center;gap:var(--sp-2);min-inline-size:0;color:var(--ink-2);font-size:var(--fs-13)}.cal-agenda-stage{display:flex;justify-content:flex-end;min-inline-size:0}.cal-agenda-row.is-cancelled{border-style:dashed;border-inline-start-style:solid;box-shadow:none}.cal-agenda-row.is-cancelled .cal-agenda-name{color:var(--ink-3);text-decoration:line-through}.cal-agenda-row.is-cancelled .cal-agenda-time,.cal-agenda-row.is-stale .cal-agenda-time{color:var(--ink-3)}.cal-agenda-empty{margin:0 var(--sp-3) var(--sp-2);padding:var(--sp-4);border:1px dashed var(--line-strong);border-radius:var(--r-sm);background:var(--surface);color:var(--ink-3);font-size:var(--fs-13);text-align:center}.ui-popover.cal-datejump{inline-size:320px;max-inline-size:calc(100vw - 16px);padding:var(--sp-4);border-radius:var(--r-md);box-shadow:var(--shadow-pop)}.cal-dj-head{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-2);margin-block-end:var(--sp-3)}.cal-dj-head strong{color:var(--ink-1);font-size:15px;font-weight:var(--fw-semibold)}.cal-dj-head .btn{--btn-line: var(--line);border-radius:var(--r-full);color:var(--ink-2)}.cal-dj-grid{inline-size:100%;border-collapse:collapse;table-layout:fixed}.cal-dj-grid th{overflow:hidden;padding:0 0 var(--sp-2);color:var(--ink-3);font-size:var(--fs-12);font-weight:var(--fw-medium);text-align:center;white-space:nowrap}.cal-dj-grid td{padding:2px 0;text-align:center}.cal-dj-day{display:inline-grid;place-items:center;inline-size:36px;max-inline-size:100%;block-size:36px;padding:0;border:1px solid transparent;border-radius:var(--r-full);background:transparent;color:var(--ink-1);font-size:var(--fs-13);font-weight:var(--fw-medium);font-variant-numeric:tabular-nums;transition:background-color var(--dur-1) var(--ease-out),box-shadow var(--dur-1) var(--ease-out)}.cal-dj-day:hover{background:var(--surface-sunken)}.cal-dj-day:focus-visible{outline:none;box-shadow:var(--ring);border-color:var(--teal-500)}.cal-dj-day.is-outside,.cal-dj-day.is-closed{color:var(--ink-3);font-weight:var(--fw-regular)}.cal-dj-day.is-today{border-color:var(--accent);color:var(--accent);font-weight:var(--fw-semibold)}.cal-dj-day.is-selected{border-color:var(--accent);background:var(--accent);color:var(--on-accent);font-weight:var(--fw-semibold);box-shadow:var(--shadow-btn)}.cal-dj-day.is-selected:hover{background:var(--accent-hover)}.cal-dj-foot{display:flex;justify-content:center;margin-block-start:var(--sp-3);padding-block-start:var(--sp-3);border-block-start:1px solid var(--line)}.cal-dj-foot .btn{border-radius:var(--r-full);color:var(--accent)}.ui-drawer.cal-drawer{--drawer-w: 420px}.ui-drawer.cal-drawer.is-view .ui-drawer-head{padding-block-end:0;border-block-end:0}.ui-drawer.cal-drawer.is-view .ui-drawer-actions{margin-inline-start:auto}.ui-drawer.cal-drawer.is-view .ui-drawer-body{padding-block-start:var(--sp-1)}.ui-drawer.cal-drawer.is-view .ui-drawer-head>div:first-child{position:absolute;inline-size:1px;block-size:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.ui-drawer.cal-daypanel .ui-drawer-body{padding:var(--sp-3)}.cal-daypanel-rows{padding:0}.cal-daypanel-rows .cal-agenda-row{grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"avatar main who" "avatar time stage";gap:6px var(--sp-3);padding-inline:calc(var(--sp-3) - 3px) var(--sp-3)}.cal-daypanel-rows .cal-agenda-avatar{grid-area:avatar;align-self:start}.cal-daypanel-rows .cal-agenda-time{grid-area:time;padding-inline:var(--sp-2);font-size:var(--fs-12);line-height:22px}.cal-daypanel-rows .cal-agenda-main{grid-area:main}.cal-daypanel-rows .cal-agenda-who{grid-area:who;justify-content:flex-end}.cal-daypanel-rows .cal-agenda-who>span{display:none}.cal-daypanel-rows .cal-agenda-stage{grid-area:stage}.cal-month-cell.is-selected{box-shadow:inset 0 0 0 2px var(--accent)}.cal-view{display:grid;gap:var(--sp-5)}.cal-patient{display:flex;align-items:center;gap:14px;min-inline-size:0}.cal-patient-text{display:grid;gap:4px;min-inline-size:0}.cal-patient-name{overflow:hidden;color:var(--ink-1);font-size:var(--fs-20);font-weight:var(--fw-semibold);letter-spacing:-.01em;line-height:var(--lh-tight);text-overflow:ellipsis;white-space:nowrap}.cal-patient-when{color:var(--ink-3);font-size:var(--fs-13);font-variant-numeric:tabular-nums}.cal-view-status{display:flex;flex-wrap:wrap;gap:var(--sp-2);margin-block-start:calc(-1 * var(--sp-2))}.cal-alerts{display:flex;flex-wrap:wrap;gap:var(--sp-2);margin:0;padding:0;list-style:none}.cal-alert{display:inline-flex;align-items:center;gap:6px;max-inline-size:100%;min-block-size:28px;padding:3px 12px;border:1px solid var(--danger-line);border-radius:var(--r-full);background:var(--danger-bg);color:var(--danger);font-size:var(--fs-13);font-weight:var(--fw-semibold);line-height:var(--lh-tight);overflow-wrap:anywhere}.cal-alert svg{flex:0 0 auto}.cal-details{display:grid;margin:0;padding:var(--sp-1) var(--sp-4);border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface-hover)}.cal-detail{display:grid;grid-template-columns:7rem minmax(0,1fr);align-items:baseline;gap:var(--sp-3);padding-block:10px}.cal-detail+.cal-detail{border-block-start:1px solid var(--line)}.cal-detail dt{color:var(--ink-3);font-size:var(--fs-13);font-weight:var(--fw-medium);line-height:var(--lh-body)}.cal-detail dd{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--sp-1) var(--sp-2);min-inline-size:0;margin:0;color:var(--ink-1);font-size:var(--fs-body);font-weight:var(--fw-medium);font-variant-numeric:tabular-nums}.cal-detail-sub{color:var(--ink-3);font-size:var(--fs-13);font-weight:var(--fw-regular)}.cal-detail-who{display:inline-flex;align-items:center;gap:var(--sp-2)}.cal-detail-notes{display:block;font-weight:var(--fw-regular);overflow-wrap:anywhere;white-space:pre-wrap}.cal-balance-due{padding:0 8px;border-radius:var(--r-full);background:var(--warning-bg);color:var(--warning);font-weight:var(--fw-semibold);line-height:22px}.cal-phone{display:inline-flex;align-items:center;gap:6px;color:var(--accent);text-decoration:none}.cal-phone:hover{text-decoration:underline;text-underline-offset:3px}.cal-phone svg{color:currentColor}.cal-view-section{display:grid;gap:var(--sp-3)}.cal-view-section h3{margin:0;color:var(--ink-1);font-size:var(--fs-14);font-weight:var(--fw-semibold);line-height:var(--lh-tight)}.cal-flow{display:grid;gap:var(--sp-3)}.cal-flow-steps{display:grid;grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;gap:var(--sp-2);margin:0;padding:0;list-style:none}.cal-flow-step{display:grid;justify-items:center;align-content:center;gap:4px;inline-size:100%;min-block-size:84px;padding:var(--sp-2) 4px;border:1px solid var(--line-strong);border-radius:var(--r-md);background:var(--surface);color:var(--ink-2);font-size:var(--fs-13);font-weight:var(--fw-semibold);line-height:var(--lh-tight);text-align:center;box-shadow:var(--shadow-xs);transition:background-color var(--dur-1) var(--ease-out),border-color var(--dur-1) var(--ease-out),box-shadow var(--dur-1) var(--ease-out)}.cal-flow-icon{display:grid;place-items:center;inline-size:32px;block-size:32px;border-radius:var(--r-full);background:var(--surface-sunken);color:var(--ink-2)}.cal-flow-step:hover:not(:disabled){border-color:var(--control-line);box-shadow:var(--shadow-sm)}.cal-flow-step:focus-visible{outline:none;border-color:var(--teal-500);box-shadow:var(--ring)}.cal-flow-step:disabled{cursor:default}.cal-flow-step:disabled:not(.is-next,.is-done){color:var(--ink-3);box-shadow:none}.cal-flow-step.is-next{border-color:var(--accent);background:var(--accent);color:var(--on-accent);box-shadow:var(--shadow-btn)}.cal-flow-step.is-next .cal-flow-icon{background:var(--on-dark-subtle);color:var(--on-accent)}.cal-flow-step.is-next:hover:not(:disabled){border-color:var(--accent-hover);background:var(--accent-hover)}.cal-flow-step.is-next:focus-visible{box-shadow:var(--shadow-btn),var(--ring)}.cal-flow-step.is-done{border-color:var(--success-line);background:var(--success-bg);color:var(--success);box-shadow:none}.cal-flow-step.is-done .cal-flow-icon{background:var(--surface);color:var(--success)}.cal-flow-step.is-done:hover:not(:disabled){border-color:var(--success)}.cal-flow-time{font-size:var(--fs-12);font-weight:var(--fw-medium);font-variant-numeric:tabular-nums}.cal-flow-more{display:flex;flex-wrap:wrap;gap:var(--sp-2)}.cal-form{display:grid;gap:var(--sp-5)}.cal-form-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sp-3)}.cal-form-row>:only-child{grid-column:1 / -1}.cal-form-patient{display:grid;justify-items:start;gap:var(--sp-1)}.cal-form-patient>.field{inline-size:100%}.cal-form-readonly{display:flex;align-items:center;gap:var(--sp-3);padding:var(--sp-3) var(--sp-4);border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface-hover)}.cal-form-readonly-text{display:grid;gap:2px;min-inline-size:0}.cal-form-readonly-text>span{color:var(--ink-3);font-size:var(--fs-13);font-weight:var(--fw-medium)}.cal-form-readonly-text>strong{overflow:hidden;color:var(--ink-1);font-size:var(--fs-16);font-weight:var(--fw-semibold);text-overflow:ellipsis;white-space:nowrap}.cal-duration{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-2)}.cal-duration>.ui-input-wrap{flex:0 0 auto;inline-size:8.5rem}.cal-free{display:grid;gap:var(--sp-2);padding:var(--sp-3) var(--sp-4);border:1px solid var(--accent-line);border-radius:var(--r-md);background:var(--accent-subtle)}.cal-free-label{color:var(--ink-1);font-size:var(--fs-13);font-weight:var(--fw-semibold)}.cal-free-note{color:var(--ink-2);font-size:var(--fs-13)}.cal-cancel{display:grid;gap:var(--sp-4)}.cal-confirm p{margin:0 0 var(--sp-2)}.cal-confirm ul{display:grid;gap:var(--sp-1);margin:0;padding-inline-start:var(--sp-5)}.cal-skeleton{display:grid;gap:var(--sp-4);padding:var(--sp-5)}.cal-skeleton-head{display:grid;grid-template-columns:56px repeat(3,minmax(0,1fr));gap:var(--sp-4)}.cal-skeleton-body{display:grid;gap:var(--sp-3)}.cal-month{display:flex;flex:1 1 auto;flex-direction:column;min-block-size:0}.cal-month-head{display:grid;flex:0 0 auto;grid-template-columns:repeat(7,minmax(0,1fr));border-block-end:1px solid var(--line);background:var(--surface-sunken)}.cal-month-head>span{padding:var(--sp-2) var(--sp-2);overflow:hidden;color:var(--ink-3);font-size:var(--fs-12);font-weight:var(--fw-semibold);text-align:center;text-overflow:ellipsis;white-space:nowrap}.cal-month-grid{display:grid;flex:1 1 auto;grid-template-rows:repeat(6,minmax(0,1fr));min-block-size:0}.cal-month-week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));min-block-size:0}.cal-month-cell{display:flex;flex-direction:column;gap:2px;min-inline-size:0;min-block-size:0;padding:var(--sp-1) var(--sp-2) var(--sp-2);overflow:hidden;border-inline-end:1px solid var(--line);border-block-end:1px solid var(--line);cursor:pointer;transition:background var(--dur-1) var(--ease-out)}.cal-month-cell:nth-child(7n){border-inline-end:0}.cal-month-week:last-child>.cal-month-cell{border-block-end:0}.cal-month-cell:hover{background:var(--surface-hover)}.cal-month-cell.is-outside,.cal-month-cell.is-closed{background:var(--surface-sunken)}.cal-month-cell.is-today{background:var(--accent-subtle)}.cal-month-cell.is-drop{background:var(--accent-subtle);box-shadow:inset 0 0 0 2px var(--accent)}.cal-month-cellhead{display:flex;align-items:center;gap:var(--sp-2);min-block-size:26px}.cal-month-daynum{display:inline-grid;place-items:center;min-inline-size:26px;block-size:26px;padding:0 var(--sp-1);border:0;border-radius:var(--r-full);background:transparent;color:var(--ink-1);font-size:var(--fs-13);font-variant-numeric:tabular-nums;font-weight:var(--fw-semibold);cursor:pointer}.cal-month-daynum:focus-visible{outline:2px solid var(--focus-ring);outline-offset:1px}.cal-month-cell.is-outside .cal-month-daynum{color:var(--ink-3);font-weight:var(--fw-regular)}.cal-month-cell.is-today .cal-month-daynum{background:var(--accent);color:var(--on-accent)}.cal-month-count{display:inline-grid;place-items:center;min-inline-size:20px;block-size:20px;padding:0 6px;border-radius:var(--r-full);background:var(--accent-subtle);color:var(--accent-hover);font-size:var(--fs-12);font-variant-numeric:tabular-nums;font-weight:var(--fw-semibold)}.cal-month-cell.is-today .cal-month-count{background:var(--surface)}.cal-month-add{margin-inline-start:auto;opacity:0;transition:opacity var(--dur-1) var(--ease-out)}.cal-month-cell:hover .cal-month-add,.cal-month-add:focus-within{opacity:1}@media(hover:none){.cal-month-add{opacity:1}}.cal-month-chips{display:flex;flex-direction:column;gap:2px;min-block-size:0}.cal-month-chip{--cal-fg: var(--info);--cal-bg: var(--info-bg);--cal-line: var(--info-line);--cal-bar: var(--info);display:flex;align-items:center;gap:var(--sp-2);inline-size:100%;min-inline-size:0;padding:2px var(--sp-2);border:1px solid var(--cal-line);border-inline-start:3px solid var(--cal-who, var(--cal-bar));border-radius:var(--r-xs);background:var(--cal-bg);color:var(--ink-1);font-size:var(--fs-12);line-height:18px;text-align:start;cursor:pointer}.cal-month-chip.is-arrived{--cal-bg: var(--st-arrived-bg);--cal-line: var(--st-arrived-line);--cal-bar: var(--warning)}.cal-month-chip.is-chair{--cal-bg: var(--st-chair-bg);--cal-line: var(--st-chair-line);--cal-bar: var(--teal-500)}.cal-month-chip.is-done{--cal-bg: var(--st-done-bg);--cal-line: var(--st-done-line);--cal-bar: var(--success)}.cal-month-chip.is-noshow{--cal-bg: var(--st-noshow-bg);--cal-line: var(--st-noshow-line);--cal-bar: var(--danger)}.cal-month-chip.is-cancel{--cal-bg: var(--surface);--cal-line: var(--st-cancel-line);--cal-bar: var(--ink-disabled);border-style:dashed;color:var(--ink-3)}.cal-month-chip.is-cancel .cal-month-name{text-decoration:line-through}.cal-month-chip.is-stale{--cal-bg: var(--surface-hover);--cal-line: var(--line-strong);--cal-bar: var(--warning)}.cal-month-chip[draggable=true]{cursor:grab}.cal-month-chip:hover{border-color:var(--control-line);border-inline-start-color:var(--cal-who, var(--cal-bar));box-shadow:var(--shadow-sm)}.cal-month-chip:focus-visible{outline:2px solid var(--focus-ring);outline-offset:1px}.cal-month-chip.is-selected{outline:2px solid var(--accent);outline-offset:1px}.cal-month-chip.is-drag-source{opacity:.4}.cal-month-chip.ai-appointment-highlight{outline:2px solid var(--teal-500);outline-offset:2px}.cal-month-time{flex:0 0 auto;color:var(--ink-2);font-size:11px;font-variant-numeric:tabular-nums;font-weight:var(--fw-semibold)}.cal-month-name{min-inline-size:0;overflow:hidden;font-weight:var(--fw-semibold);text-overflow:ellipsis;white-space:nowrap}.cal-month-more{align-self:flex-start;padding:0 var(--sp-2);border:0;background:none;color:var(--accent-hover);font-size:var(--fs-12);font-weight:var(--fw-semibold);line-height:18px;cursor:pointer}.cal-month-more:hover{text-decoration:underline}.cal-month-more:focus-visible{outline:2px solid var(--focus-ring);outline-offset:1px;border-radius:var(--r-xs)}@media(max-width:767px){.cal-page{--cal-gutter: 52px;--cal-col-min: 148px;--cal-head-h: 56px;block-size:calc(100dvh - 2 * var(--main-pad, var(--page-gutter)) - var(--tabbar-h) - env(safe-area-inset-bottom,0px));min-block-size:460px}.cal-scroll.v-week{--cal-col-min: 104px}.cal-month-cell{gap:4px;padding:var(--sp-1)}.cal-month-cellhead{justify-content:center}.cal-month-count{display:none}.cal-month-chips{flex-flow:row wrap;justify-content:center;gap:3px}.cal-month-chip{inline-size:8px;block-size:8px;min-block-size:0;padding:0;border:0;border-radius:var(--r-full);background:var(--cal-bar)}.cal-month-chip>*{display:none}.cal-toolbar-wrap{margin-block-end:var(--sp-3)}.cal-bar{gap:var(--sp-2);padding:var(--sp-3)}.cal-bar-nav{flex-wrap:nowrap;inline-size:100%}.cal-range-btn.btn{flex:1 1 auto;justify-content:flex-start;min-inline-size:0;font-size:var(--fs-16)}.cal-bar-views{inline-size:100%}.cal-bar-views>.ui-seg{flex:1 1 auto}.cal-bar-views>.ui-seg>.ui-seg-item{flex:1 1 0;padding-inline:var(--sp-2)}.cal-filters{flex-wrap:wrap;padding:var(--sp-2) var(--sp-3)}.cal-filters>.cal-chips{flex-wrap:nowrap;inline-size:100%;overflow-x:auto;padding-block:2px;scrollbar-width:none}.cal-colhead-res{gap:var(--sp-2);padding-inline:var(--sp-2)}.cal-colhead-res>.avatar{--avatar-size: 28px}.cal-hour{padding-inline:var(--sp-1)}.cal-now-chip{inset-inline-end:6px;padding-inline:4px}.cal-strip{padding:var(--sp-2)}.cal-agenda-rows{padding-inline:var(--sp-2)}.cal-agenda-dayhead{padding-inline:var(--sp-3) var(--sp-2)}.cal-agenda-row{grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"avatar main who" "avatar time stage";gap:6px var(--sp-3);padding-inline:calc(var(--sp-3) - 3px) var(--sp-3)}.cal-agenda-avatar{grid-area:avatar;align-self:start}.cal-agenda-time{grid-area:time;padding-inline:var(--sp-2);font-size:var(--fs-12);line-height:22px}.cal-agenda-main{grid-area:main}.cal-agenda-who{grid-area:who;justify-content:flex-end}.cal-agenda-who>span{display:none}.cal-agenda-stage{grid-area:stage}.ui-drawer.cal-drawer{block-size:100dvh;max-block-size:100dvh;border-radius:0}.cal-patient-name{white-space:normal}.cal-detail{grid-template-columns:6rem minmax(0,1fr)}.cal-flow-step{min-block-size:76px}.cal-flow-more>.btn{flex:1 1 auto}.cal-form-row{grid-template-columns:minmax(0,1fr)}}}@layer features{.td-page{display:flex;flex-direction:column;gap:var(--sp-5);min-inline-size:0}.td-page>.page-head{margin-block-end:0}:where(.td-page,.td-close) [dir=auto]:not(input,textarea,p){text-align:match-parent}.td-skeleton{display:grid;gap:var(--sp-4)}.td-muted{color:var(--ink-3);font-size:var(--fs-13)}.td-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,160px),1fr));gap:var(--sp-4);margin:0}.td-kpi{--kpi-fg: var(--accent);--kpi-bg: var(--accent-subtle);display:flex;align-items:center;gap:var(--sp-3);min-inline-size:0;padding:var(--sp-4) var(--sp-5);border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);box-shadow:var(--shadow-sm)}.td-kpi.tone-success{--kpi-fg: var(--success);--kpi-bg: var(--success-bg)}.td-kpi.tone-danger{--kpi-fg: var(--danger);--kpi-bg: var(--danger-bg)}.td-kpi.tone-info{--kpi-fg: var(--info);--kpi-bg: var(--info-bg)}.td-kpi.tone-warning{--kpi-fg: var(--warning);--kpi-bg: var(--warning-bg)}.td-kpi-icon{display:grid;flex:0 0 auto;place-items:center;inline-size:44px;block-size:44px;border-radius:var(--r-sm);background:var(--kpi-bg);color:var(--kpi-fg)}.td-kpi-text{display:grid;gap:2px;min-inline-size:0}.td-kpi dt{color:var(--ink-3);font-size:var(--fs-13);font-weight:var(--fw-medium);line-height:var(--lh-tight)}.td-kpi dd{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px var(--sp-2);margin:0}.td-kpi dd>bdi{color:var(--ink-1);font-size:var(--fs-24);font-weight:var(--fw-semibold);font-variant-numeric:tabular-nums;letter-spacing:-.01em;line-height:1.2}.td-kpi dd>small{color:var(--ink-3);font-size:var(--fs-12)}.td-next{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-4);padding:var(--sp-5) var(--sp-6);border-radius:var(--r-lg);background:var(--navy-800);color:var(--stage-ink);box-shadow:var(--shadow-md)}.td-next-avatar.avatar{--avatar-ring: var(--teal-300);background:var(--navy-700);color:var(--stage-ink)}.td-next-text{display:grid;flex:1 1 260px;gap:4px;min-inline-size:0}.td-next-label{color:var(--stage-accent);font-size:var(--fs-13);font-weight:var(--fw-semibold)}.td-next-name{justify-self:start;max-inline-size:100%;padding:0;overflow:hidden;border:0;background:none;color:var(--stage-ink);font:inherit;font-size:22px;font-weight:var(--fw-semibold);line-height:1.25;text-align:start;text-overflow:ellipsis;white-space:nowrap}button.td-next-name{cursor:pointer}button.td-next-name:hover{text-decoration:underline;text-underline-offset:4px}.td-next-sub{display:flex;flex-wrap:wrap;align-items:center;gap:6px;color:var(--stage-ink-dim);font-size:var(--fs-14)}.td-next-sub svg{flex:0 0 auto}.btn.td-next-action{--btn-bg: var(--teal-500);--btn-bg-hover: var(--teal-600)}.td-board{container:tdboard / inline-size;display:grid;gap:var(--sp-3);min-inline-size:0}.td-board-head{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-2) var(--sp-3)}.td-board-head h2{margin:0;margin-inline-end:auto;color:var(--ink-1);font-size:18px;font-weight:var(--fw-semibold);line-height:var(--lh-tight)}.td-board-tools{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-2)}.td-board-tools .select{inline-size:auto;min-inline-size:200px;max-inline-size:280px}.td-lane-filter{display:none;flex:1 1 100%;min-inline-size:0;overflow-x:auto;scrollbar-width:none}.td-lane-filter .ui-seg-item{padding:0 var(--sp-2)}.td-board-foot{color:var(--ink-3);font-size:var(--fs-13)}section.card.td-board{padding:var(--sp-6)}.td-lanes{display:grid;grid-template-columns:var(--td-cols, repeat(5, minmax(0, 1fr)));align-items:start;gap:var(--sp-3);overflow-x:auto}.td-lane{--lane: var(--ink-3);display:flex;flex-direction:column;gap:var(--sp-2);min-inline-size:0;min-block-size:220px;padding:var(--sp-2);border-radius:var(--r-md);background:var(--surface-sunken)}.td-lane[data-lane=upcoming]{--lane: var(--info)}.td-lane[data-lane=waiting]{--lane: var(--warning)}.td-lane[data-lane=chair]{--lane: var(--teal-500)}.td-lane[data-lane=checkout]{--lane: var(--danger)}.td-lane[data-lane=done]{--lane: var(--success)}.td-lane[data-empty]{min-block-size:0}.td-lane-head{display:flex;align-items:center;gap:var(--sp-2);min-block-size:36px;padding:0 var(--sp-2)}.td-lane-dot{flex:0 0 auto;inline-size:8px;block-size:8px;border-radius:var(--r-full);background:var(--lane)}.td-lane-head h3{margin:0;color:var(--ink-1);font-size:var(--fs-14);font-weight:var(--fw-semibold);line-height:var(--lh-tight);white-space:nowrap}.td-lane[data-empty] .td-lane-head h3{color:var(--ink-3);font-weight:var(--fw-medium)}.td-lane-count{min-inline-size:22px;margin-inline-start:auto;padding:0 7px;border-radius:var(--r-full);background:var(--surface);color:var(--ink-2);font-size:var(--fs-12);font-weight:var(--fw-semibold);font-variant-numeric:tabular-nums;line-height:22px;text-align:center;box-shadow:var(--shadow-xs)}.td-lane-empty{display:none;margin:0}.td-lane-list{container:tdlane / inline-size;display:grid;gap:var(--sp-2);margin:0;padding:0;list-style:none}.td-row{display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-areas:"avatar head" "avatar time" "sub sub" "meta meta" "actions actions";align-items:center;gap:4px var(--sp-3);padding:var(--sp-3);border:1px solid var(--line);border-inline-start:3px solid var(--lane);border-radius:var(--r-sm);background:var(--surface);box-shadow:var(--shadow-xs);transition:box-shadow var(--dur-1) var(--ease-out)}.td-row:hover{box-shadow:var(--shadow-md)}.td-row-avatar{grid-area:avatar}.td-row-time{grid-area:time;justify-self:start;padding:0 8px;border-radius:var(--r-full);background:var(--surface-sunken);color:var(--ink-2);font-size:var(--fs-12);font-weight:var(--fw-semibold);font-variant-numeric:tabular-nums;line-height:22px;white-space:nowrap}.td-row-main{display:contents}.td-row-head{grid-area:head;display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-1) var(--sp-2);min-inline-size:0}.td-row-name{max-inline-size:100%;padding:0;overflow:hidden;border:0;background:none;color:var(--ink-1);font:inherit;font-size:var(--fs-14);font-weight:var(--fw-semibold);line-height:var(--lh-tight);text-align:start;text-overflow:ellipsis;white-space:nowrap}button.td-row-name{cursor:pointer}button.td-row-name:hover{color:var(--accent)}button.td-row-name:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px;border-radius:var(--r-xs)}.td-row-sub{grid-area:sub;display:grid;gap:1px;min-inline-size:0}.td-row-service,.td-row-who{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.td-row-service{color:var(--ink-2);font-size:var(--fs-13);font-weight:var(--fw-medium)}.td-row-who{color:var(--ink-3);font-size:var(--fs-12)}.td-row-head>.td-row-name{flex:1 1 100%}.td-row-head .bk-flags{display:flex;flex-wrap:wrap;gap:4px;min-inline-size:0;max-inline-size:100%}.td-row-head .badge{min-inline-size:0;max-inline-size:100%;overflow:hidden}.td-row-head .bk-flag-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.td-row-meta{grid-area:meta;display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-1) var(--sp-2);font-size:var(--fs-13)}.td-meta{color:var(--ink-3);font-variant-numeric:tabular-nums}.td-meta.is-warning{color:var(--warning);font-weight:var(--fw-semibold)}.td-meta.is-strong{color:var(--ink-1);font-weight:var(--fw-semibold)}.td-meta-group{display:inline-flex;flex-wrap:wrap;align-items:center;gap:var(--sp-1) var(--sp-2)}.td-row-actions{grid-area:actions;display:flex;align-items:center;gap:var(--sp-1);margin-block-start:var(--sp-1);padding-block-start:var(--sp-2);border-block-start:1px solid var(--line)}.td-row-actions>.btn:first-child{flex:1 1 auto}.td-row.is-muted{opacity:.7}@container tdlane (min-width: 560px){.td-row{grid-template-columns:auto 72px minmax(0,1fr) auto;grid-template-areas:"avatar time main actions";min-block-size:64px}.td-row-main{display:grid;grid-area:main;gap:2px;min-inline-size:0}.td-row-head>.td-row-name{flex:0 1 auto}.td-row-sub{display:flex;gap:var(--sp-2)}.td-row-head,.td-row-sub,.td-row-meta{grid-area:auto}.td-row-actions{margin:0;padding:0;border:0}.td-row-actions>.btn:first-child{flex:0 0 auto}}@container tdboard (max-width: 960px){.td-lanes{display:flex;flex-wrap:wrap}.td-lane{flex:1 1 100%;min-block-size:0}.td-lane[data-empty]{flex:0 1 auto}}@container tdboard (max-width: 560px){.td-lane-filter{display:block}.td-lane:not([data-selected]){display:none}.td-lane[data-selected]{flex:1 1 100%}.td-lane[data-selected] .td-lane-head{display:none}.td-lane[data-selected] .td-lane-empty{display:block;padding:var(--sp-7) var(--sp-4);color:var(--ink-3);font-size:var(--fs-13);text-align:center}.td-board-tools{flex:1 1 auto}.td-board-tools .select{inline-size:100%;max-inline-size:none}}.td-prompt-body{margin:0;color:var(--ink-2);line-height:var(--lh-body)}.td-close{display:grid;gap:var(--sp-6)}.td-close-section{display:grid;gap:var(--sp-2);min-inline-size:0}.td-close-head{display:flex;align-items:center;gap:var(--sp-2)}.td-close-head h3{margin:0;color:var(--ink-1);font-size:var(--fs-14);font-weight:var(--fw-semibold);line-height:var(--lh-tight)}.td-close-hint,.td-close-none{margin:0;color:var(--ink-3);font-size:var(--fs-13)}.td-close-skeleton{display:grid;gap:var(--sp-2)}.td-close-list{margin:0;padding:0;list-style:none;border:1px solid var(--line);border-radius:var(--r-md)}.td-close-row{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-2) var(--sp-3);min-block-size:var(--row-h);padding:var(--sp-2) var(--sp-3);border-block-start:1px solid var(--line)}.td-close-row:first-child{border-block-start:0}.td-close-main{display:grid;flex:1 1 180px;gap:2px;min-inline-size:0}.td-close-main strong{font-weight:var(--fw-medium)}.td-close-amount{font-weight:var(--fw-semibold);font-variant-numeric:tabular-nums}.td-close-actions{display:flex;flex-wrap:wrap;gap:var(--sp-1)}.td-close-table{inline-size:100%;border-collapse:collapse;font-size:var(--fs-body)}.td-close-table th,.td-close-table td{padding:var(--sp-2) 0;border-block-end:1px solid var(--line)}.td-close-table th{font-weight:var(--fw-regular);text-align:start}.td-close-table td{font-variant-numeric:tabular-nums;text-align:end}.td-close-table tfoot th,.td-close-table tfoot td{border-block-end:0;font-weight:var(--fw-semibold)}}@layer features{.pf-page>*+*{margin-block-start:var(--sp-4)}.pf-page>.page-head+*{margin-block-start:0}.pf-muted{color:var(--ink-3)}.pf-num{font-variant-numeric:tabular-nums;white-space:nowrap}.pf-strong{font-weight:var(--fw-semibold)}.pf-due{color:var(--warning);font-weight:var(--fw-medium)}.pf-break{overflow-wrap:anywhere}:where(.pf-page) [dir=auto]:not(input,textarea,p){text-align:match-parent}.pf-clamp{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2}.pf-cell-stack{display:grid;gap:2px;min-inline-size:0}.pf-cell-stack>.pf-muted{font-size:var(--fs-13)}.pf-row-actions{display:inline-flex;align-items:center;gap:2px}.ui-table tbody tr.pf-row-muted td{color:var(--ink-3)}.pf-stack{display:grid;gap:var(--sp-4)}.pf-subhead{margin:0;padding:var(--sp-3) var(--sp-4) 0;border-block-start:1px solid var(--line);color:var(--ink-2);font-size:var(--fs-13);font-weight:var(--fw-semibold)}.pf-card-more{display:flex;justify-content:center;padding:var(--sp-2) var(--sp-4);border-block-start:1px solid var(--line)}.pf-meta{display:inline-flex;flex-wrap:wrap;align-items:baseline}.pf-meta>*+*:before{content:"·";display:inline-block;margin-inline:6px;color:var(--ink-3)}.pf-phone{color:inherit;text-decoration:none}.pf-phone:hover{color:var(--accent);text-decoration:underline;text-underline-offset:3px}.pf-summary{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);gap:var(--sp-4)}.pf-summary.no-money{grid-template-columns:minmax(0,1fr)}.pf-summary-health,.pf-money{display:grid;align-content:start;gap:var(--sp-3);padding:var(--sp-5);border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);box-shadow:var(--shadow-sm)}.pf-summary-title{color:var(--ink-3);font-size:var(--fs-13);font-weight:var(--fw-semibold)}.pf-flags{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-2);min-inline-size:0}.pf-flags .badge{min-block-size:26px;padding:0 10px;font-size:var(--fs-13);white-space:normal;text-align:start}.pf-flags-none{color:var(--ink-3);font-size:var(--fs-14)}.pf-money-figures{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--sp-3)}.pf-money-fig{display:grid;gap:4px;min-inline-size:0;padding:var(--sp-3) var(--sp-4);border-radius:var(--r-sm);background:var(--surface-sunken)}.pf-money-fig>span{color:var(--ink-3);font-size:var(--fs-13);font-weight:var(--fw-medium)}.pf-money-fig>strong{overflow:hidden;color:var(--ink-1);font-size:22px;font-weight:var(--fw-semibold);font-variant-numeric:tabular-nums;letter-spacing:-.01em;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.pf-money-fig.is-paid{background:var(--success-bg)}.pf-money-fig.is-paid>strong{color:var(--success)}.pf-money-fig.is-due{background:var(--danger-bg)}.pf-money-fig.is-due>strong{color:var(--danger)}.pf-money-fig.is-credit{background:var(--info-bg)}.pf-money-fig.is-credit>strong{color:var(--info)}.pf-money-bar{block-size:8px;overflow:hidden;border-radius:var(--r-full);background:var(--surface-sunken)}.pf-money-bar>span{display:block;block-size:100%;border-radius:inherit;background:var(--success)}.pf-money-foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--sp-2);color:var(--ink-3);font-size:var(--fs-13)}.pf-visit{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-3) var(--sp-6);padding:var(--sp-4) var(--sp-5);border-inline-start:4px solid var(--teal-500)}.pf-visit-what{display:grid;flex:1 1 220px;gap:2px;min-inline-size:0}.pf-visit-what>strong{color:var(--ink-1);font-size:var(--fs-16);font-weight:var(--fw-semibold)}.pf-visit-when{color:var(--accent);font-size:var(--fs-13);font-weight:var(--fw-semibold);font-variant-numeric:tabular-nums}.pf-visit-who{display:inline-flex;align-items:center;gap:6px;color:var(--ink-2);font-size:var(--fs-13)}.pf-visit-who>svg{flex:0 0 auto;color:var(--ink-3)}.pf-steps{display:flex;flex:2 1 420px;flex-wrap:wrap;align-items:center;gap:var(--sp-1);margin:0;padding:0;list-style:none}.pf-steps li{display:inline-flex;align-items:center;gap:var(--sp-1);color:var(--ink-3);font-size:var(--fs-13)}.pf-steps li+li:before{content:"";inline-size:10px;block-size:2px;border-radius:2px;background:var(--line-strong)}.pf-steps li.is-done+li:before{background:var(--accent)}.pf-step{display:inline-flex;align-items:center;gap:6px;min-block-size:32px;padding:0 8px;border:1px solid transparent;border-radius:var(--r-full);background:transparent;color:inherit;font:inherit;cursor:pointer;transition:background-color var(--dur-1) var(--ease-out),border-color var(--dur-1) var(--ease-out)}.pf-step:hover{background:var(--surface-sunken)}.pf-step:focus-visible{outline:none;box-shadow:var(--ring)}.pf-steps li.is-open .pf-step{border-color:var(--accent-line);background:var(--accent-subtle)}.pf-step-mark{display:grid;flex:0 0 auto;place-items:center;inline-size:18px;block-size:18px;border:2px solid var(--line-strong);border-radius:var(--r-full);background:var(--surface)}.pf-steps li.is-done{color:var(--ink-2)}.pf-steps li.is-done .pf-step-mark{border-color:var(--accent);background:var(--accent);color:var(--on-accent)}.pf-steps li.is-current{color:var(--ink-1);font-weight:var(--fw-semibold)}.pf-steps li.is-current .pf-step-mark{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-subtle)}.pf-visit-action{display:flex;flex:0 0 auto;flex-wrap:wrap;align-items:center;gap:var(--sp-2);margin-inline-start:auto}.pf-visit-note{display:inline-flex;align-items:center;gap:6px;font-size:var(--fs-13);font-weight:var(--fw-medium)}.pf-visit-note.is-due{color:var(--warning)}.pf-visit-note.is-done{color:var(--success)}.pf-stagebar{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-2) var(--sp-4);min-inline-size:0}.pf-stagebar>.ui-tabs{flex:0 1 auto}.pf-stagetabs.ui-tabs{padding:5px;border-radius:var(--r-md);box-shadow:var(--shadow-sm)}.pf-stagetabs .ui-tab{min-block-size:38px;padding:0 16px;border-radius:var(--r-sm);font-size:var(--fs-14)}.pf-stagetabs .ui-tab>svg{color:var(--ink-3)}.pf-stagetabs .ui-tab[aria-selected=true]{box-shadow:var(--shadow-btn)}.pf-stagetabs .ui-tab[aria-selected=true]>svg{color:var(--teal-300)}.pf-advanced{flex:0 0 auto;margin-inline-start:auto;padding:6px 12px;border:1px solid var(--line);border-radius:var(--r-full);background:var(--surface);color:var(--ink-2);font-size:var(--fs-13);box-shadow:var(--shadow-xs)}.pf-stage{display:grid;gap:var(--sp-4);min-inline-size:0}.pf-stage:focus-visible{outline-offset:4px}.pf-subnav.ui-seg{justify-self:start;gap:var(--sp-2);padding:0;border:0;background:transparent}.pf-subnav .ui-seg-item{min-block-size:34px;padding:0 14px;border:1px solid var(--line);border-radius:var(--r-full);background:var(--surface);color:var(--ink-2);font-size:var(--fs-13);box-shadow:var(--shadow-xs)}.pf-subnav .ui-seg-item:hover{border-color:var(--line-strong);color:var(--ink-1)}.pf-subnav .ui-seg-item[aria-checked=true]{border-color:var(--accent-line);background:var(--accent-subtle);color:var(--accent-hover);box-shadow:none}.pf-subnav .ui-seg-item .ui-tab-count{border-radius:var(--r-full);background:var(--surface-sunken);color:var(--ink-2)}.pf-subnav .ui-seg-item[aria-checked=true] .ui-tab-count{background:var(--surface);color:var(--accent-hover)}.pf-stage .card>.card-head{min-block-size:60px;padding:var(--sp-4) var(--card-pad) var(--sp-2);border-block-end:0}.pf-stage .card>.card-head .head-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-2)}.pf-stage .ui-empty-icon{display:grid;place-items:center;inline-size:44px;block-size:44px;margin-block-end:var(--sp-2);border-radius:var(--r-md);background:var(--accent-subtle);color:var(--accent)}.pf-stage .ui-empty.danger .ui-empty-icon{background:var(--danger-bg);color:var(--danger)}.pf-skeleton{display:grid;gap:var(--sp-3)}.pf-skeleton-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:var(--sp-4)}.pf-ichip{--ic-fg: var(--ink-2);--ic-bg: var(--surface-sunken);display:inline-grid;flex:0 0 auto;place-items:center;inline-size:36px;block-size:36px;border-radius:var(--r-sm);background:var(--ic-bg);color:var(--ic-fg)}.pf-ichip.size-sm{inline-size:28px;block-size:28px;border-radius:calc(var(--r-sm) - 2px)}.pf-ichip.size-lg{inline-size:44px;block-size:44px}.pf-ichip.tone-accent{--ic-fg: var(--accent);--ic-bg: var(--accent-subtle)}.pf-ichip.tone-success{--ic-fg: var(--success);--ic-bg: var(--success-bg)}.pf-ichip.tone-warning{--ic-fg: var(--warning);--ic-bg: var(--warning-bg)}.pf-ichip.tone-danger{--ic-fg: var(--danger);--ic-bg: var(--danger-bg)}.pf-ichip.tone-info{--ic-fg: var(--info);--ic-bg: var(--info-bg)}.pf-date{--date-band: var(--surface-sunken);--date-band-ink: var(--ink-2);display:grid;flex:0 0 auto;grid-template-rows:auto 1fr auto;justify-items:center;inline-size:58px;overflow:hidden;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface);box-shadow:var(--shadow-xs);line-height:1.15;text-align:center}.pf-date-month{inline-size:100%;padding:3px 4px;overflow:hidden;background:var(--date-band);color:var(--date-band-ink);font-size:11px;font-weight:var(--fw-semibold);letter-spacing:.03em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}.pf-date-day{padding-block-start:4px;color:var(--ink-1);font-size:22px;font-weight:var(--fw-semibold);font-variant-numeric:tabular-nums;letter-spacing:-.01em}.pf-date-foot{padding-block-end:5px;color:var(--ink-3);font-size:11px;white-space:nowrap}.pf-date.tone-accent{--date-band: var(--accent);--date-band-ink: var(--on-accent);border-color:var(--accent-line)}.pf-date.tone-muted{box-shadow:none}.pf-date.tone-muted .pf-date-day{color:var(--ink-3)}.pf-date.size-lg{inline-size:70px}.pf-date.size-lg .pf-date-day{padding-block-start:6px;font-size:28px}.pf-date.size-lg .pf-date-foot{padding-block-end:7px;font-size:var(--fs-12)}.pf-tooth-chip{display:inline-flex;align-items:center;min-block-size:20px;margin-inline-start:var(--sp-2);padding:0 7px;border:1px solid var(--line-strong);border-radius:var(--r-full);background:var(--surface);color:var(--ink-2);font-size:var(--fs-12);font-weight:var(--fw-semibold);font-variant-numeric:tabular-nums;vertical-align:middle}.pf-link{color:var(--accent);font-weight:var(--fw-medium);text-decoration:none}.pf-link:hover{color:var(--accent-hover);text-decoration:underline;text-underline-offset:3px}.pf-amount-in{color:var(--success)}.pf-amount-out{color:var(--warning)}.pf-overview{display:grid;grid-template-columns:minmax(0,2fr) minmax(300px,1fr);align-items:start;gap:var(--sp-5)}.pf-overview-main,.pf-overview-side{display:grid;align-content:start;gap:var(--sp-5);min-inline-size:0}.pf-vtiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sp-4);padding:var(--sp-2) var(--card-pad) var(--card-pad)}.pf-vtile{display:grid;align-content:start;gap:var(--sp-3);min-inline-size:0;padding:var(--sp-4);border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface-hover)}.pf-vtile.is-next{border-color:var(--accent-line);background:var(--accent-subtle)}.pf-vtile.is-empty{border-style:dashed;border-color:var(--line-strong);background:var(--surface)}.pf-vtile-head{display:flex;align-items:center;gap:var(--sp-2);min-inline-size:0}.pf-vtile-head h3{margin:0;color:var(--ink-2);font-size:var(--fs-13);font-weight:var(--fw-semibold)}.pf-vtile-status{margin-inline-start:auto}.pf-vtile-main{display:flex;align-items:flex-start;gap:var(--sp-4);min-inline-size:0}.pf-vtile-text{display:grid;gap:5px;min-inline-size:0}.pf-vtile-relative{color:var(--accent-hover);font-size:var(--fs-12);font-weight:var(--fw-semibold)}.pf-vtile.is-last .pf-vtile-relative{color:var(--ink-3)}.pf-vtile-title{overflow:hidden;color:var(--ink-1);font-size:var(--fs-16);font-weight:var(--fw-semibold);line-height:var(--lh-tight);text-overflow:ellipsis;white-space:nowrap}.pf-vtile-line{display:inline-flex;align-items:center;gap:6px;min-inline-size:0;color:var(--ink-2);font-size:var(--fs-13)}.pf-vtile-line>svg{flex:0 0 auto;color:var(--ink-3)}.pf-vtile-line>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pf-vtile-tx{display:flex;align-items:baseline;justify-content:space-between;gap:var(--sp-3);margin:0;padding-block-start:var(--sp-3);border-block-start:1px solid var(--line);color:var(--ink-2);font-size:var(--fs-13)}.pf-vtile.is-next .pf-vtile-tx{border-block-start-color:var(--accent-line)}.pf-vtile-tx>strong{color:var(--ink-1);font-size:var(--fs-14)}.pf-vtile-empty{margin:0;color:var(--ink-3);font-size:var(--fs-13)}.pf-vtile-foot{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-2)}.pf-timeline{margin:0;padding:var(--sp-1) var(--card-pad) var(--sp-4);list-style:none}.pf-tl-item{position:relative;display:grid;grid-template-columns:28px minmax(0,1fr);gap:var(--sp-3);padding-block:var(--sp-2)}.pf-tl-item:before{content:"";position:absolute;inset-block:calc(var(--sp-2) + 28px + 4px) -4px;inset-inline-start:13px;inline-size:2px;border-radius:2px;background:var(--line)}.pf-tl-item:last-child:before{display:none}.pf-tl-icon{position:relative}.pf-tl-body{display:grid;gap:2px;min-inline-size:0;padding-block-start:4px}.pf-tl-row{display:flex;align-items:center;gap:var(--sp-3);min-inline-size:0}.pf-tl-title{flex:1 1 auto;min-inline-size:0;overflow:hidden;color:var(--ink-1);font-weight:var(--fw-medium);text-overflow:ellipsis;white-space:nowrap}.pf-tl-end{flex:0 0 auto;font-size:var(--fs-14)}.pf-tl-meta{display:flex;align-items:baseline;gap:var(--sp-2);min-inline-size:0;color:var(--ink-3);font-size:var(--fs-13)}.pf-tl-meta>time{flex:0 0 auto;font-variant-numeric:tabular-nums;white-space:nowrap}.pf-tl-meta>span{min-inline-size:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pf-tl-meta>span:before{content:"·";margin-inline-end:var(--sp-2)}.pf-kv{display:grid;margin:0;padding:0 var(--card-pad) var(--sp-3)}.pf-kv>div{display:grid;grid-template-columns:minmax(6.5rem,38%) minmax(0,1fr);align-items:center;gap:var(--sp-3);min-block-size:46px;padding-block:var(--sp-2);border-block-start:1px solid var(--line)}.pf-kv>div:first-child{border-block-start:0}.pf-kv dt{color:var(--ink-3);font-size:var(--fs-13)}.pf-kv dd{min-inline-size:0;margin:0;color:var(--ink-1)}.pf-kv .pf-badges .badge{min-block-size:24px;padding:0 10px;font-size:var(--fs-13);white-space:normal}.pf-blood{font-weight:var(--fw-semibold)}.pf-badges{display:flex;flex-wrap:wrap;gap:6px}.pf-kv-money dd{font-weight:var(--fw-medium);text-align:end}.pf-kv-money>div.is-total{margin-block:var(--sp-1) var(--sp-1);padding-inline:var(--sp-3);border:0;border-radius:var(--r-sm);background:var(--success-bg)}.pf-kv-money>div.is-total dt{color:var(--ink-2);font-weight:var(--fw-medium)}.pf-kv-money>div.is-total dd{color:var(--success);font-size:var(--fs-16);font-weight:var(--fw-semibold)}.pf-kv-money>div.is-due{background:var(--danger-bg)}.pf-kv-money>div.is-due dd{color:var(--danger)}.pf-kv-money>div.is-credit{background:var(--info-bg)}.pf-kv-money>div.is-credit dd{color:var(--info)}.pf-contacts{display:grid;gap:var(--sp-1);margin:0;padding:0 var(--sp-3) var(--sp-3);list-style:none}.pf-contact{display:flex;align-items:center;gap:var(--sp-3);min-block-size:52px;padding:var(--sp-2);border-radius:var(--r-sm);transition:background-color var(--dur-1) var(--ease-out)}.pf-contact:hover{background:var(--surface-hover)}.pf-contact-text{display:grid;gap:1px;min-inline-size:0}.pf-contact-label{color:var(--ink-3);font-size:var(--fs-12)}.pf-contact-value{min-inline-size:0;color:var(--ink-1);overflow-wrap:anywhere}.pf-note-card{display:grid;gap:var(--sp-3);margin:0;padding:var(--sp-1) var(--card-pad) var(--card-pad)}.pf-note-card blockquote{display:-webkit-box;margin:0;padding:var(--sp-3) var(--sp-4);overflow:hidden;border-inline-start:3px solid var(--accent-line);border-radius:var(--r-xs);background:var(--surface-hover);color:var(--ink-1);white-space:pre-line;-webkit-box-orient:vertical;-webkit-line-clamp:5}.pf-note-card figcaption{display:flex;align-items:center;gap:var(--sp-2);min-inline-size:0}.pf-note-card-who{display:grid;gap:0;min-inline-size:0;font-size:var(--fs-13);line-height:var(--lh-tight)}.pf-note-card-who>strong{color:var(--ink-1);font-weight:var(--fw-semibold)}.pf-plan{margin:0;padding:0 var(--card-pad);list-style:none}.pf-plan li{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:var(--sp-3);min-block-size:var(--row-h);padding-block:var(--sp-2);border-block-start:1px solid var(--line)}.pf-plan li:first-child{border-block-start:0}.pf-plan-title{min-inline-size:0;color:var(--ink-1);font-weight:var(--fw-medium)}.pf-plan-total{display:flex;justify-content:space-between;gap:var(--sp-3);margin:0 var(--card-pad) var(--card-pad);padding:var(--sp-3) var(--sp-4);border-radius:var(--r-sm);background:var(--surface-sunken);color:var(--ink-2)}.pf-plan-total>strong{color:var(--ink-1)}.pf-vlist{margin:0;padding:0 var(--sp-3) var(--sp-3);list-style:none}.pf-vrow{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:var(--sp-4);min-block-size:76px;padding:var(--sp-3);border-radius:var(--r-md);transition:background-color var(--dur-1) var(--ease-out)}.pf-vrow+.pf-vrow{box-shadow:0 -1px 0 var(--line)}.pf-vrow:hover{background:var(--surface-hover)}.pf-vrow.is-today{background:var(--accent-subtle)}.pf-vrow.is-cancelled .pf-vrow-title{color:var(--ink-3);text-decoration:line-through;text-decoration-color:var(--line-strong)}.pf-vrow-main{display:grid;gap:4px;min-inline-size:0}.pf-vrow-head{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-1) var(--sp-2);min-inline-size:0}.pf-vrow-title{min-inline-size:0;max-inline-size:100%;overflow:hidden;color:var(--ink-1);font-size:var(--fs-14);font-weight:var(--fw-semibold);text-overflow:ellipsis;white-space:nowrap}.pf-vrow-meta{display:flex;flex-wrap:wrap;align-items:center;gap:4px var(--sp-4);color:var(--ink-2);font-size:var(--fs-13)}.pf-vrow-meta-item{display:inline-flex;align-items:center;gap:6px;min-inline-size:0}.pf-vrow-meta-item>svg{flex:0 0 auto;color:var(--ink-3)}.pf-vrow-tx{display:flex;flex-wrap:wrap;gap:6px;margin:2px 0 0;padding:0;list-style:none}.pf-vrow-tx>li{max-inline-size:100%;padding:1px 9px;overflow:hidden;border-radius:var(--r-full);background:var(--surface-sunken);color:var(--ink-2);font-size:var(--fs-12);font-weight:var(--fw-medium);text-overflow:ellipsis;white-space:nowrap}.pf-vrow.is-today .pf-vrow-tx>li{background:var(--surface)}.pf-vrow-tx>li.is-more{background:transparent;color:var(--ink-3)}.pf-vrow-reason{margin:0;color:var(--ink-3);font-size:var(--fs-13)}.pf-vrow-cost{min-inline-size:5rem;text-align:end}.pf-vrow-cost>strong{color:var(--ink-1);font-size:var(--fs-16)}.pf-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--sp-4);margin:0}.pf-kpi{display:flex;align-items:center;gap:var(--sp-3);min-inline-size:0;padding:var(--sp-4) var(--sp-5);border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);box-shadow:var(--shadow-sm)}.pf-kpi-text{display:grid;gap:2px;min-inline-size:0}.pf-kpi-label{color:var(--ink-3);font-size:var(--fs-13);font-weight:var(--fw-medium);line-height:var(--lh-tight)}.pf-kpi-text>strong{overflow:hidden;color:var(--ink-1);font-size:var(--fs-24);font-weight:var(--fw-semibold);font-variant-numeric:tabular-nums;letter-spacing:-.01em;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.pf-kpi-text>small{color:var(--ink-3);font-size:var(--fs-12)}.pf-kpi.is-due{border-color:var(--danger-line)}.pf-kpi.is-due .pf-kpi-text>strong{color:var(--danger)}.pf-kpi.is-credit .pf-kpi-text>strong{color:var(--info)}.pf-kpi.is-settled .pf-kpi-text>strong{color:var(--success)}.pf-rows{margin:0;padding:0 var(--sp-3) var(--sp-3);list-style:none}.pf-lrow{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:var(--sp-3);min-block-size:60px;padding:var(--sp-2) var(--sp-3);border-radius:var(--r-sm);transition:background-color var(--dur-1) var(--ease-out)}.pf-lrow+.pf-lrow{box-shadow:0 -1px 0 var(--line)}.pf-lrow:hover{background:var(--surface-hover)}.pf-lrow.is-void{opacity:.72}.pf-lrow-main{display:grid;gap:2px;min-inline-size:0}.pf-lrow-head{display:flex;flex-wrap:wrap;align-items:center;gap:4px var(--sp-2);min-inline-size:0}.pf-lrow-title{min-inline-size:0;max-inline-size:100%;overflow:hidden;color:var(--ink-1);font-weight:var(--fw-medium);text-overflow:ellipsis;white-space:nowrap}.pf-lrow-title.is-strong{font-weight:var(--fw-semibold)}.pf-lrow-discount{color:var(--success);font-weight:var(--fw-medium)}.pf-discount-percents{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-2);color:var(--ink-3);font-size:var(--fs-13)}.pf-lrow-meta{min-inline-size:0;overflow:hidden;color:var(--ink-3);font-size:var(--fs-13);text-overflow:ellipsis;white-space:nowrap}.pf-lrow-amount{display:grid;justify-items:end;gap:1px;min-inline-size:6.5rem;text-align:end}.pf-lrow-amount>strong{color:var(--ink-1);font-size:var(--fs-16);font-weight:var(--fw-semibold);font-variant-numeric:tabular-nums;white-space:nowrap}.pf-lrow-amount>strong.pf-amount-in{color:var(--success)}.pf-lrow-amount>strong.pf-amount-out{color:var(--warning)}.pf-lrow-amount>small{color:var(--ink-3);font-size:var(--fs-12);font-variant-numeric:tabular-nums;white-space:nowrap}.pf-lrow-amount>small.is-due{color:var(--warning);font-weight:var(--fw-medium)}.pf-lrow-actions{display:inline-flex;align-items:center;justify-content:flex-end;gap:var(--sp-1);min-inline-size:32px}.pf-rows-month{padding:var(--sp-3) var(--sp-3) var(--sp-1);color:var(--ink-3);font-size:var(--fs-12);font-weight:var(--fw-semibold);letter-spacing:.02em}.pf-lrow+.pf-rows-month{margin-block-start:var(--sp-2)}.pf-form{display:grid;gap:var(--sp-4)}.pf-form-context{margin:0;color:var(--ink-2);font-size:var(--fs-13)}.pf-form-chips{display:flex;flex-wrap:wrap;gap:var(--sp-2);margin-block-start:calc(-1 * var(--sp-2))}.pf-line-set{display:grid;gap:var(--sp-3);min-inline-size:0;margin:0;padding:var(--sp-3) 0 0;border:0;border-block-start:1px solid var(--line)}.pf-line-set>legend{padding:0;color:var(--ink-2);font-size:var(--fs-13);font-weight:var(--fw-semibold)}.pf-line-set>.pf-subhead{padding:0;border:0}.pf-line-set>.btn{justify-self:end}.pf-line{display:grid;gap:var(--sp-3)}.pf-line-set.pf-line-locked{display:flex;align-items:baseline;justify-content:space-between;gap:var(--sp-3)}.pf-line-numbers.form-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:var(--sp-3)}.pf-line-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:var(--sp-2)}.pf-hard-delete p{margin:0 0 var(--sp-2)}.pf-impact{display:grid;gap:var(--sp-1);margin:0 0 var(--sp-2);padding-inline-start:var(--sp-5);color:var(--ink-1)}.pf-impact ul{margin:var(--sp-1) 0 0;padding-inline-start:var(--sp-5);color:var(--ink-2);font-size:var(--fs-13)}.pf-danger-text{color:var(--danger);font-weight:var(--fw-medium)}.pf-section-head{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-2) var(--sp-4)}.pf-section-head-text{display:grid;flex:1 1 240px;gap:2px;min-inline-size:0}.pf-section-head h2{margin:0;color:var(--ink-1);font-size:18px;font-weight:var(--fw-semibold);line-height:var(--lh-tight)}.pf-section-head p{margin:0;color:var(--ink-3);font-size:var(--fs-13)}.pf-section-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-2)}.pf-files{display:grid;gap:var(--sp-4);min-inline-size:0;border-radius:var(--r-md)}.pf-files.is-dragging{outline:2px dashed var(--focus-ring);outline-offset:6px}.pf-file-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:var(--sp-4);margin:0;padding:0;list-style:none}.pf-file{display:grid;grid-template-rows:auto 1fr;min-inline-size:0;overflow:hidden;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);box-shadow:var(--shadow-sm);transition:box-shadow var(--dur-2) var(--ease-out),transform var(--dur-2) var(--ease-out)}.pf-file:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.pf-file-preview{position:relative;display:grid;place-items:center;aspect-ratio:4 / 3;overflow:hidden;border-block-end:1px solid var(--line);background:var(--surface-sunken);color:var(--ink-3)}a.pf-file-preview:focus-visible{outline:2px solid var(--focus-ring);outline-offset:-2px}.pf-file-preview img{inline-size:100%;block-size:100%;object-fit:cover;transition:transform var(--dur-3) var(--ease-out)}a.pf-file-preview:hover img{transform:scale(1.03)}.pf-file-preview .pf-file-skeleton{inline-size:100%;block-size:100%;border-radius:0}.pf-file-icon{display:grid;justify-items:center;gap:var(--sp-2);font-size:var(--fs-12)}.pf-file-icon>.pf-ichip{inline-size:52px;block-size:52px;border-radius:var(--r-md)}.pf-file-kind{position:absolute;inset-block-start:var(--sp-2);inset-inline-start:var(--sp-2);box-shadow:var(--shadow-xs)}.pf-file-meta{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--sp-2);min-inline-size:0;padding:var(--sp-3) var(--sp-3) var(--sp-3) var(--sp-4)}.pf-file-text{display:grid;gap:2px;min-inline-size:0;font-size:var(--fs-13)}.pf-file-text>strong{overflow:hidden;color:var(--ink-1);font-size:var(--fs-14);font-weight:var(--fw-semibold);text-overflow:ellipsis;white-space:nowrap}.pf-drop{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-3);padding:var(--sp-3);border:1px dashed var(--line-strong);border-radius:var(--r-sm);color:var(--ink-3)}.pf-drop:focus-within{border-color:var(--focus-ring)}.pf-drop>.btn{margin-inline-start:auto}.pf-drop-file{display:grid;flex:1 1 160px;gap:1px;min-inline-size:0}.pf-drop-file>strong{color:var(--ink-1);font-weight:var(--fw-medium)}.pf-notes-stage{display:grid;gap:var(--sp-4);min-inline-size:0}.pf-note-compose{display:grid;grid-template-columns:auto minmax(0,1fr);gap:var(--sp-3);align-items:start}.pf-note-compose-body{display:grid;gap:var(--sp-2);min-inline-size:0}.pf-note-compose-actions{display:flex;justify-content:flex-end}.pf-notes{display:grid;gap:var(--sp-3);margin:0;padding:0;list-style:none}.pf-note{display:grid;grid-template-columns:auto minmax(0,1fr);gap:var(--sp-3);padding:var(--sp-4) var(--card-pad);border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);box-shadow:var(--shadow-sm)}.pf-note-body{display:grid;gap:var(--sp-1);min-inline-size:0}.pf-note-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px var(--sp-3);font-size:var(--fs-13)}.pf-note-head>strong{color:var(--ink-1);font-size:var(--fs-14);font-weight:var(--fw-semibold)}.pf-note-head>time{color:var(--ink-3);font-variant-numeric:tabular-nums}.pf-note-body p{margin:0;color:var(--ink-1);line-height:var(--lh-body);overflow-wrap:anywhere;white-space:pre-line}@media(max-width:1100px){.pf-overview{grid-template-columns:minmax(0,1fr)}}@media(max-width:900px){.pf-kpis{grid-template-columns:minmax(0,1fr);gap:var(--sp-3)}}@media(max-width:760px){.pf-stagebar{flex-wrap:wrap}.pf-stagebar>.ui-tabs{inline-size:100%}.pf-stagetabs .ui-tab{padding:0 12px}.pf-advanced{margin-inline-start:0}.pf-subnav.ui-seg{max-inline-size:100%;overflow-x:auto;scrollbar-width:none}.pf-summary{grid-template-columns:minmax(0,1fr)}.pf-money-figures{gap:var(--sp-2)}.pf-money-fig{padding:var(--sp-2) var(--sp-3)}.pf-money-fig>strong{font-size:17px}.pf-visit-action{inline-size:100%}.pf-visit-action>.btn{flex:1 1 auto}.pf-vtiles{grid-template-columns:minmax(0,1fr);padding-inline:var(--sp-4)}.pf-skeleton-grid{grid-template-columns:minmax(0,1fr)}.pf-line-numbers.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pf-file-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sp-3)}.pf-file-meta{padding:var(--sp-2) var(--sp-2) var(--sp-3) var(--sp-3)}.pf-vrow{grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"date main actions" "date cost actions";align-items:start;gap:var(--sp-1) var(--sp-3)}.pf-vrow>.pf-date{grid-area:date}.pf-vrow-main{grid-area:main}.pf-vrow-cost{grid-area:cost;min-inline-size:0;text-align:start}.pf-vrow-actions{grid-area:actions}.pf-lrow{grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"icon main actions" "icon amount actions";align-items:start;gap:2px var(--sp-3)}.pf-lrow>.pf-ichip{grid-area:icon}.pf-lrow-main{grid-area:main}.pf-lrow-amount{grid-area:amount;justify-items:start;min-inline-size:0;text-align:start}.pf-lrow-actions{grid-area:actions}.pf-note{padding:var(--sp-3) var(--sp-4)}.pf-note-compose{grid-template-columns:minmax(0,1fr)}.pf-note-compose>.avatar{display:none}}@media(prefers-reduced-motion:reduce){.pf-file,.pf-file-preview img{transition:none}.pf-file:hover,a.pf-file-preview:hover img{transform:none}}@media(max-width:480px){.pf-file-grid{grid-template-columns:minmax(0,1fr)}.pf-vtile-main{gap:var(--sp-3)}.pf-kv>div{grid-template-columns:minmax(0,1fr);gap:2px}}}@layer features{.invoice-document{inline-size:min(100%,794px);min-block-size:920px;margin:0 auto;padding:46px;border:1px solid var(--line);border-radius:var(--r-xs);background:var(--white);color:var(--ink-1);font-family:var(--font-sans);font-variant-numeric:tabular-nums;line-height:var(--lh-body);-webkit-print-color-adjust:exact;print-color-adjust:exact}.invoice-document-head{display:flex;align-items:flex-start;justify-content:space-between;gap:28px;padding-block-end:28px;border-block-end:3px solid var(--invoice-accent, var(--accent))}.invoice-brand{display:flex;min-inline-size:0;align-items:center;gap:14px}.invoice-brand img,.invoice-brand-mark{display:grid;inline-size:56px;block-size:56px;flex:0 0 56px;place-items:center;object-fit:contain;border-radius:var(--r-md)}.invoice-brand-mark{background:var(--invoice-accent, var(--accent));color:var(--white);font-size:var(--fs-24);font-weight:var(--fw-semibold)}.invoice-brand h1{margin:0;font-size:23px;font-weight:var(--fw-semibold);line-height:var(--lh-tight)}.invoice-brand p,.invoice-number small{margin:5px 0 0;color:var(--ink-3);font-size:11px}.invoice-number{display:grid;flex:0 0 auto;justify-items:end;gap:4px}.invoice-number>span{color:var(--invoice-accent, var(--accent));font-size:var(--fs-12);font-weight:var(--fw-semibold)}.invoice-number>strong{font-size:21px;font-weight:var(--fw-semibold)}.invoice-meta-grid{display:grid;grid-template-columns:1fr 1fr;gap:50px;padding-block:28px}.invoice-meta-grid section{display:grid;align-content:start;gap:7px}.invoice-meta-grid section>span,.invoice-meta-grid section div span{color:var(--ink-3);font-size:10px;font-weight:var(--fw-semibold)}.invoice-meta-grid section>strong{font-size:15px;font-weight:var(--fw-semibold)}.invoice-meta-grid p{margin:0;color:var(--ink-2);font-size:11px}.invoice-meta-grid section div{display:flex;justify-content:space-between;gap:20px;padding-block-end:7px;border-block-end:1px solid var(--line);font-size:11px}.invoice-table{inline-size:100%;border-collapse:collapse;table-layout:fixed}.invoice-table th{padding:11px 9px;background:var(--invoice-accent, var(--accent));color:var(--white);font-size:10px;font-weight:var(--fw-semibold);text-align:start}.invoice-table th:first-child{inline-size:42px;border-start-start-radius:var(--r-md);border-end-start-radius:var(--r-md)}.invoice-table th:last-child{border-start-end-radius:var(--r-md);border-end-end-radius:var(--r-md)}.invoice-table th:nth-child(3){inline-size:70px}.invoice-table th:nth-child(4){inline-size:60px}.invoice-table th:nth-child(5),.invoice-table th:nth-child(6){inline-size:105px}.invoice-table td{padding:14px 9px;border-block-end:1px solid var(--line);color:var(--ink-2);font-size:11px;vertical-align:top}.invoice-table td strong{color:var(--ink-1);font-weight:var(--fw-semibold)}.invoice-table td small{display:block;margin-block-start:4px;color:var(--ink-3)}.invoice-bottom{display:grid;grid-template-columns:minmax(0,1fr) 265px;gap:40px;padding-block-start:27px}.invoice-contact{color:var(--ink-3);font-size:11px}.invoice-contact p{margin:0 0 7px}.invoice-totals{display:grid;gap:8px}.invoice-totals div{display:flex;justify-content:space-between;gap:20px;color:var(--ink-2);font-size:11px}.invoice-totals .grand{margin-block-start:3px;padding-block:11px;border-block:2px solid var(--invoice-accent, var(--accent));color:var(--ink-1);font-size:15px}.invoice-totals .balance{color:var(--invoice-accent, var(--accent));font-size:var(--fs-13)}.invoice-document footer{margin-block-start:70px;padding-block-start:16px;border-block-start:1px solid var(--line);color:var(--ink-3);font-size:11px;text-align:center}.inv-preview{position:fixed;inset:0;z-index:var(--z-modal);display:flex;flex-direction:column;background:var(--scrim);animation:ui-fade-in var(--dur-2) var(--ease-out)}.inv-preview:focus{outline:none}.inv-preview-bar{position:relative;z-index:1;display:flex;flex:0 0 auto;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--sp-2) var(--sp-4);min-block-size:64px;padding:var(--sp-3) var(--sp-6);border-block-end:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-md)}.inv-preview-title{display:flex;align-items:center;gap:var(--sp-3);min-inline-size:0}.inv-preview-title>div{display:grid;gap:2px;min-inline-size:0}.inv-preview-icon{display:grid;flex:0 0 auto;place-items:center;inline-size:40px;block-size:40px;border-radius:var(--r-sm);background:var(--accent-subtle);color:var(--accent)}.inv-preview-bar h2{margin:0;color:var(--ink-1);font-size:17px;font-weight:var(--fw-semibold);line-height:var(--lh-tight)}.inv-preview-bar p{margin:0;overflow:hidden;color:var(--ink-3);font-size:var(--fs-13);text-align:match-parent;text-overflow:ellipsis;white-space:nowrap}.inv-preview-actions{display:flex;flex-wrap:wrap;gap:var(--sp-2)}.inv-preview-page{flex:1 1 auto;overflow:auto;padding:var(--sp-7) var(--sp-6);background:var(--surface-sunken)}.inv-preview-page .invoice-document{border-color:transparent;border-radius:var(--r-sm);box-shadow:var(--shadow-modal)}.inv-preview-wait{inline-size:min(100%,794px);margin:0 auto}@media(max-width:760px){.inv-preview-bar{padding-inline:var(--sp-4)}.inv-preview-icon{inline-size:36px;block-size:36px}.inv-preview-page{padding:var(--sp-3)}.inv-preview-page .invoice-document{min-inline-size:680px;padding:34px}}@media print{@page{size:A4;margin:0}body:has(>.inv-preview)>:not(.inv-preview){display:none!important}.inv-preview{position:static;display:block;background:var(--white);animation:none}.inv-preview-bar{display:none}.inv-preview-page{overflow:visible;padding:0;background:var(--white)}.inv-preview-page .invoice-document{inline-size:210mm;min-inline-size:0;min-block-size:297mm;padding:14mm;border:0;border-radius:0;box-shadow:none}}}@layer features{.fin-page{display:grid;gap:var(--sp-5);min-inline-size:0}.fin-page>.page-head{margin-block-end:0}.fin-head-actions{gap:var(--sp-2) var(--sp-3)}.ui-seg.fin-pills{max-inline-size:100%;padding:4px;overflow-x:auto;border:1px solid var(--line);border-radius:var(--r-full);background:var(--surface);box-shadow:var(--shadow-xs);scrollbar-width:none}.ui-seg.fin-pills::-webkit-scrollbar{display:none}.fin-pills .ui-seg-item{min-block-size:32px;padding:0 14px;border:0;border-radius:var(--r-full);color:var(--ink-2);font-weight:var(--fw-medium)}.fin-pills .ui-seg-item:hover{background:var(--surface-hover);color:var(--ink-1)}.fin-pills .ui-seg-item[aria-checked=true]{background:var(--navy-800);color:var(--white);font-weight:var(--fw-semibold);box-shadow:var(--shadow-xs)}.fin-pills .ui-seg-item[aria-checked=true]:hover{background:var(--navy-700);color:var(--white)}.fin-pills .ui-seg-item:focus-visible{outline:none;box-shadow:var(--ring)}.fin-period{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-2) var(--sp-4);min-inline-size:0;padding:var(--sp-3) var(--card-pad);border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);box-shadow:var(--shadow-sm)}.fin-range{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-2) var(--sp-5)}.fin-range-field{display:inline-flex;align-items:center;gap:var(--sp-2);color:var(--ink-2);font-size:var(--fs-13);font-weight:var(--fw-semibold)}.fin-range-field .date-control{inline-size:200px}.fin-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,210px),1fr));gap:var(--sp-4);margin:0}.fin-kpi{--kpi-fg: var(--accent);--kpi-bg: var(--accent-subtle);display:flex;align-items:flex-start;gap:var(--sp-3);min-inline-size:0;padding:var(--sp-4) var(--sp-5);border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);box-shadow:var(--shadow-sm)}.fin-kpi.tone-success{--kpi-fg: var(--success);--kpi-bg: var(--success-bg)}.fin-kpi.tone-warning{--kpi-fg: var(--warning);--kpi-bg: var(--warning-bg)}.fin-kpi.tone-info{--kpi-fg: var(--info);--kpi-bg: var(--info-bg)}.fin-kpi.tone-danger{--kpi-fg: var(--danger);--kpi-bg: var(--danger-bg)}.fin-kpi-icon{display:grid;flex:0 0 auto;place-items:center;inline-size:44px;block-size:44px;border-radius:var(--r-sm);background:var(--kpi-bg);color:var(--kpi-fg)}.fin-kpi-icon-skeleton{flex:0 0 auto;border-radius:var(--r-sm)}.fin-kpi-text{display:grid;flex:1 1 auto;gap:2px;min-inline-size:0}.fin-kpi dt{color:var(--ink-3);font-size:var(--fs-13);font-weight:var(--fw-medium);line-height:var(--lh-tight)}.fin-kpi dd{display:grid;gap:2px;margin:0}.fin-kpi dd>bdi{overflow:hidden;color:var(--ink-1);font-size:var(--fs-24);font-weight:var(--fw-semibold);font-variant-numeric:tabular-nums;letter-spacing:-.01em;line-height:1.2;justify-self:start;max-inline-size:100%;text-overflow:ellipsis;white-space:nowrap}.fin-kpi dd>bdi.fin-negative{color:var(--danger)}.fin-kpi dd>small{color:var(--ink-3);font-size:var(--fs-12);line-height:var(--lh-body)}.fin-kpi .ui-skeleton+.ui-skeleton{margin-block-start:var(--sp-1)}.fin-link{color:var(--accent);font-weight:var(--fw-semibold);text-decoration:underline;text-underline-offset:2px}.fin-link:hover{color:var(--accent-hover)}.fin-list{min-inline-size:0}.fin-list .ui-filterbar{gap:var(--sp-2) var(--sp-3);padding:var(--sp-4) var(--card-pad);border-block-end:0}.fin-list .ui-filterbar>.ui-search{flex:1 1 240px;max-inline-size:380px}.fin-list .ui-filterbar .select{min-inline-size:150px}.fin-list .ui-filterbar-summary{padding-block-start:var(--sp-1)}.fin-notice{margin:0 var(--card-pad) var(--sp-3)}.fin-summary{color:var(--ink-3);font-size:var(--fs-13);font-weight:var(--fw-medium)}.fin-methods{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-2) var(--sp-3);padding:0 var(--card-pad) var(--sp-4)}.fin-methods-label{color:var(--ink-3);font-size:var(--fs-12);font-weight:var(--fw-semibold)}.fin-methods-list{display:flex;flex-wrap:wrap;gap:var(--sp-2);margin:0;padding:0;list-style:none}.fin-method-pill{--m-fg: var(--ink-2);--m-bg: var(--surface-sunken);--m-line: var(--line);display:inline-flex;align-items:center;gap:6px;min-block-size:26px;padding:0 10px;border:1px solid var(--m-line);border-radius:var(--r-full);background:var(--m-bg);color:var(--m-fg);font-size:var(--fs-12);font-weight:var(--fw-semibold);line-height:1;white-space:nowrap}.fin-method-pill>svg{flex:0 0 auto}.fin-method-pill.m-cash{--m-fg: var(--success);--m-bg: var(--success-bg);--m-line: var(--success-line)}.fin-method-pill.m-card{--m-fg: var(--info);--m-bg: var(--info-bg);--m-line: var(--info-line)}.fin-method-pill.m-insurance{--m-fg: var(--accent-hover);--m-bg: var(--accent-subtle);--m-line: var(--accent-line)}.fin-method-pill.m-bank{--m-fg: var(--navy-700);--m-bg: var(--navy-100);--m-line: var(--navy-100)}.fin-method-pill.m-cheque{--m-fg: var(--warning);--m-bg: var(--warning-bg);--m-line: var(--warning-line)}.fin-method-total{gap:var(--sp-2);min-block-size:34px;padding:0 var(--sp-3);font-size:var(--fs-13)}.fin-method-total .fin-method-pill-label{font-weight:var(--fw-medium)}.fin-method-amount{color:var(--ink-1);font-weight:var(--fw-semibold);font-variant-numeric:tabular-nums}.fin-method-amount.is-negative{color:var(--danger)}.fin-method-count{color:var(--ink-3);font-size:var(--fs-12);font-weight:var(--fw-medium)}.fin-table thead th{border-block-start:1px solid var(--line)}.fin-who{display:flex;align-items:center;gap:var(--sp-3);min-inline-size:0}.fin-person{display:grid;gap:2px;min-inline-size:0}.fin-name-line{display:flex;align-items:center;gap:var(--sp-2);min-inline-size:0}.fin-name-line>strong{overflow:hidden;color:var(--ink-1);font-weight:var(--fw-semibold);text-overflow:ellipsis;white-space:nowrap}.fin-meta{overflow:hidden;color:var(--ink-3);font-size:var(--fs-12);line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.fin-meta-date{display:none}.fin-date,.fin-invoice{color:var(--ink-2);white-space:nowrap}.fin-date{font-weight:var(--fw-medium)}.fin-invoice{font-size:var(--fs-13);font-variant-numeric:tabular-nums}.fin-dentist{display:block;max-inline-size:180px;overflow:hidden;color:var(--ink-2);text-overflow:ellipsis;white-space:nowrap}.fin-muted{color:var(--ink-3)}.fin-amount{color:var(--ink-1);font-size:var(--fs-14);font-weight:var(--fw-semibold);font-variant-numeric:tabular-nums;white-space:nowrap}.fin-amount.is-refund{color:var(--danger)}.ui-table.fin-table tbody tr.fin-row-refund{background:color-mix(in srgb,var(--danger-bg) 55%,var(--surface))}.ui-table.fin-table tbody tr.fin-row-refund:hover{background:var(--danger-bg)}.fin-list .ui-empty-icon{display:grid;place-items:center;inline-size:48px;block-size:48px;margin-block-end:var(--sp-2);border-radius:var(--r-md);background:var(--accent-subtle);color:var(--accent)}.fin-wait{display:block;min-block-size:120px}@media(max-width:760px){.fin-head-actions{inline-size:100%}.ui-seg.fin-pills{flex:1 1 100%}.fin-list .ui-filterbar{padding-inline:var(--sp-4)}.fin-list .ui-filterbar>.ui-search{max-inline-size:none}.fin-methods{padding-inline:var(--sp-4)}.fin-meta-date{display:inline}.fin-dentist{max-inline-size:none}.fin-range-field .date-control{inline-size:170px}.fin-kpi{padding:var(--sp-3) var(--sp-4)}}}@layer features{.cl-page{display:grid;gap:var(--sp-5);min-inline-size:0}.cl-page>.page-head{margin-block-end:0}:where(.cl-page,.cl-form) [dir=auto]:not(input,textarea,p){text-align:match-parent}.ck-chip{--chip-fg: var(--accent);--chip-bg: var(--accent-subtle);display:grid;flex:0 0 auto;place-items:center;inline-size:36px;block-size:36px;border-radius:var(--r-sm);background:var(--chip-bg);color:var(--chip-fg)}.ck-chip.size-sm{inline-size:28px;block-size:28px;border-radius:calc(var(--r-sm) - 2px)}.ck-chip.size-lg{inline-size:44px;block-size:44px}.ck-chip.tone-info{--chip-fg: var(--info);--chip-bg: var(--info-bg)}.ck-chip.tone-success{--chip-fg: var(--success);--chip-bg: var(--success-bg)}.ck-chip.tone-warning{--chip-fg: var(--warning);--chip-bg: var(--warning-bg)}.ck-chip.tone-danger{--chip-fg: var(--danger);--chip-bg: var(--danger-bg)}.ck-chip.tone-neutral{--chip-fg: var(--ink-2);--chip-bg: var(--surface-sunken)}.cl-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));gap:var(--sp-4);margin:0}.cl-stat{display:flex;align-items:center;gap:var(--sp-3);min-inline-size:0;padding:var(--sp-4) var(--sp-5);border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);box-shadow:var(--shadow-sm)}.cl-stat-text{display:grid;gap:2px;min-inline-size:0}.cl-stat dt{color:var(--ink-3);font-size:var(--fs-13);font-weight:var(--fw-medium);line-height:var(--lh-tight)}.cl-stat dd{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px var(--sp-2);margin:0;min-inline-size:0}.cl-stat dd>bdi{color:var(--ink-1);font-size:var(--fs-24);font-weight:var(--fw-semibold);font-variant-numeric:tabular-nums;letter-spacing:-.01em;line-height:1.2}.cl-stat dd>small{color:var(--ink-3);font-size:var(--fs-12)}.cl-stat-wait{display:block;inline-size:64px;block-size:24px;margin-block:2px;border-radius:var(--r-xs);background:var(--surface-sunken)}.cl-list{min-inline-size:0}.cl-list .ui-filterbar{gap:var(--sp-3);padding:var(--sp-4) var(--card-pad);border-start-start-radius:var(--r-md);border-start-end-radius:var(--r-md)}.cl-list .ui-filterbar>.ui-search{flex:1 1 240px;max-inline-size:380px}.cl-notice{margin:var(--sp-3) var(--sp-4) 0}.cl-wait{display:block;min-block-size:120px}@media(min-width:761px){.cl-list .ui-table td{block-size:64px;padding-block:var(--sp-2)}.cl-list .ui-table :is(th,td):first-child{padding-inline-start:var(--card-pad)}.cl-list .ui-table :is(th,td):last-child{padding-inline-end:var(--card-pad)}}.cl-list .ui-table tbody tr:last-child td:first-child{border-end-start-radius:var(--r-md)}.cl-list .ui-table tbody tr:last-child td:last-child{border-end-end-radius:var(--r-md)}.cl-item{display:flex;align-items:center;gap:var(--sp-3);min-inline-size:0}.cl-cell{display:grid;gap:2px;min-inline-size:0}.cl-cell>strong{overflow:hidden;color:var(--ink-1);font-weight:var(--fw-semibold);text-overflow:ellipsis;white-space:nowrap}.cl-meta{overflow:hidden;color:var(--ink-3);font-size:var(--fs-12);line-height:1.3;text-overflow:ellipsis;white-space:nowrap}.cl-person{display:flex;align-items:center;gap:10px;min-inline-size:0}.cl-muted,.cl-list .ui-table tr.is-muted td{color:var(--ink-3)}.cl-list .ui-table tr.is-muted .cl-cell>strong{color:var(--ink-2)}.cl-list .ui-table tr.is-muted .ck-chip{--chip-fg: var(--ink-3);--chip-bg: var(--surface-sunken)}.cl-actions{display:inline-flex;align-items:center;gap:var(--sp-1)}.cl-pill{display:inline-flex;align-items:center;gap:6px;max-inline-size:100%;min-block-size:26px;padding:0 10px;border-radius:var(--r-full);background:var(--surface-sunken);color:var(--ink-2);font-size:var(--fs-13);font-weight:var(--fw-medium);line-height:1.2;white-space:nowrap}.cl-pill>svg{flex:0 0 auto;color:var(--ink-3)}.cl-pill>span{overflow:hidden;text-overflow:ellipsis}.cl-page .ui-empty-icon{display:grid;place-items:center;inline-size:52px;block-size:52px;border-radius:var(--r-md);background:var(--accent-subtle);color:var(--accent)}.cl-page .ui-empty.compact .ui-empty-icon{inline-size:44px;block-size:44px;border-radius:var(--r-sm)}.cl-page .ui-empty.danger .ui-empty-icon{background:var(--danger-bg);color:var(--danger)}.ui-drawer-body:has(>.cl-form){background:var(--bg)}.cl-form{display:grid;gap:var(--sp-4);min-inline-size:0}.cl-form-section{display:grid;gap:var(--sp-4);min-inline-size:0;margin:0;padding:var(--sp-5);border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);box-shadow:var(--shadow-xs)}.cl-fieldset{display:grid;gap:var(--sp-4);min-inline-size:0;margin:0;padding:0;border:0}.cl-section-head{display:flex;align-items:flex-start;gap:var(--sp-3);min-inline-size:0}.cl-section-head>div{display:grid;gap:2px;min-inline-size:0;padding-block-start:3px}.cl-section-head h3,.cl-form-section>h3{margin:0;color:var(--ink-1);font-size:15px;font-weight:var(--fw-semibold);line-height:var(--lh-tight)}.cl-section-head h3:focus{outline:none}.cl-section-head p,.cl-section-hint{margin:0;color:var(--ink-3);font-size:var(--fs-13);line-height:var(--lh-body)}.cl-form-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sp-4);align-items:start}.cl-form-section .ui-choice-group:not(.inline){gap:var(--sp-2)}.cl-disclosure{justify-self:start}.cl-disclosure svg{transition:transform var(--dur-1) var(--ease-out)}.cl-disclosure[aria-expanded=true] svg{transform:rotate(180deg)}@media(max-width:560px){.cl-form-row{grid-template-columns:minmax(0,1fr)}.cl-form-section{padding:var(--sp-4)}}@media(max-width:760px){.cl-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sp-3)}.cl-stat{flex-direction:column;align-items:flex-start;gap:var(--sp-2);padding:var(--sp-3) var(--sp-4)}.cl-stat .ck-chip.size-lg{inline-size:36px;block-size:36px}.cl-stat dd>bdi{font-size:var(--fs-20)}}}@layer features{.ag-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,380px),1fr));gap:var(--sp-4);margin:0;padding:0;list-style:none}.ag-card{display:grid;grid-template-rows:auto auto 1fr auto;gap:var(--sp-4);min-inline-size:0;padding:var(--sp-5) var(--sp-5) 0;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);box-shadow:var(--shadow-sm);cursor:pointer;transition:box-shadow var(--dur-2) var(--ease-out),border-color var(--dur-2) var(--ease-out)}.ag-card:hover{border-color:var(--line-strong);box-shadow:var(--shadow-md)}.ag-card:focus-within{border-color:var(--line-strong)}.ag-card.is-skeleton{grid-template-rows:none;gap:var(--sp-3);padding-block-end:var(--sp-5);cursor:default}.ag-card-head{display:flex;align-items:flex-start;gap:var(--sp-3);min-inline-size:0}.ag-card-id{display:grid;flex:1 1 auto;align-content:start;gap:2px;min-inline-size:0;padding-block-start:2px}.ag-card-name{justify-self:start;max-inline-size:100%;padding:0;overflow:hidden;border:0;background:none;color:var(--ink-1);font:inherit;font-size:var(--fs-16);font-weight:var(--fw-semibold);line-height:var(--lh-tight);text-align:start;text-overflow:ellipsis;white-space:nowrap;cursor:pointer}.ag-card-name:hover{color:var(--accent)}.ag-card-name:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px;border-radius:var(--r-xs)}.ag-card-ident{justify-self:start;overflow:hidden;color:var(--ink-3);font-size:var(--fs-12);text-overflow:ellipsis;white-space:nowrap}.ag-card-status{flex:0 0 auto}.ag-card-desc{display:-webkit-box;margin:0;overflow:hidden;color:var(--ink-2);font-size:var(--fs-14);line-height:var(--lh-body);-webkit-box-orient:vertical;-webkit-line-clamp:2}.ag-chips{display:flex;flex-wrap:wrap;align-content:start;gap:6px;margin:0;padding:0;list-style:none}.ag-chips>.cl-pill.is-owner{background:var(--info-bg);color:var(--info)}.ag-chips>.cl-pill.is-owner>svg{color:var(--info)}.ag-card-foot{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-2) var(--sp-3);min-inline-size:0;margin-inline:calc(-1 * var(--sp-5));padding:var(--sp-3) var(--sp-5);border-block-start:1px solid var(--line);border-end-start-radius:var(--r-md);border-end-end-radius:var(--r-md);background:var(--surface-hover)}.ag-card-note{min-inline-size:0;color:var(--ink-3);font-size:var(--fs-12)}.ag-card-actions{display:inline-flex;align-items:center;gap:var(--sp-1);margin-inline-start:auto}.ag-card.is-paused .ag-card-name{color:var(--ink-2)}.ag-tools{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sp-2)}:is(.ag-tools,.ag-options)>.ui-choice,.ag-options .ui-choice{padding:var(--sp-3);border:1px solid var(--line);border-radius:var(--r-sm);transition:border-color var(--dur-1) var(--ease-out),background-color var(--dur-1) var(--ease-out)}:is(.ag-tools,.ag-options) .ui-choice:hover{border-color:var(--line-strong)}:is(.ag-tools,.ag-options) .ui-choice:has(:checked){border-color:var(--accent-line);background:var(--accent-subtle)}.ag-services{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--sp-2);padding:var(--sp-3) var(--sp-4);border-radius:var(--r-sm);background:var(--surface-hover)}.ag-advanced{padding-block:var(--sp-3)}@media(max-width:560px){.ag-tools{grid-template-columns:minmax(0,1fr)}.ag-card{padding:var(--sp-4) var(--sp-4) 0}.ag-card-foot{margin-inline:calc(-1 * var(--sp-4));padding-inline:var(--sp-4)}}.ag-test{display:contents}.app-shell:has(.ag-test) .as-launcher{display:none}.app-shell:has(.ag-test>.as-dock .as-dock-actions){--toast-offset: 84px}}@layer features{.svc-price{display:inline-flex;align-items:center;gap:var(--sp-2);color:var(--ink-1);white-space:nowrap}.svc-price>strong{font-size:15px;font-weight:var(--fw-semibold);font-variant-numeric:tabular-nums}.cl-list .ui-table tr.is-muted .svc-price>strong{color:var(--ink-3)}.svc-switch{white-space:nowrap}.svc-switch .ui-choice-text{color:var(--ink-2);font-size:var(--fs-13)}.svc-presets{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-2)}.svc-presets-label{margin-inline-end:var(--sp-1);color:var(--ink-3);font-size:var(--fs-13)}.svc-preset{min-block-size:30px;padding:0 12px;border:1px solid var(--line-strong);border-radius:var(--r-full);background:var(--surface);color:var(--ink-2);font:inherit;font-size:var(--fs-13);font-weight:var(--fw-medium);cursor:pointer;transition:background-color var(--dur-1) var(--ease-out),border-color var(--dur-1) var(--ease-out),color var(--dur-1) var(--ease-out)}.svc-preset:hover{border-color:var(--control-line);background:var(--surface-hover);color:var(--ink-1)}.svc-preset:focus-visible{outline:none;box-shadow:var(--ring);border-color:var(--teal-500)}.svc-preset[aria-pressed=true]{border-color:var(--accent-line);background:var(--accent-subtle);color:var(--accent)}}@layer features{.inv-supplier{display:block;max-inline-size:200px;overflow:hidden;color:var(--ink-2);text-overflow:ellipsis;white-space:nowrap}.inv-value{color:var(--ink-1);font-weight:var(--fw-semibold)}.ui-table .inv-level-col{inline-size:220px}.inv-level{display:grid;gap:6px;inline-size:min(200px,100%);min-inline-size:140px}.inv-level-top{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--sp-1) var(--sp-2)}.inv-qty{color:var(--ink-1);font-variant-numeric:tabular-nums;white-space:nowrap}.inv-qty>bdi{font-weight:var(--fw-semibold)}.inv-unit{color:var(--ink-3);font-size:var(--fs-13);font-weight:var(--fw-regular)}.inv-level.is-low .inv-qty>bdi{color:var(--warning)}.inv-level.is-out .inv-qty>bdi{color:var(--danger)}.inv-bar{--bar-fg: var(--success);display:block;block-size:6px;overflow:hidden;border-radius:var(--r-full);background:var(--surface-sunken)}.inv-bar>span{display:block;inline-size:calc(var(--level, 0) * 100%);min-inline-size:0;block-size:100%;border-radius:inherit;background:var(--bar-fg);transition:inline-size var(--dur-3) var(--ease-out)}.inv-bar.is-low{--bar-fg: var(--warning)}.inv-bar.is-out{--bar-fg: var(--danger)}.inv-bar.is-inactive{--bar-fg: var(--ink-disabled)}.inv-table tr:is(.is-stock-low,.is-stock-out)>td:first-child{position:relative}.inv-table tr:is(.is-stock-low,.is-stock-out)>td:first-child:before{content:"";position:absolute;inset-block:10px;inset-inline-start:0;inline-size:3px;border-start-end-radius:3px;border-end-end-radius:3px;background:var(--warning)}.inv-table tr.is-stock-out>td:first-child:before{background:var(--danger)}.inv-summary{display:grid;grid-template-columns:minmax(0,1.5fr) repeat(2,minmax(0,1fr));gap:var(--sp-3);margin:0}.inv-tile{--tile-bg: var(--success-bg);--tile-line: var(--success-line);display:grid;align-content:start;gap:6px;min-inline-size:0;padding:var(--sp-4);border:1px solid var(--tile-line);border-radius:var(--r-md);background:var(--tile-bg)}.inv-tile.is-low{--tile-bg: var(--warning-bg);--tile-line: var(--warning-line)}.inv-tile.is-out{--tile-bg: var(--danger-bg);--tile-line: var(--danger-line)}.inv-tile:is(.is-inactive,.is-neutral){--tile-bg: var(--surface);--tile-line: var(--line)}.inv-tile.is-info{--tile-bg: var(--info-bg);--tile-line: var(--info-line)}.inv-tile dt{color:var(--ink-2);font-size:var(--fs-12);font-weight:var(--fw-medium)}.inv-tile dd{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--sp-1) var(--sp-2);margin:0;color:var(--ink-1);font-size:var(--fs-14)}.inv-tile dd strong{font-size:var(--fs-16);font-weight:var(--fw-semibold);font-variant-numeric:tabular-nums}.inv-summary-count{color:var(--ink-1);font-size:var(--fs-28);font-weight:var(--fw-semibold);letter-spacing:-.01em;line-height:1.1;font-variant-numeric:tabular-nums}.inv-summary-main.is-low .inv-summary-count{color:var(--warning)}.inv-summary-main.is-out .inv-summary-count{color:var(--danger)}.inv-summary-main .badge{align-self:center}.inv-summary-main .inv-bar{margin-block-start:var(--sp-1);background:var(--surface)}.inv-history{display:grid;margin:0;padding:0;list-style:none}.inv-move{--move-fg: var(--success);--move-bg: var(--success-bg);position:relative;display:grid;grid-template-columns:28px minmax(0,1fr) auto;align-items:start;gap:var(--sp-3);padding-block-end:var(--sp-4)}.inv-move:last-child{padding-block-end:0}.inv-move:not(:last-child):before{content:"";position:absolute;inset-block:32px 4px;inset-inline-start:13px;inline-size:2px;border-radius:var(--r-full);background:var(--line)}.inv-move.is-out{--move-fg: var(--ink-2);--move-bg: var(--surface-sunken)}.inv-move.is-adjust{--move-fg: var(--info);--move-bg: var(--info-bg)}.inv-move-mark{display:grid;place-items:center;inline-size:28px;block-size:28px;border-radius:var(--r-full);background:var(--move-bg);color:var(--move-fg);box-shadow:0 0 0 3px var(--surface)}.inv-move-body{display:grid;gap:2px;min-inline-size:0;padding-block-start:3px}.inv-move-top{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-2)}.inv-move-top>strong{color:var(--ink-1);font-weight:var(--fw-semibold)}.inv-move-delta{display:inline-flex;align-items:center;min-block-size:20px;padding:0 8px;border-radius:var(--r-full);background:var(--move-bg);color:var(--move-fg);font-size:var(--fs-12);font-weight:var(--fw-semibold);font-variant-numeric:tabular-nums}.inv-move-note{justify-self:start;margin-block-start:var(--sp-1);padding:6px 10px;border-radius:var(--r-sm);background:var(--surface-hover);color:var(--ink-2);font-size:var(--fs-13);overflow-wrap:anywhere}.inv-move-after{padding-block-start:5px;color:var(--ink-3);font-size:var(--fs-13);font-variant-numeric:tabular-nums;white-space:nowrap}.inv-history-skeleton{display:grid;gap:var(--sp-2)}@media(max-width:760px){.ui-table .inv-level-col{inline-size:auto}.inv-level{min-inline-size:120px;inline-size:140px}}@media(max-width:560px){.inv-summary{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.inv-summary-main{grid-column:1 / -1}.inv-move{grid-template-columns:28px minmax(0,1fr)}.inv-move-after{grid-column:2;padding-block-start:0}}}@layer features{.pay-month{display:flex;align-items:center;gap:var(--sp-2);margin-block-end:var(--sp-3)}.pay-month-label{min-inline-size:11ch;text-align:center;font-size:var(--fs-16, 1rem);font-weight:var(--fw-semibold);color:var(--ink-1)}.pay-adjust bdi{display:inline-flex;gap:var(--sp-2)}.pay-plus{color:var(--success)}.pay-minus{color:var(--danger)}.pay-due{color:var(--warning)}.pay-clear{color:var(--ink-2)}.pay-sum{display:grid;gap:var(--sp-1);margin:0 0 var(--sp-4);padding:var(--sp-3);border-radius:var(--r-md, 10px);background:var(--surface-sunken)}.pay-sum>div{display:flex;justify-content:space-between;gap:var(--sp-3);font-size:var(--fs-13);color:var(--ink-2)}.pay-sum dt,.pay-sum dd{margin:0}.pay-sum .is-total{padding-block-start:var(--sp-2);border-block-start:1px solid var(--line);font-weight:var(--fw-semibold);color:var(--ink-1)}.pay-entries{display:grid;gap:var(--sp-2);margin:0;padding:0;list-style:none}.pay-entry{display:grid;grid-template-columns:auto 1fr auto auto;align-items:center;gap:var(--sp-3);padding:var(--sp-2) var(--sp-3);border:1px solid var(--line);border-radius:var(--r-md, 10px);background:var(--surface);color:var(--ink-2)}.pay-entry.is-bonus>svg{color:var(--success)}.pay-entry.is-deduction>svg{color:var(--danger)}.pay-entry.is-advance>svg{color:var(--warning)}.pay-entry-amount{color:var(--ink-1)}.pay-entries-empty{margin:0}}@layer features{.tutorials-list{display:grid;gap:20px;max-inline-size:900px;margin-inline:auto;padding:20px 16px 48px}.tutorials-card{padding:16px}.tutorials-card h2{font-size:18px;margin:0 0 4px}.tutorials-card p{margin:0 0 12px;color:var(--text-muted, inherit);opacity:.8}.tutorials-card video{inline-size:100%;border-radius:12px;background:#000}.tutorials-link{display:inline-block;margin-block-start:10px;font-weight:600}}@layer features{.notes-page{--note-ink: #2f2a1c;--note-ink-dim: rgba(47, 42, 28, .68);--note-line: rgba(47, 42, 28, .22);--note-yellow: #fff1a6;--note-pink: #ffd5df;--note-blue: #cfe7ff;--note-green: #d3f0d0;--note-orange: #ffdfb5;--note-purple: #e3d7ff;display:grid;gap:var(--sp-5);align-content:start}.note-composer,.note{--note-bg: var(--note-yellow)}.note-composer.is-pink,.note.is-pink{--note-bg: var(--note-pink)}.note-composer.is-blue,.note.is-blue{--note-bg: var(--note-blue)}.note-composer.is-green,.note.is-green{--note-bg: var(--note-green)}.note-composer.is-orange,.note.is-orange{--note-bg: var(--note-orange)}.note-composer.is-purple,.note.is-purple{--note-bg: var(--note-purple)}.note-composer{display:grid;gap:var(--sp-2);max-inline-size:760px;padding:var(--sp-3) var(--sp-4);border-radius:var(--r-md);background:var(--note-bg);box-shadow:var(--shadow-sm);color:var(--note-ink);transition:background var(--dur-2) var(--ease-out)}.note-composer textarea,.note-edit{inline-size:100%;padding:0;border:0;outline:0;background:transparent;color:inherit;font:inherit;font-size:var(--fs-14);line-height:1.6;resize:vertical}.note-composer textarea{min-block-size:72px}.note-composer textarea::placeholder{color:var(--note-ink-dim)}.note-composer:has(textarea:focus-visible){outline:2px solid var(--focus-ring);outline-offset:2px}.note-composer-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--sp-3)}.notes-board{display:grid;grid-template-columns:repeat(auto-fill,minmax(232px,1fr));gap:var(--sp-5);align-items:start}.note{position:relative;display:flex;flex-direction:column;gap:var(--sp-3);min-block-size:150px;padding:var(--sp-4) var(--sp-4) var(--sp-2);border-radius:var(--r-xs) var(--r-xs) var(--r-lg) var(--r-xs);background:var(--note-bg);box-shadow:var(--shadow-md);color:var(--note-ink);transition:transform var(--dur-2) var(--ease-out),box-shadow var(--dur-2) var(--ease-out)}@media(prefers-reduced-motion:no-preference){.note:nth-child(3n+1){transform:rotate(-.6deg)}.note:nth-child(3n+2){transform:rotate(.45deg)}}.note:hover,.note:focus-within{z-index:1;transform:none;box-shadow:var(--shadow-pop)}.note.is-pinned{padding-block-start:var(--sp-6)}.note-pin{position:absolute;inset-block-start:var(--sp-2);inset-inline-end:var(--sp-3);color:var(--note-ink-dim);transform:rotate(35deg)}.note-text{flex:1 1 auto;margin:0;padding:0;border:0;background:none;color:inherit;font:inherit;font-size:var(--fs-14);line-height:1.6;text-align:start;white-space:pre-wrap;overflow-wrap:anywhere}.note-text.is-editable{cursor:text}.note-text.is-editable:focus-visible{outline:2px solid var(--focus-ring);outline-offset:3px;border-radius:var(--r-xs)}.note-edit{flex:1 1 auto;min-block-size:110px}.note-foot{display:grid;gap:var(--sp-1);padding-block-start:var(--sp-2);border-block-start:1px dashed var(--note-line)}.note-meta{color:var(--note-ink-dim);font-size:var(--fs-12);font-weight:var(--fw-medium)}.note-actions{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-1);opacity:0;transition:opacity var(--dur-1) var(--ease-out)}.note:hover .note-actions,.note:focus-within .note-actions{opacity:1}@media(hover:none){.note-actions{opacity:1}}.note-actions .btn{color:var(--note-ink-dim)}.note-actions .btn:hover{background:#ffffff8c;color:var(--note-ink)}.note-swatches{display:inline-flex;align-items:center;gap:6px}.note-swatch{inline-size:18px;block-size:18px;padding:0;border:1.5px solid var(--note-line);border-radius:var(--r-full);background:var(--note-yellow);cursor:pointer}.note-swatch.is-pink{background:var(--note-pink)}.note-swatch.is-blue{background:var(--note-blue)}.note-swatch.is-green{background:var(--note-green)}.note-swatch.is-orange{background:var(--note-orange)}.note-swatch.is-purple{background:var(--note-purple)}.note-swatch[aria-pressed=true]{border-color:var(--note-ink);box-shadow:0 0 0 2px #ffffffd9}.note-swatch:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}@media(max-width:767px){.notes-board{grid-template-columns:minmax(0,1fr);gap:var(--sp-4)}.note-swatch{inline-size:22px;block-size:22px}}}@layer features{.tm-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-3)}.tm-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:var(--sp-4);margin:0;padding:0;list-style:none}.tm-card{display:grid;grid-template-rows:auto 1fr auto;gap:var(--sp-4);min-inline-size:0;padding:var(--sp-5) var(--sp-5) 0;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);box-shadow:var(--shadow-sm);transition:box-shadow var(--dur-2) var(--ease-out),border-color var(--dur-2) var(--ease-out),transform var(--dur-2) var(--ease-out)}.tm-card.is-clickable{cursor:pointer}.tm-card.is-clickable:hover{border-color:var(--line-strong);box-shadow:var(--shadow-md)}.tm-card:focus-within{border-color:var(--line-strong)}.tm-card.is-skeleton{gap:var(--sp-3);padding-block-end:var(--sp-5)}.tm-card-head{display:flex;align-items:flex-start;gap:var(--sp-3);min-inline-size:0}.tm-card-head>.avatar{font-size:19px}.tm-card-id{display:grid;flex:1 1 auto;align-content:start;gap:4px;min-inline-size:0;padding-block-start:2px}.tm-card-name-row{display:flex;align-items:center;gap:var(--sp-2);min-inline-size:0}.tm-card-name{max-inline-size:100%;padding:0;overflow:hidden;border:0;background:none;color:var(--ink-1);font:inherit;font-size:var(--fs-16);font-weight:var(--fw-semibold);line-height:var(--lh-tight);text-align:start;text-overflow:ellipsis;white-space:nowrap}button.tm-card-name{cursor:pointer}button.tm-card-name:hover{color:var(--accent)}button.tm-card-name:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px;border-radius:var(--r-xs)}.tm-you{flex:0 0 auto}.tm-card-title{overflow:hidden;color:var(--ink-3);font-size:var(--fs-13);text-overflow:ellipsis;white-space:nowrap}.tm-card-menu{flex:0 0 auto;margin-block-start:-6px;margin-inline-end:-8px}.tm-status{--dot: var(--success);display:inline-flex;align-items:center;gap:6px;color:var(--ink-2);font-size:var(--fs-13);font-weight:var(--fw-medium)}.tm-status.is-invited{--dot: var(--info)}.tm-status.is-disabled{--dot: var(--ink-disabled);color:var(--ink-3)}.tm-status-dot{inline-size:8px;block-size:8px;border-radius:var(--r-full);background:var(--dot);box-shadow:0 0 0 3px var(--surface-sunken)}.tm-status.is-active .tm-status-dot{box-shadow:0 0 0 3px var(--success-bg)}.tm-status.is-invited .tm-status-dot{box-shadow:0 0 0 3px var(--info-bg)}.tm-roles{display:flex;flex-wrap:wrap;align-content:start;gap:6px}.tm-card-foot{display:flex;align-items:center;gap:var(--sp-2);min-inline-size:0;margin-inline:calc(-1 * var(--sp-5));padding:var(--sp-3) var(--sp-5);border-block-start:1px solid var(--line);border-end-start-radius:var(--r-md);border-end-end-radius:var(--r-md);background:var(--surface-hover);color:var(--ink-3)}.tm-card-foot>svg{flex:0 0 auto}.tm-email{min-inline-size:0;overflow:hidden;color:var(--ink-2);font-size:var(--fs-13);text-overflow:ellipsis;white-space:nowrap}.tm-card.is-disabled{background:var(--surface-hover);box-shadow:var(--shadow-xs)}.tm-card.is-disabled .avatar{opacity:.6}.tm-card.is-disabled .tm-card-name{color:var(--ink-2)}.tm-card.is-disabled .tm-card-foot{background:var(--surface-sunken)}.tm-empty{min-inline-size:0}.tm-role-list{display:grid;gap:var(--sp-2)}.tm-role-list>.ui-choice{padding:var(--sp-3);border:1px solid var(--line);border-radius:var(--r-sm);transition:border-color var(--dur-1) var(--ease-out),background-color var(--dur-1) var(--ease-out)}.tm-role-list>.ui-choice:hover{border-color:var(--line-strong)}.tm-role-list>.ui-choice:has(:checked){border-color:var(--accent-line);background:var(--accent-subtle)}.tm-color{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:var(--sp-4)}.tm-swatches.ui-choice-group{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sp-2) var(--sp-4)}.tm-swatch-label{display:inline-flex;align-items:center;gap:var(--sp-2)}.tm-swatch{flex:0 0 auto;inline-size:16px;block-size:16px;border-radius:var(--r-full);background:var(--swatch)}.tm-swatch.who-1{--swatch: var(--who-1)}.tm-swatch.who-2{--swatch: var(--who-2)}.tm-swatch.who-3{--swatch: var(--who-3)}.tm-swatch.who-4{--swatch: var(--who-4)}.tm-swatch.who-5{--swatch: var(--who-5)}.tm-swatch.who-6{--swatch: var(--who-6)}.tm-swatch.who-7{--swatch: var(--who-7)}.tm-swatch.who-8{--swatch: var(--who-8)}.tm-preview{display:grid;place-items:center;padding:var(--sp-4);border-radius:var(--r-md);background:var(--surface-sunken)}.tm-access-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--sp-3)}.tm-access-row>p{flex:1 1 220px}.tm-link-row{display:flex;align-items:center;gap:var(--sp-2)}.tm-link-row>.input{flex:1 1 auto;min-inline-size:0}.tm-link-row>.btn{flex:0 0 auto}@media(max-width:560px){.tm-color{grid-template-columns:minmax(0,1fr)}.tm-preview{display:none}.tm-swatches.ui-choice-group{grid-template-columns:minmax(0,1fr)}.tm-link-row{flex-direction:column;align-items:stretch}.tm-card{padding:var(--sp-4) var(--sp-4) 0}.tm-card-foot{margin-inline:calc(-1 * var(--sp-4));padding-inline:var(--sp-4)}}}@layer features{.set-page,.inv-design-page{display:grid;gap:var(--sp-5);min-inline-size:0}.set-page>.page-head,.inv-design-page>.page-head{margin-block-end:0}.set-layout{display:grid;grid-template-columns:240px minmax(0,1fr);gap:var(--sp-6);align-items:start;min-inline-size:0}.set-nav{position:sticky;inset-block-start:calc(var(--page-head-h) + var(--sp-4));display:grid;gap:2px;min-inline-size:0;padding:var(--sp-2);border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);box-shadow:var(--shadow-sm)}.set-nav-item{display:flex;align-items:center;gap:10px;min-block-size:42px;padding-inline:6px var(--sp-3);border:0;border-radius:var(--r-sm);background:transparent;color:var(--ink-2);font:inherit;font-size:var(--fs-14);font-weight:var(--fw-medium);text-align:start;cursor:pointer;transition:background-color var(--dur-1) var(--ease-out),color var(--dur-1) var(--ease-out)}.set-nav-icon{display:grid;flex:0 0 auto;place-items:center;inline-size:30px;block-size:30px;border-radius:calc(var(--r-sm) - 2px);background:var(--surface-sunken);color:var(--ink-3);transition:background-color var(--dur-1) var(--ease-out),color var(--dur-1) var(--ease-out)}.set-nav-item:hover{background:var(--surface-hover);color:var(--ink-1)}.set-nav-item:hover .set-nav-icon{background:var(--accent-subtle);color:var(--accent)}.set-nav-item:focus-visible{outline:none;box-shadow:var(--ring)}.set-nav-item[aria-current=true]{background:var(--navy-800);color:var(--white);font-weight:var(--fw-semibold);box-shadow:var(--shadow-xs)}.set-nav-item[aria-current=true] .set-nav-icon{background:var(--on-dark-subtle);color:var(--teal-300)}.set-nav-label{flex:1 1 auto;min-inline-size:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.set-nav-dot{flex:0 0 auto;inline-size:8px;block-size:8px;border-radius:var(--r-full);background:var(--warning)}.set-nav-item[aria-current=true] .set-nav-dot{background:var(--stage-warn)}.set-nav-skeleton{padding:var(--sp-3)}.set-content{min-inline-size:0;max-inline-size:920px}.set-section,.set-card{min-inline-size:0}.set-head{flex-wrap:nowrap;justify-content:flex-start;gap:var(--sp-3);padding:var(--sp-5) var(--card-pad)}.set-head-icon{display:grid;flex:0 0 auto;place-items:center;inline-size:40px;block-size:40px;border-radius:var(--r-sm);background:var(--accent-subtle);color:var(--accent)}.set-head-text{flex:1 1 auto;min-inline-size:0}.set-head-text h2{font-size:17px;letter-spacing:-.005em}.set-head-text p{max-inline-size:70ch;margin-block-start:2px;line-height:var(--lh-body)}.set-head>.head-actions{flex:0 0 auto}.set-fieldset{min-inline-size:0;margin:0;padding:0;border:0}.set-body{display:grid;gap:var(--sp-6);padding:var(--sp-6) var(--card-pad)}.set-body .form-grid{gap:var(--sp-4) var(--sp-5)}.set-pad{padding:var(--sp-5) var(--card-pad)}.set-notice{margin:0 var(--card-pad) var(--sp-4)}.card-foot.set-foot{position:sticky;inset-block-end:var(--sp-4);z-index:1;margin:0 var(--sp-3) var(--sp-3);padding:var(--sp-3) var(--sp-3) var(--sp-3) var(--sp-4);border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);box-shadow:var(--shadow-md)}.card-foot.set-foot.is-dirty{border-color:var(--warning-line)}.set-unsaved,.set-saved-note{display:inline-flex;align-items:center;gap:var(--sp-2);margin-inline-end:auto;font-size:var(--fs-13);font-weight:var(--fw-semibold)}.set-unsaved{color:var(--warning)}.set-saved-note{color:var(--ink-3);font-weight:var(--fw-medium)}.set-unsaved:before,.set-saved-note:before{content:"";inline-size:8px;block-size:8px;border-radius:var(--r-full);background:currentColor}.set-saved-note:before{background:var(--success)}.set-group{display:grid;gap:var(--sp-4);padding-block-start:var(--sp-6);border-block-start:1px solid var(--line)}.set-group-head h3{margin:0;color:var(--ink-1);font-size:15px;font-weight:var(--fw-semibold);line-height:var(--lh-tight)}.set-group-head p{max-inline-size:65ch;margin:4px 0 0;color:var(--ink-3);font-size:var(--fs-13);line-height:var(--lh-body)}.set-after{margin-inline:var(--card-pad);padding-block-end:var(--sp-5)}.set-narrow{display:grid;gap:var(--sp-3);max-inline-size:440px}.set-narrow-grid{max-inline-size:440px}.set-phone-list{gap:var(--sp-2)}.set-phone-row{display:flex;align-items:center;gap:var(--sp-2)}.set-phone-row>:first-child{flex:1 1 auto;min-inline-size:0}.set-note{max-inline-size:65ch;margin:0;color:var(--ink-3);font-size:var(--fs-13);line-height:var(--lh-body)}.set-status-line{margin:0}.set-error-line{display:block;color:var(--danger)}.set-muted{color:var(--ink-3);font-size:var(--fs-13)}.set-checks{gap:var(--sp-3)}.set-card .ui-empty-icon{display:grid;place-items:center;inline-size:48px;block-size:48px;margin-block-end:var(--sp-2);border-radius:var(--r-md);background:var(--accent-subtle);color:var(--accent)}.set-logo{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-3) var(--sp-4);padding:var(--sp-4);border:1.5px dashed var(--line-strong);border-radius:var(--r-md);background:var(--surface-hover);transition:border-color var(--dur-1) var(--ease-out),background-color var(--dur-1) var(--ease-out)}.set-logo:not(.is-readonly):hover{border-color:var(--control-line)}.set-logo.is-dragging{border-color:var(--teal-500);background:var(--accent-subtle);box-shadow:var(--ring)}.set-logo-frame{display:grid;flex:0 0 auto;place-items:center;inline-size:72px;block-size:72px;padding:var(--sp-2);overflow:hidden;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);box-shadow:var(--shadow-xs)}.set-logo-frame img{max-inline-size:100%;max-block-size:100%;object-fit:contain}.set-logo-none{display:grid;place-items:center;inline-size:44px;block-size:44px;border-radius:var(--r-sm);background:var(--accent-subtle);color:var(--accent)}.set-logo-text{display:grid;flex:1 1 180px;gap:2px;min-inline-size:0}.set-logo-text>strong{color:var(--ink-1);font-size:var(--fs-14);font-weight:var(--fw-semibold)}.set-logo-text>small{color:var(--ink-3);font-size:var(--fs-13);line-height:var(--lh-body)}.set-logo-actions{display:flex;flex-wrap:wrap;gap:var(--sp-2)}.set-facts{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:var(--sp-3);margin:0}.set-facts>div{padding:var(--sp-3) var(--sp-4);border-radius:var(--r-sm);background:var(--surface-sunken)}.set-facts dt{color:var(--ink-3);font-size:var(--fs-12);font-weight:var(--fw-medium)}.set-facts dd{margin:4px 0 0;color:var(--ink-1);font-weight:var(--fw-semibold)}.set-days{display:flex;flex-wrap:wrap;gap:var(--sp-2)}.set-day{display:inline-flex;align-items:center;gap:6px;min-block-size:36px;padding-inline:14px;border:1px solid var(--line-strong);border-radius:var(--r-full);background:var(--surface);color:var(--ink-2);font:inherit;font-size:var(--fs-13);font-weight:var(--fw-medium);box-shadow:var(--shadow-xs);cursor:pointer;transition:background-color var(--dur-1) var(--ease-out),border-color var(--dur-1) var(--ease-out),color var(--dur-1) var(--ease-out)}.set-day:hover:not(:disabled){border-color:var(--control-line);background:var(--surface-hover);color:var(--ink-1)}.set-day:focus-visible{outline:none;box-shadow:var(--ring)}.set-day[aria-pressed=true]{border-color:var(--navy-800);background:var(--navy-800);color:var(--white);font-weight:var(--fw-semibold)}.set-day[aria-pressed=true]>svg{color:var(--teal-300)}.set-day[aria-pressed=true]:hover:not(:disabled){border-color:var(--navy-700);background:var(--navy-700);color:var(--white)}.set-day[aria-invalid=true]{border-color:var(--danger)}.set-day:disabled{box-shadow:none;cursor:not-allowed}.set-rooms td{block-size:60px}.set-room-name{display:inline-flex;align-items:center;gap:var(--sp-3);min-inline-size:0}.set-room-icon{display:grid;flex:0 0 auto;place-items:center;inline-size:36px;block-size:36px;border-radius:var(--r-sm);background:var(--surface-sunken);color:var(--ink-2)}.set-room-icon.is-busy{background:var(--accent-subtle);color:var(--accent)}.set-room-name>strong{overflow:hidden;color:var(--ink-1);font-weight:var(--fw-semibold);text-overflow:ellipsis;white-space:nowrap}.set-room-edit{display:grid;gap:var(--sp-1);max-inline-size:280px}.set-room-now{display:inline-flex;flex-wrap:wrap;align-items:center;gap:var(--sp-2)}.set-wait{display:block;min-block-size:88px}.set-room-add{display:flex;flex-wrap:wrap;align-items:flex-end;gap:var(--sp-3);padding:var(--sp-4) var(--card-pad) var(--sp-5);border-block-start:1px solid var(--line);border-end-start-radius:var(--r-md);border-end-end-radius:var(--r-md);background:var(--surface-hover)}.set-room-add>.field{flex:1 1 220px;max-inline-size:340px}.set-summary-actions{display:grid;gap:var(--sp-3);padding-block-start:var(--sp-5);border-block-start:1px solid var(--line)}.inv-design{display:grid;grid-template-columns:minmax(340px,420px) minmax(0,1fr);gap:var(--sp-6);align-items:start;min-inline-size:0}.inv-color{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-3)}.inv-color-input{inline-size:48px;block-size:var(--control-md);padding:3px;border:1px solid var(--line-strong);border-radius:var(--r-sm);background:var(--surface);box-shadow:var(--shadow-xs);cursor:pointer}.inv-color-input:focus-visible{outline:none;border-color:var(--teal-500);box-shadow:var(--ring)}.inv-color-input:disabled{cursor:not-allowed}.inv-color-value{padding:0 var(--sp-2);border-radius:var(--r-full);background:var(--surface-sunken);color:var(--ink-2);font-size:var(--fs-13);font-weight:var(--fw-semibold);font-variant-numeric:tabular-nums;line-height:26px}.card.inv-design-preview{position:sticky;inset-block-start:calc(var(--page-head-h) + var(--sp-4));display:flex;flex-direction:column;min-inline-size:0;max-block-size:calc(100dvh - var(--page-head-h) - var(--sp-8));overflow:hidden;box-shadow:var(--shadow-md)}.inv-design-preview>.set-head{flex:0 0 auto}.inv-design-sheet{flex:1 1 auto;min-inline-size:0;min-block-size:0;overflow:auto;padding:var(--sp-6);background:var(--surface-sunken)}.inv-design-sheet .invoice-document{border-color:transparent;box-shadow:var(--shadow-md)}@media(max-width:1100px){.inv-design{grid-template-columns:minmax(0,1fr)}.card.inv-design-preview{position:static;max-block-size:none}}@media(max-width:960px){.set-layout{grid-template-columns:minmax(0,1fr);gap:var(--sp-4)}.set-nav{position:static;display:flex;gap:var(--sp-1);padding:6px;overflow-x:auto;border-radius:var(--r-md);scrollbar-width:none}.set-nav::-webkit-scrollbar{display:none}.set-nav-item{flex:0 0 auto;min-block-size:38px;padding-inline:4px var(--sp-3)}.set-nav-icon{inline-size:28px;block-size:28px}.set-nav-label{overflow:visible}}@media(max-width:760px){.set-head{padding:var(--sp-4)}.set-head-icon{inline-size:36px;block-size:36px}.set-body{padding:var(--sp-5) var(--sp-4)}.set-pad{padding:var(--sp-4)}.set-after,.set-notice{margin-inline:var(--sp-4)}.set-room-add{padding-inline:var(--sp-4)}.set-room-add>.field{max-inline-size:none}.set-narrow,.set-narrow-grid{max-inline-size:none}.set-logo-actions{inline-size:100%}.card-foot.set-foot{inset-block-end:calc(var(--tabbar-h) + env(safe-area-inset-bottom,0px) + var(--sp-2));margin-inline:var(--sp-2)}.inv-design-sheet{padding:var(--sp-3)}.inv-design-sheet .invoice-document{min-inline-size:680px;padding:34px}}@media(pointer:coarse){.set-nav-item,.set-day{min-block-size:var(--control-lg)}}}@layer features{.sub-page{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sp-4);align-items:start}.sub-usage{grid-column:1 / -1}.sub-eyebrow{color:var(--ink-3);font-size:var(--fs-12)}.sub-muted{margin:0;color:var(--ink-3);font-size:var(--fs-13)}.sub-mono{font-variant-numeric:tabular-nums;letter-spacing:.02em;overflow-wrap:anywhere}.sub-plan{display:grid;gap:var(--sp-4)}.sub-plan-main{display:grid;gap:var(--sp-1);justify-items:start}.sub-plan-name{font-size:26px;line-height:1.2;color:var(--ink-1);font-weight:var(--fw-semibold)}.sub-plan-badges{display:flex;flex-wrap:wrap;gap:var(--sp-2);margin-block-start:var(--sp-1)}.sub-facts{display:grid;gap:var(--sp-2);margin:0}.sub-facts>div{display:flex;justify-content:space-between;gap:var(--sp-3);padding-block:6px;border-block-end:1px solid var(--line)}.sub-facts>div:last-child{border-block-end:0}.sub-facts dt{color:var(--ink-3);font-size:var(--fs-13)}.sub-facts dd{margin:0;color:var(--ink-1);font-weight:var(--fw-semibold);text-align:end}.sub-payment.is-due{border-color:var(--danger-line)}.sub-payment-body{display:grid;gap:var(--sp-2)}.sub-payment-body p{margin:0;color:var(--ink-2)}.sub-payment-body strong{color:var(--ink-1);font-size:18px}.sub-usage-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--sp-3);margin:0}.sub-usage-grid>div{display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-rows:auto auto;column-gap:var(--sp-3);padding:var(--sp-3);border:1px solid var(--line);border-radius:12px;background:var(--surface)}.sub-usage-icon{grid-row:1 / span 2;display:grid;place-items:center;inline-size:36px;block-size:36px;border-radius:10px;background:var(--bg);color:var(--accent)}.sub-usage-grid dt{color:var(--ink-3);font-size:var(--fs-12)}.sub-usage-grid dd{margin:0;font-size:22px;font-weight:var(--fw-semibold);color:var(--ink-1);font-variant-numeric:tabular-nums}@media(max-width:900px){.sub-page{grid-template-columns:minmax(0,1fr)}.sub-usage-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}}@layer features{.pay-banner{--pb-fg: var(--warning);--pb-bg: var(--warning-bg);--pb-line: var(--warning-line);display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:var(--sp-3);margin-block-end:var(--sp-4);padding:var(--sp-3) var(--sp-4);border:1px solid var(--pb-line);border-radius:var(--r-md);background:var(--pb-bg);color:var(--ink-1)}.pay-banner.is-danger{--pb-fg: var(--danger);--pb-bg: var(--danger-bg);--pb-line: var(--danger-line)}.pay-banner-icon{display:grid;place-items:center;inline-size:36px;block-size:36px;border-radius:10px;background:var(--surface);color:var(--pb-fg)}.pay-banner-text{display:grid;gap:2px;min-inline-size:0;font-size:var(--fs-13);color:var(--ink-2)}.pay-banner-text strong{color:var(--pb-fg);font-size:var(--fs-14);font-weight:var(--fw-semibold)}.pay-banner-text b{color:var(--ink-1);font-weight:var(--fw-semibold)}.pay-banner-note{color:var(--ink-1)}.pay-banner-account{display:grid;gap:var(--sp-1);margin:0;padding:var(--sp-2) var(--sp-3);border-radius:10px;background:var(--surface);border:1px solid var(--pb-line)}.pay-banner-field{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:var(--sp-3)}.pay-banner-field dt{color:var(--ink-3);font-size:var(--fs-12)}.pay-banner-field dd{display:flex;align-items:center;justify-content:flex-end;gap:var(--sp-1);margin:0;font-variant-numeric:tabular-nums;font-weight:var(--fw-semibold);font-size:var(--fs-13);-webkit-user-select:all;user-select:all}.pay-banner-field bdi{overflow-wrap:anywhere}.pay-banner-copy{display:inline-flex;align-items:center;gap:4px;padding:4px 6px;border:0;border-radius:6px;background:transparent;color:var(--ink-3);font:inherit;font-size:var(--fs-12);cursor:pointer;-webkit-user-select:none;user-select:none}.pay-banner-copy:hover{background:var(--pb-bg);color:var(--pb-fg)}.pay-banner-copy span:empty{display:none}.pay-banner-link{grid-column:2 / -1;justify-self:start;padding:0;border:0;background:none;cursor:pointer;color:var(--pb-fg);font:inherit;font-size:var(--fs-13);font-weight:var(--fw-semibold);text-decoration:underline;text-underline-offset:3px}@media(max-width:760px){.pay-banner{grid-template-columns:auto minmax(0,1fr)}.pay-banner-account,.pay-banner-link{grid-column:1 / -1}.pay-banner-field{grid-template-columns:minmax(0,1fr);gap:0}.pay-banner-field dd{justify-content:space-between}}}@layer features{.auth-page{display:grid;grid-template-rows:auto minmax(0,1fr);min-block-size:100vh;min-block-size:100dvh;background:var(--bg);color:var(--ink-1)}.auth-top{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3);padding:var(--sp-5) var(--page-gutter)}.auth-top .brand{font-size:18px}.btn.auth-lang{border:1px solid var(--line);border-radius:var(--r-full);background:var(--surface);color:var(--ink-2);box-shadow:var(--shadow-xs)}.btn.auth-lang:hover{border-color:var(--line-strong);color:var(--ink-1)}.auth-main{display:grid;align-content:center;justify-items:center;gap:var(--sp-5);padding:var(--sp-6) var(--page-gutter) var(--sp-9)}.auth-card{display:grid;gap:var(--sp-6);inline-size:min(440px,100%);padding:var(--sp-7);border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);box-shadow:var(--shadow-md)}.auth-card.wide{inline-size:min(480px,100%)}.auth-head{display:grid;gap:var(--sp-2)}.auth-head h1{margin:0;color:var(--ink-1);font-size:var(--fs-28);font-weight:var(--fw-semibold);letter-spacing:-.015em;line-height:1.2}.auth-head p{margin:0;color:var(--ink-3);font-size:var(--fs-14);line-height:var(--lh-body)}.auth-form{display:grid;gap:var(--sp-4)}.auth-form .input.lg{font-size:var(--fs-16)}.auth-form .field-hint .is-warning{color:var(--warning);font-weight:var(--fw-medium)}.auth-submit.btn{min-block-size:var(--control-lg);margin-block-start:var(--sp-2);font-size:var(--fs-16)}.auth-below{inline-size:min(440px,100%);color:var(--ink-3);font-size:var(--fs-14);line-height:var(--lh-body);text-align:center}.auth-below .btn.link{font-size:inherit;font-weight:var(--fw-semibold)}.auth-page.is-split{grid-template-rows:none;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);background:var(--surface)}.auth-side{display:grid;grid-template-rows:auto minmax(0,1fr);min-inline-size:0;min-block-size:100vh;min-block-size:100dvh}.is-split .auth-top{padding:var(--sp-6) var(--sp-8)}.is-split .auth-main{padding:var(--sp-6) var(--sp-8) var(--sp-10)}.is-split .auth-card{inline-size:min(400px,100%);padding:0;border:0;background:transparent;box-shadow:none}.is-split .auth-below{inline-size:min(400px,100%);text-align:start}.auth-brand{position:relative;display:grid;align-content:center;min-inline-size:0;margin:var(--sp-4);margin-inline-start:0;padding:var(--sp-9);overflow:hidden;border-radius:var(--r-lg);background:var(--navy-800);color:var(--stage-ink);box-shadow:var(--shadow-md)}.auth-brand-mark.brand-icon{position:absolute;inset-block-end:-72px;inset-inline-end:-72px;inline-size:360px;block-size:360px;color:var(--navy-700);pointer-events:none}.auth-brand-inner{position:relative;display:grid;gap:var(--sp-7);max-inline-size:460px}.auth-brand .brand{font-size:20px}.auth-brand-value{margin:0;color:var(--stage-ink);font-size:30px;font-weight:var(--fw-semibold);letter-spacing:-.015em;line-height:1.25}html[lang=ar] .auth-brand-value{letter-spacing:0;line-height:1.5}.auth-brand-points{display:grid;gap:var(--sp-5);margin:0;padding:0;list-style:none}.auth-brand-points>li{display:flex;align-items:flex-start;gap:var(--sp-3)}.auth-brand-points>li>span:last-child{display:grid;gap:2px;min-inline-size:0}.auth-brand-points strong{color:var(--stage-ink);font-size:15px;font-weight:var(--fw-semibold);line-height:var(--lh-tight)}.auth-brand-points small{color:var(--stage-ink-dim);font-size:var(--fs-13);line-height:var(--lh-body)}.auth-brand-chip{display:grid;flex:0 0 auto;place-items:center;inline-size:40px;block-size:40px;border-radius:var(--r-sm);background:var(--navy-700);color:var(--stage-accent);box-shadow:inset 0 0 0 1px var(--sidebar-line)}@media(max-width:960px){.auth-page.is-split{grid-template-columns:minmax(0,1fr)}.auth-brand{display:none}.is-split .auth-top{padding:var(--sp-5) var(--page-gutter)}.is-split .auth-main{padding:var(--sp-6) var(--page-gutter) var(--sp-9)}}@media(max-width:760px){.auth-main{align-content:start;padding-block:var(--sp-5) var(--sp-7)}.auth-card{gap:var(--sp-5);padding:var(--sp-6) var(--sp-5)}.auth-head h1{font-size:var(--fs-24)}.is-split .auth-main{align-content:start;padding-block:var(--sp-7) var(--sp-7)}}}@layer features{.ld-page{min-block-size:100vh;min-block-size:100dvh;background:var(--bg);color:var(--ink-1)}.ld-header{position:sticky;inset-block-start:0;z-index:var(--z-sticky);background:var(--surface);border-block-end:1px solid var(--line)}.ld-header-inner{display:flex;align-items:center;gap:var(--sp-4);max-inline-size:1120px;min-block-size:64px;margin-inline:auto;padding-inline:var(--page-gutter)}.ld-brand{display:flex;align-items:center;gap:var(--sp-2);min-inline-size:0;color:var(--ink-1)}.ld-brand:hover{text-decoration:none}.ld-brand .brand-icon{flex:0 0 auto;inline-size:28px;block-size:28px}.ld-brand>span{display:grid;min-inline-size:0}.ld-brand strong{overflow:hidden;font-size:var(--fs-16);font-weight:var(--fw-semibold);line-height:var(--lh-tight);text-overflow:ellipsis;white-space:nowrap}.ld-brand small{overflow:hidden;color:var(--ink-3);font-size:var(--fs-12);font-weight:var(--fw-regular);line-height:var(--lh-tight);text-overflow:ellipsis;white-space:nowrap}.ld-nav{display:flex;align-items:center;gap:2px;min-inline-size:0}.ld-nav a{padding:var(--sp-2) var(--sp-3);border-radius:var(--r-sm);color:var(--ink-2);font-size:var(--fs-14);font-weight:var(--fw-medium);white-space:nowrap;transition:background-color var(--dur-1) var(--ease-out),color var(--dur-1) var(--ease-out)}.ld-nav a:hover{background:var(--surface-sunken);color:var(--ink-1);text-decoration:none}.ld-header-actions{display:flex;align-items:center;gap:var(--sp-2);margin-inline-start:auto}.ld-menu-button{display:none}.ld-main{padding-inline:var(--page-gutter)}.ld-section,.ld-proofs{max-inline-size:1072px;margin-inline:auto}.ld-section{padding-block:var(--sp-9);scroll-margin-block-start:64px}.ld-section+.ld-section{border-block-start:1px solid var(--line)}.ld-section h2{margin:0;color:var(--ink-1);font-size:var(--fs-24);font-weight:var(--fw-semibold);line-height:var(--lh-tight)}.ld-section-head{display:grid;gap:var(--sp-2);margin-block-end:var(--sp-6)}.ld-section-head p{max-inline-size:60ch;margin:0;color:var(--ink-3);font-size:var(--fs-14)}.ld-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-3)}.ld-hero{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(280px,1fr);align-items:center;gap:var(--sp-8);padding-block:var(--sp-10) var(--sp-9)}.ld-hero-copy{display:grid;gap:var(--sp-4)}.ld-hero h1{max-inline-size:20ch;margin:0;color:var(--ink-1);font-size:var(--fs-32);font-weight:var(--fw-semibold);line-height:var(--lh-tight)}.ld-hero-copy>p{max-inline-size:56ch;margin:0;color:var(--ink-2);font-size:var(--fs-16)}.ld-hero .ld-actions{margin-block-start:var(--sp-2)}.ld-facts{margin:0;overflow:hidden;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface)}.ld-facts>div{display:grid;gap:2px;padding:var(--sp-3) var(--sp-4)}.ld-facts>div+div{border-block-start:1px solid var(--line)}.ld-facts dt{display:flex;align-items:center;gap:var(--sp-2);color:var(--ink-3);font-size:var(--fs-13);font-weight:var(--fw-medium)}.ld-facts dd{margin:0;padding-inline-start:var(--sp-6);color:var(--ink-1);font-size:var(--fs-14)}.ld-proofs ul{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:0 0 var(--sp-9);padding:0;overflow:hidden;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);list-style:none}.ld-proofs li{display:grid;gap:2px;padding:var(--sp-4)}.ld-proofs li+li{border-inline-start:1px solid var(--line)}.ld-proofs strong{font-size:var(--fs-16);font-weight:var(--fw-semibold)}.ld-proofs span{color:var(--ink-3);font-size:var(--fs-13)}.ld-proofs+.ld-section{border-block-start:1px solid var(--line)}.ld-services{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:var(--sp-4);margin:0;padding:0;list-style:none}.ld-service{display:grid;grid-template-rows:auto 1fr auto;gap:var(--sp-2);padding:var(--sp-5);border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);transition:border-color var(--dur-1) var(--ease-out)}.ld-service.is-selected{border-color:var(--accent)}.ld-service h3{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--sp-2);margin:0;color:var(--ink-1);font-size:var(--fs-16);font-weight:var(--fw-semibold);line-height:var(--lh-tight)}.ld-service p{margin:0;color:var(--ink-2);font-size:var(--fs-14)}.ld-service .btn.link{justify-self:start;margin-block-start:var(--sp-2)}.ld-booking-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);align-items:start;gap:var(--sp-8)}.ld-steps{display:grid;gap:var(--sp-4);margin:0;padding:0;list-style:none}.ld-steps li{display:flex;align-items:center;gap:var(--sp-3);color:var(--ink-1);font-size:var(--fs-16);font-weight:var(--fw-medium)}.ld-step-number{display:inline-grid;flex:0 0 auto;place-items:center;inline-size:var(--control-sm);block-size:var(--control-sm);border:1px solid var(--line-strong);border-radius:var(--r-sm);background:var(--surface);color:var(--ink-2);font-size:var(--fs-13);font-weight:var(--fw-semibold);font-variant-numeric:tabular-nums}.ld-booking-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sp-4);padding:var(--sp-5);border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface)}.ld-booking-submit{display:grid;grid-column:1 / -1;justify-items:start;gap:var(--sp-2)}.ld-booking-submit p{margin:0;color:var(--ink-3);font-size:var(--fs-12)}.ld-about{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);align-items:start;gap:var(--sp-8)}.ld-about p{max-inline-size:60ch;margin:0;color:var(--ink-2);font-size:var(--fs-16)}.ld-location{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);align-items:stretch;gap:var(--sp-8)}.ld-location-info{display:grid;align-content:start;justify-items:start;gap:var(--sp-5)}.ld-location-info ul{display:grid;gap:var(--sp-3);margin:0;padding:0;list-style:none}.ld-location-info li{display:flex;align-items:center;gap:var(--sp-2);color:var(--ink-2)}.ld-location-info li svg{flex:0 0 auto;color:var(--ink-3)}.ld-map{display:block;inline-size:100%;min-block-size:320px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface-sunken)}.ld-faq{display:grid;gap:var(--sp-5)}.ld-faq-list{max-inline-size:760px;overflow:hidden;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface)}.ld-faq-item+.ld-faq-item{border-block-start:1px solid var(--line)}.ld-faq-item h3{margin:0;font-size:inherit}.ld-faq-item button{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3);inline-size:100%;min-block-size:var(--row-h-touch);padding:var(--sp-3) var(--sp-4);border:0;background:transparent;color:var(--ink-1);font-size:var(--fs-16);font-weight:var(--fw-medium);text-align:start}.ld-faq-item button:hover{background:var(--surface-hover)}.ld-faq-item button svg{flex:0 0 auto;color:var(--ink-3);transition:transform var(--dur-2) var(--ease-out)}.ld-faq-item button[aria-expanded=true] svg{transform:rotate(180deg)}.ld-faq-item p{margin:0;padding:0 var(--sp-4) var(--sp-4);color:var(--ink-2)}.ld-final{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--sp-4) var(--sp-6);padding-block-end:var(--sp-10)}.ld-final h2{max-inline-size:28ch;font-size:var(--fs-20)}@media(max-width:1100px){.ld-menu-button{display:inline-flex}.ld-nav{position:absolute;inset-block-start:100%;inset-inline:0;display:none;flex-direction:column;align-items:stretch;gap:0;padding:var(--sp-2) var(--page-gutter) var(--sp-3);background:var(--surface);border-block-end:1px solid var(--line)}.ld-nav.is-open{display:flex}.ld-nav a{display:flex;align-items:center;min-block-size:var(--row-h-touch)}}@media(max-width:960px){.ld-hero,.ld-booking-grid,.ld-about,.ld-location{grid-template-columns:minmax(0,1fr);gap:var(--sp-6)}}@media(max-width:760px){.ld-section,.ld-hero{padding-block:var(--sp-7)}.ld-hero h1{font-size:var(--fs-24)}.ld-section h2{font-size:var(--fs-20)}.ld-proofs ul{grid-template-columns:minmax(0,1fr);margin-block-end:var(--sp-7)}.ld-proofs li+li{border-inline-start:0;border-block-start:1px solid var(--line)}.ld-booking-form{grid-template-columns:minmax(0,1fr);padding:var(--sp-4)}.ld-hero .btn.lg,.ld-final .btn.lg{flex:1 1 200px}.ld-map{min-block-size:260px}}@media(max-width:560px){.ld-brand small,.ld-header-cta{display:none}}}@layer features{.sa-page{display:grid;align-content:start;gap:var(--sp-4);min-inline-size:0}.sa-page>.page-head{margin-block-end:0}.sa-muted{color:var(--ink-3)}.sa-danger-text{color:var(--danger);font-weight:var(--fw-medium)}.sa-kpis{display:flex;flex-wrap:wrap;margin:0;overflow:hidden;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface)}.sa-kpi{flex:1 1 180px;display:grid;align-content:start;gap:2px;min-inline-size:0;margin-inline-start:-1px;margin-block-end:-1px;padding:var(--sp-3) var(--sp-4);border-inline-start:1px solid var(--line);border-block-end:1px solid var(--line)}.sa-kpi dt{color:var(--ink-3);font-size:var(--fs-13);font-weight:var(--fw-medium);line-height:var(--lh-tight)}.sa-kpi dd{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px var(--sp-2);margin:0}.sa-kpi dd>bdi{color:var(--ink-1);font-size:var(--fs-24);font-weight:var(--fw-semibold);font-variant-numeric:tabular-nums;line-height:var(--lh-tight)}.sa-kpi dd>bdi.is-warning{color:var(--warning)}.sa-kpi dd>small{color:var(--ink-3);font-size:var(--fs-12);line-height:var(--lh-body)}.sa-list{min-inline-size:0}.sa-list .ui-filterbar>.ui-search{flex:1 1 240px;max-inline-size:360px}.sa-list .ui-filterbar>.ui-seg{max-inline-size:100%;overflow-x:auto;scrollbar-width:none}.sa-list .ui-filterbar>.ui-seg::-webkit-scrollbar{display:none}.sa-list-notice{margin:var(--sp-3) var(--sp-4) 0}.sa-sub-cell{display:grid;justify-items:start;gap:2px}.sa-sub-cell>small{color:var(--ink-3);font-size:var(--fs-12);white-space:nowrap}.sa-drawer-body{display:grid;gap:var(--sp-5)}.sa-badges{display:flex;flex-wrap:wrap;gap:var(--sp-2)}.sa-block{display:grid;gap:var(--sp-2);min-inline-size:0}.sa-block+.sa-block{padding-block-start:var(--sp-5);border-block-start:1px solid var(--line)}.sa-block h3{margin:0;color:var(--ink-1);font-size:var(--fs-14);font-weight:var(--fw-semibold);line-height:var(--lh-tight)}.sa-hint{margin:0;color:var(--ink-3);font-size:var(--fs-13);line-height:var(--lh-body)}.sa-facts{display:grid;gap:var(--sp-1);margin:0}.sa-facts>div{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:var(--sp-1) var(--sp-3)}.sa-facts dt{color:var(--ink-3);font-size:var(--fs-13)}.sa-facts dd{margin:0;color:var(--ink-1);font-variant-numeric:tabular-nums}.sa-ends{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-2)}.sa-ends strong{font-size:var(--fs-16);font-weight:var(--fw-semibold)}.sa-presets{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--sp-2)}.sa-custom{display:flex;align-items:flex-end;gap:var(--sp-2)}.sa-custom>.field{flex:1 1 auto;min-inline-size:0}.sa-status-actions{display:flex;flex-wrap:wrap;gap:var(--sp-2)}.sa-status-cell{display:inline-flex;flex-wrap:wrap;align-items:center;gap:var(--sp-1)}.sa-pay-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:end;gap:var(--sp-2)}.sa-pay-form>.field{min-inline-size:0}.sa-pay-form>.sa-pay-note{grid-column:1 / -1}.sa-pay-form>.btn{grid-column:1 / -1;justify-self:start}.sa-pay-active{display:grid;gap:var(--sp-1);justify-items:start;padding:var(--sp-3);border-radius:10px;background:var(--danger-bg);border:1px solid var(--danger-line)}.sa-pay-active-row{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-2)}.sa-details{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--sp-3);margin:0}.sa-details>div{display:grid;gap:2px;min-inline-size:0}.sa-details dt{color:var(--ink-3);font-size:var(--fs-12)}.sa-details dd{margin:0;color:var(--ink-1);font-weight:var(--fw-medium);font-variant-numeric:tabular-nums}.sa-id{margin:0;color:var(--ink-3);font-size:var(--fs-12);overflow-wrap:anywhere}.sa-wa{min-inline-size:0}.sa-wa .ui-filterbar>.ui-search{flex:1 1 240px;max-inline-size:360px}.sa-wa .ui-filterbar .select.compact{inline-size:200px}.sa-wa-split{display:grid;grid-template-columns:minmax(260px,.8fr) minmax(0,1.6fr);min-block-size:560px;border-block-start:1px solid var(--line)}.sa-wa-list{min-inline-size:0;max-block-size:70vh;overflow:auto;border-inline-end:1px solid var(--line)}.sa-wa-skeleton{display:grid;gap:var(--sp-5);padding:var(--sp-4)}.sa-convos{margin:0;padding:0;list-style:none}.sa-convos>li+li{border-block-start:1px solid var(--line)}.sa-convo{display:grid;gap:2px;inline-size:100%;padding:var(--sp-3) var(--sp-4);border:0;border-inline-start:3px solid transparent;background:transparent;color:var(--ink-1);text-align:start;transition:background-color var(--dur-1) var(--ease-out)}.sa-convo:hover{background:var(--surface-hover)}.sa-convo.is-selected{border-inline-start-color:var(--accent);background:var(--accent-subtle)}.sa-convo:focus-visible{outline-offset:-2px}.sa-convo-top{display:flex;align-items:baseline;justify-content:space-between;gap:var(--sp-2)}.sa-convo-top strong{font-weight:var(--fw-medium);font-variant-numeric:tabular-nums}.sa-convo-top time{flex:0 0 auto;color:var(--ink-3);font-size:var(--fs-12)}.sa-convo-clinic{color:var(--ink-2);font-size:var(--fs-12)}.sa-convo-preview{overflow:hidden;color:var(--ink-3);font-size:var(--fs-13);text-overflow:ellipsis;white-space:nowrap}.sa-convo-foot{display:flex;flex-wrap:wrap;gap:var(--sp-1) var(--sp-3);color:var(--ink-3);font-size:var(--fs-12)}.sa-wa-detail{display:grid;grid-template-rows:auto minmax(0,1fr);min-inline-size:0}.sa-wa-detail>.ui-empty{align-self:center}.sa-wa-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--sp-2) var(--sp-4);padding:var(--sp-3) var(--sp-4);border-block-end:1px solid var(--line)}.sa-wa-head h2{margin:0;font-size:var(--fs-16);font-weight:var(--fw-semibold);line-height:var(--lh-tight);font-variant-numeric:tabular-nums}.sa-wa-head p{margin:2px 0 0;color:var(--ink-3);font-size:var(--fs-13)}.sa-wa-head-meta{display:grid;justify-items:end;gap:2px;color:var(--ink-3);font-size:var(--fs-12)}.sa-wa-messages{min-block-size:0;max-block-size:70vh;overflow:auto;padding:var(--sp-4);background:var(--bg)}.sa-msgs{display:grid;gap:var(--sp-3);margin:0;padding:0;list-style:none}.sa-msg{display:grid;gap:var(--sp-1);max-inline-size:min(78%,680px)}.sa-msg.is-in{margin-inline-end:auto}.sa-msg.is-out{margin-inline-start:auto;justify-items:end}.sa-msg-meta{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-1) var(--sp-2);color:var(--ink-3);font-size:var(--fs-12)}.sa-msg-body{display:grid;gap:var(--sp-2);justify-self:stretch;padding:var(--sp-2) var(--sp-3);border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);color:var(--ink-1)}.sa-msg.is-out .sa-msg-body{border-color:var(--accent-line);background:var(--accent-subtle)}.sa-msg.is-failed .sa-msg-body{border-color:var(--danger-line)}.sa-msg-body p{margin:0;white-space:pre-wrap;overflow-wrap:anywhere}.sa-msg-transcript{display:grid;gap:2px;padding-block-start:var(--sp-2);border-block-start:1px solid var(--line)}.sa-msg-transcript>span{color:var(--ink-3);font-size:var(--fs-12);font-weight:var(--fw-medium)}.sa-msg-tools{color:var(--ink-3);font-size:var(--fs-12)}.sa-msg-error{color:var(--danger);font-size:var(--fs-12)}.sa-policy{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:var(--sp-4)}.sa-policy-groups{display:grid;gap:var(--sp-4);padding:var(--sp-4)}.sa-policy-group{display:grid;gap:var(--sp-2)}.sa-policy-group>header{display:flex;align-items:baseline;justify-content:space-between;gap:var(--sp-2)}.sa-policy-group h3{margin:0;color:var(--ink-2);font-size:var(--fs-13);font-weight:var(--fw-semibold)}.sa-policy-group>header>span{color:var(--ink-3);font-size:var(--fs-12)}.sa-policy-group ul{margin:0;padding:0;overflow:hidden;border:1px solid var(--line);border-radius:var(--r-md);list-style:none}.sa-policy-action{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:var(--sp-2) var(--sp-3);min-block-size:var(--row-h);padding:var(--sp-2) var(--sp-3)}.sa-policy-action+.sa-policy-action{border-block-start:1px solid var(--line)}.sa-policy-copy{display:grid;gap:1px;min-inline-size:0}.sa-policy-copy strong{font-weight:var(--fw-medium)}.sa-policy-copy code{overflow:hidden;color:var(--ink-3);font:inherit;font-size:var(--fs-12);text-overflow:ellipsis;white-space:nowrap}.sa-policy-pick{padding:var(--sp-3) var(--sp-4);border-block-end:1px solid var(--line)}.sa-policy-loading{padding:var(--sp-4)}.sa-policy-foot{justify-content:space-between}.sa-policy-foot>span{color:var(--ink-3);font-size:var(--fs-13)}@media(max-width:1180px){.sa-policy{grid-template-columns:minmax(0,1fr)}}@media(max-width:760px){.sa-wa-split{grid-template-columns:minmax(0,1fr);min-block-size:0}.sa-wa-list{max-block-size:320px;border-inline-end:0;border-block-end:1px solid var(--line)}.sa-wa-messages{max-block-size:none}.sa-msg{max-inline-size:92%}.sa-wa .ui-filterbar .select.compact{inline-size:100%}.sa-presets,.sa-details{grid-template-columns:repeat(2,minmax(0,1fr))}.sa-policy-action{grid-template-columns:minmax(0,1fr) auto}.sa-policy-action>span:empty{display:none}.sa-policy-action>.badge{grid-column:1;justify-self:start}.sa-policy-action>.ui-switch{grid-column:2;grid-row:1 / span 2}.sa-policy-action>.ui-seg{grid-column:1 / -1;justify-self:start}}}
