:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--ink:#17211d;--muted:#64706a;--surface:#fff;--canvas:#f4f6f4;--line:#dfe5e1;--green:#1f674c;--green-soft:#e7f1ec;--nav:#16251f}*{box-sizing:border-box}html,body{min-height:100%;margin:0}body{background:var(--canvas);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}a{color:inherit;text-decoration:none}.app-shell{grid-template-columns:248px 1fr;min-height:100vh;display:grid}.sidebar{background:var(--nav);color:#dfe9e3;flex-direction:column;padding:28px 20px 20px;display:flex}.brand{align-items:center;gap:12px;padding:0 8px 28px;display:flex}.brand-mark{color:var(--nav);background:#d7ece0;border-radius:9px;justify-content:center;align-items:center;width:36px;height:36px;font-weight:800;display:flex}.brand strong,.brand small{display:block}.brand strong{color:#fff;letter-spacing:.08em;font-size:15px}.brand small{color:#9fb0a7;margin-top:2px;font-size:11px}nav{gap:4px;display:grid}nav a{color:#bfcac4;border-radius:8px;padding:10px 12px;font-size:14px;font-weight:550}nav a:hover,nav a:focus-visible{color:#fff;background:#23372e;outline:none}.sidebar-footer{color:#92a39a;border-top:1px solid #2b3e35;margin-top:auto;padding:20px 8px 4px;font-size:12px}.shop-dot{background:#68b98e;border-radius:50%;width:7px;height:7px;margin-right:7px;display:inline-block}.content{padding:44px clamp(28px,5vw,76px)}.page-header{justify-content:space-between;align-items:flex-start;max-width:1180px;margin:0 auto 32px;display:flex}.page-header h1{letter-spacing:-.035em;margin:4px 0 8px;font-size:clamp(28px,4vw,38px)}.page-header p:not(.eyebrow){color:var(--muted);max-width:680px;margin:0;font-size:15px}.eyebrow{color:var(--green);letter-spacing:.13em;text-transform:uppercase;margin:0;font-size:11px;font-weight:750}.status-chip{background:var(--surface);border:1px solid var(--line);border-radius:999px;align-items:center;gap:7px;padding:8px 12px;font-size:12px;font-weight:650;display:flex}.status-chip span{border-radius:50%;width:7px;height:7px}.status-chip.online span{background:#2f9a68}.status-chip.offline span{background:#b36151}.phase-card,.empty-state{background:var(--surface);border:1px solid var(--line);border-radius:14px;max-width:1180px;margin:0 auto}.phase-card{justify-content:space-between;align-items:flex-start;padding:28px 30px;display:flex}.phase-card h2{margin:7px 0 8px;font-size:21px}.phase-card p:not(.eyebrow){color:var(--muted);max-width:720px;margin:0;line-height:1.6}.phase-badge{background:var(--green-soft);color:var(--green);white-space:nowrap;border-radius:999px;padding:7px 11px;font-size:12px;font-weight:750}.work-hero{background:var(--nav);color:#fff;border-radius:16px;justify-content:space-between;align-items:center;max-width:1180px;margin:0 auto;padding:28px 30px;display:flex}.work-hero h2{margin:7px 0 8px;font-size:22px}.work-hero p:not(.eyebrow){color:#b9c8c0;max-width:700px;margin:0;line-height:1.55}.work-hero>span{white-space:nowrap;background:#ffffff1a;border:1px solid #ffffff1f;border-radius:999px;padding:9px 12px;font-size:12px;font-weight:750}.work-grid{grid-template-columns:repeat(2,1fr);gap:14px;display:grid}.work-grid>a{background:var(--surface);border:1px solid var(--line);border-radius:13px;grid-template-columns:1fr auto;padding:22px;transition:border-color .15s,transform .15s;display:grid}.work-grid>a:hover{border-color:#a9c4b5;transform:translateY(-1px)}.work-grid strong{grid-area:1/2/span 2;font-size:30px}.work-grid h3{margin:12px 0 5px;font-size:15px}.work-grid p{color:var(--muted);margin:0 0 16px;font-size:12px;line-height:1.5}.work-grid b{color:var(--green);font-size:11px}.work-priority{text-transform:uppercase;border-radius:999px;justify-self:start;padding:5px 8px;font-size:9px;font-weight:800}.work-priority.ready{background:var(--green-soft);color:var(--green)}.work-priority.warning{color:#8a5a0a;background:#fff1d8}.work-priority.danger{color:#993b2d;background:#fbe4df}.section-block{max-width:1180px;margin:34px auto 0}.section-heading h2{margin:6px 0 16px;font-size:20px}.metric-grid{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}.metric-grid article{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:22px}.metric-grid span,.metric-grid small{color:var(--muted);display:block}.metric-grid span{font-size:12px;font-weight:650}.metric-grid strong{letter-spacing:-.04em;margin:10px 0 14px;font-size:32px;display:block}.metric-grid small{font-size:12px;line-height:1.45}.empty-state{text-align:center;padding:64px 30px}.empty-state span{color:var(--green);letter-spacing:.12em;text-transform:uppercase;font-size:11px;font-weight:750}.empty-state h2{max-width:540px;margin:10px auto;font-size:21px}.empty-state p{color:var(--muted);max-width:540px;margin:0 auto}.data-stack{gap:22px;max-width:1180px;margin:0 auto;display:grid}.data-card,.review-list{background:var(--surface);border:1px solid var(--line);border-radius:14px;max-width:1180px;margin:0 auto;overflow:hidden}.data-card{width:100%}.card-heading{justify-content:space-between;align-items:center;padding:22px 24px 16px;display:flex}.card-heading h2{margin:0;font-size:18px}.card-heading>span{background:var(--green-soft);color:var(--green);border-radius:999px;padding:5px 9px;font-size:12px;font-weight:750}.card-copy{color:var(--muted);margin:-5px 24px 20px}.table-scroll{overflow-x:auto}table{border-collapse:collapse;width:100%;min-width:820px}th,td{border-top:1px solid var(--line);text-align:left;padding:13px 16px;font-size:13px}th{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;background:#f8faf8;font-size:11px}td small{color:var(--muted);margin-top:3px;display:block}.shop-tag{background:var(--green-soft);color:var(--green);border-radius:5px;padding:3px 6px;font-size:11px;display:inline-block}.cost-status{border-radius:5px;padding:4px 6px;font-size:9px;font-weight:800;display:inline-block}.cost-status.complete{background:var(--green-soft);color:var(--green)}.cost-status.pending{color:#365f8a;background:#e5eef8}.cost-status.unmapped,.cost-status.review_required{color:#8a5a0a;background:#fff1d8}.invoice-table{min-width:1050px}.invoice-expand{color:var(--green);cursor:pointer;background:#fff;border:1px solid #cfd8d2;border-radius:7px;padding:8px 10px;font-size:11px;font-weight:700}.invoice-detail-row>td{background:#f7faf8;padding:12px 18px 18px}.invoice-lines{border:1px solid var(--line);background:#fff;border-radius:10px;overflow:hidden}.invoice-lines table{min-width:900px}.invoice-lines tr:first-child td{border-top:0}.invoice-lines .line-needs-action td{background:#fffaf0}.invoice-lines strong{font-size:12px}.inline-mapping{align-items:end;gap:7px;min-width:250px;display:flex}.inline-mapping label{color:var(--muted);gap:3px;font-size:9px;font-weight:700;display:grid}.inline-mapping input{border:1px solid #cfd8d2;border-radius:6px;width:140px;padding:7px 8px}.inline-mapping button{background:var(--green);color:#fff;cursor:pointer;border:0;border-radius:6px;padding:8px 9px;font-size:10px;font-weight:700}.inline-mapping button:disabled{cursor:wait;opacity:.6}.mapped-line small{margin-top:2px}.line-label{color:var(--muted);background:#edf2ef;border-radius:5px;padding:5px 7px;font-size:10px;display:inline-block}.line-label.warning{color:#8a5a0a;background:#fff1d8}.invoice-message{background:var(--green-soft);color:var(--green);margin:0;padding:9px 24px;font-size:12px}.supplier-upload-form{border-top:1px solid var(--line);background:#f8faf8;grid-template-columns:minmax(260px,1.35fr) minmax(170px,.65fr) minmax(220px,1fr) auto;align-items:end;gap:12px;padding:16px 24px;display:grid}.supplier-upload-form label{color:var(--muted);gap:5px;font-size:10px;font-weight:700;display:grid}.supplier-upload-form input{color:var(--ink);font:inherit;background:#fff;border:1px solid #cfd8d2;border-radius:7px;min-width:0;padding:8px 10px}.supplier-upload-form input[type=file]{padding:6px}.supplier-upload-form button{background:var(--green);color:#fff;cursor:pointer;white-space:nowrap;border:0;border-radius:8px;padding:11px 14px;font-size:11px;font-weight:750}.supplier-upload-form button:disabled{cursor:wait;opacity:.55}.supplier-upload-destination{gap:4px;padding-bottom:3px;display:grid}.supplier-upload-destination small{color:var(--muted);text-transform:uppercase;font-size:9px;font-weight:700}.supplier-upload-destination strong{color:var(--green);font-size:12px}.customer-month-assignment{min-width:135px;display:block}.customer-month-assignment input{color:var(--ink);font:inherit;background:#fff;border:1px solid #cfd8d2;border-radius:7px;width:100%;padding:7px 8px}.customer-month-assignment input:focus{border-color:var(--green);outline:2px solid #d7ece0}.customer-month-assignment input:disabled{cursor:wait;opacity:.6}.review-list{width:100%}.review-stack{gap:22px;max-width:1180px;margin:0 auto;display:grid}.review-row{border-top:1px solid var(--line);grid-template-columns:auto 1fr auto;align-items:flex-start;gap:16px;padding:18px 24px;display:grid}.review-row h3{margin:0 0 5px;font-size:14px}.review-row p,.review-row small{color:var(--muted);margin:0;font-size:12px}.review-row small{margin-top:7px;display:block}.review-row button,.mapping-row button{color:var(--muted);cursor:pointer;background:0 0;border:1px solid #cfd8d2;border-radius:7px;padding:8px 10px;font-size:11px;font-weight:700}.review-row button:hover,.mapping-row button:hover{border-color:var(--green);color:var(--green)}.review-row button:disabled,.mapping-row button:disabled{cursor:wait;opacity:.55}.invoice-gap-review{grid-template-columns:auto 1fr}.invoice-gap-list .card-heading p:last-child{color:var(--muted);margin:6px 0 0;font-size:12px}.invoice-gap-form{background:var(--surface-soft);border-radius:9px;grid-column:2/-1;grid-template-columns:minmax(230px,.8fr) minmax(260px,1.2fr) auto;align-items:end;gap:10px;padding:12px;display:grid}.invoice-gap-form label{color:var(--muted);gap:5px;font-size:10px;font-weight:700;display:grid}.invoice-gap-form select,.invoice-gap-form textarea{background:var(--surface);color:var(--ink);font:inherit;resize:vertical;border:1px solid #cfd8d2;border-radius:7px;padding:8px;font-size:12px}.invoice-gap-form button{background:var(--green);border-color:var(--green);color:#fff}.invoice-gap-form button:hover{color:#fff}.gap-reminder{grid-column:1/-1;color:#8a5a0a!important}.reconciliation-list .card-heading p:last-child{color:var(--muted);margin:6px 0 0;font-size:12px}.reconciliation-group{border-top:1px solid var(--line);padding:20px 24px}.reconciliation-title{align-items:flex-start;gap:12px;display:flex}.reconciliation-title h3{margin:1px 0 4px;font-size:14px}.reconciliation-title small{color:var(--muted)}.reconciliation-values{grid-template-columns:repeat(3,minmax(110px,1fr));gap:10px;max-width:560px;margin:16px 0;display:grid}.reconciliation-values div{background:var(--surface-soft);border-radius:8px;padding:10px 12px}.reconciliation-values small{color:var(--muted);text-transform:uppercase;font-size:10px;font-weight:700;display:block}.reconciliation-values strong{margin-top:4px;font-size:18px;display:block}.negative-value{color:#a94432}.warning-value{color:#8a5a0a}.reconciliation-documents summary{color:var(--green);cursor:pointer;font-size:12px;font-weight:750}.reconciliation-document-columns{grid-template-columns:1fr 1fr;gap:24px;margin-top:16px;display:grid}.reconciliation-document-columns h4{margin:0 0 8px;font-size:12px}.reconciliation-document{border-top:1px solid var(--line);padding:9px 0}.reconciliation-document span,.reconciliation-document small{font-size:12px;display:block}.reconciliation-document small,.document-empty{color:var(--muted);margin:3px 0 0}.ignored-reviews{opacity:.82}.severity{letter-spacing:.06em;border-radius:5px;padding:4px 6px;font-size:9px;font-weight:800}.severity.warning{color:#8a5a0a;background:#fff1d8}.severity.blocking{color:#993b2d;background:#fbe4df}.severity.info{color:#365f8a;background:#e5eef8}.compact-empty{border-top:1px solid var(--line);text-align:center;padding:40px 24px}.compact-empty h3{margin:0 0 5px}.compact-empty p{color:var(--muted);margin:0}.mapping-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:0 24px 24px;display:grid}.mapping-form label{color:var(--muted);gap:6px;font-size:12px;font-weight:650;display:grid}.mapping-form input,.mapping-form select{color:var(--ink);font:inherit;background:#fff;border:1px solid #cfd8d2;border-radius:8px;padding:11px 12px}.mapping-form input:focus,.mapping-form select:focus{border-color:var(--green);outline:2px solid #d7ece0}.mapping-form button{background:var(--green);color:#fff;cursor:pointer;border:0;border-radius:8px;padding:12px 16px;font-weight:700}.mapping-form button:disabled{cursor:wait;opacity:.65}.form-message{color:var(--green);align-self:center;margin:0;font-size:12px}.mapping-list{border-top:1px solid var(--line)}.mapping-row{border-top:1px solid var(--line);grid-template-columns:auto 1fr auto;align-items:center;gap:14px;padding:14px 24px;display:grid}.mapping-row strong{font-size:13px;display:block}.mapping-row small{color:var(--muted);margin-top:3px;font-size:10px;display:block}.mapping-workbench{gap:18px;display:grid}.mapping-workbench .mapping-list{border-top:0}.unmapped-list{border-top:1px solid var(--line)}.unmapped-row{border-top:1px solid var(--line);grid-template-columns:minmax(280px,1fr) minmax(360px,1.15fr);align-items:end;gap:18px;padding:16px 24px;display:grid}.unmapped-row:first-child{border-top:0}.unmapped-description{align-items:flex-start;gap:10px;display:flex}.unmapped-description strong{font-size:13px;display:block}.unmapped-description small{color:var(--muted);margin-top:5px;font-size:10px;display:block}.unmapped-form{grid-template-columns:minmax(220px,1fr) auto;align-items:end;gap:8px;display:grid}.unmapped-form label{color:var(--muted);gap:4px;font-size:10px;font-weight:700;display:grid}.unmapped-form input{font:inherit;border:1px solid #cfd8d2;border-radius:7px;padding:9px 10px}.unmapped-form input:focus{border-color:var(--green);outline:2px solid #d7ece0}.unmapped-form button{background:var(--green);color:#fff;cursor:pointer;border:0;border-radius:7px;padding:10px 12px;font-weight:700}.unmapped-form button:disabled{cursor:wait;opacity:.6}.period-toolbar{background:#eef5f0;border:1px solid #d5e3da;border-radius:10px;grid-template-columns:1fr minmax(150px,auto) minmax(180px,auto);align-items:end;gap:14px;padding:15px 18px;display:grid}.period-toolbar strong{font-size:14px;display:block}.period-toolbar label{color:var(--muted);gap:4px;font-size:10px;font-weight:700;display:grid}.period-toolbar select{color:var(--ink);font:inherit;background:#fff;border:1px solid #c4d3ca;border-radius:7px;padding:8px 10px}.period-actions{grid-template-columns:1fr auto;align-items:stretch;gap:10px;display:grid}.period-actions>button,.closure-button{background:var(--green);color:#fff;cursor:pointer;border:0;border-radius:8px;padding:10px 14px;font-weight:700}.period-actions>button:disabled,.closure-button:disabled{cursor:wait;opacity:.55}.shipping-stack{gap:22px;max-width:1180px;margin:0 auto;display:grid}.pool-grid{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px;padding:0 24px 24px;display:grid}.pool-card{border:1px solid var(--line);border-radius:10px;padding:16px}.pool-card>div:first-child{display:block}.pool-card strong{color:var(--green);font-size:13px}.pool-card small{color:var(--muted);margin-top:4px;font-size:10px;display:block}.pool-card>b{margin-top:18px;font-size:24px;display:block}.pool-meter{background:#edf1ee;border-radius:999px;height:5px;margin-top:13px;overflow:hidden}.pool-meter span{background:var(--green);height:100%;display:block}.shipping-message{background:var(--green-soft);color:var(--green);margin:0;padding:9px 24px;font-size:12px}.shipping-heading button{background:var(--green);color:#fff;cursor:pointer;border:0;border-radius:8px;padding:11px 14px;font-size:12px;font-weight:750}.shipping-heading button:disabled{cursor:default;background:#a8b6ae}.shipping-summary{gap:10px;padding:0 24px 20px;display:flex}.shipping-summary span{border:1px solid var(--line);color:var(--muted);background:#f4f7f5;border-radius:8px;padding:8px 11px;font-size:11px}.shipping-summary strong{color:var(--ink);margin-right:3px}.shipping-list{border-top:1px solid var(--line)}.shipping-row{grid-template-columns:minmax(180px,.65fr) 1fr;align-items:center;gap:24px;padding:15px 24px;display:grid}.shipping-row+.shipping-row{border-top:1px solid var(--line)}.shipping-invoice{grid-template-columns:auto 1fr;align-items:center;gap:3px;display:grid}.shipping-invoice strong{font-size:13px}.shipping-invoice small{color:var(--muted);grid-column:2;font-size:10px}.shipping-cost-total{color:var(--green);grid-column:2;margin-top:5px;font-size:10px;font-weight:750}.shipping-lines-toggle{color:var(--green);cursor:pointer;background:0 0;border:0;grid-column:2;justify-self:start;margin-top:3px;padding:0;font-size:10px;font-weight:750;text-decoration:underline}.shipping-editor{gap:9px;display:grid}.shipping-suggestion{background:#f4f7f5;border-radius:8px;justify-content:space-between;align-items:center;padding:9px 11px;display:flex}.shipping-suggestion span{gap:2px;display:grid}.shipping-suggestion small,.shipping-allocation-editor small{color:var(--muted);font-size:9px}.shipping-suggestion b{font-size:11px}.shipping-suggestion button,.shipping-add button{color:var(--green);cursor:pointer;background:#fff;border:1px solid #aac6b7;border-radius:6px;padding:7px 9px;font-size:10px;font-weight:750}.shipping-allocation-editor{border:1px solid var(--line);border-radius:9px;grid-template-columns:minmax(270px,1fr) 90px auto;align-items:end;gap:12px;padding:11px;display:grid}.shipping-allocation-editor label,.shipping-add label{color:var(--muted);text-transform:uppercase;gap:5px;font-size:9px;font-weight:700;display:grid}.shipping-allocation-editor select,.shipping-add select{color:var(--ink);font:inherit;text-transform:none;background:#fff;border:1px solid #cfd8d2;border-radius:7px;min-width:0;padding:8px}.shipping-allocation-editor>div:not(.stepper){gap:4px;display:grid}.shipping-allocation-editor>div strong{font-size:12px}.shipping-add{border:1px dashed #b9c9c0;border-radius:9px;grid-template-columns:1fr auto;align-items:end;gap:9px;padding:10px 11px;display:grid}.shipping-lines{border:1px solid var(--line);background:#f7faf8;border-radius:9px;grid-column:1/-1;overflow:hidden}.shipping-lines-heading{justify-content:space-between;align-items:center;padding:12px 14px;display:flex}.shipping-lines-heading strong{font-size:12px}.shipping-lines-heading span,.shipping-lines>p{color:var(--muted);font-size:10px}.shipping-lines>p{margin:0;padding:0 14px 14px}.shipping-lines table{min-width:760px}.shipping-lines th,.shipping-lines td{padding:10px 12px;font-size:11px}.shipping-special-line td{background:#fbf8ef}.shipping-reason{color:var(--muted);background:#edf2ef;border-radius:5px;padding:5px 7px;font-size:9px;display:inline-block}.shipping-reason.roll{color:#365f8a;background:#e5eef8}.allocation-control{border:1px solid var(--line);background:#f8faf8;border-radius:8px;justify-content:space-between;align-items:center;gap:16px;min-width:210px;padding:8px 9px 8px 12px;display:flex}.allocation-control span small{color:var(--muted);margin-top:2px;font-size:9px;display:block}.allocation-control button,.stepper button{background:var(--green);color:#fff;cursor:pointer;border:0;border-radius:6px;padding:8px 10px;font-size:11px;font-weight:700}.allocation-control button:disabled{cursor:wait;opacity:.6}.stepper{align-items:center;gap:9px;display:flex}.stepper button{width:30px;height:30px;padding:0;font-size:16px;line-height:1}.stepper b{text-align:center;min-width:12px;font-size:13px}.pool-missing{color:#8a5a0a;background:#fff1d8;border-radius:6px;padding:8px;font-size:11px}.profit-stack{gap:22px;max-width:1180px;margin:0 auto;display:grid}.profit-metrics{margin:0}.fee-rule-form{grid-template-columns:.7fr 1.2fr .7fr .7fr 1fr auto;align-items:end;gap:12px;padding:0 24px 22px;display:grid}.fee-rule-form label{color:var(--muted);gap:6px;font-size:11px;font-weight:650;display:grid}.fee-rule-form input,.fee-rule-form select{color:var(--ink);background:#fff;border:1px solid #cfd8d2;border-radius:8px;min-width:0;padding:10px}.fee-rule-form button{background:var(--green);color:#fff;cursor:pointer;white-space:nowrap;border:0;border-radius:8px;padding:11px 14px;font-weight:700}.fee-rule-form button:disabled{cursor:wait;opacity:.65}.fee-message{background:var(--green-soft);color:var(--green);margin:0;padding:9px 24px;font-size:12px}.profit-table{min-width:1050px}.profit-status{border-radius:5px;padding:4px 6px;font-size:9px;font-weight:800;display:inline-block}.profit-status.complete{background:var(--green-soft);color:var(--green)}.profit-status.provisional{color:#8a5a0a;background:#fff1d8}.profit-status.open{color:#365f8a;background:#e5eef8}.report-stack{gap:22px;display:grid}.report-toolbar{background:var(--surface);border:1px solid var(--line);border-radius:14px;justify-content:space-between;align-items:end;padding:20px 24px;display:flex}.report-toolbar h2{margin:5px 0 0;font-size:20px}.report-filters{gap:12px;display:flex}.report-filters label{color:var(--muted);text-transform:uppercase;gap:5px;font-size:10px;font-weight:700;display:grid}.report-filters select{color:var(--ink);background:#fff;border:1px solid #cfd8d2;border-radius:8px;min-width:130px;padding:9px 11px}.report-metrics{margin:0}.report-table{min-width:1320px}.coverage-list{gap:3px;min-width:135px;display:grid}.coverage-list span{justify-content:space-between;align-items:center;display:flex}.coverage-list small{margin:0 12px 0 0}.coverage-list b{font-size:10px}.report-empty{padding:34px}.report-empty h2{margin:0 0 8px}.report-empty p{color:var(--muted);margin:0}.drive-stack{gap:22px;max-width:1180px;margin:0 auto;display:grid}.drive-state{border:1px solid;border-radius:14px;justify-content:space-between;align-items:center;padding:22px 24px;display:flex}.drive-state.ready{background:var(--green-soft);border-color:#c9dfd2}.drive-state.pending{background:#fff8e9;border-color:#ecdcb8}.drive-state h2{margin:5px 0 6px;font-size:18px}.drive-state p:not(.eyebrow){color:var(--muted);margin:0}.drive-state>span{white-space:nowrap;border-radius:999px;padding:7px 10px;font-size:11px;font-weight:750}.drive-state.ready>span{color:var(--green);background:#fff}.drive-state.pending>span{color:#8a5a0a;background:#fff}.drive-form{grid-template-columns:.6fr .6fr 2fr auto;align-items:end;gap:12px;padding:0 24px 22px;display:grid}.drive-form label{color:var(--muted);gap:6px;font-size:11px;font-weight:650;display:grid}.drive-form input,.drive-form select{color:var(--ink);background:#fff;border:1px solid #cfd8d2;border-radius:8px;min-width:0;padding:10px}.drive-form button,.quarter-row button{background:var(--green);color:#fff;cursor:pointer;white-space:nowrap;border:0;border-radius:8px;padding:11px 14px;font-weight:700}.drive-form button:disabled,.quarter-row button:disabled{cursor:not-allowed;opacity:.5}.drive-message{background:var(--green-soft);color:var(--green);margin:0;padding:9px 24px;font-size:12px}.quarter-list{border-top:1px solid var(--line)}.quarter-row{grid-template-columns:1fr .7fr auto;align-items:center;gap:22px;padding:17px 24px;display:grid}.quarter-row+.quarter-row{border-top:1px solid var(--line)}.quarter-row small{color:var(--muted);margin-top:4px;font-size:10px;display:block}.quarter-status{text-align:right}.sync-status{border-radius:5px;padding:4px 6px;font-size:9px;font-weight:800;display:inline-block}.sync-status.complete,.sync-status.ready{background:var(--green-soft);color:var(--green)}.sync-status.syncing{color:#365f8a;background:#e5eef8}.sync-status.failed{color:#993b2d;background:#fbe4df}.sync-error{color:#993b2d!important}.drive-file-errors{gap:7px;max-width:560px;margin-top:12px;display:grid}.drive-file-errors div{background:#fff4f1;border-left:3px solid #b95746;border-radius:6px;gap:2px;padding:8px 10px;display:grid}.drive-file-errors b{overflow-wrap:anywhere;font-size:10px}.drive-file-errors span{color:#7d4036;font-size:10px;line-height:1.4}.drive-file-errors a{color:#8f3f31;font-size:10px;font-weight:750}.settings-stack{gap:22px;max-width:1180px;margin:0 auto;display:grid}.settings-metrics{margin:0}.settings-mode{font-size:25px!important}.integration-list{border-top:1px solid var(--line)}.integration-list article{grid-template-columns:auto 1fr auto;align-items:center;gap:16px;padding:20px 24px;display:grid}.integration-list article+article{border-top:1px solid var(--line)}.integration-mark{background:var(--green-soft);color:var(--green);border-radius:9px;justify-content:center;align-items:center;width:38px;height:38px;font-size:13px;font-weight:800;display:flex}.integration-list strong{font-size:14px}.integration-list p{color:var(--muted);margin:4px 0 0;font-size:12px;line-height:1.5}.integration-state{white-space:nowrap;border-radius:999px;padding:6px 9px;font-size:10px;font-weight:750}.integration-state.ready{background:var(--green-soft);color:var(--green)}.integration-state.pending{color:#8a5a0a;background:#fff1d8}.safety-grid{border-top:1px solid var(--line);grid-template-columns:repeat(4,1fr);display:grid}.safety-grid p{margin:0;padding:20px 24px}.safety-grid p+p{border-left:1px solid var(--line)}.safety-grid strong,.safety-grid span{display:block}.safety-grid strong{margin-bottom:7px;font-size:13px}.safety-grid span{color:var(--muted);font-size:11px;line-height:1.5}.cost-stack{gap:22px;max-width:1180px;margin:0 auto;display:grid}.cost-toolbar{background:var(--surface);border:1px solid var(--line);border-radius:14px;justify-content:space-between;align-items:end;gap:30px;padding:20px 24px;display:flex}.cost-toolbar input{border:1px solid #cfd8d2;border-radius:8px;margin-top:7px;padding:9px 11px}.cost-totals{flex-wrap:wrap;gap:24px;display:flex}.cost-totals span{gap:3px;min-width:80px;display:grid}.cost-totals small{color:var(--muted);text-transform:uppercase;font-size:9px;font-weight:750}.cost-totals strong{font-size:15px}.cost-form{grid-template-columns:1.3fr .8fr .8fr 1.2fr .8fr auto;align-items:end;gap:12px;padding:0 24px 22px;display:grid}.cost-form label{color:var(--muted);gap:6px;font-size:11px;font-weight:650;display:grid}.cost-form input,.cost-form select,.variable-entry input{color:var(--ink);background:#fff;border:1px solid #cfd8d2;border-radius:8px;min-width:0;padding:10px}.cost-form button,.variable-entry button{background:var(--green);color:#fff;cursor:pointer;white-space:nowrap;border:0;border-radius:8px;padding:11px 14px;font-weight:700}.variable-entry{gap:6px;display:flex}.variable-entry input{max-width:100px;padding:7px}.variable-entry button{padding:7px 9px}.text-button{color:#8a4a3a;cursor:pointer;background:0 0;border:0;font-size:11px;text-decoration:underline}.login-page{background:#f1f5f2;justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.login-card{border:1px solid var(--line);background:#fff;border-radius:18px;width:100%;max-width:420px;padding:38px;box-shadow:0 18px 55px #1e372817}.login-brand{align-items:center;gap:12px;margin-bottom:38px;display:flex}.login-brand div,.sidebar-user span{display:grid}.login-brand small,.sidebar-user small{color:var(--muted);font-size:10px}.login-card h1{margin:5px 0 8px;font-size:30px}.login-copy{color:var(--muted);margin:0 0 24px}.login-form,.user-form{gap:14px;display:grid}.login-form label,.user-form label{color:var(--muted);gap:6px;font-size:11px;font-weight:650;display:grid}.login-form input,.user-form input{font:inherit;border:1px solid #cfd8d2;border-radius:8px;padding:11px}.login-form button,.user-form button{background:var(--green);color:#fff;cursor:pointer;border:0;border-radius:8px;padding:12px 15px;font-weight:750}.login-form button:disabled{cursor:wait;opacity:.6}.form-error{color:#993b2d;background:#fbe4df;border-radius:7px;margin:0;padding:10px;font-size:12px}.sidebar-user{border-top:1px solid #ffffff1f;justify-content:space-between;align-items:center;gap:10px;margin-top:auto;padding-top:18px;display:flex}.sidebar-user strong{color:#fff;font-size:12px}.logout-button{color:#b9c9c0;cursor:pointer;background:0 0;border:0;padding:3px;font-size:10px;text-decoration:underline}.password-warning{color:#76500d;background:#fff1d8;border:1px solid #ecdcb8;border-radius:9px;max-width:1180px;margin:0 auto 18px;padding:11px 14px;font-size:12px}.user-form{grid-template-columns:1fr 1fr auto auto;align-items:end;padding:0 24px 22px}.password-form{grid-template-columns:1fr 1fr auto}.user-form label small{font-size:9px}.checkbox-label{flex-direction:row;align-items:center;padding-bottom:10px;display:flex!important}.checkbox-label input{width:auto}.user-list{border-top:1px solid var(--line)}.user-list article{grid-template-columns:1fr auto auto;align-items:center;gap:14px;padding:15px 24px;display:grid}.user-list article+article{border-top:1px solid var(--line)}.user-list small{color:var(--muted);margin-top:3px;font-size:10px;display:block}.user-message{background:var(--green-soft);color:var(--green);border-radius:8px;margin:0;padding:11px 14px;font-size:12px}.datev-stack{gap:22px;max-width:1440px;margin:0 auto;display:grid}.datev-metrics{grid-template-columns:repeat(4,1fr);margin:0}.datev-control{overflow:hidden}.datev-analyze-form{grid-template-columns:1fr 1fr 1.25fr 1.7fr auto;align-items:end;gap:12px;padding:0 24px 20px;display:grid}.datev-analyze-form label,.datev-admin form label{color:var(--muted);gap:6px;font-size:11px;font-weight:650;display:grid}.datev-analyze-form input,.datev-analyze-form select,.datev-admin input,.datev-result input{color:var(--ink);font:inherit;background:#fff;border:1px solid #cfd8d2;border-radius:8px;min-width:0;padding:10px}.datev-analyze-form button,.datev-admin form button,.datev-export{background:var(--green);color:#fff;cursor:pointer;white-space:nowrap;border:0;border-radius:8px;padding:11px 14px;font-size:12px;font-weight:750;text-decoration:none}.datev-analyze-form button:disabled{cursor:not-allowed;opacity:.5}.datev-file input{max-width:100%;padding:7px}.account-strip{border-top:1px solid var(--line);grid-template-columns:repeat(4,minmax(80px,1fr));display:grid}.account-strip span{gap:4px;padding:14px 24px;display:grid}.account-strip span+span{border-left:1px solid var(--line)}.account-strip small,.datev-balance small{color:var(--muted);text-transform:uppercase;font-size:9px;font-weight:750}.account-strip b{font-size:14px}.datev-message{background:var(--green-soft);color:var(--green);border-top:1px solid #c9dfd2;margin:0;padding:10px 24px;font-size:12px}.datev-main-grid{grid-template-columns:270px minmax(0,1fr);align-items:start;gap:22px;display:grid}.datev-history{overflow:hidden}.datev-history .card-heading{padding-bottom:16px}.datev-history .card-heading>span{background:var(--green-soft);color:var(--green);border-radius:999px;padding:6px 9px;font-size:11px;font-weight:750}.datev-history>div:last-child{border-top:1px solid var(--line);display:grid}.datev-history button{border:0;border-bottom:1px solid var(--line);color:var(--ink);cursor:pointer;text-align:left;background:0 0;gap:4px;padding:15px 20px;display:grid}.datev-history button:hover,.datev-history button.active{background:var(--green-soft)}.datev-history button strong{font-size:12px}.datev-history button span,.datev-history button small{color:var(--muted);font-size:10px}.datev-history .card-copy{padding:0 20px 20px}.datev-result{min-width:0;overflow:hidden}.datev-result .card-heading p:not(.eyebrow){color:var(--muted);margin:5px 0 0;font-size:11px}.datev-empty{text-align:center;padding:42px 24px}.datev-empty h2{margin:0 0 8px}.datev-empty p{color:var(--muted);margin:0}.datev-balance{border-top:1px solid;border-bottom:1px solid;grid-template-columns:repeat(4,1fr) auto;align-items:center;gap:14px;padding:14px 24px;display:grid}.datev-balance.ready{background:var(--green-soft);border-color:#c9dfd2}.datev-balance.warning{background:#fff8e9;border-color:#ecdcb8}.datev-balance span{gap:4px;display:grid}.datev-balance b{font-size:13px}.datev-balance>strong{background:#fff;border-radius:999px;padding:7px 10px;font-size:10px}.datev-balance.ready>strong{color:var(--green)}.datev-balance.warning>strong{color:#8a5a0a}.datev-result table{min-width:1050px}.datev-result td input{max-width:90px;padding:7px;font-size:11px}.datev-result td input.booking-text{width:100%;min-width:230px;max-width:none}.datev-result td b,.datev-result td small{display:block}.datev-result td small{color:var(--muted);margin-top:4px;font-size:9px}.datev-result td.positive{color:var(--green);font-weight:750}.datev-actions{align-items:center;gap:8px;display:flex}.datev-actions button{color:var(--green);cursor:pointer;background:#fff;border:1px solid #a9c4b5;border-radius:8px;padding:10px 12px;font-size:11px;font-weight:750}.datev-actions button:disabled{color:var(--muted);cursor:default;opacity:.65}.datev-export.disabled{color:#657069;cursor:not-allowed;background:#d9dfdc}.datev-review-hint{color:#76500d;background:#fff8e9;border-bottom:1px solid #ecdcb8;margin:0;padding:10px 24px;font-size:11px;line-height:1.5}.datev-result tr.datev-dirty td{background:#fffaf0}.datev-result td input.amount-input{text-align:right;max-width:82px}.datev-admin{overflow:hidden}.datev-admin summary{cursor:pointer;justify-content:space-between;align-items:center;padding:19px 24px;list-style:none;display:flex}.datev-admin summary::-webkit-details-marker{display:none}.datev-admin summary span{gap:4px;font-size:14px;font-weight:750;display:grid}.datev-admin summary small{color:var(--muted);text-transform:uppercase;font-size:9px;font-weight:700}.datev-admin summary b{color:var(--green);font-size:11px}.datev-admin-grid{border-top:1px solid var(--line);grid-template-columns:.8fr 1.3fr 1fr;display:grid}.datev-admin form{gap:11px;padding:20px 24px;display:grid}.datev-admin form+form{border-left:1px solid var(--line)}.datev-admin h3{margin:0 0 3px;font-size:14px}.datev-admin form button{justify-self:start}.datev-four{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.datev-rule-list{border-top:1px solid var(--line)}.datev-rule-list article{grid-template-columns:1fr auto auto;align-items:center;gap:14px;padding:14px 24px;display:grid}.datev-rule-list article+article{border-top:1px solid var(--line)}.datev-rule-list small{color:var(--muted);margin-top:4px;font-size:10px;display:block}.renamer-stack{gap:22px;max-width:1180px;margin:0 auto;display:grid}.renamer-control{overflow:hidden}.renamer-toolbar{border-top:1px solid var(--line);grid-template-columns:240px 1fr auto;align-items:end;gap:18px;padding:18px 24px;display:grid}.renamer-toolbar label,.renamer-rows article>label:not(.renamer-check){color:var(--muted);text-transform:uppercase;gap:6px;font-size:10px;font-weight:700;display:grid}.renamer-toolbar select,.renamer-rows input[type=text],.renamer-rows article>label input{color:var(--ink);font:inherit;text-transform:none;background:#fff;border:1px solid #cfd8d2;border-radius:8px;min-width:0;padding:10px}.renamer-toolbar button,.renamer-actions button{background:var(--green);color:#fff;cursor:pointer;white-space:nowrap;border:0;border-radius:8px;padding:11px 14px;font-size:11px;font-weight:750}.renamer-toolbar button:disabled,.renamer-actions button:disabled{cursor:not-allowed;opacity:.5}.renamer-flow{align-items:center;gap:8px;display:flex}.renamer-flow span{border:1px solid var(--line);color:var(--muted);background:#f4f7f5;border-radius:999px;padding:7px 10px;font-size:10px}.renamer-notice{color:#76500d;background:#fff8e9;border-top:1px solid #ecdcb8;margin:0;padding:10px 24px;font-size:12px}.renamer-metrics{grid-template-columns:repeat(4,1fr);margin:0}.renamer-list{overflow:hidden}.renamer-actions{gap:8px;display:flex}.renamer-actions button.secondary-button{color:var(--muted);background:#fff;border:1px solid #cfd8d2}.renamer-rows{border-top:1px solid var(--line)}.renamer-rows article{grid-template-columns:68px 1.1fr .8fr .8fr 1.4fr;align-items:center;gap:14px;padding:16px 24px;display:grid}.renamer-rows article+article{border-top:1px solid var(--line)}.renamer-rows article.needs-review{background:#fffaf0}.renamer-check{align-items:center;gap:8px;display:flex}.renamer-check input{accent-color:var(--green);width:16px;height:16px}.renamer-source,.renamer-preview{gap:4px;min-width:0;display:grid}.renamer-source small,.renamer-preview small{color:var(--muted);text-transform:uppercase;font-size:9px;font-weight:750}.renamer-source strong,.renamer-preview strong{overflow-wrap:anywhere;font-size:11px}.renamer-source span{color:var(--muted);font-size:10px}.renamer-preview strong{color:var(--green);font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.renamer-preview .text-button{justify-self:start;margin-top:3px;padding:0}@media (max-width:820px){.reconciliation-document-columns,.invoice-gap-form{grid-template-columns:1fr}.app-shell{grid-template-columns:minmax(0,1fr)}.sidebar,.content{width:100%;min-width:0;max-width:100%}.sidebar{padding:16px 18px;overflow:hidden}.brand{padding-bottom:14px}nav{padding-bottom:4px;display:flex;overflow-x:auto}nav a{white-space:nowrap}.sidebar-footer{display:none}.content{padding:28px 20px}.page-header,.phase-card{gap:18px}.work-grid,.metric-grid,.mapping-form,.unmapped-row,.unmapped-form{grid-template-columns:1fr}.period-toolbar{grid-template-columns:1fr;align-items:stretch}.period-actions{grid-template-columns:1fr}.review-row,.mapping-row{grid-template-columns:auto 1fr}.review-row button,.mapping-row button{grid-column:2;justify-self:start}.shipping-row{grid-template-columns:1fr;align-items:flex-start}.shipping-allocation-editor{grid-template-columns:1fr auto}.shipping-allocation-editor label{grid-column:1/-1}.fee-rule-form,.cost-form{grid-template-columns:1fr 1fr}.cost-toolbar{flex-direction:column;align-items:flex-start}.report-toolbar{flex-direction:column;align-items:flex-start;gap:18px}.drive-form{grid-template-columns:1fr 1fr}.drive-folder{grid-column:1/-1}.quarter-row{grid-template-columns:1fr;align-items:flex-start}.quarter-status{text-align:left}.safety-grid{grid-template-columns:1fr}.safety-grid p+p{border-left:0;border-top:1px solid var(--line)}.user-form,.password-form,.datev-metrics,.datev-analyze-form{grid-template-columns:1fr 1fr}.datev-instructions{grid-column:1/-1}.datev-main-grid{grid-template-columns:1fr}.datev-history>div:last-child{grid-template-columns:repeat(2,1fr)}.datev-admin-grid{grid-template-columns:1fr}.datev-admin form+form{border-left:0;border-top:1px solid var(--line)}.renamer-toolbar{grid-template-columns:1fr auto}.renamer-flow{grid-area:1/1/auto/-1}.renamer-metrics{grid-template-columns:1fr 1fr}.renamer-rows article{grid-template-columns:58px 1fr 1fr;align-items:start}.renamer-source{grid-column:2/-1}.renamer-preview{grid-column:1/-1}}@media (max-width:560px){.page-header,.phase-card{flex-direction:column}.work-hero{flex-direction:column;align-items:flex-start;gap:18px}.datev-result .card-heading,.datev-actions{flex-direction:column;align-items:flex-start}.fee-rule-form,.cost-form{grid-template-columns:1fr}.report-filters{flex-direction:column;width:100%}.drive-state{flex-direction:column;align-items:flex-start;gap:16px}.shipping-add,.drive-form{grid-template-columns:1fr}.drive-folder{grid-column:auto}.integration-list article{grid-template-columns:auto 1fr;align-items:flex-start}.integration-state{grid-column:2}.user-form,.password-form,.datev-metrics,.datev-analyze-form,.account-strip,.datev-balance{grid-template-columns:1fr}.datev-instructions{grid-column:auto}.account-strip span+span{border-left:0;border-top:1px solid var(--line)}.datev-history>div:last-child{grid-template-columns:1fr}.datev-balance>strong{justify-self:start}.datev-four{grid-template-columns:1fr 1fr}.datev-rule-list article{grid-template-columns:1fr auto;align-items:start}.datev-rule-list .text-button{grid-column:1/-1;justify-self:start}.renamer-toolbar,.renamer-metrics{grid-template-columns:1fr}.renamer-flow{flex-direction:column;grid-area:auto;align-items:flex-start}.renamer-actions{flex-direction:column;align-items:stretch;width:100%}.renamer-list .card-heading{flex-direction:column;align-items:flex-start;gap:14px}.renamer-rows article{grid-template-columns:1fr}.renamer-source,.renamer-preview{grid-column:auto}}.invoice-drive-link{color:inherit;-webkit-text-decoration-color:color-mix(in srgb, currentColor 35%, transparent);text-decoration-color:color-mix(in srgb, currentColor 35%, transparent);text-underline-offset:3px;text-decoration-thickness:1px}.invoice-drive-link:hover{color:var(--accent,#2563eb);text-decoration-color:currentColor}.supplier-line-form{grid-template-columns:minmax(8rem,.7fr) minmax(18rem,2.5fr) repeat(5,minmax(7rem,.8fr));align-items:end;gap:.75rem;padding:.65rem 0;display:grid}.supplier-line-form label{gap:.3rem;font-size:.75rem;display:grid}.supplier-line-form input{width:100%;min-width:0}.supplier-line-actions{grid-column:1/-1;gap:.5rem;display:flex}.supplier-reconciliation-actions{align-items:stretch;gap:.4rem;min-width:13rem;display:grid}.supplier-reconciliation-actions label{gap:.2rem;font-size:.7rem;display:grid}.supplier-reconciliation-actions select{max-width:15rem}.supplier-reconciliation-actions button{white-space:nowrap}.line-reconciliation-resolved{opacity:.7}.line-reconciliation-resolved:hover{opacity:1}.cost-status.over_billed,.cost-status.under_billed,.cost-status.no_sales,.cost-status.not_mapped{color:#9f1239;background:#fff1f2}@media (max-width:1100px){.supplier-upload-form{grid-template-columns:repeat(2,minmax(0,1fr))}.supplier-line-form{grid-template-columns:repeat(2,minmax(10rem,1fr))}}@media (max-width:620px){.supplier-upload-form{grid-template-columns:1fr}}
