/*
 * CATBOO Members – Store (Übersicht, Produktseite, Kasse) und „My purchases“.
 * Baut auf site.css auf (Farben über die Variablen von .cbm-app).
 */
.cbm-store { max-width: 1312px; }
.cbm-store .screen-reader-text { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
#top .cbm-app.cbm-store a { text-decoration: none; }
#top .cbm-app.cbm-store h1, #top .cbm-app.cbm-store h2, #top .cbm-app.cbm-store h3 { color: var(--cbm-ink); text-transform: none; letter-spacing: normal; }

/* Banner Generalrabatt */
.cbm-store-banner { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 14px 20px; margin-bottom: 22px; border-radius: 14px; background: var(--cbm-grad); color: #fff; }
.cbm-store-banner div { display: flex; flex-direction: column; }
#top .cbm-store-banner strong, .cbm-store-banner strong { color: #fff; font-size: 16px; }
.cbm-store-banner span { font-size: 13px; opacity: .92; }
.cbm-store-banner em { font-style: normal; white-space: nowrap; padding: 6px 12px; border-radius: 999px; background: rgba(255, 255, 255, .2); font-size: 12px; font-weight: 700; }

/* Kopf */
.cbm-store-hero { display: flex; justify-content: space-between; align-items: center; gap: 24px; margin-bottom: 18px; }
#top .cbm-app .cbm-store-h1, .cbm-store-h1 { margin: 0 0 6px; font-size: 30px; line-height: 1.2; letter-spacing: -0.01em; }
.cbm-store-hero p { max-width: 640px; }
.cbm-app a.cbm-store-join { display: flex; flex-direction: column; gap: 2px; min-width: 280px; padding: 14px 18px; border-radius: 14px; border: 1px solid #f1d6e0; background: linear-gradient(90deg, #fdeef1, #f4ecfa); color: var(--cbm-ink); }
.cbm-store-join span { font-size: 12px; color: var(--cbm-muted); }
.cbm-store-join em { font-style: normal; font-weight: 700; font-size: 13px; color: var(--cbm-rose-ink); }

/* Leiste: Suche, Filter-Chips, Sortierung */
.cbm-store-bar { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 16px; padding: 10px 0 18px; margin-bottom: 22px; border-bottom: 1px solid var(--cbm-line-2); }
.cbm-store-search { flex: 0 1 420px; display: flex; align-items: center; gap: 10px; height: 46px; padding: 0 18px; border: 1px solid var(--cbm-line); border-radius: 999px; color: var(--cbm-muted); background: #fff; }
.cbm-store-search input { flex: 1; min-width: 0; border: 0 !important; outline: 0; background: transparent !important; font: inherit; font-size: 14px; color: var(--cbm-ink); padding: 0 !important; margin: 0 !important; box-shadow: none !important; height: auto; }
.cbm-store-chips { flex: 1; display: flex; flex-wrap: wrap; gap: 8px; align-items: center; min-width: 0; }
.cbm-app a.cbm-store-chip { display: inline-flex; gap: 6px; align-items: center; padding: 6px 12px; border-radius: 999px; background: var(--cbm-ink); color: #fff; font-size: 13px; font-weight: 600; }
.cbm-app a.cbm-store-clear { font-size: 13px; color: var(--cbm-rose-ink); }
.cbm-store-sort { display: flex; align-items: center; gap: 14px; font-size: 13px; }
.cbm-store-sort select { height: 40px; padding: 0 12px; border: 1px solid var(--cbm-line); border-radius: 10px; font: inherit; font-size: 13px; font-weight: 600; color: var(--cbm-ink); background: #fff; margin: 0; }

/* Raster */
.cbm-store-layout { display: grid; grid-template-columns: 240px minmax(0, 1fr); gap: 32px; align-items: start; }
.cbm-store-side { position: sticky; top: 24px; display: flex; flex-direction: column; gap: 22px; }
.cbm-store-fgroup h4 { margin: 0 0 10px; font-size: 12px; letter-spacing: .08em; text-transform: uppercase; color: var(--cbm-muted); }
.cbm-app a.cbm-store-check { display: flex; align-items: center; gap: 10px; padding: 5px 0; font-size: 14px; color: var(--cbm-ink); }
.cbm-store-check em { margin-left: auto; font-style: normal; font-size: 12px; color: #a69a90; }
.cbm-store-check.is-on { font-weight: 600; }
.cbm-store-check.is-extra { display: none; }
.cbm-store-fgroup.is-open .cbm-store-check.is-extra { display: flex; }
.cbm-store-box { flex: none; width: 18px; height: 18px; border-radius: 5px; border: 1.5px solid #cfc6bd; display: flex; align-items: center; justify-content: center; font-size: 11px; color: #fff; }
.cbm-store-check.is-on .cbm-store-box { background: var(--cbm-rose-ink); border-color: var(--cbm-rose-ink); }
.cbm-app .cbm-store-more { margin-top: 4px; padding: 0; border: 0; background: none; font: inherit; font-size: 13px; color: var(--cbm-rose-ink); cursor: pointer; }
.cbm-store-fgroup.is-open .cbm-store-more { display: none; }
.cbm-store-seg { display: flex; padding: 3px; border-radius: 10px; background: #f6f2ee; }
.cbm-app .cbm-store-seg a { flex: 1; text-align: center; padding: 7px 4px; border-radius: 8px; font-size: 13px; color: var(--cbm-text); }
.cbm-app .cbm-store-seg a.is-on { background: #fff; color: var(--cbm-ink); font-weight: 600; box-shadow: 0 1px 3px rgba(0, 0, 0, .08); }
.cbm-store-seg.is-small a { font-size: 12px; }
.cbm-store-tags { display: flex; flex-wrap: wrap; gap: 6px; }
.cbm-app .cbm-store-tags a { padding: 5px 10px; border-radius: 999px; background: #f6f2ee; font-size: 12.5px; color: var(--cbm-text); }
.cbm-app .cbm-store-tags a.is-on { background: var(--cbm-ink); color: #fff; }
.cbm-app a.cbm-store-toggle { display: flex; align-items: center; gap: 10px; font-size: 14px; color: var(--cbm-ink); }
.cbm-store-sw { position: relative; flex: none; width: 34px; height: 20px; border-radius: 999px; background: #e3dcd5; }
.cbm-store-sw::after { content: ""; position: absolute; top: 2px; left: 2px; width: 16px; height: 16px; border-radius: 50%; background: #fff; transition: left .15s; }
.cbm-store-toggle.is-on .cbm-store-sw { background: var(--cbm-rose-ink); }
.cbm-store-toggle.is-on .cbm-store-sw::after { left: 16px; }

.cbm-store-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 26px 22px; }
.cbm-store-grid.is-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.cbm-store-none { grid-column: 1 / -1; }
.cbm-store-card { display: flex; flex-direction: column; overflow: hidden; border: 1px solid #efe9e3; border-radius: 16px; background: #fff; transition: box-shadow .2s; }
.cbm-store-card:hover { box-shadow: 0 14px 30px rgba(46, 41, 37, .1); }
.cbm-app a.cbm-store-thumb { position: relative; display: block; aspect-ratio: 4 / 5; background: linear-gradient(135deg, #3a2a35, #c2185b) center / cover no-repeat; }
.cbm-store-thumb > .cbm-store-pill:not(.is-dark) { position: absolute; top: 12px; left: 12px; }
.cbm-store-thumb > .cbm-store-pill.is-dark { position: absolute; left: 12px; bottom: 12px; }
.cbm-store-pill { display: inline-flex; align-items: center; gap: 5px; padding: 5px 9px; border-radius: 999px; font-size: 11px; font-weight: 700; letter-spacing: .04em; line-height: 1.2; }
.cbm-store-pill.is-dark { background: rgba(20, 16, 18, .72); color: #fff; }
.cbm-store-pill.is-sale { background: #e0636e; color: #fff; }
.cbm-store-pill.is-new { background: #fff; color: var(--cbm-ink); }
.cbm-store-pill.is-excl { background: var(--cbm-grad); color: #fff; }
.cbm-store-body { display: flex; flex-direction: column; gap: 6px; padding: 14px 16px 16px; }
.cbm-store-model { font-size: 12px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--cbm-rose-ink); }
#top .cbm-app .cbm-store-body h3, .cbm-store-body h3 { margin: 0; font-size: 18px; line-height: 1.25; }
.cbm-app .cbm-store-body h3 a { color: var(--cbm-ink); }
.cbm-store-tagline { display: flex; flex-wrap: wrap; gap: 4px 8px; font-size: 12.5px; color: #8c7e70; }
.cbm-store-buy { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-top: 6px; }
.cbm-store-price { display: flex; align-items: baseline; gap: 8px; }
.cbm-store-price strong { font-size: 20px; }
.cbm-store-price s { font-size: 14px; color: #a69a90; }
.cbm-app a.cbm-store-btn { padding: 10px 22px; border-radius: 999px; background: var(--cbm-grad); color: #fff; font-size: 14px; font-weight: 700; white-space: nowrap; }
.cbm-store-line { display: flex; align-items: center; gap: 6px; padding: 6px 10px; border-radius: 8px; background: var(--cbm-ok-bg); color: var(--cbm-ok); font-size: 12.5px; }
.cbm-store-pager { display: flex; justify-content: center; flex-wrap: wrap; gap: 8px; margin-top: 36px; }
.cbm-app .cbm-store-pager a, .cbm-store-gap { min-width: 38px; height: 38px; padding: 0 10px; display: flex; align-items: center; justify-content: center; border: 1px solid var(--cbm-line); border-radius: 10px; font-size: 14px; color: var(--cbm-ink); }
.cbm-store-gap { border: 0; }
.cbm-app .cbm-store-pager a.is-on { background: var(--cbm-ink); border-color: var(--cbm-ink); color: #fff; }

/* Produktseite */
.cbm-store-crumb { margin-bottom: 18px; font-size: 13px; color: var(--cbm-muted); }
.cbm-product-grid { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr); gap: 44px; align-items: start; }
.cbm-product-hero { position: relative; aspect-ratio: 4 / 5; border-radius: 16px; background: linear-gradient(135deg, #3a2a35, #c2185b) center / cover no-repeat; }
.cbm-product-hero .cbm-store-pill.is-dark { position: absolute; left: 16px; bottom: 16px; }
.cbm-product-hero .cbm-store-pill.is-sale { position: absolute; left: 16px; top: 16px; }
.cbm-product-thumbs { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 10px; margin-top: 10px; }
.cbm-product-thumb { position: relative; aspect-ratio: 1; overflow: hidden; border-radius: 8px; background: #eee center / cover no-repeat; display: flex; align-items: center; justify-content: center; color: #fff; }
.cbm-product-thumb.is-blurred .cbm-product-thumb-img { filter: blur(6px); transform: scale(1.15); }
.cbm-product-info { display: flex; flex-direction: column; gap: 16px; }
#top .cbm-app .cbm-product-title, .cbm-product-title { margin: 0; font-size: 38px; line-height: 1.1; letter-spacing: -0.01em; }
.cbm-product-chips { display: flex; flex-wrap: wrap; gap: 8px; }
.cbm-app .cbm-product-chips a { padding: 5px 12px; border-radius: 999px; background: #f6f2ee; font-size: 13px; color: var(--cbm-text); }
.cbm-product-facts { display: flex; flex-wrap: wrap; gap: 8px 22px; font-size: 14px; color: var(--cbm-text); }
.cbm-product-facts li { display: flex; align-items: center; gap: 6px; }
.cbm-product-buy { display: flex; flex-direction: column; gap: 14px; box-shadow: 0 10px 30px rgba(46, 41, 37, .06); }
.cbm-product-price { display: flex; align-items: baseline; flex-wrap: wrap; gap: 12px; }
.cbm-product-price s { font-size: 18px; color: #a69a90; }
.cbm-product-price strong { font-size: 40px; line-height: 1; letter-spacing: -0.01em; }
.cbm-product-ends { font-size: 13px; font-weight: 700; color: var(--cbm-rose-ink); }
.cbm-product-member { padding: 10px 12px; border-radius: 10px; background: var(--cbm-ok-bg); color: var(--cbm-ok); font-size: 13.5px; }
.cbm-app .cbm-product-member a { color: var(--cbm-ok); font-weight: 700; text-decoration: underline; }
.cbm-product-owned { display: flex; align-items: center; gap: 8px; font-size: 18px; font-weight: 700; color: var(--cbm-ok); }
.cbm-product-methods { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; }
.cbm-product-methods span { padding: 3px 9px; border: 1px solid var(--cbm-line); border-radius: 6px; font-size: 12px; color: var(--cbm-muted); }
.cbm-product-gets { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px 20px; font-size: 14px; }
.cbm-product-gets li { display: flex; gap: 8px; align-items: flex-start; }
.cbm-product-gets .cbm-i { color: var(--cbm-ok); margin-top: 2px; }
.cbm-product-note { display: flex; gap: 10px; align-items: flex-start; padding: 14px 16px; border-radius: 12px; background: #f6f2ee; font-size: 14px; color: var(--cbm-text); }
.cbm-product-desc { font-size: 15px; line-height: 1.65; color: var(--cbm-text); }
.cbm-product-desc p + p { margin-top: 10px; }
.cbm-product-related { margin-top: 48px; }
#top .cbm-app .cbm-product-related h2, .cbm-product-related h2 { margin: 0 0 16px; font-size: 22px; }

/* Kasse */
.cbm-store-checkout .cbm-back { margin-bottom: 16px; font-size: 14px; }
.cbm-store-mini { display: flex; gap: 12px; align-items: center; padding: 12px; border-radius: 10px; background: var(--cbm-soft); }
.cbm-store-mini-img { flex: none; width: 56px; height: 70px; border-radius: 8px; background: linear-gradient(135deg, #3a2a35, #c2185b) center / cover no-repeat; }
.cbm-store-mini > span:last-child { display: flex; flex-direction: column; min-width: 0; }
.cbm-store-mini small { font-size: 13px; color: var(--cbm-muted); }

/* Konto: My purchases */
.cbm-purchases .cbm-col-2 { display: flex; flex-direction: column; gap: 14px; }
.cbm-purchase { display: grid; grid-template-columns: 110px minmax(0, 1fr) minmax(0, 300px); gap: 20px; align-items: center; padding: 14px; }
.cbm-app a.cbm-purchase-img { display: block; aspect-ratio: 4 / 5; border-radius: 10px; background: linear-gradient(135deg, #3a2a35, #c2185b) center / cover no-repeat; }
.cbm-purchase-text { display: flex; flex-direction: column; gap: 4px; min-width: 0; }
#top .cbm-app .cbm-purchase-text h3, .cbm-purchase-text h3 { margin: 0; font-size: 18px; }
.cbm-app .cbm-purchase-text h3 a { color: var(--cbm-ink); }
.cbm-purchase-files { display: flex; flex-direction: column; gap: 8px; }
.cbm-purchase-file { display: flex; justify-content: space-between; align-items: center; gap: 10px; padding: 10px 12px; border-radius: 10px; background: var(--cbm-soft); font-size: 13.5px; }
.cbm-app .cbm-purchase-file a { display: inline-flex; gap: 5px; align-items: center; font-weight: 700; color: var(--cbm-rose-ink); white-space: nowrap; }
.cbm-store-discover { display: flex; flex-direction: column; gap: 12px; background: linear-gradient(135deg, #fdeef1, #f4ecfa); border-color: #f1d6e0; }

@media (max-width: 1100px) {
	.cbm-store-grid, .cbm-store-grid.is-4 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 860px) {
	.cbm-store-hero { flex-direction: column; align-items: stretch; }
	.cbm-app a.cbm-store-join { min-width: 0; }
	.cbm-store-layout { grid-template-columns: minmax(0, 1fr); }
	.cbm-store-side { position: static; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
	.cbm-store-search { flex: 1 1 100%; }
	.cbm-product-grid { grid-template-columns: minmax(0, 1fr); gap: 24px; }
	#top .cbm-app .cbm-product-title, .cbm-product-title { font-size: 30px; }
	.cbm-purchase { grid-template-columns: 80px minmax(0, 1fr); }
	.cbm-purchase-files { grid-column: 1 / -1; }
}
@media (max-width: 520px) {
	.cbm-store-grid, .cbm-store-grid.is-4 { grid-template-columns: minmax(0, 1fr); }
	.cbm-store-side { grid-template-columns: minmax(0, 1fr); }
	.cbm-product-gets { grid-template-columns: minmax(0, 1fr); }
	.cbm-product-thumbs { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.cbm-store-banner { flex-direction: column; align-items: flex-start; }
}

/* Enfold/site.css setzen p-Abstände auf 0 – hier gelten die eigenen. */
#top .cbm-app .cbm-store-line { padding: 6px 10px; }
#top .cbm-app .cbm-product-member { padding: 10px 12px; }
#top .cbm-app .cbm-product-owned { padding: 0; }

/* Kasse: Konto oder Gast */
.cbm-buyas-options { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin: 0 0 10px; }
@media (max-width: 640px) { .cbm-buyas-options { grid-template-columns: 1fr; } }
.cbm-tag { display: inline-block; margin-left: 6px; padding: 1px 8px; border-radius: 99px; background: var(--cbm-ok-bg); color: var(--cbm-ok); font-size: 11px; font-style: normal; font-weight: 600; vertical-align: 1px; }
[data-cbm-buyas-panel][hidden] { display: none !important; }
.cbm-guest-order .cbm-purchase { margin-top: 4px; }

/* Produktseite: Galerie, Trailer, Vorschaufenster (0.19.9) */
button.cbm-product-hero, button.cbm-product-thumb { display: block; width: 100%; padding: 0; border: 0; cursor: zoom-in; font: inherit; }
button.cbm-product-thumb { display: flex; }
.cbm-product-hero, .cbm-product-thumb { -webkit-user-select: none; user-select: none; -webkit-touch-callout: none; }
.cbm-product-pills { position: absolute; left: 16px; bottom: 16px; display: flex; flex-wrap: wrap; gap: 8px; }
.cbm-product-hero .cbm-product-pills .cbm-store-pill { position: static; }
.cbm-product-hero.is-video { display: flex; align-items: center; justify-content: center; }
.cbm-product-hero.is-video::before { content: ""; position: absolute; inset: 0; border-radius: inherit; background: rgba(20, 16, 18, .18); }
.cbm-product-play { position: relative; z-index: 1; width: 88px; height: 88px; border: 0; border-radius: 50%; background: rgba(255, 255, 255, .94); color: #2e2925; display: flex; align-items: center; justify-content: center; padding: 0 0 0 5px; box-shadow: 0 10px 30px rgba(0, 0, 0, .25); cursor: pointer; transition: transform .15s; }
.cbm-product-play:hover { transform: scale(1.06); }
.cbm-product-play:focus-visible, .cbm-product-thumb:focus-visible, .cbm-product-hero:focus-visible { outline: 3px solid rgba(224, 99, 110, .6); outline-offset: 3px; }
.cbm-product-hero.is-video .cbm-product-pills { z-index: 1; }
.cbm-product-hero.is-playing { aspect-ratio: 16 / 9; background: #000 !important; overflow: hidden; }
.cbm-product-hero.is-playing::before { display: none; }
.cbm-product-hero iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
.cbm-product-thumb.is-video { flex-direction: column; gap: 3px; background: linear-gradient(140deg, #2b2130, #c23a5f); color: #fff; font-size: 10px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; cursor: pointer; }
.cbm-product-thumb.is-blurred { cursor: zoom-in; }
#top .cbm-app .cbm-product-desc h2, .cbm-product-desc h2 { margin: 6px 0 10px; padding-top: 18px; border-top: 1px solid var(--cbm-line); font-size: 13px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: var(--cbm-text); }
.cbm-app .cbm-store-model a, .cbm-app .cbm-store-crumb a { color: inherit; }
.cbm-app .cbm-store-model a:hover { text-decoration: underline; }
.cbm-lb { position: fixed; inset: 0; z-index: 100000; display: flex; align-items: center; justify-content: center; padding: 24px; background: rgba(18, 14, 16, .82); }
.cbm-lb[hidden] { display: none; }
html.cbm-lb-open { overflow: hidden; }
.cbm-lb-box { position: relative; display: flex; align-items: center; gap: 12px; width: min(960px, 100%); }
.cbm-lb-stage { position: relative; flex: 1; min-width: 0; display: flex; align-items: center; justify-content: center; height: min(78vh, 760px); border-radius: 14px; overflow: hidden; background: #1c1719; }
.cbm-lb-stage img { max-width: 100%; max-height: 100%; object-fit: contain; -webkit-user-select: none; user-select: none; -webkit-user-drag: none; pointer-events: none; }
.cbm-lb-stage img.is-blurred { width: 100%; height: 100%; object-fit: cover; filter: blur(14px) saturate(.85); transform: scale(1.06); }
.cbm-lb-shield { position: absolute; inset: 0; }
.cbm-lb-lock { position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); display: inline-flex; align-items: center; gap: 8px; padding: 10px 16px; border-radius: 999px; background: rgba(20, 16, 18, .72); color: #fff; font-size: 14px; font-weight: 600; white-space: nowrap; }
.cbm-lb-close { position: absolute; top: -52px; right: 0; width: 44px; height: 44px; border: 0; border-radius: 50%; background: rgba(255, 255, 255, .14); color: #fff; display: flex; align-items: center; justify-content: center; cursor: pointer; padding: 0; }
.cbm-lb-nav { flex: none; width: 48px; height: 48px; border: 0; border-radius: 50%; background: rgba(255, 255, 255, .14); color: #fff; display: flex; align-items: center; justify-content: center; cursor: pointer; padding: 0; }
.cbm-lb-close:hover, .cbm-lb-nav:hover { background: rgba(255, 255, 255, .26); }
.cbm-lb-close:focus-visible, .cbm-lb-nav:focus-visible { outline: 3px solid #fff; outline-offset: 2px; }
.cbm-lb-nav[hidden], .cbm-lb-lock[hidden] { display: none; }
.cbm-lb-count { position: absolute; left: 0; right: 0; bottom: -36px; margin: 0; text-align: center; color: #e9e1da; font-size: 13px; }
@media (max-width: 640px) {
	.cbm-lb { padding: 64px 8px 56px; }
	.cbm-lb-box { gap: 0; }
	.cbm-lb-nav { position: absolute; z-index: 1; top: 50%; transform: translateY(-50%); width: 40px; height: 40px; background: rgba(20, 16, 18, .55); }
	.cbm-lb-nav.is-prev { left: 6px; }
	.cbm-lb-nav.is-next { right: 6px; }
	.cbm-lb-stage { height: 70vh; }
}
#top .cbm-lb-close, #top .cbm-lb-nav { background: rgba(255, 255, 255, .14); color: #fff; border: 0; border-radius: 50%; padding: 0; margin: 0; min-width: 0; }
#top .cbm-product-play { background: rgba(255, 255, 255, .94); color: #2e2925; border: 0; border-radius: 50%; margin: 0; }
#top .cbm-app button.cbm-product-hero, #top .cbm-app button.cbm-product-thumb { margin: 0; border: 0; border-radius: 16px; }
#top .cbm-app button.cbm-product-thumb { border-radius: 8px; }

/* 0.19.10: Galerie unabhängig von Theme-Button-Stilen */
.cbm-product-open { position: absolute; inset: 0; z-index: 0; width: 100%; height: 100%; border: 0; border-radius: inherit; background: transparent; cursor: zoom-in; padding: 0; margin: 0; }
.cbm-product-hero .cbm-product-pills { z-index: 1; pointer-events: none; }
.cbm-product-thumb-img { position: absolute; inset: 0; background: #eee center / cover no-repeat; border-radius: inherit; }
.cbm-product-thumb > .cbm-i { position: relative; z-index: 1; }
#top .cbm-app .cbm-product-media button.cbm-product-thumb, .cbm-app .cbm-product-media button.cbm-product-thumb {
	position: relative; display: flex; align-items: center; justify-content: center; width: 100%; height: auto; min-width: 0; min-height: 0; aspect-ratio: 1;
	margin: 0; padding: 0; border: 0; border-radius: 8px; box-shadow: none; overflow: hidden; background: #eee; color: #fff; line-height: 1; font-size: 10px; text-indent: 0; float: none;
}
#top .cbm-app .cbm-product-media button.cbm-product-thumb.is-video { background: linear-gradient(140deg, #2b2130, #c23a5f); flex-direction: column; gap: 3px; font-weight: 700; letter-spacing: .08em; }
#top .cbm-app .cbm-product-media button.cbm-product-open, .cbm-app .cbm-product-media button.cbm-product-open {
	position: absolute; inset: 0; display: block; width: 100%; height: 100%; min-width: 0; margin: 0; padding: 0; border: 0; box-shadow: none; background: transparent; float: none;
}
#top .cbm-app .cbm-product-media button.cbm-product-play { width: 88px; height: 88px; min-width: 0; padding: 0 0 0 5px; margin: 0; border: 0; border-radius: 50%; box-shadow: 0 10px 30px rgba(0, 0, 0, .25); }
#top .cbm-app .cbm-product-media .cbm-product-hero { display: block; width: 100%; }
#top .cbm-app .cbm-product-media .cbm-product-hero.is-video { display: flex; }
.cbm-product-media button:focus-visible { outline: 3px solid rgba(224, 99, 110, .6); outline-offset: 3px; }

/* „Included in membership“ unter dem Text, über dem Preis (0.19.13) */
.cbm-store-incl { display: inline-flex; align-items: center; gap: 5px; align-self: flex-start; margin: 2px 0 0; padding: 4px 10px; border-radius: 999px; background: var(--cbm-ok-bg); color: var(--cbm-ok); font-size: 11.5px; font-weight: 700; letter-spacing: .02em; }
#top .cbm-app .cbm-store-incl { margin: 2px 0 0; padding: 4px 10px; }
