:root{color-scheme:light;--ink:#173d39;--muted:#667772;--line:#dce5df;--paper:#fff;--bg:#f2f5f0}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:#233b35;font:16px/1.6 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif}header{background:var(--ink);color:#fff}.wrap{max-width:1020px;margin:auto;padding:20px}.header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:22px;padding-bottom:22px}.brand{font-size:24px;font-weight:750;color:white;text-decoration:none;letter-spacing:-.6px}.header span{font-size:14px;color:#ccdfd4}h1,h2,h3{line-height:1.3;letter-spacing:-.4px}h1{font-size:28px;margin:0 0 12px}h2{font-size:21px;margin:0 0 16px}h3{font-size:17px}p{margin:8px 0 16px}.card{background:var(--paper);border:1px solid var(--line);border-radius:16px;padding:24px;margin:20px 0;box-shadow:0 5px 18px #173d3905}.notice,.msg{padding:14px 18px;border-radius:10px;margin:16px 0;background:#fff1cd;border:1px solid #e6d29a;font-size:14px}.notice.live,.msg.ok{background:#e6f3eb;border-color:#b8d9c4}.msg.error{background:#ffe8e5;border-color:#eab7ad}.msg.warn{background:#fff1cd}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 22px}label{display:block;font-weight:600;margin:10px 0 6px}input,select,textarea{width:100%;border:1px solid #b8cac0;border-radius:8px;padding:11px 12px;font:inherit;background:#fff;color:#233b35}input[readonly]{background:#f2f5f0}input[type=checkbox]{width:20px;min-width:20px;height:20px;vertical-align:middle}textarea{resize:vertical}button,.btn{display:inline-flex;align-items:center;justify-content:center;min-height:46px;background:var(--ink);color:white;border:1px solid var(--ink);border-radius:9px;padding:10px 16px;text-decoration:none;cursor:pointer;font:600 15px/1.4 system-ui;gap:6px}button:disabled{opacity:.55;cursor:wait}.secondary{background:#fff;color:var(--ink);border-color:#9daf9e}.warn-btn{background:#79571c;border-color:#79571c}a{color:#14655b;text-underline-offset:3px}a,button,input,select,textarea{touch-action:manipulation}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #d6a639;outline-offset:3px}.muted{color:var(--muted);font-size:14px}.actions{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0}.actions form{margin:0}.print-actions{padding-top:18px;border-top:1px solid var(--line)}.print-actions form{flex:1;min-width:130px}.print-actions button{width:100%}.item{padding:18px 0;border-bottom:1px solid var(--line)}.item:last-child{border-bottom:0}.item-head{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.date-link{font-size:20px;font-weight:700}.badge{display:inline-block;padding:4px 10px;border-radius:20px;font-size:13px;font-weight:600;background:#edf1ee}.badge.queued{background:#edf1ee}.badge.processing{background:#e3efff;color:#174580}.badge.submitted,.badge.dry_run{background:#e0f2e7;color:#205331}.badge.failed{background:#fee7e2;color:#982f28}.badge.uncertain{background:#fff0cc;color:#785311}dl{margin:16px 0}dt{font-size:13px;color:var(--muted);margin-bottom:3px}dd{margin:0;font-weight:600;overflow-wrap:anywhere}.purpose{white-space:pre-wrap;overflow-wrap:anywhere}.eyebrow{text-transform:uppercase;font-size:12px;letter-spacing:1.2px;color:var(--muted);margin-bottom:7px}.filter{display:flex;align-items:end;gap:10px;flex-wrap:wrap}.filter>div{flex:1;max-width:250px}summary{cursor:pointer;font-weight:650;padding:5px 0}details>form{margin-top:18px}.job{border:1px solid var(--line);border-radius:10px;padding:16px;margin:14px 0}.job p{font-size:14px;overflow-wrap:anywhere}.job ol{padding-left:24px;font-size:14px}.job details{margin-top:10px}.job time{color:var(--muted)}.check{display:flex;align-items:start;gap:10px;font-size:14px}.check input{margin-top:4px}footer{font-size:13px;color:var(--muted);padding:24px 0;text-align:center}.back{margin:18px 0}.version-select{max-width:360px}.empty{padding:20px 0;color:var(--muted)}@media(max-width:600px){.wrap{padding:14px}.header{align-items:start;flex-direction:column;gap:2px;padding:20px 16px}.brand{font-size:23px}.grid{grid-template-columns:1fr;gap:8px}.card{padding:18px;border-radius:12px;margin:16px 0}h1{font-size:24px}.actions{gap:8px}.print-actions form{min-width:90px}.print-actions button{font-size:14px;padding:12px 8px}.notice{padding:12px}.filter{align-items:stretch}.filter>div{max-width:none}.filter button{align-self:end}.job{padding:12px}dd{font-size:16px}}
/* Travel expense statements */
.expense-row{border-bottom:1px solid var(--line);padding:12px 0;display:grid;grid-template-columns:minmax(0,1fr) 200px;align-items:center;gap:14px}.expense-row label{margin:0}.expense-row .badge{margin-left:5px}.expense-table-wrap{overflow-x:auto}.expense-table{width:100%;border-collapse:collapse;font-size:14px}.expense-table td,.expense-table th{border:1px solid #b7c9bf;padding:8px;text-align:left}.expense-table th{background:#e9f2eb}.expense-table td:nth-child(5),.expense-table td:nth-child(6){text-align:right;white-space:nowrap}@media(max-width:600px){.expense-row{grid-template-columns:1fr}.expense-row input[type=number]{max-width:240px}}@media print{header,.no-print,footer,.notice,.msg{display:none!important}body{background:white}.card{border:0;box-shadow:none;margin:0;padding:0}.wrap{max-width:none;padding:0}.expense-table{font-size:11px}.expense-table td,.expense-table th{padding:4px}a{color:black;text-decoration:none}@page{size:A4 landscape;margin:12mm}}
