:root{color-scheme:dark;--bg: #0f1720;--surface: #18222e;--raised: #22303f;--border: #2e3e4f;--text: #f2f6fa;--muted: #9db0c2;--faint: #8194a7;--driver: #3fa7f5;--subhauler: #f5a623;--good: #3fbf6f;--attention: #f5a623;--bad: #f2757b;--pending: #9aacbe;--on-driver: #0b1119;--on-good: #06180d;--on-attention: #1a1200;--tint: 14%;--photo-bg: #000;--scrim: rgba(4, 8, 12, .72);--shadow: 0 12px 32px rgba(0, 0, 0, .45);--radius: 10px;--radius-sm: 8px;--radius-lg: 16px;--tap: 44px;--gutter: 24px;--font: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--mono: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;font-family:var(--font)}@media (prefers-color-scheme: light){:root:not([data-theme=dark]){color-scheme:light;--bg: #f3f5f8;--surface: #ffffff;--raised: #e8edf3;--border: #cfd8e2;--text: #101822;--muted: #46566a;--faint: #5c6c7d;--driver: #1565c0;--subhauler: #96560a;--good: #1a7a42;--attention: #96560a;--bad: #c22f38;--pending: #566678;--on-driver: #ffffff;--on-good: #ffffff;--on-attention: #ffffff;--tint: 11%;--photo-bg: #dde3ea;--scrim: rgba(16, 24, 34, .5);--shadow: 0 12px 32px rgba(16, 24, 34, .18)}}:root[data-theme=light]{color-scheme:light;--bg: #f3f5f8;--surface: #ffffff;--raised: #e8edf3;--border: #cfd8e2;--text: #101822;--muted: #46566a;--faint: #5c6c7d;--driver: #1565c0;--subhauler: #96560a;--good: #1a7a42;--attention: #96560a;--bad: #c22f38;--pending: #566678;--on-driver: #ffffff;--on-good: #ffffff;--on-attention: #ffffff;--tint: 11%;--photo-bg: #dde3ea;--scrim: rgba(16, 24, 34, .5);--shadow: 0 12px 32px rgba(16, 24, 34, .18)}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--bg);color:var(--text);font-size:15px;line-height:1.5}:focus-visible{outline:2px solid var(--driver);outline-offset:2px}.muted{color:var(--muted)}.boot{display:grid;place-items:center;min-height:100vh}.app{min-height:100vh;display:flex;flex-direction:column}.nav{display:flex;align-items:center;gap:32px;padding:0 var(--gutter);height:60px;background:var(--surface);border-bottom:1px solid var(--border);flex:none}.nav__brand{font-weight:700;font-size:18px;color:var(--text);text-decoration:none;white-space:nowrap}.nav__brand span{color:var(--driver);font-weight:500}.nav__links{display:flex;gap:20px;flex:1;min-width:0}.nav__links a{color:var(--muted);text-decoration:none;padding:6px 0;border-bottom:2px solid transparent;white-space:nowrap}.nav__links a:hover{color:var(--text)}.nav__links a.on{color:var(--text);border-bottom-color:var(--driver)}.nav__user{display:flex;align-items:center;gap:10px}.nav__user span{display:flex;flex-direction:column;line-height:1.25;margin-right:4px}.nav__user em{font-style:normal;font-size:12px;color:var(--faint);text-transform:uppercase;letter-spacing:.06em}.btn{border:1px solid transparent;border-radius:var(--radius);padding:10px 16px;font-size:14px;font-weight:600;font-family:inherit;cursor:pointer;background:var(--raised);color:var(--text);transition:filter .12s ease}.btn:hover:not(:disabled){filter:brightness(1.12)}.btn:disabled{opacity:.4;cursor:not-allowed}.btn--primary{background:var(--driver);color:var(--on-driver)}.btn--approve{background:var(--good);color:var(--on-good)}.btn--warn{background:var(--attention);color:var(--on-attention)}.btn--danger{background:transparent;border-color:var(--bad);color:var(--bad)}.btn--ghost{background:transparent;border-color:var(--border);color:var(--muted)}.signin{display:grid;place-items:center;min-height:100vh;padding:var(--gutter)}.signin__card{width:min(400px,100%);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:32px;display:flex;flex-direction:column;gap:14px}.signin__card h1{margin:0;font-size:26px}.signin__card .btn{margin-top:8px}.footnote{color:var(--faint);font-size:13px;margin:8px 0 0}.codeinput{font-size:26px;letter-spacing:10px;text-align:center}.field{display:flex;flex-direction:column;gap:5px;min-width:0}.fieldlabel{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--faint);display:flex;align-items:center;gap:8px}.field input,.field select,.field textarea{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-sm);padding:10px 12px;color:var(--text);font-size:15px;font-family:inherit;width:100%}.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid var(--driver);outline-offset:-1px;border-color:transparent}.field input:disabled,.field select:disabled{opacity:.6;cursor:not-allowed}.field--unresolved select{border-color:var(--attention)}.raw{font-size:12px;color:var(--faint);font-style:italic}.conf{font-size:11px;font-weight:700;padding:1px 6px;border-radius:999px;letter-spacing:0}.conf--good{background:color-mix(in srgb,var(--good) var(--tint),transparent);color:var(--good)}.conf--attention{background:color-mix(in srgb,var(--attention) var(--tint),transparent);color:var(--attention)}.conf--bad{background:color-mix(in srgb,var(--bad) var(--tint),transparent);color:var(--bad)}.pill{display:inline-block;font-size:12px;font-weight:700;padding:3px 10px;border-radius:999px;border:1px solid;white-space:nowrap}.pill--good{color:var(--good);border-color:var(--good);background:color-mix(in srgb,var(--good) var(--tint),transparent)}.pill--attention{color:var(--attention);border-color:var(--attention);background:color-mix(in srgb,var(--attention) var(--tint),transparent)}.pill--bad{color:var(--bad);border-color:var(--bad);background:color-mix(in srgb,var(--bad) var(--tint),transparent)}.pill--pending{color:var(--pending);border-color:var(--pending);background:color-mix(in srgb,var(--pending) var(--tint),transparent)}.book{font-size:12px;font-weight:600;padding:2px 8px;border-radius:6px;white-space:nowrap}.book--employee_driver{background:color-mix(in srgb,var(--driver) var(--tint),transparent);color:var(--driver)}.book--subhauler{background:color-mix(in srgb,var(--subhauler) var(--tint),transparent);color:var(--subhauler)}.alert{border-left:3px solid;border-radius:6px;padding:12px 14px;margin:0;font-size:14px;overflow-wrap:anywhere}.alert strong{display:block;margin-bottom:4px}.alert p{margin:0}.alert ul{margin:6px 0 0;padding-left:18px}.alert--bad{border-color:var(--bad);background:color-mix(in srgb,var(--bad) var(--tint),transparent)}.alert--attention{border-color:var(--attention);background:color-mix(in srgb,var(--attention) var(--tint),transparent)}.alert--good{border-color:var(--good);background:color-mix(in srgb,var(--good) var(--tint),transparent)}.queue{padding:var(--gutter);max-width:1500px;width:100%;margin:0 auto}.queue__head h1{margin:0 0 4px;font-size:24px}.filters{display:flex;gap:12px;flex-wrap:wrap;margin:20px 0 16px}.segmented{display:inline-flex;max-width:100%;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.segmented button{background:transparent;border:0;color:var(--muted);padding:8px 14px;font-size:13px;font-weight:600;font-family:inherit;cursor:pointer}.segmented button.on{background:var(--raised);color:var(--text)}.tablewrap{overflow-x:auto;-webkit-overflow-scrolling:touch}.table{width:100%;border-collapse:collapse;font-size:14px}.table th{text-align:left;font-size:11px;text-transform:uppercase;letter-spacing:.07em;color:var(--faint);padding:8px 12px;border-bottom:1px solid var(--border);font-weight:700;white-space:nowrap}.table td{padding:11px 12px;border-bottom:1px solid var(--border)}.table .num{text-align:right;font-variant-numeric:tabular-nums}.row:hover{background:var(--surface)}.row--attention td:first-child{box-shadow:inset 3px 0 0 var(--attention)}.ticketlink{color:var(--driver);font-weight:600;text-decoration:none}.ticketlink:hover{text-decoration:underline}.unmatched{color:var(--attention);font-style:italic;font-size:13px}.why{color:var(--muted);font-size:13px}.empty{color:var(--muted);padding:48px 0;text-align:center}.empty p{margin:0 0 14px}.queue__search{flex:1 1 260px;max-width:360px;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);padding:8px 12px;color:var(--text);font-size:14px;font-family:inherit}.queue__search:focus{outline:2px solid var(--driver);outline-offset:-1px;border-color:transparent}.review{display:grid;grid-template-columns:minmax(0,1fr) minmax(430px,520px);gap:0;flex:1;min-height:0}.review--loading{display:block;padding:48px}.review__image{display:flex;flex-direction:column;background:var(--photo-bg);border-right:1px solid var(--border);min-height:0;min-width:0}.review__imagebar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 14px;background:var(--surface);border-bottom:1px solid var(--border);font-size:13px;flex:none}.zoom{display:flex;align-items:center;gap:6px}.zoom button{background:var(--raised);border:1px solid var(--border);color:var(--text);border-radius:6px;min-width:30px;height:28px;cursor:pointer;font-size:13px;font-family:inherit}.zoom span{min-width:46px;text-align:center;color:var(--muted);font-size:12px}.review__canvas{flex:1;overflow:auto;display:grid;place-items:center;padding:16px;min-height:0}.review__canvas img{max-width:100%;transform-origin:center;transition:transform .12s ease}.review__panel{overflow-y:auto;padding:20px;display:flex;flex-direction:column;gap:16px;background:var(--bg);min-height:0;min-width:0}.review__header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.review__header h1{margin:0 0 2px;font-size:21px;overflow-wrap:anywhere}.review__header p{margin:0;font-size:13px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:14px}.weights{border:1px solid var(--border);border-radius:var(--radius);padding:14px;display:flex;flex-direction:column;gap:10px;background:var(--surface)}.weights__row{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.weights input{font-variant-numeric:tabular-nums}.arith{margin:0;font-size:13px}.arith--ok{color:var(--good)}.arith--warn{color:var(--attention)}.arith--bad{color:var(--bad);font-weight:600}.notes{border-left:3px solid var(--border);padding-left:12px;font-size:14px}.notes p{margin:4px 0 0;color:var(--muted)}.price{border:1px solid var(--border);border-radius:var(--radius);padding:14px;display:flex;flex-direction:column;gap:6px;background:var(--surface)}.price strong{display:block;font-size:28px;font-variant-numeric:tabular-nums}.price span.muted{font-size:12px}.price--ok strong{color:var(--good)}.price--missing strong{color:var(--attention);font-size:18px}.review__actions{display:flex;flex-wrap:wrap;gap:8px;padding-top:6px;border-top:1px solid var(--border);margin-top:auto;position:sticky;bottom:-20px;background:var(--bg);padding-bottom:4px}.modal{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--scrim);display:grid;place-items:center;padding:var(--gutter);z-index:50}.modal__body{width:min(480px,100%);max-height:100%;overflow-y:auto;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow);padding:24px;display:flex;flex-direction:column;gap:14px}.modal__body h2{margin:0;font-size:20px}.modal__body p.muted{margin:0;font-size:13px}.modal__actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:8px}.reasons{display:flex;flex-direction:column;gap:6px}.reason{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;font-size:14px}.reason--on{border-color:var(--attention);background:color-mix(in srgb,var(--attention) var(--tint),transparent)}@media (max-width: 1080px){.review{grid-template-columns:1fr}.review__image{border-right:0;border-bottom:1px solid var(--border)}.review__canvas{max-height:55vh}.fields{grid-template-columns:1fr}}.periods{padding:var(--gutter);max-width:1500px;width:100%;margin:0 auto}.closebar{display:flex;gap:12px;align-items:flex-end;flex-wrap:wrap;margin:20px 0;padding:16px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius)}.closebar .field{min-width:170px}.closebar .btn{height:42px}.books{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:20px}.bookcard{border:1px solid var(--border);border-left-width:4px;border-radius:var(--radius);padding:16px;display:flex;flex-direction:column;gap:4px;background:var(--surface);min-width:0}.bookcard strong{font-size:30px;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.bookcard span.muted{font-size:12px}.bookcard--employee_driver{border-left-color:var(--driver)}.bookcard--employee_driver strong{color:var(--driver)}.bookcard--subhauler{border-left-color:var(--subhauler)}.bookcard--subhauler strong{color:var(--subhauler)}.sectionhead{font-size:18px;margin:32px 0 12px;padding-top:20px;border-top:1px solid var(--border)}.rowactions{display:flex;gap:6px;justify-content:flex-end}.rowactions .btn{padding:5px 12px;font-size:13px}@media (max-width: 720px){.books{grid-template-columns:1fr}}.ocr-dump{margin:12px 0;padding:12px 14px;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg)}.ocr-dump>strong{display:block;margin-bottom:8px;font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--faint)}.ocr-dump pre{margin:0;max-height:340px;overflow:auto;font-family:var(--mono);font-size:12.5px;line-height:1.5;color:var(--muted);white-space:pre-wrap;word-break:break-word;-webkit-user-select:text;user-select:text}.rates{padding:24px 32px 64px;max-width:1200px;width:100%;margin:0 auto;display:flex;flex-direction:column;gap:16px}.rates .segmented{align-self:flex-start}.segmented button em{font-style:normal;margin-left:8px;padding:1px 7px;border-radius:20px;background:var(--bg);color:var(--faint);font-size:11px;font-variant-numeric:tabular-nums}.segmented button.on em{color:var(--text)}.rates .table td{vertical-align:top}.rates .table td em{font-style:normal;font-size:12px}.rates .sectionhead:first-of-type{margin-top:8px}.tester{margin-top:24px;padding:20px;border:1px dashed var(--border);border-radius:var(--radius);background:var(--surface);display:flex;flex-direction:column;gap:12px}.tester .sectionhead{margin:0;padding-top:0;border-top:0}.tester .fields{grid-template-columns:repeat(3,1fr)}.tester .btn{align-self:flex-start}@media (max-width: 900px){.rates{padding:16px}.tester .fields{grid-template-columns:1fr 1fr}}@media (max-width: 720px){:root{--gutter: 12px}.nav{flex-wrap:wrap;height:auto;gap:4px 12px;padding-top:6px}.nav__brand{margin-right:auto}.nav__user{order:2;gap:6px}.nav__user span{display:none}.nav__user .btn{min-height:36px;padding:6px 12px}.nav__links{order:3;flex:1 0 100%;gap:18px;overflow-x:auto;scrollbar-width:none}.nav__links::-webkit-scrollbar{display:none}.nav__links a{padding:10px 0}.btn{min-height:var(--tap)}.rowactions .btn{min-height:36px}.segmented{overflow-x:auto}.segmented button{min-height:40px;white-space:nowrap;flex:none}.zoom button{min-width:40px;height:36px}.field input,.field select,.field textarea{font-size:16px;min-height:var(--tap)}.queue__head h1{font-size:21px}.filters{margin:14px 0 12px}.queue__search{max-width:none;font-size:16px;min-height:var(--tap)}.tablewrap{margin:0 calc(var(--gutter) * -1);padding:0 var(--gutter)}.tablewrap .table{min-width:720px}.queue .tablewrap .table{min-width:900px}.signin__card{padding:24px 20px}.codeinput{letter-spacing:6px}.review--loading{padding:24px var(--gutter)}.review__canvas{max-height:45vh;padding:8px}.review__panel{overflow:visible;padding:16px var(--gutter) 0}.review__header{flex-wrap:wrap}.review__actions{bottom:0;margin:0 calc(var(--gutter) * -1);padding:8px var(--gutter) calc(8px + env(safe-area-inset-bottom))}.review__actions .btn{flex:1 1 auto}.modal{place-items:end center}.modal__body{padding:20px 16px}.modal__actions .btn{flex:1 1 auto}.closebar{padding:12px}.closebar .field{flex:1 1 100%}.closebar .btn{flex:1 1 100%;height:auto}.bookcard strong{font-size:26px}.sectionhead{margin-top:24px;padding-top:16px}.rates{padding:16px var(--gutter) 48px}.tester{padding:14px}.tester .fields{grid-template-columns:1fr}.tester .btn{align-self:stretch}}@media (max-width: 400px){.weights__row{grid-template-columns:1fr}}@media (prefers-reduced-motion: reduce){*{transition:none!important}}.shortcuts{margin-top:16px;padding:14px 16px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface)}.shortcuts h2{font-size:15px;margin:0 0 8px}.shortcuts dl{display:grid;grid-template-columns:max-content 1fr;gap:6px 14px;margin:0 0 8px}.shortcuts dt,.shortcuts dd{margin:0}kbd{display:inline-block;padding:1px 7px;border:1px solid var(--border);border-bottom-width:2px;border-radius:var(--radius-sm);font:600 12px/1.6 ui-monospace,SFMono-Regular,Consolas,monospace;color:var(--text);white-space:nowrap}
