/* 4-prints Aufkleber-Designer v0.6.0: aufgeräumtes, responsives Editor-Layout */
#fp-sticker-designer {
  display:block; clear:both; float:none; width:100%; max-width:none;
  box-sizing:border-box; background:#fff; color:#243247;
  border:1px solid #dbe2eb; border-radius:14px;
  padding:clamp(16px,3vw,32px); margin:30px 0;
  font-family:inherit; line-height:1.5;
}
#fp-sticker-designer *,#fp-sticker-designer *::before,#fp-sticker-designer *::after {box-sizing:border-box}
#fp-sticker-designer h3 {font-size:clamp(22px,2.1vw,30px);line-height:1.2;margin:0 0 9px;color:#223046}
#fp-sticker-designer > p {margin:0 0 18px;color:#526175}
#fp-sticker-designer .fp-sticker-grid {
  display:grid;grid-template-columns:minmax(0,0.9fr) minmax(0,1.1fr);
  align-items:start;gap:clamp(18px,3vw,32px); max-width:1160px;margin:0 auto;
}
#fp-sticker-designer .fp-sticker-controls {display:grid;gap:16px;min-width:0}
#fp-sticker-designer .fp-sticker-panel {padding:18px 20px;border:1px solid #e2e8f0;border-radius:10px;background:#fbfcfe;min-width:0}
#fp-sticker-designer h4 {font-size:17px;font-weight:700;color:#223046;line-height:1.3;margin:0 0 14px}
#fp-sticker-designer .fp-sticker-controls label{display:block;font-size:14px;font-weight:650;margin:13px 0 6px;color:#253248}
#fp-sticker-designer .fp-sticker-controls label:first-of-type{margin-top:0}
#fp-sticker-designer :is(input[type="text"],textarea,select,input[type="file"]){width:100%;max-width:100%;min-width:0;border:1px solid #c9d4e3;border-radius:6px;padding:10px 12px;background:#fff;color:#243247;font:inherit;font-size:15px}
#fp-sticker-designer textarea{min-height:90px;resize:vertical}
#fp-sticker-designer input[type="file"]{font-size:13px;padding:9px;line-height:1.4}
#fp-sticker-designer input[type="color"]{display:block;width:100%;max-width:220px;height:40px;padding:3px;border:1px solid #cbd5e1;background:#fff;border-radius:6px;cursor:pointer}
#fp-sticker-designer input[type="range"]{display:block;width:100%;height:20px;margin:12px 0 3px;accent-color:#1464c0;cursor:pointer;padding:0;background:transparent}
#fp-sticker-fontsize-label{display:inline-flex;align-items:center;justify-content:center;min-width:42px;padding:2px 8px;border:1px solid #d9e1eb;border-radius:5px;background:white;color:#243247;font-weight:600;margin-top:3px}
#fp-sticker-designer .fp-sticker-buttons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:14px}
#fp-sticker-designer button[type="button"]{display:inline-flex;align-items:center;justify-content:center;width:auto;min-width:0;max-width:100%;margin:8px 0 0;padding:10px 14px;min-height:41px;font-size:14px;font-weight:650;line-height:1.3;text-align:center;border:1px solid #b6c7dd;border-radius:7px;background:#f2f6fb;color:#1d426d;box-shadow:none;opacity:1;cursor:pointer;white-space:normal;transition:background .15s ease}
#fp-sticker-designer button[type="button"]:hover{background:#e3ecf9;color:#10375f}
#fp-sticker-designer button[type="button"]:focus-visible{outline:3px solid #80b4f3;outline-offset:2px}
#fp-sticker-designer .fp-sticker-buttons button{width:100%;margin:0}
#fp-sticker-designer #fp-sticker-addtext{background:#1e5c9b;color:#fff;border-color:#1e5c9b}
#fp-sticker-designer #fp-sticker-addtext:hover{background:#144878;color:#fff}
#fp-sticker-designer #fp-sticker-delete,#fp-sticker-designer #fp-sticker-remove-image{background:#fff;color:#a12c31;border-color:#e6c5c7}
#fp-sticker-designer #fp-sticker-delete:hover,#fp-sticker-designer #fp-sticker-remove-image:hover{background:#fff1f2}
#fp-sticker-designer .fp-sticker-panel > p{margin:10px 0 4px}
#fp-sticker-designer .fp-sticker-hint,#fp-sticker-designer .fp-sticker-panel small{display:block;font-size:13px;color:#526175;line-height:1.55;margin:9px 0}
#fp-sticker-designer #fp-sticker-bgcolors{padding:12px;margin-top:10px;background:#f0f4f9;border:1px solid #e2e8f0;border-radius:8px}
#fp-sticker-designer #fp-sticker-bgcolors label:first-child{margin-top:0}
#fp-sticker-designer #fp-sticker-size-display{margin-top:7px;padding:12px 14px;border:1px solid #a8d8bd;border-radius:7px;background:#ebf8f0;color:#146035;font-size:15px;font-weight:700}
#fp-sticker-designer #fp-sticker-size-display.fp-sticker-size-missing{border-color:#efcd8d;background:#fff7e6;color:#805200}
#fp-sticker-designer [hidden]{display:none!important}
#fp-sticker-designer .fp-sticker-preview{min-width:0;text-align:center}
#fp-sticker-designer .fp-sticker-preview-inner{position:sticky;top:24px;border:1px solid #e2e8f0;border-radius:10px;background:#f9fbfe;padding:18px;}
#fp-sticker-designer .fp-sticker-preview h4{text-align:left}
#fp-sticker-designer canvas#fp-sticker-canvas{display:block;width:100%;max-width:470px;height:auto;aspect-ratio:1;margin:0 auto;background:#eef1f5;border:1px solid #d5dbe4;border-radius:9px;touch-action:none;cursor:move}
#fp-sticker-designer .fp-sticker-preview p{font-size:13px;color:#526175;line-height:1.5;margin:9px 0 14px}
#fp-sticker-designer button#fp-sticker-confirm{margin:4px auto 0;min-height:48px;background:#174d85;color:#fff;border:1px solid #174d85;font-size:15px;font-weight:700;padding:12px 20px}
#fp-sticker-designer button#fp-sticker-confirm:hover{background:#103a67;color:#fff}
#fp-sticker-designer #fp-sticker-status{padding:12px 14px;margin-top:13px;background:#fff5e2;color:#805200;border-radius:7px;font-size:14px;line-height:1.5}
#fp-sticker-designer #fp-sticker-status.fp-sticker-ready{background:#e7f7ec;color:#166036}
@media(max-width:880px){#fp-sticker-designer .fp-sticker-grid{grid-template-columns:1fr}#fp-sticker-designer .fp-sticker-preview-inner{position:static}#fp-sticker-designer .fp-sticker-preview{grid-row:1}#fp-sticker-designer canvas#fp-sticker-canvas{max-width:420px}}
@media(max-width:520px){#fp-sticker-designer{padding:15px;border-radius:10px}#fp-sticker-designer .fp-sticker-panel,#fp-sticker-designer .fp-sticker-preview-inner{padding:14px}#fp-sticker-designer .fp-sticker-buttons{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* v0.6: Logo-Upload im unmittelbaren Vorschau-Bereich statt am Ende der linken Werkzeugspalte */
#fp-sticker-designer .fp-sticker-preview-inner {position:static;}
#fp-sticker-designer .fp-sticker-upload-panel {margin:16px 0 18px;text-align:left;background:#fff;padding:16px 18px;}
#fp-sticker-designer .fp-sticker-upload-panel h4{font-size:16px;margin-bottom:8px;}
#fp-sticker-designer .fp-sticker-upload-panel label{display:block;font-size:14px;font-weight:650;margin:10px 0 6px;color:#253248;}
#fp-sticker-designer .fp-sticker-upload-panel input[type="file"]{display:block;width:100%;max-width:100%;padding:10px;border:1px solid #c9d4e3;border-radius:6px;background:#fff;color:#243247;}
#fp-sticker-designer .fp-sticker-upload-panel small,#fp-sticker-designer .fp-sticker-upload-panel .fp-sticker-hint{display:block;color:#526175;font-size:12px;line-height:1.5;margin:8px 0;}
#fp-sticker-designer .fp-sticker-upload-actions{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;column-gap:12px;row-gap:3px;margin-top:10px;}
#fp-sticker-designer .fp-sticker-upload-actions label{grid-column:1/-1;margin:0;}
#fp-sticker-designer .fp-sticker-upload-actions input[type="range"]{width:100%;min-width:0;margin:0;}
#fp-sticker-designer .fp-sticker-upload-actions #fp-sticker-remove-image{margin:0;min-height:38px;}
@media(max-width:520px){#fp-sticker-designer .fp-sticker-upload-actions{grid-template-columns:1fr;}#fp-sticker-designer .fp-sticker-upload-actions #fp-sticker-remove-image{justify-self:start;}}

/* 0.7.1: Klarer Bestell-Button direkt am Designer */
#fp-sticker-designer #fp-sticker-cart-action:not([hidden]){display:flex; margin:12px auto 0; min-height:46px; background:#167044; color:#fff; border:1px solid #167044; font-size:15px; font-weight:700; padding:12px 22px;}
#fp-sticker-designer #fp-sticker-cart-action:hover{background:#0d5432;color:#fff;}
#fp-sticker-designer #fp-sticker-status.fp-sticker-blocked{background:#fff0f0;color:#9e2020;}

/* Warenkorb-Miniatur, Mouseover ohne Download-Link (Screenshots bleiben technisch möglich). */
.fp-sticker-cart-thumb{display:inline-block;position:relative;line-height:0;cursor:zoom-in;}
.fp-sticker-cart-thumb img{width:92px!important;height:92px!important;object-fit:contain;border:1px solid #d7dce4;border-radius:6px;background:white;transition:transform .16s ease;transform-origin:left center;}
.fp-sticker-cart-thumb:hover{z-index:99;}
.fp-sticker-cart-thumb:hover img{transform:scale(2.2);position:relative;z-index:99;box-shadow:0 8px 25px #0002;}

/* Individuelle Warenkorb-Vorschau ohne Theme-Zoomsymbol / Produktweiterleitung. */
.woocommerce-cart .fp-sticker-cart-thumb {position:relative;display:inline-block;cursor:default;z-index:1;vertical-align:middle;}
.woocommerce-cart .fp-sticker-cart-thumb img {width:90px!important;height:90px!important;max-width:90px!important;max-height:90px!important;object-fit:contain;background:#fff;}
.woocommerce-cart .fp-sticker-cart-thumb:hover {z-index:100;}
.woocommerce-cart .fp-sticker-cart-thumb:hover img {transform:scale(2.2);transform-origin:left center;position:relative;z-index:100;box-shadow:0 7px 20px #0002;}
.woocommerce-cart .fp-sticker-cart-thumb .zoom, .woocommerce-cart .fp-sticker-cart-thumb .woocommerce-product-gallery__trigger {display:none!important;}

/* v0.8.2: kompakter Arbeitsbereich, Werkzeugleiste wie im Texteditor */
@media (min-width:881px) {
  #fp-sticker-designer .fp-sticker-grid {grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:16px;max-width:1280px;}
  #fp-sticker-designer .fp-sticker-preview-inner {position:sticky;top:14px;}
  #fp-sticker-designer canvas#fp-sticker-canvas {max-width:min(100%,390px,43vh);}
}
#fp-sticker-designer {padding:clamp(14px,2vw,24px);}
#fp-sticker-designer > p {margin-bottom:12px;}
#fp-sticker-designer .fp-sticker-controls {gap:10px;}
#fp-sticker-designer .fp-sticker-panel {padding:13px 15px;}
#fp-sticker-designer h4 {margin:0 0 10px;font-size:16px;}
#fp-sticker-designer .fp-sticker-controls label {margin:8px 0 4px;font-size:13px;}
#fp-sticker-designer :is(input[type="text"],textarea,select) {padding:7px 9px;font-size:14px;min-height:37px;}
#fp-sticker-designer textarea {min-height:57px;}
#fp-sticker-designer .fp-sticker-format-row {display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:10px;align-items:end;}
#fp-sticker-designer .fp-sticker-format-size>label {display:block;}
#fp-sticker-designer #fp-sticker-size-display {padding:8px;font-size:13px;min-height:37px;display:flex;align-items:center;margin-top:4px;}
#fp-sticker-designer .fp-sticker-newtext-row {display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:8px;}
#fp-sticker-designer .fp-sticker-newtext-row>label {min-width:0;}
#fp-sticker-designer #fp-sticker-addtext {margin:0;min-height:37px;padding:7px 12px;white-space:nowrap;}
#fp-sticker-designer .fp-sticker-type-row {display:grid;grid-template-columns:minmax(0,1fr) 85px 57px;gap:8px;align-items:end;}
#fp-sticker-designer .fp-sticker-type-row>label {min-width:0;}
#fp-sticker-designer .fp-sticker-colorfield input[type="color"] {width:100%;height:37px;max-width:none;margin:0;}
#fp-sticker-designer .fp-sticker-buttons {display:flex;gap:5px;margin-top:10px;flex-wrap:wrap;}
#fp-sticker-designer .fp-sticker-buttons .fp-sticker-tool {display:inline-flex;width:38px;min-width:38px;height:36px;min-height:36px;max-width:38px;padding:0;margin:0;border-radius:5px;font-size:16px;line-height:1;}
#fp-sticker-designer .fp-sticker-buttons .fp-sticker-tool[aria-pressed="true"] {background:#d5e5fa;border-color:#2768ba;color:#103d73;box-shadow:inset 0 0 0 1px #2768ba;}
#fp-sticker-designer .fp-sticker-buttons .fp-sticker-tool-delete {margin-left:auto;color:#a12c31;}
#fp-sticker-designer .fp-sticker-preview-inner {padding:12px 14px;}
#fp-sticker-designer .fp-sticker-upload-panel {padding:10px 12px;margin:10px 0;}
#fp-sticker-designer .fp-sticker-upload-panel h4 {font-size:14px;margin-bottom:6px;}
#fp-sticker-designer .fp-sticker-upload-panel input[type="file"] {padding:6px;}
#fp-sticker-designer .fp-sticker-upload-panel small,#fp-sticker-designer .fp-sticker-upload-panel .fp-sticker-hint {font-size:11px;line-height:1.35;margin:5px 0;}
#fp-sticker-designer .fp-sticker-preview p {margin:5px 0 8px;font-size:11px;}
#fp-sticker-designer .fp-sticker-upload-actions {margin-top:6px;}
#fp-sticker-designer .fp-sticker-upload-actions label {margin:0;}
#fp-sticker-designer button#fp-sticker-confirm {min-height:39px;padding:8px 13px;}
#fp-sticker-designer #fp-sticker-status {margin-top:8px;padding:8px 10px;font-size:12px;}
@media(max-width:520px) {
 #fp-sticker-designer .fp-sticker-format-row{grid-template-columns:1fr;}
 #fp-sticker-designer .fp-sticker-type-row {grid-template-columns:minmax(0,1fr) 76px 49px;gap:5px;}
 #fp-sticker-designer .fp-sticker-buttons .fp-sticker-tool{width:36px;min-width:36px;max-width:36px;}
}


/* v0.8.3: Alle Textwerkzeuge auf Desktop in einer gemeinsamen Zeile. */
#fp-sticker-designer .fp-sticker-inline-tools {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:8px;
  align-items:end;
  min-width:0;
}
#fp-sticker-designer .fp-sticker-inline-tools .fp-sticker-type-row {
  display:grid;
  grid-template-columns:minmax(90px,1fr) 67px 50px;
  gap:6px;
  min-width:0;
  align-items:end;
}
#fp-sticker-designer .fp-sticker-inline-tools .fp-sticker-type-row > label {
  margin:0;
  min-width:0;
}
#fp-sticker-designer .fp-sticker-inline-tools .fp-sticker-type-row select {
  height:36px;
  min-height:36px;
  padding:5px 7px;
}
#fp-sticker-designer .fp-sticker-inline-tools .fp-sticker-colorfield input[type="color"] {
  height:36px;
}
#fp-sticker-designer .fp-sticker-inline-tools .fp-sticker-buttons {
  display:flex;
  align-items:center;
  flex-wrap:nowrap;
  gap:4px;
  margin:0;
  padding:0 0 1px;
}
#fp-sticker-designer .fp-sticker-inline-tools .fp-sticker-buttons .fp-sticker-tool {
  width:34px;
  min-width:34px;
  max-width:34px;
  height:35px;
  min-height:35px;
  padding:0;
  margin:0;
}
#fp-sticker-designer .fp-sticker-inline-tools .fp-sticker-buttons .fp-sticker-tool-delete {
  margin-left:0;
}
@media (max-width:560px) {
  #fp-sticker-designer .fp-sticker-inline-tools {grid-template-columns:1fr;}
  #fp-sticker-designer .fp-sticker-inline-tools .fp-sticker-buttons {justify-content:flex-start;}
}

