.tuliba-badge{padding:4px 10px;border-radius:8px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.tuliba-badge-gold{background:#d4af371a;color:#d4af37}.tuliba-btn{display:inline-flex;align-items:center;justify-content:center;padding:16px 32px;border-radius:14px;font-weight:700;font-size:15px;cursor:pointer;transition:all .4s cubic-bezier(.4,0,.2,1);border:none;outline:none;gap:10px}.tuliba-btn:active{transform:scale(.98)}.tuliba-btn-primary{background:#6b4c9a;color:#fff;box-shadow:0 4px 15px #6b4c9a33}.tuliba-btn-primary:hover{background:#533b78;box-shadow:0 8px 25px #6b4c9a4d}.tuliba-btn-secondary{background:#fff;color:#6b4c9a;border:2px solid #6b4c9a}.tuliba-btn-secondary:hover{background:#6b4c9a;color:#fff}.tuliba-btn-gold{background:#d4af37;color:#fff}.tuliba-btn-gold:hover{background:#b29126}.tuliba-builder-wrapper{font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Helvetica Neue,Arial,sans-serif;background-color:#fdfdfb;color:#1d1d1f;-webkit-font-smoothing:antialiased;max-width:1400px;margin:40px auto;padding:0 20px}.tuliba-grid-container{display:grid;grid-template-columns:1fr 380px;gap:40px;align-items:start}@media (max-width: 1024px){.tuliba-grid-container{grid-template-columns:1fr}}.tuliba-main-content{display:flex;flex-direction:column;gap:40px}.tuliba-wizard-nav{display:flex;justify-content:space-between;position:relative;margin-bottom:50px;padding:0 40px}.tuliba-wizard-nav:after{content:"";position:absolute;top:25px;left:40px;right:40px;height:2px;background:#e5e5e7;z-index:0}.tuliba-wizard-step{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:12px;cursor:pointer}.tuliba-wizard-step .step-circle{width:50px;height:50px;border-radius:50%;background:#fff;border:2px solid #e5e5e7;display:flex;align-items:center;justify-content:center;font-weight:600;transition:all .4s cubic-bezier(.4,0,.2,1);box-shadow:0 10px 30px #0000000d}.tuliba-wizard-step .step-label{font-size:13px;font-weight:500;color:#86868b;transition:all .4s cubic-bezier(.4,0,.2,1);text-transform:uppercase;letter-spacing:1px}.tuliba-wizard-step.active .step-circle{border-color:#d4af37;background:#d4af37;color:#fff;transform:scale(1.1)}.tuliba-wizard-step.active .step-label{color:#6b4c9a;font-weight:700}.tuliba-wizard-step.completed .step-circle{border-color:#6b4c9a;background:#6b4c9a;color:#fff}.tuliba-card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:24px}.tuliba-card-box{background:#fff;border-radius:24px;overflow:hidden;box-shadow:0 10px 30px #0000000d;transition:all .4s cubic-bezier(.4,0,.2,1);border:2px solid transparent;cursor:pointer;position:relative;display:flex;flex-direction:column}.tuliba-card-box:hover{transform:translateY(-8px);box-shadow:0 20px 40px #0000001a;border-color:#d4af374d}.tuliba-card-box:hover .card-images img{transform:scale(1.08)}.tuliba-card-box.selected{border-color:#d4af37;box-shadow:0 0 0 4px #d4af371a,0 20px 40px #0000001a}.tuliba-card-box.selected .check-icon{opacity:1;transform:scale(1)}.tuliba-card-box .card-images{height:220px;position:relative;overflow:hidden;background:#f5f5f7;display:flex}.tuliba-card-box .card-images .front-img,.tuliba-card-box .card-images .back-img{width:50%;height:100%;object-fit:cover;transition:all .4s cubic-bezier(.4,0,.2,1)}.tuliba-card-box .card-images .back-img{border-left:1px solid rgba(0,0,0,.05)}.tuliba-card-box .card-info{padding:18px;text-align:left;position:relative}.tuliba-card-box .card-info .card-name{font-size:15px;font-weight:700;margin-bottom:6px;color:#1d1d1f}.tuliba-card-box .card-info .card-category-badge{display:inline-block;margin-top:4px}.tuliba-card-box .check-icon{position:absolute;top:12px;right:12px;width:28px;height:28px;background:#d4af37;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:14px;opacity:0;transform:scale(.4);transition:all .4s cubic-bezier(.175,.885,.32,1.275);z-index:2;box-shadow:0 4px 10px #d4af374d}@media (max-width: 768px){.tuliba-card-grid{display:flex;overflow-x:auto;padding-bottom:20px;gap:16px;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch}.tuliba-card-grid .tuliba-card-box{min-width:240px;scroll-snap-align:start}}.tuliba-form-group{margin-bottom:28px;position:relative}.tuliba-form-group .label-wrapper{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.tuliba-form-group label{font-size:14px;font-weight:700;color:#6b4c9a;text-transform:uppercase;letter-spacing:.5px}.tuliba-form-group .input-wrapper{position:relative}.tuliba-form-group .input-wrapper i.input-icon{position:absolute;left:18px;top:50%;transform:translateY(-50%);color:#86868b;transition:all .4s cubic-bezier(.4,0,.2,1)}.tuliba-form-group .input-wrapper.has-icon input{padding-left:48px}.tuliba-form-group input,.tuliba-form-group textarea{width:100%;padding:16px 20px;border:2px solid #e5e5e7;border-radius:14px;background:#fff;font-size:15px;color:#1d1d1f;transition:all .4s cubic-bezier(.4,0,.2,1);outline:none}.tuliba-form-group input::placeholder,.tuliba-form-group textarea::placeholder{color:#c7c7cc;font-weight:400}.tuliba-form-group input:focus,.tuliba-form-group textarea:focus{border-color:#d4af37;background:#fff;box-shadow:0 0 0 4px #d4af3714}.tuliba-form-group input:focus+i.input-icon,.tuliba-form-group textarea:focus+i.input-icon{color:#d4af37}.tuliba-form-group input.error,.tuliba-form-group textarea.error{border-color:#ff3b30}.tuliba-form-group input.error:focus,.tuliba-form-group textarea.error:focus{box-shadow:0 0 0 4px #ff3b3014}.tuliba-form-group .error-msg{color:#ff3b30;font-size:12px;font-weight:500;margin-top:6px;display:block}.tuliba-form-group .char-counter{font-size:11px;color:#86868b;font-weight:600}.tuliba-media-controls{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-top:20px}.tuliba-media-controls .media-btn{background:#fff;border:1px dashed #e5e5e7;padding:20px;border-radius:14px;text-align:center;cursor:pointer;transition:all .4s cubic-bezier(.4,0,.2,1)}.tuliba-media-controls .media-btn:hover{border-color:#d4af37;background:#d4af3705}.tuliba-media-controls .media-btn i{display:block;font-size:24px;margin-bottom:8px;color:#d4af37}.tuliba-media-controls .media-btn span{font-size:13px;font-weight:500}.tuliba-sticky-basket{position:sticky;top:40px;background:#fff;border-radius:24px;padding:32px;box-shadow:0 10px 30px #0000000d;border:1px solid rgba(0,0,0,.03)}.tuliba-sticky-basket h3{font-size:22px;font-weight:800;margin-bottom:28px;color:#1d1d1f;letter-spacing:-.5px}.tuliba-sticky-basket .basket-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px;font-size:15px}.tuliba-sticky-basket .basket-row .label{color:#86868b;font-weight:500}.tuliba-sticky-basket .basket-row .value{font-weight:700;color:#1d1d1f}.tuliba-sticky-basket .basket-row.total{margin-top:28px;padding-top:24px;border-top:2px solid #6b4c9a;font-size:22px;font-weight:900;color:#6b4c9a}.tuliba-sticky-basket .quantity-control{display:flex;align-items:center;background:#f5f5f7;border-radius:8px;padding:4px;gap:12px}.tuliba-sticky-basket .quantity-control button{width:28px;height:28px;border-radius:6px;border:none;background:#fff;cursor:pointer;font-weight:700;transition:all .4s cubic-bezier(.4,0,.2,1)}.tuliba-sticky-basket .quantity-control button:hover{background:#d4af37;color:#fff}.tuliba-sticky-basket .quantity-control span{font-weight:700;min-width:20px;text-align:center}.tuliba-sticky-basket .checkout-btn{width:100%;margin-top:24px}.tuliba-preview-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#0006;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);z-index:9999;display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;transition:all .4s cubic-bezier(.4,0,.2,1)}.tuliba-preview-overlay.active{opacity:1;visibility:visible}.tuliba-preview-modal{background:#fffc;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-radius:30px;width:90%;max-width:1000px;padding:40px;box-shadow:0 30px 60px #0003;border:1px solid rgba(255,255,255,.3);position:relative;transform:translateY(50px);transition:all .4s cubic-bezier(.4,0,.2,1)}.active .tuliba-preview-modal{transform:translateY(0)}.tuliba-preview-modal .close-modal{position:absolute;top:20px;right:20px;width:40px;height:40px;background:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:20px;transition:all .4s cubic-bezier(.4,0,.2,1)}.tuliba-preview-modal .close-modal:hover{background:#d4af37;color:#fff}.tuliba-preview-modal .preview-sides{display:grid;grid-template-columns:1fr 1fr;gap:30px}@media (max-width: 768px){.tuliba-preview-modal .preview-sides{grid-template-columns:1fr}}.tuliba-preview-modal .preview-sides .side-box{background:#fff;border-radius:20px;padding:20px;box-shadow:0 10px 30px #0000000d}.tuliba-preview-modal .preview-sides .side-box h4{text-align:center;margin-bottom:15px;color:#86868b;text-transform:uppercase;font-size:12px;letter-spacing:1px}.tuliba-preview-modal .preview-sides .side-box .canvas-container{width:100%;aspect-ratio:4/5;background:#f9f9f9;border-radius:10px;overflow:hidden;position:relative}.tuliba-preview-modal .preview-sides .side-box .canvas-container img{width:100%;height:100%;object-fit:contain}.tuliba-upsells{margin-top:60px}.tuliba-upsells h3{font-size:24px;font-weight:700;margin-bottom:30px}.tuliba-upsells .upsell-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:20px}.tuliba-upsells .upsell-card{background:#fff;border-radius:14px;padding:15px;text-align:center;box-shadow:0 10px 30px #0000000d;transition:all .4s cubic-bezier(.4,0,.2,1)}.tuliba-upsells .upsell-card:hover{transform:translateY(-5px);box-shadow:0 20px 40px #0000001a}.tuliba-upsells .upsell-card img{width:100%;border-radius:8px;margin-bottom:12px}.tuliba-upsells .upsell-card .product-name{font-size:14px;font-weight:600;margin-bottom:8px;display:block}.tuliba-upsells .upsell-card .product-price{font-weight:700;color:#6b4c9a;margin-bottom:12px;display:block}.tuliba-upsells .upsell-card .add-upsell-btn{background:#d4af37;color:#fff;border:none;padding:8px 15px;border-radius:6px;font-size:12px;font-weight:600;cursor:pointer}
