/* =====================================================================
   LaKru Shop — Gestaltung B2 (S830, 28.09.2026) · Fassung 1.1.0 (S832) · Quelle: clients/lakru/mu-plugins/lakru-shop-design.css
   Werte aus Max' Musterbericht S828 (Theme-Messung lakru.de): Preis/Link #e64577 · Knopf #ab6fd7 / #0da9fe ·
   Wash-Töne Violett #f4ecfa, Blau #f0f8fd, Pink #fbf1f4, Gelb #fffdf2 · Karten-Schatten 2px 5px 10px rgba(0,0,0,.08)
   Schriften kommen vom Theme (Montserrat für Überschriften, Poppins für Text) — hier nichts Eigenes laden.
   Geltungsbereich: Body-Klasse .lk-b2 (setzt lakru-shop-design.php), Shop-Seiten, Warenkorb, Kasse, Konto, Startseite.
   S832 (Mancas Kritik an B2): eigener Shop-Kopf .lksk (Werte 1:1 vom Kopf des Internen Bereichs, lakru-intern-ui.css 1a-S657),
   Warenkorb-Pille .lk-cartpill, Beschreibung in der linken Spalte, Woo-Hinweise gestaltet, Bestätigung .lk-added,
   „Mehr Material“ .lk-related, Startseiten-Einleitung mittig.
   S896: .lksk ist der gemeinsame Kopf für Shop UND Internen Bereich (Raster der Startseite, Bereichs-Pillen .lk-kp, „Start“ #2E4A63).
   ===================================================================== */

