:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;color:#24323b;background:#f5f7f6;font-size:14px}*{box-sizing:border-box}body{margin:0}a{color:#087b70;text-decoration:none}a:hover{text-decoration:underline}.muted{color:#6d7d83}.topbar{background:#fff;border-bottom:1px solid #e0e8e6;position:sticky;top:0;z-index:10}.topinner{max-width:1500px;margin:auto;padding:15px 28px;display:flex;align-items:center;gap:42px}.brand{font-weight:800;font-size:19px;display:flex;align-items:center;gap:12px;color:#183b40;line-height:1.1;white-space:nowrap}.brand small{display:block;font-weight:500;font-size:10px;letter-spacing:.08em;text-transform:uppercase;margin-top:5px;color:#6d8184}.brandmark{width:35px;height:35px;background:#087b70;color:white;border-radius:10px;text-align:center;line-height:35px;font-weight:800}.brandmark span{font-size:13px}.topinner nav{display:flex;gap:22px;font-weight:650}.account{display:flex;align-items:center;gap:18px;margin-left:auto;color:#5c6a70}.account form{margin:0}.container{max-width:1500px;margin:0 auto;padding:34px 28px 80px}h1{font-size:32px;letter-spacing:-.04em;margin:0 0 8px}h2{font-size:18px;margin:0 0 16px;letter-spacing:-.02em}h3{font-size:14px;margin:24px 0 12px}.eyebrow{font-weight:750;color:#087b70;letter-spacing:.13em;font-size:11px;margin:0 0 10px}.pagehead{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:25px}.pagehead p{margin:0}.card{background:white;border:1px solid #e1e9e7;border-radius:14px;padding:24px;box-shadow:0 3px 16px rgba(26,64,61,.035)}.card.wide{padding:20px 0}.card.wide>h2,.card.wide>.sectionhead{padding:0 22px}.card.wide>form>.sectionhead{padding:0 22px}.card.wide>form>.button{margin:16px 22px 0}.card>p{line-height:1.6;color:#63747a}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid transparent;border-radius:9px;padding:11px 16px;cursor:pointer;font-weight:700;font:inherit;text-decoration:none;white-space:nowrap}.button:hover{text-decoration:none}.button.primary{background:#087b70;color:white}.button.primary:hover{background:#05665d}.button.secondary{background:#eaf5f2;color:#087b70}.button:disabled{opacity:.45;cursor:not-allowed}.textbutton{border:0;background:none;color:#087b70;font:inherit;cursor:pointer;padding:4px}.back{display:inline-block;margin:0 0 20px}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:20px}.step{display:inline-grid;place-items:center;background:#e7f5f1;color:#087b70;width:32px;height:32px;border-radius:9px;font-weight:800;margin-bottom:15px}label{display:block;color:#4b5f64;font-weight:650;font-size:12px;margin:15px 0 12px}input:not([type=checkbox]),select,textarea{width:100%;display:block;border:1px solid #ccd9d6;border-radius:8px;background:white;padding:10px 11px;color:#24323b;font:inherit;margin-top:6px;outline-color:#087b70}input[type=file]{background:#f8faf9}.inline{display:flex;align-items:center;gap:10px;margin:0}.inline input{width:130px}.login{max-width:410px;margin:7vh auto;padding:32px}.login .full{width:100%;margin-top:12px}.history{margin-top:20px}.list a{display:flex;flex-direction:column;border-top:1px solid #edf0ef;padding:12px 0;gap:3px}.list a span{color:#748287;font-size:12px}.messages{margin-bottom:20px}.alert{padding:12px 16px;border-radius:9px;margin:12px 0;font-weight:550;background:#e8f5f0;color:#0f6559}.alert.error{background:#fff0ec;color:#a9432b}.alert.warning{background:#fff5df;color:#825d11}.filters{display:grid;grid-template-columns:1.7fr 1.1fr 1fr .9fr .9fr auto auto;align-items:end;gap:12px;padding:16px;margin-bottom:12px}.filters label{margin:0}.filters .button,.filters .textbutton{margin-bottom:1px}.quicklinks{display:flex;justify-content:space-between;margin:13px 0 19px}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:20px 0}.metrics>div{background:#fff;border:1px solid #e1e9e7;border-radius:12px;padding:17px 19px}.metrics span{font-size:12px;color:#758488;display:block;margin-bottom:9px}.metrics strong{font-size:21px;letter-spacing:-.02em}.bad{color:#af5541!important}.good{color:#178771!important}.sectionhead{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px}.sectionhead h2{margin:0}.tablewrap{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:13px}th{background:#f8faf9;text-align:left;white-space:nowrap;font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:#687b7c;border-top:1px solid #edf1ef;border-bottom:1px solid #e5ece9}td,th{padding:11px 13px;vertical-align:middle}td{border-bottom:1px solid #edf1ef}td small{display:block;color:#758488}th a{color:inherit}tr:hover td{background:#fbfcfb}.numeric{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.results td:nth-child(5),.results td:nth-child(7),.results td:nth-child(8){text-align:right}.linkstrong{font-weight:750}.pill{display:inline-flex;border-radius:30px;padding:5px 9px;font-size:11px;font-weight:750;white-space:nowrap;background:#e4f5ef;color:#08765d}.pill.difference{background:#fff0e6;color:#a35522}.pill.accepted{background:#e9edf5;color:#52677c}.pill.large{font-size:13px;padding:9px 15px}.smallbutton{background:none;border:0;color:#087b70;font-size:11px;font-weight:700;cursor:pointer;padding:7px 0}.inlineform{margin:0}.empty{text-align:center;padding:45px;color:#79888b}.pagination{display:flex;justify-content:center;gap:24px;padding:20px;color:#778588}.short{min-width:105px;width:110px!important}.amount{min-width:85px;width:95px!important;text-align:right}.description{min-width:240px}.disabled-row{opacity:.48}.approve{display:flex;align-items:center;justify-content:space-between;gap:30px;background:#e8f4f1;border:1px solid #d5e9e3;padding:18px 22px;border-radius:12px;margin-top:20px}.approve p{margin:0}.detailgrid{margin:20px 0}.lineitems>div{display:flex;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid #edf1ef}.lineitems small{display:block;color:#74868a;margin-bottom:5px}.lineitems .sum{border:0;font-size:16px}.facts>div{display:flex;padding:10px 0;border-bottom:1px solid #edf1ef;gap:12px}.facts dt{color:#76868a;min-width:140px}.facts dd{margin:0;word-break:break-word}.timeline>div{padding:15px 22px;border-bottom:1px solid #edf1ef}.timeline small{color:#7c898c}.timeline p{margin:7px 0}.card.wide>.timeline{margin:0 0 10px}details{margin-top:20px}summary{color:#087b70;cursor:pointer}@media(max-width:1000px){.filters{grid-template-columns:repeat(3,1fr)}.metrics{grid-template-columns:repeat(2,1fr)}.two-col{grid-template-columns:1fr}.topinner{gap:15px}.account span{display:none}}@media(max-width:650px){.container{padding:22px 12px 70px}.topinner{padding:12px}.brand{font-size:15px}.brand small{display:none}.topinner nav{gap:8px}.metrics,.filters{grid-template-columns:1fr 1fr}.pagehead{align-items:flex-start;flex-direction:column}.approve{flex-direction:column;align-items:stretch}}
/* Workboard summary and import actions */
.work-metrics{grid-template-columns:repeat(6,minmax(0,1fr))}
.work-metrics .metric-tile{display:block;min-width:0;background:#fff;border:1px solid #e1e9e7;border-radius:12px;padding:16px;color:#24323b;text-decoration:none}
.work-metrics a.metric-tile:hover,.work-metrics a.metric-tile.selected{border-color:#087b70;background:#f0faf7}
.work-metrics .metric-tile strong{font-size:20px;letter-spacing:-.02em}
.work-metrics .metric-tile small{display:block;margin-top:5px;color:#758488}
.delete-import{display:flex;justify-content:flex-end;margin:0 0 14px}
.button.danger{color:#a9432b;background:#fff4f1;border-color:#f1d9d0}
.button.danger:hover{background:#fbe4de}
@media(max-width:1000px){.work-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:650px){.work-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}
.margin-filters{display:grid;grid-template-columns:1.6fr 1.5fr .8fr .8fr .8fr auto auto;align-items:end;gap:12px;padding:16px;margin-bottom:18px}
.margin-filters label{margin:0}
.export-links{display:flex;gap:18px;flex-wrap:wrap}
.source-trigger{border:0;background:none;padding:0;color:#087b70;cursor:pointer;font:inherit;white-space:nowrap}
.source-trigger:hover{text-decoration:underline}
.source-panel{position:fixed;z-index:30;width:min(540px,calc(100vw - 24px));max-height:70vh;overflow-y:auto;background:white;border:1px solid #dce8e5;border-radius:10px;box-shadow:0 10px 28px #24323b24;padding:12px 16px;font-size:12px}
.source-panel[hidden]{display:none}
.source-panel .facts{margin:0}
.source-panel .facts>div{padding:5px 0;gap:12px}
.source-panel .facts dt{min-width:160px;max-width:45%;overflow-wrap:anywhere}
.source-panel .facts dd{overflow-wrap:anywhere}
.source-close{position:sticky;top:0;float:right;background:white;border:0;color:#087b70;cursor:pointer;font-size:20px;line-height:1;padding:0 2px 4px 10px}
@media(max-width:1100px){.margin-filters{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:650px){.margin-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.quicklinks{gap:10px;flex-wrap:wrap}.export-links{gap:12px}}
.results .select-cell{width:42px;min-width:42px;text-align:center;padding-left:15px;padding-right:5px}
.results .select-cell input{width:17px;height:17px;accent-color:#087b70;cursor:pointer}
.margin-results th:nth-child(3),.margin-results td:nth-child(3){min-width:155px;white-space:nowrap}
.margin-results{table-layout:fixed;min-width:1300px}
.margin-results col:nth-child(1),.margin-results col:nth-child(2){width:5%}
.margin-results col:nth-child(3){width:12%}
.margin-results col:nth-child(4){width:27%}
.margin-results col:nth-child(5){width:20%}
.margin-results col:nth-child(6),.margin-results col:nth-child(7),.margin-results col:nth-child(8){width:7%}
.margin-results col:nth-child(9){width:10%}
.margin-results td:nth-child(4),.margin-results td:nth-child(5){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.margin-filters{grid-template-columns:minmax(150px,1.5fr) minmax(140px,1.2fr) minmax(135px,1.1fr) minmax(100px,.7fr) minmax(125px,.8fr) minmax(125px,.8fr) minmax(105px,.8fr) auto auto}
@media(max-width:1100px){.margin-filters{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:650px){.margin-filters{grid-template-columns:repeat(2,minmax(0,1fr))}}
