/* Structured cost entry, using the portal's existing slate and blue palette. */
#expenseDialog{box-sizing:border-box;width:min(1080px,calc(100vw - 32px));max-width:1080px;max-height:calc(100dvh - 32px);padding:0;border:1px solid #c9d3df;border-radius:16px;background:#f3f6fa;color:#263442;box-shadow:0 22px 70px #12223640}
#expenseDialog .expense-editor{display:block;margin:0;padding:0;min-width:0}
#expenseDialog .expense-editor-head{position:sticky;top:0;z-index:3;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 24px;border:0;border-bottom:1px solid #dce3ed;background:#fff;color:#263442;box-shadow:none;min-height:0}
#expenseDialog .expense-editor-head h2{margin:4px 0 6px;font-size:22px;line-height:1.2;color:#1f334d}#expenseDialog .expense-editor-head p{margin:0;font-size:12px;line-height:1.5;color:#64748b;overflow-wrap:anywhere}.expense-eyebrow{font-size:10px;line-height:1.4;font-weight:700;letter-spacing:.8px;color:#69809e}
#expenseDialog .expense-mode-switch{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:16px 24px 0}#expenseDialog .expense-mode-switch button{display:grid;gap:4px;text-align:left;min-height:64px;padding:12px 14px;border:1px solid #d0d9e5;border-radius:10px;background:#fff;color:#516378;font:inherit;font-size:13px;font-weight:650;cursor:pointer}#expenseDialog .expense-mode-switch button small{font-size:11px;font-weight:400;line-height:1.4;color:inherit}#expenseDialog .expense-mode-switch button[aria-pressed=true]{background:#e9f0fa;border-color:#89a8d0;color:#294f80;box-shadow:inset 3px 0 0 #547fb5}#expenseDialog .expense-mode-switch button:disabled{opacity:.45;cursor:not-allowed}#expenseDialog .expense-native-mode{display:none!important}
#expenseDialog .expense-editor-layout{display:grid;grid-template-columns:minmax(0,1fr) 285px;gap:18px;padding:18px 24px 24px;align-items:start}#expenseDialog .expense-editor-main{display:grid;gap:14px;min-width:0}#expenseDialog .expense-section{padding:18px;background:#fff;border:1px solid #dbe2ec;border-radius:11px;min-width:0}#expenseDialog .expense-section h3{font-size:14px;font-weight:700;color:#2a415f;margin:0 0 10px;line-height:1.4}#expenseDialog .expense-section>p,#expenseDialog .expense-section-heading p{font-size:11px;color:#6a7d95;line-height:1.5;margin:0 0 12px}#expenseDialog .expense-section-heading{display:flex;align-items:start;justify-content:space-between;gap:14px}#expenseDialog .expense-section-heading>div{min-width:0}#expenseDialog .expense-section-heading h3{margin-bottom:5px}#expenseDialog .expense-section-total{font-size:15px;font-weight:700;color:#294f80;white-space:nowrap;margin-top:1px}#expenseDialog .expense-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}#expenseDialog label{font-size:11px;font-weight:600;line-height:1.5;color:#4f6380;margin:0;display:grid;gap:6px}#expenseDialog input,#expenseDialog select,#expenseDialog textarea{box-sizing:border-box;width:100%;min-width:0;min-height:42px;margin:0;padding:9px 10px;border:1px solid #cbd6e4;border-radius:7px;background:#fff;color:#243b58;font:inherit;font-size:14px;line-height:1.4}#expenseDialog textarea{resize:vertical;min-height:82px}#expenseDialog input:focus,#expenseDialog textarea:focus,#expenseDialog select:focus{outline:2px solid #8faed5;outline-offset:1px}#expenseDialog input[readonly]{background:#eef2f7;color:#60768f;border-color:#dbe3ed}#expenseDialog .expense-context h3{margin-bottom:12px}
#expenseDialog #expenseTripItems{display:grid;gap:14px;padding:0;border:0;border-radius:0;background:none}#expenseDialog #expenseTripItems[hidden],#expenseDialog #expenseExtraFields[hidden],#expenseDialog #expenseSummaryLines[hidden]{display:none!important}#expenseDialog #tripMaterialRateStatus{font-size:10px;line-height:1.5;padding:8px 10px;margin:0 0 12px;background:#f0f4f9;border-radius:6px;color:#69809b}#expenseDialog .expense-material-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}#expenseDialog .expense-material-card{display:grid;gap:10px;padding:14px;border:1px solid #dce4ed;border-radius:9px;background:#fafcfe}#expenseDialog .expense-material-card h4{font-size:13px;color:#344f73;margin:0}#expenseDialog .expense-material-card>label:first-of-type input{font-size:18px;font-weight:650;min-height:46px}#expenseDialog .expense-rate-field input{min-height:36px;padding:7px 9px;font-size:12px}#expenseDialog .expense-subtotal{display:flex;align-items:center;justify-content:space-between;gap:8px;padding-top:10px;border-top:1px solid #dfe6ef;font-size:10px;color:#60758e}#expenseDialog .expense-subtotal output{font-size:13px;font-weight:700;color:#2f537f}
#expenseDialog .expense-fuel-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}#expenseDialog .expense-fuel-estimate{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;background:#edf3fa;border-radius:7px;padding:10px;margin-top:12px;color:#5d7592;font-size:11px}#expenseDialog .expense-fuel-estimate strong{color:#315b8d;font-size:12px}
#expenseDialog .expense-editor-summary{position:sticky;top:125px;display:grid;gap:14px;padding:18px;border:1px solid #cbd9e9;border-radius:12px;background:#edf3fa;color:#294766}#expenseDialog .expense-editor-summary h3{font-size:15px;margin:0}#expenseDialog .expense-editor-summary dl{display:grid;gap:10px;margin:0;padding-bottom:14px;border-bottom:1px solid #ccd9e9}#expenseDialog .expense-editor-summary dl>div{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:11px;line-height:1.4}#expenseDialog .expense-editor-summary dd{font-weight:650;white-space:nowrap;margin:0}#expenseDialog .expense-grand-total{font-size:11px;color:#486482}#expenseDialog .expense-grand-total>div{display:flex;gap:8px;align-items:center;font-size:17px;font-weight:700}#expenseDialog .expense-grand-total input{font-size:25px!important;font-weight:750;line-height:1.2;min-height:48px;border:0;background:transparent;padding:4px 0;color:#224b7d;appearance:textfield;box-shadow:none}#expenseDialog .expense-grand-total input::-webkit-inner-spin-button{appearance:none}#expenseDialog .expense-grand-total input:not([readonly]){font-size:21px!important;background:#fff;border:1px solid #b8cbe1;padding:8px;border-radius:7px}#expenseDialog #expenseEmissionHint{font-size:11px;line-height:1.6;color:#657c97;margin:0}#expenseDialog #expenseFeedback{font-size:11px;line-height:1.5;color:#9a3412;margin:0}#expenseDialog #expenseFeedback:empty{display:none}#expenseDialog .expense-editor-summary .btn{width:100%;min-height:43px;font-size:12px;padding:10px;white-space:normal}#expenseDialog #expenseSubmit{background:#355e91;color:#fff;border-color:#355e91}#expenseDialog #expenseHistory:empty{display:none}#expenseDialog #expenseHistory h3{font-size:13px;margin:0 0 10px}
@media(max-width:760px){#expenseDialog{width:calc(100vw - 16px);max-height:calc(100dvh - 16px);border-radius:12px}#expenseDialog .expense-editor-head{padding:14px 16px;gap:10px}#expenseDialog .expense-editor-head h2{font-size:19px}#expenseDialog .expense-editor-head p{font-size:11px}#expenseDialog .expense-editor-head .btn{min-height:38px;font-size:11px;padding:8px}#expenseDialog .expense-mode-switch{padding:12px 12px 0;gap:6px}#expenseDialog .expense-mode-switch button{min-height:70px;padding:10px;font-size:12px}#expenseDialog .expense-mode-switch button small{font-size:10px}#expenseDialog .expense-editor-layout{grid-template-columns:1fr;padding:12px;gap:12px}#expenseDialog .expense-section{padding:14px}#expenseDialog .expense-editor-main{gap:12px}#expenseDialog .expense-section h3{font-size:13px}#expenseDialog .expense-section-heading{gap:10px}#expenseDialog .expense-section-total{font-size:13px}#expenseDialog .expense-fields{gap:10px}#expenseDialog input,#expenseDialog select,#expenseDialog textarea{font-size:16px}#expenseDialog .expense-material-grid{gap:8px}#expenseDialog .expense-material-card{padding:10px;gap:9px}#expenseDialog .expense-material-card label{font-size:10px}#expenseDialog .expense-rate-field input{font-size:13px}#expenseDialog .expense-subtotal{display:grid;gap:4px}#expenseDialog .expense-fuel-fields{grid-template-columns:1fr 1fr}#expenseDialog .expense-fuel-fields>label:last-child{grid-column:1/-1}#expenseDialog .expense-editor-summary{position:static;gap:12px;padding:16px}#expenseDialog .expense-grand-total input{font-size:27px!important}}
@media(prefers-reduced-motion:reduce){#expenseDialog *{scroll-behavior:auto}}

#expenseDialog .expense-editor-head{background:#fff!important;flex-wrap:nowrap!important}
@media(min-width:761px){#expenseDialog .expense-fuel-fields{grid-template-columns:repeat(2,minmax(0,1fr))}}#expenseDialog .expense-fuel-fields>label:last-child{grid-column:auto}#expenseDialog .expense-fuel-fields small{display:block;line-height:1.4;color:#61758e;font-size:11px}
#expenseDialog .expense-fuel-reference{font-size:12px;line-height:1.5;color:#61758e;margin:12px 0 0}
