.ww-editor{clear:both;padding:20px;border:1px solid #ddd;border-radius:8px;margin:20px 0;background:#faf9f5}.ww-editor label{display:block;margin:12px 0}.ww-editor input[type=range]{display:block;width:100%;margin-top:8px}.ww-editor output{float:right;font-variant-numeric:tabular-nums}.ww-canvas{max-width:100%;height:auto;border:1px solid #ddd;margin:12px 0}.ww-editor [hidden]{display:none!important}.ww-status{font-size:.9em}.ww-editor button{margin:10px 0}
/* Explicit range styling survives theme resets and invisible native controls. */
.ww-editor .ww-controls input[type="range"]{
 -webkit-appearance:none!important;appearance:none!important;
 display:block!important;visibility:visible!important;opacity:1!important;
 width:100%!important;max-width:none!important;min-width:0!important;
 height:36px!important;min-height:36px!important;padding:0!important;
 margin:8px 0 16px!important;border:0!important;border-radius:0!important;
 background:transparent!important;box-shadow:none!important;cursor:pointer;
 position:relative!important;transform:none!important;clip:auto!important;
 clip-path:none!important;overflow:visible!important;accent-color:#174f75;
}
.ww-editor .ww-controls input[type="range"]::-webkit-slider-runnable-track{
 -webkit-appearance:none!important;appearance:none!important;
 height:8px!important;background:#aebfca!important;
 border:1px solid #6b8293!important;border-radius:999px!important;box-shadow:none!important;
}
.ww-editor .ww-controls input[type="range"]::-webkit-slider-thumb{
 -webkit-appearance:none!important;appearance:none!important;
 width:24px!important;height:24px!important;min-width:24px!important;
 margin-top:-9px!important;border:2px solid #fff!important;border-radius:50%!important;
 background:#174f75!important;box-shadow:0 0 0 1px #174f75!important;
 opacity:1!important;visibility:visible!important;cursor:default;
}
.ww-editor .ww-controls input[type="range"]::-moz-range-track{
 height:8px!important;background:#aebfca!important;
 border:1px solid #6b8293!important;border-radius:999px!important;box-shadow:none!important;
}
.ww-editor .ww-controls input[type="range"]::-moz-range-thumb{
 width:24px!important;height:24px!important;border:2px solid #fff!important;
 border-radius:50%!important;background:#174f75!important;
 box-shadow:0 0 0 1px #174f75!important;opacity:1!important;visibility:visible!important;cursor:default;
}
.ww-editor .ww-controls input[type="range"]:focus-visible{
 outline:3px solid #174f75!important;outline-offset:3px!important;
}
@media(forced-colors:active){
 .ww-editor .ww-controls input[type="range"]{forced-color-adjust:auto;}
}
/* Keep theme zoom, lightbox and variation-image code away from the final canvas. */
.ww-editor .ww-size{display:block;width:100%;padding:10px;margin-top:6px;background:#fff;color:#172b3a;border:1px solid #6b8293;border-radius:4px;font-size:16px}
/* Same gallery-slot overlay strategy as the engraving plugin: preserve slider geometry. */
.ww-show-artwork{position:relative!important;min-height:220px;}
.ww-show-artwork > :not(.ww-gallery-canvas){visibility:hidden!important;pointer-events:none!important;}
.ww-show-artwork > .ww-gallery-canvas{display:block!important;visibility:visible!important;position:absolute!important;inset:0!important;z-index:5!important;width:100%!important;height:100%!important;max-width:none!important;object-fit:contain!important;background:#fff!important;margin:0!important;}
.woocommerce-product-gallery:has(.ww-show-artwork) .woocommerce-product-gallery__trigger{visibility:hidden!important;pointer-events:none!important;}

.ww-editor .ww-framing{border:1px solid #b6c5ce;border-radius:5px;padding:12px;margin:14px 0}.ww-editor .ww-framing legend{font-weight:600;padding:0 5px}.ww-editor .ww-framing button{padding:8px 12px;cursor:pointer}
.ww-image-editor{position:relative;aspect-ratio:4/5;width:100%;min-height:220px;background:#edf0f2;overflow:hidden;isolation:isolate;}
.ww-image-editor[hidden]{display:none!important;}
.ww-show-artwork > .ww-image-editor{object-fit:initial!important;background:#edf0f2!important;aspect-ratio:auto;}
.ww-paper{position:absolute;touch-action:none;cursor:default;outline:2px solid #174f75;outline-offset:-2px;}
.ww-paper > canvas.ww-canvas{display:block!important;width:100%!important;height:100%!important;max-width:none!important;border:0!important;margin:0!important;pointer-events:none;}
.ww-image-tools{position:static;display:flex;gap:6px;padding:0;margin:0;transform:none;background:none;border:0;box-shadow:none;}
.ww-image-tools button{appearance:none!important;display:block!important;min-width:40px!important;min-height:40px!important;padding:6px 10px!important;background:#174f75!important;color:#fff!important;border:1px solid #fff!important;border-radius:4px!important;font:600 16px/1.2 sans-serif!important;cursor:pointer!important;margin:0!important;}
.ww-image-tools button::after,.ww-resize-handle::after{display:none!important;}
.ww-image-tip{position:absolute;z-index:9;bottom:8px;left:50%;transform:translateX(-50%);max-width:94%;width:max-content;padding:5px 8px;background:rgba(255,255,255,.94);color:#15374e;border-radius:4px;font:12px/1.4 sans-serif;pointer-events:none;}
.ww-paper .ww-resize-handle{appearance:none!important;display:block!important;position:absolute!important;z-index:10!important;width:8px!important;height:8px!important;min-width:8px!important;min-height:8px!important;padding:0!important;margin:0!important;background:#fff!important;border:1px solid #174f75!important;border-radius:1px!important;font-size:0!important;line-height:0!important;box-shadow:none!important;touch-action:none;}
.ww-nw{top:2px!important;left:2px!important;cursor:default!important;}.ww-ne{top:2px!important;right:2px!important;cursor:default!important;}.ww-sw{bottom:2px!important;left:2px!important;cursor:default!important;}.ww-se{bottom:2px!important;right:2px!important;cursor:default!important;}
.ww-image-tools button:focus-visible,.ww-resize-handle:focus-visible{outline:3px solid #d57500!important;outline-offset:2px!important;}

.ww-editor .ww-panel{display:block;min-width:0;border:1px solid #8297a7;border-radius:.5rem;background:#f1f6f9;color:#172c3c;margin:12px 0;}
.ww-editor .ww-panel > summary{display:list-item!important;padding:.7rem;font-weight:700;cursor:pointer;list-style:disclosure-closed inside;}
.ww-editor .ww-panel[open] > summary{list-style-type:disclosure-open;}
.ww-editor .ww-panel:not([open]) > .ww-panel-body{display:none!important;}
.ww-editor .ww-panel-body{padding:0 .7rem .7rem;}
/* Prominent native photo picker across Chromium, Firefox and Safari. */
.ww-editor input.ww-file[type="file"]{display:block!important;width:100%!important;margin-top:8px!important;color:#172c3c!important;font-size:15px!important;}
.ww-editor input.ww-file[type="file"]::file-selector-button{appearance:none!important;background:#174f75!important;color:#fff!important;font-weight:800!important;font-size:16px!important;line-height:1.3!important;border:2px solid #103d5d!important;border-radius:5px!important;padding:12px 20px!important;margin-right:12px!important;cursor:pointer!important;opacity:1!important;box-shadow:none!important;}
.ww-editor input.ww-file[type="file"]::-webkit-file-upload-button{-webkit-appearance:none!important;background:#174f75!important;color:#fff!important;font-weight:800!important;font-size:16px!important;line-height:1.3!important;border:2px solid #103d5d!important;border-radius:5px!important;padding:12px 20px!important;margin-right:12px!important;cursor:pointer!important;opacity:1!important;box-shadow:none!important;}
.ww-editor input.ww-file[type="file"]:hover::file-selector-button{background:#103d5d!important;}
.ww-editor input.ww-file[type="file"]:hover::-webkit-file-upload-button{background:#103d5d!important;}
.ww-editor input.ww-file[type="file"]:focus-visible{outline:3px solid #d57500!important;outline-offset:4px!important;border-radius:5px;}
.ww-follow-preview{position:fixed!important;z-index:99990;display:flex;flex-direction:column;box-sizing:border-box;padding:8px;background:#fff;border:1px solid #8297a7;border-radius:7px;box-shadow:0 4px 20px #0003;pointer-events:none;}
.ww-follow-preview[hidden]{display:none!important;}
.ww-follow-title{flex:0 0 auto;padding:0 0 5px;color:#174f75;font:600 13px/1.3 sans-serif;text-align:center;}
.ww-follow-preview>canvas{display:block!important;flex:0 0 auto;min-height:0;min-width:0;width:100%!important;height:auto!important;object-fit:contain;margin:0!important;border:0!important;}
@media(max-width:899px){.ww-editor{padding-bottom:calc(20px + var(--ww-follow-bottom,0px));}.ww-editor input,.ww-editor select,.ww-editor button,.ww-editor summary{scroll-margin-bottom:220px;}}
.ww-follow-title{font-size:12px;line-height:16px;padding-bottom:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
/* Match collapsible image and watercolor controls to Choose File. */
.ww-editor .ww-panel>summary{display:list-item!important;box-sizing:border-box;background:#174f75!important;color:#fff!important;font-weight:800!important;font-size:16px!important;line-height:1.3!important;border:2px solid #103d5d!important;border-radius:5px!important;padding:12px 20px!important;cursor:pointer!important;opacity:1!important;box-shadow:none!important;list-style-position:inside;}
.ww-editor .ww-panel>summary:hover{background:#103d5d!important;}
.ww-editor .ww-panel>summary:focus-visible{outline:3px solid #d57500!important;outline-offset:3px!important;}
.ww-editor .ww-panel>summary::marker{color:#fff;}
.ww-editor .ww-panel>summary::-webkit-details-marker{color:#fff;}
/* Always-available help trigger; instructions close as editing resumes. */
.weston-editor-help{position:fixed!important;right:14px!important;z-index:100010!important;max-width:calc(100vw - 28px);font:15px/1.5 sans-serif;color:#172c3c;}
.weston-editor-help-button{display:block!important;margin:0 0 0 auto!important;padding:11px 16px!important;background:#174f75!important;color:#fff!important;border:2px solid #103d5d!important;border-radius:6px!important;font:700 15px/1.3 sans-serif!important;cursor:pointer!important;box-shadow:0 2px 10px #0003;}
.weston-editor-help-box{box-sizing:border-box;width:360px;max-width:calc(100vw - 28px);overflow:auto;margin-top:8px;padding:16px;background:#fff;border:1px solid #8297a7;border-radius:7px;box-shadow:0 5px 22px #0004;}
.weston-editor-help-box[hidden]{display:none!important;}
.weston-editor-help-box h3{font:700 18px/1.3 sans-serif!important;color:#174f75;margin:0 50px 12px 0!important;}
.weston-editor-help-box ol{margin:0!important;padding-left:22px!important;list-style:decimal!important;}
.weston-editor-help-box li{margin:0 0 10px!important;font:15px/1.5 sans-serif!important;}
.weston-editor-help-close{float:right;background:#fff!important;color:#174f75!important;border:1px solid #174f75!important;border-radius:4px;padding:4px 7px!important;font:600 12px/1.3 sans-serif!important;cursor:pointer;}
.weston-editor-help-button::after,.weston-editor-help-close::after{display:none!important;}
.weston-editor-help button:focus-visible{outline:3px solid #d57500!important;outline-offset:3px!important;}
.ww-erase-panel canvas[data-mask-canvas]{display:block!important;max-width:100%!important;width:100%!important;height:auto!important;pointer-events:auto!important;touch-action:none!important;user-select:none;-webkit-user-select:none;cursor:default!important;background-color:#ddd;background-image:linear-gradient(45deg,#aaa 25%,transparent 25%),linear-gradient(-45deg,#aaa 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#aaa 75%),linear-gradient(-45deg,transparent 75%,#aaa 75%);background-size:16px 16px;background-position:0 0,0 8px,8px -8px,-8px 0;}
.ww-editor .weston-refine-buttons{display:flex;flex-wrap:wrap;gap:6px;}
.ww-editor .weston-refine-buttons button{padding:8px 10px;background:#174f75;color:#fff;border:2px solid #174f75;border-radius:4px;cursor:pointer;font-weight:700;}
.ww-editor .weston-refine-buttons button[aria-pressed="true"]{background:#fff;color:#174f75;outline:2px solid #174f75;outline-offset:1px;}
.ww-follow-preview.ww-follow-brush-active{pointer-events:auto;}
.ww-follow-preview.ww-follow-brush-active canvas,.ww-paper.weston-brush-active,.ww-paper.weston-brush-active .ww-resize-handle{cursor:default!important;touch-action:none!important;}

/* Screen-only paper: never drawn into the production/export canvas. */
.ww-paper::after,.ww-follow-preview::after{
 content:"";position:absolute;pointer-events:none!important;
 background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22180%22%20height%3D%22180%22%3E%3Cfilter%20id%3D%22paper%22%3E%3CfeTurbulence%20type%3D%22fractalNoise%22%20baseFrequency%3D%220.62%22%20numOctaves%3D%223%22%20stitchTiles%3D%22stitch%22%2F%3E%3CfeColorMatrix%20type%3D%22saturate%22%20values%3D%220%22%2F%3E%3C%2Ffilter%3E%3Crect%20width%3D%22100%25%22%20height%3D%22100%25%22%20filter%3D%22url%28%23paper%29%22%20opacity%3D%220.5%22%2F%3E%3C%2Fsvg%3E"),linear-gradient(130deg,#fffdf7 0%,#eee7d9 48%,#fffdf8 100%);
 background-size:180px 180px,100% 100%;background-repeat:repeat,no-repeat;
 mix-blend-mode:multiply;opacity:.3;
}
.ww-paper::after{inset:0;z-index:2;}
.ww-follow-preview::after{inset:28px 8px 8px;z-index:2;}

/* Visible original-photo thumbnail immediately beside the native Choose File button. */
.ww-editor .ww-upload-row{display:flex!important;align-items:center!important;gap:10px!important;flex-wrap:wrap!important;margin-top:8px!important;}
.ww-editor .ww-upload-row input.ww-file[type="file"]{width:140px!important;flex:0 0 140px!important;max-width:100%!important;margin:0!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important;color:transparent!important;font-size:0!important;overflow:hidden!important;}
.ww-editor .ww-upload-row input.ww-file::file-selector-button{margin-right:0!important;}
.ww-editor .ww-upload-row input.ww-file::-webkit-file-upload-button{margin-right:0!important;}
.ww-editor img.ww-upload-thumbnail{display:block!important;width:64px!important;height:64px!important;flex:0 0 64px!important;object-fit:contain!important;border:1px solid #b6c5ce!important;border-radius:4px!important;background:#fff!important;padding:2px!important;margin:0!important;box-sizing:border-box!important;}
.ww-editor img.ww-upload-thumbnail[hidden]{display:none!important;}
.ww-editor .ww-upload-filename{flex:1 1 100px;min-width:0;color:#172c3c;font-size:14px;overflow-wrap:anywhere;}

.ww-editor .ww-phone-upload{margin:12px 0;padding:12px;border:1px solid #b6c5ce;border-radius:6px;background:#fff;}
.ww-editor .ww-phone-start{background:#174f75!important;color:#fff!important;border:2px solid #103d5d!important;border-radius:5px!important;padding:10px 14px!important;font:700 15px/1.3 sans-serif!important;cursor:pointer;}
.ww-editor .ww-phone-pair{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:12px;}
.ww-editor .ww-phone-pair[hidden]{display:none!important;}
.ww-editor img.ww-phone-qr{display:block!important;width:224px!important;max-width:100%!important;height:auto!important;object-fit:contain;background:#fff;padding:0!important;border:0!important;image-rendering:pixelated;}
.ww-editor .ww-phone-pair p{flex:1 1 140px;margin:0;}
.ww-editor .ww-phone-pair small{flex-basis:100%;}
.ww-editor .ww-phone-status{font-size:14px;margin:8px 0 0;}

.weston-upload-progress{margin:10px 0;color:#174f75;font-weight:600}.weston-upload-progress[hidden]{display:none!important}.weston-upload-progress progress{display:block;width:100%;height:16px;accent-color:#174f75}.weston-upload-progress small{display:block;margin-top:4px}

.ww-phone-cancel{margin-left:8px;padding:10px 12px;border:1px solid #174f75;border-radius:5px;background:#fff;color:#174f75;cursor:pointer;}
.ww-phone-cancel[hidden]{display:none!important;}

/* Alternative artist service below the editor and above the cart controls. */
.ww-artist-offer{clear:both;margin:18px 0 22px;padding:16px 0;border-top:1px solid #d4dde3;color:#303b43;font-size:15px;line-height:1.65;}
.ww-artist-offer p{margin:0 0 12px;padding:0;}
.ww-artist-offer a.ww-artist-contact{display:inline-block!important;box-sizing:border-box!important;max-width:100%!important;padding:11px 16px!important;border:2px solid #174f75!important;border-radius:5px!important;background:transparent!important;color:#174f75!important;font:700 15px/1.4 sans-serif!important;text-decoration:none!important;text-align:center!important;white-space:normal!important;}
.ww-artist-offer a.ww-artist-contact:hover{background:#eef5fa!important;}
.ww-artist-offer a.ww-artist-contact:focus-visible{outline:3px solid #d57500;outline-offset:3px;}

.ww-artist-offer .ww-artist-action{text-align:center!important;width:100%;}