/* v0.8.4: Upload auf die linke Steuerungsseite, Bestellaktionen bei Vorschau */
#fp-sticker-designer .fp-sticker-controls .fp-sticker-upload-panel {
  margin:0; padding:13px 15px; background:#fbfcfe;
}
#fp-sticker-designer .fp-sticker-controls .fp-sticker-upload-panel label {margin:6px 0 5px;}
#fp-sticker-designer .fp-sticker-controls .fp-sticker-upload-panel input[type="file"] {padding:7px;}
#fp-sticker-designer .fp-sticker-controls .fp-sticker-upload-panel .fp-sticker-upload-actions {
  grid-template-columns:minmax(0,1fr) auto; gap:6px 10px;
}
#fp-sticker-designer .fp-sticker-controls .fp-sticker-upload-panel .fp-sticker-hint {font-size:11px;}
#fp-sticker-designer .fp-sticker-preview-inner #fp-sticker-confirm,
#fp-sticker-designer .fp-sticker-preview-inner #fp-sticker-cart-action:not([hidden]) {
  width:min(100%,265px); display:flex; margin:8px auto;
}
#fp-sticker-designer .fp-sticker-preview-inner #fp-sticker-status {max-width:100%;}
@media(max-width:520px){
 #fp-sticker-designer .fp-sticker-controls .fp-sticker-upload-panel .fp-sticker-upload-actions {grid-template-columns:1fr;}
}