/* Preisfarbe (Manca S832: „rot ist keine gute Farbe für die Preise“ → dunkles mattes Blau; Alternative Anthrazit #3A3A3A). Links bleiben Pink #e64577 (Theme). */
.lk-b2 { --lk-preis: #2E4A63; }
.lk-b2 .lk-nowrap { white-space: nowrap; }

/* ---------- Knöpfe (Hauptaktion = Pille, wie die Kopfzeile der Seite) ---------- */
.lk-b2 .lk-btn,
.lk-b2 form.cart .single_add_to_cart_button,
.lk-b2 .wc-block-components-button.contained,
.lk-b2 .wc-block-cart__submit-button,
.lk-b2 .wc-block-components-checkout-place-order-button,
.lk-b2 .wp-block-button.lk-btn .wp-block-button__link,
.lk-b2 .woocommerce .checkout-button,
.lk-b2 .woocommerce #place_order {
  display: inline-flex; align-items: center; justify-content: center; gap: 10px;
  height: 54px; padding: 0 30px; border-radius: 999px; border: 0;
  font-weight: 500; font-size: 16px; line-height: 1; letter-spacing: 0; text-transform: none; text-decoration: none;
  color: #fff !important; background: #ab6fd7 !important; box-shadow: none; cursor: pointer; white-space: nowrap;
  transition: background .15s ease, transform .15s ease;
}
.lk-b2 .lk-btn:hover,
.lk-b2 form.cart .single_add_to_cart_button:hover,
.lk-b2 .wc-block-components-button.contained:hover,
.lk-b2 .wp-block-button.lk-btn .wp-block-button__link:hover { background: #9d5fcc !important; color: #fff !important; text-decoration: none; }
.lk-b2 .lk-btn.lk-sec { background: #0da9fe !important; }
.lk-b2 .lk-btn.lk-sec:hover { background: #0b98e6 !important; }
.lk-b2 .wp-block-button.lk-btn { margin: 0; }
.lk-b2 form.cart .single_add_to_cart_button.is-busy { opacity: .7; cursor: progress; }
.lk-b2.single-product form.cart .added_to_cart { display: none; } /* Woos Zusatz-Link nach dem Kauf — die Bestätigung .lk-added trägt den Link selbst */

/* ---------- Kennzeichen, Chips ---------- */
.lk-tag { display: inline-flex; align-items: center; gap: 7px; background: #fff; color: #333; font-weight: 500; font-size: 12.5px; line-height: 1.2;
  padding: 6px 11px; border-radius: 999px; box-shadow: 2px 5px 10px rgba(0,0,0,.08); }
.lk-tag i { width: 9px; height: 9px; border-radius: 50%; background: #af7bda; display: inline-block; }
.lk-chips { display: flex; gap: 10px; flex-wrap: wrap; }
.lk-chip { display: inline-flex; align-items: center; gap: 9px; background: #fff; border-radius: 999px; padding: 9px 14px 9px 11px;
  font-size: 13.5px; line-height: 1.3; color: #444; font-weight: 400; box-shadow: 2px 5px 10px rgba(0,0,0,.05); max-width: 100%; }
.lk-chip svg { width: 18px; height: 18px; flex: none; }

/* =====================================================================
   SHOP-KOPF (S832) — Muster: Kopf des Internen Bereichs (.lkik), gleiche Werte, gleiche Wärme.
   Der Theme-Kopf ist auf den Shop-Seiten verborgen (Body-Klasse lk-kopf-eigen); mit dem mobilen Kopf verschwindet
   auch der Burger-Dialog. Rückweg: LAKRU_SD_KOPF = 'theme' in lakru-shop-design.php.
   ===================================================================== */
body.lk-kopf-eigen .tm-header,
body.lk-kopf-eigen header.tm-header-mobile,
body.lk-kopf-eigen .uk-sticky-placeholder { display: none !important; }
.lksk { --lk-blue: #39A9EF; --lk-text: #2F2F2F; --lk-meta: #6F6F6F; --lk-border: #E7E7E7; --lk-bg-warm: #F6F2EE;
  background: var(--lk-bg-warm); position: relative; z-index: 10; }
/* S896: Raster 1:1 wie der Theme-Kopf der Startseite (uk-container 1200 + 2 × 40 px, Kopfhöhe 100 px, Pillen 46 px mittig) — die Pillen stehen damit auf denselben Pixeln */
.lksk-inner { max-width: 1280px; margin: 0 auto; padding: 0 40px; height: 100px; box-sizing: border-box; display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.lksk-marke { display: inline-flex; align-items: center; gap: 16px; text-decoration: none; color: inherit; min-width: 0; }
.lksk-marke:hover { text-decoration: none; }
.lksk-logo { display: block; height: 48px; width: auto; }
.lksk-wortmarke { font-family: Montserrat, Poppins, -apple-system, sans-serif; font-weight: 700; font-size: 22px; color: var(--lk-text); }
.lksk-wortmarke sup { font-size: .5em; vertical-align: super; }
.lksk-trenn { width: 1px; height: 30px; background: var(--lk-border); flex: none; }
.lksk-label { font-size: 11px; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; color: var(--lk-meta); white-space: nowrap; }
.lksk-rechts { display: inline-flex; align-items: center; gap: 15px; flex: none; }
.lksk-marke:focus-visible { outline: 2px solid var(--lk-blue); outline-offset: 3px; border-radius: 4px; }
/* Bereichs-Pillen (S896): Klassen der Theme-Knöpfe (uk-button-secondary/-primary), Platzbreiten wie gemessen (Intern 129 px, Shop 124 px), damit „Start“ den Platz exakt füllt */
.lksk .lk-kp { height: 46px; line-height: 46px; padding: 0 30px; white-space: nowrap; box-sizing: border-box; }
.lksk .lk-kp-1 { min-width: 129px; }
.lksk .lk-kp-2 { min-width: 124px; }
.lksk .lk-kp-start { background: #2E4A63; color: #fff; }
.lksk .lk-kp-start:hover, .lksk .lk-kp-start:focus-visible { background: #243b50; color: #fff; }
.lksk .lk-cartpill { height: 46px; padding: 0 16px 0 14px; margin-left: -12px; font-size: 15px; } /* wie .lk-cartpill-theme: gemessen 3 px Abstand zur zweiten Pille (Startseite 1143 → 1146) */
@media (max-width: 959px) {
  .lksk-inner { height: 64px; padding: 0 24px; gap: 12px; }
  .lksk-rechts { gap: 6px; }
  .lksk .lk-kp { height: 40px; line-height: 40px; padding: 0 12px; font-size: 14px; min-width: 0; }
  .lksk .lk-cartpill { height: 40px; box-sizing: border-box; padding: 0 10px; gap: 6px; margin-left: 0; font-size: 14px; } /* Max S896: gleiche Höhe wie die Pillen (vorher 42 px mit Rand) */
}
/* Warenkorb-Pille: weiß mit feiner Kante, damit sie neben den zwei Aktions-Pillen des Themes nicht als dritte Aktion konkurriert; der Zähler in Pink (Preisfarbe) */
.lk-cartpill { display: inline-flex; align-items: center; gap: 8px; height: 44px; padding: 0 14px 0 12px; border-radius: 999px;
  background: #fff; border: 1px solid #E7E7E7; color: #2F2F2F; font-weight: 500; font-size: 14px; line-height: 1; text-decoration: none; white-space: nowrap;
  transition: border-color .15s ease, box-shadow .15s ease; }
.lk-cartpill:hover, .lk-cartpill:focus-visible { color: #2F2F2F; text-decoration: none; border-color: #ab6fd7; box-shadow: 0 0 0 3px rgba(171,111,215,.15); outline: 0; }
.lk-cartpill svg { width: 20px; height: 20px; flex: none; color: #ab6fd7; }
.lk-cartpill-n { min-width: 22px; height: 22px; padding: 0 6px; border-radius: 999px; background: var(--lk-preis, #2E4A63); color: #fff; font-size: 12.5px; font-weight: 600;
  display: inline-flex; align-items: center; justify-content: center; box-sizing: border-box; }
.lk-cartpill.is-leer .lk-cartpill-n { display: none; }
/* Pille im Theme-Kopf (Startseite mit vollem Korb, Schalter 'theme'): Höhe der Theme-Pillen (52 px) */
.tm-header .lk-cartpill-theme { height: 46px; padding: 0 16px 0 14px; margin-left: 4px; font-size: 15px; align-self: center; } /* Höhe der Theme-Pillen (gemessen 46 px, S832) */
/* Die Knopfreihe des Themes ist ein umbrechendes Raster: mit der dritten Pille brach sie in eine zweite Zeile (Messung S832: y 71 statt 27) → nicht umbrechen, kein Rasterabstand oben */
.tm-header .uk-navbar-right .uk-grid:has(.lk-cartpill-theme) { flex-wrap: nowrap !important; }
.tm-header .uk-navbar-right .el-item:has(> .lk-cartpill-theme) { margin-top: 0 !important; padding-left: 0; }
.tm-header-mobile .lk-cartpill-mobile { height: 40px; padding: 0 10px; margin-right: 6px; gap: 6px; }
.tm-header-mobile .lk-cartpill-mobile .lk-cartpill-txt { display: none; }
.lk-cartpill-slot { display: none; }
.lk-cartpill.lk-cartpill-fixed { position: fixed; right: 18px; bottom: 18px; z-index: 900; box-shadow: 2px 8px 18px rgba(0,0,0,.12); }
.lk-cartpill-slot:has(.lk-cartpill-fixed) { display: block; }
@media (max-width: 640px) {
  .lksk-marke { gap: 11px; flex: none; }
  .lksk-logo { height: 34px; }
  .lksk-trenn, .lksk-label { display: none; } /* am Handy nur das Logo, damit die Pillen mit Wort Platz haben (Vorschau S896) */
  .lksk .lk-cartpill .lk-cartpill-txt { display: none; }
}
@media (max-width: 359px) {
  .lksk-inner { padding: 0 14px; }
  .lksk .lk-kp-txt { display: none; } /* sehr schmale Geräte: nur Symbol, Name steht im aria-label */
  .lksk .lk-kp .uk-margin-xsmall-right { margin-right: 0 !important; }
}

/* =====================================================================
   WOO-HINWEISE (S832) — der Standard-Hinweis stand ungestaltet zwischen Brotkrume und Bild, mit Fokus-Ring
   ===================================================================== */
.lk-b2 .woocommerce-notices-wrapper:empty { display: none; }
.lk-b2 .woocommerce-message, .lk-b2 .woocommerce-info, .lk-b2 .woocommerce-error {
  list-style: none; margin: 0 0 18px; padding: 14px 18px; border-radius: 14px; border: 0; background: #f0f8fd; color: #333;
  font-size: 15px; line-height: 1.5; font-weight: 400; display: flex; flex-wrap: wrap; align-items: center; gap: 6px 14px;
}
.lk-b2 .woocommerce-message::before, .lk-b2 .woocommerce-info::before, .lk-b2 .woocommerce-error::before { display: none; }
.lk-b2 .woocommerce-error { background: #fbf1f4; }
.lk-b2 .woocommerce-error li { margin: 0; }
.lk-b2 .woocommerce-message:focus, .lk-b2 .woocommerce-info:focus, .lk-b2 .woocommerce-error:focus { outline: 0; }
.lk-b2 .woocommerce-message a, .lk-b2 .woocommerce-info a, .lk-b2 .woocommerce-error a { color: #e64577; text-decoration: none; font-weight: 500; }
.lk-b2 .woocommerce-message .button, .lk-b2 .woocommerce-info .button, .lk-b2 .woocommerce-error .button {
  background: transparent; border: 0; padding: 0; margin: 0; height: auto; line-height: inherit; font-size: inherit; color: #e64577; text-transform: none; float: none; }
.lk-b2 .woocommerce-message .button::after { content: " →"; }
.lk-b2.single-product .woocommerce-notices-wrapper { margin-top: 6px; }
/* Bestätigung in der Kaufbox (Kaufen ohne Seitenwechsel) */
.lk-added { display: flex; align-items: flex-start; gap: 10px; flex-wrap: wrap; margin: 12px 0 4px; padding: 12px 16px; border-radius: 14px; background: #fff;
  font-size: 14.5px; line-height: 1.45; color: #333; }
.lk-added svg { width: 20px; height: 20px; flex: none; margin-top: 1px; }
.lk-added span { flex: 1; min-width: 0; }
.lk-added a { color: #e64577; text-decoration: none; font-weight: 500; white-space: nowrap; }
.lk-added a::after { content: " →"; }

/* =====================================================================
   ÜBERSICHT (/shop/)
   ===================================================================== */
.lk-b2 .woocommerce-result-count,
.lk-b2 .woocommerce-ordering,
.lk-b2 .woocommerce-products-header { display: none !important; }
.lk-b2.woocommerce-shop .woocommerce-breadcrumb { display: none; }
.lk-b2 .woocommerce-breadcrumb { font-size: 14px; color: #777; margin: 0 0 8px; font-weight: 300; }
.lk-b2 .woocommerce-breadcrumb a { color: #e64577; text-decoration: none; }

.lk-hero { border-radius: 26px; background: #f4ecfa; padding: 50px 48px 44px; margin: 0 0 8px; }
.lk-hero h1 { font-size: 48px; line-height: 1.06; letter-spacing: -.025em; max-width: 720px; margin: 0; color: #222; }
.lk-hero p { font-size: 18px; line-height: 1.55; color: #555; max-width: 600px; margin: 14px 0 22px; font-weight: 300; }
.lk-hero .lk-row { display: flex; align-items: center; justify-content: flex-start; flex-wrap: wrap; gap: 14px; }

/* Raster: sechs Spalten, die ersten zwei Kacheln breit */
.lk-b2 ul.products.lk-grid { display: grid !important; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 24px; margin: 30px 0 0 !important; padding: 0 !important; list-style: none; }
.lk-b2 ul.products.lk-grid::before, .lk-b2 ul.products.lk-grid::after { display: none !important; content: none; }
.lk-b2 ul.products.lk-grid > li { margin: 0 !important; padding: 0 !important; width: auto !important; float: none !important; clear: none !important; list-style: none; grid-column: span 2; min-width: 0; }
.lk-b2 ul.products.lk-grid > li::before { display: none; }
.lk-b2 ul.products.lk-grid > li:nth-child(-n+2) { grid-column: span 3; }
@media (max-width: 1000px) {
  .lk-b2 ul.products.lk-grid > li, .lk-b2 ul.products.lk-grid > li:nth-child(-n+2) { grid-column: span 3; }
}
@media (max-width: 600px) {
  .lk-b2 ul.products.lk-grid { grid-template-columns: minmax(0, 1fr); gap: 18px; }
  .lk-b2 ul.products.lk-grid > li, .lk-b2 ul.products.lk-grid > li:nth-child(-n+2) { grid-column: span 1; }
}

/* Kachel */
.lk-tile-wrap { min-width: 0; }
.lk-tile { display: flex; flex-direction: column; position: relative; height: 100%; border-radius: 22px; padding: 22px 22px 24px;
  color: #333; text-decoration: none; box-sizing: border-box; text-align: left; transition: transform .15s ease, box-shadow .15s ease; }
.lk-tile:hover, .lk-tile:focus { color: #333; text-decoration: none; transform: translateY(-2px); box-shadow: 2px 8px 18px rgba(0,0,0,.06); }
.lk-tile.lk-blue { background: #f0f8fd; } .lk-tile.lk-pink { background: #fbf1f4; } .lk-tile.lk-purple { background: #f4ecfa; } .lk-tile.lk-yellow { background: #fffdf2; }
/* Klickfläche: unsichtbarer Flächen-Link über der ganzen Kachel; Titel-Link und der Versandkosten-Link der Pflichtangabe liegen darüber */
.lk-tile .lk-tile-link { position: absolute; inset: 0; z-index: 1; border-radius: 22px; text-decoration: none; }
.lk-tile .lk-tile-titel a { color: inherit; text-decoration: none; position: relative; z-index: 2; }
.lk-tile .lk-legal a { position: relative; z-index: 2; }
.lk-tile:focus-within { outline: 2px solid #ab6fd7; outline-offset: 2px; }
.lk-im { border-radius: 16px; overflow: hidden; aspect-ratio: 1 / 1; background: #fff; box-shadow: 2px 5px 10px rgba(0,0,0,.06); }
.lk-im img { width: 100%; height: 100%; object-fit: cover; display: block; margin: 0; }
.lk-tile .lk-tag { position: absolute; left: 34px; top: 34px; }
.lk-tile .lk-tile-titel { font-size: 22px; line-height: 1.2; letter-spacing: -.01em; margin: 18px 0 0; color: #222; }
.lk-tile .lk-kurz { font-size: 15px; line-height: 1.5; color: #555; margin: 6px 0 14px; flex: 1; font-weight: 300; }
.lk-tile .lk-row { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.lk-tile .lk-preisblock { min-width: 0; }
.lk-tile .lk-price, .lk-tile .lk-price .amount, .lk-tile .lk-price bdi { color: var(--lk-preis, #2E4A63); font-weight: 600; font-size: 24px; line-height: 1.1; }
.lk-tile .lk-price del, .lk-tile .lk-price del .amount { color: #999; font-weight: 400; font-size: 16px; }
.lk-tile .lk-staff { font-size: 13px; line-height: 1.4; color: #777; margin-top: 4px; font-weight: 300; }
.lk-tile .lk-legal { font-size: 12.5px; line-height: 1.4; color: #777; margin-top: 3px; font-weight: 300; }
.lk-tile .lk-legal p { margin: 0; display: inline; }
.lk-tile .lk-legal p + p::before { content: " · "; }
.lk-tile .lk-legal a { color: #777; text-decoration: underline; }
.lk-tile .lk-go { width: 48px; height: 48px; border-radius: 50%; background: #ab6fd7; color: #fff; display: inline-flex; align-items: center; justify-content: center; font-size: 22px; flex: none; }

/* Hinweis unter den Kacheln */
.lk-hint { margin-top: 22px; border-radius: 18px; background: #f7f7f7; padding: 18px 22px; display: flex; gap: 16px; align-items: center;
  font-size: 14.5px; line-height: 1.5; color: #444; font-weight: 300; }
.lk-hint .lk-tag { flex: none; position: static; }
@media (max-width: 600px) { .lk-hint { flex-direction: column; align-items: flex-start; } }
@media (max-width: 700px) {
  .lk-hero { padding: 30px 22px 26px; }
  .lk-hero h1 { font-size: 26px; line-height: 1.12; }
  .lk-hero p { font-size: 16px; }
}

/* =====================================================================
   PRODUKTSEITE
   ===================================================================== */
.lk-b2.single-product div.product { display: grid; grid-template-columns: 1.1fr .9fr; gap: 44px; align-items: start; margin-top: 8px; }
.lk-b2.single-product div.product::before, .lk-b2.single-product div.product::after { display: none !important; content: none; }
.lk-galwrap { display: block; min-width: 0; }
.lk-gal { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.lk-gal > div { border-radius: 22px; overflow: hidden; aspect-ratio: 1 / 1; background: #f7f7f7; }
.lk-gal img { width: 100%; height: 100%; object-fit: cover; display: block; margin: 0; }
.lk-gal.lk-first > div { grid-column: span 2; }
.lk-gal.lk-rest { margin-top: 16px; }
.lk-gal.lk-rest.lk-n1 > div { grid-column: span 2; aspect-ratio: 4 / 3; } /* ein einzelnes Zweitbild volle Breite; 4:3 statt 16:9, damit quadratische Vorlagen (Starter-Set-Montage) nicht oben und unten verlieren (Max S832) */
.lk-platzhalter { display: flex; align-items: center; justify-content: center; color: #777; font-size: 15px; }

/* Kaufbox = WooCommerce-Summary. Klebt unter dem Theme-Kopf (100 px + Luft); im eigenen Shop-Kopf gibt es keinen klebenden Kopf → 24 px.
   Auf niedrigen Bildschirmen (Kaufbox ~690 px) klebt sie nicht, sonst wäre „Das ist drin“ bis zum Seitenende verdeckt (S832). */
.lk-b2.single-product div.product .summary { background: #f4ecfa; border-radius: 26px; padding: 30px 30px 28px; margin: 0; width: auto; float: none; min-width: 0;
  position: sticky; top: 110px; box-sizing: border-box; }
.lk-b2.lk-kopf-eigen.single-product div.product .summary { top: 24px; }
@media (max-height: 840px) { .lk-b2.single-product div.product .summary { position: static; } }
.lk-b2.single-product .summary > .lk-tag { position: static; }
.lk-b2.single-product .summary .product_title { font-size: 34px; line-height: 1.1; letter-spacing: -.02em; margin: 14px 0 0; color: #222; }
.lk-b2.single-product .summary .lk-kurz { font-size: 16.5px; line-height: 1.5; color: #555; margin: 10px 0 16px; font-weight: 300; }
.lk-b2.single-product .summary p.price { margin: 0; font-size: 38px; line-height: 1.1; color: var(--lk-preis, #2E4A63); font-weight: 600; }
.lk-b2.single-product .summary p.price .amount, .lk-b2.single-product .summary p.price bdi { color: var(--lk-preis, #2E4A63); font-weight: 600; }
.lk-b2.single-product .summary p.price del, .lk-b2.single-product .summary p.price del .amount { color: #999; font-weight: 400; font-size: 20px; }
.lk-b2.single-product .summary .legal-price-info { margin: 4px 0 0; }
.lk-b2.single-product .summary .legal-price-info .wc-gzd-additional-info { font-size: 13px; color: #777; font-weight: 300; margin: 0; }
.lk-b2.single-product .summary .legal-price-info a { color: #777; text-decoration: underline; }
.lk-b2.single-product .summary .wc-gzd-additional-info { font-size: 13px; color: #777; font-weight: 300; }
.lk-stf { display: flex; gap: 8px; flex-wrap: wrap; margin: 16px 0 8px; }
.lk-stf span { background: #fff; border-radius: 999px; padding: 7px 12px; font-size: 13.5px; line-height: 1.3; color: #444; font-weight: 500; }
.lk-stf span b { color: var(--lk-preis, #2E4A63); font-weight: 600; }
.lk-stf span.is-aktiv { box-shadow: 0 0 0 2px #ab6fd7 inset; }

.lk-b2.single-product form.cart { display: flex; gap: 12px; margin: 20px 0 10px; flex-wrap: wrap; align-items: center; }
.lk-b2.single-product form.cart .quantity { display: inline-flex; align-items: center; background: #fff; border-radius: 999px; height: 54px; overflow: hidden; margin: 0; float: none; }
.lk-b2.single-product form.cart .quantity input.qty { width: 46px; height: 54px; text-align: center; border: 0; background: transparent; font-weight: 500; font-size: 16px; color: #333; padding: 0;
  -moz-appearance: textfield; appearance: textfield; box-shadow: none; border-radius: 0; margin: 0; }
.lk-b2 input.qty::-webkit-outer-spin-button, .lk-b2 input.qty::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
.lk-b2 .lk-qty { width: 44px; height: 54px; border: 0; background: transparent; color: #666; font-size: 20px; cursor: pointer; padding: 0; line-height: 1; margin: 0; }
.lk-b2 .lk-qty:hover { color: #222; }
.lk-b2.single-product form.cart .single_add_to_cart_button { flex: 1; min-width: 200px; }
.lk-hintline { font-size: 13.5px; line-height: 1.5; color: #777; margin: 0; overflow-wrap: anywhere; font-weight: 300; }

.lk-riegel { border-radius: 16px; padding: 20px 22px; background: #fff; display: flex; gap: 14px; align-items: flex-start; margin: 18px 0 6px; }
.lk-riegel svg { width: 26px; height: 26px; flex: none; margin-top: 2px; }
.lk-riegel p { margin: 0 0 12px; font-size: 15px; line-height: 1.5; color: #444; font-weight: 300; }
.lk-riegel p b { font-weight: 600; color: #333; }

.lk-drin { margin-top: 22px; background: #fff; border-radius: 18px; padding: 18px 20px; }
.lk-drin h4 { font-size: 15px; margin: 0 0 10px; color: #222; }
.lk-drin ul { margin: 0; padding: 0; list-style: none; display: grid; gap: 8px; font-size: 14.5px; line-height: 1.45; color: #444; }
.lk-drin li { display: flex; gap: 10px; align-items: flex-start; font-weight: 300; margin: 0; }
.lk-drin li i { width: 10px; height: 10px; border-radius: 50%; flex: none; display: inline-block; margin-top: 7px; }

/* Beschreibung bleibt in der linken Spalte unter der Galerie: so kann die klebende Kaufbox nie über den Text wandern (S832-Befund: 760 px breit, 80 px unter der Box) */
.lk-desc { grid-column: 1; max-width: none; margin-top: 44px; min-width: 0; }
.lk-desc h3:first-child, .lk-desc h2:first-child { font-size: 26px; margin: 0 0 12px; line-height: 1.2; color: #222; }
.lk-desc p { font-size: 16.5px; line-height: 1.6; color: #444; font-weight: 300; }
.lk-desc blockquote { margin: 18px 0; padding: 16px 20px; border-radius: 16px; background: #fffdf2; font-size: 16px; color: #444; border: 0; }
.lk-desc blockquote p { margin: 0; font-size: 16px; }
.lk-desc ul { font-size: 16px; color: #444; padding-left: 22px; font-weight: 300; }
.lk-desc a { color: #e64577; }

/* „Mehr Material für deine Stimmarbeit“ — außerhalb des Produkt-Rasters (Hook woocommerce_after_single_product) */
.lk-related { margin-top: 64px; }
.lk-related h2 { font-size: 26px; line-height: 1.2; letter-spacing: -.01em; margin: 0 0 4px; color: #222; }
.lk-related .lk-grid { margin-top: 22px; }
.lk-related .lk-tile .lk-tile-titel { font-size: 19px; }
.lk-related .lk-tile .lk-kurz { font-size: 14px; }
.lk-related .lk-tile .lk-price, .lk-related .lk-tile .lk-price .amount, .lk-related .lk-tile .lk-price bdi { font-size: 21px; }

@media (max-width: 900px) {
  .lk-b2.single-product div.product { grid-template-columns: minmax(0, 1fr); gap: 18px; }
  .lk-galwrap { display: contents; }
  .lk-gal.lk-first { order: 1; }
  .lk-b2.single-product div.product .summary { order: 2; position: static; }
  .lk-gal.lk-rest { order: 3; margin-top: 0; }
  .lk-desc { order: 4; margin-top: 36px; grid-column: auto; }
  .lk-hersteller { order: 5; } /* S891: ohne order stand der Germanized-Block (order 0) am Handy VOR Galerie und Kaufbox (Nebenfund S886) */
  .lk-gal.lk-first > div { aspect-ratio: 1 / 1; }
  .lk-gal.lk-rest { grid-template-columns: 1fr 1fr; }
  .lk-gal.lk-rest > div { grid-column: span 1; aspect-ratio: 1 / 1; }
  .lk-gal.lk-rest.lk-n1 > div { grid-column: span 2; aspect-ratio: 4 / 3; } /* ein einzelnes Zweitbild volle Breite (Max S830), 4:3 seit S832 */
  .lk-b2.single-product .summary .product_title { font-size: 26px; }
  .lk-b2.single-product .summary p.price { font-size: 30px; }
  .lk-related { margin-top: 44px; }
}
@media (max-width: 700px) {
  .lk-b2.single-product div.product .summary { padding: 22px 18px 20px; }
  .lk-b2.single-product form.cart .single_add_to_cart_button { min-width: 0; }
  /* Am Handy als Wischreihe statt vier Kacheln untereinander (Dieter S832: vier Kacheln wären zwei Bildschirme Weg bis zur Fußzeile) */
  .lk-related .lk-grid.lk-grid-4 { display: flex; overflow-x: auto; gap: 14px; margin: 18px -18px 0; padding: 4px 18px 12px; scroll-snap-type: x mandatory; -webkit-overflow-scrolling: touch; scrollbar-width: none; }
  .lk-related .lk-grid.lk-grid-4::-webkit-scrollbar { display: none; }
  .lk-related .lk-grid.lk-grid-4 > .lk-tile-wrap { flex: 0 0 78%; scroll-snap-align: start; }
}

/* =====================================================================
   STARTSEITE — Shop-Sektion (Shortcode / Seite 1)
   ===================================================================== */
.lk-sekt { padding: 0; }
.lk-sekt h2 { font-size: 38px; letter-spacing: -.02em; line-height: 1.1; margin: 0; color: #222; }
/* Die Einleitung erbt die Ausrichtung der Sektion (mittig); der Kasten selbst stand links (S832-Befund: x 40, 640 px breit in 1200 px) → beidseitig auto */
.lk-sekt .lk-lead { font-size: 18px; line-height: 1.55; color: #555; max-width: 640px; margin: 12px auto 0; font-weight: 300; }
.lk-lead { font-size: 18px; line-height: 1.55; color: #555; max-width: 640px; margin: 0 auto 6px; font-weight: 300; }
.lk-grid { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 24px; margin-top: 30px; }
.lk-grid.lk-grid-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.lk-grid > .lk-tile-wrap { min-width: 0; }
.lk-cta { margin-top: 26px; display: flex; justify-content: center; }
@media (max-width: 1000px) { .lk-grid.lk-grid-4 { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 600px) {
  .lk-grid, .lk-grid.lk-grid-4 { grid-template-columns: minmax(0, 1fr); gap: 18px; }
  .lk-sekt h2 { font-size: 26px; }
  /* Sektionsüberschrift der Startseite (YOOtheme-Headline, Stil h1): am Handy kleiner, sonst schneidet „LaKru®-Stimmarbeit“ rechts ab (Max S830) */
  .lk-b2 #shop .uk-h1, .lk-b2 #shop h1, .lk-b2 #shop .uk-heading-medium { font-size: 28px !important; line-height: 1.15 !important; }
}

/* =====================================================================
   WARENKORB + KASSE (Block-Seiten) — Schrift, Farben, Knöpfe der Seite
   ===================================================================== */
.lk-b2 .wp-block-woocommerce-cart, .lk-b2 .wp-block-woocommerce-checkout,
.lk-b2 .wc-block-cart, .lk-b2 .wc-block-checkout { font-family: inherit; color: #333; }
.lk-b2 .wc-block-components-product-name { color: #222; font-weight: 500; text-decoration: none; }
.lk-b2 .wc-block-components-product-name:hover { color: #e64577; }
.lk-b2 .wc-block-components-product-price,
.lk-b2 .wc-block-components-product-price .wc-block-formatted-money-amount,
.lk-b2 .wc-block-components-totals-footer-item .wc-block-components-totals-item__value { color: var(--lk-preis, #2E4A63); font-weight: 600; }
.lk-b2 .wc-block-components-totals-item__label, .lk-b2 .wc-block-components-checkout-step__title, .lk-b2 .wc-block-components-title { color: #222; }
.lk-b2 .wc-block-components-sidebar-layout .wc-block-components-sidebar .wc-block-components-panel,
.lk-b2 .wc-block-components-totals-wrapper, .lk-b2 .wc-block-cart-items, .lk-b2 .wc-block-components-order-summary { border-color: rgba(0,0,0,.06); }
.lk-b2 .wc-block-components-text-input input, .lk-b2 .wc-block-components-select select,
.lk-b2 .wc-block-components-form .wc-block-components-text-input input,
.lk-b2 .wc-block-components-quantity-selector, .lk-b2 .wc-block-components-textarea textarea { border-radius: 12px; border-color: #ddd; }
.lk-b2 .wc-block-components-quantity-selector { background: #fff; }
.lk-b2 .wc-block-components-radio-control__option { border-color: rgba(0,0,0,.06); }
.lk-b2 .wc-block-components-checkout-step__heading { align-items: center; }
.lk-b2 .wc-block-cart__submit-container { background: transparent; }
.lk-b2 .wc-block-cart__empty-cart__title { font-size: 26px; color: #222; }
.lk-b2 .wc-block-cart__empty-cart__title::before { display: none !important; }
.lk-b2 .wc-block-components-button.outlined { border-radius: 999px; }
.lk-b2 .wc-block-components-checkout-return-to-cart-button { color: #e64577; }
.lk-b2 .wc-block-components-notice-banner { border-radius: 14px; }
/* Klassische Warenkorb-/Kassen-Vorlagen (falls die Blöcke je abgeschaltet werden) */
.lk-b2 .woocommerce table.shop_table { border-radius: 16px; border-color: rgba(0,0,0,.06); }
.lk-b2 .woocommerce .cart_totals .order-total .amount, .lk-b2 .woocommerce-Price-amount.amount { color: var(--lk-preis, #2E4A63); }
.lk-b2 .woocommerce .return-to-shop .button { border-radius: 999px; }


/* =====================================================================
   S842 (30.09.2026, Max A) — Raster füllt sich nach Kachelzahl.
   Nicht-Mitglieder sehen Workbook und Starter Set nicht (lakru-shop.php 1.3.0); die Reihen sollen trotzdem voll wirken.
   Startseite + „Mehr Material“: Klasse lk-n-<zahl> vom PHP. Shop: :has() zählt die Einträge.
   ===================================================================== */
.lk-grid.lk-grid-4.lk-n-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.lk-grid.lk-grid-4.lk-n-2 { grid-template-columns: repeat(2, minmax(0, calc((100% - 48px) / 3))); justify-content: center; }
.lk-grid.lk-grid-4.lk-n-1 { grid-template-columns: minmax(0, calc((100% - 48px) / 3)); justify-content: center; }
.lk-b2 ul.products.lk-grid:has(> li:nth-child(3):last-child) > li { grid-column: span 2; }
.lk-b2 ul.products.lk-grid:has(> li:nth-child(4):last-child) > li { grid-column: span 3; }
@media (max-width: 1000px) {
  .lk-grid.lk-grid-4.lk-n-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 700px) {
  .lk-related .lk-grid.lk-grid-4[class*="lk-n-"] { justify-content: flex-start; }
}
@media (max-width: 600px) {
  .lk-grid.lk-grid-4.lk-n-3, .lk-grid.lk-grid-4.lk-n-2, .lk-grid.lk-grid-4.lk-n-1 { grid-template-columns: minmax(0, 1fr); }
  .lk-b2 ul.products.lk-grid:has(> li:nth-child(3):last-child) > li,
  .lk-b2 ul.products.lk-grid:has(> li:nth-child(4):last-child) > li { grid-column: span 1; }
}


/* =====================================================================
   S870 (05.10.2026) — Kaufprozess-Check „jede Seite gestaltet“ (Max-Entwurf): nach dem Kauf + Mein Konto + Zahlungsarten.
   Gleiche Werte wie oben: Karte weiß, Radius 16px, Schatten 2px 5px 10px rgba(0,0,0,.08) · Wash Violett #f4ecfa ·
   Link #e64577 · Knopf #ab6fd7 · Text #2F2F2F · Meta #6F6F6F. WooCommerces eigenes CSS ist aus (YOOtheme) — darum alles hier.
   ===================================================================== */
.lk-b2 { --lk-schatten: 2px 5px 10px rgba(0,0,0,.08); --lk-linie: #ECE7E2; --lk-meta: #6F6F6F; --lk-text: #2F2F2F; }

/* Hinweise mit Link mitten im Satz (z. B. „Vertrag widerrufen“): Fließtext statt Flex-Zeile mit Lücken */
.lk-b2 .woocommerce-info:not(:has(.button, .wc-forward)),
.lk-b2 .woocommerce-message:not(:has(.button, .wc-forward)) { display: block; }

/* Kleine Abschnitts-Überschrift (wie „WARENKORB-SUMME“) */
.lk-b2 .wc-bacs-bank-details-heading,
.lk-b2 .woocommerce-order-details__title,
.lk-b2 .woocommerce-customer-details .woocommerce-column__title,
.lk-b2 .woocommerce-Address-title h2,
.lk-b2 .woocommerce-MyAccount-content > h2,
.lk-b2 .woocommerce-EditAccountForm legend {
  font-family: Poppins, sans-serif !important; font-size: 13px !important; font-weight: 600 !important; line-height: 1.3 !important;
  letter-spacing: .06em; text-transform: uppercase; color: var(--lk-meta) !important; margin: 0 0 10px !important; padding: 0; }

/* ---------- Bestätigungsseite ---------- */
.lk-b2 .woocommerce-order { max-width: 880px; }
.lk-b2 .woocommerce-order .woocommerce-thankyou-order-received {
  font-size: 17px; line-height: 1.5; color: var(--lk-text); margin: 0 0 18px; }
.lk-b2 ul.woocommerce-order-overview { list-style: none; margin: 0 0 22px; padding: 0; display: flex; flex-wrap: wrap; gap: 10px; }
.lk-b2 ul.woocommerce-order-overview li {
  margin: 0; padding: 11px 16px; background: #fff; border-radius: 14px; box-shadow: var(--lk-schatten);
  font-size: 13px; line-height: 1.35; color: var(--lk-meta); }
.lk-b2 ul.woocommerce-order-overview li strong { display: block; margin-top: 2px; font-size: 15.5px; font-weight: 500; color: var(--lk-text); }
.lk-b2 ul.woocommerce-order-overview li strong .amount { color: var(--lk-preis, #2E4A63); }
/* Vorkasse: Hinweis + Bankverbindung als eine Karte auf Violett */
.lk-b2 ul.woocommerce-order-overview + p { margin: 0 0 28px; padding: 18px 22px; background: #f4ecfa; border-radius: 16px; font-size: 15.5px; line-height: 1.55; color: var(--lk-text); }
.lk-b2 ul.woocommerce-order-overview + p:has(+ .woocommerce-bacs-bank-details) { margin-bottom: 0; border-radius: 16px 16px 0 0; padding-bottom: 8px; }
.lk-b2 .woocommerce-bacs-bank-details { margin: 0 0 28px; padding: 8px 22px 20px; background: #f4ecfa; border-radius: 0 0 16px 16px; }
.lk-b2 .wc-bacs-bank-details-account-name { display: none; }
.lk-b2 ul.wc-bacs-bank-details { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 10px 34px; }
.lk-b2 ul.wc-bacs-bank-details li.iban strong { white-space: nowrap; }
.lk-b2 ul.wc-bacs-bank-details li { margin: 0; font-size: 13px; line-height: 1.35; color: var(--lk-meta); }
.lk-b2 ul.wc-bacs-bank-details li strong { display: block; margin-top: 2px; font-size: 16px; font-weight: 500; color: var(--lk-text); letter-spacing: .01em; overflow-wrap: anywhere; }

/* Bestelldetails (Bestätigungsseite und Bestellansicht im Konto) */
.lk-b2 .woocommerce-order-details, .lk-b2 .woocommerce-customer-details { margin: 0 0 28px; }
.lk-b2 table.woocommerce-table--order-details,
.lk-b2 table.woocommerce-orders-table {
  width: 100%; margin: 0; border: 0; border-collapse: separate; border-spacing: 0; background: #fff; border-radius: 16px;
  box-shadow: var(--lk-schatten); overflow: hidden; font-size: 15px; line-height: 1.5; }
.lk-b2 table.woocommerce-table--order-details th, .lk-b2 table.woocommerce-table--order-details td,
.lk-b2 table.woocommerce-orders-table th, .lk-b2 table.woocommerce-orders-table td {
  padding: 13px 18px; border: 0; border-bottom: 1px solid var(--lk-linie); background: transparent; text-align: left; vertical-align: top;
  font-weight: 400; color: var(--lk-text); }
.lk-b2 table.woocommerce-table--order-details thead th,
.lk-b2 table.woocommerce-orders-table thead th { font-size: 12.5px; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; color: var(--lk-meta); }
.lk-b2 table.woocommerce-table--order-details th:last-child, .lk-b2 table.woocommerce-table--order-details td:last-child { text-align: right; }
.lk-b2 table.woocommerce-table--order-details tfoot th { color: var(--lk-meta); }
.lk-b2 table.woocommerce-table--order-details tfoot tr:last-child th, .lk-b2 table.woocommerce-table--order-details tfoot tr:last-child td,
.lk-b2 table.woocommerce-orders-table tbody tr:last-child th, .lk-b2 table.woocommerce-orders-table tbody tr:last-child td { border-bottom: 0; }
.lk-b2 .woocommerce-table__product-name a { color: var(--lk-text); font-weight: 500; text-decoration: none; }
.lk-b2 .woocommerce-table__product-name .product-quantity { font-weight: 500; color: var(--lk-meta); }
.lk-b2 .woocommerce-table__product-name p, .lk-b2 .woocommerce-table__product-name .wc-item-meta,
.lk-b2 .woocommerce-table__product-name [class*="delivery-time"] { margin: 4px 0 0; font-size: 13px; color: var(--lk-meta); }
.lk-b2 .woocommerce-table--order-details .shipped_via { font-size: 13px; color: var(--lk-meta); }

/* Adressen nebeneinander als Karten (Bestätigung, Bestellansicht, Konto) */
.lk-b2 .woocommerce-columns--addresses, .lk-b2 .woocommerce-Addresses { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin: 0; }
.lk-b2 .woocommerce-columns--addresses::before, .lk-b2 .woocommerce-columns--addresses::after,
.lk-b2 .woocommerce-Addresses::before, .lk-b2 .woocommerce-Addresses::after { content: none; display: none; }
.lk-b2 .woocommerce-columns--addresses .woocommerce-column, .lk-b2 .woocommerce-Addresses .woocommerce-Address {
  float: none; width: auto; max-width: none; margin: 0; padding: 18px 22px; background: #fff; border-radius: 16px; box-shadow: var(--lk-schatten); }
.lk-b2 .woocommerce-customer-details address, .lk-b2 .woocommerce-Address address {
  margin: 0; padding: 0; border: 0; font-style: normal; font-size: 15px; line-height: 1.6; color: var(--lk-text); }
.lk-b2 .woocommerce-customer-details address p { margin: 8px 0 0; }
.lk-b2 .woocommerce-Address-title { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; margin: 0 0 8px; }
.lk-b2 .woocommerce-Address-title h2 { margin: 0 !important; }
.lk-b2 .woocommerce-Address-title .edit { font-size: 14px; font-weight: 500; color: #e64577; text-decoration: none; white-space: nowrap; }

/* ---------- Mein Konto ---------- */
.lk-b2 .woocommerce-MyAccount-navigation { margin: 0 0 26px; }
.lk-b2 .woocommerce-MyAccount-navigation ul { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.lk-b2 .woocommerce-MyAccount-navigation li { margin: 0; padding: 0; }
.lk-b2 .woocommerce-MyAccount-navigation li::before { content: none; }
.lk-b2 .woocommerce-MyAccount-navigation a {
  display: inline-flex; align-items: center; height: 44px; padding: 0 18px; border-radius: 999px; background: #fff; box-shadow: var(--lk-schatten);
  font-size: 15px; font-weight: 500; line-height: 1; color: var(--lk-text); text-decoration: none; white-space: nowrap; transition: color .15s ease, background .15s ease; }
.lk-b2 .woocommerce-MyAccount-navigation a:hover { color: #ab6fd7; }
.lk-b2 .woocommerce-MyAccount-navigation li.is-active a { background: #ab6fd7; color: #fff; box-shadow: none; }
.lk-b2 .woocommerce-MyAccount-navigation-link--customer-logout { margin-left: auto !important; }
.lk-b2 .woocommerce-MyAccount-navigation-link--customer-logout a { background: transparent; box-shadow: none; color: #e64577; padding: 0 6px; }
.lk-b2 .woocommerce-MyAccount-content { max-width: 880px; font-size: 15.5px; line-height: 1.6; color: var(--lk-text); }
.lk-b2 .woocommerce-MyAccount-content > p { margin: 0 0 14px; }
.lk-b2 .woocommerce-MyAccount-content mark { background: transparent; color: var(--lk-text); font-weight: 500; }
/* Übersicht: drei Kacheln — der Woo-Satz mit denselben drei Links entfällt, wo die Kacheln stehen */
.lk-b2 .woocommerce-MyAccount-content:has(.lk-konto-kacheln) > p:nth-of-type(2) { display: none; }
.lk-konto-kacheln { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; margin: 22px 0 0; }
.lk-konto-kachel { display: flex; flex-direction: column; gap: 4px; padding: 18px 20px; background: #fff; border-radius: 16px; box-shadow: var(--lk-schatten);
  color: var(--lk-text); text-decoration: none; transition: transform .15s ease; }
.lk-konto-kachel:hover { transform: translateY(-2px); color: var(--lk-text); text-decoration: none; }
.lk-konto-kachel b { font-family: Montserrat, sans-serif; font-size: 17px; font-weight: 600; }
.lk-konto-kachel b::after { content: " →"; color: #e64577; }
.lk-konto-kachel span { font-size: 14px; line-height: 1.45; color: var(--lk-meta); }
/* Bestellliste: Knöpfe „Ansehen“ */
.lk-b2 .woocommerce-orders-table .woocommerce-button, .lk-b2 .woocommerce-orders-table .button {
  display: inline-flex; align-items: center; height: 36px; padding: 0 14px; margin: 0 4px 4px 0; border: 0; border-radius: 999px;
  background: #f4ecfa; color: var(--lk-text); font-size: 14px; font-weight: 500; text-decoration: none; }
.lk-b2 .woocommerce-orders-table a:not(.button):not(.woocommerce-button) { color: #e64577; text-decoration: none; font-weight: 500; }
.lk-b2 p.order-again { margin: 0 0 24px; }

/* Formulare (Kontodaten, Adresse bearbeiten, Anmelden, Passwort vergessen) */
.lk-b2 .woocommerce-MyAccount-content form, .lk-b2 form.woocommerce-form-login, .lk-b2 form.lost_reset_password, .lk-b2 form.woocommerce-ResetPassword {
  max-width: 640px; margin: 0 0 24px; padding: 24px; background: #fff; border-radius: 16px; box-shadow: var(--lk-schatten); }
.lk-b2 .woocommerce-MyAccount-content form::after, .lk-b2 form.woocommerce-form-login::after { content: ""; display: table; clear: both; }
.lk-b2.woocommerce-account .form-row, .lk-b2 form.woocommerce-form-login .form-row, .lk-b2 .woocommerce-address-fields .form-row { margin: 0 0 16px; padding: 0; }
.lk-b2.woocommerce-account .form-row label, .lk-b2 .woocommerce-address-fields .form-row label {
  display: block; margin: 0 0 6px; font-size: 14px; font-weight: 500; line-height: 1.35; color: var(--lk-text); }
.lk-b2.woocommerce-account .form-row .required { color: #e64577; border: 0; text-decoration: none; }
.lk-b2.woocommerce-account .form-row .optional { color: var(--lk-meta); font-weight: 400; }
.lk-b2.woocommerce-account .form-row input.input-text, .lk-b2.woocommerce-account .form-row select, .lk-b2.woocommerce-account .form-row textarea {
  display: block; width: 100%; height: 48px; margin: 0; padding: 0 14px; box-sizing: border-box; border: 1px solid #D9D4CF; border-radius: 12px;
  background: #fff; color: var(--lk-text); font: inherit; font-size: 15px; line-height: 1.3; box-shadow: none; }
.lk-b2.woocommerce-account .form-row textarea { height: 110px; padding: 12px 14px; }
.lk-b2.woocommerce-account .form-row input.input-text:focus, .lk-b2.woocommerce-account .form-row select:focus { outline: 2px solid #ab6fd7; outline-offset: 1px; border-color: #ab6fd7; }
.lk-b2.woocommerce-account .form-row-first { float: left; width: calc(50% - 8px); }
.lk-b2.woocommerce-account .form-row-last { float: right; width: calc(50% - 8px); }
.lk-b2.woocommerce-account .form-row-wide, .lk-b2.woocommerce-account .form-row.clear, .lk-b2.woocommerce-account fieldset, .lk-b2.woocommerce-account .clear { clear: both; }
.lk-b2.woocommerce-account .form-row em, .lk-b2 #account_display_name_description { display: block; margin-top: 6px; font-size: 13px; font-style: normal; color: var(--lk-meta); }
.lk-b2 #account_display_name_description em { font-style: normal; color: inherit; font-size: inherit; }
.lk-b2 .woocommerce-EditAccountForm fieldset { margin: 22px 0 8px; padding: 18px 0 0; border: 0; border-top: 1px solid var(--lk-linie); min-width: 0; }
.lk-b2.woocommerce-account .password-input { position: relative; display: block; }
.lk-b2.woocommerce-account .show-password-input {
  position: absolute; top: 50%; right: 8px; width: 34px; height: 34px; margin-top: -17px; padding: 0; border: 0; border-radius: 8px; cursor: pointer;
  background: transparent url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236F6F6F' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 12s3.5-7 10-7 10 7 10 7-3.5 7-10 7S2 12 2 12z'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3C/svg%3E") center / 20px no-repeat; }
.lk-b2.woocommerce-account .show-password-input.display-password { opacity: .55; }
.lk-b2.woocommerce-account .woocommerce-form__label-for-checkbox { display: inline-flex; align-items: center; gap: 8px; font-size: 14px; font-weight: 400; }
.lk-b2.woocommerce-account .woocommerce-Button, .lk-b2.woocommerce-account form .button, .lk-b2.woocommerce-account button[type="submit"]:not(.show-password-input) {
  display: inline-flex; align-items: center; justify-content: center; height: 50px; padding: 0 28px; margin: 6px 12px 0 0; border: 0; border-radius: 999px;
  background: #ab6fd7; color: #fff; font: inherit; font-size: 16px; font-weight: 500; line-height: 1; text-transform: none; cursor: pointer; }
.lk-b2.woocommerce-account .woocommerce-Button:hover, .lk-b2.woocommerce-account form .button:hover { background: #9d5fcc; color: #fff; }
.lk-b2.woocommerce-account .lost_password a, .lk-b2.woocommerce-account .woocommerce-LostPassword a { color: #e64577; text-decoration: none; font-weight: 500; }
.lk-b2.woocommerce-account .woocommerce-form-login h2, .lk-b2.woocommerce-account .u-column1 > h2 { font-size: 22px; margin: 0 0 14px; }

/* ---------- Seite „Zahlungsarten“ (Germanized [payment_methods_info]) ---------- */
.lk-b2:not(.woocommerce-checkout) ul.payment_methods { list-style: none; max-width: 760px; margin: 8px 0 0; padding: 0; display: grid; gap: 14px; }
.lk-b2:not(.woocommerce-checkout) ul.payment_methods > li { margin: 0; padding: 18px 22px; background: #fff; border-radius: 16px; box-shadow: var(--lk-schatten); }
.lk-b2:not(.woocommerce-checkout) ul.payment_methods > li > label { display: block; margin: 0 0 4px; font-family: Montserrat, sans-serif; font-size: 17px; font-weight: 600; color: var(--lk-text); }
.lk-b2:not(.woocommerce-checkout) ul.payment_methods .payment_box { margin: 0; padding: 0; background: transparent; }
.lk-b2:not(.woocommerce-checkout) ul.payment_methods .payment_box p { margin: 0; font-size: 15px; line-height: 1.55; color: #555; }

/* ---------- Handy ---------- */
@media (max-width: 768px) {
  .lk-b2 .woocommerce-columns--addresses, .lk-b2 .woocommerce-Addresses, .lk-konto-kacheln { grid-template-columns: minmax(0, 1fr); }
  .lk-b2 .woocommerce-MyAccount-navigation ul { gap: 6px; }
  .lk-b2 .woocommerce-MyAccount-navigation a { height: 40px; padding: 0 14px; font-size: 14px; }
  .lk-b2 .woocommerce-MyAccount-navigation-link--customer-logout { margin-left: 0 !important; }
  .lk-b2.woocommerce-account .form-row-first, .lk-b2.woocommerce-account .form-row-last { float: none; width: 100%; }
  .lk-b2 .woocommerce-MyAccount-content form, .lk-b2 form.woocommerce-form-login, .lk-b2 form.lost_reset_password { padding: 18px; }
  /* Tabellen gestapelt (Woos eigenes Muster, dessen CSS hier fehlt) */
  .lk-b2 table.shop_table_responsive thead { display: none; }
  .lk-b2 table.shop_table_responsive tbody tr { display: block; padding: 8px 0; border-bottom: 1px solid var(--lk-linie); }
  .lk-b2 table.shop_table_responsive tbody tr:last-child { border-bottom: 0; }
  .lk-b2 table.shop_table_responsive tbody th, .lk-b2 table.shop_table_responsive tbody td {
    display: block; padding: 6px 18px; border: 0; text-align: right; overflow: hidden; }
  .lk-b2 table.shop_table_responsive tbody th::before, .lk-b2 table.shop_table_responsive tbody td::before {
    content: attr(data-title); float: left; margin-right: 12px; text-align: left; font-weight: 500; color: var(--lk-meta); }
  .lk-b2 table.shop_table_responsive tbody td.woocommerce-orders-table__cell-order-actions { text-align: left; }
  .lk-b2 ul.wc-bacs-bank-details li.iban strong { white-space: normal; }
  .lk-b2 table.shop_table_responsive tbody td.woocommerce-orders-table__cell-order-actions::before { content: none; }
  .lk-b2 table.woocommerce-table--order-details th, .lk-b2 table.woocommerce-table--order-details td { padding: 11px 14px; }
}

/* S870: PayPal-Hinweis an der Kasse linksbündig und leise (das Plugin setzt text-align:center inline) */
.lk-b2 .ppcp-place-order-description { text-align: left !important; margin: 6px 0 0; font-size: 14px; line-height: 1.5; color: var(--lk-meta); }

/* S870: Hersteller und Produktsicherheit unter der Beschreibung (Germanized-Ausgabe, leise gesetzt) */
.lk-hersteller { margin-top: 26px; padding-top: 18px; border-top: 1px solid var(--lk-linie, #ECE7E2); font-size: 14px; line-height: 1.55; color: var(--lk-meta, #6F6F6F); }
.lk-hersteller h2, .lk-hersteller h3, .lk-hersteller h4 { font-family: Poppins, sans-serif !important; font-size: 13px !important; font-weight: 600 !important; letter-spacing: .06em; text-transform: uppercase; color: var(--lk-meta, #6F6F6F) !important; margin: 0 0 8px !important; line-height: 1.3 !important; }
.lk-hersteller p { margin: 0 0 6px; }
.lk-hersteller a { color: #e64577; text-decoration: none; }

/* S870 (Manca A): „Vertrag widerrufen“ nur einmal — wo Germanizeds Widerrufs-Knopf steht, verschwindet der gleiche Fuß-Link.
   Seiten ohne den Knopf (z. B. Rechtsseiten) behalten den Fuß-Link. */
body:has(.eu-owb-order-withdraw-from-contract-button) .uk-subnav > li.el-item:has(> a.el-link[href="/vertrag-widerrufen/"]) { display: none; }
