/* =============================================================================
   50-germanized.css — Germanized für WooCommerce (Free + Pro)
   =============================================================================

   Wird über functions.php nur geladen, wenn Germanized aktiv ist.

   Germanized ergänzt den Shop um die rechtlich vorgeschriebenen deutschen
   Angaben: Steuerhinweis, Versandkosten-Link, Lieferzeit, Grundpreis,
   Pflicht-Checkboxen an der Kasse, "Zahlungspflichtig bestellen". Diese
   Angaben sind keine Deko — sie müssen lesbar und eindeutig sein. Deshalb
   sind sie hier bewusst ruhig, aber nicht kleingeredet gestaltet.

   ---------------------------------------------------------------------------
   ZUR ROBUSTHEIT DER SELEKTOREN

   Germanized benennt einzelne Klassen zwischen Hauptversionen um. Der Layer
   ist deshalb zweistufig aufgebaut:

     1. eine generische Regel über das Präfix [class*="wc-gzd-"], die
        Typografie und Farben aller Germanized-Ausgaben normalisiert —
        die greift auch bei umbenannten Klassen;
     2. gezielte Regeln für die Bausteine, die man tatsächlich sieht.

   Sobald das erste Produkt und ein echter Kassenvorgang existieren, sollte
   Abschnitt 3 (Kasse) einmal am realen Markup gegengeprüft werden.
   Gebaut gegen: Germanized 4.1.1 / Germanized Pro 4.3.9 / WooCommerce 11.1.
   ========================================================================== */


/* -----------------------------------------------------------------------------
   1. Grundton für alle Germanized-Ausgaben
   -------------------------------------------------------------------------- */

#top [class*="wc-gzd-"] {
	font-family: var(--sp-font-body);
}

#top [class*="wc-gzd-"] a {
	color: var(--sp-brand-dark);
}

#top [class*="wc-gzd-"] a:hover {
	color: var(--sp-accent);
}


/* -----------------------------------------------------------------------------
   2. Pflichtangaben unter dem Preis
   -----------------------------------------------------------------------------
   Steuerhinweis, Versandkosten, Lieferzeit, Grundpreis. Klein, aber in
   Monospace und mit klarem Kontrast — nicht ausgegraut, das wäre bei
   Pflichtangaben die falsche Botschaft.
   -------------------------------------------------------------------------- */

#top .wc-gzd-additional-info,
#top .wc-gzd-additional-info-loop,
#top p.wc-gzd-additional-info {
	display: block;
	font-family: var(--sp-font-mono);
	font-size: var(--sp-fs-xs);
	line-height: var(--sp-lh-base);
	color: var(--sp-ink-2);
	letter-spacing: 0;
	margin: var(--sp-space-1) 0 0 0;
	padding: 0;
	list-style: none;
}

/* Abstand zum nächsten Element (Button, Warenkorb-Formular), damit die
   Pflichtangaben nie an einer Schaltfläche kleben. */
#top .wc-gzd-additional-info + .button,
#top .wc-gzd-additional-info + form,
#top .wc-gzd-additional-info + .cart {
	margin-top: var(--sp-space-4);
}

#top .wc-gzd-additional-info li {
	margin: 0;
	padding: 0;
	border: 0;
	list-style: none;
}

/* Steuerhinweis — der wichtigste Teil, deshalb etwas kräftiger. */
#top .wc-gzd-additional-info.tax-info,
#top .wc-gzd-additional-info .tax-info {
	color: var(--sp-ink-2);
	font-weight: var(--sp-fw-medium);
}

/* Versandkosten-Link */
#top .wc-gzd-additional-info.shipping-costs-info a,
#top .wc-gzd-additional-info .shipping-costs-info a {
	text-decoration: underline;
	text-underline-offset: 2px;
}

/* Lieferzeit — bei digitalen Produkten meist "Sofortiger Download". */
#top .wc-gzd-additional-info.delivery-time-info,
#top .wc-gzd-additional-info .delivery-time-info {
	color: var(--sp-ok);
}

/* Grundpreis */
#top .wc-gzd-additional-info.unit-price,
#top .wc-gzd-price-unit,
#top .wc-gzd-unit-price-wrapper {
	font-family: var(--sp-font-mono);
	font-size: var(--sp-fs-xs);
	color: var(--sp-ink-3);
	font-variant-numeric: tabular-nums;
}

/* Auf der Produktdetailseite etwas mehr Luft und eine Abtrennung. */
#top .woocommerce div.product .wc-gzd-additional-info {
	border-top: var(--sp-border);
	padding-top: var(--sp-space-3);
	margin-top: var(--sp-space-3);
	font-size: var(--sp-fs-sm);
}


/* -----------------------------------------------------------------------------
   3. Kasse — Pflicht-Checkboxen und Hinweise
   -----------------------------------------------------------------------------
   AGB, Widerrufsbelehrung, Datenschutz, bei Downloads zusätzlich die
   Einwilligung zum vorzeitigen Beginn. Diese Blöcke bekommen bewusst eine
   eigene Fläche mit Kante — sie sind der Teil der Kasse, den man gelesen
   haben muss.
   -------------------------------------------------------------------------- */

#top .wc-gzd-checkbox-placeholder,
#top .wc-gzd-legal-checkbox,
#top .wc-gzd-checkout-checkboxes {
	background-color: var(--sp-panel-alt);
	border: var(--sp-border);
	border-left: 3px solid var(--sp-brand);
	border-radius: var(--sp-radius);
	padding: var(--sp-space-3) var(--sp-space-4);
	margin-bottom: var(--sp-space-3);
	font-size: var(--sp-fs-sm);
	line-height: var(--sp-lh-base);
	color: var(--sp-ink);
}

