/* ==========================================================================
   OH Seelengarten – WooCommerce
   ========================================================================== */

.ohsg-shop{padding-block:clamp(32px,5vw,64px)}
.ohsg-shop--sidebar{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:48px;align-items:start}
.ohsg-shop__sidebar .ohsg-widget{background:var(--ohsg-white);border:1px solid var(--ohsg-line);border-radius:var(--ohsg-radius);padding:24px;margin-bottom:20px}
.ohsg-shop__sidebar .ohsg-widget__title{font-size:21px}
.ohsg-shop__sidebar ul{list-style:none;margin:0;padding:0}
.ohsg-shop__sidebar li{padding:5px 0}
.ohsg-shop__sidebar li a{color:var(--ohsg-ink)}
.ohsg-shop__sidebar li a:hover{color:var(--ohsg-accent)}
.ohsg-shop__sidebar .count{color:var(--ohsg-soft);font-size:14px}

.woocommerce-breadcrumb{font-size:14px;color:var(--ohsg-soft);margin-bottom:20px}
.woocommerce-breadcrumb a{color:var(--ohsg-soft)}
.woocommerce-products-header__title,.woocommerce .page-title{font-family:var(--ohsg-serif);font-size:clamp(34px,4vw,50px);margin:0 0 12px}
.term-description{color:var(--ohsg-muted);max-width:44em;margin-bottom:24px}
.woocommerce-result-count{color:var(--ohsg-soft);font-size:15px}
.woocommerce-ordering select{border-radius:999px;padding:10px 18px}

