.custom-size-fields{margin-top:1rem;padding:1rem;background:#f8f9fa;border:1px solid #e9ecef;border-radius:6px}.custom-size-inputs{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.custom-size-inputs .field{display:flex;flex-direction:column}.custom-size-inputs label{font-weight:600;margin-bottom:.5rem;color:#333;font-size:.9rem}.custom-dimension-input{padding:.75rem;border:1px solid #ddd;border-radius:4px;font-size:1rem;transition:border-color .2s ease,box-shadow .2s ease}.custom-dimension-input:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 2px #007bff40}.custom-dimension-input:invalid{border-color:#dc3545}.custom-quantity-field{margin-top:1rem;padding:1rem;background:#f8f9fa;border:1px solid #e9ecef;border-radius:6px;max-width:44rem}.custom-quantity-field .field{display:flex;flex-direction:column}.custom-quantity-field label{font-weight:600;margin-bottom:.5rem;color:#333;font-size:.9rem}.custom-quantity-input{padding:.75rem;border:1px solid #ddd;border-radius:4px;font-size:1rem;max-width:200px;transition:border-color .2s ease,box-shadow .2s ease;max-width:44rem}.custom-quantity-input:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 2px #007bff40}.custom-quantity-input:invalid{border-color:#dc3545}.personalization-fields{margin-top:1.5rem;padding:1.5rem;background:linear-gradient(135deg,#e3f2fd,#f3e5f5);border:2px solid #2196f3;border-radius:8px;position:relative;max-width:44rem}.personalization-fields:before{content:"\2728  Personalization";position:absolute;top:-12px;left:1rem;background:#2196f3;color:#fff;padding:.25rem .75rem;border-radius:4px;font-size:.8rem;font-weight:600}.personalization-fields .field{display:flex;flex-direction:column}.personalization-fields label{font-weight:600;margin-bottom:.5rem;color:#1976d2;font-size:1rem}.personalized-name-input{padding:1rem;border:2px solid #2196f3;border-radius:6px;font-size:1.1rem;background:#fff;transition:border-color .2s ease,box-shadow .2s ease}.personalized-name-input:focus{outline:none;border-color:#1976d2;box-shadow:0 0 0 3px #2196f333}.personalized-name-input::placeholder{color:#999;font-style:italic}.font-selector-field{margin-top:1rem}.font-selector-dropdown{padding:1rem;border:2px solid #2196f3;border-radius:6px;font-size:1.1rem;background:#fff;width:100%;cursor:pointer;transition:border-color .2s ease,box-shadow .2s ease}.font-selector-dropdown:focus{outline:none;border-color:#1976d2;box-shadow:0 0 0 3px #2196f333}.font-selector-dropdown option{padding:.5rem;font-size:1rem}.font-selector-dropdown optgroup{font-weight:700;color:#1976d2;background:#f5f5f5;font-size:.9rem}.font-selector-dropdown optgroup option{font-weight:400;color:#333;background:#fff;padding-left:1rem}.font-preview-container{margin-top:1.5rem;padding:1.5rem;background:linear-gradient(135deg,#f8f9fa,#e9ecef);border:2px solid #6c757d;border-radius:8px;position:relative;min-height:80px;display:flex;flex-direction:column}.font-preview-container:before{content:"\1f440  Live Preview";position:absolute;top:-12px;left:1rem;background:#6c757d;color:#fff;padding:.25rem .75rem;border-radius:4px;font-size:.8rem;font-weight:600}.font-preview-container label{font-weight:600;margin-bottom:.75rem;color:#495057;font-size:1rem}.font-preview-text{background:#fff;padding:1rem;border-radius:6px;border:2px solid #dee2e6;min-height:60px;display:flex;align-items:center;justify-content:center;font-size:2rem;font-weight:700;color:#212529;transition:all .3s ease;text-align:center;word-break:break-all}.font-preview-text.has-content{color:#1976d2;border-color:#2196f3;box-shadow:0 2px 8px #2196f31a}.preview-placeholder{color:#adb5bd;font-style:italic;font-size:1.2rem;font-weight:400}@media (max-width: 749px){.font-preview-text{font-size:1.5rem;padding:.75rem}.preview-placeholder{font-size:1rem}}.artwork-upload-field{margin-top:1.5rem;padding:1.5rem;background:linear-gradient(135deg,#fff3e0,#fce4ec);border:2px solid #ff9800;border-radius:8px;position:relative;max-width:44rem}.artwork-upload-field:before{content:"\1f3a8  Artwork Upload";position:absolute;top:-12px;left:1rem;background:#ff9800;color:#fff;padding:.25rem .75rem;border-radius:4px;font-size:.8rem;font-weight:600}.artwork-upload-field .field{display:flex;flex-direction:column}.artwork-upload-field label{font-weight:600;margin-bottom:.5rem;color:#f57c00;font-size:1rem}.artwork-upload-input{padding:1rem;border:2px dashed #ff9800;border-radius:6px;background:#fff;cursor:pointer;transition:border-color .2s ease,background-color .2s ease}.artwork-upload-input:hover{border-color:#f57c00;background-color:#fff8f0}.artwork-upload-input:focus{outline:none;border-color:#e65100;box-shadow:0 0 0 3px #ff980033}.artwork-upload-field small{margin-top:.5rem;color:#666;font-size:.85rem}.file-preview{margin-top:.5rem;padding:.75rem;background:#f8f9fa;border:1px solid #dee2e6;border-radius:6px;font-size:.9rem}.file-preview img{border-radius:4px;box-shadow:0 2px 4px #0000001a}.custom-price-display{margin-top:1.5rem;padding:1.5rem;background:linear-gradient(135deg,#e8f5e8,#f0f8f0);border:2px solid #4caf50;border-radius:8px;position:relative;max-width:44rem}.price-breakdown{font-size:1rem;line-height:1.6}.price-breakdown:before{content:"\1f4b0  Price Calculator";position:absolute;top:-12px;left:1rem;background:#4caf50;color:#fff;padding:.25rem .75rem;border-radius:4px;font-size:.8rem;font-weight:600}.price-breakdown p{margin:.5rem 0;color:#2e7d32}.price-breakdown .total-price-display{font-size:1.2rem;color:#1b5e20;padding:.75rem;background:#4caf501a;border-radius:4px;margin-top:1rem;text-align:center}.custom-variant-error{background:#ffebee;border:1px solid #f8bbd9;color:#c62828;padding:1rem;margin:1rem 0;border-radius:6px;border-left:4px solid #d32f2f}.custom-variant-error ul{margin:0;padding-left:1.5rem}.custom-variant-error li{margin:.25rem 0}.file-upload-error{background:#ffebee;border:1px solid #f8bbd9;color:#c62828;padding:.75rem;margin-top:.5rem;border-radius:4px;font-size:.9rem;border-left:3px solid #d32f2f}[data-is-custom-option]+label{background:linear-gradient(135deg,#6c5ce7,#a29bfe);color:#fff;font-weight:600;position:relative;overflow:hidden}[data-is-custom-option]+label:before{content:"\270f\fe0f";margin-right:.5rem}[data-is-custom-option]+label:after{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s}[data-is-custom-option]:checked+label:after,[data-is-custom-option]+label:hover:after{left:100%}@media (max-width: 768px){.custom-size-inputs{grid-template-columns:1fr;gap:.75rem}.personalization-fields,.artwork-upload-field,.custom-price-display{padding:1rem;margin-top:1rem}.custom-size-fields,.custom-quantity-field{padding:.75rem;margin-top:.75rem}}.custom-size-fields,.custom-quantity-field{transition:opacity .3s ease,visibility .3s ease;transform-origin:top;max-height:none;overflow:visible}.custom-size-fields[style*="visibility: hidden"],.custom-quantity-field[style*="visibility: hidden"]{opacity:0;visibility:hidden;pointer-events:none}.custom-size-fields[style*="display: none"],.custom-quantity-field[style*="display: none"]{display:none!important}.custom-dimension-input[data-custom-field],.custom-quantity-input[data-custom-field],.personalized-name-input,.artwork-upload-input{position:relative;z-index:1}.artwork-upload-input.file-uploaded{border-color:#28a745;background-color:#f8fff9}.artwork-upload-input.file-uploaded:after{content:"\2713  File uploaded";position:absolute;right:10px;top:50%;transform:translateY(-50%);color:#28a745;font-size:.8rem;font-weight:600;pointer-events:none}.custom-dimension-input:placeholder-shown,.custom-quantity-input:placeholder-shown{background-image:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%);background-size:200% 100%;animation:loading 1.5s infinite}@keyframes loading{0%{background-position:200% 0}to{background-position:-200% 0}}.custom-dimension-input:focus-visible,.custom-quantity-input:focus-visible,.personalized-name-input:focus-visible,.artwork-upload-input:focus-visible{outline:2px solid #007bff;outline-offset:2px}@media (prefers-contrast: high){.custom-size-fields,.custom-quantity-field,.personalization-fields,.artwork-upload-field,.custom-price-display{border-width:3px}.custom-dimension-input,.custom-quantity-input,.personalized-name-input,.artwork-upload-input{border-width:2px}}@media (prefers-reduced-motion: reduce){.custom-size-fields,.custom-quantity-field,*{transition:none!important;animation:none!important}}
/*# sourceMappingURL=/cdn/shop/t/2/assets/component-product-variant-picker.css.map */
