*{margin:0;padding:0;box-sizing:border-box}body{font-family:DM Sans,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:linear-gradient(135deg,#f8f9fa,#e9ecef);color:#2d3436;line-height:1.6;min-height:100vh}.site-header{background:#fff;padding:1rem 2rem;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;align-items:center;box-shadow:0 2px 10px #0000000d}.site-logo{display:flex;align-items:center}.logo-img{height:45px;width:auto}.site-nav{display:flex;gap:2rem;font-size:.9rem;font-weight:500}.site-nav a{color:#636e72;text-decoration:none;transition:color .2s}.site-nav a:hover{color:#e74c3c}.site-actions{display:flex;align-items:center;gap:1.5rem;font-size:.9rem;color:#636e72}:root{--jpf-primary: #e74c3c;--jpf-primary-dark: #c0392b;--jpf-primary-light: #fadbd8;--jpf-secondary: #2c3e50;--jpf-accent: #3498db;--jpf-success: #27ae60;--jpf-warning: #f39c12;--jpf-bg: #f8f9fa;--jpf-card: #ffffff;--jpf-text: #2d3436;--jpf-text-light: #636e72;--jpf-text-muted: #b2bec3;--jpf-border: #dfe6e9;--jpf-border-light: #ecf0f1}.jpf-page{max-width:1200px;margin:0 auto;padding:1rem 1.5rem 4rem}.page-header{text-align:center;margin-bottom:1rem}.page-title{font-family:Playfair Display,Georgia,serif;font-size:2rem;font-weight:700;color:var(--jpf-secondary);margin-bottom:.25rem;letter-spacing:-.5px}.page-title span{color:var(--jpf-primary)}.steps-container{max-width:550px;margin:0 auto 1.25rem}.steps-bar{display:flex;justify-content:center;align-items:center;gap:.5rem;padding:.6rem 1rem;background:#fff;border-radius:30px;box-shadow:0 2px 10px #0000000f}.step-item{display:flex;align-items:center;gap:.4rem}.step-num{width:22px;height:22px;background:var(--jpf-primary);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.7rem;font-weight:700}.step-text{font-size:.8rem;font-weight:600;color:var(--jpf-text)}.step-divider{color:var(--jpf-text-muted);font-size:.7rem;margin:0 .25rem}.main-card{background:var(--jpf-card);border-radius:20px;box-shadow:0 10px 40px #00000014;overflow:hidden}.upload-section{padding:1.5rem 2rem 2rem;border-bottom:1px solid var(--jpf-border-light)}.upload-area{border:2px dashed var(--jpf-border);border-radius:16px;padding:2rem 1.5rem;text-align:center;cursor:pointer;transition:all .3s ease;background:linear-gradient(135deg,#fafbfc,#f5f6f7)}.upload-area:hover{border-color:#27ae60;background:linear-gradient(135deg,#f0fff4,#e8f5e9)}.upload-area.dragover{border-color:#27ae60;background:#e8f5e9;transform:scale(1.01)}.upload-icon{width:56px;height:56px;margin:0 auto 1rem;background:linear-gradient(135deg,#27ae60,#2ecc71);border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 6px 20px #27ae604d}.upload-icon svg{width:26px;height:26px;fill:#fff}.upload-title{font-family:Playfair Display,Georgia,serif;font-size:1.15rem;font-weight:600;color:var(--jpf-secondary);margin-bottom:.35rem}.upload-subtitle{font-size:.9rem;color:var(--jpf-text-light);margin-bottom:1rem}.upload-btn{display:inline-block;padding:.75rem 1.75rem;background:linear-gradient(135deg,#27ae60,#2ecc71);color:#fff;border:none;border-radius:10px;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .3s;box-shadow:0 4px 15px #27ae604d}.upload-btn:hover{background:linear-gradient(135deg,#219a52,#27ae60);transform:translateY(-2px);box-shadow:0 6px 20px #27ae6066}.upload-formats{margin-top:1rem;font-size:.75rem;color:var(--jpf-text-muted)}.upload-copyright{margin-top:.75rem;font-size:.7rem;color:#856404;background:#fff9e6;padding:.4rem .75rem;border-radius:4px;display:inline-block}.sample-banner{margin-top:1.5rem;padding:1.25rem 1.5rem;background:linear-gradient(135deg,#fafbfc,#f5f6f7);border:1px solid var(--jpf-border);border-radius:12px}.sample-banner-title{font-family:Playfair Display,Georgia,serif;font-size:1rem;font-weight:600;color:var(--jpf-secondary);margin-bottom:1rem;text-align:center}.sample-options{display:grid;grid-template-columns:1fr 1fr;gap:1rem}@media (max-width: 600px){.sample-options{grid-template-columns:1fr}}.sample-card{background:#fff;border-radius:10px;padding:1.25rem;border:1.5px solid var(--jpf-border-light);transition:all .3s;display:flex;flex-direction:column}.sample-card:hover{border-color:var(--jpf-primary);box-shadow:0 4px 15px #00000014;transform:translateY(-2px)}.sample-card-icon{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;margin-bottom:.75rem}.sample-card-icon svg{width:22px;height:22px}.sample-card.swatch .sample-card-icon{background:linear-gradient(135deg,#e8f5e9,#c8e6c9)}.sample-card.swatch .sample-card-icon svg{fill:#43a047}.sample-card.design .sample-card-icon{background:linear-gradient(135deg,#fff3e0,#ffe0b2)}.sample-card.design .sample-card-icon svg{fill:#ef6c00}.sample-card-title{font-size:.95rem;font-weight:700;color:var(--jpf-secondary);margin-bottom:.35rem}.sample-card-desc{font-size:.8rem;color:var(--jpf-text-light);line-height:1.5;margin-bottom:.75rem;flex:1}.sample-card-price{font-size:.85rem;font-weight:600;color:var(--jpf-text);margin-bottom:.75rem}.sample-card-price span{color:var(--jpf-primary)}.sample-card-link{display:inline-flex;align-items:center;gap:.3rem;font-size:.8rem;font-weight:600;color:var(--jpf-primary);text-decoration:none;transition:all .2s}.sample-card-link:hover{gap:.5rem;color:var(--jpf-primary-dark)}.sample-card-link svg{width:14px;height:14px;fill:currentColor}.designs-section{display:none;padding:2rem 2.5rem;background:#fafbfc;border-bottom:1px solid var(--jpf-border-light)}.designs-section.active{display:block}.designs-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.25rem}.designs-title{font-family:Playfair Display,Georgia,serif;font-size:1.1rem;font-weight:600;color:var(--jpf-secondary)}.designs-count{font-size:.85rem;color:var(--jpf-text-light);background:var(--jpf-border-light);padding:.3rem .75rem;border-radius:20px}.add-more-btn{display:flex;align-items:center;gap:.4rem;padding:.5rem 1rem;background:transparent;border:1px solid var(--jpf-primary);color:var(--jpf-primary);border-radius:8px;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s}.add-more-btn:hover{background:var(--jpf-primary);color:#fff}.designs-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.25rem;transition:all .3s;border-radius:12px;padding:.5rem;margin:-.5rem}.designs-grid.dragover{background:linear-gradient(135deg,#f0fff4,#e8f5e9);border:2px dashed #27ae60}.design-card{background:var(--jpf-card);border-radius:14px;overflow:hidden;box-shadow:0 4px 15px #0000000f;transition:all .3s;border:2px solid transparent}.design-card:hover{transform:translateY(-3px);box-shadow:0 8px 25px #0000001a}.design-card.has-discount{border-color:var(--jpf-success)}.design-card.has-discount .discount-badge{display:flex}.design-thumbnail-wrapper{position:relative;background:#f5f5f5}.design-thumbnail{width:100%;height:160px;object-fit:contain;background:#f8f8f8;padding:10px}.design-remove{position:absolute;top:8px;right:8px;width:28px;height:28px;background:#00000080;border:none;border-radius:50%;color:#fff;font-size:1.1rem;cursor:pointer;opacity:0;transition:all .2s;display:flex;align-items:center;justify-content:center}.design-card:hover .design-remove{opacity:1}.design-remove:hover{background:var(--jpf-primary)}.discount-badge{display:none;position:absolute;top:8px;left:8px;background:var(--jpf-success);color:#fff;font-size:.7rem;font-weight:700;padding:.25rem .5rem;border-radius:4px;align-items:center;gap:.25rem}.design-info{padding:1rem 1.25rem}.design-name{font-size:.9rem;font-weight:600;color:var(--jpf-text);margin-bottom:.75rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.design-fabric-wrapper{position:relative;margin-bottom:.75rem}.design-fabric-wrapper.highlight .design-fabric-select{animation:fabricPulse 1s ease-in-out infinite;border-color:var(--jpf-primary)}.fabric-hint{position:absolute;top:-24px;left:50%;transform:translate(-50%);background:var(--jpf-primary);color:#fff;font-size:.7rem;font-weight:600;padding:.25rem .6rem;border-radius:4px;white-space:nowrap;opacity:0;visibility:hidden;transition:all .3s}.fabric-hint:after{content:"";position:absolute;bottom:-5px;left:50%;transform:translate(-50%);border-left:5px solid transparent;border-right:5px solid transparent;border-top:5px solid var(--jpf-primary)}.design-fabric-wrapper.highlight .fabric-hint{opacity:1;visibility:visible}@keyframes fabricPulse{0%,to{box-shadow:0 0 #e74c3c66}50%{box-shadow:0 0 0 6px #e74c3c00}}.design-fabric-select{width:100%;padding:.6rem .75rem;border:1.5px solid var(--jpf-border);border-radius:8px;font-size:.85rem;color:var(--jpf-text);background:#fff;cursor:pointer;transition:all .2s}.design-fabric-select:focus{outline:none;border-color:var(--jpf-primary)}.unit-price-display{background:#f8f9fa;border-radius:6px;padding:.5rem .75rem;margin-bottom:.75rem;display:none}.unit-price-display.active{display:flex;justify-content:space-between;align-items:center}.unit-price-label{font-size:.8rem;color:var(--jpf-text-light)}.unit-price-value{font-size:.9rem;font-weight:700;color:var(--jpf-primary)}.unit-price-original{font-size:.75rem;color:var(--jpf-text-muted);text-decoration:line-through;margin-right:.5rem}.design-qty-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:.5rem}.qty-label{font-size:.8rem;font-weight:600;color:var(--jpf-text-light)}.qty-controls{display:flex;align-items:center;gap:.4rem}.qty-btn{width:32px;height:32px;border:1.5px solid var(--jpf-border);border-radius:6px;background:#fff;font-size:1.1rem;color:var(--jpf-text);cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center}.qty-btn:hover{border-color:var(--jpf-primary);color:var(--jpf-primary)}.qty-input{width:60px;height:32px;border:1.5px solid var(--jpf-border);border-radius:6px;text-align:center;font-size:.95rem;font-weight:600}.qty-input:focus{outline:none;border-color:var(--jpf-primary)}.design-price-row{display:flex;align-items:center;justify-content:space-between;padding-top:.75rem;border-top:1px solid var(--jpf-border-light)}.design-min-notice{display:flex;flex-direction:column;gap:.1rem}.min-current{font-size:.72rem;color:var(--jpf-text-light);font-weight:500}.design-total-price{text-align:right}.design-total-label{font-size:.7rem;color:var(--jpf-text-light);text-transform:uppercase;letter-spacing:.5px}.design-total-value{font-size:1.15rem;font-weight:700;color:var(--jpf-secondary)}.design-total-value.discounted{color:var(--jpf-success)}.discount-progress{margin-top:.6rem;padding:.5rem .65rem;border-radius:6px;font-size:.72rem}.discount-progress.not-reached{background:linear-gradient(135deg,#fff8e1,#ffecb3);border:1px solid #ffd54f}.discount-progress.tier-20,.discount-progress.has-discount.tier-20{background:linear-gradient(135deg,#e8f5e9,#c8e6c9);border:1px solid #81c784}.discount-progress.tier-25,.discount-progress.has-discount.tier-25{background:linear-gradient(135deg,#e0f7fa,#b2ebf2);border:1px solid #4dd0e1}.discount-progress.tier-30,.discount-progress.max-discount{background:linear-gradient(135deg,#ede7f6,#d1c4e9);border:1px solid #9575cd;text-align:center;padding:.4rem .65rem}.discount-progress-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.35rem}.discount-progress-text{font-weight:600}.discount-progress.not-reached .discount-progress-text{color:#e65100}.discount-progress.tier-20 .discount-progress-text,.discount-progress.has-discount.tier-20 .discount-progress-text{color:#2e7d32}.discount-progress.tier-25 .discount-progress-text,.discount-progress.has-discount.tier-25 .discount-progress-text{color:#00838f}.discount-progress.tier-30 .discount-progress-text,.discount-progress.max-discount .discount-progress-text{color:#5e35b1}.discount-progress-amount{font-weight:500}.discount-progress.not-reached .discount-progress-amount{color:#fb8c00}.discount-progress-next{font-weight:600;padding:.15rem .45rem;border-radius:3px;font-size:.68rem}.discount-progress.tier-20 .discount-progress-next{background:linear-gradient(135deg,#e0f7fa,#b2ebf2);color:#00838f;border:1px solid #4dd0e1}.discount-progress.tier-25 .discount-progress-next{background:linear-gradient(135deg,#ede7f6,#d1c4e9);color:#5e35b1;border:1px solid #9575cd}.discount-bar{height:5px;background:#ffffffb3;border-radius:3px;overflow:hidden}.discount-bar-fill{height:100%;border-radius:3px;transition:width .3s ease}.discount-progress.not-reached .discount-bar-fill{background:linear-gradient(90deg,#ff9800,#ffb74d)}.discount-progress.tier-20 .discount-bar-fill{background:linear-gradient(90deg,#4caf50,#81c784)}.discount-progress.tier-25 .discount-bar-fill{background:linear-gradient(90deg,#00bcd4,#4dd0e1)}.order-section{display:none;padding:2rem 2.5rem}.order-section.active{display:block}.order-grid{display:grid;grid-template-columns:1fr 400px;gap:2rem}@media (max-width: 900px){.order-grid{grid-template-columns:1fr}}.order-summary{background:#fafbfc;border-radius:14px;padding:1.5rem}.summary-title{font-family:Playfair Display,Georgia,serif;font-size:1.1rem;font-weight:600;color:var(--jpf-secondary);margin-bottom:1.25rem;padding-bottom:.75rem;border-bottom:1px solid var(--jpf-border)}.summary-items{max-height:300px;overflow-y:auto;margin-bottom:1rem}.summary-item{display:flex;align-items:center;gap:.75rem;padding:.75rem 0;border-bottom:1px solid var(--jpf-border-light)}.summary-item:last-child{border-bottom:none}.summary-thumb{width:50px;height:50px;border-radius:8px;object-fit:contain;background:#f5f5f5}.summary-item-info{flex:1}.summary-item-name{font-size:.85rem;font-weight:600;color:var(--jpf-text)}.summary-item-details{font-size:.75rem;color:var(--jpf-text-light)}.summary-item-discount{font-size:.7rem;color:var(--jpf-success);font-weight:600}.summary-item-price{font-size:.95rem;font-weight:700;color:var(--jpf-text)}.summary-totals{padding-top:1rem;border-top:2px solid var(--jpf-border)}.summary-row{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0}.summary-row.discount{color:var(--jpf-success)}.summary-row.total{padding-top:.75rem;margin-top:.5rem;border-top:1px solid var(--jpf-border)}.summary-label{font-size:.9rem;color:var(--jpf-text-light)}.summary-value{font-size:.95rem;font-weight:600;color:var(--jpf-text)}.summary-row.discount .summary-value{color:var(--jpf-success)}.summary-row.total .summary-label{font-size:1rem;font-weight:700;color:var(--jpf-secondary)}.summary-row.total .summary-value{font-size:1.5rem;font-weight:800;color:var(--jpf-primary)}.discount-banner{background:linear-gradient(135deg,#d4edda,#c3e6cb);border-radius:10px;padding:1rem;margin-top:1rem;text-align:center;border:1px solid #a8dfab}.discount-text{font-size:.9rem;color:#155724;font-weight:500}.discount-text strong{color:#0d5524;font-weight:700}.order-form{display:flex;flex-direction:column;gap:1.25rem}.form-group{display:flex;flex-direction:column;gap:.4rem}.form-label{font-size:.9rem;font-weight:600;color:var(--jpf-text)}.form-input{padding:.75rem 1rem;border:1.5px solid var(--jpf-border);border-radius:10px;font-size:.95rem;transition:all .2s;font-family:inherit}.form-input:focus{outline:none;border-color:var(--jpf-primary)}.form-textarea{min-height:100px;resize:vertical}.info-notice{display:flex;align-items:flex-start;gap:.75rem;background:#e3f2fd;border-radius:10px;padding:1rem;font-size:.85rem;color:#1565c0}.info-notice svg{width:20px;height:20px;fill:#1565c0;flex-shrink:0;margin-top:.1rem}.add-to-cart-btn{width:100%;padding:1.1rem;background:linear-gradient(135deg,var(--jpf-secondary) 0%,#1a252f 100%);color:#fff;border:none;border-radius:12px;font-size:1.1rem;font-weight:700;cursor:pointer;transition:all .3s;text-transform:uppercase;letter-spacing:.5px;display:flex;align-items:center;justify-content:center;gap:.5rem;box-shadow:0 6px 20px #2c3e504d}.add-to-cart-btn:hover{transform:translateY(-3px);box-shadow:0 10px 30px #2c3e5066}.add-to-cart-btn:disabled{background:#bdc3c7;cursor:not-allowed;transform:none;box-shadow:none}.add-to-cart-btn svg{width:22px;height:22px;fill:currentColor}.copyright-footer{font-size:.8rem;color:var(--jpf-text-muted);text-align:center;margin-top:1rem;line-height:1.5}.toast{position:fixed;bottom:30px;left:50%;transform:translate(-50%) translateY(100px);background:#2d3436;color:#fff;padding:1rem 1.5rem;border-radius:10px;font-weight:500;box-shadow:0 8px 30px #0003;opacity:0;transition:all .3s ease;z-index:1000;display:flex;align-items:center;gap:.5rem;max-width:90%}.toast.show{transform:translate(-50%) translateY(0);opacity:1}.toast.warning{background:#f39c12}.toast.success{background:var(--jpf-success)}.toast.info{background:#3498db}.currency-selector{position:fixed;bottom:20px;left:20px;display:flex;align-items:center;gap:.5rem;background:#fff;padding:.6rem 1rem;border-radius:10px;box-shadow:0 4px 15px #0000001a;font-size:.85rem;z-index:100}.currency-flag{font-size:1.2rem}.currency-select{border:none;background:transparent;font-size:.85rem;font-weight:600;cursor:pointer;color:var(--jpf-text)}.terms-checkbox-wrapper{margin:.5rem 0}.terms-label{display:flex;align-items:flex-start;gap:.6rem;cursor:pointer;font-size:.85rem;color:var(--jpf-text);line-height:1.4}.terms-checkbox{display:none}.terms-checkmark{width:20px;height:20px;min-width:20px;border:2px solid var(--jpf-border);border-radius:4px;background:#fff;display:flex;align-items:center;justify-content:center;transition:all .2s;margin-top:1px}.terms-checkbox:checked+.terms-checkmark{background:var(--jpf-primary);border-color:var(--jpf-primary)}.terms-checkbox:checked+.terms-checkmark:after{content:"\2713";color:#fff;font-size:.75rem;font-weight:700}.terms-text{flex:1}.terms-link{color:var(--jpf-primary);text-decoration:underline;font-weight:500}.terms-link:hover{color:var(--jpf-primary-dark)}.terms-modal{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background:#0009;z-index:2000;align-items:center;justify-content:center;padding:1rem}.terms-modal.show{display:flex}.terms-modal-content{background:#fff;border-radius:16px;max-width:700px;width:100%;max-height:85vh;display:flex;flex-direction:column;box-shadow:0 20px 60px #0000004d}.terms-modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;border-bottom:1px solid var(--jpf-border-light)}.terms-modal-header h3{font-family:Playfair Display,serif;font-size:1.4rem;font-weight:700;color:var(--jpf-secondary);margin:0}.terms-modal-close{width:36px;height:36px;border:none;background:#f5f5f5;border-radius:50%;font-size:1.5rem;color:var(--jpf-text-light);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.terms-modal-close:hover{background:#e0e0e0;color:var(--jpf-text)}.terms-modal-body{padding:1.5rem;overflow-y:auto;flex:1}.terms-accordion{border-bottom:1px solid var(--jpf-border-light)}.terms-accordion:last-child{border-bottom:none}.terms-accordion-header{display:flex;justify-content:space-between;align-items:center;padding:.9rem 0;cursor:pointer;transition:all .2s}.terms-accordion-header:hover{color:var(--jpf-primary)}.terms-accordion-title{font-size:.95rem;font-weight:700;color:var(--jpf-secondary);margin:0}.terms-accordion-header:hover .terms-accordion-title{color:var(--jpf-primary)}.terms-accordion-icon{font-size:1.3rem;color:var(--jpf-text-muted);transition:transform .3s;font-weight:300}.terms-accordion.open .terms-accordion-icon{transform:rotate(45deg)}.terms-accordion-content{display:none;padding:0 0 1rem}.terms-accordion.open .terms-accordion-content{display:block}.terms-accordion-content p{font-size:.85rem;color:var(--jpf-text);line-height:1.6;margin-bottom:.5rem}.terms-accordion-content ul{margin:.5rem 0 .5rem 1.5rem;font-size:.85rem;color:var(--jpf-text);line-height:1.6}.terms-accordion-content li{margin-bottom:.3rem}.terms-modal-footer{padding:1rem 1.5rem;border-top:1px solid var(--jpf-border-light);display:flex;justify-content:center}.terms-accept-btn{background:linear-gradient(135deg,var(--jpf-primary) 0%,var(--jpf-primary-dark) 100%);color:#fff;border:none;padding:.9rem 2.5rem;border-radius:10px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s}.terms-accept-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #e74c3c59}@media (max-width: 768px){.site-nav{display:none}.page-title{font-size:1.6rem}.steps-bar{gap:.3rem;padding:.5rem .75rem}.step-text{font-size:.7rem}.step-num{width:20px;height:20px;font-size:.65rem}.upload-section,.designs-section,.order-section{padding:1rem}.designs-grid,.order-grid{grid-template-columns:1fr}.terms-modal-content{max-height:90vh}.terms-modal-body{padding:1rem}.terms-section h4{font-size:.9rem}.terms-section p,.terms-section ul{font-size:.8rem}}
/*# sourceMappingURL=/cdn/shop/t/21/assets/print-your-own.css.map */
