/* 0.0.36 — Single buttons plus virtual geometry, no product mockup.
 * PEPC remains the sole event, persistence and export owner. */
#sec-modal.tmc-v26-single-modal #sec-controls-col .tmc-single-panel{display:flex;flex-direction:column;gap:8px;min-width:0;color:#102b50;font-size:12px}
#sec-modal.tmc-v26-single-modal #sec-controls-col .tmc-single-panel *{box-sizing:border-box}
#sec-modal.tmc-v26-single-modal .tmc-single-guide{padding:12px 10px;border:1px solid #d5dfea;border-radius:9px;background:#f5f8fc;color:#102b50;line-height:1.45}
#sec-modal.tmc-v26-single-modal .tmc-single-guide strong{font-size:12px;font-weight:750}
#sec-modal.tmc-v26-single-modal .tmc-single-guide p{margin:6px 0 0;font-size:11px}
#sec-modal.tmc-v26-single-modal #sec-controls-col .tmc-single-upload{display:flex;align-items:center;gap:8px;min-width:0;position:relative}
#sec-modal.tmc-v26-single-modal #sec-controls-col .tmc-single-native-upload{position:absolute!important;left:0!important;top:0!important;opacity:0!important;pointer-events:none!important;width:1px!important;height:1px!important;overflow:hidden!important;margin:0!important;padding:0!important}
#sec-modal.tmc-v26-single-modal #sec-controls-col .tmc-single-native-upload #sec-image{width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important}
#sec-modal.tmc-v26-single-modal #sec-controls-col .tmc-single-choose{flex:1 1 50%;min-width:0!important;min-height:34px;padding:6px 5px;background:#414141;color:white;border-color:#414141;font-weight:650;font-size:11px;white-space:nowrap}
#sec-modal.tmc-v26-single-modal #sec-controls-col .tmc-single-upload-limit{flex:1 1 50%;display:flex;min-width:0;flex-direction:column;align-items:center;justify-content:center;color:#637083;font-size:10px;line-height:1.3;text-align:center}
#sec-modal.tmc-v26-single-modal #sec-controls-col .tmc-single-color{display:flex;flex-direction:column;gap:7px;min-width:0;margin:0}
#sec-modal.tmc-v26-single-modal #sec-controls-col .tmc-single-color-title{display:flex;justify-content:center;gap:8px;align-items:center;min-width:0}
#sec-modal.tmc-v26-single-modal #sec-controls-col .tmc-single-color-title .pepc-text-color-label{width:auto;margin:0;font-size:11px;font-weight:600;line-height:1.4}
#sec-modal.tmc-v26-single-modal #sec-controls-col .tmc-single-color-meta{display:inline-flex;align-items:center;gap:5px;white-space:nowrap;font-size:11px}
#sec-modal.tmc-v26-single-modal #sec-controls-col .tmc-single-color-meta #sec-text-color-preview{width:12px;height:12px;flex:0 0 12px;border-radius:50%}
#sec-modal.tmc-v26-single-modal #sec-controls-col .tmc-single-color .pepc-rainbow-bar{width:100%;margin:0}
#sec-modal.tmc-v26-single-modal #sec-controls-col .tmc-single-color .pepc-text-color-info{display:none}
#sec-modal.tmc-v26-single-modal #sec-controls-col .tmc-single-color-hint{display:block;position:static;width:100%;margin:0!important;text-align:center;font-size:10px;line-height:1.35;color:#637083}
#sec-modal.tmc-v26-single-modal #sec-controls-col .tmc-single-fields{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;align-items:start}
#sec-modal.tmc-v26-single-modal #sec-controls-col .tmc-single-fields>label{display:flex;flex-direction:column;align-items:stretch;gap:5px;min-width:0;margin:0!important;padding:0!important;font-size:12px;line-height:18px}
#sec-modal.tmc-v26-single-modal #sec-controls-col .tmc-single-fields .pepc-text-input-caption,#sec-modal.tmc-v26-single-modal #sec-controls-col .tmc-single-font-caption{display:block;font-size:12px;line-height:18px;min-height:18px;margin:0!important;font-weight:500}
#sec-modal.tmc-v26-single-modal #sec-controls-col .tmc-single-fields br{display:none!important}
#sec-modal.tmc-v26-single-modal #sec-controls-col .tmc-single-fields input,#sec-modal.tmc-v26-single-modal #sec-controls-col .tmc-single-fields select{width:100%;height:36px;min-height:36px;margin:0;border:1px solid #cbd5e1;border-radius:6px;padding:5px 6px;font-size:12px}
#sec-modal.tmc-v26-single-modal #sec-controls-col .tmc-single-hidden-warning,#sec-modal.tmc-v26-single-modal #sec-controls-col .tmc-single-help .pepc-red-print-warning{display:none!important}
#sec-modal.tmc-v26-single-modal #sec-controls-col .tmc-single-internal-add{display:none!important}
#sec-modal.tmc-v26-single-modal #sec-controls-col .tmc-single-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}
#sec-modal.tmc-v26-single-modal #sec-controls-col .tmc-single-row .sec-btn{width:100%;min-width:0;min-height:41px;padding:7px 5px;border-radius:5px;background:#414141;border-color:#414141;color:#fff;font-weight:650;font-size:12px;white-space:normal;line-height:1.25;text-align:center;display:flex!important;align-items:center!important;justify-content:center!important;gap:6px}
#sec-modal.tmc-v26-single-modal #sec-controls-col .tmc-single-center-row{grid-template-columns:repeat(2,minmax(0,1fr))}
#sec-modal.tmc-v26-single-modal #sec-controls-col .tmc-single-row .tmc-single-orient:disabled{background:#969696!important;border-color:#969696!important;color:#fff!important;opacity:.7;cursor:not-allowed}
#sec-modal.tmc-v26-single-modal #sec-controls-col .tmc-single-bottom-row{grid-template-columns:60fr 40fr}
#sec-modal.tmc-v26-single-modal #sec-controls-col .tmc-single-bottom-row #sec-clear{background:#e64046!important;border-color:#e64046!important;color:#fff!important;font-weight:750}
#sec-modal.tmc-v26-single-modal #sec-controls-col .tmc-single-done-row{grid-template-columns:1fr;border-top:1px solid #e6edf5;padding-top:10px}
#sec-modal.tmc-v26-single-modal #sec-controls-col .tmc-single-done-row #sec-done-btn{background:#32e442!important;border-color:#20bc30!important;color:#102b50!important;min-height:48px;font-size:15px;font-weight:800}
#sec-modal.tmc-v26-single-modal #sec-controls-col .tmc-single-row .tmc-single-icon{width:16px;height:16px;flex:0 0 16px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
#sec-modal.tmc-v26-single-modal #sec-controls-col .tmc-single-help{margin-top:4px;padding-top:10px;border-top:1px solid #e6edf5}
#sec-modal.tmc-v26-single-modal #sec-modal-footer{display:none}
@media(max-width:767px){#sec-modal.tmc-v26-single-modal #sec-controls-col .tmc-single-row .sec-btn{min-height:44px;font-size:12px}}

/* Virtual editor appearance only; background outside the real Fabric canvas. */
#sec-modal.tmc-v32-virtual-single-modal #sec-preview-col{background:#626c78;}
#sec-modal.tmc-v32-virtual-single-modal #sec-preview-stage .sec-canvas-zone{border:0;background:transparent;box-shadow:0 2px 8px rgba(16,43,80,.18);border-radius:0;}

/* 0.0.36: real Fabric transforms + screen-only SVG rotated with the photo.
 * Unlike the previous floating DOM dots, coordinates always come from oCoords.
 * SVG never enters the PNG export. */
#sec-modal.tmc-v32-virtual-single-modal .tmc-single-selection-svg{position:absolute;left:0;top:0;z-index:12;display:none;overflow:visible;pointer-events:none;touch-action:none}
#sec-modal.tmc-v32-virtual-single-modal .tmc-single-selection-polygon{fill:none;stroke:#e64046;stroke-width:2.5;stroke-dasharray:7 4;vector-effect:non-scaling-stroke;pointer-events:none}
#sec-modal.tmc-v32-virtual-single-modal .tmc-single-selection-stem{stroke:#ffffff;stroke-width:2.5;vector-effect:non-scaling-stroke;pointer-events:none}
#sec-modal.tmc-v32-virtual-single-modal .tmc-single-native-handle{pointer-events:all;touch-action:none;cursor:nwse-resize}
#sec-modal.tmc-v32-virtual-single-modal .tmc-native-ml,#sec-modal.tmc-v32-virtual-single-modal .tmc-native-mr{cursor:ew-resize}
#sec-modal.tmc-v32-virtual-single-modal .tmc-native-mt,#sec-modal.tmc-v32-virtual-single-modal .tmc-native-mb{cursor:ns-resize}
#sec-modal.tmc-v32-virtual-single-modal .tmc-native-tr,#sec-modal.tmc-v32-virtual-single-modal .tmc-native-bl{cursor:nesw-resize}
#sec-modal.tmc-v32-virtual-single-modal .tmc-native-mtr{cursor:crosshair}
#sec-modal.tmc-v32-virtual-single-modal .tmc-single-resize-circle{fill:#ff5f5f;stroke:#ffffff;stroke-width:2.5;vector-effect:non-scaling-stroke;pointer-events:none}
#sec-modal.tmc-v32-virtual-single-modal .tmc-single-rotation-circle{fill:#ffffff;stroke:#102b50;stroke-width:2.5;vector-effect:non-scaling-stroke;pointer-events:none}
#sec-modal.tmc-v32-virtual-single-modal .tmc-single-rotation-icon{fill:none;stroke:#102b50;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke;pointer-events:none}
#sec-modal.tmc-v32-virtual-single-modal .tmc-single-hit-target{fill:transparent;stroke:none;pointer-events:all}

/* 0.0.48 — native wholesale guard message, only on variation product. */
/* 0.1.26: above the Personalise trigger; never under Add to cart. */
.tmc-wholesale-warning:not([hidden]){display:block;clear:both;width:100%;box-sizing:border-box;padding:10px 12px;border:1px solid #e7b36a;background:#fff8e8;border-radius:5px;color:#713b00;font-size:13px;line-height:1.45;margin:12px 0}

/* 0.0.51: keep transient PEPC default canvas out of sight while a wholesale variant is sized. */
#sec-modal.tmc-v26-single-modal.tmc-wholesale-opening #sec-preview-stage{visibility:hidden}

/* 0.0.53: do not display a transitional stretched canvas on orientation change. */
#sec-modal.tmc-v26-single-modal.tmc-wholesale-changing-orientation #sec-preview-stage{visibility:hidden}

/* Orientation layout mask, exactly two independent rectangular Singles. */
#sec-modal.tmc-v26-single-modal.tmc-rect-changing-orientation #sec-preview-stage{visibility:hidden}
#sec-modal.tmc-v26-single-modal .tmc-rect-orientation-info:not([hidden]){font-size:12px;color:#304665;line-height:1.35;margin:4px 0 9px}

/* 0.0.55: compact Messenger-like orientation bubble next to Pion/Poziom.
   Popup is absolutely positioned, never changes button rows. */
#sec-modal.tmc-v26-single-modal .tmc-orient-anchor {position:relative;}
#sec-modal.tmc-v26-single-modal .tmc-orient-bubble:not([hidden]) {
  position:absolute;right:0;top:calc(100% + 9px);z-index:35;
  display:block;width:min(245px,86vw);max-width:245px;
  box-sizing:border-box;border:1px solid #d5dfea;
  border-radius:12px;background:#f5f8fc!important;color:#102b50!important;
  padding:10px 12px;margin:0;font-size:12px;font-weight:650;
  line-height:1.45;text-align:left;box-shadow:0 7px 20px #0003;
  pointer-events:none;white-space:normal;
}
#sec-modal.tmc-v26-single-modal .tmc-orient-bubble:not([hidden])::before {
  content:'';position:absolute;right:24px;top:-7px;
  width:12px;height:12px;transform:rotate(45deg);
  border-top:1px solid #d5dfea;border-left:1px solid #d5dfea;
  background:#f5f8fc;
}
/* Safe explicit in-place reset after WooCommerce variant switch. */
.tmc-wholesale-warning .tmc-wholesale-restart:not([hidden]){
  display:block;clear:both;margin:9px 0 0;padding:8px 12px;
  background:#102b50;color:#fff;border:0;border-radius:5px;
  cursor:pointer;font-weight:650;font-size:12px;
}

