wall-visualizer{display:block;padding:20px 0}.wall-visualizer__trigger{display:inline-flex;align-items:center;gap:8px;padding:12px 24px;background:#7b5454;color:#fff;border:none;border-radius:var(--rounded, 4px);font-family:var(--font-body-family, "Jost", sans-serif);font-size:.9rem;font-weight:500;letter-spacing:.05em;text-transform:uppercase;cursor:pointer;transition:background-color .2s}.wall-visualizer__trigger:hover{background:#634343}.wall-visualizer__trigger svg{width:20px;height:20px}.wall-visualizer__modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;display:flex;align-items:center;justify-content:center;background:#000000b3;opacity:0;visibility:hidden;transition:opacity .3s,visibility .3s}.wall-visualizer__modal.open{opacity:1;visibility:visible}.wall-visualizer__modal-content{position:relative;width:95vw;max-width:1100px;max-height:90vh;background:#fff;border-radius:8px;overflow-y:auto;padding:32px}.wall-visualizer__close{position:absolute;top:12px;right:12px;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border:none;background:#0000000d;border-radius:50%;cursor:pointer;font-size:1.2rem;color:#333;transition:background .2s;z-index:2}.wall-visualizer__close:hover{background:#0000001a}.wall-visualizer__help{position:absolute;top:14px;right:56px;display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border:1.5px solid rgb(123 84 84 / .25);background:#7b54540a;border-radius:18px;cursor:pointer;color:#7b5454;font-family:inherit;font-size:.78rem;font-weight:500;letter-spacing:.02em;transition:background .2s,border-color .2s;z-index:2}.wall-visualizer__help:hover{background:#7b54541a;border-color:#7b5454}.wall-visualizer__help svg{width:16px;height:16px}.wall-visualizer__tutorial{position:absolute;top:0;right:0;bottom:0;left:0;background:#fffffff5;z-index:3;overflow-y:auto;padding:40px 24px}.wall-visualizer__tutorial[hidden]{display:none}.wv-tut-panel{max-width:620px;margin:0 auto;position:relative}.wv-tut-close{position:absolute;top:-16px;right:0;width:32px;height:32px;border-radius:50%;border:none;background:#0000000d;cursor:pointer;font-size:1.2rem;color:#333}.wv-tut-close:hover{background:#0000001a}.wv-tut-title{font-family:var(--font-heading-family, "Jost", sans-serif);font-size:1.3rem;font-weight:600;color:#333;margin:0 0 24px;padding-right:40px}.wv-tut-step{display:grid;grid-template-columns:40px 1fr 160px;gap:14px;align-items:center;padding:18px 0;border-top:1px solid rgb(0 0 0 / .07)}.wv-tut-step:first-of-type{border-top:none}.wv-tut-num{width:32px;height:32px;border-radius:50%;background:#7b5454;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.95rem}.wv-tut-body h4{margin:0 0 4px;font-size:.98rem;font-weight:600;color:#333}.wv-tut-body p{margin:0;font-size:.85rem;color:#666;line-height:1.4}.wv-tut-anim{width:100%;height:auto;border-radius:4px;display:block;background:#faf7f1}.wv-tut-done{display:block;margin:24px auto 0;min-width:140px}@keyframes wv-anim-upload-arrow{0%,to{transform:translateY(8px);opacity:0}15%,70%{transform:translateY(0);opacity:1}85%{transform:translateY(-4px);opacity:.4}}.wv-anim-upload-icon{transform-origin:center;animation:wv-anim-upload-arrow 2.6s ease-in-out infinite}@keyframes wv-anim-corner-fade{0%,to{opacity:0;transform:scale(.4)}10%{opacity:1;transform:scale(1.3)}20%,95%{opacity:1;transform:scale(1)}}@keyframes wv-anim-outline-draw{0%,70%{stroke-dashoffset:320;opacity:0}80%,95%{stroke-dashoffset:0;opacity:1}to{stroke-dashoffset:0;opacity:0}}.wv-anim-corner,.wv-anim-labels text{opacity:0;transform-box:fill-box;transform-origin:center;animation:wv-anim-corner-fade 4s ease-in-out infinite}.wv-anim-corner-1{animation-delay:.2s}.wv-anim-corner-2{animation-delay:.7s}.wv-anim-corner-3{animation-delay:1.2s}.wv-anim-corner-4{animation-delay:1.7s}.wv-anim-wall-outline{stroke-dasharray:320;stroke-dashoffset:320;animation:wv-anim-outline-draw 4s ease-in-out infinite}@keyframes wv-anim-excl-fade{0%,to{opacity:0;transform:scale(.4)}12%{opacity:1;transform:scale(1.3)}22%,92%{opacity:1;transform:scale(1)}}@keyframes wv-anim-excl-poly-fade{0%,60%{opacity:0}72%,92%{opacity:1}to{opacity:0}}.wv-anim-excl{opacity:0;transform-box:fill-box;transform-origin:center;animation:wv-anim-excl-fade 4.2s ease-in-out infinite}.wv-anim-excl-1{animation-delay:.3s}.wv-anim-excl-2{animation-delay:.9s}.wv-anim-excl-3{animation-delay:1.5s}.wv-anim-excl-4{animation-delay:2.1s}.wv-anim-excl-poly{opacity:0;animation:wv-anim-excl-poly-fade 4.2s ease-in-out infinite}@media(prefers-reduced-motion:reduce){.wv-anim-upload-icon,.wv-anim-corner,.wv-anim-labels text,.wv-anim-wall-outline,.wv-anim-excl,.wv-anim-excl-poly{animation:none;opacity:1}.wv-anim-wall-outline{stroke-dashoffset:0}}.wall-visualizer__step{display:none}.wall-visualizer__step.active{display:block}.wall-visualizer__step-title{font-family:var(--font-heading-family, "Jost", sans-serif);font-size:1.3rem;font-weight:600;color:#333;margin:0 0 4px}.wall-visualizer__step-desc{font-size:.9rem;color:#666;margin:0 0 20px}.wall-visualizer__step-back{display:inline-flex;align-items:center;gap:4px;padding:6px 12px 6px 8px;margin-bottom:14px;border:1.5px solid rgb(123 84 84 / .25);background:#7b54540a;border-radius:18px;cursor:pointer;color:#7b5454;font-family:inherit;font-size:.78rem;font-weight:500;letter-spacing:.02em;transition:background .2s,border-color .2s}.wall-visualizer__step-back:hover{background:#7b54541a;border-color:#7b5454}.wall-visualizer__step-back svg{width:14px;height:14px}.wall-visualizer__steps-indicator{display:flex;gap:8px;margin-bottom:24px}.wall-visualizer__step-dot{width:32px;height:4px;border-radius:2px;background:#ddd;transition:background .3s}.wall-visualizer__step-dot.active{background:#7b5454}.wall-visualizer__step-dot.completed{background:#dde7c2}.wall-visualizer__mode-cards{display:grid;grid-template-columns:1fr 1fr;gap:16px;max-width:520px}.wall-visualizer__mode-card{display:flex;flex-direction:column;align-items:center;gap:10px;padding:36px 24px;border:2px solid rgb(0 0 0 / .1);border-radius:8px;background:#fff;cursor:pointer;transition:border-color .2s,background .2s,transform .15s;font-family:inherit}.wall-visualizer__mode-card:hover{border-color:#7b5454;background:#7b545408;transform:translateY(-2px)}.wall-visualizer__mode-card svg{width:40px;height:40px;color:#7b5454}.wall-visualizer__mode-card-title{font-size:1rem;font-weight:600;color:#333}.wall-visualizer__mode-card-desc{font-size:.8rem;color:#888;text-align:center}.wall-visualizer__room-picker{display:flex;align-items:center;gap:10px;margin-bottom:16px;flex-wrap:wrap}.wall-visualizer__room-picker-label{font-size:.85rem;font-weight:500;color:#555;margin:0}.wall-visualizer__room-select{appearance:none;-webkit-appearance:none;padding:9px 36px 9px 16px;border:1.5px solid rgb(0 0 0 / .15);border-radius:8px;background:#fff url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%237b5454' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6 9 12 15 18 9'/%3e%3c/svg%3e") no-repeat right 12px center;background-size:14px;font-family:inherit;font-size:.9rem;font-weight:500;color:#333;cursor:pointer;min-width:220px;transition:border-color .2s,box-shadow .2s}.wall-visualizer__room-select:hover{border-color:#7b5454}.wall-visualizer__room-select:focus{outline:none;border-color:#7b5454;box-shadow:0 0 0 3px #7b545426}.wall-visualizer__room-canvas-wrap{display:inline-block;max-width:100%}.wall-visualizer__room-canvas{display:block;max-width:100%;max-height:60vh;border-radius:6px;box-shadow:0 2px 12px #00000014;cursor:grab;touch-action:none}.wall-visualizer__room-canvas:active{cursor:grabbing}.wall-visualizer__wall-buttons{display:flex;gap:8px;margin-top:14px;justify-content:center;flex-wrap:wrap}.wall-visualizer__wall-btn{padding:7px 18px;border:1.5px solid rgb(0 0 0 / .12);border-radius:20px;background:#fff;font-family:inherit;font-size:.82rem;font-weight:500;color:#666;cursor:pointer;transition:all .2s}.wall-visualizer__wall-btn:hover{border-color:#7b5454;color:#7b5454}.wall-visualizer__wall-btn.active{background:#7b5454;border-color:#7b5454;color:#fff}.wall-visualizer__upload-area{border:2px dashed rgb(0 0 0 / .15);border-radius:8px;padding:60px 32px;text-align:center;cursor:pointer;transition:border-color .2s,background .2s}.wall-visualizer__upload-area:hover,.wall-visualizer__upload-area.dragover{border-color:#7b5454;background:#7b545408}.wall-visualizer__upload-area svg{width:48px;height:48px;color:#999;margin-bottom:12px}.wall-visualizer__upload-text{font-size:1rem;color:#555;margin:0 0 8px}.wall-visualizer__upload-hint{font-size:.8rem;color:#999}.wall-visualizer__upload-input{display:none}.wall-visualizer__canvas-wrap{position:relative;display:inline-block;max-width:100%;cursor:crosshair}.wall-visualizer__canvas{display:block;max-width:100%;max-height:65vh;border-radius:4px}.wall-visualizer__corner{position:absolute;width:16px;height:16px;border-radius:50%;background:#7b5454;border:2px solid #fff;transform:translate(-50%,-50%);pointer-events:none;z-index:2;box-shadow:0 1px 4px #0000004d}.wall-visualizer__edge{position:absolute;height:22px;background:transparent;cursor:grab;touch-action:none;z-index:2;border-radius:11px;transition:background .15s}.wall-visualizer__edge:hover{background:#7b54541f}.wall-visualizer__edge:active{cursor:grabbing}.wall-visualizer__edge-grip{position:absolute;left:50%;top:50%;width:32px;height:10px;background:#7b5454;border:2px solid #fff;border-radius:5px;transform:translate(-50%,-50%);box-shadow:0 1px 4px #0000004d;pointer-events:none}.wall-visualizer__edge:hover .wall-visualizer__edge-grip{background:#634343}.wall-visualizer__corner-label{position:absolute;top:-22px;left:50%;transform:translate(-50%);background:#7b5454;color:#fff;font-size:.65rem;padding:1px 6px;border-radius:3px;white-space:nowrap}.wall-visualizer__corner--exclusion{width:18px;height:18px;border-radius:3px;background:#6b8e4e;border:2.5px solid #fff;box-shadow:0 0 0 1px #0006,0 2px 6px #00000059}.wall-visualizer__corner--exclusion-pending{background:#ee7a2a;border-color:#fff;box-shadow:0 0 0 1px #00000080,0 0 0 4px #ee7a2a40,0 2px 8px #0006;animation:wv-excl-pulse 1.4s ease-in-out infinite}@keyframes wv-excl-pulse{0%,to{box-shadow:0 0 0 1px #00000080,0 0 0 4px #ee7a2a40,0 2px 8px #0006}50%{box-shadow:0 0 0 1px #00000080,0 0 0 8px #ee7a2a26,0 2px 8px #0006}}.wall-visualizer__excl-label{position:absolute;top:-20px;left:50%;transform:translate(-50%);background:#ee7a2a;color:#fff;font-size:.62rem;font-weight:600;padding:1px 6px;border-radius:3px;white-space:nowrap;box-shadow:0 1px 3px #0000004d}.wall-visualizer__result-wrap{text-align:center}.wall-visualizer__result-canvas{max-width:100%;max-height:65vh;border-radius:4px;box-shadow:0 2px 12px #0000001a;cursor:grab;touch-action:none}.wall-visualizer__result-canvas:active{cursor:grabbing}.wall-visualizer__actions{display:flex;gap:12px;margin-top:20px;justify-content:center;flex-wrap:wrap}.wall-visualizer__btn{padding:10px 24px;border:none;border-radius:var(--rounded, 4px);font-family:inherit;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s}.wall-visualizer__btn--primary{background:#7b5454;color:#fff}.wall-visualizer__btn--primary:hover{background:#634343}.wall-visualizer__btn--secondary{background:#eee;color:#333}.wall-visualizer__btn--secondary:hover{background:#ddd}.wall-visualizer__btn:disabled{opacity:.4;cursor:not-allowed}.wall-visualizer__pan-controls{display:flex;align-items:center;gap:10px;margin-top:14px;justify-content:center}.wall-visualizer__pan-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;background:#fff;border:1.5px solid rgb(0 0 0 / .12);border-radius:20px;font-family:inherit;font-size:.82rem;font-weight:500;color:#555;cursor:pointer;transition:border-color .18s,color .18s,background .18s}.wall-visualizer__pan-btn:hover{border-color:#7b5454;color:#7b5454}.wall-visualizer__pan-btn svg{width:14px;height:14px}.wall-visualizer__room-canvas-wrap{position:relative}.wall-visualizer__pan-hint{position:absolute;left:50%;bottom:10px;transform:translate(-50%);display:inline-flex;align-items:center;gap:6px;padding:6px 12px;background:#0000008c;color:#fff;font-size:.72rem;font-weight:500;letter-spacing:.01em;border-radius:14px;pointer-events:none;opacity:0;animation:wv-pan-hint 4.5s ease .6s 1 forwards}.wall-visualizer__pan-hint svg{width:13px;height:13px}@keyframes wv-pan-hint{0%{opacity:0;transform:translate(-50%,6px)}10%{opacity:1;transform:translate(-50%)}80%{opacity:1;transform:translate(-50%)}to{opacity:0;transform:translate(-50%,-2px)}}.wall-visualizer__image-picker{margin-bottom:16px}.wv-picker-label{font-size:.78rem;font-weight:500;text-transform:uppercase;letter-spacing:.05em;color:#888;margin:0 0 8px}.wv-picker-strip{display:flex;gap:8px;flex-wrap:wrap}.wv-picker-thumb{width:60px;height:60px;padding:0;border:2px solid transparent;border-radius:4px;overflow:hidden;cursor:pointer;background:none;opacity:.55;transition:border-color .2s,opacity .2s}.wv-picker-thumb img{width:100%;height:100%;object-fit:cover;display:block;pointer-events:none}.wv-picker-thumb:hover{opacity:1;border-color:#bbb}.wv-picker-thumb.active{border-color:#7b5454;opacity:1}.vis-on-wall-btn{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;padding:9px 12px;margin-top:8px;background:transparent;border:1.5px solid #7b5454;border-radius:var(--rounded, 4px);color:#7b5454;font-family:var(--font-body-family, "Jost", sans-serif);font-size:.78rem;font-weight:500;letter-spacing:.06em;text-transform:uppercase;text-decoration:none;cursor:pointer;transition:background .2s,color .2s;box-sizing:border-box}.vis-on-wall-btn:hover{background:#7b5454;color:#fff}.vis-on-wall-btn svg{width:14px;height:14px;flex-shrink:0}@media(max-width:767px){.wall-visualizer__modal-content{padding:20px 16px;width:100vw;max-width:100vw;height:100vh;max-height:100vh;border-radius:0}.wall-visualizer__mode-cards{grid-template-columns:1fr;max-width:100%}.wall-visualizer__room-select{min-width:0;flex:1}.wall-visualizer__help span{display:none}.wall-visualizer__help{padding:8px}.wv-tut-step{grid-template-columns:32px 1fr;grid-template-areas:"num body" "anim anim";row-gap:10px}.wv-tut-step .wv-tut-num{grid-area:num}.wv-tut-step .wv-tut-body{grid-area:body}.wv-tut-step .wv-tut-anim{grid-area:anim;max-width:100%}}
/*# sourceMappingURL=/cdn/shop/t/8/assets/wall-visualizer.css.map */
