/* Eigener Konfigurator in den bestätigten Websitefarben. */
form.cart.dh-config-form { display:block!important; width:100%; max-width:100%; min-width:0; clear:both; }
form.cart.dh-config-form > * { box-sizing:border-box; }
.dh-config-configurator { margin:1.5em 0 1em; padding:1.25em; width:100%; max-width:100%; background:#f7f5ee; border:1px solid #dedbd0; border-radius:4px; }
.dh-config-configurator.dh-config-loading { color:#62685f; font-style:italic; }
.dh-config-attrs { display:flex; flex-direction:column; gap:.8em; }
.dh-config-attr-row { display:flex; align-items:center; gap:1em; min-width:0; }
.dh-config-label { min-width:140px; font-weight:600; font-size:.9em; color:#203a31; flex-shrink:0; }
.dh-config-select { flex:1; min-width:0; max-width:360px; padding:.6em .7em; border:1px solid #b9bcb0; border-radius:3px; font:inherit; font-size:.95em; color:#203a31; background:#fff; cursor:pointer; }
.dh-config-select:focus-visible { outline:2px solid #ad482b; outline-offset:2px; }
.dh-config-select--selected { background:#edf1eb; border-color:#698170; }
.dh-config-select--required { border-color:#a9ad9f; background:#fff; }
.dh-config-select:disabled { background:#eeeee7; border-color:#d7d9cf; color:#757b70; cursor:not-allowed; opacity:1; }
.dh-config-pricing-wrap { margin:1.25em 0 .5em; display:block; width:100%; max-width:100%; min-width:0; overflow-x:auto; -webkit-overflow-scrolling:touch; clear:both; }
.dh-config-pricing-wrap:empty { display:none; }
.dh-config-pricing-wrap:focus-visible { outline:2px solid #ad482b; outline-offset:3px; }
.dh-config-price-table { width:100%; min-width:560px; border-collapse:collapse; font-size:.88em; background:#fff; border:1px solid #dedbd0; }
.dh-config-price-table thead tr { background:#eceee6; }
.dh-config-price-table th { padding:.7em .8em; text-align:left; font-weight:600; color:#203a31; border-bottom:1px solid #cbd1c3; white-space:nowrap; }
.dh-config-price-table td { padding:.7em .8em; border-bottom:1px solid #e6e7df; color:#203a31; vertical-align:middle; }
.dh-config-price-table tbody tr:last-child td { border-bottom:none; }
.dh-config-tier-row { cursor:pointer; }
.dh-config-tier-row:hover { background:#f1f3eb; }
.dh-config-tier-selected { background:#e5ece2!important; outline:2px solid #203a31; outline-offset:-2px; }
.dh-config-price-gross { font-weight:700; color:#203a31; }
.dh-config-select-btn { font-size:.85em!important; padding:.55em .8em!important; white-space:nowrap; cursor:pointer; position:relative; z-index:2; pointer-events:auto; }
.dh-config-summary { margin:.8em 0; padding:.8em 1em; width:100%; max-width:100%; background:#eaf0e6; border:1px solid #b9c6b2; border-radius:3px; font-size:.95em; color:#203a31; }
.dh-config-summary:empty { display:none; }
.dh-config-loading-text,.dh-config-price-info { color:#62685f; font-style:italic; }
.dh-config-error { margin:.5em 0; color:#9b3922; font-size:.95em; }
.dh-config-qty-hidden, form.cart.dh-config-form .quantity { display:none!important; }
form.cart.dh-config-form button.dh-config-submit { position:static!important; float:none!important; clear:both; display:inline-flex!important; align-items:center; justify-content:center; width:auto; max-width:100%; margin-top:.75em; pointer-events:auto; z-index:1; }
button.dh-config-submit[disabled] { opacity:.45; cursor:not-allowed!important; }
@media(max-width:600px) {
 .dh-config-configurator { padding:1em; }
 .dh-config-attr-row { flex-direction:column; align-items:stretch; gap:.35em; }
 .dh-config-label { min-width:0; }
 .dh-config-select { max-width:100%; width:100%; }
 .dh-config-price-table th,.dh-config-price-table td { padding:.7em .55em; font-size:.9em; }
 form.cart.dh-config-form button.dh-config-submit { width:100%; }
}

/* Fixed variants need no empty selection panel. */
.dh-config-configurator:empty { display:none; }
form.cart.dh-config-form button.dh-config-submit,.dh-config-form button.dh-config-select-btn { background:#203a31!important; color:#f7f5ee!important; border:1px solid #203a31!important; }
form.cart.dh-config-form button.dh-config-submit:hover:not(:disabled),.dh-config-form button.dh-config-select-btn:hover { background:#304f40!important; }
.dh-config-form button:focus-visible { outline:2px solid #ad482b; outline-offset:3px; }
