/*
 * Manufaktur Suite – Shopseiten 1.4.0 (Spur T3): Suche, Produktübersicht mit Filtern, Produktkarte, Produktseite „Ab Lager“,
 * Warenkorb/Kasse (Schritte, Anmeldehinweis, Abzeichen je Position), Hilfsklassen. Werte ausschließlich über Tokens (--mfs-*).
 */

/* ---------- Suche ---------- */
.mfs-search-panel{background:var(--mfs-color-surface);border-bottom:1px solid var(--mfs-color-border);padding:14px 0}
.mfs-search-panel .mfs-container{display:flex;gap:10px;align-items:center}
.mfs-search-form{display:flex;flex:1;max-width:720px;min-width:0}
.mfs-search-form input[type=search]{flex:1;min-width:0;min-height:48px;padding:0 14px;border:1px solid var(--mfs-color-field-border);border-right:0;border-radius:var(--mfs-radius-field) 0 0 var(--mfs-radius-field);background:var(--mfs-color-field-bg);font-size:16px}
.mfs-search-form button{min-width:52px;min-height:48px;display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:0 var(--mfs-radius-field) var(--mfs-radius-field) 0;background:var(--mfs-btn-bg);color:var(--mfs-btn-text);cursor:pointer}
.mfs-search-form button:hover{background:var(--mfs-btn-hover-bg)}
.mfs-search-close{min-width:var(--mfs-target);min-height:var(--mfs-target);border:0;background:none;font-size:28px;line-height:1;color:var(--mfs-color-heading);cursor:pointer;border-radius:var(--mfs-radius)}
.mfs-search-form--hero{margin-top:18px}
.mfs-on-dark .mfs-search-form input[type=search]{border-color:transparent}
.mfs-on-dark .mfs-search-form button{background:var(--mfs-btn-on-dark-bg);color:var(--mfs-btn-on-dark-text)}

/* ---------- Übersicht: Kopf, Umschalter, Sortierung ---------- */
.mfs-catalog-head{background:var(--mfs-color-primary);color:var(--mfs-color-on-primary);padding:clamp(26px,4vw,44px) 0}
.mfs-catalog-head h1{margin:0;color:var(--mfs-color-on-primary);font-size:clamp(30px,3.6vw,44px)}
.mfs-catalog-lead{margin:8px 0 0;max-width:720px;opacity:.92}
.mfs-wc-content--catalog .mfs-category-intro{width:min(var(--mfs-width),calc(100% - 2 * var(--mfs-gutter)));margin:28px auto 0}
.mfs-catalog-bar{display:flex;flex-wrap:wrap;gap:12px 20px;align-items:center;justify-content:space-between;padding-top:24px}
.mfs-kind-switch{display:inline-flex;flex-wrap:wrap;border:1px solid var(--mfs-color-border-strong);border-radius:var(--mfs-radius);overflow:hidden}
.mfs-kind-switch a{display:inline-flex;align-items:center;gap:4px;min-height:var(--mfs-target);padding:0 18px;color:var(--mfs-color-heading);text-decoration:none;font-weight:600;background:var(--mfs-color-base)}
.mfs-kind-switch a+a{border-left:1px solid var(--mfs-color-border-strong)}
.mfs-kind-switch a[aria-current]{background:var(--mfs-color-primary);color:var(--mfs-color-on-primary)}
.mfs-kind-switch a:not([aria-current]):hover{background:var(--mfs-color-surface)}
.mfs-count{font-weight:400;opacity:.8}
.mfs-sort{display:flex;align-items:center;gap:10px;margin:0}
.mfs-sort label{font-size:15px}
.mfs-sort select{min-height:var(--mfs-target);padding:0 36px 0 12px;border:1px solid var(--mfs-color-field-border);border-radius:var(--mfs-radius-field);background-color:var(--mfs-color-field-bg);font-size:15px}
.mfs-sort-apply{min-height:var(--mfs-target)}

