/*
 * Stopka (parts/footer.html) — układ kolumn, menu z ikonami, dane
 * kontaktowe i dolny pasek. Klocki stopki to zwykłe bloki, każdy
 * edytowalny w Edytorze witryny:
 *
 * - logo (core/site-logo, styl "Jasne") + opis witryny (core/site-tagline)
 *   + ikony kontaktowe (fotolady/contact-icons — ten sam blok co w nagłówku,
 *   wygląd w contact-icons.css),
 * - "Nawigacja": nadtytuł (core/heading, styl "Nadtytuł") + menu
 *   (core/navigation, ikona przy pozycji: opcja "Ikona"),
 * - "Kontakt": nadtytuł + fotolady/contact-details,
 * - dolny pasek: fotolady/copyright + fotolady/credit (wykonawca strony).
 *
 * Układ stopki jest zablokowany (zob. inc/class-fotolady-footer.php).
 */
:root .site-footer {
	/* Kolor ikonek liniowych (menu, dane kontaktowe) — blok danych
	 * kontaktowych może go nadpisać własnym (panel boczny → Kolory). */
	--fotolady-line-icon-color: var(--wp--preset--color--accent);
	padding-top: 4.5rem;
	padding-bottom: 1.75rem;
	/* Rdzeń WP daje grupom z tłem własny boczny padding (2.375em) — boczne
	 * marginesy ustawiamy niżej, tak jak w nagłówku. */
	padding-left: 0;
	padding-right: 0;
	font-size: 1.0625rem;
}

/* Te same boczne marginesy co w nagłówku (.site-header > .wp-block-group
 * w header.css) — kolumny stopki startują w tej samej linii co logo
 * w nagłówku. */
:root .site-footer > * {
	box-sizing: border-box;
	padding-left: 1.5rem;
	padding-right: 1.5rem;
}

:root .site-footer__columns {
	gap: 2rem;
	margin-bottom: 0;
}

:root .site-footer__brand {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 1rem;
}

:root .site-footer__brand > * {
	margin: 0;
}

:root .site-footer__tagline {
	color: var(--wp--preset--color--paper);
	font-size: 1rem;
}

/* --- Menu w stopce ---------------------------------------------------- */

:root .site-footer__nav .wp-block-navigation__container {
	gap: 0.85em;
}

:root .site-footer__nav .wp-block-navigation-item__content {
	padding: 0;
	color: var(--wp--preset--color--sand);
	text-decoration: none;
	transition: color 0.2s ease;
}

:root .site-footer__nav .wp-block-navigation-item__content:hover,
:root .site-footer__nav .wp-block-navigation-item__content:focus-visible {
	color: var(--wp--preset--color--accent);
}

/* --- Dane kontaktowe (fotolady/contact-details) ----------------------- */

:root .fotolady-contact-details {
	display: flex;
	flex-direction: column;
	gap: 0.85em;
	/* Tylko boczne — odstęp nad listą daje układ bloków, tak samo jak nad
	 * menu w sąsiedniej kolumnie (i tak samo w edytorze). */
	margin-inline: 0;
	margin-bottom: 0;
	padding: 0;
	list-style: none;
}

:root .fotolady-contact-details__item {
	display: flex;
	align-items: flex-start;
	gap: 0.6em;
	line-height: 1.6;
}

:root .fotolady-contact-details__icon {
	flex: 0 0 auto;
	width: 18px;
	height: 18px;
	/* wyrównanie ikonki do środka pierwszej linii tekstu (line-height 1.6) */
	margin-top: calc((1.6em - 18px) / 2);
	color: var(--fotolady-line-icon-color, var(--wp--preset--color--accent));
}

:root .site-footer .fotolady-contact-details a {
	color: var(--wp--preset--color--paper);
	text-decoration: none;
	transition: color 0.2s ease;
}

:root .site-footer .fotolady-contact-details a:hover,
:root .site-footer .fotolady-contact-details a:focus-visible {
	color: var(--wp--preset--color--accent);
}

/* --- Dolny pasek ------------------------------------------------------ */

:root .site-footer__bottom {
	margin-top: 3.5rem;
	gap: 1rem;
}

:root .site-footer__bottom > * {
	margin: 0;
}

:root .fotolady-copyright {
	margin: 0;
	font-size: 0.8125rem;
	font-weight: 600;
}

/* Wykonawca strony (fotolady/credit): znaczek z firmą + ikonka LinkedIn. */
:root .fotolady-credit {
	display: flex;
	flex: 0 0 auto;
	align-items: center;
	gap: 0.5rem;
}

:root .fotolady-credit__linkedin {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 24px;
	height: 24px;
	border-radius: 6px;
	background-color: var(--wp--preset--color--background-dark);
	color: var(--wp--preset--color--paper);
	transition: background-color 0.15s ease, transform 0.15s ease;
}

:root .fotolady-credit__linkedin svg {
	width: 14px;
	height: 14px;
	fill: currentColor;
}

:root .fotolady-credit__linkedin:hover,
:root .fotolady-credit__linkedin:focus-visible {
	background-color: #0a66c2;
	color: var(--wp--preset--color--white);
	transform: translateY(-2px);
}

/* Na telefonie copyright i znaczek wykonawcy mają się zmieścić w jednym
 * rzędzie — chowamy drugą część copyrightu ("Wszelkie prawa zastrzeżone."). */
@media (max-width: 600px) {
	:root .site-footer {
		padding-top: 3.5rem;
	}

	:root .site-footer__bottom {
		margin-top: 2.5rem;
	}

	:root .fotolady-copyright {
		white-space: nowrap;
		font-size: 0.75rem;
	}

	:root .fotolady-copyright__rights {
		display: none;
	}
}

