:root{
  --green:#315f4d;--green-dark:#244c3e;--orange:#f39a32;--bg:#f3f6f8;--ink:#13241d;--muted:#66788a;
  --line:#d3dde4;--amber:#d8a84e;--blue:#4b55ff;--teal:#178f8b;--softgreen:#1ea66b;--red:#d64b4b;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--ink)
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);font-size:14px}.app-shell{min-height:100vh}
button,input,select,textarea{font:inherit}.topbar{min-height:72px;background:var(--green);color:#fff;display:flex;align-items:center;gap:12px;padding:8px 14px;position:sticky;top:0;z-index:40;box-shadow:0 2px 6px #10251d2b}
.logo-link{display:flex;align-items:center;flex:0 0 auto}.logo-link img{width:54px;height:54px;object-fit:contain;display:block}.app-home{border:0;background:none;color:#fff;font-weight:800;font-size:18px;cursor:pointer;padding:8px 2px;white-space:nowrap;text-align:left}.app-home:hover{text-decoration:underline;text-underline-offset:4px}
.facility-switch{display:flex;align-items:center;gap:6px;font-size:11px}.facility-switch select,.language-picker select{border:0;background:transparent;color:inherit;font-weight:750;outline:0}.facility-switch option,.language-picker option{color:#111}.top-search{margin-left:auto;position:relative;display:flex;align-items:center;gap:8px;width:min(420px,32vw);border:1px solid #ffffff30;background:#ffffff0c;border-radius:6px;padding:8px 11px}.top-search input{border:0;background:transparent;outline:0;color:#fff;width:100%}.top-search input::placeholder{color:#d6e1dc}.top-actions{display:flex;align-items:center;gap:8px;margin-left:10px}.top-actions button,.language-picker{height:40px;border:1px solid #ffffff35;border-radius:6px;background:transparent;color:#fff;padding:0 12px;font-weight:750;display:flex;align-items:center;gap:5px}.top-actions button:disabled{opacity:.35}.top-actions .primary-action{background:var(--orange);border-color:var(--orange)}
.top-search-results{display:none;position:absolute;top:calc(100% + 8px);left:0;right:0;background:#fff;color:var(--ink);border:1px solid var(--line);border-radius:8px;box-shadow:0 14px 34px #0b261c33;max-height:350px;overflow:auto;z-index:70;padding:6px}.top-search-results.show{display:block}.top-result{display:block;width:100%;text-align:left;border:0;background:#fff;padding:9px;border-radius:6px;cursor:pointer}.top-result:hover{background:#edf5f0}.top-result strong,.top-result small{display:block}.top-result small{color:var(--muted);margin-top:2px}
.metric-strip{margin:12px 14px 0;background:#fff;border:1px solid var(--line);border-radius:9px;display:grid;grid-template-columns:repeat(4,1fr);overflow:hidden}.metric{display:flex;align-items:center;justify-content:center;gap:14px;min-height:83px;padding:12px 20px;border-right:1px solid var(--line);background:#fff}.metric:last-child{border-right:0}.metric span:last-child{min-width:140px}.metric small,.metric em{display:block;color:#6a7d8c;font-style:normal}.metric strong{font-size:23px;line-height:1.1;margin-right:6px}.metric-icon{width:39px;height:39px;border:2px solid;border-radius:10px;display:grid;place-items:center;font-size:20px}.metric-icon.blue{color:var(--blue)}.metric-icon.teal{color:var(--teal)}.metric-icon.green{color:var(--softgreen)}.metric-icon.red{color:var(--red)}.metric-button{border-top:0;border-bottom:0;border-left:0;cursor:pointer;text-align:left}.metric-button:hover{background:#fff9f7}
.workspace{padding:14px}.page-heading{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:12px}.page-heading>div:first-child{flex:1;min-width:260px}.page-heading h1{font-size:24px;margin:0}.page-heading p{margin:4px 0 0;color:var(--muted)}.toolbar-buttons{display:flex;gap:7px}.toolbar-buttons button,.soft-btn,.zoom-controls button,.overview-panel input,#cancel-modal{border:1px solid #c8d3dc;border-radius:6px;background:#fff;padding:9px 13px;font-weight:700;cursor:pointer}.primary-btn{border:1px solid var(--orange);border-radius:6px;background:var(--orange);color:#fff;padding:10px 14px;font-weight:800;cursor:pointer}.sync-badge{display:flex;align-items:center;gap:6px;border-radius:999px;padding:8px 12px;font-size:12px;font-weight:750}.sync-badge.local{background:#fff4cd;color:#8a6300}.sync-badge.realtime{background:#dff4e8;color:#147344}.sync-badge.connecting{background:#e7eef5;color:#48647a}
.find-hay{background:#fff;border:1px solid var(--line);border-radius:9px;padding:13px;display:grid;grid-template-columns:300px minmax(300px,1fr);gap:14px;align-items:center;margin-bottom:13px}.find-hay[hidden]{display:none!important}.find-hay-heading{display:flex;align-items:center;gap:12px}.find-hay-heading>span{width:39px;height:39px;border-radius:8px;background:var(--green);color:#fff;display:grid;place-items:center}.find-hay h2{margin:0 0 3px;font-size:18px}.find-hay p{margin:0;color:var(--muted);font-size:12px}.find-hay label small{display:block;font-size:9px;font-weight:850;letter-spacing:.06em;margin-bottom:5px}.find-hay input,.overview-panel input,.lot-inspector input,.lot-inspector select,.lot-inspector textarea{width:100%;border:1px solid #c8d3dc;border-radius:6px;background:#fff;padding:10px;outline:none}.find-hay input:focus,.overview-panel input:focus,.lot-inspector input:focus,.lot-inspector select:focus,.lot-inspector textarea:focus{border-color:#5f917c;box-shadow:0 0 0 3px #3c7b6120}.find-results{grid-column:1/-1;display:flex;flex-direction:column;gap:7px;max-height:270px;overflow:auto}.search-result{display:grid;grid-template-columns:30px minmax(130px,.8fr) minmax(230px,1.5fr) minmax(180px,1.15fr) minmax(120px,.7fr) 64px;align-items:center;gap:12px;width:100%;min-height:56px;padding:8px 12px;border:1px solid #c8d8cd;border-radius:8px;background:#f8fbf9;color:#174c3c;text-align:left;cursor:pointer}.search-result:hover{background:#edf6f0}.search-result small{display:block;font-size:9px;letter-spacing:.06em;color:#6a7e8f;font-weight:800}.search-result strong{font-size:15px}.search-result b{font-size:13px}.search-result em{font-style:normal;font-weight:800}.result-icon{width:27px;height:27px;border-radius:50%;display:grid;place-items:center;background:#dff4e7;color:#1a9661;font-size:16px}.location-result{grid-template-columns:30px 1fr auto}.no-results,.empty-state{color:var(--muted);padding:10px}
.map-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:14px;align-items:start}.map-layout.detail-mode{display:block}.map-panel,.overview-panel{background:#fff;border:1px solid var(--line);border-radius:9px;padding:12px;min-width:0}.map-toolbar{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px}.legend{display:flex;gap:14px;flex-wrap:wrap;color:#566978;font-size:12px}.swatch{display:inline-block;width:12px;height:12px;border-radius:3px;margin-right:4px}.swatch.available{background:#e7f3ed;border:1px solid #78ab8e}.swatch.partial{background:#fff0b8;border:1px solid #d8b144}.swatch.near{background:#f7c2bc;border:1px solid #d66d61}.zoom-controls{display:flex;align-items:center;gap:5px;white-space:nowrap}.zoom-controls button{padding:6px 10px}.overview-panel{max-height:calc(100vh - 90px);position:sticky;top:84px;overflow:hidden}.overview-panel[hidden]{display:none!important}.overview-panel h2{margin:0 0 10px}.overview-total{background:#f6f9fa;border:1px solid var(--line);border-radius:8px;padding:13px;margin-bottom:10px}.overview-total small,.overview-total span{display:block;color:var(--muted)}.overview-total strong{display:block;font-size:25px;margin:7px 0}.overview-total em{font-size:12px;font-style:normal}.overview-list{margin-top:10px;display:flex;flex-direction:column;gap:7px;max-height:calc(100vh - 330px);overflow:auto}.overview-list button{border:1px solid var(--line);border-radius:7px;background:#fff;padding:10px;text-align:left;cursor:pointer}.overview-list button:hover{background:#f7faf8}.overview-list button span{display:flex;justify-content:space-between}.overview-list em{font-style:normal;color:#6b7d89;font-size:11px}.overview-list small{display:block;margin-top:5px}.overview-bar{height:5px;background:#e4ebee;border-radius:99px;display:block;margin-top:7px;overflow:hidden}.overview-bar b{height:100%;display:block;background:var(--green)}
.map-viewport{width:100%;overflow:auto;border:1px solid #c8d4dc;border-radius:6px;background:#eef2f4}.map-spacer{position:relative}.map-stage{position:relative;transform-origin:top left}.facility-map{min-width:1000px;height:1500px;background:#f8f6ee}.blueprint-grid{position:absolute;inset:0;background-image:linear-gradient(#8194a61b 1px,transparent 1px),linear-gradient(90deg,#8194a61b 1px,transparent 1px);background-size:22px 22px;pointer-events:none}.facility-road{position:absolute;background:#aeb0b2;border-left:2px solid #86888a;border-right:2px solid #86888a;display:flex;align-items:center;justify-content:center;z-index:1;pointer-events:none}.facility-road span{writing-mode:vertical-rl;font-weight:900;color:#56585a;letter-spacing:.08em}.building-card{position:absolute;border:1px solid #7c8a91;border-radius:5px;background:#f3f6f4;color:#17251f;text-align:left;padding:7px;cursor:pointer;overflow:hidden;z-index:2}.building-card:hover{box-shadow:0 0 0 3px #d8a84e42}.building-card.pad{background:#f8edd1}.building-card.barn{background:#edf1f3}.building-card.combined{background:#e8efe9}.building-card.operations{background:#ebeff5}.building-card.nonstorage{background:#d8dde0}.building-title{display:flex;align-items:center;gap:6px}.location-color{width:8px;height:20px;border-radius:2px;display:inline-block}.building-capacity{display:block;font-size:10px;margin-top:3px;color:#526471}.capacity-track{position:absolute;bottom:5px;left:8px;right:8px;height:4px;background:#d7dfe1;border-radius:99px}.capacity-track i{height:100%;display:block;background:var(--green);border-radius:99px}.north-arrow{position:absolute;right:2%;top:2%;display:grid;place-items:center;color:var(--green);z-index:4}.north-arrow span{font-size:22px}
.detail-actions{display:flex;justify-content:space-between;gap:8px;margin-bottom:10px}.location-metrics{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);border-radius:8px;background:#fff;margin-bottom:12px;overflow:hidden}.location-metric{padding:14px 20px;text-align:center;border-right:1px solid var(--line)}.location-metric:last-child{border-right:0}.location-metric small{display:block;color:var(--muted)}.location-metric strong{font-size:22px;display:inline-block;margin-top:5px}.location-metric em{font-style:normal;color:var(--muted);font-size:11px;margin-left:5px}.remaining-bale-capacity{display:flex;align-items:center;justify-content:center;gap:14px;margin-top:8px;color:var(--green);font-size:11px;line-height:1.25}.remaining-bale-capacity span{white-space:nowrap}.remaining-bale-capacity b{color:var(--ink);margin-right:3px}.mini-progress{height:5px;width:100px;max-width:100%;background:#e4e9ee;border-radius:99px;margin:7px auto 0;overflow:hidden}.mini-progress i{display:block;height:100%;background:var(--green)}
.pad-detail{min-width:1050px;height:430px;background:#f3c33c;overflow:hidden}.pad-stack{position:absolute;top:2%!important;height:96%!important;border:2px solid color-mix(in srgb,var(--lot-color) 75%,#111);background:color-mix(in srgb,var(--lot-color) 18%,#fff);border-radius:5px;padding:8px;text-align:left;overflow:hidden;cursor:grab;touch-action:none}.pad-stack strong,.pad-stack span,.pad-stack small{display:block}.pad-stack strong{font-size:14px}.pad-stack small{font-size:10px;margin-top:5px}.pad-stack.moving,.storage-stack.moving{opacity:.76;cursor:grabbing}.resize-handle{position:absolute;right:0;bottom:0;width:16px;height:16px;background:linear-gradient(135deg,transparent 50%,#364c43 51%);cursor:ew-resize}.overlap-warning{outline:3px solid #d64b4b!important;box-shadow:0 0 0 5px #d64b4b22!important}
.pad-detail.vertical-flow{min-width:420px;width:min(520px,100%);height:760px;margin:0 auto}.pad-detail.vertical-flow .pad-stack{left:2%!important;width:96%!important;top:var(--pad-start)!important;height:var(--pad-span)!important}.pad-detail.vertical-flow .resize-handle{cursor:ns-resize}
.storage-detail{min-width:1050px;height:560px;display:flex;gap:8px;padding:12px;background:#eceff1}.storage-section{min-width:58px;border:1px solid #89959c;background-color:#f1c43f;background-image:linear-gradient(#b890252f 1px,transparent 1px),linear-gradient(90deg,#b890252f 1px,transparent 1px);background-size:24px 24px;display:flex;flex-direction:column}.storage-section.double{flex:2}.storage-section.single{flex:1}.storage-section header{padding:8px;background:#f8d873e8;border-bottom:1px solid #9a8744}.storage-section header small{display:block}.storage-floor{position:relative;flex:1;overflow:hidden}.storage-floor.drop-target{box-shadow:inset 0 0 0 4px #2f7657}.storage-stack{position:absolute;border:1px solid #6e684e;border-radius:4px;background:color-mix(in srgb,var(--lot-color) 30%,#fff);padding:5px;text-align:left;overflow:hidden;cursor:grab;touch-action:none;min-width:44px;min-height:34px}.storage-stack strong,.storage-stack span,.storage-stack small{display:block;font-size:11px}.storage-stack small{margin-top:3px}.storage-resize-handle{cursor:nwse-resize}.combined-detail{min-width:960px;height:560px;background:#e6eaec;padding:18px;display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:16px}.container-nonstorage{border:1px solid #858b8f;background:#c2c3c5;display:grid;place-items:center;text-align:center;padding:20px;color:#525558}.container-nonstorage strong{font-size:22px}.container-nonstorage span{display:block;margin-top:8px}.fumigation-section{border:1px solid #89959c;background:#f1c43f;display:flex;flex-direction:column}.fumigation-section header{padding:10px;background:#f8d873;border-bottom:1px solid #9a8744}.fumigation-section .storage-floor{flex:1}.map-note{color:#66798a;font-size:12px;margin:8px 2px 0}
.barn-viewport{width:100%;overflow:visible;background:transparent;border:0;border-radius:0}.barn-viewport .map-spacer{width:100%}.storage-detail.blueprint-layout{position:relative;display:block;width:100%;height:auto;min-width:0;padding:0;aspect-ratio:var(--barn-aspect);background:#eceff1}.storage-detail.blueprint-layout .storage-section{position:absolute;min-width:0;box-sizing:border-box;z-index:2}.storage-detail.blueprint-layout .storage-section header{padding:5px 7px;position:relative;z-index:2}.storage-detail.blueprint-layout .storage-section header small{font-size:10px}.storage-detail.blueprint-layout .storage-section.sleeve-surface{background-color:#dce8ed;background-image:linear-gradient(#7d9ca52b 1px,transparent 1px),linear-gradient(90deg,#7d9ca52b 1px,transparent 1px)}.storage-detail.blueprint-layout .storage-section.sleeve-surface header{background:#eaf2f5e8;border-bottom-color:#8fa6af}.barn-detail-shape{position:absolute;z-index:1;box-sizing:border-box;background:#aeb1b4;border:1px solid #7f8386;color:#4f565b;display:grid;place-items:center;overflow:hidden;pointer-events:none}.barn-detail-shape span{font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}.barn-detail-shape.forklift-aisle span{writing-mode:vertical-rl;transform:rotate(180deg)}.barn-detail-shape.forklift-aisle[style*="width:100%"] span{writing-mode:horizontal-tb;transform:none}.barn-detail-shape.nonstorage{background:#dfe3e6;border-color:#c4c9cc}
.operations-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.ops-card{border:1px solid var(--line);border-radius:7px;padding:10px}.ops-card h3{margin:0 0 8px}.ops-map{position:relative;height:620px;background:#f8fafb;border:1px solid #aebbc3}.ops-shape{position:absolute;border:2px solid #2f383e;display:grid;place-items:center;text-align:center;padding:4px;background:#f4bf31;font-weight:800}.ops-shape.storage{background:#fff4bb}.ops-shape.container{background:#e5e8ea}.ops-shape.computer{background:#eeaa2d}.ops-shape.entry{background:#d7f1e1}.ops-shape.danger{background:#ef8c82}.ops-shape.door{background:#dce7ee}
.amber-highlight{animation:amberPulse 1.3s ease-in-out 4;outline:4px solid #e38b16!important;box-shadow:0 0 0 8px #f4b84a55,0 0 26px #d8780099!important;z-index:30!important}@keyframes amberPulse{50%{outline-color:#ffd66b;box-shadow:0 0 0 13px #f4b84a33,0 0 34px #d87800cc}}
.find-target-badge{position:absolute!important;top:6px!important;right:6px!important;z-index:40!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;width:auto!important;height:22px!important;padding:0 8px!important;border:2px solid #fff!important;border-radius:999px!important;background:#c96800!important;color:#fff!important;font-size:10px!important;font-weight:900!important;line-height:1!important;letter-spacing:.06em!important;box-shadow:0 2px 8px #5d2c0066!important;pointer-events:none!important}
.inspector-backdrop{position:fixed;inset:0;background:#0b211a44;z-index:79}.lot-inspector{position:fixed;right:0;top:0;bottom:0;width:min(390px,100vw);background:#fff;box-shadow:-12px 0 35px #10271d33;z-index:80;transform:translateX(105%);transition:transform .22s ease;overflow:auto}.lot-inspector.open{transform:translateX(0)}.lot-inspector form{min-height:100%;display:flex;flex-direction:column}.inspector-header{display:flex;align-items:center;padding:16px;border-bottom:1px solid var(--line);position:sticky;top:0;background:#fff;z-index:2}.inspector-header>div{flex:1}.inspector-header small{font-size:9px;letter-spacing:.12em;color:#6c7e8f;font-weight:850}.inspector-header h2{margin:5px 0 0;font-size:21px;font-weight:500}.inspector-header button{border:0;background:#f1f5f6;border-radius:50%;width:34px;height:34px;font-size:23px;cursor:pointer}.inspector-body{padding:15px;display:flex;flex-direction:column;gap:12px}.inspector-body label{font-weight:750;font-size:11px}.wide{display:block;width:100%}.form-grid.two-col{display:grid;grid-template-columns:1fr 1fr;gap:11px}.inspector-info{border:1px solid #a9d0bd;border-radius:7px;background:#eef8f2;padding:10px;color:#315f4d}.inspector-info strong,.inspector-info span{display:block}.inspector-info span{font-size:10px;margin-top:4px}.color-fieldset{border:0;padding:0;margin:0}.color-fieldset legend{font-size:11px;font-weight:750;margin-bottom:8px}.color-swatches{display:flex;gap:9px}.color-swatches button{width:31px;height:31px;border-radius:50%;background:var(--swatch);border:2px solid #fff;box-shadow:0 0 0 1px #bbc8cf;cursor:pointer}.color-swatches button.selected{box-shadow:0 0 0 3px #315f4d}.inspector-footer{display:flex;gap:8px;align-items:center;padding:13px 15px;border-top:1px solid var(--line);position:sticky;bottom:0;background:#fff;margin-top:auto}.inspector-footer span{flex:1}.danger-btn{background:#fff;color:#b83b32;border:1px solid #efaaa5;border-radius:6px;padding:9px 12px;cursor:pointer}
.alerts-dialog{border:0;border-radius:12px;padding:0;width:min(760px,92vw);max-height:80vh;box-shadow:0 20px 70px #061a1444}.alerts-dialog::backdrop{background:#0b211a88}.alerts-dialog>header{display:flex;align-items:center;padding:15px 18px;border-bottom:1px solid var(--line)}.alerts-dialog>header div{flex:1}.alerts-dialog>header small{letter-spacing:.1em;color:#6d7e8e;font-weight:850}.alerts-dialog>header h2{margin:4px 0 0}.alerts-dialog>header button{border:0;background:#eff3f5;width:34px;height:34px;border-radius:50%;font-size:22px}.alerts-dialog>p{padding:0 18px;color:var(--muted)}.alerts-list{padding:0 18px 18px;display:flex;flex-direction:column;gap:8px;max-height:55vh;overflow:auto}.alert-row{display:grid;grid-template-columns:1fr 1.4fr auto;gap:10px;align-items:center;border:1px solid #ead2ce;background:#fff9f8;border-radius:8px;padding:10px;text-align:left}.alert-row button{border:1px solid #c8d3dc;background:#fff;border-radius:6px;padding:7px 10px;cursor:pointer}.alert-row small{display:block;color:#7a6b68}.toast{position:fixed;bottom:22px;left:50%;transform:translate(-50%,20px);background:#173e32;color:#fff;padding:11px 18px;border-radius:999px;opacity:0;pointer-events:none;transition:.25s;z-index:100}.toast.show{opacity:1;transform:translate(-50%,0)}
.stack-save-message{display:none;margin:0 15px 8px;padding:10px 12px;border-radius:7px;font-size:12px;line-height:1.35}.stack-save-message.saving{display:block;background:#eef6f2;color:#285a47;border:1px solid #a8cbbd}.stack-save-message.error{display:block;background:#fff2f0;color:#a52820;border:1px solid #efb4ae}.inspector-footer button[type="submit"]:disabled{cursor:wait;opacity:.75}
@media(max-width:1180px){.topbar{flex-wrap:wrap}.app-home{flex:1}.top-search{order:3;flex-basis:100%;width:100%}.top-actions{margin-left:0}.map-layout{grid-template-columns:1fr}.overview-panel{position:static;max-height:none}.overview-list{max-height:320px}.metric-strip{grid-template-columns:repeat(2,1fr)}.metric:nth-child(2){border-right:0}.find-hay{grid-template-columns:1fr}.find-results{grid-column:1}.search-result{grid-template-columns:28px 1fr 1fr}.search-result>span:nth-of-type(3),.search-result>span:nth-of-type(4),.search-result em{display:none}.operations-grid{grid-template-columns:1fr}}
@media(max-width:700px){body{font-size:13px}.topbar{padding:8px 10px;gap:7px}.logo-link img{width:47px;height:47px}.app-home{font-size:15px;min-width:160px}.facility-switch span{display:none}.top-actions{width:100%;overflow-x:auto}.top-actions button{white-space:nowrap}.language-picker{white-space:nowrap}.metric-strip{margin:9px;grid-template-columns:1fr 1fr}.metric{padding:10px;justify-content:flex-start}.metric span:last-child{min-width:0}.metric-icon{width:32px;height:32px}.metric strong{font-size:17px}.workspace{padding:9px}.page-heading h1{font-size:20px}.toolbar-buttons{width:100%;overflow-x:auto}.find-hay{padding:10px}.map-toolbar{align-items:flex-start;flex-direction:column}.zoom-controls{width:100%;justify-content:flex-end}.map-panel,.overview-panel{padding:8px}.search-result{grid-template-columns:27px 1fr;min-height:56px}.search-result>span:nth-of-type(n+3),.search-result em{display:none}.location-metrics{grid-template-columns:1fr 1fr}.location-metric:nth-child(2){border-right:0}.location-metric:nth-child(-n+2){border-bottom:1px solid var(--line)}.remaining-bale-capacity{gap:2px;flex-direction:column;margin-top:6px}.form-grid.two-col{grid-template-columns:1fr 1fr}.operations-grid{display:block}.ops-card{margin-bottom:12px}.ops-map{height:500px}.alert-row{grid-template-columns:1fr}.combined-detail{grid-template-columns:1fr 1fr;height:650px}.container-nonstorage{grid-column:1/-1;min-height:120px}}
@media print{.topbar,.metric-strip,.find-hay,.overview-panel,.map-toolbar,.toolbar-buttons,.sync-badge,.detail-actions,.lot-inspector,.inspector-backdrop{display:none!important}.workspace{padding:0}.map-layout{display:block}.map-panel{border:0}}


/* v3 consistency and detail-page corrections */
[hidden]{display:none!important}
.map-layout.detail-mode{display:block!important}
.map-layout.detail-mode .overview-panel{display:none!important}
.detail-mode .map-panel{width:100%!important}
.detail-sticky{position:sticky;top:74px;z-index:20;background:#f4f7f9;padding:10px 0;display:flex;align-items:center;gap:12px}
.detail-location-label{font-weight:800;color:#204f3f;margin-right:auto}
.inventory-list-panel{margin-top:16px;border:1px solid #d5dee6;border-radius:10px;background:white;overflow:hidden}
.inventory-list-panel>header{display:flex;justify-content:space-between;align-items:center;padding:15px 18px;border-bottom:1px solid #e2e8ed}
.inventory-list-panel h2{font-size:20px;margin-top:3px}
.inventory-list-head,.inventory-row{display:grid;grid-template-columns:1.2fr .8fr 1.25fr .9fr .75fr .85fr .72fr .72fr 1fr;gap:10px;align-items:center}
.inventory-list-head{padding:9px 18px;background:#f6f8fa;font-size:11px;font-weight:800;color:#66758b;text-transform:uppercase}
.inventory-row{width:100%;padding:12px 18px;border-top:1px solid #edf1f4;text-align:left;background:white}
.inventory-row:hover{background:#f3f8f5}
.inventory-row b{text-align:right;color:#164f3a}
.facility-road{pointer-events:none!important;border-radius:0!important;background:#aeb0b3!important;box-shadow:none!important}
.facility-placeholder{min-height:520px;border:1px dashed #9db2a8;border-radius:10px;background:linear-gradient(135deg,#f8fbf9,#edf4f0);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:36px;color:#23483a}.facility-placeholder span{font-size:11px;letter-spacing:.14em;font-weight:850;color:#6b8077}.facility-placeholder h2{max-width:560px;margin:12px 0 8px;font-size:25px}.facility-placeholder p{max-width:620px;margin:0;color:#61756c;line-height:1.55}
.facility-map-warning{display:flex;align-items:center;gap:8px;margin-bottom:8px;border:1px solid #d6b55c;border-radius:6px;background:#fff8dc;color:#644f18;padding:9px 11px;font-size:11px}.facility-map-warning span{color:#79682f}.building-card.polygon-area{border-radius:0}
.storage-floor{position:relative;overflow:hidden}
.storage-stack.moving{opacity:.78;pointer-events:none;z-index:50}
.storage-detail.blueprint-layout{container-type:inline-size;--barn-grid:clamp(14px,1.6cqw,28px)}
.storage-detail.blueprint-layout .storage-section{background-size:var(--barn-grid) var(--barn-grid)}
.alerts-dialog[open]{z-index:1000}
.alerts-dialog::backdrop{background:rgba(18,35,29,.38)}
@media(max-width:900px){
  .detail-sticky{top:64px;flex-wrap:wrap}
  .inventory-list-head{display:none}
  .inventory-row{grid-template-columns:1fr 1fr;gap:5px 12px}
  .inventory-row b{text-align:left}
}
@media(max-width:700px){
  .barn-viewport{overflow:auto;overscroll-behavior:contain;touch-action:pan-x pan-y pinch-zoom;border:1px solid #c8d4dc;border-radius:6px;background:#eef2f4}
  .storage-detail.blueprint-layout{min-width:720px}
  .storage-stack{min-width:58px;min-height:42px}
}

/* v4 critical fixes */
.app-home{font-family:inherit;font-size:18px;letter-spacing:-.01em}
.facility-switch{font-family:inherit;gap:8px;border-left:1px solid rgba(255,255,255,.22);padding-left:12px}
.facility-label{font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:#d8e6df;font-weight:800}
.facility-switch select{font-family:inherit;font-size:13px;font-weight:800;cursor:pointer}
.lot-inspector{visibility:visible;pointer-events:none}
.lot-inspector.open{pointer-events:auto}
.inspector-backdrop:not([hidden]){display:block}

/* One shared Stack card for every facility, Pad, Pond Pad, and Barn. */
.storage-stack,.pad-stack{border:2px solid color-mix(in srgb,var(--lot-color) 72%,#4f594f);border-radius:6px;background:color-mix(in srgb,var(--lot-color) 64%,#fff);padding:20px 8px 9px;text-align:center;box-shadow:0 2px 5px #23382f35;color:#092e25;container-type:inline-size}
.storage-stack-markers{position:absolute;left:7px;right:7px;top:5px;display:flex!important;justify-content:space-between;color:#426454;font:700 9px/1 sans-serif}
.storage-stack-markers i{font-style:normal}
.storage-stack-copy{display:flex!important;width:100%;height:100%;flex-direction:column;align-items:center;justify-content:center;min-width:0}
.storage-stack-copy strong{display:block;font-size:16px;line-height:1.05;max-width:100%;overflow:hidden;text-overflow:ellipsis}
.storage-stack-copy b{display:block;font-size:12px;margin-top:5px}
.storage-stack-copy small{display:block;font-size:9px;margin-top:7px;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.storage-stack-copy em{display:block;font-style:normal;font-size:8px;margin-top:5px;color:#4e675c}
@container (max-width:110px){.storage-stack-copy strong{font-size:12px;overflow-wrap:anywhere}.storage-stack-copy b{font-size:10px}.storage-stack-copy small,.storage-stack-copy em{display:none}}
@media(max-width:700px){.app-home{font-size:15px}.facility-switch{border-left:0;padding-left:0}}

/* v2.3 touch-friendly Ellensburg Pad cards */
.building-card.pad{
  padding:8px 12px 18px;
  border-radius:7px;
  min-height:62px;
  display:block;
  touch-action:manipulation;
}
.building-card.pad .building-title{
  position:absolute;
  left:12px;
  right:12px;
  top:8px;
  height:20px;
  display:flex;
  align-items:center;
  gap:8px;
  overflow:hidden;
}
.building-card.pad .building-title b{
  font-size:14px;
  line-height:20px;
  white-space:nowrap;
}
.building-card.pad .location-color{
  flex:0 0 8px;
  height:20px;
}
.building-card.pad .building-capacity{
  position:absolute;
  left:12px;
  right:12px;
  top:31px;
  height:14px;
  margin:0;
  padding:0;
  color:#4c5f57;
  font-size:10px;
  line-height:14px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.building-card.pad .capacity-track{
  left:12px;
  right:12px;
  bottom:7px;
  height:5px;
  z-index:2;
}
.hk-shipment-controls{
  display:grid;
  grid-template-columns:minmax(0,1fr) 92px auto;
  gap:8px;
  margin-top:10px;
}
.hk-shipment-controls input,.hk-shipment-controls select{
  min-width:0;
  width:100%;
  min-height:38px;
  border:1px solid #b9d5c3;
  border-radius:6px;
  background:#fff;
  padding:8px 10px;
}
.product-combobox input{width:100%}
@media(max-width:700px){
  .hk-shipment-controls{grid-template-columns:1fr 92px}
  .hk-shipment-controls button{grid-column:1/-1}
}

/* Unified facility selector: Winters visual baseline */
.topbar .facility-switch{
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  flex:0 0 auto!important;
  margin-left:8px!important;
  padding-left:0!important;
  border-left:0!important;
  color:#fff!important;
  font-weight:700!important;
  white-space:nowrap!important;
}
.topbar .facility-switch .facility-label{
  display:inline!important;
  font-size:11px!important;
  letter-spacing:.055em!important;
  text-transform:uppercase!important;
  opacity:.82!important;
}
.topbar .facility-switch select{
  height:38px!important;
  min-width:116px!important;
  padding:0 30px 0 12px!important;
  border:1px solid rgba(255,255,255,.24)!important;
  border-radius:8px!important;
  background:rgba(255,255,255,.08)!important;
  color:#fff!important;
  font-family:inherit!important;
  font-size:13px!important;
  font-weight:800!important;
  cursor:pointer!important;
}
.topbar .facility-switch select option{background:#fff!important;color:#183027!important}
.topbar .facility-switch select:focus{
  outline:2px solid rgba(240,195,109,.5)!important;
  outline-offset:2px!important;
}
@media(max-width:1050px){
  .topbar .facility-switch .facility-label{display:none!important}
  .topbar .facility-switch select{min-width:104px!important}
}
@media(max-width:760px){
  .topbar .facility-switch{margin-left:0!important}
  .topbar .facility-switch select{height:36px!important;min-width:108px!important}
}

/* Facility identity and implemented utilization status colors. */
.facility-ellensburg .building-card.pad{background:#fbf3d6}
.facility-winters .building-card.pad{background:#e3f1fa}
.capacity-track i{transition:width .18s ease,background-color .18s ease}
.building-card.available .capacity-track i{background:#2f8a57}
.building-card.partial .capacity-track i{background:#d99a24}
.building-card.near .capacity-track i{background:#d95149}

/* Pressing operations are visible map landmarks, never inventory containers. */
.building-card.pressing-barn{background:#ead8bd;border-color:#9a6d32}
.building-card.pressing-machine{background:#d9e3e8;border:2px dashed #667f8b}
.swatch.pressing-barn{background:#c88c43;border-color:#8d6029}
.location-qr-dialog{width:min(520px,calc(100% - 24px));max-height:min(720px,calc(100dvh - 24px));border:0;border-radius:14px;padding:0;color:#173d31;box-shadow:0 20px 70px rgba(0,0,0,.35)}
.location-qr-dialog::backdrop{background:rgba(8,29,22,.62)}
.location-qr-dialog form{padding:20px}.location-qr-dialog header,.location-qr-dialog footer{display:flex;align-items:center;justify-content:space-between;gap:12px}.location-qr-dialog h2{margin:3px 0}.location-qr-dialog header>button{width:42px;height:42px;border:0;border-radius:50%;font-size:25px}.location-qr-options{display:grid;gap:8px;max-height:360px;overflow:auto}.location-qr-options label{display:flex;align-items:center;gap:10px;border:1px solid #bed0c7;border-radius:9px;padding:10px}.location-qr-options strong,.location-qr-options small{display:block}.location-qr-layout{display:grid;gap:5px;margin:14px 0}.location-qr-layout select{min-height:44px;border:1px solid #9fb8ac;border-radius:8px;padding:8px;background:#fff}.location-qr-dialog footer button{min-height:44px;border:1px solid #9fb8ac;border-radius:8px;padding:8px 14px}
