:root{--bg:#f4f8f8;--panel:#ffffff;--panel-soft:#eef7f6;--ink:#173333;--muted:#647778;--line:#dbe7e6;--teal:#0f9488;--teal-deep:#08766e;--blue:#246bfe;--amber:#b97812;--rose:#bf3d55;--shadow:0 18px 45px rgba(23,51,51,0.08)}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.shell{display:grid;grid-template-columns:280px minmax(0,1fr);height:100vh;height:100dvh;min-height:100vh;overflow:hidden;transition:grid-template-columns .18s ease}.shell.shell-collapsed{grid-template-columns:84px minmax(0,1fr)}.sidebar{background:#ffffff;border-right:1px solid var(--line);display:flex;flex-direction:column;gap:26px;height:100vh;height:100dvh;min-height:0;overflow:hidden;padding:24px 18px;position:-webkit-sticky;position:sticky;top:0;transition:padding .18s ease,gap .18s ease}.brand,.login-brand,.sidebar-header{align-items:center;display:flex;gap:12px}.sidebar-header{justify-content:space-between}.brand-mark,.login-brand span{align-items:center;background:var(--teal);border-radius:8px;color:#ffffff;display:inline-flex;height:42px;justify-content:center;width:42px}.brand strong,.login-brand strong{display:block;font-size:15px;letter-spacing:0}.brand small,.login-brand small{color:var(--muted);display:block;font-size:12px;margin-top:2px}.brand-copy{min-width:0;transition:opacity .16s ease,width .16s ease}.nav-list{display:grid;grid-gap:6px;gap:6px}.patient-summary-grid{display:grid;grid-gap:16px;gap:16px;grid-template-columns:repeat(4,minmax(0,1fr))}.patient-chart-panel,.patient-import-panel,.patient-section,.patient-summary-card{background:#fff;border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow);min-width:0}.patient-summary-card{align-items:start;display:flex;gap:14px;padding:18px}.patient-summary-card>div{min-width:0}.patient-summary-icon{align-items:center;border-radius:8px;display:inline-flex;flex:0 0 42px;height:42px;justify-content:center}.patient-summary-card p,.patient-summary-card small{color:var(--muted);display:block;margin:0}.patient-summary-card p{font-size:14px;font-weight:650}.patient-summary-card strong{color:var(--ink);display:block;font-size:27px;line-height:1.2;margin:6px 0;overflow-wrap:anywhere}.patient-summary-card small{font-size:12px;line-height:1.45}.patient-latest-context{align-items:center;background:#eef7f6;border:1px solid #d7e9e7;border-radius:8px;color:#365657;display:flex;flex-wrap:wrap;gap:8px 14px;padding:12px 16px}.patient-latest-context span{color:var(--teal-deep);font-weight:700}.patient-month-filter{align-items:end;display:flex;flex-wrap:wrap;gap:16px}.patient-month-filter label{color:#405657;display:grid;font-size:13px;font-weight:700;grid-gap:7px;gap:7px;min-width:min(280px,100%)}.patient-month-filter select{background:#fff;border:1px solid var(--line);border-radius:8px;color:var(--ink);min-height:44px;padding:9px 11px}.patient-month-filter p{color:var(--muted);font-size:13px;margin:0 0 10px}.patient-monthly-chart{border-top:1px solid var(--line);margin-top:22px;padding-top:22px}.patient-baseline-notice{background:#fff8e8;border:1px solid #f1d79a;border-radius:8px;color:#775514;font-size:13px;line-height:1.55;margin:0 0 16px;padding:12px 14px}.patient-chart-panel,.patient-import-panel,.patient-section{padding:20px}.patient-section-heading{align-items:end;display:flex;gap:18px;justify-content:space-between;margin-bottom:16px}.patient-section-heading h2{font-size:20px;margin:0}.patient-section-heading>p{color:var(--muted);font-size:13px;line-height:1.5;margin:0;max-width:520px}.patient-import-form{align-items:end;display:grid;grid-gap:14px;gap:14px;grid-template-columns:minmax(170px,.8fr) minmax(200px,1fr) minmax(250px,1.4fr) auto}.patient-chart-controls label,.patient-import-form label{color:#405657;display:grid;font-size:13px;font-weight:700;grid-gap:7px;gap:7px;min-width:0}.patient-chart-controls select,.patient-import-form input,.patient-import-form select{background:#fff;border:1px solid var(--line);border-radius:8px;color:var(--ink);min-height:44px;min-width:0;padding:9px 11px;width:100%}.patient-file-input input{font-size:12px;padding:8px}.patient-import-actions{display:flex;gap:8px;grid-column:1/-1}.patient-import-actions .compact-button{min-height:42px}.patient-import-actions button:disabled{cursor:not-allowed;opacity:.5}.patient-upload-message{color:#a3324b;font-size:13px;margin:14px 0 0}.patient-upload-message.is-success{color:#08796f}.patient-preview{background:#f5f9f9;border:1px solid var(--line);border-radius:8px;display:flex;flex-wrap:wrap;gap:8px 16px;margin-top:14px;padding:14px}.patient-preview span,.patient-preview strong{color:#355152;font-size:13px}.patient-preview small{color:var(--muted);flex-basis:100%;line-height:1.5}.patient-setup-warning,.patient-warning-text{color:#89570a}.patient-setup-warning{background:#fff7e5;border:1px solid #f2d08a;border-radius:8px;padding:14px 16px}.patient-chart-controls{display:flex;gap:10px;min-width:min(100%,380px)}.patient-chart-controls label{flex:1 1}.patient-branch-toggles,.patient-period-legend{align-items:center;display:flex;flex-wrap:wrap;gap:8px 14px;margin:8px 0 12px}.patient-branch-toggle{align-items:center;background:#fff;border:1px solid var(--line);border-radius:999px;color:var(--muted);cursor:pointer;display:inline-flex;font-size:12px;gap:7px;min-height:32px;padding:5px 10px}.patient-branch-toggle.is-active{color:var(--ink);font-weight:700}.patient-branch-toggle span{border-radius:50%;height:9px;width:9px}.patient-chart-scroll{overflow-x:auto;overscroll-behavior-x:contain}.patient-trend-svg{display:block;max-height:330px;min-width:620px;width:100%}.patient-chart-gridline{stroke:#e4eeee;stroke-width:1}.patient-chart-axis{fill:#687d7e;font-size:12px}.patient-chart-note,.patient-empty,.patient-period-legend,.patient-privacy-note{color:var(--muted);font-size:12px;line-height:1.55}.patient-period-legend{justify-content:space-between;margin:0}.patient-chart-note,.patient-privacy-note{margin:12px 0 0}.patient-empty{margin:0}.sidebar-menu{display:grid;flex:1 1 auto;grid-gap:26px;gap:26px;min-height:0;overflow-y:auto;overscroll-behavior-y:contain}.branch-nav{border-top:1px solid var(--line);display:grid;grid-gap:6px;gap:6px;padding-top:18px}.branch-nav>span{color:var(--muted);font-size:12px;font-weight:750;letter-spacing:.08em;padding:0 12px 4px;text-transform:uppercase}.sidebar-toggle{align-items:center;background:#f5f8f8;border:1px solid var(--line);border-radius:8px;color:#385151;cursor:pointer;display:inline-flex;flex:0 0 auto;height:38px;justify-content:center;transition:background .16s ease,color .16s ease,border-color .16s ease;width:38px}.sidebar-toggle:hover{background:var(--panel-soft);color:var(--teal-deep)}.branch-nav-item,.ghost-button,.nav-item,.primary-button{align-items:center;border:0;border-radius:8px;cursor:pointer;display:inline-flex;gap:10px;min-height:42px;padding:10px 12px}.nav-item{color:#385151;position:relative}.branch-nav-item{color:#4d6566;font-size:13px}.branch-nav-item:hover,.nav-item:hover{background:var(--panel-soft);color:var(--teal-deep)}.branch-nav-item-active,.nav-item-active{background:#e7f5f3;color:var(--teal-deep)}.branch-nav-item-active:before,.nav-item-active:before{background:var(--teal);border-radius:999px;content:"";height:22px;left:4px;position:absolute;top:50%;transform:translateY(-50%);width:3px}.sidebar-footer{margin-top:auto}.ghost-button{background:#f5f8f8;color:#385151;width:100%}.compact-button{min-height:36px;padding:8px 10px;width:auto}.primary-button{background:var(--teal);color:#ffffff;justify-content:center}.primary-button:hover{background:var(--teal-deep)}.main-panel{height:100%;min-width:0;min-height:0;overflow-y:auto;overscroll-behavior-y:contain;padding:30px;transition:padding .18s ease}.module-header{margin-bottom:24px;max-width:860px}.module-header span{color:var(--teal-deep);display:block;font-size:12px;font-weight:750;letter-spacing:.08em;margin-bottom:8px;text-transform:uppercase}.module-header h1{font-size:clamp(28px,4vw,42px);line-height:1.05;margin:0}.module-header p{color:var(--muted);font-size:16px;line-height:1.6;margin:10px 0 0}.module-header.compact h1{font-size:28px}.cards-grid,.dashboard-grid{display:grid;grid-gap:16px;gap:16px}.dashboard-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.bank-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:18px}.bank-breakdown-content .summary-list{grid-template-columns:repeat(2,minmax(0,1fr))}.bank-breakdown-content .summary-list div{gap:12px;min-width:0}.bank-breakdown-content .summary-list dd{font-weight:700;text-align:right;overflow-wrap:anywhere}.owner-overview{display:grid;grid-gap:16px;gap:16px;grid-template-columns:repeat(4,minmax(0,1fr));margin:20px 0}.owner-summary-card{background:var(--panel);border:1px solid var(--line);border-left:4px solid var(--teal);border-radius:8px;box-shadow:var(--shadow);min-width:0;padding:18px}.owner-summary-costs{border-left-color:var(--amber)}.owner-summary-alert{border-left-color:var(--rose)}.owner-summary-card>span{color:var(--muted);display:block;font-size:14px;font-weight:650}.owner-summary-card strong{color:var(--ink,#183536);display:block;font-size:27px;line-height:1.2;margin-top:8px;overflow-wrap:anywhere}.owner-period-context,.owner-summary-card p{color:var(--muted);font-size:13px;line-height:1.5;margin:8px 0 0}.owner-attention{align-items:start;background:#fff;border:1px solid var(--line);border-radius:8px;display:grid;grid-gap:20px;gap:20px;grid-template-columns:minmax(220px,.8fr) minmax(0,1.2fr);padding:20px}.owner-section-kicker{color:var(--teal-deep);font-size:11px;font-weight:750;margin:0 0 6px}.owner-attention h2{font-size:20px;margin:0}.owner-attention ul{display:grid;grid-gap:10px;gap:10px;margin:0;padding-left:20px}.owner-attention li{color:#405657;line-height:1.55}.owner-accounting-note{background:#eef7f6;border-radius:8px;color:#365657;line-height:1.6;margin:14px 0 22px;padding:14px 16px}.dashboard-patient-analytics{display:grid;grid-gap:18px;gap:18px;margin:24px 0;min-width:0}.dashboard-patient-heading{align-items:end;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between}.dashboard-patient-heading h2{margin:0}.dashboard-patient-analytics small,.dashboard-patient-heading p{color:var(--muted);display:block;margin:4px 0 0}.dashboard-patient-analytics .dashboard-patient-alert{color:#a54f26;font-weight:700}.dashboard-patient-analytics .dashboard-patient-ok{color:var(--teal-deep);font-weight:700}.dashboard-patient-summary{align-items:center;background:#fff;border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow);display:flex;flex-wrap:wrap;gap:12px 24px;justify-content:space-between;margin:18px 0;padding:18px 20px}.dashboard-patient-summary h2{font-size:19px;margin:0}.dashboard-patient-summary p,.dashboard-patient-summary small{color:var(--muted);display:block;font-size:13px;line-height:1.5;margin:4px 0 0}.dashboard-patient-metrics{display:flex;flex-wrap:wrap;gap:10px 20px}.dashboard-patient-metrics span{color:var(--muted);font-size:13px}.dashboard-patient-metrics strong{color:var(--ink);font-size:20px;margin-right:4px}.dashboard-patient-summary .dashboard-patient-alert{color:#a54f26;font-weight:700}.dashboard-patient-summary .dashboard-patient-ok{color:var(--teal-deep);font-weight:700}.owner-detail-disclosure{margin-top:22px}.owner-detail-disclosure.owner-detail-expanded{margin-top:0}.owner-detail-expanded>summary{display:none}.owner-detail-disclosure>summary{align-items:center;background:#fff;border:1px solid var(--line);border-radius:8px;color:var(--teal-deep);cursor:pointer;display:flex;font-weight:700;justify-content:space-between;list-style:none;padding:15px 18px}.owner-detail-disclosure>summary::-webkit-details-marker{display:none}.owner-detail-disclosure>summary:after{content:"+";font-size:22px;line-height:1}.owner-detail-disclosure[open]>summary:after{content:"−"}.owner-detail-content{padding-top:18px}.cards-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.reporting-filter{align-items:end;background:var(--panel);border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow);display:grid;grid-gap:14px;gap:14px;grid-template-columns:minmax(190px,.7fr) minmax(280px,1fr) auto;margin-bottom:18px;padding:16px}.dashboard-filter{grid-template-columns:repeat(4,minmax(150px,1fr))}.dashboard-filter fieldset{grid-column:span 2}.bank-filter{grid-template-columns:repeat(4,minmax(150px,1fr))}.audit-filter{grid-template-columns:repeat(4,minmax(170px,1fr))}.audit-search{grid-column:span 2}.bank-filter .primary-button{justify-self:start}.reporting-filter fieldset{border:0;margin:0;padding:0}.reporting-filter legend{color:#344f50;font-size:13px;font-weight:650;margin-bottom:7px}.checkbox-grid{display:grid;grid-gap:8px;gap:8px;grid-template-columns:repeat(2,minmax(0,1fr))}.checkbox-grid label{align-items:center;background:#f7fbfb;border:1px solid var(--line);border-radius:8px;display:flex;gap:8px;min-height:42px;padding:8px 10px}.checkbox-grid input{min-height:auto;padding:0}.selected-branches{color:var(--muted);font-size:13px;grid-column:1/-1;line-height:1.5;margin:0}.branch-card,.form-card,.metric-card,.report-panel{background:var(--panel);border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow)}.metric-card{align-items:flex-start;display:flex;gap:14px;padding:18px}.metric-icon{align-items:center;border-radius:8px;display:inline-flex;height:40px;justify-content:center;width:40px}.tone-teal .metric-icon{background:#e0f4f1;color:var(--teal-deep)}.tone-blue .metric-icon{background:#e8efff;color:var(--blue)}.tone-amber .metric-icon{background:#fff3da;color:var(--amber)}.tone-rose .metric-icon{background:#ffe8ed;color:var(--rose)}.branch-card span,.metric-card p{color:var(--muted);font-size:13px;margin:0 0 6px}.metric-card strong{display:block;font-size:24px;line-height:1.1}.metric-card span{color:var(--muted);display:block;font-size:12px;margin-top:8px}.section-grid{display:grid;grid-gap:18px;gap:18px;grid-template-columns:minmax(0,1.4fr) minmax(320px,.6fr);margin-top:18px}.cards-grid>*,.form-card>*,.form-grid>*,.section-grid>*{min-width:0}.mt-section{margin-top:18px}.chart-grid{display:grid;grid-gap:18px;gap:18px;grid-template-columns:repeat(3,minmax(0,1fr))}.chart-panel{background:var(--panel);border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow);padding:18px}.chart-panel h2,.table-section h2{font-size:18px;margin:0 0 14px}.bar-list{display:grid;grid-gap:12px;gap:12px}.bar-row{display:grid;grid-gap:8px;gap:8px;grid-template-columns:86px minmax(0,1fr) minmax(92px,auto);min-height:34px}.bar-row span{color:var(--muted);font-size:12px}.bar-row strong{font-size:13px;text-align:right}.bar-track{background:#edf5f5;border-radius:999px;height:12px;margin-top:3px;overflow:hidden}.bar-fill{background:var(--teal);border-radius:inherit;height:100%}.chart-blue .bar-fill{background:var(--blue)}.chart-amber .bar-fill{background:var(--amber)}.bar-fill.bar-negative,.chart-rose .bar-fill{background:var(--rose)}.table-section{display:grid;grid-gap:14px;gap:14px}.audit-json{background:#f7fbfb;border:1px solid var(--line);border-radius:8px;color:#274445;font-size:12px;line-height:1.45;margin:0;max-height:220px;max-width:520px;overflow:auto;padding:10px;white-space:pre-wrap;word-break:break-word}.export-csv-link{width:-moz-fit-content;width:fit-content}.export-report-bar,.report-toolbar{align-items:center;display:flex;gap:12px;justify-content:space-between}.export-report-bar{justify-content:flex-end;margin-bottom:18px}.report-toolbar h2{margin:0}.single-column{grid-template-columns:1fr}.panel-management-layout,.panel-management-stack{display:grid;grid-gap:18px;gap:18px;grid-template-columns:minmax(0,1fr)}.panel-management-directory,.panel-management-form{background:var(--panel);border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow)}.panel-management-form-grid{display:grid;grid-gap:14px;gap:14px;grid-template-columns:repeat(2,minmax(0,1fr))}.panel-management-field-full{grid-column:1/-1}.panel-management-actions{display:flex;justify-content:flex-start}.panel-management-actions .primary-button{min-width:200px}.supplier-management-layout{display:grid;grid-gap:18px;gap:18px;grid-template-columns:minmax(0,1fr)}.supplier-management-form{background:var(--panel);border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow)}.supplier-management-form-grid{display:grid;grid-gap:14px;gap:14px;grid-template-columns:repeat(2,minmax(0,1fr))}.supplier-management-field-full{grid-column:1/-1}.supplier-management-actions{display:flex;justify-content:flex-start}.supplier-management-actions .primary-button{min-width:200px}.panel-outstanding-filter-section,.panel-outstanding-groups{width:100%}.panel-outstanding-filter{align-items:end;background:var(--panel);border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow);display:grid;grid-gap:14px;gap:14px;grid-template-columns:minmax(260px,.8fr) auto minmax(220px,1fr);padding:18px}.panel-outstanding-entry-layout,.panel-outstanding-entry-stack{display:grid;grid-gap:18px;gap:18px;grid-template-columns:minmax(0,1fr)}.panel-outstanding-entry-form{background:var(--panel);border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow)}.panel-outstanding-entry-form-grid{display:grid;grid-gap:14px;gap:14px;grid-template-columns:repeat(2,minmax(0,1fr))}.panel-outstanding-field-full{grid-column:1/-1}.panel-outstanding-actions{display:flex;justify-content:flex-start}.panel-outstanding-actions .primary-button{min-width:200px}.cash-bank-in-entry-layout,.petty-cash-entry-layout{display:grid;grid-gap:18px;gap:18px;grid-template-columns:minmax(0,1fr)}.cash-bank-in-entry-form,.cash-bank-in-filter,.petty-cash-entry-form{background:var(--panel);border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow)}.cash-bank-in-filter{align-items:end;display:grid;grid-gap:14px;gap:14px;grid-template-columns:minmax(180px,.8fr) minmax(180px,.8fr) minmax(180px,.8fr) minmax(180px,.8fr) auto minmax(220px,1fr);padding:18px}.daily-sales-filter{grid-template-columns:repeat(6,minmax(150px,1fr)) auto}.quick-filter-row{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.branch-card{padding:18px}.branch-card h3{font-size:20px;margin:0 0 16px}.branch-card dl{display:grid;grid-gap:12px;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr));margin:0}.branch-card div div,.branch-card dl div{background:#f7fbfb;border-radius:8px;padding:12px}dt{color:var(--muted);font-size:12px}dd{font-weight:750;margin:4px 0 0}.positive{color:var(--teal-deep)}.negative{color:var(--rose)}.table-wrap{background:var(--panel);border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow);overflow-x:auto}.opening-reconciliation-list{display:grid;grid-gap:10px;gap:10px;min-width:0}.opening-reconciliation-item{background:var(--panel);border:1px solid var(--line);border-radius:8px;min-width:0;overflow:hidden}.opening-reconciliation-header{align-items:center;display:grid;grid-gap:16px;gap:16px;grid-template-columns:minmax(130px,1fr) repeat(2,minmax(140px,.8fr)) minmax(150px,auto);padding:14px 16px}.opening-reconciliation-header h3,.opening-reconciliation-month,.opening-reconciliation-primary span{margin:0}.opening-reconciliation-header h3{font-size:16px}.opening-reconciliation-month,.opening-reconciliation-primary span{color:var(--muted);font-size:12px;line-height:1.4}.opening-reconciliation-actions,.opening-reconciliation-primary{display:grid;grid-gap:4px;gap:4px}.opening-reconciliation-primary strong{font-size:16px;overflow-wrap:anywhere}.opening-reconciliation-actions{justify-items:end}.opening-reconciliation-details{border-top:1px solid var(--line);padding:0 16px}.opening-reconciliation-details>summary{color:var(--teal-deep);cursor:pointer;font-size:13px;font-weight:700;padding:10px 0}.opening-reconciliation-details dl{display:grid;grid-gap:8px;gap:8px;grid-template-columns:repeat(4,minmax(0,1fr));margin:0 0 14px}.opening-reconciliation-details dl>div{background:#f7fbfb;border-radius:6px;min-width:0;padding:9px 10px}.opening-reconciliation-details dt{line-height:1.35}.opening-reconciliation-details dd{overflow-wrap:anywhere}.opening-reconciliation-details .opening-reconciliation-note{grid-column:span 2}table{border-collapse:collapse;min-width:720px;width:100%}td,th{border-bottom:1px solid var(--line);padding:14px 16px;text-align:left;vertical-align:top}th{background:#f8fbfb;color:#4c6263;font-size:12px;letter-spacing:.04em;text-transform:uppercase}td{color:#263f40;font-size:14px}.table-subtext{color:var(--muted);display:block;font-size:12px;margin-top:5px;overflow-wrap:anywhere}tr:last-child td{border-bottom:0}.form-card{padding:18px}.form-card,.payroll-filters{display:grid;grid-gap:14px;gap:14px}.payroll-filters{align-items:end;grid-template-columns:minmax(220px,1fr) minmax(220px,1fr) auto}.payroll-footnote,.payroll-guidance,.payroll-list-heading p,.payroll-record-main p,.payroll-record-note{color:var(--muted);margin:6px 0 0}.payroll-entry-form .primary-button{justify-self:start}.payroll-description{grid-column:1/-1}.payroll-list-heading{align-items:center;border-bottom:1px solid var(--line);display:flex;gap:16px;justify-content:space-between;margin-bottom:4px;padding-bottom:14px}.payroll-list-heading h2{margin:0}.payroll-list-heading>strong{font-size:20px}.payroll-record-list{display:grid}.payroll-record{border-bottom:1px solid var(--line);display:grid;grid-gap:10px;gap:10px;min-width:0;padding:16px 2px}.payroll-record:last-child{border-bottom:0}.payroll-record.is-void{opacity:.65}.payroll-record-main,.payroll-record-meta{align-items:flex-start;display:flex;flex-wrap:wrap;gap:10px 22px;justify-content:space-between;min-width:0}.payroll-record-main>div:first-child{min-width:0;overflow-wrap:anywhere}.payroll-record-main>div:first-child>strong{font-size:16px}.payroll-record-amount{display:grid;justify-items:end;text-align:right}.payroll-record-amount strong{font-size:17px}.payroll-record-amount span,.payroll-record-meta{color:var(--muted);font-size:13px}.payroll-record-meta{justify-content:flex-start}.payroll-record-note{overflow-wrap:anywhere}.payroll-documents{margin-top:2px}.payroll-documents>summary{color:var(--teal-deep);cursor:pointer;font-size:13px;font-weight:750}.payroll-footnote{font-size:13px;line-height:1.55}@media (max-width:700px){.payroll-filters{grid-template-columns:1fr}.payroll-description{grid-column:auto}.payroll-record-amount{justify-items:start;text-align:left}}.supplier-payment-filters,.supplier-payment-form-filters{align-items:end;background:var(--panel);border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow);display:grid;grid-gap:14px;gap:14px;grid-template-columns:repeat(3,minmax(0,1fr)) auto;padding:16px}.supplier-payment-form-filters{background:#f7fbfb;box-shadow:none;grid-template-columns:repeat(2,minmax(0,1fr));padding:14px}.supplier-filter-caption,.supplier-form-intro,.supplier-selected-balance{color:var(--muted);margin:0}.supplier-filter-caption span{margin-left:8px}.supplier-balance-groups,.supplier-payment-list{display:grid;grid-gap:12px;gap:12px;min-width:0}.supplier-balance-group,.supplier-payment-entry{background:var(--panel);border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow);min-width:0}.supplier-balance-group>summary{align-items:center;cursor:pointer;display:flex;gap:16px;justify-content:space-between;list-style:none;padding:15px 18px}.supplier-balance-group>summary::-webkit-details-marker{display:none}.supplier-balance-group>summary span,.supplier-balance-row>div:first-child,.supplier-payment-amount,.supplier-payment-entry-main>div:first-child{display:grid;grid-gap:4px;gap:4px;min-width:0}.supplier-balance-group>summary small,.supplier-balance-row small,.supplier-balance-row span,.supplier-payment-date,.supplier-payment-entry p,.supplier-payment-meta,.supplier-payment-notes,.void-detail{color:var(--muted);font-size:13px;overflow-wrap:anywhere}.supplier-balance-row{align-items:center;border-top:1px solid var(--line);display:grid;grid-gap:12px 18px;gap:12px 18px;grid-template-columns:minmax(180px,1fr) minmax(150px,auto) auto auto;min-width:0;padding:12px 18px}.supplier-balance-figures{display:grid;grid-gap:4px;gap:4px;justify-items:end;text-align:right}.supplier-balance-total{align-items:center;background:#f0f8f7;border-top:1px solid var(--line);color:#274445;display:flex;flex-wrap:wrap;gap:8px;justify-content:space-between;padding:13px 18px}.supplier-balance-total strong{font-size:17px}.supplier-quick-payment{min-width:0;position:relative}.supplier-quick-payment>summary{align-items:center;background:var(--teal);border-radius:8px;color:white;cursor:pointer;display:inline-flex;font-size:14px;font-weight:750;justify-content:center;list-style:none;min-height:46px;padding:0 18px;white-space:nowrap}.supplier-quick-payment>summary::-webkit-details-marker{display:none}.supplier-quick-payment[open]>summary{background:var(--teal-deep)}.supplier-quick-payment .manual-bank-edit-form{min-width:min(340px,calc(100vw - 48px))}.supplier-payment-actions .manual-bank-editor{min-width:0}.supplier-payment-entry{padding:16px}.supplier-payment-entry-main{align-items:start;display:flex;gap:16px;justify-content:space-between;min-width:0}.supplier-payment-entry h3{font-size:16px;margin:0;overflow-wrap:anywhere}.supplier-payment-entry p{margin:0}.supplier-payment-amount{align-items:end;flex:0 0 auto;text-align:right}.supplier-payment-amount>strong{font-size:19px}.supplier-payment-meta{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:12px}.supplier-payment-notes{margin-top:10px!important}.supplier-payment-actions{align-items:start;border-top:1px solid var(--line);display:flex;flex-wrap:wrap;gap:8px;margin-top:14px;padding-top:12px}.supplier-payment-actions .document-manager,.supplier-payment-actions>details{max-width:100%}.empty-state{color:var(--muted);margin:0;padding:18px}.inline-form{align-items:center;display:grid;grid-gap:10px;gap:10px;grid-template-columns:minmax(130px,.8fr) minmax(150px,1fr) minmax(110px,.7fr) auto;min-width:620px}.inline-form .primary-button{min-height:42px}.user-management{display:grid;grid-gap:18px;gap:18px}.user-filter-panel{align-items:end;display:grid;grid-gap:14px;gap:14px;grid-template-columns:minmax(260px,1fr) minmax(180px,.35fr) minmax(200px,.45fr)}.search-field span{align-items:center;border:1px solid #cfdedd;border-radius:8px;display:flex;gap:8px;min-height:42px;padding:0 10px}.search-field input{border:0;min-height:38px;padding:0;width:100%}.search-field input:focus{outline:none}.user-edit-form{display:grid;grid-gap:10px;gap:10px;grid-template-columns:minmax(170px,1fr) minmax(130px,.6fr) minmax(150px,.8fr) minmax(110px,.55fr) auto;min-width:820px}.user-edit-form label{font-size:12px}.user-edit-form .primary-button{align-self:end}.user-management-actions{display:grid;grid-gap:14px;gap:14px}.bank-permission-form{background:#f7fbfb;border:1px solid var(--line);border-radius:8px;display:grid;grid-gap:12px;gap:12px;min-width:820px;padding:12px}.bank-permission-form>strong{font-size:13px}.bank-permission-grid{display:grid;grid-gap:10px;gap:10px;grid-template-columns:repeat(2,minmax(210px,1fr))}.bank-permission-grid fieldset,.permission-checklist{background:#ffffff;border:1px solid var(--line);border-radius:8px;display:grid;grid-gap:8px;gap:8px;margin:0;padding:12px}.bank-permission-grid legend,.permission-checklist legend{color:#344f50;font-size:12px;font-weight:750;margin-bottom:4px}.bank-permission-grid label,.permission-checklist label{align-items:center;display:flex;font-size:12px;gap:8px}.bank-permission-grid input,.permission-checklist input{min-height:auto;padding:0}.bank-permission-form .primary-button{justify-self:start}.form-grid{display:grid;grid-gap:14px;gap:14px;grid-template-columns:repeat(auto-fit,minmax(min(220px,100%),1fr))}.manual-bank-editor{min-width:260px}.manual-bank-editor summary{color:var(--teal-deep);cursor:pointer;font-size:13px;font-weight:750}.manual-bank-edit-form{background:#f7fbfb;border:1px solid var(--line);border-radius:8px;display:grid;grid-gap:10px;gap:10px;margin-top:10px;padding:12px}.manual-bank-edit-form label{font-size:12px}.manual-bank-edit-form textarea{min-height:64px}.record-detail-grid{background:#f7fbfb;border:1px solid var(--line);border-radius:8px;display:grid;grid-gap:8px;gap:8px;margin-top:10px;min-width:250px;padding:12px}.record-detail-grid div{display:grid;grid-gap:3px;gap:3px}.record-detail-grid strong{font-size:12px}.record-detail-card{background:#f7fbfb;border:1px solid var(--line);border-radius:8px;display:grid;grid-gap:10px;gap:10px;margin-top:10px;min-width:340px;padding:12px}.record-detail-card .record-detail-grid{background:transparent;border:0;margin-top:0;min-width:0;padding:0}.record-summary{display:grid;grid-gap:4px;gap:4px}.record-summary strong{font-size:13px;line-height:1.45}.void-record-form{border-color:#f3c4cf}.void-warning{background:#ffe8ed;border-radius:8px;color:var(--rose);font-size:12px;line-height:1.45;margin:0;padding:9px}.document-manager{display:grid;grid-gap:8px;gap:8px;min-width:300px}.document-actions{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.document-action summary{list-style:none;width:-moz-fit-content;width:fit-content}.document-action summary::-webkit-details-marker{display:none}.document-panel{background:#f7fbfb;border:1px solid var(--line);border-radius:8px;display:grid;grid-gap:12px;gap:12px;margin-top:10px;min-width:420px;padding:12px}.document-delete form,.document-item,.document-links,.document-list,.document-meta,.document-upload-form{display:grid;grid-gap:9px;gap:9px}.document-delete label,.document-upload-form label{font-size:12px}.document-delete textarea,.document-upload-form textarea{min-height:60px}.document-message{color:var(--teal-deep);font-size:12px;margin:0}.document-item{background:#ffffff;padding:10px}.document-item,.document-preview{border:1px solid var(--line);border-radius:8px}.document-preview{background:#f7fbfb;display:block;height:auto;max-height:220px;object-fit:contain;width:100%}.document-meta{color:var(--muted);font-size:12px;overflow-wrap:anywhere}.document-meta strong{color:#263f40;font-size:13px}.document-links{grid-template-columns:repeat(2,minmax(0,1fr))}.document-links .ghost-button{justify-content:center}.document-delete summary{color:var(--rose)}.document-report-filter{grid-template-columns:repeat(4,minmax(150px,1fr))}.audit-details{min-width:240px}.audit-details summary{list-style:none;width:-moz-fit-content;width:fit-content}.audit-details summary::-webkit-details-marker{display:none}.audit-readable-details{background:#f7fbfb;border:1px solid var(--line);border-radius:8px;display:grid;grid-gap:12px;gap:12px;margin-top:10px;min-width:640px;padding:12px}.audit-description{color:#344f50;margin:0}.audit-change-table{background:#ffffff;border:1px solid var(--line);border-collapse:separate;border-radius:8px;border-spacing:0;font-size:12px;overflow:hidden;width:100%}.audit-change-table td,.audit-change-table th{border-bottom:1px solid var(--line);overflow-wrap:anywhere;padding:9px;text-align:left;vertical-align:top}.audit-change-table tbody tr:last-child td{border-bottom:0}.audit-change-table th{background:#e9f4f3;color:#344f50}.audit-raw-details summary{color:var(--teal-deep);cursor:pointer;font-size:12px;font-weight:750}.audit-detail-grid{background:#f7fbfb;border:1px solid var(--line);border-radius:8px;display:grid;grid-gap:10px;gap:10px;margin-top:10px;min-width:560px;padding:12px}.audit-detail-grid section{display:grid;grid-gap:7px;gap:7px}.audit-detail-grid strong{font-size:12px}.audit-detail-grid pre{background:#ffffff;border:1px solid var(--line);border-radius:8px;color:#263f40;font-size:12px;line-height:1.5;margin:0;max-height:240px;overflow:auto;padding:10px;white-space:pre-wrap}label{color:#344f50;display:grid;font-size:13px;font-weight:650;grid-gap:7px;gap:7px}input,select,textarea{background:#ffffff;border:1px solid #cfdedd;border-radius:8px;color:var(--ink);min-height:42px;min-width:0;padding:10px 12px;width:100%}input[type=checkbox],input[type=radio]{width:auto}textarea{min-height:84px;resize:vertical}.full-span{grid-column:1/-1}.report-panel{padding:20px}.report-panel h2{font-size:18px;margin:0 0 14px}.summary-list{display:grid;grid-gap:12px;gap:12px;margin:0}.summary-list div{align-items:center;background:#f7fbfb;border-radius:8px;display:flex;justify-content:space-between;padding:12px}.summary-list dd,.summary-list dt{margin:0}.status-pill{border-radius:999px;display:inline-flex;font-size:12px;font-weight:750;padding:5px 9px}.status-paid{background:#e0f4f1;color:var(--teal-deep)}.status-partial{background:#fff3da;color:var(--amber)}.status-overdue,.status-unpaid{background:#ffe8ed;color:var(--rose)}.status-voided{background:#f1f3f5;color:#6b7280}.ledger-group-list{display:grid;grid-gap:18px;gap:18px}.ledger-group-card{background:#fff;border:1px solid var(--line);border-radius:14px;display:grid;grid-gap:14px;gap:14px;padding:18px}.ledger-group-header{align-items:flex-start;display:flex;flex-wrap:wrap;gap:12px 18px;justify-content:space-between}.ledger-group-header h3{margin:0}.ledger-group-header p{color:var(--muted);margin:4px 0 0}.ledger-group-summary{display:flex;flex-wrap:wrap;gap:8px}.ledger-branch-section{display:grid;grid-gap:14px;gap:14px}.ledger-summary-chip{background:#f7fbfb;border:1px solid var(--line);border-radius:999px;color:#325656;font-size:12px;font-weight:700;padding:6px 10px}.purchase-entry-list{min-width:0}.purchase-entry{border-top:1px solid var(--line);display:grid;grid-gap:12px;gap:12px;min-width:0;padding:16px 0}.purchase-entry-top{align-items:center;display:grid;grid-gap:10px 18px;gap:10px 18px;grid-template-columns:minmax(0,1fr) auto auto;min-width:0}.purchase-entry-amount,.purchase-entry-title{display:grid;grid-gap:4px;gap:4px;min-width:0}.purchase-entry-amount strong,.purchase-entry-title strong{overflow-wrap:anywhere}.purchase-entry-amount span,.purchase-entry-notes,.purchase-entry-title span{color:var(--muted);font-size:13px;overflow-wrap:anywhere}.purchase-entry-amount{text-align:right}.purchase-entry-amount strong{font-size:18px}.purchase-entry-details{display:grid;grid-gap:10px 16px;gap:10px 16px;grid-template-columns:repeat(4,minmax(0,1fr))}.purchase-entry-details>span{align-items:flex-start;display:grid;grid-gap:4px;gap:4px;min-width:0;overflow-wrap:anywhere}.purchase-entry-details small{color:var(--muted);font-size:11px}.purchase-entry-notes{margin:0}.purchase-entry-actions{align-items:flex-start;border-top:1px solid var(--line);display:flex;flex-wrap:wrap;gap:10px;padding-top:10px}.purchase-entry-actions .manual-bank-edit-form{grid-template-columns:repeat(2,minmax(0,1fr));max-width:min(720px,calc(100vw - 48px))}.purchase-entry-actions .manual-bank-edit-form>button,.purchase-entry-actions .manual-bank-edit-form>label,.purchase-entry-actions .manual-bank-edit-form>p{min-width:0}.purchase-entry-actions .manual-bank-edit-form>label:last-of-type{grid-column:1/-1}.purchase-create-disclosure>summary{color:var(--teal-deep);cursor:pointer;font-size:18px;font-weight:700}.purchase-create-disclosure[open]>summary{border-bottom:1px solid var(--line);margin-bottom:2px;padding-bottom:12px}.purchase-create-fields{gap:14px 18px}.purchase-create-submit{grid-column:1/-1;justify-self:start}.panel-claim-list,.panel-payment-record-list{display:grid;grid-gap:10px;gap:10px;min-width:0}.panel-payment-history-disclosure>summary{align-items:center;background:#fff;border:1px solid var(--line);border-radius:8px;color:var(--teal-700,#087f77);cursor:pointer;display:inline-flex;font-weight:700;min-height:44px;padding:10px 16px}.panel-payment-history-disclosure[open]>summary{margin-bottom:14px}.panel-claim-entry,.panel-payment-record{background:#fff;border:1px solid var(--line);border-radius:8px;min-width:0;padding:15px 16px}.panel-claim-entry-main,.panel-payment-record-main{align-items:flex-start;display:flex;gap:16px;justify-content:space-between;min-width:0}.panel-claim-figures,.panel-claim-identity,.panel-payment-record-main>div{display:grid;grid-gap:5px;gap:5px;min-width:0}.panel-claim-identity h4,.panel-payment-record h3{font-size:16px;margin:0;overflow-wrap:anywhere}.panel-claim-figures small,.panel-claim-identity p,.panel-claim-month,.panel-payment-record p,.panel-payment-record-main span{color:var(--muted);font-size:13px;margin:0;overflow-wrap:anywhere}.panel-claim-figures{align-items:flex-end;flex:0 0 auto;text-align:right}.panel-claim-figures>strong,.panel-payment-record-main>div:last-child>strong{font-size:19px}.panel-claim-actions{align-items:flex-start;border-top:1px solid var(--line);display:flex;flex-wrap:wrap;gap:10px 16px;margin-top:13px;padding-top:12px}.panel-claim-actions>details,.panel-payment-edit{max-width:100%;min-width:0}.panel-quick-payment>summary{font-size:15px;min-height:48px}.panel-quick-payment .manual-bank-edit-form{min-width:min(360px,calc(100vw - 48px))}.panel-payment-record-main>div:last-child{align-items:flex-end;flex:0 0 auto;text-align:right}.panel-payment-record>.supplier-payment-meta{margin:10px 0}.panel-payment-edit{border-top:1px solid var(--line);padding-top:10px}.import-control-panel,.import-workspace{display:grid;grid-gap:18px;gap:18px}.import-control-panel p{color:var(--muted);line-height:1.6;margin:6px 0 0}.import-template-grid{display:grid;grid-gap:10px;gap:10px;grid-template-columns:repeat(5,minmax(0,1fr))}.import-template-grid .ghost-button{justify-content:center}.import-stats{display:grid;grid-gap:10px;gap:10px;grid-template-columns:repeat(4,minmax(0,1fr));margin:0}.import-stats div{background:#f7fbfb;border-radius:8px;padding:12px}.import-stats dd{overflow-wrap:anywhere}.import-message{background:#eef7f6;border:1px solid var(--line);border-radius:8px;color:#2f5555;margin:0;padding:12px}.opening-balance-warning{background:#fff7e3;border-color:#efc772;color:#74480a;line-height:1.55;margin-bottom:24px;padding:16px 18px}.message-success{background:#e0f4f1;color:var(--teal-deep)}.message-error{background:#ffe8ed;color:var(--rose)}.muted-copy{color:var(--muted);line-height:1.6;margin:0}button:disabled{cursor:not-allowed;opacity:.58}.login-page{align-items:center;background:linear-gradient(120deg,rgba(15,148,136,.13),transparent 45%),var(--bg);display:flex;justify-content:center;min-height:100vh;padding:24px}.login-panel{display:grid;grid-gap:22px;gap:22px;max-width:440px;width:100%}.login-form{padding:26px}.form-error{background:#ffe8ed;border-radius:8px;color:var(--rose);margin:0;padding:10px 12px}.empty-state{align-items:flex-start;background:var(--panel);border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow);display:grid;grid-gap:18px;gap:18px;max-width:760px;padding:28px}.empty-state .module-header{margin-bottom:0}.empty-state-icon{align-items:center;background:#ffe8ed;border-radius:8px;color:var(--rose);display:inline-flex;height:52px;justify-content:center;width:52px}@media (max-width:1080px){.shell{grid-template-columns:240px minmax(0,1fr)}.shell.shell-collapsed{grid-template-columns:72px minmax(0,1fr)}.sidebar{gap:18px;padding:20px 14px;position:-webkit-sticky;position:sticky}.sidebar-menu{gap:18px}.nav-list{grid-template-columns:1fr}.main-panel{padding:24px}.cards-grid,.chart-grid,.dashboard-grid,.import-stats,.import-template-grid,.reporting-filter,.section-grid,.supplier-payment-filters,.user-filter-panel{grid-template-columns:1fr}.owner-overview{grid-template-columns:repeat(2,minmax(0,1fr))}.checkbox-grid,.owner-attention,.panel-management-form-grid{grid-template-columns:1fr}.panel-management-field-full{grid-column:auto}.supplier-management-form-grid{grid-template-columns:1fr}.supplier-management-field-full{grid-column:auto}.panel-outstanding-entry-form-grid,.panel-outstanding-filter{grid-template-columns:1fr}.panel-outstanding-field-full{grid-column:auto}.cash-bank-in-filter,.daily-sales-filter{grid-template-columns:1fr}.branch-nav-item,.ghost-button,.nav-item{gap:8px;padding:10px}.audit-search,.dashboard-filter fieldset{grid-column:auto}}@media (max-width:700px){.supplier-payment-form-filters{grid-template-columns:1fr}.supplier-balance-row{align-items:start;grid-template-columns:minmax(0,1fr) auto}.supplier-balance-description{grid-column:1/-1}.supplier-balance-figures{justify-items:start;text-align:left}.supplier-balance-row>.status-pill{justify-self:start}.supplier-quick-payment{justify-self:end}.supplier-payment-entry-main{flex-direction:column}.supplier-payment-amount{align-items:flex-start;text-align:left}.panel-claim-entry-main,.panel-payment-record-main{flex-direction:column}.panel-claim-figures,.panel-payment-record-main>div:last-child{align-items:flex-start;text-align:left}.main-panel{padding:20px}.bank-breakdown-content .summary-list,.bank-summary-grid,.bar-row,.checkbox-grid,.dashboard-grid,.form-grid,.nav-list,.owner-overview{grid-template-columns:1fr}.bar-row strong{text-align:left}}@media (max-width:560px){.shell{grid-template-columns:1fr;min-height:100vh}.shell,.sidebar{height:auto;overflow:visible}.sidebar{border-bottom:1px solid var(--line);border-right:0;position:static}.shell.shell-collapsed{grid-template-columns:1fr}.main-panel,.sidebar-menu{height:auto;overflow:visible}.sidebar-toggle{display:none}}@media (max-width:1100px){.opening-reconciliation-header{grid-template-columns:repeat(2,minmax(0,1fr))}.opening-reconciliation-actions{align-items:center;display:flex;flex-wrap:wrap;justify-content:flex-start}.opening-reconciliation-details dl{grid-template-columns:repeat(3,minmax(0,1fr))}.patient-import-form,.patient-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.patient-file-input{grid-column:1/-1}}@media (max-width:700px){.purchase-entry-top{align-items:start;grid-template-columns:minmax(0,1fr) auto}.purchase-entry-top>.status-pill{grid-column:1/-1;justify-self:start}.purchase-entry-details{grid-template-columns:repeat(2,minmax(0,1fr))}.purchase-entry-actions .manual-bank-edit-form{grid-template-columns:1fr;width:min(460px,calc(100vw - 48px))}.purchase-entry-actions .manual-bank-edit-form>label:last-of-type{grid-column:auto}.opening-reconciliation-header{gap:10px;grid-template-columns:minmax(0,1fr) minmax(0,1fr);padding:12px}.opening-reconciliation-details{padding-inline:12px}.opening-reconciliation-details dl{grid-template-columns:repeat(2,minmax(0,1fr))}.opening-reconciliation-details .opening-reconciliation-note{grid-column:1/-1}.patient-import-form,.patient-summary-grid{grid-template-columns:1fr}.patient-file-input,.patient-import-actions{grid-column:auto}.patient-section-heading{align-items:start;flex-direction:column}.patient-chart-controls{flex-direction:column;min-width:100%;width:100%}.patient-import-actions{align-items:stretch;flex-direction:column}}@media (min-width:561px){.shell.shell-collapsed .sidebar{padding-inline:12px}.shell.shell-collapsed .sidebar-header{flex-direction:column;align-items:center}.shell.shell-collapsed .brand{justify-content:center;width:100%}.shell.shell-collapsed .branch-nav-item span,.shell.shell-collapsed .branch-nav>span,.shell.shell-collapsed .brand-copy,.shell.shell-collapsed .ghost-button span,.shell.shell-collapsed .nav-item span{display:none}.shell.shell-collapsed .branch-nav-item,.shell.shell-collapsed .ghost-button,.shell.shell-collapsed .nav-item{justify-content:center;padding-inline:10px}.shell.shell-collapsed .branch-nav{justify-items:center}.shell.shell-collapsed .sidebar-toggle{width:32px;height:32px}}