/* Druckdaten-Upload (bm-plakat-upload) – Plakatbande-Optik: Gelb, Schwarz, harte Kanten */
.bmpu{margin:18px 0;display:grid;gap:12px}
.bmpu-feld{display:grid;gap:5px}
.bmpu-label{font-weight:800}
.bmpu-label abbr{text-decoration:none;color:#C62A1F}
.bmpu select{padding:10px 12px;border:3px solid #111;border-radius:0;background:#fff;font:inherit;max-width:100%}
.bmpu-soll{margin:-4px 0 0;font-size:14px}
.bmpu-drop{position:relative;display:grid;justify-items:center;gap:2px;padding:16px;border:3px dashed #111;background:#fff;text-align:center;cursor:pointer}
.bmpu-drop:hover,.bmpu-drop.is-over{background:#FFF6BF}
.bmpu-drop.has-files{border-style:solid;background:#f3faf5}
.bmpu-drop input{position:absolute;width:1px;height:1px;opacity:0}
.bmpu-drop:focus-within{outline:3px solid #111;outline-offset:2px}
.bmpu-drop svg{width:32px;height:32px;background:#FFD400;border:2px solid #111;border-radius:50%;padding:5px}
.bmpu-drop strong{font-size:15px}
.bmpu-drop span{font-size:13px;color:#3a3936}
.bmpu-liste{margin:4px 0 0;padding:0;list-style:none;font-size:14px}
.bmpu-liste li::before{content:"\2713";color:#2e7d4f;font-weight:800;margin-right:6px}
.bmpu-liste li.is-fehler::before{content:"\26A0";color:#C62A1F}
.bmpu-weg{display:inline-grid;place-items:center;width:22px;height:22px;margin-left:8px;padding:0;border:2px solid #111;border-radius:50%;background:#fff;color:#111;font-size:15px;line-height:1;cursor:pointer;vertical-align:middle}
.bmpu-weg:hover,.bmpu-weg:focus-visible{background:#C62A1F;border-color:#C62A1F;color:#fff}
.bmpu-pruefung{display:block;margin:1px 0 4px 20px;font-size:13px;color:#3a3936}
.bmpu-pruefung.is-ok{color:#2e7d4f;font-weight:700}
.bmpu-pruefung.is-ohne,.bmpu-pruefung.is-falsch{color:#C62A1F;font-weight:700}
.bmpu-beschnitt{padding:10px 12px;background:#fdecea;border-left:5px solid #C62A1F;font-size:14px}
.bmpu-beschnitt p{margin:0 0 8px}
.bmpu-wahl{display:flex;gap:8px;align-items:flex-start;font-size:13.5px}
.bmpu-wahl input{margin-top:3px;flex:none}
.bmpu-hinweis{margin:0;font-size:13px;color:#3a3936}
.bmpu-preis{display:block;margin-top:6px;color:#111}
.bmpu-oesen{border:0;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px 20px}.bmpu-oesen legend{width:100%;margin-bottom:4px}
.bmpu-preisbox{display:flex;flex-wrap:wrap;gap:6px 22px;align-items:baseline;margin:0;padding:10px 14px;background:#FFD400;border:3px solid #111;box-shadow:4px 4px 0 #111;font-size:15px}.bmpu-preisbox b{font-size:19px;font-weight:900}.bmpu-preisbox small{flex-basis:100%;font-size:12px}
.pb-ab,.pb-je{font-weight:600;font-size:.8em}
.bmpu-staffel{border-collapse:collapse;width:100%;max-width:420px;font-size:14px;border:3px solid #111}
.bmpu-staffel caption{text-align:left;font-weight:800;padding:0 0 6px;caption-side:top}
.bmpu-staffel caption span{font-weight:400;font-size:13px}
.bmpu .bmpu-staffel th,.bmpu .bmpu-staffel td{padding:6px 10px;border-bottom:1px solid #ddd;text-align:left}
.bmpu-staffel th{background:#111;color:#FFD400}
.bmpu-staffel td:last-child,.bmpu-staffel th:last-child{text-align:right}
.bmpu-staffel tr.ist-aktiv td{background:#FFD400;font-weight:800}
.pb-menge{display:flex;align-items:center;gap:10px}
.pb-menge label{font-weight:800}
.pb-menge select{padding:10px 12px;border:3px solid #111;border-radius:0;background:#fff;font:inherit;min-width:90px}
.pb-menge{flex-wrap:wrap}.pb-menge input{width:110px;padding:10px 12px;border:3px solid #111;border-radius:0;font:inherit}.pb-menge small{flex-basis:100%;font-size:12px;color:#3a3936}
.bmpu-menge{gap:6px}
.bmpu-stepper{display:inline-flex;align-items:stretch;border:3px solid #111;width:max-content;box-shadow:3px 3px 0 #111}
.bmpu-stepper button{width:44px;border:0;background:#FFD400;font:inherit;font-size:22px;font-weight:900;cursor:pointer;color:#111}
.bmpu-stepper button:hover,.bmpu-stepper button:focus-visible{background:#111;color:#FFD400}
.bmpu-stepper input{width:76px;border:0;border-left:3px solid #111;border-right:3px solid #111;text-align:center;font:inherit;font-size:20px;font-weight:800;padding:8px 4px;-moz-appearance:textfield}
.bmpu-stepper input::-webkit-outer-spin-button,.bmpu-stepper input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.bmpu-schnell{display:flex;flex-wrap:wrap;gap:6px}
.bmpu .bmpu-schnell button{min-width:44px;padding:6px 10px;border:2px solid #111;background:#fff;color:#111;font:inherit;font-weight:700;cursor:pointer}
.bmpu .bmpu-schnell button:hover,.bmpu .bmpu-schnell button.ist-aktiv{background:#FFD400;color:#111}
.bmpu-menge small{font-size:12px;color:#3a3936}
.bmpu [hidden]{display:none!important}   /* eigene display-Regeln (flex/grid) dürfen hidden nicht aushebeln */
.bmpu .bmpu-datencheck{margin-top:14px;padding:12px 14px;border:2px solid #111;background:#fff;font-size:14px;line-height:1.5}
.bmpu .bmpu-datencheck a{color:#111}

/* Fokus deutlich sichtbar (WCAG 2.4.7) – Kadence-Schatten allein ist kaum zu sehen */
.bmpu select:focus-visible,.bmpu input[type="number"]:focus-visible{outline:3px solid #111;outline-offset:3px;box-shadow:0 0 0 6px #FFD400}
.bmpu .bmpu-stepper input,.bmpu input[name="quantity"]{color:#111}
.bmpu .bmpu-pflicht{margin:0 0 10px;font-size:13px;color:#3a3936}
.bmpu .bmpu-pflicht abbr{text-decoration:none;color:#c62a1f}
.bmpu .bmpu-opt-hinweis{display:block;margin-top:6px;font-size:13px;color:#3a3936}
