#root,body,html{background-color:#f0f2f5;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;height:100%;margin:0;overflow:hidden;padding:0}.app-container{display:flex;flex-direction:column;height:100vh;overflow:hidden;width:100vw}.top-bar-container{align-items:flex-end;background-color:#f0f2f5;border-bottom:1px solid #dcdcdc;display:flex;flex-shrink:0;gap:20px;justify-content:space-between;padding:10px 24px 0;position:relative}.back-to-site-btn{background-color:#fff;border:1px solid #ccc;border-radius:20px;box-shadow:0 1px 3px #0000001a;color:#555;font-size:13px;font-weight:600;left:50%;padding:6px 16px;position:absolute;text-decoration:none;top:15px;transform:translateX(-50%);transition:all .2s;z-index:10}.back-to-site-btn:hover{background-color:#f8f9fa;border-color:#0f604d;box-shadow:0 2px 5px #00000026;color:#0f604d}.main-content-wrapper{display:flex;flex-direction:row;flex-grow:1;min-height:0}.configurator-side-panel{background-color:#fff;border-right:1px solid #dcdcdc;box-shadow:2px 0 10px #0000000d;display:flex;flex-direction:column;flex-shrink:0;height:100%;width:400px}.main-content-area{display:flex;flex-direction:column;flex-grow:1;min-width:0}.scene-container{background-color:#fff;flex-grow:1;min-height:0;position:relative}.section-info-popup{background:#fffffff7;border:1px solid #ccc;border-radius:8px;bottom:12px;box-shadow:0 4px 16px #0000002e;font-size:13px;left:12px;max-width:300px;min-width:220px;pointer-events:auto;position:absolute;z-index:20}.section-info-header{align-items:center;background:#3c3c3c;border-radius:8px 8px 0 0;color:#fff;display:flex;font-size:14px;font-weight:600;justify-content:space-between;padding:8px 12px}.section-info-header button{background:none;border:none;color:#fff;cursor:pointer;font-size:18px;line-height:1;padding:0 2px}.section-info-body{padding:10px 12px}.section-info-body div{margin-bottom:3px}.section-info-body hr{border:none;border-top:1px solid #e0e0e0;margin:6px 0}.loading-overlay{align-items:center;background-color:#fffc;color:#333;display:flex;font-size:24px;font-weight:700;height:100%;justify-content:center;left:0;position:absolute;top:0;width:100%;z-index:9999}.panel-tabs{background-color:#f7f8fa;border-bottom:1px solid #dcdcdc;display:flex;flex-shrink:0}.panel-tabs button{background:#0000;border:none;border-bottom:3px solid #0000;color:#555;cursor:pointer;flex:1 1;font-size:13px;font-weight:600;padding:14px 10px;transition:all .2s ease-in-out;white-space:nowrap}.panel-tabs button:hover{background-color:#e9ebee}.panel-tabs button.active{background-color:#fff;border-bottom-color:#0f604d;color:#0f604d}.pallvikt-confirm-overlay{align-items:center;background:#00000059;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.pallvikt-confirm-dialog{background:#fff;border-radius:10px;box-shadow:0 8px 24px #0003;max-width:360px;padding:24px 28px;text-align:center}.pallvikt-confirm-dialog p{color:#333;font-size:15px;line-height:1.5;margin:0 0 18px}.pallvikt-confirm-buttons{display:flex;gap:10px;justify-content:center}.pallvikt-confirm-buttons button{border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:600;padding:10px 24px;transition:background .2s}.pallvikt-confirm-buttons .confirm-yes{background:#0f604d;color:#fff}.pallvikt-confirm-buttons .confirm-yes:hover{background:#0b4537}.pallvikt-confirm-buttons .confirm-no{background:#f0f0f0;border:1px solid #ccc;color:#333}.pallvikt-confirm-buttons .confirm-no:hover{background:#e0e0e0}.panel-content{flex-grow:1;overflow-y:auto;padding:24px}.panel-content .tab-pane{display:flex;flex-direction:column;gap:20px}.project-header-container{align-self:flex-start;display:flex;flex-direction:column;flex-shrink:0;gap:4px;margin-right:20px;margin-top:-2px}.project-header-container label{color:#333;font-size:13px;font-weight:600}.project-header-container input{border:1px solid #ccc;border-radius:6px;font-size:14px;min-width:220px;padding:8px 12px}.config-tabs-container{flex-grow:1;gap:8px}.config-tabs-container,.tabs{align-items:center;display:flex;min-width:0}.tabs{flex-shrink:1;gap:4px;overflow-x:auto;padding-bottom:5px;white-space:nowrap}.tabs::-webkit-scrollbar{height:4px}.tabs::-webkit-scrollbar-thumb{background:#ccc;border-radius:2px}.tabs::-webkit-scrollbar-thumb:hover{background:#aaa}.tab{align-items:center;background-color:#fff;border:1px solid #dcdcdc;border-bottom:none;border-radius:6px 6px 0 0;color:#555;cursor:pointer;display:flex;gap:8px;padding:10px 15px;white-space:nowrap}.tab.active{background-color:#0f604d;border-color:#0b4537 #0b4537 #0f604d;color:#fff;font-weight:600;margin-bottom:-1px;z-index:2}.tab-actions{display:flex;gap:4px}.tab-action-button{background:none;border:none;color:#aaa;cursor:pointer;padding:2px}.tab-action-button:hover{color:#333}.tab.tab-dragging{opacity:.4}.tab.tab-drop-target{box-shadow:-3px 0 0 0 #0f604d}.action-btn,.add-tab-btn,.reset-all-btn{border-radius:6px;cursor:pointer;flex-shrink:0;font-weight:600;padding:8px 15px;transition:all .2s ease-in-out;white-space:nowrap}.add-tab-btn{background:none;border:1px dashed #a0a0a0;color:#606770}.add-tab-btn:hover{background:#e4e6eb;border-style:solid}.reset-all-btn{background:none;border:1px solid #0000;color:#c23b22}.reset-all-btn:hover{background:#fff0f0;border-color:#f5c5c5}.action-btn{background:#fff;border:1px solid #ccc;color:#333}.action-btn:hover{background:#f7f7f7;border-color:#bbb}.main-actions{flex-shrink:0}.quote-cart-wrapper{background-color:#fff;border:1px solid #e0e0e0;border-radius:8px;box-shadow:0 4px 12px #00000026;flex-shrink:0;max-height:calc(100vh - 140px);overflow-y:auto;position:absolute;right:24px;top:60px;width:280px;z-index:200}.quote-cart-header{align-items:center;cursor:pointer;display:flex;justify-content:space-between;padding:10px 16px}.quote-cart-title{color:#0f604d;font-size:16px;font-weight:600;margin:0}.quote-cart-toggle-icon{color:#555;font-size:12px}.quote-cart-wrapper.open .quote-cart-header{border-bottom:1px solid #eee}.quote-cart-container{padding:16px}.quote-cart-container,.quote-cart-list{display:flex;flex-direction:column;gap:16px}.quote-cart-item{align-items:center;display:flex;justify-content:space-between}.item-name{font-weight:500}.quantity-control{align-items:center;display:flex;gap:8px}.quantity-btn{align-items:center;background-color:#f7f7f7;border:1px solid #ccc;border-radius:50%;color:#333;cursor:pointer;display:flex;font-size:18px;font-weight:700;height:28px;justify-content:center;line-height:1;width:28px}.quantity-btn:hover{background-color:#e0e0e0}.quantity-btn:disabled{cursor:not-allowed;opacity:.5}.quantity-display{font-size:16px;font-weight:600;min-width:20px;text-align:center}.item-unit{color:#555;font-size:14px}.pdf-options{align-items:center;border-top:1px solid #eee;display:flex;gap:8px;padding:8px 0}.pdf-options label{cursor:pointer;font-size:14px}.pdf-button,.pdf-options input{cursor:pointer}.pdf-button{background:#0f604d;border:none;border-radius:6px;color:#fff;font-size:15px;font-weight:600;padding:12px 24px;transition:background-color .2s;width:100%}.pdf-button:hover{background-color:#0b4537}.fieldset-group{border:1px solid #e0e0e0;border-radius:8px;display:flex;flex-direction:column;gap:16px;margin:0;padding:16px}.fieldset-group legend{color:#333;font-size:13px;font-weight:600;margin-left:8px;padding:0 8px}.collapsible-legend{cursor:pointer;display:flex;justify-content:space-between;width:100%}.collapsible-legend span{font-size:12px}.config-group{display:flex;flex-direction:column;gap:6px}.config-group label{color:#444;font-size:12px;font-weight:500}.config-group select{border:1px solid #ccc;border-radius:6px;font-size:13px;padding:8px 12px}.config-group input[type=range]{margin-top:4px;width:100%}.range-label{display:flex;justify-content:space-between;width:100%}.toggle-group{display:flex}.toggle-group button{background-color:#f7f7f7;border:1px solid #ccc;cursor:pointer;flex:1 1;font-size:12px;min-width:60px;padding:6px 10px;transition:background-color .2s,color .2s}.toggle-group button:not(:last-child){border-right:none}.toggle-group button:first-of-type{border-radius:6px 0 0 6px}.toggle-group button:last-of-type{border-radius:0 6px 6px 0}.toggle-group .active{background-color:#0f604d;border-color:#0f604d;color:#fff}.accessories-wrapper{display:flex;flex-direction:column;gap:16px}.accessory-row,.accessory-row-complex{align-items:flex-start;display:flex;flex-direction:column;gap:8px}.accessory-row-complex>.level-selector,.accessory-row-complex>.multi-toggle-group{width:100%}.accessory-row>.toggle-group{width:auto}.accessory-row-complex>label,.accessory-row>label{color:#444;font-size:12px;font-weight:500}.multi-toggle-group{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.accessory-divider{background-color:#f0f0f0;border:none;height:1px;margin:4px 0}.level-selector{display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-start}.level-checkbox input{display:none}.level-checkbox span{background-color:#f7f7f7;border:1px solid #ccc;border-radius:12px;color:#555;cursor:pointer;display:inline-block;font-size:12px;padding:4px 10px;transition:all .2s ease-in-out}.level-checkbox input:checked+span{background-color:#0f604d;border-color:#0b4537;color:#fff;font-weight:600}.level-checkbox:hover span{border-color:#999}.level-checkbox.disabled span{background-color:#e9e9e9;cursor:not-allowed;opacity:.5}.summary-panel ul{font-size:12px;list-style:none;margin:0;padding:0}.summary-panel li{color:#555;display:flex;justify-content:space-between;margin-bottom:4px}.summary-panel strong{color:#111}.summary-panel .summary-price{border-top:1px solid #eee;font-size:13px;margin-top:8px;padding-top:8px}.summary-panel .summary-price strong{color:#0f604d}.custom-heights-group,.mixed-section-builder{display:flex;flex-direction:column;gap:8px}.config-row-small,.section-list-item{align-items:center;display:flex;justify-content:space-between}.input-with-unit{align-items:center;display:flex}.input-with-unit input{border:1px solid #ccc;border-radius:4px;padding:6px;text-align:right;width:70px}.input-with-unit span{color:#555;font-size:13px;margin-left:8px}.height-warning{background-color:#fff0f0;border:1px solid #f5c5c5;border-radius:4px;color:#c23b22;font-size:12px;padding:8px}.add-section-controls{display:flex;gap:8px}.add-section-controls select{flex-grow:1}.remove-section-btn{border:none;font-size:16px}.drawing-2d-container{box-sizing:border-box;padding:10px}.drawing-2d-container,.drawing-2d-svg{height:100%;width:100%}.drawing-2d-svg .view-title{font-family:sans-serif;font-size:.8px;font-weight:700}.drawing-2d-svg .gavel-2d{fill:#adb5bd;stroke:#000;stroke-width:.02}.drawing-2d-svg .beam-2d{fill:#f7b731;stroke:#000;stroke-width:.02}.drawing-2d-svg .gavelskydd-2d,.drawing-2d-svg .stolpskydd-2d{fill:#ff0;stroke:#000;stroke-width:.02}.drawing-2d-svg .pallstopp-2d{stroke:#ff0;stroke-width:.05}.drawing-2d-svg .utdragsenhet-2d{fill:red;stroke:#000;stroke-width:.02}.drawing-2d-svg .pallet-2d-box{fill:#d4a76a;stroke:#8b6914;stroke-width:.015;opacity:.7}.drawing-2d-svg .pallet-2d-base{fill:#8b6914;stroke:#5a4510;stroke-width:.015;opacity:.75}.drawing-2d-svg .dimension-line-stroke,.drawing-2d-svg .dimension-line-tick{stroke:#343a40;stroke-width:.01}.drawing-2d-svg .dimension-text{fill:#343a40;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:.25px}.drawing-2d-svg .dimension-text.dimension-text-shelf-right{font-size:.2px}.drawing-2d-svg .top-view-gavel{fill:#d3d3d3;stroke:#555;stroke-width:.01}.drawing-2d-svg .top-view-beam{fill:#ff8c00;stroke:#8b4513;stroke-width:.01}.layout-tab-wrapper{border-left:1px solid #dcdcdc;margin-left:16px;padding-left:12px}.tab.layout-tab{background-color:#e8f4ea}.tab.layout-tab:hover{background-color:#d1e7d4}.tab.layout-tab.active{background-color:#0f604d;border-color:#0b4537;color:#fff}.layout-view-container{background-color:#e9ebee;flex-direction:row}.layout-toolbar{background-color:#fff;border-right:1px solid #dcdcdc;display:flex;flex-direction:column;flex-shrink:0;gap:16px;padding:16px;width:240px}.layout-toolbar h3{border-bottom:1px solid #eee;font-size:14px;margin:0 0 8px;padding-bottom:8px}.toolbar-items{grid-gap:10px;display:grid;gap:10px;grid-template-columns:1fr 1fr}.toolbar-item{background-color:#f7f8fa;border:1px solid #ccc;border-radius:6px;cursor:grab;padding:8px;text-align:center;transition:background-color .2s}.toolbar-item:hover{background-color:#e8f4ea;border-color:#0f604d}.toolbar-item:active{background-color:#d1e7d4;cursor:grabbing}.toolbar-item-icon{color:#333;font-size:18px;font-weight:700}.toolbar-item-label{color:#555;font-size:11px;margin-top:4px}.rack-drag-list{display:flex;flex-direction:column;gap:6px}.rack-drag-item{align-items:center;background-color:#f7f8fa;border:1px solid #ccc;border-radius:6px;cursor:grab;display:flex;gap:8px;padding:8px 10px;transition:background-color .2s,border-color .2s}.rack-drag-item:hover{background-color:#e8f4ea;border-color:#0f604d}.rack-drag-item:active{background-color:#d1e7d4;cursor:grabbing}.rack-drag-grip{color:#999;flex-shrink:0;font-size:14px}.rack-drag-info{flex:1 1;min-width:0}.rack-drag-name{color:#333;font-size:13px;font-weight:600}.rack-drag-details{color:#777;font-size:11px;margin-top:2px}.layout-canvas-container{flex-grow:1;overflow:hidden;position:relative}.layout-canvas-svg{height:100%;width:100%}.layout-canvas-svg.is-dragging{cursor:grabbing}.layout-sidebar{background-color:#fff;border-left:1px solid #dcdcdc;display:flex;flex-direction:column;flex-shrink:0;min-height:0;overflow-y:auto;padding:16px;width:280px}.layout-sidebar h3{background:#fff;border-bottom:1px solid #eee;font-size:14px;margin:-16px 0 16px;padding-bottom:8px;padding-top:16px;position:-webkit-sticky;position:sticky;top:-16px;z-index:1}.sidebar-content{display:flex;flex-direction:column;gap:12px}.sidebar-content p{font-size:13px;margin:0}.sidebar-content .no-selection{color:#777;font-style:italic}.configure-row-btn{background:#0f604d;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:12px;transition:background-color .2s;width:100%}.configure-row-btn:hover{background-color:#0b4537}.linked-info{background-color:#e8f4ea;border:1px solid #d1e7d4;border-radius:4px;font-size:12px;padding:8px}.action-row-btn{background:#f7f8fa;border:1px solid #dcdcdc;border-radius:6px;color:#333;cursor:pointer;font-size:13px;font-weight:600;padding:10px;transition:all .2s;width:100%}.action-row-btn:hover{background-color:#e9ebee;border-color:#ccc}.remove-section-btn{background:none;border:1px solid #dcdcdc;border-radius:6px;color:#c23b22;cursor:pointer;font-size:13px;font-weight:600;padding:10px;transition:all .2s;width:100%}.remove-section-btn:hover{background:#fff0f0;border-color:#f5c5c5}.sidebar-content .config-group{margin-bottom:8px;margin-top:8px}.row-actions-group{display:flex;gap:8px;width:100%}.row-actions-group>.action-row-btn{flex:1 1;margin-top:0}.copy-dialog{background:#f7f8fa;border:1px solid #dcdcdc;border-radius:6px;display:flex;flex-direction:column;gap:6px;margin-top:8px;padding:10px}.copy-dialog label{color:#555;font-size:12px;font-weight:600}.copy-direction-group{display:flex;gap:4px}.copy-direction-group button{background:#fff;border:1px solid #ccc;border-radius:4px;cursor:pointer;flex:1 1;font-size:16px;padding:6px}.copy-direction-group button.active{background:#0f604d;border-color:#0f604d;color:#fff}.copy-count-input{border:1px solid #ccc;border-radius:4px;box-sizing:border-box;font-size:13px;padding:6px 8px;width:100%}.layout-view-mode-toggle{display:flex;gap:4px;margin:10px 0;padding:0 5px}.layout-view-mode-toggle.canvas-overlay{background-color:#ffffffe6;border-radius:8px;box-shadow:0 2px 8px #0000001a;left:15px;margin:0;padding:5px;position:absolute;top:15px;z-index:100}.layout-view-mode-toggle button{background:#fff;border:1px solid #ccc;border-radius:6px;cursor:pointer;flex:1 1;font-size:13px;font-weight:600;padding:8px 12px;transition:all .2s}.layout-view-mode-toggle button.active{background:#0f604d;border-color:#0f604d;color:#fff}.layout-view-mode-toggle button:not(.active):hover{background:#f0f0f0}.layout-toolbar-tabs{border-bottom:1px solid #dcdcdc;display:flex;gap:0;margin:-16px -16px 12px}.layout-toolbar-tabs button{background:#f7f8fa;border:none;border-bottom:3px solid #0000;color:#555;cursor:pointer;flex:1 1;font-size:13px;font-weight:600;padding:12px 8px;transition:all .2s}.layout-toolbar-tabs button.active{background:#0f604d;border-bottom-color:#0b4537;color:#fff}.layout-toolbar-tabs button:not(.active):hover{background:#e8f4ea}.toolbar-item.active{background-color:#d1e7d4;border-color:#0f604d;font-weight:700}.toolbar-divider{background-color:#eee;height:1px;margin:16px 0}.pillar-size-inputs{align-items:center;background-color:#f7f8fa;border-radius:4px;display:flex;gap:4px;margin-top:-8px;padding:8px}.pillar-size-inputs input{border:1px solid #ccc;border-radius:4px;padding:4px;text-align:center;width:50px}.pillar-size-inputs span{color:#555;font-size:12px}.layout-view-container{display:flex;height:100%;overflow:hidden;width:100%}.layout-toolbar{box-sizing:border-box;height:100%;overflow-y:auto;padding-bottom:30px}.config-name-text{fill:#333;stroke-width:.1px;stroke-linejoin:round;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:.8px}.main-content-area{position:relative}.view-mode-toggle{background-color:#ffffffe6;border-radius:8px;box-shadow:0 2px 8px #0000001a;display:flex;gap:5px;left:15px;padding:5px;position:absolute;top:15px;z-index:100}.view-mode-toggle button{background-color:#fff;border:1px solid #ccc;border-radius:5px;cursor:pointer;font-size:14px;font-weight:500;padding:8px 16px;transition:background-color .2s,color .2s}.view-mode-toggle button:hover{background-color:#f0f0f0}.view-mode-toggle button.active{background-color:#0f604d;border-color:#0f604d;color:#fff}.accessory-label-text{fill:#333;font-family:sans-serif;font-size:.2px;font-weight:500}:root{--ok-green:#295b52;--ok-green-hover:#1e423a;--ok-green-light:#f0f7f5;--ok-green-border:#d4e5e0;--ok-green-bg-subtle:#e8f5f0;--ok-dark-grey:#333;--ok-medium-grey:#6c757d;--ok-light-grey:#f8f9fa;--ok-border-grey:#dee2e6;--ok-page-bg:#f4f4f4;--ok-red:#c0302e;--font-heading:"Montserrat",system-ui,sans-serif;--font-body:"Lato",system-ui,sans-serif}.pallcon-mobile{background-color:#f4f4f4;background-color:var(--ok-page-bg);color:#333;color:var(--ok-dark-grey);display:flex;flex-direction:column;font-family:Lato,system-ui,sans-serif;font-family:var(--font-body);height:100vh;height:100dvh;overflow:hidden}.pallcon-mobile .mobile-header{align-items:center;background-color:#fff;border-bottom:1px solid #dee2e6;border-bottom:1px solid var(--ok-border-grey);display:flex;flex-shrink:0;justify-content:space-between;padding:10px 14px}.pallcon-mobile .mobile-header .logo-link{align-items:center;display:inline-flex;flex-shrink:0;text-decoration:none}.pallcon-mobile .mobile-header .logo{height:56px;max-width:200px;object-fit:contain;transition:transform .15s}.pallcon-mobile .mobile-header .logo-link:hover .logo{transform:scale(1.04)}.pallcon-mobile .mobile-header .tenant-badge{align-items:center;border-radius:8px;display:inline-flex;justify-content:center;margin-left:auto;margin-right:12px;padding:6px 14px;text-decoration:none;transition:transform .15s}.pallcon-mobile .mobile-header .tenant-badge:hover{transform:scale(1.04)}.pallcon-mobile .mobile-header .tenant-logo{height:56px;max-width:220px;object-fit:contain}.pallcon-mobile .mobile-header .tenant-name{color:#fff;font-family:var(--font-display);font-size:16px;font-weight:700;letter-spacing:.5px;white-space:nowrap}.pallcon-mobile .mobile-header{position:relative}.pallcon-mobile .mobile-header .program-logo{height:60px;left:50%;max-width:60%;object-fit:contain;pointer-events:none;position:absolute;top:50%;transform:translate(-50%,-50%);-webkit-user-select:none;user-select:none}@media (max-width:600px){.pallcon-mobile .mobile-header .program-logo{height:40px;max-width:50%}}.pallcon-mobile .mobile-header .login-btn{background:#fff;border:1px solid #dee2e6;border:1px solid var(--ok-border-grey);border-radius:6px;color:#333;color:var(--ok-dark-grey);cursor:pointer;font-family:Lato,system-ui,sans-serif;font-family:var(--font-body);font-size:13px;padding:6px 12px}.pallcon-mobile .mobile-canvas{background:#fff;border-bottom:2px solid #295b52;border-bottom:2px solid var(--ok-green);flex:0 0 auto;height:45dvh;max-height:400px;min-height:260px;overflow:hidden;position:relative;width:100%}.pallcon-mobile .panel-scroll{-webkit-overflow-scrolling:touch;flex:1 1 auto;overflow-y:auto;padding-bottom:100px}.pallcon-mobile .mobile-canvas canvas{display:block;height:100%!important;width:100%!important}.pallcon-mobile .view-toggle{border:1px solid #dee2e6;border:1px solid var(--ok-border-grey);border-radius:6px;box-shadow:0 2px 8px #0000002e;display:flex;left:6px;overflow:hidden;position:absolute;top:6px;z-index:101}.pallcon-mobile .view-toggle button{background:#fff;border:none;color:#333;color:var(--ok-dark-grey);cursor:pointer;font-family:Lato,system-ui,sans-serif;font-family:var(--font-body);font-size:.7rem;font-weight:600;padding:4px 10px}.pallcon-mobile .view-toggle button:not(:last-child){border-right:1px solid #dee2e6;border-right:1px solid var(--ok-border-grey)}.pallcon-mobile .view-toggle button.active{background:#295b52;background:var(--ok-green);color:#fff}.pallcon-mobile .pallets-toggle{border:1px solid #dee2e6;border:1px solid var(--ok-border-grey);border-radius:6px;box-shadow:0 2px 8px #0000002e;display:flex;left:6px;overflow:hidden;position:absolute;top:38px;z-index:101}.pallcon-mobile .pallets-toggle button{align-items:center;background:#fff;border:none;color:#333;color:var(--ok-dark-grey);cursor:pointer;display:flex;font-family:Lato,system-ui,sans-serif;font-family:var(--font-body);font-size:.7rem;font-weight:600;gap:4px;padding:4px 10px}.pallcon-mobile .pallets-toggle button.active{background:#295b52;background:var(--ok-green);color:#fff}.pallcon-mobile .fullscreen-btn{align-items:center;background:#ffffffeb;border:1px solid #dee2e6;border:1px solid var(--ok-border-grey);border-radius:6px;box-shadow:0 1px 4px #0000001f;color:#333;color:var(--ok-dark-grey);cursor:pointer;display:flex;height:32px;justify-content:center;padding:6px;position:absolute;right:6px;top:6px;width:32px;z-index:101}.pallcon-mobile .fullscreen-btn:hover{background:#fff}.pallcon-mobile .fullscreen-btn svg{height:16px;width:16px}.pallcon-mobile .mobile-canvas.canvas-fullscreen{background:#fff;border-bottom:none;height:100vh;height:100dvh;inset:0;max-height:none;position:fixed;width:100vw;z-index:9999}.pallcon-mobile .info-chip{background:#fff;border:1px solid #dee2e6;border:1px solid var(--ok-border-grey);border-radius:6px;bottom:6px;box-shadow:0 1px 4px #00000014;color:#333;color:var(--ok-dark-grey);font-size:12px;font-weight:600;padding:4px 10px;position:absolute;right:6px;z-index:101}.pallcon-mobile .public-panel{background:#fff}.pallcon-mobile .config-tabs{-webkit-overflow-scrolling:touch;background:#f8f9fa;background:var(--ok-light-grey);border-bottom:1px solid #dee2e6;border-bottom:1px solid var(--ok-border-grey);display:flex;gap:6px;overflow-x:auto;padding:8px 10px;position:-webkit-sticky;position:sticky;scrollbar-width:none;top:0;z-index:50}.pallcon-mobile .config-tabs::-webkit-scrollbar{display:none}.pallcon-mobile .config-tab{-webkit-tap-highlight-color:transparent;align-items:center;background:#fff;border:1.5px solid #dee2e6;border:1.5px solid var(--ok-border-grey);border-radius:20px;color:#6c757d;color:var(--ok-medium-grey);cursor:pointer;display:flex;flex:0 0 auto;font-family:Lato,system-ui,sans-serif;font-family:var(--font-body);font-size:13px;font-weight:600;gap:6px;padding:8px 14px;transition:all .15s;white-space:nowrap}.pallcon-mobile .config-tab.active{background:#295b52;background:var(--ok-green);border-color:#295b52;border-color:var(--ok-green);box-shadow:0 2px 6px #295b524d;color:#fff}.pallcon-mobile .config-tab .tab-del{align-items:center;background:#ffffff40;border:none;border-radius:50%;color:#fff;cursor:pointer;display:inline-flex;font-size:12px;height:18px;justify-content:center;line-height:1;margin-left:2px;padding:0;width:18px}.pallcon-mobile .config-tab:not(.active) .tab-del{display:none}.pallcon-mobile .config-tab-add{-webkit-tap-highlight-color:transparent;align-items:center;background:#fff;border:1.5px dashed #dee2e6;border:1.5px dashed var(--ok-border-grey);border-radius:20px;color:#295b52;color:var(--ok-green);cursor:pointer;display:flex;flex:0 0 auto;font-family:Lato,system-ui,sans-serif;font-family:var(--font-body);font-size:13px;font-weight:700;gap:6px;height:36px;justify-content:center;padding:0 14px;white-space:nowrap}.pallcon-mobile .config-tab-add .plus{font-size:18px;line-height:1}.pallcon-mobile .config-tab-add:active,.pallcon-mobile .config-tab-add:hover{background:#f0f7f5;background:var(--ok-green-light);border-color:#295b52;border-color:var(--ok-green)}.pallcon-mobile .public-panel-header{background:#295b52;background:var(--ok-green);border-bottom:1px solid #dee2e6;border-bottom:1px solid var(--ok-border-grey);padding:12px 16px}.pallcon-mobile .public-panel-title{color:#fff;font-family:Montserrat,system-ui,sans-serif;font-family:var(--font-heading);font-size:15px;font-weight:700;letter-spacing:.3px;margin:0}.pallcon-mobile .accordion-section{border-bottom:1px solid #dee2e6;border-bottom:1px solid var(--ok-border-grey);scroll-margin-top:45dvh}.pallcon-mobile .accordion-header{-webkit-tap-highlight-color:transparent;align-items:center;background:#fff;border:none;cursor:pointer;display:flex;font-family:Lato,system-ui,sans-serif;font-family:var(--font-body);font-size:14px;justify-content:space-between;padding:12px 14px;transition:background .15s;width:100%}.pallcon-mobile .accordion-header:active,.pallcon-mobile .accordion-header:hover,.pallcon-mobile .accordion-open .accordion-header{background:#f0f7f5;background:var(--ok-green-light)}.pallcon-mobile .accordion-open .accordion-header{border-bottom:1px solid #d4e5e0;border-bottom:1px solid var(--ok-green-border)}.pallcon-mobile .accordion-header-left{align-items:center;display:flex;gap:10px}.pallcon-mobile .accordion-step-badge{align-items:center;background:#dee2e6;background:var(--ok-border-grey);border-radius:50%;color:#6c757d;color:var(--ok-medium-grey);display:flex;flex-shrink:0;font-size:12px;font-weight:700;height:24px;justify-content:center;transition:background .2s,color .2s;width:24px}.pallcon-mobile .accordion-open .accordion-step-badge,.pallcon-mobile .badge-complete{background:#295b52;background:var(--ok-green);color:#fff}.pallcon-mobile .accordion-title{color:#333;color:var(--ok-dark-grey);font-weight:600}.pallcon-mobile .accordion-chevron{color:#6c757d;color:var(--ok-medium-grey);flex-shrink:0;height:16px;transition:transform .2s;width:16px}.pallcon-mobile .chevron-open{transform:rotate(180deg)}.pallcon-mobile .accordion-body{max-height:0;overflow:hidden;transition:max-height .3s ease}.pallcon-mobile .accordion-body-open{max-height:2000px;transition:max-height .4s ease}.pallcon-mobile .accordion-body-inner{padding:12px 16px 18px}.pallcon-mobile .section-label{color:#6c757d;color:var(--ok-medium-grey);font-family:Montserrat,system-ui,sans-serif;font-family:var(--font-heading);font-size:12px;font-weight:700;letter-spacing:.8px;margin:14px 0 8px;text-transform:uppercase}.pallcon-mobile .section-label:first-child{margin-top:0}.pallcon-mobile .option-grid-2{grid-gap:10px;display:grid;gap:10px;grid-template-columns:1fr 1fr}.pallcon-mobile .option-grid-3{grid-gap:8px;display:grid;gap:8px;grid-template-columns:1fr 1fr 1fr}.pallcon-mobile .option-card-lg{-webkit-tap-highlight-color:transparent;align-items:center;background:#fff;border:2px solid #dee2e6;border:2px solid var(--ok-border-grey);border-radius:8px;box-sizing:border-box;cursor:pointer;display:flex;flex-direction:column;font-family:Lato,system-ui,sans-serif;font-family:var(--font-body);gap:6px;min-height:76px;padding:14px 10px 12px;position:relative;text-align:center;transition:border-color .15s,background .15s,box-shadow .15s}.pallcon-mobile .option-card-lg:hover:not(:disabled){background:#f0f7f5;background:var(--ok-green-light);border-color:#295b52;border-color:var(--ok-green)}.pallcon-mobile .option-card-lg.selected{background:#e8f5f0;background:var(--ok-green-bg-subtle);border-color:#295b52;border-color:var(--ok-green);box-shadow:0 0 0 2px #295b522e}.pallcon-mobile .option-card-lg .card-icon{align-items:center;color:#6c757d;color:var(--ok-medium-grey);display:flex;height:38px;justify-content:center;margin-bottom:2px;width:38px}.pallcon-mobile .option-card-lg.selected .card-icon{color:#295b52;color:var(--ok-green)}.pallcon-mobile .option-card-lg .card-title{color:#333;color:var(--ok-dark-grey);font-size:13px;font-weight:700;line-height:1.2}.pallcon-mobile .option-card-lg .card-sub{color:#6c757d;color:var(--ok-medium-grey);font-size:11px;font-weight:500;line-height:1.2}.pallcon-mobile .option-card-lg.selected .card-title{color:#295b52;color:var(--ok-green)}.pallcon-mobile .option-card-lg.has-image{gap:4px;min-height:0;padding:10px 10px 12px}.pallcon-mobile .option-card-lg .card-image{align-items:center;display:flex;height:120px;justify-content:center;margin-bottom:4px;width:100%}.pallcon-mobile .option-card-lg .card-image img{max-height:100%;max-width:100%;object-fit:contain;pointer-events:none;-webkit-user-select:none;user-select:none}.pallcon-mobile .option-card-lg .check-mark{align-items:center;background:#295b52;background:var(--ok-green);border-radius:50%;color:#fff;display:none;height:18px;justify-content:center;position:absolute;right:6px;top:6px;width:18px}.pallcon-mobile .option-card-lg.selected .check-mark{display:flex}.pallcon-mobile .option-card-lg .check-mark svg{height:12px;width:12px}.pallcon-mobile .image-option-grid{grid-gap:8px;display:grid;gap:8px;grid-template-columns:1fr 1fr 1fr}.pallcon-mobile .image-option-card{-webkit-tap-highlight-color:transparent;align-items:center;background:#fff;border:2px solid #dee2e6;border:2px solid var(--ok-border-grey);border-radius:8px;cursor:pointer;display:flex;flex-direction:column;font-family:Lato,system-ui,sans-serif;font-family:var(--font-body);gap:6px;padding:10px 6px 8px;transition:border-color .15s,background .15s,box-shadow .15s}.pallcon-mobile .image-option-card:hover:not(.image-option-disabled){background:#f0f7f5;background:var(--ok-green-light);border-color:#295b52;border-color:var(--ok-green)}.pallcon-mobile .image-option-selected{background:#e8f5f0!important;background:var(--ok-green-bg-subtle)!important;border-color:#295b52!important;border-color:var(--ok-green)!important;border-width:3px!important;box-shadow:0 0 0 3px #295b522e;padding:9px 5px 7px}.pallcon-mobile .image-option-label{color:#333;color:var(--ok-dark-grey);font-size:12px;font-weight:600;line-height:1.3;text-align:center}.pallcon-mobile .image-option-sublabel{color:#6c757d;color:var(--ok-medium-grey);font-size:10px}.pallcon-mobile .segmented{background:#fff;border:1px solid #dee2e6;border:1px solid var(--ok-border-grey);border-radius:6px;display:flex;overflow:hidden}.pallcon-mobile .segmented button{-webkit-tap-highlight-color:transparent;background:#fff;border:none;color:#6c757d;color:var(--ok-medium-grey);cursor:pointer;flex:1 1 auto;font-family:Lato,system-ui,sans-serif;font-family:var(--font-body);font-size:14px;font-weight:600;padding:10px 12px;transition:background .15s,color .15s}.pallcon-mobile .segmented button:not(:last-child){border-right:1px solid #dee2e6;border-right:1px solid var(--ok-border-grey)}.pallcon-mobile .segmented button.active{background:#295b52;background:var(--ok-green);color:#fff}.pallcon-mobile .field{display:flex;flex-direction:column;gap:4px;margin-bottom:12px}.pallcon-mobile .field label{color:#6c757d;color:var(--ok-medium-grey);font-size:13px;font-weight:700}.pallcon-mobile .field input[type=number],.pallcon-mobile .field input[type=text],.pallcon-mobile .field select{background:#fff;border:1px solid #dee2e6;border:1px solid var(--ok-border-grey);border-radius:6px;box-sizing:border-box;color:#333;color:var(--ok-dark-grey);font-family:Lato,system-ui,sans-serif;font-family:var(--font-body);font-size:16px;padding:10px 12px;width:100%}.pallcon-mobile .field input:focus,.pallcon-mobile .field select:focus{border-color:#295b52;border-color:var(--ok-green);box-shadow:0 0 0 3px #295b5226;outline:none}.pallcon-mobile .field-row{grid-gap:10px;display:grid;gap:10px;grid-template-columns:1fr 1fr}.pallcon-mobile .slider-row{align-items:center;display:flex;gap:12px;padding:4px 0}.pallcon-mobile .slider-row input[type=range]{-webkit-appearance:none;appearance:none;background:#dee2e6;background:var(--ok-border-grey);border-radius:4px;flex:1 1 auto;height:8px;margin:0;outline:none}.pallcon-mobile .slider-row input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background:#295b52;background:var(--ok-green);border:3px solid #fff;border-radius:50%;box-shadow:0 2px 6px #00000040;cursor:grab;height:26px;width:26px}.pallcon-mobile .slider-row input[type=range]::-moz-range-thumb{background:#295b52;background:var(--ok-green);border:3px solid #fff;border-radius:50%;box-shadow:0 2px 6px #00000040;cursor:grab;height:22px;width:22px}.pallcon-mobile .slider-row .slider-value{color:#295b52;color:var(--ok-green);font-family:Montserrat,system-ui,sans-serif;font-family:var(--font-heading);font-size:18px;font-weight:700;min-width:78px;text-align:right;white-space:nowrap}.pallcon-mobile .slider-row .slider-unit{color:#6c757d;color:var(--ok-medium-grey);font-size:13px;font-weight:600;margin-left:2px}.pallcon-mobile .stepper{align-items:stretch;background:#fff;border:1px solid #dee2e6;border:1px solid var(--ok-border-grey);border-radius:6px;display:flex;overflow:hidden}.pallcon-mobile .stepper button{-webkit-tap-highlight-color:transparent;background:#f8f9fa;background:var(--ok-light-grey);border:none;color:#333;color:var(--ok-dark-grey);cursor:pointer;font-size:18px;font-weight:700;width:44px}.pallcon-mobile .stepper button:active{background:#dee2e6;background:var(--ok-border-grey)}.pallcon-mobile .stepper input{-webkit-appearance:textfield;appearance:textfield;background:#fff;border:none;color:#333;color:var(--ok-dark-grey);flex:1 1 auto;font-family:Lato,system-ui,sans-serif;font-family:var(--font-body);font-size:16px;font-weight:600;min-width:0;text-align:center}.pallcon-mobile .stepper input::-webkit-inner-spin-button,.pallcon-mobile .stepper input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.pallcon-mobile .mixed-sections{display:flex;flex-direction:column;gap:8px}.pallcon-mobile .mixed-row{grid-gap:6px;align-items:center;display:grid;gap:6px;grid-template-columns:1fr 110px 38px}.pallcon-mobile .mixed-row select{background:#fff;border:1px solid #dee2e6;border:1px solid var(--ok-border-grey);border-radius:6px;color:#333;color:var(--ok-dark-grey);font-family:Lato,system-ui,sans-serif;font-family:var(--font-body);font-size:15px;font-weight:600;padding:10px;width:100%}.pallcon-mobile .mixed-row .stepper{width:100%}.pallcon-mobile .mixed-row .stepper button{width:34px}.pallcon-mobile .mixed-row .stepper input{font-size:14px}.pallcon-mobile .mixed-row .remove-row{align-items:center;background:#fff;border:1px solid #dee2e6;border:1px solid var(--ok-border-grey);border-radius:6px;color:#c0302e;color:var(--ok-red);cursor:pointer;display:flex;font-size:18px;height:38px;justify-content:center;line-height:1;width:38px}.pallcon-mobile .mixed-row .remove-row:disabled{cursor:not-allowed;opacity:.3}.pallcon-mobile .mixed-add-btn{background:#fff;border:1.5px dashed #dee2e6;border:1.5px dashed var(--ok-border-grey);border-radius:8px;color:#295b52;color:var(--ok-green);cursor:pointer;font-family:Lato,system-ui,sans-serif;font-family:var(--font-body);font-size:13px;font-weight:700;margin-top:6px;padding:10px;width:100%}.pallcon-mobile .mixed-add-btn:hover{background:#f0f7f5;background:var(--ok-green-light);border-color:#295b52;border-color:var(--ok-green)}.pallcon-mobile .level-height-row{align-items:center;border-bottom:1px solid #f8f9fa;border-bottom:1px solid var(--ok-light-grey);display:flex;gap:10px;padding:6px 0}.pallcon-mobile .level-height-row:last-child{border-bottom:none}.pallcon-mobile .level-height-row .lbl{color:#6c757d;color:var(--ok-medium-grey);flex:0 0 60px;font-size:13px;font-weight:600}.pallcon-mobile .level-height-row .slider-row{flex:1 1 auto;padding:0}.pallcon-mobile .accessory-list{display:flex;flex-direction:column;gap:8px}.pallcon-mobile .accessory-row{grid-gap:10px;align-items:stretch;display:grid;gap:10px;grid-template-columns:138px 1fr}.pallcon-mobile .accessory-row .option-card-lg{min-height:74px;padding:10px 6px 8px}.pallcon-mobile .accessory-row .option-card-lg .card-icon{height:30px;margin-bottom:0;width:30px}.pallcon-mobile .accessory-row .option-card-lg .card-image{height:56px;margin-bottom:2px}.pallcon-mobile .accessory-row .option-card-lg.has-image{min-height:0;padding:8px 6px}.pallcon-mobile .accessory-row .option-card-lg .card-title{font-size:12px}.pallcon-mobile .accessory-row .option-card-lg .card-sub{font-size:10px}.pallcon-mobile .accessory-row-detail{background:#f8f9fa;background:var(--ok-light-grey);border-left:3px solid #295b52;border-left:3px solid var(--ok-green);border-radius:8px;font-size:12px;padding:8px 10px}.pallcon-mobile .accessory-row-detail .sub-label{color:#6c757d;color:var(--ok-medium-grey);font-size:11px;font-weight:700;letter-spacing:.4px;margin-bottom:3px;margin-top:6px;text-transform:uppercase}.pallcon-mobile .accessory-row-detail .sub-label:first-child{margin-top:0}.pallcon-mobile .accessory-row-detail .segmented button{font-size:11px;padding:6px 8px}.pallcon-mobile .accessory-row-detail .level-pill{font-size:11px;min-width:32px;padding:5px 9px}.pallcon-mobile .accessory-row-detail.empty{border-left-color:#dee2e6;border-left-color:var(--ok-border-grey)}.pallcon-mobile .accessory-row-detail.empty,.pallcon-mobile .accessory-row-detail.hint{align-items:center;color:#6c757d;color:var(--ok-medium-grey);display:flex;font-style:italic;justify-content:center}.pallcon-mobile .accessory-row-detail.hint{background:#0000;border:1px dashed #dee2e6;border:1px dashed var(--ok-border-grey);font-size:11px;padding:6px;text-align:center}@media (max-width:440px){.pallcon-mobile .accessory-row{gap:6px;grid-template-columns:1fr}.pallcon-mobile .accessory-row .option-card-lg{min-height:60px}.pallcon-mobile .accessory-row-detail.hint{display:none}}.pallcon-mobile .level-pills{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.pallcon-mobile .level-pill{-webkit-tap-highlight-color:transparent;background:#fff;border:1.5px solid #dee2e6;border:1.5px solid var(--ok-border-grey);border-radius:20px;color:#6c757d;color:var(--ok-medium-grey);cursor:pointer;font-family:Lato,system-ui,sans-serif;font-family:var(--font-body);font-size:13px;font-weight:700;min-width:42px;padding:8px 12px;transition:all .15s}.pallcon-mobile .level-pill.active,.pallcon-mobile .level-pill:active,.pallcon-mobile .level-pill:hover{border-color:#295b52;border-color:var(--ok-green)}.pallcon-mobile .level-pill.active{background:#295b52;background:var(--ok-green);color:#fff}.pallcon-mobile .level-pill.all-pill{padding:8px 14px}.pallcon-mobile .level-pill.disabled{background:#f8f9fa;background:var(--ok-light-grey);border-style:dashed;cursor:not-allowed;opacity:.4}.pallcon-mobile .level-pill.disabled:hover{border-color:#dee2e6;border-color:var(--ok-border-grey)}.pallcon-mobile .accessory-details{background:#f8f9fa;background:var(--ok-light-grey);border-left:3px solid #295b52;border-left:3px solid var(--ok-green);border-radius:8px;margin-left:0;margin-top:10px;padding:10px 12px}.pallcon-mobile .accessory-details .sub-label{color:#6c757d;color:var(--ok-medium-grey);font-size:12px;font-weight:700;letter-spacing:.5px;margin-bottom:4px;text-transform:uppercase}.pallcon-mobile .accessory-details .sub-label:not(:first-child){margin-top:10px}.pallcon-mobile .toggle-row{align-items:center;border-bottom:1px solid #f8f9fa;border-bottom:1px solid var(--ok-light-grey);display:flex;justify-content:space-between;padding:10px 0}.pallcon-mobile .toggle-row:last-child{border-bottom:none}.pallcon-mobile .toggle-row .label{color:#333;color:var(--ok-dark-grey);font-size:14px;font-weight:500}.pallcon-mobile .toggle-row .yesno{border:1px solid #dee2e6;border:1px solid var(--ok-border-grey);border-radius:6px;display:flex;gap:0;overflow:hidden}.pallcon-mobile .toggle-row .yesno button{background:#fff;border:none;color:#6c757d;color:var(--ok-medium-grey);cursor:pointer;font-size:13px;font-weight:600;padding:6px 14px}.pallcon-mobile .toggle-row .yesno button:first-child{border-right:1px solid #dee2e6;border-right:1px solid var(--ok-border-grey)}.pallcon-mobile .toggle-row .yesno button.active{background:#295b52;background:var(--ok-green);color:#fff}.pallcon-mobile .summary-row{border-bottom:1px dashed #dee2e6;border-bottom:1px dashed var(--ok-border-grey);display:flex;font-size:14px;justify-content:space-between;padding:8px 0}.pallcon-mobile .summary-row:last-child{border-bottom:none}.pallcon-mobile .summary-row .key{color:#6c757d;color:var(--ok-medium-grey);font-weight:500}.pallcon-mobile .summary-row .val{color:#333;color:var(--ok-dark-grey);font-weight:700}.pallcon-mobile .public-build-actions{background:#fff;border-top:2px solid #295b52;border-top:2px solid var(--ok-green);bottom:0;box-shadow:0 -2px 12px #00000024;display:flex;gap:8px;left:0;padding:10px 14px calc(10px + env(safe-area-inset-bottom));position:fixed;right:0;z-index:200}.pallcon-mobile .build-main-btn{background:#295b52;background:var(--ok-green);border:none;border-radius:6px;color:#fff;cursor:pointer;flex:1 1 auto;font-family:Montserrat,system-ui,sans-serif;font-family:var(--font-heading);font-size:15px;font-weight:700;padding:12px 20px;transition:background .2s}.pallcon-mobile .build-main-btn:active,.pallcon-mobile .build-main-btn:hover{background:#1e423a;background:var(--ok-green-hover)}.pallcon-mobile .build-reset-btn{background:#fff;border:1px solid #dee2e6;border:1px solid var(--ok-border-grey);border-radius:6px;color:#6c757d;color:var(--ok-medium-grey);cursor:pointer;flex:0 0 auto;font-family:Montserrat,system-ui,sans-serif;font-family:var(--font-heading);font-size:14px;font-weight:600;padding:12px 16px}.quote-modal-overlay{align-items:center;background:#00000080;display:flex;inset:0;justify-content:center;padding:16px;position:fixed;z-index:10000}.quote-modal{background:#fff;border-radius:12px;box-shadow:0 8px 40px #00000040;color:#333;color:var(--ok-dark-grey);font-family:Lato,system-ui,sans-serif;font-family:var(--font-body);max-height:90vh;max-height:90dvh;max-width:560px;overflow-y:auto;padding:24px;position:relative;width:100%}.quote-modal-close{background:none;border:none;border-radius:4px;color:#666;cursor:pointer;font-size:22px;line-height:1;padding:4px 8px;position:absolute;right:14px;top:12px}.quote-modal-close:hover{background:#f0f0f0;color:#333}.quote-modal h2{color:#333;color:var(--ok-dark-grey);font-family:Montserrat,system-ui,sans-serif;font-family:var(--font-heading);font-size:22px;font-weight:700;margin:0 0 6px}.quote-modal .quote-modal-intro{color:#6c757d;color:var(--ok-medium-grey);font-size:14px;margin:0 0 18px}.quote-modal .form-label{color:#444;display:block;font-size:14px;font-weight:700;margin-bottom:4px}.quote-modal .form-label .req{color:#c0302e;color:var(--ok-red);margin-left:2px}.quote-modal .form-label .opt{color:#6c757d;color:var(--ok-medium-grey);font-size:12px;font-weight:500;margin-left:4px}.quote-modal .form-input,.quote-modal .form-textarea{background:#fff;border:1px solid #ccc;border-radius:6px;box-sizing:border-box;color:#333;color:var(--ok-dark-grey);font-family:inherit;font-size:16px;font-weight:400;padding:10px 12px;width:100%}.quote-modal .form-input:focus,.quote-modal .form-textarea:focus{border-color:#295b52;border-color:var(--ok-green);box-shadow:0 0 0 2px #295b5233;outline:none}.quote-modal .form-textarea{min-height:100px;resize:vertical}.quote-modal .form-row{margin-bottom:12px}.quote-modal .form-grid-2{grid-gap:0 12px;display:grid;gap:0 12px;grid-template-columns:1fr 1fr}.quote-modal .form-section-title{color:#333;color:var(--ok-dark-grey);font-family:Montserrat,system-ui,sans-serif;font-family:var(--font-heading);font-size:14px;font-weight:700;margin-bottom:10px;margin-top:14px}.quote-modal .quote-rack-list{display:flex;flex-direction:column;gap:8px;margin-bottom:8px}.quote-modal .quote-rack-row{align-items:center;background:#f4f4f4;background:var(--ok-page-bg);border:1px solid #dee2e6;border:1px solid var(--ok-border-grey);border-radius:8px;display:flex;gap:12px;justify-content:space-between;padding:8px 12px}.quote-modal .quote-rack-name{color:#333;color:var(--ok-dark-grey);flex:1 1 auto;font-family:Lato,system-ui,sans-serif;font-family:var(--font-body);font-size:14px;font-weight:600;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.quote-modal .quote-rack-row .stepper{align-items:center;background:#fff;border:1px solid #dee2e6;border:1px solid var(--ok-border-grey);border-radius:6px;display:flex;flex:0 0 auto;overflow:hidden}.quote-modal .quote-rack-row .stepper button{background:#fff;border:none;color:#333;color:var(--ok-dark-grey);cursor:pointer;font-size:16px;font-weight:700;height:32px;width:32px}.quote-modal .quote-rack-row .stepper button:active{background:#f8f9fa;background:var(--ok-light-grey)}.quote-modal .quote-rack-row .stepper input{-moz-appearance:textfield;border:none;border-left:1px solid #dee2e6;border-left:1px solid var(--ok-border-grey);border-right:1px solid #dee2e6;border-right:1px solid var(--ok-border-grey);color:#333;color:var(--ok-dark-grey);font-family:Lato,system-ui,sans-serif;font-family:var(--font-body);font-size:14px;font-weight:600;height:32px;text-align:center;width:44px}.quote-modal .quote-rack-row .stepper input::-webkit-inner-spin-button,.quote-modal .quote-rack-row .stepper input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.quote-modal .addr-postnr-ort{grid-gap:12px;display:grid;gap:12px;grid-template-columns:1fr 1.3fr;margin-top:10px}.quote-modal .montage-toggle{align-items:center;color:#333;color:var(--ok-dark-grey);cursor:pointer;display:flex;font-size:15px;font-weight:600;gap:10px;margin:16px 0 8px;-webkit-user-select:none;user-select:none}.quote-modal .montage-toggle input[type=checkbox]{-webkit-appearance:none;appearance:none;background:#fff;border:2px solid #dee2e6;border:2px solid var(--ok-border-grey);border-radius:4px;cursor:pointer;flex-shrink:0;height:22px;margin:0;position:relative;width:22px}.quote-modal .montage-toggle input[type=checkbox]:checked{background:#295b52;background:var(--ok-green);border-color:#295b52;border-color:var(--ok-green)}.quote-modal .montage-toggle input[type=checkbox]:checked:after{border:solid #fff;border-width:0 3px 3px 0;content:"";height:11px;left:5px;position:absolute;top:1px;transform:rotate(45deg);width:6px}.quote-modal .montage-panel{background:#f8f9fa;background:var(--ok-light-grey);border:1px solid #dee2e6;border:1px solid var(--ok-border-grey);border-radius:8px;margin-bottom:14px;padding:14px}.quote-modal .delivery-method{display:flex;gap:8px;margin-bottom:12px}.quote-modal .delivery-method-row{align-items:center;background:#fff;border:1.5px solid #dee2e6;border:1.5px solid var(--ok-border-grey);border-radius:8px;color:#333;color:var(--ok-dark-grey);cursor:pointer;display:flex;flex:1 1;font-family:Lato,system-ui,sans-serif;font-family:var(--font-body);font-size:14px;font-weight:600;gap:8px;padding:10px 12px;transition:border-color .15s,background .15s}.quote-modal .delivery-method-row.active{background:#e8f5f0;background:var(--ok-green-bg-subtle);border-color:#295b52;border-color:var(--ok-green);color:#295b52;color:var(--ok-green)}.quote-modal .delivery-method-row input[type=radio]{accent-color:#295b52;accent-color:var(--ok-green);margin:0}.quote-modal .delivery-method-row input[type=radio]:disabled+span,.quote-modal .delivery-method-row:has(input:disabled){cursor:not-allowed;opacity:.55}.quote-modal .montage-panel .panel-title{color:#333;color:var(--ok-dark-grey);font-size:13px;margin:0 0 10px}.quote-modal .montage-panel .panel-title,.quote-modal .submit-btn{font-family:Montserrat,system-ui,sans-serif;font-family:var(--font-heading);font-weight:700}.quote-modal .submit-btn{align-items:center;background:#295b52;background:var(--ok-green);border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:16px;gap:8px;justify-content:center;margin-top:10px;padding:14px;transition:background .2s;width:100%}.quote-modal .submit-btn:hover:not(:disabled){background:#1e423a;background:var(--ok-green-hover)}.quote-modal .submit-btn:disabled{cursor:not-allowed;opacity:.6}.quote-modal .submit-error{color:#c0302e;color:var(--ok-red);font-size:13px;margin-top:8px;text-align:center}@media (max-width:500px){.quote-modal{border-radius:10px;max-height:96vh;max-height:96dvh;padding:18px 16px}.quote-modal .form-grid-2{grid-template-columns:1fr}.quote-modal .addr-postnr-ort{grid-template-columns:1fr 1fr}}@media (max-width:480px){.pallcon-mobile .mobile-canvas{height:38dvh;max-height:320px;min-height:220px}.pallcon-mobile .image-option-grid{grid-template-columns:1fr 1fr}.pallcon-mobile .accordion-step-badge{font-size:11px;height:22px;width:22px}}@media (min-width:901px){.pallcon-mobile{display:grid;grid-template-areas:"header header" "panel  canvas";grid-template-columns:460px 1fr;grid-template-rows:auto 1fr}.pallcon-mobile .mobile-header{grid-area:header}.pallcon-mobile .panel-scroll{border-right:1px solid #dee2e6;border-right:1px solid var(--ok-border-grey);grid-area:panel;padding-bottom:96px}.pallcon-mobile .mobile-canvas{border-bottom:none;border-left:2px solid #295b52;border-left:2px solid var(--ok-green);grid-area:canvas;height:auto;max-height:none;min-height:0}.pallcon-mobile .public-build-actions{border-top:2px solid #295b52;border-top:2px solid var(--ok-green);right:auto;width:460px}.pallcon-mobile .config-tabs{flex-wrap:wrap;overflow-x:visible}.pallcon-mobile .view-toggle{left:12px;top:12px}.pallcon-mobile .pallets-toggle button,.pallcon-mobile .view-toggle button{font-size:.95rem;padding:8px 16px}.pallcon-mobile .pallets-toggle{left:12px;top:56px}.pallcon-mobile .fullscreen-btn{height:44px;padding:8px;right:12px;top:12px;width:44px}.pallcon-mobile .fullscreen-btn svg{height:22px;width:22px}.pallcon-mobile .info-chip{bottom:12px;font-size:14px;padding:8px 14px;right:12px}}.prompt-modal-overlay{align-items:center;background-color:#0009;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:10000}.prompt-modal{background-color:#fff;border:1px solid #ddd;border-radius:8px;box-shadow:0 4px 15px #0000004d;max-width:90%;padding:20px;width:400px}.prompt-modal h2{color:#333;font-size:1.25rem;margin-bottom:15px;margin-top:0}.prompt-modal form{display:flex;flex-direction:column}.prompt-modal label{color:#555;font-weight:500;margin-bottom:8px}.prompt-modal input{border:1px solid #ccc;border-radius:4px;font-size:1rem;margin-bottom:20px;padding:10px}.prompt-modal input:focus{border-color:#2196f3;box-shadow:0 0 0 2px #2196f333;outline:none}.prompt-modal-buttons{display:flex;gap:10px;justify-content:flex-end}.prompt-modal-buttons button{border:none;border-radius:4px;cursor:pointer;font-size:.9rem;font-weight:500;padding:10px 20px;transition:background-color .2s}.prompt-modal-buttons button[type=submit]{background-color:#2196f3;color:#fff}.prompt-modal-buttons button[type=submit]:hover{background-color:#0d8aee}.prompt-modal-buttons button[type=button]{background-color:#f0f0f0;color:#333}.prompt-modal-buttons button[type=button]:hover{background-color:#e0e0e0}.layout-canvas-svg.draw-mode-rectangle,.layout-canvas-svg.draw-mode-trim,.layout-canvas-svg.draw-mode-wall{cursor:crosshair}.layout-canvas-svg.draw-mode-pillar{cursor:copy}.layout-canvas-svg.draw-mode-dimension{cursor:cell}.layout-canvas-svg.draw-mode-opening{cursor:crosshair}.layout-canvas-svg.draw-mode-pan{cursor:grab}.layout-canvas-svg.draw-mode-pan.is-panning{cursor:grabbing}.temp-drawing{pointer-events:none}.layout-wall{stroke:#333;stroke-width:1.5;vector-effect:non-scaling-stroke;stroke-linecap:butt;stroke-linejoin:miter;cursor:pointer;transition:stroke .2s ease-in-out}.layout-wall.selected{stroke:#0d4a89;stroke-width:2.5;vector-effect:non-scaling-stroke}.layout-wall-temp{stroke:#0d4a89;stroke-width:1.5;vector-effect:non-scaling-stroke;stroke-dasharray:4 4;fill:none;stroke-linecap:butt;stroke-linejoin:miter}.layout-pillar{fill:#b4b4b44d;stroke:#555;stroke-width:1.5;vector-effect:non-scaling-stroke;cursor:pointer}.layout-pillar.selected{stroke:#0d4a89;stroke-width:2.5;vector-effect:non-scaling-stroke;fill:#b4b4b466}.dimension-group .dimension-line,.dimension-group .dimension-line-ext,.dimension-group .dimension-tick{stroke:#007bff;stroke-width:1;vector-effect:non-scaling-stroke}.dimension-group .dimension-tick{stroke:#007bff;fill:#007bff}.dimension-group .dimension-text{fill:#007bff;text-anchor:middle;dominant-baseline:middle;cursor:pointer;font-size:.4px;-webkit-user-select:none;user-select:none}.dimension-group .dimension-line-clickable{stroke:#0000;stroke-width:1;vector-effect:non-scaling-stroke;cursor:ns-resize}.dimension-group.selected .dimension-line,.dimension-group.selected .dimension-line-ext,.dimension-group.selected .dimension-tick{stroke:#ff4500;fill:#ff4500}.dimension-group.selected .dimension-text{fill:#ff4500}.snap-line{stroke:#f0f;stroke-dasharray:.2,.2}.snap-indicator,.snap-line{vector-effect:non-scaling-stroke}.snap-indicator{fill:#f0f;stroke:#fff;stroke-width:.03}.marquee-box{stroke-width:.03;pointer-events:none}.marquee-box.marquee-window{fill:#007bff1a;stroke:#007bff;stroke-dasharray:none}.marquee-box.marquee-crossing{fill:#00c8531a;stroke:#00c853;stroke-dasharray:.2,.2}.scale-line{stroke:#ff4500;stroke-linecap:round;vector-effect:non-scaling-stroke}.dimension-text-live{fill:#333;text-anchor:middle;dominant-baseline:middle;-webkit-user-select:none;user-select:none}.rack-row-group{cursor:grab}.rack-row-group:active{cursor:grabbing}.gavel-post-2d-top{fill:none;stroke:#8d8d8d;stroke-width:.02}.gavel-bracing-2d-top{fill:none;stroke:#90a4ae;stroke-width:.015}.beam-2d-top{fill:#ff9800;stroke:#f57c00;stroke-width:.01}.section-label-text{fill:#333;font-family:sans-serif;font-size:.3px;font-weight:700}.selection-outline{fill:none;stroke:#007bff;stroke-width:.1;stroke-dasharray:.2 .2;pointer-events:none}.rack-row-group.colliding .beam-2d-top,.rack-row-group.colliding .gavel-bracing-2d-top,.rack-row-group.colliding .gavel-post-2d-top{fill:#e63946;stroke:#a8202c}.rack-row-group.colliding .section-label-text{fill:#fff}.config-name-text{fill:#000;text-anchor:middle;stroke:#fff;stroke-width:.05px;stroke-linecap:butt;stroke-linejoin:miter;font-family:sans-serif;font-size:.4px;font-weight:700;paint-order:stroke}.layout-opening{cursor:pointer}.layout-opening line{stroke-width:1.5;stroke-dasharray:4 4;vector-effect:non-scaling-stroke;pointer-events:stroke}.layout-opening.selected line{stroke:#0d4a89;stroke-width:2.5}.layout-opening.selected text{fill:#0d4a89;font-weight:700}
/*# sourceMappingURL=main.a9f078f3.css.map*/