@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-latin-400-normal-CDDApCn2.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-400-normal-CYLoc0-x.woff) format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-latin-ext-400-normal-C5H60-Va.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-ext-400-normal-RBey6euL.woff) format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-latin-500-normal-6ng42L7E.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-500-normal-BgVn5rGT.woff) format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-latin-ext-500-normal-DakdToA3.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-ext-500-normal-D0aIdm-b.woff) format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-latin-600-normal-CuJfVYMP.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-600-normal-Cu4Hd6ag.woff) format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-latin-ext-600-normal-DOrvGEcy.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-ext-600-normal-DIrixKbi.woff) format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/ibm-plex-sans-latin-700-normal-Bxkt5Cjx.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-700-normal-Bth3BMcD.woff) format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/ibm-plex-sans-latin-ext-700-normal-aMgXseD4.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-ext-700-normal-DZH6Xh-4.woff) format("woff")}@font-face{font-family:"IBM Plex Serif";font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-serif-latin-400-normal-BIGslYFI.woff2) format("woff2"),url(/assets/ibm-plex-serif-latin-400-normal-BB-zNvJB.woff) format("woff")}@font-face{font-family:"IBM Plex Serif";font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-serif-latin-ext-400-normal-CNMooFZX.woff2) format("woff2"),url(/assets/ibm-plex-serif-latin-ext-400-normal-DwktX9jl.woff) format("woff")}@font-face{font-family:"IBM Plex Serif";font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-serif-latin-500-normal-REKAfBVG.woff2) format("woff2"),url(/assets/ibm-plex-serif-latin-500-normal-C3_OdgN3.woff) format("woff")}@font-face{font-family:"IBM Plex Serif";font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-serif-latin-ext-500-normal-CmETpp4t.woff2) format("woff2"),url(/assets/ibm-plex-serif-latin-ext-500-normal-Czz10gBp.woff) format("woff")}:root{--brand-900: #1C3A33;--brand-800: #23483F;--brand-700: #2F5A4E;--brand-600: #2F6F5E;--brand-500: #25594B;--brand-400: #5E9C88;--brand-300: #9DBEB2;--brand-200: #C9DCD3;--brand-100: #DCE6E1;--brand-050: #E7F0EB;--text-strong: #172A25;--text-body: #5C7068;--text-muted: #8B9992;--text-chip: #3D5850;--text-on-brand: #FFFFFF;--border-strong: #C4D2CB;--border: #C4D2CB;--border-soft: #DCE6E1;--border-accent: #9DBEB2;--surface: #FFFFFF;--surface-page: #EDF1EC;--surface-subtle: #F4F7F4;--surface-sunken: #F4F7F4;--surface-accent: #E7F0EB;--surface-hover: #F4F7F4;--surface-selected: #DCE6E1;--surface-overlay: rgba(23, 42, 37, .42);--danger-fg: #9C3B2E;--danger-bg: #FBEAE7;--danger-border: #9C3B2E;--warn-fg: #B5822A;--warn-bg: #FBF2DF;--success-fg: #2F6F5E;--success-bg: #E7F0EB;--space-1: 4px;--space-2: 6px;--space-3: 12px;--space-4: 18px;--space-6: 26px;--space-8: 32px;--text-xs: 11.5px;--text-sm: 12.5px;--text-md: 13.5px;--text-lg: 17px;--text-xl: 20px;--text-2xl: 40px;--leading-tight: 1.3;--leading-normal: 1.55;--leading-loose: 1.7;--radius-sm: 12px;--radius: 14px;--radius-lg: 18px;--radius-xl: 22px;--radius-pill: 999px;--shadow-card: 0 2px 8px rgba(20, 55, 50, .04);--shadow-document: 0 2px 10px rgba(20, 55, 50, .08);--ring-danger: 0 0 0 3px rgba(180, 35, 24, .12);--target-min: 44px;--target-tablet: 56px;--schedule-time-width: 64px;--schedule-column-min: 150px;--booking-modal-width: 1120px;font-family:IBM Plex Sans,ui-sans-serif,system-ui,sans-serif;color:var(--text-strong);background:var(--surface-page);font-synthesis:none}*{box-sizing:border-box}body{margin:0;line-height:var(--leading-normal)}a{color:var(--brand-600);text-decoration:none}h1,h2,h3,h4{line-height:var(--leading-tight)}h1{font-family:"IBM Plex Serif",Georgia,serif;font-weight:400}button,.button{border:0;border-radius:var(--radius);background:var(--brand-600);color:var(--text-on-brand);padding:var(--space-3) var(--space-4);font-weight:650;cursor:pointer;display:inline-block;font-family:inherit}button:hover:not(:disabled),.button:hover{background:var(--brand-500)}button:disabled{opacity:.55;cursor:not-allowed}.primary,.button.primary{background:var(--brand-600);color:var(--text-on-brand)}.secondary,.button.secondary{background:var(--brand-050);color:var(--brand-700)}.link-button,.text-action{background:none;color:var(--brand-600);padding:var(--space-1)}.text-action{font-weight:700}input,select,textarea{width:100%;border:1px solid var(--border-strong);border-radius:var(--radius-sm);padding:.65rem;background:var(--surface);font:inherit}textarea{min-height:90px;resize:vertical}label{display:flex;flex-direction:column;gap:.35rem;font-size:var(--text-md);font-weight:650;margin:.65rem 0}.checkbox{flex-direction:row;align-items:center}.checkbox input{width:auto}input[aria-invalid=true],select[aria-invalid=true],textarea[aria-invalid=true]{border-color:var(--danger-border);box-shadow:var(--ring-danger)}.field-error{display:block;color:var(--danger-border);font-weight:700;margin-top:6px}.app-shell{min-height:100vh;display:grid;grid-template-columns:84px minmax(0,1fr)}.sidebar{background:var(--brand-900);color:var(--text-on-brand);padding:var(--space-4) var(--space-2);position:sticky;top:0;height:100vh;z-index:5}.brand{display:grid;place-items:center;width:40px;height:40px;border-radius:var(--radius-sm);background:var(--brand-400);color:var(--text-on-brand);font-size:16px;font-weight:700;margin:0 auto var(--space-4)}.sidebar nav{display:grid;gap:var(--space-2)}.sidebar a{position:relative;display:grid;place-items:center;gap:var(--space-1);min-height:62px;color:var(--brand-300);padding:var(--space-2);border-radius:var(--radius-sm);font-size:10px;font-weight:600}.sidebar a:hover,.sidebar a.active{background:var(--brand-800);color:var(--text-on-brand)}.nav-mark{display:grid;place-items:center;width:22px;height:22px}.nav-mark svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.nav-badge{position:absolute;top:4px;right:4px;min-width:18px;padding:1px 5px;border-radius:var(--radius-pill);background:var(--warn-fg);color:var(--text-on-brand);font-size:10px;font-weight:700;text-align:center}.staff-avatar{display:grid;place-items:center;width:40px;height:40px;margin:auto auto 0;border-radius:var(--radius-pill);background:var(--brand-400);color:var(--text-on-brand);font-size:var(--text-sm);font-weight:600}.app-main{min-width:0}.topbar{height:64px;background:var(--surface);border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:0 var(--space-8);position:sticky;top:0;z-index:3}.topbar select{width:auto;min-width:180px}.patient-context-bar{display:flex;align-items:center;gap:var(--space-3);min-height:58px;padding:var(--space-2) var(--space-8);background:var(--surface-sunken);border-bottom:1px solid var(--border)}.patient-context-bar>div{display:grid;flex:1}.patient-context-bar span{color:var(--text-body);font-size:var(--text-sm)}.patient-avatar{display:grid;place-items:center;width:38px;height:38px;flex:none;border-radius:var(--radius-pill);background:var(--brand-200);color:var(--brand-900);font-size:var(--text-md);font-weight:600}.content{max-width:1400px;margin:auto;padding:var(--space-8)}.page-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--space-4);margin-bottom:var(--space-6)}.page-heading h1{margin:.1rem 0;font-size:var(--text-2xl)}.workspace-heading{border-bottom:1px solid var(--border);padding-bottom:var(--space-4)}.eyebrow{text-transform:uppercase;letter-spacing:.11em;color:var(--text-body);font-size:var(--text-xs);font-weight:800;margin:0}.muted{color:var(--text-muted)}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.2rem;margin-bottom:var(--space-4);box-shadow:var(--shadow-card)}.card h2{margin-top:0;font-size:var(--text-lg)}.card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:var(--space-4)}.split,.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4)}.inline-form{display:flex;gap:var(--space-3);align-items:end;flex-wrap:wrap}.inline-form label{min-width:150px}.grow{flex:1}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(170px,1fr));gap:0 var(--space-4)}.form-grid button,.form-grid .feedback{align-self:end;margin:.65rem 0}.form-grid>h2,.form-grid>h3,.form-grid>h4,.form-grid>p,.form-grid>details,.form-grid>fieldset,.form-grid>.record-list,.form-grid>.feedback,.form-grid>.row-actions,.form-grid>label.full{grid-column:1 / -1}.summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:var(--space-3);margin:var(--space-4) 0}.metric-card{background:var(--surface-sunken);border:1px solid var(--border);border-radius:10px;padding:.9rem;display:grid;gap:.3rem}.metric-card span{color:var(--text-body);font-size:var(--text-sm)}.metric-card strong{font-size:var(--text-xl)}.metric-card p{margin:0}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;font-size:var(--text-md)}th,td{text-align:left;padding:.65rem;border-bottom:1px solid var(--border-soft);vertical-align:top}th{text-transform:capitalize;color:var(--text-body);background:var(--surface-subtle)}.empty{color:var(--text-muted);text-align:center;padding:var(--space-6)}.loading-state{padding:var(--space-8);color:var(--text-muted)}.result-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:var(--space-3) 0;border-bottom:1px solid var(--border-soft);color:inherit}.result-row p,.record-card p{margin:.2rem 0;color:var(--text-muted)}.feedback{padding:var(--space-3) .85rem;border-radius:var(--radius-sm)}.feedback.error{background:var(--danger-bg);color:var(--danger-fg)}.feedback.success{background:var(--success-bg);color:var(--success-fg)}.feedback.warning{background:var(--warn-bg);color:var(--warn-fg)}.login-page,.centered{min-height:100vh;display:grid;place-items:center;padding:var(--space-6)}.login-card{width:min(440px,100%);padding:var(--space-8)}dl div{display:grid;grid-template-columns:140px 1fr;padding:.45rem 0;border-bottom:1px solid var(--border-soft)}dt{text-transform:capitalize;color:var(--text-muted)}dd{margin:0}.environment{border-left:4px solid var(--brand-600)}.context-strip,.visit-context-bar,.selected-context{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);margin-top:var(--space-4);padding:var(--space-3) var(--space-4);background:var(--surface-accent);border-radius:9px}.selected-context{justify-content:flex-start;gap:.6rem;margin-top:0}.count-badge,.status-badge{display:inline-block;background:var(--brand-050);color:var(--brand-700);border-radius:var(--radius-pill);font-size:.76rem;padding:.2rem var(--space-2);margin-left:.35rem}.status-badge.warning{background:var(--warn-bg);color:var(--warn-fg)}.status-badge.danger{background:var(--danger-bg);color:var(--danger-fg)}.status-badge.success{background:var(--success-bg);color:var(--success-fg)}.record-list{display:grid;gap:.55rem}.record-card{display:flex;justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius);color:inherit}.record-card:hover{border-color:var(--border-accent)}.inset-list{margin-top:var(--space-3)}.timeline{list-style:none;margin:0;padding:0}.timeline li{display:grid;gap:.2rem;padding:var(--space-3) 0 var(--space-3) var(--space-4);border-left:2px solid var(--border-accent)}.timeline span{color:var(--text-muted);font-size:var(--text-md)}.action-list>div{display:flex;gap:var(--space-2);align-items:center;border-top:1px solid var(--border-soft);padding:.6rem 0}.row-actions{display:flex;gap:.45rem;flex-wrap:wrap}.finder-result{width:100%;background:transparent;color:inherit;text-align:left;border-radius:0}.finder-result:hover{background:var(--surface-hover)}.create-patient{margin-top:var(--space-4);padding-top:var(--space-3);border-top:1px solid var(--border-soft)}.create-patient h3{margin:0}.inventory-action-panel{scroll-margin-top:24px}.cockpit-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4)}.workspace-header{display:flex;justify-content:space-between;gap:var(--space-4);align-items:flex-start;margin-bottom:var(--space-4)}.visit-layout{display:grid;grid-template-columns:240px minmax(0,1fr);gap:var(--space-4)}.visit-switcher{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-4);height:max-content}.visit-switcher h2{font-size:1rem;margin-top:0}.visit-switcher button{display:grid;text-align:left;gap:var(--space-1);width:100%;background:transparent;color:var(--brand-800);border-radius:var(--radius-sm);padding:var(--space-3)}.visit-switcher button:hover,.visit-switcher button.selected{background:var(--surface-selected)}.visit-switcher span{font-size:var(--text-sm);color:var(--text-muted)}.visit-spine-header{margin-bottom:var(--space-4)}.visit-header-actions{display:grid;justify-items:end;gap:var(--space-3)}.visit-next-business{display:grid;gap:var(--space-1);margin:var(--space-3) 0 0}.visit-next-business span{color:var(--text-muted);font-size:var(--text-xs);font-weight:700;letter-spacing:.05em;text-transform:uppercase}.visit-consent-chip{display:inline-flex;align-items:center;min-height:32px;padding:var(--space-1) var(--space-3);border-radius:var(--radius-pill);background:var(--surface-accent);color:var(--brand-700);font-size:var(--text-sm);font-weight:700}.visit-consent-chip.success{background:var(--success-bg);color:var(--success-fg)}.visit-consent-chip.warning{background:var(--warn-bg);color:var(--warn-fg)}.visit-step-rail{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--space-2);margin-bottom:var(--space-3)}.visit-step-rail button{display:grid;grid-template-columns:auto 1fr;gap:0 var(--space-2);min-height:72px;padding:var(--space-3);background:var(--surface-subtle);color:var(--text-body);text-align:left}.visit-step-rail button>span{grid-row:1 / span 2;display:grid;place-items:center;width:28px;height:28px;border:1px solid var(--border-strong);border-radius:50%;font-variant-numeric:tabular-nums}.visit-step-rail button strong{color:var(--text-strong)}.visit-step-rail button small{color:var(--text-muted)}.visit-step-rail button.active{background:var(--brand-600);color:var(--text-on-brand)}.visit-step-rail button.active strong,.visit-step-rail button.active small{color:var(--text-on-brand)}.visit-main{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);min-width:0;overflow:hidden}.visit-tabs{display:flex;gap:.2rem;padding:.6rem;border-bottom:1px solid var(--border);overflow:auto}.visit-tabs button{white-space:nowrap;background:transparent;color:var(--text-body)}.visit-tabs button.active{background:var(--brand-600);color:var(--text-on-brand)}.visit-mobile-room,.visit-tablet-navigation,.visit-tablet-consumables{display:none}.module-panel{padding:1.2rem}.module-panel h2{margin-top:0}.collections-chart{margin:0}.collections-chart svg{width:100%;height:120px;display:block}.collections-chart rect{fill:var(--brand-600)}.collections-chart figcaption{font-size:var(--text-sm);margin-top:var(--space-2)}.today-header{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--space-6);margin-bottom:var(--space-4)}.today-header h1{margin:var(--space-1) 0;font-size:var(--text-2xl)}.today-totals{display:flex;gap:var(--space-3)}.today-metric{min-width:148px;padding:var(--space-3) var(--space-4);border-left:1px solid var(--border)}.today-metric span{display:block;color:var(--text-body);font-size:var(--text-xs);font-weight:600}.today-metric strong{display:block;margin-top:var(--space-1);font-size:var(--text-xl);font-variant-numeric:tabular-nums}.today-patient-tools{display:flex;align-items:flex-end;gap:var(--space-3);margin-bottom:var(--space-4);padding:var(--space-3);background:var(--surface-sunken);border:1px solid var(--border);border-radius:var(--radius-lg)}.today-patient-tools .patient-finder{flex:1}.room-board{display:grid;grid-template-columns:repeat(3,minmax(220px,1fr)) 258px;gap:var(--space-3);align-items:stretch}.board-column{min-width:0;height:min(650px,calc(100vh - 250px));background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-xl);overflow:hidden}.board-column>header{display:flex;align-items:center;justify-content:space-between;min-height:54px;padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border-soft)}.board-column>header h2{margin:0;font-size:15px;font-weight:600}.board-column-scroll{height:calc(100% - 54px);overflow-y:auto;padding:var(--space-3)}.board-person{position:relative;display:grid;gap:var(--space-2);margin-bottom:var(--space-3);padding:var(--space-3);border:1px solid var(--border-soft);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-card);cursor:pointer}.board-person:hover{border-color:var(--border-accent)}.board-person.selected{outline:2px solid var(--brand-600);outline-offset:-2px;background:var(--surface-sunken)}.person-select{display:flex;align-items:center;gap:var(--space-2);width:100%;padding:0;background:transparent;color:var(--text-strong);text-align:left}.person-select:hover:not(:disabled){background:transparent}.person-select>span:last-child{display:grid;gap:1px;min-width:0}.person-select strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.person-select small{color:var(--text-muted);font-size:var(--text-xs)}.board-person p{margin:0;color:var(--text-body);font-size:var(--text-sm)}.board-action{display:flex;margin-top:var(--space-1)}.board-action>*{width:100%;text-align:center}.money-amount{font-size:15px;font-variant-numeric:tabular-nums}.stock-line{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-2)}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.matrix-scroll{overflow-x:auto}.capability-matrix,.catalogue-table{width:100%;border-collapse:collapse;font-size:var(--text-sm)}.capability-matrix th,.capability-matrix td,.catalogue-table th,.catalogue-table td{padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--border-soft);text-align:left;vertical-align:top}.capability-matrix thead th,.catalogue-table thead th{color:var(--text-soft);font-weight:600;white-space:nowrap}.capability-matrix th[scope=row] small,.catalogue-table th[scope=row] small{display:block;color:var(--text-soft)}.capability-matrix td{text-align:center;font-size:15px}.capability-matrix td.held{color:var(--brand-600)}.capability-matrix td.withheld{color:var(--text-soft)}.matrix-category th{background:var(--surface-sunken);color:var(--text-strong);font-weight:600}.catalogue-table td.money-amount{text-align:right}.basket-line{display:grid;gap:var(--space-2);padding-bottom:var(--space-3);border-bottom:1px solid var(--border-soft)}.read-error{padding:var(--space-3);border-radius:var(--radius);background:var(--danger-bg);color:var(--danger-fg);font-size:var(--text-sm)}.money-methods{margin-top:var(--space-4);padding-top:var(--space-3);border-top:1px solid var(--border-soft)}.money-methods span{display:flex;justify-content:space-between;gap:var(--space-4);padding:var(--space-2) 0;color:var(--text-body);font-size:var(--text-sm)}.money-methods strong{color:var(--text-strong);font-variant-numeric:tabular-nums}.outcome-notice{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius);background:var(--success-bg);color:var(--success-fg);font-weight:600}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;display:grid;place-items:center;padding:var(--space-4);background:var(--surface-overlay)}.modal-card{width:min(440px,100%);max-height:calc(100vh - 36px);overflow:auto;padding:var(--space-6);border-radius:var(--radius-xl);background:var(--surface);box-shadow:var(--shadow-document)}.modal-card h2{margin:var(--space-1) 0}.money-input{display:grid;grid-template-columns:34px 1fr;align-items:center;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface);overflow:hidden}.money-input span{text-align:center;color:var(--text-body);font-weight:600}.money-input input{border:0;border-left:1px solid var(--border-soft);border-radius:0}.today-header-actions{display:flex;align-items:flex-end;gap:var(--space-4)}.today-view-toggle{display:flex;align-items:center;gap:var(--space-1);padding:var(--space-1);border-radius:var(--radius);background:var(--surface)}.today-view-toggle>span{padding:var(--space-3) var(--space-4);border-radius:var(--radius-sm);background:var(--surface-accent);color:var(--brand-700);font-size:var(--text-md);font-weight:700}.today-view-toggle .button{padding:var(--space-3) var(--space-4)}.booking-modal{width:min(var(--booking-modal-width),100%)}.booking-modal button,.schedule-grid-shell button,.schedule-list button,.schedule-toolbar button,.appointment-action-modal button{font-family:inherit}.booking-modal-header{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-4);margin-bottom:var(--space-4)}.booking-modal-header p{margin:var(--space-1) 0}.booking-days{display:flex;gap:var(--space-2);overflow-x:auto;padding-bottom:var(--space-3);scroll-snap-type:x mandatory}.booking-day{min-width:var(--target-tablet);min-height:var(--target-tablet);display:grid;place-items:center;gap:0;padding:var(--space-2);scroll-snap-align:start;background:var(--surface-subtle);color:var(--text-body)}.booking-day.selected{background:var(--brand-600);color:var(--text-on-brand)}.booking-day span,.booking-day small{font-size:var(--text-xs)}.booking-slots{margin-top:var(--space-4)}.booking-slots h3{margin-bottom:0}.slot-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(var(--schedule-column-min),1fr));gap:var(--space-2);max-height:calc(var(--target-tablet) * 4);overflow-y:auto}.slot-option{min-height:var(--target-tablet);display:grid;gap:var(--space-1);text-align:left;background:var(--surface-subtle);color:var(--text-strong);border:1px solid var(--border-soft)}.slot-option span{color:var(--text-body);font-size:var(--text-xs)}.slot-option.selected{outline:2px solid var(--brand-600);outline-offset:-2px;background:var(--surface-accent)}.booking-time-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3)}.booking-details{margin-top:var(--space-4);padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius)}.booking-details summary{cursor:pointer;color:var(--brand-700);font-weight:700}.booking-consequence{padding:var(--space-3);border-radius:var(--radius);background:var(--surface-accent);color:var(--brand-800);font-weight:600}.booking-actions{display:flex;justify-content:flex-end;gap:var(--space-2);margin-top:var(--space-4)}.read-error button{display:block;margin-top:var(--space-3)}.reason-picks{display:grid;gap:var(--space-1);margin:var(--space-4) 0;border:0;padding:0}.reason-picks legend{font-weight:700}.danger-action{background:var(--danger-fg);color:var(--text-on-brand)}.schedule-header{align-items:flex-end}.schedule-toolbar{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap;margin-bottom:var(--space-4);padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface)}.schedule-toolbar strong{margin-right:auto}.schedule-grid-shell{overflow:auto;margin-bottom:var(--space-4);padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface)}.schedule-grid{display:grid;grid-auto-rows:var(--target-min);gap:var(--space-1);min-width:max-content}.schedule-corner,.schedule-column-heading{grid-row:1;position:sticky;top:0;z-index:2;display:grid;place-items:center;background:var(--surface);color:var(--text-body);font-size:var(--text-sm);font-weight:700}.schedule-corner{grid-column:1}.schedule-time{grid-column:1;display:flex;align-items:flex-start;color:var(--text-muted);font-size:var(--text-xs);font-variant-numeric:tabular-nums}.schedule-empty-cell{min-height:var(--target-min);padding:0;border:1px dashed var(--border-soft);border-radius:var(--radius-sm);background:var(--surface-subtle);color:var(--text-muted);font-size:var(--text-xs)}.schedule-empty-cell:hover:not(:disabled){background:var(--surface-accent);color:var(--brand-700)}.schedule-empty-cell.readonly{pointer-events:none}.schedule-empty-cell.occupied{background:var(--surface-muted)}.schedule-block{z-index:1;min-width:0;overflow:auto;padding:var(--space-2);border:1px solid var(--border-accent);border-radius:var(--radius-sm);background:var(--brand-200);box-shadow:var(--shadow-card)}.schedule-block.status-scheduled{background:var(--brand-200)}.schedule-block.status-confirmed{background:var(--surface-accent)}.schedule-block.status-arrived{background:var(--warn-bg);border-color:var(--warn-fg)}.schedule-block.status-in_progress{background:var(--brand-600);color:var(--text-on-brand)}.schedule-block-copy{display:grid;gap:var(--space-1);min-width:0}.schedule-block-copy strong,.schedule-block-copy span,.schedule-block-copy small,.schedule-patient-action{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.schedule-block-copy span,.schedule-block-copy small{font-size:var(--text-xs)}.schedule-patient-action{min-height:auto;padding:0;border:0;background:transparent;color:inherit;font:inherit;font-weight:700;text-align:left;text-decoration:underline;text-underline-offset:.16em}.schedule-primary-action{margin-top:var(--space-2)}.schedule-primary-action>*{width:100%;min-height:var(--target-min);text-align:center}.appointment-overflow{position:relative;margin-top:var(--space-2)}.appointment-overflow summary{cursor:pointer;font-size:var(--text-xs);font-weight:700}.appointment-overflow>div{display:flex;flex-wrap:wrap;gap:var(--space-1);padding-top:var(--space-1)}.appointment-overflow button{min-height:var(--target-min)}.appointment-reasons{margin:var(--space-2) 0 0;padding-left:var(--space-4);color:var(--text-body);font-size:var(--text-xs)}.schedule-block.status-in_progress .appointment-reasons{color:var(--brand-050)}.schedule-list{display:none;gap:var(--space-3)}.schedule-list-card{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-4);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface)}.schedule-list-card p{margin:var(--space-1) 0;color:var(--text-body)}.schedule-history{margin-top:var(--space-4)}.patient-record{display:grid;gap:var(--space-5)}.patient-record-header{margin-bottom:0}.patient-next-actions{display:flex;flex-wrap:wrap;align-items:end;justify-content:flex-end;gap:var(--space-3)}.patient-next-actions label{min-width:13rem;font-size:var(--text-sm)}.patient-record-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-3)}.patient-record-minimal .patient-record-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.patient-reading{display:grid;gap:var(--space-4);align-items:start}.patient-reading-commercial{grid-template-columns:minmax(0,1.6fr) minmax(18rem,1fr)}.patient-reading-commercial>:first-child,.patient-reading-commercial>:nth-child(3),.patient-reading-commercial>:nth-child(4),.patient-reading-commercial>:nth-child(5),.patient-reading-commercial>:nth-child(7){grid-column:1}.patient-reading-commercial>:nth-child(2),.patient-reading-commercial>:nth-child(6){grid-column:2}.patient-reading-clinical{grid-template-columns:minmax(0,1.6fr) minmax(18rem,1fr)}.patient-reading-clinical>:first-child,.patient-reading-clinical>:nth-child(3),.patient-reading-clinical>:nth-child(4){grid-column:2}.patient-reading-clinical>:nth-child(2),.patient-reading-clinical>:nth-child(5),.patient-reading-clinical>:nth-child(6){grid-column:1}.patient-reading-minimal{grid-template-columns:repeat(2,minmax(0,1fr))}.patient-panel{min-width:0}.patient-panel .section-heading{margin-bottom:var(--space-3)}.patient-history-list{margin-top:var(--space-3)}.patient-progressive{min-width:0}.patient-progressive>summary{display:none}.patient-progressive>div{display:grid;gap:var(--space-4)}.patient-locked-panel{display:flex;align-items:flex-start;gap:var(--space-3);border-style:dashed}.patient-locked-panel h2{margin:0}.patient-locked-panel p{margin-bottom:0}.patient-lock{flex:none;padding:var(--space-1) var(--space-2);border-radius:var(--radius-pill);background:var(--surface-muted);color:var(--text-muted);font-size:var(--text-xs);font-weight:700;letter-spacing:var(--tracking-wide);text-transform:uppercase}.patient-identity-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3);margin:0}.patient-identity-list div{padding-bottom:var(--space-2);border-bottom:1px solid var(--border-soft)}.patient-identity-list dt{color:var(--text-muted);font-size:var(--text-xs)}.patient-identity-list dd{margin:var(--space-1) 0 0;overflow-wrap:anywhere}.patient-contact-boundary{margin:0;padding:var(--space-3);border-left:3px solid var(--warn-fg);background:var(--warn-bg);color:var(--warn-fg);font-size:var(--text-sm)}.clinical-timeline{display:grid;gap:var(--space-4);border-left:2px solid var(--border-soft);padding-left:var(--space-5)}.clinical-entry{position:relative;display:grid;gap:var(--space-2);padding-bottom:var(--space-4)}.clinical-entry:before{position:absolute;top:var(--space-1);left:calc(-1 * var(--space-5) - .42rem);width:.75rem;height:.75rem;border:3px solid var(--surface);border-radius:var(--radius-pill);background:var(--brand-600);content:""}.clinical-entry.correction:before{background:var(--warn-fg)}.clinical-entry.voided{opacity:.72;text-decoration-color:var(--text-muted)}.clinical-entry.voided:before{background:var(--text-muted)}.clinical-entry.draft:before{background:var(--surface-muted);border-color:var(--border)}.clinical-entry-heading{display:flex;flex-wrap:wrap;justify-content:space-between;gap:var(--space-2)}.clinical-entry-heading span{color:var(--text-muted);font-size:var(--text-xs)}.clinical-entry-body{display:grid;grid-template-columns:6rem minmax(0,1fr);gap:var(--space-3)}.clinical-entry-body span{color:var(--text-muted);font-size:var(--text-xs);font-weight:700;text-transform:uppercase}.clinical-entry-body p{margin:0;white-space:pre-wrap}.clinical-lineage,.clinical-void-reason{margin:0;padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);background:var(--warn-bg);color:var(--warn-fg);font-size:var(--text-sm)}.record-voided{opacity:.72}.clinical-image-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-3);margin:var(--space-4) 0}.clinical-image-card{min-width:0;margin:0}.clinical-image-card img,.clinical-image-loading,.clinical-image-error{display:flex;width:100%;aspect-ratio:3 / 4;align-items:center;justify-content:center;object-fit:cover;border:1px solid var(--border-soft);border-radius:var(--radius-md);background:var(--surface-subtle)}.clinical-image-loading,.clinical-image-error{padding:var(--space-3);color:var(--text-muted);font-size:var(--text-xs);text-align:center}.clinical-image-error{display:grid;align-content:center;color:var(--danger-fg)}.clinical-image-card figcaption{margin-top:var(--space-2);color:var(--text-muted);font-size:var(--text-xs)}.patient-intake-inset{margin-top:var(--space-5);padding-top:var(--space-4);border-top:1px solid var(--border-soft)}.patient-identity-editor{scroll-margin-top:var(--space-5)}.responsibility-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:var(--space-3);margin-bottom:var(--space-4)}.responsibility-card{display:grid;gap:var(--space-1);min-height:92px;padding:var(--space-4);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);color:var(--text-strong)}.responsibility-card:hover{border-color:var(--brand-400);background:var(--surface-sunken)}.responsibility-card span{color:var(--text-body);font-size:var(--text-sm)}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:var(--space-3)}.section-heading h2{margin-bottom:0}.large-money{display:block;margin:var(--space-3) 0;font-family:"IBM Plex Serif",Georgia,serif;font-size:26px;font-weight:500;font-variant-numeric:tabular-nums}@media(max-width:850px){.app-shell{grid-template-columns:1fr}.sidebar{position:fixed;inset:auto 0 0;height:68px;padding:4px 6px;background:var(--surface);border-top:1px solid var(--border);color:var(--text-muted)}.brand,.staff-avatar{display:none}.sidebar nav{display:flex;justify-content:space-around;gap:0}.sidebar a{flex:1;min-height:58px;padding:3px;color:var(--text-muted);border-radius:var(--radius-sm)}.sidebar a:hover,.sidebar a.active{background:transparent;color:var(--brand-600)}.nav-mark{width:20px;height:20px;border:0}.nav-badge{top:1px;right:calc(50% - 22px)}.topbar{position:static;padding:0 var(--space-4)}.topbar>div{display:none}.topbar select{width:100%;min-width:0}.patient-context-bar{padding:var(--space-2) var(--space-4);flex-wrap:wrap}.patient-context-bar>div{min-width:calc(100% - 52px)}.content{padding:var(--space-4) var(--space-4) 88px}.split,.detail-grid,.form-grid{grid-template-columns:1fr}.workspace-heading,.page-heading,.context-strip,.visit-context-bar{align-items:flex-start;flex-direction:column}.workspace-header{display:block}.cockpit-grid,.visit-layout{grid-template-columns:1fr}.today-header{align-items:flex-start;flex-direction:column}.today-header-actions{width:100%;align-items:stretch;flex-direction:column}.today-view-toggle{width:max-content}.today-totals{width:100%}.today-metric{flex:1;min-width:0}.today-patient-tools{align-items:stretch;flex-direction:column}.room-board{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;margin-inline:calc(var(--space-4) * -1);padding:0 var(--space-4) var(--space-3)}.board-column{min-width:min(86vw,340px);height:56vh;scroll-snap-align:start}.visit-switcher{display:flex;overflow:auto;gap:.4rem}.visit-switcher h2{display:none}.visit-switcher button{min-width:180px}.schedule-grid-shell{display:none}.schedule-list{display:grid}.schedule-toolbar{align-items:stretch}.schedule-toolbar strong{width:100%;order:-1;margin:0}.schedule-toolbar button{min-height:var(--target-tablet)}.schedule-list-card{align-items:stretch;flex-direction:column}.schedule-list-card button,.schedule-list-card .button,.schedule-list-card summary{min-height:var(--target-tablet)}.booking-modal button,.booking-modal input,.booking-modal select,.booking-modal summary{min-height:var(--target-tablet)}.patient-record-header{align-items:flex-start}.patient-next-actions{width:100%;justify-content:flex-start}.patient-record-metrics,.patient-record-minimal .patient-record-metrics,.patient-reading-commercial,.patient-reading-clinical,.patient-reading-minimal{grid-template-columns:1fr}.patient-reading-commercial>*,.patient-reading-clinical>*,.patient-reading-minimal>*{grid-column:1}.patient-progressive:not([open])>div{display:none}.patient-progressive>summary{display:flex;min-height:var(--target-tablet);align-items:center;cursor:pointer;font-weight:650}.patient-progressive[open]>summary{margin-bottom:var(--space-3)}.clinical-image-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:601px)and (max-width:849px){.visit-desktop-workspace{display:grid;grid-template-columns:minmax(176px,220px) minmax(0,1fr);gap:var(--space-3);align-items:start}.visit-spine-header,.visit-desktop-workspace>.feedback,.visit-desktop-workspace>.module-panel{grid-column:1 / -1}.visit-header-actions{justify-items:start}.visit-step-rail{grid-column:1;display:flex;flex-direction:column;position:sticky;top:var(--space-3);margin:0}.visit-step-rail button{width:100%;min-height:var(--target-tablet)}.visit-main{grid-column:2;min-height:calc(100vh - 290px)}.visit-main .module-panel{min-height:calc(100vh - 292px)}.visit-main button,.visit-main input,.visit-main select,.visit-main textarea{min-height:var(--target-tablet)}.visit-tablet-consumables{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 var(--space-3);padding:var(--space-4);border-top:1px solid var(--border)}.visit-tablet-consumables>h2,.visit-tablet-consumables>p,.visit-tablet-consumables>.feedback,.visit-tablet-consumables>label.full{grid-column:1 / -1}.visit-tablet-consumables>button{grid-column:1 / -1}.visit-tablet-navigation{grid-column:2;display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.visit-tablet-navigation button{min-width:var(--target-tablet);min-height:var(--target-tablet)}}@media(max-width:600px){.booking-backdrop{padding:0}.booking-modal{width:100%;height:100vh;max-height:none;border-radius:0;padding:var(--space-4)}.booking-time-fields{grid-template-columns:1fr}.booking-actions{position:sticky;bottom:0;padding:var(--space-3) 0;background:var(--surface)}.booking-actions>*{flex:1;min-height:var(--target-tablet)}.schedule-toolbar button{flex:1}.patient-next-actions,.patient-next-actions>*,.patient-next-actions label{width:100%}.patient-identity-list,.clinical-entry-body{grid-template-columns:1fr}.clinical-image-grid{grid-template-columns:1fr 1fr}.visit-mobile-room{display:block}.visit-desktop-workspace.active-visit{display:none}.visit-mobile-room h1{margin:var(--space-1) 0;font-size:32px}.mobile-visit-reason{margin:0 0 var(--space-3);color:var(--text-body);font-size:15px}.mobile-care-chips{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-bottom:var(--space-4)}.mobile-care-chips span{padding:var(--space-2) var(--space-3);border-radius:var(--radius-pill);background:var(--surface);color:var(--text-chip);font-size:var(--text-sm);font-weight:600}.mobile-care-chips span.success{background:var(--success-bg);color:var(--success-fg)}.mobile-care-chips span.warning{background:var(--warn-bg);color:var(--warn-fg)}.mobile-dominant-action{width:100%;min-height:52px;margin-top:var(--space-3);font-size:15px}.mobile-secondary-action{width:100%;min-height:46px;margin-top:var(--space-2)}.mobile-treatment-list,.mobile-consumables{margin-top:var(--space-4);padding:var(--space-4);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface)}.mobile-treatment-list h2,.mobile-consumables h2{margin-top:0}.mobile-treatment-list button{display:flex;justify-content:space-between;gap:var(--space-3);width:100%;margin-bottom:var(--space-2);text-align:left}.mobile-treatment-list span{color:var(--text-body);font-size:var(--text-sm)}}@media print{@page{size:A4;margin:16mm}.sidebar,.topbar,.visit-tabs,.workspace-header,.no-print{display:none}.app-shell{display:block;min-height:0}.app-main,.content{margin:0;padding:0;max-width:none}.card,.module-panel,.visit-main{border:0;box-shadow:none;padding:0;background:var(--surface)}body:has(.print-region) *:not(:has(.print-region)):not(.print-region):not(.print-region *){display:none}.print-region.print-region{position:static;max-width:none;margin:0;padding:0;border:0;border-radius:0;box-shadow:none;background:var(--surface);color:#000}.print-region.print-region .eyebrow{color:#000}.print-region.print-region pre{font-size:11pt;line-height:var(--leading-normal)}.print-region button,.print-region .button,.print-region .row-actions,.print-region .feedback{display:none}}
