/**
 * SA Webinar Live – strona live.
 * Prefiks .saw- na wszystkim, żeby nie kolidowało z Divi/motywem.
 * Brand: navy #0B1A2E, gold #C6983A, akcent #d4a020.
 */

.saw-stage {
	max-width: 1080px;
	margin: 0 auto;
	font-family: "DM Sans", system-ui, sans-serif;
	color: var(--saw-ink);
	position: relative;
}

.saw-frame {
	position: relative;
	width: 100%;
	background: #0B1A2E;
	background: var(--saw-navy, #0B1A2E);
	border-radius: 14px;
	overflow: hidden;
	box-shadow: 0 24px 60px rgba(0, 0, 0, 0.45);
}

/* Niezawodne 16:9 (działa w każdym kontekście grid/flex, bez zależności od aspect-ratio) */
.saw-frame::before {
	content: "";
	display: block;
	padding-top: 56.25%;
}

/* Odtwarzacz wypełnia ramkę */
.saw-player,
.saw-player iframe {
	position: absolute;
	inset: 0;
	width: 100% !important;
	height: 100% !important;
	border: 0;
}

/* Overlay – przechwytuje wszystkie kliknięcia w iframe (blokada YT, pauzy, menu) */
.saw-overlay {
	position: absolute;
	inset: 0;
	z-index: 3;
	background: transparent;
	cursor: default;
}

/* Ekran wejścia */
.saw-cover {
	position: absolute;
	inset: 0;
	z-index: 5;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	padding: 24px;
	background:
		radial-gradient(120% 120% at 50% 0%, var(--saw-navy-2) 0%, var(--saw-navy) 60%);
	transition: opacity 0.5s ease, visibility 0.5s ease;
}

.saw-cover.is-hidden {
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
}

.saw-cover__inner {
	max-width: 520px;
}

.saw-eyebrow {
	display: inline-block;
	font-family: "Oswald", sans-serif;
	font-weight: 600;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	font-size: 13px;
	color: var(--saw-gold);
	padding: 6px 14px;
	border: 1px solid rgba(198, 152, 58, 0.4);
	border-radius: 999px;
	margin-bottom: 22px;
}

.saw-cover__title {
	font-family: "Oswald", sans-serif;
	font-weight: 700;
	font-size: clamp(26px, 4vw, 44px);
	line-height: 1.1;
	margin: 0 0 28px;
	color: var(--saw-ink);
}

.saw-join {
	font-family: "Oswald", sans-serif;
	font-weight: 600;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	font-size: 17px;
	color: var(--saw-navy);
	background: linear-gradient(180deg, var(--saw-gold-2), var(--saw-gold));
	border: 0;
	border-radius: 10px;
	padding: 16px 38px;
	cursor: pointer;
	transition: transform 0.15s ease, box-shadow 0.15s ease;
	box-shadow: 0 10px 28px rgba(198, 152, 58, 0.35);
}

.saw-join:hover:not(:disabled) {
	transform: translateY(-2px);
	box-shadow: 0 14px 34px rgba(198, 152, 58, 0.45);
}

.saw-join:focus-visible {
	outline: 3px solid var(--saw-ink);
	outline-offset: 3px;
}

.saw-join:disabled {
	opacity: 0.7;
	cursor: progress;
}

.saw-cover__note {
	margin: 18px 0 0;
	font-size: 14px;
	color: var(--saw-muted);
}

@media (max-width: 600px) {
	.saw-frame { border-radius: 10px; }
	.saw-join { width: 100%; padding: 15px 24px; }
}

@media (prefers-reduced-motion: reduce) {
	.saw-cover, .saw-join { transition: none; }
}

/* ---------- Etap 2: układ z czatem ---------- */

.saw-shell{
	color-scheme:dark;
	--saw-navy:#0B1A2E; --saw-navy-2:#0f1d36; --saw-navy-3:#13243f;
	--saw-gold:#C6983A; --saw-gold-2:#d4a020; --saw-ink:#f4f1ea;
	--saw-muted:rgba(244,241,234,.55); --saw-line:rgba(244,241,234,.10); --saw-red:#e23b3b;
	max-width:1240px;margin:0 auto;font-family:"DM Sans",system-ui,sans-serif;color:var(--saw-ink);
}

.saw-top{display:flex;align-items:center;gap:14px;margin-bottom:14px;flex-wrap:wrap;}
.saw-top__host{display:flex;align-items:center;gap:11px;min-width:0;flex:1;}
.saw-top__av{width:42px;height:42px;border-radius:50%;flex:none;border:2px solid rgba(198,152,58,.5);background-size:cover;background-position:center top;background-color:#13243f;display:grid;place-items:center;}
.saw-top__av.is-ph{font-family:"Oswald",sans-serif;font-weight:600;color:var(--saw-gold);font-size:15px;background:linear-gradient(160deg,#1c3357,#0f1d36);}
.saw-top__tt{min-width:0;}
.saw-top__title{font-family:"Oswald",sans-serif;font-weight:700;font-size:clamp(17px,2.2vw,24px);line-height:1.05;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.saw-top__by{font-size:12px;color:var(--saw-muted);margin-top:2px;display:block;}
.saw-live-badge{display:inline-flex;align-items:center;gap:7px;font-family:"Oswald",sans-serif;font-weight:600;letter-spacing:.12em;text-transform:uppercase;font-size:12px;color:#fff;background:var(--saw-red);padding:6px 12px;border-radius:6px;}
.saw-live-badge.is-waiting{background:rgba(198,152,58,.18);color:#e7c789;}
.saw-live-badge.is-waiting .saw-dot{background:#C6983A;animation:none;}
.saw-live-badge.is-ended{background:rgba(255,255,255,.1);color:#9aa7ba;}
.saw-live-badge.is-ended .saw-dot{background:#9aa7ba;animation:none;}
.saw-live-badge.is-live{background:var(--saw-red);color:#fff;}
.saw-dot{width:8px;height:8px;border-radius:50%;background:#fff;animation:saw-pulse 1.6s infinite;}
@keyframes saw-pulse{0%,100%{opacity:1;transform:scale(1);}50%{opacity:.35;transform:scale(.7);}}

.saw-grid{display:grid;grid-template-columns:1fr 360px;gap:18px;align-items:start;}
.saw-grid--nochat{grid-template-columns:1fr 360px;}
.saw-grid--nochat .saw-stage{max-width:none;margin:0;}

/* Stage w siatce */
.saw-grid .saw-stage{display:flex;flex-direction:column;gap:14px;max-width:none;margin:0;min-width:0;}

/* Prawa kolumna: promo (baner/oferta) nad czatem + czat + materiały */
.saw-side{display:flex;flex-direction:column;gap:14px;min-width:0;}
.saw-promo{display:flex;flex-direction:column;gap:12px;}
.saw-promo:empty{display:none;}

/* Baner — statyczny pasek NAD czatem (nie zasłania wideo) */
.saw-banner{
	--saw-banner-c:#C6983A;
	background:linear-gradient(100deg, color-mix(in srgb, var(--saw-banner-c) 82%, white), var(--saw-banner-c));
	color:var(--saw-navy);
	display:flex;align-items:center;gap:11px;
	padding:11px 14px;border-radius:12px;font-weight:600;font-size:14px;
	box-shadow:0 10px 24px rgba(198,152,58,.26);
}
.saw-banner__cta{margin-left:auto;background:#0B1A2E;color:#F4EFE6;text-decoration:none;font-family:"Oswald",sans-serif;text-transform:uppercase;letter-spacing:.04em;font-size:12px;padding:7px 13px;border-radius:8px;white-space:nowrap;}

/* Pole imienia na ekranie wejścia */
.saw-name{
	width:100%;max-width:320px;display:block;margin:0 auto 14px;
	background:rgba(11,26,46,.6);border:1px solid var(--saw-line);color:var(--saw-ink);
	border-radius:9px;padding:12px 14px;font-size:15px;font-family:inherit;text-align:center;
}
.saw-name::placeholder{color:var(--saw-muted);}
.saw-name:focus{outline:none;border-color:rgba(198,152,58,.55);}
.saw-name--err{border-color:var(--saw-red);}

/* Przypięta wiadomość — poza listą, widoczna zawsze (też w trybie pytań) */
.saw-chat__pin{position:relative;margin:10px 12px 0;background:rgba(198,152,58,.1);border:1px solid rgba(198,152,58,.3);border-radius:11px;padding:9px 12px 9px 34px;font-size:13.5px;color:var(--saw-ink);line-height:1.4;}
.saw-chat__pin[hidden]{display:none;}
.saw-chat__pin::before{content:"📌";position:absolute;left:11px;top:9px;font-size:13px;}
.saw-chat__pin b{display:block;font-family:"Oswald",sans-serif;font-weight:600;text-transform:uppercase;letter-spacing:.1em;font-size:10px;color:var(--saw-gold);margin-bottom:2px;}
.saw-chat__pin a{color:var(--saw-gold-bright,#d4a020);}

/* Materiały pod czatem */
.saw-extras{display:flex;flex-direction:column;gap:7px;background:var(--saw-navy-2);border:1px solid var(--saw-line);border-radius:14px;padding:13px 15px;}
.saw-extras h4{font-family:"Oswald",sans-serif;font-weight:600;text-transform:uppercase;letter-spacing:.08em;font-size:11px;color:var(--saw-muted);margin:0 0 2px;}
.saw-extras a{color:var(--saw-ink);text-decoration:none;font-size:13.5px;padding:3px 0;}
.saw-extras a:hover{color:var(--saw-gold);}

/* Panel czatu */
.saw-chat{display:flex;flex-direction:column;background:var(--saw-navy-2);border:1px solid var(--saw-line);border-radius:14px;overflow:hidden;min-height:0;height:auto;}
.saw-grid .saw-side{align-self:start;}
.saw-chat__head{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid var(--saw-line);background:var(--saw-navy-3);}
.saw-chat__title{font-family:"Oswald",sans-serif;font-weight:600;font-size:15px;letter-spacing:.04em;text-transform:uppercase;}
.saw-online{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--saw-muted);}
.saw-online__dot{width:7px;height:7px;border-radius:50%;background:#888;}
.saw-chat.is-connected .saw-online__dot{background:#3ad07a;box-shadow:0 0 0 3px rgba(58,208,122,.15);}

.saw-chat__body{flex:1;overflow-y:auto;padding:14px 16px;display:flex;flex-direction:column;gap:13px;min-height:260px;max-height:60vh;scrollbar-width:thin;scrollbar-color:rgba(244,241,234,.2) transparent;}
.saw-chat__body::-webkit-scrollbar{width:6px;}
.saw-chat__body::-webkit-scrollbar-thumb{background:rgba(244,241,234,.18);border-radius:3px;}

.saw-msg{display:flex;gap:10px;animation:saw-slidein .3s ease;}
@keyframes saw-slidein{from{opacity:0;transform:translateY(8px);}to{opacity:1;transform:none;}}
.saw-msg__av{flex:0 0 30px;width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:"Oswald",sans-serif;font-weight:600;font-size:13px;color:var(--saw-navy);}
.saw-msg__body{min-width:0;}
.saw-msg__name{font-size:13px;font-weight:700;color:var(--saw-ink);margin-right:7px;}
.saw-msg__time{font-size:11px;color:var(--saw-muted);}
.saw-msg__text{font-size:14px;line-height:1.4;color:var(--saw-ink);opacity:.92;margin-top:2px;word-wrap:break-word;overflow-wrap:anywhere;}

.saw-msg.is-host .saw-msg__av{background:linear-gradient(135deg,var(--saw-gold-2),var(--saw-gold));}
.saw-msg.is-host .saw-msg__name{color:var(--saw-gold);}
.saw-msg.is-host .saw-msg__name[data-badge]::after{content:attr(data-badge);font-family:"Oswald",sans-serif;font-size:9px;letter-spacing:.08em;background:rgba(198,152,58,.16);color:var(--saw-gold);padding:2px 6px;border-radius:4px;margin-left:6px;vertical-align:middle;}

.saw-sys{font-size:12px;color:var(--saw-muted);text-align:center;font-style:italic;padding:2px 0;}

.saw-chat__foot{padding:12px;border-top:1px solid var(--saw-line);background:var(--saw-navy-3);display:flex;gap:8px;}
.saw-input{flex:1;background:var(--saw-navy);border:1px solid var(--saw-line);color:var(--saw-ink);border-radius:9px;padding:11px 14px;font-size:14px;font-family:inherit;}
.saw-input::placeholder{color:var(--saw-muted);}
.saw-input:focus{outline:none;border-color:rgba(198,152,58,.5);}
.saw-input:disabled{opacity:.6;}
.saw-send{flex:0 0 auto;background:linear-gradient(180deg,var(--saw-gold-2),var(--saw-gold));border:0;border-radius:9px;padding:0 18px;cursor:pointer;color:var(--saw-navy);display:flex;align-items:center;justify-content:center;transition:transform .12s ease;}
.saw-send svg{width:20px;height:20px;stroke:#0B1A2E;fill:none;display:block;}
.saw-send:hover:not(:disabled){transform:translateY(-1px);}
.saw-send:disabled{opacity:.5;cursor:not-allowed;}

.saw-admin-note{margin-top:14px;font-size:13px;color:#b54;}
.saw-admin-note a{color:var(--saw-gold);}

@media (max-width:860px){
	.saw-grid{display:block;}
	.saw-shell.is-joined .saw-chat{margin-top:18px;}
	.saw-chat__body{max-height:440px;}
	/* Player na pełną szerokość ekranu (wyłamanie z paddingu motywu), edge-to-edge. */
	.saw-shell.is-joined .saw-stage{width:100vw;max-width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);}
	.saw-shell.is-joined .saw-frame{border-radius:0;box-shadow:none;}
	.saw-shell.is-joined .saw-side{padding:0 12px;box-sizing:border-box;}
}
@media (prefers-reduced-motion:reduce){
	.saw-dot,.saw-msg{animation:none;}
}

/* ---------- Poprawki ---------- */
/* Baner ukryty atrybutem hidden (reguła display:flex wcześniej go nadpisywała) */
.saw-banner[hidden]{display:none !important;}
/* iframe YouTube zastępuje .saw-player – łapiemy go po rodzicu .saw-frame */
.saw-frame iframe{position:absolute;inset:0;width:100% !important;height:100% !important;border:0;z-index:1;}
.saw-overlay{z-index:3;}
.saw-banner{z-index:4;}
.saw-cover{z-index:5;}

/* ---------- Flow: czat pokazuje się dopiero po dołączeniu ---------- */
.saw-shell:not(.is-joined) .saw-chat{display:none;}
.saw-shell:not(.is-joined) .saw-grid{display:block;}
.saw-shell:not(.is-joined) .saw-stage{max-width:1080px;margin:0 auto;}

/* ---------- Etap 4: e-mail + przycisk dźwięku ---------- */
.saw-email{
	width:100%;max-width:320px;display:block;margin:0 auto 14px;
	background:rgba(11,26,46,.6);border:1px solid var(--saw-line,rgba(244,241,234,.10));color:var(--saw-ink,#f4f1ea);
	border-radius:9px;padding:12px 14px;font-size:15px;font-family:inherit;text-align:center;
}
.saw-email::placeholder{color:var(--saw-muted,rgba(244,241,234,.55));}
.saw-email:focus{outline:none;border-color:rgba(198,152,58,.55);}
.saw-email.saw-name--err{border-color:#e23b3b;}

.saw-unmute{
	position:absolute;inset:0;z-index:8;cursor:pointer;border:0;padding:0;border-radius:0;box-shadow:none;
	display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;
	background:radial-gradient(circle at 50% 42%, rgba(11,26,46,.32), rgba(11,26,46,.72));
	color:#fff;font-family:"Oswald",sans-serif;font-weight:700;letter-spacing:.03em;text-transform:uppercase;
	font-size:clamp(15px,3vw,21px);text-align:center;
}
.saw-unmute::before{
	content:"🔊";display:grid;place-items:center;width:clamp(66px,16vw,92px);height:clamp(66px,16vw,92px);border-radius:50%;
	background:linear-gradient(180deg,#e0b357,#C6983A);color:#0B1A2E;font-size:clamp(30px,7vw,42px);
	box-shadow:0 12px 34px rgba(0,0,0,.5);animation:saw-unmute-pulse 1.6s ease-in-out infinite;
}
.saw-unmute__t{max-width:80%;line-height:1.25;text-shadow:0 2px 10px rgba(0,0,0,.6);}
@keyframes saw-unmute-pulse{0%,100%{transform:scale(1);}50%{transform:scale(1.08);}}
.saw-unmute[hidden]{display:none;}

/* ---------- Oferta z licznikiem (karta pod playerem) ---------- */
.saw-offer{
	--saw-offer-c:#C6983A;
	position:relative;box-sizing:border-box;
	display:flex;align-items:center;gap:16px;flex-wrap:wrap;
	background:linear-gradient(120deg,var(--saw-navy-3),var(--saw-navy-2));
	border:1px solid color-mix(in srgb, var(--saw-offer-c) 42%, transparent);
	border-radius:16px;padding:16px 18px;overflow:hidden;
	box-shadow:0 14px 34px rgba(0,0,0,.16);
	animation:saw-offer-in .4s ease;
}
.saw-offer::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--saw-offer-c);}
.saw-offer[hidden]{display:none;}
/* Sticky pasek oferty — zostaje w polu widzenia po wypchnięciu z Centrum Live.
   isolation:isolate = własny kontekst nakładania, żeby panel pytań nie potrafił na nią nachodzić (P0.6). */
.saw-offer--sticky{position:sticky;top:12px;z-index:20;isolation:isolate;}
.saw-offer__x{position:absolute;top:8px;right:10px;z-index:2;width:24px;height:24px;border-radius:50%;border:0;
	background:rgba(255,255,255,.12);color:#fff;font-size:13px;line-height:1;cursor:pointer;display:grid;place-items:center;}
.saw-offer__x:hover{background:rgba(255,255,255,.24);}
@media (max-width:860px){
	.saw-offer--sticky{position:fixed;left:8px;right:8px;bottom:calc(74px + env(safe-area-inset-bottom));top:auto;z-index:55;
		margin:0;padding:12px 14px;box-shadow:0 -6px 24px rgba(0,0,0,.4);}
	/* Tryb pytań ma wyższe pole „Zadaj pytanie” — unosimy przypiętą ofertę, żeby jej nie zasłaniało (P0.6). */
	.saw-side:has(.saw-chat--qa) .saw-offer--sticky{bottom:calc(150px + env(safe-area-inset-bottom));}
}
@keyframes saw-offer-in{from{opacity:0;transform:translateY(8px);}to{opacity:1;transform:none;}}
.saw-offer__info{flex:1;min-width:220px;}
.saw-offer__title{font-family:"Oswald",sans-serif;font-weight:600;font-size:clamp(18px,2vw,22px);line-height:1.18;color:var(--saw-ink);letter-spacing:.01em;}
.saw-offer__text{font-family:"DM Sans",sans-serif;font-size:14px;color:var(--saw-muted);margin-top:4px;line-height:1.45;}
.saw-offer__right{display:flex;flex-direction:column;align-items:stretch;gap:8px;flex:none;width:230px;}
.saw-offer__clock{
	font-family:"Oswald",sans-serif;font-weight:600;font-size:14px;letter-spacing:.04em;
	color:#e0503f;background:rgba(198,152,58,.06);border:1px solid rgba(198,152,58,.25);
	border-radius:9px;padding:8px 12px;font-variant-numeric:tabular-nums;text-align:center;order:2;
}
.saw-offer__clock.is-ended{color:var(--saw-muted);border-color:var(--saw-line);}
.saw-offer__cta{
	display:block;text-align:center;text-decoration:none;cursor:pointer;order:1;
	font-family:"Oswald",sans-serif;font-weight:700;font-size:15px;letter-spacing:.04em;text-transform:uppercase;
	color:#0B1A2E;background:linear-gradient(160deg, color-mix(in srgb, var(--saw-offer-c) 80%, white), var(--saw-offer-c));
	border-radius:11px;padding:13px 22px;box-shadow:0 10px 24px color-mix(in srgb, var(--saw-offer-c) 30%, transparent);
	transition:transform .12s ease,filter .12s ease;
}
.saw-offer__cta:hover{transform:translateY(-1px);filter:brightness(1.05);}
@media(max-width:560px){.saw-offer{flex-direction:column;align-items:stretch;}.saw-offer__right{width:100%;}}

/* Wskaźnik „Na żywo" na playerze (jedyny, bez czasu/licznika) */
.saw-player__live{position:absolute;top:14px;left:14px;z-index:6;display:none;align-items:center;gap:7px;
	background:rgba(178,58,54,.95);backdrop-filter:blur(6px);border:1px solid rgba(255,255,255,.22);box-shadow:0 4px 14px rgba(178,58,54,.4);
	padding:6px 13px;border-radius:8px;font-family:"Oswald",sans-serif;font-weight:700;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:#fff;}
.saw-player__dot{width:8px;height:8px;border-radius:50%;background:#fff;animation:saw-pulse 1.8s infinite;}
.saw-shell.saw-is-live .saw-player__live{display:inline-flex;}
@media (max-width:600px){ .saw-player__live{top:10px;left:10px;padding:5px 10px;font-size:11px;} }

/* Przełącznik motywu */
.saw-theme{flex:none;display:inline-flex;align-items:center;gap:7px;font-family:"DM Sans",system-ui,sans-serif;font-weight:600;font-size:12.5px;color:var(--saw-muted);background:transparent;border:1px solid var(--saw-line);border-radius:999px;padding:7px 13px;cursor:pointer;transition:.15s;}
.saw-theme:hover{color:var(--saw-ink);border-color:rgba(198,152,58,.4);}

/* Zwijanie czatu */
.saw-chat__collapse{margin-left:8px;display:grid;place-items:end;padding:0 3px 3px 0;width:30px;height:30px;flex:none;border-radius:8px;cursor:pointer;background:transparent;border:1px solid var(--saw-line);color:var(--saw-muted);transition:.15s;}
.saw-chat__collapse:hover{color:var(--saw-ink);border-color:rgba(198,152,58,.4);}
.saw-chat__collapse svg{transition:transform .2s;}
.saw-chat.is-collapsed{height:auto;}
.saw-chat.is-collapsed .saw-chat__collapse svg{transform:rotate(180deg);}
.saw-chat.is-collapsed .saw-chat__pin,
.saw-chat.is-collapsed .saw-chat__body,
.saw-chat.is-collapsed .saw-chat__qa,
.saw-chat.is-collapsed .saw-chat__foot{display:none;}

/* ---------- Motyw jasny ---------- */
html.saw-light body.saw-fs{background:linear-gradient(180deg,#f6f2ea,#ece7dc) !important;}
.saw-shell.saw-light{color-scheme:light;
	--saw-navy-2:#ffffff; --saw-navy-3:#f3eee3; --saw-ink:#12213a;
	--saw-muted:rgba(18,33,58,.6); --saw-line:rgba(18,33,58,.14);
}
.saw-shell.saw-light .saw-frame{background:#0B1A2E;}
.saw-shell.saw-light .saw-chat,
.saw-shell.saw-light .saw-extras,
.saw-shell.saw-light .saw-offer{box-shadow:0 10px 26px rgba(18,33,58,.1);}
.saw-shell.saw-light .saw-input{background:#fff;}
.saw-shell.saw-light .saw-offer__clock{background:rgba(178,58,54,.06);}
.saw-shell.saw-light .saw-note--welcome{color:#7a5a10;}
.saw-shell.saw-light .saw-note--catchup{background:rgba(18,33,58,.04);border-color:rgba(18,33,58,.12);color:var(--saw-ink);}
.saw-shell.saw-light .saw-theme{background:#fff;}

/* ---------- Etap 6: Poczekalnia + ekran końcowy ---------- */
.saw-waiting,.saw-ended{
	position:absolute; inset:0; z-index:7; display:flex; align-items:center; justify-content:center; text-align:center;
	padding:24px; background:
		radial-gradient(700px 360px at 50% 0%, rgba(198,152,58,.12), transparent 60%),
		linear-gradient(160deg,#13243f,#0B1A2E);
}
.saw-waiting[hidden],.saw-ended[hidden]{display:none;}
.saw-waiting__inner,.saw-ended__inner{max-width:560px;}
.saw-waiting .saw-eyebrow,.saw-ended .saw-eyebrow{display:inline-block;}
.saw-waiting__title,.saw-ended__title{font-family:"Oswald",sans-serif;font-weight:700;font-size:clamp(20px,3.2vw,30px);line-height:1.12;color:#f4f1ea;margin:10px 0 14px;}
.saw-waiting__clock{
	font-family:"Oswald",sans-serif;font-weight:700;font-size:clamp(22px,4.5vw,34px);letter-spacing:.03em;
	color:var(--saw-gold,#d4a020);font-variant-numeric:tabular-nums;line-height:1;white-space:nowrap;
}
.saw-waiting__note{color:rgba(244,241,234,.55);font-size:13px;margin-top:12px;}
/* Poczekalnia — kompaktowo, żeby wszystko mieściło się na mobile */
.saw-waiting__hello{font-family:"Oswald",sans-serif;font-weight:600;font-size:clamp(15px,3.4vw,18px);color:var(--saw-gold,#e0b357);margin-bottom:10px;}
.saw-waiting .saw-eyebrow{border:0;padding:0;margin-bottom:6px;font-size:11px;letter-spacing:.14em;color:rgba(244,241,234,.55);}
.saw-waiting__milestone{font-weight:600;font-size:14px;color:#fff;margin-top:12px;min-height:20px;line-height:1.3;}
@media (max-width:600px){
	.saw-waiting,.saw-ended{padding:12px 10px;align-items:flex-start;overflow-y:auto;}
	.saw-waiting__inner,.saw-ended__inner{max-width:100%;padding:0 4px;margin:auto 0;}
	.saw-waiting__hello{margin-bottom:5px;font-size:15px;}
	.saw-waiting__clock{font-size:clamp(20px,7vw,28px);}
	.saw-waiting__note{display:none;}
	.saw-waiting__milestone{margin-top:8px;font-size:13px;}
	.saw-waiting .saw-eyebrow{margin-bottom:4px;}
}
.saw-ended__actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-top:6px;}
.saw-ended__btn{
	display:inline-block;text-decoration:none;cursor:pointer;font-family:"Oswald",sans-serif;font-weight:700;
	letter-spacing:.03em;text-transform:uppercase;font-size:15px;border-radius:999px;padding:14px 28px;
}
.saw-ended__btn--offer{color:#0B1A2E;background:linear-gradient(180deg,#d4a020,#C6983A);box-shadow:0 10px 26px rgba(0,0,0,.35);}
.saw-ended__btn--replay{color:#f4f1ea;background:rgba(244,241,234,.08);border:1px solid rgba(244,241,234,.25);}
.saw-ended__btn:hover{filter:brightness(1.06);}

/* ---------- Etap 8: Dowód społeczny (toasty) ---------- */
.saw-social{position:fixed;left:18px;bottom:18px;z-index:9999;display:flex;flex-direction:column;gap:8px;max-width:330px;pointer-events:none;}
.saw-social__toast{
	display:flex;align-items:center;gap:10px;
	background:linear-gradient(180deg,#13243f,#0f1d36);color:#f4f1ea;
	border:1px solid rgba(244,241,234,.12);border-left:4px solid #C6983A;border-radius:12px;
	padding:11px 14px;font-family:"DM Sans",system-ui,sans-serif;font-size:14px;line-height:1.3;
	box-shadow:0 12px 34px rgba(0,0,0,.4);
	transform:translateX(-120%);opacity:0;transition:transform .35s cubic-bezier(.2,.8,.2,1),opacity .35s;
}
.saw-social__toast.is-in{transform:none;opacity:1;}
.saw-social__ic{font-size:18px;flex:0 0 auto;}
@media(max-width:560px){.saw-social{left:10px;right:10px;bottom:10px;max-width:none;}}
@media (prefers-reduced-motion: reduce){.saw-social__toast{transition:none;}}

/* ---------- Tryb skupienia + przycisk ---------- */
.saw-focus-btn{
	font-family:"Oswald",sans-serif;font-weight:600;font-size:12px;letter-spacing:.04em;text-transform:uppercase;
	color:var(--saw-ink,#f4f1ea);background:rgba(244,241,234,.06);border:1px solid rgba(244,241,234,.16);
	border-radius:999px;padding:7px 14px;cursor:pointer;transition:border-color .15s,background .15s;
}
.saw-focus-btn:hover{border-color:rgba(198,152,58,.5);}
.saw-focus-btn[aria-pressed="true"]{background:linear-gradient(180deg,#d4a020,#C6983A);color:#0B1A2E;border-color:transparent;}
.saw-shell.saw-focus .saw-grid{grid-template-columns:1fr;}
.saw-shell.saw-focus .saw-side{display:none;}
.saw-shell.saw-focus .saw-stage{max-width:1080px;margin:0 auto;}

/* ---------- Etap 12: Ekran rejestracji ---------- */
.saw-cover__inner{max-height:100%;overflow:auto;}
.saw-cover__sub{margin:2px 0 4px;color:rgba(244,241,234,.82);font-size:15px;max-width:520px;}
.saw-cover__when{display:flex;gap:14px;flex-wrap:wrap;align-items:center;margin:8px 0 4px;}
.saw-cover__date{font-family:"Oswald",sans-serif;font-weight:600;letter-spacing:.02em;color:#f4f1ea;font-size:14px;}
.saw-cover__cd{font-family:"Oswald",sans-serif;font-variant-numeric:tabular-nums;color:#C6983A;font-size:14px;}
.saw-cover__benefits{list-style:none;margin:6px 0 10px;padding:0;display:flex;flex-direction:column;gap:6px;max-width:520px;text-align:left;}
.saw-cover__benefits li{position:relative;padding-left:26px;color:rgba(244,241,234,.9);font-size:14px;line-height:1.4;}
.saw-cover__benefits li::before{content:"✓";position:absolute;left:0;top:0;width:18px;height:18px;border-radius:50%;background:rgba(198,152,58,.18);color:#d4a020;font-size:12px;font-weight:700;display:flex;align-items:center;justify-content:center;}
.saw-consent{display:flex;gap:9px;align-items:flex-start;text-align:left;max-width:520px;margin:2px 0 4px;font-size:12.5px;line-height:1.4;color:rgba(244,241,234,.7);cursor:pointer;}
.saw-consent input{margin-top:2px;flex:0 0 auto;}
.saw-consent a{color:#C6983A;text-decoration:underline;}
.saw-consent--err{color:#ff8f88;}
.saw-consent--err input{outline:2px solid #B23A36;outline-offset:2px;}

/* ---------- Etap 13: notatki prywatne (powitanie / co przegapiłeś) ---------- */
.saw-note{margin:8px 0;padding:10px 12px;border-radius:10px;font-size:13.5px;line-height:1.45;}
.saw-note--welcome{background:rgba(198,152,58,.14);border:1px solid rgba(198,152,58,.35);color:#f0e6cf;}
.saw-note--catchup{background:rgba(244,241,234,.05);border:1px solid rgba(244,241,234,.12);color:rgba(244,241,234,.9);}
.saw-note--catchup strong{display:block;color:#C6983A;font-size:11px;margin-bottom:3px;font-family:"Oswald",sans-serif;letter-spacing:.04em;text-transform:uppercase;}

/* ---------- Jasny ekran rejestracji (poza ramką) ---------- */
.saw-shell:not(.is-joined) .saw-grid{display:none;}
.saw-shell:not(.is-joined) .saw-top{display:none;}

/* ---------- Tryb testowy (podgląd) ---------- */
.saw-preview-bar{background:linear-gradient(180deg,#C6983A,#a87f2c);color:#0B1A2E;font-family:"Oswald",sans-serif;font-weight:600;font-size:13px;letter-spacing:.02em;text-align:center;padding:8px 14px;border-radius:10px;margin-bottom:10px;}
.saw-shell--preview .saw-frame{outline:2px dashed rgba(198,152,58,.5);outline-offset:-2px;}

/* ---------- Stan połączenia: pigułka + diagnostyka ---------- */
.saw-conn{position:absolute;top:10px;left:50%;transform:translateX(-50%);z-index:7;font-family:"DM Sans",system-ui,sans-serif;font-size:12.5px;font-weight:600;padding:6px 14px;border-radius:999px;box-shadow:0 6px 18px rgba(0,0,0,.35);color:#0B1A2E;}
.saw-conn.is-ok{background:#27c06b;color:#04240f;}
.saw-conn.is-wait{background:#e0b44b;color:#2a1e00;}
.saw-conn.is-err{background:#B23A36;color:#fff;}
.saw-online__dot{transition:background .2s;}
.saw-conn--ok .saw-online__dot{background:#27c06b;}
.saw-conn--wait .saw-online__dot{background:#e0b44b;}
.saw-conn--err .saw-online__dot{background:#B23A36;}
.saw-diag{border-top:1px solid rgba(244,241,234,.1);background:rgba(0,0,0,.25);font-family:"DM Sans",system-ui,sans-serif;}
.saw-diag__head{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;font-size:12px;color:rgba(244,241,234,.7);}
.saw-diag__copy{background:rgba(244,241,234,.1);border:1px solid rgba(244,241,234,.18);color:#f4f1ea;border-radius:6px;padding:4px 10px;font-size:11px;cursor:pointer;}
.saw-diag__list{max-height:140px;overflow:auto;padding:0 12px 10px;}
.saw-diag__row{font-size:11.5px;color:rgba(244,241,234,.6);font-family:ui-monospace,monospace;padding:2px 0;border-bottom:1px solid rgba(244,241,234,.05);}

/* ---------- Mobile: przełącznik Wideo/Czat ---------- */
.saw-mtoggle{display:none;}
@media(max-width:860px){
	.saw-focus-btn{display:none;}
	.saw-mtoggle{display:none;}
	.saw-grid{grid-template-columns:1fr !important;display:flex !important;flex-direction:column;gap:10px;align-items:stretch;}
	/* Player spłaszczamy (baner i oferta mają wskoczyć nad czat), ale .saw-side ZOSTAJE
	   normalnym pudełkiem — bez niego czat nie ma przodka, o który oprze się sticky. */
	.saw-grid .saw-stage{display:contents;}
	/* Player trzyma swoją wysokość (16:9) — rosnący czat nie może go ściskać (P1.4). */
	.saw-grid .saw-frame{flex:0 0 auto;}
	.saw-side{display:flex;flex-direction:column;gap:10px;min-height:0;width:100%;}
	.saw-chat{display:flex;height:auto;width:100%;}
	.saw-chat__body{max-height:50vh;}
	.saw-banner,.saw-offer{width:100%;}
}

/* ---------- Fallback do YouTube (tylko przy awarii) ---------- */
.saw-fallback{display:none;margin-top:8px;text-align:center;}
.saw-fallback.is-on,.saw-fallback.is-prominent{display:block;}
.saw-fallback a{font-size:12.5px;color:#7e8ca0;text-decoration:underline;}
.saw-fallback a:hover{color:#C6983A;}
/* Nakładka „odśwież stronę” — gdy player nie ruszył / zaciął się / błąd */
.saw-reload{position:absolute;inset:0;z-index:9;display:flex;align-items:center;justify-content:center;padding:18px;
	background:radial-gradient(120% 120% at 50% 0%, rgba(15,29,54,.92), rgba(11,26,46,.97));text-align:center;}
.saw-reload__card{max-width:420px;display:flex;flex-direction:column;align-items:center;gap:10px;}
.saw-reload__ic{font-size:34px;line-height:1;}
.saw-reload__t{font-family:"Oswald",sans-serif;font-weight:700;font-size:clamp(17px,3.4vw,22px);color:#f4f1ea;}
.saw-reload__s{font-size:13.5px;color:rgba(244,241,234,.72);line-height:1.45;max-width:340px;}
.saw-reload__btn{margin-top:6px;background:linear-gradient(180deg,var(--saw-gold-2,#d4a020),var(--saw-gold,#C6983A));color:#0B1A2E;
	border:0;border-radius:999px;font-family:"Oswald",sans-serif;font-weight:700;font-size:15px;letter-spacing:.02em;
	padding:12px 30px;cursor:pointer;box-shadow:0 10px 26px rgba(0,0,0,.4);}
.saw-reload__btn:hover{filter:brightness(1.06);}
.saw-reload__yt{font-size:12.5px;color:rgba(244,241,234,.6);text-decoration:underline;margin-top:2px;}
.saw-reload__yt:hover{color:#C6983A;}
.saw-fallback.is-prominent{background:#B23A36;border-radius:10px;padding:13px 16px;margin-top:10px;animation:saw-fbpulse 1.6s ease-in-out 3;}
.saw-fallback.is-prominent a{color:#fff;font-weight:700;text-decoration:none;font-size:15px;font-family:"Oswald",sans-serif;letter-spacing:.02em;}
@keyframes saw-fbpulse{0%,100%{box-shadow:0 0 0 0 rgba(178,58,54,.5)}50%{box-shadow:0 0 0 8px rgba(178,58,54,0)}}

/* ---------- Prywatna odpowiedź prowadzącego ---------- */
.saw-msg--pm{background:rgba(198,152,58,.12);border-left:3px solid #C6983A;border-radius:8px;padding:7px 11px;margin:5px 0;}
.saw-msg--pm .saw-msg__from{color:#9a6f1f;font-weight:700;font-size:12px;display:block;margin-bottom:2px;}

/* ---------- Evergreen: wybór godziny ---------- */
.saw-eg-pick{margin:14px 0 4px;}
.saw-eg-pick__lbl{font-size:13px;font-weight:600;color:#0B1A2E;margin-bottom:8px;}
.saw-eg-slots{display:flex;flex-wrap:wrap;gap:8px;}
.saw-eg-slot{flex:1 1 30%;min-width:120px;background:#fff;border:1.5px solid #d7deea;border-radius:10px;padding:9px 12px;cursor:pointer;text-align:left;transition:border-color .15s,background .15s;}
.saw-eg-slot b{display:block;font-family:"Oswald",sans-serif;font-size:16px;color:#0B1A2E;}
.saw-eg-slot span{display:block;font-size:11.5px;color:#7e8ca0;margin-top:1px;}
.saw-eg-slot:hover{border-color:#C6983A;}
.saw-eg-slot.is-sel{border-color:#C6983A;background:rgba(198,152,58,.1);}
.saw-eg-slot.is-sel b{color:#9a6f1f;}
.saw-ended__actions .saw-btn-primary{display:inline-block;background:linear-gradient(180deg,#d4a020,#C6983A);color:#0B1A2E;font-family:"Oswald",sans-serif;font-weight:700;text-transform:uppercase;letter-spacing:.03em;padding:12px 24px;border-radius:9px;text-decoration:none;margin-top:10px;}

/* ---------- Tryb pytań (czat wyłączony) ---------- */
.saw-chat--qa .saw-chat__body{display:none;}
.saw-chat__qa{display:none;flex-direction:column;align-items:center;justify-content:center;text-align:center;flex:1;padding:26px 20px;gap:10px;}
.saw-chat--qa .saw-chat__qa{display:flex;}
.saw-chat__qa-ico{font-size:34px;line-height:1;}
.saw-chat__qa-note{color:#5d6b80;font-size:14px;margin:0;max-width:240px;}
.saw-chat__qa-sent{background:rgba(70,192,126,.14);color:#1f8a4c;font-weight:600;font-size:13px;padding:8px 14px;border-radius:8px;}

/* ---------- Karta rejestracji: odporność na CSS motywu ---------- */

/* ====================================================================
   REJESTRACJA — pełnoekranowa nakładka (navy), treść wyżej, foto na dole
   ==================================================================== */
.saw-shell.is-joined .saw-reg{display:none;}
.saw-reg{position:fixed;inset:0;z-index:9990;display:flex;flex-direction:column;background:linear-gradient(180deg,#102540,#0B1A2E 72%);font-family:"DM Sans",system-ui,-apple-system,sans-serif;overflow-y:auto;}
.saw-reg__panel{position:relative;flex:1 1 auto;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:clamp(26px,5vw,56px) clamp(22px,5vw,40px);background:radial-gradient(120% 80% at 50% -10%,rgba(198,152,58,.12),transparent 55%);}
.saw-reg__eyebrow{display:inline-flex;align-items:center;gap:9px;font-family:"Oswald",sans-serif;font-weight:600;text-transform:uppercase;letter-spacing:.22em;font-size:12px;color:#C6983A;margin-bottom:18px;}
.saw-reg__dot{position:relative;width:8px;height:8px;border-radius:50%;background:#B23A36;}
.saw-reg__dot::after{content:"";position:absolute;inset:-5px;border-radius:50%;border:1px solid #B23A36;opacity:.5;animation:saw-reg-ring 2s ease-out infinite;}
@keyframes saw-reg-ring{0%{transform:scale(.6);opacity:.7}100%{transform:scale(1.6);opacity:0}}
.saw-reg__title{font-family:"Oswald",sans-serif;font-weight:700;font-size:clamp(32px,5vw,58px);line-height:1.05;letter-spacing:.004em;margin:0 0 14px;color:#F4EFE6;max-width:18ch;}
.saw-reg__sub{font-size:clamp(15px,1.4vw,18px);line-height:1.5;color:#a9b4c4;max-width:50ch;margin:0 auto clamp(22px,4vh,34px);}
.saw-reg__count{margin-bottom:clamp(22px,4vh,32px);display:flex;flex-direction:column;align-items:center;}
.saw-reg__clabel{font-family:"Oswald",sans-serif;text-transform:uppercase;letter-spacing:.2em;font-size:11px;color:#a9b4c4;margin-bottom:10px;}
.saw-reg__clock{display:flex;align-items:flex-end;justify-content:center;gap:clamp(6px,1vw,12px);}
.saw-reg__u{display:flex;flex-direction:column;align-items:center;gap:5px;}
.saw-reg__u b{font-family:"Oswald",sans-serif;font-weight:600;font-size:clamp(28px,3.6vw,42px);line-height:.9;font-variant-numeric:tabular-nums;color:#F4EFE6;}
.saw-reg__u span{font-family:"Oswald",sans-serif;text-transform:uppercase;letter-spacing:.16em;font-size:9.5px;color:#C6983A;}
.saw-reg__sep{font-family:"Oswald",sans-serif;font-weight:500;font-size:clamp(20px,2.6vw,30px);line-height:1;color:rgba(198,152,58,.3);transform:translateY(-5px);}
.saw-reg__sep--tick{animation:saw-reg-blink 1s steps(1) infinite;}
@keyframes saw-reg-blink{50%{opacity:.25}}
.saw-reg__cbase{height:2px;width:100%;max-width:340px;margin:16px auto 0;background:linear-gradient(90deg,rgba(198,152,58,0),#C6983A,rgba(198,152,58,0));}
.saw-reg__form{width:100%;max-width:400px;margin:0 auto;display:flex;flex-direction:column;gap:11px;}
.saw-reg__form>*{margin:0;}
.saw-reg .saw-name,.saw-reg .saw-email{-webkit-appearance:none;appearance:none;box-sizing:border-box;width:100% !important;max-width:none !important;height:54px;padding:0 16px;font-family:"DM Sans",system-ui,sans-serif;font-size:15px;color:#F4EFE6 !important;-webkit-text-fill-color:#F4EFE6;background:rgba(255,255,255,.04);border:1.5px solid rgba(244,239,230,.16);border-radius:12px;transition:border-color .15s,background .15s,box-shadow .15s;}
.saw-reg .saw-name:-webkit-autofill,.saw-reg .saw-email:-webkit-autofill,.saw-reg .saw-name:-webkit-autofill:focus,.saw-reg .saw-email:-webkit-autofill:focus{-webkit-text-fill-color:#F4EFE6 !important;caret-color:#F4EFE6;-webkit-box-shadow:0 0 0 40px #16273f inset !important;box-shadow:0 0 0 40px #16273f inset !important;}
.saw-reg .saw-name::placeholder,.saw-reg .saw-email::placeholder{color:#7c889a;}
.saw-reg .saw-name:focus,.saw-reg .saw-email:focus{outline:none;border-color:#C6983A;background:rgba(255,255,255,.06);box-shadow:0 0 0 4px rgba(198,152,58,.14);}
.saw-reg .saw-name--err{border-color:#B23A36 !important;box-shadow:0 0 0 4px rgba(178,58,54,.16) !important;}
.saw-reg .saw-join{display:block;box-sizing:border-box;width:100% !important;max-width:none !important;height:58px;border:0;border-radius:12px;cursor:pointer;font-family:"Oswald",sans-serif;font-weight:700;text-transform:uppercase;letter-spacing:.06em;font-size:17px;color:#0B1A2E;background:linear-gradient(160deg,#d4a020,#C6983A);box-shadow:0 12px 26px rgba(198,152,58,.28);transition:transform .12s,box-shadow .12s,filter .12s;margin-top:3px;}
.saw-reg .saw-join:hover{transform:translateY(-1px);filter:brightness(1.04);}
.saw-reg .saw-join:disabled{opacity:.75;cursor:default;transform:none;}
.saw-reg__note{display:flex;align-items:center;justify-content:center;gap:8px;color:#a9b4c4;font-size:13px;margin:6px 0 0;}
.saw-reg__note svg{flex:none;}
.saw-reg .saw-consent{display:flex;gap:8px;align-items:flex-start;text-align:left;font-size:13px;color:#a9b4c4;}
.saw-reg .saw-consent a{color:#C6983A;}
.saw-reg .saw-consent--err{color:#B23A36;}
.saw-reg .saw-eg-pick{margin:0 auto clamp(16px,3vh,24px);max-width:430px;width:100%;}
.saw-reg .saw-eg-pick__lbl{color:#a9b4c4;}
.saw-reg__host{flex:0 0 auto;display:flex;align-items:center;justify-content:center;gap:13px;padding:0 20px clamp(24px,4vh,40px);}
.saw-reg__host-av{width:56px;height:56px;border-radius:50%;flex:none;background-size:cover;background-position:center top;border:2px solid rgba(198,152,58,.55);box-shadow:0 6px 16px rgba(0,0,0,.3);}
.saw-reg__host-av.is-ph{display:flex;align-items:center;justify-content:center;background:linear-gradient(160deg,#1c3357,#0f1d36);color:#C6983A;font-family:"Oswald",sans-serif;font-weight:600;font-size:18px;letter-spacing:.03em;}
.saw-reg__host-txt{text-align:left;}
.saw-reg__host-txt .k{font-family:"Oswald",sans-serif;text-transform:uppercase;letter-spacing:.2em;font-size:10px;color:#C6983A;}
.saw-reg__host-txt .n{font-family:"Oswald",sans-serif;font-weight:600;font-size:18px;color:#F4EFE6;margin-top:1px;}
@media(max-width:560px){
	.saw-reg__title{font-size:26px;}
	.saw-reg__clock{gap:6px;}
	.saw-reg__sep{transform:translateY(-4px);}
}
@media(prefers-reduced-motion:reduce){.saw-reg__dot::after,.saw-reg__sep--tick{animation:none;}}

/* ====================================================================
   v0.39.0 — tryb pytań, mobile na pełną wysokość ekranu
   ==================================================================== */

/* Pole wiadomości = textarea (Enter wysyła, Shift+Enter nowa linia). */
.saw-input{resize:none;line-height:1.45;min-height:46px;max-height:140px;overflow-y:auto;}
/* W trybie pytań pole jest wyraźnie większe — pytania bywają dłuższe. */
.saw-chat--qa .saw-chat__foot{flex-direction:column;align-items:stretch;gap:10px;}
.saw-chat--qa .saw-input{min-height:104px;max-height:200px;}
.saw-chat--qa .saw-send{width:100%;padding:12px 18px;}
.saw-send__t{margin-left:8px;font-size:14px;font-family:"Oswald",sans-serif;font-weight:600;letter-spacing:.03em;}
.saw-send svg{flex:none;}

/* ---------- Mobile: player + czat + pole wysyłki mieszczą się na ekranie ----------
   Uwaga: wysokość ustawiamy na .saw-shell (nie na .saw-grid), bo nad siatką jest
   jeszcze pasek .saw-top — inaczej stopka czatu wypadała poza ekran. */
@media (max-width:860px){
	.saw-shell.is-joined{
		display:flex;flex-direction:column;
		height:100svh;height:100dvh;
		max-width:none;overflow:hidden;
	}
	/* Zwarty pasek górny: mniejszy tytuł i podpis prowadzącego. */
	.saw-shell.is-joined .saw-top{flex:0 0 auto;margin-bottom:8px;gap:10px;}
	.saw-shell.is-joined .saw-top__av{width:32px;height:32px;border-width:1.5px;}
	.saw-shell.is-joined .saw-top__av.is-ph{font-size:12px;}
	.saw-shell.is-joined .saw-top__title{font-size:15px;}
	.saw-shell.is-joined .saw-top__by{font-size:10.5px;margin-top:0;}
	.saw-shell.is-joined .saw-theme{transform:scale(.9);transform-origin:right center;}

	.saw-shell.is-joined .saw-grid{
		flex:1 1 auto;min-height:0;
		display:grid;grid-template-rows:auto minmax(0,1fr);gap:0;
	}
	.saw-shell.is-joined .saw-stage{min-height:0;}
	/* Czat zachowuje ramkę i zaokrąglenie — v0.39 zdejmowała je i czat zlewał się z tłem. */
	.saw-shell.is-joined .saw-chat{
		margin-top:10px;display:flex;flex-direction:column;min-height:0;
	}
	.saw-shell.is-joined .saw-grid{gap:0;padding-bottom:0;}
	/* nadpisuje sztywne max-height z reguły ogólnej */
	.saw-shell.is-joined .saw-chat__body{flex:1 1 auto;min-height:0;max-height:none;overflow-y:auto;}
	.saw-shell.is-joined .saw-chat__qa{flex:1 1 auto;min-height:0;overflow-y:auto;padding:16px;}
	.saw-shell.is-joined .saw-chat__foot{flex:0 0 auto;padding-bottom:max(12px,env(safe-area-inset-bottom));}
	.saw-shell.is-joined .saw-extras{display:none;}
	/* na mobile pole pytania nie może rozpychać ekranu */
	.saw-chat--qa .saw-input{min-height:72px;max-height:110px;}
	.saw-chat--qa .saw-send{padding:10px 16px;}
}

/* ---------- v0.40.0 ---------- */

/* „Nowe wiadomości ↓” — nie wyrywamy czytającego na dół. */
.saw-newmsg{
	position:absolute;left:50%;transform:translateX(-50%);bottom:78px;z-index:6;
	background:linear-gradient(180deg,var(--saw-gold-2),var(--saw-gold));color:var(--saw-navy);
	border:0;border-radius:999px;padding:8px 16px;cursor:pointer;
	font-family:"DM Sans",sans-serif;font-weight:700;font-size:12.5px;
	box-shadow:0 8px 22px rgba(0,0,0,.35);
}
.saw-newmsg:hover{filter:brightness(1.05);}
.saw-chat{position:relative;}

/* Twoje pytania (tryb pytań) */
.saw-myq{display:none;width:100%;margin-top:16px;text-align:left;}
.saw-myq.is-on{display:block;}
.saw-myq__h{font-family:"Oswald",sans-serif;text-transform:uppercase;letter-spacing:.07em;font-size:11px;color:var(--saw-muted);margin-bottom:8px;}
.saw-myq__l{display:flex;flex-direction:column;gap:8px;max-height:200px;overflow-y:auto;}
.saw-myq__i{background:var(--saw-navy);border:1px solid var(--saw-line);border-radius:10px;padding:10px 12px;}
.saw-myq__i.answered{border-color:rgba(198,152,58,.45);}
.saw-myq__q{font-size:13px;color:var(--saw-ink);}
.saw-myq__s{font-size:11px;color:var(--saw-muted);margin-top:4px;}
.saw-myq__a{margin-top:8px;padding-top:8px;border-top:1px dashed var(--saw-line);font-size:13px;color:#e6d5a8;}
.saw-myq__a::before{content:"🔒 Odpowiedź prowadzącego";display:block;font-size:10.5px;color:var(--saw-gold);margin-bottom:4px;letter-spacing:.03em;}

/* Zwijanie czatu na mobile: player zostaje na pełnym ekranie */
@media (max-width:860px){
	.saw-shell.is-joined .saw-chat.is-collapsed{flex:0 0 auto;}
	.saw-shell.is-joined .saw-chat.is-collapsed .saw-chat__foot{display:none;}
	.saw-shell.is-joined .saw-chat__head{cursor:pointer;}
	.saw-newmsg{bottom:96px;}
}
/* Zwinięty czat ma pierwszeństwo nad trybem pytań (kolejność reguł by go pokazała). */
.saw-chat.is-collapsed .saw-chat__qa{display:none !important;}
.saw-chat.is-collapsed .saw-newmsg{display:none;}

/* ---------- v0.41.0 ---------- */

/* Dodaj do kalendarza (poczekalnia) */
.saw-cal{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-top:16px;}
.saw-cal__b{display:inline-flex;align-items:center;gap:7px;text-decoration:none;font-size:13px;font-weight:600;
	padding:10px 16px;border-radius:9px;background:linear-gradient(180deg,var(--saw-gold-2),var(--saw-gold));color:var(--saw-navy);}
.saw-cal__b:hover{filter:brightness(1.05);}
.saw-cal__b--sec{background:transparent;border:1px solid var(--saw-line);color:var(--saw-ink);}
.saw-cal__b--sec:hover{border-color:var(--saw-gold);color:var(--saw-gold);}
@media (max-width:600px){
	.saw-cal{gap:8px;}
	.saw-cal__b{font-size:11px;padding:8px 12px;gap:5px;flex:1 1 100%;justify-content:center;}
}

/* Mobile: pole wysyłki przypięte do DOŁU OKNA (position:fixed), a nie do końca strony.
   `sticky` nie wystarczał — strona z nagłówkiem motywu jest wyższa niż ekran, więc
   trzeba było przewinąć, żeby zobaczyć pole. Fixed jest widoczne zawsze. */
@media (max-width:860px){
	.saw-shell.is-joined{padding-bottom:calc(76px + env(safe-area-inset-bottom));}
	.saw-shell.is-joined .saw-chat{display:flex;flex-direction:column;min-height:0;max-height:none;}
	.saw-shell.is-joined .saw-chat__body{flex:1 1 auto;min-height:58vh;max-height:none;overflow-y:auto;}
	.saw-shell.is-joined .saw-chat__qa{flex:1 1 auto;min-height:0;overflow-y:auto;}
	.saw-send{padding:13px 18px;}

	.saw-shell.is-joined .saw-chat__foot{
		position:fixed;left:0;right:0;bottom:0;z-index:60;
		display:flex;gap:8px;align-items:flex-end;
		background:var(--saw-navy-3);
		border-top:1px solid var(--saw-line);
		padding:10px 12px calc(10px + env(safe-area-inset-bottom));
		box-shadow:0 -8px 24px rgba(0,0,0,.35);
	}
	/* Zwinięty czat: pole nadal na dole, ale nie zabiera wysokości treści. */
	.saw-shell.is-joined .saw-chat.is-collapsed{max-height:none;}
	.saw-newmsg{bottom:calc(88px + env(safe-area-inset-bottom));}
	.saw-cal{margin-top:12px;}
	.saw-cal__b{flex:1;justify-content:center;font-size:12.5px;padding:9px 12px;}
}

/* ---------- v0.42.0 ---------- */

/* 74: webinar już trwa */
.saw-late{display:flex;align-items:center;gap:9px;flex-wrap:wrap;justify-content:center;
	background:rgba(226,59,59,.12);border:1px solid rgba(226,59,59,.4);border-radius:10px;
	padding:11px 16px;margin-bottom:18px;font-size:13.5px;}
.saw-late__d{width:9px;height:9px;border-radius:50%;background:var(--saw-red);animation:sawlate 1.6s infinite;}
@keyframes sawlate{0%{box-shadow:0 0 0 0 rgba(226,59,59,.6)}70%{box-shadow:0 0 0 8px rgba(226,59,59,0)}100%{box-shadow:0 0 0 0 rgba(226,59,59,0)}}

/* 75: adres już zapisany */
.saw-dup{background:rgba(198,152,58,.12);border:1px solid rgba(198,152,58,.4);color:var(--saw-gold);
	border-radius:10px;padding:10px 14px;margin-bottom:16px;font-size:13px;text-align:center;}

/* 80: wyciszony player */
.saw-unmute--nag{animation:sawnag 1.4s ease-in-out infinite;box-shadow:0 0 0 3px rgba(198,152,58,.35);}
@keyframes sawnag{0%,100%{transform:scale(1)}50%{transform:scale(1.05)}}

/* 86: czat odtwarzany w powtórce */
.saw-chat--replay .saw-chat__body{opacity:.95;}
.saw-chat--replay .saw-chat__title::after{content:" (odtwarzany)";color:var(--saw-muted);font-weight:400;font-size:11px;}

/* 88: wygasła powtórka */
.saw-expired{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;
	min-height:320px;padding:40px 20px;background:var(--saw-navy-2);border:1px solid var(--saw-line);border-radius:14px;}
.saw-expired__i{font-size:38px;margin-bottom:12px;}
.saw-expired h3{font-family:"Oswald",sans-serif;text-transform:uppercase;letter-spacing:.04em;margin:0 0 8px;}
.saw-expired p{color:var(--saw-muted);margin:0;font-size:13.5px;}

/* ---------- v0.43.0 ---------- */

/* 74: transmisja trwa — wyraźny stan zamiast wyzerowanego zegara */
.saw-livebox{display:flex;flex-direction:column;align-items:center;gap:8px;margin:6px 0 4px;}
.saw-livebox__badge{display:inline-flex;align-items:center;gap:9px;background:var(--saw-red);color:#fff;
	font-family:"Oswald",sans-serif;font-weight:600;text-transform:uppercase;letter-spacing:.09em;
	font-size:13px;padding:9px 18px;border-radius:999px;}
.saw-livebox__d{width:9px;height:9px;border-radius:50%;background:#fff;animation:sawlate 1.6s infinite;}
.saw-livebox__t{font-family:"Oswald",sans-serif;font-size:19px;letter-spacing:.02em;}
.saw-livebox__s{color:var(--saw-muted);font-size:13px;}
.saw-reg--live .saw-reg__eyebrow.is-live .saw-reg__dot{background:var(--saw-red);}

/* ==================================================================
   Duże ekrany: pokój skaluje się do okna.
   Kluczowe fakty z DOM-u:
   – czat siedzi w .saw-side (nie wprost w siatce), a .saw-grid .saw-side
     ma align-self:start, więc nigdy nie dorównywał wysokością playerowi;
   – .saw-shell tkwi w kontenerze motywu, więc samo max-width nic nie daje —
     musimy wyjść na pełną szerokość okna.
   Szerokość kolumny z playerem liczymy z DOSTĘPNEJ WYSOKOŚCI (16:9),
   dzięki czemu na laptopie i na 24" player zawsze wypełnia ekran.
   ================================================================== */
@media (min-width:1100px){
	/* 100vw liczy się razem z paskiem przewijania — bez tego pojawia się poziomy scroll. */
	body:has(.saw-shell.is-joined){overflow-x:hidden;}
	.saw-shell.is-joined{
		/* margin-inline, NIE samo margin-left: .saw-shell ma margin:0 auto, więc
		   ustawienie tylko lewego marginesu przesuwało pokój i wypychało prawą
		   krawędź poza ekran (ucięty czat na laptopie, pusty pas po lewej na 24"). */
		width:100vw;max-width:100vw;
		margin-inline:calc(50% - 50vw);
		padding-inline:clamp(14px,2.5vw,44px);
		box-sizing:border-box;
		min-height:calc(100dvh - 16px);
		display:flex;flex-direction:column;justify-content:center;
	}
	.saw-shell.is-joined .saw-top{width:100%;max-width:1760px;margin-inline:auto;}

	.saw-shell.is-joined .saw-grid{
		/* Wysokość dostępna dla pokoju = okno − realna wysokość paska górnego − oddech.
		   --saw-top-h ustawia chat.js po zmierzeniu .saw-top (tytuł potrafi się zawinąć). */
		--saw-vh:calc(100dvh - var(--saw-top-h,72px) - 44px);
		--saw-chat-w:clamp(360px,28vw,600px);   /* czat wyraźnie szerszy na szerokich ekranach */
		--saw-stage-w:calc(var(--saw-vh) * 16 / 9);

		width:100%;
		grid-template-columns:minmax(0,var(--saw-stage-w)) var(--saw-chat-w);
		max-width:calc(var(--saw-stage-w) + var(--saw-chat-w) + 20px);
		margin-inline:auto;
		gap:20px;align-items:stretch;
	}

	/* Player wypełnia swoją kolumnę — proporcje pilnuje .saw-frame. */
	.saw-shell.is-joined .saw-stage{max-width:none;width:100%;margin:0;}

	/* Czat dorównuje wysokością playerowi (nadpisuje align-self:start). */
	.saw-shell.is-joined .saw-grid .saw-side{
		align-self:stretch;height:100%;
		display:flex;flex-direction:column;min-height:0;
	}
	.saw-shell.is-joined .saw-chat{
		flex:1 1 auto;min-height:0;height:auto;
		display:flex;flex-direction:column;
	}
	.saw-shell.is-joined .saw-chat.is-collapsed{flex:0 0 auto;}
	.saw-shell.is-joined .saw-chat__body{flex:1 1 auto;min-height:0;max-height:none;}
	.saw-shell.is-joined .saw-chat__qa{flex:1 1 auto;min-height:0;overflow-y:auto;}
	.saw-shell.is-joined .saw-chat__foot{flex:0 0 auto;}

	/* Bez czatu (tryb pytań wyłączony / focus) player bierze całą szerokość. */
	.saw-shell.is-joined .saw-grid--nochat{grid-template-columns:minmax(0,var(--saw-stage-w));}
	.saw-shell.is-joined .saw-extras{width:100%;max-width:calc(var(--saw-stage-w) + var(--saw-chat-w) + 20px);margin-inline:auto;}
}

/* Niskie okna (laptop 13–14") — nie oddajemy zbyt dużo miejsca na marginesy. */
/* Niskie okna (laptop 13–14") — mniej oddechu, player i tak ma dostać maksimum. */
@media (min-width:1100px) and (max-height:820px){
	.saw-shell.is-joined .saw-grid{--saw-vh:calc(100dvh - var(--saw-top-h,72px) - 20px);}
	.saw-shell.is-joined{min-height:100dvh;padding-block:8px;}
}


/* ---------- v0.48.0: niezawodność odtwarzania ---------- */

/* 126: przeglądarka zablokowała autostart — duży przycisk odtwarzania na obrazie */
.saw-tap{
	position:absolute;inset:0;z-index:8;display:flex;flex-direction:column;
	align-items:center;justify-content:center;gap:12px;cursor:pointer;
	background:rgba(11,26,46,.72);border:0;color:#fff;
	font-family:"Oswald",sans-serif;font-size:17px;letter-spacing:.02em;
}
.saw-tap__i{
	width:70px;height:70px;border-radius:50%;display:flex;align-items:center;justify-content:center;
	background:linear-gradient(160deg,var(--saw-gold-2),var(--saw-gold));color:#0B1A2E;font-size:28px;padding-left:5px;
	box-shadow:0 10px 30px rgba(0,0,0,.4);
}
.saw-tap:hover .saw-tap__i{filter:brightness(1.06);}

/* 127: test zasięgu YouTube w poczekalni */
.saw-reach{
	margin-top:16px;max-width:460px;margin-inline:auto;text-align:left;
	background:rgba(226,59,59,.10);border:1px solid rgba(226,59,59,.4);
	border-radius:12px;padding:13px 16px;display:flex;flex-direction:column;gap:5px;
}
.saw-reach b{color:#ff9a93;font-size:14px;}
.saw-reach span{color:var(--saw-muted);font-size:12.5px;line-height:1.5;}

/* C: dyskretny wskaźnik wznawiania obrazu (próby naprawy watchdoga) */
.saw-buffering{
	position:absolute;left:50%;top:16px;transform:translateX(-50%);z-index:7;
	display:flex;align-items:center;gap:9px;
	background:rgba(11,26,46,.82);color:#fff;border-radius:999px;
	padding:8px 16px;font-size:13px;font-weight:600;
	box-shadow:0 6px 18px rgba(0,0,0,.35);
}
.saw-buffering[hidden]{display:none;}
.saw-buffering__spin{
	width:14px;height:14px;border-radius:50%;
	border:2px solid rgba(255,255,255,.3);border-top-color:#fff;
	animation:sawspin .8s linear infinite;flex:none;
}
@keyframes sawspin{to{transform:rotate(360deg);}}

/* ---------- Powtórka: etykieta, pasek daty, ekran końcowy ---------- */

/* 1: etykieta POWTÓRKA zamiast „na żywo” — transparentnie, innym kolorem niż live */
.saw-player__replay{
	position:absolute;top:14px;left:14px;z-index:6;
	display:flex;align-items:center;gap:6px;
	background:rgba(11,26,46,.82);color:#cdd6e4;
	font-family:"Oswald",sans-serif;font-weight:600;font-size:12px;letter-spacing:.08em;
	padding:6px 12px;border-radius:999px;border:1px solid rgba(255,255,255,.18);
}
.saw-player__replay-date{font-weight:400;letter-spacing:.02em;opacity:.85;}
@media (max-width:600px){ .saw-player__replay-date{display:none;} }
.saw-shell.is-joined .saw-player__replay{display:flex;}

/* 2: pasek „oglądasz powtórkę z dnia…” */
.saw-replay-bar{
	position:absolute;left:0;right:0;top:0;z-index:6;
	background:linear-gradient(180deg,rgba(11,26,46,.9),rgba(11,26,46,0));
	color:#e8edf4;font-size:12.5px;text-align:center;
	padding:10px 14px 22px;pointer-events:none;
}
.saw-replay-bar b{color:#fff;}

/* 11: ekran końcowy powtórki */
.saw-replay-end{
	position:absolute;inset:0;z-index:14;display:flex;align-items:center;justify-content:center;
	background:rgba(11,26,46,.94);text-align:center;padding:24px;
}
.saw-replay-end[hidden]{display:none;}
.saw-replay-end__inner{max-width:440px;}
.saw-replay-end__title{color:#fff;font-family:"Oswald",sans-serif;font-size:24px;margin:8px 0 18px;}
.saw-replay-end__actions{display:flex;justify-content:center;}

/* ---------- Powtórka v0.52: wznawianie, prędkość, licznik ---------- */

/* 3: pasek „Wznów / Od początku” */
.saw-resume{
	position:absolute;left:50%;bottom:64px;transform:translateX(-50%);z-index:8;
	display:flex;align-items:center;gap:12px;flex-wrap:wrap;justify-content:center;
	background:rgba(11,26,46,.92);color:#e8edf4;border:1px solid rgba(255,255,255,.16);
	border-radius:12px;padding:12px 18px;box-shadow:0 10px 30px rgba(0,0,0,.4);
	font-size:13.5px;
}
.saw-resume b{color:#fff;}
.saw-resume__go,.saw-resume__restart{
	font-family:"Oswald",sans-serif;font-weight:600;font-size:12.5px;letter-spacing:.03em;
	border-radius:8px;padding:8px 16px;cursor:pointer;border:1px solid transparent;
}
.saw-resume__go{background:linear-gradient(160deg,#d4a020,#C6983A);color:#0B1A2E;}
.saw-resume__restart{background:transparent;color:#cdd6e4;border-color:rgba(255,255,255,.25);}
.saw-resume__go:hover{filter:brightness(1.06);}
.saw-resume__restart:hover{background:rgba(255,255,255,.08);}

/* 4: menu prędkości */
.saw-speed{position:absolute;top:12px;right:12px;z-index:7;display:none;}
.saw-shell.is-joined .saw-speed{display:block;}
.saw-speed__toggle{
	background:rgba(11,26,46,.82);border:1px solid rgba(255,255,255,.18);color:#fff;cursor:pointer;
	font-family:"Oswald",sans-serif;font-weight:700;font-size:12px;letter-spacing:.02em;padding:6px 12px;border-radius:999px;min-width:44px;
}
.saw-speed__toggle:hover{background:rgba(11,26,46,.96);}
.saw-speed__menu{
	position:absolute;top:calc(100% + 6px);right:0;display:flex;flex-direction:column;gap:2px;
	background:rgba(11,26,46,.96);border:1px solid rgba(255,255,255,.16);border-radius:10px;padding:4px;
	box-shadow:0 10px 26px rgba(0,0,0,.4);min-width:66px;
}
.saw-speed__menu[hidden]{display:none;}
.saw-speed__menu button{
	background:transparent;color:#cdd6e4;border:0;cursor:pointer;text-align:center;
	font-size:12.5px;font-weight:600;padding:7px 12px;border-radius:7px;
}
.saw-speed__menu button.is-active{background:rgba(198,152,58,.9);color:#0B1A2E;}
.saw-speed__menu button:hover:not(.is-active){background:rgba(255,255,255,.1);}

/* 14: licznik dostępności oferty na ekranie końcowym */
.saw-replay-end__cd{
	margin-top:14px;font-family:"Oswald",sans-serif;font-size:14px;letter-spacing:.03em;
	color:#e0b357;
}

/* Formularz „zadaj pytanie” w powtórce (zamiast czatu na żywo) */
.saw-askbox{
	background:var(--saw-navy-3);border:1px solid var(--saw-line);border-radius:14px;
	padding:16px;display:flex;flex-direction:column;gap:8px;
}
.saw-askbox__head{font-family:"Oswald",sans-serif;font-weight:600;font-size:15px;color:#fff;}
.saw-askbox__sub{margin:0;font-size:12px;color:var(--saw-muted);line-height:1.4;}
.saw-askbox__text{
	width:100%;box-sizing:border-box;resize:vertical;min-height:64px;
	background:rgba(255,255,255,.04);border:1px solid var(--saw-line);border-radius:9px;
	color:#eef2f8;font-size:13.5px;padding:9px 11px;font-family:inherit;
}
.saw-askbox__text:focus{outline:none;border-color:var(--saw-gold);}
.saw-askbox__send{
	align-self:flex-start;font-family:"Oswald",sans-serif;font-weight:600;font-size:13px;letter-spacing:.03em;
	background:linear-gradient(160deg,#d4a020,#C6983A);color:#0B1A2E;border:0;cursor:pointer;
	border-radius:9px;padding:9px 18px;
}
.saw-askbox__send:hover{filter:brightness(1.05);}
.saw-askbox__send:disabled{opacity:.6;cursor:default;}
.saw-askbox__ok{color:var(--saw-gold);font-size:13px;font-weight:600;}

/* =========================================================
   POWTÓRKA / NAGRANIE — własny układ (nie dziedziczy pełnoekranowego live)
   ========================================================= */
.saw-shell--replay.is-joined{
	height:auto;min-height:0;max-width:1200px;margin:0 auto;overflow:visible;
	display:block;padding:0 16px;
}
@media (min-width:900px){
	/* PC: player po lewej, kolumna oferta+pytania po prawej (proporcje jak w live). */
	.saw-shell--replay.is-joined .saw-grid{
		display:grid !important;grid-template-columns:minmax(0,1fr) 380px;
		grid-template-rows:auto !important;gap:20px;align-items:start;height:auto;
	}
	.saw-shell--replay.is-joined .saw-stage{min-height:0;max-width:none;margin:0;}
	.saw-shell--replay.is-joined .saw-side{
		align-self:stretch;display:flex;flex-direction:column;gap:14px;min-width:0;
		position:sticky;top:16px;
	}
	/* Player zachowuje 16:9 i nie rozjeżdża się na całą wysokość ekranu. */
	.saw-shell--replay.is-joined .saw-frame{aspect-ratio:16/9;height:auto;width:100%;}
}
/* Baner oferty w powtórce ma być widoczny (nie hidden domyślnie, gdy jest treść wstrzykiwana JS-em). */
.saw-shell--replay .saw-banner:empty{display:none;}
/* Ekran końcowy i pasek wznawiania pozycjonujemy względem RAMKI, nie całego pokoju. */
.saw-shell--replay .saw-frame{position:relative;}

/* Overlaye powtórki (pasek wznawiania, prędkość, ekran końcowy) leżą na PLAYERZE */
.saw-frame{position:relative;}
.saw-frame .saw-resume{bottom:auto;top:50%;transform:translate(-50%,-50%);}
.saw-frame .saw-replay-end{position:absolute;inset:0;}
/* Prędkość jest teraz częścią paska sterowania (.saw-controls), nie osobnym overlayem. */
.saw-controls .saw-speed{position:static;inset:auto;top:auto;bottom:auto;left:auto;right:auto;background:rgba(255,255,255,.08);}
/* Przycisk oferty nigdy nie wychodzi poza kartę */
.saw-offer,.saw-offer *{box-sizing:border-box;}
.saw-offer__cta{max-width:100%;box-sizing:border-box;}

/* Oferta w kolumnie obok playera (nagranie ORAZ live/premiera nad czatem) — identyczny, mocniejszy wygląd */
.saw-shell--replay .saw-offer,
.saw-side .saw-offer{
	flex-direction:column;align-items:stretch;gap:12px;
	background:linear-gradient(150deg, color-mix(in srgb, var(--saw-offer-c) 22%, var(--saw-navy-2)), var(--saw-navy-3));
	border:1.5px solid color-mix(in srgb, var(--saw-offer-c) 60%, transparent);
	box-shadow:0 18px 44px color-mix(in srgb, var(--saw-offer-c) 20%, transparent);
}
.saw-shell--replay .saw-offer::before,
.saw-side .saw-offer::before{width:5px;}
.saw-shell--replay .saw-offer__right,
.saw-side .saw-offer__right{width:100%;}
.saw-shell--replay .saw-offer__info,
.saw-side .saw-offer__info{min-width:0;}
.saw-shell--replay .saw-offer__title,
.saw-side .saw-offer__title{font-size:clamp(19px,1.6vw,23px);}
.saw-shell--replay .saw-offer__right{width:100%;}
.saw-shell--replay .saw-offer__cta{
	width:100%;text-align:center;font-size:16px;padding:15px 22px;
	box-shadow:0 12px 28px color-mix(in srgb, var(--saw-offer-c) 34%, transparent);
}
/* Etykieta „OFERTA SPECJALNA” jest już w plakietce (.saw-offer__badge) —
   nie dublujemy jej nad tytułem. */

/* Mobile powtórki: naturalna wysokość, treść płynie z góry na dół bez sztucznej pustki */
@media (max-width:899px){
	.saw-shell--replay.is-joined{
		height:auto !important;min-height:0 !important;max-height:none !important;overflow:visible !important;
		display:block !important;justify-content:flex-start !important;
		width:100% !important;max-width:100% !important;margin-inline:0 !important;
		padding:0 12px 24px !important;box-sizing:border-box;
	}
	.saw-shell--replay.is-joined .saw-grid{
		display:flex !important;flex-direction:column;gap:12px;
		height:auto !important;min-height:0 !important;
		width:100% !important;max-width:100% !important;margin:0 !important;
	}
	.saw-shell--replay.is-joined .saw-stage{
		width:100% !important;max-width:100% !important;height:auto !important;min-height:0 !important;margin:0 !important;
	}
	.saw-shell--replay.is-joined .saw-side{
		display:flex;flex-direction:column;gap:12px;width:100%;position:static;min-height:0;
	}
	.saw-shell--replay.is-joined .saw-chat__foot{position:static;}
	.saw-shell--replay .saw-frame{aspect-ratio:16/9;height:auto;width:100%;}
	/* pasek górny nie centrowany, normalny margines */
	.saw-shell--replay.is-joined .saw-top{margin-bottom:10px;}
}

/* Duży przycisk „Włącz odtwarzanie” — ratunek na czarny ekran w powtórce */
.saw-bigplay{
	position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:10;
	display:flex;align-items:center;gap:12px;cursor:pointer;border:0;border-radius:999px;
	font-family:"Oswald",sans-serif;font-weight:700;font-size:20px;letter-spacing:.03em;
	color:#0B1A2E;background:linear-gradient(180deg,#e0b357,#C6983A);
	padding:18px 36px;box-shadow:0 14px 40px rgba(0,0,0,.55);
}
.saw-bigplay__ic{font-size:16px;}
.saw-bigplay:hover{filter:brightness(1.05);}
/* Countdown dostępu do nagrania — wariant akcentu */
.saw-reg__count--access{margin-top:14px;}
.saw-reg__count--access .saw-reg__clabel{color:var(--saw-gold,#C6983A);}

/* 5: pasek postępu nagrania (ile obejrzane / ile zostało) — nieklikalny, bez przewijania.
   Leży tuż nad paskiem sterowania. */
.saw-progress{
	position:absolute;left:0;right:0;bottom:52px;z-index:7;height:18px;
	display:flex;align-items:center;pointer-events:none;background:transparent;
	opacity:0;transition:opacity .3s;
}
/* W powtórce przycisk „Włącz dźwięk” nie może nachodzić na pasek sterowania. */
/* (overlay dźwięku wypełnia całą ramkę — dawne przesunięcie w powtórce już niepotrzebne) */
.saw-progress.is-ready{opacity:1;}
.saw-progress__fill{
	position:absolute;left:0;bottom:0;height:4px;width:0;
	background:linear-gradient(90deg,#C6983A,#e0b357);transition:width .5s linear;
}
.saw-progress__label{
	margin-left:auto;margin-right:12px;color:#e8edf4;font-size:11.5px;font-weight:600;
	font-variant-numeric:tabular-nums;text-shadow:0 1px 2px rgba(0,0,0,.6);
}
/* Suwak (gdy „Zablokuj” odznaczone) — klikalny tor z uchwytem. */
.saw-progress--seek{pointer-events:auto;cursor:pointer;height:28px;}
.saw-progress--seek::before{content:"";position:absolute;left:0;right:0;bottom:0;height:5px;background:rgba(255,255,255,.18);}
.saw-progress--seek .saw-progress__fill{height:5px;transition:width .12s linear;z-index:1;}
.saw-progress--seek .saw-progress__fill::after{content:"";position:absolute;right:-6px;bottom:-3.5px;width:12px;height:12px;border-radius:50%;
	background:#e0b357;box-shadow:0 1px 5px rgba(0,0,0,.55);}
.saw-progress--seek .saw-progress__label{position:relative;z-index:2;}
/* Nagranie: auto-ukrywanie kontrolek jak w YouTube (pokaż na hover / ruch / pauzę). */
.saw-shell--replay.is-joined .saw-frame :is(.saw-controls,.saw-speed),
.saw-shell--replay .saw-frame .saw-progress.is-ready{opacity:0;transition:opacity .25s ease;}
.saw-shell--replay.is-joined .saw-frame :is(.saw-controls,.saw-speed),
.saw-shell--replay .saw-frame .saw-progress--seek{pointer-events:none;}
.saw-shell--replay .saw-frame:is(.saw-active,:hover,.saw-paused) :is(.saw-controls,.saw-speed,.saw-progress.is-ready){opacity:1;}
.saw-shell--replay .saw-frame:is(.saw-active,:hover,.saw-paused) :is(.saw-controls,.saw-speed,.saw-progress--seek){pointer-events:auto;}

/* Mobile: rozkład elementów na playerze nagrania — nic na siebie nie wchodzi */
@media (max-width:600px){
	.saw-frame .saw-speed{top:10px;right:10px;bottom:auto;left:auto;}
	.saw-speed__toggle{font-size:11px;padding:5px 10px;min-width:40px;}
	.saw-speed__menu button{font-size:12px;padding:8px 12px;}
	.saw-progress__label{font-size:10.5px;margin-right:8px;}
	.saw-player__replay{top:10px;left:10px;font-size:11px;padding:5px 10px;}
	.saw-frame .saw-resume{width:calc(100% - 24px);max-width:320px;}
}

/* ===== OFERTA — karta w stylu wizualizacji (czerwona poświata, ptaszki, prezent) ===== */
.saw-offer--card{
	display:block;background:linear-gradient(160deg,#2a0f12,#1a0a0f 60%);
	border:1px solid #7a2420;border-radius:18px;padding:22px 22px 18px;
	box-shadow:0 0 0 1px rgba(226,59,59,.15),0 18px 50px rgba(160,30,30,.28);
	position:relative;overflow:hidden;
}
.saw-offer--card::after{content:"";position:absolute;right:-40px;top:-30px;width:220px;height:220px;
	background:radial-gradient(circle,rgba(226,59,59,.22),transparent 70%);pointer-events:none;}
.saw-offer__badge{display:inline-flex;align-items:center;gap:6px;
	background:rgba(198,152,58,.16);border:1px solid rgba(224,179,87,.5);color:#e0b357;
	font-family:"Oswald",sans-serif;font-weight:600;font-size:12px;letter-spacing:.08em;
	padding:5px 12px;border-radius:999px;margin-bottom:14px;}
.saw-offer__star{color:#e0b357;}
.saw-offer--card .saw-offer__title{font-family:"Oswald",sans-serif;font-weight:700;font-size:26px;color:#fff;line-height:1.15;margin:0 0 4px;}
.saw-offer--card .saw-offer__text{color:#e0b357;font-size:15px;margin:0 0 14px;}
.saw-offer__list{list-style:none;margin:0 0 18px;padding:0;}
.saw-offer__list li{display:flex;align-items:flex-start;gap:10px;color:#e8dede;font-size:14.5px;margin:9px 0;}
.saw-offer__check{display:inline-flex;align-items:center;justify-content:center;flex:0 0 20px;width:20px;height:20px;
	border-radius:50%;border:1.5px solid #e0b357;color:#e0b357;font-size:12px;font-weight:700;margin-top:1px;}
.saw-offer--card .saw-offer__cta{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;
	background:linear-gradient(180deg,#e0403c,#c0201c);color:#fff;font-family:"Oswald",sans-serif;font-weight:700;
	font-size:17px;letter-spacing:.03em;padding:16px 20px;border-radius:12px;text-decoration:none;
	box-shadow:0 10px 28px rgba(192,32,28,.5);transition:filter .15s;}
.saw-offer--card .saw-offer__cta:hover{filter:brightness(1.08);}
.saw-offer__gift{font-size:18px;}
.saw-offer__arrow{margin-left:auto;font-size:22px;opacity:.9;}
.saw-offer__foot{display:flex;align-items:center;gap:6px;justify-content:center;color:#b9a6a6;font-size:12px;margin-top:12px;}
/* Kontrolka „Szczegóły" tylko na mobile — desktop widzi pełną kartę bez przełącznika. */
.saw-offer__more{display:none;}
@media(max-width:768px){
	.saw-offer--card{padding:16px 16px 14px;}
	.saw-offer__badge{margin-bottom:10px;font-size:11px;padding:4px 10px;}
	.saw-offer--card .saw-offer__title{font-size:20px;margin:0 0 4px;
		display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
	.saw-offer--card .saw-offer__text{font-size:14px;margin:0 0 12px;
		display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
	.saw-offer--card .saw-offer__cta{font-size:15px;padding:14px 18px;}
	/* Zwarta karta: lista + foot schowane, dopóki „Szczegóły" ich nie rozwinie. CTA zostaje. */
	.saw-offer--card .saw-offer__list,
	.saw-offer--card .saw-offer__foot{display:none;}
	.saw-offer--card.saw-offer--expanded .saw-offer__list{display:block;}
	.saw-offer--card.saw-offer--expanded .saw-offer__foot{display:flex;}
	.saw-offer__more{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;margin-top:10px;
		background:transparent;border:1px solid rgba(224,179,87,.45);color:#e0b357;
		font-family:"Oswald",sans-serif;font-weight:600;font-size:13px;letter-spacing:.04em;
		padding:9px 12px;border-radius:9px;cursor:pointer;}
	.saw-offer__more:hover{background:rgba(224,179,87,.08);}
}

/* ===== BOX PYTAŃ — granatowa karta z ikoną dymka ===== */
.saw-askbox{background:linear-gradient(160deg,#101f38,#0c1830);border:1px solid #24365a;border-radius:18px;padding:20px 20px 18px;}
.saw-askbox__head{display:flex;align-items:center;gap:12px;margin-bottom:6px;}
.saw-askbox__ic{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:50%;
	background:#1e4fd6;color:#fff;font-size:18px;flex:0 0 42px;}
.saw-askbox__title{font-family:"Oswald",sans-serif;font-weight:600;font-size:19px;color:#fff;}
.saw-askbox__sub{color:#8ea0bd;font-size:13px;margin:0 0 12px;}
.saw-askbox textarea{width:100%;box-sizing:border-box;background:#0a1424;border:1px solid #24365a;border-radius:10px;
	color:#eaf0f8;padding:12px 14px;min-height:96px;resize:vertical;font-size:14px;}
.saw-askbox__count{text-align:right;color:#6f7f9c;font-size:11.5px;margin:4px 2px 10px;}
.saw-askbox__send{width:100%;background:linear-gradient(180deg,#e0b357,#C6983A);color:#0b1a2e;border:0;border-radius:10px;
	font-family:"Oswald",sans-serif;font-weight:700;font-size:16px;letter-spacing:.03em;padding:14px;cursor:pointer;
	display:flex;align-items:center;justify-content:center;gap:8px;transition:filter .15s;}
.saw-askbox__send:hover{filter:brightness(1.06);}

/* =========================================================
   PASEK STEROWANIA NAGRANIEM — pauza/odtwarzanie, głośność,
   prędkość, pełny ekran. Własne kontrolki (natywne YT wyłączone).
   ========================================================= */
.saw-controls{
	position:absolute;left:0;right:0;bottom:0;z-index:9;
	display:flex;align-items:center;gap:8px;
	padding:8px 12px 10px;box-sizing:border-box;
	background:linear-gradient(0deg,rgba(11,26,46,.92),rgba(11,26,46,.5) 60%,rgba(11,26,46,0));
	opacity:0;transform:translateY(6px);transition:opacity .2s ease,transform .2s ease;
	pointer-events:none;
}
/* Pasek pojawia się po dołączeniu (widoczny też na dotyku, gdzie nie ma :hover). */
.saw-shell.is-joined .saw-controls{opacity:1;transform:none;pointer-events:auto;}

.saw-ctrl{
	flex:0 0 auto;display:grid;place-items:center;width:34px;height:34px;
	background:transparent;border:0;border-radius:8px;cursor:pointer;color:#e8edf4;
	transition:background .15s ease,color .15s ease;padding:0;
}
.saw-ctrl:hover{background:rgba(255,255,255,.14);color:#fff;}
.saw-ctrl:focus-visible{outline:2px solid var(--saw-gold,#C6983A);outline-offset:2px;}
.saw-ctrl svg{width:20px;height:20px;display:block;fill:currentColor;}

/* Głośność: przycisk wyciszenia + suwak */
.saw-vol{display:flex;align-items:center;gap:6px;}
.saw-vol__range{
	width:84px;height:4px;-webkit-appearance:none;appearance:none;
	background:rgba(255,255,255,.3);border-radius:999px;cursor:pointer;outline:none;margin:0;
}
.saw-vol__range::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:13px;height:13px;border-radius:50%;background:#e0b357;cursor:pointer;border:0;}
.saw-vol__range::-moz-range-thumb{width:13px;height:13px;border:0;border-radius:50%;background:#e0b357;cursor:pointer;}
.saw-vol__range:focus-visible{outline:2px solid var(--saw-gold,#C6983A);outline-offset:3px;}

/* Element rozpychający — prędkość i pełny ekran lądują po prawej */
.saw-controls__sp{flex:1 1 auto;}

/* Tryb pełnoekranowy: ramka wypełnia ekran (natywny lub zastępczy) */
.saw-frame:fullscreen,
.saw-frame:-webkit-full-screen,
.saw-frame.saw-fs-fake{
	aspect-ratio:auto !important;width:100% !important;height:100% !important;
	max-width:none !important;border-radius:0 !important;
}
.saw-frame.saw-fs-fake{position:fixed;inset:0;z-index:99999;background:#000;}
/* W pełnym ekranie wyłączamy hack proporcji 16:9 — wideo ma wypełnić cały ekran. */
.saw-frame:fullscreen::before,
.saw-frame:-webkit-full-screen::before,
.saw-frame.saw-fs-fake::before{content:none;display:none;padding-top:0;}
.saw-frame:fullscreen .saw-progress,
.saw-frame:-webkit-full-screen .saw-progress,
.saw-frame.saw-fs-fake .saw-progress{bottom:60px;}
.saw-frame:fullscreen .saw-controls,
.saw-frame:-webkit-full-screen .saw-controls,
.saw-frame.saw-fs-fake .saw-controls{padding-bottom:16px;}

/* Mobile: kompaktowy pasek. Na dotyku głośność jest sprzętowa — chowamy suwak,
   zostaje przycisk wyciszenia (setVolume bywa ignorowane m.in. na iOS). */
@media (max-width:600px){
	.saw-controls{gap:6px;padding:6px 8px 8px;}
	.saw-ctrl{width:32px;height:32px;}
	.saw-controls .saw-speed button{font-size:11px;padding:5px 8px;}
	.saw-progress{bottom:48px;}
}
@media (pointer:coarse){
	.saw-vol__range{display:none;}
}

/* =========================================================
   INTEGRACJA ZE STRONĄ / MOTYWEM (danielsiwiec.pl)
   Wstrzykiwane przez wtyczkę, żeby nie trzymać tego w Customizerze.
   ========================================================= */
.full-width-content.one-container .site-content,
.full-width-content.separate-containers .inside-article{
	background-color:#13243f !important;
}
.saw-top{padding-top:20px !important;}
button.saw-theme{display:none;}
.saw-shell--replay.is-joined{max-width:95% !important;}

/* ===================================================================
   MOBILE (≤860px): pełnoekranowy układ jak aplikacja —
   wideo na 100% szerokości u góry, czat wypełnia środek,
   pole pisania na dole. Nadpisuje wcześniejsze, rozproszone reguły.
   =================================================================== */
@media (max-width:860px){
	.saw-shell.is-joined{
		position:fixed !important; top:0 !important; left:0 !important; right:0 !important; bottom:auto !important;
		height:100vh !important; height:100dvh !important; z-index:99990 !important;
		margin:0 !important; padding:0 !important; max-width:none !important; width:100% !important;
		display:flex !important; flex-direction:column !important;
		background:var(--saw-navy) !important; overflow:hidden !important;
	}
	.saw-shell.is-joined .saw-top{ display:none !important; }
	.saw-shell.is-joined .saw-grid{ flex:1 1 auto !important; min-height:0 !important; display:flex !important; flex-direction:column !important; gap:0 !important; margin:0 !important; padding:0 !important; }
	.saw-shell.is-joined .saw-stage{ flex:0 0 auto !important; width:100% !important; max-width:none !important; margin:0 !important; padding:0 !important; }
	.saw-shell.is-joined .saw-frame{ border-radius:0 !important; box-shadow:none !important; }
	.saw-shell.is-joined .saw-side{ flex:1 1 auto !important; min-height:0 !important; display:flex !important; flex-direction:column !important; margin:0 !important; padding:0 !important; gap:0 !important; }
	.saw-shell.is-joined .saw-chat{ flex:1 1 auto !important; min-height:0 !important; display:flex !important; flex-direction:column !important; margin:0 !important; padding:0 !important; border-radius:0 !important; }
	.saw-shell.is-joined .saw-chat__head{ flex:0 0 auto !important; }
	.saw-shell.is-joined .saw-chat__body{ flex:1 1 auto !important; min-height:0 !important; max-height:none !important; overflow-y:auto !important; }
	.saw-shell.is-joined .saw-chat__foot{ position:static !important; left:auto !important; right:auto !important; bottom:auto !important; z-index:auto !important; flex:0 0 auto !important; margin:0 !important; padding:10px 12px !important; }
	/* oferta nad czatem = zwykły element w kolumnie (nie fixed) */
	.saw-shell.is-joined .saw-offer--sticky{ position:static !important; left:auto !important; right:auto !important; bottom:auto !important; top:auto !important; margin:0 0 8px 0 !important; }
	.saw-shell.is-joined .saw-banner{ margin:0 0 8px 0 !important; }
	/* Oferta: pełne stackowanie na mobile (koniec z wychodzeniem CTA/licznika poza ekran) */
	.saw-shell.is-joined .saw-offer{ flex-direction:column !important; align-items:stretch !important; width:100% !important; max-width:100% !important; box-sizing:border-box !important; gap:12px !important; }
	.saw-shell.is-joined .saw-offer__info{ flex:none !important; min-width:0 !important; width:100% !important; }
	.saw-shell.is-joined .saw-offer__right{ width:100% !important; min-width:0 !important; flex:none !important; }
	.saw-shell.is-joined .saw-offer__cta{ width:100% !important; box-sizing:border-box !important; }
	/* player nie ma już potrzeby wyłamywania się — shell jest pełnoekranowy */
	.saw-shell.is-joined .saw-stage{ margin-left:0 !important; margin-right:0 !important; }
}
