/**
 * Kelverse Precious — style bloków rdzenia pod strony produktowe.
 *
 * Rejestracja: Core\Setup::register_block_styles(). Ładowany na froncie
 * (Core\Assets) i w edytorze (add_editor_style). Nic tu nie animuje się,
 * więc prefers-reduced-motion nie wymaga osobnej obsługi.
 *
 * - is-style-prcs-app-window  — obraz w ramce okna aplikacji (core/image),
 * - is-style-prcs-product     — nagłówek bezszeryfowy, ciasny (core/heading),
 * - is-style-prcs-product-bar — przyklejony pasek produktu (core/group),
 * - is-style-secondary / is-style-outline / is-style-ghost — style przycisków (core/button; Primary to wygląd domyślny).
 *
 * @package KelversePrecious
 */

/* Obraz: okno aplikacji. */
.wp-block-image.is-style-prcs-app-window {
	position: relative;
	padding-top: 2.25rem;
	overflow: hidden;
	background: #fff;
	border: 1px solid #d9dde4;
	border-radius: 14px;
	box-shadow: 0 2px 6px rgba(15, 23, 42, .06), 0 30px 80px -20px rgba(15, 23, 42, .3);
}

.wp-block-image.is-style-prcs-app-window::before {
	content: "";
	position: absolute;
	inset: 0 0 auto 0;
	height: 2.25rem;
	background:
		radial-gradient(circle at 1.1rem 50%, #e2e5ea 0 .3rem, transparent .34rem),
		radial-gradient(circle at 2rem 50%, #e2e5ea 0 .3rem, transparent .34rem),
		radial-gradient(circle at 2.9rem 50%, #e2e5ea 0 .3rem, transparent .34rem),
		#fafbfc;
	border-bottom: 1px solid #eceef2;
}

.wp-block-image.is-style-prcs-app-window img {
	display: block;
	width: 100%;
	height: auto;
	border-radius: 0;
}

.wp-block-image.is-style-prcs-app-window figcaption {
	margin: 0;
	padding: .75rem 1rem;
}

/* Nagłówek: produktowy (bezszeryfowy, ciasny). */
.wp-block-heading.is-style-prcs-product {
	font-family: var(--prcs-font-body, system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif);
	font-weight: 700;
	letter-spacing: -.03em;
	line-height: 1.05;
	text-wrap: balance;
}

/* Grupa: pasek produktu, przykleja się pod nagłówkiem witryny. */
.wp-block-group.is-style-prcs-product-bar {
	position: sticky;
	top: var(--prcs-header-offset, 0px);
	z-index: 40;
	background: var(--wp--preset--color--base, #fff);
	background: color-mix(in srgb, var(--wp--preset--color--base, #fff) 82%, transparent);
	-webkit-backdrop-filter: saturate(180%) blur(18px);
	backdrop-filter: saturate(180%) blur(18px);
	border-bottom: 1px solid var(--prcs-color-border, #e5e7eb);
}

/* Wrapper Content Blocka ograniczałby sticky do własnej wysokości. */
.prcs-content-block:has(> .is-style-prcs-product-bar) {
	display: contents;
}

/* W edytorze pasek nie przykleja się. */
.editor-styles-wrapper .wp-block-group.is-style-prcs-product-bar {
	position: static;
}

/* -------------------------------------------------------------------------
 * Przyciski (ACR-205): Primary (domyślny, kolory z opcji Customizera), Secondary, Outline, Ghost.
 * Te same wartości ma Companion dla precious/button (.prcsc-button.is-variant-*, assets/css/blocks.css).
 * Kolory ustawione w bloku (has-background / has-text-color) mają pierwszeństwo przed stylem.
 * ---------------------------------------------------------------------- */
.wp-block-button.is-style-secondary > .wp-block-button__link:not(.has-background) {
	background: var(--prcs-color-secondary, #0f172a);
}

.wp-block-button.is-style-secondary > .wp-block-button__link:not(.has-text-color) {
	color: var(--prcs-color-base, #fff);
}

.wp-block-button.is-style-outline > .wp-block-button__link,
.wp-block-button.is-style-ghost > .wp-block-button__link {
	border: 2px solid transparent;
	padding: calc(.65rem - 1px) calc(1.25rem - 1px);
}

.wp-block-button.is-style-outline > .wp-block-button__link:not(.has-background),
.wp-block-button.is-style-ghost > .wp-block-button__link:not(.has-background) {
	background: transparent;
}

.wp-block-button.is-style-outline > .wp-block-button__link:not(.has-text-color),
.wp-block-button.is-style-ghost > .wp-block-button__link:not(.has-text-color) {
	color: var(--prcs-color-primary, #2563eb);
}

.wp-block-button.is-style-outline > .wp-block-button__link:not(.has-text-color) {
	border-color: var(--prcs-color-primary, #2563eb);
}

.wp-block-button.is-style-outline > .wp-block-button__link.has-text-color {
	border-color: currentColor;
}

/* Hover: Primary/Secondary przyciemnione, Outline/Ghost z lekkim tłem w kolorze primary (bez filtra, żeby tekst nie tracił kontrastu). */
.wp-block-button:not(.is-style-outline):not(.is-style-ghost) > .wp-block-button__link:hover {
	filter: brightness(.92);
}

.wp-block-button.is-style-outline > .wp-block-button__link:not(.has-background):hover,
.wp-block-button.is-style-ghost > .wp-block-button__link:not(.has-background):hover {
	background: rgba(37, 99, 235, .08);
	background: color-mix(in srgb, var(--prcs-color-primary, #2563eb) 8%, transparent);
}

/* Disabled: wyciszony wygląd, bez hovera i bez kursora akcji (aria-disabled dla linków, disabled dla przycisków formularza). */
.wp-block-button__link[aria-disabled="true"],
.wp-block-button__link.is-disabled {
	background: var(--prcs-color-surface-alt, #eef0f4);
	color: var(--prcs-color-text-muted, #6b7280);
	border-color: var(--prcs-color-border, #e5e7eb);
	filter: none;
	cursor: not-allowed;
	pointer-events: none;
}