/* Produktraster ----------------------------------------------------------- */
.woocommerce ul.products{list-style:none;margin:0 0 32px;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:36px 28px;clear:both}
.woocommerce ul.products::before,.woocommerce ul.products::after{display:none}
.woocommerce ul.products li.product{width:auto!important;margin:0!important;float:none!important;display:flex;flex-direction:column;gap:8px;position:relative}
.woocommerce ul.products li.product a.woocommerce-LoopProduct-link{display:flex;flex-direction:column;gap:10px;color:var(--ohsg-ink)}
/* Einheitliche Bildkacheln */
.ohsg-thumb{display:block;position:relative;width:100%;aspect-ratio:1/1;border-radius:var(--ohsg-radius);overflow:hidden;background:var(--ohsg-white);border:1px solid var(--ohsg-line)}
.ohsg-ratio-4-5 .ohsg-thumb{aspect-ratio:4/5}
.ohsg-ratio-3-4 .ohsg-thumb{aspect-ratio:3/4}
.woocommerce ul.products li.product .ohsg-thumb img,
.woocommerce ul.products li.product a .ohsg-thumb img{position:absolute;inset:0;width:100%!important;height:100%!important;max-width:none;margin:0!important;padding:7%;object-fit:contain;object-position:center;border-radius:0;background:transparent;box-shadow:none}
.ohsg-fit-cover .woocommerce ul.products li.product .ohsg-thumb img,
.ohsg-fit-cover.woocommerce ul.products li.product .ohsg-thumb img,
.ohsg-fit-cover ul.products li.product .ohsg-thumb img{padding:0!important;object-fit:cover!important}
.ohsg-fit-cover .ohsg-thumb{border:0;background:#F3EEF7}
/* Titel auf zwei Zeilen begrenzen, damit Preise und Buttons auf einer Linie stehen */
.woocommerce ul.products li.product .woocommerce-loop-product__title{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:2.6em}
.woocommerce ul.products li.product .woocommerce-loop-product__title{font-family:var(--ohsg-sans);font-size:18px;font-weight:700;line-height:1.3;margin:4px 0 0;padding:0}
.woocommerce ul.products li.product .price{font-size:18px;font-weight:700;color:var(--ohsg-ink);margin:0}
.woocommerce ul.products li.product .price del{color:var(--ohsg-soft);font-weight:400;font-size:15px;margin-right:6px}
.woocommerce ul.products li.product .price ins{text-decoration:none;color:var(--ohsg-warm)}
.woocommerce ul.products li.product .star-rating{font-size:13px;margin:0}
.woocommerce span.onsale{position:absolute;top:12px;left:12px;right:auto;z-index:2;min-width:0;min-height:0;padding:6px 12px;border-radius:999px;background:var(--ohsg-warm);color:#fff;font-size:13px;font-weight:700;line-height:1.2}

/* Germanized / German Market: Hinweise klein und ruhig */
.woocommerce ul.products li.product .wc-gzd-additional-info,
.woocommerce ul.products li.product .price-unit,
.woocommerce ul.products li.product .product-units,
.woocommerce ul.products li.product .shipping-costs-info,
.woocommerce ul.products li.product .tax-info,
.woocommerce ul.products li.product .wgm-info{font-size:12.5px;line-height:1.45;color:var(--ohsg-soft);margin:0}
.woocommerce ul.products li.product .wc-gzd-additional-info a,
.woocommerce ul.products li.product .shipping-costs-info a{color:var(--ohsg-soft);text-decoration:underline}

.woocommerce ul.products li.product .button{margin-top:auto;align-self:stretch;min-height:48px;display:flex;align-items:center;justify-content:center;border-radius:999px;background:var(--ohsg-white);color:var(--ohsg-accent);border:1px solid var(--ohsg-accent);font-weight:700;font-size:15px;padding:10px 18px;line-height:1.2;text-align:center}
.woocommerce ul.products li.product .button:hover{background:var(--ohsg-accent);color:var(--ohsg-white)}
.woocommerce ul.products li.product .added_to_cart{font-size:14px;font-weight:700;text-align:center}

/* Buttons allgemein */
.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.woocommerce #respond input#submit,
.woocommerce a.button.alt,.woocommerce button.button.alt,.woocommerce input.button.alt{background:var(--ohsg-accent);color:var(--ohsg-white);border-radius:999px;padding:14px 28px;font-weight:700;font-family:var(--ohsg-sans);border:0;line-height:1.2}
.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce input.button:hover,
.woocommerce a.button.alt:hover,.woocommerce button.button.alt:hover{background:var(--ohsg-accent-dark);color:var(--ohsg-white)}
.woocommerce button.button:disabled,.woocommerce button.button.alt.disabled{opacity:.55}

/* Einzelprodukt ----------------------------------------------------------- */
.woocommerce div.product{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(32px,5vw,72px);align-items:start}
.woocommerce div.product div.images,.woocommerce div.product div.summary{width:auto;float:none;margin:0}
.woocommerce div.product div.images img{border-radius:var(--ohsg-radius)}
.woocommerce div.product .flex-control-thumbs{display:flex;gap:10px;margin-top:12px!important}
.woocommerce div.product .flex-control-thumbs li{width:80px!important}
.woocommerce div.product .flex-control-thumbs img{border-radius:12px}
.woocommerce div.product .product_title{font-family:var(--ohsg-serif);font-size:clamp(32px,3.4vw,46px);margin:0 0 12px}
.woocommerce div.product p.price,.woocommerce div.product span.price{color:var(--ohsg-ink);font-size:26px;font-weight:700}
.woocommerce div.product p.price ins{text-decoration:none;color:var(--ohsg-warm)}
.woocommerce div.product .woocommerce-product-details__short-description{color:var(--ohsg-muted);margin:16px 0 24px}
.woocommerce div.product form.cart{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin:24px 0}
.woocommerce div.product form.cart .quantity .qty{width:76px;height:52px;border-radius:999px;text-align:center}
.woocommerce div.product form.cart .single_add_to_cart_button{min-height:52px;padding:0 36px;font-size:16px}
.woocommerce div.product .product_meta{font-size:14px;color:var(--ohsg-soft);border-top:1px solid var(--ohsg-line);padding-top:16px}
.woocommerce div.product .product_meta>span{display:block;margin-bottom:4px}

.woocommerce div.product .woocommerce-tabs,.woocommerce div.product .related,.woocommerce div.product .upsells{grid-column:1/-1}
.woocommerce div.product .woocommerce-tabs ul.tabs{padding:0;margin:0 0 24px;display:flex;gap:8px;flex-wrap:wrap;border-bottom:1px solid var(--ohsg-line)}
.woocommerce div.product .woocommerce-tabs ul.tabs::before,.woocommerce div.product .woocommerce-tabs ul.tabs li::before,.woocommerce div.product .woocommerce-tabs ul.tabs li::after{display:none}
.woocommerce div.product .woocommerce-tabs ul.tabs li{background:none;border:0;margin:0;padding:0;border-radius:0}
.woocommerce div.product .woocommerce-tabs ul.tabs li a{display:block;padding:12px 18px;font-weight:700;color:var(--ohsg-soft)}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a{color:var(--ohsg-accent);box-shadow:inset 0 -2px 0 var(--ohsg-accent)}
.woocommerce div.product .woocommerce-tabs .panel{max-width:52em}
.woocommerce div.product .woocommerce-tabs .panel h2:first-child{display:none}
.woocommerce .related>h2,.woocommerce .upsells>h2{font-size:clamp(28px,3vw,38px);margin:48px 0 28px}

/* Hinweise ---------------------------------------------------------------- */
.woocommerce-message,.woocommerce-info,.woocommerce-error{border:0;border-radius:16px;background:var(--ohsg-white);box-shadow:inset 4px 0 0 var(--ohsg-accent);padding:18px 22px 18px 54px;color:var(--ohsg-ink)}
.woocommerce-error{box-shadow:inset 4px 0 0 #B3261E}
.woocommerce-message::before,.woocommerce-info::before{color:var(--ohsg-accent)}
.woocommerce-message .button{float:right}

/* Seitenzahlen */
.woocommerce nav.woocommerce-pagination ul{border:0;display:inline-flex;gap:8px}
.woocommerce nav.woocommerce-pagination ul li{border:0}
.woocommerce nav.woocommerce-pagination ul li a,.woocommerce nav.woocommerce-pagination ul li span{min-width:44px;min-height:44px;display:grid;place-items:center;border-radius:50%;background:var(--ohsg-white);color:var(--ohsg-ink);font-weight:700}
.woocommerce nav.woocommerce-pagination ul li span.current{background:var(--ohsg-accent);color:var(--ohsg-white)}

/* Warenkorb & Kasse -------------------------------------------------------- */
.woocommerce table.shop_table{border:1px solid var(--ohsg-line);border-radius:var(--ohsg-radius);background:var(--ohsg-white);border-collapse:separate;overflow:hidden}
.woocommerce table.shop_table th{font-weight:700}
.woocommerce table.shop_table td,.woocommerce table.shop_table th{border-color:var(--ohsg-line);padding:16px}
.woocommerce table.cart img{width:80px;border-radius:12px}
.woocommerce .cart-collaterals .cart_totals h2,.woocommerce-checkout h3{font-size:28px}
.woocommerce form .form-row label{font-weight:600;font-size:15px}
.woocommerce form .form-row .input-text,.woocommerce form .form-row select{height:50px}
.woocommerce form .form-row textarea{height:auto}
.woocommerce-checkout #payment{background:var(--ohsg-white);border-radius:var(--ohsg-radius);border:1px solid var(--ohsg-line)}
.woocommerce-checkout #payment div.payment_box{background:var(--ohsg-lavender);border-radius:12px}
.woocommerce-checkout #payment div.payment_box::before{border-bottom-color:var(--ohsg-lavender)}
#place_order{min-height:56px;font-size:17px;width:100%}

/* Gutschein im Warenkorb: gut sichtbar als eigene Box */
body.woocommerce-cart table.cart td.actions{padding:20px}
body.woocommerce-cart table.cart td.actions .coupon{float:none;display:flex;flex-wrap:wrap;align-items:center;gap:12px;width:100%;box-sizing:border-box;margin:0 0 16px;padding:20px 22px;background:var(--ohsg-lavender);border:1.5px dashed var(--ohsg-accent);border-radius:18px;text-align:left}
body.woocommerce-cart table.cart td.actions .coupon label{position:static!important;width:auto!important;height:auto!important;clip:auto!important;overflow:visible!important;white-space:normal!important;flex-basis:100%;display:flex;align-items:center;gap:10px;margin:0 0 2px;font-family:var(--ohsg-serif);font-size:22px;font-weight:400;color:var(--ohsg-ink)}
body.woocommerce-cart table.cart td.actions .coupon label::before{content:"";flex:none;width:30px;height:30px;border-radius:50%;background:var(--ohsg-accent) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 9V6.5A1.5 1.5 0 0 1 4.5 5h15A1.5 1.5 0 0 1 21 6.5V9a3 3 0 0 0 0 6v2.5a1.5 1.5 0 0 1-1.5 1.5h-15A1.5 1.5 0 0 1 3 17.5V15a3 3 0 0 0 0-6z'/%3E%3Cpath d='M14 5v2M14 11v2M14 17v2'/%3E%3C/svg%3E") center/18px no-repeat}
body.woocommerce-cart table.cart td.actions .coupon .input-text,
body.woocommerce-cart table.cart td.actions .coupon #coupon_code{float:none;flex:1 1 260px;width:auto!important;max-width:380px;height:56px;margin:0;padding:0 22px;font-size:17px;letter-spacing:.03em;color:var(--ohsg-ink);background:#fff;border:2px solid #C9BADB;border-radius:999px}
body.woocommerce-cart table.cart td.actions .coupon #coupon_code:focus{border-color:var(--ohsg-accent);outline:none;box-shadow:0 0 0 3px rgba(91,58,140,.18)}
body.woocommerce-cart table.cart td.actions .coupon .button{float:none;height:56px;padding:0 30px;font-size:16px;border-radius:999px;background:var(--ohsg-accent);color:#fff;white-space:nowrap}
body.woocommerce-cart table.cart td.actions .coupon .button:hover{background:var(--ohsg-accent-dark)}
body.woocommerce-cart table.cart td.actions>.button[name="update_cart"]{float:right;background:transparent;color:var(--ohsg-accent);border:1px solid var(--ohsg-accent)}
body.woocommerce-cart table.cart td.actions>.button[name="update_cart"]:not(:disabled):hover{background:var(--ohsg-accent);color:#fff}
@media (max-width:600px){
	body.woocommerce-cart table.cart td.actions .coupon .input-text,
	body.woocommerce-cart table.cart td.actions .coupon #coupon_code{flex-basis:100%;max-width:none}
	body.woocommerce-cart table.cart td.actions .coupon .button{width:100%}
	body.woocommerce-cart table.cart td.actions>.button[name="update_cart"]{float:none;width:100%}
}

/* Mein Konto */
.woocommerce-account .woocommerce-MyAccount-navigation ul{list-style:none;padding:0;margin:0}
.woocommerce-account .woocommerce-MyAccount-navigation li a{display:block;padding:12px 16px;border-radius:12px;color:var(--ohsg-ink);font-weight:600}
.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a{background:var(--ohsg-lavender);color:#3B245E}

/* Responsiv --------------------------------------------------------------- */
@media (max-width:1100px){
	.woocommerce ul.products{grid-template-columns:repeat(3,minmax(0,1fr))}
	.ohsg-shop--sidebar{grid-template-columns:1fr}
	.ohsg-shop__sidebar{order:-1}
}
@media (max-width:820px){
	.woocommerce ul.products{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 16px}
	.woocommerce div.product{grid-template-columns:1fr}
	.woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:16px}
}

/* Handy: zwei Spalten, kompakter Button in einer Zeile */
@media (max-width:600px){
	.woocommerce ul.products{grid-template-columns:repeat(2,minmax(0,1fr))}
	.woocommerce ul.products li.product .button{min-height:42px;padding:8px 6px;font-size:13.5px;white-space:nowrap;letter-spacing:-.01em}
}

/* Seitenleiste im Shop: Widgets im Seelengarten-Stil */
.ohsg-shop__sidebar a{color:var(--ohsg-ink)!important}
.ohsg-shop__sidebar a:hover{color:var(--ohsg-accent)!important}
.ohsg-shop__sidebar .wp-block-search__inside-wrapper{display:flex;gap:8px}
.ohsg-shop__sidebar .wp-block-search__input,.ohsg-shop__sidebar input[type=search]{flex:1;min-width:0;height:46px;border-radius:999px;border:1px solid #D9CFE4;padding:0 16px}
.ohsg-shop__sidebar .wp-block-search__button,.ohsg-shop__sidebar button[type=submit]{height:46px;padding:0 18px;border:0;border-radius:999px;background:var(--ohsg-accent);color:#fff;font-weight:700;cursor:pointer}
.ohsg-shop__sidebar .wp-block-search__label{font-weight:700;font-size:15px}

/* „Vor kurzem angeschaut“ und andere Produktlisten-Widgets: übersichtliche Zeilen mit Bild links */
.ohsg-shop__sidebar .product_list_widget{list-style:none;margin:0;padding:0}
.ohsg-shop__sidebar ul.product_list_widget li{position:relative;display:flow-root;min-height:60px;margin:0!important;padding:14px 0 14px 74px!important;border-top:1px solid var(--ohsg-line);font-size:15px;line-height:1.45;color:var(--ohsg-ink)}
.ohsg-shop__sidebar ul.product_list_widget li:first-child{border-top:0;padding-top:2px!important}
.ohsg-shop__sidebar .product_list_widget li::before,.ohsg-shop__sidebar .product_list_widget li::after{display:none}
.ohsg-shop__sidebar .product_list_widget li img{position:absolute;left:0;top:14px;float:none!important;width:60px!important;height:60px!important;margin:0!important;padding:4px;box-sizing:border-box;object-fit:contain;background:#fff;border:1px solid var(--ohsg-line);border-radius:12px;box-shadow:none}
.ohsg-shop__sidebar .product_list_widget li:first-child img{top:2px}
.ohsg-shop__sidebar .product_list_widget li>a{display:block;margin-bottom:4px}
.ohsg-shop__sidebar .product_list_widget li .product-title{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-weight:700;font-size:15px;line-height:1.3;color:var(--ohsg-ink)}
.ohsg-shop__sidebar .product_list_widget li>a:hover .product-title{color:var(--ohsg-accent)}
.ohsg-shop__sidebar .product_list_widget li .woocommerce-Price-amount{font-weight:600}
.ohsg-shop__sidebar .product_list_widget li del .woocommerce-Price-amount{font-weight:400;color:var(--ohsg-soft)}
.ohsg-shop__sidebar .product_list_widget li ins{text-decoration:none;color:var(--ohsg-warm)}
.ohsg-shop__sidebar .product_list_widget li .woocommerce-price-suffix{font-size:13px;color:var(--ohsg-soft)}
.ohsg-shop__sidebar .product_list_widget li .wc-gzd-additional-info,.ohsg-shop__sidebar .product_list_widget li p{display:block;margin:2px 0 0;font-size:12.5px;line-height:1.45;color:var(--ohsg-soft)}
.ohsg-shop__sidebar .product_list_widget li .wc-gzd-additional-info a{color:var(--ohsg-soft)!important;text-decoration:underline;font-weight:400}
.ohsg-shop__sidebar .product_list_widget li .star-rating{display:block;font-size:12px;margin:2px 0}

/* Produktlisten (Neu im Shop, Bestseller …) */
.ohsg-list-intro{margin:4px 0 28px;color:var(--ohsg-muted)}
.ohsg-list-intro a{font-weight:700;margin-left:6px}

/* Shop-Navigation: „Alle Kategorien“, „Zurück zu …“, Kategorie-Leiste */
.ohsg-catnav{margin:0 0 28px}
.ohsg-catnav__back{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:14px}
.ohsg-catnav__all,.ohsg-catnav__up{display:inline-flex;align-items:center;gap:8px;min-height:42px;padding:0 18px;border-radius:999px;font-weight:700;font-size:14.5px}
.ohsg-catnav__all{background:var(--ohsg-accent);color:#fff!important}
.ohsg-catnav__all:hover{background:var(--ohsg-accent-dark)}
.ohsg-catnav__up{background:var(--ohsg-white);border:1px solid var(--ohsg-line);color:var(--ohsg-ink)!important}
.ohsg-catnav__up:hover{border-color:var(--ohsg-accent);color:var(--ohsg-accent)!important}
.ohsg-catnav__chips{list-style:none;margin:0;padding:2px 2px 10px;display:flex;gap:8px;overflow-x:auto;scrollbar-width:thin;-webkit-overflow-scrolling:touch}
.ohsg-catnav__chips li{flex:none}
.ohsg-chip{display:inline-flex;align-items:center;min-height:38px;padding:0 16px;border-radius:999px;background:var(--ohsg-white);border:1px solid var(--ohsg-line);color:var(--ohsg-ink)!important;font-size:14px;font-weight:600;white-space:nowrap}
.ohsg-chip:hover{border-color:var(--ohsg-accent)}
.ohsg-chip.is-active{background:var(--ohsg-lavender);border-color:var(--ohsg-accent);color:#3B245E!important}
.ohsg-catnav__chips--sub{margin-top:2px}
.ohsg-chip--sub{min-height:34px;font-size:13.5px;font-weight:600;background:transparent}
.ohsg-chip--sub span{color:var(--ohsg-soft);font-weight:400;margin-left:4px}
.ohsg-catnav--product{margin-bottom:22px}