#top .wc-gzd-checkbox-placeholder label,
#top .wc-gzd-legal-checkbox label {
	font-weight: var(--sp-fw-normal);
	color: var(--sp-ink);
	display: inline;
}

#top .wc-gzd-checkbox-placeholder input[type="checkbox"],
#top .wc-gzd-legal-checkbox input[type="checkbox"] {
	accent-color: var(--sp-brand);
	margin-right: var(--sp-space-2);
}

/* Nicht angehakte Pflicht-Checkbox nach Absendeversuch. */
#top .wc-gzd-checkbox-placeholder.woocommerce-invalid,
#top .wc-gzd-legal-checkbox.woocommerce-invalid {
	border-left-color: var(--sp-error);
	background-color: var(--sp-error-bg);
}

/* Hinweistexte von Germanized (Bestellübersicht, "Daten bearbeiten"). */
#top .wc-gzd-checkout-info,
#top .wc-gzd-edit-data-notice,
#top .wc-gzd-cart-info {
	font-size: var(--sp-fs-sm);
	color: var(--sp-ink-2);
	background-color: var(--sp-brand-soft);
	border: var(--sp-border);
	border-radius: var(--sp-radius);
	padding: var(--sp-space-3) var(--sp-space-4);
}

/* Produktbeschreibung in der Bestellübersicht (Pflichtangabe je Position). */
#top .wc-gzd-item-desc,
#top .wc-gzd-product-name-left {
	font-size: var(--sp-fs-xs);
	line-height: var(--sp-lh-base);
	color: var(--sp-ink-3);
	display: block;
	margin-top: var(--sp-space-1);
}

/* "Zahlungspflichtig bestellen" — der verbindliche Button.
   Bleibt orange wie alle Hauptaktionen, bekommt aber mehr Gewicht. */
#top .wc-gzd-order-submit .button,
#top .wc-gzd-order-submit #place_order,
#top #place_order.wc-gzd-place-order {
	font-size: var(--sp-fs-base);
	padding: 16px 30px;
	width: 100%;
	justify-content: center;
	text-align: center;
}

/* Der Preis-Hinweis direkt über dem Bestellbutton. */
#top .wc-gzd-order-submit .wc-gzd-additional-info {
	margin-bottom: var(--sp-space-3);
	font-size: var(--sp-fs-sm);
}


/* -----------------------------------------------------------------------------
   4. Widerruf, AGB & Co. als Seiteninhalt
   -------------------------------------------------------------------------- */

#top .wc-gzd-legal-text,
#top .woocommerce-terms-and-conditions {
	font-size: var(--sp-fs-sm);
	line-height: var(--sp-lh-loose);
	color: var(--sp-ink-2);
	background-color: var(--sp-panel-alt);
	border: var(--sp-border);
	border-radius: var(--sp-radius);
	padding: var(--sp-space-5);
	max-height: 320px;
	overflow-y: auto;
}


/* -----------------------------------------------------------------------------
   5. Germanized Pro — Rechnungen, Lieferscheine, B2B
   -----------------------------------------------------------------------------
   Pro erzeugt Rechnungs-PDFs und blendet im Konto Belege ein. Dateinamen,
   Belegnummern und USt-IdNr. gehören in Monospace — gleiche Logik wie in
   den eigenen E-Rechnungs-Werkzeugen.
   -------------------------------------------------------------------------- */

#top .wc-gzd-document-number,
#top .wc-gzd-invoice-number,
#top [class*="wc-gzd-"] .document-number,
#top .woocommerce table.woocommerce-table--order-documents td,
#top .wc-gzd-vat-id,
#top input[name="billing_vat_id"],
#top input[id*="vat_id"] {
	font-family: var(--sp-font-mono);
	font-variant-numeric: tabular-nums;
	letter-spacing: 0.02em;
}

#top input[name="billing_vat_id"],
#top input[id*="vat_id"] {
	text-transform: uppercase;
}

/* Belegliste im Kundenkonto */
#top .woocommerce table.woocommerce-table--order-documents th {
	background-color: var(--sp-panel-alt);
	font-family: var(--sp-font-mono);
	font-size: var(--sp-fs-xs);
	text-transform: uppercase;
	letter-spacing: var(--sp-tracking-wide);
	color: var(--sp-ink-3);
}

/* B2B-Hinweis (Reverse Charge / Nettopreise für Geschäftskunden). */
#top .wc-gzd-b2b-notice,
#top .wc-gzd-reverse-charge-notice {
	font-family: var(--sp-font-mono);
	font-size: var(--sp-fs-xs);
	color: var(--sp-brand-dark);
	background-color: var(--sp-brand-soft);
	border-radius: var(--sp-radius);
	padding: var(--sp-space-2) var(--sp-space-3);
	display: inline-block;
}


/* -----------------------------------------------------------------------------
   6. Responsive
   -------------------------------------------------------------------------- */

@media only screen and (max-width: 767px) {

	#top .wc-gzd-checkbox-placeholder,
	#top .wc-gzd-legal-checkbox {
		padding: var(--sp-space-3);
	}

	#top .wc-gzd-legal-text,
	#top .woocommerce-terms-and-conditions {
		max-height: 240px;
		padding: var(--sp-space-4);
	}
}
