.reconcile-module-tabs{display:flex;gap:8px;margin:0 0 16px;padding:6px;border:1px solid var(--border-color,#d8e0df);border-radius:12px;background:var(--surface,#fff)}
.reconcile-module-tabs button{min-height:40px;padding:0 18px;border:0;border-radius:8px;background:transparent;color:var(--text-secondary,#52615f);font-weight:700}
.reconcile-module-tabs button.active{background:var(--brand-soft,#e8f3f1);color:var(--brand-strong,#1e605d)}
.other-expense-workspace{display:grid;gap:16px}.other-expense-toolbar{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:20px 24px}.other-expense-toolbar h2{margin:3px 0 0}.other-expense-toolbar p{margin:0;color:var(--text-secondary,#64736f)}
.other-expense-toolbar-actions{display:flex;align-items:end;gap:10px;flex-wrap:wrap}.other-expense-toolbar-actions label{display:grid;gap:5px;font-size:12px;color:var(--text-secondary,#64736f)}.other-expense-toolbar-actions select,.other-expense-toolbar-actions input{min-height:40px}
.other-expense-list{padding:18px 20px}.other-expense-tabs{display:flex;gap:6px;border-bottom:1px solid var(--border-color,#d8e0df);margin-bottom:14px}.other-expense-tabs button{min-height:42px;padding:0 14px;border:0;border-bottom:3px solid transparent;background:transparent;font-weight:700;color:var(--text-secondary,#64736f)}.other-expense-tabs button.active{border-color:var(--brand,#2f7772);color:var(--brand-strong,#1e605d)}.other-expense-tabs b{margin-left:5px}
.other-expense-search{display:block;margin-bottom:14px}.other-expense-search input{width:min(520px,100%);min-height:40px}.other-expense-list>.payment-batch-toolbar{margin-bottom:14px}.other-expense-cards{display:grid;gap:10px}.other-expense-card{border:1px solid var(--border-color,#d8e0df);border-radius:12px;background:#fff;padding:16px}.other-expense-card-head{display:flex;align-items:center;gap:8px}.other-expense-card-head>.other-expense-card-main{flex:1;min-width:0}.other-expense-card-main{display:flex;justify-content:space-between;gap:18px;align-items:center}.other-expense-card-main>div:first-child{display:grid;grid-template-columns:auto 1fr;gap:4px 10px;align-items:center}.other-expense-card-main strong{font-size:16px}.other-expense-card-main small{grid-column:1/-1;color:var(--text-secondary,#64736f)}.expense-type{padding:3px 8px;border-radius:999px;background:var(--brand-soft,#e8f3f1);color:var(--brand-strong,#1e605d);font-size:12px}.expense-card-amount{display:grid;text-align:right;gap:3px}.expense-card-amount span{font-size:12px;color:var(--text-secondary,#64736f)}.expense-card-amount strong{font-size:19px;font-variant-numeric:tabular-nums}.other-expense-card details{margin-top:10px;border-top:1px solid #edf1f0;padding-top:10px}.other-expense-card summary{cursor:pointer;color:var(--brand-strong,#1e605d);font-weight:700}.other-expense-card dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px 18px}.other-expense-card dl div{display:grid;gap:3px}.other-expense-card dt{font-size:12px;color:var(--text-secondary,#64736f)}.other-expense-card dd{margin:0;overflow-wrap:anywhere}.other-expense-card-actions{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap;margin-top:12px}.other-expense-empty{display:grid;place-items:center;min-height:180px;color:var(--text-secondary,#64736f);gap:5px}
.expense-attachments>span{display:flex;align-items:center;gap:4px}.expense-attachments button{min-width:32px;min-height:32px}
.other-expense-modal{width:min(920px,calc(100vw - 32px));max-height:min(860px,calc(100vh - 32px));min-width:0;overflow:hidden}.other-expense-modal .modal-body{max-width:100%;min-width:0;overflow-x:hidden;overflow-y:auto;padding-right:24px}.expense-counterparty-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:16px}.expense-counterparty-tabs label{position:relative}.expense-counterparty-tabs input{position:absolute;opacity:0}.expense-counterparty-tabs span{display:grid;place-items:center;min-height:42px;border:1px solid var(--border-color,#d8e0df);border-radius:9px;font-weight:700;cursor:pointer}.expense-counterparty-tabs input:checked+span{border-color:var(--brand,#2f7772);background:var(--brand-soft,#e8f3f1);color:var(--brand-strong,#1e605d)}.expense-counterparty-tabs input:focus-visible+span{outline:3px solid rgba(47,119,114,.22);outline-offset:2px}
.other-expense-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 16px}.other-expense-form-grid>label{display:grid;gap:6px;align-content:start}.other-expense-form-grid>label>span{font-weight:700;font-size:13px}.other-expense-form-grid .wide{grid-column:1/-1}.other-expense-form-grid input,.other-expense-form-grid select,.other-expense-form-grid textarea{width:100%;min-height:40px}.other-expense-form-grid small{color:var(--text-secondary,#64736f)}.expense-category-control{display:grid;grid-template-columns:1fr auto;gap:8px}.other-expense-modal footer,.expense-reconcile-modal footer{position:sticky;bottom:0;display:flex;justify-content:flex-end;gap:8px;margin:20px -24px -20px;padding:14px 24px;border-top:1px solid var(--border-color,#d8e0df);background:#fff}.expense-reconcile-modal{width:min(760px,calc(100vw - 32px));grid-template-rows:auto auto minmax(0,1fr)}
.expense-payment-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;min-width:0}.expense-payment-grid label{display:grid;gap:6px;min-width:0}.expense-payment-grid input,.expense-payment-grid textarea{width:100%;min-width:0}.expense-payment-grid .reconciliation-note-field,.expense-payment-grid .wide{grid-column:1/-1}.expense-payment-grid [hidden]{display:none!important}
.other-expense-form-grid>[hidden]{display:none!important}
.other-expense-form-grid .expense-inline-check{display:flex;align-items:center;gap:10px;min-height:40px;padding-top:22px}.other-expense-form-grid .expense-inline-check input{width:18px;min-height:18px;margin:0}
.expense-category-modal{width:min(480px,calc(100vw - 32px))}.expense-category-modal .modal-body>label{display:grid;gap:7px}.expense-category-modal input{min-height:40px}.expense-category-modal footer{display:flex;justify-content:flex-end;gap:8px;margin-top:18px;padding-top:14px;border-top:1px solid var(--border-color,#d8e0df)}
.supplier-business-types{display:flex;align-items:center;gap:14px;flex-wrap:wrap;border:1px solid var(--border-color,#d8e0df);border-radius:10px;padding:10px 12px}.supplier-business-types legend{padding:0 6px;font-weight:700}
.expense-view-tabs{display:flex;gap:6px;padding:6px}.expense-view-tabs button{min-height:40px;border:0;border-radius:8px;background:transparent;color:var(--text-secondary,#52615f);font-weight:700;padding:0 16px}.expense-view-tabs button.active{background:var(--brand-soft,#e8f3f1);color:var(--brand-strong,#1e605d)}
.expense-type.recurring{background:#eef1ff;color:#4655a5}.expense-data-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 18px}.expense-data-grid>div{display:grid;gap:3px}.expense-data-grid dt{font-size:12px;color:var(--text-secondary,#64736f)}.expense-data-grid dd{margin:0;overflow-wrap:anywhere}.expense-detail-actions{display:flex;justify-content:flex-end;margin-top:12px;padding-top:12px;border-top:1px solid #edf1f0}
.expense-template-tools{grid-column:1/-1;display:flex;align-items:center;gap:10px;padding:12px;border:1px solid var(--border-color,#d8e0df);border-radius:10px;background:var(--surface-subtle,#f7f9f9)}.expense-template-tools>div{display:grid;gap:3px;margin-right:auto}.expense-template-tools small{color:var(--text-secondary,#64736f)}
.expense-history-modal,.expense-conversion-modal{width:min(660px,calc(100vw - 32px))}.expense-history-option{width:100%;display:grid;grid-template-columns:1fr auto;text-align:left;gap:4px 12px;padding:12px;border:0;border-bottom:1px solid var(--border-color,#d8e0df);background:#fff}.expense-history-option span{grid-column:1;color:var(--text-secondary,#64736f)}.expense-history-option b{grid-row:1/3;grid-column:2;align-self:center}.expense-history-option:hover,.expense-history-option:focus-visible{background:var(--brand-soft,#e8f3f1)}
.expense-audit-modal{width:min(660px,calc(100vw - 32px));max-height:calc(100vh - 32px);overflow:hidden}.expense-audit-modal .modal-body{overflow-y:auto}.expense-audit-list{display:grid;gap:8px}.expense-audit-entry{display:grid;gap:4px;padding:10px 12px;border:1px solid var(--border-color,#d8e0df);border-radius:9px}.expense-audit-entry span,.expense-audit-entry small{color:var(--text-secondary,#64736f)}.expense-readonly-check{display:grid;gap:16px}.expense-readonly-check dl{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.expense-readonly-check dl .wide{grid-column:1/-1}.expense-readonly-check dd{margin:3px 0 0}.expense-price-scope,.start-mode{display:flex;gap:16px;flex-wrap:wrap;border:1px solid var(--border-color,#d8e0df);border-radius:10px;padding:12px}.expense-price-scope legend,.start-mode legend{font-weight:700;padding:0 5px}
.recurring-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}.recurring-heading h3,.recurring-heading p{margin:0}.recurring-heading p{color:var(--text-secondary,#64736f)}.recurring-cards{display:grid;gap:10px}.recurring-card{border:1px solid var(--border-color,#d8e0df);border-radius:12px;padding:16px}.recurring-card>div:first-child{display:flex;align-items:center;gap:10px}.recurring-card>div:first-child small{margin-left:auto;color:var(--text-secondary,#64736f)}.recurring-card dl{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:14px 0}.recurring-card dd{margin:3px 0 0}.conversion-candidates{display:grid;gap:8px;margin-top:12px}.conversion-candidates article{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid var(--border-color,#d8e0df);border-radius:10px;padding:12px}.conversion-candidates article>div{display:grid;gap:3px}
@media(max-width:640px){.reconcile-module-tabs{display:grid;grid-template-columns:repeat(3,1fr)}.reconcile-module-tabs button{padding:0 6px}.other-expense-toolbar{align-items:stretch;flex-direction:column}.other-expense-toolbar-actions{display:grid;grid-template-columns:1fr}.other-expense-toolbar-actions button{width:100%;min-height:44px}.other-expense-card-main{align-items:flex-start}.other-expense-card dl,.expense-data-grid{grid-template-columns:1fr}.other-expense-card-actions{display:grid;grid-template-columns:1fr}.other-expense-card-actions button{min-height:44px}.other-expense-form-grid,.expense-payment-grid{grid-template-columns:1fr}.other-expense-form-grid .wide{grid-column:auto}.expense-counterparty-tabs{grid-template-columns:1fr}.other-expense-modal,.expense-audit-modal{width:calc(100vw - 16px);max-height:calc(100vh - 16px)}.other-expense-modal .modal-body{padding-right:18px}.other-expense-tabs{overflow-x:auto}.other-expense-tabs button{white-space:nowrap}.expense-template-tools,.recurring-heading,.conversion-candidates article{align-items:stretch;flex-direction:column}.expense-template-tools button,.recurring-heading button,.conversion-candidates button{width:100%;min-height:44px}.recurring-card>div:first-child{align-items:flex-start;flex-wrap:wrap}.recurring-card>div:first-child small{width:100%;margin:0}.recurring-card dl{grid-template-columns:1fr 1fr}.expense-price-scope,.start-mode{display:grid}.expense-readonly-check dl{grid-template-columns:1fr}.expense-readonly-check dl .wide{grid-column:auto}.expense-detail-actions button{width:100%;min-height:44px}}

/* Other-expense convergence: compact entry forms and structured recurring setup. */
.other-expense-toolbar>button{min-height:40px;flex:0 0 auto}
.other-expense-card .expense-company{color:var(--text-muted,#64748b);font-weight:600}
.other-expense-card.supervisor-returned{border-color:#dc6b6b}.other-expense-card.supervisor-approved{border-color:#4f9b78}.expense-review-reason{margin:10px 0 0;padding:8px 10px;border-left:2px solid #c74444;color:#9d2f2f;background:transparent;font-size:13px}.expense-supervisor-modal{width:min(680px,calc(100vw - 24px))}
.expense-amount-summary{padding:11px 13px;border:1px solid #cfe0dd;border-radius:10px;background:#f3f8f7;color:var(--brand-strong,#1e605d);font-weight:700;font-variant-numeric:tabular-nums}
.expense-form-section{display:grid;gap:14px;padding:18px;border:1px solid var(--border-color,#d8e0df);border-radius:12px;background:#fff}
.expense-form-section+ .expense-form-section{margin-top:14px}
.expense-form-section>header{display:flex;align-items:flex-start;gap:10px;padding-bottom:11px;border-bottom:1px solid #edf1f0}
.expense-form-section>header>span{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--brand-soft,#e8f3f1);color:var(--brand-strong,#1e605d);font-weight:800}
.expense-form-section h4,.expense-form-section p{margin:0}.expense-form-section p{margin-top:3px;color:var(--text-secondary,#64736f);font-size:13px}
.expense-attachment-field{display:grid;gap:7px}.expense-attachment-field>span{font-weight:700;font-size:13px}
.expense-upload-control{display:flex;align-items:center;gap:12px;min-height:58px;padding:9px 11px;border:1px dashed #aebfbc;border-radius:10px;background:#fafcfc}
.expense-upload-control>label.button{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:0 14px;border:1px solid var(--brand,#2f7772);border-radius:8px;background:#fff;color:var(--brand-strong,#1e605d);font-weight:700;cursor:pointer}
.expense-upload-control>label.button:hover{background:var(--brand-soft,#e8f3f1)}.expense-upload-control>label.button:focus-within{outline:3px solid rgba(47,119,114,.22);outline-offset:2px}
.expense-upload-control>div{display:grid;gap:2px;min-width:0;flex:1}.expense-upload-control strong,.expense-upload-control small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.expense-upload-control small{color:var(--text-secondary,#64736f)}
.expense-upload-control .button.quiet{min-height:36px;border:0;background:transparent;color:#8a3838}.expense-existing-files{display:grid;gap:4px;color:var(--text-secondary,#64736f);font-size:13px}
.start-mode{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;border:0;padding:0}.start-mode legend{margin-bottom:8px}
.start-mode>label{display:flex;align-items:flex-start;gap:12px;min-height:76px;padding:14px;border:1px solid var(--border-color,#d8e0df);border-radius:11px;cursor:pointer}
.start-mode>label:has(input:checked){border-color:var(--brand,#2f7772);background:var(--brand-soft,#e8f3f1)}.start-mode input{width:20px!important;height:20px;min-height:20px!important;margin:1px 0 0;accent-color:var(--brand,#2f7772)}
.start-mode input:focus-visible{outline:3px solid rgba(47,119,114,.25);outline-offset:3px}.start-mode label>span{display:grid;gap:4px}.start-mode small{color:var(--text-secondary,#64736f);font-weight:400}
.field-invalid{border-color:#b94d4d!important;box-shadow:0 0 0 3px rgba(185,77,77,.14)!important}
.recurring-modal{width:min(900px,calc(100vw - 32px))}.recurring-modal .modal-body{background:#f7f9f9}.recurring-modal footer{background:#fff}
.erp-entity-picker{width:100%}.erp-entity-picker-trigger{width:100%;min-height:40px}
@media(max-width:640px){.expense-form-section{padding:14px}.start-mode{grid-template-columns:1fr}.expense-upload-control{align-items:stretch;flex-direction:column}.expense-upload-control>label.button,.expense-upload-control>button{width:100%;min-height:44px}.expense-upload-control strong,.expense-upload-control small{white-space:normal;overflow-wrap:anywhere}.recurring-modal{width:calc(100vw - 16px)}.other-expense-modal footer,.expense-reconcile-modal footer{margin-left:-18px;margin-right:-18px;padding-left:18px;padding-right:18px}.other-expense-toolbar>button{width:100%;min-height:44px}}

.other-expense-card .expense-period-badge{display:inline-block;margin-left:6px;padding:2px 6px;border-radius:999px;background:#eef7f5;color:#21615e;font-size:11px}
.expense-reconcile-modal{min-width:0;overflow:hidden}.expense-reconcile-modal .modal-body,.expense-reconcile-modal .modal-body>*{max-width:100%;min-width:0}.expense-reconcile-modal .modal-body{overflow-x:hidden;overflow-y:auto}.expense-reconcile-modal form{max-width:100%;min-width:0}.expense-reconcile-modal textarea{max-width:100%;resize:vertical}
.expense-reconcile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 16px;align-items:start}.expense-reconcile-grid>*{min-width:0}.expense-reconcile-grid .modal-system-amount,.expense-reconcile-grid .difference-live,.expense-reconcile-readonly{min-height:74px;box-sizing:border-box}.expense-reconcile-grid .modal-system-amount{display:flex;align-items:center;justify-content:space-between;background:#f1f5f9;padding:12px;border-radius:10px}.expense-reconcile-grid .modal-system-amount span,.expense-reconcile-control>span,.expense-reconcile-readonly>span{font-size:13px;font-weight:700}.expense-reconcile-grid .modal-system-amount strong,.expense-reconcile-readonly strong{font-size:18px}.expense-reconcile-control,.expense-reconcile-grid .reconciliation-reason-field{display:grid;gap:6px;align-content:start}.expense-reconcile-control input,.expense-reconcile-grid .reconciliation-reason-field .erp-entity-picker-trigger{width:100%;min-height:42px;box-sizing:border-box}.expense-reconcile-grid .difference-live{display:grid;grid-template-columns:1fr auto;gap:3px 10px;align-items:center;border:1px solid #dbe5e8;background:#f8fafc;border-radius:10px;padding:10px 12px}.expense-reconcile-grid .difference-live small{grid-column:1/-1;color:#64748b}.expense-reconcile-readonly{display:grid;align-content:center;gap:6px;border:1px solid #dbe5e8;background:#f8fafc;border-radius:10px;padding:10px 12px}.expense-reconcile-grid .reconciliation-note-field,.expense-reconcile-note{grid-column:1/-1}.expense-reconcile-note{min-height:72px}.expense-reconcile-modal footer{justify-content:flex-end}.expense-reconcile-modal footer .button{min-width:120px}
.period-adjustment-fields{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;padding:12px;border:1px solid #dbe7e8;border-radius:10px;background:#f7fbfa}.period-adjustment-fields[hidden]{display:none}.period-adjustment-fields .period-adjustment-hint{grid-column:1/-1;color:#64748b;font-size:12px}
.period-adjust-modal{width:min(680px,calc(100vw - 24px))}.period-adjust-modal .modal-body{display:flex;flex-direction:column;gap:16px}.period-adjust-modal footer{display:flex;justify-content:flex-end;gap:8px;margin-top:18px;padding-top:14px;border-top:1px solid var(--border-color,#d8e0df)}
@media(max-width:640px){.period-adjustment-fields{grid-template-columns:1fr}.period-adjust-modal{width:calc(100vw - 24px)}.period-adjust-modal footer{display:flex;flex-direction:column-reverse;gap:8px}.period-adjust-modal footer .button{width:100%;min-height:44px}}
@media(max-width:640px){.expense-reconcile-grid{grid-template-columns:1fr}.expense-reconcile-grid .reconciliation-note-field,.expense-reconcile-note{grid-column:auto}.expense-reconcile-modal footer .button{width:100%;min-height:44px}}
