/* ABDEX Werbe-Studio – Ergänzungen zum Beachflag-Studio-Design (studio.css) */
.ws-sec{padding:clamp(28px,5vw,56px) 0;background:#f6f4f0;border-top:1px solid #ebe7e0;border-bottom:1px solid #ebe7e0}
.ws-head{max-width:860px;margin:0 0 22px}
.ws-head h2{font-size:clamp(1.5rem,3.2vw,2.3rem);line-height:1.1;margin:8px 0 10px;color:var(--bf-ink);letter-spacing:-.02em}
.ws-head p{color:#4a5a69;font-size:.98rem;line-height:1.6;margin:0}
/* Bearbeiten oben, Einsatzort darunter – Banner sind breit */
.bf-studio.ws{min-height:760px}
.ws .bf-panes{grid-template-columns:1fr;grid-template-rows:minmax(340px,1.3fr) minmax(260px,1fr);min-height:700px}
.ws .bf-pane3d{background:#eef3f7;border-top:1px solid var(--bf-line)}
.ws .bf-pane3d:before{display:none}
#wsScene{position:absolute;inset:0;width:100%;height:100%;display:block}
.ws-scenebar{top:42px;left:12px;right:auto;max-width:calc(100% - 24px);flex-wrap:wrap}
.ws-scenebar [hidden]{display:none}
#wsScenes[hidden]{display:none}
.ws-scenebar .bf-seg button{padding:6px 10px;font-size:.72rem}
.ws-scenebar input[type=range]{width:110px;flex:0 0 auto}
@media(min-width:1021px){.ws .bf-viewtoggle{display:none}}
/* Format */
.ws-size{display:flex;align-items:flex-end;gap:8px}
.ws-size label{flex:1;display:flex;flex-direction:column;gap:4px;font-size:.7rem;font-weight:800;color:#5b6773}
.ws-size input{width:100%;min-width:0;padding:10px 11px;border:1px solid #cfd9e6;border-radius:10px;font:inherit;font-size:1rem;font-weight:800;color:var(--bf-ink);background:#fff}
.ws-size input:focus{outline:none;border-color:var(--bf-orange);box-shadow:0 0 0 3px rgba(248,121,41,.15)}
.ws-x{padding-bottom:11px;font-weight:900;color:#7a8692}
.ws-size .bf-iconbtn{height:42px}
.ws-presets{display:flex;flex-wrap:wrap;gap:5px;margin-top:9px}
.ws-presets button{padding:6px 9px;border:1px solid var(--bf-line);border-radius:8px;background:#fff;font-size:.72rem;font-weight:800;color:#41505e;cursor:pointer}
.ws-presets button:hover{border-color:var(--bf-orange)}
.ws-presets button[aria-pressed="true"]{background:var(--bf-ink);border-color:var(--bf-ink);color:#fff}
.ws-cards{grid-template-columns:1fr}
.ws-cards .bf-variant{padding:10px 12px}
#wsSizeBox[hidden]{display:none}
/* Vorlagen im Querformat */
.ws .bf-templates{grid-template-columns:repeat(3,1fr)}
.ws .bf-tpl canvas{height:auto;aspect-ratio:160/104}
@media(max-width:1020px){
  .ws .bf-panes{grid-template-rows:1fr;height:min(70vh,600px);min-height:420px}
  .ws .bf-pane3d{border-top:0}
}
/* Form (Schilder, Platten) */
.ws-formen{display:flex;width:100%}
.ws-formen button{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:5px}
.ws-formen button span{font-size:1.05rem;line-height:1}
/* Hochformat-Produkte (Plakat, Roll-up): Vorlagen hochkant */
.ws.hoch .bf-templates{grid-template-columns:repeat(4,1fr)}
.ws.hoch .bf-tpl canvas{aspect-ratio:112/150}
@media(min-width:1021px){
  .ws.hoch .bf-panes,.ws.neben .bf-panes{grid-template-columns:1fr 1fr;grid-template-rows:1fr;min-height:720px}
  .ws.hoch .bf-pane3d,.ws.neben .bf-pane3d{border-top:0;border-left:1px solid var(--bf-line)}
}
.ws-scenebar .bf-seg:empty{display:none}
#wsNah[hidden]{display:none}
.ws-scenebar .bf-seg:has(#wsNah[hidden]){display:none}
/* ---------- Shop-Modus (z. B. Garten-Sichtschutz) ---------- */
.ws-presets button small{display:block;font-size:.6rem;font-weight:700;color:#7a8794;margin-top:1px}
.ws-presets button[aria-pressed="true"] small{color:#cfd6dd}
.ws-kunde{display:inline-flex;gap:6px;margin-top:14px;background:#f1f3f6;border-radius:14px;padding:4px}
.ws-kunde button{border:0;background:none;border-radius:11px;padding:9px 14px;font:inherit;font-weight:800;font-size:.86rem;color:#4a5a69;cursor:pointer;text-align:left;line-height:1.2}
.ws-kunde button small{display:block;font-size:.66rem;font-weight:700;color:#7a8794}
.ws-kunde button[aria-pressed="true"]{background:#fff;color:var(--bf-ink);box-shadow:0 2px 8px rgba(0,0,0,.1)}
.ws-kunde button[aria-pressed="true"] small{color:var(--bf-orange-d)}
.ws-preischip{border:0;border-radius:99px;background:#fff4ea;color:var(--bf-ink);font:inherit;font-size:.78rem;font-weight:700;padding:6px 12px;cursor:pointer;white-space:nowrap;box-shadow:inset 0 0 0 1px #fbc8a4}
.ws-preischip b{font-weight:900;color:var(--bf-orange-d)}
.ws-preis{margin:14px 0 4px;border:1px solid var(--bf-line);border-radius:14px;overflow:hidden;background:#fff}
.ws-preis-gross{padding:14px 16px;background:linear-gradient(135deg,#182029,#2a3644);color:#fff}
.ws-preis-gross small{display:block;font-size:.7rem;font-weight:700;color:#c7d0da;text-transform:uppercase;letter-spacing:.06em}
.ws-preis-gross b{display:block;font-size:2rem;font-weight:900;line-height:1.1;margin:3px 0}
.ws-preis-gross span{font-size:.76rem;color:#dfe5eb}
.ws-preis-zeilen{list-style:none;margin:0;padding:8px 16px}
.ws-preis-zeilen li{display:flex;justify-content:space-between;gap:10px;padding:5px 0;font-size:.8rem;color:#41505e;border-bottom:1px dashed #edf0f3}
.ws-preis-zeilen li:last-child{border-bottom:0}
.ws-preis-zeilen li b{color:var(--bf-ink);white-space:nowrap}
.ws-preis-zeilen li.klein{font-size:.72rem;color:#7a8794}
.ws-preis-tipp{margin:0;padding:9px 16px 12px;font-size:.74rem;color:var(--bf-ok);font-weight:700}
.ws-bestell{margin-top:6px;padding-top:12px;border-top:1px dashed #e3e7ee}
html:not(.ws-firma) .ws-nurfirma{display:none}
.ws-bestellsumme{margin:12px 0 4px;padding:12px 14px;border-radius:12px;background:#fff4ea;border:1px solid #fbc8a4}
.ws-bestellsumme div{display:flex;justify-content:space-between;gap:10px;align-items:baseline;font-weight:800;color:var(--bf-ink)}
.ws-bestellsumme div b{white-space:nowrap;flex:none;font-size:1.35rem;color:var(--bf-orange-d)}
.ws-bestellsumme small{display:block;color:#7a8794;font-size:.74rem;margin-top:2px}
@media(max-width:600px){.ws-kunde{display:flex}.ws-kunde button{flex:1}.ws-preischip{padding:5px 9px;font-size:.72rem}}
/* Schnellfarben am Element */
.ws-qf{position:absolute;z-index:30;box-sizing:border-box;max-width:min(360px,calc(100% - 8px));background:#fff;border:1px solid #e3e7ec;border-radius:14px;box-shadow:0 12px 32px rgba(15,29,58,.22);padding:8px 9px 9px;font-family:inherit}
.ws-qf[hidden]{display:none}
.ws-qf-top{display:flex;align-items:center;gap:6px;margin-bottom:7px}
.ws-qf-seg{display:inline-flex;background:#f1f3f6;border-radius:9px;padding:2px}
.ws-qf-seg[hidden]{display:none}
.ws-qf-seg button{border:0;background:none;border-radius:7px;padding:4px 9px;font:inherit;font-size:.74rem;font-weight:800;color:#55616d;cursor:pointer}
.ws-qf-seg button[aria-pressed="true"]{background:#fff;color:#1b2a3a;box-shadow:0 1px 4px rgba(0,0,0,.12)}
.ws-qf-eig{position:relative;display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:conic-gradient(red,#ff0,lime,cyan,blue,#f0f,red);cursor:pointer;flex:none}
.ws-qf-eig span{font-size:.8rem;filter:drop-shadow(0 0 2px #fff)}
.ws-qf-eig input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%;height:100%}
.ws-qf-mehr{margin-left:auto;border:1px solid #e3e7ec;background:#fff;border-radius:8px;padding:4px 8px;font:inherit;font-size:.72rem;font-weight:800;color:#c05a10;cursor:pointer}
.ws-qf-x{border:0;background:none;font-size:1.1rem;line-height:1;color:#8a96a3;cursor:pointer;padding:2px 4px}
.ws-qf-sw{display:flex;flex-wrap:wrap;gap:5px}
.ws-qf-b{width:22px;height:22px;border-radius:50%;border:1px solid rgba(0,0,0,.16);cursor:pointer;padding:0;flex:none;transition:transform .12s}
.ws-qf-b:hover{transform:scale(1.18)}
.ws-qf-b[aria-pressed="true"]{outline:2px solid #f87929;outline-offset:2px}
.ws-blink{animation:wsBlink 1.4s ease}
@keyframes wsBlink{0%,60%{box-shadow:0 0 0 3px rgba(248,121,41,.55);border-radius:10px}100%{box-shadow:none}}
@media (max-width:700px){.ws-qf{max-width:calc(100% - 8px);padding:7px 8px}.ws-qf-sw{flex-wrap:nowrap;overflow-x:auto;padding:3px 2px 4px;scrollbar-width:none;-webkit-overflow-scrolling:touch}.ws-qf-sw::-webkit-scrollbar{display:none}.ws-qf-b{width:30px;height:30px}.ws-qf-top{margin-bottom:5px}}
/* Shop-Studios (Geburtstagsbanner, Sichtschutz): Entwurf groß oben, Vorschau darunter */
@media(min-width:1021px){
  .ws.shop .bf-panes{grid-template-rows:minmax(460px,1.75fr) minmax(300px,1fr);min-height:820px}
}

.ws-preis-zeilen li.summe{font-weight:900;border-top:1px dashed #e3d5c8;padding-top:6px;margin-top:2px}
.ws-preischip small{font-size:.66rem;font-weight:700;color:#7a8794;margin-left:2px}