/* ---------- Übersicht: Filter + Ergebnisse ---------- */
.mfs-catalog-body{display:grid;grid-template-columns:minmax(200px,250px) minmax(0,1fr);gap:32px;align-items:start;padding-top:24px;padding-bottom:56px}
.mfs-catalog-body:not(:has(.mfs-filter)){grid-template-columns:minmax(0,1fr)}
.mfs-filter-form{display:flex;flex-direction:column;gap:22px}
.mfs-filter-group{border:0;margin:0;padding:0;min-width:0}
.mfs-filter-group legend{font-family:var(--mfs-font-heading);font-weight:700;color:var(--mfs-color-heading);margin-bottom:8px;padding:0}
.mfs-filter-options{display:flex;flex-direction:column;gap:2px}
.mfs-filter-group--swatch .mfs-filter-options{flex-direction:row;flex-wrap:wrap;gap:8px}
.mfs-check{display:flex;gap:10px;align-items:center;min-height:36px;cursor:pointer;font-size:15px}
.mfs-check input{width:20px;height:20px;margin:0;accent-color:var(--mfs-color-primary);flex:0 0 auto}
.mfs-check.is-disabled{opacity:.55;cursor:default}
.mfs-swatch{position:relative}
.mfs-swatch label{display:grid;place-items:center;width:var(--mfs-target);height:var(--mfs-target);border-radius:50%;cursor:pointer}
.mfs-swatch-dot{display:block;width:34px;height:34px;border-radius:50%;background:var(--mfs-swatch);box-shadow:inset 0 0 0 1px rgba(0,0,0,.18)}
.mfs-swatch input:checked+label{box-shadow:0 0 0 2px var(--mfs-color-primary)}
.mfs-swatch input:focus-visible+label{outline:3px solid var(--mfs-color-focus);outline-offset:2px}
.mfs-swatch input:disabled+label{opacity:.35;cursor:default}
.mfs-filter-actions{display:flex;flex-direction:column;gap:10px;align-items:flex-start}
.mfs-filter-reset{font-weight:600}
.mfs-filter-toggle{display:inline-flex;align-items:center;gap:8px;min-height:var(--mfs-target);padding:0 18px;border:1px solid var(--mfs-color-primary);border-radius:var(--mfs-radius);background:var(--mfs-color-base);color:var(--mfs-color-heading);font-weight:600;cursor:pointer}
.mfs-filter-n{display:inline-grid;place-items:center;min-width:22px;height:22px;padding:0 6px;border-radius:999px;background:var(--mfs-color-primary);color:var(--mfs-color-on-primary);font-size:13px}
.mfs-js .mfs-filter-apply{display:none!important}
.mfs-catalog-summary{display:flex;flex-wrap:wrap;gap:8px 14px;align-items:center;margin:0 0 16px}
.mfs-result-count{margin:0;color:var(--mfs-color-muted);font-size:15px}
.mfs-chips{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:0;padding:0}
.mfs-chip{display:inline-flex;align-items:center;gap:6px;min-height:34px;padding:0 12px;border-radius:999px;background:var(--mfs-color-surface);color:var(--mfs-color-heading);text-decoration:none;font-size:14px}
.mfs-chip:hover{background:var(--mfs-color-border)}
.mfs-wc-content--catalog .mfs-catalog-results ul.products{margin:0 0 32px;grid-template-columns:repeat(auto-fill,minmax(230px,1fr))}
.mfs-catalog-results .woocommerce-pagination{margin-top:8px}
.mfs-catalog-empty{padding:28px;border:1px solid var(--mfs-color-border);border-radius:var(--mfs-radius-panel);background:var(--mfs-color-surface)}
.mfs-catalog-empty p{margin:0 0 10px}
.mfs-catalog-guide{background:var(--mfs-color-surface)}
.mfs-catalog-guide-inner{display:flex;flex-wrap:wrap;gap:32px;padding:clamp(32px,5vw,52px) 0}
.mfs-guide-text{flex:2 1 460px;min-width:0}
.mfs-guide-text h2{margin-top:0;font-size:clamp(24px,2.4vw,30px)}
.mfs-guide-sample{flex:1 1 260px;min-width:0;align-self:flex-start;background:var(--mfs-color-base);border-radius:var(--mfs-radius-panel);padding:24px}
.mfs-guide-sample p{margin:0 0 8px}.mfs-guide-sample-title{font-weight:700;color:var(--mfs-color-heading)}
.mfs-guide-sample a{font-weight:600}

