/*
 * Moduł najmu na karcie produktu (makieta nosidla-wp/nosidlo.html). Kolory, promienie i czcionki
 * wyłącznie ze zmiennych motywu „wypozyczalnia” (assets/css/base.css), z wartościami zapasowymi.
 */
.wn-najem { margin: 0 0 24px; }
.wn-najem__karta {
	display: flex; flex-direction: column; gap: 20px; margin: 0;
	padding: 20px; border: 2px solid var(--c-accent, #C84654); border-radius: var(--radius-lg, 1rem);
	background: var(--c-card, #fff);
}
.woocommerce div.product form.wn-najem__karta { margin: 0; }
@media (min-width: 640px) { .wn-najem__karta { padding: 24px; } }

.wn-najem__naglowek { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.wn-najem__tytul { display: flex; align-items: center; gap: 10px; margin: 0; font-weight: 600; font-size: 18px; }
.wn-najem__znak { display: grid; place-items: center; width: 24px; height: 24px; border-radius: var(--radius-pill, 9999px); background: var(--c-accent, #C84654); color: #fff; }
.wn-najem__znak svg { width: 16px; height: 16px; }
.wn-najem__od { color: var(--c-muted, #6E6560); font-size: 14px; white-space: nowrap; }
.wn-najem__sekcja { display: flex; flex-direction: column; gap: 8px; }
.wn-najem__etykieta { margin: 0; font-weight: 600; }
.wn-najem__podpowiedz { margin: 0; color: var(--c-muted, #6E6560); font-size: 13px; }

/* Pakiety: Weekend / Tydzień / 2 tygodnie / Własne daty */
.wn-pakiety { display: grid; grid-template-columns: repeat(auto-fit, minmax(72px, 1fr)); gap: 8px; }
.wn-pakiet {
	display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 2px;
	min-height: 72px; padding: 6px 4px; border: 1px solid var(--c-line, #E6DED5); border-radius: var(--radius, .75rem);
	background: var(--c-card, #fff); color: var(--c-ink, #2B2522); font: inherit; cursor: pointer; text-align: center;
}
.wn-pakiet:hover { border-color: var(--c-accent, #C84654); }
.wn-pakiet[aria-pressed="true"] { border-color: var(--c-accent, #C84654); background: var(--c-accent-faint, #FCF0EE); box-shadow: inset 0 0 0 1px var(--c-accent, #C84654); }
.wn-pakiet__nazwa { font-weight: 600; font-size: 15px; line-height: 1.2; }
.wn-pakiet__dni, .wn-pakiet__cena { font-size: 12px; color: var(--c-muted, #6E6560); }
.wn-pakiet__cena { font-variant-numeric: tabular-nums; color: var(--c-ink, #2B2522); }

/* Kalendarz */
.wn-kal__gora { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.wn-kal__nawigacja { display: flex; align-items: center; gap: 8px; }
.wn-kal__strzalka {
	display: grid; place-items: center; width: 36px; height: 36px; padding: 0; border: 1px solid var(--c-line, #E6DED5);
	border-radius: var(--radius-pill, 9999px); background: var(--c-card, #fff); color: var(--c-ink, #2B2522); font-size: 18px; cursor: pointer;
}
.wn-kal__strzalka:hover { border-color: var(--c-accent, #C84654); }
.wn-kal__strzalka:disabled { opacity: .3; cursor: default; }
.wn-kal__miesiac { min-width: 9.5rem; text-align: center; font-weight: 600; font-size: 15px; }
.wn-kal__tydzien, .wn-kal__siatka { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); }
.wn-kal__tydzien { gap: 4px; padding-top: 4px; color: var(--c-muted, #6E6560); font-size: 12px; text-align: center; }
.wn-kal__siatka { row-gap: 4px; font-variant-numeric: tabular-nums; }
.wn-dzien {
	height: 42px; max-width: 100%; padding: 0; border: 0; border-radius: var(--radius-pill, 9999px);
	background: transparent; color: var(--c-ink, #2B2522); font: inherit; font-size: 14px; cursor: pointer;
}
.wn-dzien[data-stan="free"]:hover { background: var(--c-accent-faint, #FCF0EE); }
.wn-dzien[data-stan="busy"] {
	color: #B5ABA4; text-decoration: line-through; cursor: not-allowed;
	background: repeating-linear-gradient(135deg, var(--c-paper, #F5F1EB) 0 4px, var(--c-line, #E6DED5) 4px 8px);
}
.wn-dzien[data-stan="past"] { color: var(--c-ink-25, rgba(43, 37, 34, .25)); cursor: not-allowed; }
.wn-dzien[data-stan="in-range"] { background: var(--c-accent-soft, #F9E1DF); border-radius: 0; }
.wn-dzien[data-stan="edge"] { background: var(--c-accent, #C84654); color: #fff; font-weight: 700; }
.wn-dzien:focus-visible { outline: 2px solid var(--c-ink, #2B2522); outline-offset: 1px; }
.wn-kal__legenda { display: flex; flex-wrap: wrap; gap: 4px 16px; padding-top: 4px; color: var(--c-muted, #6E6560); font-size: 12px; }
.wn-kal__legenda span { display: flex; align-items: center; gap: 6px; }
.wn-kal__probka { display: inline-block; width: 12px; height: 12px; border-radius: var(--radius-pill, 9999px); }
.wn-kal__probka--wybrane { background: var(--c-accent, #C84654); }
.wn-kal__probka--zajete { background: repeating-linear-gradient(135deg, var(--c-paper, #F5F1EB) 0 3px, var(--c-line, #E6DED5) 3px 6px); }
.wn-najem__blad { margin: 0; padding: 12px 16px; border-radius: var(--radius, .75rem); background: var(--c-alert-soft, #F8E1DE); color: var(--c-alert, #A8322F); font-size: 14px; }

/* Podsumowanie */
.wn-podsumowanie { display: flex; flex-direction: column; gap: 10px; margin: 0; padding-top: 16px; border-top: 1px solid var(--c-line, #E6DED5); }
.wn-podsumowanie > div { display: flex; justify-content: space-between; gap: 16px; }
.wn-podsumowanie dt { color: var(--c-muted, #6E6560); font-weight: 400; }
.wn-podsumowanie dd { margin: 0; font-weight: 600; text-align: right; font-variant-numeric: tabular-nums; }
.wn-link { padding: 0; border: 0; background: none; color: inherit; font: inherit; text-decoration: underline dotted; text-underline-offset: 2px; cursor: pointer; }
.wn-najem__info { margin: -8px 0 0; padding: 12px 16px; border-radius: var(--radius, .75rem); background: var(--c-paper, #F5F1EB); color: var(--c-muted, #6E6560); font-size: 14px; }
.wn-najem__razem { display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: 16px; }
.wn-najem__razem p { display: flex; align-items: baseline; gap: 8px; margin: 0; }
.wn-najem__suma { font-family: var(--font-display, Georgia, serif); font-size: 40px; line-height: 1; font-variant-numeric: tabular-nums; }
.wn-najem__dzis { color: var(--c-muted, #6E6560); font-size: 15px; }
.wn-najem__dodaj { flex-grow: 1; }
@media (min-width: 640px) { .wn-najem__dodaj { flex-grow: 0; } }
.wn-najem__dodaj:disabled, .wn-pasek__dodaj:disabled { opacity: .4; cursor: not-allowed; }
.wn-najem__wysylka { margin: -8px 0 0; padding: 12px 16px; border-radius: var(--radius, .75rem); background: var(--c-sun-soft, #FDF0CC); font-size: 14px; }

/* Powiadom mnie */
.wn-powiadom { display: flex; flex-direction: column; gap: 8px; margin-top: 12px; padding: 16px; border: 1px dashed var(--c-line, #E6DED5); border-radius: var(--radius-lg, 1rem); background: var(--c-card, #fff); }
.wn-powiadom__tytul { margin: 0; font-weight: 600; }
.wn-powiadom__opis, .wn-powiadom__wynik { margin: 0; color: var(--c-muted, #6E6560); font-size: 14px; }
.wn-powiadom__wiersz { display: flex; flex-wrap: wrap; gap: 8px; }
.wn-powiadom__wiersz input { flex: 1 1 200px; min-width: 0; }
.wn-powiadom__zgoda { display: flex; align-items: flex-start; gap: 8px; margin: 0; color: var(--c-muted, #6E6560); font-size: 14px; line-height: 1.4; cursor: pointer; }
.wn-powiadom__zgoda input { flex: 0 0 auto; width: 18px; height: 18px; margin: 1px 0 0; }

/* Pasek zakupu na telefonie */
.wn-pasek { display: none; }
@media (max-width: 1023px) {
	.wn-pasek {
		position: fixed; inset: auto 0 0 0; z-index: 30; display: flex; align-items: center; gap: 12px;
		padding: 12px var(--gutter-r, 16px) calc(12px + env(safe-area-inset-bottom, 0px)) var(--gutter-l, 16px);
		border-top: 1px solid var(--c-line, #E6DED5); background: var(--c-card, #fff);
	}
	.wn-pasek__opis { display: flex; flex-direction: column; min-width: 0; }
	.wn-pasek__termin { overflow: hidden; color: var(--c-muted, #6E6560); font-size: 13px; text-overflow: ellipsis; white-space: nowrap; }
	.wn-pasek__suma { overflow: hidden; font-weight: 600; text-overflow: ellipsis; white-space: nowrap; }
	.wn-pasek__dodaj { flex-shrink: 0; margin-left: auto; }
	body.single-product { padding-bottom: 84px; }
}
