.customer-tools{display:flex;gap:6px;align-items:center;flex-wrap:wrap;min-width:0}
.customer-tools:empty{display:none}
.club-contacts{min-width:0}
.contacts-toolbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:12px;font-size:12px}
.contacts-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:10px}
.web-app .contact-card{padding:12px;margin:0;min-width:0}
.contact-heading{display:flex;align-items:center;gap:8px}
.contact-heading h2{font-size:15px;line-height:1.4;margin:0;flex:1;min-width:0;overflow-wrap:anywhere}
.contact-actions{display:flex;flex:none}
.contact-name{font-size:14px;line-height:1.5;margin:6px 0;overflow-wrap:anywhere}
.contact-phone{display:inline-flex;align-items:center;gap:8px;color:var(--primary);font-size:14px;min-height:36px;overflow-wrap:anywhere}
.contact-editor{width:460px;max-width:96vw;max-height:92dvh;overflow:auto}
.contact-editor .panel-head{margin:0;padding:12px 16px;border-bottom:1px solid var(--border)}
.contact-editor h2{font-size:18px;line-height:1.4;margin:0}
.contact-editor-fields{display:grid;gap:8px}
.contact-editor-fields p{margin:0}
.contact-person,.contact-photo-editor{display:flex;gap:10px;align-items:center;min-width:0;flex-wrap:wrap}
.contact-person{margin:8px 0}
.contact-person>div:last-child{min-width:0;flex:1}
.contact-photo-editor{margin-bottom:8px}
.contact-card>small{display:block;font-size:11px;margin-top:4px}
.contact-threads{margin-top:12px}
.contact-threads h2{font-size:16px;line-height:1.4;margin:0 0 8px}
.contact-thread{width:100%;display:flex;align-items:center;gap:8px;border:0;border-top:1px solid var(--border);background:transparent;color:inherit;text-align:left;padding:10px 0;cursor:pointer}
.contact-thread>span{min-width:0;flex:1}
.contact-thread b,.contact-thread small{display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.contact-thread small{font-size:12px;color:var(--muted);margin-top:3px}
.q-dialog__inner .contact-chat-modal{width:760px;max-width:96vw;height:80dvh;max-height:92dvh;display:flex;flex-direction:column;overflow:hidden}
.contact-chat-modal>.panel-head{flex:none;margin:0;padding:10px 12px;border-bottom:1px solid var(--border)}
.contact-chat-modal h2{font-size:16px;line-height:1.4;margin:0;overflow-wrap:anywhere}
.contact-conversation{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden;padding:8px}
.contact-message-scroll{flex:1;min-height:0;overflow:auto;overscroll-behavior:contain}
.contact-chat-error{font-size:12px;margin:4px 0;flex:none}
.contact-conversation .discussion-composer{flex:none;padding-top:8px;border-top:1px solid var(--border)}
.contact-conversation .discussion-message-input textarea{max-height:110px;overflow:auto}
.contact-message-drafts{max-height:130px;overflow:auto;margin-bottom:6px}
.contact-message-drafts>div{display:flex;gap:8px;align-items:center;font-size:12px;margin-bottom:4px}
.contact-message-drafts img{width:48px;height:48px;object-fit:cover;border-radius:6px}
.contact-message-drafts audio{max-width:180px;height:32px}
.contact-message-drafts span{min-width:0;flex:1;overflow-wrap:anywhere}
.contact-voice-status{font-size:12px;color:var(--muted)}
.contacts-unread{display:inline-flex;align-items:center;gap:4px;white-space:nowrap;margin-left:auto;flex:none}
.nav-item .contacts-unread{gap:3px}
.contacts-unread .q-badge,.event-message-indicator .q-badge{font-size:10px;line-height:14px;padding:1px 4px}
.event-message-indicator{display:inline-flex;align-items:center;gap:4px;align-self:flex-start;flex:none;color:var(--muted);margin-top:2px}
.event-message-indicator.has-unread{color:var(--primary)}
.notification-item.unread-message-event .notification-copy{font-weight:600;color:var(--text)}
.notification-item.unread-message-event .notification-copy small{font-weight:400}
.mobile-more-message-indicator{position:absolute;right:4px;top:1px;display:flex;align-items:center;gap:2px;color:var(--primary)}
.mobile-more-message-indicator .q-badge{font-size:9px;padding:1px 3px}
.mobile-nav>button{position:relative}
.mobile-nav .contacts-unread{margin:0;position:absolute;top:0;right:2px}
@media(max-width:600px){.q-dialog__inner .contact-chat-modal{height:88dvh}.contact-conversation .discussion-compose-row{gap:3px}.contact-conversation .discussion-compose-row>.q-btn{width:30px;min-width:30px}}
.desktop-erp .filter-toolbar > .q-btn{flex:none}
.shell:not(.desktop-erp) .page-heading > .customer-tools{order:4;flex:1 0 100%}
.shell:not(.desktop-erp) .page-heading > :first-child{min-width:180px}
.customer-modal{width:min(900px,96vw);max-width:96vw;max-height:92dvh;overflow:auto}
.q-dialog__inner .owner-editor{width:560px;max-width:96vw}
.owner-editor .owner-preview{margin-top:32px}
.owner-editor .owner-fee-choice{margin-bottom:12px}
.q-dialog__inner .customer-import-modal{width:1000px;max-width:96vw}
.customer-import-modal>.panel-head{margin:0;padding:12px 16px}
.customer-import-modal .customer-preview th:first-child,.customer-import-modal .customer-preview td:first-child{min-width:64px;white-space:nowrap}
.q-dialog__inner .role-matrix-modal { width:1580px;max-width:96vw;display:flex;flex-direction:column;overflow:hidden; }
.q-dialog__inner .role-matrix-modal > .panel-head { flex:none;margin-bottom:0;padding:12px 16px; }
.role-matrix-modal .role-matrix-body { min-height:0;overflow:hidden;padding-top:0; }
.role-matrix { min-width:0;display:flex;flex-direction:column; }
.role-matrix-note { margin:8px 0;font-size:12px; }
.role-matrix-scroll { max-height:65dvh;overflow:auto;border:1px solid var(--border);border-radius:6px;overscroll-behavior:contain; }
.role-matrix-table { width:100%;min-width:var(--role-matrix-width);table-layout:fixed;border-collapse:separate;border-spacing:0;font-size:12px; }
.role-matrix-table th,.role-matrix-table td { padding:6px 4px;border-bottom:1px solid var(--border);border-right:1px solid var(--border);text-align:center;background:var(--panel); }
.role-matrix-table thead th { position:sticky;top:0;z-index:3;background:var(--panel2);height:66px;line-height:1.3;overflow-wrap:anywhere;font-weight:600; }
.role-matrix-table th:first-child { position:sticky;left:0;width:210px;z-index:2;text-align:left;padding:8px;background:var(--panel); }
.role-matrix-table thead th:first-child { z-index:5;background:var(--panel2); }
.role-matrix-table thead th { cursor:help; }
.role-column-tooltip { max-width:320px;font-size:13px;line-height:1.45; }
.role-matrix-table th:last-child,.role-matrix-table td:last-child { position:sticky;right:0;width:116px;z-index:2;box-shadow:-1px 0 0 var(--border);border-right:0; }
.role-matrix-table thead th:last-child { z-index:5; }
.role-matrix-modal .role-matrix-table .q-field { margin:0; }
.role-matrix-table .q-field__native { font-size:12px;line-height:1.4; }
.role-matrix-table .q-btn { font-size:11px; }
.proposal-create-panel{width:100%;margin:0 0 16px;font:inherit;cursor:pointer;color:var(--muted);}
.proposal-create-panel:hover{border-color:var(--primary,#00692f);color:var(--primary,#00692f);}
.proposal-create-panel:focus-visible{outline:2px solid var(--primary,#00692f);outline-offset:3px;}
.role-matrix-table .role-benefits-cell { width:300px;text-align:left;padding:8px; }
.role-benefit-select .q-chip { max-width:100%;height:auto;min-height:24px;padding-top:3px;padding-bottom:3px; }
.role-benefit-select .q-chip__content { white-space:normal;overflow-wrap:anywhere; }
.role-row-changed > th:first-child { border-left:3px solid var(--primary); }
.role-new-row > th,.role-new-row > td { border-top:2px solid var(--border);background:var(--panel2); }
.role-new-row > th:first-child { background:var(--panel2); }
@media(max-width:700px) {
  .role-matrix-table th:first-child { width:150px; }
  .role-matrix-table th:last-child,.role-matrix-table td:last-child { position:static; }
  .role-matrix-table thead th:last-child { position:sticky;right:auto;z-index:3; }
  .role-matrix-scroll { max-height:62dvh; }
}
.customer-permissions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2px;margin-top:12px}
.customer-preview{max-height:42dvh;overflow:auto;border:1px solid var(--border);border-radius:6px}
.customer-preview table{width:100%;border-collapse:collapse}
.customer-preview th{position:sticky;top:0;background:var(--panel2);z-index:1}
.customer-preview th,.customer-preview td{padding:6px 10px;text-align:left;border-bottom:1px solid var(--border);overflow-wrap:anywhere}
.customer-land{border:1px solid var(--border);padding:12px;border-radius:8px;margin-top:12px}
.customer-land-totals{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:12px 0}
.customer-land-totals b{display:block;font-variant-numeric:tabular-nums}
.land-flow-heading{font-size:13px;line-height:1.4;font-weight:600;margin:12px 0 6px}
.land-bill-total{font-size:12px;margin:-6px 0 12px}
.land-funding-explanation{font-size:12px;line-height:1.5;margin:0 0 10px;padding:8px 10px;background:var(--panel2);border-left:3px solid var(--primary)}
.customer-land-totals span{font-size:12px;line-height:1.4;min-width:0}
.customer-land-totals b{font-size:14px;margin-top:3px}
.customer-modal .q-field{margin-top:10px}
.customer-land-bills,.customer-land-fees,.land-setup-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.customer-land-bills{margin:12px 0;padding:12px;background:var(--panel2);border-radius:6px}
.customer-land-bills b,.customer-land-bills small,.customer-land-fees b,.customer-land-fees small,.customer-land-fees strong,.customer-land-fees span{display:block}
.customer-land-bills small,.customer-land-fees small,.customer-land-fees span{color:var(--muted);font-size:12px}
.customer-land-fees>div{border:1px solid var(--border);border-radius:6px;padding:12px}
.customer-land-fees strong{font-size:18px;margin:6px 0}
.land-setup-section{margin-top:16px;padding:14px;border:1px solid var(--border);border-radius:8px}
.land-setup-section h3{font-size:17px;margin:0}
.land-setup-section p{margin:6px 0 10px;font-size:13px}
.land-government{background:var(--panel2)}
.land-fee-editor{padding-top:12px;margin-top:12px;border-top:1px solid var(--border)}
.land-fee-editor h4{font-size:15px;font-weight:600;margin:0}
.land-fee-editor .q-btn-toggle{border:1px solid var(--border);border-radius:5px;overflow:hidden}
.land-fee-editor .q-btn{font-size:12px;min-height:30px;white-space:normal}
.land-setup-modal .q-card__section{padding:12px 16px}
.q-dialog__inner .land-setup-modal{width:900px;max-width:96vw}
.land-setup-modal .panel-head{margin-bottom:0}
.land-setup-modal .panel-head{position:sticky;top:0;background:var(--panel);z-index:2;border-bottom:1px solid var(--border)}
.land-setup-modal .q-card__actions{position:sticky;bottom:0;background:var(--panel);z-index:2;border-top:1px solid var(--border)}
@media(max-width:600px){.customer-land-bills,.customer-land-fees,.land-setup-grid{grid-template-columns:1fr;gap:6px}.land-setup-section{padding:10px}.land-setup-modal .q-card__section{padding:10px 12px}.land-setup-section h3{font-size:16px}.land-fee-editor .q-btn-toggle{display:flex}.land-fee-editor .q-btn{flex:1;min-width:0}}
.member-contributions{flex:none!important}
.web-app .account-journal-heading { font-size:16px;margin:10px 0 4px; }
.member-employee-action .q-toggle{width:100%;font-size:13px}
.contribution-title-actions{flex-wrap:nowrap;flex-shrink:0;margin-left:auto;gap:4px}
.contribution-title:has(.contribution-title-actions)>b{min-width:0;overflow-wrap:anywhere}
.member-employee-action .q-item__label--caption{padding-left:40px;max-width:240px;white-space:normal;font-size:11px}
.member-count-summary{display:flex;align-items:center;flex-wrap:wrap;gap:4px 16px;font-size:12px;color:var(--muted);margin-left:auto}
.member-count-summary b{color:var(--text);font-variant-numeric:tabular-nums}
.object-account-fields{display:grid;gap:16px;margin-top:20px}.new-owned-object{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:12px;border:1px solid var(--border);border-radius:8px}.new-owned-object>b{grid-column:1/-1}.account-overview-grid{display:grid;grid-template-columns:minmax(560px,1.15fr) minmax(420px,.85fr);gap:8px;align-items:stretch}.account-overview-grid>.my-objects{margin:0;height:100%}.account-meter-column{display:grid;grid-template-rows:auto 1fr;gap:8px;min-width:0}.account-meter-column>.billing-reading-history,.account-meter-column>.member-contributions{margin:0!important;border:1px solid var(--border);border-radius:8px;padding:8px 12px}.account-meter-column>.billing-reading-history h3{font-size:16px;margin:0 0 4px}.account-meter-column>.billing-reading-history p{margin:0}.my-objects{margin-bottom:10px}.my-object-list{display:flex;flex-wrap:wrap;gap:8px}.my-object-card{display:grid;gap:3px;text-align:left;padding:8px 12px;min-width:170px;border:1px solid var(--border);border-radius:8px;background:transparent;color:var(--text);font:inherit;cursor:pointer}.my-object-selected{border-color:var(--primary);box-shadow:inset 0 0 0 1px var(--primary)}.my-object-all{background:var(--panel2)}.my-object-card span{font-size:12px;white-space:nowrap}.my-object-total{margin:5px 0}.my-object-scope{margin:6px 0 0}.object-account-modal{max-width:760px!important}
@media(max-width:1200px){.account-overview-grid{grid-template-columns:minmax(0,1fr)}.account-meter-column{grid-template-columns:minmax(0,1fr);grid-template-rows:auto}.my-object-card span{white-space:normal}}
.object-account-modal{width:760px;max-width:calc(100vw - 32px)!important;min-width:0!important;box-sizing:border-box;overflow-x:hidden}.object-account-modal .q-card__section,.object-account-fields{min-width:0}.object-account-modal .q-btn-toggle{display:flex;flex-wrap:wrap;max-width:100%}.object-account-modal .q-btn-toggle>.q-btn{flex:1 1 135px;min-width:0;white-space:normal}.new-owned-object{grid-template-columns:repeat(2,minmax(0,1fr))}.object-account-fields>.panel{margin:0;min-width:0;overflow-wrap:anywhere}
.account-user-search{display:flex;align-items:center;flex-wrap:wrap;gap:12px}.account-user-search>.q-field{flex:1 1 280px;min-width:0;margin-top:0}.account-selection-hint{margin:0}.account-selected-user{padding:16px;border:1px solid var(--border);border-radius:8px}.account-selected-user>div:first-child{display:flex;flex-wrap:wrap;gap:8px 16px;align-items:baseline}.account-selected-user>p{margin:12px 0 0}.account-user-actions,.account-object-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.account-object-row{padding:12px 0}.account-object-actions .q-btn{white-space:normal;text-align:left}
.member-contributions h2,.customer-modal h2{font-size:18px;line-height:1.3;margin:0}
.customer-land h3{font-size:16px;line-height:1.3;margin:0}
.web-app .member-contributions{padding:8px 12px}
.member-contributions-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.member-contributions-head h2{font-size:16px;flex:none}
.member-object-select{width:170px;max-width:100%}
.contribution-conditions-toggle{margin-left:auto;flex:none;width:34px;height:34px}
.customer-meter{display:flex;align-items:center;flex-wrap:wrap;gap:8px 16px;padding-top:8px}
.customer-meter+.customer-meter{margin-top:8px;border-top:1px solid var(--border)}
.customer-meter-heading{flex:0 1 280px;min-width:180px;font-size:13px;overflow-wrap:anywhere}
.customer-meter-heading small{display:block;margin-top:3px;font-size:11px}
.customer-meter-fields{display:flex;gap:8px;align-items:center;flex-wrap:wrap;flex:1 1 560px;min-width:0}
.customer-meter-fields .q-field{flex:0 1 150px;min-width:130px}
.customer-meter-totals{display:flex;gap:16px;align-items:center;flex-wrap:wrap;margin:0;font-size:13px}
.customer-meter-totals dt{font-size:11px;color:var(--muted)}
.customer-meter-totals dd{margin:0;font-weight:600;font-variant-numeric:tabular-nums;white-space:nowrap}
.customer-meter-setup{display:flex;align-items:center;flex-wrap:wrap;gap:8px;flex:1 1 460px}
.customer-meter-setup p{margin:0;flex:1 1 260px;font-size:12px}
.member-contribution-conditions{margin-top:8px;border-top:1px solid var(--border)}
.conditions-note{margin:8px 0;font-size:12px}
.customer-contribution-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 16px}
.customer-contribution-info{padding:8px 0;border-top:1px solid var(--border);font-size:13px;min-width:0;overflow-wrap:anywhere}
.customer-contribution-info p{margin:3px 0;white-space:pre-wrap}
.customer-contribution-footer{display:flex;align-items:center;justify-content:space-between;gap:4px 8px;flex-wrap:wrap;margin-top:3px}
.customer-contribution-footer .q-btn{font-size:12px;min-height:28px;padding:2px 6px}
@media(max-width:700px){
  .member-contributions-head h2{flex:1;min-width:150px}
  .member-object-select{order:3;width:100%}
  .member-contributions-head>.q-btn:not(.contribution-conditions-toggle){order:4}
  .customer-meter-heading{flex-basis:100%;min-width:0}
  .customer-meter-fields{flex-basis:100%}
  .customer-meter-fields .q-field{flex:1 1 calc(50% - 4px);min-width:0}
  .customer-meter-totals{flex:1 1 190px;gap:12px}
  .customer-contribution-list{grid-template-columns:1fr;gap:0}
}
.web-app.table-workspace.account-screen .page>.account-charges{flex:2 0 278px;min-height:278px;overflow:hidden}
.web-app.table-workspace.account-screen .account-charges>.web-table{flex:1 1 0;min-height:0}
.web-app.table-workspace.account-screen .finance-table{flex:1 0 170px;min-height:170px}
.web-app.table-workspace.account-screen .finance-table[data-empty="true"]{flex:0 0 auto;min-height:0}
.web-app.table-workspace.account-screen .finance-table[data-empty="true"] .q-table__middle{flex:none}
.web-app.account-screen .finance-table[data-empty="true"] .q-table__bottom--nodata{min-height:46px}
.web-app.account-screen .account-charges{padding:12px}
.web-app.account-screen .account-charges>h2{font-size:16px;line-height:1.4;margin:0 0 8px}
@media(max-width:900px){
  .web-app.account-screen .kpis{gap:8px}
  .web-app.account-screen .kpi{padding:8px 10px}
  .web-app.account-screen .kpi-label,.web-app.account-screen .kpi-note{font-size:11px}
  .web-app.account-screen .kpi-value{font-size:20px;line-height:1.3;margin:3px 0}
}
@media(max-width:700px){.customer-permissions{grid-template-columns:1fr}.customer-land-totals{grid-template-columns:repeat(2,minmax(0,1fr))}.customer-tools .q-btn{font-size:12px;min-height:30px}}

.charge-help-link{color:var(--primary);text-align:left;text-decoration:underline;text-underline-offset:3px;white-space:normal;overflow-wrap:anywhere}
.charge-explanation{width:680px;max-width:96vw;max-height:92dvh;overflow:auto}
.charge-explanation .panel-head{position:sticky;top:0;z-index:2;background:var(--panel);border-bottom:1px solid var(--border);margin-bottom:0}
.charge-explanation h2{font-size:18px;margin:0}.charge-explanation h3{font-size:16px;margin:0 0 8px}
.charge-description{white-space:pre-wrap;overflow-wrap:anywhere}
.charge-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:14px 0}
.charge-facts dt{font-size:12px;color:var(--muted)}.charge-facts dd{margin:3px 0 0;overflow-wrap:anywhere}
.charge-formula{padding:12px;background:var(--panel2);border:1px solid var(--border);border-radius:6px}
.charge-formula p{margin:8px 0;overflow-wrap:anywhere}.charge-equation{font-size:17px;font-weight:600}
.charge-total{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid var(--border);padding-top:10px;margin-top:10px}.charge-total strong{font-size:20px;white-space:nowrap}
.charge-explanation .q-card__actions{position:sticky;bottom:0;background:var(--panel);border-top:1px solid var(--border)}
.charge-explanation .doc-row span{min-width:0;overflow-wrap:anywhere}
.q-dialog__inner .area-editor { width:720px;max-width:96vw;max-height:92dvh;overflow:auto; }
.area-editor > .panel-head { position:sticky;top:0;z-index:2;background:var(--panel);margin:0;border-bottom:1px solid var(--border); }
.area-editor .q-card__actions { position:sticky;bottom:0;z-index:2;background:var(--panel);border-top:1px solid var(--border); }
.area-editor-fields { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px; }
.area-editor-fields .full { grid-column:1/-1; }
.area-preview { padding:12px;background:var(--panel2);border-radius:6px;margin:12px 0; }
.area-preview h3 { margin:0;font-size:15px; }
.area-preview p { margin:8px 0;font-size:13px; }
.area-preview article,.area-history-row { border-top:1px solid var(--border);padding:10px 0; }
.area-history-row p { margin:6px 0;overflow-wrap:anywhere; }
.area-formula { font-size:12px;line-height:1.5;overflow-wrap:anywhere; }
.charge-adjustments { margin:16px 0; }
@media(max-width:600px){.area-editor-fields { grid-template-columns:1fr;gap:8px; }.area-editor h2 {font-size:16px;}}
.accrual-register { min-width:0; }
.accrual-toolbar { display:flex; flex-wrap:wrap; align-items:center; gap:8px; margin-bottom:6px; }
.accrual-note { margin:0 0 8px; font-size:12px; }
.accrual-note-row { display:flex; align-items:center; flex-wrap:wrap; gap:8px; margin-bottom:8px; }
.accrual-note-row .accrual-note { flex:1; min-width:200px; margin:0; }
.accrual-note-row .q-btn { flex-shrink:0; }
.accrual-grid .q-table { width:100%; min-width:var(--accrual-min-width); table-layout:fixed; }
.accrual-grid .q-table__middle { overflow:auto; min-height:140px; max-height:65dvh; }
.accrual-grid .q-table th { position:sticky; top:0; z-index:3; white-space:normal; height:48px; line-height:1.2; background:var(--panel2); }
.accrual-grid .q-table th,.accrual-grid .q-table td { padding:6px 10px; }
.accrual-grid .q-table th:first-child,.accrual-grid .q-table td:first-child { position:sticky; left:0; width:140px; z-index:2; background:var(--panel2); }
.accrual-grid .q-table th:first-child { z-index:4; }
.web-app .accrual-grid .q-table th:first-child:not(.table-col-actions),
.web-app .accrual-grid .q-table td:first-child:not(.table-col-actions) { position:sticky; left:0; }
.accrual-grid .q-table th:nth-child(2) { width:90px; }
.accrual-grid .q-table th:last-child { width:120px; }
.accrual-grid .accrual-summary { font-weight:600; background:var(--panel2); }
.table-workspace .accrual-grid .q-table__middle { max-height:none; }
@media(max-width:600px) {
  .accrual-toolbar .q-field { flex:1 1 130px; width:auto!important; }
  .accrual-toolbar .q-field:nth-child(3) { flex-basis:100%; }
  .accrual-toolbar > span { flex:1; }
  .accrual-toolbar .q-space { display:none; }
  .accrual-grid .q-table__middle { max-height:55dvh; }
}
.expense-category-tools{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap;margin-top:-8px;}
.expense-category-tools .q-btn{margin-left:auto;}
.web-table .q-table th.expense-actions,.web-table .q-table td.expense-actions{width:88px;min-width:88px;max-width:88px;}
.expense-payment-row{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap;padding:8px 0;border-bottom:1px solid var(--line,#c5cfca);}
.member-filter-tools{display:flex;align-items:center;gap:8px;flex-wrap:wrap;flex:1 1 100%;margin-bottom:8px;}
.member-filters{flex:1 1 100%;min-width:0;margin-bottom:12px;}
.member-filter-chips{display:flex;flex-wrap:wrap;gap:4px;margin-top:8px;}
.member-quick-filters{display:flex;align-items:center;flex-wrap:nowrap;gap:8px;overflow-x:auto;padding:2px 0 6px;}
.member-quick-filters>.q-field{flex:1 1 170px;max-width:240px;min-width:120px;}
.member-quick-filters>.member-search{flex:1 1 200px;max-width:220px;min-width:160px;}
.member-quick-filters>.q-btn-toggle{flex:0 0 auto;}
.members-table .member-quick-filters .q-btn-toggle .q-btn{padding:0 8px!important;}
.members-table .member-quick-filters>.member-filter-reset{margin-left:auto;padding:0 8px!important;}
.members-table .member-filters .q-btn{flex:0 0 auto!important;width:auto!important;min-width:0!important;height:36px!important;min-height:36px!important;padding:0 12px!important;}
.members-table .member-filters .q-btn__content{flex-wrap:nowrap;white-space:nowrap;}
.member-advanced-filters{margin-top:12px;padding:14px;border:1px solid var(--line);border-radius:6px;background:var(--surface);}
.member-filter-categories{display:grid;grid-template-columns:repeat(2,minmax(0,260px));gap:12px;}
.member-filter-help{font-size:12px;margin:12px 0 4px;}
.member-range-filters{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:10px 16px;}
.member-range-filters fieldset{border:0;padding:0;margin:0;min-width:0;}
.member-range-filters legend{font-weight:600;font-size:12px;margin:8px 0;}
.member-range-filters fieldset>div{display:grid;grid-template-columns:1fr 1fr;gap:8px;}
.member-filter-buttons{display:flex;justify-content:flex-end;gap:10px;margin-top:16px;}
.member-count-summary{margin-top:4px;}
@media(max-width:600px){.member-filter-categories{grid-template-columns:1fr;}.member-range-filters{grid-template-columns:1fr;}}
.member-selection-tools{display:flex;align-items:center;gap:8px;flex-wrap:wrap;flex:1 1 100%;margin-bottom:8px;}
.member-selection-summary{font-size:12px;flex:0 1 auto;}
.member-owner-button{max-width:100%;font-size:12px;}
.member-owner-button .q-btn__content{flex-wrap:nowrap;}
.members-table .member-owner-button,.members-table .member-filter-tools .q-btn--dense{flex:0 0 auto;width:auto;min-width:0!important;height:auto;min-height:28px!important;padding:0 6px!important;}
.owner-payment-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px;margin-bottom:12px;}
.owner-payment-row{display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid var(--line,#bdc7c0);}
.owner-payment-row>div:not(.q-field):not(.q-checkbox){flex:1;min-width:0;overflow-wrap:anywhere;}
.owner-payment-row>.q-field{width:210px;flex:0 0 210px;}
.owner-payment-hint{font-size:12px;margin:6px 0;}
.owner-payment-review{margin-top:16px;}
.owner-payment-review .q-table__middle{flex:none;height:auto;max-height:none;}
.owner-payment-totals{display:flex;gap:18px;flex-wrap:wrap;padding:12px 0;}
.meter-panel .panel-head>.actions{flex-wrap:wrap;}
.meter-roster-search{min-width:220px;}
@media(max-width:600px){.meter-panel .panel-head>.actions{width:100%;}.meter-roster-search{flex:1 1 100%;min-width:0;}}
@media(max-width:600px){.owner-payment-row{flex-wrap:wrap;gap:8px;}.owner-payment-row>.q-field{width:auto;flex:1 1 180px;}.owner-payment-fields{grid-template-columns:1fr;}}
@media(max-width:600px){.member-filter-tools>.q-field{flex:1 1 100%;}.member-filter-tools .q-btn-toggle{max-width:100%;}.member-filter-tools .q-chip{max-width:100%;}.member-selection-summary{flex:1 1 100%;}}
.procurement-workspace{display:flex;flex-direction:column;min-height:0}
.procurement-panel{display:flex;flex-direction:column;min-height:0;padding:12px;margin-bottom:0}
.procurement-head{gap:16px;margin-bottom:10px}
.procurement-filters{display:grid;grid-template-columns:minmax(220px,1.4fr) minmax(180px,1fr) minmax(150px,.7fr) 150px 150px auto;gap:8px;align-items:center;margin-bottom:8px}
.procurement-panel>.procurement-register-table{flex:1 1 0;min-height:0}
.procurement-register-table tbody tr{cursor:pointer}
.procurement-workspace .table-status{display:flex;justify-content:space-between;gap:12px;padding:0;color:var(--muted);font-size:13px}
.q-dialog__inner .procurement-dialog{width:min(1400px,96vw)!important;max-width:96vw!important;height:min(900px,92dvh);display:flex;flex-direction:column;overflow:hidden}
.procurement-receipt-dialog>.panel-head{flex:none;margin:0;padding:12px 16px;border-bottom:1px solid var(--line)}
.procurement-document-fields{display:grid;grid-template-columns:minmax(220px,1.4fr) 150px 150px minmax(170px,1fr) minmax(220px,1.4fr);gap:8px;padding:12px 16px;flex:none}
.procurement-document-tabs{flex:none;padding:0 16px}
.procurement-document-lines{display:flex;flex:1 1 0;min-height:0;flex-direction:column;overflow:hidden;padding:8px 16px 12px}
.procurement-lines-toolbar{display:flex;justify-content:flex-start;flex:none;margin-bottom:6px}
.procurement-lines-table{flex:1 1 0;min-height:0}
.procurement-lines-table .q-table{min-width:900px;table-layout:fixed}
.procurement-lines-table .q-table__middle{overflow:auto}
.procurement-lines-table .q-field{min-width:0}
.procurement-receipt-dialog>.q-card__actions{flex:none;border-top:1px solid var(--line);padding:8px 16px}
.procurement-lines{overflow:auto;min-height:220px;flex:1}
.procurement-line{display:grid;grid-template-columns:minmax(190px,1.5fr) minmax(180px,1.5fr) minmax(100px,.6fr) minmax(90px,.5fr) minmax(120px,.7fr) 40px;gap:8px;align-items:start;margin-bottom:8px}
.procurement-detail{width:min(1050px,94vw);max-width:94vw;max-height:90vh;overflow:auto}
.procurement-detail .q-markup-table{margin-bottom:18px}
.supplier-payment-dialog{height:min(820px,92vh)}
.supplier-payment-allocation{display:flex;flex-direction:column;min-height:0;flex:1;padding-top:0}
.supplier-payment-allocation .panel-head{margin-bottom:8px}
.supplier-payment-allocation-scroll{min-height:160px;overflow:auto;border:1px solid var(--line);border-radius:8px}
.supplier-payment-allocation-scroll table{min-width:680px}
.supplier-payment-allocation-scroll thead th{position:sticky;top:0;z-index:1;background:var(--table-head,#dbe3de)}
.supplier-payment-allocation-scroll .q-field{min-width:150px}
@media(max-width:1100px){.procurement-document-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.procurement-document-fields>*:last-child{grid-column:1/-1}}
@media(max-width:1000px){.procurement-filters{grid-template-columns:1fr 1fr}.procurement-line{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.procurement-filters{grid-template-columns:1fr}.q-dialog__inner .procurement-dialog{width:100vw!important;max-width:100vw!important;height:100dvh;max-height:100dvh}.procurement-document-fields{grid-template-columns:1fr}.procurement-document-fields>*:last-child{grid-column:auto}.procurement-line{grid-template-columns:1fr}}

.web-app.table-workspace .page:has(> .procurement-workspace){overflow:hidden}
.web-app.table-workspace .page>.procurement-workspace{flex:1 1 0;min-height:0;overflow:hidden}
.web-app.table-workspace .procurement-workspace>.procurement-panel{flex:1 1 0;min-height:0;overflow:hidden}
