/* Baner zgód — działa z każdym motywem (kolory z tokenów motywu, z wartościami awaryjnymi). */
.ul-cc[hidden], .ul-cc__prefs[hidden] { display: none !important; }
.ul-cc {
	position: fixed; z-index: 99990; left: 1rem; right: 1rem; bottom: 1rem;
	display: flex; justify-content: center; pointer-events: none;
}
.ul-cc__box {
	pointer-events: auto; width: 100%; max-width: 640px; box-sizing: border-box;
	background: #fff; color: var(--wp--preset--color--navy, #0B2545);
	border: 1px solid var(--wp--preset--color--line, #DCE3E1); border-radius: 8px;
	padding: 1.25rem; box-shadow: 0 8px 32px rgba(16,42,51,.18);
	font-size: .9375rem; line-height: 1.5; max-height: calc(100vh - 2rem); overflow: auto;
}
.ul-cc__title { font-family: var(--wp--preset--font-family--heading, system-ui, sans-serif); font-weight: 800; font-size: 1.2rem; letter-spacing: -.02em; margin: 0 0 .375rem; }
.ul-cc__text { margin: 0 0 1rem; color: var(--wp--preset--color--muted, #4A5F68); }
.ul-cc__text a { color: var(--wp--preset--color--primary, #0B8577); }
.ul-cc__actions { display: flex; flex-wrap: wrap; gap: .5rem; }
.ul-cc__btn {
	min-height: 44px; padding: .5rem 1rem; border-radius: 12px; cursor: pointer;
	font: 700 15px var(--wp--preset--font-family--heading, system-ui, sans-serif); border: 2px solid var(--wp--preset--color--navy, #0B2545);
	background: #fff; color: var(--wp--preset--color--navy, #0B2545);
}
.ul-cc__btn--primary { background: var(--wp--preset--color--primary, #0B8577); border-color: var(--wp--preset--color--primary, #0B8577); color: #fff; }
.ul-cc__btn--primary:hover { background: var(--wp--preset--color--primary-dark, #0A7568); border-color: var(--wp--preset--color--primary-dark, #0A7568); }
.ul-cc__btn--link { border-color: transparent; text-decoration: underline; text-underline-offset: 3px; padding-left: .5rem; padding-right: .5rem; }
.ul-cc__btn:focus-visible { outline: 3px solid var(--wp--preset--color--primary, #0B8577); outline-offset: 2px; }
.ul-cc__prefs { margin-top: 1rem; padding-top: 1rem; border-top: 1px solid var(--wp--preset--color--line, #DCE3E1); }
.ul-cc__prefs fieldset { border: 0; margin: 0 0 1rem; padding: 0; }
.ul-cc__opt { display: flex; gap: .75rem; align-items: flex-start; padding: .5rem 0; cursor: pointer; }
.ul-cc__opt input { width: 1.25rem; height: 1.25rem; margin-top: .125rem; flex-shrink: 0; accent-color: var(--wp--preset--color--primary, #0B8577); }
@media (max-width: 599px) {
	.ul-cc { left: 0; right: 0; bottom: 0; }
	.ul-cc__box { border-radius: 8px 8px 0 0; padding-bottom: calc(1.25rem + env(safe-area-inset-bottom)); }
	.ul-cc__actions .ul-cc__btn { flex: 1 1 auto; }
}

/* Film YouTube z okładką */
.ul-video { margin: 2rem 0; }
.ul-video__frame { position: relative; aspect-ratio: 16 / 9; border-radius: 18px; overflow: hidden; background: #0B2545; box-shadow: 0 18px 40px -22px rgba(11, 37, 69, .45); }
.ul-video__poster, .ul-video__frame iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; object-fit: cover; display: block; }
.ul-video__play { position: absolute; inset: 0; margin: auto; width: 84px; height: 84px; border-radius: 50%; border: 0; background: #0B8577; color: #fff; display: grid; place-items: center; cursor: pointer; box-shadow: 0 10px 30px rgba(0, 0, 0, .35); transition: transform .15s ease, background .15s ease; }
.ul-video__play svg { width: 38px; height: 38px; fill: currentColor; margin-left: 4px; }
.ul-video__play:hover { transform: scale(1.06); background: #0A7568; }
.ul-video__play:focus-visible { outline: 3px solid #fff; outline-offset: 3px; }
.ul-video__meta { display: flex; flex-direction: column; gap: 2px; margin-top: 12px; font-size: .9rem; color: #4B5B6E; }
.ul-video__meta b { color: #0B2545; font-size: 1rem; }
@media (max-width: 599px) { .ul-video__play { width: 64px; height: 64px; } .ul-video__play svg { width: 28px; height: 28px; } }
