/*
 * Theme "Sammelkarten" (27.10.2026, Fassung 2.0.0) - fuer Shops mit Sammelkarten: Einzelkarten, Booster, Displays, Zubehoer.
 *
 * Grundlage ist ipv-store (Vorlagen, Grundstil, Farben aus den Theme-Werten). Eigen sind:
 *   - teile/kachel-artikel.php: der Artikel IST eine Karte (63 x 88), Namensleiste auf der Karte, Kennzeichen Angebot/Vergriffen
 *   - karten.js: Karten kippen zur Maus, Holo-Folie und Glanz wandern mit; Bilder, die nicht hochkant sind, werden eingepasst
 *     und bekommen einen unscharfen Hintergrund aus sich selbst
 *   - Kategorien als Booster-Packungen, Artikelseite als grosse Karte mit Werte-Tafel, dunkle Arena mit Gold-Schriftzug
 * Schrift: Cinzel (OFL, lokal in schrift/). Keine Bilder, Logos oder Namen eines Spiels - nur der Stil.
 */

:root {
	--sk-nacht: #0b0815;
	--sk-flaeche: #17122a;
	--sk-flaeche-2: #211a3b;
	--sk-rand: #3a2f63;
	--sk-gold-hell: #f6e08f;
	--sk-schrift: #ece8f7;
	--sk-schrift-2: #b8afd6;
	--sk-zier: 'IPV Karten', 'Inter', serif;
	--sk-goldverlauf: linear-gradient(135deg, #fff3c4 0%, #f2d16b 22%, #b98c1d 45%, #f9e7a0 62%, #c79a2a 80%, #fff3c4 100%);
	--sk-holo: repeating-linear-gradient(115deg, #ff6fb5 0%, #ffd56b 6%, #7dffb4 12%, #6bd6ff 18%, #b48cff 24%, #ff6fb5 30%);
	--sk-rahmen: conic-gradient(from 210deg, #f6e08f, #9a7a1c, #f2d16b, #6b3fd4, #f6e08f, #b98c1d, #f6e08f);
}

/* ============================================================== Arena: Grund, Schrift, Flaechen */

body {
	background-color: var(--sk-nacht) !important;
	background-image:
		radial-gradient(ellipse 80% 50% at 15% -10%, rgba(107, 63, 212, 0.35), transparent 60%),
		radial-gradient(ellipse 60% 40% at 100% 10%, rgba(212, 175, 55, 0.12), transparent 60%),
		radial-gradient(ellipse 70% 60% at 50% 120%, rgba(60, 30, 140, 0.35), transparent 60%),
		radial-gradient(rgba(255, 255, 255, 0.07) 1px, transparent 1.4px);
	background-size: auto, auto, auto, 34px 34px;
	background-attachment: fixed;
}
body, body p, body li, body td, body th, body label, body .editor-entry, body .ipv-hauptinhalt { color: var(--sk-schrift); }
body h1, body h2, body h3, body h4, body h5, body h6 { color: #fff; }
body h1, body h2, body h3, .page-title, .product_title, .footer h3 { font-family: var(--sk-zier); letter-spacing: 0.04em; }

.ipv-seite, .ipv-seitenrahmen .inner-content-metas, .ipv-seitenrahmen .ipv-inhaltsflaeche,
.ipv-seitenrahmen .ipv-hauptinhalt, .ipv-seitenrahmen .ipv-hauptinhalt article, body.ipv-startseite .ipv-seite, .bg-white {
	background-color: transparent !important;
	color: var(--sk-schrift);
}
.ipv-seitenrahmen .editor-entry {
	background: linear-gradient(180deg, rgba(33, 26, 59, 0.85), rgba(23, 18, 42, 0.85)) !important;
	border: 1px solid var(--sk-rand) !important;
	border-radius: 14px;
	box-shadow: 0 20px 60px rgba(0, 0, 0, 0.45);
}
/* Inhalte aus der Suite bringen oft dunkle Schrift fuer hellen Grund mit - auf der Arena hell. */
.editor-entry h1, .editor-entry h2, .editor-entry h3, .editor-entry h4, .editor-entry h5, .editor-entry h6,
.editor-entry h1 span, .editor-entry h2 span, .editor-entry h3 span { color: #fff !important; }
.editor-entry p, .editor-entry li { color: var(--sk-schrift) !important; }

/* ============================================================== Kopf */

.ipv-kopfbereich, .header-style-1, .header-style-1 .ipv-kopf-mitte {
	background: linear-gradient(180deg, rgba(11, 8, 21, 0.97), rgba(17, 12, 32, 0.97)) !important;
}
.ipv-kopfbereich { border-bottom: 1px solid rgba(212, 175, 55, 0.35); }
.ipv-auftrittsname a, .ipv-auftrittsname {
	font-family: var(--sk-zier) !important;
	font-weight: 800;
	letter-spacing: 0.06em;
	background: var(--sk-goldverlauf);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent !important;
	filter: drop-shadow(0 2px 6px rgba(212, 175, 55, 0.25));
}
.ipv-oberleiste, .ipv-oberleiste a { color: var(--sk-schrift-2) !important; }

/* Hauptmenue: tiefes Violett, Goldkanten, Punkte in der Zierschrift */
.ipv-navigation, .ipv-nav-zeile {
	background: linear-gradient(90deg, #241552 0%, #3b1f86 50%, #241552 100%) !important;
	border-top: 1px solid rgba(212, 175, 55, 0.35);
	border-bottom: 1px solid rgba(212, 175, 55, 0.55);
	box-shadow: 0 8px 30px rgba(59, 31, 134, 0.35);
}
.ipv-hauptmenue > li > a, .ipv-menuepunkt > a {
	font-family: var(--sk-zier) !important;
	letter-spacing: 0.12em;
	color: #f1ecff !important;
	position: relative;
}
.ipv-hauptmenue > li > a::after, .ipv-menuepunkt > a::after {
	content: '';
	position: absolute;
	left: 50%; right: 50%; bottom: 6px;
	height: 2px;
	background: var(--sk-goldverlauf);
	transition: left 0.25s ease, right 0.25s ease;
}
.ipv-hauptmenue > li > a:hover::after, .ipv-menuepunkt > a:hover::after { left: 12%; right: 12%; }

/* Suche und Warenkorb */
.header-style-1 .custom-search-entry { background-color: rgba(33, 26, 59, 0.9) !important; border-color: rgba(212, 175, 55, 0.55) !important; }
.header-style-1 .custom-search-entry .search-form { background: transparent !important; }
.header-style-1 .custom-search-entry input, .header-style-1 .custom-search-entry .search-form input {
	background: transparent !important; color: var(--sk-schrift) !important; border: 0 !important;
}
.ipv-kopfbereich .mini-cart { border-color: rgba(212, 175, 55, 0.55) !important; }

/* Seitenkopf (Titel und Pfad): Arena-Banner statt Farbbalken */
.ipv-pfad-balken {
	background:
		radial-gradient(ellipse 50% 120% at 50% 100%, rgba(155, 123, 255, 0.45), transparent 70%),
		radial-gradient(ellipse 30% 80% at 50% 0%, rgba(212, 175, 55, 0.18), transparent 70%),
		linear-gradient(180deg, #120c26, #1d1240) !important;
	border-bottom: 1px solid rgba(212, 175, 55, 0.4);
	position: relative;
	overflow: hidden;
}
.ipv-pfad-balken .mask { display: none; }
.ipv-pfad-balken .page-title {
	font-family: var(--sk-zier) !important;
	font-weight: 800;
	font-size: clamp(28px, 4vw, 46px) !important;
	letter-spacing: 0.1em;
	background: var(--sk-goldverlauf);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent !important;
	filter: drop-shadow(0 4px 18px rgba(212, 175, 55, 0.35));
}
.ipv-pfadleiste, .ipv-pfadleiste a, .ipv-pfad-hier { color: var(--sk-schrift-2) !important; }

/* ============================================================== Raster der Karten */

ul.products, .ipv-shop ul.products, .ipv-seitenart ul.products {
	display: grid !important;
	grid-template-columns: repeat(auto-fill, minmax(205px, 1fr));
	gap: 40px 28px;
	margin: 10px 0 0 !important;
	padding: 0 !important;
}
ul.products::before, ul.products::after { display: none !important; }
ul.products > li.product {
	width: auto !important; max-width: none !important; flex: none !important;
	margin: 0 !important; padding: 0 !important; float: none !important;
	background: transparent !important;
}
@media (max-width: 600px) {
	ul.products, .ipv-shop ul.products, .ipv-seitenart ul.products { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 26px 14px; }
}

/* ============================================================== Die Karte */

ul.products > li.ipv-sk-karte > .product-main-wrap {
	background: transparent !important; border: 0 !important; box-shadow: none !important; padding: 0 !important;
	display: flex; flex-direction: column; gap: 12px; height: 100%;
}

.ipv-sk-rahmen {
	--sk-x: 50%; --sk-y: 50%; --sk-rx: 0deg; --sk-ry: 0deg; --sk-an: 0;
	position: relative;
	display: block;
	aspect-ratio: 63 / 88;
	border-radius: 14px;
	background: linear-gradient(#0b0815, #0b0815) padding-box, var(--sk-rahmen) border-box;
	border: 3px solid transparent;
	box-shadow: 0 18px 34px rgba(0, 0, 0, 0.55), 0 0 0 1px rgba(0, 0, 0, 0.6);
	transform: perspective(900px) rotateX(var(--sk-rx)) rotateY(var(--sk-ry));
	transition: transform 0.18s ease-out, box-shadow 0.25s ease;
	overflow: hidden;
	text-decoration: none !important;
	will-change: transform;
}
.ipv-sk-rahmen.ipv-sk-aktiv {
	transition: transform 0.05s linear, box-shadow 0.25s ease;
	box-shadow: 0 28px 50px rgba(0, 0, 0, 0.6), 0 0 26px rgba(212, 175, 55, 0.45), 0 0 60px rgba(107, 63, 212, 0.35);
}
.ipv-sk-bild, .ipv-sk-folie, .ipv-sk-glanz {
	position: absolute !important;
	inset: 6px;
	border-radius: 9px;
}
.ipv-sk-bild {
	overflow: hidden;
	background: radial-gradient(circle at 50% 35%, #2c2350, #0d0a17 75%) !important;
	aspect-ratio: auto !important;
}
.ipv-sk-bild img {
	position: relative;
	width: 100% !important; height: 100% !important;
	max-width: none; max-height: none;
	object-fit: cover;
	display: block;
	transition: transform 0.4s ease;
}
/* Nicht hochkant (Display, Zubehoer, Produktfoto): ganz zeigen, dahinter unscharf es selbst - karten.js setzt die Klasse. */
.ipv-sk-bild.ipv-sk-einpassen::before {
	content: '';
	position: absolute; inset: -24px;
	background-image: var(--sk-bild);
	background-size: cover;
	background-position: center;
	filter: blur(26px) saturate(1.8) brightness(0.3);
}
.ipv-sk-bild.ipv-sk-einpassen::after {
	content: '';
	position: absolute; inset: 0;
	background: radial-gradient(ellipse 70% 55% at 50% 40%, rgba(155, 123, 255, 0.28), transparent 70%);
	pointer-events: none;
}
.ipv-sk-bild.ipv-sk-einpassen img {
	position: absolute;
	top: 12%; left: 9%;
	width: 82% !important; height: 50% !important;
	object-fit: contain;
	border-radius: 8px;
	filter: drop-shadow(0 14px 22px rgba(0, 0, 0, 0.7));
	z-index: 1;
}
.ipv-sk-rahmen:hover .ipv-sk-bild img { transform: scale(1.04); }

.ipv-sk-folie, .ipv-sk-glanz { pointer-events: none; transition: opacity 0.3s ease; }
.ipv-sk-folie {
	background-image: var(--sk-holo);
	background-size: 260% 260%;
	background-position: var(--sk-x) var(--sk-y);
	mix-blend-mode: color-dodge;
	opacity: calc(var(--sk-an) * 0.42);
	filter: saturate(1.4);
}
.ipv-sk-glanz {
	background: radial-gradient(circle at var(--sk-x) var(--sk-y), rgba(255, 255, 255, 0.55), rgba(255, 255, 255, 0.08) 30%, transparent 55%);
	mix-blend-mode: overlay;
	opacity: var(--sk-an);
}
/* Ohne Maus (Finger): ein leiser Schimmer bleibt, damit die Karte nicht stumpf wirkt. */
@media (hover: none) { .ipv-sk-folie { opacity: 0.16; background-position: 30% 30%; } }

.ipv-sk-namensleiste {
	position: absolute;
	left: 6px; right: 6px; bottom: 6px;
	padding: 36px 12px 12px;
	border-radius: 0 0 9px 9px;
	background: linear-gradient(180deg, transparent, rgba(11, 8, 21, 0.8) 38%, rgba(11, 8, 21, 0.97));
}
.ipv-sk-namensleiste::before {
	content: '';
	position: absolute; left: 14px; right: 14px; top: 28px; height: 1px;
	background: linear-gradient(90deg, transparent, rgba(246, 224, 143, 0.8), transparent);
}
.ipv-sk-namensleiste .ipv-kachel-artikeltitel {
	margin: 0 !important;
	padding: 0 !important;
	font-family: var(--sk-zier) !important;
	font-size: 14px !important;
	font-weight: 700;
	line-height: 1.3;
	letter-spacing: 0.03em;
	text-align: center;
	color: #fff !important;
	text-shadow: 0 2px 8px rgba(0, 0, 0, 0.9);
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.ipv-sk-plakette {
	position: absolute;
	top: 14px;
	z-index: 2;
	padding: 4px 11px;
	border-radius: 999px;
	font-size: 11px;
	font-weight: 800;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.5);
}
.ipv-sk-plakette-angebot { left: 14px; color: #2a1d00; background: var(--sk-goldverlauf); }
.ipv-sk-plakette-vergriffen { right: 14px; color: #fff; background: linear-gradient(135deg, #ff6b7d, #b3172c); }
li.outofstock .ipv-sk-bild img { filter: grayscale(0.85) brightness(0.7); }

/* Unter der Karte: Preis in Gold, Knopf in Gold */
ul.products > li.ipv-sk-karte .product-info-wrap {
	background: transparent !important;
	padding: 0 !important;
	text-align: center;
	display: flex; flex-direction: column; align-items: center; gap: 8px;
}
ul.products > li.ipv-sk-karte .price { display: block; margin: 0; }
ul.products > li.ipv-sk-karte .price .ipv-preis-betrag, .summary .price .ipv-preis-betrag {
	font-family: var(--sk-zier);
	font-weight: 800;
	font-size: 20px;
	background: var(--sk-goldverlauf);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent !important;
}
ul.products > li.ipv-sk-karte .ipv-preis-alt, .summary .ipv-preis-alt { color: var(--sk-schrift-2) !important; opacity: 0.8; }
ul.products > li.ipv-sk-karte .ipv-preis-zusatz, ul.products > li.ipv-sk-karte .ipv-grundpreis, .summary .ipv-preis-zusatz {
	display: block; color: var(--sk-schrift-2) !important; font-size: 11px;
}

.ipv-korb-knopf-kachel button, .ipv-korb-knopf-kachel .button, .ipv-korb-knopf button, .ipv-korb-knopf .button,
.single_add_to_cart_button, form.ipv-shop-form button[type=submit], .editor-entry .button,
a.button.product_type_variable {
	background: var(--sk-goldverlauf) !important;
	background-size: 200% 200% !important;
	color: #241800 !important;
	border: 0 !important;
	border-radius: 8px !important;
	font-weight: 800 !important;
	letter-spacing: 0.08em;
	box-shadow: 0 6px 18px rgba(212, 175, 55, 0.25), inset 0 1px 0 rgba(255, 255, 255, 0.6);
	transition: background-position 0.5s ease, transform 0.15s ease, box-shadow 0.2s ease;
}
.ipv-korb-knopf-kachel button:hover, .ipv-korb-knopf button:hover, .single_add_to_cart_button:hover,
form.ipv-shop-form button[type=submit]:hover, .editor-entry .button:hover {
	background-position: 100% 0 !important;
	transform: translateY(-1px);
	box-shadow: 0 10px 26px rgba(212, 175, 55, 0.4), inset 0 1px 0 rgba(255, 255, 255, 0.6);
}

/* ============================================================== Kategorien: Booster-Packungen */

ul.products > li.product-category > a {
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	aspect-ratio: 5 / 8;
	padding: 18px 14px 0;
	border-radius: 6px;
	overflow: hidden;
	background:
		radial-gradient(circle at 50% 38%, rgba(155, 123, 255, 0.5), transparent 60%),
		linear-gradient(160deg, #3b1f86 0%, #1b1242 55%, #0e0a1d 100%) !important;
	box-shadow: 0 18px 34px rgba(0, 0, 0, 0.55), inset 0 0 0 1px rgba(246, 224, 143, 0.35);
	transition: transform 0.25s ease, box-shadow 0.25s ease;
	text-decoration: none !important;
}
/* Gezackte Siegelkante oben und unten */
ul.products > li.product-category > a::before,
ul.products > li.product-category > a::after {
	content: '';
	position: absolute; left: 0; right: 0; height: 12px; z-index: 3;
	background: linear-gradient(135deg, transparent 33%, #c9a440 34%, #f6e08f 50%, #c9a440 66%, transparent 67%) 0 0 / 12px 12px repeat-x;
	opacity: 0.9;
}
ul.products > li.product-category > a::before { top: 0; }
ul.products > li.product-category > a::after { bottom: 0; transform: scaleY(-1); }
ul.products > li.product-category > a img {
	position: absolute;
	top: 11%; left: 10%;
	width: 80% !important; height: 52% !important;
	object-fit: contain;
	border: 0 !important;
	border-radius: 8px;
	filter: drop-shadow(0 16px 20px rgba(0, 0, 0, 0.6));
	transition: transform 0.35s ease;
}
ul.products > li.product-category > a .ipv-kachel-kategorietitel {
	position: relative;
	z-index: 2;
	overflow: hidden;
	margin: 0 -14px 26px !important;
	padding: 12px 10px !important;
	background: var(--sk-goldverlauf) !important;
	color: #241800 !important;
	font-family: var(--sk-zier) !important;
	font-size: 15px !important;
	font-weight: 800;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	text-align: center;
	box-shadow: 0 6px 16px rgba(0, 0, 0, 0.45);
}
ul.products > li.product-category > a .ipv-kachel-kategorietitel::after {
	content: '';
	position: absolute; inset: 0;
	background: linear-gradient(110deg, transparent 30%, rgba(255, 255, 255, 0.6) 48%, transparent 66%);
	background-size: 250% 100%;
	background-position: 150% 0;
	mix-blend-mode: overlay;
	transition: background-position 0.8s ease;
}
ul.products > li.product-category:hover > a {
	transform: translateY(-6px) rotate(-1.2deg);
	box-shadow: 0 26px 44px rgba(0, 0, 0, 0.6), 0 0 30px rgba(155, 123, 255, 0.45), inset 0 0 0 1px rgba(246, 224, 143, 0.6);
}
ul.products > li.product-category:hover > a img { transform: scale(1.06) translateY(-4px); }
ul.products > li.product-category:hover > a .ipv-kachel-kategorietitel::after { background-position: -50% 0; }

/* ============================================================== Artikelseite: die grosse Karte */

.ipv-bildgalerie {
	--sk-x: 50%; --sk-y: 50%; --sk-rx: 0deg; --sk-ry: 0deg; --sk-an: 0;
	position: relative;
	border-radius: 18px;
	padding: 10px;
	background: linear-gradient(#0b0815, #0b0815) padding-box, var(--sk-rahmen) border-box !important;
	border: 3px solid transparent !important;
	box-shadow: 0 30px 60px rgba(0, 0, 0, 0.6), 0 0 40px rgba(107, 63, 212, 0.25);
	transform: perspective(1200px) rotateX(var(--sk-rx)) rotateY(var(--sk-ry));
	transition: transform 0.2s ease-out, box-shadow 0.3s ease;
	overflow: hidden;
}
.ipv-bildgalerie img { border-radius: 10px; }
.ipv-bildgalerie::after {
	content: '';
	position: absolute; inset: 10px;
	border-radius: 10px;
	pointer-events: none;
	background-image: radial-gradient(circle at var(--sk-x) var(--sk-y), rgba(255, 255, 255, 0.45), transparent 45%), var(--sk-holo);
	background-size: 100% 100%, 260% 260%;
	background-position: center, var(--sk-x) var(--sk-y);
	mix-blend-mode: color-dodge;
	opacity: calc(var(--sk-an) * 0.35);
	transition: opacity 0.3s ease;
}
.ipv-bildgalerie.ipv-sk-aktiv { box-shadow: 0 34px 70px rgba(0, 0, 0, 0.65), 0 0 50px rgba(212, 175, 55, 0.35); }

/* Werte-Tafel */
.summary.entry-summary {
	position: relative;
	background: linear-gradient(180deg, rgba(33, 26, 59, 0.92), rgba(18, 13, 34, 0.92)) !important;
	border: 1px solid var(--sk-rand) !important;
	border-radius: 16px;
	box-shadow: 0 24px 60px rgba(0, 0, 0, 0.5);
	color: var(--sk-schrift);
	overflow: hidden;
}
.summary.entry-summary::before {
	content: '';
	position: absolute; left: 0; right: 0; top: 0; height: 3px;
	background: var(--sk-goldverlauf);
}
.summary.entry-summary .product_title, .summary.entry-summary h1 {
	font-family: var(--sk-zier) !important;
	font-weight: 800;
	color: #fff !important;
	letter-spacing: 0.04em;
}
.summary.entry-summary .price .ipv-preis-betrag { font-size: 34px; }
.summary.entry-summary, .summary.entry-summary span, .summary.entry-summary small, .summary.entry-summary .product_meta,
.summary.entry-summary .product_meta a { color: var(--sk-schrift); }
.summary.entry-summary .product_meta { border-top: 1px solid var(--sk-rand); padding-top: 14px; }
.summary.entry-summary .ipv-preis-zusatz, .summary.entry-summary small { color: var(--sk-schrift-2) !important; }
.ipv-shop-tabs.wc-tabs-wrapper, .ipv-shop-tabs .panel, .ipv-shop-tabs ul.tabs, .ipv-shop-tabs ul.tabs li, form.ipv-shop-form {
	background-color: rgba(23, 18, 42, 0.92) !important;
	border-color: var(--sk-rand) !important;
	color: var(--sk-schrift);
}
.ipv-shop-tabs ul.tabs li a { color: #fff !important; font-family: var(--sk-zier); letter-spacing: 0.08em; }
.ipv-shop-tabs .panel, .ipv-shop-tabs .panel p { color: var(--sk-schrift); }

/* ============================================================== Formulare, Tabellen, Seitenleiste */

input[type=text], input[type=email], input[type=search], input[type=password], input[type=number], input[type=tel], textarea, select, .nice-select {
	background-color: var(--sk-flaeche-2) !important;
	color: var(--sk-schrift) !important;
	border-color: var(--sk-rand) !important;
}
input::placeholder, textarea::placeholder { color: var(--sk-schrift-2); }
form.ipv-shop-form label, .woocommerce-checkout label { color: var(--sk-schrift) !important; }
form.ipv-shop-form a, .lost_password a { color: var(--sk-gold-hell) !important; }
table, table td, table th { border-color: var(--sk-rand) !important; }
table th { background-color: var(--sk-flaeche-2) !important; font-family: var(--sk-zier); letter-spacing: 0.06em; }
.category-nav, .category-nav ul, .ipv-seitenleiste .widget, .ipv-seitenleiste .ipv-baustein {
	background-color: rgba(23, 18, 42, 0.92) !important;
	border-color: var(--sk-rand) !important;
}
.category-nav a, .ipv-seitenleiste a { color: var(--sk-schrift) !important; }
.category-nav li { border-color: var(--sk-rand) !important; }

/* ============================================================== Footer */

.footer, .footer .ipv-fuss-innen, .footer .ipv-fuss-flaeche {
	background: radial-gradient(ellipse 60% 80% at 50% 0%, rgba(107, 63, 212, 0.18), transparent 70%), #08060f !important;
}
.footer { border-top: 1px solid rgba(212, 175, 55, 0.4); }
.footer .ipv-baustein .ipv-baustein-titel h3, .footer .ipv-baustein-titel h3, .footer h3 {
	font-family: var(--sk-zier) !important;
	letter-spacing: 0.1em;
	background: var(--sk-goldverlauf);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent !important;
}
.footer p, .footer li, .footer a, .footer span, .footer address { color: var(--sk-schrift-2); }
.footer a:hover { color: var(--sk-gold-hell) !important; }

/* ============================================================== Weniger Bewegung */

@media (prefers-reduced-motion: reduce) {
	.ipv-sk-rahmen, .ipv-bildgalerie, ul.products > li.product-category > a, .ipv-sk-bild img { transition: none !important; transform: none !important; }
}

/* ============================================================== Sammelkarten-Angaben (27.10.2026, nur mit "Sammelkarten-Angaben uebertragen") */

/* Seltenheit: Stufe = Platz in der Liste der Suite (1 = haeufigste). Je seltener, desto mehr Glanz. */
.ipv-sk-seltenheit {
	display: inline-block;
	padding: 3px 9px;
	border-radius: 999px;
	font-size: 11px;
	font-weight: 800;
	letter-spacing: 0.06em;
	line-height: 1.4;
	white-space: nowrap;
	color: #fff;
	background: #5d5874;
	box-shadow: 0 3px 10px rgba(0, 0, 0, 0.45), inset 0 1px 0 rgba(255, 255, 255, 0.25);
}
.ipv-sk-tafel dd .ipv-sk-seltenheit, .ipv-sk-angaben .ipv-sk-seltenheit { color: #fff !important; }
.ipv-sk-tafel dd .ipv-sk-seltenheit.stufe-4, .ipv-sk-angaben .ipv-sk-seltenheit.stufe-4 { color: #2a1d00 !important; }
.ipv-sk-tafel dd .ipv-sk-seltenheit.stufe-5, .ipv-sk-tafel dd .ipv-sk-seltenheit.stufe-6,
.ipv-sk-angaben .ipv-sk-seltenheit.stufe-5, .ipv-sk-angaben .ipv-sk-seltenheit.stufe-6 { color: #1b1030 !important; }
.ipv-sk-seltenheit.stufe-1 { background: linear-gradient(135deg, #8d8aa0, #4e4a63); }
.ipv-sk-seltenheit.stufe-2 { background: linear-gradient(135deg, #5fb0ff, #1d4fb8); }
.ipv-sk-seltenheit.stufe-3 { background: linear-gradient(135deg, #c39bff, #6b2fd0); }
.ipv-sk-seltenheit.stufe-4 { color: #2a1d00; background: var(--sk-goldverlauf); }
.ipv-sk-seltenheit.stufe-5, .ipv-sk-seltenheit.stufe-6 {
	color: #1b1030;
	background: var(--sk-holo);
	background-size: 300% 300%;
	animation: ipv-sk-schimmer 6s linear infinite;
}
.ipv-sk-seltenheit.stufe-6 { box-shadow: 0 0 14px rgba(255, 213, 107, 0.7), inset 0 1px 0 rgba(255, 255, 255, 0.6); }
@keyframes ipv-sk-schimmer { from { background-position: 0% 50%; } to { background-position: 300% 50%; } }
@media (prefers-reduced-motion: reduce) { .ipv-sk-seltenheit { animation: none !important; } }
.ipv-sk-auf-karte { position: absolute; top: 14px; right: 14px; z-index: 2; }
li.outofstock .ipv-sk-auf-karte { top: 46px; }

/* Unter der Karte: Set und Nummer klein. Name, Seltenheit, Sprache/Edition stehen nur in der Listenansicht. */
.ipv-sk-angaben { display: flex; flex-direction: column; align-items: center; gap: 4px; }
.ipv-sk-kartenzeile { font-size: 11px; letter-spacing: 0.08em; color: var(--sk-schrift-2) !important; text-transform: uppercase; }
.ipv-sk-listenname, .ipv-sk-in-liste, .ipv-sk-klein { display: none !important; }

/* Filterleiste */
.ipv-sk-leiste {
	display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: 12px 20px;
	clear: both;
	margin: 6px 0 22px;
	padding: 14px 16px;
	border: 1px solid var(--sk-rand);
	border-radius: 12px;
	background: linear-gradient(180deg, var(--sk-flaeche-2), var(--sk-flaeche));
}
.ipv-sk-filter { display: flex; flex-wrap: wrap; align-items: flex-end; gap: 10px 14px; margin: 0; }
.ipv-sk-feld { display: flex; flex-direction: column; gap: 4px; margin: 0; }
.ipv-sk-feld > span { font-size: 10px; font-weight: 800; letter-spacing: 0.14em; text-transform: uppercase; color: var(--sk-gold-hell) !important; }
.ipv-sk-wahl {
	min-width: 150px; height: 36px; padding: 0 30px 0 10px !important;
	border-radius: 8px !important;
	background-color: var(--sk-nacht) !important;
	color: var(--sk-schrift) !important;
	border: 1px solid var(--sk-rand) !important;
}
.ipv-sk-wahl.ist-gewaehlt { border-color: var(--sk-gold-hell) !important; box-shadow: 0 0 0 1px rgba(246, 224, 143, 0.35); }
.ipv-sk-filtern { height: 36px; }
.ipv-sk-zurueck { align-self: center; font-size: 13px; color: var(--sk-gold-hell) !important; text-decoration: underline; }
.ipv-sk-ansicht { display: inline-flex; border: 1px solid var(--sk-rand); border-radius: 8px; overflow: hidden; }
.ipv-sk-ansicht a {
	padding: 8px 16px; font-size: 12px; font-weight: 800; letter-spacing: 0.1em; text-transform: uppercase;
	color: var(--sk-schrift-2) !important; text-decoration: none !important;
}
.ipv-sk-ansicht a.ist-aktiv { color: #241800 !important; background: var(--sk-goldverlauf); }
.ipv-kategorieseite .ipv-hinweis { clear: both; }

/* Listenansicht: eine Zeile je Karte - kleines Bild, Name mit Set/Nummer, Seltenheit, Sprache/Edition, Preis, Knopf */
.ipv-sk-leiste.ist-liste ~ div > ul.products {
	display: flex !important; flex-direction: column; gap: 8px;
	grid-template-columns: none !important;
}
.ipv-sk-leiste.ist-liste ~ div > ul.products > li.ipv-sk-karte {
	width: 100% !important; max-width: none !important; margin: 0 !important; float: none !important;
}
.ipv-sk-leiste.ist-liste ~ div > ul.products > li.ipv-sk-karte .product-main-wrap {
	display: grid !important; grid-template-columns: 64px 1fr; align-items: center; gap: 16px !important;
	padding: 8px 14px 8px 8px !important;
	border: 1px solid var(--sk-rand) !important; border-radius: 10px;
	background: var(--sk-flaeche) !important;
}
.ipv-sk-leiste.ist-liste ~ div > ul.products > li.ipv-sk-karte .ipv-sk-rahmen {
	width: 64px; transform: none !important; box-shadow: 0 4px 10px rgba(0, 0, 0, 0.5) !important; padding: 2px !important; border-radius: 6px !important;
}
.ipv-sk-leiste.ist-liste ~ div > ul.products > li.ipv-sk-karte .ipv-sk-rahmen .ipv-sk-bild { border-radius: 4px !important; }
.ipv-sk-leiste.ist-liste ~ div > ul.products > li.ipv-sk-karte .ipv-sk-namensleiste,
.ipv-sk-leiste.ist-liste ~ div > ul.products > li.ipv-sk-karte .ipv-sk-plakette,
.ipv-sk-leiste.ist-liste ~ div > ul.products > li.ipv-sk-karte .ipv-sk-auf-karte,
.ipv-sk-leiste.ist-liste ~ div > ul.products > li.ipv-sk-karte .ipv-sk-folie,
.ipv-sk-leiste.ist-liste ~ div > ul.products > li.ipv-sk-karte .ipv-sk-glanz { display: none !important; }
.ipv-sk-leiste.ist-liste ~ div > ul.products > li.ipv-sk-karte .product-info-wrap {
	flex-direction: row !important; align-items: center !important; justify-content: flex-end; flex-wrap: wrap; gap: 10px 18px !important; text-align: left !important;
}
.ipv-sk-leiste.ist-liste ~ div > ul.products > li.ipv-sk-karte .ipv-sk-angaben {
	flex: 1 1 260px; display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 2px 14px; justify-items: start;
}
.ipv-sk-leiste.ist-liste ~ div > ul.products > li.ipv-sk-karte .ipv-sk-listenname {
	display: block !important; grid-column: 1; font-family: var(--sk-zier); font-weight: 700; font-size: 15px; color: #fff !important; text-decoration: none !important;
}
.ipv-sk-leiste.ist-liste ~ div > ul.products > li.ipv-sk-karte .ipv-sk-kartenzeile { grid-column: 1; }
.ipv-sk-leiste.ist-liste ~ div > ul.products > li.ipv-sk-karte .ipv-sk-in-liste { display: inline-block !important; grid-column: 2; grid-row: 1; }
.ipv-sk-leiste.ist-liste ~ div > ul.products > li.ipv-sk-karte .ipv-sk-klein { display: block !important; grid-column: 2; grid-row: 2; font-size: 11px; color: var(--sk-schrift-2) !important; }
.ipv-sk-leiste.ist-liste ~ div > ul.products > li.ipv-sk-karte .price { min-width: 110px; text-align: right; }
.ipv-sk-leiste.ist-liste ~ div > ul.products > li.ipv-sk-karte .price .ipv-preis-betrag { font-size: 18px; }
@media (max-width: 640px) {
	.ipv-sk-leiste.ist-liste ~ div > ul.products > li.ipv-sk-karte .ipv-sk-angaben { grid-template-columns: 1fr; }
	.ipv-sk-leiste.ist-liste ~ div > ul.products > li.ipv-sk-karte .ipv-sk-in-liste,
	.ipv-sk-leiste.ist-liste ~ div > ul.products > li.ipv-sk-karte .ipv-sk-klein { grid-column: 1; grid-row: auto; }
	.ipv-sk-wahl { min-width: 0; width: 100%; }
	.ipv-sk-feld { flex: 1 1 40%; }
}

/* Artikelseite: Angaben zur Karte und je Zustand eine Zeile (die Auswahlfelder der Grundlage braucht es dann nicht) */
.ipv-sk-tafel {
	display: grid; grid-template-columns: repeat(auto-fill, minmax(140px, 1fr)); gap: 0;
	margin: 0 0 20px; padding: 0;
	border: 1px solid var(--sk-rand); border-radius: 10px; overflow: hidden;
	background: var(--sk-flaeche);
}
.ipv-sk-tafel-zeile { margin: 0; padding: 10px 12px; box-shadow: inset -1px -1px 0 var(--sk-rand); }
.ipv-sk-tafel dt { margin: 0 0 3px; font-size: 10px; font-weight: 800; letter-spacing: 0.14em; text-transform: uppercase; color: var(--sk-gold-hell) !important; }
.ipv-sk-tafel dd { margin: 0; font-size: 14px; font-weight: 700; color: #fff !important; }
.ipv-sk-zustaende { margin: 0 0 20px; }
.ipv-sk-zustaende h3 { margin: 0 0 10px; font-size: 15px; color: var(--sk-gold-hell) !important; }
.ipv-sk-zustaende table { width: 100%; border-collapse: separate; border-spacing: 0 6px; margin: 0; border: 0 !important; background: none !important; }
.ipv-sk-zustaende th { padding: 0 10px 2px; font-size: 10px; font-weight: 800; letter-spacing: 0.14em; text-transform: uppercase; text-align: left; color: var(--sk-schrift-2) !important; border: 0 !important; background: none !important; }
.ipv-sk-zustaende td { padding: 10px; vertical-align: middle; background: var(--sk-flaeche); border: 0 !important; border-top: 1px solid var(--sk-rand) !important; border-bottom: 1px solid var(--sk-rand) !important; }
.ipv-sk-zustaende td:first-child { border-left: 1px solid var(--sk-rand) !important; border-radius: 10px 0 0 10px; font-weight: 700; color: #fff !important; }
.ipv-sk-zustaende td:last-child { border-right: 1px solid var(--sk-rand) !important; border-radius: 0 10px 10px 0; text-align: right; }
.ipv-sk-zustaende .ipv-preis-betrag { font-family: var(--sk-zier); font-weight: 800; font-size: 17px; background: var(--sk-goldverlauf); -webkit-background-clip: text; background-clip: text; color: transparent !important; }
.ipv-sk-zustaende tr.ist-weg td { opacity: 0.55; }
.ipv-sk-z-bestand { font-size: 12px; color: var(--sk-schrift-2) !important; white-space: nowrap; }
.ipv-sk-z-form { display: inline-flex; gap: 8px; align-items: center; margin: 0; white-space: nowrap; }
.ipv-sk-z-menge { width: 64px !important; height: 38px; text-align: center; background: var(--sk-nacht) !important; color: var(--sk-schrift) !important; border: 1px solid var(--sk-rand) !important; border-radius: 8px !important; }
.ipv-sk-z-form .button { display: inline-flex !important; align-items: center; height: 38px !important; min-height: 38px; line-height: 1 !important; font-size: 12px !important; white-space: nowrap; padding: 0 16px !important; background: var(--sk-goldverlauf) !important; color: #241800 !important; border: 0 !important; border-radius: 8px !important; font-weight: 800 !important; }
.ipv-sk-zustaende ~ form.variations_form { display: none !important; }
@media (max-width: 640px) {
	.ipv-sk-zustaende thead { display: none; }
	.ipv-sk-zustaende tr { display: grid; grid-template-columns: 1fr auto; margin-bottom: 8px; border: 1px solid var(--sk-rand); border-radius: 10px; background: var(--sk-flaeche); }
	.ipv-sk-zustaende td { border: 0 !important; border-radius: 0 !important; background: none; }
	.ipv-sk-zustaende td.ipv-sk-z-kauf { grid-column: 1 / -1; text-align: left; }
}
.ipv-sk-z-wert { color: var(--sk-schrift) !important; font-size: 13px; white-space: nowrap; }
.ipv-sk-z-nummer { font-family: monospace; font-size: 12px; letter-spacing: 0.04em; color: var(--sk-gold-hell) !important; white-space: nowrap; }

/* Ausfuehrungen als Kartenzeilen (28.10.2026): oben Sprache · Edition · Zustand · Nummer und Preis, unten Bestand und Kauf - passt in
   die schmale Spalte neben dem Bild, ohne dass rechts etwas abgeschnitten wird. */
.ipv-sk-zustaende table, .ipv-sk-zustaende tbody { display: block; width: 100%; }
.ipv-sk-zustaende thead { display: none; }
.ipv-sk-zustaende tr {
	display: flex !important; flex-wrap: wrap; align-items: center; gap: 6px 12px;
	margin: 0 0 8px; padding: 10px 12px;
	border: 1px solid var(--sk-rand); border-radius: 10px; background: var(--sk-flaeche);
}
.ipv-sk-zustaende td { display: block; padding: 0 !important; border: 0 !important; border-radius: 0 !important; background: none !important; text-align: left !important; }
.ipv-sk-zustaende td.ipv-sk-z-name { font-weight: 700; color: #fff !important; }
.ipv-sk-zustaende td.ipv-sk-z-wert::before, .ipv-sk-zustaende td.ipv-sk-z-nummer::before { content: '·'; margin-right: 12px; color: var(--sk-schrift-2); }
.ipv-sk-zustaende td.ipv-sk-z-preis { margin-left: auto; }
.ipv-sk-zustaende td.ipv-sk-z-bestand { flex: 1 0 50%; }
.ipv-sk-zustaende td.ipv-sk-z-kauf { margin-left: auto; }
