@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/dashboard/assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/dashboard/assets/inter-latin-wght-normal-Dx4kXJAl.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter Fallback;src:local(Arial);size-adjust:106.64%;ascent-override:90.84%;descent-override:22.62%;line-gap-override:0%}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--ink:#1b2a28;--ink-soft:#33433f;--muted:#5c6967;--placeholder:#7f8b88;--line:#e2e7e3;--line-soft:#eef1ee;--line-float:#c5cec9;--paper:#f5f7f3;--surface:#fff;--surface-2:#fbfcfa;--table-head:#dbe7f6;--table-head-line:#b9cde8;--row-stripe:#eff2f6;--row-hover:#edf3fb;--brand:#1763b8;--brand-strong:#11498a;--brand-dark:#0e3a6e;--brand-tint:#e6f0fb;--accent:#27c9b3;--gold:#b08524;--blue:#3f6985;--rose:#f9e7e1;--amber:#f7eecd;--violet:#ece7f7;--sky:#e8f0f6;--male:#2563eb;--male-tint:#dbeafe;--female:#db2777;--female-tint:#fce7f3;--success:#12855a;--success-strong:#0e6f4b;--success-soft:#e6f4ee;--warning-strong:#8a5a00;--danger:#d13c30;--danger-strong:#b02b21;--danger-soft:#fbeae7;--danger-line:#d13c304d;--field-invalid-bg:#fff7f6;--fs-2xs:.72rem;--fs-xs:.78rem;--fs-sm:.84rem;--fs-md:.9rem;--fs-base:.95rem;--fs-lg:1.05rem;--fs-xl:1.2rem;--fs-2xl:1.5rem;--mono:"JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--tracking-caps:.05em;--on-brand:#fff;--r-sm:0px;--r-md:0px;--r-pill:0px;--shadow-pop:0 2px 6px #11201e14, 0 14px 32px -6px #11201e38;--shadow-lg:0 16px 40px #11201e1f;--ease:.16s cubic-bezier(.4, 0, .2, 1);font-family:Inter,Inter Fallback,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}:root,.app-shell{--table-head-ink:var(--brand-dark);--ring:0 0 0 3px color-mix(in srgb, var(--brand) 22%, transparent)}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--paper);min-width:320px;min-height:100dvh;color:var(--ink);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;font-size:15px;line-height:1.5}.id-code{font-family:var(--mono);font-variant-numeric:tabular-nums;letter-spacing:-.01em}button,input,select,textarea{font:inherit}::placeholder{color:var(--placeholder);opacity:1}button{cursor:pointer}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}.account-menu-popover,.aria-select-popover,.date-popover,.nav-family-panel{border:1px solid var(--line-float);border-top:2px solid var(--brand);border-radius:var(--r-md);background:var(--surface);box-shadow:var(--shadow-pop)}:where(button,a,summary,[tabindex]:not([tabindex="-1"])):focus-visible{outline:2px solid var(--brand);outline-offset:2px;border-radius:var(--r-sm)}:where(input,select,textarea):focus-visible{box-shadow:var(--ring);border-radius:var(--r-sm);outline:none}:where([tabindex="-1"]):focus-visible{outline:none}[role=tab]:focus-visible{outline-offset:-3px}.medi-topbar :focus-visible{outline-offset:-3px;outline-color:#fff}.app-shell{flex-direction:column;min-height:100dvh;display:flex}.medi-topbar{z-index:35;background:var(--brand);min-height:44px;color:var(--on-brand);grid-template-columns:auto minmax(0,1fr) auto;align-items:stretch;display:grid;position:sticky;top:0;box-shadow:0 1px #0e3a6e59}.topbar-brand{background:var(--brand-strong);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px;min-width:132px;padding:0 10px;display:grid}.brand-home-button{min-width:0;min-height:44px;color:inherit;text-align:left;background:0 0;border:0;grid-template-columns:32px minmax(0,1fr);align-items:center;gap:8px;padding:0;text-decoration:none;display:grid}.brand-home-button:hover{color:var(--on-brand)}.topbar-brand .brand-mark{background:0 0;width:32px;height:32px}.topbar-brand .brand-mark img{width:32px;height:32px}.topbar-brand .brand-sub{color:#ffffffb8}.topbar-brand .brand-copy{min-width:0}.topbar-brand strong{color:var(--on-brand);font-size:var(--fs-lg);text-overflow:ellipsis;white-space:nowrap;line-height:1;display:block;overflow:hidden}.topbar-brand .brand-sub,.topbar-brand .brand-page{display:none}.topbar-menu.icon-button{color:var(--on-brand);background:#ffffff14;border-color:#ffffff47}.topbar-menu.icon-button:hover{color:var(--on-brand);background:#ffffff2e;border-color:#ffffff6b}.topbar-actions{background:var(--brand);align-items:center;gap:8px;padding:0 10px;display:flex}.topbar-actions .icon-button{width:36px;height:36px;color:var(--on-brand);background:#ffffff14;border-color:#ffffff38}.topbar-actions .topbar-sale-button{border-color:var(--surface);background:var(--surface);min-height:32px;color:var(--brand-dark);font-size:var(--fs-sm);white-space:nowrap;gap:6px;padding:0 12px}.topbar-actions .topbar-sale-button:hover{border-color:var(--brand-tint);background:var(--brand-tint)}.topbar-sale-button svg{flex:none;width:16px;height:16px}.account-menu-trigger{min-height:36px;color:var(--on-brand);text-align:left;background:0 0;border:0;border-left:1px solid #ffffff3d;align-items:center;gap:8px;margin-left:2px;padding:0 8px 0 12px;display:flex}.account-menu-trigger:hover,.account-menu-trigger:active,.account-menu-trigger[aria-expanded=true]{background:#ffffff1f}.account-menu-avatar{background:var(--surface);width:32px;height:32px;color:var(--brand-dark);font-size:var(--fs-xs);flex:none;place-items:center;font-weight:750;display:grid}.account-menu-identity{min-width:0;display:grid}.account-menu-identity strong,.account-menu-identity span{text-overflow:ellipsis;white-space:nowrap;max-width:176px;overflow:hidden}.account-menu-identity strong{font-size:var(--fs-sm);line-height:1.15}.account-menu-identity span{font-size:var(--fs-2xs);opacity:.85}.account-menu-caret{opacity:.8;width:14px;height:14px;transition:transform var(--ease);flex:none}.account-menu-trigger[aria-expanded=true] .account-menu-caret{transform:rotate(180deg)}.account-menu-popover{z-index:60;min-width:220px}.account-menu-heading{border-bottom:1px solid var(--line);padding:12px 14px;display:none}.account-menu-heading span{color:var(--muted);font-size:var(--fs-xs)}.account-menu-panel{outline:none;flex-direction:column;padding:4px;display:flex}.account-menu-item{min-height:40px;color:var(--ink-soft);font-size:var(--fs-md);text-align:left;white-space:nowrap;background:0 0;border:0;align-items:center;gap:10px;padding:0 10px;font-weight:550;display:flex}.account-menu-item svg{flex:none;width:18px;height:18px}.account-menu-item:hover{background:var(--line-soft);color:var(--ink)}.account-menu-item--danger:hover{background:var(--rose);color:var(--danger-strong)}.account-menu-separator{background:var(--line);border:0;height:1px;margin:4px 0}.brand-mark{border-radius:var(--r-md);background:var(--brand);place-items:center;width:42px;height:42px;display:grid;overflow:hidden}.brand-mark img{object-fit:contain;width:100%;height:100%;display:block}.medi-topbar .top-module-nav{flex-direction:row;align-items:stretch;gap:0;min-width:0;display:flex}.medi-topbar .nav-scroll{overscroll-behavior-x:contain;scrollbar-width:thin;flex-direction:row;min-width:0;display:flex;overflow-x:auto}.medi-topbar .nav-scroll>button,.medi-topbar .nav-scroll>.nav-family{flex:none}.medi-topbar .top-module-nav>.nav-scroll>button{color:#ffffffe6;min-height:44px;font-size:var(--fs-sm);white-space:nowrap;background:0 0;border:0;align-items:center;padding:0 12px;font-weight:650;display:inline-flex}.medi-topbar .top-module-nav>.nav-scroll>button:hover,.medi-topbar .top-module-nav>.nav-scroll>button.active{color:var(--brand-dark);background:#dce9ff}.nav-family{align-items:stretch;display:inline-flex;position:relative}.nav-family>button{color:#ffffffe6;font-size:var(--fs-sm);white-space:nowrap;background:0 0;border:0;font-weight:650}.nav-family-label{padding:0 6px 0 12px}.nav-family-caret-button{align-items:center;padding:0 10px 0 2px;display:inline-flex}.nav-family-toggle{align-items:center;gap:4px;padding:0 10px 0 12px;display:inline-flex}.nav-family:hover,.nav-family.active,.nav-family.open{background:#dce9ff}.nav-family:hover>button,.nav-family.active>button,.nav-family.open>button{color:var(--brand-dark)}.nav-family-caret{opacity:.8;width:14px;height:14px;transition:transform var(--ease)}.nav-family.open .nav-family-caret{transform:rotate(180deg)}.nav-family-panel{z-index:40;flex-direction:column;min-width:200px;padding:6px;display:flex;position:fixed}.nav-family-panel button{min-height:40px;color:var(--ink-soft);font-size:var(--fs-md);text-align:left;white-space:nowrap;background:0 0;border:0;padding:0 12px;font-weight:550}.nav-family-panel button:hover,.nav-family-panel button.active{background:var(--brand-tint);color:var(--brand-dark)}.workspace{flex-direction:column;gap:14px;min-width:0;padding:16px 16px 36px;display:flex;position:relative}.icon-button{border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface);width:40px;height:40px;color:var(--ink-soft);transition:background var(--ease), border-color var(--ease), color var(--ease), transform var(--ease);place-items:center;display:inline-grid;position:relative}.icon-button svg{width:20px;height:20px}.icon-button:hover{background:var(--surface-2);border-color:var(--brand);color:var(--brand-dark)}.icon-button:active{transform:translateY(1px)}.icon-button:disabled{cursor:not-allowed;opacity:.55}.icon-button:disabled:hover{background:var(--surface);border-color:var(--line);color:var(--ink-soft)}.primary-button,.ghost-button{border-radius:var(--r-sm);transition:background var(--ease), border-color var(--ease), color var(--ease), transform var(--ease);justify-content:center;align-items:center;gap:8px;font-weight:650;display:inline-flex}.primary-button{border:1px solid var(--brand);background:var(--brand);min-height:44px;color:var(--on-brand);padding:0 20px}.primary-button:hover{border-color:var(--brand-strong);background:var(--brand-strong)}.primary-button:active{transform:translateY(1px)}.primary-button:disabled{cursor:not-allowed;opacity:.55}.primary-button:disabled:hover{border-color:var(--brand);background:var(--brand)}.ghost-button{border:1px solid var(--line);background:var(--surface);min-height:36px;color:var(--ink-soft);font-size:var(--fs-sm);padding:0 14px}.ghost-button:hover{border-color:var(--brand);color:var(--brand-dark);background:var(--surface-2)}.success-button,.danger-button{border-radius:var(--r-sm);min-height:44px;color:var(--on-brand);transition:background var(--ease), border-color var(--ease), color var(--ease), transform var(--ease);justify-content:center;align-items:center;gap:8px;padding:0 20px;font-weight:650;display:inline-flex}.success-button{border:1px solid var(--success);background:var(--success)}.success-button:hover{border-color:var(--success-strong);background:var(--success-strong)}.danger-button{border:1px solid var(--danger);background:var(--danger)}.danger-button:hover{border-color:var(--danger-strong);background:var(--danger-strong)}.success-button:active,.danger-button:active{transform:translateY(1px)}.success-button:disabled,.danger-button:disabled{cursor:not-allowed;opacity:.55}.success-button:disabled:hover{border-color:var(--success);background:var(--success)}.danger-button:disabled:hover{border-color:var(--danger);background:var(--danger)}.danger-ghost-button{border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface);min-height:36px;color:var(--danger);font-size:var(--fs-sm);transition:background var(--ease), border-color var(--ease), color var(--ease), transform var(--ease);justify-content:center;align-items:center;gap:8px;padding:0 14px;font-weight:650;display:inline-flex}.danger-ghost-button:hover{border-color:var(--danger);color:var(--danger-strong);background:var(--danger-soft)}.danger-ghost-button:disabled{cursor:not-allowed;opacity:.55}.danger-icon-button{border-radius:var(--r-sm);width:40px;height:40px;color:var(--danger);cursor:pointer;transition:background var(--ease), border-color var(--ease), color var(--ease), transform var(--ease);background:0 0;border:1px solid #0000;flex:none;place-items:center;padding:0;display:inline-grid}.danger-icon-button:hover{border-color:var(--danger-line);color:var(--danger-strong);background:var(--danger-soft)}.danger-icon-button:active{transform:translateY(1px)}.danger-icon-button:disabled{cursor:not-allowed;opacity:.4}.danger-icon-button:disabled:hover{color:var(--danger);background:0 0;border-color:#0000}.ghost-button:active,.danger-ghost-button:active{transform:translateY(1px)}.text-link{min-height:32px;color:var(--brand-dark);font-family:inherit;font-size:var(--fs-sm);white-space:nowrap;background:0 0;border:0;align-items:center;gap:6px;padding:0;font-weight:700;text-decoration:none;display:inline-flex}.text-link:hover{text-decoration:underline}.inline-actions,.meta-grid,.tabs{flex-wrap:wrap;gap:8px;margin-bottom:12px;display:flex}.meta-grid span,.tabs .ghost-button{border:1px solid var(--line);border-radius:var(--r-sm);color:var(--muted);font-size:var(--fs-sm);padding:8px 10px}.tabs .ghost-button[aria-selected=true]{border-color:var(--brand);color:var(--brand-dark);background:var(--brand-tint)}.ghost-button:disabled{cursor:not-allowed;opacity:.55}.empty-state{border:1px dashed var(--line);border-radius:var(--r-sm);color:var(--muted);background:var(--surface-2);margin:0;padding:14px}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:3000;border-radius:var(--r-sm);background:var(--brand);color:var(--on-brand);box-shadow:var(--shadow-lg);transition:transform var(--ease);padding:10px 14px;font-weight:700;position:fixed;top:12px;left:12px;transform:translateY(-160%)}.skip-link:focus,.skip-link:focus-visible{outline:3px solid var(--on-brand);outline-offset:2px;transform:translateY(0)}.page-grid{grid-template-columns:minmax(0,1fr);gap:18px;display:grid}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:14px;display:grid}.split-grid,.patient-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.stat-card{border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);gap:6px;padding:18px;display:grid;position:relative;overflow:hidden}.stat-card .stat-label{color:var(--muted);font-size:var(--fs-sm);align-items:center;gap:8px;font-weight:600;display:flex}.stat-card strong{letter-spacing:-.01em;font-size:1.7rem;font-weight:750;line-height:1.05}.stat-card small{color:var(--muted);font-size:var(--fs-xs)}.stat-card:before{content:"";background:var(--brand);width:4px;position:absolute;inset:0 auto 0 0}.stat-coral:before{background:var(--accent)}.stat-gold:before{background:var(--gold)}.stat-blue:before{background:var(--blue)}.stat-danger:before{background:var(--danger)}.stat-danger>strong{color:var(--danger-strong)}.panel{border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);min-width:0;padding:18px}.panel-header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.panel-header .primary-button{white-space:nowrap;flex:none}.panel-title-row{align-items:center;min-width:0;display:flex}.panel-header:has(.panel-toolbar){flex-wrap:wrap}.panel-toolbar{flex:280px;min-width:0;max-width:460px;margin-left:auto}.month-nav{align-items:center;gap:6px;display:flex}@media (width<=640px){.panel-toolbar{flex-basis:100%;order:3;max-width:none}.panel-header:has(.panel-toolbar)>h2{flex:1 1 0;min-width:0}.panel-header:has(.panel-toolbar)>.panel-title-row{flex:1 1 0;min-width:0}}.panel h2{font-size:var(--fs-lg);margin:0;font-weight:700}.patient-tabs-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 14px;margin-bottom:12px;display:flex}.patient-tabs-bar>.tabs,.patient-tabs-bar>.inline-actions{margin-bottom:0}.patient-tabs-bar>.search-slab{flex:280px;max-width:420px}.dialog-panel.patient-import-dialog{width:min(94vw,860px)}.patient-import-form>*{grid-column:1/-1}.patient-import-form>.inline-actions{margin-bottom:0}.patient-import-form input[type=file]{min-height:0;padding:8px 12px}.patient-import-form tbody td:before{flex:0 auto}@media (width<=720px){.patient-tabs-bar>.inline-actions{flex:100%}.patient-tabs-bar>.inline-actions .ghost-button{flex:140px}}.patients-table{min-width:1060px}.column-chooser{font-size:var(--fs-sm);margin:0 0 8px}.column-chooser summary{cursor:pointer;width:fit-content;color:var(--muted)}.column-chooser.column-chooser-plain>summary{border:0;border-radius:0;padding:0}.column-chooser [role=group]{flex-wrap:wrap;gap:8px 16px;padding:8px 0;display:flex}.column-chooser label{align-items:center;gap:6px;display:inline-flex}.appointment-page{gap:0}.appointment-board{border:1px solid var(--line);background:var(--surface);min-width:0}.appointment-actions{border-bottom:1px solid var(--line-soft);justify-content:space-between;align-items:center;gap:12px;padding:16px;display:flex}.appointment-actions h2{font-size:var(--fs-xl);margin:0}.appointment-actions>div{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.appointment-actions svg,.calendar-toolbar svg{width:17px;height:17px}.filter-bar.appointment-filters{background:var(--surface);margin-bottom:0;padding:16px}.appointment-day-summary{display:none}.phone-filter-box{border:1px solid var(--line);background:var(--surface);grid-template-columns:18px minmax(0,1fr) auto;align-items:center;gap:8px;min-height:36px;padding:0 10px;display:grid}.phone-filter-box:focus-within{border-color:var(--brand);box-shadow:var(--ring)}.phone-filter-box svg{width:17px;height:17px;color:var(--muted)}.filter-field .phone-filter-box input{border:0;min-width:0;min-height:24px;padding:0}.filter-field .phone-filter-box input:focus{box-shadow:none}.calendar-toolbar{background:#eef4ff;grid-template-columns:auto 48px 48px minmax(160px,1fr) auto;align-items:center;gap:10px;padding:10px 16px;display:grid}.calendar-toolbar>strong{color:var(--ink);font-size:var(--fs-2xl);justify-self:center;font-weight:500}.icon-only{width:48px;padding:0}.calendar-note{border-top:1px solid var(--line-soft);color:var(--warning-strong);font-size:var(--fs-sm);background:#fff8e6;margin:0;padding:10px 16px}.calendar-table-wrap{border-top:1px solid var(--line);max-height:760px;overflow:auto}.appointment-calendar{table-layout:fixed;min-width:1180px}.appointment-calendar thead th{color:#22406a;text-align:center;background:#f3f7ff;top:0}.appointment-calendar .calendar-off{color:var(--warning-strong);font-size:var(--fs-sm);font-weight:600;display:block}.appointment-calendar th,.appointment-calendar td{border-right:1px solid var(--line)}.appointment-calendar th:last-child,.appointment-calendar td:last-child{border-right:0}.appointment-calendar tbody th{border-bottom:1px solid var(--line-soft);width:76px;color:var(--ink-soft);text-align:right;white-space:nowrap;padding:10px 12px;font-weight:600}.appointment-calendar tbody td{background:var(--surface);vertical-align:top;height:48px;padding:6px 8px;position:relative}.calendar-slot-button{cursor:pointer;background:0 0;border:0;width:100%;position:absolute;inset:0}.calendar-slot-button:hover,.calendar-slot-button:focus-visible{background:var(--brand-tint)}.appointment-calendar tbody tr:nth-child(2n) td,.appointment-calendar tbody tr:nth-child(2n) th{background:var(--row-stripe)}.calendar-count{color:#3276d6;text-align:center;font-weight:700}.appointment-calendar td.is-drop-target{outline:2px solid var(--brand);outline-offset:-2px}.calendar-chip[draggable=true]{cursor:grab}.calendar-chip.is-dragged{opacity:.5}.calendar-chip-wrap{z-index:1;position:relative}.calendar-chip-move{border:1px solid var(--line-soft);border-radius:var(--radius-sm,6px);background:var(--surface,#fff);width:28px;height:28px;color:var(--muted);cursor:pointer;opacity:0;z-index:2;place-items:center;padding:0;display:grid;position:absolute;top:4px;right:4px}.calendar-chip-wrap:hover .calendar-chip-move,.calendar-chip-move:focus-visible,.calendar-chip-move[aria-pressed=true]{opacity:1}@media (pointer:coarse){.calendar-chip-move{opacity:1}}.appointment-drag-hint{z-index:3;position:sticky;bottom:8px}:root{--appt-booked-bg:var(--brand-tint);--appt-booked-bar:var(--brand);--appt-arrived-bg:var(--amber);--appt-arrived-bar:var(--warning-strong);--appt-in-progress-bg:var(--success-soft);--appt-in-progress-bar:var(--success);--appt-finished-bg:var(--line-soft);--appt-finished-bar:var(--muted)}.calendar-chip{--chip-bg:var(--appt-booked-bg);--chip-bar:var(--appt-booked-bar);border-left:3px solid var(--chip-bar);background:var(--chip-bg);font-size:var(--fs-xs);z-index:1;gap:2px;padding:6px 8px;display:grid;position:relative}.calendar-chip[data-status=ARRIVED],.calendar-legend li[data-status=ARRIVED]{--chip-bg:var(--appt-arrived-bg);--chip-bar:var(--appt-arrived-bar)}.calendar-chip[data-status=IN_PROGRESS],.calendar-legend li[data-status=IN_PROGRESS]{--chip-bg:var(--appt-in-progress-bg);--chip-bar:var(--appt-in-progress-bar)}.calendar-chip[data-status=FINISHED],.calendar-legend li[data-status=FINISHED]{--chip-bg:var(--appt-finished-bg);--chip-bar:var(--appt-finished-bar)}.calendar-legend{font-size:var(--fs-xs);color:var(--muted);flex-wrap:wrap;gap:4px 12px;margin:0;padding:0;list-style:none;display:flex}.calendar-legend li{--chip-bg:var(--appt-booked-bg);--chip-bar:var(--appt-booked-bar);align-items:center;gap:6px;display:inline-flex}.calendar-legend li:before{content:"";border-left:3px solid var(--chip-bar);background:var(--chip-bg);width:10px;height:10px}.calendar-tail{--chip-bg:var(--appt-booked-bg);--chip-bar:var(--appt-booked-bar);border-left:3px solid var(--chip-bar);background:var(--chip-bg);pointer-events:none;position:absolute;inset:0}.calendar-tail[data-status=ARRIVED]{--chip-bg:var(--appt-arrived-bg);--chip-bar:var(--appt-arrived-bar)}.calendar-tail[data-status=IN_PROGRESS]{--chip-bg:var(--appt-in-progress-bg);--chip-bar:var(--appt-in-progress-bar)}.calendar-tail[data-status=FINISHED]{--chip-bg:var(--appt-finished-bg);--chip-bar:var(--appt-finished-bar)}.calendar-chip strong,.calendar-chip span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.calendar-chip span{color:var(--muted)}.calendar-chip.is-selected{border-left-color:var(--brand-strong);box-shadow:0 0 0 2px var(--brand-strong)}.calendar-chip[role=button]{cursor:pointer}@media screen and (width>=721px) and (hover:hover){.appointment-calendar tbody tr:hover th{background:var(--row-hover);color:var(--brand-strong)}.calendar-chip[role=button]:not(.is-selected):hover{box-shadow:0 0 0 1px var(--brand)}}.appointment-view-toggle{gap:4px;display:inline-flex}.appointment-view-toggle .ghost-button[aria-pressed=true]{background:var(--brand-tint);color:var(--brand-strong)}.appointment-list-title{font-size:var(--fs-md);margin:8px 0}.appointment-list-footer{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-top:8px;display:flex}.appointment-list-pager{align-items:center;gap:8px;display:inline-flex}.appointment-service-lines{gap:6px;margin:0;padding:0;list-style:none;display:grid}.appointment-service-lines li{border:1px solid var(--line-soft);grid-template-columns:minmax(0,1fr) 72px 48px;align-items:center;gap:8px;padding:6px 8px;display:grid}.appointment-service-lines li>span{min-width:0;display:grid}.appointment-service-lines input{text-align:right}.appointment-busy{border:1px solid var(--line-soft);border-left:3px solid var(--warning-strong);color:var(--warning-strong);font-size:var(--fs-sm);background:#fff8e6;margin:0;padding:8px 12px;list-style:none}.appointment-range-header{align-items:center;gap:8px;margin:8px 0;display:flex}.appointment-week{grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;display:grid}.appointment-week-day{border:1px solid var(--line-soft);border-radius:8px;min-width:0;padding:6px}.appointment-week-day.is-today{border-color:var(--brand)}.appointment-week-day ul{gap:4px;margin:6px 0 0;padding:0;list-style:none;display:grid}.appointment-week-head{cursor:pointer;width:100%;color:inherit;background:0 0;border:0;justify-content:space-between;display:flex}.appointment-week-booking{border:0;border-left:3px solid var(--appt-booked-bar);background:var(--appt-booked-bg);text-align:left;cursor:pointer;border-radius:4px;width:100%;padding:4px 6px;display:block}.appointment-week-booking span{color:var(--muted);font-size:var(--fs-sm);display:block}.appointment-month{grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;display:grid}.appointment-month-weekday{text-align:center;color:var(--muted)}.appointment-month-day{border:1px solid var(--line-soft);cursor:pointer;min-height:64px;color:inherit;background:0 0;border-radius:8px;flex-direction:column;align-items:flex-start;gap:4px;padding:6px;display:flex}.appointment-month-day.is-outside{color:var(--muted)}.appointment-month-day.is-today{border-color:var(--brand)}.appointment-month-day strong{background:var(--brand-tint);color:var(--brand-strong);border-radius:999px;padding:0 8px}@media screen and (width<=720px){.appointment-week{grid-template-columns:1fr}.appointment-month-day{min-height:44px}}.table-wrap{border:1px solid var(--line-soft);border-radius:var(--r-md);width:100%;position:relative;overflow-x:auto}table{border-collapse:collapse;width:100%;min-width:720px}thead th{background:var(--table-head);color:var(--table-head-ink);font-size:var(--fs-xs);letter-spacing:.02em;text-transform:uppercase;text-align:left;border-bottom:1px solid var(--table-head-line);padding:10px 12px;font-weight:600;position:sticky;top:0}@media (width>=1280px){.table-wrap.pinned-head{overflow:clip}.table-wrap.pinned-head thead th{top:var(--stick-top);z-index:1;box-shadow:0 1px 0 var(--table-head-line)}}tbody td{border-bottom:1px solid var(--line-soft);color:#31413f;font-size:var(--fs-md);text-align:left;vertical-align:middle;padding:12px;font-weight:400}tbody tr:last-child td{border-bottom:0}tbody tr{transition:background var(--ease), box-shadow var(--ease)}@media screen and (width>=721px){:where(.table-wrap) tbody tr:nth-child(2n),.permission-matrix-table tbody tr:nth-child(2n)>th{background:var(--row-stripe)}}@media screen and (width>=721px) and (hover:hover){:where(.table-wrap) tbody tr:hover,.permission-matrix-table tbody tr:hover>th{background:var(--row-hover)}}.cell-amount{text-align:right;font-variant-numeric:tabular-nums}.permission-matrix-table{min-width:100%}.permission-matrix-table thead th{white-space:nowrap;position:static}.permission-matrix-table thead tr:first-child th{background:var(--brand-tint);text-align:center}.permission-matrix-table tbody th{text-align:left;border-bottom:1px solid var(--line-soft);color:var(--ink);white-space:nowrap;padding:10px 12px;font-weight:600}.permission-matrix-table tbody th,.permission-matrix-table thead tr:first-child th:first-child{z-index:1;background:var(--surface);position:sticky;left:0}.permission-matrix-table thead tr:first-child th:first-child{background:var(--brand-tint)}.permission-matrix-cell{text-align:center!important}.permission-matrix-yes{color:var(--success)}.permission-matrix-no{color:var(--muted)}.interactive-row{cursor:pointer}.interactive-row:hover,.interactive-row:focus-visible{background:var(--row-hover)}.interactive-row:focus-visible{outline:2px solid var(--brand);outline-offset:-2px;box-shadow:inset 3px 0 0 var(--brand)}.interactive-row.is-selected{background:var(--brand-tint);box-shadow:inset 3px 0 0 var(--brand)}.interactive-row.is-selected .cell-stack strong,.table-row-action{white-space:nowrap;width:1%}.catalog-row-actions{flex-wrap:wrap;gap:8px;display:flex}.catalog-filters{flex-wrap:wrap;justify-content:space-between;column-gap:16px;display:flex}.catalog-bulk-bar{flex-wrap:wrap;align-items:center;gap:8px 12px;margin-bottom:8px;display:flex}.price-book-layout{grid-template-columns:minmax(200px,260px) minmax(0,1fr);align-items:start;gap:16px;display:grid}.catalog-groups{border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);gap:8px;padding:12px;display:grid}.catalog-groups-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.catalog-groups-head h3{font-size:var(--fs-lg);margin:0}.catalog-group-list{gap:2px;margin:0;padding:0;list-style:none;display:grid}.catalog-group-row{border-radius:var(--r-sm);width:100%;min-height:36px;color:var(--ink);font:inherit;text-align:start;cursor:pointer;background:0 0;border:0;padding:6px 12px}.catalog-group-row:hover{background:var(--row-hover)}.catalog-group-row[aria-pressed=true]{background:var(--brand-tint);color:var(--brand-strong);font-weight:600}.catalog-group-actions{flex-wrap:wrap;gap:8px;display:flex}@media (width<=860px){.price-book-layout{grid-template-columns:minmax(0,1fr)}}.table-row-action>.field-error{white-space:normal;max-width:260px;margin-top:6px}.sortable-th{min-height:32px;color:inherit;font:inherit;text-transform:inherit;letter-spacing:inherit;background:0 0;border:0;align-items:center;gap:4px;padding:4px 2px;display:inline-flex}.sortable-th:hover{color:var(--brand)}.sortable-th .sort-icon{opacity:.65;flex:none;width:13px;height:13px}th[aria-sort=ascending] .sortable-th .sort-icon,th[aria-sort=descending] .sortable-th .sort-icon{opacity:1}.table-skeleton-row .skeleton-line{display:block}.row-open-button{border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface);min-height:40px;color:var(--brand-dark);font-size:var(--fs-sm);transition:background var(--ease), border-color var(--ease), color var(--ease);justify-content:center;align-items:center;gap:6px;padding:0 12px;font-weight:500;display:inline-flex}.row-open-button:hover,.interactive-row:hover .row-open-button,.interactive-row:focus-visible .row-open-button{border-color:var(--brand);color:var(--brand-dark);background:#f8fbff}.row-open-button[aria-pressed=true]{border-color:color-mix(in srgb, var(--brand) 28%, transparent);background:var(--surface);color:var(--brand-dark)}.row-open-button svg{flex:none;width:15px;height:15px}.billing-search{gap:8px;display:flex}.billing-search .search-slab{flex:auto;min-width:0}.billing-search .ghost-button{white-space:nowrap;flex:none;min-height:44px}.panel-toolbar:has(>.billing-search){max-width:540px}.billing-filters{flex-wrap:wrap;justify-content:space-between;align-items:center;column-gap:16px;display:flex}.billing-filter-actions{flex-wrap:wrap;gap:8px;margin-bottom:12px;display:flex}.export-menu{position:relative}.export-menu-list{z-index:5;background:var(--surface);border:1px solid var(--line);min-width:100%;box-shadow:var(--shadow-pop);border-radius:8px;gap:4px;padding:6px;display:grid;position:absolute;top:calc(100% + 4px);left:0}.export-menu-list .ghost-button{white-space:nowrap;justify-content:flex-start}.cell-code{font-variant-numeric:tabular-nums;color:var(--muted);font-size:var(--fs-sm)}.cell-link{color:var(--brand);font-weight:600}.cell-stack strong{font-weight:500;display:block}.print-name-hint{color:var(--muted);font-size:var(--fs-xs);margin-top:2px;font-weight:400;display:block}.permission-grants-table{min-width:100%}.permission-grants-table th,.permission-grants-table td{border-bottom:1px solid var(--line-soft);text-align:left;padding:8px 12px}.permission-grants-table td{text-align:center}.permission-grants-table tbody tr:first-child th{background:var(--brand-tint);color:var(--ink)}.permission-grants-table tbody th[scope=row]{font-weight:400}.panel>.page-tabs{margin-top:0;padding-inline:0}.business-report-panel{margin-top:18px}.business-report-section{border-top:1px solid var(--line-soft);min-width:0;padding-top:18px}.business-print-target{position:relative}.business-report-section:first-child{border-top:0;padding-top:0}.report-section-header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.report-section-header h3{color:var(--ink-soft);font-size:var(--fs-lg);margin:0;font-weight:650}.report-summary-pill{background:var(--brand-tint);min-height:32px;color:var(--brand-dark);font-size:var(--fs-sm);white-space:nowrap;border:1px solid #d6e5fa;align-items:center;padding:0 11px;font-weight:700;display:inline-flex}.report-summary-bars{gap:12px;padding:8px 0;display:grid}.summary-bar{gap:7px;display:grid}.summary-bar>div{color:var(--ink-soft);font-size:var(--fs-md);justify-content:space-between;align-items:center;gap:12px;display:flex}.summary-bar span{color:var(--muted);font-weight:700}.summary-bar strong{font-variant-numeric:tabular-nums}.summary-bar i{border-radius:var(--r-sm);background:var(--brand);height:12px;display:block}.summary-bar.income i{background:var(--brand)}.summary-bar.expense i,.summary-bar.debt i{background:var(--danger)}.summary-bar.balance i{background:var(--accent)}.report-date-presets{flex-wrap:wrap;flex:100%;gap:6px;display:flex}.report-date-preset{font-size:var(--fs-xs);border-radius:var(--r-pill);background:var(--brand-tint);color:var(--brand-strong);border-color:#bcd6f2;padding:3px 12px}.report-date-preset:hover{border-color:var(--brand);color:var(--brand-strong)}.report-date-preset[aria-pressed=true]{border-color:var(--brand);background:var(--brand);color:var(--on-brand)}.report-date-preset[aria-pressed=true]:hover{border-color:var(--brand-strong);background:var(--brand-strong);color:var(--on-brand)}.report-export-error{flex:100%;justify-content:flex-end}.report-date-wrap{background:var(--surface);border:1px solid #d6dee9;min-height:36px;padding:0 8px}.report-date-wrap:focus-within{border-color:var(--brand);box-shadow:var(--ring)}.report-date-wrap input[type=text]{min-width:0;height:100%;min-height:0;color:var(--ink);font-size:var(--fs-sm);background:0 0;border:0;flex:auto;padding:0}.report-date-wrap input[type=text]:focus{box-shadow:none;outline:0}.report-date-wrap:focus-within{border-radius:var(--r-sm);box-shadow:var(--ring)}.report-date-wrap .date-input-button{width:26px;min-width:26px;height:26px;padding:0}.report-layout{grid-template-columns:minmax(0,1fr);display:grid}.report-main{min-width:0}.report-concern-field{max-width:320px;margin-bottom:14px}@media (width>=900px){.report-layout{grid-template-columns:180px minmax(0,1fr);align-items:start;gap:24px}.report-type-nav .page-tabs{border-bottom:0;border-right:1px solid var(--line);box-shadow:none;flex-direction:column;gap:2px;margin:0;padding:0;position:sticky;top:56px;overflow:visible}.report-type-nav .medi-detail-tabs button,.report-type-nav .medi-detail-tabs button+button{text-align:left;border-bottom:0;border-right:2px solid #0000;margin-left:0;padding:0 14px 0 0}.report-type-nav .medi-detail-tabs button[aria-selected=true]{border-right-color:var(--brand)}.report-layout>.business-report-panel{margin-top:0}}.report-tables{gap:22px;display:grid}@media (width>=1100px){.report-tables-horizontal{grid-template-columns:repeat(auto-fit,minmax(420px,1fr));align-items:start}}.report-table-section h4{color:var(--ink-soft);font-size:var(--fs-md);margin:0 0 8px;font-weight:650}.report-total-row td{border-top:2px solid var(--line);background:var(--brand-tint);font-weight:700}.report-row-strong td{font-weight:700}.report-row-child td:first-child{color:var(--muted);padding-left:28px}.report-note{color:var(--muted);font-size:var(--fs-sm);margin:0}@media (width<=720px){.report-total-row{border-color:var(--brand);background:var(--brand-tint)}.report-row-child td:first-child{padding-left:0}}.date-input-wrap{align-items:center;gap:6px;width:100%;display:inline-flex;position:relative}.date-input-button{color:var(--muted);flex:none}.date-input-button[aria-expanded=true]{border-color:var(--brand);background:var(--brand-tint);color:var(--brand-strong)}.date-popover{z-index:40;flex-direction:column;max-width:calc(100vw - 16px);display:flex;position:absolute;top:calc(100% + 6px);left:0}.date-popover[data-side=top]{top:auto;bottom:calc(100% + 6px)}.date-popover[data-align=end]{left:auto;right:0}.date-popover-time{border-top:1px solid var(--line-soft);justify-content:space-between;align-items:center;gap:12px;padding:10px 12px 12px;display:flex}.date-popover-time .date-time-field{color:var(--muted);font-size:var(--fs-xs);align-items:center;gap:8px;font-weight:700;display:flex}.date-time-field input[type=time]{border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface);min-height:34px;color:var(--ink);font-size:var(--fs-md);font-variant-numeric:tabular-nums;transition:border-color var(--ease), box-shadow var(--ease);padding:0 8px;font-weight:600}.date-time-field input[type=time]:hover{border-color:var(--brand)}.date-time-field input[type=time]:focus{border-color:var(--brand);box-shadow:var(--ring);outline:none}.date-popover-done{min-height:34px;padding:0 18px}.date-calendar{flex-direction:column;width:276px;padding:12px 12px 6px;display:flex}.date-calendar-head{grid-template-columns:32px 1fr 32px;align-items:center;gap:8px;margin-bottom:10px;display:grid}.date-calendar-nav{width:32px;min-width:32px;height:32px;padding:0}.date-calendar-nav svg{width:16px;height:16px}.date-calendar-title{justify-content:center;gap:2px;min-width:0;display:flex}.date-calendar-title .aria-select-trigger{width:auto;min-height:32px;color:var(--ink);font-size:var(--fs-md);font-variant-numeric:tabular-nums;background:0 0;border-color:#0000;flex:none;gap:2px;padding:0 6px 0 8px;font-weight:700}.date-calendar-title .aria-select-trigger:hover{background:var(--brand-tint);color:var(--brand-strong)}.date-calendar-title .aria-select-trigger-value{flex:none}.date-calendar-weekdays{border-bottom:1px solid var(--line-soft);color:var(--muted);font-size:var(--fs-2xs);text-align:center;grid-template-columns:repeat(7,36px);margin-bottom:4px;padding-bottom:6px;font-weight:700;display:grid}.date-calendar-weekdays span:last-child,.date-calendar-week>:last-child:not(.is-selected):not(:disabled){color:var(--danger)}.date-calendar-grid{flex-direction:column;gap:2px;display:flex}.date-calendar-week{grid-template-columns:repeat(7,36px);display:grid}.date-calendar-day{border-radius:var(--r-sm);height:36px;color:var(--ink);font-size:var(--fs-sm);font-variant-numeric:tabular-nums;cursor:pointer;transition:background var(--ease), color var(--ease), border-color var(--ease);background:0 0;border:1px solid #0000;justify-content:center;align-items:center;font-weight:500;display:flex;position:relative}.date-calendar-day:hover:not(:disabled){background:var(--brand-tint);color:var(--brand-strong)}.date-calendar-day.is-outside{visibility:hidden}.date-calendar-day.is-today{font-weight:700}.date-calendar-day.is-today:after{content:"";background:var(--accent);height:2px;position:absolute;bottom:4px;left:9px;right:9px}.date-calendar-day.is-selected,.date-calendar-day.is-selected:hover:not(:disabled){background:var(--brand);color:var(--on-brand);font-weight:700}.date-calendar-day:disabled{color:var(--line);cursor:not-allowed}.date-calendar-foot{border-top:1px solid var(--line-soft);justify-content:space-between;align-items:center;margin-top:8px;padding-top:4px;display:flex}.date-calendar-action{min-height:30px;color:var(--brand);font-size:var(--fs-sm);cursor:pointer;transition:background var(--ease), color var(--ease);background:0 0;border:0;padding:0 8px;font-weight:650}.date-calendar-action:hover:not(:disabled){background:var(--brand-tint)}.date-calendar-action.is-quiet{color:var(--muted)}.date-calendar-action.is-quiet:hover:not(:disabled){background:var(--danger-soft);color:var(--danger)}.date-calendar-action:disabled{color:var(--line);cursor:not-allowed}.report-granularity{border:0;flex-wrap:wrap;align-items:center;gap:0 14px;margin:0;padding:0;display:flex}.report-granularity legend{color:var(--muted);font-size:var(--fs-xs);margin:0;padding:0 0 5px;font-weight:650}.report-granularity label{min-height:36px;color:var(--ink-soft);font-size:var(--fs-sm);align-items:center;gap:6px;font-weight:500;display:inline-flex}.report-granularity input[type=radio]{width:24px;height:24px;min-height:24px;accent-color:var(--brand);flex:none;margin:0;padding:0}.report-print-sheet{display:none}@media print{body.business-report-printing>:not(.report-print-sheet){display:none!important}body.business-report-printing .report-print-sheet.is-printing{background:var(--surface);display:block}.report-print-sheet .filter-bar{display:none}}.report-filter-actions{align-items:center;gap:10px;margin-left:auto;display:flex}.report-refresh-button{width:36px;height:36px}.report-refresh-button svg,.report-print-button svg{width:17px;height:17px}.report-print-button{white-space:nowrap;min-height:36px;padding:0 14px}.report-view-toggle{border-radius:var(--r-sm);background:var(--surface);border:1px solid #cbdcf3;display:inline-flex;overflow:hidden}.report-view-toggle button{border:0;border-left:1px solid var(--table-head);width:38px;height:34px;color:var(--brand);transition:background var(--ease), color var(--ease);background:0 0;place-items:center;display:inline-grid}.report-view-toggle button:first-child{border-left:0}.report-view-toggle button:hover{background:#edf5ff}.report-view-toggle button.active,.report-view-toggle button[aria-pressed=true]{background:var(--brand);color:var(--on-brand)}.report-view-toggle svg{width:18px;height:18px}.report-pagination{color:var(--muted);font-size:var(--fs-sm);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-top:12px;padding:0 4px;line-height:1.4;display:flex}.report-pagination .report-pagination-controls{flex-wrap:wrap;align-items:center;gap:8px;display:inline-flex}.report-pagination .report-pagination-controls button{border-radius:var(--r-sm);align-items:center;gap:4px;min-height:32px;padding:0 10px;display:inline-flex}.report-pagination .report-pagination-controls button span,.report-pagination .report-pagination-controls button svg{z-index:1;position:relative}.report-pagination .report-pagination-controls span{color:var(--ink-soft);font-size:var(--fs-xs)}.report-pagination-goto{color:var(--ink-soft);font-size:var(--fs-xs);align-items:center;gap:6px;display:inline-flex}.report-pagination-goto input{border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface);width:56px;min-height:32px;color:var(--ink);padding:0 8px}.report-combo-chart{grid-template-columns:76px minmax(680px,1fr);grid-template-areas:"scale bars"".legend";gap:8px 12px;min-width:0;padding:8px 0 0;display:grid;overflow-x:auto}.report-chart-scale{color:#6f879d;height:220px;font-size:var(--fs-xs);font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap;flex-direction:column;grid-area:scale;justify-content:space-between;margin-top:8px;display:flex}.report-chart-scale span{height:0;line-height:0}.report-chart-bars{background:linear-gradient(#e2e7e3cc 1px,#0000 1px) 0 8px/100% 55px repeat-y;border-bottom:1px solid #b8c1c8;grid-area:bars;grid-auto-columns:minmax(38px,1fr);grid-auto-flow:column;align-items:start;gap:8px;min-width:680px;min-height:268px;padding-top:8px;display:grid}.report-chart-column{grid-template-rows:220px 38px;place-items:end center;min-width:0;display:grid}.report-chart-stack{width:100%;height:220px;position:relative}.report-chart-stack b{border-radius:var(--r-sm) var(--r-sm) 0 0;background:var(--brand);max-width:48px;min-height:0;margin-inline:auto;position:absolute;bottom:0;left:18%;right:18%}.projected-marker{background:#5bb865;max-width:64px;height:2px;margin-inline:auto;position:absolute;left:4%;right:4%;transform:translateY(50%)}.projected-marker:after{content:"";background:#5bb865;border-radius:50%;width:7px;height:7px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.report-chart-column>span{color:var(--muted);font-size:var(--fs-2xs);text-align:center;white-space:nowrap;align-self:start;padding-top:6px;line-height:1.1}.report-chart-legend{color:var(--ink-soft);font-size:var(--fs-xs);flex-wrap:wrap;grid-area:legend;justify-content:center;gap:14px;padding-top:6px;display:flex}.report-chart-legend span,.report-chart-legend i,.report-chart-legend .actual{background:var(--brand)}.report-chart-legend .projected{background:#5bb865}.customer-report-grid{grid-template-columns:minmax(360px,1.5fr) minmax(300px,.85fr);align-items:stretch;gap:12px;min-width:0;display:grid}.customer-report-overview{align-content:start;gap:18px;min-width:0;display:grid}.customer-report-figures{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin:0;display:grid}.customer-report-figures>div{border-left:2px solid var(--line);padding-left:10px}.customer-report-figures dt{color:var(--muted);font-size:var(--fs-xs);font-weight:600}.customer-report-figures dd{color:var(--ink-soft);font-size:var(--fs-lg);font-variant-numeric:tabular-nums;margin:4px 0 0;font-weight:650}.customer-report-block{border-top:1px solid var(--line-soft);gap:14px;min-width:0;padding-top:16px;display:grid}.customer-report-block h4{color:var(--ink-soft);font-size:var(--fs-sm);margin:0;font-weight:650}.customer-top-shares{gap:12px;margin:0;padding:0;list-style:none;display:grid}.customer-top-shares li{font-size:var(--fs-sm);grid-template-columns:minmax(0,1fr) auto minmax(9.5em,auto);align-items:baseline;gap:6px 14px;display:grid}.customer-top-shares span{color:var(--ink-soft);font-weight:600}.customer-top-shares b,.customer-top-shares small{font-variant-numeric:tabular-nums;text-align:right}.customer-top-shares small{color:var(--muted);font-size:var(--fs-sm)}.customer-top-shares li>i{background:var(--line-soft);grid-column:1/-1;height:10px}.customer-top-shares li>i>i{background:var(--brand);height:100%;display:block}.customer-group-chart{min-width:0}.customer-group-chart .pie-chart svg{width:clamp(150px,16vw,200px);height:clamp(150px,16vw,200px)}.customer-revenue-table{border:1px solid var(--table-head);min-width:0}.customer-revenue-table .table-wrap{border:0;border-radius:0}.customer-revenue-table table{min-width:430px}.table-title{background:var(--brand);min-height:36px;color:var(--on-brand);font-size:var(--fs-sm);align-items:center;padding:0 14px;font-weight:700;display:flex}.customer-revenue-table td:last-child,.customer-revenue-table th:last-child{text-align:right;font-variant-numeric:tabular-nums}.report-bars{gap:10px;display:grid}.report-bars-legend{color:var(--ink-soft);font-size:var(--fs-sm);flex-wrap:wrap;gap:4px 16px;margin:0;padding:0;list-style:none;display:flex}.report-bars-legend li{align-items:center;gap:6px;display:inline-flex}.report-bars-legend i{background:var(--brand);border-radius:3px;width:12px;height:12px}.report-bars-legend .is-series-1 i,.report-bars b.is-series-1{background:var(--accent,#c9a063)}.report-bars-row{grid-template-columns:minmax(96px,200px) minmax(0,1fr);align-items:center;gap:4px 12px;display:grid}.report-bars-label{overflow-wrap:anywhere;color:var(--ink);font-size:var(--fs-sm);font-weight:600}.report-bars-figures{gap:4px;display:grid}.report-bars-figure{align-items:center;gap:8px;min-width:0;display:flex}.report-bars-figure b{background:var(--brand);border-radius:3px;min-width:2px;height:14px;display:block}.report-bars-figure b.is-loss{background:var(--danger,#b3402c)}.report-bars-figure span{color:var(--ink-soft);font-size:var(--fs-xs);font-variant-numeric:tabular-nums;flex:none}@media (width<=720px){.report-bars-row{grid-template-columns:minmax(0,1fr)}}.status{border-radius:var(--r-pill);min-height:26px;font-size:var(--fs-xs);white-space:nowrap;align-items:center;gap:6px;padding:0 10px;font-weight:600;display:inline-flex}.status:before{content:"";border-radius:var(--r-pill);opacity:.7;background:currentColor;width:6px;height:6px}.status-finished,.status-completed,.status-paid,.status-signed,.status-posted,.status-active,.status-available,.status-exported,.status-normal{background:var(--success-soft);color:var(--success-strong)}.status-new,.status-requested,.status-pending-signature,.status-unpaid,.status-partial,.status-warning{background:var(--amber);color:var(--warning-strong)}.status-ongoing,.status-in-progress,.status-inprogress,.status-arrived,.status-booked,.status-planned,.status-re-examination{background:var(--brand-tint);color:var(--brand-strong)}.status-reopened,.status-refunded,.status-reversed{background:var(--violet);color:#4b3b8f}.status-cancelled,.status-error,.status-failed{background:var(--rose);color:var(--danger-strong)}.status-draft,.status-unknown,.status-locked,.status-inactive,.status-archived{background:var(--line-soft);color:#566361}.pie-key{gap:10px;margin:0;padding:0;list-style:none;display:grid}.pie-key li{font-size:var(--fs-md);grid-template-columns:10px minmax(0,1fr) auto minmax(5ch,auto);align-items:center;gap:10px;font-weight:600;display:grid}.pie-key i{width:10px;height:10px}.pie-key b,.pie-key small{font-variant-numeric:tabular-nums;text-align:right}.pie-key small{color:var(--muted);font-size:var(--fs-sm);font-weight:500}.pie-chart{flex-wrap:wrap;align-items:center;gap:18px;display:flex}.pie-chart svg{flex:none;width:112px;height:112px;display:block}.pie-chart .pie-key{flex:240px;min-width:240px;max-width:280px}.pie-chart path{stroke:var(--surface);stroke-width:1.4px;stroke-linejoin:round}.split-columns{grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;gap:10px;margin:0;padding:0;list-style:none;display:grid}.split-columns li{text-align:center;font-size:var(--fs-xs);grid-template-rows:auto 96px auto auto;justify-items:center;gap:6px;display:grid}.split-columns b{font-size:var(--fs-md);font-variant-numeric:tabular-nums;grid-row:1}.split-columns i{background:var(--brand);grid-row:2;align-self:end;width:min(100%,40px);min-height:1px}.split-columns-label{color:var(--ink-soft);grid-row:3;font-weight:600}.split-columns small{color:var(--muted);font-size:var(--fs-xs);font-variant-numeric:tabular-nums;grid-row:4}.key-value-list{gap:2px;display:grid}.audit-event-list{max-height:420px;overflow-y:auto}.compact-row{border-bottom:1px solid var(--line-soft);justify-content:space-between;align-items:center;gap:14px;padding:12px 0;display:flex}.setup-progress{flex-wrap:wrap;align-items:center;gap:8px 12px;margin-bottom:12px;display:flex}.setup-progress-track{border-radius:var(--r-pill);background:var(--line-soft);flex:120px;min-width:0;height:8px;overflow:hidden}.setup-progress-fill{border-radius:var(--r-pill);background:var(--brand-strong);height:100%;transition:width .25s}.setup-progress-label{font-size:var(--fs-sm);color:var(--muted);font-weight:600}.setup-done-list{color:var(--success);font-size:var(--fs-sm);flex-wrap:wrap;gap:8px 18px;margin:14px 0 0;padding:0;font-weight:600;list-style:none;display:flex}.setup-done-list li{align-items:center;gap:6px;display:inline-flex}.key-value-list+.table-wrap{margin-top:16px}.admin-table{min-width:0}.admin-table th.admin-table-actions,.admin-table td.admin-table-actions{white-space:nowrap;text-align:right;width:1%}.admin-dialog-actions>p{flex:100%;margin:0}.status-hint+.admin-clinic-layout,.status-hint+.medi-detail-form{margin-top:16px}.admin-clinic-layout{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);align-items:start;gap:20px 28px;display:grid}@media (width<=960px){.admin-clinic-layout{grid-template-columns:minmax(0,1fr)}}.text-danger{color:var(--danger-strong)}.compact-row:last-child{border-bottom:0}.compact-row span,.empty-note span,.cell-empty{color:var(--muted)}.therapy-progress{flex-direction:column;justify-content:flex-start;align-items:stretch;gap:12px}.therapy-progress-head{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.therapy-progress-head h3{font-size:var(--fs-base);color:var(--ink);margin:0;font-weight:700}.therapy-progress-count{font-variant-numeric:tabular-nums;color:var(--brand-dark);font-weight:700}.therapy-progress-bar{border-radius:var(--r-pill);background:var(--line-soft);height:8px;overflow:hidden}.therapy-progress-bar>span{border-radius:inherit;background:var(--success);height:100%;transition:width .3s;display:block}.therapy-progress-stats{grid-template-columns:repeat(3,1fr);gap:8px;margin:0;display:grid}.therapy-progress-stats>div{border:1px solid var(--line-soft);border-radius:var(--r-md);background:var(--surface);flex-direction:column;gap:2px;padding:8px 10px;display:flex}.therapy-progress-stats dt{font-size:var(--fs-2xs);text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.therapy-progress-stats dd{font-size:var(--fs-xl);font-variant-numeric:tabular-nums;color:var(--ink);margin:0;font-weight:750}.therapy-session-list{border:1px solid var(--line-soft);border-radius:var(--r-md);margin:0;padding:0;list-style:none}.therapy-session-row{border-top:1px solid var(--line-soft);grid-template-columns:auto 1fr auto auto;align-items:center;gap:10px;padding:8px 12px;display:grid}.therapy-session-row:first-child{border-top:none}.therapy-session-number{color:var(--ink);font-weight:650}.therapy-session-date{font-variant-numeric:tabular-nums;color:var(--ink-soft)}.therapy-session-note,.therapy-session-service,.therapy-session-performer{font-size:var(--fs-sm);color:var(--muted);grid-column:1/-1;margin:2px 0 0}.therapy-components{font-size:var(--fs-sm);gap:4px;margin:0;padding:0;list-style:none;display:grid}.therapy-components li{justify-content:space-between;gap:12px;display:flex}.therapy-chip{border-radius:var(--r-pill);font-size:var(--fs-xs);white-space:nowrap;grid-column:-2;justify-self:end;padding:2px 9px;font-weight:650}.therapy-session-cancel{color:var(--danger-strong);font:inherit;font-size:var(--fs-sm);cursor:pointer;background:0 0;border:none;padding:0}.therapy-session-cancel:hover{text-decoration:underline}.therapy-chip-done{background:var(--success-soft);color:var(--success-strong)}.therapy-chip-booked{background:var(--brand-tint);color:var(--brand-dark)}.therapy-chip-pending{background:var(--line-soft);color:var(--muted)}.therapy-perform{flex-direction:column;gap:8px;display:flex}.therapy-cap-note{font-size:var(--fs-sm);color:var(--danger-strong);margin:0}.therapy-schedule-advanced{border-top:1px dashed var(--line-soft);flex-direction:column;gap:8px;padding-top:8px;display:flex}.therapy-schedule-toggle{color:var(--brand);font:inherit;cursor:pointer;background:0 0;border:none;align-self:flex-start;align-items:center;gap:6px;padding:0;font-weight:600;display:inline-flex}.therapy-schedule-toggle:hover{color:var(--brand-strong);text-decoration:underline}.therapy-schedule-fields{flex-direction:column;gap:8px;display:flex}.inventory-details{grid-template-columns:minmax(0,1fr);align-items:start;gap:16px;display:grid}.inventory-details td strong,.inventory-details td span{display:block}.inventory-details td span{color:var(--muted);font-size:var(--fs-xs);margin-top:2px}.compact-row strong{margin-bottom:2px;display:block}button.compact-row{border:0;border-bottom:1px solid var(--line-soft);width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;transition:background var(--ease), box-shadow var(--ease);background:0 0}button.compact-row:hover,button.compact-row:focus-visible{box-shadow:inset 3px 0 0 var(--brand);background:#f8fbff}button.compact-row:focus-visible{outline:2px solid var(--brand);outline-offset:-2px}.search-slab{border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface-2);min-height:48px;transition:border-color var(--ease), box-shadow var(--ease);grid-template-columns:20px minmax(0,1fr) auto;align-items:center;gap:10px;padding:0 14px;display:grid}.search-slab:focus-within{border-color:var(--brand);box-shadow:var(--ring)}.search-slab svg{width:18px;height:18px;color:var(--muted)}.search-slab input{text-overflow:ellipsis;min-width:0;color:var(--ink);background:0 0;border:0;outline:0}.search-slab input::-webkit-search-cancel-button{appearance:none}.search-clear{border-radius:var(--r-pill);width:28px;height:28px;color:var(--muted);background:0 0;border:0;flex:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.search-clear:hover{color:var(--ink-soft);background:var(--line-soft)}.search-clear svg{width:14px;height:14px}.money-field-wrap{border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface);width:100%;min-height:44px;transition:border-color var(--ease), box-shadow var(--ease);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:4px;padding:0 4px 0 12px;display:inline-grid}.money-field-wrap:focus-within{border-color:var(--brand);box-shadow:var(--ring)}.money-field-wrap input{width:100%;min-height:100%;color:var(--ink);font:inherit;background:0 0;border:0;padding:0}.money-field-wrap input:focus{box-shadow:none;outline:none}.inventory-filter-checkbox{white-space:nowrap;align-items:center;gap:8px;min-height:36px;display:inline-flex}.inventory-filter-checkbox input[type=checkbox],.inventory-filter-checkbox input[type=radio]{width:24px;min-width:24px;height:24px;min-height:24px;accent-color:var(--brand);flex:none;margin:0;padding:0}.stock-cost-method{border:0;gap:4px;margin:12px 0 0;padding:0;display:grid}.stock-cost-method legend{padding:0;font-weight:600}.stock-toolbar{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px 14px;display:flex}.stock-toolbar>.search-slab{flex:160px;min-width:0}.stock-toolbar>.status-hint{margin:0 auto 0 0}.column-chooser{position:relative}.column-chooser>summary{cursor:pointer;border:1px solid var(--line);border-radius:8px;padding:8px 12px;list-style:none}.column-chooser>summary::-webkit-details-marker{display:none}.column-chooser[open]>.checkbox-label{background:var(--surface);border:1px solid var(--line);gap:8px;padding:6px 12px;display:flex}.stock-toolbar-row{margin-bottom:12px}.panel-toolbar:has(>.stock-toolbar){max-width:620px}@media (width<=640px){.stock-toolbar{justify-content:flex-start}}.filter-bar{flex-wrap:wrap;align-items:flex-end;gap:10px 12px;margin-bottom:12px;display:flex}.filter-field{min-width:140px;max-width:240px;color:var(--muted);font-size:var(--fs-xs);flex:150px;grid-template-columns:minmax(0,1fr);gap:5px;font-weight:650;display:grid}.filter-field-wide{flex-basis:220px;max-width:280px}.filter-field .aria-select-trigger,.filter-field>input{min-height:36px;font-size:var(--fs-sm)}.filter-field>input{border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface);width:100%;color:var(--ink);padding:0 10px;font-weight:400}.filter-field>input:focus{border-color:var(--brand);box-shadow:var(--ring);outline:none}.filter-reset{min-height:36px}@media (width<=480px){.filter-field,.filter-field-wide{flex-basis:140px;max-width:none}.filter-field-wide{flex-basis:100%}}.empty-note{border-radius:var(--r-sm);background:var(--brand-tint);color:var(--ink-soft);font-size:var(--fs-md);align-items:flex-start;gap:10px;margin-top:14px;padding:14px;display:flex}.empty-note svg{width:18px;height:18px;color:var(--brand-strong);flex:none;margin-top:1px}.therapy-list{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;display:grid}.workflow-card{border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);transition:border-color var(--ease), background var(--ease);gap:10px;padding:16px;display:grid}.workflow-card:hover{border-color:var(--brand);background:var(--surface-2)}.workflow-card>div span{color:var(--muted);font-size:var(--fs-2xs);font-weight:600}.workflow-card strong{margin-top:2px;display:block}.workflow-card p{color:var(--ink-soft);font-size:var(--fs-md);margin:0}.workflow-card footer{border-top:1px solid var(--line-soft);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px 10px;padding-top:12px;display:grid}.workflow-card footer>:nth-child(odd){justify-self:start}.workflow-card footer>:nth-child(2n){justify-self:end}.workflow-card footer span{color:var(--muted);font-size:var(--fs-sm)}.workflow-card footer strong{color:var(--brand-dark)}.therapy-overdue{font-weight:600}td .therapy-overdue{margin-left:8px}.therapy-perform,.therapy-schedule-fields{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:8px 12px;display:grid}.therapy-perform>.medi-detail-field,.therapy-schedule-fields>.medi-detail-field{grid-column:auto}.therapy-perform-button{align-self:end}.therapy-perform-day{grid-column:1/-1;max-width:220px}.therapy-perform-performer{grid-column:1/-1;max-width:320px}.therapy-cap-note{grid-column:1/-1}.therapy-booked-toggle{display:none}@media (width<=720px){.therapy-booked-toggle{min-height:44px;display:inline-flex}#therapy-booked-sessions[data-collapsed]{display:none}.medi-detail-form.therapy-detail-form{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-flow:dense}.medi-detail-form.therapy-detail-form>.medi-detail-field{grid-column:auto}.medi-detail-form.therapy-detail-form>.medi-detail-field-wide{grid-column:1/-1}.therapy-perform,.therapy-schedule-fields{grid-template-columns:minmax(0,1fr)}.therapy-perform-day,.therapy-perform-performer{max-width:none}}@media (width<=359px){.medi-detail-form.therapy-detail-form{grid-template-columns:minmax(0,1fr)}.medi-detail-form.therapy-detail-form>.medi-detail-field{grid-column:1/-1}}.status-hint{color:var(--muted);font-size:var(--fs-sm);margin:8px 0 0}.clinic-hours,.clinic-bank{border:1px solid var(--line);border-radius:var(--r-md);margin:16px 0 0;padding:12px 14px 14px}.clinic-hours>legend,.clinic-bank>legend{font-weight:600;font-size:var(--fs-md);padding:0 6px}.clinic-hours-row{grid-template-columns:minmax(0,120px) auto minmax(0,120px) auto;justify-content:start;align-items:center;gap:8px 10px;margin-top:8px;display:grid}.clinic-hours-row input[type=time],.clinic-hours-slot input[type=number]{border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface);min-height:36px;color:var(--ink);font-size:var(--fs-sm);padding:0 10px}.clinic-hours-row input[type=time]:focus,.clinic-hours-slot input[type=number]:focus{border-color:var(--brand);box-shadow:var(--ring);outline:none}.clinic-hours-slot{flex-wrap:wrap;align-items:center;gap:8px 10px;margin-top:12px;display:flex}.clinic-hours-slot input[type=number]{width:88px}.clinic-bank .checkbox-label{margin-top:12px}.temp-password-row{flex-wrap:wrap;align-items:center;gap:8px;margin:4px 0 6px;display:flex}.temp-password-value{border:1px solid var(--line);border-radius:var(--r-sm);background:var(--brand-tint);color:var(--brand-strong);font-family:var(--mono);letter-spacing:.03em;padding:2px 8px;font-weight:650}.dialog-panel p[role=alert],.page-grid>p[role=alert],.workspace>p[role=alert]{border:1px solid var(--danger-line);border-left:3px solid var(--danger);border-radius:var(--r-sm);background:var(--danger-soft);color:var(--danger-strong);font-size:var(--fs-md);margin:0 0 16px;padding:12px 14px 12px 42px;font-weight:500;line-height:1.45;position:relative}.dialog-panel p[role=alert]:before,.page-grid>p[role=alert]:before,.workspace>p[role=alert]:before{content:"!";background:var(--danger);width:18px;height:18px;color:var(--on-brand);font-size:var(--fs-2xs);border-radius:50%;place-items:center;font-weight:800;line-height:1;display:grid;position:absolute;top:13px;left:14px}.page-grid>p[role=alert],.workspace>p[role=alert]{margin:0}.module-error{border-radius:var(--r-sm);background:var(--rose);color:var(--danger-strong);border:1px solid #8f382b2e;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:14px 16px;display:flex}.module-error-message{font-size:var(--fs-md);align-items:center;gap:10px;font-weight:500;display:flex}.module-error-message svg{flex:none;width:18px;height:18px}.dialog-backdrop{z-index:40;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0f1a1885;place-items:center;padding:20px;display:grid;position:fixed;inset:0;overflow-y:auto}.shell-prompt-backdrop{z-index:50}.dialog-panel{--dialog-pad:22px;width:min(94vw,720px);max-height:min(92dvh,760px);padding:var(--dialog-pad);border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);box-shadow:var(--shadow-lg);overflow-y:auto}.dialog-panel--wide{width:min(96vw,1080px);max-height:min(94dvh,920px)}.dialog-header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px;display:flex}.dialog-header p,.dialog-header h2{margin:0}.dialog-header p{color:var(--muted);font-size:var(--fs-xs);letter-spacing:var(--tracking-caps);text-transform:uppercase;font-weight:700}.dialog-header h2{font-size:var(--fs-xl)}.dialog-header-actions{flex:none;align-items:center;gap:8px;display:flex}.medi-detail-backdrop{-webkit-backdrop-filter:none;backdrop-filter:none;background:#080e128f}.medi-detail-dialog{border-color:var(--line);border-radius:var(--r-sm);width:min(760px,100vw - 32px);max-height:min(88dvh,720px);transition:width var(--ease), max-height var(--ease);flex-direction:column;padding:0;display:flex;overflow:hidden auto}.medi-detail-dialog.is-fullscreen{width:auto;max-width:1400px;height:auto;max-height:none;margin-inline:auto;position:fixed;inset:16px}.medi-detail-label{flex-wrap:wrap;align-items:center;display:inline-flex}.label-hint-row{align-items:center;display:flex}.card-scope-field{border:0;grid-column:1/-1;gap:8px;margin:0;padding:0;display:grid}.card-scope-field legend{font-weight:600;font-size:var(--fs-sm);margin-bottom:4px;padding:0}.checkbox-label{font-size:var(--fs-sm);align-items:center;gap:8px;display:flex}.info-hint{vertical-align:middle;margin-left:6px;display:inline-flex;position:relative}.info-hint-trigger{width:16px;height:16px;color:var(--brand);cursor:help;background:0 0;border:0;border-radius:50%;justify-content:center;align-items:center;padding:0;line-height:0;display:inline-flex;position:relative}.info-hint-trigger:before{content:"";position:absolute;inset:-6px}.info-hint-trigger:hover,.info-hint-trigger:focus-visible{color:var(--brand-strong)}.info-hint-trigger:focus-visible{outline:2px solid var(--brand);outline-offset:1px}.info-hint-tip{z-index:100;border-radius:var(--r-sm);background:var(--brand-strong);width:max-content;max-width:min(280px,100vw - 16px);color:var(--on-brand);font-size:var(--fs-xs);text-transform:none;letter-spacing:normal;white-space:normal;opacity:0;visibility:hidden;pointer-events:none;padding:8px 10px;font-weight:400;line-height:1.45;transition:opacity .12s,visibility .12s;position:fixed;top:0;left:0;box-shadow:0 4px 14px #11498a38}.info-hint-tip.is-open{opacity:1;visibility:visible;pointer-events:auto}.info-hint-tip:after{content:"";left:var(--arrow-x,50%);border:5px solid #0000;position:absolute;transform:translate(-50%)}.info-hint-tip[data-placement=top]:after{border-top-color:var(--brand-strong);top:100%}.info-hint-tip[data-placement=bottom]:after{border-bottom-color:var(--brand-strong);bottom:100%}.page-tabs{z-index:20;background:var(--surface);margin-top:14px;padding-inline:16px;position:sticky;top:44px;box-shadow:0 6px 10px -8px #11201e47}.workspace>.page-tabs{margin:0 -16px;padding-inline:16px}@media (width<=860px){.page-tabs{top:54px}}html{--stick-top:44px;scroll-padding-top:calc(var(--stick-top) + 8px)}html:has(.page-tabs){--stick-top:87px}@media (width<=860px){html{--stick-top:54px}html:has(.page-tabs){--stick-top:97px}}@media (width<=480px){.page-tabs{padding-inline:12px}}.logout-confirm-panel{width:min(94vw,420px)}.medi-detail-header{border-bottom:1px solid var(--line-soft);background:#f7faff;flex:none;justify-content:space-between;align-items:center;gap:16px;min-height:54px;padding:12px 16px;display:flex}.medi-detail-header-actions{flex:none;align-items:center;gap:8px;display:flex}.medi-detail-header h2{color:var(--brand);font-size:var(--fs-lg);letter-spacing:0;margin:0;font-weight:600}.medi-detail-tabs{border-bottom:1px solid var(--line);background:var(--surface);flex-wrap:nowrap;flex:none;gap:8px;padding:0 16px;display:flex;overflow-x:auto}.medi-detail-tabs button{min-height:42px;color:var(--muted);font-size:var(--fs-sm);white-space:nowrap;background:0 0;border:0;border-bottom:2px solid #0000;flex:none;padding:0;font-weight:600;position:relative}.medi-detail-tabs button+button{margin-left:14px}.medi-detail-tabs button[aria-selected=true]{border-bottom-color:var(--brand);color:var(--brand)}.medi-detail-tabs button:focus-visible{outline:none}.medi-detail-tabs button:focus-visible:before{content:"";border:2px solid var(--brand);border-radius:var(--r-sm);pointer-events:none;position:absolute;inset:6px -7px}.page-tabs button .page-tab-dirty{vertical-align:middle;background:var(--gold);border-radius:50%;width:7px;height:7px;margin-left:6px;display:inline-block}.medi-detail-tab-panel{background:var(--surface);flex:auto;min-height:0;padding:14px 16px 18px;overflow-y:auto}.medi-detail-dialog>.medi-detail-form{flex:auto;min-height:0;padding:14px 16px 18px;overflow-y:auto}.medi-detail-body{flex:auto;min-height:0;overflow-y:auto}.medi-detail-body>.medi-detail-form{align-items:start;padding:14px 16px 18px}.medi-detail-body>.dialog-actions:not(.encounter-lifecycle-actions){border-top:1px solid var(--line-soft);padding:16px}.medi-detail-body>.encounter-lifecycle-actions{padding-inline:16px}.medi-detail-form{grid-template-columns:repeat(6,minmax(0,1fr));gap:11px 12px;display:grid}.medi-detail-form>label,.medi-detail-field{min-width:0;color:var(--muted);font-size:var(--fs-xs);grid-column:span 2;gap:5px;font-weight:600;display:grid}.medi-detail-field-wide{grid-column:span 4}.employee-photo-field-body{align-items:flex-start;gap:14px;display:flex}.employee-photo-preview{border-radius:var(--r-md);border:1px solid var(--line);width:84px;height:105px;color:var(--muted);background:#eef2f6;flex:none;justify-content:center;align-items:center;display:flex;overflow:hidden}.employee-photo-preview img{object-fit:cover;width:100%;height:100%}.employee-photo-field-actions{flex-direction:column;gap:8px;min-width:0;font-weight:400;display:flex}.employee-photo-field-buttons{flex-wrap:wrap;gap:8px;display:flex}.employee-photo-crop-dialog{max-width:420px}.employee-photo-crop-stage{border-radius:var(--r-md);background:#111;width:100%;height:360px;position:relative;overflow:hidden}.employee-photo-crop-zoom{font-size:var(--fs-sm);color:var(--muted);align-items:center;gap:10px;margin-top:12px;display:flex}.employee-photo-crop-zoom input[type=range]{flex:1}.medi-detail-form--top{align-items:start}@media (width>=721px){.medi-detail-form--top>label.medi-detail-field-wide{grid-column:span 4}}.medi-detail-field label{align-items:center;min-width:0;display:inline-flex}.medi-detail-field label.medi-detail-field{display:grid}.medi-detail-field em{color:var(--danger);margin-left:3px;font-style:normal}.medi-detail-form>label input,.medi-detail-field input:not(:where(.aria-combobox-input)),.medi-detail-value{border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface);width:100%;min-height:34px;color:var(--ink-soft);font-size:var(--fs-sm);padding:0 9px;font-weight:400}.medi-detail-value{overflow-wrap:anywhere;background:var(--surface-2);color:var(--ink-soft);align-items:center;display:flex}.medi-detail-value.is-placeholder{color:var(--muted)}.medi-detail-form>label input:focus,.medi-detail-field input:not(:where(.aria-combobox-input)):focus{border-color:var(--brand);box-shadow:var(--ring);outline:none}.medi-detail-date-wrap{border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface-2);grid-template-columns:minmax(0,1fr) 18px;align-items:center;gap:8px;min-height:34px;padding-right:9px;display:grid;position:relative}.medi-detail-date-editable{background:var(--surface);grid-template-columns:minmax(0,1fr) 32px}.medi-detail-date-wrap:focus-within{border-color:var(--brand);box-shadow:var(--ring)}.medi-detail-date-wrap input{min-height:32px;box-shadow:none;border:0}.medi-detail-date-wrap .medi-detail-value{background:0 0;border:0;min-height:32px;padding-right:0}.medi-detail-date-wrap input:focus{box-shadow:none}.medi-detail-date-wrap svg{width:16px;height:16px;color:var(--muted)}.medi-detail-date-button{width:32px;min-width:32px;height:32px;padding:0}.medi-detail-money-wrap{border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface);grid-template-columns:minmax(0,1fr) 28px;align-items:center;gap:4px;min-height:34px;padding-right:4px;display:grid}.medi-detail-money-wrap:focus-within{border-color:var(--brand);box-shadow:var(--ring)}.medi-detail-money-wrap input{min-height:32px;box-shadow:none;border:0}.medi-detail-money-wrap input:focus{box-shadow:none}.medi-detail-field textarea{border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface);width:100%;min-height:110px;color:var(--ink-soft);font-size:var(--fs-sm);resize:vertical;min-width:0;padding:9px;font-weight:400}.medi-detail-field textarea[rows]{min-height:0}.medi-detail-field textarea:focus{border-color:var(--brand);box-shadow:var(--ring);outline:none}.medi-detail-field textarea:disabled{color:var(--ink-soft);-webkit-text-fill-color:var(--ink-soft);background:var(--surface-2);opacity:1}.medi-detail-collapse{border-top:1px solid var(--line-soft);margin-top:12px}.medi-detail-form>.medi-detail-collapse{grid-column:1/-1}.medi-detail-collapse summary{color:#445452;cursor:pointer;min-height:48px;font-size:var(--fs-lg);justify-content:space-between;align-items:center;font-weight:600;list-style:none;display:flex}.medi-detail-collapse summary::-webkit-details-marker{display:none}.medi-detail-collapse summary svg{width:18px;height:18px;color:var(--muted);transition:transform var(--ease);transform:rotate(90deg)}.medi-detail-collapse[open] summary svg{transform:rotate(-90deg)}.encounter-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 16px;display:grid}.encounter-form label{color:var(--ink-soft);font-size:var(--fs-sm);letter-spacing:.01em;gap:7px;font-weight:600;display:grid}.encounter-form>label,label.sales-line-search{display:block}.encounter-form label>em,.encounter-form .field-label>em,.dialog-actions label>em,.medi-detail-form label>em{color:var(--danger);white-space:nowrap;margin-left:3px;font-style:normal;font-weight:600;display:inline-block}.encounter-form input:not(:where(.aria-combobox-input)),.encounter-form textarea{border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface);width:100%;min-height:44px;color:var(--ink);transition:border-color var(--ease), box-shadow var(--ease);padding:0 12px}.encounter-form>label>input,.encounter-form>label>textarea,.encounter-form>label>.field-error{margin-top:6px;display:block}.encounter-form>label>.form-date-wrap,.encounter-form>label>.form-money-wrap,.encounter-form>label>.form-icon-wrap,.form-section>label>.form-date-wrap,.form-section>label>.form-money-wrap,.form-section>label>.form-icon-wrap{margin-top:6px;display:block;position:relative}.encounter-form .aria-select-trigger{min-height:44px;margin-top:6px}.encounter-form :is(.create-combo-field,.catalog-item-unit-field) .aria-select-trigger{margin-top:0}.form-date-wrap input[type=text]{padding-right:44px}.form-date-wrap .date-input-button{width:44px;height:100%;min-height:44px;color:var(--muted);padding:0;position:absolute;top:0;right:0}.form-icon-wrap{display:block;position:relative}.form-icon-wrap>svg{color:var(--muted);pointer-events:none;position:absolute;top:50%;right:13px;transform:translateY(-50%)}.encounter-form .form-icon-wrap>input{padding-right:42px}.form-icon-wrap:has(input:disabled)>svg{color:var(--placeholder)}.form-money-wrap input{padding-right:36px}.form-money-wrap .search-clear{position:absolute;top:50%;right:6px;transform:translateY(-50%)}.encounter-form input:not(:where(.aria-combobox-input)):hover:not(:focus):not([aria-invalid=true]),.encounter-form textarea:hover:not(:focus):not([aria-invalid=true]){border-color:#c7d0cb}.encounter-form input:not(:where(.aria-combobox-input)):focus,.encounter-form textarea:focus{border-color:var(--brand);box-shadow:var(--ring);outline:none}.encounter-form textarea{resize:vertical;min-height:88px;padding-top:10px}.encounter-form input:not(:where(.aria-combobox-input))[aria-invalid=true],.encounter-form textarea[aria-invalid=true]{border-color:var(--danger);box-shadow:inset 3px 0 0 var(--danger);background:var(--field-invalid-bg)}.encounter-form input:not(:where(.aria-combobox-input))[aria-invalid=true]:focus,.encounter-form textarea[aria-invalid=true]:focus{border-color:var(--danger);box-shadow:inset 3px 0 0 var(--danger), 0 0 0 3px var(--danger-line)}.encounter-form .money-field-wrap input:not(:where(.aria-combobox-input)),.encounter-form .money-field-wrap input:not(:where(.aria-combobox-input)):focus,.encounter-form .money-field-wrap input:not(:where(.aria-combobox-input))[aria-invalid=true],.encounter-form .money-field-wrap input:not(:where(.aria-combobox-input))[aria-invalid=true]:focus{min-height:100%;box-shadow:none;background:0 0;border:0;padding:0}.money-field-wrap:has(input[aria-invalid=true]){border-color:var(--danger);box-shadow:inset 3px 0 0 var(--danger);background:var(--field-invalid-bg)}.field-error{color:var(--danger-strong);font-size:var(--fs-xs);align-items:center;gap:6px;font-weight:500;display:inline-flex}.field-error:before{content:"!";vertical-align:-2px;background:var(--danger);width:14px;height:14px;color:var(--on-brand);border-radius:50%;flex:none;place-items:center;margin-right:6px;font-size:.6rem;font-weight:800;line-height:1;display:inline-grid}.dialog-backdrop.customer-drawer-backdrop{-webkit-backdrop-filter:none;backdrop-filter:none;background:#080e1252;justify-content:flex-end;padding:0;display:flex}.dialog-panel.customer-drawer{border-width:0 0 0 1px;border-radius:0;flex-direction:column;width:min(560px,100vw);max-width:none;height:100dvh;max-height:none;padding:0;display:flex}.customer-drawer .medi-detail-tab-panel{flex:auto;padding:12px 16px 16px;overflow-y:auto}.appointment-patient-card .link-button{color:var(--brand);text-underline-offset:3px;cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline}.sale-plans h3{font-size:var(--fs-sm);margin:0 0 6px}.sale-plans ul{gap:6px;margin:0;padding:0;list-style:none;display:grid}.sale-plans li{justify-content:space-between;align-items:center;gap:8px;display:flex}.sale-plan-name{display:grid}.sale-plans li:has(>.sale-plan-services){flex-wrap:wrap}.sale-plan-services{flex-basis:100%;padding-left:12px}.aria-select-field{display:contents}.aria-select-field>.aria-select-label{align-items:center;min-width:0;display:inline-flex}.aria-select-field>.aria-select-label em{color:var(--danger);margin-left:3px;font-style:normal}.aria-select-trigger{border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface);width:100%;min-height:34px;color:var(--ink);font-size:var(--fs-sm);text-align:left;cursor:pointer;transition:border-color var(--ease), box-shadow var(--ease);align-items:center;gap:6px;padding:0 9px;font-weight:400;display:flex}.aria-select-trigger:hover{border-color:var(--brand)}.aria-select-trigger:focus-visible,.aria-select-trigger[data-focus-visible],.aria-select-trigger[data-focus-within],.aria-select-trigger[aria-expanded=true]{border-color:var(--brand);box-shadow:var(--ring);outline:none}.aria-select-trigger:disabled,.aria-select-trigger[data-disabled]{background:var(--surface-2);color:var(--muted);cursor:not-allowed}.aria-select-trigger-value{white-space:nowrap;text-overflow:ellipsis;flex:auto;min-width:0;overflow:hidden}.aria-select-trigger-value[data-placeholder=true]{color:var(--placeholder)}.aria-select-caret{color:var(--muted);transition:transform var(--ease);flex:none}.aria-select-trigger[aria-expanded=true] .aria-select-caret{transform:rotate(180deg)}.aria-combobox-input{min-width:0;color:inherit;font:inherit;text-overflow:ellipsis;background:0 0;border:0;flex:auto;padding:0}.aria-combobox-input:focus{box-shadow:none;outline:none}.aria-select-caret-btn{cursor:pointer;color:inherit;background:0 0;border:0;flex:none;align-items:center;padding:0;display:inline-flex}.aria-select-popover{z-index:60;width:var(--trigger-width,auto);min-width:160px;max-width:calc(100vw - 32px);overflow:hidden}.aria-select-listbox{outline:none;max-height:260px;padding:4px;overflow-y:auto}.aria-select-option{border-radius:var(--r-sm);color:var(--ink-soft);font-size:var(--fs-sm);cursor:pointer;transition:background var(--ease), color var(--ease);outline:none;align-items:center;padding:7px 9px;display:flex}.aria-select-option-label{flex:auto;min-width:0}.aria-select-option-detail{color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap;flex:none;margin-left:16px}@media (width<=520px){.aria-select-option{flex-wrap:wrap}.aria-select-option-detail{font-size:var(--fs-xs);white-space:normal;flex-basis:100%;margin-top:2px;margin-left:0}}.aria-select-option[data-hovered=true],.aria-select-option[data-focused=true]{background:var(--line-soft);color:var(--ink)}.aria-select-option[data-focus-visible=true]{box-shadow:inset 0 0 0 2px var(--brand)}.aria-select-option[data-selected=true]{background:var(--brand-tint);color:var(--brand-strong);font-weight:600}.aria-select-option[data-selected=true] .aria-select-option-detail{color:inherit}.aria-select-option[data-disabled=true]{color:var(--muted);cursor:not-allowed}.aria-select-search{border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface-2);align-items:center;gap:6px;margin:4px 4px 0;padding:0 8px;display:flex}.aria-select-search-icon{color:var(--muted);flex:none}.aria-select-search-input{min-width:0;height:32px;color:inherit;font:inherit;background:0 0;border:0;flex:auto}.aria-select-search-input:focus{outline:none}.aria-select-search:focus-within{border-color:var(--brand);box-shadow:var(--ring)}.aria-select-empty{color:var(--muted);font-size:var(--fs-sm);text-align:center;margin:0;padding:10px 9px}.encounter-form>.catalog-item-unit-field,.create-combo-field{color:var(--ink-soft);font-size:var(--fs-sm);letter-spacing:.01em;gap:7px;font-weight:600;display:grid}.form-alert{border:1px solid var(--danger-line);border-left:3px solid var(--danger);border-radius:var(--r-sm);background:var(--danger-soft);color:var(--danger-strong);font-size:var(--fs-md);align-items:center;gap:10px;margin:0 0 12px;padding:11px 14px;font-weight:500;display:flex}.form-wide{grid-column:1/-1}.sales-line-cell-label{font-size:var(--fs-xs);color:var(--ink-soft);font-weight:600}.sales-line-cell{flex-direction:column;gap:6px;display:flex}.sale-line-extras-grid .sales-line-staff{flex:1.4 220px}.staff-chips{flex-wrap:wrap;align-content:center;align-items:center;gap:4px;min-height:44px;display:flex}.staff-chip{border:1px solid var(--line);border-radius:var(--r-pill);background:var(--surface-2);max-width:100%;color:var(--ink);font-size:var(--fs-sm);overflow-wrap:anywhere;align-items:center;gap:2px;padding:2px 2px 2px 8px;display:inline-flex}.staff-chip-coefficient{border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface);width:6ch;min-width:0;min-height:0;color:var(--ink);font-size:var(--fs-sm);text-align:center;padding:0 4px}.staff-chip-amount{width:10ch}.staff-chip-remove,.staff-chip-add{border-radius:var(--r-sm);color:var(--muted);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;display:inline-flex}.staff-chip-remove{width:20px;height:20px;padding:0;position:relative}.staff-chip-remove:before{content:"";position:absolute;inset:-8px}.staff-chip-remove:hover{color:var(--danger-strong)}.staff-chip-add{border:1px dashed var(--line);min-height:28px;font-size:var(--fs-sm);gap:4px;padding:0 8px}.staff-chip-add:hover,.staff-chip-add[data-focus-visible],.staff-chip-add[aria-expanded=true]{border-color:var(--brand);color:var(--brand)}.sales-line-picker-cell{flex-direction:column;gap:6px;min-width:0;display:flex}.sales-line-discount-controls{gap:6px;margin-top:6px;display:flex}.sales-line-discount-controls input{flex:auto;min-width:0}.sales-line-discount-unit-toggle{border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface-2);min-height:38px;color:var(--ink-soft);font-weight:700;font-size:var(--fs-sm);cursor:pointer;flex:0 0 52px}.sales-line-discount-unit-toggle:hover{border-color:var(--brand);color:var(--brand)}.sales-line-price-override{color:var(--gold);font-size:var(--fs-xs);margin-top:4px;font-weight:600;display:block}.sales-line-kind-badge{border-radius:var(--r-pill);background:var(--surface-2);color:var(--ink-soft);align-self:flex-start;padding:1px 6px;font-weight:600}.sales-line-change{min-height:28px;font-size:var(--fs-xs);align-self:flex-start;padding:2px 8px}.sales-line-empty{color:var(--muted);font-size:var(--fs-xs);margin:4px 0 0}.sales-line-search{position:relative}.sales-line-suggestions{z-index:5;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface);box-shadow:var(--shadow-lg);max-height:220px;margin:4px 0 0;padding:4px;list-style:none;position:absolute;top:100%;left:0;right:0;overflow-y:auto}.sales-line-suggestions li+li{margin-top:2px}.sales-line-suggestions button{border-radius:var(--r-sm);text-align:left;cursor:pointer;background:0 0;border:none;flex-direction:column;gap:2px;width:100%;padding:6px 8px;display:flex}.sales-line-suggestions button:hover,.sales-line-suggestions button:focus-visible,.sales-line-suggestions button.is-highlighted{background:#f8fbff}.sales-line-suggestions span{color:var(--muted);font-size:var(--fs-xs);font-weight:500}.receipt-context{color:var(--ink-soft);font-size:var(--fs-sm);overflow-wrap:anywhere;margin:5px 0 0}.medi-detail-body>.receipt-staff{padding:0 16px}.receipt-staff{gap:6px;margin-top:14px;display:grid}.receipt-staff h3{color:var(--ink-soft);font-size:var(--fs-sm);margin:0;font-weight:600}.receipt-staff ul{gap:4px;margin:0;padding:0;list-style:none;display:grid}.receipt-staff li{font-size:var(--fs-md);flex-wrap:wrap;gap:4px 12px;display:flex}.receipt-staff li>span{color:var(--ink-soft);flex-wrap:wrap;gap:4px 12px;display:inline-flex}.receipt-staff-edit{flex:1 0 100%;gap:10px;padding:10px 0 4px;display:grid}.receipt-staff-edit .sales-line-cell{max-width:420px}.receipt-return-dialog .medi-detail-body{gap:12px;display:grid}.receipt-return-lines{border-collapse:collapse;width:100%;font-size:var(--fs-md)}.receipt-return-lines th,.receipt-return-lines td{text-align:left;border-bottom:1px solid var(--line);padding:6px 8px}.receipt-return-lines input{width:72px}.receipt-return-fee,.receipt-return-methods label{flex-wrap:wrap;align-items:center;gap:4px 12px;display:flex}.receipt-return-methods{border:1px solid var(--line);border-radius:8px;gap:6px;margin:0;padding:8px 12px;display:grid}.receipt-return-total{font-size:var(--fs-md);margin:0}.dialog-backdrop.sales-workspace-backdrop{background:var(--surface);-webkit-backdrop-filter:none;backdrop-filter:none;padding:0;display:block;overflow:hidden}.dialog-panel.sales-workspace{width:100vw;max-width:none;height:100dvh;max-height:none;box-shadow:none;border:0;border-radius:0;flex-direction:column;padding:0;display:flex;overflow:hidden}.sales-workspace-header{border-bottom:1px solid var(--line);background:var(--surface-2);flex:none;align-items:stretch;gap:12px;padding:0 8px 0 16px;display:flex}.sales-workspace-header h2{font-size:var(--fs-lg);align-self:center;margin:0}.sales-workspace-close{flex:none;align-self:center}.sale-tabs{flex:auto;align-items:stretch;min-width:0;display:flex;overflow-x:auto}.sale-tab{color:var(--ink-soft);border-bottom:3px solid #0000;flex:none;align-items:center;display:flex}.sale-tab.is-active{border-bottom-color:var(--brand);background:var(--surface);color:var(--ink);font-weight:700}.sale-tab-label,.sale-tab-close,.sale-tab-add{color:inherit;font:inherit;cursor:pointer;background:0 0;border:0}.sale-tab-label{min-height:48px;padding:0 4px 0 14px}.sale-tab-close{border-radius:var(--r-sm);width:28px;height:28px;color:var(--muted);justify-content:center;align-items:center;margin-right:6px;display:inline-flex}.sale-tab-close:hover{background:var(--line-soft);color:var(--danger-strong)}.sale-tab-add{width:44px;color:var(--brand);flex:none;justify-content:center;align-items:center;display:inline-flex}.sale-tab-add:hover{background:var(--line-soft)}.sales-workspace-confirm,.sales-workspace>.form-alert{flex:none;margin:12px 16px 0}.key-hint{border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface-2);color:var(--muted);font:inherit;font-size:var(--fs-xs);flex:none;padding:0 6px;font-weight:600;line-height:1.5}.primary-button>.key-hint,.ghost-button>.key-hint{margin-left:4px}.primary-button>.key-hint{color:inherit;opacity:.8;background:0 0;border-color:currentColor}@media (pointer:coarse){.key-hint{display:none}}.sales-workspace-body{flex:auto;grid-template-columns:minmax(0,1fr) minmax(320px,420px);gap:16px;min-height:0;padding:16px;display:grid}.sales-workspace-main,.sales-workspace-side{flex-direction:column;gap:12px;min-width:0;min-height:0;display:flex}.sale-lines-scroll{border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface);flex:auto;min-height:120px;overflow:auto}.sale-lines{border-collapse:collapse;width:100%;min-width:640px}.sale-lines th{z-index:1;border-bottom:1px solid var(--line);background:var(--surface-2);color:var(--ink-soft);font-size:var(--fs-xs);text-align:left;padding:8px;font-weight:700;position:sticky;top:0}.sale-lines td{vertical-align:top;padding:8px}.sale-line{border-bottom:1px solid var(--line-soft)}.sale-line-ordinal{width:40px;color:var(--muted)}.sale-line-name{overflow-wrap:anywhere;flex-direction:column;gap:2px;min-width:150px;display:flex}.sale-line-meta{color:var(--muted);font-size:var(--fs-xs);flex-wrap:wrap;align-items:center;gap:4px 8px;display:flex}.sale-line-quantity{width:150px}.sale-quantity-stepper{align-items:center;gap:2px;display:flex}.sale-quantity-stepper input{text-align:center;min-width:0;min-height:36px;padding:0 4px}.sale-quantity-stepper .icon-button{flex:none;min-height:36px}.sale-line-price,.sale-line-discount{width:150px}.sale-line-price input,.sale-line-discount input{min-height:36px}.sale-line-discount .sales-line-discount-controls,.sale-line-price .money-field-wrap{margin-top:0}.sale-line-discount .sales-line-discount-unit-toggle{min-height:36px}.sale-line-total{text-align:right;white-space:nowrap;width:120px}.sale-line-remove{text-align:right;width:44px}.sale-line-extras td{padding-top:0}.sale-line-extras-grid{border-radius:var(--r-sm);background:var(--surface-2);flex-wrap:wrap;align-items:start;gap:8px 16px;padding:8px;display:flex}.sale-line-extras-grid:empty{display:none}.sale-line-extras-grid>label,.sale-line-extras-grid>.sales-line-cell{flex:160px;min-width:0}.sale-line-extras-grid>.sale-line-vat{flex:0 90px}.sale-line-extras-grid input{min-height:36px}.encounter-form.sale-payment{border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface-2);flex:none;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;padding:12px;display:grid}.sale-payment-figures,.sale-payment-side{flex-direction:column;gap:8px;min-width:0;display:flex}.sale-payment-row{color:var(--ink-soft);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 12px;font-weight:600;display:flex}.sale-payment-row>label{display:block}.sale-payment-row>strong{color:var(--ink);font-size:var(--fs-lg)}.sale-payment-row.is-headline{border-top:1px solid var(--line);border-bottom:1px solid var(--line);color:var(--ink);padding:6px 0}.sale-payment-row.is-headline>strong{color:var(--blue);font-size:var(--fs-xl)}.sale-payment-row .money-field-wrap{width:170px}.sale-payment-row input{text-align:right;min-height:38px}.sale-gift-box{gap:6px;padding:4px 0;display:grid}.sale-gift-box>summary{cursor:pointer;align-items:center;gap:6px;display:flex}.sale-payment-extra-controls{align-items:center;gap:6px;display:inline-flex}.sale-payment-add-method{align-self:flex-start}.sale-order-discount{width:170px;margin-top:0}.sale-notes textarea{resize:vertical;min-height:0;padding:8px 12px}.sale-payment-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.sale-payment-actions>.primary-button{min-height:48px}.encounter-form.sale-customer{border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface);flex-direction:column;flex:none;gap:10px;padding:12px;display:flex}.sale-customer-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 12px;display:grid}.sale-customer-fields>label{display:block}.sale-customer-fields input{margin-top:4px}.sale-catalog{border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface);flex-direction:column;flex:auto;gap:8px;min-height:0;padding:12px;display:flex}.sale-catalog-tabs{flex:none;gap:4px;display:flex;overflow-x:auto}.sale-catalog-tabs button{border:1px solid var(--line);border-radius:var(--r-pill);background:var(--surface);color:var(--ink-soft);cursor:pointer;flex:none;padding:6px 12px;font-weight:600}.sale-catalog-tabs button[aria-selected=true]{border-color:var(--brand);background:var(--brand-tint);color:var(--brand)}.sale-catalog-search{flex:none}.sale-catalog-list{flex:auto;align-content:start;gap:4px;min-height:0;margin:0;padding:0;list-style:none;display:grid;overflow-y:auto}.sale-catalog-list button{border:1px solid var(--line-soft);border-radius:var(--r-sm);background:var(--surface);width:100%;color:var(--ink);text-align:left;cursor:pointer;justify-content:space-between;align-items:baseline;gap:12px;padding:8px 10px;display:flex}.sale-catalog-list button:hover,.sale-catalog-list button:focus-visible{border-color:var(--brand);background:var(--row-hover);outline:none}.sale-catalog-item-name{overflow-wrap:anywhere;flex-direction:column;min-width:0;display:flex}.sale-catalog-item-name span{color:var(--muted);font-size:var(--fs-xs)}.sale-catalog-item-price{white-space:nowrap;flex:none;font-weight:700}.sale-catalog>.status-hint{margin:0}.mobile-sale-summary{display:none}@media (width<=900px){.mobile-sale-summary{padding:10px 16px max(10px, env(safe-area-inset-bottom));border-top:1px solid var(--line);background:var(--surface);flex:none;justify-content:space-between;align-items:center;gap:12px;display:flex}.mobile-sale-summary>div{overflow-wrap:anywhere;gap:3px;min-width:0;display:grid}.mobile-sale-summary span{color:var(--muted);font-size:var(--fs-xs)}.mobile-sale-summary strong{font-size:var(--fs-lg);font-variant-numeric:tabular-nums}.mobile-sale-summary>button{flex:none;min-height:44px}.sales-workspace-body{flex-direction:column;display:flex;overflow-y:auto}.sales-workspace-main,.sales-workspace-side{flex:none}.sales-workspace-side{order:-1}.sale-catalog-list{max-height:280px}.sale-lines-scroll{flex:none}.encounter-form.sale-payment{grid-template-columns:minmax(0,1fr)}}@media (width<=720px){.sale-lines{min-width:0}.sale-lines tbody{border-bottom:1px solid var(--line-soft);padding:10px 8px;display:block}.sale-lines tbody tr{background:0 0;border:0;border-radius:0;margin:0;padding:0;display:block}.sale-lines tbody td{text-align:left;border:0;width:auto;padding:0;display:block}.sale-lines tbody td:before{margin-bottom:2px;display:block}.sale-lines tbody td:not([data-label]):before{content:none}.sale-lines .sale-line>tr:first-child{grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;grid-template-areas:"name name remove""quantity quantity total""price discount discount";align-items:start;gap:8px;display:grid}.sale-lines tbody td.sale-line-ordinal{display:none}.sale-lines tbody td.sale-line-name{grid-area:name;min-width:0}.sale-lines tbody td.sale-line-remove{grid-area:remove}.sale-lines tbody td.sale-line-quantity{grid-area:quantity}.sale-lines tbody td.sale-line-total{text-align:right;grid-area:total;align-self:end}.sale-lines tbody td.sale-line-price{grid-area:price}.sale-lines tbody td.sale-line-discount{grid-area:discount}.sale-lines tbody tr.sale-line-extras>td:first-child{display:none}}.sale-line-extras-grid>.sale-line-note{flex-direction:column;flex:1.2 180px;gap:6px;display:flex}.sale-price-list{border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface);flex:none;padding:12px}.dialog-actions{flex-wrap:wrap;grid-column:1/-1;justify-content:flex-end;gap:10px;margin-top:4px;display:flex}.encounter-form>.dialog-actions{bottom:calc(-1 * var(--dialog-pad,22px));z-index:2;margin:10px calc(-1 * var(--dialog-pad,22px)) calc(-1 * var(--dialog-pad,22px));padding:14px var(--dialog-pad,22px);background:var(--surface);border-top:1px solid var(--line);position:sticky}.form-section{--section-pad:16px;padding:0 var(--section-pad) 18px;border:1px solid var(--line);background:var(--surface);grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 20px;display:grid}.form-section-title,.form-section-head{margin:0 calc(-1 * var(--section-pad));padding:10px var(--section-pad);background:var(--brand-tint);color:var(--brand-strong);font-size:var(--fs-base);grid-column:1/-1;font-weight:700}.form-section-head{align-items:center;display:flex}.form-section-head>.form-section-title{background:0 0;margin:0;padding:0}@media (width<=480px){.form-section{--section-pad:12px}}.form-more{grid-column:1/-1}.form-more>summary{border:1px solid var(--line);background:var(--brand-tint);min-height:44px;color:var(--brand-strong);cursor:pointer;font-size:var(--fs-base);justify-content:space-between;align-items:center;padding:0 16px;font-weight:700;list-style:none;display:flex}.form-more>summary::-webkit-details-marker{display:none}.form-more>summary svg{width:18px;height:18px;transition:transform var(--ease);transform:rotate(90deg)}.form-more[open]>summary svg{transform:rotate(-90deg)}.form-more>.form-more-fields{border-top:0;padding-top:18px}.form-section>label{display:block}.form-section>label>input,.form-section>label>textarea,.form-section>label>.field-error{margin-top:6px;display:block}@media (width>=900px){.dialog-panel--wide .form-section{column-gap:32px}.dialog-panel--wide :is(.encounter-form,.form-section,.sales-line-picker-cell)>:is(label:has(>.field-label),.create-combo-field,.form-choice-field,.patient-search){grid-template-columns:132px minmax(0,1fr);align-items:start;gap:6px 12px;display:grid}.dialog-panel--wide :is(.encounter-form,.form-section,.sales-line-picker-cell)>:is(label:has(>.field-label),.create-combo-field,.form-choice-field,.patient-search)>*,.dialog-panel--wide :is(.encounter-form,.form-section,.sales-line-picker-cell)>:is(label:has(>.field-label),.create-combo-field,.form-choice-field,.patient-search)>.aria-select-field>*{grid-column:2;margin-top:0}.dialog-panel--wide :is(.encounter-form,.form-section,.sales-line-picker-cell)>:is(label:has(>.field-label),.create-combo-field,.form-choice-field,.patient-search)>:is(.field-label,.form-choice-label),.dialog-panel--wide :is(.encounter-form,.form-section,.sales-line-picker-cell)>:is(label:has(>.field-label),.create-combo-field,.form-choice-field,.patient-search)>.aria-select-field>.aria-select-label{grid-area:1/1;padding-top:12px;line-height:1.3;display:block}}.form-choice-field{align-content:start;gap:6px;display:grid}.form-choice-label{color:var(--ink-soft);font-size:var(--fs-sm);letter-spacing:.01em;font-weight:600}.form-choice-label em{color:var(--danger);white-space:nowrap;margin-left:3px;font-style:normal;font-weight:600}.form-choice-group{border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface);transition:border-color var(--ease), box-shadow var(--ease);grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;display:grid}.form-choice-group button{min-height:42px;color:var(--ink-soft);font:inherit;cursor:pointer;transition:background var(--ease), color var(--ease);--choice:var(--brand);--choice-tint:var(--brand-tint);background:0 0;border:none;justify-content:center;align-items:center;gap:8px;padding:0 12px;font-weight:600;display:inline-flex}.form-choice-group button[data-tone=blue]{--choice:var(--male);--choice-tint:var(--male-tint)}.form-choice-group button[data-tone=pink]{--choice:var(--female);--choice-tint:var(--female-tint)}.form-choice-group--tiles button{text-wrap:balance;flex-direction:column;gap:4px;min-height:64px;padding:8px;line-height:1.25}.form-choice-group button+button{border-left:1px solid var(--line)}.form-choice-group button svg{color:var(--choice);transition:color var(--ease)}.form-choice-group button:hover:not([aria-checked=true]){background:color-mix(in srgb, var(--choice-tint) 45%, var(--surface));color:var(--choice)}.form-choice-group button[aria-checked=true]{background:var(--choice-tint);box-shadow:inset 0 0 0 1.5px var(--choice);color:var(--choice)}.form-choice-group button:focus-visible{z-index:1;box-shadow:var(--ring);outline:none;position:relative}.form-choice-group button[aria-checked=true]:focus-visible{box-shadow:inset 0 0 0 1.5px var(--choice), var(--ring)}.form-choice-group[aria-invalid=true]{border-color:var(--danger);box-shadow:inset 3px 0 0 var(--danger);background:var(--field-invalid-bg)}.medi-detail-dialog>.dialog-actions{flex:none}.medi-detail-dialog>.dialog-actions:not(.encounter-lifecycle-actions){border-top:1px solid var(--line-soft);padding:16px}.encounter-lifecycle-actions{border-top:1px solid var(--line-soft);justify-content:flex-start;align-items:center;gap:10px;margin-top:8px;padding:16px 20px}.encounter-lifecycle-confirm{gap:10px;width:100%;display:grid}.encounter-lifecycle-confirm-buttons{flex-wrap:wrap;gap:10px;display:flex}.medi-detail-hint{font-size:var(--fs-sm);color:var(--muted);margin-top:4px;display:block}.encounter-print-target{display:none}.encounter-print-target .encounter-print-body{--print-blue:#1d4f9e;--print-red:#c8102e;--print-ink:#10213f;--print-muted:#4d5f86;--print-line:#b7c6e3;--print-tint:#edf2fb;z-index:0;width:min(720px,100%);color:var(--print-ink);-webkit-print-color-adjust:exact;print-color-adjust:exact;background:#fff;margin:0 auto;font:13px/1.32 Times New Roman,Times,serif;position:relative}.encounter-print-target .encounter-print-watermark{z-index:-1;opacity:.07;width:min(50%,320px);position:absolute;top:min(50%,130mm);left:50%;transform:translate(-50%,-50%)}.encounter-print-target .encounter-print-header{border-bottom:1px solid var(--print-line);margin-bottom:8px;padding-bottom:8px}.encounter-print-target .encounter-print-clinic-block{border-bottom:1.5px solid var(--print-blue);align-items:center;gap:12px;padding-bottom:8px;display:flex}.encounter-print-target .encounter-print-logo{object-fit:contain;flex:none;width:60px;height:60px}.encounter-print-target .encounter-print-clinic-contact p{color:var(--print-muted);text-wrap:balance;margin:0;font-size:12px}.encounter-print-target .encounter-print-clinic-contact .encounter-print-clinic{color:var(--print-blue);letter-spacing:.02em;text-transform:uppercase;font-size:15px;font-weight:700}.encounter-print-target .encounter-print-clinic-contact span+span:before,.encounter-print-target .encounter-print-meta span+span:before{content:"·";margin:0 7px}.encounter-print-target .encounter-print-title{text-align:center;margin-top:8px}.encounter-print-target .encounter-print-title h2{color:var(--print-red);letter-spacing:.04em;margin:0;font-size:22px;font-weight:700;line-height:1.2}.encounter-print-target .encounter-print-meta{color:var(--print-muted);margin:2px 0 0}.encounter-print-target .encounter-print-meta strong{color:var(--print-ink)}.encounter-print-target .encounter-print-meta .encounter-print-code{color:var(--print-red)}.encounter-print-target .encounter-print-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:3px 24px;margin:0;display:grid}.encounter-print-target .encounter-print-field{align-items:baseline;gap:8px;display:flex}.encounter-print-target .encounter-print-field.is-wide{grid-column:1/-1}.encounter-print-target .encounter-print-field dt{min-width:7.5em;color:var(--print-muted);flex:none}.encounter-print-target .encounter-print-field dd{overflow-wrap:anywhere;white-space:pre-wrap;flex:1;min-width:0;margin:0;font-weight:700}.encounter-print-target .encounter-print-section{margin-top:14px}.encounter-print-target .encounter-print-section h3{break-after:avoid;border-left:3px solid var(--print-blue);color:var(--print-blue);letter-spacing:.05em;text-transform:uppercase;margin:0 0 5px;padding-left:7px;font-size:12.5px;line-height:1.2}.encounter-print-target .encounter-print-rx-table{border-collapse:collapse;width:100%;margin:0}.encounter-print-target .encounter-print-rx-table th,.encounter-print-target .encounter-print-rx-table td{text-align:left;vertical-align:top;white-space:nowrap;width:1%;padding:4px 6px}.encounter-print-target .encounter-print-rx-table th:first-child,.encounter-print-target .encounter-print-rx-table td:first-child{text-align:center}.encounter-print-target .encounter-print-rx-table th:nth-child(2),.encounter-print-target .encounter-print-rx-table td:nth-child(2){overflow-wrap:anywhere;white-space:normal;width:auto}.encounter-print-target .encounter-print-rx-table th{border-bottom:1px solid var(--print-blue);color:var(--print-blue);background:var(--print-tint);letter-spacing:0;text-transform:none;font-size:12px;font-weight:700;position:static}.encounter-print-target .encounter-print-rx-table td{border-bottom:1px solid var(--print-line);color:inherit;font-size:inherit}.encounter-print-target .encounter-print-charges :is(th,td):nth-child(3),.encounter-print-target .encounter-print-charges :is(th,td):nth-child(n+5),.encounter-print-target .encounter-print-rx-table .cell-amount{text-align:right}.encounter-print-target .encounter-print-line-staff{margin-top:2px;font-size:11px;font-style:italic;display:block}.encounter-print-target .encounter-print-subtotal{break-before:avoid;text-align:right;margin:4px 0 0;font-weight:700}.encounter-print-target .encounter-print-totals{break-inside:avoid;width:50%;margin:12px 0 0 auto}.encounter-print-target .encounter-print-totals div{border-bottom:1px solid var(--print-line);justify-content:space-between;gap:12px;padding:3px 0;display:flex}.encounter-print-target .encounter-print-totals dt{color:var(--print-muted)}.encounter-print-target .encounter-print-totals dd{white-space:nowrap;margin:0}.encounter-print-target .encounter-print-totals :is(.is-emphasis,.is-due) :is(dt,dd){color:var(--print-ink);font-weight:700}.encounter-print-target .encounter-print-gifts{break-inside:avoid;margin:8px 0 0;padding:0;list-style:none}.encounter-print-target .encounter-print-gifts li{padding:2px 0}.encounter-print-target .encounter-print-bank-qr{break-inside:avoid;margin-top:12px}.encounter-print-target .encounter-print-bank-qr .bank-qr{flex-direction:row;align-items:center;gap:4mm}.encounter-print-target .encounter-print-bank-qr .bank-qr-code{border:0;border-radius:0;width:34mm;height:34mm}.encounter-print-target .encounter-print-bank-qr .bank-qr-caption{color:var(--print-ink);text-align:left;align-items:flex-start;font-weight:400}.encounter-print-target .encounter-print-signatures{text-align:center;break-inside:avoid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:16px;display:grid}.encounter-print-target .encounter-print-signatures p{margin:0;font-weight:700}.encounter-print-target .encounter-print-signatures span{color:var(--print-muted);font-size:12px;font-style:italic;display:block}.encounter-print-target .encounter-print-signatures strong{text-transform:uppercase;margin-top:64px;display:block}.encounter-print-target .encounter-print-footnote{break-before:avoid;border-top:1px solid var(--print-line);color:var(--print-muted);text-align:center;margin:12px 0 0;padding-top:5px;font-size:12px;font-style:italic}.encounter-print-target .encounter-print-body.is-k80{width:100%;font-size:11px;line-height:1.3}.encounter-print-target .is-k80 .encounter-print-clinic-block{text-align:center;flex-direction:column;gap:4px}.encounter-print-target .is-k80 .encounter-print-logo{width:36px;height:36px}.encounter-print-target .is-k80 .encounter-print-title h2{font-size:15px}.encounter-print-target .is-k80 .encounter-print-meta span{display:block}.encounter-print-target .is-k80 .encounter-print-meta span+span:before{content:none}.encounter-print-target .is-k80 .encounter-print-grid{grid-template-columns:minmax(0,1fr);gap:2px}.encounter-print-target .is-k80 .encounter-print-field dt{min-width:0}.encounter-print-target .is-k80 .encounter-print-section{margin-top:8px}.encounter-print-target .end-of-day-roll-rows{margin:0;padding:0;list-style:none}.encounter-print-target .end-of-day-roll-rows li{break-inside:avoid;border-bottom:1px dashed;padding:3px 0}.encounter-print-target .end-of-day-roll-rows dl{margin:0}.encounter-print-target .end-of-day-roll-rows dl>div{justify-content:space-between;gap:6px;display:flex}.encounter-print-target .end-of-day-roll-rows dt,.encounter-print-target .end-of-day-roll-rows dd{margin:0}.encounter-print-target .end-of-day-roll-total{font-weight:700}.encounter-print-target .encounter-print-k80-lines{margin:0;padding:0;list-style:none}.encounter-print-target .encounter-print-k80-lines li{border-bottom:1px dashed var(--print-line);break-inside:avoid;grid-template-columns:minmax(0,1fr) auto;gap:0 8px;padding:3px 0;display:grid}.encounter-print-target .encounter-print-k80-name{overflow-wrap:anywhere;grid-column:1/-1;font-weight:700}.encounter-print-target .encounter-print-k80-total{text-align:right;font-weight:700}.encounter-print-target .is-k80 .encounter-print-totals{width:100%}.encounter-print-target .is-k80 .encounter-print-bank-qr .bank-qr{flex-direction:column;gap:2mm}.encounter-print-target .is-k80 .encounter-print-bank-qr .bank-qr-code{width:30mm;height:30mm}.encounter-print-target .is-k80 .encounter-print-bank-qr .bank-qr-caption{text-align:center;align-items:center}.receipt-print-target{display:none}@media print{body.receipt-detail-printing>:not(.receipt-print-target){display:none!important}body.receipt-detail-printing .receipt-print-target.is-printing{background:#fff;flex-direction:column;min-height:calc(100vh - 2mm);margin:0;display:flex;position:static}.receipt-print-target.is-printing .encounter-print-body{flex-direction:column;flex-grow:1;display:flex}.receipt-print-target.is-printing .encounter-print-signatures{margin-top:auto;padding-top:16px}.receipt-print-target.is-printing .receipt-print-sheet:not(:last-child){break-after:page}body.receipt-detail-printing .receipt-print-target.is-printing:has(.encounter-print-body.is-k80){min-height:0}}.payment-form{grid-template-columns:minmax(0,1fr);align-items:end;gap:10px 16px;width:100%;max-width:520px;margin-right:auto;display:grid}.bank-received{border:1px solid var(--success);background:var(--success-soft);width:100%;max-width:520px;color:var(--success-strong);align-items:center;gap:10px;margin-right:auto;padding:10px 14px;display:flex}.bank-received strong{flex:1}.payment-method-field{gap:5px;display:grid}.payment-method-field-label{color:var(--ink-soft);font-weight:600}.payment-method-toggle{border:1px solid var(--line);background:var(--surface);width:fit-content;max-width:100%;display:inline-flex}.payment-method-toggle button{min-height:40px;color:var(--ink-soft);font:inherit;cursor:pointer;transition:background var(--ease), color var(--ease);background:0 0;border:none;justify-content:center;align-items:center;gap:8px;padding:0 16px;font-weight:600;display:inline-flex}.payment-method-toggle button+button{border-left:1px solid var(--line)}.payment-method-toggle button:hover:not([aria-checked=true]):not(:disabled){background:var(--brand-tint)}.payment-method-toggle button[aria-checked=true]{background:var(--brand);color:#fff}.payment-method-toggle button:focus-visible{z-index:1;box-shadow:var(--ring);outline:none;position:relative}.payment-method-toggle button:disabled{cursor:not-allowed;opacity:.55}@media (width<=560px){.payment-method-toggle{grid-template-columns:repeat(2,minmax(0,1fr));width:100%;display:grid}.payment-method-toggle button{white-space:nowrap;gap:6px;padding:0 10px}.payment-method-toggle button:nth-child(odd){border-left:none}.payment-method-toggle button:nth-child(n+3){border-top:1px solid var(--line)}}.payment-form label{gap:4px;display:grid}.payment-form label,.payment-form .payment-method-field-label,.sale-payment .payment-method-field-label{color:var(--ink-soft);font-size:.85rem;font-weight:600}.bank-qr{flex-direction:column;align-items:center;gap:6px;margin:0;display:flex}.bank-qr-code{border:1px solid var(--line);border-radius:var(--r-sm);width:168px;height:168px;display:block}.bank-qr-caption{font-size:var(--fs-sm);text-align:center;flex-direction:column;align-items:center;font-weight:600;display:flex}.payment-form-date{border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface);min-height:44px;transition:border-color var(--ease), box-shadow var(--ease);padding:0 4px 0 12px}.payment-form-date:focus-within{border-color:var(--brand);box-shadow:var(--ring)}.payment-form-date input{min-width:0;min-height:42px;color:var(--ink);background:0 0;border:0;flex:auto;padding:0}.payment-form-date input:focus{box-shadow:none;outline:none}.payment-form-date .date-input-button{border-color:#0000;width:36px;height:36px}.payment-form>button{justify-self:start}.payment-form-hint{color:var(--muted);justify-content:space-between;align-items:center;gap:8px;display:flex}.payment-form-fill{color:var(--brand);font:inherit;cursor:pointer;text-underline-offset:2px;background:0 0;border:none;padding:0;font-weight:600;text-decoration:underline}.payment-form-fill:hover:not(:disabled){color:var(--brand-strong)}.payment-form-fill:disabled{color:var(--muted);cursor:default;text-decoration:none}.encounter-print-target .end-of-day-print-table th,.encounter-print-target .end-of-day-print-table td{white-space:normal;overflow-wrap:anywhere;width:auto}.encounter-print-target .end-of-day-print-table th:first-child,.encounter-print-target .end-of-day-print-table td:first-child{text-align:left}.encounter-print-target .end-of-day-print-table .cell-amount{text-align:right;white-space:nowrap}.encounter-print-target .end-of-day-print-total td{border-top:1px solid var(--print-blue);font-weight:700}.encounter-print-target .end-of-day-print .encounter-print-signatures{break-before:avoid}@font-face{font-family:Newsreader;font-style:normal;font-weight:400;font-display:swap;src:url(/dashboard/assets/newsreader-roman-vi-aMjiS-Gd.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Newsreader;font-style:normal;font-weight:400;font-display:swap;src:url(/dashboard/assets/newsreader-roman-latin-DmVaVeW4.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Newsreader Fallback;src:local(Georgia);size-adjust:101.5%;ascent-override:72.41%;descent-override:26.11%;line-gap-override:0%}.auth-shell{--site-ink:#0b1a2f;--site-ink-70:#0b1a2fb8;--site-ink-50:#0b1a2f80;--site-ink-12:#0b1a2f1f;--site-ink-06:#0b1a2f0f;--site-mist:#f4f6f9;--site-brand-deep:#0f477f;--site-danger:#b42318;--site-serif:Newsreader, "Newsreader Fallback", Georgia, "Times New Roman", serif;--site-ease:.2s cubic-bezier(.22, 1, .36, 1);--site-lift:0 8px 20px #0b1a2f2e;background:var(--site-mist);min-height:100dvh;color:var(--site-ink);place-items:center;padding:32px;display:grid}.auth-card{background:var(--surface);width:min(100%,480px);box-shadow:0 0 0 1px var(--site-ink-06), 0 10px 40px #06142814;border-radius:28px;overflow:hidden}.auth-card-split{grid-template-columns:minmax(360px,440px) minmax(0,1fr);width:min(100%,1120px);min-height:min(640px,100dvh - 64px);display:grid}.auth-panel{flex-direction:column;justify-content:center;min-width:0;padding:48px 44px;display:flex}.auth-brand{letter-spacing:-.01em;align-items:center;gap:10px;margin:0 0 36px;font-size:1.15rem;font-weight:650;display:flex}.auth-brand img{border-radius:8px}.auth-card h1{font:400 clamp(2.25rem, 3.4vw, 2.9rem) / 1.06 var(--site-serif);letter-spacing:-.03em;margin:0 0 28px}.auth-card .auth-intro{color:var(--site-ink-70);margin:-12px 0 26px;font-size:1rem;line-height:1.55}.auth-card p[role=alert],.auth-card p[role=status]{border-radius:14px;margin:0 0 20px;padding:13px 16px 13px 46px;font-size:.94rem;line-height:1.5;position:relative}.auth-card p[role=alert]{color:var(--site-danger);background:#b4231812}.auth-card p[role=status]{color:var(--site-ink);background:#e1edff}.auth-card p[role=alert]:before,.auth-card p[role=status]:before{color:#fff;border-radius:50%;place-items:center;width:20px;height:20px;font-size:.75rem;font-weight:800;line-height:1;display:grid;position:absolute;top:14px;left:16px}.auth-card p[role=alert]:before{content:"!";background:var(--site-danger)}.auth-card p[role=status]:before{content:"i";background:var(--brand);font-family:var(--site-serif);font-style:italic}.auth-form{gap:16px;display:grid}.auth-form label{color:var(--ink-soft);gap:8px;font-size:.9rem;font-weight:700;display:grid}.auth-form input{border-radius:var(--r-sm);width:100%;min-height:50px;color:var(--ink);transition:background var(--ease), border-color var(--ease), box-shadow var(--ease);background:#fbfcfb;border:1px solid #d5dedb;padding:0 15px;font-size:1rem}.auth-form input:focus{border-color:var(--brand);background:var(--surface);box-shadow:var(--ring);outline:none}.auth-card .auth-form{gap:20px}.auth-card .auth-form label{color:var(--site-ink);font-size:.94rem;font-weight:600}.auth-card .auth-form input{background:var(--site-mist);min-height:52px;box-shadow:inset 0 0 0 1px var(--site-ink-12);color:var(--site-ink);transition:background var(--site-ease), box-shadow var(--site-ease);border:0;border-radius:14px;padding:0 16px}.auth-card .auth-form input:not(:focus):hover{box-shadow:inset 0 0 0 1px var(--site-ink-50)}.auth-card .auth-form input:focus{box-shadow:inset 0 0 0 2px var(--site-ink);background:#fff}.password-field{gap:6px;display:grid}.password-field-control{position:relative}.auth-form .password-field input{padding-right:50px}.password-field-toggle{width:50px;height:50px;color:var(--muted);cursor:pointer;transition:color var(--ease);background:0 0;border:0;place-items:center;padding:0;display:grid;position:absolute;bottom:0;right:0}.password-field-toggle:hover{color:var(--ink)}.auth-card .password-field-toggle{width:44px;height:44px;color:var(--site-ink-70);border-radius:10px;bottom:4px;right:4px}.auth-card .password-field-toggle:hover{background:var(--site-ink-06);color:var(--site-ink)}.password-field-caps{background:var(--amber);color:var(--warning-strong);justify-self:start;margin:0;padding:2px 10px;font-size:.8rem;font-weight:650}.auth-card .password-field-caps{border-radius:999px}.auth-hint{color:var(--site-ink-70);margin:-8px 0 0;font-size:.88rem}.auth-submit{width:100%;min-height:50px;margin-top:10px}.auth-card .auth-submit{background:var(--brand);min-height:52px;transition:background-color var(--site-ease), box-shadow var(--site-ease), transform var(--site-ease);border:0;border-radius:999px;margin-top:4px;font-size:.97rem;font-weight:600}.auth-card .auth-submit:not(:disabled):hover{background:var(--site-brand-deep)}.auth-card .auth-submit:not(:disabled):active{transform:translateY(1px)}@media (hover:hover) and (prefers-reduced-motion:no-preference){.auth-card .auth-submit:not(:disabled):hover{box-shadow:var(--site-lift);transform:translateY(-1px)}}.auth-card .ghost-button{min-height:48px;box-shadow:inset 0 0 0 1px var(--site-ink-12);color:var(--site-ink);background:0 0;border:0;border-radius:999px;font-size:.94rem}.auth-card .ghost-button:hover{box-shadow:inset 0 0 0 1px var(--site-ink);background:#fff}.auth-card :where(button):focus-visible{outline-color:var(--site-ink)}.auth-google{width:100%;margin-top:12px;text-decoration:none}.auth-switch{color:var(--site-brand-deep);white-space:normal;text-align:left;text-underline-offset:3px;align-self:flex-start;margin-top:20px;font-size:.92rem;font-weight:600}.auth-stage{--m:#1763b8;--m-soft:#e1edff;--m-mid:#6fa4eb99;--m-glow:#1763b866;background:radial-gradient(circle at 1px 1px, #0b1a2f14 1px, transparent 0) 0 0 / 18px 18px, radial-gradient(85% 75% at 100% 0%, var(--m-mid), transparent 62%), radial-gradient(70% 60% at 0% 100%, var(--m-mid), transparent 66%), var(--m-soft);border-radius:18px;place-items:center;min-width:0;margin:12px;padding:40px;display:grid;overflow:hidden}.auth-sign{width:min(100%,420px);box-shadow:0 0 0 1px var(--site-ink-06), 0 34px 60px -26px var(--m-glow);text-align:center;background:#fff;border-radius:24px;justify-items:center;padding:34px 36px 32px;display:grid}.auth-sign-eyebrow{color:var(--m);letter-spacing:.15em;text-transform:uppercase;margin:0;font-size:.75rem;font-weight:600;line-height:1.5}.auth-sign-mark{border-radius:20px;margin:20px 0 14px}.auth-sign-name{font:400 clamp(1.9rem, 2.7vw, 2.5rem) / 1.12 var(--site-serif);letter-spacing:-.025em;text-wrap:balance;margin:0}.auth-sign-detail{border-top:1px solid var(--site-ink-12);max-width:34ch;color:var(--site-ink-70);text-wrap:balance;margin:20px 0 0;padding-top:18px;font-size:.9rem;line-height:1.55}@media (width<=980px){.auth-shell{padding:18px}.auth-card-split{grid-template-columns:1fr;width:min(100%,560px);min-height:0}.auth-stage{order:-1;margin:10px 10px 0;padding:18px}.auth-sign{text-align:left;border-radius:16px;grid-template-columns:auto 1fr;place-items:center start;column-gap:16px;width:100%;padding:16px 20px}.auth-sign-mark{border-radius:12px;grid-area:1/1/3/2;width:56px;height:56px;margin:0}.auth-sign-eyebrow{grid-area:1/2;align-self:end;font-size:.68rem}.auth-sign-name{grid-area:2/2;align-self:start;font-size:1.45rem}.auth-sign-detail{display:none}.auth-panel{padding:34px 32px 36px}}@media (width<=480px){.auth-shell{align-items:start;padding:12px}.auth-card{border-radius:22px}.auth-panel{padding:26px 20px 28px}.auth-brand{margin-bottom:22px}.auth-card h1{margin-bottom:22px;font-size:2.1rem}.auth-card .auth-intro{margin-bottom:22px;font-size:.95rem}.auth-sign-name{font-size:1.25rem}}.mobile-only,.nav-backdrop,.appointment-filter-toggle,.patient-filter-toggle,.patient-list-controls{display:none}@media (width<=720px){.patient-filter-toggle{display:inline-flex}.patient-list-controls{flex:100%;gap:8px;display:flex}.patient-list-controls>button{flex:1 1 0}.patient-status-tabs{grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;width:100%;display:grid;overflow:visible}.patient-status-tabs>.ghost-button{white-space:normal;min-height:44px;padding:6px;line-height:1.25}#customer-filter-panel[data-collapsed],#customer-tools-panel[data-collapsed]{display:none}}@media (width<=640px){.appointment-actions{flex-wrap:wrap}.appointment-actions>div{display:contents}.appointment-actions .primary-button{flex:auto;order:2}.appointment-actions .ghost-button{flex:100%;order:3}.calendar-toolbar{flex-wrap:wrap;display:flex}.calendar-toolbar>.primary-button{flex:calc(100% - 116px)}.calendar-toolbar>strong{flex:auto}}@media (width<=980px){.split-grid,.patient-summary-grid,.customer-report-grid{grid-template-columns:1fr}.app-shell{display:block}.medi-topbar{grid-template-columns:minmax(0,1fr)}.topbar-brand{grid-template-columns:minmax(0,1fr) auto;min-height:54px}.topbar-brand .brand-home-button{justify-self:start;width:min(100%,100vw - 170px)}.topbar-brand .brand-copy{gap:3px;display:grid}.topbar-brand strong{color:#ffffffb8;font-size:var(--fs-2xs);letter-spacing:.02em;font-weight:600}.topbar-brand .brand-page{color:var(--on-brand);font-size:var(--fs-lg);text-overflow:ellipsis;white-space:nowrap;font-weight:700;line-height:1.1;display:block;overflow:hidden}.medi-topbar .top-module-nav{border-top:1px solid #ffffff24;flex-wrap:wrap;grid-column:1/-1;min-width:0;max-height:calc(100dvh - 120px);display:none;overflow:hidden auto}.medi-topbar .top-module-nav.open{display:flex}.medi-topbar .nav-scroll{display:contents}.medi-topbar .top-module-nav .nav-scroll>button,.medi-topbar .top-module-nav .nav-family{flex:none}.medi-topbar .top-module-nav .nav-scroll>button{justify-content:flex-start}.medi-topbar .top-module-nav.open .nav-scroll>button{flex:180px}.medi-topbar .top-module-nav.open .nav-family{flex:100%}.medi-topbar .top-module-nav .nav-family{flex-wrap:wrap;width:100%}.nav-family-label,.nav-family-toggle{flex:auto;justify-content:flex-start;align-items:center;min-height:44px;display:inline-flex}.nav-family-toggle{justify-content:space-between}.nav-family-caret-button{flex:none}.medi-topbar .nav-family-panel{box-shadow:none;background:var(--brand-dark);border:0;flex-basis:100%;margin-top:4px;position:static}.medi-topbar .nav-family-panel button{color:#ffffffd9;padding-left:24px}.medi-topbar .nav-family-panel button:hover,.medi-topbar .nav-family-panel button.active{color:var(--brand-dark);background:#dce9ff}.topbar-actions{background:0 0;border-top:0;flex-wrap:wrap;justify-content:flex-start;gap:6px;padding:0;position:absolute;top:9px;right:58px}.medi-topbar .topbar-actions .icon-button,.account-menu-trigger{width:44px;height:44px;min-height:44px}.account-menu-trigger{border-left:0;justify-content:center;margin-left:0;padding:0}.account-menu-identity,.account-menu-caret{display:none}.account-menu-heading{display:grid}.nav-backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:25;background:#0f1a1880;border:0;animation:.18s fade;display:block;position:fixed;inset:0}@keyframes fade{0%{opacity:0}to{opacity:1}}.mobile-only{display:inline-grid}}@media (width>=981px) and (width<=1359px){.topbar-brand{min-width:0}.medi-topbar .top-module-nav>.nav-scroll>button{padding:0 5px}.nav-family-label{padding-left:5px}.nav-family-caret-button{padding-right:5px}.nav-family-toggle{padding:0 5px}.topbar-actions{gap:4px;padding:0 6px}.account-menu-trigger{padding:0 8px}.account-menu-identity{display:none}.account-menu-heading{display:grid}}@media (width<=560px),(width>=981px) and (width<=1439px){.topbar-sale-label{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;margin:-1px;position:absolute;overflow:hidden}.topbar-actions .topbar-sale-button{width:36px;padding:0}}@media (width<=560px){.topbar-actions .topbar-sale-button{width:44px;height:44px}}@media (width<=860px){.appointment-day-summary{border-top:1px solid var(--line-soft);background:#fbfdff;gap:10px;padding:14px 16px;display:grid}.appointment-day-summary>div:first-child{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.appointment-day-summary>div:first-child span{color:var(--muted);margin:0}.appointment-day-list{gap:0;display:grid}.workspace{padding:18px 16px 36px}.report-section-header{align-items:flex-start}}@media screen and (width<=720px){.calendar-table-wrap{overflow-x:auto}.compact-row{flex-wrap:wrap}.report-section-header{flex-direction:column;align-items:stretch}.report-view-toggle{align-self:flex-end}.report-filter-actions{flex:100%;margin-left:0}.report-print-button{flex:auto}.report-combo-chart{grid-template-columns:46px minmax(0,1fr);margin-right:0;padding-right:0;overflow-x:hidden}.report-chart-scale{height:200px;font-size:var(--fs-2xs)}.report-chart-bars{background-size:100% 50px;grid-auto-columns:minmax(18px,1fr);gap:4px;min-width:0;min-height:240px}.report-chart-column{grid-template-rows:200px auto}.report-chart-stack{height:200px}.report-chart-column>span{overflow-wrap:anywhere;text-align:center;white-space:normal;max-width:100%;font-size:.62rem;transform:none}.table-wrap{border:0;overflow:visible}table,.patients-table{min-width:0}thead{display:none}tbody tr{border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);gap:2px;margin-bottom:12px;padding:6px 14px;display:grid}.interactive-row.is-selected{background:var(--brand-tint)}tbody tr:last-child td{border-bottom:0}tbody td{border-bottom:1px solid var(--line-soft);text-align:right;overflow-wrap:anywhere;justify-content:space-between;align-items:center;gap:16px;min-width:0;padding:10px 0;display:flex}tbody td:before{content:attr(data-label);color:var(--muted);font-size:var(--fs-2xs);letter-spacing:var(--tracking-caps);text-transform:uppercase;text-align:left;flex:none;font-weight:700}.patients-table .interactive-row{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-areas:"name name""phone group""code code""debt sales""date actions";align-items:start;gap:8px 12px;padding:12px}.patients-table .interactive-row>td{text-align:left;border:0;padding:0;display:block}.patients-table .interactive-row>td:before{font-size:var(--fs-2xs);margin-bottom:3px;display:block}.patients-table .patient-name-cell{font-size:var(--fs-md);grid-area:name;font-weight:700}.patients-table .interactive-row>.patient-name-cell:before,.patients-table .interactive-row>.table-row-action:before{display:none}.patients-table .patient-phone-cell{grid-area:phone}.patients-table .patient-group-cell{grid-area:group}.patients-table .patient-debt-cell{grid-area:debt}.patients-table .patient-sales-cell{grid-area:sales}.patients-table .patient-date-cell{grid-area:date}.patients-table .patient-code-cell{grid-area:code}.patients-table .interactive-row>.patient-code-cell{font-size:var(--fs-xs);justify-content:flex-start;align-items:baseline;gap:8px;display:flex}.patients-table .interactive-row>.patient-code-cell:before{margin:0}.patients-table .table-row-action{grid-area:actions;place-self:end}.cell-stack{text-align:right}.table-row-action{white-space:normal;width:auto}.row-open-button{min-height:36px}.appointment-calendar{min-width:980px}.appointment-calendar thead{clip:auto;width:auto;height:auto;display:table-header-group;position:static;overflow:visible}.appointment-calendar tbody tr{background:0 0;border:0;border-radius:0;margin:0;padding:0;display:table-row}.appointment-calendar tbody td,.appointment-calendar tbody th{border-bottom:1px solid var(--line-soft);text-align:left;padding:8px;display:table-cell}.appointment-calendar tbody th{text-align:right}.appointment-calendar tbody td:before{content:none}.permission-matrix-wrap{border:1px solid var(--line-soft);overflow-x:auto}.permission-matrix-table{min-width:760px}.permission-matrix-table thead{clip:auto;width:auto;height:auto;display:table-header-group;position:static;overflow:visible}.permission-matrix-table tbody tr{background:0 0;border:0;border-radius:0;margin:0;padding:0;display:table-row}.permission-matrix-table tbody td{border-bottom:1px solid var(--line-soft);padding:10px 12px;display:table-cell}.permission-matrix-table tbody td:before{content:none}.admin-table td.admin-table-actions{justify-content:flex-end;width:auto}.customer-revenue-table{border:0}.customer-revenue-table .table-wrap{overflow:visible}.customer-revenue-table table{min-width:0}.customer-revenue-table td:last-child,.customer-revenue-table th:last-child{text-align:right}}@media (width<=480px){.workspace{gap:16px}.business-report-section{padding-top:16px}.report-combo-chart{grid-template-columns:42px minmax(0,1fr)}.report-chart-bars{grid-auto-columns:minmax(16px,1fr);gap:3px;min-width:0}.report-chart-stack b{left:14%;right:14%}.panel,.stat-card{padding:16px}.dialog-backdrop{align-items:start;padding:10px}.dialog-panel{--dialog-pad:16px;width:100%;padding:var(--dialog-pad)}.medi-detail-dialog{width:100%;max-height:calc(100dvh - 20px);padding:0}.medi-detail-dialog.is-fullscreen{max-width:none;inset:8px}.medi-detail-tab-panel{max-height:none}.medi-detail-header{flex-wrap:wrap;align-items:flex-start;gap:8px;padding:12px}.medi-detail-header-actions{flex-wrap:wrap;flex:100%;justify-content:flex-end;width:100%;min-width:0}.medi-detail-form{grid-template-columns:1fr}.medi-detail-form>label,.medi-detail-field,.medi-detail-field-wide{grid-column:1/-1}.dialog-header{margin-bottom:14px}.encounter-form,.form-section{grid-template-columns:minmax(0,1fr);gap:12px}.dialog-actions{grid-template-columns:1fr;display:grid}}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.module-skeleton{gap:16px;animation:.2s .15s both module-skeleton-in;display:grid}@keyframes module-skeleton-in{0%{opacity:0}}.module-body{display:contents}.module-body[hidden]{display:none}.module-refresh-bar{background:color-mix(in srgb, var(--accent) 22%, transparent);height:2px;animation:.2s .2s both module-skeleton-in;position:absolute;top:0;left:0;right:0;overflow:hidden}.module-refresh-bar:after{content:"";background:linear-gradient(90deg, transparent, var(--accent) 45%, var(--accent) 55%, transparent);width:32%;animation:1.1s cubic-bezier(.4,0,.2,1) infinite module-refresh-sweep;position:absolute;inset:0 auto 0 0;transform:translate(-100%)}@keyframes module-refresh-sweep{to{transform:translate(320%)}}.skeleton-stats{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;display:grid}.skeleton-card{border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);gap:12px;padding:18px;display:grid}.skeleton-panel{border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);gap:14px;padding:20px;display:grid}.skeleton-line{border-radius:var(--r-sm);background:linear-gradient(90deg, var(--line-soft) 25%, var(--line) 37%, var(--line-soft) 63%);background-size:400% 100%;height:14px;animation:1.4s infinite skeleton-shimmer}.skeleton-line-xs{width:40%}.skeleton-line-sm{width:60%}.skeleton-line-lg{width:80%;height:28px}.loading-block{gap:12px;padding:4px 0;animation:.2s .15s both module-skeleton-in;display:grid}.loading-block .skeleton-line:last-child{width:60%}@keyframes skeleton-shimmer{0%{background-position:100%}to{background-position:0}}.toast-stack{z-index:60;gap:10px;max-width:min(360px,100vw - 32px);display:grid;position:fixed;bottom:20px;right:20px}.toast-region{gap:10px;display:grid}.toast-region:empty{display:none}.toast{border:1px solid var(--line-float);border-radius:var(--r-md);background:var(--surface);box-shadow:var(--shadow-pop);font-size:var(--fs-md);color:var(--ink);animation:toast-in var(--ease);align-items:center;gap:10px;padding:12px 14px;font-weight:600;display:flex}.toast svg{flex-shrink:0;width:18px;height:18px}.toast-info svg{color:var(--blue)}.toast-success svg{color:var(--brand)}.toast-warning svg{color:var(--gold)}.toast-error svg{color:var(--danger-strong)}.toast-warning{background:var(--amber);border-color:#f0dfa8}.toast-error{color:var(--danger-strong);background:#fff4f3;border-color:#fecdca}.toast-close{border-radius:var(--r-sm);width:28px;height:28px;color:inherit;opacity:.65;cursor:pointer;transition:opacity var(--ease), background var(--ease);background:0 0;border:none;flex-shrink:0;place-items:center;margin-left:auto;display:inline-grid}.toast-close:hover{opacity:1;background:#0000000f}.toast-close svg{width:14px;height:14px}.toast-undo{border-radius:var(--r-sm);color:var(--brand);font:inherit;cursor:pointer;transition:background var(--ease);background:0 0;border:none;flex-shrink:0;margin-left:auto;padding:4px 8px;font-weight:700}.toast-undo:hover{background:color-mix(in srgb, var(--brand) 10%, transparent)}.toast-undo+.toast-close{margin-left:0}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes toast-in-top{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@media (width<=720px){.toast-stack{max-width:none;inset:62px 16px auto}.toast{animation-name:toast-in-top}}.error-boundary{border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);max-width:480px;box-shadow:var(--shadow-lg);text-align:left;justify-items:start;gap:10px;margin:40px auto;padding:20px;display:grid}.error-boundary h2{font-size:var(--fs-lg);color:var(--ink);margin:0;font-weight:700}.error-boundary p{color:var(--muted);font-size:var(--fs-md);margin:0}.brand-loader{width:var(--brand-loader-size);height:var(--brand-loader-size);place-items:center;display:inline-grid;position:relative}.brand-loader-frame{fill:none;stroke-width:3px;width:100%;height:100%;position:absolute;inset:0}.brand-loader-track{fill:var(--surface);stroke:var(--brand-tint)}.brand-loader-run{stroke:var(--brand);stroke-dasharray:22 78;animation:1.4s linear infinite brand-loader-run}.brand-loader-mark{animation:1.4s cubic-bezier(.4,0,.2,1) infinite brand-loader-beat;position:relative}@keyframes brand-loader-run{to{stroke-dashoffset:-100px}}@keyframes brand-loader-beat{0%,36%,to{transform:scale(1)}12%{transform:scale(1.06)}24%{transform:scale(1.02)}}.boot-screen{text-align:center;justify-items:center;gap:4px;max-width:34ch;animation:.26s cubic-bezier(.4,0,.2,1) .18s both boot-screen-in;display:grid}.auth-shell.boot-shell{align-items:center}.boot-screen .brand-loader{margin-bottom:18px}.boot-screen h1{color:var(--ink);font-size:var(--fs-2xl);letter-spacing:-.01em;margin:0}.boot-screen-clinic{color:var(--ink-soft);font-size:var(--fs-base);margin:0;font-weight:600}.boot-screen-caption{color:var(--muted);font-size:var(--fs-sm);margin:14px 0 0}@keyframes boot-screen-in{0%{opacity:0;transform:translateY(6px)}}.patient-search{color:var(--ink-soft);font-size:var(--fs-sm);letter-spacing:.01em;gap:7px;font-weight:600;display:grid}.patient-search-bar{gap:10px;display:flex}.patient-search-box{border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface);min-width:0;min-height:44px;transition:border-color var(--ease), box-shadow var(--ease);flex:auto;align-items:center;gap:10px;padding:0 6px 0 12px;display:flex}.patient-search-box:focus-within{border-color:var(--brand);box-shadow:var(--ring)}.patient-search-box>svg{color:var(--muted);flex:none}.encounter-form .patient-search-box>input,.medi-detail-form .patient-search-box>input{min-width:0;min-height:42px;box-shadow:none;background:0 0;border:0;flex:auto;padding:0}.encounter-form .patient-search-box>input:focus,.medi-detail-form .patient-search-box>input:focus{box-shadow:none}.patient-search-bar>.ghost-button{flex:none;min-height:44px}.patient-search-results{gap:6px;margin:0;padding:0;list-style:none;display:grid}.patient-search-results button{border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface);width:100%;color:var(--ink);text-align:left;cursor:pointer;flex-wrap:wrap;gap:8px;padding:8px 12px;font-weight:400;display:flex}.patient-search-results button:hover,.patient-search-results button:focus-visible{border-color:var(--brand);background:var(--row-hover);outline:none}.patient-search>.status-hint{margin:0;font-weight:400}@media (width<=480px){.patient-search-bar{flex-direction:column}}.appointment-patient-selected{border:1px solid var(--line);border-radius:var(--r-sm);background:var(--brand-tint);flex-wrap:wrap;align-items:center;gap:10px 16px;padding:10px 12px;display:flex}.appointment-patient-selected>:not(.appointment-patient-card,button){flex:100%;margin:0}.appointment-patient-card{flex-wrap:wrap;flex:260px;align-items:baseline;gap:10px;display:flex}.appointment-patient-card span{color:var(--ink-soft)}.appointment-duplicate-warning{gap:8px;display:grid}.appointment-duplicate-warning-actions{flex-wrap:wrap;gap:8px;display:flex}.appointment-filters[hidden]{display:none}@media (width<=860px){.appointment-filter-toggle{white-space:nowrap;justify-content:flex-start;align-items:center;gap:8px;width:calc(100% - 32px);margin:12px 16px;display:inline-flex}.appointment-filters .filter-field{max-width:none}.appointment-filter-toggle .filter-summary-chip{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--muted);font-size:var(--fs-xs);margin-left:auto;font-weight:550;overflow:hidden}}.doctor-schedule-dialog{width:min(1100px,96vw)}.doctor-schedule-toolbar,.doctor-schedule-actions,.doctor-schedule-doctor-head,.doctor-schedule-range{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.doctor-schedule-doctor-head{justify-content:space-between}.doctor-schedule-doctor{border-top:1px solid var(--line-soft);margin-top:16px;padding-top:12px}.doctor-schedule-body{flex:auto;min-height:0;padding:14px 16px 18px;overflow-y:auto}.doctor-schedule-cell{vertical-align:top;min-width:96px}.doctor-schedule-cell>button,.doctor-schedule-cell>span{justify-content:center;width:100%;margin-bottom:4px;display:flex}.doctor-schedule-toggle[aria-pressed=true]{border-color:var(--brand);background:var(--brand);color:var(--on-brand)}.doctor-schedule-custom{font-size:var(--fs-xs)}.doctor-schedule-custom-editor{border:1px solid var(--line);margin:12px 0 0;padding:10px 14px 14px}.doctor-schedule-custom-editor>legend{font-size:var(--fs-md);padding:0 6px;font-weight:600}.doctor-schedule-custom-editor>*+*{margin-top:10px}.doctor-schedule-range label{color:var(--muted);font-size:var(--fs-sm);align-items:center;gap:6px;font-weight:600;display:flex}.doctor-schedule-range input[type=time]{border:1px solid var(--line);background:var(--surface);min-height:36px;color:var(--ink);font-size:var(--fs-sm);padding:0 10px}.doctor-schedule-range input[type=time]:focus{border-color:var(--brand);box-shadow:var(--ring);outline:none}@media screen and (width<=720px){.doctor-schedule-cell{text-align:left;flex-wrap:wrap;justify-content:flex-start;gap:6px}.doctor-schedule-cell:before{flex-basis:100%}.doctor-schedule-cell>button,.doctor-schedule-cell>span{white-space:nowrap;flex:auto;width:auto;margin-bottom:0}.doctor-schedule-range{align-items:flex-end}.doctor-schedule-range label{flex-direction:column;flex:96px;align-items:stretch;gap:4px}.doctor-schedule-range input[type=time]{width:100%;min-width:0}}.attendance-toolbar{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px 12px;display:flex}.attendance-history{margin:0 var(--dialog-pad,16px) 12px;gap:8px;padding:0;list-style:none;display:grid}.attendance-history li{gap:2px;display:grid}.attendance-history span{color:var(--ink-soft);font-size:.85em}.attendance-violations{margin:0 var(--dialog-pad,16px) 12px;gap:8px;display:grid}.attendance-violations h3{margin:0;font-size:1em}.attendance-violations ul{gap:4px;margin:0;padding:0;list-style:none;display:grid}.attendance-violations li{justify-content:space-between;align-items:center;gap:8px;display:flex}.attendance-violations-add{flex-wrap:wrap;align-items:end;gap:8px;display:flex}.attendance-body[aria-busy=true]{opacity:.6;transition:opacity var(--ease)}.attendance-grid-wrap{border:1px solid var(--line-soft);border-radius:var(--r-md);width:100%;position:relative;overflow-x:auto}.attendance-grid{border-collapse:separate;border-spacing:0;width:max-content;min-width:100%}.attendance-grid thead{display:table-header-group}.attendance-grid tbody tr{background:0 0;border:0;border-radius:0;margin:0;padding:0;display:table-row}.attendance-grid thead th,.attendance-grid tbody th,.attendance-grid tbody td{border-bottom:1px solid var(--line-soft);text-align:center;padding:0;display:table-cell}.attendance-grid tbody tr:last-child th,.attendance-grid tbody tr:last-child td{border-bottom:0}.attendance-grid tbody td:before{content:none}.attendance-grid thead th{text-transform:none;letter-spacing:0;font-variant-numeric:tabular-nums;min-width:34px;padding:6px 2px;line-height:1.25;position:static}.attendance-grid thead th span{display:block}.attendance-grid thead th span:first-child{font-size:var(--fs-2xs);font-weight:500}.attendance-grid .attendance-name-col{z-index:1;background:var(--surface);min-width:152px;max-width:200px;color:var(--ink);font-size:var(--fs-md);text-align:left;border-right:1px solid var(--line-soft);padding:0 12px;font-weight:600;position:sticky;left:0}.attendance-grid thead .attendance-name-col{background:var(--table-head);color:var(--table-head-ink);font-size:var(--fs-xs);letter-spacing:.02em;text-transform:uppercase}.attendance-grid .attendance-summary-col{background:var(--surface);min-width:150px;color:var(--ink-soft);font-size:var(--fs-sm);text-align:left;border-left:1px solid var(--line-soft);padding:6px 12px}.attendance-grid thead .attendance-summary-col{background:var(--table-head);color:var(--table-head-ink);font-size:var(--fs-xs);letter-spacing:.02em;text-transform:uppercase}@media (width>=721px){.attendance-grid .attendance-summary-col{z-index:1;position:sticky;right:0}}.attendance-summary-detail{color:var(--muted);font-size:var(--fs-xs);display:block}.attendance-grid .attendance-sunday{background:var(--surface-2)}.attendance-grid thead .attendance-sunday{background:var(--table-head);color:var(--danger-strong)}.attendance-grid .attendance-today{background:var(--brand-tint)}.attendance-grid thead .attendance-today{background:var(--table-head-line)}.attendance-cell{width:100%;min-width:34px;min-height:34px;color:inherit;font:inherit;background:0 0;border:0;flex-wrap:wrap;justify-content:center;align-items:center;gap:2px;padding:2px;display:flex}button.attendance-cell{cursor:pointer;transition:background var(--ease)}button.attendance-cell:hover{background:var(--row-hover)}.attendance-mark{border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;display:inline-flex}.attendance-mark-present{background:var(--success-soft);color:var(--success-strong)}.attendance-mark-late{background:var(--amber);color:var(--warning-strong)}.attendance-mark-absent{background:var(--danger-soft);color:var(--danger-strong)}.attendance-mark-leave{background:var(--brand-tint);color:var(--brand-strong)}.attendance-mark-paid_leave{background:var(--violet);color:var(--blue)}.attendance-legend{color:var(--ink-soft);font-size:var(--fs-sm);flex-wrap:wrap;gap:8px 20px;margin:12px 0 0;padding:0;list-style:none;display:flex}.attendance-legend li{align-items:center;gap:6px;display:inline-flex}.schedule-view-switch{flex-wrap:wrap;gap:8px;display:inline-flex}.attendance-grid.schedule-grid thead th{min-width:112px}.attendance-grid.schedule-grid .attendance-name-col{min-width:168px}.attendance-grid.schedule-grid tbody td{vertical-align:top;text-align:left;padding:4px}.schedule-cell{gap:4px;margin:0;padding:0;list-style:none;display:grid}.schedule-chip{background:var(--brand-tint);color:var(--brand-strong);font-size:var(--fs-xs);justify-content:space-between;align-items:center;gap:4px;padding:2px 6px;display:flex}.schedule-check-list{border:0;flex-wrap:wrap;gap:8px 16px;min-width:0;margin:0;padding:0;display:flex}.schedule-check-list legend{font-weight:600;font-size:var(--fs-sm);margin-bottom:4px;padding:0}.attendance-mark-planned{border:1px dashed var(--muted);box-sizing:border-box}.commission-month-label{margin-right:8px}.commission-body[aria-busy=true]{opacity:.6;transition:opacity var(--ease)}.commission-employee+.commission-employee{margin-top:20px}.commission-employee-header{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:8px;display:flex}.commission-employee-header h3{font-size:var(--fs-lg);margin:0}.commission-employee-header strong,.commission-total strong{font-variant-numeric:tabular-nums}.commission-total{margin:0 0 12px}.commission-reversal{color:var(--muted)}.commission-view-switch,.commission-role-switch{flex-wrap:wrap;gap:8px;margin-bottom:12px;display:inline-flex}.commission-role-switch{margin-bottom:0}.commission-fill-field{align-items:center;gap:8px;display:inline-flex}.commission-fill-field input{width:150px}.commission-grid-wrap{max-height:65vh;overflow:auto}.commission-grid th[scope=row]{text-align:left;min-width:220px}.commission-grid-input{text-align:right;font-variant-numeric:tabular-nums;width:112px}.commission-grid-input.is-changed{border-color:var(--brand)}.admin-table-select{width:40px}.payroll-body-wrap[aria-busy=true],.payslip-body[aria-busy=true]{opacity:.6;transition:opacity var(--ease)}.payroll-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 16px;margin-bottom:12px;display:flex}.payroll-toolbar-actions{flex-wrap:wrap;gap:8px;margin-left:auto;display:flex}.payroll-body-wrap>.encounter-lifecycle-confirm,.payroll-body-wrap>.form-alert{margin-bottom:12px}.payroll-body-wrap td strong+span{color:var(--muted);font-size:var(--fs-sm);display:block}.payroll-base-note{color:var(--muted);font-size:var(--fs-sm);font-weight:400;display:block}.is-negative{color:var(--danger-strong)}.payroll-total td{border-top:2px solid var(--line);background:var(--table-head);color:var(--ink);font-weight:600}.medi-detail-dialog>.payroll-body{flex:auto;align-content:start;gap:16px;min-height:0;padding:14px 16px 18px;display:grid;overflow-y:auto}.payroll-figures{border:1px solid var(--line-soft);gap:0;margin:0;display:grid}.payroll-figures>div{border-bottom:1px solid var(--line-soft);justify-content:space-between;align-items:baseline;gap:16px;padding:8px 12px;display:flex}.payroll-figures>div:last-child{border-bottom:0}.payroll-figures dt{color:var(--muted)}.payroll-figures dd{font-variant-numeric:tabular-nums;margin:0}.payroll-figures-net{background:var(--brand-tint);font-weight:700}.payroll-figures-net dt{color:var(--ink)}.payroll-adjustments-header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;display:flex}.payroll-adjustments-header h3{font-size:var(--fs-lg);margin:0}.payroll-adjustment-list{gap:0;margin:0;padding:0;list-style:none;display:grid}.payroll-adjustment-list>li{border-bottom:1px solid var(--line-soft);justify-content:space-between;align-items:center;gap:12px;padding:8px 0;display:flex}.payroll-adjustment-text{overflow-wrap:anywhere;gap:2px;min-width:0;display:grid}.payroll-adjustment-text span{color:var(--muted);font-size:var(--fs-sm)}.payroll-adjustment-actions{flex-wrap:wrap;flex:none;gap:8px;display:flex}.payroll-adjustment-form{margin-top:12px}.payslip-body{gap:16px;display:grid}.payslip-basis{color:var(--muted);margin:0}.allowance-list{gap:8px}.allowance-row{grid-template-columns:minmax(0,2fr) minmax(0,1.2fr) minmax(0,1fr) auto;align-items:center;gap:8px;display:grid}.allowance-add{justify-self:start}@media (width<=640px){.allowance-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto}.allowance-row>input:first-child{grid-column:1/-1}}.tier-list{gap:8px}.tier-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;align-items:end;gap:8px;display:grid}@media (width<=640px){.tier-row{grid-template-columns:minmax(0,1fr) auto}}.payroll-figures-sub{color:var(--muted);padding-left:16px}.holiday-row{grid-template-columns:minmax(0,1fr) minmax(0,2fr) auto;align-items:center;gap:8px;display:grid}@media (width<=640px){.holiday-row{grid-template-columns:minmax(0,1fr) auto}.holiday-row>input:nth-child(2){grid-column:1/-1}}.salary-expense-choice{gap:8px;margin-bottom:8px;display:grid}.salary-expense-month{max-width:220px;font-size:var(--fs-sm);gap:4px;font-weight:600;display:grid}.consent-fields{grid-column:1/-1;gap:12px;display:grid}.consent-notice{flex-wrap:wrap;align-items:flex-start;gap:8px 16px;display:flex}.consent-notice details{flex:280px;min-width:0}.consent-notice summary{cursor:pointer;color:var(--brand-strong);font-weight:600}.consent-notice-text{white-space:pre-wrap;overflow-wrap:anywhere;max-height:40vh;margin:8px 0 0;line-height:1.5;overflow-y:auto}.encounter-print-target .consent-notice-text{max-height:none;overflow:visible}.consent-state{gap:10px;margin-top:16px;display:grid}.consent-state-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;display:flex}.consent-state-head>div{gap:2px;display:grid}.consent-state-head span{color:var(--ink-soft)}.patient-photos{gap:10px;margin-top:16px;display:grid}.patient-photos-add{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.patient-photos-add input:not([type=file]){flex:160px;min-width:0}.patient-photos-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:12px;margin:0;padding:0;list-style:none;display:grid}.patient-photos-grid li{align-content:start;gap:4px;font-size:.85rem;display:grid}.patient-photos-grid img{aspect-ratio:1;object-fit:cover;background:var(--surface-muted,#f1f5f4);border-radius:8px;width:100%;display:block}.patient-photos-note{color:var(--ink-soft);overflow-wrap:anywhere}.patient-photos-confirm{flex-wrap:wrap;gap:6px;display:flex}tbody tr.stock-row-low,tbody tr.stock-row-low:hover{background:var(--danger-soft)}tbody tr.stock-row-low>td:first-child{box-shadow:inset 3px 0 0 var(--danger)}td.stock-quantity-low{color:var(--danger-strong);font-variant-numeric:tabular-nums;font-weight:700}.inventory-details td.stock-quantity-low>span{color:var(--danger-strong);font-weight:600}.low-stock-list{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:10px 18px;margin:0;padding:0;list-style:none;display:grid}.low-stock-list>li{min-width:0;box-shadow:inset 3px 0 0 var(--danger);gap:2px;padding:6px 0 6px 12px;display:grid}.low-stock-list strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.low-stock-list span{color:var(--muted);font-size:var(--fs-sm);font-variant-numeric:tabular-nums}.low-stock-list b{color:var(--danger-strong);font-weight:700}.stock-number-field,.stock-date-field{font-size:var(--fs-sm);align-items:center;gap:8px;display:flex}.stock-number-field{color:var(--muted)}.stock-date-field .date-input-wrap{width:auto}.stock-number-field>input,.stock-date-field input{border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface);width:6.5rem;min-height:32px;color:var(--ink);font-variant-numeric:tabular-nums;text-align:right;transition:border-color var(--ease), box-shadow var(--ease);padding:0 8px}.stock-number-field>input:hover,.stock-date-field input:hover{border-color:var(--line-float)}.stock-number-field>input:focus,.stock-date-field input:focus{border-color:var(--brand);box-shadow:var(--ring);outline:none}.consumables-reveal{border:1px dashed var(--line-float);border-radius:var(--r-md);width:100%;min-height:48px;color:var(--muted);font-size:var(--fs-md);text-align:left;transition:background var(--ease), border-color var(--ease), color var(--ease);background:0 0;align-items:center;gap:10px;padding:0 18px;display:flex}.consumables-reveal:hover,.consumables-reveal:focus-visible{border-style:solid;border-color:var(--brand);background:var(--brand-tint);color:var(--brand-strong)}.consumables-reveal-action{font-size:var(--fs-sm);align-items:center;gap:6px;margin-left:auto;font-weight:600;display:inline-flex}.consumables-internal-tag{border:1px solid var(--line-float);color:var(--muted);font-size:var(--fs-2xs);letter-spacing:var(--tracking-caps);text-transform:uppercase;white-space:nowrap;padding:1px 6px;font-weight:600}.consumables-name>strong,.consumables-name>span{display:block}.consumables-name>span{color:var(--muted);font-size:var(--fs-xs);margin-top:2px}.consumables-items{flex-wrap:wrap;gap:4px 20px;margin:0;padding:0;list-style:none;display:flex}.consumables-items>li{align-items:baseline;gap:6px;display:inline-flex}.consumables-items b{font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:600}.consumables-items .text-danger{font-size:var(--fs-xs)}.consumables-lines{gap:10px;display:grid}.consumables-lines table{min-width:0}.consumables-picker{max-width:460px}.consumables-quantity{color:var(--muted);font-size:var(--fs-sm);align-items:center;gap:8px;display:flex}.consumables-quantity>input{border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface);width:5rem;min-height:36px;color:var(--ink);font-variant-numeric:tabular-nums;text-align:right;padding:0 8px}.consumables-quantity>input:focus{border-color:var(--brand);box-shadow:var(--ring);outline:none}.consumables-quantity>input[aria-invalid=true]{border-color:var(--danger)}.stock-card-trigger{white-space:normal;text-align:inherit}.stock-card-entry>span{color:var(--muted);font-size:var(--fs-xs);margin-top:2px;display:block}@media (width<=720px){tbody tr.stock-row-low{border-left:3px solid var(--danger)}tbody tr.stock-row-low>td:first-child{box-shadow:none}.consumables-reveal{flex-wrap:wrap;padding:10px 14px}td.consumables-items-cell{text-align:left;justify-content:stretch;gap:8px;display:grid}.consumables-items{gap:6px;display:grid}.consumables-items>li{display:flex}.consumables-items b{margin-left:auto}}.dialog-panel.stocktake-file-dialog{width:min(96vw,860px);max-height:min(94dvh,920px)}.stocktake-steps{counter-reset:stocktake-step;margin:0 0 18px;padding:0;list-style:none;display:grid}.stocktake-steps>li{border-top:1px solid var(--line);counter-increment:stocktake-step;flex-wrap:wrap;align-items:center;gap:10px 16px;padding:14px 0;display:flex}.stocktake-steps>li:first-child{border-top:0;padding-top:0}.stocktake-steps>li:before{content:counter(stocktake-step);border:1.5px solid var(--brand);width:30px;height:30px;color:var(--brand);font-variant-numeric:tabular-nums;transition:background var(--ease), color var(--ease);flex:none;place-items:center;font-weight:700;display:grid}.stocktake-steps>li[data-done]:before{content:"✓";background:var(--brand);color:var(--on-brand)}.stocktake-step-text{flex:280px;gap:2px;min-width:0;display:grid}.stocktake-step-text>span{color:var(--muted);font-size:var(--fs-sm)}.stocktake-step-text>.stocktake-file-name{color:var(--ink-soft);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.stocktake-review{border-top:1px solid var(--line);gap:14px;padding-top:16px;display:grid}.stocktake-summary{color:var(--muted);font-variant-numeric:tabular-nums;flex-wrap:wrap;gap:4px 20px;margin:0;display:flex}.stocktake-summary b{color:var(--ink);font-size:var(--fs-lg);font-weight:700}.stocktake-summary-problems,.stocktake-summary .stocktake-summary-problems b{color:var(--danger-strong)}.stocktake-problems{gap:8px;display:grid}.stocktake-problems>h3{color:var(--danger-strong);font-size:var(--fs-base);margin:0;font-weight:650}@media (width<=720px){.stocktake-steps>li>button{margin-left:46px}}.stocktake-review td>strong,.stocktake-review td>span{display:block}.stocktake-review td>span{color:var(--muted);font-size:var(--fs-xs);margin-top:2px}td.stocktake-loss,td.stocktake-gain{white-space:nowrap;font-weight:700}td.stocktake-loss{color:var(--danger-strong)}td.stocktake-gain{color:var(--success-strong)}.muted-text{color:var(--muted);font-style:italic}.catalog-item-stock-info{border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface-2);margin:0 0 12px;padding:12px 14px}.catalog-item-stock-info h3{font-size:var(--fs-sm);margin:0 0 6px;font-weight:650}.catalog-item-stock-batches{font-size:var(--fs-sm);color:var(--muted);flex-direction:column;gap:2px;margin:8px 0 0;padding-left:18px;display:flex}.medi-detail-dialog.document-dialog{width:min(980px,100vw - 32px)}.document-lines{gap:10px;display:grid}.document-lines table{min-width:0}.document-lines .money-field-wrap{min-width:7.5rem;min-height:36px}.document-lines .date-input-wrap{min-width:8.5rem}.stocktake-add{flex-wrap:wrap;align-items:flex-end;gap:10px;display:flex}.stocktake-add>.consumables-picker{flex:2 260px}.stocktake-quick{flex:240px;gap:4px;display:grid}.stocktake-quick-note{color:var(--muted);font-size:var(--fs-xs)}@media (pointer:coarse){input:not([type=checkbox],[type=radio],[type=range],[type=file]),select,textarea{font-size:16px!important}button:not(.info-hint-trigger,.date-input-button,.toast-close,.staff-chip-remove),[role=tab],select,input:not([type=checkbox],[type=radio],[type=range],[type=file],[type=hidden]){min-height:44px!important}button:not(.info-hint-trigger,.date-input-button,.toast-close,.staff-chip-remove){min-width:44px!important}.date-input-wrap{min-height:44px}.date-input-wrap:not(.form-date-wrap) input{min-height:0!important}.stock-date-field .date-input-wrap input{min-height:44px!important}.date-input-button{position:relative}.date-input-button:before{content:"";position:absolute;inset:-9px}}.overview-page{--pulse:#12a08b;--pulse-ink:#0b6b5c;--usual:#6c8498;--chart-grid:var(--line-soft);--chart-axis:var(--muted);--chart-band:color-mix(in srgb, var(--brand) 6%, transparent);--seg-0:#acc9ea;--seg-0-on:#6c9bd3;--line-color:var(--brand-dark);--legend-color:var(--muted)}.ov-today{gap:12px;display:grid}.ov-today-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 24px;display:flex}.ov-today-title{flex-wrap:wrap;align-items:baseline;gap:4px 12px;display:flex}.ov-today-title h2{color:var(--ink);font-size:var(--fs-xl);margin:0;font-weight:800}.ov-today-title span{color:var(--muted);font-size:var(--fs-md);font-weight:600}.ov-actions{flex-wrap:wrap;gap:10px;display:flex}.ov-day{border:1px solid var(--line);background:var(--surface);grid-template-rows:auto 1fr;grid-template-columns:minmax(0,2fr) minmax(300px,1fr);display:grid;position:relative}.ov-day-status{border-bottom:1px solid var(--line);min-height:40px;color:var(--muted);font-size:var(--fs-xs);grid-column:1/-1;justify-content:space-between;align-items:center;gap:12px;padding:6px 22px;font-weight:600;display:flex}.ov-live{color:var(--pulse-ink);align-items:center;gap:9px;font-weight:700;display:inline-flex}.ov-live i{background:var(--pulse);border-radius:50%;width:8px;height:8px;animation:1.8s ease-out infinite ov-live}@keyframes ov-live{0%{box-shadow:0 0 0 0 color-mix(in srgb, var(--pulse) 45%, transparent)}70%,to{box-shadow:0 0 0 7px color-mix(in srgb, var(--pulse) 0%, transparent)}}.ov-clock{color:var(--ink);font-size:var(--fs-md);letter-spacing:.02em;font-variant-numeric:tabular-nums;font-weight:650}.ov-clock i{font-style:normal;animation:1s step-end infinite ov-blink}.ov-clock small{color:var(--muted);font-size:var(--fs-xs);margin-left:5px;font-weight:600}@keyframes ov-blink{50%{opacity:.25}}.ov-day-main{border-right:1px solid var(--line);min-width:0;display:grid}.ov-kpis{display:flex}.ov-kpi{min-width:0;color:inherit;font:inherit;text-align:left;isolation:isolate;background:0 0;border:0;flex:1 1 0;align-content:start;gap:4px;margin:0;padding:18px 22px;display:grid;position:relative}.ov-kpi-wide{flex-grow:1.4}.ov-kpi+.ov-kpi{border-left:1px solid var(--line)}.ov-kpi-action{transition:background var(--ease)}.ov-kpi-action:hover{background:var(--surface-2)}.ov-kpi-action:focus-visible{box-shadow:inset 0 0 0 3px color-mix(in srgb, var(--brand) 22%, transparent);outline:none}.ov-kpi-flash{z-index:-1;background:radial-gradient(70% 90% at 25% 45%, var(--brand-tint), transparent 75%);opacity:0;pointer-events:none;animation:1.8s ease-out both ov-flash;position:absolute;inset:0}@keyframes ov-flash{12%{opacity:1}to{opacity:0}}.ov-kpi-label{color:var(--muted);font-size:var(--fs-sm);align-items:center;gap:8px;font-weight:600;display:inline-flex}.ov-kpi-label svg{color:var(--brand)}.ov-kpi-value{color:var(--ink);letter-spacing:-.02em;font-variant-numeric:tabular-nums;white-space:nowrap;font-size:clamp(1.7rem,1.25rem + 1.2vw,2.3rem);font-weight:750;line-height:1.1}.ov-kpi-sub{color:var(--muted);font-size:var(--fs-sm);font-weight:500}.ov-kpi-bench{border-top:1px dashed var(--line);color:var(--ink-soft);font-size:var(--fs-xs);align-items:center;gap:8px;margin-top:8px;padding-top:8px;font-weight:600;display:flex}.ov-kpi-bench .ov-key-usual{border-top:2px dashed var(--usual);flex:none;width:14px;height:0}@keyframes ov-reveal{0%{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0)}}.ov-todo{flex:1;grid-template-rows:auto minmax(0,1fr);gap:6px;min-width:0;padding:18px 20px;display:grid}.ov-todo ul{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.ov-todo li{flex:auto;max-height:84px;display:grid}.ov-todo li+li{border-top:1px solid var(--line-soft)}.ov-todo-row{width:100%;min-height:56px;color:inherit;font:inherit;text-align:left;background:0 0;border:0;grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:12px;margin:0;padding:10px 6px;display:grid}button.ov-todo-row{transition:background var(--ease);grid-template-columns:36px minmax(0,1fr) auto 16px}button.ov-todo-row:hover{background:var(--surface-2)}button.ov-todo-row:focus-visible{box-shadow:var(--ring);outline:none}.ov-todo-icon{background:var(--brand-tint);width:36px;height:36px;color:var(--brand);place-items:center;display:grid}.ov-todo-text{min-width:0;display:grid}.ov-todo-text strong{color:var(--ink);font-size:var(--fs-md);font-weight:650}.ov-todo-text small{color:var(--muted);font-size:var(--fs-xs);text-overflow:ellipsis;white-space:nowrap;font-weight:500;overflow:hidden}.ov-todo-row b{color:var(--ink);font-size:var(--fs-lg);font-variant-numeric:tabular-nums;font-weight:750}.ov-todo-go{color:var(--muted)}.ov-todo li[data-lines]{flex:none;max-height:none}.ov-todo li[data-todo=stock][data-lines] .ov-todo-icon{background:var(--danger-soft);color:var(--danger)}.ov-todo-lines{font-size:var(--fs-sm);grid-column:2/-1;grid-template-columns:minmax(0,1fr);gap:4px;display:grid}.ov-todo-lines>span{justify-content:space-between;gap:12px;display:flex}.ov-todo-lines>span>span{color:var(--ink-soft);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ov-todo-lines em{color:var(--ink-soft);font-variant-numeric:tabular-nums;flex:none;font-style:normal;font-weight:600}.ov-todo li[data-todo=stock] .ov-todo-lines em{color:var(--danger-strong);font-weight:700}.ov-todo-lines small{color:var(--muted);font-size:var(--fs-xs)}.ov-todo-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.ov-todo-count{background:var(--amber);color:var(--warning-strong);font-size:var(--fs-xs);padding:2px 10px;font-weight:700}.ov-todo-count[data-clear]{background:var(--success-soft);color:var(--success-strong)}.ov-todo li[data-clear] .ov-todo-icon{background:var(--success-soft);color:var(--success)}.ov-todo li[data-clear] .ov-todo-text strong{color:var(--ink-soft);font-weight:600}.ov-todo-clear{color:var(--muted);font-size:var(--fs-sm);font-weight:600}.ov-side{flex-direction:column;min-width:0;display:flex}.ov-totals{border-top:1px solid var(--line);color:var(--muted);font-size:var(--fs-sm);font-variant-numeric:tabular-nums;flex-wrap:wrap;align-items:center;gap:2px 14px;margin:auto 0 0;padding:12px 20px 14px;display:flex}.ov-totals-label{color:var(--ink-soft);font-weight:700}.ov-total-link{min-height:32px;color:var(--brand-strong);font:inherit;text-decoration:underline;-webkit-text-decoration-color:var(--brand-tint);text-decoration-color:var(--brand-tint);text-underline-offset:3px;cursor:pointer;background:0 0;border:0;padding:0;font-weight:600}.ov-total-link:hover{text-decoration-color:currentColor}.ov-total-link:focus-visible{box-shadow:var(--ring);outline:none}.ov-section-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 16px;margin-top:6px;display:flex}.ov-section-head h2{color:var(--ink);font-size:var(--fs-xl);margin:0;font-weight:800}.ov-switches{flex-wrap:wrap;gap:10px;display:flex}.ov-range{border:1px solid var(--line);background:var(--surface);isolation:isolate;grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;display:inline-grid;position:relative}.ov-range:before{content:"";z-index:-1;width:calc(100% / var(--count,1));background:var(--brand);transform:translateX(calc(var(--index,0) * 100%));transition:transform var(--ease);position:absolute;top:0;bottom:0;left:0}.ov-range button{border:0;border-left:1px solid var(--line);min-height:36px;color:var(--ink-soft);font:inherit;font-size:var(--fs-sm);white-space:nowrap;transition:background var(--ease), color var(--ease);background:0 0;padding:0 16px;font-weight:600}.ov-range button:first-child{border-left:0}.ov-range button:hover:not([aria-pressed=true]){background:var(--brand-tint);color:var(--brand-dark)}.ov-range button[aria-pressed=true]{color:var(--on-brand)}.ov-range button:focus-visible{outline-offset:-2px}.ov-grid{grid-template-columns:repeat(12,minmax(0,1fr));gap:18px;display:grid}.ov-span-12{grid-column:1/-1}.ov-span-8{grid-column:span 8}.ov-span-4{grid-column:span 4}.ov-grid>div{flex-direction:column;min-width:0;display:flex}.ov-grid>div>*{flex:1}.ov-grid .panel{flex-direction:column;display:flex}.ov-grid>.ov-stack{gap:18px}.ov-stack>*{flex:none}.ov-stack>:last-child{flex:1}@media (width<=1100px){.ov-span-8,.ov-span-4{grid-column:1/-1}.ov-day{grid-template-columns:minmax(0,1fr)}.ov-day-main{border-right:0;border-bottom:1px solid var(--line)}}@media (width<=720px){.ov-grid{grid-template-columns:minmax(0,1fr)}.ov-actions{grid-template-columns:1fr 1fr;width:100%;display:grid}.ov-actions .primary-button{grid-column:1/-1}.ov-kpis{flex-wrap:wrap}.ov-kpi{flex-basis:50%;padding:16px 16px 14px}.ov-kpi-wide{border-top:1px solid var(--line);flex-basis:100%;order:3;border-left:0!important}.ov-day-status{padding:6px 16px}.ov-todo{padding:16px 12px}}.ov-figure{letter-spacing:-.02em;font-variant-numeric:tabular-nums;margin:6px 0 0;font-size:clamp(2rem,1.4rem + 2.2vw,3rem);font-weight:800;line-height:1.05}.ov-figure small{letter-spacing:0;opacity:.7;font-size:.42em;font-weight:600}.ov-figure-ink{color:var(--ink);margin:0;font-size:clamp(1.6rem,1.3rem + 1vw,2rem)}.ov-panel-figure{flex-wrap:wrap;align-items:baseline;gap:4px 16px;margin:-2px 0 14px;display:flex}.ov-delta{font-size:var(--fs-sm);color:var(--muted);flex-wrap:wrap;align-items:center;gap:4px 8px;margin:10px 0 0;font-weight:600;display:flex}.ov-panel-figure .ov-delta{margin:0}.ov-net-methods{gap:10px;margin:0;display:grid}.ov-net-methods>div{justify-content:space-between;gap:12px;display:flex}.ov-net-methods dd{font-variant-numeric:tabular-nums;margin:0;font-weight:650}.ov-delta-chip{background:var(--success-soft);color:var(--success-strong);align-items:center;gap:4px;padding:2px 8px;font-weight:700;display:inline-flex}.ov-delta[data-direction=down] .ov-delta-chip{background:var(--danger-soft);color:var(--danger-strong)}.ov-delta[data-direction=flat] .ov-delta-chip{background:var(--line-soft);color:var(--ink-soft)}.ov-empty{border:1px dashed var(--line);background:var(--surface-2);color:var(--muted);font-size:var(--fs-md);margin:0;padding:18px 14px;font-weight:500}.ov-link{min-height:36px;color:var(--brand-strong);font:inherit;font-size:var(--fs-md);cursor:pointer;background:0 0;border:0;align-self:flex-start;align-items:center;gap:6px;margin-top:10px;padding:0;font-weight:650;display:inline-flex}.ov-link:hover{text-underline-offset:3px;text-decoration:underline}.ov-link:focus-visible{box-shadow:var(--ring);outline:none}.ov-hero{border:1px solid var(--line);background:linear-gradient(180deg, var(--brand-tint) 0, var(--surface) 200px);color:var(--ink);--seg-0-on:var(--brand);align-content:start;gap:18px;padding:22px 24px 18px;display:grid;position:relative;overflow:hidden}.ov-hero-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px 32px;display:flex}.ov-eyebrow{color:var(--brand-strong);font-size:var(--fs-xs);letter-spacing:var(--tracking-caps);text-transform:uppercase;margin:0;font-weight:700}.ov-eyebrow span{letter-spacing:.04em;font-weight:600}.ov-facts{flex-wrap:wrap;gap:10px 30px;margin:0;display:flex}.ov-facts>div{gap:2px;display:grid}.ov-facts dt{color:var(--muted);font-size:var(--fs-2xs);font-weight:600}.ov-facts dd{font-size:var(--fs-lg);font-variant-numeric:tabular-nums;margin:0;font-weight:750}.ov-facts dd small{color:var(--muted);font-size:var(--fs-xs);font-weight:600;display:block}.ov-hero{grid-template-rows:auto minmax(0,1fr) auto}.ov-single{flex:1;min-height:0}.ov-hero .ov-chart,.ov-hero .ov-chart-body,.ov-single,.ov-single .ov-chart,.ov-single .ov-chart-body{height:100%}.ov-hero .ov-chart-body,.ov-single .ov-chart-body{grid-template-rows:minmax(var(--plot-h), 1fr) auto}.ov-hero .ov-chart-yaxis,.ov-hero .ov-chart-plot,.ov-single .ov-chart-yaxis,.ov-single .ov-chart-plot{height:auto}.ov-visits{--seg-0:color-mix(in srgb, var(--brand) 45%, transparent);--seg-0-on:var(--brand);--seg-1:color-mix(in srgb, var(--pulse) 45%, transparent);--seg-1-on:var(--pulse);--seg-2:color-mix(in srgb, var(--usual) 45%, transparent);--seg-2-on:var(--usual)}.ov-key-visit-0{background:var(--brand)}.ov-key-visit-1{background:var(--pulse)}.ov-key-visit-2{background:var(--usual)}.ov-single{--seg-0-on:var(--brand)}.ov-single .ov-chart{--plot-h:176px}.ov-chart{--plot-h:220px;gap:10px;display:grid}.ov-chart-body{grid-template-columns:auto minmax(0,1fr);gap:6px 10px;display:grid}.ov-chart-yaxis{height:var(--plot-h);color:var(--chart-axis);font-size:var(--fs-2xs);text-align:right;font-variant-numeric:tabular-nums;flex-direction:column;justify-content:space-between;font-weight:500;line-height:1;display:flex}.ov-chart-plot{height:var(--plot-h);cursor:crosshair;touch-action:pan-y;position:relative}.ov-chart-dot{z-index:2;border:2px solid var(--surface);background:var(--line-color);pointer-events:none;border-radius:50%;width:9px;height:9px;margin:-4.5px 0 0 -4.5px;position:absolute}.ov-chart-dot[data-series=today]{background:var(--pulse)}.ov-chart-dot[data-series=usual]{background:var(--usual)}.ov-tip{z-index:3;border:1px solid var(--line-float);background:var(--surface);width:max-content;min-width:140px;max-width:min(220px,50% - 12px);box-shadow:var(--shadow-pop);color:var(--ink-soft);font-size:var(--fs-xs);font-variant-numeric:tabular-nums;opacity:0;pointer-events:none;transition:opacity var(--ease);gap:3px;padding:10px 12px;font-weight:500;line-height:1.35;display:grid;position:absolute;top:8px}.ov-tip[data-open]{opacity:1}.ov-tip[data-side=right]{left:calc(var(--to) + 8px)}.ov-tip[data-side=left]{right:calc(100% - var(--from) + 8px)}.ov-tip strong{color:var(--muted);font-size:var(--fs-2xs);font-weight:700}.ov-tip-value{color:var(--ink);font-size:var(--fs-lg);font-weight:800;line-height:1.2}.ov-tip-row{white-space:nowrap;flex-wrap:wrap;align-items:center;gap:0 7px;display:flex}.ov-tip-row b{color:var(--ink);margin-left:auto;padding-left:8px;font-weight:700}.ov-tip-row i{flex:none;width:8px;height:8px}.ov-chart-grid{pointer-events:none;flex-direction:column;justify-content:space-between;display:flex;position:absolute;inset:0}.ov-chart-grid i{border-top:1px solid var(--chart-grid);height:0;display:block}.ov-chart[data-signed] .ov-chart-grid i:nth-child(2){border-top-color:var(--chart-axis)}.ov-chart-cols{display:flex;position:absolute;inset:0}.ov-col{flex:1 1 0;min-width:0;position:relative}.ov-col:before{content:"";background:var(--chart-band);opacity:0;transition:opacity var(--ease);position:absolute;inset:0}.ov-col[data-active]:before{opacity:1}.ov-col-stack{transform-origin:50% var(--zero-y);animation:.56s cubic-bezier(.2,.7,.2,1) both ov-rise;animation-delay:calc(var(--i,0) * 16ms);position:absolute;inset:0 14%}@keyframes ov-rise{0%{transform:scaleY(0)}to{transform:scaleY(1)}}.ov-seg{width:100%;transition:background var(--ease);display:block;position:absolute}.ov-seg-0{background:var(--seg-0)}.ov-seg-1{background:var(--seg-1)}.ov-seg-2{background:var(--seg-2)}.ov-col[data-active] .ov-seg-0{background:var(--seg-0-on)}.ov-col[data-active] .ov-seg-1{background:var(--seg-1-on)}.ov-col[data-active] .ov-seg-2{background:var(--seg-2-on)}.ov-chart-line{pointer-events:none;width:100%;height:100%;animation:.9s cubic-bezier(.3,.6,.2,1) .28s both ov-reveal;position:absolute;inset:0;overflow:visible}.ov-chart-line polyline{fill:none;stroke:var(--line-color);stroke-width:2px;stroke-linejoin:round;stroke-linecap:round}.ov-chart-line .ov-chart-compare{stroke:var(--usual);stroke-width:1.5px;stroke-dasharray:5 4;stroke-linecap:butt}.ov-chart[data-empty] .ov-chart-yaxis{visibility:hidden}.ov-chart[data-empty] .ov-chart-grid i:not(:last-child){border-top-color:#0000}.ov-chart[data-empty] .ov-chart-plot{cursor:default}.ov-chart-empty{color:var(--chart-axis);font-size:var(--fs-md);text-align:center;pointer-events:none;place-items:center;margin:0;padding:0 16px;font-weight:500;display:grid;position:absolute;inset:0}.ov-chart-xaxis{color:var(--chart-axis);font-size:var(--fs-2xs);font-variant-numeric:tabular-nums;grid-column:2;font-weight:500;display:flex}.ov-xtick{white-space:nowrap;flex-direction:column;flex:1 1 0;align-items:center;min-width:0;line-height:1.3;display:flex}.ov-xtick em{font-style:normal;font-weight:700}.ov-legend{color:var(--legend-color);font-size:var(--fs-xs);flex-wrap:wrap;gap:6px 18px;margin:0;padding:0;font-weight:500;list-style:none;display:flex}.ov-legend li{align-items:center;gap:7px;display:inline-flex}.ov-legend i{width:10px;height:10px;display:inline-block}.ov-key-bar{background:var(--seg-0)}.ov-key-line{background:var(--line-color)}.ov-legend .ov-key-line,.ov-tip-row .ov-key-line{width:16px;height:2px}.ov-tip-row .ov-key-usual,.ov-legend .ov-key-usual{border-top:2px dashed var(--usual);width:16px;height:0}.ov-chart+.ov-legend,.ov-hero .ov-legend{margin-top:0}.ov-share{flex:1;align-content:space-evenly;gap:16px;margin:0;padding:0;list-style:none;display:grid}.ov-share li{grid-template-columns:16px minmax(0,1fr) 5ch;align-items:center;gap:10px;display:grid}.ov-share-rank,.ov-share-pct{color:var(--muted);font-size:var(--fs-xs);font-variant-numeric:tabular-nums;font-weight:600}.ov-share-pct{text-align:right}.ov-share-head{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.ov-share-name{min-width:0;font-size:var(--fs-md);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.ov-share-head strong{font-size:var(--fs-md);white-space:nowrap;font-variant-numeric:tabular-nums;font-weight:750}.ov-share-track{background:var(--line-soft);height:6px;margin-top:6px}.ov-share-track i{transform-origin:0;background:#8fb4e3;height:100%;animation:.62s cubic-bezier(.2,.7,.2,1) both ov-grow;display:block}.ov-share li:first-child .ov-share-track i{background:var(--brand)}@keyframes ov-grow{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.ov-patients{gap:22px 40px;display:grid}.ov-span-12 .ov-patients{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);align-items:start}.ov-patients .ov-panel-figure{margin:0}.ov-patients-part{align-content:start;gap:12px;display:grid}.ov-span-12 .ov-patients-part{align-self:center}.ov-patients .pie-chart{justify-content:flex-start}.overview-page .pie-chart svg{animation:.8s cubic-bezier(.2,.7,.2,1) both ov-ring;-webkit-mask:radial-gradient(circle closest-side,#0000 57%,#000 58.5%);mask:radial-gradient(circle closest-side,#0000 57%,#000 58.5%)}@keyframes ov-ring{0%{opacity:0;transform:rotate(-120deg)scale(.85)}to{opacity:1;transform:none}}.ov-patients-part h3{color:var(--muted);font-size:var(--fs-xs);letter-spacing:var(--tracking-caps);text-transform:uppercase;margin:0;font-weight:700}.ov-cabinet{--anatomy-paper:var(--surface);--anatomy-top:#fff;--anatomy-shade-0:#dcdcd9;--anatomy-shade-1:#e5e5e2;--anatomy-shade-2:#ededea;--anatomy-shade-3:#f4f4f1;--anatomy-hi:#26262a;--anatomy-mid:#8a8a8f;--anatomy-lo:#b4b4b8;--anatomy-faint:#d4d4d6;--anatomy-dot:#3a3a3e;width:100%;max-width:340px;height:auto;margin-top:6px;display:block;overflow:visible}.ov-iso path{vector-effect:non-scaling-stroke}.ov-iso .iso-fill{fill:var(--anatomy-paper)}.ov-iso .iso-shade[data-shade="0"]{fill:var(--anatomy-shade-0)}.ov-iso .iso-shade[data-shade="1"]{fill:var(--anatomy-shade-1)}.ov-iso .iso-shade[data-shade="2"]{fill:var(--anatomy-shade-2)}.ov-iso .iso-shade[data-shade="3"]{fill:var(--anatomy-shade-3)}.ov-iso .iso-top{fill:var(--anatomy-top)}.ov-iso .iso-halo{fill:#8a8a80;filter:blur(9px);opacity:.32;transform:translateY(3px)}.ov-iso .iso-cavity{fill:#cdd0cc}.ov-iso .iso-line{fill:none;stroke:var(--anatomy-lo);stroke-width:.6px;stroke-linecap:round;stroke-linejoin:round}.ov-iso .iso-line[data-tone=hi]{stroke:var(--anatomy-hi)}.ov-iso .iso-line[data-tone=mid]{stroke:var(--anatomy-mid)}.ov-iso .iso-line[data-tone=faint]{stroke:var(--anatomy-faint)}.ov-iso .iso-dots circle{fill:var(--anatomy-dot);opacity:.45}.ov-iso .ov-rule-head{stroke:#e3aaa6}.ov-iso .ov-rule{stroke:#c3d3e6}.ov-card{--card-face:var(--anatomy-shade-3);--card-side:var(--anatomy-shade-0);--card-top:var(--anatomy-top);--card-edge:var(--anatomy-lo);--card-rule:#e3aaa6;transition:transform var(--ease)}#ov-cabinet-card .iso-shade[data-shade="3"]{fill:var(--card-face)}#ov-cabinet-card .iso-shade[data-shade="0"]{fill:var(--card-side)}#ov-cabinet-card .iso-top{fill:var(--card-top)}#ov-cabinet-card .iso-edge{stroke:var(--card-edge)}#ov-cabinet-card .ov-card-rule{stroke:var(--card-rule)}.ov-card[data-new]{--card-face:var(--brand);--card-side:var(--brand-strong);--card-top:color-mix(in srgb, var(--brand) 45%, #fff);--card-edge:var(--brand-strong);--card-rule:#fff9;transform:translateY(var(--raise));animation:.62s cubic-bezier(.2,.9,.25,1) backwards ov-card-file;animation-delay:calc(var(--n) * .11s + .15s)}.ov-cabinet:hover .ov-card[data-new]{transform:translateY(calc(var(--raise) * 1.35))}@keyframes ov-card-file{0%{opacity:0;transform:translateY(calc(var(--raise) * 3.5))}45%{opacity:1}}@media (width<=900px){.ov-span-12 .ov-patients{grid-template-columns:minmax(0,1fr)}}@media (width<=720px){.ov-hero{padding:18px 16px 14px}.ov-tip{min-width:0;max-width:calc(50% + 8px);padding:8px 10px}.ov-tip-row b{padding-left:4px}.ov-tip-row .ov-key-line,.ov-tip-row .ov-key-usual{width:10px}.ov-chart{--plot-h:176px}.ov-facts{gap:10px 22px}}.ov-top-staff-switches{flex-wrap:wrap;gap:8px;display:flex}.ov-top-staff-switches .ov-range button{min-height:32px;padding:0 10px}.ov-mine{gap:18px;display:grid}.ov-mine h3{font-size:var(--fs-sm);color:var(--ink-soft);margin:0 0 6px}.ov-mine-figures{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;margin:0;display:grid}.ov-mine-figures dt{color:var(--ink-soft);font-size:var(--fs-sm)}.ov-mine-figures dd{margin:2px 0 0;font-size:1.4rem;font-weight:700}.ov-mine-figures small{color:var(--ink-soft)}.ov-mine-bookings{gap:6px;margin:0;padding:0;list-style:none;display:grid}.ov-mine-bookings li{flex-wrap:wrap;gap:4px 12px;display:flex}.ov-mine-bookings time{font-variant-numeric:tabular-nums;font-weight:600}.ov-mine-bookings em{color:var(--ink-soft);font-style:normal}.ov-activity{margin:0;padding:0;list-style:none;display:grid}.ov-activity li{border-top:1px solid var(--line-soft);justify-content:space-between;align-items:baseline;gap:4px 16px;padding:8px 0;display:flex}.ov-activity li:first-child{border-top:0}.ov-activity time{color:var(--muted);font-size:var(--fs-sm);font-variant-numeric:tabular-nums;flex:none}@media print{@page{size:A4;margin:0}@page k80{size:80mm 297mm;margin:0}.encounter-print-target.is-printing:has(.encounter-print-body.is-k80){page:k80;padding:3mm}body{background:#fff;min-height:0}.encounter-print-target.is-printing,.report-print-sheet.is-printing{padding:15mm}.report-print-sheet.is-printing{-webkit-print-color-adjust:exact;print-color-adjust:exact}table{min-width:0}.table-wrap{overflow:visible}tr{break-inside:avoid}.encounter-print-target.is-printing,.report-print-sheet.is-printing{-webkit-box-decoration-break:clone;box-decoration-break:clone}}