/* ---------- Produktkarte ---------- */
.woocommerce ul.products li.product.mfs-card{padding:0}
.mfs-card .mfs-card-media{display:block;background:var(--mfs-color-surface)}
.woocommerce ul.products li.product.mfs-card img{margin:0}
.mfs-card .mfs-badges--loop{position:absolute;top:12px;left:12px;right:12px;margin:0;pointer-events:none}
.mfs-card-body{display:flex;flex-direction:column;gap:6px;padding:14px 16px 16px;flex:1}
.woocommerce ul.products li.product .mfs-card-title{margin:0;font-size:var(--mfs-card-title-size);line-height:1.35}
.mfs-card-title a{color:var(--mfs-color-heading);text-decoration:none}
.mfs-card-title a:hover{text-decoration:underline}
.mfs-card-meta{margin:0;font-size:14px;color:var(--mfs-color-muted)}
.woocommerce ul.products li.product .mfs-card-price{margin:2px 0 0;font-family:var(--mfs-font-heading);font-size:19px;font-weight:800}
.mfs-card-price .mfs-price-lowest{display:block;font-family:var(--mfs-font-body);font-size:12px;font-weight:400;color:var(--mfs-color-muted)}
.mfs-card-legal{margin:0;font-size:13px;color:var(--mfs-color-muted);line-height:1.45}
.mfs-card-actions{margin-top:auto;padding-top:10px}
.woocommerce ul.products li.product .mfs-card-cta{display:flex;align-items:center;justify-content:center;width:100%;min-height:var(--mfs-target);margin:0;text-align:center}
.woocommerce ul.products li.product .mfs-card-cta--configure,.woocommerce ul.products li.product.outofstock .mfs-card-cta{background:var(--mfs-color-base);color:var(--mfs-btn-secondary-text);box-shadow:inset 0 0 0 2px var(--mfs-btn-secondary-border)}
.woocommerce ul.products li.product .mfs-card-cta--configure:hover{background:var(--mfs-color-primary);color:var(--mfs-color-on-primary)}
.mfs-card .added_to_cart{display:block;margin-top:8px;font-size:14px;font-weight:600}

/* ---------- Produktseite (Ab Lager) ---------- */
.woocommerce div.product .mfs-badges--single{margin-bottom:8px}
.mfs-single-subline{margin:-4px 0 12px;font-size:15px;color:var(--mfs-color-muted);display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.mfs-rating{display:inline-flex;gap:6px;align-items:center}.mfs-rating .star-rating{float:none;margin:0}
.mfs-single-legal{margin:-6px 0 14px;font-size:14px;color:var(--mfs-color-muted)}
.mfs-stock{display:flex;align-items:center;gap:10px;margin:0 0 16px;font-weight:600}
.mfs-stock-dot{width:10px;height:10px;border-radius:50%;background:currentColor;flex:0 0 auto}
.mfs-stock--instock{color:var(--mfs-color-success)}.mfs-stock--backorder{color:var(--mfs-color-warning)}.mfs-stock--outofstock{color:var(--mfs-color-danger)}
.mfs-var-select{position:absolute!important;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);width:1px;height:1px;overflow:hidden}
.mfs-var-buttons{display:flex;flex-wrap:wrap;gap:8px}
.mfs-var-button{min-height:var(--mfs-target);padding:8px 16px;border:1px solid var(--mfs-color-border-strong);border-radius:var(--mfs-radius);background:var(--mfs-color-base);color:var(--mfs-color-heading);font-weight:600;cursor:pointer}
.mfs-var-button[aria-checked=true]{border:2px solid var(--mfs-color-primary);padding:7px 15px}
.mfs-var-button.is-soldout{border-style:dashed;color:var(--mfs-color-muted);font-weight:400;cursor:not-allowed;text-decoration:line-through;text-decoration-thickness:1px}
.mfs-var-button.is-soldout .mfs-var-soldout{text-decoration:none;display:inline-block}
.woocommerce div.product form.cart .variations{margin-bottom:12px}
.woocommerce div.product form.cart .variations th,.woocommerce div.product form.cart .variations td{display:block;padding:0 0 8px;text-align:left}
.woocommerce div.product form.cart .reset_variations{display:inline-block;margin-top:6px}
.mfs-trust-list{list-style:none;margin:18px 0;padding:16px 18px;background:var(--mfs-color-surface);border-radius:var(--mfs-radius-panel);display:grid;gap:6px;font-size:15px;color:var(--mfs-color-heading)}
.mfs-trust-list li{display:flex;gap:10px;align-items:flex-start}.mfs-trust-list svg{flex:0 0 auto;margin-top:3px;color:var(--mfs-color-success)}
.mfs-mass-alt{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:0 0 18px;padding:16px 18px;border:1px solid var(--mfs-color-border);border-radius:var(--mfs-radius-panel);color:var(--mfs-color-heading);text-decoration:none}
.mfs-mass-alt>span:first-child{display:flex;flex-direction:column}.mfs-mass-alt>span:first-child>span{color:var(--mfs-color-muted);font-size:15px}
.mfs-mass-alt-cta{font-weight:700;color:var(--mfs-color-link);white-space:nowrap}
.mfs-mass-alt:hover{border-color:var(--mfs-color-primary)}
.mfs-accessories{clear:both;background:var(--mfs-color-surface);margin:40px 0 0;padding:clamp(22px,3vw,36px);border-radius:var(--mfs-radius-panel)}
.mfs-accessories>.mfs-container{width:100%}
.mfs-accessories h2{margin:0 0 18px;font-size:clamp(22px,2.2vw,28px)}
.mfs-acc-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}
.mfs-acc-item a{display:flex;gap:14px;align-items:center;padding:14px;border-radius:var(--mfs-radius-panel);background:var(--mfs-color-base);color:var(--mfs-color-text);text-decoration:none;height:100%}
.mfs-acc-item img{width:72px;height:72px;object-fit:cover;border-radius:var(--mfs-radius);flex:0 0 auto}
.mfs-acc-text{display:flex;flex-direction:column;font-size:15px}.mfs-acc-text strong{color:var(--mfs-color-heading)}.mfs-acc-kind{font-size:13px;color:var(--mfs-color-muted)}

