/* STAMPON Design Studio — isolated from Blocksy and WooCommerce. */
.stampon-ds-entry {display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:13px 0;margin:12px 0;border-top:1px solid #ece6e7;border-bottom:1px solid #ece6e7;font-size:13px}
.stampon-ds-entry-label {font-weight:800;color:#211e1e}
.stampon-ds-open {border:0!important;border-radius:11px!important;background:#e60012!important;color:white!important;padding:13px 17px!important;font-size:14px!important;font-weight:800!important;cursor:pointer}
.stampon-ds-open:disabled {opacity:.55;cursor:not-allowed}
.stampon-ds-selected {font-size:12px;color:#555}
.stampon-ds-error {color:#a90000}
.stampon-ds-locked {overflow:hidden!important}
.stampon-ds-modal,.stampon-ds-bg-modal {position:fixed;inset:0;z-index:999999;background:rgba(17,19,24,.75);overflow:auto;padding:16px;display:flex;justify-content:center;align-items:center}
.stampon-ds-modal[hidden],.stampon-ds-bg-modal[hidden],.stampon-ds-tab[hidden],.stampon-ds-controls[hidden],.stampon-ds-empty[hidden],.stampon-ds-text-control[hidden],.stampon-ds-color-control[hidden] {display:none!important}
.stampon-ds-modal *,.stampon-ds-bg-modal * {box-sizing:border-box}
.stampon-ds-dialog,.stampon-ds-bg-dialog {font-family:system-ui,-apple-system,'Segoe UI',Arial,sans-serif!important;color:#1b1d22;background:white;line-height:1.4}
.stampon-ds-dialog {width:min(1560px,100%);height:min(96vh,900px);border-radius:20px;display:flex;flex-direction:column;box-shadow:0 20px 80px rgba(0,0,0,.28);overflow:hidden}
.stampon-ds-header {display:flex;align-items:center;justify-content:space-between;background:#fff;border-bottom:1px solid #ececef;padding:12px 20px;min-height:65px}
.stampon-ds-header h2 {font-size:19px!important;line-height:1.25!important;margin:3px 0 0!important;color:#13141a!important}
.stampon-ds-kicker {font-size:10px;color:#e60012;letter-spacing:1.7px;font-weight:900}
.stampon-ds-close,.stampon-ds-bg-close {font-size:23px;border:0;background:#f6f6f8;border-radius:12px;width:41px;height:41px;cursor:pointer;color:#222}
.stampon-ds-grid {display:grid;grid-template-columns:minmax(260px,290px) minmax(350px,1fr) minmax(245px,285px);flex:1;min-height:0}
.stampon-ds-left,.stampon-ds-right {padding:16px;overflow:auto;background:#fff;min-height:0}
.stampon-ds-left {border-right:1px solid #ebedf0}
.stampon-ds-right {border-left:1px solid #ebedf0}
.stampon-ds-label {font-size:12px;font-weight:900;color:#252932;margin:8px 0 10px;display:block}
.stampon-ds-left select,.stampon-ds-left input,.stampon-ds-left textarea,.stampon-ds-right input {font:inherit!important}
.stampon-ds-zone {display:block;width:100%;padding:12px 10px;border:1px solid #d8dade!important;border-radius:9px!important;color:#131414;background:white!important;font-weight:700}
.stampon-ds-tabs {display:flex;gap:4px;margin:16px 0 12px;border-radius:10px;padding:3px;background:#f4f4f6}
.stampon-ds-tabs button {font:inherit;border:0;background:transparent;color:#5b5e64;flex:1;padding:10px 4px;border-radius:9px;font-size:11px;font-weight:800;cursor:pointer}
.stampon-ds-tabs button.active {background:#fff;color:#e60012;box-shadow:0 2px 7px rgba(0,0,0,.09)}
.stampon-ds-upload,.stampon-ds-add-text,.stampon-ds-bg-apply {display:block!important;width:100%;text-align:center;border:0!important;background:#e60012!important;color:#fff!important;border-radius:9px!important;padding:13px 7px!important;font-weight:850!important;cursor:pointer!important;font-size:13px!important}
.stampon-ds-note {font-size:11px;color:#707583;margin:10px 0 12px;line-height:1.55}
.stampon-ds-left h3 {font-size:13px!important;font-weight:900!important;margin:15px 0 10px!important}
.stampon-ds-privacy {color:#888;font-size:10px;font-weight:500}
.stampon-ds-library {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;min-height:46px;font-size:11px;color:#90929c}
.stampon-ds-library-item {display:grid;grid-template-columns:1fr auto;gap:3px;padding:6px;border:1px solid #e2e2e7;border-radius:9px;background:#fff;position:relative;overflow:hidden}
.stampon-ds-library-item img {width:100%;height:90px;object-fit:contain;background:conic-gradient(#eee 25%,#fff 0 50%,#eee 0 75%,#fff 0) 0 0/14px 14px;grid-column:span 2;border-radius:7px}
.stampon-ds-library-item small {grid-column:span 2;font-size:10px;line-height:1.2;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;color:#555}
.stampon-ds-library-item button {background:#fff;border:1px solid #d9dce3;border-radius:7px;padding:7px 5px;color:#252a34;font-weight:800;font-size:10px;cursor:pointer}
.stampon-ds-library-item button.delete {border-color:#f1c5c8;color:#cb2031}
.stampon-ds-bg-actions {margin-top:14px}
.stampon-ds-open-bg {font-size:12px;border:1px solid #ddd!important;border-radius:9px;padding:10px 13px;background:white!important;cursor:pointer}
.stampon-ds-open-bg:disabled {opacity:.45;cursor:default}
.stampon-ds-text-input {border:1px solid #ddd;width:100%;border-radius:8px;padding:12px;resize:vertical;margin-bottom:10px}
.stampon-ds-shapes {display:grid;grid-template-columns:repeat(3,1fr);gap:9px}
.stampon-ds-shapes button {font-size:36px;min-height:66px;background:#fff;border:1px solid #eee;border-radius:10px;color:#d90012;cursor:pointer}
.stampon-ds-help {background:#fcf4f4;border-radius:10px;margin-top:20px;padding:11px;font-size:11px;color:#87434a;line-height:1.55}
.stampon-ds-center {display:flex;flex-direction:column;min-width:0;padding:12px;background:#f7f8fa}
.stampon-ds-preview-top {display:flex;justify-content:space-between;align-items:center;gap:9px;color:#292a30;font-size:13px;padding:4px 7px 10px}
.stampon-ds-current-color {font-size:11px;color:#737984;text-align:right}
.stampon-ds-stage {position:relative;width:100%;flex:1;min-height:220px;background:#fff;border-radius:16px;overflow:hidden;display:flex;justify-content:center;align-items:center;touch-action:pan-y}
.stampon-ds-mockup {position:absolute;inset:0;height:100%!important;width:100%!important;object-fit:contain!important;object-position:center;pointer-events:none}
.stampon-ds-print-area {position:absolute;border:2px dashed rgba(230,0,18,.65);background:rgba(255,255,255,.035);display:flex;align-items:stretch;justify-content:stretch;touch-action:none}
.stampon-ds-canvas {display:block;width:100%!important;height:100%!important;touch-action:none;cursor:grab}
/* percentage coordinates calibrated for supplied SOL'S Imperial front/back 2500x2008 mockups */
.stampon-ds-print-area.zone-front,.stampon-ds-print-area.zone-back {width:31%;height:53%;left:34.5%;top:31%}
.stampon-ds-print-area.zone-chest_left {width:13%;height:17%;left:37%;top:32%}
.stampon-ds-print-area.zone-chest_right {width:13%;height:17%;left:50%;top:32%}
.stampon-ds-print-area.zone-sleeve_left {width:12%;height:16%;left:19%;top:29%}
.stampon-ds-print-area.zone-sleeve_right {width:12%;height:16%;left:69%;top:29%}
.stampon-ds-print-area.zone-neck_back {width:13%;height:13%;left:43.5%;top:23%}
.stampon-ds-stagefoot {padding:11px 4px 4px;color:#666f7a;font-size:11px;display:flex;justify-content:space-between;gap:10px}
.stampon-ds-stagefoot span:first-child {font-weight:800;color:#35373b}
.stampon-ds-controls {background:#fafafa;padding:12px;border-radius:10px;margin-bottom:20px}
.stampon-ds-controls label {display:block;font-size:12px;font-weight:700;margin:12px 0;color:#4e535a}
.stampon-ds-controls input[type=range] {width:100%;accent-color:#e60012;margin-top:7px;cursor:pointer}
.stampon-ds-controls input[type=color] {display:block;width:100%;height:36px;padding:0;border:1px solid #ccc;border-radius:7px;margin-top:8px}
.stampon-ds-controls input[type=text] {display:block;width:100%;margin-top:6px;border:1px solid #dedee0;border-radius:7px;padding:8px}
.stampon-ds-selected-type {font-size:13px;font-weight:900}
.stampon-ds-control-row {display:flex;gap:8px}
.stampon-ds-control-row button,.stampon-ds-clear {padding:10px 7px;border:1px solid #ddd!important;background:#fff!important;border-radius:8px!important;color:#252525!important;font-size:12px;font-weight:700;cursor:pointer}
.stampon-ds-fee-lines {min-height:65px;font-size:12px;color:#40454d}
.stampon-ds-fee-lines div {display:flex;justify-content:space-between;gap:9px;padding:8px 0;border-bottom:1px solid #eee}
.stampon-ds-total {display:flex;justify-content:space-between;align-items:center;gap:8px;border-top:1px solid #dedee4;padding:17px 0;font-size:12px;font-weight:800}
.stampon-ds-total strong {font-size:21px;color:#e60012;white-space:nowrap}
.stampon-ds-actions {display:grid;gap:9px;margin-top:12px}
.stampon-ds-save {width:100%;border:0!important;border-radius:10px!important;background:#e60012!important;color:#fff!important;font-weight:900!important;font-size:12px!important;padding:15px 7px!important;cursor:pointer}
.stampon-ds-save:disabled {opacity:.55;cursor:progress}
.stampon-ds-message {min-height:32px;padding:7px 20px;color:#53735c;font-size:12px;font-weight:600;border-top:1px solid #ececee}
.stampon-ds-message.error {color:#aa1029}
.stampon-ds-bg-dialog {border-radius:16px;padding:15px 19px;width:min(780px,98vw);max-height:90vh;overflow:auto;box-shadow:0 20px 80px #0003}
.stampon-ds-bg-head {display:flex;align-items:center;justify-content:space-between}
.stampon-ds-bg-head h3 {margin:0;font-size:20px}
.stampon-ds-bg-dialog p {font-size:12px;color:#777;line-height:1.6}
.stampon-ds-brush-tools {display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin:12px 0}
.stampon-ds-brush-tools button,.stampon-ds-bg-reset {border:1px solid #ddd;background:#fff;border-radius:8px;padding:9px 13px;font-weight:700;font-size:12px;cursor:pointer}
.stampon-ds-brush-tools button.active {background:#e60012;color:#fff}
.stampon-ds-brush-tools label {font-size:11px}
.stampon-ds-brush-canvas {max-width:100%;height:auto;max-height:58vh;display:block;margin:auto;border:1px solid #ddd;background:conic-gradient(#ddd 25%,#fff 0 50%,#ddd 0 75%,#fff 0) 0 0/20px 20px;touch-action:none;cursor:crosshair}
.stampon-ds-bg-actions-bottom {display:flex;gap:9px;justify-content:end;align-items:center;margin-top:12px}
.stampon-ds-bg-apply {width:auto!important;padding:12px 20px!important}
@media(max-width:1080px){.stampon-ds-grid {grid-template-columns:minmax(210px,245px) minmax(260px,1fr) minmax(215px,255px)}.stampon-ds-left,.stampon-ds-right{padding:12px}.stampon-ds-library-item img{height:65px}}
@media(max-width:800px){.stampon-ds-modal{padding:0;align-items:flex-start}.stampon-ds-dialog{height:100dvh;max-height:100dvh;border-radius:0}.stampon-ds-header{padding:9px 13px;min-height:55px}.stampon-ds-header h2{font-size:15px!important}.stampon-ds-grid{display:flex;flex-direction:column;overflow:auto}.stampon-ds-center{order:0;flex:none;min-height:340px;height:49vh;padding:8px}.stampon-ds-left{order:1;flex:none;overflow:visible;border:0;border-top:1px solid #eee}.stampon-ds-right{order:2;flex:none;overflow:visible;border:0;border-top:1px solid #eee}.stampon-ds-stage{min-height:250px}.stampon-ds-library{grid-template-columns:repeat(4,minmax(0,1fr))}.stampon-ds-message{flex-shrink:0;font-size:11px}.stampon-ds-entry{align-items:flex-start}}
@media(max-width:460px){.stampon-ds-center{height:43vh;min-height:310px}.stampon-ds-library{grid-template-columns:repeat(3,minmax(0,1fr))}.stampon-ds-stagefoot{font-size:10px}.stampon-ds-current-color{font-size:10px}.stampon-ds-header h2{font-size:14px!important}}

.stampon-ds-dpi-warning {font-size:11px;min-height:0;padding:3px 7px;color:#9a6100;font-weight:800}

/* v1.0.4: button above short description, visually 30% larger */
.stampon-ds-entry{clear:both;display:flex;align-items:center;flex-wrap:wrap;gap:12px;padding:16px 0;margin:16px 0}
.stampon-ds-open{font-size:18.2px!important;padding:17px 22px!important;line-height:1.35!important;min-height:56px!important;box-shadow:0 8px 18px rgba(230,0,18,.16)!important;transition:transform .15s,box-shadow .15s}
.stampon-ds-open:not(:disabled):hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(230,0,18,.23)!important}
/* Keep studio modal above Blocksy sticky navigation by moving to body and z-index */
.stampon-ds-modal,.stampon-ds-bg-modal{z-index:2147483000!important;position:fixed!important;inset:0!important}
.stampon-ds-views{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;padding:1px 5px 10px}
.stampon-ds-views button{font:inherit!important;font-size:11px!important;font-weight:800!important;background:#fff!important;color:#222!important;padding:9px 2px!important;border-radius:9px!important;border:1px solid #ddd!important;cursor:pointer}
.stampon-ds-views button.active{background:#19191d!important;color:#fff!important;border-color:#19191d!important}
.stampon-ds-stage{isolation:isolate;overflow:hidden}
.stampon-ds-print-area{overflow:visible}
.stampon-ds-selection{position:absolute;border:1.5px dashed #e60012;pointer-events:none;transform-origin:center;z-index:2}
.stampon-ds-selection[hidden]{display:none!important}
.stampon-ds-selection .sd-handle{position:absolute;z-index:3;display:grid;place-items:center;pointer-events:auto;touch-action:none;cursor:pointer;border:2px solid #fff!important;border-radius:50%!important;width:27px!important;height:27px!important;min-width:27px!important;min-height:27px!important;margin:0!important;padding:0!important;line-height:1!important;font-family:Arial,sans-serif!important;font-size:18px!important;font-weight:900!important;color:#fff!important;background:#16181e!important;box-shadow:0 2px 9px #0004;transform:translate(-50%,-50%) rotate(var(--sd-counter-rotation,0deg))}
.stampon-ds-selection .sd-rotate{left:100%;top:0;background:#e60012!important;cursor:grab}
.stampon-ds-selection .sd-resize{left:100%;top:100%;background:#e60012!important;cursor:nwse-resize}
.stampon-ds-selection .sd-plus{left:50%;top:0}
.stampon-ds-selection .sd-minus{left:50%;top:100%}
.stampon-ds-selection .sd-copy{left:0;top:0;font-size:15px!important}
.stampon-ds-selection .sd-delete{left:0;top:100%;background:#cb1729!important;font-size:24px!important}
.stampon-ds-dimension-readout{font-weight:900!important;color:#e60012!important;font-size:14px!important;margin:6px 0}
.stampon-ds-text-art:not([hidden]){padding:4px 0 8px}
.stampon-ds-text-art[hidden]{display:none!important}
.stampon-ds-text-art select{width:100%;max-width:100%;padding:9px;border:1px solid #ddd;border-radius:8px;background:#fff}
.stampon-ds-layers{display:flex;gap:5px;flex-wrap:wrap;max-height:88px;overflow:auto}
.stampon-ds-layers button{font:inherit!important;font-size:10px!important;background:#f7f7f9!important;border:1px solid #ddd!important;border-radius:8px!important;padding:7px!important;color:#252525!important;cursor:pointer}
.stampon-ds-layers button.active{background:#ffeef1!important;border-color:#e60012!important;color:#c70012!important}
.stampon-ds-price-details{border-top:1px solid #eee;padding-top:4px}
.stampon-ds-price-details>div{display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:12px;padding:8px 0}
.stampon-ds-price-details strong{white-space:nowrap}
.stampon-ds-total{background:#fff2f3;border-radius:11px;padding:14px 9px;margin-top:8px;border-top:0}
.stampon-ds-total strong{font-size:22px}
.stampon-ds-opacity-control input[type=range],.stampon-ds-text-art input[type=range]{width:100%;accent-color:#e60012}
@media(max-width:800px){.stampon-ds-open{font-size:16px!important;padding:15px 17px!important}.stampon-ds-views button{font-size:10px!important;padding:7px 1px!important}.stampon-ds-selection .sd-handle{width:28px!important;height:28px!important}}

.stampon-ds-mockup{width:auto!important;height:auto!important;object-fit:fill!important;inset:auto!important}

/* Make combined product+printing total visible without scrolling the editor on desktop */
@media(min-width:801px){.stampon-ds-right{display:flex;flex-direction:column;overflow:hidden!important}.stampon-ds-editor-scroll{flex:1;min-height:0;overflow:auto}.stampon-ds-bottom{flex:none;border-top:1px solid #eee;background:#fff;padding-top:7px}.stampon-ds-fee-lines{min-height:0;max-height:84px;overflow:auto}.stampon-ds-bottom .stampon-ds-note{margin:6px 0;font-size:10px}.stampon-ds-actions{margin-top:6px;gap:6px}.stampon-ds-save{padding:11px 6px!important}}
@media(max-width:800px){.stampon-ds-editor-scroll{overflow:visible}.stampon-ds-bottom{padding-top:10px}}

.stampon-ds-header-actions{display:flex;align-items:center;gap:5px}.stampon-ds-header-actions button{border:1px solid #e1e1e5!important;background:#f7f7f8!important;border-radius:9px!important;min-width:36px;min-height:36px;font-size:20px!important;color:#262626!important;cursor:pointer}.stampon-ds-header-actions button:disabled{opacity:.35;cursor:default}.stampon-ds-header-actions .stampon-ds-close{color:#151515!important}

/* v1.0.5 unified: print guide is not an editing boundary */
.stampon-ds-print-area{z-index:1;pointer-events:none!important;background:rgba(230,0,18,.015)}
.stampon-ds-print-area .stampon-ds-canvas{opacity:0!important;pointer-events:none!important}
.stampon-ds-stage-canvas{position:absolute!important;inset:0!important;display:block;width:100%!important;height:100%!important;z-index:2;pointer-events:auto;touch-action:none!important;cursor:grab}
.stampon-ds-selection{z-index:3;pointer-events:none}
.stampon-ds-stagefoot span:last-child{max-width:60%;text-align:right}
.stampon-ds-print-warning{font-size:11px;line-height:1.35;color:#935c00;font-weight:750;min-height:0;padding:2px 7px}
.stampon-ds-print-warning:not(:empty){background:#fff5e4;border:1px solid #f5d9aa;border-radius:8px;margin:4px 3px;padding:7px}
.stampon-ds-print-warning.error{background:#fff0f2;color:#c3162b;border-color:#f5a0af}
.stampon-ds-views{grid-template-columns:repeat(5,minmax(0,1fr))}
.stampon-ds-clip-search{margin:9px 0!important}
.stampon-ds-clip-search label{font-size:12px;font-weight:800;color:#282a2d;display:block;margin-bottom:7px}
.stampon-ds-clip-search-row{display:flex;gap:4px}
.stampon-ds-clip-q{min-width:0;width:100%;flex:1;border:1px solid #ddd!important;border-radius:9px!important;padding:10px!important;background:#fff!important;color:#222!important;font-size:13px!important}
.stampon-ds-clip-search-row button,.stampon-ds-clip-pages button{border:0!important;border-radius:8px!important;background:#e60012!important;color:#fff!important;padding:8px!important;font-size:11px!important;font-weight:850!important;cursor:pointer}
.stampon-ds-clip-pages button:disabled{opacity:.36;cursor:default}
.stampon-ds-clip-status{font-size:11px;color:#585b62;line-height:1.4;margin:8px 0}
.stampon-ds-clip-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.stampon-ds-clip-card{border:1px solid #e3e3e6;border-radius:10px;background:#fff;padding:5px;min-width:0;display:flex;flex-direction:column;gap:5px}
.stampon-ds-clip-card img{object-fit:contain;width:100%;height:85px;background:repeating-conic-gradient(#f1f1f1 0 25%,white 0 50%) 50%/12px 12px}
.stampon-ds-clip-card span{font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#4d4d4d}
.stampon-ds-clip-card button{background:#fff2f4!important;color:#bf0518!important;border:1px solid #f2c3ca!important;border-radius:7px!important;cursor:pointer;font-size:10px!important;font-weight:850!important;padding:7px!important}
.stampon-ds-clip-pages{display:flex;align-items:center;gap:7px;justify-content:space-between;font-size:10px;margin:12px 0}
@media(max-width:800px){.stampon-ds-views button{font-size:9px!important;line-height:1.2!important;min-height:38px}}
/* Keep the interior of short text boxes draggable; handles sit just outside. */
.stampon-ds-selection .sd-plus{top:-7px}
.stampon-ds-selection .sd-minus{top:calc(100% + 7px)}
.stampon-ds-selection .sd-copy{left:-6px;top:-6px}
.stampon-ds-selection .sd-delete{left:-6px;top:calc(100% + 6px)}
.stampon-ds-selection .sd-rotate{left:calc(100% + 6px);top:-6px}
.stampon-ds-selection .sd-resize{left:calc(100% + 6px);top:calc(100% + 6px)}
