.tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:14px}.tile{display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--line);border-top:3px solid var(--line-strong);border-radius:var(--radius);box-shadow:var(--shadow);padding:12px 14px;min-width:0}.tile-red{border-top-color:var(--red)}.tile-green{border-top-color:var(--green)}.tile-blue{border-top-color:var(--blue)}.tile-amber{border-top-color:var(--amber)}.tile-label{font-size:.78rem;font-weight:600;color:var(--ink-3)}.tile-value{font-size:1.6rem;font-weight:800;letter-spacing:-.03em;line-height:1.1;margin-top:3px;font-variant-numeric:tabular-nums}.tile-red .tile-value{color:var(--red)}.tile-green .tile-value{color:var(--green)}.tile-sub{font-size:.76rem;color:var(--ink-3);margin-top:3px;overflow:hidden;text-overflow:ellipsis}.attention{background:var(--surface);border:1px solid var(--red-line);border-left:4px solid var(--red);border-radius:var(--radius);box-shadow:var(--shadow);margin-bottom:14px;overflow:hidden}.attention-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:11px 14px;background:var(--red-tint);border-bottom:1px solid var(--red-line)}.attention-head strong{font-size:.87rem;color:var(--red-dark);flex:1 1 auto;min-width:0}.attention-row{display:grid;grid-template-columns:1fr auto;grid-template-areas:"who    amount" "why    action";gap:4px 12px;align-items:center;padding:11px 14px;border-bottom:1px solid var(--line)}.attention-row:last-of-type{border-bottom:none}.attention-who{grid-area:who;font-size:.88rem;font-weight:600;min-width:0}.attention-who small{display:block;font-weight:400;font-size:.76rem;color:var(--ink-3);margin-top:1px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.attention-why{grid-area:why;font-size:.79rem;color:var(--red);font-weight:600;min-width:0}.attention-amount{grid-area:amount;font-size:.92rem;font-weight:700;text-align:right;white-space:nowrap}.attention-row .btn{grid-area:action;justify-self:end}.attention-more{padding:10px 14px;border-top:1px solid var(--line);background:var(--surface-2);font-size:.8rem;color:var(--ink-3)}.linkish{background:none;border:none;padding:0;color:var(--blue);font:inherit;font-weight:600;text-decoration:underline}.groups{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;align-items:start;margin-bottom:12px}.group-count{font-size:.74rem;font-weight:700;color:var(--ink-3);background:var(--surface-3);border:1px solid var(--line);padding:1px 8px;border-radius:10px}.group-row{display:grid;grid-template-columns:7px minmax(0,1fr) auto;grid-template-areas:"dot name    switch" ".   meta    outcome";align-items:center;gap:2px 10px;padding:10px 14px;border-bottom:1px solid var(--line);cursor:pointer;text-align:left;width:100%}.group-row:last-child{border-bottom:none;border-radius:0 0 var(--radius) var(--radius)}.group-row:hover{background:var(--surface-2)}.group-row.is-dim .group-name{color:var(--ink-3);font-weight:500}.group-row.is-dim .group-meta{color:#9aa8b4}.group-row .dot{grid-area:dot}.group-name{grid-area:name;font-size:.88rem;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.group-meta{grid-area:meta;font-size:.76rem;color:var(--ink-3);font-variant-numeric:tabular-nums;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.group-outcome{grid-area:outcome;font-size:.76rem;font-weight:600;color:var(--ink-3);text-align:right;white-space:nowrap}.group-outcome.is-bad{color:var(--red)}.group-switch{grid-area:switch;justify-self:end}.group-switch-gap{grid-area:switch}.system{margin-bottom:12px}.system-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));background:var(--surface)}.system-grid>div{padding:11px 14px;min-width:0;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.system-grid>div:nth-child(2n){border-right:none}.system-label{display:block;font-size:.74rem;font-weight:600;color:var(--ink-3)}.system-value{display:block;font-size:1rem;font-weight:700;margin-top:2px;font-variant-numeric:tabular-nums}.system-value.is-good{color:var(--green)}.system-value.is-bad{color:var(--red)}.system-sub{display:block;font-size:.74rem;color:var(--ink-3);margin-top:1px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.system-links{padding:11px 14px;border-top:1px solid var(--line);background:var(--surface-2);display:flex;flex-wrap:wrap;gap:8px 16px;font-size:.8rem;border-radius:0 0 var(--radius) var(--radius)}.run-result-header{display:flex;align-items:center;gap:10px;margin-bottom:14px;flex-wrap:wrap}.run-summary{font-size:.87rem;color:var(--ink-2)}.run-steps{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:var(--radius-sm);overflow:hidden}.run-step{display:flex;align-items:flex-start;gap:10px;padding:9px 12px;font-size:.83rem;border-bottom:1px solid var(--line)}.run-step:last-child{border-bottom:none}.run-step:nth-child(2n){background:var(--surface-2)}.run-step-icon{font-size:.85rem;line-height:1.4;flex-shrink:0;width:14px;text-align:center}.run-step-body{display:flex;flex-direction:column;gap:1px;min-width:0}.run-step-name{font-weight:600}.run-step-detail{color:var(--ink-3);font-size:.79rem;word-break:break-word}.step-ok{color:var(--green)}.step-err{color:var(--red)}.step-skip{color:var(--ink-3)}@media(min-width:560px){.attention-row{grid-template-columns:minmax(0,1fr) minmax(0,auto) 92px auto;grid-template-areas:"who why amount action";gap:14px}.attention-why{text-align:right}.system-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.system-grid>div:nth-child(2n){border-right:1px solid var(--line)}.system-grid>div:nth-child(3n){border-right:none}}@media(min-width:800px){.tiles{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.tile{padding:14px 16px}.tile-value{font-size:1.75rem}.groups{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.group-row{grid-template-columns:7px minmax(0,1fr) auto auto auto;grid-template-areas:"dot name meta outcome switch";gap:12px;padding:9px 16px}.group-outcome{width:72px}.system-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.system-grid>div:nth-child(2n),.system-grid>div:nth-child(3n){border-right:1px solid var(--line)}.system-grid>div:nth-child(4n){border-right:none}}@media(pointer:coarse){.group-switch input{top:-11px;right:-11px;bottom:-11px;left:-11px;width:auto;height:auto}.attention-row .btn,.attention-head .btn{min-height:38px}.group-row{padding-top:12px;padding-bottom:12px}}.modal-wide{width:min(660px,100%)}.ge-intro{margin-bottom:16px}.ge-heading{font-size:.8rem;font-weight:700;color:var(--ink-3);margin:18px 0 8px}.ge-heading:first-of-type{margin-top:0}.ge-groups{display:flex;flex-direction:column;gap:8px}.ge-group{display:flex;flex-wrap:wrap;gap:8px;align-items:center;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius-sm);padding:8px}.ge-group input{flex:1 1 180px;min-width:0;background:var(--surface)}.ge-group-actions{display:flex;gap:6px;margin-left:auto}.ge-add{margin-top:10px}.ge-assign{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:var(--radius-sm);overflow:hidden}.ge-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:9px 12px;border-bottom:1px solid var(--line)}.ge-row:last-child{border-bottom:none}.ge-row:nth-child(2n){background:var(--surface-2)}.ge-row-name{flex:1 1 150px;font-size:.85rem;font-weight:600;min-width:0}.ge-row select{flex:0 1 200px;width:auto;min-width:150px}.ge-error{margin-top:14px}@media(max-width:480px){.ge-row-name{flex-basis:100%}.ge-row select{flex:1 1 100%}.ge-group input{flex-basis:100%}.ge-group-actions{margin-left:0}}.logs-page{display:flex;flex-direction:column}.logs-heading{flex:1 1 auto;min-width:0}.logs-note{font-size:.82rem;color:var(--ink-3);margin-bottom:14px}.logs-note.is-clear{color:var(--green);font-weight:600}.logs-day{font-size:.75rem;font-weight:700;color:var(--ink-3);margin:18px 0 8px}.logs-day:first-of-type{margin-top:0}.logs-list{display:flex;flex-direction:column;gap:6px}.logs-row{overflow:hidden}.logs-row.is-error{border-left:3px solid var(--red)}.logs-summary{display:grid;grid-template-columns:auto auto minmax(0,1fr) auto;grid-template-areas:"pill time took chevron" "text text text text";gap:4px 10px;align-items:center;width:100%;background:none;border:none;padding:11px 14px;text-align:left;font:inherit;color:inherit}.logs-summary:hover{background:var(--surface-2)}.logs-summary .pill{grid-area:pill}.logs-time{grid-area:time;font-size:.8rem;color:var(--ink-2);font-variant-numeric:tabular-nums;white-space:nowrap}.logs-took{grid-area:took;font-size:.76rem;color:var(--ink-3);font-variant-numeric:tabular-nums;white-space:nowrap}.logs-text{grid-area:text;font-size:.82rem;color:var(--ink-2);min-width:0;overflow:hidden;text-overflow:ellipsis}.logs-chevron{grid-area:chevron;color:var(--ink-3);font-size:.8rem}.logs-detail{border-top:1px solid var(--line);background:var(--surface-2);padding:12px 14px}.logs-step{display:flex;align-items:flex-start;gap:9px;padding:5px 0;font-size:.82rem}.logs-step .dot{margin-top:6px}.logs-step-name{font-weight:600}.logs-step-detail{color:var(--ink-3);font-size:.79rem;word-break:break-word}@media(min-width:720px){.logs-summary{grid-template-columns:74px 78px minmax(0,1fr) 60px 16px;grid-template-areas:"pill time text took chevron";gap:12px;padding:10px 14px}.logs-took{text-align:right}.logs-text{white-space:nowrap}}.config-page{display:flex;flex-direction:column}.config-heading{flex:1 1 auto;min-width:0}.config-body{max-width:860px;display:flex;flex-direction:column;gap:16px}.config-fields{display:flex;flex-direction:column;gap:12px}.push-panel-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.detail-page{display:flex;flex-direction:column;gap:16px}.detail-page>.page-head,.detail-page>.tabs{margin-bottom:0}.detail-title{flex:1 1 12rem;min-width:0}.detail-back{flex-shrink:0}.detail-page>.page-head>.page-head-actions{width:100%;margin-left:0}.detail-page>.page-head>.page-head-actions .btn{flex:1 1 auto}@media(min-width:560px){.detail-page>.page-head>.page-head-actions{width:auto;margin-left:auto}.detail-page>.page-head>.page-head-actions .btn{flex:0 0 auto}}.tab-content{display:flex;flex-direction:column;gap:16px;max-width:860px}.tab-desc{color:var(--ink-2);font-size:.875rem;line-height:1.6;max-width:70ch}.section{display:flex;flex-direction:column;gap:10px}.section-title{font-size:.95rem;font-weight:700;letter-spacing:-.01em}.form-stack{display:flex;flex-direction:column;gap:16px}.field-label-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.input-num{width:6rem}.input-inline{display:flex;gap:8px;align-items:center}.input-inline input{flex:1 1 auto;min-width:0}.btn-standalone{align-self:flex-start}.choices{display:flex;flex-wrap:wrap;gap:6px}.btn.is-on{background:var(--blue);border-color:var(--blue);color:#fff}.btn.is-on:hover:not(:disabled){background:var(--blue-dark);border-color:var(--blue-dark)}.test-sales{display:flex;flex-direction:column;gap:10px}.test-sale-item{overflow:hidden}.test-sale-row{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"ref  chev" "name chev" "meta chev";align-items:center;gap:1px 12px;width:100%;padding:11px 14px;background:none;color:inherit;text-align:left;border-radius:var(--radius)}.test-sale-row:hover:not(:disabled){background:var(--surface-2)}.test-sale-row.running{opacity:.6}.test-sale-ref{grid-area:ref;font-weight:700;font-size:.85rem;font-variant-numeric:tabular-nums}.test-sale-name{grid-area:name;font-size:.875rem;color:var(--ink-2);min-width:0;overflow-wrap:anywhere}.test-sale-meta{grid-area:meta;font-size:.78rem;color:var(--ink-3);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.expand-chevron{grid-area:chev;color:var(--ink-3);font-size:.7rem}@media(min-width:700px){.test-sale-row{grid-template-columns:5.5rem minmax(0,1fr) minmax(0,auto) auto;grid-template-areas:"ref name meta chev";gap:12px}}.edit-panel{border-top:1px solid var(--line);background:var(--surface-2);padding:14px;display:flex;flex-direction:column;gap:14px}.edit-fields{display:grid;grid-template-columns:minmax(0,1fr);gap:10px}.edit-field{display:flex;flex-direction:column;gap:3px;min-width:0}.edit-field .field-label{font-size:.76rem;font-weight:600;color:var(--ink-3)}.edit-field.modified input{border-color:var(--blue)}@media(min-width:560px){.edit-fields{grid-template-columns:repeat(2,minmax(0,1fr))}}.test-sale-dropdown{display:flex;flex-direction:column;gap:12px}.test-result{border:1px solid var(--green-line);background:var(--green-tint);border-radius:var(--radius-sm);padding:12px 14px}.test-result.status-error{border-color:var(--red-line);background:var(--red-tint)}.test-result-header{display:flex;align-items:center;gap:10px;margin-bottom:10px;flex-wrap:wrap}.test-result-summary{font-size:.875rem;font-weight:600}.test-result-steps{display:flex;flex-direction:column;gap:8px}.result-step{display:flex;gap:10px;align-items:flex-start}.result-step .dot{margin-top:7px}.result-step-name{font-size:.875rem;font-weight:600}.result-step-detail{color:var(--ink-3);font-size:.8rem;margin-top:1px;overflow-wrap:anywhere}.import-preview{min-height:1.2em}.map-list{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}.map-head{display:none}.map-row{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"name   action" "id     edit" "dest   dest";align-items:center;gap:5px 12px;padding:11px 14px;font-size:.875rem}.map-row+.map-row{border-top:1px solid var(--line)}.map-row:hover:not(.editing){background:var(--surface-2)}.map-row.editing{display:block;background:var(--surface-2);padding:14px}.map-id{grid-area:id;justify-self:start}.map-name{grid-area:name;font-weight:600;min-width:0;overflow-wrap:anywhere}.map-action{grid-area:action;justify-self:end}.map-dest{grid-area:dest;font-size:.8rem;color:var(--ink-3);min-width:0;overflow-wrap:anywhere}.map-edit{grid-area:edit;justify-self:end}@media(min-width:700px){.map-head,.map-row{grid-template-columns:4.5rem minmax(0,1fr) 6rem minmax(0,1.2fr) auto;grid-template-areas:"id name action dest edit";gap:12px}.map-head{display:grid;align-items:center;padding:9px 14px;background:var(--surface-2);border-bottom:1px solid var(--line);font-size:.735rem;font-weight:700;color:var(--ink-3)}.map-row:first-child{border-top:none}.map-action,.map-edit{justify-self:start}.map-edit{justify-self:end}}.row-editor{display:flex;flex-direction:column;gap:12px}.row-editor-title{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:.9rem;font-weight:700}.radio-group{display:flex;flex-direction:column;gap:8px}.radio-label{display:flex;align-items:flex-start;gap:8px;font-size:.875rem;cursor:pointer}.radio-label input[type=radio],.radio-label input[type=checkbox]{accent-color:var(--blue);width:auto;margin-top:3px;flex:none}.radio-note{margin-left:24px}.list-bar{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.list-bar .spacer{margin-left:auto}.feed-list{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}.feed-head{display:none}.feed-row{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"name    opts" "cal     cal" "actions actions";gap:6px 12px;padding:12px 14px;font-size:.875rem}.feed-row+.feed-row{border-top:1px solid var(--line)}.feed-row:hover:not(.editing){background:var(--surface-2)}.feed-row.editing{display:block;background:var(--surface-2);padding:14px}.feed-name{grid-area:name;font-weight:600;min-width:0;overflow-wrap:anywhere}.feed-cal{grid-area:cal;font-size:.8rem;color:var(--ink-3);min-width:0;overflow-wrap:anywhere}.feed-opts{grid-area:opts;display:flex;gap:4px;flex-wrap:wrap;justify-self:end}.feed-actions{grid-area:actions;display:flex;gap:6px;align-items:center;flex-wrap:wrap}@media(min-width:700px){.feed-head,.feed-row{grid-template-columns:minmax(0,1fr) minmax(0,1.4fr) minmax(0,auto) auto;grid-template-areas:"name cal opts actions";align-items:center;gap:12px}.feed-head{display:grid;padding:9px 14px;background:var(--surface-2);border-bottom:1px solid var(--line);font-size:.735rem;font-weight:700;color:var(--ink-3)}.feed-cal{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.feed-opts,.feed-actions{justify-self:end}.feed-actions{flex-wrap:nowrap}}.feed-form{display:flex;flex-direction:column;gap:12px}.feed-form-fields{display:grid;grid-template-columns:minmax(0,1fr);gap:12px}.feed-form-full{grid-column:1 / -1}@media(min-width:560px){.feed-form-fields{grid-template-columns:repeat(2,minmax(0,1fr))}}.fieldmap{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}.fieldmap-head,.fieldmap-row{display:grid;grid-template-columns:minmax(0,1fr) 3.6rem 3.6rem;align-items:center;gap:8px}.fieldmap-head{padding:8px 14px;background:var(--surface-2);border-bottom:1px solid var(--line);font-size:.72rem;font-weight:700;color:var(--ink-3)}.fieldmap-col{text-align:center;line-height:1.25}.fieldmap-row{padding:9px 14px;font-size:.875rem}.fieldmap-row+.fieldmap-row{border-top:1px solid var(--line)}.fieldmap-row:hover{background:var(--surface-2)}.fieldmap-label{font-weight:500;min-width:0}.fieldmap-check{display:flex;justify-content:center}.fieldmap-check input[type=checkbox]{width:auto;accent-color:var(--blue);cursor:pointer}@media(min-width:560px){.fieldmap-head,.fieldmap-row{grid-template-columns:minmax(0,1fr) 8.5rem 8.5rem}}.cap-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:6px}@media(min-width:560px){.cap-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}}.cap-chip{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 10px;min-width:0;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-sm);box-shadow:var(--shadow);font-size:.85rem;font-weight:600;color:var(--ink);text-align:left}.cap-chip:hover:not(:disabled){border-color:var(--line-strong);background:var(--surface-2)}.cap-chip.on{border-color:var(--green-line)}.cap-chip-label{display:flex;align-items:center;gap:6px;min-width:0}.cap-chip .pill{flex:none}.cap-help{font-size:.875rem}.cap-help summary{cursor:pointer;color:var(--ink-2);font-weight:600}.cap-help dl{margin-top:10px}.cap-help dt{display:flex;align-items:center;gap:6px;font-weight:700;margin-top:12px}.cap-help dd{margin-top:2px;color:var(--ink-3);line-height:1.55}.cap-feeds{color:var(--blue)}.review-queue{display:flex;flex-direction:column;gap:10px}.review-row{display:flex;flex-direction:column;gap:8px}.review-row-header{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.review-supplier{font-weight:700;flex:1 1 auto;min-width:0}.review-findings{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px;font-size:.85rem;color:var(--ink-2)}.review-findings li{display:flex;gap:6px;align-items:baseline;flex-wrap:wrap;overflow-wrap:anywhere}.tab-content .inline-error{overflow-wrap:anywhere}.row-expand{background:none;color:var(--ink-3);padding:3px 6px;border-radius:var(--radius-sm);line-height:1}.row-expand:hover{color:var(--ink);background:var(--surface-3)}.row-dismiss{margin-left:8px}.detail-row>td{background:var(--surface-2)}.detail-panel{display:flex;flex-direction:column;gap:10px}.ba-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:16px}.ba-grid h4{font-size:.78rem;font-weight:700;color:var(--ink-3);margin-bottom:4px}@media(min-width:720px){.ba-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.line-table{width:100%;border-collapse:collapse;font-size:.8rem}.line-table td{padding:3px 6px;vertical-align:top}.line-table td.num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.data-table.stack-table,.data-table.stack-table>tbody,.data-table.stack-table>tbody>tr,.data-table.stack-table>tbody>tr>td{display:block;width:100%}.data-table.stack-table>thead{display:none}.data-table.stack-table>tbody>tr.clickable{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:10px 12px;margin-bottom:8px}.data-table.stack-table>tbody>tr>td{display:flex;justify-content:space-between;align-items:baseline;gap:12px;border:none;padding:3px 0;text-align:left;overflow-wrap:anywhere}.data-table.stack-table>tbody>tr>td[data-label]:before{content:attr(data-label);flex:none;font-size:.72rem;font-weight:700;letter-spacing:.03em;color:var(--ink-3)}.data-table.stack-table>tbody>tr>td.cell-wide{display:block;overflow-wrap:anywhere}.data-table.stack-table>tbody>tr>td.cell-wide:before{display:block;margin-bottom:2px}.data-table.stack-table>tbody>tr>td.num{text-align:left}.data-table.stack-table>tbody>tr>td:not([data-label]){justify-content:flex-end;padding:0}.data-table.stack-table>tbody>tr.clickable.is-open{margin-bottom:0;border-bottom:none;border-radius:var(--radius) var(--radius) 0 0}.data-table.stack-table>tbody>tr.detail-row{background:var(--surface);border:1px solid var(--line);border-top:none;border-radius:0 0 var(--radius) var(--radius);box-shadow:var(--shadow);padding:0 12px 12px;margin-bottom:8px}.data-table.stack-table>tbody>tr.detail-row>td{display:block;padding:10px 0 0;background:none;border-top:1px solid var(--line)}.total-cell{display:flex;flex-direction:column;gap:1px;align-items:flex-end;min-width:0}.total-cell .muted{font-size:.76rem}@media(min-width:760px){.data-table.stack-table{display:table}.data-table.stack-table>thead{display:table-header-group}.data-table.stack-table>tbody{display:table-row-group}.data-table.stack-table>tbody>tr,.data-table.stack-table>tbody>tr.clickable{display:table-row;border:none;border-radius:0;box-shadow:none;padding:0;margin:0;background:none}.data-table.stack-table>tbody>tr.clickable:hover{background:var(--surface-2)}.data-table.stack-table>tbody>tr>td,.data-table.stack-table>tbody>tr>td.cell-wide,.data-table.stack-table>tbody>tr>td:not([data-label]){display:table-cell;padding:11px 16px;border-bottom:1px solid var(--line)}.data-table.stack-table>tbody>tr>td[data-label]:before{content:none}.data-table.stack-table>tbody>tr>td.num{text-align:right}.data-table.stack-table>tbody>tr.detail-row>td{display:table-cell;padding:12px 16px;background:var(--surface-2)}.row-dismiss{opacity:.45}.data-table.stack-table>tbody>tr:hover .row-dismiss{opacity:1}}@media(min-width:760px){.data-table.stack-table.albert-days>tbody>tr>td{width:1%;white-space:nowrap;overflow-wrap:normal}.data-table.stack-table.albert-days>tbody>tr>td.cell-wide{width:auto;white-space:normal;overflow-wrap:normal}.data-table.stack-table.albert-days>tbody>tr:last-child>td{border-bottom:none}}.albert-manual-row{display:flex;flex-wrap:wrap;gap:12px 16px;align-items:flex-end}.albert-manual-row input[type=date]{width:11rem}.albert-manual-row .albert-manual-note{flex:1 1 16rem}.upload-drop{border:2px dashed var(--line-strong);border-radius:var(--radius);background:var(--surface-2);padding:22px 16px;text-align:center;color:var(--ink-2);font-size:.875rem;cursor:pointer}.upload-drop:hover,.upload-drop.dragging{border-color:var(--blue);background:var(--blue-tint);color:var(--ink)}.upload-results{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px;font-size:.85rem}.upload-results li{display:flex;gap:6px;align-items:baseline;overflow-wrap:anywhere}.upload-ok{color:var(--green)}.upload-fail{color:var(--red)}.billto{display:flex;flex-direction:column;gap:8px}.pick{display:flex;flex-direction:column;gap:6px}.pick-results{max-height:200px;overflow-y:auto;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-sm)}.pick-option{display:block;width:100%;text-align:left;background:none;color:var(--ink-2);padding:8px 10px;font-size:.85rem;border-radius:0}.pick-option+.pick-option{border-top:1px solid var(--line)}.pick-option:hover:not(:disabled){background:var(--surface-2);color:var(--ink)}.pick-empty{padding:8px 10px}.capture-controls{display:flex;flex-direction:column;gap:8px}@media(min-width:700px){.capture-controls{flex-direction:row;align-items:center}.capture-controls>input{flex:1 1 220px;min-width:0}}.fix-panel{margin-top:12px;padding-top:12px;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:14px}.fix-block{display:flex;flex-direction:column;gap:6px}.fix-lede{font-size:.875rem;line-height:1.55}@media(pointer:coarse){.btn-sm{min-height:36px}.tab{padding-top:13px;padding-bottom:13px}.cap-chip{min-height:42px}.fieldmap-check input[type=checkbox],.radio-label input[type=radio],.radio-label input[type=checkbox]{width:20px;height:20px}.row-expand{min-height:34px;min-width:34px}.row-dismiss{opacity:1}.pick-option{min-height:38px}}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px 16px}.login-card{width:100%;max-width:380px;display:flex;flex-direction:column;gap:20px;padding:24px 20px}.login-logo{display:block;width:150px;height:20px;flex-shrink:0;background-color:var(--nav);-webkit-mask:url(/logo.png) left center / contain no-repeat;mask:url(/logo.png) left center / contain no-repeat}.login-head{display:flex;flex-direction:column;gap:3px}.login-title{font-size:1.3rem;font-weight:700;letter-spacing:-.02em;line-height:1.25}.login-form{display:flex;flex-direction:column;gap:16px}.login-form input{font-size:.9rem;padding:9px 12px}.login-code{font-variant-numeric:tabular-nums;letter-spacing:.28em}.login-submit{width:100%;padding:10px 14px;font-size:.9rem;margin-top:2px}@media(min-width:560px){.login-card{padding:32px 28px;gap:22px}}@media(pointer:coarse){.login-form input,.login-submit{min-height:42px}}.details-page{max-width:620px;margin:0 auto;padding:24px 16px 48px;display:flex;flex-direction:column;gap:16px}.details-logo{display:block;width:150px;height:20px;flex-shrink:0;background-color:var(--nav);-webkit-mask:url(/logo.png) left center / contain no-repeat;mask:url(/logo.png) left center / contain no-repeat}.details-head{display:flex;flex-direction:column;gap:6px}.details-title{font-size:1.45rem;font-weight:700;letter-spacing:-.02em;line-height:1.2}.details-lede{font-size:.95rem;line-height:1.6;color:var(--ink-2);max-width:62ch}.details-panel{display:flex;flex-direction:column;gap:14px}.details-step-head{display:flex;align-items:center;gap:10px}.details-step-num{width:26px;height:26px;flex-shrink:0;border-radius:50%;background:var(--blue-tint);border:1px solid var(--blue-line);color:var(--blue);font-size:.85rem;font-weight:700;display:inline-flex;align-items:center;justify-content:center}.details-step-title{font-size:1.1rem;font-weight:700;letter-spacing:-.015em;line-height:1.25}.details-steps{margin:0;padding-left:22px;display:flex;flex-direction:column;gap:6px;font-size:.95rem;line-height:1.5;color:var(--ink-2);max-width:62ch}.details-existing{display:flex;flex-direction:column;gap:8px;padding:12px;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius)}.details-existing-label{font-size:.8rem;font-weight:600;color:var(--ink-3)}.details-existing-img{display:block;width:240px;max-width:100%;height:auto;border-radius:var(--radius-sm);border:1px solid var(--line)}.details-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px}.details-thumb{position:relative;display:flex;flex-direction:column;gap:8px;padding:8px;min-width:0;text-align:left;background:var(--surface);border:2px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);transition:border-color .12s,background .12s}.details-thumb:hover{border-color:var(--line-strong)}.details-thumb.is-selected{border-color:var(--blue);background:var(--blue-tint)}.details-thumb.is-selected:after{content:"✓";position:absolute;top:6px;right:6px;width:24px;height:24px;border-radius:50%;background:var(--blue);color:#fff;font-size:.8rem;font-weight:700;display:flex;align-items:center;justify-content:center}.details-thumb-img{display:block;width:100%;aspect-ratio:4 / 3;object-fit:cover;border-radius:var(--radius-sm);background:var(--surface-3)}.details-thumb-label{font-size:.8rem;line-height:1.35;color:var(--ink-2);overflow-wrap:anywhere}.details-thumb-fallback{display:flex;align-items:center;justify-content:center;padding:8px;text-align:center}.details-thumb-fail{font-size:.75rem;color:var(--ink-3)}.details-thumb:disabled{cursor:default}.details-thumb.is-failed{border-color:var(--red-line);background:var(--red-tint)}.details-thumb.is-failed .details-thumb-fail{color:var(--red);font-weight:600}.details-thumb-retry{align-self:flex-start;max-width:100%;padding:6px 10px;font-size:.8rem}.details-upload{display:flex;flex-direction:column;align-items:flex-start;gap:10px;padding-top:14px;border-top:1px solid var(--line)}.details-upload-label{font-size:.9rem;color:var(--ink-2)}.details-upload-btn{position:relative;overflow:hidden}.details-upload-btn:focus-within{outline:2px solid var(--blue);outline-offset:2px}.details-file-input{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer}.details-preview{display:flex;align-items:center;gap:10px;padding:8px;max-width:100%;background:var(--blue-tint);border:2px solid var(--blue);border-radius:var(--radius)}.details-preview img{width:84px;aspect-ratio:4 / 3;object-fit:cover;border-radius:var(--radius-sm);flex-shrink:0}.details-preview span{font-size:.8rem;color:var(--ink-2);overflow-wrap:anywhere}.details-submit{width:100%;padding:12px 16px;font-size:.95rem}.details-note{text-align:center}.details-w3w-link{align-self:flex-start}.details-w3w-input{font-size:1rem;padding:11px 13px;max-width:320px}.details-newtab{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.details-footer{margin-top:4px}@media(min-width:560px){.details-page{padding:32px 24px 64px;gap:18px}.details-title{font-size:1.6rem}.details-submit{width:auto;align-self:flex-start}.details-note{text-align:left}}@media(pointer:coarse){.details-page .btn,.details-w3w-input{min-height:46px}.details-thumb{padding:10px}}.check-page{max-width:480px;margin:0 auto;padding:20px 16px 48px;display:flex;flex-direction:column;gap:16px}.check-page .check-logo{display:block;width:150px;height:20px;flex-shrink:0;background-color:var(--nav);-webkit-mask:url(/logo.png) left center / contain no-repeat;mask:url(/logo.png) left center / contain no-repeat}.check-page .check-head{display:flex;flex-direction:column;gap:4px}.check-page .check-title{font-size:1.4rem;font-weight:700;letter-spacing:-.02em;line-height:1.2}.check-page .check-lede{font-size:.92rem;line-height:1.55;color:var(--ink-2)}.check-page .check-panel{display:flex;flex-direction:column;gap:14px;padding:16px}.check-page .check-select,.check-page .check-input{min-height:48px;font-size:16px}.check-page .check-odometer{font-family:IBM Plex Mono,ui-monospace,monospace;letter-spacing:.02em}.check-page .check-btn-lg{min-height:52px;font-size:.95rem;width:100%}.check-page .check-van{flex-direction:row;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.check-page .check-van-display{display:flex;flex-direction:column;gap:2px;min-width:0}.check-page .check-reg{font-family:IBM Plex Mono,ui-monospace,monospace;font-size:1.6rem;font-weight:700;letter-spacing:.04em;color:var(--ink);line-height:1.1;word-break:break-all}.check-page .check-change-van{min-height:48px;flex-shrink:0}.check-page .check-van-picker{flex:1 1 auto}.check-page .check-cancel-change{min-height:40px;align-self:flex-start}.check-page .check-note{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius-sm);padding:10px 12px;font-size:.85rem;line-height:1.45;color:var(--ink-2)}.check-page .check-note-warn{background:var(--amber-tint);border-color:color-mix(in srgb,var(--amber) 30%,transparent);color:var(--ink)}.check-page .check-note-dismiss{flex-shrink:0;background:none;border:none;padding:6px 4px;min-height:32px;font-size:.85rem;font-weight:700;color:var(--blue-dark);text-decoration:underline}.check-page .check-offroad{flex-basis:100%;display:flex;flex-direction:column;gap:4px;background:var(--red-tint);border:1px solid var(--red-line);border-left:3px solid var(--red);border-radius:var(--radius-sm);padding:10px 12px}.check-page .check-offroad-title{margin:0;font-size:1rem;font-weight:700;color:var(--red-dark)}.check-page .check-offroad-body{margin:0;font-size:.9rem;line-height:1.45;color:var(--ink)}.check-page .check-sticky-offroad{margin:0;font-size:.82rem;font-weight:700;color:var(--red-dark)}.check-page .check-offroad-unknown{flex-basis:100%;display:flex;flex-direction:column;gap:4px;background:var(--amber-tint);border:1px solid color-mix(in srgb,var(--amber) 30%,transparent);border-left:3px solid var(--amber);border-radius:var(--radius-sm);padding:10px 12px}.check-page .check-offroad-unknown-title{margin:0;font-size:1rem;font-weight:700;color:var(--ink)}.check-page .check-offroad-unknown-body{margin:0;font-size:.9rem;line-height:1.45;color:var(--ink)}.check-page .check-sticky-offroad-unknown{margin:0;font-size:.82rem;font-weight:700;color:var(--ink)}.check-page .check-checklist-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.check-page .check-section-title{font-size:1rem;font-weight:700;letter-spacing:-.01em}.check-page .check-all-ok{min-height:48px;padding:7px 18px;font-size:16px;font-weight:700;background:var(--green-tint);border-color:var(--green-line);color:var(--green)}.check-page .check-all-ok:hover:not(:disabled){background:color-mix(in srgb,var(--green-tint) 70%,var(--green-line));border-color:var(--green-line);color:var(--green)}.check-page .check-group{display:flex;flex-direction:column}.check-page .check-group-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px;padding:6px 0}.check-page .check-group-title{font-size:.78rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3)}.check-page .check-group-count{flex-shrink:0;font-size:.78rem;font-weight:700;font-variant-numeric:tabular-nums;color:var(--ink-3)}.check-page .check-group-count.is-done{color:var(--green)}.check-page .check-items{display:flex;flex-direction:column}.check-page .check-item{border-bottom:1px solid var(--line);padding:12px 0}.check-page .check-item:first-child{padding-top:4px}.check-page .check-item:last-child{border-bottom:none;padding-bottom:4px}.check-page .check-item-question{display:flex;flex-direction:column;gap:3px;min-width:0}.check-page .check-item-threshold{font-size:.8rem;line-height:1.4;color:var(--ink-2)}.check-page .check-item-attached{font-size:.78rem;font-weight:700;color:var(--blue-dark)}.check-page .check-item-row{display:flex;flex-direction:column;align-items:stretch;gap:8px}.check-page .check-item-label{font-size:.92rem;font-weight:600;color:var(--ink);min-width:0}.check-page button.check-item-label{background:none;border:none;padding:0;margin:0;text-align:left;font-family:inherit;font-size:.92rem;font-weight:600;color:var(--blue-dark);cursor:pointer}.check-page .check-verdicts{display:flex;gap:6px;width:100%}.check-page .check-verdict-btn{border-radius:var(--radius-sm);border:1px solid var(--line-strong);background:var(--surface);color:var(--ink-2);font-weight:700}.check-page .check-verdict-ok,.check-page .check-verdict-problem{flex:1 1 0;min-height:48px;min-width:68px;font-size:.9rem}.check-page .check-verdict-na{flex:0 0 44px;min-height:40px;padding:0 8px;font-size:.72rem;align-self:center}.check-page .check-verdict-ok.is-selected{background:var(--green-tint);border-color:var(--green-line);color:var(--green)}.check-page .check-verdict-problem.is-selected{background:var(--red-tint);border-color:var(--red-line);color:var(--red)}.check-page .check-verdict-na.is-selected{background:var(--surface-3);border-color:var(--line-strong);color:var(--ink-2)}.check-page .check-item-detail{margin-top:10px;display:flex;flex-direction:column;gap:10px;animation:check-detail-in .18s ease-out}@keyframes check-detail-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.check-page .check-defect-text{min-height:88px;font-family:inherit;font-size:16px;line-height:1.45}.check-page .check-detail-hint{font-size:.8rem;line-height:1.4;color:var(--ink-3);margin-top:-4px}.check-page .check-photo-error{font-size:.85rem;padding:8px 12px}.check-page .check-photo-cap{font-size:.78rem;line-height:1.4;color:var(--ink-3)}.check-page .check-photo-cap.is-full{color:var(--ink);font-weight:600;background:var(--amber-tint);border-radius:var(--radius-sm);padding:6px 8px}.check-page .check-photos{display:flex;flex-wrap:wrap;gap:8px;align-items:flex-start}.check-page .check-photo-thumb{position:relative;width:64px;height:64px;border-radius:var(--radius-sm);overflow:hidden;border:1px solid var(--line);flex-shrink:0}.check-page .check-photo-thumb img{width:100%;height:100%;object-fit:cover;display:block}.check-page .check-photo-remove{position:absolute;top:2px;right:2px;width:28px;height:28px;border-radius:50%;background:#152634b8;color:#fff;font-size:.75rem;display:flex;align-items:center;justify-content:center;border:none}.check-page .check-camera-btn{position:relative;overflow:hidden;width:64px;min-height:64px;display:flex;align-items:center;justify-content:center;text-align:center;font-size:.7rem;line-height:1.25;padding:4px;flex-shrink:0}.check-page .check-camera-btn:focus-within{outline:2px solid var(--blue);outline-offset:2px}.check-page .check-file-input{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer}.check-page .check-attached-list{display:flex;flex-direction:column;gap:10px;margin-bottom:4px}.check-page .check-attached{display:flex;flex-direction:column;gap:10px;padding:12px;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius-sm)}.check-page .check-attached-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.check-page .check-attached-title{font-size:.92rem;font-weight:700;color:var(--ink)}.check-page .check-attached-lede{font-size:.82rem;line-height:1.45;color:var(--ink-2)}.check-page .check-attached-flag{min-height:48px;font-size:16px;font-weight:700;width:100%;background:var(--red-tint);border-color:var(--red-line);color:var(--red)}.check-page .check-attached-flag:hover:not(:disabled){background:color-mix(in srgb,var(--red-tint) 70%,var(--red-line));border-color:var(--red-line);color:var(--red)}.check-page .check-attached-remove{flex-shrink:0;background:none;border:none;padding:6px 4px;min-height:32px;font-size:.85rem;font-weight:700;color:var(--red);text-decoration:underline}.check-page .check-photo-pending{display:flex;align-items:center;justify-content:center;background:var(--surface-2);border-style:dashed;font-size:.7rem;color:var(--ink-3);text-align:center}.check-page .check-answered-count{font-size:.8rem;text-align:center;margin-top:2px}.check-page .check-submit{min-height:56px;font-size:1.02rem;width:100%}.check-page .check-submit-hint{text-align:center;font-size:.8rem}.check-page .check-submit-error{margin-bottom:-4px}.check-page .check-sticky{position:fixed;left:0;right:0;bottom:0;z-index:20;background:var(--surface);border-top:1px solid var(--line);box-shadow:var(--shadow-lg);padding-bottom:env(safe-area-inset-bottom,0px);transition:transform .16s ease-out}.check-page .check-sticky.is-stowed{transform:translateY(110%);visibility:hidden;pointer-events:none}.check-page .check-sticky-inner{max-width:480px;margin:0 auto;display:flex;flex-direction:column;gap:8px;padding:8px max(16px,env(safe-area-inset-right,0px)) 8px max(16px,env(safe-area-inset-left,0px))}.check-page .check-sticky-row{display:flex;align-items:center;gap:12px}.check-page .check-sticky-status{flex:1 1 auto;min-width:0;font-size:.82rem;line-height:1.35;font-variant-numeric:tabular-nums;color:var(--ink-2)}.check-page .check-sticky-submit{flex:0 0 auto;min-height:56px;min-width:122px;font-size:1.02rem}.check-page .check-sticky-error{font-size:.85rem;padding:8px 12px}.check-page .check-sticky .check-sending{margin-top:0}.check-page .check-sticky-spacer{flex-shrink:0}.check-page .check-sending{display:flex;flex-direction:column;gap:8px;padding:14px 12px;margin-top:-4px;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius-sm)}.check-page .check-sending-bar{height:8px;border-radius:999px;overflow:hidden;background:var(--surface-3)}.check-page .check-sending-fill{display:block;height:100%;width:0;background:var(--blue);transition:width .25s ease-out}.check-page .check-sending-fill.is-indeterminate{width:35%;animation:check-sending-sweep 1.4s ease-in-out infinite}@keyframes check-sending-sweep{0%{transform:translate(-100%)}to{transform:translate(300%)}}.check-page .check-sending-text{font-size:.85rem;line-height:1.45;color:var(--ink)}.check-page .check-sending-detail{font-size:.8rem;color:var(--ink-3);font-family:IBM Plex Mono,ui-monospace,monospace;font-variant-numeric:tabular-nums}.check-page .check-sending-cancel{min-height:44px;align-self:flex-start;font-size:.85rem}.check-page .check-confirm-actions{display:flex;flex-direction:column;gap:10px}.check-page .check-driver-back{align-self:flex-start;min-height:40px}@media(min-width:560px){.check-page{padding:32px 24px 64px;gap:20px}.check-page .check-title{font-size:1.6rem}}.licence-page .licence-fieldset{border:0;margin:0;padding:0;display:flex;flex-direction:column;gap:8px;min-width:0}.licence-page .licence-hint{font-size:.82rem;line-height:1.4;color:var(--ink-3);margin:0}.licence-page .licence-choices{display:flex;flex-wrap:wrap;gap:8px}.licence-page .licence-choice{position:relative;flex:1 1 0;min-width:84px;min-height:48px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 12px;border:1px solid var(--line);border-radius:10px;background:var(--surface, #fff);font-size:.95rem;font-weight:600;cursor:pointer}.licence-page .licence-choice input{position:absolute;opacity:0;pointer-events:none}.licence-page .licence-choice.is-selected{border-color:var(--ink);background:var(--ink);color:#fff}.licence-page .licence-choice:focus-within{outline:2px solid var(--ink);outline-offset:2px}.licence-page .licence-file{gap:6px}.licence-page .licence-file-input{font-size:.95rem;min-height:48px;max-width:100%}.licence-page .licence-attached{display:flex;align-items:center;gap:10px;padding:8px;border:1px solid var(--line);border-radius:10px;min-width:0}.licence-page .licence-thumb{width:72px;height:48px;object-fit:cover;border-radius:6px;flex:0 0 auto}.licence-page .licence-pdf{width:72px;height:48px;flex:0 0 auto;border-radius:6px;display:grid;place-items:center;font-weight:700;font-size:.8rem;background:var(--amber-tint, #fdf3dc);color:var(--ink)}.licence-page .licence-attached-name{flex:1 1 auto;min-width:0;font-size:.85rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.licence-page .licence-remove{min-height:40px;flex:0 0 auto}.licence-page .licence-textarea{min-height:88px;resize:vertical}.licence-page .licence-short{max-width:120px}.licence-page .licence-mono{font-family:IBM Plex Mono,ui-monospace,monospace;letter-spacing:.06em}.licence-page .licence-scanned{font-size:.78rem;font-weight:600;color:var(--ink-2)}.licence-page .licence-scan-status{font-size:.82rem;line-height:1.4;margin:0;color:var(--ink-2)}.licence-page .licence-scan-status.is-manual{color:var(--ink-3)}.licence-page .licence-scanned.is-uncertain{color:var(--amber, #b7791f)}.licence-page .licence-missing-head{margin:0 0 4px;font-weight:700}.licence-page .licence-missing{margin:0;padding-left:18px;font-size:.9rem;line-height:1.5}.licence-page .licence-send{gap:12px}.bills-page .capture-documents,.bills-page .tab-content{max-width:none}.bills-page .upload-section{max-width:720px}@media(min-width:760px){.bills-page .capture-history{table-layout:fixed;width:100%}.bills-page .capture-history th:nth-child(1),.bills-page .capture-history td:nth-child(1){width:7.5rem}.bills-page .capture-history th:nth-child(2),.bills-page .capture-history td:nth-child(2){width:5rem}.bills-page .capture-history th:nth-child(3),.bills-page .capture-history td:nth-child(3){width:auto}.bills-page .capture-history th:nth-child(4),.bills-page .capture-history td:nth-child(4){width:17%}.bills-page .capture-history th:nth-child(5),.bills-page .capture-history td:nth-child(5){width:8.5rem}.bills-page .capture-history th:nth-child(6),.bills-page .capture-history td:nth-child(6){width:13.5rem}.bills-page .capture-history th:nth-child(7),.bills-page .capture-history td:nth-child(7){width:2.25rem}.bills-page .data-table.stack-table>tbody>tr>td.cell-document{display:table-cell;overflow-wrap:normal}.bills-page .cell-document .doc-name,.bills-page .cell-document>.muted{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.bills-page .when-date{display:block;color:var(--ink-2)}.bills-page .when-time{display:block;font-size:.75rem}.bills-page .capture-history th:nth-child(5),.bills-page .data-table.stack-table>tbody>tr>td[data-label=Total]{text-align:right}.bills-page .outcome-cell{display:flex;flex-wrap:wrap;align-items:center;gap:3px 6px}.bills-page .outcome-cell>.muted{order:3;flex-basis:100%;font-size:.75rem}.bills-page .outcome-cell>button{order:2}.bills-page .capture-history tbody tr.clickable:hover{background:var(--blue-tint)}}.bills-page .capture-history td[data-label=Supplier]{overflow-wrap:anywhere}.bills-page .doc-name{font-weight:600;color:var(--ink)}.bills-page .cell-document .doc-name,.bills-page .cell-document>.muted{display:block}.bills-page .capture-history td[data-label=When]{font-variant-numeric:tabular-nums}.bills-page .capture-history .total-cell>span:not(:first-child){display:block;font-size:.75rem;color:var(--ink-3);margin-top:1px}.bills-page .capture-history tbody tr.clickable.needs-attention{box-shadow:inset 3px 0 0 var(--red),var(--shadow)}@media(max-width:759px){.bills-page .capture-history tbody tr.clickable.needs-attention.is-open+tr.detail-row{box-shadow:inset 3px 0 0 var(--red),var(--shadow)}}@media(max-width:759px){.bills-page .when-date,.bills-page .when-time{display:inline}.bills-page .when-date:after{content:", "}}@media(min-width:760px){.bills-page .capture-history>tbody>tr:last-child>td{border-bottom:none}}.capture-live{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:10px 14px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);margin-bottom:12px}.capture-live .spacer{margin-left:auto}.capture-live .muted{font-size:.82rem}.capture-live .pill.running:before{display:none}.live-spinner{width:9px;height:9px;border:2px solid color-mix(in srgb,var(--blue) 30%,transparent);border-top-color:var(--blue);border-radius:50%;animation:live-spin .8s linear infinite;flex-shrink:0}@keyframes live-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.live-spinner{animation:none;border-top-color:var(--blue)}}.pc-sum-settings .pc-sum-trade{margin-top:14px}.pc-sum-settings .pc-sum-field{display:block;margin-top:14px;font-size:.8rem;font-weight:600}.pc-sum-settings .pc-sum-field>input{display:block;margin-top:4px;width:100%;max-width:26rem;font:inherit;font-weight:400;padding:6px 8px;border:1px solid var(--line);border-radius:4px;background:var(--surface)}.pc-sum-settings .pc-sum-field>input.num{max-width:8rem;text-align:right;font-variant-numeric:tabular-nums}.pc-sum-settings .pc-sum-hint,.pc-sum-settings .pc-sum-note{display:block;margin:5px 0 0;font-size:.78rem;font-weight:400;line-height:1.5;color:var(--ink-3);max-width:46rem}.pc-sum-settings .pc-sum-note{margin-top:14px}.pc-sum-settings .pc-sum-items{margin-top:8px}.pc-sum-settings .pc-sum-item-head,.pc-sum-settings .pc-sum-item-row{display:grid;grid-template-columns:minmax(0,1fr) 6rem 6rem 4rem 2rem;align-items:center;gap:8px;padding:4px 0}.pc-sum-settings .pc-sum-item-head{font-size:.7rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase;color:var(--ink-3);border-bottom:1px solid var(--line);padding-bottom:6px}.pc-sum-settings .pc-sum-item-row+.pc-sum-item-row{border-top:1px solid var(--line-soft, rgba(127, 127, 127, .14))}.pc-sum-settings .pc-sum-item-row input{font:inherit;font-size:.82rem;width:100%;padding:5px 7px;border:1px solid var(--line);border-radius:4px;background:var(--surface)}.pc-sum-settings .pc-sum-item-row input.money{text-align:right;font-variant-numeric:tabular-nums}.pc-sum-settings .pc-sum-margin{font-size:.78rem;color:var(--ink-3);text-align:right;font-variant-numeric:tabular-nums}.pc-sum-settings .pc-sum-item-remove{border:0;background:none;cursor:pointer;padding:2px 4px;font-size:1rem;line-height:1;color:var(--ink-3)}.pc-sum-settings .pc-sum-item-remove:hover{color:var(--red, #b42318)}.pc-sum-settings .pc-sums-error{font-size:.85rem;color:var(--red, #b42318)}@media(max-width:620px){.pc-sum-settings .pc-sum-item-head{display:none}.pc-sum-settings .pc-sum-item-row{grid-template-columns:5.5rem 5.5rem 1fr 2rem;row-gap:5px;padding:9px 0}.pc-sum-settings .pc-sum-item-row>input:first-child{grid-column:1 / -1}}.activity-day{font-size:.75rem;font-weight:700;color:var(--ink-3);margin:18px 0 8px}.activity-day:first-of-type{margin-top:0}.activity-allclear{background:var(--green-tint);border:1px solid var(--green-line);color:var(--green);border-radius:var(--radius);padding:10px 14px;font-size:.85rem;font-weight:600;margin-bottom:14px}.filter-row{display:flex;gap:6px;flex-wrap:wrap}.activity-list{display:flex;flex-direction:column;gap:6px}.activity-row{overflow:hidden}.activity-row.is-error{border-left:3px solid var(--red)}.activity-summary{display:grid;grid-template-columns:auto 1fr auto;grid-template-areas:"pill name    chevron" "text text    text" "when took    took";gap:4px 10px;align-items:center;width:100%;background:none;border:none;padding:11px 14px;text-align:left;font:inherit;color:inherit}.activity-summary:hover{background:var(--surface-2)}.activity-summary .pill{grid-area:pill}.activity-name{grid-area:name;font-weight:600;font-size:.86rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.activity-text{grid-area:text;font-size:.8rem;color:var(--ink-2);min-width:0;overflow:hidden;text-overflow:ellipsis}.activity-when{grid-area:when;font-size:.76rem;color:var(--ink-3);font-variant-numeric:tabular-nums;white-space:nowrap}.activity-took{grid-area:took;font-size:.76rem;color:var(--ink-3);font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap}.activity-chevron{grid-area:chevron;color:var(--ink-3);font-size:.8rem}.activity-detail{border-top:1px solid var(--line);background:var(--surface-2);padding:12px 14px}.activity-step{display:flex;align-items:flex-start;gap:9px;padding:5px 0;font-size:.82rem}.activity-step .dot{margin-top:6px}.activity-step-name{font-weight:600}.activity-step-detail{color:var(--ink-3);font-size:.79rem;word-break:break-word}.activity-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.activity-more{display:flex;justify-content:center;padding:16px 0}@media(min-width:720px){.activity-summary{grid-template-columns:74px minmax(140px,200px) minmax(0,1fr) 108px 60px 16px;grid-template-areas:"pill name text when took chevron";gap:12px;padding:10px 14px}.activity-text{white-space:nowrap}}.price-field{width:90px;text-align:right;font-variant-numeric:tabular-nums;font-weight:600;padding:5px 9px}.price-field.is-changed{border-color:var(--amber);background:var(--amber-tint)}@media(pointer:coarse){.price-field{padding-top:11px;padding-bottom:11px}}.threshold-field{width:90px;text-align:right;font-variant-numeric:tabular-nums;padding:5px 9px}@media(pointer:coarse){.threshold-field{padding-top:11px;padding-bottom:11px}}.pricing-shell{display:block}.pricing-rail{padding-bottom:8px}.pricing-rail-label{padding:10px 14px 4px;font-size:.68rem;text-transform:uppercase;letter-spacing:.07em;color:var(--ink-3);font-weight:700}.pricing-rail-link{display:flex;align-items:center;gap:8px;padding:9px 14px;font-size:.85rem;color:var(--ink-2);font-weight:500;border-left:3px solid transparent;text-decoration:none}.pricing-rail-link:hover{background:var(--surface-2);text-decoration:none}.pricing-rail-link.active{background:var(--surface);color:var(--ink);font-weight:700;border-left-color:var(--blue)}.pricing-rail-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pricing-pane{min-width:0}@media(min-width:760px){.pricing-shell{display:flex;align-items:flex-start}.pricing-rail{width:190px;flex-shrink:0;background:var(--surface-2);border-right:1px solid var(--line);border-radius:var(--radius) 0 0 var(--radius);align-self:stretch}.pricing-pane{flex:1}}.pricing-name{font-weight:600}.pricing-unit{font-size:.8rem}.pricing-total{padding:10px 14px;font-size:.8rem}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}@media(max-width:759px){.data-table.stack-table.pricing-table>tbody>tr{display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px;padding:8px 14px;border-bottom:1px solid var(--line)}.data-table.stack-table.pricing-table>tbody>tr:last-child{border-bottom:none}.data-table.stack-table.pricing-table>tbody>tr>td.pricing-tick{flex:0 0 auto;width:auto;justify-content:flex-start}.data-table.stack-table.pricing-table>tbody>tr>td[data-label=Price]{flex:1 1 auto;width:auto;min-width:0}.data-table.stack-table.pricing-table>tbody>tr>td.num{flex:1 1 auto;width:auto;min-width:0}.data-table.stack-table.pricing-table>tbody>tr>td.pricing-actions{flex:0 0 auto;width:auto;gap:2px}.data-table.stack-table.pricing-table>tbody>tr>td.empty{justify-content:center}.data-table.stack-table.pricing-diff-table>tbody>tr{padding:8px 0;border-bottom:1px solid var(--line)}.data-table.stack-table.pricing-diff-table>tbody>tr:last-child{border-bottom:none}.data-table.stack-table.pricing-diff-table>tbody>tr>td.empty{justify-content:center}.data-table.stack-table.pricing-uplift-table>tbody>tr{padding:8px 0;border-bottom:1px solid var(--line)}.data-table.stack-table.pricing-uplift-table>tbody>tr:last-child{border-bottom:none}.data-table.stack-table.pricing-ladder-list-table>tbody>tr,.data-table.stack-table.pricing-ladder-table>tbody>tr{padding:8px 0;border-bottom:1px solid var(--line)}.data-table.stack-table.pricing-ladder-list-table>tbody>tr:last-child,.data-table.stack-table.pricing-ladder-table>tbody>tr:last-child{border-bottom:none}.pricing-ladder-table .threshold-field,.pricing-ladder-table select{max-width:100%;min-width:0}.data-table.stack-table.pricing-countersale-table>tbody>tr,.data-table.stack-table.pricing-version-table>tbody>tr{padding:8px 0;border-bottom:1px solid var(--line)}.data-table.stack-table.pricing-countersale-table>tbody>tr:last-child,.data-table.stack-table.pricing-version-table>tbody>tr:last-child{border-bottom:none}.pricing-category-actions{flex-wrap:wrap}.data-table.stack-table.pricing-table>tbody>tr>td[data-label=Price]{flex-wrap:wrap}.data-table.stack-table.pricing-table>tbody>tr>td[data-label=Price]:before{display:none}.data-table.stack-table.pricing-table>tbody>tr>td[data-label=Price]>.muted,.data-table.stack-table.pricing-table>tbody>tr>td[data-label=Price]>.pill{flex:0 0 auto;white-space:nowrap}.data-table.stack-table.pricing-countersale-table>tbody>tr>td[data-label=Row]{flex-wrap:wrap}.data-table.stack-table.pricing-countersale-table>tbody>tr>td[data-label=Row]>.muted{flex:0 0 auto;white-space:nowrap}}@media(min-width:760px){.pricing-table{table-layout:fixed}.pricing-table .pricing-tick{width:30px}.pricing-table .pricing-tick input[type=checkbox]{width:auto}.pricing-table .pricing-unit{width:96px}.pricing-table .num{width:130px}.pricing-table .pricing-actions{width:100px}.pricing-table .pricing-actions button+button{margin-left:4px}.data-table.stack-table.pricing-table>tbody>tr>td[data-label=Price]{min-width:220px;overflow-wrap:break-word}.data-table.stack-table.pricing-table>tbody>tr>td{overflow-wrap:break-word}.data-table.stack-table.pricing-table>tbody>tr:last-child>td{border-bottom:none}}.pricing-attn{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:10px 14px;margin-bottom:12px;background:var(--amber-tint);border:1px solid var(--amber-tint);border-radius:var(--radius);color:var(--amber);font-size:.85rem;font-weight:500}.pricing-attn .spacer{margin-left:auto}@media(max-width:759px){.pricing-head-actions{flex-wrap:wrap;justify-content:flex-end;row-gap:6px}.pricing-head-actions .search-input{flex:1 1 100%;width:auto}}.pricing-group-head{padding:8px 14px;background:var(--surface-3);font-size:.7rem;text-transform:uppercase;letter-spacing:.05em;font-weight:700;color:var(--ink-2);border-bottom:1px solid var(--line)}.pricing-tags{list-style:none;display:flex;flex-wrap:wrap;gap:6px;margin:10px 0 16px}.pricing-tags li{display:flex;align-items:center;gap:2px}@media(max-width:759px){.pricing-shell.has-pane .pricing-rail{display:none}.pricing-shell:not(.has-pane) .pricing-pane{display:none}.pricing-back-link{display:inline-flex;align-items:center;gap:6px;margin:10px 14px 0;font-size:.85rem;font-weight:600;color:var(--ink-2);text-decoration:none}.pricing-back-link:hover{text-decoration:underline}.pricing-foot{position:sticky;bottom:0;display:flex;align-items:center;gap:8px;padding:10px 14px;background:var(--surface);border-top:1px solid var(--line);box-shadow:0 -2px 6px #1526340f}.pricing-foot .spacer{margin-left:auto}.pricing-head-actions .btn-primary,.pricing-head-actions .pricing-head-raise{display:none}}@media(min-width:760px){.pricing-foot,.pricing-back-link{display:none}}.tag-picker{display:flex;flex-wrap:wrap;gap:6px}.tag-picker-tag{background:var(--surface);border:1px solid var(--line-strong);color:var(--ink-2);border-radius:11px;padding:2px 10px;font-size:.78rem;font-weight:600}.tag-picker-tag.is-on{background:var(--blue-tint);border-color:var(--blue-line);color:var(--blue-dark)}.tag-picker-tag.is-orphaned{border-style:dashed;opacity:.7}@media(pointer:coarse){.tag-picker-tag{padding-top:10px;padding-bottom:10px}}.detail-grid{display:grid;gap:12px;padding:4px 0}.detail-field{display:grid;gap:4px;min-width:0}.detail-label{font-size:.72rem;font-weight:700;letter-spacing:.03em;color:var(--ink-3)}.detail-input{width:100%}.detail-check{display:flex;align-items:center;gap:8px;font-size:.85rem}.detail-inline{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.detail-actions{display:flex;gap:8px;padding-top:4px}@media(min-width:560px){.detail-grid{grid-template-columns:1fr 1fr}.detail-field-wide,.detail-actions{grid-column:1 / -1}}.data-table.pricing-table tbody tr.clickable{cursor:default}.pricing-name-trigger{cursor:pointer}.pricing-show-archived{display:flex;align-items:center;gap:6px;font-size:.8rem;color:var(--ink-2);white-space:nowrap}.pricing-show-archived input[type=checkbox]{width:auto}.data-table.stack-table.pricing-table>tbody>tr.is-archived>td{opacity:.55}.pricing-category-settings{border-bottom:1px solid var(--line)}.pricing-category-actions .spacer{margin-left:auto}.pricing-rail-add{color:var(--ink-3);font-weight:500;border-top:1px dashed var(--line)}.pricing-rail-add:hover{color:var(--ink-2)}.pricing-rail-add.active{color:var(--ink)}.pricing-rail-archived{opacity:.65}.pricing-rail-archived:hover{opacity:.85}.data-table.pricing-countersale-table tbody tr.clickable{cursor:default}.data-table.stack-table.pricing-countersale-table>tbody>tr.is-archived>td{opacity:.55}@media(max-width:759px){.data-table.stack-table.pricing-countersale-table>tbody>tr{display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px;padding:8px 14px}.data-table.stack-table.pricing-countersale-table>tbody>tr>td.pricing-tick{flex:0 0 auto;width:auto;justify-content:flex-start}.data-table.stack-table.pricing-countersale-table>tbody>tr>td[data-label=Row]{flex:1 1 auto;width:auto;min-width:0}.data-table.stack-table.pricing-countersale-table>tbody>tr>td.num{flex:1 1 auto;width:auto;min-width:0}.data-table.stack-table.pricing-countersale-table>tbody>tr>td.pricing-actions{flex:0 0 auto;width:auto;gap:2px}}@media(min-width:760px){.pricing-countersale-table{table-layout:fixed}.pricing-countersale-table .pricing-tick{width:30px}.pricing-countersale-table .pricing-tick input[type=checkbox]{width:auto}.pricing-countersale-table .num{width:130px}.pricing-countersale-table .pricing-actions{width:100px}.pricing-countersale-table .pricing-actions button+button{margin-left:4px}}@media(min-width:760px){.data-table.stack-table.pricing-countersale-table>tbody>tr:last-child>td{border-bottom:none}}@media(min-width:760px){.data-table.stack-table.pricing-countersale-table td[data-label=Row]{min-width:220px;overflow-wrap:break-word}.data-table.stack-table.pricing-countersale-table td[data-label=Behaviour]{min-width:90px;overflow-wrap:break-word}}@media(min-width:760px){.data-table.stack-table.pricing-ladder-list-table td[data-label=Tiers]{width:90px;white-space:nowrap}}@media(min-width:760px){.data-table.stack-table.pricing-version-table td[data-label=Published]{width:90px;white-space:nowrap}}.pricing-tier-warning{color:var(--amber);font-size:.76rem;margin:3px 0 0}@media(max-width:759px){.pricing-ladder-table .detail-input{max-width:100%;min-width:0}}@media(min-width:760px)and (max-width:1239px){.data-table.stack-table.pricing-ladder-table,.data-table.stack-table.pricing-ladder-table>tbody,.data-table.stack-table.pricing-ladder-table>tbody>tr,.data-table.stack-table.pricing-ladder-table>tbody>tr>td{display:block;width:100%}.data-table.stack-table.pricing-ladder-table>thead{display:none}.data-table.stack-table.pricing-ladder-table>tbody>tr>td{display:flex;justify-content:space-between;align-items:baseline;gap:12px;border:none;padding:3px 0;text-align:left;overflow-wrap:break-word}.data-table.stack-table.pricing-ladder-table>tbody>tr>td[data-label]:before{content:attr(data-label);flex:none;font-size:.72rem;font-weight:700;letter-spacing:.03em;color:var(--ink-3)}.data-table.stack-table.pricing-ladder-table>tbody>tr>td.num{text-align:left}.data-table.stack-table.pricing-ladder-table>tbody>tr>td:not([data-label]){justify-content:flex-end;padding:0}.data-table.stack-table.pricing-ladder-table>tbody>tr{padding:8px 0;border-bottom:1px solid var(--line)}.data-table.stack-table.pricing-ladder-table>tbody>tr:last-child{border-bottom:none}.pricing-ladder-table .threshold-field,.pricing-ladder-table select,.pricing-ladder-table .detail-input{max-width:100%;min-width:0}}@media(min-width:1240px){.pricing-ladder-table{table-layout:fixed}.pricing-ladder-table th:nth-child(1),.pricing-ladder-table td:nth-child(1){width:124px}.pricing-ladder-table th:nth-child(2),.pricing-ladder-table td:nth-child(2){width:194px}.pricing-ladder-table th:nth-child(3),.pricing-ladder-table td:nth-child(3){width:164px}.pricing-ladder-table th:nth-child(5){white-space:normal}.pricing-ladder-table th:nth-child(5),.pricing-ladder-table td:nth-child(5){width:58px}.pricing-ladder-table .num{width:124px}.pricing-ladder-table .pricing-actions{width:90px}.data-table.stack-table.pricing-ladder-table>tbody>tr>td[data-label="Shows as"]{width:100%}.data-table.stack-table.pricing-ladder-table>tbody>tr>td{overflow-wrap:break-word}.data-table.stack-table.pricing-ladder-table>tbody>tr:last-child>td{border-bottom:none}}.pricing-tag-filter{flex:1 1 100%;margin-top:2px}@media(max-width:759px){.pricing-card-head{flex-wrap:wrap;row-gap:6px}}.jobs-page .jobs-find{margin-bottom:14px}.jobs-page .find-label{display:block;margin-bottom:6px;font-size:.72rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase;color:var(--ink-3)}.jobs-page .find-row{display:flex;align-items:center;gap:8px}.jobs-page .find-input{font-size:1rem;padding:10px 12px;min-width:0}.jobs-page .find-clear{flex:none}.jobs-page .find-hint{margin-top:6px;font-size:.75rem;line-height:1.5;max-width:75ch}.jobs-page .jobs-strip{margin-bottom:14px;display:flex;flex-direction:column;gap:14px}.jobs-page .strip-lead{display:flex;flex-direction:column;gap:1px;min-width:0}.jobs-page .strip-label{font-size:.72rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase;color:var(--ink-3)}.jobs-page .strip-margin{font-size:2rem;font-weight:700;letter-spacing:-.02em;line-height:1.1;color:var(--ink)}.jobs-page .strip-foot{font-size:.75rem;line-height:1.45;color:var(--ink-3);max-width:44ch}.jobs-page .strip-figures{display:flex;flex-wrap:wrap;gap:10px 22px}.jobs-page .strip-figures>div{display:flex;flex-direction:column;gap:1px;min-width:0}.jobs-page .strip-figures dt{font-size:.72rem;font-weight:600;color:var(--ink-3)}.jobs-page .strip-figures dd{font-size:.95rem;font-weight:600;color:var(--ink-2)}@media(min-width:700px){.jobs-page .jobs-strip{flex-direction:row;align-items:center;gap:22px}.jobs-page .strip-figures{margin-left:auto;padding-left:22px;border-left:1px solid var(--line);gap:10px 26px}}.jobs-page .jobs-controls{margin-bottom:14px}.jobs-page .filter-panel{margin-top:10px}.jobs-page .filter-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:10px}.jobs-page .jobs-controls .field-group{gap:4px;min-width:0}.jobs-page .jobs-controls .field-label{font-size:.78rem;color:var(--ink-2)}.jobs-page .filter-summary{margin-top:8px;font-size:.75rem;line-height:1.5}.jobs-page .filter-foot{margin-top:8px;min-height:20px;font-size:.78rem}@media(min-width:560px){.jobs-page .filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:800px){.jobs-page .filter-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.jobs-page .controls-row{display:flex;align-items:center;flex-wrap:wrap;gap:8px 10px}.jobs-page .controls-actions{display:flex;flex-wrap:wrap;gap:6px;margin-left:auto}.jobs-page .views-label{font-size:.72rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase;color:var(--ink-3)}.jobs-page .view-chips{display:flex;flex-wrap:wrap;gap:6px;min-width:0}.jobs-page .view-chip.is-active,.jobs-page .filters-toggle.is-active{background:var(--blue-tint);border-color:var(--blue-line);color:var(--blue)}.jobs-page .view-chip.is-active:hover,.jobs-page .filters-toggle.is-active:hover{background:var(--blue-tint);color:var(--blue)}.jobs-page .filter-note{margin-top:8px;max-width:75ch;font-size:.75rem;line-height:1.55}.jobs-page .page-head-actions{flex-wrap:wrap;justify-content:flex-end}.jobs-page .sort-btn{background:none;border:none;padding:0;font:inherit;letter-spacing:inherit;text-transform:inherit;color:inherit;display:inline-flex;align-items:baseline;gap:5px;width:100%;justify-content:flex-end}.jobs-page .sort-btn:hover,.jobs-page .sort-btn.is-active{color:var(--ink)}.jobs-page .sort-text{display:inline-flex;flex-direction:column;align-items:flex-end}.jobs-page .sort-note{font-size:.68rem;font-weight:500;color:var(--ink-3);text-transform:none;letter-spacing:0;white-space:normal;text-align:right;max-width:11rem;margin-top:2px}.jobs-page .sort-arrow{font-size:.7rem;color:var(--ink-3)}.jobs-page .job-ref{font-weight:700;white-space:nowrap}.jobs-page .job-kind{font-size:.68rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase;color:var(--ink-3);background:var(--surface-3);border:1px solid var(--line);border-radius:var(--radius-sm);padding:0 4px;margin-left:6px;white-space:nowrap}.jobs-page .job-customer{display:block;font-weight:600;color:var(--ink)}.jobs-page .job-meta{display:block;font-size:.75rem}.jobs-page .jobs-table td.num{white-space:nowrap}.jobs-page .margin-figure{display:inline-block;font-weight:700;font-variant-numeric:tabular-nums;border:1px solid transparent;border-radius:var(--radius-sm);padding:1px 6px}.jobs-page .margin-figure.tone-good{background:var(--green-tint);color:var(--green);border-color:var(--green-line)}.jobs-page .margin-figure.tone-warn{background:var(--amber-tint);color:var(--amber);border-color:color-mix(in srgb,var(--amber) 30%,transparent)}.jobs-page .margin-figure.tone-bad{background:var(--red-tint);color:var(--red);border-color:var(--red-line)}.jobs-page .margin-figure.tone-none{background:none;color:var(--ink-2)}.jobs-page .margin-figure{white-space:nowrap}.jobs-page .basis-tag{white-space:nowrap;font-size:.68rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-3);background:var(--surface-3);border:1px solid var(--line);border-radius:var(--radius-sm);padding:0 4px;margin-left:6px}.jobs-page .basis-tag-not-due{color:var(--blue);background:var(--blue-tint);border-color:var(--blue-line)}.jobs-page .data-table.stack-table.jobs-table>tbody[hidden]{display:none}.jobs-page .group-cell{text-align:left;font-weight:400;padding:10px 12px;background:var(--surface-2);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.jobs-page .group-needs-attention .group-cell{background:var(--red-tint);border-color:var(--red-line)}.jobs-page .group-costs-missing .group-cell{background:var(--amber-tint)}.jobs-page .group-title{margin:0;font-size:.95rem;font-weight:700;color:var(--ink);display:flex;align-items:center;gap:8px;white-space:normal}.jobs-page .group-toggle{background:none;border:none;padding:0;font:inherit;color:inherit;display:inline-flex;align-items:center;gap:8px;cursor:pointer;text-align:left}.jobs-page .group-caret{color:var(--ink-3);font-size:.75rem;flex:none}.jobs-page .group-count{font-size:.72rem;font-weight:700;color:var(--ink-2);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-sm);padding:0 6px;flex:none}.jobs-page .group-note{margin:3px 0 0;max-width:88ch;font-size:.75rem;font-weight:400;line-height:1.5;color:var(--ink-2);white-space:normal}.jobs-page .group-order{color:var(--ink-3)}.jobs-page .jobs-allclear{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:10px;font-size:.85rem;color:var(--ink-2)}.jobs-page .jobs-order{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:10px;font-size:.78rem}.jobs-page .jobs-legend{margin-top:10px;max-width:75ch;line-height:1.6}.jobs-page .jobs-legend .basis-tag{margin-left:0}.jobs-page .empty p{margin-bottom:10px}@media(max-width:759px){.jobs-page .jobs-table-card{background:none;border:none;box-shadow:none}.jobs-page .data-table.stack-table.jobs-table>tbody>tr{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 10px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:10px 12px;margin-bottom:8px}.jobs-page .data-table.stack-table.jobs-table>tbody>tr>td.cell-ref{order:-4;flex:1 1 auto;width:auto;justify-content:flex-start;gap:0}.jobs-page .data-table.stack-table.jobs-table>tbody>tr>td.cell-state{order:-3;flex:0 0 auto;width:auto;justify-content:flex-end;padding-left:0}.jobs-page .data-table.stack-table.jobs-table>tbody>tr>td.cell-customer{order:-2;flex:1 1 100%;width:100%}.jobs-page .data-table.stack-table.jobs-table>tbody>tr>td.cell-margin{order:-1;flex:1 1 100%;width:100%;font-size:1.05rem;font-weight:700}.jobs-page .data-table.stack-table.jobs-table>tbody>tr>td.cell-margin .margin-figure{margin-left:auto}.jobs-page .data-table.stack-table.jobs-table>tbody>tr>td.cell-ref:before,.jobs-page .data-table.stack-table.jobs-table>tbody>tr>td.cell-customer:before,.jobs-page .data-table.stack-table.jobs-table>tbody>tr>td.cell-state:before{content:none}.jobs-page .job-ref{font-size:1rem}.jobs-page .data-table.stack-table.jobs-table>tbody>tr.group-row{display:block;background:none;border:none;box-shadow:none;padding:0;margin:0 0 8px}.jobs-page .data-table.stack-table.jobs-table>tbody>tr>th.group-cell{display:block;border-radius:var(--radius);padding:9px 12px}.jobs-page .jobs-table>tbody.group-head-body~tbody.group-head-body .group-row{margin-top:14px}}@media(pointer:coarse){.jobs-page .job-ref{display:inline-block;padding:8px 0}}@media(min-width:760px){.jobs-page .jobs-table-card{overflow:hidden}.jobs-page .jobs-table{table-layout:fixed}.jobs-page .data-table.stack-table.jobs-table>tbody>tr>td{padding:8px 12px}.jobs-page .jobs-table thead th{padding:9px 12px;vertical-align:bottom}.jobs-page .jobs-table tbody tr:hover{background:var(--surface-2)}.jobs-page .data-table.stack-table.jobs-table>tbody>tr:last-child>td{border-bottom:none}.jobs-page .data-table.stack-table.jobs-table>tbody>tr>td.cell-customer{overflow-wrap:normal}.jobs-page .jobs-table .job-customer,.jobs-page .jobs-table .job-meta{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.jobs-page .jobs-table td.cell-margin{white-space:normal}}@media(min-width:760px)and (max-width:1239px){.jobs-page .jobs-table thead th:nth-child(3),.jobs-page .jobs-table thead th:nth-child(4){display:none}.jobs-page .data-table.stack-table.jobs-table>tbody>tr>td[data-label=Salesperson],.jobs-page .data-table.stack-table.jobs-table>tbody>tr>td[data-label=Status]{display:none}.jobs-page .data-table.stack-table.jobs-table>tbody>tr>td{padding-left:9px;padding-right:9px}.jobs-page .jobs-table thead th{padding-left:9px;padding-right:9px}.jobs-page .jobs-table thead th:nth-child(2){width:100%}.jobs-page .jobs-table thead th:nth-child(1){width:105px}.jobs-page .jobs-table thead th:nth-child(5),.jobs-page .jobs-table thead th:nth-child(6),.jobs-page .jobs-table thead th:nth-child(7){width:90px}.jobs-page .jobs-table thead th:nth-child(8){width:120px}.jobs-page .jobs-table thead th:nth-child(9){width:131px}}@media(min-width:1240px){.jobs-page .jobs-table thead th:nth-child(1){width:111px}.jobs-page .jobs-table thead th:nth-child(3){width:132px}.jobs-page .jobs-table thead th:nth-child(4){width:116px}.jobs-page .jobs-table thead th:nth-child(5),.jobs-page .jobs-table thead th:nth-child(6),.jobs-page .jobs-table thead th:nth-child(7){width:100px}.jobs-page .jobs-table thead th:nth-child(8){width:164px}.jobs-page .jobs-table thead th:nth-child(9){width:137px}}.jobs-report .report-strip{margin-bottom:14px;display:flex;flex-direction:column;gap:14px}.jobs-report .strip-lead{display:flex;flex-direction:column;gap:1px;min-width:0}.jobs-report .strip-label{font-size:.72rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase;color:var(--ink-3)}.jobs-report .strip-margin{font-size:2rem;font-weight:700;letter-spacing:-.02em;line-height:1.1;color:var(--ink)}.jobs-report .strip-foot{font-size:.75rem;line-height:1.45;color:var(--ink-3);max-width:44ch}.jobs-report .strip-figures{display:flex;flex-wrap:wrap;gap:10px 22px}.jobs-report .strip-figures>div{display:flex;flex-direction:column;gap:1px;min-width:0}.jobs-report .strip-figures dt{font-size:.72rem;font-weight:600;color:var(--ink-3)}.jobs-report .strip-figures dd{font-size:.95rem;font-weight:600;color:var(--ink-2)}@media(min-width:700px){.jobs-report .report-strip{flex-direction:row;align-items:center;gap:22px}.jobs-report .strip-figures{margin-left:auto;padding-left:22px;border-left:1px solid var(--line);gap:10px 26px}}.jobs-report .page-head-actions{flex-wrap:wrap;justify-content:flex-end}.jobs-report .report-filters{margin-bottom:14px}.jobs-report .filter-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:10px}.jobs-report .report-filters .field-group{gap:4px;min-width:0}.jobs-report .report-filters .field-label{font-size:.78rem;color:var(--ink-2)}.jobs-report .filter-foot{display:flex;align-items:center;gap:10px;min-height:26px;margin-top:8px}.jobs-report .filter-foot .btn{margin-left:auto}@media(min-width:560px){.jobs-report .filter-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.jobs-report .report-chart{margin-bottom:14px}.jobs-report .report-chart .card-head{flex-wrap:wrap;row-gap:4px}.jobs-report .chart-key{display:flex;gap:12px;font-size:.72rem;color:var(--ink-3);font-weight:600}.jobs-report .key-item{display:inline-flex;align-items:center;gap:5px}.jobs-report .key-swatch{width:10px;height:10px;border-radius:var(--radius-sm);flex:none}.jobs-report .key-billed{background:var(--blue)}.jobs-report .key-cost{background:var(--ink-3)}.jobs-report .chart-rows{display:flex;flex-direction:column;gap:12px}.jobs-report .chart-row{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"month figures" "track figures";align-items:center;gap:2px 12px}.jobs-report .chart-month{grid-area:month;font-size:.78rem;font-weight:700;color:var(--ink-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.jobs-report .chart-track{grid-area:track;display:flex;flex-direction:column;gap:3px;min-width:0}.jobs-report .chart-bar{display:block;height:9px;border-radius:var(--radius-sm)}.jobs-report .bar-billed{background:var(--blue)}.jobs-report .bar-cost{background:var(--ink-3)}.jobs-report .chart-figures{grid-area:figures;display:flex;flex-direction:column;align-items:flex-end;gap:3px;font-size:.8rem;white-space:nowrap}.jobs-report .fig-billed{font-weight:700;color:var(--ink)}.jobs-report .fig-cost{color:var(--ink-3)}.jobs-report .chart-note{margin-top:12px;line-height:1.5;max-width:75ch}@media(min-width:560px){.jobs-report .chart-row{grid-template-columns:5.5rem minmax(0,1fr) auto;grid-template-areas:"month track figures";gap:12px}.jobs-report .chart-figures{flex-direction:row;align-items:baseline;gap:14px}.jobs-report .fig-billed,.jobs-report .fig-cost{min-width:5.5rem;text-align:right}}.jobs-report .th-note{display:block;font-size:.68rem;font-weight:500;color:var(--ink-3);text-transform:none;letter-spacing:0;white-space:normal;margin-top:1px}.jobs-report .report-table td.num{white-space:nowrap}.jobs-report .report-table td.cell-margin{font-weight:700;color:var(--ink)}.jobs-report .report-legend{margin-top:10px;max-width:75ch;line-height:1.6}.jobs-report .empty p{margin-bottom:8px}.jobs-report .empty .empty-how{max-width:60ch;margin:0 auto 12px;line-height:1.6}@media(max-width:759px){.jobs-report .report-table-card{background:none;border:none;box-shadow:none}.jobs-report .data-table.stack-table.report-table>tbody>tr{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 10px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:10px 12px;margin-bottom:8px}.jobs-report .data-table.stack-table.report-table>tbody>tr>td.cell-group{order:-2;flex:1 1 auto;width:auto;justify-content:flex-start;gap:0;font-size:1rem;font-weight:700;color:var(--ink)}.jobs-report .data-table.stack-table.report-table>tbody>tr>td.cell-margin{order:-1;flex:0 0 auto;width:auto;justify-content:flex-end;padding-left:0;font-size:1rem}.jobs-report .data-table.stack-table.report-table>tbody>tr>td.cell-group:before{content:none}}@media(min-width:760px){.jobs-report .report-table-card{overflow:hidden}.jobs-report .data-table.stack-table.report-table>tbody>tr>td{padding:10px 12px}.jobs-report .report-table thead th{padding:9px 12px;vertical-align:bottom}.jobs-report .report-table tbody tr:hover{background:var(--surface-2)}.jobs-report .data-table.stack-table.report-table>tbody>tr:last-child>td{border-bottom:none}}@media(min-width:760px)and (max-width:1239px){.jobs-report .data-table.stack-table.report-table>tbody>tr>td{padding-left:8px;padding-right:8px}.jobs-report .report-table thead th{padding-left:8px;padding-right:8px}}.mileage-calibration{margin-bottom:1rem}.mileage-calibration .split{margin-top:.75rem}.unassigned-labour{margin-bottom:1rem}.unassigned-labour .row-sub{display:block;margin-bottom:.75rem}.unassigned-labour select{max-width:22rem}.unassigned-labour .inline-note{margin:.5rem 0;padding:.5rem .7rem;border-radius:6px;background:var(--surface-2, rgba(127, 127, 127, .08));font-size:.88rem}.unassigned-labour .labour-bulk{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-bottom:.75rem}.unassigned-labour .labour-cleared{margin-top:.9rem}.unassigned-labour .labour-cleared table{margin-top:.6rem}.unassigned-labour .labour-table .labour-tick input[type=checkbox]{width:auto}@media(min-width:760px){.unassigned-labour .labour-table .labour-tick{width:30px}.unassigned-labour .labour-table td[data-label=Date],.unassigned-labour .labour-table td[data-label=Installer],.unassigned-labour .labour-table td[data-label=Duration]{white-space:nowrap;width:1%}.unassigned-labour .labour-table select{min-width:15rem}.unassigned-labour .labour-table td[data-label="Calendar title"]{width:34%;overflow-wrap:anywhere}.unassigned-labour .labour-table td[data-label="Identified by"]{width:20%;overflow-wrap:anywhere}.unassigned-labour .labour-table td[data-label=Cleared]{width:16%}}@media(min-width:760px)and (max-width:1023px){.unassigned-labour .data-table.stack-table.labour-table>tbody>tr>td,.unassigned-labour .data-table.stack-table.labour-table>thead>tr>th{padding-left:8px;padding-right:8px}.unassigned-labour .labour-table select{min-width:8rem}.unassigned-labour .labour-table td[data-label="Calendar title"]{min-width:9rem}.unassigned-labour .labour-table td[data-label="Identified by"]{min-width:6rem}.unassigned-labour .labour-table td[data-label=Cleared]{min-width:9rem}}@media(max-width:759px){.unassigned-labour .data-table.stack-table.labour-table>tbody>tr>td.labour-tick{display:flex;align-items:center;gap:10px}}.supplier-spend{margin-bottom:1rem}.supplier-spend .card-head{flex-wrap:wrap;row-gap:4px}.supplier-spend .row-sub{display:block;font-size:.75rem;line-height:1.5;color:var(--ink-3)}.supplier-spend .card-body>p.row-sub{margin-bottom:.85rem;max-width:75ch}.supplier-spend .supplier-figures{display:flex;flex-wrap:wrap;gap:10px 22px;margin-bottom:.85rem}.supplier-spend .supplier-figures>div{display:flex;flex-direction:column;gap:1px;min-width:0}.supplier-spend .supplier-figures dt{font-size:.72rem;font-weight:600;color:var(--ink-3)}.supplier-spend .supplier-figures dd{font-size:.95rem;font-weight:600;color:var(--ink-2)}.supplier-spend .supplier-never{margin-bottom:.85rem;padding:.5rem .7rem;border:1px solid var(--amber);border-radius:var(--radius);background:var(--amber-tint);color:var(--ink-2);font-size:.85rem;line-height:1.55}.supplier-spend .supplier-more{margin-top:.6rem}.supplier-spend .supplier-legend{margin-top:.75rem;max-width:75ch;line-height:1.6}.supplier-spend .supplier-table td.num{white-space:nowrap}.supplier-spend .supplier-table td.cell-placed{font-weight:700;color:var(--ink)}.supplier-spend .supplier-table td.cell-placed .row-sub{font-weight:500}@media(max-width:759px){.supplier-spend .data-table.stack-table.supplier-table>tbody>tr{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 10px;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius);padding:10px 12px;margin-bottom:8px}.supplier-spend .data-table.stack-table.supplier-table>tbody>tr>td.cell-supplier{order:-2;flex:1 1 auto;width:auto;justify-content:flex-start;gap:0;display:block;font-size:1rem;font-weight:700;color:var(--ink)}.supplier-spend .data-table.stack-table.supplier-table>tbody>tr>td.cell-placed{order:-1;flex:0 0 auto;width:auto;justify-content:flex-end;padding-left:0;display:block;text-align:right;font-size:1rem}.supplier-spend .data-table.stack-table.supplier-table>tbody>tr>td.cell-supplier:before{content:none}}@media(min-width:760px){.supplier-spend .data-table.stack-table.supplier-table>tbody>tr>td{padding:10px 12px}.supplier-spend .supplier-table thead th{padding:9px 12px;vertical-align:bottom}.supplier-spend .supplier-table tbody tr:hover{background:var(--surface-2)}.supplier-spend .data-table.stack-table.supplier-table>tbody>tr:last-child>td{border-bottom:none}}@media(min-width:760px)and (max-width:1239px){.supplier-spend .data-table.stack-table.supplier-table>tbody>tr>td{padding-left:6px;padding-right:6px}.supplier-spend .supplier-table thead th{padding-left:6px;padding-right:6px}}.jobs-report .multi-job-bills{display:flex;flex-direction:column;gap:10px}.jobs-report .multi-job-bills .row-list{list-style:none;margin:0;padding:0}.jobs-report .multi-job-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 12px;padding:10px 0;border-bottom:1px solid var(--line)}.jobs-report .multi-job-bills .row-list .multi-job-row:last-child{border-bottom:none}.jobs-report .multi-job-row .row-main{grid-column:1;font-size:.875rem;font-weight:600;color:var(--ink);min-width:0;overflow-wrap:anywhere}.jobs-report .multi-job-row .row-amount{grid-column:2;font-size:.875rem;font-weight:600;text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.jobs-report .multi-job-row .row-sub{grid-column:1 / -1;font-size:.78rem;color:var(--ink-3);line-height:1.5;overflow-wrap:anywhere}@media(min-width:700px){.jobs-report .multi-job-row{grid-template-columns:minmax(0,1.1fr) minmax(0,2fr) auto;align-items:baseline}.jobs-report .multi-job-row .row-main{grid-row:1}.jobs-report .multi-job-row .row-amount{grid-column:3;grid-row:1}.jobs-report .multi-job-row .row-sub{grid-column:2}}.jobs-report .multi-job-evidence{grid-column:1 / -1;margin:4px 0 0;padding-left:18px;display:flex;flex-direction:column;gap:2px;font-size:.78rem;color:var(--ink-3);line-height:1.5;overflow-wrap:anywhere}.jobs-report .multi-job-jobs a{color:var(--blue);font-weight:600}.jobs-report .multi-job-row .multi-job-split{grid-column:1 / -1;display:block;margin-top:6px}.jobs-report .multi-job-split a{color:var(--blue);font-weight:600}@media(pointer:coarse){.jobs-report .multi-job-split a{display:inline-block;padding:10px 0}}.job-detail{display:flex;flex-direction:column;gap:16px}.job-detail .card-body{display:flex;flex-direction:column;gap:14px}.job-detail .job-meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:9px}.job-detail .job-meta-item{font-size:.8rem;color:var(--ink-3)}.job-detail .job-meta-item strong{color:var(--ink-2);font-weight:600}.job-detail .head-link{color:var(--blue)}.job-detail .head-link:hover{color:var(--blue-dark);text-decoration:underline}@media(pointer:coarse){.job-detail .page-sub .head-link{padding:12px 0}.job-detail .job-meta-item .head-link{display:inline-block;padding:10px 0}}.job-detail .job-asat{margin-top:7px;font-size:.78rem;color:var(--ink-3)}.job-detail .job-attention ul{list-style:disc;margin:6px 0 0;padding-left:20px;display:flex;flex-direction:column;gap:5px}.job-detail .job-attention li{line-height:1.55}.job-detail .job-attention .job-attention-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:6px}.job-detail .job-attention .job-attention-by{font-size:.8rem;color:var(--ink-3);min-width:0}.job-detail .job-attention .job-attention-by.is-stale{color:var(--red-dark);font-weight:600}.job-detail .job-attention .job-attention-foot{margin:10px 0 0;font-size:.8rem;color:var(--ink-3);line-height:1.5}.job-detail .job-notice{background:var(--blue-tint);border:1px solid var(--blue-line);color:var(--ink-2);border-radius:var(--radius-sm);padding:10px 14px;font-size:.875rem}.job-detail .job-notice strong{color:var(--blue-dark)}.job-detail .job-notice p{margin:5px 0 0;line-height:1.55}.job-detail .job-money{display:flex;flex-direction:column;gap:16px}.job-detail .figures{display:grid;gap:16px}@media(min-width:560px){.job-detail .figures{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}}.job-detail .figure{display:flex;flex-direction:column;gap:3px;min-width:0}.job-detail .figure-label{font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3)}.job-detail .figure-value{font-size:1.55rem;font-weight:700;letter-spacing:-.02em;line-height:1.15;color:var(--ink);font-variant-numeric:tabular-nums;overflow-wrap:anywhere}@media(min-width:800px){.job-detail .figure-value{font-size:1.75rem}}.job-detail .figure-note{font-size:.8rem;color:var(--ink-3);line-height:1.5;overflow-wrap:anywhere}.job-detail .tone-good{color:var(--green)}.job-detail .tone-warn{color:var(--amber)}.job-detail .tone-bad{color:var(--red)}.job-detail .tone-none{color:var(--ink-3)}.job-detail .margin-line{border-top:1px solid var(--line);padding-top:14px;display:flex;flex-direction:column;gap:5px}.job-detail .margin-line-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 10px}.job-detail .margin-line-value{font-size:1.3rem;font-weight:700;letter-spacing:-.01em;font-variant-numeric:tabular-nums}.job-detail .margin-line-note{font-size:.8rem;color:var(--ink-3);line-height:1.55;max-width:75ch}.job-detail .margin-line-note strong{color:var(--ink-2);font-weight:700;font-variant-numeric:tabular-nums}.job-detail .margin-spark{display:flex;flex-wrap:wrap;align-items:center;gap:4px 12px;padding:8px 10px;margin:2px 0 1px;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius-sm);width:fit-content;max-width:100%}.job-detail .margin-spark-plot{display:block;flex:none;overflow:visible}.job-detail .margin-spark-plot polyline{fill:none;stroke-width:1.5px;stroke-linejoin:round;stroke-linecap:round}.job-detail .margin-spark-plot circle{stroke:none}.job-detail .margin-spark-plot.trend-up polyline{stroke:var(--green)}.job-detail .margin-spark-plot.trend-up circle{fill:var(--green)}.job-detail .margin-spark-plot.trend-down polyline{stroke:var(--red)}.job-detail .margin-spark-plot.trend-down circle{fill:var(--red)}.job-detail .margin-spark-plot.trend-level polyline{stroke:var(--ink-3)}.job-detail .margin-spark-plot.trend-level circle{fill:var(--ink-3)}.job-detail .margin-spark-caption{flex:0 1 auto;min-width:0;font-size:.78rem;color:var(--ink-3);line-height:1.5;font-variant-numeric:tabular-nums}.job-detail .expected{border-top:1px solid var(--line);padding-top:14px;display:flex;flex-direction:column;gap:8px}.job-detail .expected-head{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.job-detail .expected-title{font-size:.875rem;font-weight:700;color:var(--ink-2)}.job-detail .expected-caveat{font-size:.8rem;color:var(--ink-3);line-height:1.55;max-width:75ch}.job-detail .expected-figures{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:2px}@media(min-width:700px){.job-detail .expected-figures{grid-template-columns:repeat(4,minmax(0,1fr))}}.job-detail .expected-figure{display:flex;flex-direction:column;gap:2px;min-width:0}.job-detail .expected-value{font-size:1rem;font-weight:600;color:var(--ink-2);font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.job-detail .cost-bar{display:flex;width:100%;height:26px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-3);overflow:hidden}.job-detail .bar-seg{flex:0 0 auto;height:100%;min-width:2px}.job-detail .seg-units{background:var(--blue-dark)}.job-detail .seg-appliances{background:var(--blue)}.job-detail .seg-worktops{background:var(--cyan)}.job-detail .seg-labour{background:var(--ink-2)}.job-detail .seg-other{background:var(--ink-3)}.job-detail .seg-commission{background:var(--amber)}.job-detail .seg-profit{background:var(--green)}.job-detail .seg-appliances{background-color:var(--blue);background-image:repeating-linear-gradient(180deg,#ffffff6b 0,#ffffff6b 2px,#fff0 2px,#fff0 5px)}.job-detail .seg-loss{background-color:var(--red);background-image:repeating-linear-gradient(45deg,#ffffff4d 0,#ffffff4d 4px,#fff0 4px,#fff0 8px)}.job-detail .cost-legend{list-style:none;margin:0;padding:0}.job-detail .legend-item{display:grid;grid-template-columns:11px minmax(0,1fr) auto;align-items:baseline;gap:2px 10px;padding:7px 0;border-bottom:1px solid var(--line)}.job-detail .cost-legend .legend-item:last-child{border-bottom:none}.job-detail .legend-swatch{width:11px;height:11px;border-radius:2px;align-self:center}.job-detail .legend-label{font-size:.85rem;color:var(--ink-2);overflow-wrap:anywhere}.job-detail .legend-amount{font-size:.875rem;font-weight:600;text-align:right;white-space:nowrap}.job-detail .legend-pct{grid-column:3;font-size:.78rem;color:var(--ink-3);text-align:right}@media(min-width:560px){.job-detail .legend-item{grid-template-columns:11px minmax(0,1fr) auto 4.5rem}.job-detail .legend-pct{grid-column:4}.job-detail .cost-legend.no-pct .legend-item{grid-template-columns:11px minmax(0,1fr) auto}}.job-detail .row-list{list-style:none;margin:0;padding:0}.job-detail .row-item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 12px;padding:10px 0;border-bottom:1px solid var(--line)}.job-detail .row-list .row-item:last-child{border-bottom:none}.job-detail .row-main{grid-column:1;font-size:.875rem;font-weight:600;color:var(--ink);min-width:0;overflow-wrap:anywhere}.job-detail .row-amount{grid-column:2;font-size:.875rem;font-weight:600;text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.job-detail .row-sub{grid-column:1 / -1;font-size:.78rem;color:var(--ink-3);line-height:1.5;overflow-wrap:anywhere}.job-detail .row-pill{grid-column:1 / -1}.job-detail .row-main.xero-link{color:var(--blue)}.job-detail .row-main.xero-link:hover{color:var(--blue-dark);text-decoration:underline}@media(pointer:coarse){.job-detail .row-main.xero-link{display:inline-block;padding:8px 0}}@media(min-width:700px){.job-detail .row-item{grid-template-columns:minmax(0,1.1fr) minmax(0,2fr) auto;align-items:baseline}.job-detail .row-main{grid-row:1}.job-detail .row-amount{grid-column:3;grid-row:1}.job-detail .row-sub{grid-column:2}.job-detail .row-pill{grid-column:3;text-align:right}}.job-detail .chip-list{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px}.job-detail .recon-figures{display:grid;grid-template-columns:minmax(0,1fr);gap:12px}@media(min-width:560px){.job-detail .recon-figures{grid-template-columns:repeat(2,minmax(0,1fr))}}.job-detail .recon-figure{display:flex;flex-direction:column;gap:3px;min-width:0;padding:12px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-2)}.job-detail .recon-figure.is-open{border-color:var(--amber);background:var(--amber-tint)}.job-detail .recon-value{font-size:1.15rem;font-weight:700;color:var(--ink);font-variant-numeric:tabular-nums;overflow-wrap:anywhere}@media(min-width:860px){.job-detail .recon-figures{grid-template-columns:repeat(3,minmax(0,1fr))}}.job-detail .recon-bulk{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-bottom:4px}.job-detail .recon-select{grid-column:1 / -1;display:flex;flex-wrap:wrap;align-items:center;gap:8px;min-width:0;padding-top:4px;font-size:.78rem;color:var(--ink-3)}.job-detail .recon-select input[type=checkbox]{width:auto}@media(pointer:coarse){.job-detail .recon-select{padding-top:8px;padding-bottom:8px}}.job-detail .recon-review{align-self:flex-start}.job-detail .recon-block{display:flex;flex-direction:column;gap:7px}.job-detail .recon-title{font-size:.85rem;font-weight:700;color:var(--ink);letter-spacing:-.01em}.job-detail .recon .muted{max-width:75ch}.job-detail .assign-cost{grid-column:1 / -1;display:flex;flex-direction:column;gap:8px;min-width:0;padding-top:4px}.job-detail .assign-audit{font-size:.78rem;color:var(--ink-3);line-height:1.5;overflow-wrap:anywhere}.job-detail .assign-actions{display:flex;flex-wrap:wrap;gap:8px}.job-detail .assign-picker{display:flex;flex-direction:column;gap:10px;padding:12px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-2);max-width:520px}.job-detail .assign-picker .field-group{min-width:0}.job-detail .assign-picker select,.job-detail .assign-picker input{max-width:100%}.job-detail .assign-done{font-size:.78rem;line-height:1.5;color:var(--green);overflow-wrap:anywhere}.job-detail .assign-hint{font-size:.78rem;line-height:1.5;color:var(--ink-3);overflow-wrap:anywhere}@media(pointer:coarse){.job-detail .assign-actions .btn{min-height:38px}}.job-detail .vat-note{border-top:1px solid var(--line);padding-top:12px;display:flex;flex-direction:column;gap:5px}.job-detail .vat-note-row{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:6px 14px}.job-detail .vat-note-value{font-size:1.05rem;font-weight:700;font-variant-numeric:tabular-nums}.job-detail .vat-note .muted{max-width:75ch}.job-detail .split{display:grid;grid-template-columns:minmax(0,1fr);gap:12px}@media(min-width:700px){.job-detail .split{grid-template-columns:repeat(3,minmax(0,1fr))}}.job-detail .split-item{display:flex;flex-direction:column;gap:3px;min-width:0;padding:12px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-2)}.job-detail .split-value{font-size:1.15rem;font-weight:700;color:var(--ink);font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.job-detail .split-item .row-sub{grid-column:auto}.job-detail .cost-groups{display:flex;flex-direction:column}.job-detail .cost-group-head{display:grid;width:100%;grid-template-columns:14px minmax(0,1fr) auto;align-items:baseline;gap:1px 9px;padding:11px 0;border:none;border-bottom:1px solid var(--line);background:none;font:inherit;color:var(--ink);text-align:left;cursor:pointer}.job-detail .cost-group:last-child .cost-group-head{border-bottom:none}.job-detail .cost-group-head:hover:not(:disabled){background:var(--surface-2)}.job-detail .cost-group-head:focus-visible{outline:2px solid var(--blue);outline-offset:-2px}.job-detail .cost-group-head:disabled{cursor:default}.job-detail .chev{grid-column:1;grid-row:1;color:var(--ink-3);font-size:.75rem}.job-detail .cost-group-name{grid-column:2;grid-row:1;font-size:.875rem;font-weight:600;overflow-wrap:anywhere}.job-detail .cost-group-amount{grid-column:3;grid-row:1;font-size:.875rem;font-weight:600;text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.job-detail .cost-group-count{grid-column:2;grid-row:2;font-size:.78rem;color:var(--ink-3)}.job-detail .cost-group-head:disabled .cost-group-name,.job-detail .cost-group-head:disabled .cost-group-amount{color:var(--ink-3)}.job-detail .doc-list{padding:2px 0 10px 23px;border-bottom:1px solid var(--line)}.job-detail .cost-group:last-child .doc-list{border-bottom:none}.job-detail .cost-excluded{display:flex;flex-direction:column;border-top:1px solid var(--line);padding-bottom:12px}.job-detail .cost-excluded-head{border-bottom:none;color:var(--ink-2)}.job-detail .cost-excluded-head .cost-group-name{font-weight:600}.job-detail .cost-excluded-note{margin:0;padding-left:23px;max-width:68ch;color:var(--ink-3)}.job-detail .cost-excluded .doc-list{border-bottom:none;padding-top:8px}.job-detail .manual-costs{border-top:1px solid var(--line);padding-top:14px;display:flex;flex-direction:column;gap:14px}.job-detail .manual-cost-form{display:flex;flex-direction:column;gap:12px;max-width:860px}.job-detail .manual-cost-form-fields{display:grid;grid-template-columns:minmax(0,1fr);gap:12px}.job-detail .manual-cost-form-full{grid-column:1 / -1}@media(min-width:560px){.job-detail .manual-cost-form-fields{grid-template-columns:repeat(2,minmax(0,1fr))}}.own-labour{margin-top:1rem;padding:.75rem 0 .75rem .9rem;border-left:3px solid var(--accent, #6b7cff);background:var(--surface-2, rgba(127, 127, 127, .06));border-radius:0 6px 6px 0}.own-labour .split{margin:0}.own-labour-notes{margin:.6rem 0 0;padding-left:1.1rem;font-size:.85rem;line-height:1.45;color:var(--muted, #6b7280)}.own-labour-notes li+li{margin-top:.3rem}.own-labour .labour-breakdown{margin-top:.7rem}.own-labour .labour-breakdown>summary{cursor:pointer;font-size:.85rem;font-weight:600;color:var(--muted, #6b7280);list-style-position:outside}.own-labour .labour-breakdown>summary:hover{color:var(--text, #111827)}.own-labour .labour-breakdown>summary .row-sub{display:block;font-weight:400}.own-labour .labour-days{margin-top:.5rem;padding-right:.9rem}.own-labour .labour-days .row-item{padding:8px 0}.own-labour .labour-days .row-item:last-child{border-bottom:none}.job-detail .split-bill{border-top:1px solid var(--line);padding-top:14px;display:flex;flex-direction:column;gap:12px}.job-detail .split-bill-title{margin:0;font-size:.9rem;font-weight:700;color:var(--ink)}.job-detail .split-block{display:flex;flex-direction:column;gap:6px}.job-detail .split-block-title{margin:0;font-size:.8rem;font-weight:700;color:var(--ink-2);text-transform:uppercase;letter-spacing:.04em}.job-detail .split-actions{grid-column:1 / -1;display:flex;flex-wrap:wrap;gap:8px;min-width:0;padding-top:4px}.job-detail .split-panel{grid-column:1 / -1;min-width:0;max-width:860px;margin-top:8px;padding:12px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-2)}.job-detail .split-lines .row-item{padding:8px 0}.job-detail .split-lines .row-item:last-child{border-bottom:none}.job-detail .split-line-do{grid-column:1 / -1;display:flex;flex-wrap:wrap;align-items:center;gap:8px;min-width:0;padding-top:6px}.job-detail .split-line-do select,.job-detail .split-line-do input{flex:1 1 180px;min-width:0;max-width:100%}.job-detail .split-line-do .btn{flex:0 0 auto}.job-detail .split-line-recon .row-main{color:var(--ink-3);font-weight:600}.job-detail .split-line-recon .row-amount{color:var(--ink-3)}.job-detail .split-stale{border:1px solid var(--amber);border-radius:var(--radius-sm);background:var(--amber-tint);padding:12px;display:flex;flex-direction:column;gap:6px}.job-detail .split-stale-head{margin:0;font-size:.82rem;line-height:1.5;color:var(--ink)}.job-detail .split-stale .row-item{border-bottom-color:var(--amber)}@media(pointer:coarse){.job-detail .split-actions .btn,.job-detail .split-line-do .btn{min-height:38px}}.job-detail .pc-sums{margin-top:16px}.job-detail .pc-sums .section-head{display:flex;align-items:baseline;gap:10px}.job-detail .pc-sums .section-head .btn:first-of-type{margin-left:auto}.job-detail .pc-sum-panel{margin-top:10px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);overflow:hidden}.job-detail .pc-sum-panel>summary{cursor:pointer;padding:11px 13px;background:var(--surface-2);list-style-position:outside}.job-detail .pc-sum-panel[open]>summary{border-bottom:1px solid var(--line)}.job-detail .pc-sum-trade-name{font-size:.875rem;font-weight:700}.job-detail .pc-sum-headline{display:block;margin-top:2px;font-size:.8rem;color:var(--ink-3);font-variant-numeric:tabular-nums}.job-detail .pc-sum-headline.is-over{color:var(--ink-2)}.job-detail .pc-sum-body{padding:12px 13px 13px}.job-detail .pc-sum-allowance{margin-bottom:12px}.job-detail .pc-sum-allowance-figure{display:flex;align-items:center;gap:8px}.job-detail .pc-sum-allowance-figure label{font-size:.8rem;font-weight:600}.job-detail .pc-sum-provenance{margin:5px 0 0;font-size:.78rem;color:var(--ink-3);line-height:1.5;font-variant-numeric:tabular-nums}.job-detail .pc-sum-provenance em{font-style:normal;color:var(--amber-ink, var(--ink-2))}.job-detail .pc-sum-drift{margin:0 0 12px;font-size:.78rem;line-height:1.5;color:var(--amber-ink, var(--ink-2))}.job-detail .pc-sum-grid{display:grid;gap:0}.job-detail .pc-sum-grid-head,.job-detail .pc-sum-grid-row{display:grid;grid-template-columns:minmax(0,1fr) 3.6rem 5.4rem 5.4rem 4.5rem;align-items:center;gap:8px;padding:4px 0}.job-detail .pc-sum-grid-head{font-size:.7rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase;color:var(--ink-3);border-bottom:1px solid var(--line);padding-bottom:6px}.job-detail .pc-sum-grid-row{color:var(--ink-3)}.job-detail .pc-sum-grid-row.is-used{color:var(--ink)}.job-detail .pc-sum-grid-row.is-used .pc-sum-row-total{font-weight:700}.job-detail .pc-sum-grid-row+.pc-sum-grid-row{border-top:1px solid var(--line-soft, rgba(127,127,127,.14))}.job-detail .pc-sum-grid-row.is-time{border-top:1px solid var(--line);margin-top:2px}.job-detail .pc-sum-grid.is-bills .pc-sum-grid-head,.job-detail .pc-sum-grid.is-bills .pc-sum-grid-row{grid-template-columns:minmax(0,1fr) 7rem}.job-detail .pc-sum-markup{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.job-detail .pc-sum-grid input.pct{width:3.4rem;text-align:right;font-variant-numeric:tabular-nums}.job-detail .pc-sum-desc{font-size:.82rem;min-width:0;overflow-wrap:anywhere}.job-detail .pc-sum-none{color:var(--ink-3)}.job-detail .pc-sum-row-total{font-size:.82rem;font-variant-numeric:tabular-nums}.job-detail .pc-sum-grid input,.job-detail .pc-sum-allowance input{font:inherit;font-size:.82rem;width:100%;padding:4px 6px;border:1px solid var(--line);border-radius:4px;background:var(--surface);color:inherit}.job-detail .pc-sum-grid input.qty,.job-detail .pc-sum-grid input.money,.job-detail .pc-sum-allowance input.money{text-align:right;font-variant-numeric:tabular-nums}.job-detail .pc-sum-allowance input.money{width:7rem;font-size:.95rem;font-weight:700}.job-detail .pc-sum-grid input.is-overridden{border-color:var(--amber, #b45309)}.job-detail .pc-sum-row-actions{display:flex;align-items:center;gap:6px;justify-content:flex-end}.job-detail .pc-sum-flag{font-size:.68rem;color:var(--amber-ink, var(--ink-2));white-space:nowrap}.job-detail .pc-sum-remove{border:0;background:none;cursor:pointer;padding:2px 6px;font-size:1rem;line-height:1;color:var(--ink-3)}.job-detail .pc-sum-remove:hover{color:var(--red, #b42318)}.job-detail .pc-sum-totals{margin:14px 0 0;padding-top:10px;border-top:2px solid var(--line);display:grid;gap:4px}.job-detail .pc-sum-totals>div{display:flex;align-items:baseline;gap:10px;font-size:.82rem}.job-detail .pc-sum-totals dt{color:var(--ink-3)}.job-detail .pc-sum-totals dd{margin:0 0 0 auto;font-variant-numeric:tabular-nums;font-weight:600}.job-detail .pc-sum-totals>div.is-over,.job-detail .pc-sum-totals>div.is-under{margin-top:4px;padding-top:6px;border-top:1px solid var(--line);font-size:.95rem}.job-detail .pc-sum-totals>div.is-over dt,.job-detail .pc-sum-totals>div.is-under dt{color:var(--ink);font-weight:700}.job-detail .pc-sum-totals>div.is-over dd,.job-detail .pc-sum-totals>div.is-under dd{font-weight:800}.job-detail .pc-sum-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.job-detail .pc-sum-actions .btn-primary{margin-left:auto}.job-detail .pc-sums-error{margin:8px 0 0;font-size:.8rem;color:var(--red, #b42318)}.job-detail .pc-sums-empty{margin-top:16px}@media(max-width:620px){.job-detail .pc-sum-grid-head{display:none}.job-detail .pc-sum-grid-row{grid-template-columns:3.4rem 5rem 1fr auto;row-gap:4px;padding:8px 0}.job-detail .pc-sum-desc{grid-column:1 / -1;font-weight:600}.job-detail .pc-sum-row-total{text-align:right}.job-detail .pc-sum-grid.is-bills .pc-sum-grid-row{grid-template-columns:minmax(0,1fr) 6rem}.job-detail .pc-sum-grid.is-bills .pc-sum-desc{grid-column:1;font-weight:400}}.job-detail .pc-sum-actions-row{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:8px}.job-detail .pc-sum-picker{flex:1 1 100%;margin-top:10px;padding:10px 12px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-2)}.job-detail .pc-sum-picker-head{display:flex;align-items:baseline;gap:10px;font-size:.82rem}.job-detail .pc-sum-picker-head .btn{margin-left:auto}.job-detail .pc-sum-picker-list{list-style:none;margin:8px 0 6px;padding:0}.job-detail .pc-sum-picker-list li+li{border-top:1px solid var(--line)}.job-detail .pc-sum-picker-item{display:block;width:100%;text-align:left;border:0;background:none;cursor:pointer;padding:9px 4px;font:inherit;color:inherit}.job-detail .pc-sum-picker-item:hover:not(:disabled){background:var(--surface)}.job-detail .pc-sum-picker-item:disabled{opacity:.55;cursor:default}.job-detail .pc-sum-picker-name{display:block;font-size:.82rem;font-weight:600;overflow-wrap:anywhere}.job-detail .pc-sum-picker-meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:2px;font-size:.75rem;color:var(--ink-3)}.job-detail .pc-sum-picker-tag{padding:1px 7px;border-radius:10px;background:var(--surface);border:1px solid var(--line)}.job-detail .pc-sum-picker-tag.is-current{border-color:var(--blue, #2563eb);color:var(--blue, #2563eb)}.bill-split-page .split-bill{border-top:none;padding-top:0}.bill-split-page .target-search{display:flex;flex-wrap:wrap;align-items:flex-end;gap:10px;max-width:860px}.bill-split-page .target-search-field{flex:1 1 220px;min-width:0}.bill-split-page .target-search .btn{flex:0 0 auto}.bill-split-page .target-search-status{max-width:75ch}@media(pointer:coarse){.bill-split-page .target-search .btn{min-height:38px}}.vehicles-page .fleet-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:14px}.vehicles-page .fleet-col{display:flex;flex-direction:column;gap:10px;min-width:0}@media(min-width:900px){.app:has(>.main>.vehicles-page){height:100vh}.main:has(>.vehicles-page){display:flex;flex-direction:column;min-height:0}.main>.vehicles-page:has(>.fleet-layout){flex:1;min-height:0;display:flex;flex-direction:column}.vehicles-page .fleet-layout{grid-template-columns:minmax(0,1.2fr) minmax(380px,1fr);flex:1;min-height:420px;max-height:760px;align-items:stretch}.vehicles-page .fleet-col{min-height:0;overflow-y:auto}}.vehicles-page .vehicle-map{position:relative;height:300px;border-radius:var(--radius);overflow:hidden;border:1px solid var(--line);box-shadow:var(--shadow);background:var(--surface-3)}@media(min-width:900px){.vehicles-page .vehicle-map{height:100%}}.vehicles-page .vehicle-map-canvas{width:100%;height:100%}.vehicles-page .vehicle-map-state{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:16px;text-align:center;background:var(--surface-3);color:var(--ink-3);font-size:.9rem}.vehicles-page .vehicle-map-state-head{color:var(--ink);font-weight:600}.vehicles-page .vehicle-map-state-detail{max-width:44ch}.vehicles-page .van-plate{font-family:IBM Plex Mono,ui-monospace,monospace;font-size:.82rem;font-weight:600;letter-spacing:.02em;white-space:nowrap;padding:4px 8px;border-radius:var(--radius-sm);border:1px solid var(--line-strong);background:var(--surface);color:var(--ink);box-shadow:var(--shadow-md);line-height:1.15;z-index:1}.vehicles-page .van-plate-critical{background:var(--red);border-color:var(--red);color:#fff}.vehicles-page .van-plate-warn{background:var(--amber);border-color:var(--amber);color:#fff}.vehicles-page .van-plate-live{background:var(--green);border-color:var(--green);color:#fff}.vehicles-page .van-plate-idle{background:var(--surface);border-color:var(--line-strong);color:var(--ink)}.vehicles-page .van-plate-highlighted{outline:2px solid var(--blue);outline-offset:2px;box-shadow:var(--shadow-lg);z-index:2}.vehicles-page .van-plate:hover{box-shadow:var(--shadow-lg)}.vehicles-page .van-plate-speed{margin-left:6px;padding-left:6px;border-left:1px solid currentColor;font-size:.72rem;font-weight:500;opacity:.85;font-variant-numeric:tabular-nums}.vehicles-page .van-plate-speed[hidden]{display:none}.vehicles-page .van-plate-offroad{background:var(--red);border-color:var(--red);color:#fff}.vehicles-page .van-plate-status{margin-left:6px;padding-left:6px;border-left:1px solid currentColor;font-size:.68rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase}.vehicles-page .van-plate-status[hidden]{display:none}.vehicles-page .job-pin{display:flex;flex-direction:column;align-items:center;gap:2px;padding:0;border:0;background:none;cursor:pointer;z-index:0;font:inherit}.vehicles-page .job-pin-mark{width:9px;height:9px;transform:rotate(45deg);background:var(--surface);border:2px solid var(--ink-3);box-shadow:var(--shadow)}.vehicles-page .job-pin-critical .job-pin-mark{border-color:var(--red)}.vehicles-page .job-pin-warn .job-pin-mark{border-color:var(--amber)}.vehicles-page .job-pin-live .job-pin-mark{border-color:var(--green)}.vehicles-page .job-pin-idle .job-pin-mark{border-color:var(--ink-3)}.vehicles-page .job-pin-reg{font-family:IBM Plex Mono,ui-monospace,monospace;font-size:.62rem;font-weight:500;line-height:1.2;white-space:nowrap;color:var(--ink-2);padding:0 3px;border-radius:3px;background:color-mix(in srgb,var(--surface) 80%,transparent)}.vehicles-page .job-pin-highlighted .job-pin-mark{outline:2px solid var(--blue);outline-offset:2px}.vehicles-page .job-pin-highlighted .job-pin-reg{color:var(--ink)}.vehicles-page .place-marker{display:flex;align-items:center;gap:4px;white-space:nowrap;pointer-events:none;z-index:0}.vehicles-page .place-marker-mark{flex:none;width:8px;height:8px;border-radius:2px;background:var(--ink-3);border:1.5px solid var(--surface);box-shadow:var(--shadow);box-sizing:border-box}.vehicles-page .place-marker-name{max-width:11rem;overflow:hidden;text-overflow:ellipsis;font-size:.66rem;font-weight:600;letter-spacing:.01em;line-height:1.2;color:var(--ink-2);padding:1px 4px;border-radius:3px;background:color-mix(in srgb,var(--surface) 78%,transparent)}@media(max-width:480px){.vehicles-page .place-marker-name{max-width:7.5rem}}.vehicles-page .vehicle-map-overlays{position:absolute;top:10px;left:10px;max-width:calc(100% - 130px);display:flex;flex-direction:column;align-items:flex-start;gap:6px;pointer-events:none;z-index:1}.vehicles-page .vehicle-map-follow{display:flex;flex-wrap:wrap;align-items:baseline;column-gap:6px;row-gap:2px;padding:4px 8px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);box-shadow:var(--shadow);color:var(--ink-2);font-size:.78rem;pointer-events:auto}.vehicles-page .vehicle-map-follow-label{white-space:nowrap}.vehicles-page .vehicle-map-follow-reg{font-family:IBM Plex Mono,ui-monospace,monospace;font-size:.85rem;font-weight:600;color:var(--ink)}.vehicles-page .vehicle-map-follow-stop{padding:0;border:0;background:none;color:var(--blue);font:inherit;white-space:nowrap;cursor:pointer}.vehicles-page .vehicle-map-follow-stop:hover{text-decoration:underline}.vehicles-page .vehicle-map-follow-stop:focus-visible{outline:2px solid var(--blue);outline-offset:2px}@media(max-width:480px){.vehicles-page .vehicle-map-follow-sep{display:none}}.vehicles-page .vehicle-map-note{padding:4px 8px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);box-shadow:var(--shadow);color:var(--ink-2);font-size:.78rem;pointer-events:none}.vehicles-page .vehicle-map-traffic{position:absolute;top:10px;right:10px;padding:4px 10px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);box-shadow:var(--shadow);color:var(--ink-2);font:inherit;font-size:.78rem;cursor:pointer;z-index:1}.vehicles-page .vehicle-map-traffic:hover{color:var(--ink);border-color:var(--line-strong)}.vehicles-page .vehicle-map-traffic:focus-visible{outline:2px solid var(--blue);outline-offset:2px}.vehicles-page .van-info{font-size:.85rem;color:var(--ink-2);line-height:1.5}.vehicles-page .van-info-reg{display:block;font-family:IBM Plex Mono,ui-monospace,monospace;font-size:.95rem;color:var(--ink)}.vehicles-page .fleet-errors{display:flex;flex-direction:column;gap:8px;margin-bottom:14px}.vehicles-page .fleet-error{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.vehicles-page .fleet-error-text{flex:1 1 240px;min-width:0}.vehicles-page .fleet-exceptions{display:flex;flex-wrap:wrap;align-items:center;gap:6px 8px;padding:9px 12px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow);border-left:3px solid var(--line-strong)}.vehicles-page .fleet-exceptions.tone-critical{border-left-color:var(--red);background:var(--red-tint);border-color:var(--red-line)}.vehicles-page .fleet-exceptions.tone-warn{border-left-color:var(--amber);background:var(--amber-tint);border-color:color-mix(in srgb,var(--amber) 30%,transparent)}.vehicles-page .fleet-exceptions-title{font-size:.8rem;font-weight:700;color:var(--ink);margin-right:2px}.vehicles-page .fleet-exceptions-more{font-size:.78rem;color:var(--ink-2)}.vehicles-page .fleet-exception{display:inline-flex;align-items:center;max-width:100%;padding:3px 9px;border-radius:11px;border:1px solid transparent;background:var(--surface);font-family:IBM Plex Mono,ui-monospace,monospace;font-size:.85rem;font-weight:600;letter-spacing:.02em;white-space:nowrap;text-align:left}.vehicles-page .fleet-exception.tone-critical{border-color:var(--red-line);color:var(--red)}.vehicles-page .fleet-exception.tone-warn{border-color:color-mix(in srgb,var(--amber) 40%,transparent);color:var(--amber)}.vehicles-page .fleet-exception:hover{box-shadow:var(--shadow-md)}.vehicles-page .fleet-list{list-style:none;display:flex;flex-direction:column;gap:8px;margin:0;padding:0}.vehicles-page .fleet-row{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:10px;row-gap:3px;align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:10px 14px;border-left:3px solid var(--line-strong)}.vehicles-page .fleet-row.tone-critical{border-left-color:var(--red)}.vehicles-page .fleet-row.tone-warn{border-left-color:var(--amber)}.vehicles-page .fleet-row.tone-live{border-left-color:var(--green)}.vehicles-page .fleet-row.tone-idle{border-left-color:var(--ink-3)}.vehicles-page .fleet-row.is-inactive{opacity:.6}.vehicles-page .fleet-row.is-highlighted{outline:2px solid var(--blue);outline-offset:-2px}.vehicles-page .fleet-row-reg{grid-column:1;grid-row:1;font-family:IBM Plex Mono,ui-monospace,monospace;font-size:1.1rem;font-weight:600;letter-spacing:.02em;line-height:1.25;color:var(--ink)}.vehicles-page .fleet-row-reg:hover{color:var(--blue-dark)}.vehicles-page .fleet-row-state{grid-column:2;grid-row:1;justify-self:end;display:inline-flex;align-items:center;gap:5px;font-size:.78rem;color:var(--ink-3);white-space:nowrap}.vehicles-page .fleet-row-state:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--line-strong);flex-shrink:0}.vehicles-page .fleet-row-speed{font-variant-numeric:tabular-nums}.vehicles-page .fleet-row-state.tone-live:before{background:var(--green)}.vehicles-page .fleet-row-state.tone-idle:before{background:var(--ink-3)}.vehicles-page .fleet-row-who{grid-column:1;grid-row:2;min-width:0;font-size:.8rem;color:var(--ink-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vehicles-page .fleet-row-edit{grid-column:2;grid-row:2;justify-self:end;white-space:nowrap}.vehicles-page .fleet-row-job{grid-column:1 / -1;grid-row:3;display:flex;flex-direction:column;gap:1px;min-width:0;font-size:.82rem;margin-top:3px}.vehicles-page .fleet-row-job-title{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vehicles-page .fleet-row-job-when{color:var(--ink-2);font-variant-numeric:tabular-nums;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vehicles-page .fleet-row-job-where{color:var(--ink-3)}.vehicles-page .fleet-row-eta{color:var(--ink-2);font-variant-numeric:tabular-nums}.vehicles-page .fleet-row-eta strong{color:var(--ink)}.vehicles-page .fleet-row-muted{color:var(--ink-3)}.vehicles-page .fleet-flag{grid-column:1 / -1;grid-row:4;justify-self:start;display:inline-flex;align-items:center;gap:5px;margin-top:5px;padding:2px 9px;border-radius:11px;border:1px solid transparent;font-size:.755rem;font-weight:600}.vehicles-page .fleet-flag:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor;flex-shrink:0}.vehicles-page .fleet-flag.tone-critical{background:var(--red-tint);color:var(--red);border-color:var(--red-line)}.vehicles-page .fleet-flag.tone-warn{background:var(--amber-tint);color:var(--amber);border-color:color-mix(in srgb,var(--amber) 30%,transparent)}.vehicles-page .modal .modal-title{font-family:IBM Plex Mono,ui-monospace,monospace;letter-spacing:.04em}.drivers-page,.driver-detail-page{display:flex;flex-direction:column;gap:16px}.driver-detail-page .section-title{font-size:.95rem;font-weight:700;margin:0 0 10px}.fleet-people .fp-reg,.fleet-people .fp-code{font-family:IBM Plex Mono,ui-monospace,monospace;letter-spacing:.01em}.fleet-people .fp-code{font-size:.85rem;font-weight:600}.fleet-people .fp-page-error{display:flex;gap:10px;align-items:center;justify-content:space-between;flex-wrap:wrap}.fleet-people .fp-sub .fp-reg{font-size:.85rem}.fleet-people .fp-row,.fleet-people .fp-driver-row{border-left:3px solid var(--line-strong)}.fleet-people .fp-row.tone-red,.fleet-people .fp-driver-row.tone-red{border-left-color:var(--red);background:var(--red-tint)}.fleet-people .fp-row.tone-amber,.fleet-people .fp-driver-row.tone-amber{border-left-color:var(--amber);background:var(--amber-tint)}.fleet-people .fp-row.tone-green,.fleet-people .fp-driver-row.tone-green{border-left-color:var(--green)}.fleet-people .fp-row.tone-muted,.fleet-people .fp-driver-row.tone-muted{border-left-color:var(--ink-3)}.fleet-people .fp-line{font-size:.85rem;color:var(--ink-2)}.fleet-people .fp-line.tone-red{color:var(--red);font-weight:600}.fleet-people .fp-line.tone-amber{color:var(--amber);font-weight:600}.fleet-people .fp-flag{display:inline-block;font-size:.8rem;font-weight:600;padding:3px 9px;border-radius:11px;border:1px solid transparent}.fleet-people .fp-flag.tone-amber{color:var(--amber);background:var(--amber-tint);border-color:color-mix(in srgb,var(--amber) 30%,transparent)}.fleet-people .fp-disagreement{padding:14px 16px;background:var(--amber-tint);border:1px solid color-mix(in srgb,var(--amber) 35%,transparent);border-left:4px solid var(--amber);border-radius:var(--radius);display:flex;flex-direction:column;gap:6px;font-size:.9rem}.fleet-people .fp-disagreement-head{font-size:1.05rem;font-weight:700;color:var(--ink)}.fleet-people .fp-disagreement-source{color:var(--ink-2);font-size:.82rem}.fleet-people .fp-check-disagreement{color:var(--amber);font-weight:600;font-size:.85rem}.fleet-people .fp-driver-list{list-style:none;display:flex;flex-direction:column;gap:8px}.fleet-people .fp-driver-row{background:var(--surface);border:1px solid var(--line);border-left-width:3px;border-radius:var(--radius);box-shadow:var(--shadow);padding:12px 14px;display:grid;grid-template-columns:minmax(0,1fr);gap:6px}.fleet-people .fp-driver-row.is-inactive{opacity:.75}.fleet-people .fp-driver-who{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.fleet-people .fp-driver-name{font-size:1.05rem;font-weight:700}.fleet-people .fp-driver-vans{display:inline-flex;gap:8px;flex-wrap:wrap;font-size:.85rem;color:var(--ink-2)}.fleet-people .fp-driver-points{font-weight:700;font-variant-numeric:tabular-nums}.fleet-people .fp-driver-dates{display:flex;flex-direction:column;gap:2px}@media(min-width:760px){.fleet-people .fp-driver-row{grid-template-columns:minmax(0,1.2fr) 8rem minmax(0,1.6fr);align-items:center}.fleet-people .fp-driver-row .fp-flag{grid-column:1 / -1;justify-self:start}}.fleet-people .fp-list{list-style:none;display:flex;flex-direction:column;gap:8px;margin-top:12px}.fleet-people .fp-row{background:var(--surface);border:1px solid var(--line);border-left-width:3px;border-radius:var(--radius);padding:10px 14px;display:flex;flex-direction:column;gap:5px;scroll-margin-top:16px}.fleet-people .fp-row.fp-editing{border-left-color:var(--blue)}.fleet-people .fp-row.is-spent .fp-row-title,.fleet-people .fp-row.is-spent .fp-code{color:var(--ink-3);text-decoration:line-through}.fleet-people .fp-row-head{display:flex;align-items:baseline;gap:4px 10px;flex-wrap:wrap}.fleet-people .fp-row-title{font-size:.93rem}.fleet-people .fp-row-by{color:var(--ink-2);font-size:.85rem}.fleet-people .fp-row-state{margin-left:auto;font-size:.8rem;font-weight:600;color:var(--ink-2);white-space:nowrap}.fleet-people .fp-row-meta{font-size:.85rem;color:var(--ink-2)}.fleet-people .fp-respond-by{font-size:.875rem;font-weight:600;color:var(--ink)}.fleet-people .fp-evidence{font-size:.8rem;color:var(--ink-3)}.fleet-people .fp-note,.fleet-people .fp-account{font-size:.85rem;color:var(--ink);white-space:pre-wrap;overflow-wrap:anywhere}.fleet-people .fp-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:flex-start;margin-top:4px}.fleet-people .fp-actions .fp-confirm{flex-basis:100%}.fleet-people .fp-empty{padding:10px 0}.fleet-people .fp-add{margin:4px 0;align-self:flex-start}.fleet-people .fp-subhead{font-size:.85rem;font-weight:700;color:var(--ink-2);margin:16px 0 6px}.fleet-people .fp-plain-list{list-style:none;display:flex;flex-direction:column;gap:2px}.fleet-people .fp-facts{display:grid;grid-template-columns:minmax(0,1fr);gap:2px 16px;font-size:.85rem;margin:2px 0 6px}.fleet-people .fp-facts dt{color:var(--ink-3);font-weight:600;font-size:.78rem;margin-top:4px}.fleet-people .fp-facts dd{overflow-wrap:anywhere}@media(min-width:560px){.fleet-people .fp-facts{grid-template-columns:9.5rem minmax(0,1fr)}.fleet-people .fp-facts dt{margin-top:0}}.fleet-people .fp-points-total{font-size:1.6rem;font-weight:700;letter-spacing:-.02em;font-variant-numeric:tabular-nums}.fleet-people .fp-points-basis{font-size:.82rem;color:var(--ink-2);margin-bottom:8px}.fleet-people .fp-due{margin-bottom:6px}.fleet-people .fp-form,.fleet-people .fp-upload{display:flex;flex-direction:column;gap:12px;margin:8px 0}.fleet-people .fp-form-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:12px}@media(min-width:560px){.fleet-people .fp-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.fleet-people .fp-field.is-wide{grid-column:1 / -1}}.fleet-people .fp-field{gap:6px}.fleet-people .fp-check{display:inline-flex;align-items:center;gap:8px;font-size:.875rem;min-height:36px;cursor:pointer}.fleet-people .fp-check input{width:auto;margin:0}.fleet-people .fp-radios{display:flex;gap:18px;flex-wrap:wrap}.fleet-people .fp-fieldset{border:1px solid var(--line);border-radius:var(--radius);padding:10px 12px 12px;display:flex;flex-direction:column;gap:10px}.fleet-people .fp-fieldset legend{font-weight:700;font-size:.85rem;padding:0 4px}.fleet-people .fp-party{display:flex;flex-direction:column;gap:8px;padding-bottom:10px;border-bottom:1px dashed var(--line)}.fleet-people .fp-damage-form{padding:10px 12px;background:var(--surface-2);border-radius:var(--radius-sm)}.fleet-people .fp-confirm{display:flex;flex-direction:column;gap:8px;padding:10px 12px;background:var(--red-tint);border:1px solid var(--red-line);border-radius:var(--radius-sm)}.fleet-people .fp-confirm-warning{font-size:.85rem;color:var(--red-dark)}.fleet-people .fp-doc-grid{list-style:none;display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px;margin:6px 0}.fleet-people .fp-doc{display:flex;flex-direction:column;gap:3px;min-width:0;font-size:.8rem}.fleet-people .fp-doc-thumb{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:2px;aspect-ratio:4 / 3;width:100%;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-2);overflow:hidden;color:var(--ink-3);font-size:.8rem}.fleet-people .fp-doc-thumb img{width:100%;height:100%;object-fit:cover;display:block}.fleet-people .fp-doc-thumb.is-pdf{cursor:pointer;font-family:inherit}.fleet-people .fp-doc-thumb.is-pdf:hover:not(:disabled){background:var(--surface-3);color:var(--ink)}.fleet-people .fp-doc-pdf{font-family:IBM Plex Mono,ui-monospace,monospace;font-weight:700;font-size:1.1rem;color:var(--red)}.fleet-people .fp-doc-open{font-weight:600;color:var(--blue)}.fleet-people .fp-doc-kind{font-weight:700;color:var(--ink);overflow-wrap:anywhere}.fleet-people .fp-doc-label{color:var(--ink);overflow-wrap:anywhere}.fleet-people .fp-doc-meta{color:var(--ink-3);overflow-wrap:anywhere}.fleet-people .fp-doc-error{color:var(--red)}.fleet-people .fp-doc-confirm{display:flex;gap:6px;flex-wrap:wrap}.fleet-people .fp-doc-remove{align-self:flex-start}.fleet-people .fp-accident-summary{display:flex;flex-wrap:wrap;gap:2px 10px;font-size:.875rem;font-weight:600;color:var(--ink)}.fleet-people .fp-money{font-variant-numeric:tabular-nums}.fleet-people .fp-accident-section{display:flex;flex-direction:column;gap:6px;border-top:1px solid var(--line);padding-top:8px;margin-top:4px;min-width:0}.fleet-people .fp-accident-section>.fp-subhead{margin:0}.fleet-people .fp-liability-now{font-size:.9rem}.fleet-people .fp-timeline{list-style:none;display:flex;flex-direction:column;gap:10px;border-left:2px solid var(--line);padding-left:12px;margin:2px 0 0 2px}.fleet-people .fp-timeline-entry{display:flex;flex-direction:column;gap:3px;font-size:.85rem;min-width:0}.fleet-people .fp-timeline-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 10px}.fleet-people .fp-timeline-head .fp-row-by{overflow-wrap:anywhere}.fleet-people .fp-timeline-change{font-weight:600;color:var(--ink)}.fleet-people .fp-timeline-entry .fp-remove{align-self:flex-start}.fleet-people .fp-accident{padding:0;gap:0;overflow:hidden}.fleet-people .fp-summary{display:grid;grid-template-columns:minmax(0,1fr) auto auto;grid-template-areas:"when  state chevron" "where where where" "facts facts facts";gap:3px 10px;align-items:baseline;width:100%;padding:10px 14px;background:none;border:0;text-align:left;font:inherit;color:inherit}.fleet-people .fp-summary:hover{background:color-mix(in srgb,var(--ink) 4%,transparent)}.fleet-people .fp-summary:focus-visible{outline-offset:-2px}.fleet-people .fp-summary-when{grid-area:when;min-width:0;overflow-wrap:anywhere}.fleet-people .fp-summary-driver{display:block;color:var(--ink-2)}.fleet-people .fp-summary .fp-summary-state{grid-area:state;margin-left:0}.fleet-people .fp-chevron{grid-area:chevron;color:var(--ink-3);font-size:.8rem}.fleet-people .fp-summary-where{grid-area:where;min-width:0;font-size:.85rem;color:var(--ink-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fleet-people .fp-accident.is-open .fp-summary-where{white-space:normal;overflow-wrap:anywhere}.fleet-people .fp-summary .fp-accident-summary{grid-area:facts;min-width:0;gap:2px 14px}.fleet-people .fp-summary .fp-sep{display:none}.fleet-people .fp-summary-counts{font-weight:500;color:var(--ink-2)}.fleet-people .fp-accident-body{display:flex;flex-direction:column;gap:5px;padding:10px 14px 12px;border-top:1px solid var(--line)}.fleet-people .fp-accident-body[hidden]{display:none}@media(min-width:720px){.fleet-people .fp-summary{grid-template-columns:18rem minmax(0,1fr) auto auto;grid-template-areas:"when  where state chevron" "facts facts facts facts";gap:3px 14px}.fleet-people .fp-summary .fp-accident-summary{gap:2px 10px}.fleet-people .fp-summary .fp-sep,.fleet-people .fp-summary-driver{display:inline}}.fleet-people .fp-erase{border-color:var(--red-line);display:flex;flex-direction:column;gap:10px;font-size:.875rem}.fleet-people .fp-erase input{max-width:22rem}.fleet-people .fp-add-driver{align-self:stretch}.vehicle-detail-page .defect-accident{font-size:.85rem;color:var(--ink-2)}.vehicle-detail-page .defect-row,.vehicle-detail-page .fp-accident{scroll-margin-top:16px}.fleet-people .fp-own-add{display:flex;flex-direction:column;gap:6px;align-items:flex-start}.fleet-people .fp-car-list{list-style:none;display:flex;flex-direction:column;gap:14px;margin-bottom:10px}.fleet-people .fp-car{display:flex;flex-direction:column;gap:6px;padding-bottom:14px;border-bottom:1px solid var(--line)}.fleet-people .fp-car:last-child{border-bottom:0;padding-bottom:0}.fleet-people .fp-car.is-retired{opacity:.8}.fleet-people .fp-car-head{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.fleet-people .fp-car-reg{font-size:1.15rem;font-weight:700}.fleet-people .fp-car-described{color:var(--ink-2);font-size:.85rem;text-transform:capitalize}.fleet-people .fp-car-lines{display:flex;flex-direction:column;gap:2px}.fleet-people .fp-business-use{font-weight:700}.fleet-people .fp-business-use.is-not{color:var(--red)}.fleet-people .fp-own-car{font-size:.85rem;color:var(--ink-2)}.fleet-people .fp-submissions{border-color:color-mix(in srgb,var(--amber) 45%,transparent)}.fleet-people .fp-submission{display:flex;flex-direction:column;gap:10px}.fleet-people .fp-submission+.fp-submission{border-top:1px solid var(--line);padding-top:14px;margin-top:14px}.fleet-people .fp-submission-when{font-size:.875rem;color:var(--ink-2)}.fleet-people .fp-code{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:4px}.fleet-people .fp-code-value{font-size:1.15rem;font-weight:700;letter-spacing:.08em}.fleet-people .fp-code-last8,.fleet-people .fp-code-link{font-size:.85rem}.fleet-people .fp-declared{font-weight:700}.fleet-people .fp-declared-beside{font-size:.85rem;color:var(--ink-2);padding:2px 8px;border-radius:999px;border:1px dashed var(--line);align-self:center}.fleet-people .fp-submission-actions{gap:8px}.fleet-people .fp-fill-from{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.fleet-people .fp-scan-table{border-collapse:collapse;font-size:.875rem;width:100%;max-width:760px}.fleet-people .fp-scan-table th,.fleet-people .fp-scan-table td{text-align:left;padding:6px 10px 6px 0;border-bottom:1px solid var(--line);vertical-align:top}.fleet-people .fp-scan-table thead th{font-size:.78rem;color:var(--ink-3);font-weight:600}.fleet-people .fp-scan-table tbody th{font-weight:600;color:var(--ink-2);white-space:nowrap}.fleet-people .fp-scan-table tr.is-different td{background:var(--amber-tint)}.fleet-people .fp-scan-tag{font-size:.75rem;color:var(--ink-3)}.fleet-people .fp-scan-tag.is-different{color:var(--amber);font-weight:700}.vehicle-detail-page{display:flex;flex-direction:column;gap:16px}.vehicle-detail-page .section-title{font-size:.95rem;font-weight:700;margin:0 0 10px}.vehicle-detail-page .check-row,.vehicle-detail-page .suspect-anchor-row,.vehicle-detail-page .defect-row,.vehicle-detail-page .service-due{border-left:3px solid var(--line-strong)}.vehicle-detail-page .check-row.tone-red,.vehicle-detail-page .suspect-anchor-row.tone-red,.vehicle-detail-page .defect-row.tone-red,.vehicle-detail-page .service-due.tone-red{border-left-color:var(--red);background:var(--red-tint)}.vehicle-detail-page .check-row.tone-amber,.vehicle-detail-page .suspect-anchor-row.tone-amber,.vehicle-detail-page .defect-row.tone-amber,.vehicle-detail-page .service-due.tone-amber{border-left-color:var(--amber);background:var(--amber-tint)}.vehicle-detail-page .check-row.tone-green,.vehicle-detail-page .suspect-anchor-row.tone-green,.vehicle-detail-page .defect-row.tone-green,.vehicle-detail-page .service-due.tone-green{border-left-color:var(--green)}.vehicle-detail-page .check-row.tone-muted,.vehicle-detail-page .suspect-anchor-row.tone-muted,.vehicle-detail-page .defect-row.tone-muted,.vehicle-detail-page .service-due.tone-muted{border-left-color:var(--ink-3)}.vehicle-detail-page .tone-red .defect-standing,.vehicle-detail-page .tone-red .service-due-headline{color:var(--red)}.vehicle-detail-page .tone-amber .defect-standing,.vehicle-detail-page .tone-amber .service-due-headline{color:var(--amber)}.vehicle-detail-page .van-reg-title{font-family:IBM Plex Mono,ui-monospace,monospace;letter-spacing:.01em}.vehicle-detail-page .van-mileage-line{font-size:1.05rem;font-weight:600;margin:0}.vehicle-detail-page .van-mileage-line.status-unknown{color:var(--amber)}.vehicle-detail-page .van-suspect-anchors{margin-top:12px}.vehicle-detail-page .section-subtitle{font-size:.8rem;font-weight:700;color:var(--ink-2);margin:0 0 6px}.vehicle-detail-page .suspect-anchor-list{list-style:none;display:flex;flex-direction:column;gap:6px;margin:0;padding:0}.vehicle-detail-page .suspect-anchor-row{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px;font-size:.85rem;padding:8px 12px;border-radius:var(--radius-sm);border-left:3px solid var(--line-strong)}.vehicle-detail-page .suspect-anchor-miles{font-weight:700;font-variant-numeric:tabular-nums}.vehicle-detail-page .suspect-anchor-date{color:var(--ink-2);font-variant-numeric:tabular-nums}.vehicle-detail-page .suspect-anchor-reason{color:var(--ink-3);flex-basis:100%}.vehicle-detail-page .van-renewal-list{list-style:none;display:flex;flex-direction:column;gap:4px;margin:0;padding:0}.vehicle-detail-page .van-renewal-row{display:flex;justify-content:space-between;gap:12px;font-size:.875rem;padding:5px 0}.vehicle-detail-page .van-renewal-row+.van-renewal-row{border-top:1px solid var(--line)}.vehicle-detail-page .van-renewal-kind{font-weight:600}.vehicle-detail-page .van-renewal-due{color:var(--ink-2);font-variant-numeric:tabular-nums}.vehicle-detail-page .check-list{list-style:none;display:flex;flex-direction:column;gap:8px;margin:0;padding:0}.vehicle-detail-page .check-row{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:10px 14px;border-left:3px solid var(--line-strong);display:flex;flex-direction:column;gap:6px}.vehicle-detail-page .check-meta{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;gap:6px 16px;align-items:baseline;font-size:.85rem}.vehicle-detail-page .check-date{font-weight:700}.vehicle-detail-page .check-by{color:var(--ink-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vehicle-detail-page .check-odo{color:var(--ink-2);text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.vehicle-detail-page .check-items{list-style:none;display:flex;flex-direction:column;gap:2px;margin:0;padding:0;font-size:.85rem}.vehicle-detail-page .check-item{font-weight:600;display:flex;flex-direction:column;gap:3px}.vehicle-detail-page .check-item.tone-red{color:var(--red)}.vehicle-detail-page .check-item.tone-muted{color:var(--ink-3)}.vehicle-detail-page .check-item-verdict{display:block}.vehicle-detail-page .check-item-notes{list-style:none;display:flex;flex-direction:column;gap:2px;margin:0;padding:0 0 0 10px;border-left:2px solid var(--line)}.vehicle-detail-page .check-item-note{font-weight:400;color:var(--ink-2);overflow-wrap:anywhere}.vehicle-detail-page .check-item-orphan{display:flex;flex-direction:column;gap:3px;font-size:.85rem;font-weight:600;color:var(--ink-3)}.vehicle-detail-page .check-clear{font-size:.85rem}.vehicle-detail-page .check-defect-text{font-size:.85rem;color:var(--ink-2);margin:0;overflow-wrap:anywhere}.vehicle-detail-page .suspect-anchor-confirmed{color:var(--red);font-weight:600}.vehicle-detail-page .check-remove{font-size:.8rem;padding:2px 8px;align-self:flex-start;color:var(--ink-3)}.vehicle-detail-page .check-remove:hover:not(:disabled){color:var(--red)}.vehicle-detail-page .check-remove-confirm{display:flex;flex-direction:column;gap:8px;padding:10px 12px;border-radius:6px;border:1px solid var(--red-line);background:var(--surface-2, #fff)}.vehicle-detail-page .check-remove-warning{margin:0;font-size:.85rem;color:var(--ink)}.vehicle-detail-page .check-remove-actions{display:flex;gap:8px;flex-wrap:wrap}.vehicle-detail-page .check-form-refusal{display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding:10px 12px;border-radius:var(--radius-sm);border:1px solid var(--red-line);background:var(--red-tint)}.vehicle-detail-page .check-form-refusal-head{margin:0;font-size:.88rem;font-weight:600;color:var(--red-dark)}.vehicle-detail-page .check-form-refusal-clash,.vehicle-detail-page .check-form-refusal-note,.vehicle-detail-page .check-form-refusal-warning{margin:0;font-size:.82rem;color:var(--ink-2)}.vehicle-detail-page .check-form-refusal-clash{color:var(--ink);font-weight:600}.vehicle-detail-page .check-form-refusal-confirm{display:flex;flex-direction:column;gap:8px;width:100%}.vehicle-detail-page .check-form-notice{padding:8px 12px;border-radius:var(--radius-sm);border:1px solid var(--blue-line);background:var(--blue-tint);font-size:.85rem;color:var(--ink)}@media(max-width:620px){.vehicle-detail-page .check-meta{grid-template-columns:1fr}.vehicle-detail-page .check-odo{text-align:left}.vehicle-detail-page .van-renewal-row{flex-direction:column;gap:2px}.vehicle-detail-page .suspect-anchor-row{flex-direction:column;align-items:flex-start;gap:2px}}.vehicle-detail-page .check-photos{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.vehicle-detail-page .check-photo{display:block;width:96px;height:96px;border-radius:var(--radius-sm);border:1px solid var(--line);overflow:hidden;background:var(--surface-2, #fff)}.vehicle-detail-page .check-photo img{width:100%;height:100%;object-fit:cover;display:block}.vehicle-detail-page .check-photo-missing{font-size:.8rem}.vehicle-detail-page .defect-list{list-style:none;display:flex;flex-direction:column;gap:10px;margin:0;padding:0}.vehicle-detail-page .defect-row{background:var(--surface);border:1px solid var(--line);border-left-width:3px;border-radius:var(--radius);display:flex;flex-direction:column;overflow:hidden}.vehicle-detail-page .defect-summary{display:grid;grid-template-columns:minmax(0,1fr) auto auto;grid-template-areas:"flags status chevron" "what  what   what" "meta  meta   meta";gap:4px 10px;align-items:baseline;width:100%;padding:10px 14px;background:none;border:0;text-align:left;font:inherit;color:inherit}.vehicle-detail-page .defect-summary:hover{background:color-mix(in srgb,var(--ink) 4%,transparent)}.vehicle-detail-page .defect-summary:focus-visible{outline-offset:-2px}.vehicle-detail-page .defect-summary-flags{grid-area:flags;display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 8px;min-width:0}.vehicle-detail-page .defect-offroad-flag{font-size:.68rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;color:#fff;background:var(--red);border-radius:var(--radius-sm);padding:1px 6px}.vehicle-detail-page .defect-summary-status{grid-area:status;font-size:.8rem;font-weight:600;color:var(--ink-2);white-space:nowrap}.vehicle-detail-page .defect-chevron{grid-area:chevron;color:var(--ink-3);font-size:.8rem}.vehicle-detail-page .defect-summary-what{grid-area:what;min-width:0;font-size:.9rem;font-weight:600;color:var(--ink);overflow-wrap:anywhere;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;overflow:hidden}.vehicle-detail-page .defect-summary-item{font-weight:500;color:var(--ink-2)}.vehicle-detail-page .defect-summary-meta{grid-area:meta;display:flex;flex-wrap:wrap;gap:2px 14px;min-width:0;font-size:.8rem;color:var(--ink-2);font-variant-numeric:tabular-nums}.vehicle-detail-page .defect-summary-sep{display:none}.vehicle-detail-page .defect-summary-owner.is-unassigned{color:var(--amber);font-weight:700}.vehicle-detail-page .defect-row.is-open .defect-summary-what{display:block;-webkit-line-clamp:none;line-clamp:none;overflow:visible}.vehicle-detail-page .defect-body{display:flex;flex-direction:column;gap:6px;padding:10px 14px 12px;border-top:1px solid var(--line-strong)}.vehicle-detail-page .defect-body[hidden]{display:none}@media(min-width:720px){.vehicle-detail-page .defect-summary{grid-template-columns:11rem minmax(0,1fr) auto auto;grid-template-areas:"flags what status chevron" ".     meta meta   meta";gap:3px 14px}.vehicle-detail-page .defect-summary-what{-webkit-line-clamp:1;line-clamp:1}.vehicle-detail-page .defect-summary-meta{gap:2px 8px}.vehicle-detail-page .defect-summary-sep{display:inline}}.vehicle-detail-page .defect-standing{font-size:.875rem;font-weight:700;margin:0}.vehicle-detail-page .defect-standing.is-correction{font-style:italic}.vehicle-detail-page .defect-reports{font-size:.8rem;color:var(--ink-2);font-variant-numeric:tabular-nums;margin:0}.vehicle-detail-page .defect-note{font-size:.85rem;color:var(--ink-2);margin:0;overflow-wrap:anywhere}.vehicle-detail-page .defect-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 10px}.vehicle-detail-page .defect-severity{font-family:IBM Plex Mono,ui-monospace,monospace;font-size:.74rem;font-weight:700;letter-spacing:.02em;white-space:nowrap}.vehicle-detail-page .defect-severity.tone-red{color:var(--red)}.vehicle-detail-page .defect-severity.tone-amber{color:var(--amber)}.vehicle-detail-page .defect-severity.tone-muted{color:var(--ink-3)}.vehicle-detail-page .defect-severity.is-assumed{font-style:italic;font-weight:500}.vehicle-detail-page .defect-offroad{margin:0;font-size:.875rem;font-weight:700;color:var(--red)}.vehicle-detail-page .defect-offroad-past{margin:0;font-size:.8rem;color:var(--ink-2)}.vehicle-detail-page .defect-state{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px 10px;margin-top:4px;padding-top:10px;border-top:1px solid var(--line-strong)}.vehicle-detail-page .defect-field{gap:4px;min-width:0}.vehicle-detail-page .defect-field .field-label{font-size:.75rem;font-weight:600;color:var(--ink-2)}.vehicle-detail-page .defect-field select{min-width:0}.vehicle-detail-page .defect-field select.is-assumed{font-style:italic}.vehicle-detail-page .defect-repair{grid-column:span 2}.vehicle-detail-page .defect-owner.is-unassigned select{border-color:var(--amber);color:var(--amber);font-weight:700}.vehicle-detail-page .defect-offroad-toggle{display:inline-flex;align-items:center;gap:8px;min-height:34px;font-size:.85rem;cursor:pointer}.vehicle-detail-page .defect-offroad-toggle input{width:18px;height:18px;padding:0;margin:0;flex:none;accent-color:var(--red)}.vehicle-detail-page .defect-offroad-toggle.is-on{color:var(--red);font-weight:700}.vehicle-detail-page .defect-fix-missing{margin:0;font-size:.8rem;font-weight:600;color:var(--amber)}.vehicle-detail-page .defect-save{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}.vehicle-detail-page .defect-save input.is-required{border-color:var(--red)}.vehicle-detail-page .defect-needs-note{margin:0;font-size:.8rem;font-weight:600;color:var(--red-dark)}.vehicle-detail-page .defect-subhead{margin:6px 0 0;font-size:.72rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--ink-2)}.vehicle-detail-page .defect-history{display:flex;flex-direction:column;gap:4px}.vehicle-detail-page .defect-history-gap{margin:0;font-size:.8rem;font-style:italic;color:var(--ink-2)}.vehicle-detail-page .trail-list{list-style:none;display:flex;flex-direction:column;gap:4px;margin:0;padding:0 0 0 12px;border-left:2px solid var(--line-strong)}.vehicle-detail-page .trail-entry{display:flex;flex-wrap:wrap;align-items:baseline;gap:1px 10px;font-size:.8rem}.vehicle-detail-page .trail-when{font-family:IBM Plex Mono,ui-monospace,monospace;font-size:.74rem;font-weight:600;color:var(--ink-2);white-space:nowrap}.vehicle-detail-page .trail-what{font-weight:600;color:var(--ink);overflow-wrap:anywhere}.vehicle-detail-page .trail-who{color:var(--ink-3);overflow-wrap:anywhere}.vehicle-detail-page .trail-note{flex-basis:100%;color:var(--ink-2);overflow-wrap:anywhere}.vehicle-detail-page .van-offroad-banner{padding:10px 14px;font-size:.9rem;color:var(--ink);background:var(--red-tint);border:1px solid var(--red-line);border-left:3px solid var(--red);border-radius:var(--radius)}.vehicle-detail-page .van-offroad-banner strong{color:var(--red-dark)}.vehicle-detail-page .occurrence-list{list-style:none;display:flex;flex-direction:column;gap:8px;margin:4px 0 0;padding:0 0 0 12px;border-left:2px solid var(--line-strong)}.vehicle-detail-page .occurrence{display:flex;flex-direction:column;gap:3px}.vehicle-detail-page .occurrence-meta{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px;font-size:.8rem}.vehicle-detail-page .occurrence-date{font-family:IBM Plex Mono,ui-monospace,monospace;font-size:.76rem;font-weight:600;color:var(--ink-2)}.vehicle-detail-page .occurrence-by{color:var(--ink-3)}.vehicle-detail-page .occurrence-after{font-weight:700;color:var(--ink-2)}.vehicle-detail-page .tone-red .occurrence-after{color:var(--red)}.vehicle-detail-page .tone-amber .occurrence-after{color:var(--amber)}.vehicle-detail-page .occurrence-text{font-size:.875rem;margin:0;overflow-wrap:anywhere}.vehicle-detail-page .occurrence-item{margin:0}.vehicle-detail-page .van-services .card-body{display:flex;flex-direction:column;gap:16px}.vehicle-detail-page .van-services .section-subtitle{margin:0}.vehicle-detail-page .service-due{display:flex;flex-direction:column;gap:2px;padding:10px 12px;border-radius:var(--radius-sm)}.vehicle-detail-page .service-due-headline{font-size:.95rem;font-weight:700}.vehicle-detail-page .service-due-figures{font-family:IBM Plex Mono,ui-monospace,monospace;font-size:.8rem;color:var(--ink-2)}.vehicle-detail-page .service-due-reason{font-size:.8rem;color:var(--ink-3)}.vehicle-detail-page .service-hints{display:flex;flex-direction:column;gap:8px}.vehicle-detail-page .service-hint-list{list-style:none;display:flex;flex-direction:column;gap:6px;margin:0;padding:0}.vehicle-detail-page .service-hint{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;padding:8px 12px;font-size:.85rem;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius-sm)}.vehicle-detail-page .service-hint-text{flex:1 1 240px;min-width:0}.vehicle-detail-page .service-hint-caveat{margin:0}.vehicle-detail-page .service-list{list-style:none;display:flex;flex-direction:column;gap:8px;margin:0;padding:0}.vehicle-detail-page .service-row{display:flex;flex-direction:column;gap:4px;padding:10px 12px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius)}.vehicle-detail-page .service-main{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:4px 14px;align-items:baseline;font-size:.875rem}.vehicle-detail-page .service-date{font-family:IBM Plex Mono,ui-monospace,monospace;font-size:.78rem;font-weight:600;white-space:nowrap}.vehicle-detail-page .service-description{font-weight:600;overflow-wrap:anywhere}.vehicle-detail-page .service-cost{font-family:IBM Plex Mono,ui-monospace,monospace;font-size:.82rem;text-align:right;white-space:nowrap}.vehicle-detail-page .service-sub{display:flex;flex-wrap:wrap;gap:4px 14px}.vehicle-detail-page .service-odo{font-family:IBM Plex Mono,ui-monospace,monospace;font-size:.76rem}.vehicle-detail-page .service-remove-confirm{display:flex;flex-direction:column;gap:8px;padding:10px 12px;border-radius:6px;border:1px solid var(--red-line);background:var(--surface-2, #fff)}.vehicle-detail-page .service-remove-warning{margin:0;font-size:.85rem;color:var(--ink)}.vehicle-detail-page .service-form{display:flex;flex-direction:column;gap:12px;padding-top:14px;border-top:1px solid var(--line)}.vehicle-detail-page .service-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.vehicle-detail-page .service-form-wide{grid-column:1 / -1}.vehicle-detail-page .service-prefilled{margin:0;font-size:.85rem;padding:8px 12px;border-radius:var(--radius-sm);background:var(--blue-tint);border:1px solid var(--blue-line);color:var(--ink-2)}@media(max-width:620px){.vehicle-detail-page .defect-state{grid-template-columns:repeat(2,minmax(0,1fr))}.vehicle-detail-page .defect-repair{grid-column:1 / -1}.vehicle-detail-page .defect-save{grid-template-columns:1fr}.vehicle-detail-page .defect-save .btn{justify-self:start}.vehicle-detail-page .service-form-grid,.vehicle-detail-page .service-main{grid-template-columns:1fr}.vehicle-detail-page .service-cost{text-align:left}}.vehicle-detail-page .check-office-entered{align-self:flex-start;font-size:.78rem;font-weight:600;color:var(--amber);background:var(--amber-tint);border:1px solid color-mix(in srgb,var(--amber) 30%,transparent);border-radius:var(--radius-sm);padding:2px 8px}.vehicle-detail-page .add-check-open{align-self:flex-start;margin-bottom:12px}.vehicle-detail-page .add-check-unavailable{margin:0 0 12px;font-size:.85rem}.vehicle-detail-page .check-form{display:flex;flex-direction:column;gap:12px;margin-bottom:16px;padding:14px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-2)}.vehicle-detail-page .check-form .section-subtitle{margin:0}.vehicle-detail-page .check-form-caveat{margin:0;font-size:.85rem;color:var(--ink-2);padding:8px 12px;border-radius:var(--radius-sm);background:var(--amber-tint);border:1px solid color-mix(in srgb,var(--amber) 30%,transparent)}.vehicle-detail-page .check-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.vehicle-detail-page .check-form-items{display:flex;flex-direction:column;gap:8px}.vehicle-detail-page .check-form-items-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.vehicle-detail-page .check-form-item-list{list-style:none;display:flex;flex-direction:column;gap:6px;margin:0;padding:0;max-width:640px}.vehicle-detail-page .check-form-item{display:grid;grid-template-columns:minmax(0,1fr) 170px;gap:10px;align-items:center}.vehicle-detail-page .check-form-item-label{font-size:.85rem;overflow-wrap:anywhere}.vehicle-detail-page .check-form-item select.unanswered{color:var(--ink-3);border-color:var(--line-strong)}.vehicle-detail-page .check-form-query{display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding:10px 12px;border-radius:var(--radius-sm);border:1px solid var(--blue-line);background:var(--blue-tint)}.vehicle-detail-page .check-form-query-head{margin:0;font-size:.88rem;font-weight:600;color:var(--ink)}.vehicle-detail-page .check-form-query-note{margin:0;font-size:.82rem;color:var(--ink-2)}.vehicle-detail-page .check-form-query-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px;font-size:.85rem;color:var(--ink-2)}.vehicle-detail-page .defect-form-fields{display:flex;flex-direction:column;gap:12px;margin:0;padding:0;border:0;min-width:0}.vehicle-detail-page .defect-form .defect-subhead{margin:0}.vehicle-detail-page .defect-form .defect-state{margin-top:0;padding-top:0;border-top:0}.vehicle-detail-page .defect-form .defect-offroad-toggle input{width:18px}.vehicle-detail-page .defect-match-list{list-style:none;display:flex;flex-direction:column;gap:8px;width:100%;margin:0;padding:0}.vehicle-detail-page .defect-match{display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding:8px 10px;border:1px solid var(--blue-line);border-radius:var(--radius-sm);background:var(--surface)}.vehicle-detail-page .defect-match-title{font-size:.9rem;overflow-wrap:anywhere}.vehicle-detail-page .defect-match-status,.vehicle-detail-page .defect-match-last{font-size:.8rem;color:var(--ink-2);overflow-wrap:anywhere}.vehicle-detail-page .defect-form-photos{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.vehicle-detail-page .defect-form-photo{display:flex;flex-direction:column;align-items:center;gap:4px}.vehicle-detail-page .defect-form-photo img{width:72px;height:72px;object-fit:cover;display:block;border:1px solid var(--line);border-radius:var(--radius-sm)}.vehicle-detail-page .van-defects .inline-success{margin-bottom:10px}@media(max-width:620px){.vehicle-detail-page .check-form-grid{grid-template-columns:1fr}.vehicle-detail-page .check-form-item{grid-template-columns:1fr;gap:4px}.vehicle-detail-page .defect-form .defect-state{grid-template-columns:1fr}}.app{display:flex;flex-direction:column;min-height:100vh}.header{display:flex;align-items:center;gap:26px;padding:0 22px;height:52px;background:var(--nav);position:sticky;top:0;z-index:20}.header-logo{display:block;height:16px;width:122px;flex-shrink:0;background-color:#fff;-webkit-mask:url(/logo.png) left center / contain no-repeat;mask:url(/logo.png) left center / contain no-repeat}.header-nav{display:flex;align-items:center;gap:22px;height:100%}.header-link{color:var(--nav-text);font-size:.88rem;font-weight:500;text-decoration:none;height:52px;display:flex;align-items:center;border-bottom:3px solid transparent}.header-link:hover{color:#fff;text-decoration:none}.header-link.active{color:#fff;border-bottom-color:var(--cyan)}.header-actions{margin-left:auto;display:flex;align-items:center;gap:8px}.header-btn{background:#ffffff17;border:1px solid var(--nav-line);color:#dce9f2;font-size:.8rem;font-weight:500;padding:6px 12px;border-radius:var(--radius-sm);box-shadow:none}.header-btn:hover:not(:disabled){background:#ffffff29;color:#fff}.main{flex:1;padding:22px;max-width:1240px;margin:0 auto;width:100%}.page-head{display:flex;align-items:center;gap:14px;margin-bottom:16px;flex-wrap:wrap}.page-title{font-size:1.4rem;font-weight:700;letter-spacing:-.02em}.page-sub{font-size:.85rem;color:var(--ink-3);margin-top:1px}.page-head-actions{margin-left:auto;display:flex;gap:8px;align-items:center}.page-head-actions .search-input{width:250px}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0c233380;display:flex;align-items:center;justify-content:center;z-index:1000;padding:16px}.modal{background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow-lg);width:min(560px,100%);display:flex;flex-direction:column;max-height:calc(100vh - 64px)}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:15px 18px;border-bottom:1px solid var(--line)}.modal-title{font-weight:700;font-size:.95rem}.modal-close{background:none;color:var(--ink-3);font-size:1rem;line-height:1;padding:4px 7px;border-radius:var(--radius-sm)}.modal-close:hover{background:var(--surface-3);color:var(--ink)}.modal-body{padding:18px;overflow-y:auto;flex:1}.modal-footer{padding:13px 18px;border-top:1px solid var(--line);display:flex;justify-content:flex-end;gap:8px}.security-desc{color:var(--ink-2);font-size:.9rem;margin:0 0 16px}.security-divider{border:0;border-top:1px solid var(--line, rgb(0 0 0 / .1));margin:20px 0 16px}.security-qr{display:block;width:180px;height:180px;margin:0 auto 12px;border-radius:var(--radius-sm)}.security-secret{text-align:center;font-family:IBM Plex Mono,ui-monospace,monospace;font-size:.85rem;letter-spacing:.05em;color:var(--ink-3);margin:0 0 20px;word-break:break-all}.run-waiting{display:flex;align-items:center;gap:10px;color:var(--ink-2);font-size:.9rem}.run-spinner{width:18px;height:18px;border:2px solid var(--line);border-top-color:var(--blue);border-radius:50%;animation:spin .7s linear infinite;flex-shrink:0}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:720px){.header{gap:12px;padding:0 14px}.header-nav{gap:14px}.main{padding:14px}}@media(max-width:640px){.header{height:auto;flex-wrap:wrap;padding:0 12px;gap:10px;row-gap:0}.header-logo{margin:12px 0}.header-actions{margin-left:auto;gap:6px;padding:8px 0}.header-btn{padding:6px 10px;font-size:.76rem}.header-nav{order:3;width:100%;gap:18px;overflow-x:auto;scrollbar-width:none;border-top:1px solid rgb(255 255 255 / .08)}.header-nav::-webkit-scrollbar{display:none}.header-link{height:42px;font-size:.84rem;white-space:nowrap}}.header{padding-top:env(safe-area-inset-top);height:calc(52px + env(safe-area-inset-top))}@media(max-width:640px){.header{height:auto}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--page: #eef2f6;--surface: #ffffff;--surface-2: #f7f9fb;--surface-3: #edf1f5;--line: #dbe3eb;--line-strong: #c2ceda;--ink: #152634;--ink-2: #42586b;--ink-3: #76899a;--nav: #0c2333;--nav-line: rgba(255, 255, 255, .14);--nav-text: #9fbbd0;--blue: #0b79c4;--blue-dark: #0a659f;--blue-tint: #e4f1fb;--blue-line: #bfdef5;--cyan: #13b5ea;--green: #17875c;--green-tint: #e1f3eb;--green-line: #bfe3d2;--amber: #b36b00;--amber-tint: #fcefda;--red: #c0392b;--red-dark: #8e2b20;--red-tint: #fbe8e6;--red-line: #f3c9c4;--radius: 6px;--radius-sm: 4px;--shadow: 0 1px 2px rgb(21 38 52 / .07), 0 1px 1px rgb(21 38 52 / .04);--shadow-md: 0 2px 6px rgb(21 38 52 / .09), 0 1px 2px rgb(21 38 52 / .05);--shadow-lg: 0 8px 24px rgb(21 38 52 / .14), 0 2px 6px rgb(21 38 52 / .08);font-size:15px}body{background:var(--page);color:var(--ink);font-family:Figtree,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.5;min-height:100vh;-webkit-font-smoothing:antialiased}a{color:var(--blue);text-decoration:none;font-weight:500}a:hover{color:var(--blue-dark);text-decoration:underline}.num,td.num,.tabular{font-variant-numeric:tabular-nums}button{cursor:pointer;border:none;font-size:.875rem;font-family:inherit}button:disabled{opacity:.55;cursor:not-allowed}:focus-visible{outline:2px solid var(--blue);outline-offset:2px;border-radius:var(--radius-sm)}input,textarea,select{font-family:inherit;font-size:.875rem;background:var(--surface);color:var(--ink);border:1px solid var(--line-strong);border-radius:var(--radius-sm);padding:7px 11px;outline:none;width:100%;transition:border-color .12s,box-shadow .12s}input::placeholder,textarea::placeholder{color:var(--ink-3)}input:focus,textarea:focus,select:focus{border-color:var(--blue);box-shadow:0 0 0 3px color-mix(in srgb,var(--blue) 16%,transparent)}input:disabled,textarea:disabled,select:disabled{background:var(--surface-2);color:var(--ink-3);cursor:not-allowed}textarea{resize:vertical;min-height:90px;font-family:IBM Plex Mono,ui-monospace,monospace;font-size:.82rem;line-height:1.55}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.card-head{display:flex;align-items:center;gap:10px;padding:13px 16px;border-bottom:1px solid var(--line);background:var(--surface-2);border-radius:var(--radius) var(--radius) 0 0}.card-head h3{font-size:.93rem;font-weight:700;letter-spacing:-.01em}.card-head .spacer{margin-left:auto}.card-body,.card-pad{padding:16px}.pill{display:inline-flex;align-items:center;gap:5px;padding:2px 9px;border-radius:11px;font-size:.755rem;font-weight:600;white-space:nowrap;border:1px solid transparent}.pill:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor;flex-shrink:0}.pill.success{background:var(--green-tint);color:var(--green);border-color:var(--green-line)}.pill.running{background:var(--blue-tint);color:var(--blue);border-color:var(--blue-line)}.pill.error,.pill.attention{background:var(--red-tint);color:var(--red);border-color:var(--red-line)}.pill.warn{background:var(--amber-tint);color:var(--amber);border-color:color-mix(in srgb,var(--amber) 30%,transparent)}.pill.disabled{background:var(--surface-3);color:var(--ink-3);border-color:var(--line)}.pill.disabled:before{background:var(--ink-3)}.pill.retired{background:var(--surface-3);color:var(--ink-3);border-color:var(--line)}.pill.retired:before{display:none}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:7px 14px;border-radius:var(--radius-sm);font-weight:600;font-size:.85rem;white-space:nowrap;border:1px solid transparent;transition:background .12s,border-color .12s,color .12s}.btn-primary{background:var(--blue);color:#fff;box-shadow:var(--shadow)}.btn-primary:hover:not(:disabled){background:var(--blue-dark)}.btn-ghost{background:var(--surface);border-color:var(--line-strong);color:var(--ink-2);box-shadow:var(--shadow)}.btn-ghost:hover:not(:disabled){background:var(--surface-2);color:var(--ink)}.btn-danger{background:var(--surface);border-color:var(--red-line);color:var(--red)}.btn-danger:hover:not(:disabled){background:var(--red-tint)}.btn-sm{padding:5px 10px;font-size:.79rem}.toggle{position:relative;display:inline-block;width:34px;height:19px;flex-shrink:0}.toggle input{position:absolute;opacity:0;width:100%;height:100%;margin:0;cursor:pointer}.toggle-slider{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:#c7d2dc;border-radius:10px;transition:background .15s}.toggle-slider:before{content:"";position:absolute;width:15px;height:15px;left:2px;top:2px;background:#fff;border-radius:50%;box-shadow:0 1px 2px #00000040;transition:transform .15s}.toggle input:checked+.toggle-slider{background:var(--green)}.toggle input:checked+.toggle-slider:before{transform:translate(15px)}.toggle input:focus-visible+.toggle-slider{outline:2px solid var(--blue);outline-offset:2px}.dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}.dot.ok{background:var(--green)}.dot.error{background:var(--red)}.dot.running{background:var(--blue)}.dot.never{background:var(--amber)}.dot.disabled,.dot.skipped{background:#c7d2dc}.dot.dot-running{animation:dot-pulse 1.4s ease-in-out infinite}@keyframes dot-pulse{0%,to{opacity:1}50%{opacity:.3}}table.data-table{width:100%;border-collapse:collapse;font-size:.875rem}table.data-table thead th{text-align:left;font-size:.735rem;font-weight:700;color:var(--ink-3);padding:9px 16px;background:var(--surface-2);border-bottom:1px solid var(--line);white-space:nowrap}table.data-table thead th.num{text-align:right}table.data-table td{padding:11px 16px;border-bottom:1px solid var(--line);vertical-align:middle}table.data-table tbody tr:last-child td{border-bottom:none}table.data-table tbody tr.clickable{cursor:pointer}table.data-table tbody tr.clickable:hover{background:var(--surface-2)}table.data-table td.num{text-align:right;font-variant-numeric:tabular-nums}.field-label{display:block;font-weight:600;font-size:.875rem;color:var(--ink)}.field-desc{color:var(--ink-3);font-size:.8rem;margin-top:2px;line-height:1.5}.field-group{display:flex;flex-direction:column;gap:8px}.form-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.tabs{display:flex;gap:2px;border-bottom:1px solid var(--line);margin-bottom:18px;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}.tabs::-webkit-scrollbar{display:none}.tab{background:none;border:none;border-bottom:3px solid transparent;font:inherit;font-size:.875rem;font-weight:600;color:var(--ink-3);padding:10px 12px;cursor:pointer;white-space:nowrap}.tab:hover{color:var(--ink)}.tab.active,.tab[aria-selected=true]{color:var(--blue);border-bottom-color:var(--blue)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.page-loading{color:var(--ink-3);padding:64px 0;text-align:center;font-size:.9rem}.page-error{color:var(--red);padding:64px 0;text-align:center;font-size:.9rem}.empty{color:var(--ink-3);padding:48px 0;text-align:center;font-size:.9rem}.muted{color:var(--ink-3);font-size:.85rem}code,.mono{font-family:IBM Plex Mono,ui-monospace,monospace;font-size:.79rem}code{background:var(--surface-3);border:1px solid var(--line);padding:1px 5px;border-radius:3px}.inline-error{background:var(--red-tint);border:1px solid var(--red-line);color:var(--red-dark);border-radius:var(--radius-sm);padding:10px 14px;font-size:.875rem}.inline-success{background:var(--green-tint);border:1px solid var(--green-line);color:var(--green);border-radius:var(--radius-sm);padding:10px 14px;font-size:.875rem}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;transition-duration:.001ms!important}}