/* ---------- Abzeichen je Warenkorb-Position (Eintrag „Art“) ---------- */
.wc-block-components-product-details__art .wc-block-components-product-details__name,.wc-block-components-product-details__art-der-fertigung .wc-block-components-product-details__name,dl.variation dt.variation-Art,dl.variation dt.variation-ArtderFertigung{position:absolute!important;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);width:1px;height:1px;overflow:hidden}
.wc-block-components-product-details__art .wc-block-components-product-details__value:not(:has(.mfs-item-kind)),.wc-block-components-product-details__art-der-fertigung .wc-block-components-product-details__value:not(:has(.mfs-item-kind)){display:inline-block;margin:2px 0 4px;padding:2px 10px;border-radius:var(--mfs-radius-badge);font-size:13px;font-weight:600;background:var(--mfs-badge-stock-bg);color:var(--mfs-badge-stock-text)}
.wc-block-components-product-details__art-der-fertigung .wc-block-components-product-details__value:not(:has(.mfs-item-kind)){background:var(--mfs-badge-custom-bg);color:var(--mfs-badge-custom-text)}
dl.variation dd.variation-Art{margin:0}
.mfs-item-kind{display:inline-block;margin:2px 0 4px;padding:2px 10px;border-radius:var(--mfs-radius-badge);font-size:13px;font-weight:600;background:var(--mfs-badge-stock-bg);color:var(--mfs-badge-stock-text)}
.mfs-item-kind--mass{background:var(--mfs-badge-custom-bg);color:var(--mfs-badge-custom-text)}

/* ---------- Schritte, Anmeldehinweis, Kasse ---------- */
.mfs-steps{margin:0 0 24px}
.mfs-steps ol{display:flex;flex-wrap:wrap;gap:8px 28px;list-style:none;margin:0;padding:0;counter-reset:none}
.mfs-steps li{display:flex;align-items:center;gap:10px;color:var(--mfs-color-muted);font-weight:600}
.mfs-steps li a{display:flex;align-items:center;gap:10px;color:inherit;text-decoration:none;min-height:var(--mfs-target)}
.mfs-step-n{display:inline-grid;place-items:center;width:30px;height:30px;border-radius:50%;border:1px solid var(--mfs-color-border-strong);font-size:14px}
.mfs-steps li.is-current{color:var(--mfs-color-heading)}.mfs-steps li.is-current .mfs-step-n{background:var(--mfs-color-primary);border-color:var(--mfs-color-primary);color:var(--mfs-color-on-primary)}
.mfs-steps li.is-done{color:var(--mfs-color-success)}.mfs-steps li.is-done .mfs-step-n{border-color:currentColor}
.mfs-login-hint{display:flex;flex-wrap:wrap;gap:12px 20px;align-items:center;justify-content:space-between;margin:0 0 24px;padding:16px 20px;background:var(--mfs-color-surface);border-radius:var(--mfs-radius-panel)}
.mfs-login-hint p{margin:0;flex:1 1 320px}
.mfs-btn-secondary,.woocommerce a.button.mfs-btn-secondary{background:var(--mfs-color-base)!important;color:var(--mfs-btn-secondary-text)!important;box-shadow:inset 0 0 0 2px var(--mfs-btn-secondary-border)}
.mfs-is-empty{display:none!important}
.mfs-mass-note{margin:12px 0 0;padding:10px 12px;border-radius:var(--mfs-radius);background:var(--mfs-color-warning-soft);color:var(--mfs-color-text);font-size:14px}

