.product-order-form-container{position:relative}.open-form-btn{background:#fbd039;border:1px solid transparent;border-radius:6px;border-radius:6px 0 0 6px!important;box-shadow:0 5px 15px rgba(0,0,0,.35);color:#000;cursor:pointer;display:flex;flex-direction:column;font-size:16px;font-weight:700!important;letter-spacing:.5px;padding:30px 16px;position:fixed;right:0;text-transform:uppercase;top:48%;transform:translateY(-50%);transition:background-color .3s ease;z-index:111}#open-form-btn:focus,#open-form-btn:hover{background-color:#ec2a80!important;border-color:#ec2a80!important;border-radius:6px 0 0 6px!important;color:#fff!important;outline:none!important}#open-form-btn i{margin-bottom:23px}#open-form-btn span{transform:rotate(0deg);writing-mode:vertical-rl}.form-overlay{align-items:center;background:rgba(0,0,0,.7);box-sizing:border-box;display:none;height:100%;justify-content:center;left:0;padding:20px;position:fixed;top:0;width:100%;z-index:999999999999999}.form-modal{background:#fff;border-radius:12px;box-shadow:0 20px 60px rgba(0,0,0,.3);max-height:90vh;max-width:900px;overflow-y:auto;position:relative;width:100%;z-index:1000000}.close-btn{background:none;border:none;color:#666;cursor:pointer;font-size:24px;position:absolute;right:20px;top:15px;z-index:1000001}.close-btn:hover{color:#333}.form-header{background:linear-gradient(135deg,#e91e63,#c2185b);border-radius:12px 12px 0 0;color:#fff;padding:30px;text-align:center}.form-header h2{color:#fff;font-size:24px;font-weight:700;margin:0 0 10px}#product-order-form .form-group :is(input,textarea,select){border:none;border-bottom:2px solid #e21d62;border-radius:0;padding-bottom:0;padding-top:0}#product-order-form .form-group label{color:#333;font-size:16px;font-weight:600}.form-header p{font-size:14px;margin:0;opacity:.9}.product-form{padding:30px}.form-section{margin-bottom:30px}.form-section h3{border-bottom:2px solid #f0f0f0;color:#333;font-size:18px;font-weight:600;margin:0 0 20px;padding-bottom:10px}.form-row{display:grid;gap:20px;grid-template-columns:1fr 1fr;margin-bottom:20px}.form-group{display:flex;flex-direction:column}.form-group label{color:#333;font-size:14px;font-weight:600;margin-bottom:8px}.required{color:#e91e63}.form-group input,.form-group select{border:2px solid #e0e0e0;border-radius:6px;font-size:14px;padding:12px;transition:border-color .3s ease}.form-group input:focus,.form-group select:focus{border-color:#e91e63;outline:none}.form-group input.error,.form-group select.error{border-color:#f44336}.error-message{color:#f44336;display:none;font-size:12px;margin-top:5px}.form-group textarea{border:2px solid #e0e0e0;border-radius:6px;font-family:inherit;font-size:14px;min-height:80px;padding:12px;resize:vertical;transition:border-color .3s ease}.form-group textarea:focus{border-color:#e91e63;outline:none}.form-group textarea.error{border-color:#f44336}.product-row{align-items:end;background:#f9f9f9;border-radius:8px;display:grid;gap:15px;grid-template-columns:1fr auto auto auto;margin-bottom:15px;padding:20px;position:relative}.product-select-group{display:flex;flex-direction:column}.product-select-group label{color:#333;font-size:14px;font-weight:600;margin-bottom:8px}.product-select{border:2px solid #e0e0e0;border-radius:6px;font-size:14px;min-width:300px;padding:12px}.quantity-group{align-items:center;display:flex;flex-direction:column}.quantity-group label{color:#333;font-size:14px;font-weight:600;margin-bottom:8px}.quantity-controls{align-items:center;border:2px solid #e0e0e0;border-radius:6px;display:flex;overflow:hidden}.qty-btn{background:#f5f5f5!important;border:none!important;color:#666!important;cursor:pointer!important;font-size:18px!important;font-weight:700!important;height:40px;transition:background-color .3s ease;width:35px}.qty-btn:hover{background:#e0e0e0}.quantity-input{border:none;font-size:14px;font-weight:600;height:40px;text-align:center;width:60px}div:where(.swal2-container){z-index:1e+21!important}.product-price{color:#333;font-size:16px;font-weight:700;min-width:80px;text-align:center}.remove-product-btn{background:#f44336;border:none;border-radius:50%;color:#fff;cursor:pointer;font-size:18px;font-weight:700;height:30px;position:absolute;right:10px;top:10px;transition:background-color .3s ease;width:30px}.remove-product-btn:hover{background:#d32f2f}.add-product-btn{background:#4caf50!important;border:none!important;border-radius:6px!important;color:#fff;cursor:pointer;font-size:14px;font-weight:600!important;padding:12px 20px;transition:background-color .3s ease}.add-product-btn:hover{background:#45a049}.total-section{background:linear-gradient(135deg,#f0f8ff,#e3f2fd);border:2px solid #2196f3;border-radius:12px;box-shadow:0 4px 15px rgba(33,150,243,.1);margin:25px 0;padding:25px}.total-breakdown{align-items:flex-end;display:flex;flex-direction:column;gap:10px}.subtotal-line{border-bottom:1px solid #ddd;color:#666;font-size:16px;padding-bottom:8px}.total-line{color:#1976d2;font-size:24px}.total-line strong{font-weight:700}.form-actions{border-top:1px solid #e0e0e0;padding-top:20px;text-align:center}.submit-btn{background:#e91e63!important;border:none!important;border-radius:6px!important;color:#fff!important;cursor:pointer;font-size:16px;font-weight:600;min-width:200px;padding:15px 40px;transition:background-color .3s ease}.submit-btn:hover:not(:disabled){background:#c2185b}.submit-btn:disabled{cursor:not-allowed;opacity:.7}.btn-loading{display:none}.select2-container{z-index:1000002!important}.select2-dropdown{border:2px solid #e91e63;border-radius:0 0 6px 6px;border-top:none;position:fixed!important;z-index:9999999999!important}.select2-results{overflow-y:auto!important}.select2-results,.select2-results__options{max-height:200px!important}.select2-container--default .select2-selection--single{border:2px solid #e0e0e0;border-radius:6px;height:44px}.select2-container--default .select2-selection--single .select2-selection__rendered{color:#333;line-height:40px;padding-left:12px}.select2-container--default .select2-selection--single .select2-selection__arrow{height:40px;right:10px}.select2-container--default.select2-container--focus .select2-selection--single{border-color:#e91e63}.select2-container--default .select2-results__option--highlighted[aria-selected]{background-color:#e91e63}.select2-result-product{padding:8px 0}.select2-result-product .product-name{color:#333;font-weight:600;margin-bottom:4px}.select2-result-product .product-details{color:#666;display:flex;font-size:12px;justify-content:space-between}.select2-result-product .product-sku{font-style:italic}.select2-result-product .product-price{color:#e91e63;font-weight:600}.select2-container--default .select2-search--dropdown .select2-search__field{border:1px solid #ddd;border-radius:4px;padding:8px}.state-select{width:100%}@media (max-width:768px){.form-modal{margin:10px;max-height:95vh}.form-row,.product-row{gap:15px;grid-template-columns:1fr}.product-row{text-align:center}.remove-product-btn{border-radius:4px;height:auto;margin-top:10px;padding:8px 12px;position:static;width:auto}.form-header,.product-form{padding:20px}.product-select{min-width:auto;width:100%}.total-breakdown{align-items:center;text-align:center}}@media (max-width:480px){.form-overlay{padding:10px}.form-modal{margin:0}.total-line{font-size:20px}.subtotal-line{font-size:14px}}@keyframes fadeIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.form-overlay{animation:fadeIn .3s ease-out}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.btn-loading:after{animation:spin 1s ease-in-out infinite;border:2px solid #fff;border-radius:50%;border-top-color:transparent;content:"";display:inline-block;height:16px;margin-left:8px;width:16px}.select2-dropdown-custom{position:fixed!important;z-index:9999999999!important}.select2-container--open .select2-dropdown{display:block!important;opacity:1!important;visibility:visible!important}.preview-popup{font-family:inherit!important}.preview-cancel-btn,.preview-confirm-btn{font-weight:600!important;padding:12px 24px!important}.swal2-loading{border-color:#ec2a80 transparent!important}.tax-line{border-bottom:1px solid #ddd;color:#666;font-size:16px;padding-bottom:8px}#tax-name{font-weight:600}#tax-rate{color:#888;font-style:italic}.zip-code-group{position:relative}.zip-code-group .error-message{bottom:-20px;color:#f44336;font-size:12px;left:0;position:absolute}