:root{color:#172126;background:#f5f7f8;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0;min-width:320px}button{align-items:center;border:1px solid #cfd8dd;background:#fff;border-radius:7px;color:#172126;cursor:pointer;display:inline-flex;font:inherit;gap:7px;min-height:34px;padding:7px 10px}button:hover{border-color:#7f9ead}button:disabled{cursor:not-allowed;opacity:.55}.app-shell{display:flex;flex-direction:column;gap:18px;min-height:100vh;padding:18px}.topbar{align-items:center;background:#fff;border:1px solid #dce4e8;border-radius:8px;display:grid;gap:14px;grid-template-columns:minmax(260px,1fr) auto auto auto;padding:16px}.eyebrow{color:#62737c;font-size:12px;font-weight:700;letter-spacing:0;margin:0 0 4px;text-transform:uppercase}h1,h2,h3,p{margin:0}h1{font-size:22px;line-height:1.2}.topbar-meta{color:#62737c;font-size:12px;font-weight:700;line-height:1.35;margin-top:5px;overflow-wrap:anywhere}h2{font-size:15px}h3{color:#62737c;font-size:12px;margin-bottom:8px;text-transform:uppercase}.delivery-facts{display:flex;flex-wrap:wrap;gap:7px;justify-content:flex-end}.delivery-facts span{background:#eef2f3;border:1px solid #dce4e8;border-radius:999px;color:#374950;font-size:12px;padding:5px 8px}.topbar-actions{display:flex;flex-wrap:wrap;gap:7px;justify-content:flex-end}.topbar-actions button{font-size:13px;min-height:34px}.primary-button{background:#176b6b;border-color:#176b6b;color:#fff;font-weight:700}.dirty-save-button{background:#9a5b00;border-color:#9a5b00}.dirty-banner{align-items:center;background:#fff4d8;border:1px solid #f2d184;border-radius:8px;color:#5e4300;display:flex;flex-wrap:wrap;gap:8px 12px;padding:10px 14px}.dirty-banner strong,.dirty-banner span{font-size:13px}.modal-backdrop{align-items:center;background:#1721265c;display:flex;inset:0;justify-content:center;padding:18px;position:fixed;z-index:50}.modal-panel{background:#fff;border:1px solid #dce4e8;border-radius:8px;box-shadow:0 18px 60px #17212638;display:flex;flex-direction:column;gap:14px;max-width:460px;padding:18px;width:min(100%,460px)}.modal-panel h2{font-size:17px}.form-field{display:flex;flex-direction:column;gap:6px}.form-field span{color:#62737c;font-size:12px;font-weight:800;text-transform:uppercase}.form-field input,.form-field select{border:1px solid #cfd8dd;border-radius:7px;color:#172126;font:inherit;min-height:38px;padding:7px 9px;width:100%}.form-field input:focus,.form-field select:focus{border-color:#2f9e9e;outline:2px solid rgb(47 158 158 / .18)}.modal-actions{display:flex;gap:8px;justify-content:flex-end}.confirmation-details{background:#fff;border:1px solid #dce4e8;border-radius:8px;overflow:hidden}.confirmation-details summary{align-items:center;cursor:pointer;display:grid;font-size:14px;font-weight:800;gap:10px;grid-template-columns:minmax(0,1fr) auto;list-style:none;padding:12px 14px}.details-summary-main{align-items:center;display:flex;flex-wrap:wrap;gap:7px;min-width:0}.details-summary-actions{align-items:center;display:flex;flex:0 0 auto;gap:8px}.confirmation-details summary::-webkit-details-marker{display:none}.confirmation-details[open] .summary-chevron{transform:rotate(180deg)}.check-pill,.difference-pill,.summary-info-pill{align-items:center;border-radius:999px;display:inline-flex;font-size:11px;font-weight:800;gap:4px;line-height:1;padding:6px 8px;white-space:nowrap}.summary-info-pill{background:#eef2f3;color:#374950;max-width:280px;overflow:hidden;text-overflow:ellipsis}.summary-info-pill strong{color:#62737c;margin-right:2px}.check-ok{background:#e8f5ed;color:#276f47}.check-bad{background:#feecec;color:#9f2b2b}.check-neutral{background:#eef2f3;color:#44545c}.difference-pill{background:#e7f1fb;color:#1f6092}.difference-alert{background:#fff4d8;color:#7a5700}.summary-link-actions{display:inline-flex;flex:0 0 auto;gap:6px}.summary-icon-link{align-items:center;background:#fff;border:1px solid #cfd8dd;border-radius:999px;color:#176b6b;display:inline-flex;height:28px;justify-content:center;text-decoration:none;width:28px}.summary-icon-link:hover{border-color:#7f9ead}.details-grid{border-top:1px solid #e6ecef;display:grid;gap:12px;grid-template-columns:repeat(4,minmax(220px,1fr));padding:14px}.detail-section{background:#f8fafb;border:1px solid #e6ecef;border-radius:8px;min-width:0;padding:10px}.detail-section h2{color:#172126;font-size:13px;margin-bottom:8px}.detail-section dl{display:flex;flex-direction:column;gap:7px;margin:0}.detail-section dl div{display:grid;gap:2px}.detail-section dt{color:#62737c;font-size:11px;font-weight:700;text-transform:uppercase}.detail-section dd,.empty-detail{color:#172126;font-size:12px;line-height:1.35;margin:0;overflow-wrap:anywhere;white-space:pre-wrap}.address-compare-section{grid-column:span 2}.address-compare{display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr))}.address-block{background:#fff;border:1px solid #e6ecef;border-radius:7px;display:flex;flex-direction:column;gap:4px;min-width:0;padding:9px}.address-block h3{color:#62737c;font-size:11px;margin:0 0 4px}.address-block span{color:#172126;font-size:12px;line-height:1.35;overflow-wrap:anywhere}.attachment-list{display:flex;flex-direction:column;gap:6px;list-style:none;margin:0;padding:0}.attachment-list a{align-items:center;color:#176b6b;display:inline-flex;font-size:12px;gap:5px;overflow-wrap:anywhere;text-decoration:none}.header-comment-section{grid-column:span 2}.header-comment-section textarea{border:1px solid #cfd8dd;border-radius:7px;color:#172126;font:inherit;font-size:13px;line-height:1.4;min-height:86px;padding:9px;resize:vertical;width:100%}.header-comment-section textarea:focus{border-color:#2f9e9e;outline:2px solid rgb(47 158 158 / .18)}.board-grid{align-items:start;display:grid;gap:14px;grid-template-columns:minmax(260px,.85fr) minmax(380px,1.35fr) minmax(260px,.85fr);height:calc(100vh - 112px);min-height:460px}.droppable-column,.groups-column,.payload-panel{background:#fff;border:1px solid #dce4e8;border-radius:8px;min-width:0}.droppable-column,.groups-column{max-height:100%;overflow:auto}.column-header,.groups-header{align-items:center;background:#fff;border-bottom:1px solid #e6ecef;display:flex;justify-content:space-between;padding:12px;position:sticky;top:0;z-index:5}.groups-header h2{flex:0 0 auto}.groups-header p{color:#62737c;font-size:12px;line-height:1.35;margin-top:3px}.groups-toolbar{display:flex;flex-wrap:wrap;gap:7px;justify-content:flex-end}.loading-panel{align-items:center;background:#fff;border:1px solid #dce4e8;border-radius:8px;color:#374950;display:flex;flex-direction:column;gap:10px;justify-content:center;min-height:340px;padding:28px;text-align:center}.loading-panel span{color:#62737c;font-size:13px}.error-panel{border-color:#f0b7b7;color:#7a1f1f}.error-panel strong{color:#9f2b2b}.error-panel span{color:#7a1f1f}.spinner{animation:spin .85s linear infinite;border:3px solid #dce4e8;border-top-color:#176b6b;border-radius:999px;height:34px;width:34px}@keyframes spin{to{transform:rotate(360deg)}}.column-header span{color:#62737c;font-size:13px}.column-body,.groups-column{display:flex;flex-direction:column;gap:10px}.column-body{min-height:280px;padding:12px}.groups-column{padding-bottom:12px}.groups-column>.match-group{margin-inline:12px}.empty-groups-state{align-items:center;background:#f8fafb;border:1px dashed #b7c5cc;border-radius:8px;color:#62737c;display:flex;flex-direction:column;gap:4px;margin-inline:12px;padding:18px 12px;text-align:center}.empty-groups-state strong{color:#276f47;font-size:14px}.empty-groups-state span{font-size:12px}.confirmed-groups-section{background:#f8fafb;border:1px solid #e6ecef;border-radius:8px;display:flex;flex-direction:column;gap:10px;margin:2px 12px 0;padding:10px}.confirmed-toggle{align-self:stretch;background:#fff;justify-content:center;width:100%}.confirmed-groups-list{display:flex;flex-direction:column;gap:10px}.drop-over{outline:2px solid #2f9e9e;outline-offset:-2px}.position-card,.match-group{background:#fff;border:1px solid #d7e0e4;border-radius:8px;box-shadow:0 1px 2px #1721260d}.position-card{display:flex;flex-direction:column;gap:8px;padding:10px}.supplier-card{border-left:4px solid #2878b5}.weclapp-card{border-left:4px solid #2f8f5b}.compact-card{box-shadow:none;padding:9px}.locked-card{background:#faf7ef}.dragging-card{opacity:.55}.card-topline,.summary-main,.group-actions{align-items:center;display:flex;gap:7px;min-width:0}.position-card p,.description-line{overflow-wrap:anywhere}.position-number{flex:0 0 auto;overflow-wrap:normal;white-space:nowrap;word-break:keep-all}.drag-handle{color:#62737c;display:grid;flex:0 0 18px;place-items:center}.position-card p{font-size:13px;line-height:1.35}.description-line{color:#62737c;font-size:12px}.card-meta{color:#62737c;display:grid;font-size:12px;gap:4px;grid-template-columns:repeat(2,minmax(0,1fr))}.badge{border-radius:999px;display:inline-flex;font-size:11px;font-weight:700;line-height:1;padding:5px 7px;white-space:nowrap}.badge-neutral{background:#eef2f3;color:#44545c}.badge-blue{background:#e7f1fb;color:#1f6092}.badge-green{background:#e8f5ed;color:#276f47}.badge-amber{background:#fff4d8;color:#7a5700}.badge-red{background:#feecec;color:#9f2b2b}.match-group{container-type:inline-size;display:flex;flex-direction:column;gap:12px;padding:12px}.group-header{align-items:start;display:flex;gap:12px;justify-content:space-between}.group-actions button{height:32px;justify-content:center;padding:0;width:34px}.match-summary{display:flex;flex-direction:column;gap:6px}.match-summary p,.warning-line{color:#62737c;font-size:12px;line-height:1.35}.airtable-status{border-radius:999px;display:inline-flex;font-size:11px;font-weight:700;line-height:1;padding:5px 7px;white-space:nowrap}.warning-line{color:#956500}.confidence{color:#62737c;font-size:12px;font-weight:700}.group-lanes{display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr))}.group-financials{display:grid;gap:8px;grid-template-columns:repeat(3,minmax(0,1fr))}.financial-metric{background:#f8fafb;border:1px solid #e6ecef;border-radius:7px;display:flex;flex-direction:column;gap:3px;min-width:0;padding:8px}.financial-metric span{color:#62737c;font-size:11px}.financial-metric strong{font-size:13px;overflow-wrap:anywhere}.metric-emphasis{background:#fff4d8;border-color:#f2d184}.group-lanes>div{background:#f8fafb;border:1px solid #e6ecef;border-radius:8px;display:flex;flex-direction:column;gap:8px;min-height:92px;padding:10px}.empty-lane{align-items:center;border:1px dashed #b7c5cc;border-radius:7px;color:#7b8c94;display:flex;font-size:12px;gap:6px;justify-content:center;min-height:58px}@container (max-width: 620px){.group-lanes,.group-financials{grid-template-columns:1fr}.group-header{align-items:stretch;flex-direction:column}}.text-button{border:0;color:#62737c;margin-left:auto;min-height:auto;padding:0;text-decoration:underline}.comment-field{display:flex;flex-direction:column;gap:6px}.comment-field span{color:#62737c;font-size:12px;font-weight:700;text-transform:uppercase}.comment-field textarea{border:1px solid #cfd8dd;border-radius:7px;color:#172126;font:inherit;font-size:13px;line-height:1.4;min-height:74px;padding:9px;resize:vertical;width:100%}.comment-field textarea:focus{border-color:#2f9e9e;outline:2px solid rgb(47 158 158 / .18)}.payload-panel{padding:14px}.payload-panel h2{margin-bottom:10px}pre{background:#172126;border-radius:8px;color:#e9f1f2;font-size:12px;line-height:1.45;margin:0;max-height:420px;overflow:auto;padding:14px}@media(max-width:1460px){.topbar{grid-template-columns:minmax(260px,1fr) auto}.delivery-facts,.topbar-actions{grid-column:1 / -1;justify-content:flex-start}.groups-header{align-items:flex-start;gap:8px}.groups-toolbar{flex:0 0 auto}.groups-toolbar button{height:34px;justify-content:center;padding:0;width:36px}.groups-toolbar .button-label{display:none}.check-pill,.difference-pill,.summary-info-pill{font-size:10px;padding:5px 6px}}@media(max-width:1320px)and (min-width:1181px){.board-grid{grid-template-columns:minmax(220px,.75fr) minmax(440px,1.5fr) minmax(220px,.75fr)}}@media(max-width:1180px){.topbar,.board-grid{grid-template-columns:1fr}.details-grid{grid-template-columns:repeat(2,minmax(220px,1fr))}.address-compare-section{grid-column:span 2}.delivery-facts{justify-content:flex-start}}@media(max-width:680px){.app-shell{padding:10px}.group-header,.group-lanes,.group-financials{grid-template-columns:1fr}.group-header{align-items:stretch;flex-direction:column}.card-meta,.details-grid{grid-template-columns:1fr}.address-compare-section{grid-column:span 1}.address-compare{grid-template-columns:1fr}.confirmation-details summary{align-items:start}}