/* ---------- Responsive ---------- */
@media (max-width:900px){
 .mfs-catalog-body{grid-template-columns:minmax(0,1fr);gap:16px}
 .mfs-filter-form{padding:16px;border:1px solid var(--mfs-color-border);border-radius:var(--mfs-radius-panel);margin-top:10px}
 .mfs-catalog-bar{align-items:stretch}
 .mfs-kind-switch{width:100%}.mfs-kind-switch a{flex:1 1 auto;justify-content:center;padding:0 10px}
}
@media (max-width:600px){
 .mfs-wc-content--catalog .mfs-catalog-results ul.products{grid-template-columns:repeat(var(--mfs-mobile-product-columns),minmax(0,1fr));gap:12px}
 .mfs-card-body{padding:12px}
 .woocommerce ul.products li.product .mfs-card-price{font-size:17px}
 .mfs-sort{width:100%}.mfs-sort select{flex:1}
 .mfs-steps ol{gap:6px 14px;font-size:14px}.mfs-steps li:not(.is-current) span:not(.mfs-step-n){position:absolute!important;clip:rect(1px,1px,1px,1px);width:1px;height:1px;overflow:hidden}
 .mfs-mass-alt{flex-direction:column;align-items:flex-start}
}

/* ---------- Lieferwunsch (gemischte Bestellung) & Hinweise in Warenkorb/Kasse ---------- */
.mfs-delivery-choice{margin:20px 0;padding:16px 18px;border:1px solid var(--mfs-color-border);border-radius:var(--mfs-radius-panel);background:var(--mfs-color-base)}
.mfs-order-meta .mfs-delivery-choice{margin:12px 0}
.mfs-delivery-choice legend{padding:0 4px;font-family:var(--mfs-font-heading);font-weight:700;color:var(--mfs-color-heading)}
.mfs-delivery-option{display:flex;gap:10px;align-items:flex-start;min-height:var(--mfs-target);padding:6px 0;cursor:pointer}
.mfs-delivery-option input{width:20px;height:20px;margin:2px 0 0;flex:0 0 auto;accent-color:var(--mfs-color-primary)}
.mfs-delivery-hint{margin:6px 0 0;font-size:14px;color:var(--mfs-color-muted)}
.mfs-order-meta{padding:0 16px 8px}
.wc-block-components-sidebar .mfs-order-meta{padding:0}
.woocommerce-checkout-review-order .mfs-delivery-choice{margin:0 0 16px}
.mfs-mass-note-row td{padding:0!important;border:0!important}
/* Positionsangaben untereinander statt „ / “-Kette (Block-Warenkorb/Kasse) */
.wc-block-components-product-details{display:flex;flex-direction:column;gap:1px;margin:4px 0 6px}
.wc-block-components-product-details>*{display:block;margin:0;font-size:14px;color:var(--mfs-color-muted)}
.wc-block-components-product-details span[aria-hidden=true]{display:none}
.wc-block-components-product-details__anpassung .wc-block-components-product-details__name{position:absolute!important;clip:rect(1px,1px,1px,1px);width:1px;height:1px;overflow:hidden}
.wc-block-components-product-details__anpassung a{font-weight:600}
dl.variation dt.variation-Anpassung{position:absolute!important;clip:rect(1px,1px,1px,1px);width:1px;height:1px;overflow:hidden}
/* Klassisch: Positionsangaben kompakt */
.woocommerce dl.variation{display:grid;grid-template-columns:max-content minmax(0,1fr);gap:1px 8px;margin:6px 0 0;font-size:14px}
.woocommerce dl.variation dt{margin:0;font-weight:400;color:var(--mfs-color-muted)}
.woocommerce dl.variation dd{margin:0}.woocommerce dl.variation dd p{margin:0}
.woocommerce dl.variation dd.variation-Art,.woocommerce dl.variation dd.variation-ArtderFertigung,.woocommerce dl.variation dd.variation-Anpassung{grid-column:1/-1}
.woocommerce ul.products li.product .mfs-card-legal a,.mfs-card-legal a,.mfs-single-legal a,.mfs-cfgui-legal a{text-decoration:underline;color:inherit}
.mfs-promo-note a{color:var(--mfs-color-heading)}
.woocommerce div.product form.cart .single_add_to_cart_button.disabled,.woocommerce div.product form.cart .single_add_to_cart_button:disabled{opacity:1!important;background:var(--mfs-color-muted)!important;color:var(--mfs-color-on-primary)!important;cursor:not-allowed}
.woocommerce small.includes_tax,.woocommerce small.includes_tax *{color:var(--mfs-color-muted)!important}
.woocommerce-info a,.woocommerce #payment a,.woocommerce-checkout #payment a{color:var(--mfs-color-heading)}
