:root{color-scheme:light;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:#eef4ef;color:#14231f;font-synthesis:none;text-rendering:geometricPrecision;--ink: #14231f;--muted: #61736d;--surface: #ffffff;--field: #f8fbf8;--line: #dbe6df;--green: #1f7a55;--green-strong: #11583a;--blue: #246b9f;--amber: #b7791f;--red: #b43a3a;--mint: #dff2e8;--sky: #e3f0f8;--shadow: 0 18px 55px rgba(29, 55, 47, .16)}*{box-sizing:border-box}html,body,#root{min-width:320px;min-height:100%;margin:0}body{background:linear-gradient(130deg,#dff2e8cc,#e3f0f8c7),#eef4ef}button,input,select{font:inherit}button{color:inherit}.app-shell{min-height:100vh;padding:20px}.quote-surface{display:grid;grid-template-columns:minmax(0,1fr) minmax(380px,.82fr);gap:18px;width:min(1180px,100%);margin:0 auto}.app-header{grid-column:1 / -1;display:flex;align-items:center;gap:13px;padding:8px 2px 2px}.brand-mark{display:grid;place-items:center;flex:none;width:52px;height:52px;border:1px solid rgba(31,122,85,.18);border-radius:8px;background:var(--green);color:#fff;box-shadow:0 12px 30px #1f7a553b}.app-header p,.field span,.result-topline span,dt,.empty-result p,.quote-card-head span,.quote-card-head small,.saved-meta,.section-title small{color:var(--muted)}.app-header p{margin:0 0 3px;font-size:13px;font-weight:800;text-transform:uppercase}h1,h2,p{margin:0}h1{overflow-wrap:anywhere;font-size:30px;line-height:1.05}.quote-form,.result-panel{border:1px solid var(--line);border-radius:8px;background:#ffffffe6;box-shadow:var(--shadow)}.quote-form{display:grid;gap:14px;align-content:start;padding:16px}.pricing-panel,.entry-panel,.load-panel,.load-list,.quote-list{display:grid;gap:12px}.field{display:grid;gap:7px;min-width:0}.field span{display:flex;align-items:center;gap:7px;min-height:22px;font-size:13px;font-weight:800}input,select{width:100%;min-height:52px;border:1px solid var(--line);border-radius:8px;background:var(--field);color:var(--ink);padding:0 13px;outline:0}input:focus,select:focus{border-color:#246b9fb8;box-shadow:0 0 0 4px #246b9f1f}.primary-action,.secondary-action,.share-action,.mode-control button,.add-commodity-action,.cancel-commodity-action,.add-load-action,.icon-action,.commodity-edit,.commodity-remove,.pin-icon-action{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;border:1px solid transparent;border-radius:8px;cursor:pointer;font-weight:850}.rate-row{display:grid;grid-template-columns:132px minmax(0,1fr);gap:10px}.mode-control{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;border:1px solid var(--line);border-radius:8px;background:#f0f6f2;padding:5px}.mode-control button{min-height:42px;background:transparent;color:var(--muted)}.mode-control button.selected{background:var(--surface);color:var(--green-strong);box-shadow:0 8px 20px #1d372f1a}.commodity-panel{display:grid;gap:12px;border:1px solid rgba(36,107,159,.16);border-radius:8px;background:#e3f0f87a;padding:12px}.commodity-setup-fields{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) 128px minmax(96px,148px);gap:10px;align-items:end}.commodity-form-actions{display:grid;grid-template-columns:minmax(0,1fr);gap:8px;min-width:0}.commodity-form-actions.editing{grid-template-columns:minmax(0,1fr) 48px}.add-commodity-action{width:100%;background:var(--blue);color:#fff}.cancel-commodity-action{width:48px;border-color:var(--line);background:#f7faf8;color:var(--muted)}.add-commodity-action:disabled{cursor:not-allowed;opacity:.48}.commodity-list{display:flex;flex-wrap:wrap;gap:8px;min-width:0}.commodity-pill,.quote-commodity{display:inline-flex;align-items:center;gap:7px;min-width:0;border:1px solid rgba(36,107,159,.18);border-radius:8px;background:#fff;color:#174d73;padding:7px 9px;font-size:13px;font-weight:850}.commodity-pill span,.quote-commodity span{min-width:0;overflow-wrap:anywhere}.commodity-edit,.commodity-remove{width:28px;min-height:28px;flex:none;border-color:transparent}.commodity-edit{background:var(--sky);color:#174d73}.commodity-remove{background:#f6ecec;color:var(--red)}.commodity-route-control{display:grid;gap:8px}.commodity-selected{color:#174d73;font-size:13px;font-weight:850}.manual-commodity-fields{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) 128px;gap:10px}.entry-panel{border:1px solid rgba(31,122,85,.16);border-radius:8px;background:#dff2e86b;padding:12px}.entry-fields{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) 120px;gap:10px;align-items:end}.field-with-pin{display:grid;grid-template-columns:minmax(0,1fr) 52px;gap:8px;align-items:end;min-width:0}.location-control{position:relative;display:grid;gap:7px;min-width:0}input.has-location{border-color:#1f7a558c;background:#f5fbf7}.town-menu{position:absolute;z-index:20;top:82px;right:60px;left:0;display:grid;gap:4px;max-height:270px;overflow:auto;border:1px solid rgba(36,107,159,.2);border-radius:8px;background:#fff;box-shadow:0 18px 45px #14231f2e;padding:6px}.town-menu button{display:grid;gap:2px;width:100%;border:0;border-radius:6px;background:transparent;padding:10px;text-align:left;cursor:pointer}.town-menu button:hover,.town-menu button:focus{background:var(--sky);outline:0}.town-menu strong{min-width:0;color:var(--ink);font-size:14px;line-height:1.22;overflow-wrap:anywhere}.town-menu span,.town-menu-note{color:var(--muted);font-size:12px;font-weight:800;line-height:1.3}.town-menu-note{padding:10px}.location-chip{display:flex;align-items:center;gap:6px;min-height:32px;min-width:0;border:1px solid rgba(31,122,85,.18);border-radius:8px;background:#ffffffb8;color:var(--green-strong);padding:6px 9px;font-size:12px;font-weight:850}.location-chip svg{flex:none}.location-chip span{min-width:0;overflow-wrap:anywhere}.pin-icon-action{width:52px;border-color:#246b9f38;background:var(--sky);color:#174d73}.optional-field input{border-style:dashed}.entry-actions{display:grid;grid-template-columns:minmax(0,1fr) 156px;gap:10px;align-items:stretch}.reuse-panel{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.check-option{display:flex;align-items:center;gap:9px;min-width:0;min-height:48px;border:1px solid var(--line);border-radius:8px;background:#f7faf8;padding:10px 12px;color:var(--ink);cursor:pointer;font-weight:850}.check-option input{width:18px;min-width:18px;height:18px;min-height:18px;accent-color:var(--green)}.check-option span{min-width:0}.add-load-action{width:100%;background:var(--ink);color:#fff}.add-load-action:disabled,.primary-action:disabled,.share-action:disabled,.icon-action:disabled{cursor:not-allowed;opacity:.48;box-shadow:none}.section-title{display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0}.section-title div{display:flex;align-items:center;gap:8px;min-width:0}.section-title span{color:var(--muted);font-size:13px;font-weight:800}.section-title strong{display:inline-flex;align-items:center;justify-content:center;min-height:30px;border-radius:8px;background:var(--mint);color:var(--green-strong);padding:4px 8px;white-space:nowrap}.section-title small{font-size:12px;font-weight:800}.load-card{display:grid;gap:10px;min-width:0;border:1px solid var(--line);border-radius:8px;background:#fbfdfb;padding:12px}.load-card.saved{border-left:4px solid var(--green)}.load-card-header{display:flex;align-items:center;justify-content:space-between;gap:10px}.load-card-header strong{color:var(--green-strong)}.icon-action{flex:none;width:40px;min-height:40px;background:#f6ecec;color:var(--red)}.route-pair{display:grid;grid-template-columns:minmax(0,1fr) 32px minmax(0,1fr);align-items:center;gap:9px}.route-pair p{min-height:56px;border:1px solid var(--line);border-radius:8px;background:#f7faf8;padding:10px;color:var(--ink);font-size:14px;line-height:1.35;overflow-wrap:anywhere}.route-pair span{height:2px;background:var(--green)}.saved-meta{display:flex;align-items:center;gap:7px;font-size:13px;font-weight:800}.empty-loads{border:1px dashed var(--line);border-radius:8px;background:#f7faf8;padding:16px;color:var(--muted);text-align:center}.status-line{display:grid;grid-template-columns:10px minmax(0,1fr);align-items:center;gap:10px;min-height:44px;border-radius:8px;background:#f3f7f5;padding:10px 12px}.status-line span{width:10px;height:10px;border-radius:50%;background:var(--muted)}.status-line p{color:var(--muted);font-size:14px;line-height:1.35}.status-line.busy span{background:var(--blue)}.status-line.success span{background:var(--green)}.status-line.warning span{background:var(--amber)}.status-line.error span{background:var(--red)}.status-line.error p{color:var(--red)}.form-actions{display:grid;grid-template-columns:.72fr 1fr;gap:10px}.secondary-action{background:#f3f7f5;border-color:var(--line)}.primary-action{background:var(--green);color:#fff;box-shadow:0 12px 28px #1f7a5540}.result-panel{align-self:stretch;display:grid;gap:14px;align-content:start;min-height:430px;padding:18px}.result-topline{display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0}.result-topline strong{color:var(--blue);overflow-wrap:anywhere}output{display:block;width:100%;color:var(--green-strong);font-size:31px;font-weight:900;line-height:1.04;overflow-wrap:anywhere}dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0}dl div{min-width:0;border:1px solid var(--line);border-radius:8px;background:#f7faf8;padding:10px}dt{font-size:12px;font-weight:800}dd{margin:4px 0 0;overflow-wrap:anywhere;font-weight:900}.batch-stats dd{font-size:15px}.quote-card{display:grid;gap:10px;min-width:0;border:1px solid rgba(31,122,85,.18);border-left:4px solid var(--green);border-radius:8px;background:#fbfdfb;padding:12px}.quote-card.estimated{border-left-color:var(--amber)}.quote-card.failed{border-left-color:var(--red)}.quote-card-head{display:grid;grid-template-columns:62px minmax(0,1fr);align-items:start;gap:5px 8px}.quote-card-head span{font-size:12px;font-weight:850;text-transform:uppercase}.quote-card-head strong,.quote-card-head small{overflow-wrap:anywhere}.quote-card-head small{grid-column:2}.quote-card .quote-breakdown{grid-template-columns:repeat(2,minmax(0,1fr))}.quote-total-cell{border-color:#1f7a5542;background:#e8f5ee}.quote-total-cell dd{color:var(--green-strong);font-size:20px}.quote-error{border-radius:8px;background:#fbefef;color:var(--red);padding:10px;font-size:14px;line-height:1.35}.share-action{width:100%;background:var(--ink);color:#fff}.empty-result{align-self:center;justify-self:center;display:grid;place-items:center;gap:10px;max-width:320px;text-align:center}.empty-result.compact{align-self:auto;justify-self:stretch;max-width:none;border:1px solid #f1d4d4;border-radius:8px;background:#fbefef;padding:16px}.empty-result svg{color:var(--green)}.empty-result.compact svg{color:var(--red)}.empty-result h2{font-size:24px}.spin{animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:980px){.quote-surface{grid-template-columns:1fr;gap:12px}.result-panel{min-height:330px}}@media(max-width:680px){.app-shell{padding:12px}.app-header{align-items:flex-start}.brand-mark{width:46px;height:46px}h1{font-size:26px}.quote-form,.result-panel{padding:14px}.entry-fields,.commodity-setup-fields,.manual-commodity-fields{grid-template-columns:1fr}.entry-actions{grid-template-columns:minmax(0,1fr) 132px}.check-option{min-height:44px;padding:9px;font-size:13px}.route-pair,dl,.quote-card dl{grid-template-columns:1fr}.route-pair span{width:2px;height:22px;margin:0 auto}output{font-size:30px}}@media(max-width:430px){.rate-row,.form-actions,.entry-actions,.reuse-panel{grid-template-columns:1fr}.add-load-action{min-height:52px}.quote-card-head{grid-template-columns:1fr}.quote-card-head small{grid-column:auto}}
