:root{--text:#333;--text-h:#0a0a0a;--bg:#fff;--border:#e2e2e2;--accent:#2b6cb0;--accent-bg:#ebf4ff;--danger:#c0392b;--danger-bg:#fdecea;--warning:#9a6d00;--warning-bg:#fff6dd;--sans:system-ui, "Segoe UI", Roboto, sans-serif;font:15px/1.5 var(--sans);color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}body{margin:0}#root{flex-direction:column;min-height:100svh;display:flex}h1,h2,h3{font-family:var(--sans);color:var(--text-h);margin:0 0 12px;font-weight:600}h1{font-size:20px}h2{font-size:18px}h3{margin-top:24px;font-size:15px}.portal header{border-bottom:1px solid var(--border);align-items:center;gap:24px;padding:12px 24px;display:flex}.portal header h1{white-space:nowrap;margin:0;font-size:16px}.portal header nav{flex:1;gap:16px;display:flex}.portal header nav a{color:var(--text);text-decoration:none}.portal header nav a:hover{color:var(--accent)}.header-user{color:var(--text);align-items:center;gap:8px;font-size:13px;display:flex}.diesel-rate-badge{color:var(--accent);background:var(--accent-bg);white-space:nowrap;border-radius:999px;padding:4px 10px;font-size:13px;font-weight:600}.portal main{width:100%;max-width:960px;margin:0 auto;padding:24px}.login-page{flex:1;justify-content:center;align-items:center;display:flex}.login-form{border:1px solid var(--border);border-radius:8px;flex-direction:column;gap:12px;width:320px;padding:32px;display:flex}.page-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}label{color:var(--text);flex-direction:column;gap:4px;font-size:13px;display:flex}input,select,textarea,button{font:inherit;border:1px solid var(--border);background:var(--bg);color:var(--text-h);border-radius:6px;padding:8px 10px}button{cursor:pointer;background:var(--accent);color:#fff;border:none;align-self:flex-start}button:disabled{opacity:.6;cursor:not-allowed}.order-form{flex-direction:column;gap:12px;max-width:420px;margin-bottom:16px;display:flex}.filters{gap:16px;margin-bottom:16px;display:flex}table.orders-table{border-collapse:collapse;width:100%}.orders-table th,.orders-table td{text-align:left;border-bottom:1px solid var(--border);padding:8px 10px;font-size:14px}.banner{border-radius:6px;margin-bottom:16px;padding:10px 14px;font-size:14px}.banner-error{background:var(--danger-bg);color:var(--danger)}.banner-warning{background:var(--warning-bg);color:var(--warning)}.status-badge{background:var(--accent-bg);color:var(--accent);border-radius:999px;padding:2px 8px;font-size:12px;font-weight:600;display:inline-block}.status-rejected{background:var(--danger-bg);color:var(--danger)}.status-fulfilled,.status-booked{color:#1e7a3d;background:#e6f6ec}.status-pending_approval{background:var(--warning-bg);color:var(--warning)}.amended-flag{color:var(--warning);margin-left:6px;font-size:12px}.order-summary{grid-template-columns:200px 1fr;row-gap:8px;margin-bottom:16px;display:grid}.order-summary dt{color:var(--text);font-size:13px}.order-summary dd{color:var(--text-h);margin:0;font-size:14px}.history-list{color:var(--text);padding:0;font-size:13px;list-style:none}.history-list li{border-bottom:1px solid var(--border);padding:6px 0}
