/* LW Zbiórki – kolory i fonty w zmiennych poniżej. Font dziedziczony ze strony. */
.lwz {
	--lwz-blue: #0f62fe;
	--lwz-text: #161616;
	--lwz-muted: #525252;
	--lwz-track: #e0e0e0;
	display: grid;
	grid-template-columns: minmax(220px, 280px) minmax(0, 1fr);
	gap: 48px;
	align-items: start;
	color: var(--lwz-text);
	font-family: inherit;
}
.lwz *, .lwz *::before, .lwz *::after { box-sizing: border-box; }
.lwz--bare { grid-template-columns: minmax(0, 1fr); }

/* Nagłówek po lewej */
.lwz-bar { display: block; width: 44px; height: 3px; margin-bottom: 20px; background: var(--lwz-blue); }
.lwz-title { margin: 0 0 16px; font-size: clamp(26px, 2.4vw, 32px); font-weight: 400; line-height: 1.2; color: var(--lwz-text); }
.lwz-desc { margin: 0; font-size: 14px; line-height: 1.6; color: var(--lwz-muted); }

/* Grupy */
.lwz-group + .lwz-group { margin-top: 56px; }
.lwz-badge {
	display: inline-block;
	margin: 0 0 24px -14px;
	padding: 3px 10px;
	font-size: 11px;
	font-weight: 400;
	line-height: 1.5;
	border-radius: 999px;
	letter-spacing: 0;
}
.lwz-badge--1 { background: #ffd6e8; color: #9f1853; }
.lwz-badge--2 { background: #d0e2ff; color: #0043ce; }
.lwz-badge--3 { background: #e8daff; color: #6929c4; }
.lwz-badge--4 { background: #9ef0f0; color: #005d5d; }
.lwz-badge--5 { background: #fcf4d6; color: #8e6a00; }
.lwz-badge--6 { background: #a7f0ba; color: #0e6027; }

/* Siatka kafelków */
.lwz-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 44px 44px;
}

.lwz-card { display: flex; flex-direction: column; min-width: 0; }
.lwz-icon { color: var(--lwz-blue); margin-bottom: 18px; flex: none; }
.lwz-card-title { margin: 0 0 14px; font-size: 18px; font-weight: 400; line-height: 1.4; color: var(--lwz-text); }
.lwz-card-desc { margin: 0 0 24px; font-size: 13px; line-height: 1.6; color: var(--lwz-muted); }

/* Pasek, kwoty i przycisk trzymają się dołu, żeby równały się w rzędzie */
.lwz-progress { margin-top: auto; height: 7px; background: var(--lwz-track); overflow: hidden; }
.lwz-progress span { display: block; height: 100%; background: var(--lwz-blue); }

.lwz-stats {
	display: flex; justify-content: space-between; gap: 12px;
	margin: 7px 0 8px;
	font-size: 11px; line-height: 1.4; color: var(--lwz-muted);
}

.lwz-btn {
	display: flex; align-items: center; justify-content: space-between;
	padding: 9px 14px;
	font-size: 13px; line-height: 1.3;
	color: var(--lwz-blue); background: #fff;
	border: 1px solid var(--lwz-blue);
	text-decoration: none;
	transition: background-color .15s, color .15s;
}
.lwz-btn:hover { background: var(--lwz-blue); color: #fff; }
.lwz-btn:focus-visible { outline: 2px solid var(--lwz-blue); outline-offset: 2px; }

/* Responsywność */
@media (max-width: 1200px) {
	.lwz-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 40px 32px; }
}
@media (max-width: 900px) {
	.lwz { grid-template-columns: 1fr; gap: 32px; }
	.lwz-badge { margin-left: 0; }
}
@media (max-width: 600px) {
	.lwz-grid { grid-template-columns: 1fr; gap: 36px; }
}
