#custom-product-configurator{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;color:#1f2937;line-height:1.6}.configurator-step{margin-bottom:3rem;padding-bottom:2rem;border-bottom:1px solid #e5e7eb;animation:fadeInUp .5s ease}.configurator-step:last-of-type{border-bottom:none}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.step-title{display:flex;align-items:center;gap:1rem;font-size:1.5rem;font-weight:600;margin:0 0 1.5rem;color:#1f2937}.step-number{display:flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:50%;font-size:1.125rem;font-weight:700;flex-shrink:0}.product-type-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1.5rem}.product-type-card{background:#fff;border:2px solid #e5e7eb;border-radius:.75rem;overflow:hidden;transition:all .3s ease;cursor:pointer;position:relative}.product-type-card:hover:not(.unavailable){border-color:#9ca3af;transform:translateY(-2px);box-shadow:0 10px 15px -3px #0000001a}.product-type-card.selected{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.product-type-card.unavailable{opacity:.6;cursor:not-allowed}.product-type-image{width:100%;height:150px;overflow:hidden;background:#f3f4f6}.product-type-image img{width:100%;height:100%;object-fit:cover}.product-type-info{padding:1.5rem}.product-type-name{font-size:1.125rem;font-weight:600;margin:0 0 .5rem;color:#1f2937}.product-type-price{font-size:1rem;color:#6b7280;margin:0}.price-note{font-size:.875rem;color:#9ca3af;display:block}.unavailable-text{color:#ef4444;font-size:.875rem;font-weight:500;margin:.5rem 0 0}.select-product-btn{width:100%;padding:.75rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;font-weight:600;cursor:pointer;transition:opacity .3s ease}.select-product-btn:hover{opacity:.9}.no-products{text-align:center;color:#6b7280;padding:2rem;background:#f3f4f6;border-radius:.5rem;grid-column:1 / -1}.measurements-container{background:#f9fafb;padding:2rem;border-radius:.75rem;border:1px solid #e5e7eb}.measurement-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin-bottom:1.5rem}.measurement-field{display:flex;flex-direction:column;gap:.5rem}.measurement-field label{font-weight:500;color:#374151;font-size:.875rem;text-transform:uppercase;letter-spacing:.025em}.measurement-field input{padding:.75rem;border:1px solid #d1d5db;border-radius:.375rem;font-size:1rem;transition:all .2s ease;background:#fff}.measurement-field input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.measurement-field input:valid:not(:placeholder-shown){border-color:#10b981}.required{color:#ef4444;font-weight:700}.field-hint{font-size:.75rem;color:#6b7280;font-style:italic}.measurement-guide-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:#fff;border:1px solid #d1d5db;border-radius:.375rem;color:#4b5563;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease}.measurement-guide-btn:hover{background:#f9fafb;border-color:#9ca3af}.form-group{margin-bottom:1.5rem}.form-group label{display:block;font-weight:500;margin-bottom:.5rem;color:#374151;font-size:.875rem;text-transform:uppercase;letter-spacing:.025em}.label-hint{font-weight:400;color:#6b7280;text-transform:none;letter-spacing:normal;font-size:.75rem}.form-group textarea{width:100%;padding:.75rem;border:1px solid #d1d5db;border-radius:.375rem;font-size:1rem;font-family:inherit;resize:vertical;min-height:100px;transition:all .2s ease}.form-group textarea:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.checkbox-group{background:#f9fafb;padding:1rem;border-radius:.5rem;border:1px solid #e5e7eb}.checkbox-label{display:flex;align-items:flex-start;gap:.75rem;cursor:pointer;font-weight:500;color:#374151}.checkbox-label input[type=checkbox]{width:1.25rem;height:1.25rem;margin-top:.125rem;cursor:pointer;accent-color:#667eea}.checkbox-text{flex:1}.checkbox-hint{display:block;font-size:.875rem;color:#6b7280;font-weight:400;margin-top:.25rem}.order-summary{background:#f3f4f6;border:2px solid #e5e7eb;border-radius:.75rem;padding:1.5rem;margin-bottom:2rem}.summary-title{font-size:1.125rem;font-weight:600;margin:0 0 1rem;color:#1f2937;text-align:center}.summary-content{display:flex;flex-direction:column;gap:.75rem}.summary-row{display:flex;justify-content:space-between;align-items:center;font-size:.875rem;color:#4b5563}.summary-row.total{border-top:2px solid #d1d5db;padding-top:.75rem;margin-top:.75rem;font-size:1.125rem;font-weight:600;color:#1f2937}.configurator-actions{text-align:center;margin-top:2rem}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:1rem 2rem;border:none;border-radius:.5rem;font-weight:600;cursor:pointer;transition:all .3s ease;text-decoration:none;font-size:1rem;line-height:1}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 10px 15px -3px #667eea4d}.btn-primary:disabled{background:#d1d5db;cursor:not-allowed;transform:none}.btn-large{padding:1.25rem 2.5rem;font-size:1.125rem}.btn.ready{animation:pulse 2s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.8}}.btn.success{background:#10b981}.action-note{display:flex;align-items:center;justify-content:center;gap:.5rem;margin-top:1rem;font-size:.875rem;color:#6b7280}.action-note svg{color:#10b981}.modal{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal-content{background:#fff;border-radius:.75rem;max-width:600px;width:100%;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;animation:modalSlideIn .3s ease}@keyframes modalSlideIn{0%{transform:translateY(-20px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid #e5e7eb}.modal-header h3{font-size:1.25rem;font-weight:600;margin:0;color:#1f2937}.modal-close{background:none;border:none;font-size:1.5rem;cursor:pointer;color:#6b7280;width:2rem;height:2rem;display:flex;align-items:center;justify-content:center;border-radius:.375rem;transition:all .2s ease}.modal-close:hover{background:#f3f4f6;color:#1f2937}.modal-body{padding:1.5rem;overflow-y:auto}.guide-section{margin-bottom:2rem}.guide-section h4{font-size:1.125rem;font-weight:600;margin:0 0 1rem;color:#1f2937}.guide-steps{display:flex;flex-direction:column;gap:1rem}.guide-step{padding:1rem;background:#f9fafb;border-radius:.5rem;border-left:4px solid #667eea;line-height:1.6}.guide-tips ul{margin:0;padding-left:1.5rem;color:#4b5563}.guide-tips li{margin-bottom:.5rem}.guide-visual{background:#fef3c7;padding:1rem;border-radius:.5rem;text-align:center;margin-top:1.5rem}.guide-visual p{margin:0;color:#92400e}.error-message{display:flex;align-items:center;gap:.5rem;padding:1rem;background:#fef2f2;border:1px solid #fecaca;border-radius:.5rem;color:#dc2626;margin-bottom:1rem;animation:shake .5s ease}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-5px)}75%{transform:translate(5px)}}@media (max-width: 768px){.product-type-grid,.measurement-grid{grid-template-columns:1fr}.configurator-step{margin-bottom:2rem;padding-bottom:1.5rem}.step-title{font-size:1.25rem}.measurements-container{padding:1.5rem}.order-summary{padding:1rem}.btn-large{padding:1rem 1.5rem;font-size:1rem}.modal-content{margin:1rem}}@media (max-width: 480px){.step-number{width:2rem;height:2rem;font-size:1rem}.product-type-info,.measurements-container{padding:1rem}.measurement-field input,.form-group textarea{padding:.625rem;font-size:.875rem}.btn{padding:.875rem 1.5rem;font-size:.875rem}}@media print{.measurement-guide-btn,.modal,.action-note{display:none!important}.configurator-step{page-break-inside:avoid}.order-summary{border:2px solid #000}}:focus-visible{outline:2px solid #667eea;outline-offset:2px}@media (prefers-contrast: high){.product-type-card{border-width:3px}.btn-primary{background:#1f2937}.required{font-weight:900}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
/*# sourceMappingURL=/cdn/shop/t/1/assets/custom-product-configurator.css.map */