/* 0.0.61 — gallery preview from an existing image + CSS grey stage.
   No second canvas, no extra image encoding and no change to saved/export PNG. */
.woocommerce-product-gallery__image.tmc-gallery-preview-stage,
.wp-block-woocommerce-product-image-gallery.tmc-gallery-preview-stage {
  position:relative!important;
  background:#626c78!important;
  aspect-ratio:960 / 760;
  overflow:hidden;
}
.woocommerce-product-gallery__image.tmc-gallery-preview-stage > a {
  position:absolute!important;inset:0!important;
  width:100%!important;height:100%!important;
  display:flex!important;align-items:center!important;justify-content:center!important;
}
.woocommerce-product-gallery__image.tmc-gallery-preview-stage img[data-pepc-preview="1"],
.wp-block-woocommerce-product-image-gallery.tmc-gallery-preview-stage img[data-pepc-preview="1"] {
  display:block!important;
  width:45%!important;max-width:45%!important;
  height:auto!important;max-height:57%!important;
  object-fit:contain!important;object-position:center!important;
  flex:0 1 auto!important;margin:auto!important;padding:0!important;
  border:0!important;position:static!important;transform:none!important;
}

/* 0.0.64: ONE rainbow palette for both selected text and unselected background. */
#sec-modal.tmc-v26-single-modal #sec-controls-col .tmc-single-color-title .pepc-text-color-label { color:#102b50; }
