:root{--color-primary: #646cff;--color-primary-hover: #535bf2;--color-primary-tint: rgba(100, 108, 255, .15);--color-on-primary: #ffffff;--color-error: #ee0055;--color-success: #16a34a;--color-alert-bg: #9f1239;--color-on-alert: #ffffff;--color-border-input: var(--color-border);--color-border-input-focus: rgba(100, 108, 255, .6);--color-border: rgba(255, 255, 255, .12);--color-border-subtle: rgba(255, 255, 255, .08);--color-surface: rgba(255, 255, 255, .06);--color-surface-hover: rgba(255, 255, 255, .09);--color-surface-dim: rgba(255, 255, 255, .04);--color-bg-elevated: #1a1a1a;--color-bg-input: #242424;--color-text-muted: rgba(255, 255, 255, .72);--color-modal-backdrop: rgba(0, 0, 0, .48);--color-modal-surface: #20232a;--shadow-modal: 0 1rem 2rem rgba(0, 0, 0, .32);--z-modal: 1100;--modal-width-md: 28rem;--radius-sm: 4px;--radius-md: 6px;--radius-lg: 8px;--transition-fast: .12s;--transition-base: .15s;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-6: 1.5rem;--space-8: 2rem;font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;--color-page-bg: #242424;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media(prefers-color-scheme:light){:root{--color-page-bg: #ffffff;--color-primary-tint: rgba(100, 108, 255, .1);--color-border: rgba(0, 0, 0, .12);--color-border-subtle: rgba(0, 0, 0, .07);--color-surface: rgba(0, 0, 0, .04);--color-surface-hover: rgba(0, 0, 0, .07);--color-surface-dim: rgba(0, 0, 0, .02);--color-bg-elevated: #f9f9f9;--color-bg-input: #ffffff;--color-text-muted: #4f5d6b;--color-modal-backdrop: rgba(33, 53, 71, .32);--color-modal-surface: #f1f4f6;--shadow-modal: 0 1rem 2rem rgba(33, 53, 71, .2);color:#213547;background-color:#fff}}a{font-weight:500;color:var(--color-primary);text-decoration:inherit}a:hover{color:var(--color-primary-hover)}@media(prefers-color-scheme:light){a:hover{color:#747bff}}html{overflow-x:hidden}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:var(--radius-sm)}::-webkit-scrollbar-thumb:hover{background:var(--color-border-subtle)}*{scrollbar-width:thin;scrollbar-color:var(--color-border) transparent}@media(min-width:601px){html{scrollbar-gutter:stable}}body{margin:0;display:flex;flex-direction:column;min-width:320px;min-height:100vh;min-height:100dvh;overflow-x:hidden}h1{font-size:3.2em;line-height:1.1}button{border-radius:var(--radius-lg);border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:var(--color-bg-elevated);color:inherit;cursor:pointer;transition:border-color .25s}button:hover{border-color:var(--color-primary)}:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}button:focus-visible,a:focus-visible{border-radius:var(--radius-md)}.signin-container{display:flex;align-items:center;justify-content:center;flex:1;width:100%;padding:var(--space-4);box-sizing:border-box}.signin-card{padding:2em;border-radius:var(--radius-lg);border:1px solid var(--color-border-subtle);background-color:var(--color-bg-elevated);width:100%;max-width:calc(var(--space-8) * 15);box-sizing:border-box}.signin-brand{align-items:center;display:flex;justify-content:center;margin-bottom:var(--space-4)}.signin-brand-logo{display:block;height:auto;max-width:100%;object-fit:contain;width:calc(var(--space-8) * 12)}@media(max-width:400px){.signin-card{padding:1.5em 1em}}.signin-card h1{margin:0 0 var(--space-6);font-size:1.8em}.field{display:flex;flex-direction:column;gap:.4em;margin-bottom:1em;text-align:left}.field label{font-size:.9em;font-weight:500}.field input{padding:.5em .75em;border-radius:var(--radius-md);border:1px solid var(--color-border-input);background-color:var(--color-bg-input);color:inherit;font-size:1em;font-family:inherit;outline:none;transition:border-color var(--transition-base)}.field input:focus{border-color:var(--color-border-input-focus)}.error{color:#f87171;font-size:.9em;margin:0 0 1em;text-align:left}.signin-card button[type=submit]{width:100%;margin-top:.5em}.signin-card button[type=submit]:disabled{opacity:.6;cursor:not-allowed}@media(prefers-color-scheme:light){.error{color:#dc2626}}.topnav{position:fixed;top:0;left:0;right:0;z-index:1000;background-color:var(--color-bg-elevated);border-bottom:1px solid var(--color-border-subtle)}.topnav-bar{display:flex;align-items:center;padding:0 var(--space-4);height:48px;position:relative}.topnav-brand{display:inline-flex;align-items:center;height:calc(var(--space-8) + var(--space-2));flex-shrink:0}.topnav-brand-logo{display:block;width:auto;height:100%;object-fit:contain}.topnav-links{display:flex;list-style:none;margin:0 0 0 2rem;padding:0;gap:.25rem}.topnav-links li button{align-items:center;background:none;border:none;padding:.4em .75em;border-radius:var(--radius-md);font-size:.95em;cursor:pointer;color:inherit;display:inline-flex;opacity:.65;transition:opacity var(--transition-base),background-color var(--transition-base)}.topnav-link-content{align-items:center;display:inline-flex;gap:var(--space-2)}.topnav-alert-badge{background:var(--color-alert-bg);border-radius:var(--radius-sm);color:var(--color-on-alert);font-size:.75em;font-weight:700;line-height:1;padding:var(--space-1) var(--space-2);white-space:nowrap}.topnav-links li button:hover{opacity:1;background-color:var(--color-surface-hover);border-color:transparent}.topnav-links li button.active{opacity:1;background-color:var(--color-primary-tint);color:var(--color-primary)}.topnav-signout{margin-left:auto;background:none;border:none;padding:.4em .75em;border-radius:var(--radius-md);font-size:.95em;cursor:pointer;color:inherit;opacity:.65;transition:opacity var(--transition-base),background-color var(--transition-base);white-space:nowrap;flex-shrink:0}.topnav-signout:hover{opacity:1;background-color:var(--color-surface-hover)}.topnav-hamburger{display:none;flex-direction:column;justify-content:center;gap:5px;background:none;border:none;padding:.4em;cursor:pointer;position:relative}.topnav-hamburger>span:not(.topnav-hamburger-alert-badge){display:block;width:22px;height:2px;background-color:currentColor;border-radius:2px;transition:opacity var(--transition-base)}.topnav-hamburger-alert-badge{background:var(--color-alert-bg);border-radius:var(--radius-sm);color:var(--color-on-alert);font-size:.7em;font-weight:700;line-height:1;min-width:1rem;padding:var(--space-1);position:absolute;right:-.25rem;top:-.25rem;text-align:center;white-space:nowrap}@media(max-width:600px){.topnav-hamburger{display:flex;margin-right:var(--space-2)}.topnav-links{display:none;position:absolute;top:48px;left:0;right:0;flex-direction:column;background-color:var(--color-bg-elevated);border-bottom:1px solid var(--color-border-subtle);padding:var(--space-2) var(--space-4);margin:0;gap:.25rem;z-index:100}.topnav-links.open{display:flex}.topnav-links li button{width:100%;text-align:left;padding:.6em .75em}}.patients-layout{display:flex;align-items:stretch;height:calc(100dvh - 48px);overflow:hidden;padding:0}.patients-layout.page{max-width:none;margin:0;padding:0}.patients-sidebar{width:22%;min-width:15rem;flex-shrink:0;border-right:1px solid var(--color-border-subtle);display:flex;flex-direction:column;overflow:hidden;transition:width .2s ease}.patients-sidebar--collapsed{width:40px;min-width:40px}.patients-sidebar--collapsed .patients-sidebar-header{justify-content:center;padding:var(--space-3) 0}.patients-collapse-btn{background:none;border:1px solid var(--color-border);border-radius:var(--radius-sm);color:inherit;cursor:pointer;font-size:1rem;line-height:1;padding:.3em .45em;opacity:.65;transition:opacity var(--transition-fast),background-color var(--transition-fast);flex-shrink:0}.patients-collapse-btn:hover{opacity:1;background-color:var(--color-surface-hover)}.patients-sidebar-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4) var(--space-3) var(--space-2);gap:var(--space-2)}.patients-sidebar-actions{display:flex;align-items:center;gap:.4rem}.patients-new-btn{background:none;border:1px solid var(--color-border);border-radius:var(--radius-sm);color:inherit;cursor:pointer;font-size:1rem;line-height:1;padding:.3em .4em;opacity:.65;transition:opacity var(--transition-fast),background-color var(--transition-fast)}.patients-new-btn:hover{opacity:1;background-color:var(--color-surface-hover)}.patients-sidebar-title{font-weight:600;font-size:.85em;letter-spacing:.04em;text-transform:uppercase;opacity:.55}.patients-count{font-size:.78em;background-color:var(--color-surface);border-radius:10px;padding:.1em .55em;opacity:.7}.patients-loading,.patients-empty{padding:var(--space-3);font-size:.88em;opacity:.55;margin:0}.patients-search{padding:0 .375rem .375rem}.patients-search input{width:100%;box-sizing:border-box;background:var(--color-surface);border:1px solid var(--color-border-input);border-radius:var(--radius-md);color:inherit;font-size:.85em;padding:.45em .65em;outline:none;transition:border-color var(--transition-base),background-color var(--transition-base)}.patients-search input:focus{border-color:var(--color-border-input-focus);background:var(--color-surface-hover)}.patients-archived-toggle{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-3) var(--space-2);color:var(--color-text-muted);font-size:.8em;cursor:pointer}.patients-archived-toggle input{margin:0;accent-color:var(--color-primary)}.patients-list{list-style:none;margin:0;padding:var(--space-1) .375rem;overflow-y:auto;scrollbar-gutter:stable;flex:1}.patients-list li{margin-bottom:1px}.patient-item{width:100%;text-align:left;background:none;border:none;padding:.5em .6em;border-radius:var(--radius-md);font-size:.88em;cursor:pointer;color:inherit;opacity:.75;transition:opacity var(--transition-fast),background-color var(--transition-fast);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.patient-item-label{min-width:0;overflow:hidden;text-overflow:ellipsis}.patient-item-status{flex-shrink:0;color:var(--color-text-muted);font-size:.78em}.patient-item--archived{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.patient-item:hover{opacity:1;background-color:var(--color-surface);border-color:transparent}.patient-item.active{opacity:1;background-color:var(--color-primary-tint);color:var(--color-primary)}.patients-content{flex:1;min-width:0;overflow:hidden;display:flex;flex-direction:row}.pc-main{flex:1;min-width:0;overflow:hidden;display:flex;flex-direction:column}.patients-placeholder{height:100%;display:flex;align-items:center;justify-content:center;opacity:.55;font-size:.9em;margin:0;padding:var(--space-8)}.patients-back{display:none}.pd-loading{padding:var(--space-6);opacity:.55;font-size:.9em}.patient-detail{flex:1;overflow:hidden;display:flex;flex-direction:column}.pd-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4);flex-shrink:0;padding:var(--space-6) var(--space-6) 0;margin-bottom:var(--space-6)}.pd-header-actions{display:flex;align-items:center;gap:var(--space-2)}.pd-title-group{display:flex;align-items:center;gap:var(--space-2);min-width:0}.pd-title-group .pd-name{margin-bottom:0}.patient-archived-badge{flex-shrink:0;padding:var(--space-1) var(--space-2);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text-muted);font-size:.78em}.patient-archive-summary{display:flex;flex-direction:column;gap:var(--space-1);margin-bottom:var(--space-6);padding:var(--space-3) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text-muted)}.patient-archive-btn,.patient-archive-confirm{border:1px solid var(--color-error);border-radius:var(--radius-md);background:transparent;color:var(--color-error)}.patient-archive-btn,.patient-restore-btn{padding:.35em .9em;font-size:.85em;flex-shrink:0;margin-top:.2em;cursor:pointer;transition:background-color var(--transition-fast),color var(--transition-fast)}.patient-restore-btn{border:1px solid var(--color-primary);border-radius:var(--radius-md);background:transparent;color:var(--color-primary)}.patient-restore-btn:hover:not(:disabled){background:var(--color-primary);color:var(--color-on-primary)}.patient-restore-btn:disabled{opacity:.5;cursor:default}.patient-record-action-error{margin:0 var(--space-6) var(--space-3);color:var(--color-error)}.patient-archive-btn:hover,.patient-archive-confirm:hover:not(:disabled){background:var(--color-error);color:var(--color-on-alert)}.patient-archive-modal-overlay{position:fixed;inset:0;z-index:var(--z-modal);display:flex;align-items:center;justify-content:center;padding:var(--space-4);background:var(--color-modal-backdrop)}.patient-archive-modal{width:100%;max-width:var(--modal-width-md);display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-6);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-modal-surface);box-shadow:var(--shadow-modal)}.patient-archive-modal h3,.patient-archive-modal p{margin:0}.patient-archive-modal label{font-weight:600}.patient-archive-modal textarea{width:100%;box-sizing:border-box;resize:vertical;padding:var(--space-3);border:1px solid var(--color-border-input);border-radius:var(--radius-md);background:var(--color-bg-input);color:inherit;font:inherit}.patient-archive-modal textarea:focus{border-color:var(--color-border-input-focus);outline:none}.patient-archive-error{color:var(--color-error)}.patient-archive-modal-actions{display:flex;justify-content:flex-end;gap:var(--space-2)}.patient-archive-confirm:disabled{opacity:.5;cursor:default}.pd-body{flex:1;overflow-y:auto;scrollbar-gutter:stable;padding:0 var(--space-6) var(--space-6)}.pd-summary{flex:1;border-left:1px solid var(--color-border-subtle);overflow:hidden;display:flex;flex-direction:column}.pd-summary-header{flex-shrink:0;padding:var(--space-6) var(--space-6) var(--space-3);border-bottom:1px solid var(--color-border-subtle);display:flex;flex-direction:column;gap:var(--space-2)}.pd-summary-body{flex:1;overflow-y:auto;scrollbar-gutter:stable;padding:var(--space-4) var(--space-6) var(--space-6)}.pd-summary-title-row{display:flex;align-items:baseline;gap:var(--space-3)}.pd-summary-label{font-size:.78em;font-weight:600;letter-spacing:.05em;text-transform:uppercase;opacity:.55}.pd-header .pd-name{margin:0}.pd-tabs{display:flex;align-items:center;gap:var(--space-1);flex-shrink:0;margin:0 var(--space-6) var(--space-4);padding:var(--space-1);border:1px solid var(--color-border-subtle);border-radius:var(--radius-md);background:var(--color-surface-dim);width:fit-content;max-width:calc(100% - (2 * var(--space-6)))}.pd-tab{border:none;border-radius:var(--radius-sm);background:none;color:inherit;cursor:pointer;font:inherit;font-size:.85em;font-weight:600;padding:var(--space-1) var(--space-3);opacity:.65;transition:background-color var(--transition-fast),color var(--transition-fast),opacity var(--transition-fast)}.pd-tab:hover{opacity:.9}.pd-tab--active{background:var(--color-primary-tint);color:var(--color-primary);opacity:1}.pd-name{margin:0 0 var(--space-6);font-size:1.4em}.pd-name-age{font-weight:400;opacity:.6}.pf-edit-btn{padding:.35em .9em;font-size:.85em;border-radius:var(--radius-md);background:var(--color-surface);border:1px solid transparent;flex-shrink:0;margin-top:.2em;cursor:pointer;color:inherit;transition:background-color var(--transition-fast)}.pf-edit-btn:hover{background:var(--color-surface-hover)}.pd-section{margin-bottom:var(--space-8)}.pd-section+.pd-section{border-top:1px solid var(--color-border-subtle);padding-top:var(--space-6);margin-top:calc(-1 * var(--space-2))}.pd-section-title{margin:0 0 var(--space-3);font-size:.78em;font-weight:600;letter-spacing:.05em;text-transform:uppercase;opacity:.55}.pd-section-toggle{display:flex;align-items:center;gap:.45em;margin:0 0 var(--space-3);padding:0;background:none;border:none;cursor:pointer;font-size:.78em;font-weight:600;letter-spacing:.05em;text-transform:uppercase;opacity:.55;color:inherit;font-family:inherit;transition:opacity var(--transition-fast),color var(--transition-fast)}.pd-section-toggle:hover{opacity:.85;color:var(--color-primary)}.pd-section-toggle-chevron{display:block;flex-shrink:0;width:.85em;height:.85em;transform:rotate(-90deg);transition:transform .15s ease-out}.pd-section-toggle-chevron--open{transform:rotate(0)}.pd-section--primary{background:var(--color-surface-dim);border-radius:var(--radius-lg);padding:var(--space-4);margin-bottom:var(--space-6)}.pd-section--primary+.pd-section{border-top:none;padding-top:0;margin-top:0}.pd-grid{display:grid;grid-template-columns:140px 1fr;gap:.5rem 1rem;margin:0}.pd-grid-pair{display:contents}.pd-grid dt{font-size:.85em;opacity:.55;font-weight:500;padding-top:.1em}.pd-grid dd{margin:0;font-size:.9em;word-break:break-word}.pd-empty{opacity:.35}.patient-form-wrap{flex:1;display:flex;flex-direction:column;overflow:hidden;padding:var(--space-6) var(--space-6) 0}.pf-heading{margin:0 0 var(--space-6);font-size:1.4em;flex-shrink:0}.patient-form{flex:1;overflow:hidden;display:flex;flex-direction:column}.pf-field{display:flex;flex-direction:column;gap:.3rem}.pf-field label{font-size:.83em;opacity:.6;font-weight:500}.pf-required{color:var(--color-error);opacity:1}.pf-field input,.pf-field select{height:34px;padding:0 .7em;box-sizing:border-box;background:var(--color-surface);border:1px solid var(--color-border-input);border-radius:var(--radius-md);color:inherit;font-size:.9em;outline:none;transition:border-color var(--transition-base),background-color var(--transition-base)}.pf-field input:focus,.pf-field select:focus{border-color:var(--color-border-input-focus);background:var(--color-surface-hover)}.pf-section{display:flex;flex-direction:column;gap:var(--space-4)}.pf-section+.pf-section{border-top:1px solid var(--color-border-subtle);padding-top:var(--space-6)}.pf-section-heading{margin:0;font-size:.78em;font-weight:600;letter-spacing:.05em;text-transform:uppercase;opacity:.55}.pf-field-group{display:flex;flex-direction:column;gap:var(--space-4);border-left:2px solid var(--color-primary-tint);padding-left:var(--space-3);margin-bottom:var(--space-2)}.pf-field-group-heading{margin:0;font-size:.8em;font-weight:600;letter-spacing:.04em;text-transform:uppercase;opacity:.55}.pf-field textarea{padding:.5em .7em;height:auto;resize:vertical;font-family:inherit;font-size:.9em;box-sizing:border-box;background:var(--color-surface);border:1px solid var(--color-border-input);border-radius:var(--radius-md);color:inherit;outline:none;transition:border-color var(--transition-base),background-color var(--transition-base)}.pf-field textarea:focus{border-color:var(--color-border-input-focus);background:var(--color-surface-hover)}.date-input{display:flex;align-items:center;height:34px;padding:0 .7em;box-sizing:border-box;background:var(--color-surface);border:1px solid var(--color-border-input);border-radius:var(--radius-md);gap:.15em;transition:border-color var(--transition-base),background-color var(--transition-base)}.date-input:focus-within{border-color:var(--color-border-input-focus);background:var(--color-surface-hover)}.date-input .date-input-part{height:auto;padding:0;background:none;border:none;border-radius:0;outline:none;color:inherit;font-size:.9em;font-family:inherit;text-align:center;width:2ch;min-width:0;transition:none}.date-input .date-input-y{width:4ch}.date-input-sep{opacity:.35;font-size:.9em;-webkit-user-select:none;user-select:none;flex-shrink:0}.pf-checkbox-label{display:flex;align-items:center;gap:.5em;font-size:.9em;cursor:pointer;-webkit-user-select:none;user-select:none}.pf-help{font-size:.78em;opacity:.55;margin:0}.pf-loading-text,.pf-unsupported{font-size:.85em;opacity:.45}.pf-field-error{font-size:.8em;color:var(--color-error)}.pf-input-error{border-color:#e059!important}.pf-error{margin:0;font-size:.85em;color:var(--color-error)}.pf-required-error{margin:var(--space-3) 0 0;font-size:.85em;color:var(--color-error);padding:var(--space-2) var(--space-3);background:#ee005514;border-radius:var(--radius-md);border:1px solid rgba(238,0,85,.2)}.pf-form-body{flex:1;overflow-y:auto;scrollbar-gutter:stable;display:flex;flex-direction:column;gap:var(--space-4);padding-right:var(--space-4);padding-bottom:var(--space-2)}.pf-actions{flex-shrink:0;display:flex;gap:.6rem;padding:var(--space-3) 0 var(--space-6);border-top:1px solid var(--color-border-subtle)}.pf-actions button{padding:.45em 1.1em;border-radius:var(--radius-md);font-size:.9em;cursor:pointer;border:none;transition:opacity var(--transition-fast),background-color var(--transition-fast)}.pf-actions button[type=submit]{background-color:var(--color-primary);color:#fff}.pf-actions button[type=submit]:hover:not(:disabled){background-color:var(--color-primary-hover)}.pf-actions button.btn-secondary{background:var(--color-surface);color:inherit}.pf-actions button.btn-secondary:hover:not(:disabled){background:var(--color-surface-hover)}.pf-actions button:disabled{opacity:.5;cursor:not-allowed}.pd-section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-3)}.pd-section-header .pd-section-title{margin-bottom:0}.pd-add-btn{background:none;border:1px solid var(--color-border);border-radius:var(--radius-sm);color:inherit;cursor:pointer;font-size:.82em;padding:.3em .55em;opacity:.65;transition:opacity var(--transition-fast),background-color var(--transition-fast);white-space:nowrap}.pd-add-btn:hover{opacity:1;background-color:var(--color-surface-hover)}.pd-empty-note{margin:0;font-size:.88em;opacity:.55}.empty-state{text-align:center;padding:3rem var(--space-4);opacity:.7}.empty-state p{margin:0 0 var(--space-3)}.consult-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}.consult-list-row{display:flex;align-items:center;gap:var(--space-2)}.consult-item{display:flex;align-items:center;gap:.6rem;flex:1;text-align:left;background:none;border:none;padding:.5em .6em;border-radius:var(--radius-md);cursor:pointer;color:inherit;opacity:.8;transition:opacity var(--transition-fast),background-color var(--transition-fast)}.consult-item:hover{opacity:1;background-color:var(--color-surface)}.consult-item-date{font-size:.9em;font-variant-numeric:tabular-nums}.consult-item-type{font-size:.8em;opacity:.55}.consult-item-clinician{font-size:.8em;opacity:.65}.consult-item-upload-status{display:inline-flex;align-items:center;justify-content:center;width:1.2rem;height:1.2rem;color:var(--color-primary);flex-shrink:0}.consult-item-upload-status svg{width:.95rem;height:.95rem;display:block;fill:currentColor}.consult-item-locked{font-size:.75em;opacity:.5;margin-left:auto;font-style:italic}.consult-invoice-badge{flex-shrink:0;font-size:.72em;font-weight:500;padding:.18em .55em;border-radius:var(--radius-sm);border:none;cursor:pointer;white-space:nowrap;transition:opacity var(--transition-fast)}.consult-invoice-badge:hover{opacity:.75}.consult-invoice-badge--draft{background:var(--color-surface);color:inherit;border:1px solid var(--color-border)}.consult-invoice-badge--finalised{background:var(--color-primary-tint);color:var(--color-primary)}.consult-invoice-badge--paid{background:color-mix(in srgb,#22c55e 15%,transparent);color:#16a34a}.consult-invoice-badge--legacy{background:var(--color-surface);color:var(--color-muted);border:1px solid var(--color-border)}.consult-invoice-badge--void{background:var(--color-surface);color:inherit;opacity:.5;text-decoration:line-through}.consult-add-invoice-btn{flex-shrink:0;font-size:.72em;font-weight:500;padding:.18em .55em;border-radius:var(--radius-sm);border:1px dashed var(--color-border);background:none;color:var(--color-primary);cursor:pointer;white-space:nowrap;opacity:.7;transition:opacity var(--transition-fast),border-color var(--transition-fast)}.consult-add-invoice-btn:hover{opacity:1;border-color:var(--color-primary)}.inv-section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-3)}.inv-section-header .pd-section-title{margin-bottom:0}.inv-mode-tabs{display:flex;gap:0;border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden}.inv-mode-tab{padding:.3em .9em;border:none;background:none;color:var(--color-text-muted);font-size:.85em;cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast)}.inv-mode-tab+.inv-mode-tab{border-left:1px solid var(--color-border)}.inv-mode-tab--active{background:var(--color-primary);color:#fff}.inv-add-row,.inv-custom-row{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.inv-custom-desc{flex:1;min-width:160px;padding:.4em .6em;border:1px solid var(--color-border-input);border-radius:var(--radius-md);background:var(--color-surface);color:inherit;font-size:.9em}.inv-custom-desc,.inv-custom-code,.inv-custom-amount,.inv-item-select,.inv-qty-input,.inv-icd-input,.inv-add-line-btn{box-sizing:border-box;height:calc(var(--space-8) + var(--space-1));min-height:calc(var(--space-8) + var(--space-1))}.inv-custom-desc:focus{outline:none;border-color:var(--color-border-input-focus)}.inv-custom-code{width:6rem;flex-shrink:0;padding:.4em .6em;border:1px solid var(--color-border-input);border-radius:var(--radius-md);background:var(--color-surface);color:inherit;font-size:.9em}.inv-custom-code:focus{outline:none;border-color:var(--color-border-input-focus)}.inv-custom-amount{width:7rem;flex-shrink:0;padding:.4em .6em;border:1px solid var(--color-border-input);border-radius:var(--radius-md);background:var(--color-surface);color:inherit;font-size:.9em;text-align:right}.inv-custom-amount:focus{outline:none;border-color:var(--color-border-input-focus)}.inv-item-select{flex:1;min-width:0;padding:.4em .6em;border:1px solid var(--color-border-input);border-radius:var(--radius-md);background:var(--color-surface);color:inherit;font-size:.9em}.inv-item-select:focus{outline:none;border-color:var(--color-border-input-focus)}.inv-stock-item-select{flex-basis:calc(var(--space-8) * 8)}.inv-line-sub-items,.inv-line-stock-warning{display:block;margin-top:var(--space-1);font-size:inherit}.inv-line-stock-select{display:block;width:min(100%,calc(var(--space-8) * 10));min-height:calc(var(--space-8) + var(--space-1));margin-top:var(--space-2);padding:var(--space-2);border:1px solid var(--color-border-input);border-radius:var(--radius-sm);background:var(--color-surface);color:inherit}.inv-line-stock-select:focus{outline:none;border-color:var(--color-border-input-focus)}.inv-line-sub-items{padding-left:var(--space-5);color:var(--color-text-muted)}.inv-line-sub-items li::marker{content:"↳  "}.inv-line-sub-items span{margin-left:var(--space-2)}.inv-line-stock-warning{color:var(--color-error)}.inv-qty-input{width:5rem;flex-shrink:0;padding:.4em .6em;border:1px solid var(--color-border-input);border-radius:var(--radius-md);background:var(--color-surface);color:inherit;font-size:.9em;text-align:right}.inv-qty-input:focus{outline:none;border-color:var(--color-border-input-focus)}.inv-icd-input{width:7rem;flex-shrink:0;padding:.4em .6em;border:1px solid var(--color-border-input);border-radius:var(--radius-md);background:var(--color-surface);color:inherit;font-size:.9em}.inv-icd-input:focus{outline:none;border-color:var(--color-border-input-focus)}.inv-add-line-btn{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;padding:.4em 1em;border:none;border-radius:var(--radius-md);background:var(--color-primary);color:#fff;font-size:.9em;font-weight:500;cursor:pointer;transition:opacity var(--transition-fast)}.inv-add-line-btn:hover{opacity:.85}.inv-lines-wrap{overflow-x:auto}.inv-lines-table{width:100%;border-collapse:collapse;font-size:.9em}.inv-lines-table th,.inv-lines-table td{padding:.45em .6em;text-align:left;border-bottom:1px solid var(--color-border-subtle)}.inv-lines-table th{font-size:.78em;font-weight:600;text-transform:uppercase;letter-spacing:.04em;opacity:.6}.inv-col-num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.inv-col-negative{color:var(--color-danger, #c0392b)}.inv-col-icd{width:6rem;white-space:nowrap;color:var(--color-text-muted);font-size:.85em}.inv-col-code{width:6.5rem;white-space:nowrap}.inv-line-text-input,.inv-line-code-input,.inv-icd-cell-input,.inv-line-number-input,.inv-line-money-input{box-sizing:border-box;height:calc(var(--space-8) + var(--space-1));min-height:calc(var(--space-8) + var(--space-1));border:1px solid var(--color-border-input);border-radius:var(--radius-sm);background:var(--color-surface);color:inherit;font-size:inherit}.inv-line-text-input{width:min(100%,24rem);min-width:12rem;padding:.25em .45em}.inv-line-code-input,.inv-icd-cell-input{width:5.5rem;padding:.2em .4em}.inv-line-number-input,.inv-line-money-input{width:5.75rem;padding:.2em .35em;text-align:right;font-variant-numeric:tabular-nums}.inv-line-text-input:focus,.inv-line-code-input:focus,.inv-icd-cell-input:focus,.inv-line-number-input:focus,.inv-line-money-input:focus{outline:none;border-color:var(--color-border-input-focus)}.inv-col-action{width:2rem;text-align:center}.inv-total-row td{font-weight:600;border-top:2px solid var(--color-border);border-bottom:none}.inv-remove-btn{background:none;border:none;cursor:pointer;color:inherit;opacity:.45;line-height:1;padding:.25em;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;transition:opacity var(--transition-fast)}.inv-remove-btn:hover{opacity:1;color:var(--color-error, #dc2626)}.inv-notes{width:100%;box-sizing:border-box;padding:.5em .6em;border:1px solid var(--color-border-input);border-radius:var(--radius-md);background:var(--color-surface);color:inherit;font-size:.9em;resize:vertical;overflow-x:hidden}.inv-notes:focus{outline:none;border-color:var(--color-border-input-focus)}.inv-number-field{font-weight:700;font-variant-numeric:tabular-nums;color:var(--color-primary);font-size:1.05em}.inv-number-pending{font-size:.78em;opacity:.5;margin:.1em 0 0;font-style:italic}.inv-status-badge{font-size:.78em;font-weight:600;padding:.2em .6em;border-radius:var(--radius-sm)}.inv-status-badge--draft{background:var(--color-surface);border:1px solid var(--color-border)}.inv-status-badge--finalised{background:var(--color-primary-tint);color:var(--color-primary)}.inv-status-badge--paid{background:color-mix(in srgb,#22c55e 15%,transparent);color:#16a34a}.inv-status-badge--void{background:var(--color-surface);opacity:.55}.inv-payment-state{border:1px solid var(--color-border-subtle);border-radius:var(--radius-sm);padding:.2em .55em;font-size:.72em;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.inv-financial-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-2);margin-bottom:var(--space-4)}.inv-allocations-table{width:100%;border-collapse:collapse;font-size:.88em}.inv-allocations-table th{font-size:.78em;font-weight:600;letter-spacing:.04em;text-transform:uppercase;opacity:.58}.inv-finalise-btn{background:color-mix(in srgb,#22c55e 80%,transparent);color:#fff}.inv-print-btn{padding:.5em 1.1em;border:1px solid var(--color-border);border-radius:var(--radius-md);background:none;color:inherit;font-size:.9em;cursor:pointer;transition:background-color var(--transition-fast)}.inv-print-btn:hover{background:var(--color-surface)}.inv-actions-split{display:flex;justify-content:space-between}.inv-actions-left{display:flex;gap:.6rem}.inv-create-btn{display:inline-block;padding:.5em 1.4em;min-width:9rem;white-space:nowrap;border:none;border-radius:var(--radius-md);background:var(--color-primary);color:#fff;font-size:.9em;font-weight:500;cursor:pointer;text-decoration:none;text-align:center;box-sizing:border-box;transition:opacity var(--transition-fast)}.inv-create-btn:hover:not(:disabled){opacity:.85;color:#fff}.inv-create-btn:disabled{opacity:.38;cursor:not-allowed;filter:grayscale(.4)}.inv-create-btn--loading{pointer-events:none;cursor:wait}.inv-modal-overlay{position:absolute;inset:0;background:#00000059;display:flex;align-items:center;justify-content:center;z-index:10;border-radius:inherit}.inv-modal{background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-lg, var(--radius-md));padding:var(--space-6);width:min(400px,90%);display:flex;flex-direction:column;gap:var(--space-3);box-shadow:0 8px 32px #0000002e}.inv-modal-title{font-size:1em;font-weight:600}.inv-modal-body{font-size:.88em;opacity:.75;line-height:1.5}.inv-delete-btn{padding:.5em 1.1em;min-width:7rem;white-space:nowrap;box-sizing:border-box;border:1px solid var(--color-error, #dc2626);border-radius:var(--radius-md);background:none;color:var(--color-error, #dc2626);font-size:.9em;cursor:pointer;transition:background-color var(--transition-fast),color var(--transition-fast)}.inv-delete-btn:hover:not(:disabled){background:var(--color-error, #dc2626);color:#fff}.inv-delete-btn:disabled{opacity:.55;cursor:not-allowed}.inv-pdf-link{display:inline-block;padding:.5em 1.4em;border:none;border-radius:var(--radius-md);background:var(--color-primary);color:#fff;font-size:.9em;font-weight:500;text-decoration:none;transition:opacity var(--transition-fast)}.inv-pdf-link:hover{opacity:.85;color:#fff}.consult-new-form{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-4);background:var(--color-surface-dim);border-radius:var(--radius-lg);margin-bottom:var(--space-2)}.consult-header{flex-direction:column;align-items:stretch;justify-content:flex-start;gap:var(--space-3)}.consult-header-top{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:var(--space-4)}.consult-header-left,.consult-header-title{display:flex;flex-direction:column;gap:var(--space-1);min-width:0}.consult-header-label{font-size:.78em;font-weight:600;letter-spacing:.05em;opacity:.6;white-space:nowrap}.consult-header-actions{display:flex;align-items:center;gap:var(--space-2);flex-wrap:nowrap;justify-content:flex-end;min-width:0;overflow-x:auto;scrollbar-width:none;white-space:nowrap}.consult-header-actions::-webkit-scrollbar{display:none}.consult-header-actions .pf-edit-btn,.consult-header-actions .consult-type-badge{align-self:center;margin-top:0}.consult-back-btn{background:none;border:none;color:var(--color-primary);font-size:.85em;line-height:1.2;cursor:pointer;padding:0;text-align:left;opacity:.85;transition:opacity var(--transition-fast);white-space:nowrap}.consult-back-btn:hover{opacity:1}.consult-type-badge{font-size:.8em;font-weight:600;letter-spacing:.04em;text-transform:uppercase;padding:.2em .65em;border-radius:12px;flex-shrink:0;align-self:flex-start;margin-top:.3em;background:var(--color-surface)}.consult-type-badge--initial{background:#646cff33;color:#9ba4ff}.consult-type-badge--followup{background:#28b48c33;color:#5dcfb0}.consult-launch-btn{padding:.35em .9em;font-size:.85em;border-radius:var(--radius-md);background:var(--color-primary);border:none;flex-shrink:0;cursor:pointer;color:#fff;transition:background-color var(--transition-fast),opacity var(--transition-fast)}.consult-launch-btn:hover{background:var(--color-primary-hover)}.consult-transcription-btn{padding:.35em .9em;font-size:.85em;border-radius:var(--radius-md);background:var(--color-surface);border:1px solid var(--color-border);flex-shrink:0;cursor:pointer;color:inherit;transition:background-color var(--transition-fast),opacity var(--transition-fast)}.consult-transcription-btn:hover{background:var(--color-surface-hover)}.consult-transcription-content{padding-top:var(--space-3)}.consult-transcription-status{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-2);padding:var(--space-3);border-radius:var(--radius-md);border:1px solid var(--color-border-subtle);background:var(--color-surface);color:var(--color-text-muted);font-size:.9em}.consult-transcription-status--error{color:var(--color-error)}.consult-transcription-retry-btn{padding:.45em .9em;border:none;border-radius:var(--radius-md);background:var(--color-primary);color:var(--color-on-primary);cursor:pointer;transition:background-color var(--transition-fast),opacity var(--transition-fast)}.consult-transcription-retry-btn:hover:not(:disabled){background:var(--color-primary-hover)}.consult-transcription-retry-btn:disabled{opacity:.55;cursor:not-allowed}.consult-transcription-fields{display:flex;flex-direction:column;gap:var(--space-3)}.consult-transcription-summary-blocks{display:flex;flex-direction:column;gap:var(--space-4)}.consult-transcription-summary-block{display:flex;flex-direction:column;gap:var(--space-2)}.consult-transcription-summary-heading{margin:0;font-size:.95rem;font-weight:600}.consult-transcription-markdown{display:flex;flex-direction:column;gap:var(--space-3)}.consult-transcription-markdown-heading,.consult-transcription-markdown-paragraph,.consult-transcription-markdown-quote p{margin:0}.consult-transcription-markdown-list{margin:0;padding-left:1.5rem}.consult-transcription-markdown-quote{margin:0;padding-left:var(--space-3);border-left:2px solid var(--color-border);color:var(--color-text-muted)}.consult-transcription-markdown-code{margin:0;padding:var(--space-3);border-radius:var(--radius-md);background:var(--color-surface);border:1px solid var(--color-border-subtle);overflow-x:auto}.consult-transcription-field{display:flex;flex-direction:column;gap:var(--space-2)}.consult-transcription-field--warning{padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface)}.consult-transcription-field-label{display:flex;flex-direction:column;gap:.25rem;font-size:.92em;font-weight:600}.consult-transcription-field-label-row{display:flex;align-items:center;gap:var(--space-2)}.consult-transcription-indicator{display:inline-flex;align-items:center;margin:0}.consult-transcription-indicator input{margin:0}.consult-transcription-field-warning{font-size:.85em;font-weight:400;color:var(--color-text-muted)}.consult-transcription-field-input{min-height:2.25rem;padding:.55em .7em;border-radius:var(--radius-md);border:1px solid var(--color-border-input);background-color:var(--color-bg-input);color:inherit;font:inherit;box-sizing:border-box}.consult-transcription-field-input--textarea{min-height:7rem;resize:vertical}.consult-transcription-field-readonly{padding:var(--space-3);border-radius:var(--radius-md);background:var(--color-surface);border:1px solid var(--color-border-subtle)}.consult-transcription-empty{margin:0;color:var(--color-text-muted)}.consult-transcription-import-actions{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-2);padding-top:var(--space-2)}.consult-transcription-import-btn{padding:.45em .9em;border:none;border-radius:var(--radius-md);background:var(--color-primary);color:#fff;cursor:pointer;transition:background-color var(--transition-fast),opacity var(--transition-fast)}.consult-transcription-import-btn:hover:not(:disabled){background:var(--color-primary-hover)}.consult-transcription-import-btn:disabled{opacity:.55;cursor:not-allowed}.consult-transcription-import-error,.consult-transcription-uploaded-note{margin:0;font-size:.9em;color:var(--color-text-muted)}.consult-transcription-text{margin:0;font:inherit;white-space:pre-wrap;overflow-wrap:anywhere;color:inherit}.consult-locked-notice{font-size:.85em;padding:.5em .75em;border-radius:var(--radius-md);background:#ffc8501a;color:#ffc850d9;margin-bottom:var(--space-6)}@media(prefers-color-scheme:light){.consult-locked-notice{background:#c88c001a;color:#966400e6}}.pds-controls{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-2);margin-bottom:var(--space-2)}.pds-group-control{display:inline-flex;align-items:center;gap:var(--space-2)}.pds-group-label{font-size:.78em;font-weight:600;opacity:.55}.pds-view-toggle{display:inline-flex;gap:var(--space-1);padding:var(--space-1);border:1px solid var(--color-border-subtle);border-radius:var(--radius-md);background:var(--color-surface-dim)}.pds-view-toggle-btn{border:none;border-radius:var(--radius-sm);background:none;color:inherit;cursor:pointer;font:inherit;font-size:.78em;font-weight:600;padding:var(--space-1) var(--space-2);opacity:.65;transition:background-color var(--transition-fast),color var(--transition-fast),opacity var(--transition-fast)}.pds-view-toggle-btn:hover{opacity:.9}.pds-view-toggle-btn--active{background:var(--color-primary-tint);color:var(--color-primary);opacity:1}.pds-summary-actions{display:flex;gap:var(--space-2)}.pds-toggle-all-btn{background:none;border:none;padding:0;font-size:.78em;color:var(--color-primary);cursor:pointer;opacity:.75;transition:opacity var(--transition-fast)}.pds-toggle-all-btn:hover{opacity:1}.pds-entries{list-style:none;margin:0 0 var(--space-2);padding:0;display:flex;flex-direction:column;gap:.2rem}.pds-entry{display:flex;flex-direction:column;font-size:.85em;padding:.2em 0}.pds-previous{margin:calc(-1 * var(--space-1)) 0 var(--space-2)}.pds-previous-toggle{display:inline-flex;align-items:center;gap:var(--space-1);padding:0;background:none;border:none;color:inherit;cursor:pointer;font:inherit;font-size:.82em;font-weight:500;opacity:.55;transition:opacity var(--transition-fast),color var(--transition-fast)}.pds-previous-toggle:hover{color:var(--color-primary);opacity:.8}.pds-entries--previous{margin:var(--space-1) 0 0;padding-left:var(--space-3);border-left:1px solid var(--color-border-subtle)}.pds-consultation-fields{display:flex;flex-direction:column;gap:var(--space-1);margin:0 0 var(--space-2)}.pds-consultation-field{display:grid;grid-template-columns:minmax(0,40%) minmax(0,1fr);gap:var(--space-2);font-size:.85em}.pds-consultation-field dt{opacity:.55;font-weight:500}.pds-consultation-field dd{margin:0;word-break:break-word}.pds-entry-date{font-size:.85em;opacity:.5;font-variant-numeric:tabular-nums}@media(max-width:600px){.patients-collapse-btn{display:none}.patients-layout{flex-direction:column;height:auto;overflow:visible}.patients-sidebar{width:100%;border-right:none;border-bottom:1px solid var(--color-border-subtle);max-height:100dvh}.patients-content,.patients-layout--selected .patients-sidebar{display:none}.patients-layout--selected .patients-content{display:flex;flex-direction:column}.patients-back{display:inline-flex;align-items:center;background:none;border:none;color:var(--color-primary);font-size:.9em;cursor:pointer;padding:var(--space-3) var(--space-4) 0}.pd-header{padding:var(--space-3) var(--space-3) 0;margin-bottom:var(--space-3)}.pd-tabs{margin:0 var(--space-3) var(--space-3);max-width:calc(100% - (2 * var(--space-3)))}.patients-content{flex-direction:column}.pd-summary{width:auto;border-left:none;border-top:1px solid var(--color-border-subtle)}.pd-summary-header{padding:var(--space-3) var(--space-3) var(--space-2)}.pd-summary-body{padding:var(--space-3)}.pd-body{padding:0 var(--space-3) var(--space-4)}.pd-grid{grid-template-columns:1fr;gap:0}.pd-grid dt{padding-top:var(--space-3)}.pd-grid dd{padding-bottom:var(--space-1)}.patient-form-wrap{padding:var(--space-4) var(--space-4) 0}}.pf-file-input-hidden{display:none}.pf-file-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}.pf-file-item{display:flex;align-items:center;gap:var(--space-3);padding:.5em .6em;border-radius:var(--radius-md);transition:background-color var(--transition-fast)}.pf-file-item:hover{background-color:var(--color-surface)}.pf-file-icon{font-size:1.1em;flex-shrink:0;width:1.4em;text-align:center}.pf-file-meta{flex:1;min-width:0;display:flex;flex-direction:column;gap:.1em}.pf-file-name{font-size:.9em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pf-file-info{font-size:.78em;opacity:.5;font-variant-numeric:tabular-nums}.pf-file-actions{display:flex;gap:var(--space-2);flex-shrink:0}.pf-file-btn{background:none;border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-primary);cursor:pointer;font-size:.78em;padding:.25em .6em;opacity:.75;text-decoration:none;transition:opacity var(--transition-fast),background-color var(--transition-fast);font-family:inherit}.pf-file-btn:hover{opacity:1;background-color:var(--color-surface-hover)}.pf-file-btn--delete{color:var(--color-error);border-color:transparent}.pf-file-btn--delete:hover{background-color:#ee005514;border-color:#e053}.pf-error{color:var(--color-error);font-size:.85em;margin:var(--space-2) 0 0}.patient-account{position:relative;display:flex;flex-direction:column;gap:var(--space-6)}.pa-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-3)}.pa-metric{display:flex;flex-direction:column;gap:var(--space-1);min-width:0;padding:var(--space-3);border:1px solid var(--color-border-subtle);border-radius:var(--radius-lg);background:var(--color-surface-dim)}.pa-metric-label{font-size:.72em;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--color-text-muted, currentColor);opacity:.75}.pa-metric-value{font-size:1.2em;font-weight:700;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.pa-metric-value--credit{color:var(--color-success)}.pa-table-wrap{width:100%;overflow-x:auto}.pa-table{width:100%;min-width:620px;border-collapse:collapse;font-size:.88em}.pa-table th,.pa-table td{padding:.45em .6em;text-align:left;border-bottom:1px solid var(--color-border-subtle);vertical-align:top}.pa-table th{font-size:.76em;font-weight:600;text-transform:uppercase;letter-spacing:.04em;opacity:.6}.pa-line-list{list-style:none;display:flex;flex-direction:column;gap:var(--space-1);margin:0;padding:0}.pa-line-list li{display:flex;flex-direction:column;gap:var(--space-1)}.pa-line-list small{color:var(--color-text-muted, currentColor);opacity:.75}.pa-table .pa-col-money{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.pa-table .pa-col-date{width:7.5rem;min-width:7.5rem;white-space:nowrap}.pa-table--account-activity{min-width:58rem}.pa-table--account-activity th,.pa-table--account-activity td{white-space:nowrap}.pa-table--account-activity .pa-col-type{width:6rem;min-width:6rem}.pa-table--account-activity .pa-col-description{min-width:16rem}.pa-table--account-activity .pa-void-reason{display:inline;margin-top:0;margin-left:var(--space-2)}.pa-table .pa-col-action{width:1%;white-space:nowrap;text-align:right}.pa-row-muted{opacity:.62}.pa-row-actions{display:inline-flex;align-items:center;justify-content:flex-end;gap:var(--space-2);flex-wrap:wrap}.pa-link-btn{border:none;background:none;color:var(--color-primary);cursor:pointer;font:inherit;font-size:.86em;font-weight:600;padding:var(--space-1);opacity:.82;transition:opacity var(--transition-fast),color var(--transition-fast)}.pa-link-btn:hover:not(:disabled){opacity:1;color:var(--color-primary-hover)}.pa-link-btn:disabled{cursor:not-allowed;opacity:.45}.pa-link-btn--danger{color:var(--color-error)}.pa-link-btn--danger:hover:not(:disabled){color:var(--color-error)}.pa-status{display:inline-flex;align-items:center;border-radius:var(--radius-sm);padding:.1em .45em;font-size:.78em;font-weight:600}.pa-status--active{background:var(--color-primary-tint);color:var(--color-primary)}.pa-status--void{background:var(--color-surface);color:var(--color-text-muted, currentColor)}.pa-void-reason{display:block;margin-top:var(--space-1);font-size:.78em;color:var(--color-text-muted, currentColor)}.pa-payment-detail-row td{background:var(--color-surface-dim);border-bottom:1px solid var(--color-border-subtle)}.pa-payment-detail{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-2) 0}.pa-allocation-list{list-style:none;display:flex;flex-direction:column;gap:var(--space-1);margin:0;padding:0}.pa-allocation-list li{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.pa-allocation-list strong,.pa-unallocated-detail{font-variant-numeric:tabular-nums}.pa-unallocated-detail,.pa-payment-notes{color:var(--color-text-muted, currentColor)}.pa-payment-notes{white-space:pre-wrap}.pa-payment-form{display:flex;flex-direction:column;gap:var(--space-3);margin-bottom:var(--space-4);padding:var(--space-4);border:1px solid var(--color-border-subtle);border-radius:var(--radius-lg);background:var(--color-surface-dim)}.pa-form-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-3)}.pa-field{display:flex;flex-direction:column;gap:var(--space-1);min-width:0}.pa-field span,.pa-date-field span{font-size:.78em;font-weight:600;color:var(--color-text-muted, currentColor)}.pa-field input,.pa-field select,.pa-field textarea,.pa-date-field input,.pa-allocation-row input,.pa-textarea{display:block;width:100%;box-sizing:border-box;border:1px solid var(--color-border-input);border-radius:var(--radius-md);background:var(--color-bg-input);color:inherit;font:inherit;font-size:.9em;padding:.5em .65em;outline:none;transition:border-color var(--transition-base),background-color var(--transition-base)}.pa-field input,.pa-field select,.pa-date-field input,.pa-allocation-row input{height:calc(var(--space-8) + var(--space-1));min-height:calc(var(--space-8) + var(--space-1))}.pa-field input:focus,.pa-field select:focus,.pa-field textarea:focus,.pa-date-field input:focus,.pa-allocation-row input:focus,.pa-textarea:focus{border-color:var(--color-border-input-focus);background:var(--color-surface-hover)}.pa-field textarea,.pa-textarea{resize:vertical}.pa-allocation-controls{display:flex;align-items:center;gap:var(--space-2)}.pa-allocation-label{font-size:.78em;font-weight:600;color:var(--color-text-muted, currentColor)}.pa-segmented{display:inline-flex;gap:var(--space-1);padding:var(--space-1);border:1px solid var(--color-border-subtle);border-radius:var(--radius-md);background:var(--color-surface)}.pa-segmented-btn{border:none;border-radius:var(--radius-sm);background:none;color:inherit;cursor:pointer;font:inherit;font-size:.8em;font-weight:600;padding:var(--space-1) var(--space-2);opacity:.7}.pa-segmented-btn--active{background:var(--color-primary-tint);color:var(--color-primary);opacity:1}.pa-manual-allocations{display:flex;flex-direction:column;gap:var(--space-2)}.pa-allocation-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(7rem,10rem);gap:var(--space-3);align-items:center}.pa-allocation-row span{display:flex;flex-direction:column;min-width:0;font-size:.9em}.pa-allocation-row small{color:var(--color-text-muted, currentColor)}.pa-allocation-total{align-self:flex-end;font-size:.86em;font-weight:600;font-variant-numeric:tabular-nums}.pa-form-actions,.pa-modal-actions{display:flex;justify-content:flex-end;gap:var(--space-2)}.pa-primary-btn,.pa-secondary-btn,.pa-danger-btn{min-height:2.2rem;border-radius:var(--radius-md);cursor:pointer;font:inherit;font-size:.86em;font-weight:600;padding:.45em .9em;transition:opacity var(--transition-fast),background-color var(--transition-fast)}.pa-primary-btn{border:none;background:var(--color-primary);color:var(--color-on-primary)}.pa-secondary-btn{border:1px solid var(--color-border);background:var(--color-surface);color:inherit}.pa-danger-btn{border:1px solid var(--color-error);background:none;color:var(--color-error)}.pa-primary-btn:hover:not(:disabled),.pa-secondary-btn:hover:not(:disabled){opacity:.86}.pa-danger-btn:hover:not(:disabled){background:var(--color-error);color:var(--color-on-primary)}.pa-primary-btn:disabled,.pa-secondary-btn:disabled,.pa-danger-btn:disabled{cursor:not-allowed;opacity:.5}.pa-recent-payments{display:flex;flex-direction:column;gap:var(--space-2);margin-bottom:var(--space-4)}.pa-subtitle{margin:0;font-size:.78em;font-weight:600;letter-spacing:.05em;text-transform:uppercase;opacity:.55}.pa-compact-list{list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2);margin:0;padding:0}.pa-compact-list li{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);min-width:0;padding:var(--space-2) var(--space-3);border:1px solid var(--color-border-subtle);border-radius:var(--radius-md);background:var(--color-surface-dim)}.pa-compact-list span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pa-compact-list strong{flex-shrink:0;font-variant-numeric:tabular-nums}.pa-statement-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4);margin-bottom:var(--space-3)}.pa-statement-header .pd-section-title{margin-bottom:0}.pa-statement-controls{display:flex;align-items:flex-end;justify-content:flex-end;gap:var(--space-2);flex-wrap:wrap}.pa-date-field{display:flex;flex-direction:column;gap:var(--space-1)}.pa-checkbox{display:inline-flex;align-items:center;gap:var(--space-2);min-height:2.25rem;font-size:.86em;color:var(--color-text-muted, currentColor)}.pa-statement-summary{display:flex;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-3);padding:var(--space-3);border:1px solid var(--color-border-subtle);border-radius:var(--radius-md);background:var(--color-surface-dim);font-size:.9em;font-weight:600;font-variant-numeric:tabular-nums}.pa-statement-preview-document{min-width:0}.pa-statement-aging-summary{display:grid;grid-template-columns:minmax(32rem,1fr) minmax(18rem,.42fr);gap:var(--space-3);margin-top:var(--space-3);overflow-x:auto;overflow-y:hidden;padding-bottom:var(--space-1);font-size:.88em}.pa-statement-aging-summary table{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums}.pa-statement-aging-summary tr{height:calc(var(--space-6) + var(--space-3))}.pa-statement-aging-summary th,.pa-statement-aging-summary td{border:1px solid var(--color-border-subtle);padding:var(--space-2);vertical-align:top}.pa-statement-aging-table{min-width:32rem}.pa-statement-aging-table th{text-align:center;font-weight:600}.pa-statement-aging-table td{text-align:right}.pa-statement-aging-table td[colspan]{text-align:left}.pa-statement-aging-table .pa-statement-aging-total-label{text-align:right;white-space:nowrap}.pa-statement-due-table{min-width:18rem}.pa-statement-due-table th{text-align:left;font-weight:500}.pa-statement-due-table td{text-align:right}.pa-allocation-detail{margin:var(--space-1) 0 0;padding-left:var(--space-4);color:var(--color-text-muted, currentColor);font-size:.88em}.pa-empty-cell{text-align:center;color:var(--color-text-muted, currentColor)}.pa-modal-overlay{position:fixed;inset:0;z-index:10;display:flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--color-page-bg) 72%,transparent);padding:var(--space-4)}.pa-modal{width:min(26rem,100%);max-height:calc(100dvh - (2 * var(--space-4)));overflow-y:auto;display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-6);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-bg-elevated)}.pa-modal-title{margin:0;font-size:1em}.pa-modal-body{margin:0;color:var(--color-text-muted, currentColor)}@media(max-width:900px){.pa-summary-grid,.pa-form-grid,.pa-compact-list{grid-template-columns:repeat(2,minmax(0,1fr))}.pa-statement-header{flex-direction:column;align-items:stretch}.pa-statement-controls{justify-content:flex-start}}@media(max-width:600px){.pa-summary-grid,.pa-form-grid,.pa-compact-list,.pa-allocation-row{grid-template-columns:1fr}.pa-form-actions,.pa-modal-actions{justify-content:stretch}.pa-form-actions button,.pa-modal-actions button{flex:1}}.invoices-layout{display:flex;align-items:stretch;height:calc(100dvh - 48px);overflow:hidden;padding:0}.invoices-layout.page{max-width:none;margin:0;padding:0}.invoices-sidebar{width:min(380px,42vw);flex-shrink:0;border-right:1px solid var(--color-border-subtle);display:flex;flex-direction:column;overflow:hidden}.invoices-sidebar-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4) var(--space-3) var(--space-2);gap:var(--space-2)}.invoices-sidebar-actions{display:flex;align-items:center;gap:.4rem}.invoices-new-btn{background:none;border:1px solid var(--color-border);border-radius:var(--radius-sm);color:inherit;cursor:pointer;font-size:1rem;line-height:1;padding:.3em .45em;opacity:.65;transition:opacity var(--transition-fast),background-color var(--transition-fast);flex-shrink:0}.invoices-new-btn:hover{opacity:1;background-color:var(--color-surface-hover)}.invoices-sidebar-title{font-weight:600;font-size:.85em;letter-spacing:.04em;text-transform:uppercase;opacity:.55}.invoices-count{font-size:.78em;background-color:var(--color-surface);border-radius:10px;padding:.1em .55em;opacity:.7}.invoices-loading,.invoices-empty{padding:var(--space-3);font-size:.88em;opacity:.55;margin:0}.invoices-search{padding:0 .375rem .375rem}.invoices-search input,.invoices-search select{width:100%;box-sizing:border-box;background:var(--color-surface);border:1px solid var(--color-border-input);border-radius:var(--radius-md);color:inherit;font-size:.85em;padding:.45em .65em;outline:none;transition:border-color var(--transition-base),background-color var(--transition-base)}.invoices-search select{margin-top:.3rem;cursor:pointer;appearance:none;line-height:1.5;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23888' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .6em center;padding-right:2em}.invoices-search input:focus,.invoices-search select:focus{border-color:var(--color-border-input-focus);background:var(--color-surface-hover)}.invoices-list{list-style:none;margin:0;padding:var(--space-1) .375rem;overflow-y:auto;scrollbar-gutter:stable;flex:1}.invoices-list li{margin-bottom:1px}.invoice-item{width:100%;text-align:left;background:none;border:none;padding:.5em .6em;border-radius:var(--radius-md);cursor:pointer;color:inherit;opacity:.75;transition:opacity var(--transition-fast),background-color var(--transition-fast)}.invoice-item:hover{opacity:1;background-color:var(--color-surface)}.invoice-item.active{opacity:1;background-color:var(--color-primary-tint);color:var(--color-primary)}.invoice-item-topline{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);margin-bottom:.15em}.invoice-item-number{font-size:.86em;font-weight:650}.invoice-item-state{flex-shrink:0;border:1px solid var(--color-border-subtle);border-radius:var(--radius-sm);padding:.05em .45em;font-size:.68em;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.invoice-item-state--paid,.invoice-item-state--legacy{color:var(--color-success)}.invoice-item-state--partially-paid,.invoice-item-state--unpaid,.invoice-item-state--outstanding{color:var(--color-primary)}.invoice-item-state--void{color:var(--color-error)}.invoice-item-patient{font-size:.88em;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.invoice-item-meta{display:flex;flex-wrap:wrap;gap:var(--space-2);font-size:.78em;opacity:.7;margin-top:.15em}.invoice-item-financials{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-2);margin-top:var(--space-2);padding-top:var(--space-2);border-top:1px solid var(--color-border-subtle);font-size:.78em}.invoices-line-sub-items{margin:var(--space-1) 0 0;padding-left:var(--space-5);color:var(--color-text-muted);font-size:inherit}.invoices-line-sub-items li::marker{content:"↳  "}.invoices-line-sub-items span{margin-left:var(--space-2)}.invoice-item-financials span{min-width:0;display:flex;flex-direction:column;gap:.05em;font-weight:600;text-align:right}.invoice-item-financials small{font-size:.78em;font-weight:500;opacity:.62}.invoices-content{flex:1;min-width:0;overflow:hidden;display:flex;flex-direction:column}.invoices-placeholder{height:100%;display:flex;align-items:center;justify-content:center;opacity:.55;font-size:.9em;margin:0;padding:var(--space-8)}.invoices-back{display:none}.invoice-detail{flex:1;overflow:hidden;display:flex;flex-direction:column}.inv-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4);flex-shrink:0;padding:var(--space-6) var(--space-6) 0;margin-bottom:var(--space-4)}.inv-header-left h2{margin:0 0 var(--space-1);font-size:1.15em}.inv-header-left .inv-patient{font-size:.9em;opacity:.65;margin:0}.inv-header-right{display:flex;flex-direction:column;align-items:stretch;gap:var(--space-2);flex-shrink:0;min-width:9rem}.inv-status-badge{font-size:.72em;font-weight:700;letter-spacing:.08em;text-transform:uppercase;opacity:.75}.inv-payment-state{border:1px solid var(--color-border-subtle);border-radius:var(--radius-sm);padding:.2em .5em;font-size:.72em;font-weight:700;letter-spacing:.05em;text-align:center;text-transform:uppercase}.inv-payment-state--paid{color:var(--color-success)}.inv-payment-state--partially-paid,.inv-payment-state--unpaid{color:var(--color-primary)}.inv-action-btn{display:inline-flex;align-items:center;justify-content:center;font-size:.8em;font-weight:500;font-family:inherit;line-height:1.5;text-decoration:none;padding:.4em .7em;border-radius:var(--radius-sm);border:1px solid currentColor;background:none;cursor:pointer;width:100%;box-sizing:border-box;white-space:nowrap;transition:background-color var(--transition-fast),color var(--transition-fast)}.inv-action-btn:disabled{opacity:.5;cursor:default}.inv-action-btn--primary{color:var(--color-primary)}.inv-action-btn--primary:hover:not(:disabled){background-color:var(--color-primary);color:#fff}.inv-action-btn--danger{color:var(--color-danger, #c0392b)}.inv-action-btn--danger:hover:not(:disabled){background-color:var(--color-danger, #c0392b);color:#fff}.inv-action-btn--paid{color:#2a9d5c}.inv-action-btn--paid:hover:not(:disabled){background-color:#2a9d5c;color:#fff}.inv-pdf-error{font-size:.85em;color:var(--color-danger, #c0392b);margin:0 var(--space-6);flex-shrink:0}.inv-status-badge.draft{color:var(--color-text-muted, #888)}.inv-status-badge.finalised{color:var(--color-primary)}.inv-status-badge.paid{color:#2a9d5c}.inv-status-badge.void{color:#c0392b}.inv-body{flex:1;overflow-y:auto;scrollbar-gutter:stable;padding:0 var(--space-6) var(--space-6)}.inv-meta{display:flex;gap:var(--space-6);font-size:.85em;opacity:.65;margin-bottom:var(--space-5);flex-wrap:wrap}.inv-meta span{display:flex;flex-direction:column;gap:.15em}.inv-meta strong{font-size:.82em;letter-spacing:.04em;text-transform:uppercase;opacity:.7}.inv-section-title{font-size:.78em;font-weight:600;letter-spacing:.05em;text-transform:uppercase;opacity:.5;margin:0 0 var(--space-2)}.inv-lines-table{width:100%;border-collapse:collapse;font-size:.88em;margin-bottom:var(--space-5)}.inv-lines-table th{text-align:left;font-size:.78em;font-weight:600;letter-spacing:.04em;text-transform:uppercase;opacity:.5;padding:0 var(--space-2) var(--space-2);border-bottom:1px solid var(--color-border-subtle)}.inv-lines-table th.right,.inv-lines-table td.right{text-align:right}.inv-lines-table td{padding:var(--space-2) var(--space-2);border-bottom:1px solid var(--color-border-subtle);vertical-align:top}.inv-lines-table tr:last-child td{border-bottom:none}.inv-total-summary{display:flex;justify-content:flex-end;gap:var(--space-4);font-size:.9em;font-weight:600;padding:var(--space-2) var(--space-2);border-top:1px solid var(--color-border);margin-bottom:var(--space-5)}.inv-financial-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-2);margin-bottom:var(--space-5)}.inv-financial-item{border:1px solid var(--color-border-subtle);border-radius:var(--radius-md);background:var(--color-surface-dim);padding:var(--space-3)}.inv-financial-item span{display:block;font-size:.76em;font-weight:600;letter-spacing:.04em;text-transform:uppercase;opacity:.58}.inv-financial-item strong{display:block;margin-top:var(--space-1);font-size:1em}.inv-allocations-table{width:100%;border-collapse:collapse;font-size:.88em;margin-bottom:var(--space-5)}.inv-allocations-table th,.inv-allocations-table td{padding:var(--space-2);border-bottom:1px solid var(--color-border-subtle);text-align:left}.inv-allocations-table th{font-size:.78em;font-weight:600;letter-spacing:.04em;text-transform:uppercase;opacity:.5}.inv-allocations-table th.right,.inv-allocations-table td.right{text-align:right}.inv-empty-note{margin:0 0 var(--space-5);font-size:.88em;opacity:.58}.inv-notes{background:var(--color-surface);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);font-size:.88em;white-space:pre-wrap;margin-bottom:var(--space-5)}.inv-modal-overlay{position:fixed;inset:0;background:#00000059;display:flex;align-items:center;justify-content:center;z-index:100}.inv-modal{background:var(--color-bg-elevated, var(--color-surface));border:1px solid var(--color-border);border-radius:var(--radius-lg, var(--radius-md));padding:var(--space-6);width:min(400px,90%);display:flex;flex-direction:column;gap:var(--space-3);box-shadow:0 8px 32px #0000002e}.inv-modal-title{margin:0;font-size:1em;font-weight:600}.inv-modal-body{font-size:.88em;opacity:.75;line-height:1.5;margin:0}.inv-modal-actions{display:flex;justify-content:flex-end;gap:var(--space-2);padding-top:var(--space-1)}.inv-modal-cancel{padding:.5em 1.1em;border:1px solid var(--color-border);border-radius:var(--radius-md);background:none;color:inherit;font-size:.9em;cursor:pointer;transition:background-color var(--transition-fast)}.inv-modal-cancel:hover:not(:disabled){background:var(--color-surface-hover)}.inv-modal-confirm-danger{padding:.5em 1.1em;min-width:7rem;white-space:nowrap;box-sizing:border-box;border:1px solid var(--color-danger, #c0392b);border-radius:var(--radius-md);background:none;color:var(--color-danger, #c0392b);font-size:.9em;font-weight:500;cursor:pointer;transition:background-color var(--transition-fast),color var(--transition-fast)}.inv-modal-confirm-danger:hover:not(:disabled){background:var(--color-danger, #c0392b);color:#fff}.inv-modal-confirm-danger:disabled{opacity:.5;cursor:default}.inv-new-form{flex:1;overflow-y:auto;padding:var(--space-6);display:flex;flex-direction:column;gap:var(--space-3);max-width:480px}.inv-new-form-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-2)}.inv-new-form-header h2{margin:0;font-size:1.1em}.inv-new-form-cancel{background:none;border:none;font-size:1.4em;line-height:1;cursor:pointer;color:inherit;opacity:.5;padding:.1em .3em;border-radius:var(--radius-sm)}.inv-new-form-cancel:hover{opacity:1;background:var(--color-surface-hover)}.inv-new-label{font-size:.78em;font-weight:600;letter-spacing:.04em;text-transform:uppercase;opacity:.55}.inv-new-search{width:100%;box-sizing:border-box;background:var(--color-surface);border:1px solid var(--color-border-input);border-radius:var(--radius-md);color:inherit;font-size:.9em;padding:.5em .75em;outline:none;transition:border-color var(--transition-base)}.inv-new-search:focus{border-color:var(--color-border-input-focus)}.inv-new-empty{font-size:.88em;opacity:.55;margin:0}.inv-new-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px;max-height:320px;overflow-y:auto}.inv-new-list-item{width:100%;text-align:left;background:none;border:1px solid transparent;border-radius:var(--radius-md);padding:.5em .7em;font-size:.9em;cursor:pointer;color:inherit;display:flex;justify-content:space-between;align-items:center;transition:background-color var(--transition-fast),border-color var(--transition-fast)}.inv-new-list-item:hover{background:var(--color-surface)}.inv-new-list-item.selected{background:var(--color-primary-tint);color:var(--color-primary);border-color:var(--color-primary)}.inv-new-consult-type{font-size:.82em;opacity:.6}.inv-new-patient-row{display:flex;align-items:center;justify-content:space-between;background:var(--color-surface);border-radius:var(--radius-md);padding:.5em .75em;font-size:.9em}.inv-new-patient-name{font-weight:500}.inv-new-change-patient{background:none;border:none;font-size:.85em;color:var(--color-primary);cursor:pointer;padding:0}.inv-new-change-patient:hover{text-decoration:underline}.inv-new-error{font-size:.85em;color:var(--color-danger, #c0392b);margin:0}.inv-new-submit{align-self:flex-start;background:var(--color-primary);color:#fff;border:none;border-radius:var(--radius-md);padding:.55em 1.2em;font-size:.9em;font-weight:500;cursor:pointer;transition:opacity var(--transition-fast);margin-top:var(--space-2)}.inv-new-submit:disabled{opacity:.45;cursor:default}@media(max-width:600px){.invoices-sidebar{width:100%}.invoices-layout--selected .invoices-sidebar{display:none}.invoices-back{display:inline-flex;align-items:center;gap:var(--space-1);background:none;border:none;color:var(--color-primary);font-size:.9em;cursor:pointer;padding:var(--space-3) var(--space-4) 0;flex-shrink:0}}.inventory-page{block-size:calc(100dvh - 48px);box-sizing:border-box;display:flex;flex-direction:column;gap:var(--space-3);min-block-size:0;overflow:hidden}.inventory-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4)}.inventory-header h2,.inventory-form-heading h4,.inventory-empty-state h3,.inventory-panel-header h3,.inventory-panel-header h4,.inventory-empty-state p{margin:0}.inventory-form-heading-count{color:var(--color-text-muted);font-size:.85em;font-weight:400;margin-inline-start:var(--space-2)}.inventory-empty-state p,.inventory-empty-label,.inventory-field-error,.inventory-item-name span,.inventory-muted,.inventory-summary-item span{color:var(--color-text-muted)}.inventory-summary{display:flex;flex:1;flex-wrap:wrap;gap:var(--space-2);justify-content:flex-end;min-width:0}.inventory-summary-item{align-items:baseline;border:1px solid var(--color-border-subtle);border-radius:var(--radius-lg);display:flex;gap:var(--space-1);padding:var(--space-2) var(--space-3);white-space:nowrap}.inventory-summary-item span{font-size:.8em}.inventory-summary-item strong{font-size:1em;line-height:1.1}.inventory-tabs{border-bottom:1px solid var(--color-border-subtle);display:flex;gap:var(--space-2);overflow-x:auto}.inventory-tabs button{background:none;border:none;border-bottom:2px solid transparent;border-radius:0;color:var(--color-text-muted);flex-shrink:0;padding:var(--space-2) var(--space-3)}.inventory-tabs button:hover{background:var(--color-surface-hover);border-color:transparent;color:inherit}.inventory-tabs button.active{border-bottom-color:var(--color-primary);color:var(--color-primary)}.inventory-tab-panel{box-sizing:border-box;border:1px solid var(--color-border-subtle);border-radius:var(--radius-lg);display:flex;flex-direction:column;block-size:auto;flex:1;max-block-size:none;min-block-size:0;overflow:hidden;min-height:40dvh;padding:var(--space-3)}.inventory-tab-panel[hidden]{display:none}.inventory-orders-tab-panel,.inventory-receipts-tab-panel{box-sizing:border-box;display:flex;flex-direction:column;block-size:auto;max-block-size:none;min-block-size:0;overflow:hidden}.inventory-empty-state{align-items:flex-start;display:flex;flex-direction:column;gap:var(--space-2);justify-content:center;min-height:100%}.inventory-empty-label{font-size:.8em;font-weight:600;text-transform:uppercase}.inventory-items-panel{display:flex;flex-direction:column;gap:var(--space-4)}.inventory-stock-panel,.inventory-usage-panel,.inventory-suppliers-panel,.inventory-catalog-panel{flex:1;min-block-size:0;overflow:hidden}.inventory-orders-panel{gap:var(--space-3);flex:1;max-block-size:none;min-block-size:0;overflow:hidden}.inventory-order-summary h3,.inventory-order-summary p{margin:0}.inventory-orders-workspace{align-items:stretch;display:grid;flex:1;gap:var(--space-6);grid-template-columns:minmax(18rem,.8fr) minmax(0,1.6fr);min-block-size:0;overflow:hidden}.inventory-receipts-panel{flex:1;gap:var(--space-3);min-block-size:0;overflow:hidden}.inventory-receipts-workspace{align-items:stretch;display:grid;flex:1;gap:var(--space-6);grid-template-columns:minmax(18rem,.8fr) minmax(0,1.6fr);min-block-size:0;overflow:hidden}.inventory-receipts-workspace>.inventory-item-supplier-panel{border-top:none;min-block-size:0;overflow:hidden;padding-top:0}.inventory-receipt-detail-panel>.inventory-item-supplier-panel{flex:1;min-block-size:0;overflow:hidden}.inventory-receipt-detail-panel>.inventory-item-supplier-panel>.inventory-lot-section{min-block-size:0}.inventory-suppliers-panel{gap:var(--space-3)}.inventory-suppliers-workspace{align-items:stretch;display:grid;flex:1;gap:var(--space-6);grid-template-columns:minmax(18rem,.8fr) minmax(0,1.6fr);min-block-size:0;overflow:hidden}.inventory-suppliers-workspace>.inventory-item-supplier-panel{border-top:none;min-block-size:0;overflow:hidden;padding-top:0}.inventory-supplier-filters{align-items:end;display:grid;gap:var(--space-2);grid-template-columns:minmax(0,1.6fr) minmax(7.5rem,1fr)}.inventory-supplier-master-list{display:flex;flex:1;flex-direction:column;gap:var(--space-2);max-block-size:none;min-block-size:0;overflow-y:auto}.inventory-supplier-master-card{align-items:stretch;background:var(--color-bg-elevated);border:1px solid var(--color-border-subtle);color:inherit;display:flex;flex-direction:column;gap:var(--space-1);padding:var(--space-2);text-align:left;width:100%}.inventory-supplier-master-card:hover{background:var(--color-surface-hover)}.inventory-supplier-master-card-selected{border-color:var(--color-primary)}.inventory-supplier-master-card-topline,.inventory-supplier-detail-heading,.inventory-supplier-detail-heading>div:first-child{align-items:center;display:flex;gap:var(--space-2)}.inventory-supplier-master-card-topline,.inventory-supplier-detail-heading{justify-content:space-between}.inventory-supplier-master-card-topline{min-width:0}.inventory-supplier-master-card-topline>strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.inventory-supplier-master-card-topline>.inventory-status-badge{flex-shrink:0}.inventory-supplier-master-card>span:not(.inventory-supplier-master-card-topline){color:var(--color-text-muted);font-size:.82em;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.inventory-supplier-detail-heading h3{margin:0}.inventory-supplier-address,.inventory-supplier-notes{grid-column:span 2}.inventory-catalog-panel{gap:var(--space-3)}.inventory-catalog-workspace{align-items:stretch;display:grid;flex:1;gap:var(--space-6);grid-template-columns:minmax(18rem,.8fr) minmax(0,1.6fr);min-block-size:0;overflow:hidden}.inventory-catalog-workspace>.inventory-item-supplier-panel{border-top:none;min-block-size:0;overflow:hidden;padding-top:0}.inventory-catalog-filters{align-items:end;display:grid;gap:var(--space-2);grid-template-columns:minmax(0,1.6fr) minmax(7.5rem,1fr)}.inventory-catalog-master-list{display:flex;flex:1;flex-direction:column;gap:var(--space-2);max-block-size:none;min-block-size:0;overflow-y:auto}.inventory-catalog-master-card{align-items:stretch;background:var(--color-bg-elevated);border:1px solid var(--color-border-subtle);color:inherit;display:flex;flex-direction:column;gap:var(--space-1);padding:var(--space-2);text-align:left;width:100%}.inventory-catalog-master-card:hover{background:var(--color-surface-hover)}.inventory-catalog-master-card-selected{border-color:var(--color-primary)}.inventory-catalog-master-card-topline{align-items:center;display:flex;gap:var(--space-2);justify-content:space-between;min-width:0}.inventory-catalog-master-card-topline>strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.inventory-catalog-master-card-topline>.inventory-status-badge{flex-shrink:0}.inventory-catalog-master-card>span:not(.inventory-catalog-master-card-topline){color:var(--color-text-muted);font-size:.82em;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.inventory-catalog-notes{grid-column:span 2}.inventory-stock-workspace{align-items:stretch;display:grid;flex:1;gap:var(--space-6);grid-template-columns:minmax(18rem,.8fr) minmax(0,1.6fr);min-block-size:0;overflow:hidden}.inventory-stock-workspace>.inventory-item-supplier-panel{border-top:none;min-block-size:0;overflow:hidden;padding-top:0}.inventory-stock-list-panel{gap:var(--space-3);min-width:0}.inventory-item-supplier-panel>h3,.inventory-item-supplier-panel>h4{align-items:center;display:flex;margin:0;min-block-size:var(--space-8)}.inventory-stock-list-panel>h3,.inventory-stock-detail-panel>h3,.inventory-usage-history-workspace>.inventory-item-supplier-panel:first-child>h4,.inventory-supplier-list-panel>h4,.inventory-catalog-list-panel>h4{border-bottom:1px solid var(--color-border-subtle);padding-bottom:var(--space-3)}.inventory-stock-workspace .inventory-items-toolbar{align-items:end;display:grid;grid-template-columns:minmax(0,1.6fr) minmax(7.5rem,1fr)}.inventory-stock-workspace .inventory-stock-table-wrap{max-block-size:min(52dvh,34rem)}.inventory-stock-master-list{display:flex;flex:1;flex-direction:column;gap:var(--space-2);max-block-size:none;min-block-size:0;overflow-y:auto}.inventory-stock-master-card{align-items:stretch;background:var(--color-bg-elevated);border:1px solid var(--color-border-subtle);color:inherit;display:flex;flex-direction:column;gap:var(--space-1);padding:var(--space-2);text-align:left;width:100%}.inventory-stock-master-card:hover{background:var(--color-surface-hover)}.inventory-stock-master-card-selected{border-color:var(--color-primary)}.inventory-stock-master-card-topline,.inventory-stock-master-card-bottomline{align-items:center;display:flex;gap:var(--space-2);justify-content:space-between}.inventory-stock-master-card-topline{min-width:0}.inventory-stock-master-card-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.inventory-stock-master-card-quantity{flex-shrink:0}.inventory-stock-master-card>span:not(.inventory-stock-master-card-topline){color:var(--color-text-muted);font-size:.82em;line-height:1.2}.inventory-stock-master-card-bottomline{display:block;justify-content:flex-start;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.inventory-stock-history-host{min-block-size:0}.inventory-stock-history{max-block-size:min(52dvh,34rem);overflow-y:auto;padding-inline-end:var(--space-2)}.inventory-stock-workspace .inventory-stock-table{min-width:0;table-layout:fixed;width:100%}.inventory-stock-workspace .inventory-stock-summary-table th:nth-child(3),.inventory-stock-workspace .inventory-stock-summary-table td:nth-child(3),.inventory-stock-workspace .inventory-stock-summary-table th:nth-child(4),.inventory-stock-workspace .inventory-stock-summary-table td:nth-child(4),.inventory-stock-workspace .inventory-stock-summary-table th:nth-child(6),.inventory-stock-workspace .inventory-stock-summary-table td:nth-child(6),.inventory-stock-workspace .inventory-stock-table:not(.inventory-stock-summary-table) th:nth-child(5),.inventory-stock-workspace .inventory-stock-table:not(.inventory-stock-summary-table) td:nth-child(5){display:none}.inventory-stock-workspace .inventory-stock-summary-table th:nth-child(1),.inventory-stock-workspace .inventory-stock-summary-table td:nth-child(1){width:42%}.inventory-stock-workspace .inventory-stock-summary-table th:nth-child(2),.inventory-stock-workspace .inventory-stock-summary-table td:nth-child(2),.inventory-stock-workspace .inventory-stock-summary-table th:nth-child(5),.inventory-stock-workspace .inventory-stock-summary-table td:nth-child(5){width:20%}.inventory-stock-workspace .inventory-stock-summary-table th:nth-child(7),.inventory-stock-workspace .inventory-stock-summary-table td:nth-child(7){width:18%}.inventory-receipt-master-list{display:flex;flex:1;flex-direction:column;gap:var(--space-2);max-block-size:none;min-block-size:0;overflow-y:auto}.inventory-receipt-master-card{align-items:stretch;background:var(--color-bg-elevated);border:1px solid var(--color-border-subtle);color:inherit;display:flex;flex-direction:column;gap:var(--space-1);padding:var(--space-2);text-align:left;width:100%}.inventory-receipt-master-card:hover{background:var(--color-surface-hover)}.inventory-receipt-master-card-selected{border-color:var(--color-primary)}.inventory-receipt-master-card-topline{align-items:center;display:flex;gap:var(--space-2);justify-content:space-between;min-width:0}.inventory-receipt-master-card-topline>strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.inventory-receipt-master-card-topline>.inventory-status-badge{flex-shrink:0}.inventory-receipt-master-card>span:not(.inventory-receipt-master-card-topline){color:var(--color-text-muted);font-size:.82em;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.inventory-receipt-detail-list{display:flex;flex-direction:column;flex:1;gap:var(--space-3);min-block-size:0;overflow-y:auto}.inventory-receipt-detail-card{border:1px solid var(--color-border-subtle);border-radius:var(--radius-md);padding:var(--space-3)}.inventory-receipt-detail-card>.inventory-empty-label{margin:0 0 var(--space-3)}.inventory-order-modal-overlay,.inventory-receipt-modal-overlay,.inventory-usage-modal-overlay,.inventory-supplier-modal-overlay,.inventory-item-modal-overlay,.inventory-item-supplier-modal-overlay,.inventory-reversal-modal-overlay,.inventory-adjustment-modal-overlay,.inventory-order-edit-modal-overlay{align-items:center;background:var(--color-modal-backdrop);box-sizing:border-box;display:flex;inset:0;justify-content:center;padding:var(--space-4);position:fixed;z-index:var(--z-modal)}.inventory-order-edit-modal{background:var(--color-modal-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-modal);box-sizing:border-box;display:flex;flex-direction:column;gap:var(--space-4);max-block-size:calc(100dvh - (var(--space-4) * 2));min-block-size:0;overflow:hidden;padding:var(--space-6);width:min(calc(var(--space-8) * 30),100%)}.inventory-order-edit-modal>.inventory-panel-header{flex:0 0 auto}.inventory-order-edit-modal>.inventory-item-form,.inventory-order-lines-modal>.inventory-lot-section{min-block-size:0;overflow-y:auto}.inventory-order-edit-modal>.inventory-item-form{border-bottom:none;padding-bottom:0}.inventory-order-edit-modal-footer{border-top:1px solid var(--color-border-subtle);flex:0 0 auto;padding-top:var(--space-3)}.inventory-order-readonly-lines{box-sizing:border-box;display:flex;flex-direction:column;flex:1;margin-top:var(--space-2);min-block-size:0;min-width:0;overflow:hidden}.inventory-order-readonly-lines-panel{border-top:1px solid var(--color-border-subtle);display:flex;flex-direction:column;gap:var(--space-4);flex:1;min-block-size:0;min-width:0;padding-top:var(--space-4);overflow:hidden}.inventory-order-readonly-lines-panel>.inventory-lot-section{flex:1;min-width:0;min-block-size:0;max-block-size:none;overflow-y:auto;padding-block-end:var(--space-4);padding-inline-end:var(--space-2)}.inventory-order-readonly-lines-panel>.inventory-lot-section>fieldset:last-of-type{margin-bottom:var(--space-4)}.inventory-order-readonly-lines-panel .inventory-item-supplier-panel{gap:var(--space-2);padding:var(--space-2)}.inventory-order-readonly-lines-panel .inventory-form-grid{gap:var(--space-2);grid-template-columns:minmax(14rem,2.5fr) minmax(9rem,1.35fr) minmax(6rem,.575fr) minmax(7rem,.7fr)}.inventory-order-readonly-lines-panel .inventory-form-actions{padding-top:0}.inventory-adjustment-modal{background:var(--color-modal-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-modal);box-sizing:border-box;max-block-size:calc(100dvh - (var(--space-4) * 2));overflow-y:auto;padding:var(--space-6);width:min(calc(var(--space-8) * 24),100%)}.inventory-adjustment-modal>form{display:flex;flex-direction:column;gap:var(--space-4)}.inventory-reversal-modal{background:var(--color-modal-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-modal);box-sizing:border-box;max-block-size:calc(100dvh - (var(--space-4) * 2));overflow-y:auto;padding:var(--space-6);width:min(calc(var(--space-8) * 24),100%)}.inventory-reversal-modal>.inventory-panel-header{align-items:center}.inventory-reversal-modal>.inventory-action-note{margin:0}.inventory-reversal-modal>form{display:flex;flex-direction:column;gap:var(--space-4)}.inventory-item-supplier-modal{background:var(--color-modal-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-modal);box-sizing:border-box;max-block-size:calc(100dvh - (var(--space-4) * 2));overflow:hidden;padding:var(--space-6);width:min(calc(var(--space-8) * 30),100%)}.inventory-item-supplier-modal>.inventory-panel-header{flex:0 0 auto}.inventory-item-supplier-modal-content{display:flex;flex:1;flex-direction:column;gap:var(--space-4);min-block-size:0;overflow-y:auto;padding-inline-end:var(--space-2)}.inventory-item-modal{background:var(--color-modal-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-modal);box-sizing:border-box;max-block-size:calc(100dvh - (var(--space-4) * 2));overflow-y:auto;padding:var(--space-6);width:min(calc(var(--space-8) * 28),100%)}.inventory-item-modal>.inventory-item-form{border-bottom:none;padding-bottom:0}.inventory-supplier-modal{background:var(--color-modal-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-modal);box-sizing:border-box;inset-block-start:50%;inset-inline-start:50%;max-block-size:calc(100dvh - (var(--space-4) * 2));overflow-y:auto;padding:var(--space-6);position:fixed;transform:translate(-50%,-50%);width:min(calc(var(--space-8) * 28),calc(100% - (var(--space-4) * 2)));z-index:calc(var(--z-modal) + 1)}.inventory-supplier-modal>.inventory-item-form{border-top:none;padding-top:0}.inventory-order-modal,.inventory-receipt-modal{background:var(--color-modal-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-sizing:border-box;box-shadow:var(--shadow-modal);max-block-size:100%;min-block-size:0;overflow-y:auto;padding:var(--space-6);width:min(calc(var(--space-8) * 28),100%)}.inventory-usage-modal{background:var(--color-modal-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-modal);box-sizing:border-box;max-block-size:calc(100dvh - (var(--space-4) * 2));overflow-y:auto;padding:var(--space-6);width:min(calc(var(--space-8) * 28),100%)}.inventory-orders-workspace>.inventory-item-supplier-panel{block-size:100%;box-sizing:border-box;border-top:none;min-block-size:0;overflow:hidden;padding-top:0}.inventory-order-list-wrap{max-block-size:min(52dvh,34rem);overflow:auto}.inventory-order-master-list{display:flex;flex-direction:column;gap:var(--space-2);max-block-size:min(52dvh,34rem);overflow-y:auto}.inventory-order-detail-panel>.inventory-order-readonly-lines,.inventory-order-detail-panel>.inventory-order-readonly-lines-panel{min-block-size:0}.inventory-order-list-panel>.inventory-subpanel-header,.inventory-receipt-list-panel>.inventory-subpanel-header{min-block-size:var(--space-8)}.inventory-order-master-card{align-items:stretch;background:var(--color-bg-elevated);border:1px solid var(--color-border-subtle);color:inherit;display:flex;flex-direction:column;gap:var(--space-1);padding:var(--space-2);text-align:left;width:100%}.inventory-order-master-card:hover{background:var(--color-surface-hover)}.inventory-order-master-card-selected{border-color:var(--color-primary)}.inventory-order-master-card-topline{align-items:center;display:flex;gap:var(--space-2);justify-content:space-between;min-width:0}.inventory-order-master-card-topline>strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.inventory-order-master-card-topline>.inventory-status-badge{flex-shrink:0}.inventory-order-master-card>span:not(.inventory-order-master-card-topline){color:var(--color-text-muted);font-size:.82em;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.inventory-order-list-table{min-width:unset;table-layout:fixed;width:100%}.inventory-order-list-table th:nth-child(1),.inventory-order-list-table td:nth-child(1){width:32%}.inventory-order-list-table th:nth-child(2),.inventory-order-list-table td:nth-child(2),.inventory-order-list-table th:nth-child(3),.inventory-order-list-table td:nth-child(3),.inventory-order-list-table th:nth-child(4),.inventory-order-list-table td:nth-child(4){width:16%}.inventory-order-list-table th:nth-child(5),.inventory-order-list-table td:nth-child(5){width:20%}.inventory-order-summary{background:var(--color-surface-dim);border:1px solid var(--color-border-subtle);border-radius:var(--radius-md);display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-4)}.inventory-order-lines-edit-button:disabled,.inventory-order-lines-edit-button:disabled:hover{background:var(--color-surface-dim)!important;border-color:var(--color-border-subtle)!important;border-style:dashed;box-shadow:none!important;color:var(--color-text-muted)!important;cursor:not-allowed!important;filter:grayscale(1);opacity:.5}.inventory-usage-workspace{display:flex;flex:1;flex-direction:column;gap:var(--space-3);min-block-size:0;overflow:hidden}.inventory-usage-workspace>.inventory-items-panel{flex:1;min-block-size:0;overflow:hidden}.inventory-usage-history-workspace{align-items:stretch;display:grid;flex:1;gap:var(--space-6);grid-template-columns:minmax(18rem,.8fr) minmax(0,1.6fr);min-block-size:0;overflow:hidden}.inventory-usage-history-workspace>.inventory-item-supplier-panel{border-top:none;min-block-size:0;overflow:hidden;padding-top:0}.inventory-usage-filters{align-items:end;display:grid;gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr))}.inventory-usage-filters .inventory-filter-field{min-width:0}.inventory-activity-list{display:flex;flex:1;flex-direction:column;gap:var(--space-2);max-block-size:none;min-block-size:0;overflow-y:auto}.inventory-activity-list-footer{align-items:center;display:flex;font-size:.82em;gap:var(--space-3);justify-content:space-between;padding-top:var(--space-1)}.inventory-activity-list-footer>button{block-size:var(--space-6);padding-block:0}.inventory-activity-record{align-items:center;background:var(--color-bg-elevated);border:1px solid var(--color-border-subtle);border-radius:var(--radius-md);color:inherit;display:flex;gap:var(--space-2);justify-content:space-between;padding:var(--space-2);text-align:left;width:100%}.inventory-activity-record:hover{background:var(--color-surface-hover)}.inventory-activity-record-selected{border-color:var(--color-primary)}.inventory-activity-record-reversed,.inventory-activity-record-reversed:hover{background:var(--color-surface-dim);color:var(--color-text-muted)}.inventory-activity-record-main,.inventory-activity-record-meta{display:flex;flex-direction:column;gap:var(--space-1)}.inventory-activity-record-main{flex:1;min-width:0}.inventory-activity-record-main>strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.inventory-activity-record-main small{color:var(--color-text-muted)}.inventory-activity-record-meta{align-items:end;flex-shrink:0}.inventory-activity-detail-summary{background:var(--color-bg-elevated);border:1px solid var(--color-border-subtle);border-radius:var(--radius-md);display:grid;gap:var(--space-3);grid-template-columns:repeat(4,minmax(0,1fr));padding:var(--space-3)}.inventory-activity-detail-grid{display:grid;gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr))}.inventory-activity-detail-reason{border-top:1px solid var(--color-border-subtle);display:flex;flex-direction:column;gap:var(--space-1);padding-top:var(--space-3)}.inventory-activity-detail-reason>span{color:var(--color-text-muted);font-size:.85em;font-weight:600}.inventory-activity-detail-reason p{margin:0}.inventory-panel-header{align-items:center;border-bottom:1px solid var(--color-border-subtle);display:flex;gap:var(--space-4);justify-content:space-between;padding-bottom:var(--space-3)}.inventory-item-form{border-bottom:1px solid var(--color-border-subtle);display:flex;flex-direction:column;gap:var(--space-4);padding-bottom:var(--space-4)}.inventory-form-grid{display:grid;gap:var(--space-3);grid-template-columns:repeat(3,minmax(0,1fr))}.inventory-form-grid label,.inventory-filter-field,.inventory-search-field,.inventory-notes-field{display:flex;flex-direction:column;gap:var(--space-1)}.inventory-form-grid span,.inventory-filter-field span,.inventory-search-field span,.inventory-notes-field span{color:var(--color-text-muted);font-size:.85em;font-weight:600}.inventory-form-grid input,.inventory-form-grid select,.inventory-filter-field select,.inventory-search-field input,.inventory-notes-field textarea{background:var(--color-bg-input);border:1px solid var(--color-border-input);border-radius:var(--radius-md);box-sizing:border-box;color:inherit;font:inherit;min-width:0;padding:var(--space-2) var(--space-3)}.inventory-form-grid input,.inventory-form-grid select,.inventory-filter-field select,.inventory-search-field input{height:calc(var(--space-8) + var(--space-3));line-height:1.2;min-height:calc(var(--space-8) + var(--space-3))}.inventory-form-grid input:focus,.inventory-form-grid select:focus,.inventory-filter-field select:focus,.inventory-search-field input:focus,.inventory-notes-field textarea:focus{border-color:var(--color-border-input-focus)}.inventory-form-grid input:focus-visible,.inventory-form-grid select:focus-visible,.inventory-filter-field select:focus-visible,.inventory-search-field input:focus-visible,.inventory-notes-field textarea:focus-visible{outline-offset:-2px}.inventory-toggle-row,.inventory-form-actions,.inventory-items-toolbar,.inventory-row-actions,.inventory-tracking-flags{align-items:center;display:flex;flex-wrap:wrap;gap:var(--space-2)}.inventory-tracking-summary,.inventory-history-summary{display:flex;flex-direction:column;gap:var(--space-1)}.inventory-history-summary span{color:var(--color-text-muted);font-size:.85em;font-weight:600}.inventory-tracking-summary>span{color:var(--color-text-muted);font-size:.85em;font-weight:600}.inventory-items-toolbar{justify-content:space-between}.inventory-search-field{flex:1 1 auto}.inventory-filter-field{flex:0 1 auto}.inventory-toggle-row label{align-items:center;display:inline-flex;gap:var(--space-2)}.inventory-form-error{color:var(--color-error);margin:0}.inventory-status-message{color:var(--color-text-muted);margin:0}.inventory-field-error{color:var(--color-error);font-size:.85em;margin:0}.inventory-form-grid input[aria-invalid=true],.inventory-form-grid select[aria-invalid=true],.inventory-notes-field textarea[aria-invalid=true]{border-color:var(--color-error)}.inventory-item-supplier-panel{border-top:1px solid var(--color-border-subtle);display:flex;flex-direction:column;gap:var(--space-3);margin:0;min-width:0;padding-top:var(--space-4)}.inventory-item-supplier-panel.inventory-order-modal,.inventory-item-supplier-panel.inventory-receipt-modal{block-size:calc(100dvh - (var(--space-4) * 2));display:flex;flex-direction:column;overflow:hidden}.inventory-receipt-modal>.inventory-item-form,.inventory-item-form.inventory-receipt-modal-form{flex:1;min-block-size:0;overflow:hidden}.inventory-order-modal>.inventory-item-form,.inventory-item-form.inventory-order-modal-form{flex:1;min-block-size:0;overflow:hidden}.inventory-order-modal-lines,.inventory-receipt-modal-lines,.inventory-order-receive-modal-lines{flex:1;min-block-size:0;overflow-y:auto;padding-inline-end:var(--space-2)}.inventory-receipt-modal-lines>.inventory-item-supplier-panel:first-child{border-top:none;padding-top:0}.inventory-item-supplier-panel legend{padding:0}fieldset.inventory-item-supplier-panel{border:1px solid var(--color-border-subtle);border-radius:var(--radius-md);margin:0;padding:var(--space-3)}.inventory-subpanel-header{padding-bottom:var(--space-3)}.inventory-subpanel-header>button,.inventory-subpanel-header>.inventory-form-actions button{block-size:var(--space-8);padding-block:0}.inventory-item-supplier-form{border-top:1px solid var(--color-border-subtle);padding-top:var(--space-4)}.inventory-cost-summary{align-items:baseline;border:1px solid var(--color-border-subtle);border-radius:var(--radius-md);display:flex;flex-wrap:wrap;gap:var(--space-2);padding:var(--space-3)}.inventory-cost-summary span{color:var(--color-text-muted)}.inventory-lot-section{display:flex;flex-direction:column;gap:var(--space-3)}.inventory-table-wrap{border:1px solid var(--color-border-subtle);border-radius:var(--radius-md);overflow-x:auto}.inventory-unavailable-table-wrap{max-block-size:min(32dvh,24rem);overflow-x:hidden;overflow-y:auto}.inventory-unavailable-table{min-width:0;table-layout:fixed;width:100%}.inventory-items-table{border-collapse:collapse;min-width:64rem;width:max(100%,64rem)}.inventory-stock-table{min-width:70rem;table-layout:fixed;width:max(100%,70rem)}.inventory-stock-summary-table{min-width:64rem;width:max(100%,64rem)}.inventory-stock-summary-table th:nth-child(1),.inventory-stock-summary-table td:nth-child(1){width:25%}.inventory-stock-summary-table th:nth-child(2),.inventory-stock-summary-table td:nth-child(2),.inventory-stock-summary-table th:nth-child(3),.inventory-stock-summary-table td:nth-child(3){width:10%}.inventory-stock-summary-table th:nth-child(4),.inventory-stock-summary-table td:nth-child(4){width:15%}.inventory-stock-summary-table th:nth-child(5),.inventory-stock-summary-table td:nth-child(5),.inventory-stock-summary-table th:nth-child(6),.inventory-stock-summary-table td:nth-child(6){width:9%}.inventory-stock-summary-table th:nth-child(7),.inventory-stock-summary-table td:nth-child(7){width:22%}.inventory-suppliers-table{min-width:70rem;width:max(100%,70rem)}.inventory-catalog-table{min-width:unset;table-layout:fixed;width:100%}.inventory-catalog-table th:nth-child(1),.inventory-catalog-table td:nth-child(1){width:26%}.inventory-catalog-table th:nth-child(2),.inventory-catalog-table td:nth-child(2){width:21%}.inventory-catalog-table th:nth-child(3),.inventory-catalog-table td:nth-child(3),.inventory-catalog-table th:nth-child(4),.inventory-catalog-table td:nth-child(4),.inventory-catalog-table th:nth-child(6),.inventory-catalog-table td:nth-child(6){width:7%}.inventory-catalog-table th:nth-child(5),.inventory-catalog-table td:nth-child(5){width:14%}.inventory-catalog-table th:nth-child(7),.inventory-catalog-table td:nth-child(7){width:18%}.inventory-lot-table,.inventory-movement-table,.inventory-item-suppliers-table,.inventory-item-cost-history-table{min-width:72rem;width:max(100%,72rem)}.inventory-movement-list{display:flex;flex-direction:column;gap:var(--space-3);min-width:0}.inventory-movement-card{border:1px solid var(--color-border-subtle);border-radius:var(--radius-md);display:flex;flex-direction:column;gap:var(--space-3);min-width:0;padding:var(--space-3)}.inventory-movement-card-heading{align-items:flex-start;display:flex;gap:var(--space-3);justify-content:space-between}.inventory-movement-card-heading>div,.inventory-movement-card-action,.inventory-movement-card-details{display:flex;flex-direction:column;gap:var(--space-1);min-width:0}.inventory-movement-card-action{align-items:flex-end;text-align:end}.inventory-movement-card-action span,.inventory-movement-card-details span{color:var(--color-text-muted);overflow-wrap:anywhere}.inventory-movement-card-metrics{display:grid;gap:var(--space-3);grid-template-columns:repeat(3,minmax(0,1fr))}.inventory-movement-card-details{border-top:1px solid var(--color-border-subtle);padding-top:var(--space-3)}.inventory-items-table th,.inventory-items-table td{border-bottom:1px solid var(--color-border-subtle);min-width:0;overflow-wrap:break-word;padding:var(--space-3);text-align:left;vertical-align:top}.inventory-items-table th{color:var(--color-text-muted);font-size:.85em;font-weight:600;overflow-wrap:normal;white-space:nowrap}.inventory-stock-table-wrap{max-block-size:min(52dvh,34rem);overflow:auto}.inventory-stock-table-wrap .inventory-items-table th{background:var(--color-bg-elevated);position:sticky;top:0;z-index:1}.inventory-item-name{display:flex;flex-direction:column;gap:var(--space-1);min-width:0;overflow-wrap:break-word}.inventory-item-name span{font-size:.9em}.inventory-tracking-flags span{background:var(--color-surface);border-radius:var(--radius-sm);font-size:.85em;padding:var(--space-1) var(--space-2)}.inventory-cell-value{min-width:0;overflow-wrap:anywhere}.inventory-muted-value{color:var(--color-text-muted)}.inventory-mobile-label{display:none}.inventory-status-badge{border-radius:var(--radius-sm);display:inline-block;font-size:.85em;font-weight:600;padding:var(--space-1) var(--space-2)}.inventory-status-active{background:var(--color-primary-tint);color:var(--color-primary)}.inventory-status-inactive{background:var(--color-surface);color:var(--color-text-muted)}.inventory-status-alert{background:var(--color-alert-bg);color:var(--color-on-alert)}.inventory-row-inactive{color:var(--color-text-muted)}.inventory-row-actions{align-items:flex-start;min-width:10rem}.inventory-row-actions-compact{flex-wrap:nowrap;min-width:0}.inventory-row-actions-compact button{padding-left:var(--space-2);padding-right:var(--space-2)}.inventory-stock-actions{flex-wrap:nowrap;min-width:0}.inventory-stock-actions button{padding-left:var(--space-2);padding-right:var(--space-2);white-space:nowrap}.inventory-details-toggle{flex:0 0 6.75rem;inline-size:6.75rem;justify-content:center;white-space:nowrap}.inventory-action-note{color:var(--color-text-muted);font-size:.85em}.inventory-detail-row td{background:var(--color-surface);padding:0}.inventory-catalog-detail{display:grid;gap:var(--space-4);grid-template-columns:minmax(0,1fr) auto;padding:var(--space-4)}.inventory-detail-list{display:grid;gap:var(--space-3);grid-template-columns:repeat(4,minmax(0,1fr));margin:0}.inventory-detail-list div{min-width:0}.inventory-detail-list dt{color:var(--color-text-muted);font-size:.8em;font-weight:600}.inventory-detail-list dd{margin:var(--space-1) 0 0;min-width:0;overflow-wrap:break-word}.inventory-detail-list-wide{grid-column:1 / -1}.inventory-detail-actions{align-content:start;align-items:flex-start;display:flex;flex-wrap:wrap;gap:var(--space-2);justify-content:flex-end;max-width:24rem}.inventory-items-empty{min-height:16rem}@media(max-width:700px){.inventory-page{block-size:auto;overflow:visible}.inventory-tab-panel{block-size:auto;flex:none;overflow:visible}.inventory-suppliers-workspace,.inventory-catalog-workspace,.inventory-stock-workspace,.inventory-usage-history-workspace{overflow:visible}.inventory-usage-workspace,.inventory-usage-workspace>.inventory-items-panel{overflow:visible}.inventory-supplier-master-list,.inventory-catalog-master-list,.inventory-stock-master-list,.inventory-receipt-master-list,.inventory-activity-list{flex:0 1 auto;max-block-size:min(52dvh,34rem)}.inventory-summary{flex-wrap:nowrap;justify-content:flex-start;overflow-x:auto;padding-bottom:var(--space-1);width:100%}.inventory-header{align-items:flex-start;flex-direction:column;gap:var(--space-2)}.inventory-tab-panel{padding:var(--space-3)}.inventory-form-grid,.inventory-order-readonly-lines-panel .inventory-form-grid{grid-template-columns:1fr}.inventory-items-toolbar{align-items:stretch;flex-direction:column}.inventory-orders-workspace{grid-template-columns:1fr}.inventory-orders-panel{max-block-size:none;overflow:visible}.inventory-orders-tab-panel{block-size:auto;overflow:visible}.inventory-receipts-workspace,.inventory-suppliers-workspace,.inventory-catalog-workspace,.inventory-stock-workspace,.inventory-usage-history-workspace{grid-template-columns:1fr}.inventory-activity-detail-summary,.inventory-activity-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.inventory-catalog-detail{grid-template-columns:1fr}.inventory-detail-list{grid-template-columns:repeat(2,minmax(0,1fr))}.inventory-detail-actions{justify-content:flex-start;max-width:none}}@media(max-width:600px){.inventory-panel-header{align-items:stretch;flex-direction:column}.inventory-panel-header button,.inventory-form-actions button{width:100%}.inventory-row-actions{align-items:stretch;flex-direction:column}.inventory-row-actions-compact{flex-wrap:wrap}.inventory-details-toggle{inline-size:auto}.inventory-items-table,.inventory-items-table tbody,.inventory-items-table tr{display:block}.inventory-items-table{min-width:unset;width:100%}.inventory-items-table thead{clip:rect(0 0 0 0);height:1px;overflow:hidden;position:absolute;white-space:nowrap;width:1px}.inventory-items-table tbody tr{border:1px solid var(--color-border-subtle);border-radius:var(--radius-lg);margin-bottom:var(--space-3)}.inventory-items-table td{align-items:start;border-bottom:none;display:grid;gap:var(--space-2);grid-template-columns:7rem 1fr;min-width:0;padding:var(--space-2) var(--space-3)}.inventory-detail-row td{display:block;padding:0}.inventory-detail-list{grid-template-columns:1fr}.inventory-mobile-label{color:var(--color-text-muted);display:block;font-size:.85em;font-weight:600}}.field-options{margin-top:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--color-border-subtle)}.fo-title{margin:0 0 .6rem;font-size:.78em;font-weight:600;letter-spacing:.06em;text-transform:uppercase;opacity:.55}.fo-empty{margin:0 0 .75rem;font-size:.85em;opacity:.55}.fo-list{list-style:none;margin:0 0 .6rem;padding:0;display:flex;flex-direction:column;gap:.3rem}.fo-inactive{opacity:.4}.fo-row{display:flex;align-items:center;gap:.4rem}.fo-label{flex:1;font-size:.88em}.fo-add-form{display:flex;gap:var(--space-2);align-items:center}.fo-input{height:28px;padding:0 .5em;border-radius:var(--radius-sm);border:1px solid var(--color-border-input);background-color:var(--color-bg-elevated);color:inherit;font-size:.88em;font-family:inherit;box-sizing:border-box;flex:1;min-width:0;outline:none;transition:border-color var(--transition-base)}.fo-input:focus{border-color:var(--color-border-input-focus)}.field-defs{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden}.field-defs-sticky{flex-shrink:0;padding:var(--space-6) var(--space-6) 0}.fd-scroll-body{flex:1;overflow-y:auto;scrollbar-gutter:stable;min-height:0;padding:0 var(--space-6) var(--space-6)}.field-defs-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.25rem}.field-defs-header h2{margin:0;font-size:1.3em}.field-defs-header-actions{display:flex;align-items:center;gap:var(--space-2)}.field-defs-toggle-btn{background:none;border:1px solid var(--color-border);color:inherit}.field-defs-toggle-btn--active{background:var(--color-primary-tint);border-color:var(--color-primary-tint);color:var(--color-primary)}.entity-tabs{display:flex;gap:.25rem;margin-bottom:1.25rem;border-bottom:1px solid var(--color-border-subtle);padding-bottom:var(--space-2)}.entity-tabs button{background:none;border:none;padding:.4em .9em;border-radius:var(--radius-md);font-size:.9em;cursor:pointer;color:inherit;opacity:.6;transition:opacity var(--transition-base),background-color var(--transition-base)}.entity-tabs button:hover{opacity:1;background-color:var(--color-surface-hover);border-color:transparent}.entity-tabs button.active{opacity:1;background-color:var(--color-primary-tint);color:var(--color-primary)}.field-defs-form{background-color:var(--color-surface-dim);border:1px solid var(--color-border-subtle);border-radius:var(--radius-lg);padding:1.25rem;margin-bottom:var(--space-6)}.form-row{display:flex;gap:var(--space-4);margin-bottom:var(--space-4)}.form-row .field{flex:1;display:flex;flex-direction:column;gap:.35em}.form-row .field label{font-size:.85em;font-weight:500}.form-row .field input,.form-row .field select{height:34px;padding:0 .7em;border-radius:var(--radius-md);border:1px solid var(--color-border-input);background-color:var(--color-bg-input);color:inherit;font-size:.9em;font-family:inherit;box-sizing:border-box;outline:none;transition:border-color var(--transition-base)}.form-row .field input:focus,.form-row .field select:focus{border-color:var(--color-border-input-focus)}.checkbox-label{display:flex;align-items:center;gap:.5em;font-size:.9em;margin-bottom:var(--space-4);cursor:pointer}.checkbox-label input[type=checkbox]{width:16px;height:16px;cursor:pointer}.form-actions{display:flex;gap:var(--space-2)}.cell-input{height:28px;padding:0 .5em;border-radius:var(--radius-sm);border:1px solid var(--color-border-input);background-color:var(--color-bg-input);color:inherit;font-size:inherit;font-family:inherit;box-sizing:border-box;width:100%;outline:none;transition:border-color var(--transition-base)}.cell-input:focus{border-color:var(--color-border-input-focus)}.edit-help-row td{padding:0 .75em .75em;border-bottom:1px solid var(--color-border-subtle)}.edit-extra-fields{display:flex;gap:var(--space-4);flex-wrap:wrap;margin-bottom:var(--space-2)}.edit-extra-fields .edit-help-field{flex:1;min-width:140px;flex-direction:column;align-items:flex-start;gap:.35em}.edit-help-field--narrow{flex:0 0 80px!important;min-width:unset!important}.edit-help-field{display:flex;align-items:center;gap:.75rem}.edit-help-field label{font-size:.85em;font-weight:500;white-space:nowrap;opacity:.65}.edit-extra-fields .edit-help-field input{width:100%}.edit-help-field input{height:28px;flex:1;padding:0 .5em;border-radius:var(--radius-sm);border:1px solid var(--color-border-input);background-color:var(--color-bg-input);color:inherit;font-size:.9em;font-family:inherit;box-sizing:border-box;outline:none;transition:border-color var(--transition-base)}.edit-help-field input:focus{border-color:var(--color-border-input-focus)}.row-actions{display:flex;gap:.4rem;white-space:nowrap}.fd-empty{opacity:.55;font-size:.95em}.fd-delete-error{color:var(--color-error);font-size:.9em;margin:0 0 .75rem}.fd-table-wrap{overflow-x:auto}.fd-table{width:100%;border-collapse:collapse;font-size:.9em;min-width:480px;table-layout:fixed}.fd-table col.col-label{width:auto}.fd-table col.col-section{width:130px}.fd-table col.col-type{width:100px}.fd-table col.col-required{width:90px}.fd-table col.col-status{width:110px}.fd-table col.col-actions{width:140px}.fd-table th{text-align:left;padding:.5em .75em;border-bottom:1px solid var(--color-border);font-weight:600;opacity:.65;white-space:nowrap}.fd-table th.col-section,.fd-table td.col-section{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fd-table td{padding:.6em .75em;border-bottom:1px solid var(--color-border-subtle);vertical-align:middle}.fd-label-cell{display:flex;flex-direction:column;align-items:flex-start;gap:.3rem}.fd-field-name{margin:0}.fd-table tr.row-editing td{border-bottom:none}.fd-table tr.row-inactive td{opacity:.4}.fd-table .checkbox-label{margin-bottom:0}.fd-table code{font-family:monospace;font-size:.9em;background-color:var(--color-surface);padding:.15em .4em;border-radius:var(--radius-sm)}.unsaved-overlay{position:fixed;inset:0;background-color:#0006;display:flex;align-items:center;justify-content:center;z-index:1000}.unsaved-dialog{background-color:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:1.5rem;max-width:420px;width:90%;box-shadow:0 8px 32px #0003}.unsaved-dialog-actions{display:flex;justify-content:space-between}.unsaved-dialog-message{margin:0 0 1.25rem;font-size:.95em;line-height:1.5}.btn-sm{padding:.3em .7em;font-size:.82em;border-radius:var(--radius-sm);background:none;border:1px solid var(--color-border);cursor:pointer;color:inherit;white-space:nowrap}.btn-sm:hover{background-color:var(--color-surface-hover);border-color:transparent}@media(max-width:600px){.form-row{flex-direction:column;gap:var(--space-3)}.field-defs-table-wrap{overflow-x:visible}.field-defs-table,.field-defs-table tbody,.field-defs-table tr{display:block}.field-defs-table thead{display:none}.field-defs-table{min-width:unset}.field-defs-table tbody tr{border:1px solid var(--color-border-subtle);border-radius:var(--radius-lg);margin-bottom:var(--space-3);padding:.15rem 0}.field-defs-table tbody tr.row-editing{border-radius:var(--radius-lg) var(--radius-lg) 0 0;border-bottom:none;margin-bottom:0;padding-bottom:0}.field-defs-table tbody tr.edit-help-row{border-radius:0 0 var(--radius-lg) var(--radius-lg);border-top:1px solid var(--color-border-subtle);margin-top:0;margin-bottom:var(--space-3)}.field-defs-table td{display:grid;grid-template-columns:65px 1fr;align-items:center;padding:.4rem .75rem;border-bottom:none;gap:.5rem}.field-defs-table td:before{content:attr(data-label);font-size:.8em;font-weight:600;opacity:.5}.field-defs-table tbody tr:not(.edit-help-row) td:last-child{display:flex;justify-content:flex-end;border-top:1px solid var(--color-border-subtle);padding-top:var(--space-2);margin-top:.15rem}.field-defs-table tbody tr:not(.edit-help-row) td:last-child:before{display:none}.field-defs-table tr.edit-help-row td{display:block;padding:var(--space-3);border-bottom:none}.field-defs-table tr.edit-help-row td:before{display:none}.field-defs-table .edit-extra-fields{flex-direction:column;gap:var(--space-3)}.field-defs-table .edit-help-field--narrow{flex:1!important}.field-defs-table .cell-input{width:100%;min-width:0}.fd-table th.col-section,.fd-table td.col-section{display:none}}.users-table td{height:44px;padding-top:0;padding-bottom:0}.users-table .users-email-cell{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.users-table .row-actions{gap:var(--space-2);flex-wrap:wrap;justify-content:flex-end;white-space:normal}.user-roles-fieldset{border:0;margin:0;min-width:0;padding:0}.user-roles-fieldset legend{font-size:.85em;font-weight:500;margin-bottom:var(--space-1);padding:0}.user-role-options{display:flex;flex-wrap:wrap;gap:var(--space-2)}.user-role-selector:not(.user-role-selector--compact) .user-role-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.user-role-selector:not(.user-role-selector--compact) .user-role-option{align-items:flex-start}.user-role-option{align-items:center;border:1px solid var(--color-border-subtle);border-radius:var(--radius-md);cursor:pointer;display:inline-flex;font-size:.85em;gap:var(--space-2);padding:var(--space-2) var(--space-3)}.user-role-option--selected{background-color:var(--color-primary-tint);border-color:var(--color-primary)}.user-role-option-copy{display:flex;flex-direction:column;gap:var(--space-1)}.user-role-option-copy small{color:var(--color-text-secondary);font-weight:400;line-height:1.3;max-width:15rem}.user-role-selector--compact .user-role-option{padding:var(--space-1) var(--space-2);white-space:nowrap}.user-access-summary{color:var(--color-text-secondary);font-size:.8em;line-height:1.4;margin-top:var(--space-2)}.user-access-summary span{color:var(--color-text);font-weight:600}.form-row .user-role-options input[type=checkbox],.user-role-options input[type=checkbox]{accent-color:var(--color-primary);cursor:pointer;height:auto;margin:0;padding:0;width:auto}.user-role-badges{display:flex;flex-wrap:wrap;gap:var(--space-1)}.user-role-badge{background-color:var(--color-primary-tint);border-radius:var(--radius-sm);color:var(--color-primary);display:inline-block;font-size:.75em;font-weight:600;padding:var(--space-1) var(--space-2);white-space:nowrap}.lockout-form{margin-top:var(--space-6, 2rem);padding-top:var(--space-5, 1.5rem);border-top:1px solid var(--color-border-subtle)}.lockout-title{font-size:1rem;font-weight:600;margin:0 0 var(--space-4, 1rem)}.lockout-row{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap}.lockout-row label{font-size:.9em;white-space:nowrap}.lockout-row input[type=number]{width:5rem}.lockout-actions{display:flex;align-items:center;gap:var(--space-3)}.badge-locked,.badge-attempts,.badge-active{display:inline-block;font-size:.75em;font-weight:600;letter-spacing:.03em;padding:.2em .5em;border-radius:var(--radius-sm, 4px);white-space:nowrap}.badge-locked{background:var(--color-danger, #e53935);color:#fff}.badge-attempts{background:color-mix(in srgb,var(--color-danger, #e53935) 15%,transparent);color:var(--color-danger, #e53935)}.badge-active{background:color-mix(in srgb,var(--color-success, #4caf50) 15%,transparent);color:color-mix(in srgb,var(--color-success, #4caf50) 80%,var(--color-text))}.btn-sm--danger{color:var(--color-danger, #e53935);border-color:var(--color-danger, #e53935)}.btn-sm--danger:hover:not(:disabled){background:var(--color-danger, #e53935);color:#fff}.row-reset-password td{height:auto;padding:var(--space-3) var(--space-3);background:var(--color-surface-raised, var(--color-surface));border-top:none}.reset-password-form{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap}.reset-password-label{font-size:.85em;color:var(--color-text-secondary, var(--color-text));white-space:nowrap}.reset-password-error{font-size:.85em;width:100%}@media(max-width:600px){.user-role-selector:not(.user-role-selector--compact) .user-role-options{grid-template-columns:1fr}.users-table-wrap{overflow-x:visible}.users-table,.users-table tbody,.users-table tr{display:block}.users-table thead{display:none}.users-table{min-width:unset}.users-table tbody tr{border:1px solid var(--color-border-subtle);border-radius:var(--radius-lg);margin-bottom:var(--space-3);padding:.15rem 0}.users-table td{display:grid;grid-template-columns:52px 1fr;align-items:center;height:auto;padding:.4rem .75rem;border-bottom:none;gap:.5rem}.users-table td:before{content:attr(data-label);font-size:.8em;font-weight:600;opacity:.5}.users-table td:last-child{display:flex;justify-content:flex-end;border-top:1px solid var(--color-border-subtle);padding-top:var(--space-2);margin-top:.15rem}.users-table td:last-child:before{display:none}.users-table .cell-input{width:100%;min-width:0}}.appearance-page{max-width:540px}.appearance-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.25rem}.appearance-header h2{margin:0;font-size:1.3em}.appearance-section h3{margin:0 0 .4rem;font-size:1em;font-weight:600}.appearance-description{margin:0 0 1.25rem;font-size:.875em;opacity:.65;line-height:1.5}.colour-picker-row{display:flex;align-items:center;gap:var(--space-4);margin-bottom:1.25rem}.colour-picker-row label{font-size:.85em;font-weight:500;min-width:100px}.colour-picker-control{display:flex;align-items:center;gap:var(--space-3)}.colour-input{width:44px;height:44px;padding:2px;border-radius:var(--radius-md);border:1px solid var(--color-border-input);background-color:var(--color-bg-input);cursor:pointer}.colour-hex{font-family:monospace;font-size:.9em;background-color:var(--color-surface);padding:.2em .5em;border-radius:var(--radius-sm);border:1px solid var(--color-border-subtle)}.colour-swatches{display:flex;gap:var(--space-4);margin-bottom:1.5rem}.swatch-item{display:flex;flex-direction:column;align-items:center;gap:var(--space-2)}.swatch-item span{font-size:.75em;opacity:.65}.swatch{width:48px;height:48px;border-radius:var(--radius-md);border:1px solid var(--color-border-subtle)}.swatch--tint{border:1px solid var(--color-border)}.appearance-actions{display:flex;align-items:center;gap:var(--space-3)}.btn-primary{min-width:80px;padding:.45em 1.1em;font-size:.9em;border-radius:var(--radius-md);background-color:var(--color-primary);color:#fff;border:none;cursor:pointer;font-weight:500;transition:background-color var(--transition-base)}.btn-primary:hover:not(:disabled){background-color:var(--color-primary-hover);border-color:transparent}.btn-primary:disabled{opacity:.45;cursor:default}.invoice-item-modal-overlay{align-items:center;background:var(--color-modal-backdrop);box-sizing:border-box;display:flex;inset:0;justify-content:center;padding:var(--space-4);position:fixed;z-index:var(--z-modal)}.invoice-item-modal{background:var(--color-modal-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-modal);box-sizing:border-box;max-block-size:calc(100dvh - (var(--space-4) * 2));overflow-y:auto;padding:var(--space-6);width:min(calc(var(--space-8) * 28),100%)}.invoice-item-create-form.field-defs-form{background:transparent;border:0;margin:0;padding:0}.invoice-item-form-heading h3{margin:0 0 var(--space-4)}.invoice-item-edit-actions{align-items:center;justify-content:space-between}.inv-counter-panel{padding:var(--space-4) var(--space-4) var(--space-3);border-bottom:1px solid var(--color-border-subtle);margin-bottom:var(--space-4)}.inv-counter-row{display:flex;align-items:center;gap:var(--space-4);flex-wrap:wrap}.inv-counter-info{display:flex;align-items:baseline;gap:var(--space-3);flex:1}.inv-counter-label{font-size:.85em;font-weight:600;opacity:.65}.inv-counter-value{font-size:1.15em;font-weight:700;font-variant-numeric:tabular-nums;color:var(--color-primary)}.inv-counter-edit{display:flex;align-items:center;gap:var(--space-2)}.inv-counter-input{width:7rem;padding:.3em .5em;border:1px solid var(--color-border-input);border-radius:var(--radius-md);background:var(--color-surface);color:inherit;font-size:.9em;text-align:right}.inv-counter-input:focus{outline:none;border-color:var(--color-border-input-focus)}.invoice-items-table{table-layout:fixed}.invoice-items-table col.col-code{width:calc(var(--space-8) * 3)}.invoice-items-table col.col-procedure{width:auto}.invoice-items-table col.col-amount{width:calc(var(--space-8) * 3)}.invoice-items-table col.col-stock{width:calc(var(--space-8) * 7)}.invoice-items-table col.col-status{width:calc(var(--space-8) * 3)}.invoice-items-table col.col-actions{width:calc(var(--space-8) * 4)}.invoice-items-table th,.invoice-items-table td{vertical-align:middle}.badge{display:inline-block;padding:.15em .55em;border-radius:var(--radius-sm);font-size:.8em;font-weight:500}.badge-active{background-color:var(--color-primary-tint);color:var(--color-primary)}.badge-inactive{background-color:var(--color-surface);opacity:.6}.invoice-stock-config{display:grid;gap:var(--space-3);padding:var(--space-3);border:1px solid var(--color-border-subtle);border-radius:var(--radius-md);background:var(--color-surface-dim)}.invoice-stock-config>.field{max-width:calc(var(--space-8) * 8)}.invoice-stock-config select,.invoice-stock-factor input{padding:var(--space-2);border:1px solid var(--color-border-input);border-radius:var(--radius-md);background:var(--color-surface);color:inherit}.invoice-stock-options{display:grid;gap:var(--space-2)}.invoice-stock-options-heading,.invoice-stock-cell-heading{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.invoice-stock-options-label{font-weight:600}.invoice-stock-selected-count,.invoice-stock-choice-count{color:var(--color-text-muted);font-size:.8em}.invoice-stock-search{width:100%;padding:var(--space-2) var(--space-3);border:1px solid var(--color-border-input);border-radius:var(--radius-md);background:var(--color-surface);color:inherit}.invoice-stock-search:focus{outline:none;border-color:var(--color-border-input-focus)}.invoice-stock-option-list{display:grid;gap:var(--space-2);max-height:calc(var(--space-8) * 12);overflow-y:auto;padding-right:var(--space-1);scrollbar-gutter:stable}.invoice-stock-option{display:flex;justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);border:1px solid var(--color-border-subtle);border-radius:var(--radius-md);background:var(--color-surface)}.invoice-stock-option>label:first-child,.invoice-stock-factor{display:flex;align-items:center;gap:var(--space-2)}.invoice-stock-option small{display:block;margin-top:var(--space-1);opacity:.65}.invoice-stock-cell{min-width:0}.invoice-stock-view-button{margin-top:var(--space-1);padding:0;border:0;background:none;color:var(--color-primary);cursor:pointer;font:inherit;font-size:.8em}.invoice-stock-view-button:hover{text-decoration:underline}.invoice-stock-view-panel{padding:var(--space-3);border:1px solid var(--color-border-subtle);border-radius:var(--radius-md);background:var(--color-surface-dim)}.invoice-stock-view-heading{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-3)}.invoice-stock-view-heading>div{display:flex;align-items:baseline;gap:var(--space-2);flex-wrap:wrap}.invoice-stock-view-heading span{color:var(--color-text-muted);font-size:.85em}.invoice-stock-view-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2);max-height:calc(var(--space-8) * 9);overflow-y:auto;padding-right:var(--space-1);scrollbar-gutter:stable}.invoice-stock-view-item{display:grid;gap:var(--space-1);min-width:0;padding:var(--space-2) var(--space-3);border:1px solid var(--color-border-subtle);border-radius:var(--radius-md);background:var(--color-surface)}.invoice-stock-view-item strong,.invoice-stock-view-item span,.invoice-stock-view-item small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.invoice-stock-view-item span,.invoice-stock-view-item small{color:var(--color-text-muted);font-size:.85em}.invoice-stock-factor{font-size:inherit}.invoice-stock-factor input{width:calc(var(--space-6) * 4)}.invoice-stock-policy{text-transform:capitalize}.invoice-stock-policy-required{color:var(--color-error);background:var(--color-alert-bg)}.invoice-stock-policy-suggested{color:var(--color-primary);background:var(--color-primary-tint)}.invoice-stock-policy-none{color:var(--color-text-muted);background:var(--color-surface-dim)}.invoice-stock-edit-row .invoice-stock-config>.field{display:none}@media(max-width:600px){.invoice-items-table-wrap{overflow-x:visible}.invoice-items-table,.invoice-items-table tbody,.invoice-items-table tr{display:block}.invoice-items-table thead{display:none}.invoice-items-table{min-width:unset}.invoice-items-table tbody tr{border:1px solid var(--color-border-subtle);border-radius:var(--radius-lg);margin-bottom:var(--space-3);padding:.15rem 0}.invoice-items-table tbody tr.row-editing{border-radius:var(--radius-lg) var(--radius-lg) 0 0;border-bottom:none;margin-bottom:0;padding-bottom:0}.invoice-items-table tbody tr.edit-help-row{border-radius:0 0 var(--radius-lg) var(--radius-lg);border-top:1px solid var(--color-border-subtle);margin-top:0;margin-bottom:var(--space-3)}.invoice-items-table td{display:grid;grid-template-columns:80px 1fr;align-items:center;padding:.4rem .75rem;border-bottom:none;gap:.5rem}.invoice-items-table td:before{content:attr(data-label);font-size:.8em;font-weight:600;opacity:.5}.invoice-items-table tbody tr:not(.edit-help-row) td:last-child{display:flex;justify-content:flex-end;border-top:1px solid var(--color-border-subtle);padding-top:var(--space-2);margin-top:.15rem}.invoice-items-table tbody tr:not(.edit-help-row) td:last-child:before{display:none}.invoice-items-table tr.edit-help-row td{display:block;padding:var(--space-3);border-bottom:none}.invoice-items-table tr.edit-help-row td:before{display:none}.invoice-items-table .cell-input{width:100%;min-width:0}.invoice-stock-option,.invoice-stock-factor{align-items:flex-start;flex-direction:column}.invoice-stock-view-list{grid-template-columns:1fr}}.ps-form{display:flex;flex-direction:column;gap:var(--space-5)}.ps-section{display:flex;flex-direction:column;gap:var(--space-3)}.ps-section-title{font-size:.78em;font-weight:700;letter-spacing:.06em;text-transform:uppercase;opacity:.55;margin-bottom:var(--space-1)}.ps-field{display:flex;flex-direction:column;gap:var(--space-1)}.ps-field label{font-size:.85em;font-weight:500;opacity:.75}.ps-field input{padding:.45em .65em;border:1px solid var(--color-border-input);border-radius:var(--radius-md);background:var(--color-surface);color:inherit;font-size:.9em}.ps-field input:focus{outline:none;border-color:var(--color-border-input-focus)}.ps-error{color:var(--color-error, #dc2626);font-size:.85em}.ps-actions{display:flex;align-items:center;gap:var(--space-3);padding-top:var(--space-2)}.ps-actions button{padding:.5em 1.4em;border:none;border-radius:var(--radius-md);background:var(--color-primary);color:#fff;font-size:.9em;font-weight:500;cursor:pointer;transition:opacity var(--transition-fast)}.ps-actions button:hover:not(:disabled){opacity:.85}.ps-actions button:disabled{opacity:.55;cursor:not-allowed}.ps-saved{font-size:.85em;color:#16a34a;font-weight:500}.invs-form{display:flex;flex-direction:column;gap:var(--space-6)}.invs-section{display:flex;flex-direction:column;gap:var(--space-3)}.invs-section-title{font-size:.78em;font-weight:700;letter-spacing:0;text-transform:uppercase;color:var(--color-text-muted);margin-bottom:var(--space-1)}.invs-field{display:flex;flex-direction:column;gap:var(--space-1)}.invs-field label{font-size:.85em;font-weight:500;color:var(--color-text-muted)}.invs-field input{padding:var(--space-2) var(--space-3);border:1px solid var(--color-border-input);border-radius:var(--radius-md);background:var(--color-surface);color:inherit;font-size:.9em}.invs-field input:focus{border-color:var(--color-border-input-focus)}.invs-field input[aria-invalid=true]{border-color:var(--color-error)}.invs-error{color:var(--color-error);font-size:.85em}.invs-actions{display:flex;align-items:center;gap:var(--space-3);padding-top:var(--space-2)}.invs-actions button{padding:var(--space-2) var(--space-4);border:none;border-radius:var(--radius-md);background:var(--color-primary);color:var(--color-on-primary);font-size:.9em;font-weight:500;cursor:pointer;transition:opacity var(--transition-fast)}.invs-actions button:hover:not(:disabled){opacity:.85}.invs-actions button:disabled{opacity:.55;cursor:not-allowed}.invs-saved{font-size:.85em;color:var(--color-success);font-weight:500}.tsu-form{display:flex;flex-direction:column;gap:var(--space-5)}.tsu-section{display:flex;flex-direction:column;gap:var(--space-3)}.tsu-section-title{font-size:.78em;font-weight:700;letter-spacing:.06em;text-transform:uppercase;opacity:.55;margin-bottom:var(--space-1)}.tsu-help{margin:0;font-size:.85em;opacity:.7}.tsu-field{display:flex;flex-direction:column;gap:var(--space-1)}.tsu-field label{font-size:.85em;font-weight:500;opacity:.75}.tsu-field input{padding:.45em .65em;border:1px solid var(--color-border-input);border-radius:var(--radius-md);background:var(--color-surface);color:inherit;font-size:.9em}.tsu-field input:focus{outline:none;border-color:var(--color-border-input-focus)}.tsu-token-row{display:flex;gap:var(--space-2);align-items:center}.tsu-token-row input{flex:1;min-width:0;user-select:none;-webkit-user-select:none;caret-color:transparent}.tsu-error{color:var(--color-error, #dc2626);font-size:.85em}.tsu-meta{margin:0;display:grid;grid-template-columns:auto 1fr;gap:var(--space-2) var(--space-3)}.tsu-meta-row{display:contents}.tsu-meta dt{font-size:.85em;opacity:.65}.tsu-meta dd{margin:0;font-size:.9em}.tsu-actions{display:flex;align-items:center;gap:var(--space-3);padding-top:var(--space-2)}.tsu-actions button{padding:.5em 1.4em;border:none;border-radius:var(--radius-md);background:var(--color-primary);color:#fff;font-size:.9em;font-weight:500;cursor:pointer;transition:opacity var(--transition-fast)}.tsu-actions button:hover:not(:disabled){opacity:.85}.tsu-actions button:disabled{opacity:.55;cursor:not-allowed}.tsu-secondary-btn{padding:.5em .9em;border:none;border-radius:var(--radius-md);background:var(--color-surface);color:inherit;font-size:.85em;cursor:pointer;white-space:nowrap;transition:background-color var(--transition-fast),opacity var(--transition-fast)}.tsu-secondary-btn:hover{background:var(--color-surface-hover)}.tsu-secondary-btn:disabled{opacity:.55;cursor:not-allowed}.tsu-saved{font-size:.85em;color:#16a34a;font-weight:500}.tsu-copied{font-size:.85em;color:var(--color-primary);font-weight:500}@media(max-width:700px){.tsu-token-row{flex-direction:column;align-items:stretch}}.tas-form{display:flex;flex-direction:column;gap:var(--space-6)}.tas-section{display:flex;flex-direction:column;gap:var(--space-4)}.tas-section-title{font-size:.78em;font-weight:700;letter-spacing:.06em;text-transform:uppercase;opacity:.55;margin:0 0 var(--space-1)}.tas-toggle-field{display:inline-flex;align-items:center;gap:var(--space-2);font-size:.95em;font-weight:600}.tas-toggle-field input{margin:0}.tas-grid{display:grid;grid-template-columns:minmax(12rem,.45fr) minmax(16rem,1fr);gap:var(--space-3)}.tas-field{display:flex;flex-direction:column;gap:var(--space-1)}.tas-field label{font-size:.85em;font-weight:500;opacity:.75}.tas-field input,.tas-field select,.tas-key-row input{height:calc(var(--space-8) + var(--space-2))}.tas-field input,.tas-field select,.tas-field textarea,.tas-key-row input{padding:.45em .65em;border:1px solid var(--color-border-input);border-radius:var(--radius-md);background:var(--color-surface);color:inherit;font:inherit;font-size:.9em;box-sizing:border-box}.tas-field textarea{min-height:11rem;resize:vertical}.tas-field input:focus,.tas-field select:focus,.tas-field textarea:focus,.tas-key-row input:focus{outline:none;border-color:var(--color-border-input-focus)}.tas-credential-panel{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-4);border:1px solid var(--color-border-subtle);border-radius:var(--radius-lg);background:var(--color-surface-dim)}.tas-credential-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.tas-credential-header h4{margin:0;font-size:.98em}.tas-status{font-size:.78em;font-weight:700;color:var(--color-error);text-transform:uppercase}.tas-status--ok{color:var(--color-success)}.tas-meta{margin:0;display:grid;grid-template-columns:auto 1fr;gap:var(--space-2) var(--space-3)}.tas-meta-row{display:contents}.tas-meta dt{font-size:.85em;opacity:.65}.tas-meta dd{margin:0;font-size:.9em}.tas-key-row{display:grid;grid-template-columns:minmax(16rem,1fr) auto auto auto;gap:var(--space-2);align-items:center}.tas-key-row input{min-width:0}.tas-actions{display:flex;align-items:center;gap:var(--space-3);padding-top:var(--space-2)}.tas-actions button{padding:.5em 1.4em;border:none;border-radius:var(--radius-md);background:var(--color-primary);color:var(--color-on-primary);font-size:.9em;font-weight:500;cursor:pointer;transition:opacity var(--transition-fast)}.tas-actions button:hover:not(:disabled){opacity:.85}.tas-actions button:disabled,.tas-secondary-btn:disabled{opacity:.55;cursor:not-allowed}.tas-secondary-btn{padding:.5em .9em;border:none;border-radius:var(--radius-md);background:var(--color-surface);color:inherit;font-size:.85em;cursor:pointer;white-space:nowrap;transition:background-color var(--transition-fast),opacity var(--transition-fast)}.tas-secondary-btn:hover:not(:disabled){background:var(--color-surface-hover)}.tas-error,.tas-success{margin:0;font-size:.9em;font-weight:500}.tas-error{color:var(--color-error)}.tas-success{color:var(--color-success)}@media(max-width:850px){.tas-grid,.tas-key-row{grid-template-columns:1fr}.tas-key-row{align-items:stretch}}.settings-layout{display:flex;align-items:stretch;gap:0;height:calc(100dvh - 48px);overflow:hidden;padding:0}.settings-sidebar{width:240px;min-width:240px;max-width:240px;flex-shrink:0;flex-grow:0;display:flex;flex-direction:column;box-sizing:border-box;border-right:1px solid var(--color-border-subtle);padding:var(--space-4) var(--space-2);overflow-y:auto;scrollbar-gutter:stable}.settings-sidebar nav{display:flex;flex-direction:column;gap:.25rem}.settings-version{margin-top:auto;padding:var(--space-4) var(--space-3) var(--space-2);color:var(--color-text-muted);font-size:.8rem;line-height:1.4}.settings-sidebar nav button{width:100%;text-align:left;background:none;border:none;padding:.5em .75em;border-radius:var(--radius-md);font-size:.9em;cursor:pointer;color:inherit;opacity:.65;transition:opacity var(--transition-base),background-color var(--transition-base)}.settings-sidebar nav button:hover{opacity:1;background-color:var(--color-surface-hover);border-color:transparent}.settings-sidebar nav button.active{opacity:1;background-color:var(--color-primary-tint);color:var(--color-primary)}.settings-content{flex:1;min-width:0;overflow:hidden;display:flex;flex-direction:column}.settings-scroll-wrap{flex:1;overflow-y:auto;scrollbar-gutter:stable;padding:var(--space-6)}@media(max-width:600px){.settings-layout{flex-direction:column;height:unset;min-height:calc(100dvh - 48px);overflow:visible}.settings-sidebar{width:100%;min-width:0;max-width:none;border-right:none;border-bottom:1px solid var(--color-border-subtle);display:block;padding:var(--space-2)}.settings-sidebar nav{flex-direction:row;overflow-x:auto}.settings-sidebar nav button{white-space:nowrap}.settings-scroll-wrap{padding:var(--space-4)}.settings-version{padding:var(--space-3) var(--space-2) 0}}#root{display:flex;flex-direction:column;flex:1;width:100%}main{padding-top:48px;display:flex;flex-direction:column;flex:1}.app-loading{position:fixed;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem}.app-loading-spinner{width:40px;height:40px;border:3px solid var(--color-primary-tint);border-top-color:var(--color-primary);border-radius:50%;animation:app-spin .75s linear infinite}@keyframes app-spin{to{transform:rotate(360deg)}}.app-loading p{margin:0;font-size:.95em;opacity:.55}.page{max-width:1280px;width:100%;margin:0 auto;padding:var(--space-6) var(--space-4);box-sizing:border-box}
