/**
 * Accordion Component — Reusable between Cennik FAQ/Pomocnicze and Druk pages (banery/ulotki/wizytówki)
 *
 * Classes: .cennik-accordion__* (shared namespace for reusability across pages)
 * States: aria-expanded, [hidden] attribute
 * Animations: 320ms cubic-bezier(0.16,1,0.3,1) max-height, 280ms opacity
 *
 * @package Kotler
 */

.cennik-accordion__list {
	display: flex;
	flex-direction: column;
}

/* Default — flat list with separators (FAQ on light background) */
.cennik-faq .cennik-accordion__list {
	border-top: 1px solid var(--kotler-border, rgba(10, 22, 40, 0.08));
}

.cennik-accordion__item {
	border-bottom: 1px solid var(--kotler-border, rgba(10, 22, 40, 0.08));
}

/* Pomocnicze on blue accent background — cards instead of flat */
.cennik-pomocnicze .cennik-accordion__list {
	gap: 0.6rem;
}

.cennik-pomocnicze .cennik-accordion__item {
	background: var(--kotler-paper, #ffffff);
	border: 1px solid rgba(0, 128, 246, 0.15);
	border-radius: 12px;
	padding: 0 1rem;
	transition: border-color 200ms ease, box-shadow 280ms ease;
}

.cennik-pomocnicze .cennik-accordion__item:hover {
	border-color: rgba(0, 128, 246, 0.35);
	box-shadow: 0 6px 18px rgba(0, 128, 246, 0.06);
}

.cennik-accordion__trigger {
	all: unset;
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 1.5rem;
	width: 100%;
	padding: 1.25rem 0.25rem;
	cursor: pointer;
	font-family: var(--font-display, 'Plus Jakarta Sans', system-ui, sans-serif);
	font-size: clamp(1rem, 1.4vw, 1.18rem);
	font-weight: 600;
	line-height: 1.35;
	letter-spacing: -0.01em;
	color: var(--kotler-ink, #0a1628);
	box-sizing: border-box;
	text-align: left;
	transition: color 200ms ease;
}

.cennik-accordion__trigger:hover {
	color: var(--kotler-blue-dark, #0066c4);
}

.cennik-accordion__trigger:focus-visible {
	outline: 2px solid var(--kotler-blue, #0080f6);
	outline-offset: 4px;
	border-radius: 4px;
}

.cennik-accordion__question {
	flex: 1 1 0%;
	min-width: 0;
}

.cennik-accordion__icon {
	flex-shrink: 0;
	width: 22px;
	height: 22px;
	margin-top: 2px;
	color: var(--kotler-text-soft, #4a4a4a);
	transform: rotate(0deg);
	transition: transform 320ms cubic-bezier(0.16, 1, 0.3, 1), color 200ms ease;
}

.cennik-accordion__trigger[aria-expanded="true"] .cennik-accordion__icon {
	transform: rotate(180deg);
	color: var(--kotler-blue, #0080f6);
}

.cennik-accordion__trigger[aria-expanded="true"] {
	color: var(--kotler-ink, #0a1628);
}

.cennik-accordion__panel {
	overflow: hidden;
	max-height: 0;
	opacity: 0;
	transition:
		max-height 320ms cubic-bezier(0.16, 1, 0.3, 1),
		opacity 280ms ease;
}

.cennik-accordion__panel:not([hidden]) {
	max-height: 60rem;
	opacity: 1;
}

.cennik-accordion__panel[hidden] {
	display: block;
	max-height: 0;
	opacity: 0;
}

.cennik-accordion__answer {
	padding: 0.25rem 0.25rem 1.5rem;
	max-width: 60ch;
	font-family: var(--font-body, 'Geist', system-ui, sans-serif);
	font-size: clamp(0.95rem, 1.1vw, 1.0625rem);
	line-height: 1.6;
	color: var(--kotler-text-soft, #4a4a4a);
}

.cennik-accordion__answer p {
	margin: 0;
}

.cennik-accordion__answer p + p {
	margin-top: 0.75rem;
}

@media (prefers-reduced-motion: reduce) {
	.cennik-accordion__trigger,
	.cennik-accordion__icon,
	.cennik-accordion__panel {
		transition: none !important;
	}
}
