/* SCHICHT-WERK — Kamera zum Produkt (Gruppe KP, v219). Nur Hauspalette über Variablen aus legal.css. */
[hidden]{display:none!important;}
.km-wrap{max-width:1180px;}
.km-ein,.km-hinweis{max-width:820px;}
.km-hinweis{border-left:3px solid var(--gold);padding:6px 12px;background:var(--s2);font-size:.8rem;}
.km[data-ansicht="privat"] .ab-gewerbe,.km[data-ansicht="privat"] .ab-profi,.km[data-ansicht="gewerbe"] .ab-profi{display:none!important;}
.km-modus{display:inline-flex;flex-wrap:wrap;align-items:center;border:1px solid var(--b2);font-family:var(--mono);font-size:.58rem;letter-spacing:.1em;margin:8px 0 2px;}
.km-modus span{padding:0 10px;color:var(--t3);text-transform:uppercase;}
.km-modus button{background:none;border:0;border-left:1px solid var(--b2);color:var(--t);padding:10px 14px;font:inherit;letter-spacing:inherit;cursor:pointer;min-height:42px;text-transform:uppercase;}
.km-modus button[aria-pressed=true]{background:var(--gold);color:var(--bg);}
.km-schritte{display:flex;flex-wrap:wrap;gap:2px;list-style:none;margin:12px 0;padding:0;}
.km-schritte li{flex:1;min-width:110px;background:var(--s);border:1px solid var(--b);border-top:3px solid var(--b2);padding:8px 10px;font-family:var(--mono);font-size:.55rem;letter-spacing:.12em;color:var(--t3);margin:0;text-transform:uppercase;}
.km-schritte li.an{border-top-color:var(--gold);color:var(--gold);}
.km-schritte li.fertig{border-top-color:var(--gut);color:var(--w);}
.km-lay{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:2px;margin:6px 0 28px;}
@media(max-width:900px){.km-lay{grid-template-columns:1fr;}}
.km-karte{background:var(--s);border:1px solid var(--b);padding:15px 16px;min-width:0;}
.km-karte h2{font-family:var(--mono);font-size:.55rem;letter-spacing:.16em;color:var(--gold);font-weight:400;margin:18px 0 8px;border-bottom:1px solid var(--b);padding-bottom:5px;text-transform:uppercase;}
.km-karte h2:first-child{margin-top:0;}
.km-karte label{display:block;margin-bottom:10px;}
.km-karte label b{display:block;font-family:var(--mono);font-size:.52rem;letter-spacing:.13em;color:var(--t3);margin-bottom:4px;font-weight:400;text-transform:uppercase;}
.km-karte label small{display:block;font-size:.66rem;color:var(--t2);margin-top:3px;min-height:1em;}
.km-karte select,.km-karte input[type=number]{width:100%;background:var(--bg);border:1px solid var(--b2);color:var(--w);padding:8px 9px;font-family:var(--mono);font-size:.78rem;min-height:42px;}
.km-karte input:disabled{opacity:.5;}
.km-karte [aria-invalid=true]{border-color:var(--warn);}
.km-2{display:grid;grid-template-columns:1.4fr 1fr;gap:0 10px;}
.km-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 10px;}
@media(max-width:480px){.km-2{grid-template-columns:1fr;}.km-3{grid-template-columns:1fr 1fr;}}
.hw{display:block;font-size:.72rem;line-height:1.6;color:var(--t2);margin:2px 0 10px;}
.km-foto{display:flex;flex-wrap:wrap;gap:6px;align-items:center;}
.km-dat{position:relative;display:inline-flex!important;align-items:center;gap:8px;min-height:46px;border:1px dashed var(--gold);padding:8px 14px;font-size:.8rem;color:var(--w);cursor:pointer;margin:0!important;}
.km-dat svg{width:20px;height:20px;color:var(--gold);}
.km-dat:hover,.km-dat:focus-within{background:var(--gf);}
.km-dat input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%;}
.km-link{background:none;border:0;color:var(--gold);font-family:var(--sans);font-size:.78rem;cursor:pointer;padding:10px 6px;text-decoration:underline;min-height:44px;}
.km-leinwand{background:var(--bg);border:1px solid var(--b2);margin:6px 0;touch-action:pinch-zoom;}
.km-leinwand canvas{display:block;width:100%;height:auto;cursor:crosshair;}
.km-schritt{font-size:.82rem;color:var(--w);min-height:1.4em;margin:6px 0;}
.km-knoepfe{display:flex;flex-wrap:wrap;gap:4px;margin:8px 0;}
.km-knoepfe button{background:var(--gf);border:1px solid var(--gold);color:var(--gold);padding:10px 14px;font-family:var(--sans);font-size:.78rem;cursor:pointer;min-height:44px;}
.km-knoepfe button.zweit{background:var(--s);border-color:var(--b2);color:var(--t);}
.km-knoepfe button:disabled{opacity:.45;cursor:not-allowed;}
.kv{display:grid;grid-template-columns:auto 1fr;gap:4px 14px;margin:6px 0 10px;}
.kv dt{font-family:var(--mono);font-size:.5rem;letter-spacing:.12em;color:var(--t3);padding-top:3px;text-transform:uppercase;}
.kv dd{font-size:.8rem;color:var(--w);margin:0;overflow-wrap:anywhere;}
.km-warn p{background:var(--warn-f);border:1px solid var(--gold-tief);padding:9px 12px;font-size:.76rem;line-height:1.6;margin:6px 0;}
.fehl{color:var(--warn);font-size:.76rem;min-height:1.2em;margin:6px 0;}
.km-produkte{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:4px;}
.km-produkte button{background:var(--bg);border:1px solid var(--b2);color:var(--t);padding:10px;text-align:left;cursor:pointer;font-family:var(--sans);font-size:.72rem;line-height:1.45;min-height:44px;}
.km-produkte button svg{width:30px;height:30px;display:block;margin-bottom:6px;color:var(--gold);}
.km-produkte button b{display:block;color:var(--w);font-weight:500;font-size:.8rem;margin-bottom:2px;}
.km-produkte button[aria-checked=true]{border-color:var(--gold);background:var(--gf);}
.km-varianten{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:4px;}
.km-varianten button{background:var(--bg);border:1px solid var(--b2);color:var(--t);padding:9px 10px;text-align:left;cursor:pointer;font-family:var(--sans);font-size:.72rem;line-height:1.5;min-height:44px;}
.km-varianten button b{display:block;color:var(--w);font-weight:500;}
.km-varianten button[aria-checked=true]{border-color:var(--gold);background:var(--gf);}
.km-varianten button[aria-checked=true] b{color:var(--gold);}
.km-wege{list-style:none;margin:8px 0;padding:0;}
.km-wege li{margin:0 0 4px;}
.km-wege a{display:block;background:var(--bg);border:1px solid var(--b2);border-left:3px solid var(--gold);padding:10px 12px;color:var(--t);text-decoration:none;font-size:.76rem;line-height:1.5;}
.km-wege a b{display:block;color:var(--w);font-weight:500;font-size:.82rem;}
.km-wege a small{display:block;font-family:var(--mono);font-size:.5rem;letter-spacing:.12em;color:var(--gold);margin-top:4px;text-transform:uppercase;}
.km-wege a[aria-disabled=true]{opacity:.45;pointer-events:none;border-left-color:var(--b2);}
.naechste{border:1px solid var(--gold);background:var(--gf);padding:11px 14px;font-size:.78rem;line-height:1.65;margin:16px 0 8px;}
.naechste > b{color:var(--gold);font-family:var(--mono);font-size:.55rem;letter-spacing:.13em;font-weight:400;display:block;margin-bottom:3px;text-transform:uppercase;}
.quellen{font-size:.72rem;line-height:1.6;color:var(--t2);padding-left:20px;}
.quellen li{margin-bottom:4px;}
@media(prefers-reduced-motion:no-preference){.km-produkte button,.km-varianten button,.km-modus button,.km-wege a{transition:border-color .15s,background .15s;}}
