/* Kulisse Konfigurator – Theme-neutral, erbt Schrift und Farben der Site. */
.kulisse-konf{--k-line:#d8d1c6;--k-muted:#5e5a55;--k-fuge:#f2b45a;--k-ink:#141414;--k-surface:#faf8f4;--k-chip:#efebe4;--k-warn:#a5482c;--k-ok:#3c7a50;max-width:100%;margin:0 auto}
.kulisse-konf *,.kulisse-konf *::before,.kulisse-konf *::after{box-sizing:border-box}
.kulisse-noscript{padding:12px;border:1px solid var(--k-line)}
.kulisse-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(300px,1fr);gap:24px;align-items:start}
@media (max-width:960px){.kulisse-grid{grid-template-columns:1fr}}
.kulisse-stagecol{display:flex;flex-direction:column;gap:14px;min-width:0}
.kulisse-stage{border:1px solid var(--k-line);border-radius:6px;overflow:hidden;background:#efebe4}
.kulisse-stage svg{display:block;width:100%;height:auto;max-height:60vh}
.kulisse-stagebar{display:flex;flex-wrap:wrap;gap:12px 20px;align-items:flex-start;justify-content:space-between}
.kulisse-seg{display:inline-flex;border:1px solid var(--k-line);border-radius:999px;overflow:hidden;background:var(--k-surface)}
.kulisse-seg button{border:0;background:transparent;padding:8px 14px;font:inherit;font-size:13px;cursor:pointer;color:var(--k-muted)}
.kulisse-seg button[aria-pressed="true"]{background:var(--k-ink);color:#fff}
.kulisse-dims{margin:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:6px 18px;font-size:13px;flex:1 1 320px}
.kulisse-dims div{display:flex;justify-content:space-between;gap:10px;border-bottom:1px dotted var(--k-line);padding:3px 0}
.kulisse-dims dt{color:var(--k-muted);margin:0}
.kulisse-dims dd{margin:0;font-variant-numeric:tabular-nums;white-space:nowrap}
.kulisse-bom h3{font-size:1.1em;margin:8px 0 10px}
.kulisse-bom h3 small{font-weight:400;color:var(--k-muted);font-size:.8em;margin-left:8px}
.kulisse-tbl{overflow-x:auto}
.kulisse-bom table{width:100%;border-collapse:collapse;font-size:14px;min-width:460px}
.kulisse-bom th,.kulisse-bom td{padding:8px 10px;border-bottom:1px solid var(--k-line);text-align:left;vertical-align:top}
.kulisse-bom th{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--k-muted)}
.kulisse-bom th.n,.kulisse-bom td.n{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
.kulisse-bom td small{display:block;color:var(--k-muted);font-size:12px}
.kulisse-bom tr.kulisse-disc td{color:var(--k-ok)}
.kulisse-bom tr.kulisse-sum td{font-weight:700;border-bottom:0}
.kulisse-fine{font-size:12.5px;color:var(--k-muted);margin:10px 0 0}
.kulisse-panel{background:var(--k-surface);border:1px solid var(--k-line);border-radius:6px;padding:20px;display:flex;flex-direction:column;gap:20px;min-width:0;position:sticky;top:20px}
@media (max-width:960px){.kulisse-panel{position:static}}
.kulisse-ctl{display:flex;flex-direction:column;gap:8px}
.kulisse-ctl-head{display:flex;justify-content:space-between;align-items:baseline;gap:10px}
.kulisse-ctl-head label,.kulisse-ctl-head .kulisse-l{font-weight:600;font-size:14px}
.kulisse-val{font-size:13px;font-variant-numeric:tabular-nums;color:var(--k-ink)}
.kulisse-sub{font-size:12.5px;color:var(--k-muted)}
.kulisse-row{display:flex;align-items:center;gap:8px}
.kulisse-row input[type=range]{flex:1 1 auto}
.kulisse-row input[type=number]{width:92px;padding:6px 8px;border:1px solid var(--k-line);border-radius:3px;font:inherit}
.kulisse-unit{font-size:12.5px;color:var(--k-muted)}
.kulisse-panel input[type=range]{width:100%;accent-color:var(--k-ink);margin:0}
.kulisse-steps{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:4px}
.kulisse-steps button{border:1px solid var(--k-line);background:var(--k-surface);border-radius:3px;padding:8px 0 6px;font:inherit;font-size:13px;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:2px;font-variant-numeric:tabular-nums}
.kulisse-steps button small{font-size:9.5px;letter-spacing:.06em;color:var(--k-muted);text-transform:uppercase}
.kulisse-steps button[aria-pressed="true"],.kulisse-chip[aria-pressed="true"]{border-color:var(--k-ink);box-shadow:inset 0 -2px 0 var(--k-fuge)}
.kulisse-chips{display:grid;grid-template-columns:repeat(auto-fill,minmax(118px,1fr));gap:6px}
.kulisse-chip{border:1px solid var(--k-line);background:var(--k-chip);border-radius:4px;padding:8px 10px;cursor:pointer;display:flex;flex-direction:column;align-items:flex-start;gap:1px;text-align:left;font:inherit;min-width:0}
.kulisse-chip b{font-weight:600;font-size:13px;line-height:1.25}
.kulisse-chip small{font-size:11px;color:var(--k-muted)}
.kulisse-elems{display:flex;flex-wrap:wrap;gap:6px}
.kulisse-el{display:inline-flex;align-items:center;gap:4px;background:var(--k-chip);border:1px solid var(--k-line);border-radius:999px;padding:4px 6px 4px 10px;font-size:12.5px;font-variant-numeric:tabular-nums}
.kulisse-el button{border:0;background:transparent;cursor:pointer;width:22px;height:22px;border-radius:50%;line-height:1;color:var(--k-muted);font:inherit}
.kulisse-el button:hover{background:var(--k-line);color:var(--k-ink)}
.kulisse-add{display:flex;gap:6px;flex-wrap:wrap}
.kulisse-add button,.kulisse-gbtn{border:1px dashed var(--k-muted);background:transparent;border-radius:999px;padding:5px 10px;font:inherit;font-size:12.5px;cursor:pointer}
.kulisse-add button:hover,.kulisse-gbtn:hover{border-style:solid}
.kulisse-warn{border-left:3px solid var(--k-warn);background:rgba(165,72,44,.08);padding:8px 10px;font-size:13px;border-radius:2px}
.kulisse-warn .kulisse-gbtn{margin-top:6px}
.kulisse-check{display:flex;gap:10px;align-items:flex-start;cursor:pointer;font-size:14px}
.kulisse-check input{width:18px;height:18px;margin-top:3px;flex:0 0 auto}
.kulisse-field{display:flex;flex-direction:column;gap:6px}
.kulisse-field label{font-weight:600;font-size:14px}
.kulisse-field input{width:100%;border:1px solid var(--k-line);border-radius:3px;padding:10px 12px;font:inherit}
.kulisse-total{display:flex;flex-direction:column;gap:10px;border-top:1px solid var(--k-line);padding-top:16px}
.kulisse-price{font-size:clamp(28px,3.4vw,38px);font-weight:700;line-height:1;font-variant-numeric:tabular-nums}
.kulisse-price-sub{font-size:12.5px;color:var(--k-muted)}
.kulisse-btn{position:relative;border:0;border-radius:3px;background:var(--k-ink);color:#fff;padding:14px 20px;font:inherit;font-weight:600;font-size:15px;cursor:pointer;overflow:hidden}
.kulisse-btn::before{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:var(--k-fuge)}
.kulisse-btn[disabled]{opacity:.6;cursor:progress}
.kulisse-msg{font-size:13.5px;padding:8px 10px;border-radius:2px;border-left:3px solid var(--k-muted);background:rgba(0,0,0,.04)}
.kulisse-msg.err{border-color:var(--k-warn);color:var(--k-warn)}
.kulisse-msg.ok{border-color:var(--k-ok);color:var(--k-ok)}
/* Bestellfelder auf Produktseiten */
.kulisse-felder{display:grid;gap:10px;margin:0 0 16px;padding:14px;border:1px solid #d8d1c6;border-radius:4px}
.kulisse-feld{margin:0;display:flex;flex-direction:column;gap:4px}
.kulisse-feld label{font-weight:600;font-size:14px}
.kulisse-feld input,.kulisse-feld select{max-width:100%;padding:8px 10px;border:1px solid #d8d1c6;border-radius:3px;font:inherit}
