/* sezon Cookies — a corner at the end of the page (it scrolls with the page, it is not fixed). */
.sck { position: relative; height: 0; z-index: 90; --sck-size: 56px; }
.sck [hidden] { display: none !important; }
.sck-btn {
	position: absolute; left: 0; bottom: 0; width: var(--sck-size); height: var(--sck-size); padding: 0; border: 0; cursor: pointer;
	background: var(--sck-bg, var(--purple, #872E98)); color: var(--sck-fg, #fff);
	clip-path: polygon(0 0, 0 100%, 100% 100%);
	transition: background-color .15s ease;
}
.sck.is-right .sck-btn { left: auto; right: 0; clip-path: polygon(100% 0, 0 100%, 100% 100%); }
.sck-btn:hover { background: var(--sck-bg-hover, var(--purple-dark, #6E2480)); }
.sck-btn:focus-visible { outline: none; background: var(--orange, #F99300); }
.sck-ic {
	position: absolute; left: 14%; bottom: 14%; width: 38%; height: 38%;
	fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round;
}
.sck-ic circle { fill: currentColor; stroke: none; }
.sck.is-right .sck-ic { left: auto; right: 14%; }
.sck-dot { position: absolute; left: 12%; top: 30%; width: 14%; height: 14%; border-radius: 50%; background: var(--orange, #F99300); }
.sck.is-right .sck-dot { left: auto; right: 12%; }
.sck:not(.is-unset) .sck-dot { display: none; }

.sck-panel {
	position: absolute; left: 12px; bottom: 12px; width: min(420px, calc(100vw - 24px));
	max-height: min(560px, calc(100vh - 96px)); overflow: auto; padding: 22px 22px 18px;
	background: #fff; color: var(--ink, #14121A); border-radius: 20px; box-shadow: 0 24px 60px rgba(20, 18, 26, .32);
	font-size: 14.5px; line-height: 1.55; text-align: left;
}
.sck.is-right .sck-panel { left: auto; right: 12px; }
.sck-title { margin: 0 36px 8px 0; font-size: 18px; font-weight: 800; letter-spacing: -.01em; line-height: 1.3; }
.sck-text { margin: 0 0 14px; color: var(--muted, #6E6A78); }
.sck-text a { color: var(--purple, #872E98); font-weight: 700; text-decoration: underline; text-underline-offset: 2px; }
.sck-cats { display: grid; gap: 8px; margin: 0 0 16px; padding: 0; list-style: none; }
.sck-cat { display: flex; align-items: flex-start; gap: 12px; padding: 10px 12px; border: 1px solid var(--line, #E7E4EC); border-radius: 12px; cursor: pointer; }
.sck-cat input { flex: none; width: 18px; height: 18px; margin: 2px 0 0; accent-color: var(--purple, #872E98); }
.sck-cat strong { display: block; font-size: 14.5px; }
.sck-cat em { display: block; font-style: normal; font-size: 13px; color: var(--muted, #6E6A78); }
.sck-cat.is-locked { background: var(--grey, #F3F2F5); cursor: default; }
.sck-actions { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.sck-actions button { min-height: 42px; padding: 8px 14px; border: 0; border-radius: 21px; font: inherit; font-size: 14px; font-weight: 700; cursor: pointer; }
.sck-all, .sck-none, .sck-ok { background: var(--ink, #14121A); color: #fff; }
.sck-all:hover, .sck-none:hover, .sck-ok:hover { background: var(--purple, #872E98); }
.sck-save { grid-column: 1 / -1; background: #fff; color: var(--ink, #14121A); box-shadow: inset 0 0 0 1.5px var(--line, #E7E4EC); }
.sck-save:hover { box-shadow: inset 0 0 0 1.5px var(--ink, #14121A); }
.sck-ok { grid-column: 1 / -1; }
.sck-close { position: absolute; top: 12px; right: 12px; width: 32px; height: 32px; border: 0; border-radius: 16px; background: var(--grey, #F3F2F5); color: inherit; font-size: 18px; line-height: 1; cursor: pointer; }
.sck-close:hover { background: var(--purple-tint, #F4ECF7); }
@media (prefers-reduced-motion: no-preference) {
	.sck-panel { animation: sck-in .18s ease-out; }
	@keyframes sck-in { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: none; } }
}
/* Job pages on phones have a fixed “Apply” bar at the bottom: the corner sits just above it. */
@media (max-width: 860px) {
	.single-sezon_job .sck { transform: translateY(calc(-72px - env(safe-area-inset-bottom, 0px))); }
}
