.expense-view-tabs{display:flex;gap:8px;margin:18px 0}.expense-view-tabs button{padding:10px 16px;border:1px solid var(--line);border-radius:10px;background:var(--surface-soft);color:var(--text);font-weight:800}.expense-view-tabs button.active{background:var(--primary);color:#fff;border-color:var(--primary)}.expense-view-tabs b{display:inline-grid;min-width:20px;height:20px;place-items:center;margin-left:6px;border-radius:999px;background:#f43f5e;color:#fff}.expense-matrix-filters{display:grid;grid-template-columns:repeat(6,minmax(135px,1fr)) auto;gap:10px;align-items:end;padding:14px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}.expense-matrix-filters label{display:grid;gap:5px;font-size:11px;font-weight:800}.expense-matrix-filters input,.expense-matrix-filters select{width:100%;min-height:40px;padding:7px;border:1px solid var(--line);border-radius:8px;background:var(--surface-soft);color:var(--text)}.expense-selection-summary{position:sticky;top:0;z-index:8;display:grid;grid-template-columns:auto auto 1fr;gap:18px;align-items:center;margin:12px 0;padding:12px 15px;border:1px solid #0ea5e9;border-radius:12px;background:var(--surface);box-shadow:0 5px 18px rgba(0,0,0,.12)}.expense-selection-summary>div{text-align:right;font-size:11px;color:var(--muted)}.expense-matrix-table{max-height:65vh;overflow:auto;border:1px solid var(--line);border-radius:14px}.expense-matrix-table table{min-width:1750px;width:100%;border-collapse:separate;border-spacing:0}.expense-matrix-table th,.expense-matrix-table td{padding:9px 10px;border:0;border-bottom:1px solid var(--line);background:var(--surface);font-size:11px;white-space:nowrap}.expense-matrix-table th{position:sticky;top:0;z-index:4;background:var(--surface-soft);text-transform:uppercase}.expense-matrix-table .sticky-check{position:sticky;left:0;z-index:5;width:38px}.expense-matrix-table .sticky-booking{position:sticky;left:38px;z-index:5;min-width:145px}.expense-matrix-table td.sticky-check,.expense-matrix-table td.sticky-booking{background:var(--surface)}.expense-matrix-table small{display:block;color:var(--muted)}.expense-matrix-table .amount{text-align:right;font-variant-numeric:tabular-nums}.matrix-status{display:inline-block;padding:4px 7px;border-radius:999px;font-size:9px;font-weight:900}.status-NONE{color:var(--muted);background:var(--surface-soft)}.matrix-submitted td{background:rgba(245,158,11,.045)}.matrix-approved td{background:rgba(16,185,129,.045)}@media(max-width:1100px){.expense-matrix-filters{grid-template-columns:repeat(3,1fr)}.expense-selection-summary{grid-template-columns:1fr 1fr}.expense-selection-summary>div{grid-column:1/-1;text-align:left}}@media(max-width:600px){.expense-matrix-filters{grid-template-columns:1fr 1fr}.expense-matrix-filters label:nth-child(3){grid-column:1/-1}.expense-selection-summary{position:static;grid-template-columns:1fr}.expense-selection-summary>div{text-align:left}.expense-view-tabs button{flex:1}.expense-matrix-table{max-height:58vh}}

/* V3.51: compact fixed grid and matching money/header alignment. */
.expense-matrix-table table{width:1714px;min-width:1714px;table-layout:fixed}
.expense-matrix-table th,.expense-matrix-table td{box-sizing:border-box;height:54px;padding:7px 8px;line-height:1.25;overflow:hidden;text-overflow:ellipsis}
.expense-matrix-table th{height:46px;white-space:normal;overflow:visible;text-overflow:clip}
.expense-matrix-table th:nth-child(1),.expense-matrix-table td:nth-child(1){width:42px;text-align:center}
.expense-matrix-table th:nth-child(2),.expense-matrix-table td:nth-child(2){width:142px}
.expense-matrix-table th:nth-child(3),.expense-matrix-table td:nth-child(3){width:112px}
.expense-matrix-table th:nth-child(4),.expense-matrix-table td:nth-child(4){width:142px}
.expense-matrix-table th:nth-child(n+5):nth-child(-n+15),.expense-matrix-table td:nth-child(n+5):nth-child(-n+15){width:92px;text-align:right;font-variant-numeric:tabular-nums}
.expense-matrix-table th:nth-child(15),.expense-matrix-table td:nth-child(15){width:116px}
.expense-matrix-table th:nth-child(16),.expense-matrix-table td:nth-child(16){width:108px;text-align:center}
.expense-matrix-table th:nth-child(17),.expense-matrix-table td:nth-child(17){width:132px;text-align:center;white-space:normal}
.expense-matrix-table .sticky-check{left:0;width:42px}
.expense-matrix-table .sticky-booking{left:42px;min-width:0}
.expense-matrix-table small{margin-top:2px;overflow:hidden;text-overflow:ellipsis}
.matrix-status{max-width:100%;overflow:hidden;text-overflow:ellipsis}

/* V3.52: remove debt column, tighter widths, small checks and wrapped labels. */
.expense-matrix-table table{width:1347px;min-width:1347px}
.expense-matrix-table th,.expense-matrix-table td{height:48px;padding:5px 6px}
.expense-matrix-table th{height:44px;line-height:1.15;text-align:center;white-space:normal;overflow-wrap:anywhere}
.expense-matrix-table th:nth-child(1),.expense-matrix-table td:nth-child(1){width:31px;padding-left:4px;padding-right:4px}
.expense-matrix-table input[type="checkbox"]{appearance:auto!important;width:15px!important;height:15px!important;min-width:15px!important;min-height:15px!important;margin:0!important;padding:0!important}
.expense-matrix-table th:nth-child(2),.expense-matrix-table td:nth-child(2){width:124px;text-align:left;white-space:normal;overflow-wrap:anywhere}
.expense-matrix-table th:nth-child(3),.expense-matrix-table td:nth-child(3){width:104px;text-align:left;white-space:normal;overflow-wrap:anywhere}
.expense-matrix-table th:nth-child(4),.expense-matrix-table td:nth-child(4){width:128px;text-align:left;white-space:normal;overflow-wrap:anywhere}
.expense-matrix-table th:nth-child(n+5):nth-child(-n+14),.expense-matrix-table td:nth-child(n+5):nth-child(-n+14){width:77px;text-align:right}
.expense-matrix-table th:nth-child(15),.expense-matrix-table td:nth-child(15){width:105px;text-align:right}
.expense-matrix-table th:nth-child(16),.expense-matrix-table td:nth-child(16){width:85px;text-align:center;white-space:normal}
.expense-matrix-table .sticky-check{left:0;width:31px}
.expense-matrix-table .sticky-booking{left:31px}
.expense-matrix-table td.sticky-booking small{display:none}

/* V3.53: closer identity columns; OTHER opens its notes. */
.expense-matrix-table table{width:1192px;min-width:1192px}
.expense-matrix-table th:nth-child(2),.expense-matrix-table td:nth-child(2){width:118px}
.expense-matrix-table th:nth-child(3),.expense-matrix-table td:nth-child(3){width:86px;padding-left:4px;padding-right:4px}
.expense-matrix-table th:nth-child(4),.expense-matrix-table td:nth-child(4){width:106px;padding-left:4px;padding-right:4px}
.expense-matrix-table th:nth-child(n+5):nth-child(-n+13),.expense-matrix-table td:nth-child(n+5):nth-child(-n+13){width:74px}
.expense-matrix-table th:nth-child(14),.expense-matrix-table td:nth-child(14){width:102px;text-align:right}
.expense-matrix-table th:nth-child(15),.expense-matrix-table td:nth-child(15){width:83px;text-align:center;white-space:normal}
.other-cost-cell button{display:inline-flex;align-items:center;justify-content:flex-end;gap:3px;width:100%;padding:2px 3px;border:0;border-bottom:1px dashed var(--primary);background:transparent;color:var(--primary);font:inherit;font-weight:850;cursor:pointer}.other-cost-cell i{font-size:10px;font-style:normal}

/* V3.54: eight booking cost columns in the approved order. */
.expense-matrix-table table{width:1118px;min-width:1118px}
.expense-matrix-table th:nth-child(n+5):nth-child(-n+12),.expense-matrix-table td:nth-child(n+5):nth-child(-n+12){width:74px;text-align:right}
.expense-matrix-table th:nth-child(13),.expense-matrix-table td:nth-child(13){width:102px;text-align:right}
.expense-matrix-table th:nth-child(14),.expense-matrix-table td:nth-child(14){width:83px;text-align:center;white-space:normal}

/* V3.55: dedicated vehicle-expense register. */
.vehicle-expense-filters{display:grid;grid-template-columns:repeat(5,minmax(145px,1fr));gap:10px;padding:14px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}
.vehicle-expense-filters label{display:grid;gap:5px;font-size:11px;font-weight:800;color:var(--muted)}
.vehicle-expense-filters input,.vehicle-expense-filters select{width:100%;min-height:40px;padding:7px 9px;border:1px solid var(--line);border-radius:8px;background:var(--surface-soft);color:var(--text)}
.vehicle-expense-summary{display:flex;align-items:center;gap:20px;margin:12px 0;padding:12px 15px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}
.vehicle-expense-summary strong{margin-left:auto;color:var(--primary);font-size:18px;font-variant-numeric:tabular-nums}
.vehicle-expense-summary small{color:var(--muted)}
.vehicle-expense-table{max-height:65vh;overflow:auto;border:1px solid var(--line);border-radius:14px}
.vehicle-expense-table table{width:100%;min-width:1120px;table-layout:fixed;border-collapse:separate;border-spacing:0}
.vehicle-expense-table th,.vehicle-expense-table td{width:12.5%;box-sizing:border-box}
.vehicle-expense-table th,.vehicle-expense-table td{padding:10px 12px;border:0;border-bottom:1px solid var(--line);background:var(--surface);font-size:12px;text-align:left;white-space:nowrap}
.vehicle-expense-table th{position:sticky;top:0;z-index:2;background:var(--surface-soft);color:var(--muted);text-transform:uppercase}
.vehicle-expense-table .amount{text-align:right;font-variant-numeric:tabular-nums}
.vehicle-expense-table th.amount{text-align:right}
.vehicle-expense-request-link,.vehicle-expense-note{padding:2px 0;border:0;border-bottom:1px dashed var(--primary);background:transparent;color:var(--primary);font:inherit;font-weight:800;cursor:pointer}
.vehicle-expense-note{max-width:120px;overflow:hidden;text-overflow:ellipsis}
@media(max-width:1000px){.vehicle-expense-filters{grid-template-columns:repeat(3,1fr)}}
@media(max-width:600px){.expense-view-tabs{overflow-x:auto}.expense-view-tabs button{flex:0 0 auto;white-space:nowrap}.vehicle-expense-filters{grid-template-columns:1fr 1fr}.vehicle-expense-filters label:nth-child(3){grid-column:1/-1}.vehicle-expense-summary{align-items:flex-start;flex-wrap:wrap}.vehicle-expense-summary strong{margin-left:0}.vehicle-expense-summary small{width:100%}}
