/* Q31: wrapping entry rows, all fields visible, single floating search list. */
/* Q45: the price belongs beside product / job / unit, not under its popup. */
@media screen {
 #expenseRateForm { grid-template-columns:minmax(220px,2fr) repeat(3,minmax(140px,1fr));gap:12px;align-items:end; }
 #expenseRateForm > button { grid-column:4;min-height:44px; }
 #expenseRateForm > .form-error { grid-column:1/-1;margin:0; }
 #expenseRateForm > .form-error:empty { display:none; }
 #expenseRateForm :is(input,select) { height:44px;font-size:16px; }
 .choice-validation-message { grid-column:1/-1;max-width:100%;overflow-wrap:anywhere; }
 @media(max-width:1000px) {
  #expenseRateForm { grid-template-columns:repeat(2,minmax(0,1fr)); }
  #expenseRateForm > button { grid-column:2; }
 }
 @media(max-width:600px) {
  #expenseRateForm { grid-template-columns:minmax(0,1fr); }
  #expenseRateForm > button { grid-column:1; }
 }
}
@media screen {
 .expense-sheet-page { min-width:0; container-type:inline-size; container-name:expense-page; }
 .expense-sheet-page h2 { margin:0 0 12px; }
 .expense-sheet-page > p { font-size:17px; }
 .expense-list-head,.expense-sheet-toolbar { display:flex; align-items:center; flex-wrap:wrap; gap:10px; margin:12px 0; }
 .expense-list-head h2,.expense-list-head h3 { margin-right:auto; }
 .expense-sheet-boundary { padding:10px 12px; background:#fff5dc; border-radius:6px; }
 .expense-sheet-context { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); align-items:start; gap:16px; margin:16px 0; }
 .expense-sheet-context label { display:block; min-width:0; }
 .expense-sheet-context input,.expense-sheet-context select { margin-top:6px; min-width:0; width:100%; height:52px; font-size:18px; }
 .expense-entry-tip { color:#52675d; font-size:16px; margin-left:auto; }
 .expense-sheet-scroll { width:100%; max-width:100%; overflow:auto; border:1px solid #cbdad2; border-radius:6px; margin:12px 0; }
 .expense-sheet-history { width:100%; min-width:820px; border-collapse:collapse; font-size:17px; }
 .expense-sheet-history th { padding:10px 8px; background:#e9f3ed; white-space:nowrap; text-align:left; }
 .expense-sheet-history td { padding:10px 8px; border-top:1px solid #dce6df; vertical-align:top; }
 .expense-sheet-history [hidden] { display:none!important; }
 .expense-entry-scroll { overflow:visible; max-height:none; }
 .expense-sheet-table { display:block; width:100%; min-width:0; border-collapse:collapse; font-size:17px; }
 .expense-sheet-table thead { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
 .expense-sheet-table tbody { display:block; }
 .expense-sheet-table tr[data-expense-row] { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); align-items:start; gap:10px 12px; padding:12px; border-bottom:2px solid #cbdad2; }
 .expense-sheet-table tr[data-expense-row]:last-child { border-bottom:0; }
 .expense-sheet-table tr[data-expense-row]:nth-child(even) { background:#f7faf8; }
 .expense-sheet-table tr[data-expense-row]:focus-within { background:#eef8f2; }
 .expense-sheet-table td { display:block; min-width:0; padding:0; border:0; overflow-wrap:anywhere; }
 .expense-sheet-table td[data-label]::before { content:attr(data-label); display:block; color:#304f43; font-weight:700; font-size:16px; line-height:24px; margin-bottom:5px; }
 .expense-sheet-table .expense-seq { grid-column:1/-1; color:#087f5b; font-weight:700; }
 .expense-sheet-table td.expense-seq::before { display:inline; margin-right:6px; }
 .expense-sheet-table .expense-cell-product,.expense-sheet-table .expense-cell-specification,
 .expense-sheet-table .expense-cell-category,.expense-sheet-table .expense-cell-price,
 .expense-sheet-table .expense-cell-amount,.expense-sheet-table .expense-cell-person,
 .expense-sheet-table .expense-cell-vehicle,.expense-sheet-table .expense-cell-payee,
 .expense-sheet-table .expense-cell-remarks { grid-column:span 2; }
 .expense-sheet-table .expense-cell-action { grid-column:1/-1; justify-self:end; }
 .expense-sheet-table [data-specification] { display:flex; align-items:center; min-height:52px; line-height:1.45; }
 .simple-ui .expense-sheet-table input:not([type=hidden]),.simple-ui .expense-sheet-table select,
 .expense-sheet-table input:not([type=hidden]),.expense-sheet-table select { box-sizing:border-box; width:100%; min-width:0; min-height:52px; height:52px; padding:9px 8px; font-size:18px; border-radius:5px; margin:0; }
 .expense-sheet-table input[type=number] { text-align:right; }
 .expense-sheet-table input[readonly] { background:#f2f5f3; }
 .expense-sheet-table input[type=hidden] { display:none; }
 .simple-ui .expense-sheet-table small,.expense-sheet-table small { display:block; font-size:14px; font-weight:400; line-height:1.45; margin-top:4px; }
 .expense-sheet-table small:empty { display:none; }
 .expense-sheet-table .expense-remove { min-height:48px; padding:6px 10px; white-space:normal; }
 .expense-sheet-actions { display:flex; flex-wrap:wrap; align-items:center; gap:12px; }
 .expense-sheet-actions output { margin-left:auto; font-size:20px; font-weight:700; }
 #expenseSavedDrafts { margin:12px 0; }
 #expenseSavedDrafts button { margin:8px 8px 0 0; }
 @container expense-page (min-width:860px) {
  .expense-sheet-table tr[data-expense-row] { grid-template-columns:repeat(6,minmax(0,1fr)); }
  .expense-sheet-table .expense-cell-specification,.expense-sheet-table .expense-cell-category,
  .expense-sheet-table .expense-cell-price,.expense-sheet-table .expense-cell-amount { grid-column:span 1; }
  .expense-sheet-table .expense-cell-remarks { grid-column:span 3; }
  .expense-sheet-table .expense-cell-action { grid-column:span 1; align-self:end; }
 }
 @container expense-page (min-width:1020px) {
  .expense-sheet-table tr[data-expense-row] { grid-template-columns:32px minmax(176px,2fr) minmax(96px,1fr) minmax(124px,1.2fr) minmax(96px,.75fr) minmax(90px,.8fr) minmax(104px,1fr) minmax(118px,1.15fr); column-gap:8px; }
  .expense-sheet-table .expense-seq { grid-column:1; grid-row:1/3; padding-top:29px; text-align:center; }
  .expense-sheet-table td.expense-seq::before { display:none; }
  .expense-sheet-table .expense-cell-product { grid-column:2; }
  .expense-sheet-table .expense-cell-specification { grid-column:3; }
  .expense-sheet-table .expense-cell-category { grid-column:4; }
  .expense-sheet-table .expense-cell-unit { grid-column:5; }
  .expense-sheet-table .expense-cell-quantity { grid-column:6; }
  .expense-sheet-table .expense-cell-price { grid-column:7; }
  .expense-sheet-table .expense-cell-amount { grid-column:8; }
  .expense-sheet-table .expense-cell-person { grid-column:2; }
  .expense-sheet-table .expense-cell-vehicle { grid-column:3; }
  .expense-sheet-table .expense-cell-payee { grid-column:4/6; }
  .expense-sheet-table .expense-cell-remarks { grid-column:6/8; }
  .expense-sheet-table .expense-cell-action { grid-column:8; align-self:end; }
  .expense-sheet-table[data-kind=packing] .expense-cell-person { grid-column:2/4; }
 }
 @container expense-page (max-width:539px) {
  .expense-sheet-context { grid-template-columns:1fr; }
  .expense-sheet-table tr[data-expense-row] { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; padding:10px; }
  .expense-sheet-table .expense-cell-price,.expense-sheet-table .expense-cell-amount { grid-column:span 1; }
  .expense-sheet-table .expense-cell-action { grid-column:1/-1; }
  .expense-sheet-actions output { flex-basis:100%; margin:0; }
  .expense-sheet-actions [type=submit] { width:100%; }
  .expense-entry-tip { width:100%; margin:0; }
 }
 .expense-product-choices { position:fixed; z-index:1000; box-sizing:border-box; overflow:auto; overscroll-behavior:contain; background:#fff; border:1px solid #8daf9e; border-radius:8px; box-shadow:0 8px 24px #173f3530; padding:4px; }
 .expense-product-choices button { display:block; width:100%; min-height:52px; padding:8px 12px; margin:0; text-align:left; white-space:normal; overflow-wrap:anywhere; font-size:18px; color:#234a3c; background:#fff; border:0; border-radius:4px; transform:none; }
 .expense-product-choices button + button { border-top:1px solid #e6eee9; }
 .expense-product-choices button span { display:block; color:#53685e; font-size:16px; font-weight:400; }
 .expense-product-choices button:hover,.expense-product-choices button[aria-selected=true] { background:#e4f4eb; transform:none; }
 .expense-product-choices p { padding:10px; margin:0; font-size:16px; line-height:1.5; }
}
/* Q40: two independent, immediately writable sheets; no create/fold step. */
@media screen {
 .expense-direct-page { min-width:0; }
 .expense-direct-head h2 { margin:0 0 5px;font-size:20px; }
 .expense-direct-head p { margin:0 0 12px;font-size:15px;color:#526572; }
 .expense-direct-mount .expense-sheet-page { padding:12px;margin:10px 0;container-type:normal; }
 .expense-direct-mount .expense-list-head { margin:0 0 8px; }
 .expense-direct-mount h2 { font-size:19px; }
 .expense-direct-mount .expense-sheet-context { margin:8px 0;gap:10px; }
 .expense-direct-mount .expense-sheet-context :is(input,select) { min-height:40px;height:40px;font-size:16px;margin-top:4px; }
 .expense-direct-mount .expense-sheet-toolbar { margin:8px 0;gap:6px; }
 .expense-direct-mount .expense-sheet-toolbar button { min-height:34px;font-size:15px;padding:5px 9px; }
 .expense-direct-mount .expense-entry-tip { font-size:14px; }
 .expense-direct-mount .expense-entry-scroll { overflow:auto;margin:8px 0; }
 .expense-direct-mount .expense-sheet-table { display:table;min-width:1720px;table-layout:fixed;width:100%;font-size:16px; }
 .expense-direct-mount .expense-sheet-table[data-kind=packing] { min-width:1590px; }
 .expense-direct-mount .expense-sheet-table thead { display:table-header-group;position:static;width:auto;height:auto;margin:0;overflow:visible;clip-path:none; }
 .expense-direct-mount .expense-sheet-table tbody { display:table-row-group; }
 .expense-direct-mount .expense-sheet-table tr[data-expense-row] { display:table-row;padding:0;border:0; }
 .expense-direct-mount .expense-sheet-table :is(th,td) { display:table-cell;border:1px solid #d2dce3;padding:4px 6px;vertical-align:middle;line-height:1.4; }
 .expense-direct-mount .expense-sheet-table th { background:#edf2f6;text-align:left;padding:8px 6px;font-size:15px; }
 .expense-direct-mount .expense-sheet-table th:first-child { width:34px; }
 .expense-direct-mount .expense-sheet-table th:nth-child(2) { width:190px; }
 .expense-direct-mount .expense-sheet-table th:nth-child(3) { width:110px; }
 .expense-direct-mount .expense-sheet-table th:nth-child(4) { width:135px; }
 .expense-direct-mount .expense-sheet-table th:nth-child(5) { width:105px; }
 .expense-direct-mount .expense-sheet-table th:nth-child(6) { width:90px; }
 .expense-direct-mount .expense-sheet-table th:nth-child(7) { width:100px; }
 .expense-direct-mount .expense-sheet-table th:nth-child(8) { width:105px; }
 .expense-direct-mount .expense-sheet-table th:nth-child(9) { width:140px; }
 .expense-direct-mount .expense-sheet-table th:nth-last-child(3) { width:150px; }
 .expense-direct-mount .expense-sheet-table th:nth-last-child(2) { width:165px; }
 .expense-direct-mount .expense-sheet-table th:last-child { width:70px; }
 .expense-direct-mount .expense-sheet-table[data-kind=receiving] th:nth-child(10) { width:130px; }
 .expense-direct-mount .expense-sheet-table td[data-label]::before { display:none;content:none; }
 .expense-direct-mount .expense-sheet-table :is(input:not([type=hidden]),select) { min-height:38px;height:38px;font-size:16px;border:0;border-radius:0;background:transparent;padding:5px 3px; }
 .expense-direct-mount .expense-sheet-table [data-specification] { min-height:38px;font-size:15px; }
 .expense-direct-mount .expense-sheet-table small { font-size:12px;line-height:1.3;margin-top:0; }
 .expense-direct-mount .expense-sheet-table .expense-remove { min-height:34px;font-size:14px;padding:4px 7px; }
 .expense-sheet-table .expense-save-rate { display:block; min-height:24px; width:auto; padding:2px 0; margin:0; background:transparent; color:#176fab; border:0; box-shadow:none; font-size:12px; line-height:1.4; }
 .expense-sheet-table .expense-save-rate:hover { text-decoration:underline; }
 .expense-direct-mount .expense-sheet-table .editable-choice > input { padding-right:30px!important; }
 .expense-direct-mount .expense-sheet-table .editable-choice > button.editable-choice-arrow { width:26px;min-width:26px!important; }
 .expense-direct-mount .expense-sheet-table .complete-value { display:none!important; }
 .expense-direct-mount .expense-cell-value { display:block;min-height:26px;margin:4px 0;font-size:14px;line-height:1.5;white-space:pre-wrap;overflow-wrap:anywhere;color:#455d68; }
 .expense-direct-mount .expense-sheet-actions { gap:8px; }
 .expense-direct-mount .expense-sheet-actions output { font-size:17px; }
 .expense-direct-mount .expense-sheet-actions button { min-height:38px;font-size:16px; }
 .expense-direct-mount [data-expense-hook=draft] { margin:6px 0 0;font-size:14px; }
 .expense-direct-mount .form-error:empty { display:none; }
 .expense-direct-history #expenseSavedDrafts { display:flex;gap:8px;flex-wrap:wrap; }
 .expense-direct-history #expenseSavedDrafts p { margin:0; }
 .expense-direct-history #expenseSavedDrafts button { margin:0; }
 .expense-direct-history .expense-sheet-history { display:table;min-width:800px;table-layout:auto; }
 .expense-direct-history .expense-sheet-history thead { display:table-header-group;position:static; }
 .expense-direct-history .expense-sheet-history tbody { display:table-row-group; }
 .expense-direct-history .expense-sheet-history tr { display:table-row; }
 .expense-direct-history .expense-sheet-history td { display:table-cell; }
 @media(max-width:700px){
  .expense-direct-mount .expense-sheet-context { grid-template-columns:minmax(0,1fr); }
  .expense-direct-mount .expense-sheet-context :is(input,select) { min-height:44px;height:44px; }
  .expense-direct-mount .expense-entry-tip { width:100%;margin:0; }
  .expense-direct-mount .expense-sheet-actions output { margin:0;flex-basis:100%; }
  .expense-direct-mount .expense-sheet-actions [type=submit] { width:100%;min-height:44px; }
 }
}

/* Q53: the document header follows the same plain ledger layout as inbound. */
@media screen {
 #app .expense-worksheet { padding:10px 0; border:0; box-shadow:none; border-radius:0; container-type:normal; }
 #app .expense-worksheet .expense-document-toolbar { margin:0 0 10px; padding:0 0 10px; border-bottom:1px solid #dce3e8; gap:6px; }
 #app .expense-document-toolbar h2 { margin:0 auto 0 0; font-size:19px; }
 #app .expense-document-toolbar button { min-height:34px; padding:5px 10px; font-size:14px; border-radius:2px; }
 #app .expense-worksheet .expense-sheet-context { grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px 16px; margin:8px 0; }
 #app .expense-worksheet .expense-sheet-context label { display:flex; align-items:center; gap:8px; font-size:14px; font-weight:400; }
 #app .expense-worksheet .expense-sheet-context label > :is(input,.editable-choice,select) { flex:1; min-width:0; width:0; margin:0; }
 #app .expense-worksheet .expense-sheet-context :is(input,select) { height:34px; min-height:34px; font-size:15px; padding:5px 8px; border-radius:2px; }
 #app .expense-worksheet .expense-sheet-toolbar { gap:6px; margin:8px 0; }
 #app .expense-worksheet .expense-sheet-toolbar button { min-height:30px; padding:4px 8px; font-size:14px; border-radius:2px; }
 #app .expense-worksheet .expense-entry-tip { font-size:14px; }
 #app .expense-worksheet .expense-cell-value { display:block; min-height:26px; margin:4px 0; font-size:14px; line-height:1.5; white-space:pre-wrap; overflow-wrap:anywhere; color:#455d68; }
 #app .expense-worksheet .expense-entry-scroll { margin:6px 0; border-radius:0; }
 #app .expense-worksheet .expense-sheet-actions { gap:8px; margin:8px 0; }
 #app .expense-worksheet .expense-sheet-actions button { min-height:34px; font-size:14px; padding:5px 10px; }
 #app .expense-worksheet .expense-sheet-actions output { font-size:16px; }
 #app .expense-worksheet [data-expense-hook=draft] { margin:6px 0; font-size:14px; color:#576672; }
 #app .expense-worksheet > p { font-size:14px; margin:6px 0; }
 #app .expense-worksheet .expense-sheet-boundary { padding:6px 8px; border-radius:0; }
 @media(max-width:700px) {
  #app .expense-worksheet .expense-sheet-context { grid-template-columns:minmax(0,1fr); }
  #app .expense-document-toolbar h2 { flex:1 1 100%; }
  #app .expense-document-toolbar button,#app .expense-worksheet .expense-sheet-context :is(input,select),#app .expense-worksheet .expense-sheet-toolbar button { min-height:44px; }
 }
}
/* Q52: dense worksheet cells, no nested input cards; every field stays visible. */
@media screen {
 #app .expense-sheet-table :is(th,td) { font-size:15px; line-height:1.4; }
 #app .expense-sheet-table :is(input:not([type=hidden]),select) { min-height:34px; height:34px; padding:4px; font-size:15px; border:0; background:transparent; }
 #app .expense-sheet-table [data-specification] { min-height:0; font-size:15px; }
 #app .expense-sheet-table [data-rate-hint]:empty { display:none; }
 #app .expense-sheet-table [data-money-hint] { display:none; }
 #app .expense-sheet-table .expense-remove { font-size:13px; padding:3px; min-height:30px; }
 #app .expense-sheet-table.reflow-split tbody > tr > td { padding:3px 6px!important; }
 #app .expense-sheet-table.reflow-split tbody > tr > td::before { margin-bottom:1px!important; font-size:13px; }
 #app .expense-sheet-table .complete-value:not([hidden]) { font-size:15px; }
 @media(max-width:700px) {
  #app .expense-sheet-table :is(input:not([type=hidden]),select,button) { min-height:44px; font-size:16px; }
 }
}