/* v0.8.5: Farbverlauf kompakter – beide Farben nebeneinander, freier Winkel */
#fp-sticker-designer .fp-sticker-gradient-color-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-items:end;}
#fp-sticker-designer .fp-sticker-gradient-color-row > label,#fp-sticker-designer .fp-sticker-gradient-color-row > div > label{margin:0;}
#fp-sticker-designer #fp-sticker-gradient-options{display:block;margin:0;padding:0;border:0;background:transparent;}
#fp-sticker-designer #fp-sticker-gradient-angle-wrap{margin-top:10px;}
#fp-sticker-designer .fp-sticker-angle-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 0 4px;}
#fp-sticker-designer .fp-sticker-angle-head label{margin:0;font-size:13px;font-weight:650;color:#253248;}
#fp-sticker-designer #fp-sticker-gradient-angle-value{display:inline-flex;align-items:center;justify-content:center;min-width:54px;padding:5px 9px;border:1px solid #c9d4e3;border-radius:999px;background:#fff;color:#223046;font-size:13px;font-weight:700;}
#fp-sticker-designer #fp-sticker-gradient-angle{margin:4px 0 0;}
@media(max-width:640px){#fp-sticker-designer .fp-sticker-gradient-color-row{grid-template-columns:1fr;gap:8px;}}

/* v0.8.7: Einfache, kompakte Kassen-Miniatur, kein Hover-Zoom im Checkout */
.woocommerce-checkout .fp-sticker-cart-thumb {display:inline-block;vertical-align:middle;line-height:0;cursor:default;max-width:72px;}
.woocommerce-checkout .fp-sticker-cart-thumb img {display:block;width:66px!important;height:66px!important;max-width:66px!important;max-height:66px!important;object-fit:contain;transform:none!important;box-shadow:none!important;border-radius:5px;background:#fff;}
.woocommerce-checkout .fp-sticker-cart-thumb:hover img {transform:none!important;box-shadow:none!important;}

/* v0.9.4: Kompakte, barrierearm aufklappbare Bedienhilfe */
#fp-sticker-designer .fp-sticker-help{box-sizing:border-box;margin:12px 0 16px;border:1px solid #d7e1eb;border-radius:9px;background:#f7fafc;overflow:hidden;}
#fp-sticker-designer .fp-sticker-help summary{display:list-item;cursor:pointer;padding:12px 15px;font-weight:650;color:#253248;line-height:1.4;}
#fp-sticker-designer .fp-sticker-help summary::marker{color:#55718d;}
#fp-sticker-designer .fp-sticker-help summary > span{color:#315d83;font-weight:700;margin-right:5px;}
#fp-sticker-designer .fp-sticker-help summary:focus-visible{outline:2px solid #2585be;outline-offset:-3px;}
#fp-sticker-designer .fp-sticker-help[open] summary{border-bottom:1px solid #d7e1eb;background:#eef5f9;}
#fp-sticker-designer .fp-sticker-help-content{padding:13px 16px 15px;line-height:1.55;font-size:13px;color:#344154;}
#fp-sticker-designer .fp-sticker-help-content .fp-sticker-help-intro{margin:0 0 8px;}
#fp-sticker-designer .fp-sticker-help-content ol{margin:6px 0 10px 22px;padding:0;}
#fp-sticker-designer .fp-sticker-help-content li{padding-left:3px;margin:0 0 7px;}
#fp-sticker-designer .fp-sticker-help-content .fp-sticker-help-note{margin:10px 0 0;border-left:3px solid #7f9cb0;padding:7px 10px;background:#fff;}