@media (prefers-reduced-motion: reduce) {
	:root .site-footer__nav .wp-block-navigation-item__content,
	:root .site-footer .fotolady-contact-details a,
	:root .fotolady-credit__linkedin {
		transition: none;
	}

	:root .fotolady-credit__linkedin:hover,
	:root .fotolady-credit__linkedin:focus-visible {
		transform: none;
	}
}

/* --- Przycisk „Napisz do nas” (inc/class-fotolady-messenger-button.php)
 * Prawy dolny róg; gdy widać przycisk „Cookies” (FotoLady Core) — nad nim. */
.fotolady-messenger {
	position: fixed;
	right: clamp(12px, 3vw, 28px);
	bottom: clamp(12px, 3vw, 28px);
	z-index: 998;
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	gap: 0.6rem;
	transition: bottom 0.3s ease;
}

body:has(#fotolady-cc-fab:not([hidden])) .fotolady-messenger {
	bottom: calc(clamp(12px, 3vw, 28px) + 52px);
}

.fotolady-messenger__toggle {
	display: inline-flex;
	align-items: center;
	gap: 0.6rem;
	height: 52px;
	padding: 0 1.15rem 0 0.9rem;
	border: 0;
	border-radius: 99px;
	background-color: var(--wp--preset--color--accent);
	box-shadow: 0 12px 28px -10px rgba(24, 22, 20, 0.55);
	color: var(--wp--preset--color--ink);
	font: inherit;
	font-size: 0.9rem;
	font-weight: 700;
	cursor: pointer;
	transition: background-color 0.2s ease, transform 0.2s ease;
}

.fotolady-messenger__toggle svg {
	flex: none;
	width: 26px;
	height: 26px;
	fill: currentColor;
}

.fotolady-messenger__toggle:is(:hover, :focus-visible),
.fotolady-messenger.is-open .fotolady-messenger__toggle {
	background-color: #e14a2c;
}

.fotolady-messenger__toggle:hover {
	transform: translateY(-2px);
}

.fotolady-messenger__toggle:focus-visible,
.fotolady-messenger__panel a:focus-visible {
	outline: 2px solid var(--wp--preset--color--accent);
	outline-offset: 3px;
}

.fotolady-messenger__panel {
	width: min(300px, calc(100vw - 24px));
	padding: 0.9rem 0.6rem 0.6rem;
	border-radius: 8px;
	background-color: var(--wp--preset--color--graphite);
	box-shadow: 0 24px 60px -12px rgba(0, 0, 0, 0.55);
	color: var(--wp--preset--color--paper);
}

.fotolady-messenger__panel[hidden] {
	display: none;
}

.fotolady-messenger__title {
	margin: 0 0.6rem 0.5rem;
	color: var(--wp--preset--color--accent);
	font-size: 0.72rem;
	font-weight: 700;
	letter-spacing: 0.14em;
	text-transform: uppercase;
}

.fotolady-messenger__panel a {
	display: flex;
	align-items: center;
	gap: 0.8rem;
	padding: 0.6rem;
	border-radius: 6px;
	color: var(--wp--preset--color--paper);
	text-decoration: none;
	transition: background-color 0.2s ease;
}

.fotolady-messenger__panel a:hover {
	background-color: rgba(247, 244, 240, 0.08);
}

.fotolady-messenger__panel b {
	display: block;
	font-size: 0.95rem;
}

.fotolady-messenger__panel small {
	display: block;
	color: #c8c2ba;
	font-size: 0.8rem;
}

.fotolady-messenger__icon {
	display: grid;
	flex: none;
	place-items: center;
	width: 38px;
	height: 38px;
	border-radius: 50%;
	background-color: rgba(247, 244, 240, 0.08);
	color: var(--wp--preset--color--accent);
}

.fotolady-messenger__icon svg {
	width: 20px;
	height: 20px;
}

.fotolady-messenger__icon svg[viewBox="0 0 24 24"]:not([stroke]) {
	fill: currentColor;
}

/* Czat w godzinach pracy: zielona kropka „online” i wyróżniona pozycja. */
.fotolady-messenger__toggle {
	position: relative;
}

.fotolady-messenger__dot {
	display: none;
	position: absolute;
	top: 4px;
	right: 4px;
	width: 12px;
	height: 12px;
	border: 2px solid var(--wp--preset--color--paper);
	border-radius: 50%;
	background-color: #2fbf71;
}

.fotolady-messenger.is-online .fotolady-messenger__dot {
	display: block;
}

.fotolady-messenger.is-online [data-contact="chat"] {
	background-color: rgba(255, 90, 54, 0.14);
}

.fotolady-messenger.is-online [data-contact="chat"] b::after {
	content: "";
	display: inline-block;
	width: 8px;
	height: 8px;
	margin-left: 0.4rem;
	border-radius: 50%;
	background-color: #2fbf71;
	vertical-align: middle;
}

.fotolady-messenger[hidden] {
	display: none;
}

/* Otwarte okno filmu / menu mobilne — przycisk nie zasłania. */
html:is(.has-video-open, .has-modal-open) .fotolady-messenger {
	display: none;
}

/* Telefon: sam okrągły przycisk. */
@media (max-width: 640px) {
	.fotolady-messenger__toggle {
		width: 52px;
		padding: 0;
		justify-content: center;
	}

	.fotolady-messenger__label {
		position: absolute;
		width: 1px;
		height: 1px;
		overflow: hidden;
		clip: rect(0 0 0 0);
		white-space: nowrap;
	}
}

@media (prefers-reduced-motion: reduce) {
	.fotolady-messenger,
	.fotolady-messenger__toggle {
		transition: none;
	}
}

@media print {
	.fotolady-messenger {
		display: none;
	}
}
