:root{
  --bg:#07091a; --panel:rgba(24,29,60,.72); --line:rgba(255,255,255,.09);
  --txt:#f2f4ff; --dim:#98a0cc;
  --acc:#6c7bff; --ok:#4dd4ff; --hot:#ff4d6d; --win:#8bff6b; --gold:#ffd166;
  --blur:blur(16px);
}
*{box-sizing:border-box;margin:0;padding:0}
body{
  background:var(--bg);
  color:var(--txt);
  font:16px/1.5 system-ui,-apple-system,Segoe UI,Roboto,sans-serif;
  min-height:100vh;min-height:100dvh;
  overflow-x:hidden;
}
body.host,body.pad{position:fixed;inset:0;width:100%;height:100vh;height:100dvh;min-height:0;overflow:hidden}
body.host>.screen,body.pad>.screen{height:100vh;height:100dvh;min-height:0;overflow:hidden}

/* Żywe tło: trzy kolorowe plamy krążą pod spodem. Robi robotę na dużym ekranie,
   a kosztuje trzy divy — canvas z cząstkami byłby tu przesadą. */
/* opacity trzymamy nisko: tło ma dawać nastrój, a nie walczyć o uwagę z treścią */
.aura{position:fixed;inset:-20%;z-index:-2;filter:blur(100px);opacity:.34;pointer-events:none}
.aura i{position:absolute;display:block;border-radius:50%;mix-blend-mode:screen}
.aura i:nth-child(1){width:46vw;height:46vw;background:#5b3cff;top:2%;left:4%;animation:plyn1 22s ease-in-out infinite}
.aura i:nth-child(2){width:40vw;height:40vw;background:#ff3d7f;bottom:0;right:6%;animation:plyn2 27s ease-in-out infinite}
.aura i:nth-child(3){width:38vw;height:38vw;background:#22d3ee;top:38%;left:42%;animation:plyn3 19s ease-in-out infinite}
@keyframes plyn1{50%{transform:translate(22vw,14vh) scale(1.25)}}
@keyframes plyn2{50%{transform:translate(-18vw,-12vh) scale(1.15)}}
@keyframes plyn3{50%{transform:translate(-14vw,16vh) scale(.85)}}

/* delikatne ziarno — bez niego gradienty pasmują się na dużym telewizorze */
body::after{content:'';position:fixed;inset:0;z-index:-1;pointer-events:none;opacity:.035;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
.privacy-page{padding:28px 18px}.privacy-page main{width:min(760px,100%);margin:0 auto;padding:30px;background:var(--panel);border:1px solid var(--line);border-radius:24px;box-shadow:0 24px 70px rgba(0,0,0,.35)}.privacy-page a{color:var(--ok)}.privacy-page h1{font-size:clamp(30px,6vw,50px);line-height:1.05;margin:25px 0 14px}.privacy-page .lead{font-size:19px;color:var(--txt)}.privacy-page h2{margin:28px 0 9px}.privacy-page p,.privacy-page li{color:var(--dim)}.privacy-page ul{padding-left:22px;display:grid;gap:8px}

#fx{position:fixed;inset:0;z-index:60;pointer-events:none}

/* lecące reakcje emoji na TV */
.fx-react{position:fixed;bottom:-80px;z-index:62;pointer-events:none;font-size:64px;text-align:center;
  animation:reactUp 2.6s ease-out forwards;will-change:transform,opacity}
.fx-react span{display:block;font-size:15px;font-weight:700;color:#fff;margin-top:2px;
  text-shadow:0 2px 8px rgba(0,0,0,.8)}
@keyframes reactUp{
  0%{transform:translateY(0) scale(.4);opacity:0}
  12%{transform:translateY(-12vh) scale(1.15);opacity:1}
  100%{transform:translate(var(--dryf),-96vh) scale(1);opacity:0}}

/* pasek reakcji na telefonie */
.reactions{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:16px}
.react{font-size:30px;padding:10px 0;border-radius:14px;background:var(--panel);border:1px solid var(--line);
  transition:transform .1s;user-select:none;-webkit-tap-highlight-color:transparent}
.react:active{background:#232a55}
.react.pop{animation:reactPop .3s ease-out}
@keyframes reactPop{0%{transform:scale(1)}45%{transform:scale(1.4)}100%{transform:scale(1)}}

/* plansza tytułowa gry (splash) — pełny ekran, kolor akcentu z metadanych gry */
.splash{position:fixed;inset:0;z-index:75;display:flex;flex-direction:column;align-items:center;justify-content:center;
  gap:20px;text-align:center;pointer-events:none;
  background:radial-gradient(circle at 50% 45%,color-mix(in srgb,var(--akcent) 35%,#07091a),#07091a 70%)}
.splash.hidden{display:none}
.splash.in{animation:splashIn .5s cubic-bezier(.2,.9,.3,1)}
.splash.out{animation:splashOut .5s cubic-bezier(.6,0,.4,1) forwards}
@keyframes splashIn{from{opacity:0}to{opacity:1}}
@keyframes splashOut{from{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1.1)}}
.splash-emoji{font-size:clamp(90px,16vw,200px);line-height:1;
  filter:drop-shadow(0 12px 40px color-mix(in srgb,var(--akcent) 70%,transparent));
  animation:splashEmoji 2.4s ease-in-out}
@keyframes splashEmoji{0%{transform:scale(0) rotate(-25deg)}30%{transform:scale(1.15) rotate(8deg)}45%{transform:scale(1) rotate(0)}100%{transform:scale(1)}}
.splash-name{font-size:clamp(40px,7vw,88px);font-weight:900;letter-spacing:-2px;color:#fff;
  text-shadow:0 0 50px color-mix(in srgb,var(--akcent) 80%,transparent)}
.splash-rules{font-size:clamp(16px,1.8vw,24px);color:var(--dim);max-width:620px;line-height:1.4}
.splash-series{width:min(420px,62vw);height:auto;margin-bottom:4px;filter:drop-shadow(0 0 28px rgba(255,209,102,.28))}
.splash.original{background:radial-gradient(circle at 50% 42%,rgba(108,82,28,.75),#080914 68%)}
.splash.original::before{content:'';position:absolute;inset:0;pointer-events:none;opacity:.22;background:linear-gradient(115deg,transparent 36%,rgba(255,242,173,.55) 48%,transparent 58%);animation:originalSweep 2.2s ease-in-out infinite}
.splash.original .splash-name{text-transform:uppercase;letter-spacing:.08em;text-shadow:0 0 44px rgba(255,209,102,.5)}
@keyframes originalSweep{from{transform:translateX(-70%)}to{transform:translateX(70%)}}

/* kurtyna przejścia — wjeżdża z lewej, wyjeżdża w prawo */
.wipe{position:fixed;inset:0;z-index:80;pointer-events:none;transform:translateX(-100%);
  background:linear-gradient(120deg,#6c7bff,#ff4d6d);will-change:transform}
.wipe.in{animation:wipeIn .34s cubic-bezier(.7,0,.3,1) forwards}
.wipe.out{animation:wipeOut .44s cubic-bezier(.7,0,.3,1) forwards}
@keyframes wipeIn{from{transform:translateX(-100%)}to{transform:translateX(0)}}
@keyframes wipeOut{from{transform:translateX(0)}to{transform:translateX(100%)}}

/* odliczanie „3-2-1” — wielka cyfra pulsuje na środku, nie zasłania treści na stałe */
.countdown{position:fixed;inset:0;z-index:55;display:flex;flex-direction:column;align-items:center;justify-content:center;
  gap:12px;pointer-events:none}
.cd-num{font-size:clamp(140px,26vw,360px);font-weight:900;color:#fff;line-height:1;
  text-shadow:0 0 60px rgba(108,123,255,.9),0 20px 60px rgba(0,0,0,.6)}
.cd-cat{font-size:clamp(20px,3vw,40px);font-weight:800;color:var(--ok);letter-spacing:1px;
  text-shadow:0 4px 24px rgba(77,212,255,.6)}
@keyframes countpop{0%{opacity:0;transform:scale(2.2)}30%{opacity:1;transform:scale(1)}100%{opacity:0;transform:scale(.6)}}

/* przycisk dźwięku — dyskretny, w rogu */
.sound-btn{position:fixed;top:16px;right:16px;z-index:70;width:44px;height:44px;border-radius:50%;
  background:var(--panel);backdrop-filter:var(--blur);border:1px solid var(--line);font-size:20px;
  display:flex;align-items:center;justify-content:center;transition:transform .15s,opacity .2s;opacity:.5}
.sound-btn:hover{opacity:1;transform:scale(1.1)}

@media (prefers-reduced-motion:reduce){
  .aura i{animation:none}
  *{animation-duration:.01ms!important;transition-duration:.01ms!important}
}
.hidden{display:none!important}
.screen{padding:24px;min-height:100vh;min-height:100dvh;display:flex;flex-direction:column}
/* każdy ekran wchodzi miękko — bez tego przeskoki fazy wyglądają jak błąd */
.host .screen:not(.hidden){animation:wejscie .45s cubic-bezier(.2,.9,.3,1)}
@keyframes wejscie{from{opacity:0;transform:translateY(14px) scale(.99)}to{opacity:1;transform:none}}

button{font:inherit;color:inherit;cursor:pointer;border:0;background:none}
button:focus-visible,.big:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--acc);outline-offset:4px}
.big{
  background:linear-gradient(180deg,var(--acc),#4d5ae0);color:#fff;font-weight:800;font-size:18px;
  padding:16px 34px;border-radius:16px;align-self:center;
  box-shadow:0 10px 30px rgba(108,123,255,.45),inset 0 1px 0 rgba(255,255,255,.25);
  transition:transform .12s,box-shadow .2s;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;
}
.big:hover{transform:translateY(-2px);box-shadow:0 16px 40px rgba(108,123,255,.6)}
.big:active{transform:translateY(1px)}
.big.secondary{background:rgba(255,255,255,.07);border:1px solid rgba(77,212,255,.45);box-shadow:0 10px 28px rgba(77,212,255,.12);color:var(--ok)}
.big.secondary:hover{box-shadow:0 14px 35px rgba(77,212,255,.25)}
.start-actions{display:flex;align-items:center;justify-content:center;gap:14px;flex-wrap:wrap}
.err{color:#ff7a90;text-align:center;margin-top:12px}
.hint{color:var(--dim);text-align:center}
.dot{width:12px;height:12px;border-radius:50%;display:inline-block}
.chip{display:inline-flex;align-items:center;gap:6px;background:var(--panel);border:1px solid var(--line);
  padding:6px 12px;border-radius:999px;font-size:14px}
.chip i{width:10px;height:10px;border-radius:50%;display:inline-block}
.chip.dead{opacity:.35;text-decoration:line-through}
.emoji{font-size:26px}

/* ---------- HOST ---------- */
.host #scr-start{align-items:center;justify-content:center;text-align:left;padding:clamp(20px,3vw,46px)}
.landing-shell{width:min(1380px,100%);min-width:0;display:grid;grid-template-columns:minmax(460px,.95fr) minmax(460px,1.05fr);align-items:center;gap:clamp(34px,6vw,92px)}
.landing-copy{display:flex;flex-direction:column;align-items:flex-start;min-width:0}
.landing-brand{display:flex;align-items:center;gap:18px;margin-bottom:clamp(24px,4vh,48px);flex-wrap:wrap}
.landing-brand .logo{width:min(440px,52vw)}
.live-pill{display:inline-flex;align-items:center;gap:8px;padding:8px 13px;border:1px solid rgba(139,255,107,.28);border-radius:99px;background:rgba(139,255,107,.07);color:#caffb9;font-size:12px;font-weight:800;letter-spacing:.5px;text-transform:uppercase;white-space:nowrap}
.live-pill i{width:8px;height:8px;border-radius:50%;background:var(--win);box-shadow:0 0 13px var(--win);animation:pulse 1.7s ease-in-out infinite}
.landing-kicker,.join-kicker{color:var(--ok);font-size:12px;font-weight:900;letter-spacing:3px;margin-bottom:10px}
.landing-copy h2{font-size:clamp(48px,5.2vw,82px);line-height:.96;letter-spacing:-4px;max-width:820px}
.landing-copy h2 em{font-style:normal;background:linear-gradient(90deg,#7e8cff,#4dd4ff 52%,#8bff6b);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 10px 30px rgba(77,212,255,.18))}
.landing-copy .tagline{text-align:left;margin:24px 0 28px;max-width:680px;line-height:1.55}
.landing-copy .start-actions{justify-content:flex-start}
.landing-copy .big{min-width:210px;gap:9px}
.landing-copy .big>span{font-size:24px;line-height:1}
.landing-proof{display:flex;flex-wrap:wrap;gap:9px;margin-top:24px;color:#c9ceef;font-size:13px}
.landing-proof span{padding:7px 11px;border:1px solid var(--line);border-radius:99px;background:rgba(255,255,255,.035)}
.party-preview{position:relative;min-height:520px;perspective:1200px;display:grid;place-items:center}
.preview-glow{position:absolute;width:78%;height:68%;border-radius:50%;background:radial-gradient(circle,rgba(77,212,255,.3),rgba(108,123,255,.16) 45%,transparent 72%);filter:blur(28px);animation:previewGlow 4s ease-in-out infinite}
.preview-tv{position:relative;width:min(600px,92%);aspect-ratio:16/10;padding:30px;border:2px solid rgba(255,255,255,.16);border-radius:28px;background:linear-gradient(145deg,rgba(25,31,72,.96),rgba(9,12,31,.98));box-shadow:0 50px 100px rgba(0,0,0,.55),0 0 70px rgba(108,123,255,.18),inset 0 1px rgba(255,255,255,.12);transform:rotateY(-7deg) rotateX(3deg);overflow:hidden}
.preview-tv::before{content:'';position:absolute;inset:0;background:linear-gradient(120deg,transparent 20%,rgba(255,255,255,.08),transparent 55%);transform:translateX(-100%);animation:screenShine 5s ease-in-out infinite}
.preview-top,.preview-score{display:flex;justify-content:space-between;align-items:center;position:relative;z-index:1}.preview-top{color:var(--ok);font-size:12px;letter-spacing:2px}.preview-top span{color:var(--dim)}
.preview-tv>strong{display:block;font-size:clamp(25px,2.7vw,42px);line-height:1.05;margin:38px 0 28px;position:relative;z-index:1}
.preview-answers{display:grid;grid-template-columns:1fr 1fr;gap:12px;position:relative;z-index:1}.preview-answers i{font-style:normal;font-size:21px;font-weight:900;padding:17px 20px;border-radius:14px;background:#5262ee;border:1px solid rgba(255,255,255,.18)}.preview-answers i:nth-child(2){background:#d94768}.preview-answers i:nth-child(3){background:#d69c31}.preview-answers i:nth-child(4){background:#3a9a72}
.preview-score{margin-top:20px;font-size:12px;color:var(--dim)}.preview-score span:first-child{color:var(--gold);font-weight:800}
.preview-phone{position:absolute;width:128px;height:218px;border:2px solid rgba(255,255,255,.22);border-radius:25px;background:linear-gradient(160deg,#252c63,#0d1129);box-shadow:0 25px 60px rgba(0,0,0,.55);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:13px;z-index:3}.preview-phone::before{content:'';position:absolute;top:8px;width:34px;height:5px;border-radius:5px;background:#080a17}.preview-phone small{font-size:9px;letter-spacing:2px;color:var(--dim)}.preview-phone b{display:grid;place-items:center;width:72px;height:72px;border-radius:20px;background:linear-gradient(145deg,var(--acc),#3d49bf);font-size:34px}.preview-phone span{font-size:11px;font-weight:800;color:var(--ok)}
.phone-a{left:-1%;bottom:1%;transform:rotate(-9deg);animation:phoneFloat 4.2s ease-in-out infinite}.phone-b{right:-1%;top:4%;transform:rotate(8deg) scale(.9);animation:phoneFloat2 4.8s ease-in-out infinite}.phone-b b{background:linear-gradient(145deg,#ff4d6d,#8b2c65)}
.preview-bubble{position:absolute;right:8%;bottom:6%;font-size:40px;filter:drop-shadow(0 8px 18px rgba(0,0,0,.5));animation:unos 2.4s ease-in-out infinite}
.landing-foot{position:absolute;left:clamp(20px,3vw,46px);right:clamp(20px,3vw,46px);bottom:18px;display:flex;justify-content:space-between;align-items:center;color:var(--dim);font-size:12px;letter-spacing:1px;text-transform:uppercase}
@keyframes previewGlow{50%{transform:scale(1.1);opacity:.72}}@keyframes screenShine{45%,100%{transform:translateX(120%)}}@keyframes phoneFloat{50%{transform:rotate(-6deg) translateY(-15px)}}@keyframes phoneFloat2{50%{transform:rotate(5deg) scale(.9) translateY(13px)}}
@media(max-width:980px){.landing-shell{grid-template-columns:1fr;text-align:center;gap:14px}.landing-copy{align-items:center}.landing-brand{justify-content:center;margin-bottom:20px}.landing-copy .tagline{text-align:center;margin:16px 0 20px}.landing-copy .start-actions{justify-content:center}.party-preview{min-height:290px;width:min(620px,92%);margin:auto}.preview-tv{width:520px;padding:22px}.preview-tv>strong{margin:20px 0 16px}.preview-answers i{padding:10px}.preview-phone{width:86px;height:148px;border-radius:18px}.preview-phone b{width:48px;height:48px;font-size:23px}.preview-phone small,.preview-phone span{font-size:7px}.landing-foot{display:none}}
@media(max-width:600px){
  .host #scr-start{overflow-y:auto;overflow-x:hidden;justify-content:flex-start;padding:22px 16px 30px}
  .landing-shell,.landing-copy{width:100%;max-width:100%;min-width:0}
  .landing-brand{width:100%}.landing-brand .logo{width:min(330px,88vw);max-width:100%}.live-pill{font-size:10px}
  .landing-copy h2{font-size:clamp(40px,13vw,58px);letter-spacing:-2px;max-width:100%}.landing-copy .tagline{font-size:16px;max-width:100%}
  .landing-copy .start-actions{width:100%;flex-direction:column}.landing-copy .big{width:100%;min-width:0}
  .landing-proof{justify-content:center;width:100%}
  .party-preview{width:100%;max-width:100%;min-width:0;min-height:245px;margin-top:-4px;overflow:hidden;transform:none;border-radius:24px}
  .preview-tv{width:88%;max-width:340px;padding:16px;border-radius:20px;transform:rotateY(-4deg) rotateX(2deg)}
  .preview-tv>strong{font-size:22px;margin:17px 0 13px}.preview-top{font-size:9px}.preview-answers{gap:7px}.preview-answers i{font-size:15px;padding:8px 10px;border-radius:9px}.preview-score{font-size:8px;margin-top:11px}
  .preview-phone{width:66px;height:118px;border-radius:15px}.preview-phone b{width:39px;height:39px;border-radius:11px;font-size:19px}.preview-phone small,.preview-phone span{font-size:6px}.preview-phone::before{width:23px;height:3px}
  .phone-a{left:1%;bottom:2%}.phone-b{right:1%;top:3%}.preview-bubble{right:8%;bottom:3%;font-size:27px}
}
.host #scr-lobby{overflow-y:auto;overscroll-behavior-y:contain;scrollbar-gutter:stable}
.host #scr-lobby::-webkit-scrollbar{width:12px}
.host #scr-lobby::-webkit-scrollbar-track{background:rgba(255,255,255,.03)}
.host #scr-lobby::-webkit-scrollbar-thumb{background:rgba(108,123,255,.55);border:3px solid transparent;border-radius:20px;background-clip:padding-box}
.logo{width:min(760px,82vw);line-height:1;filter:drop-shadow(0 12px 40px rgba(108,123,255,.45))}
.logo img{display:block;width:100%;height:auto}
.logo.small{width:min(330px,82vw);text-align:center;margin:0 auto 24px;filter:drop-shadow(0 8px 25px rgba(108,123,255,.38))}
.tagline{color:var(--dim);font-size:clamp(18px,1.6vw,24px);max-width:620px}

.bar{display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap;margin-bottom:32px}
.codebox{display:flex;flex-direction:column}
.codelabel{color:var(--dim);font-size:13px;text-transform:uppercase;letter-spacing:2px}
.code{font-size:56px;font-weight:800;letter-spacing:10px;color:var(--ok)}
.joinhint{color:var(--dim);font-size:18px}
.joinhint b{color:var(--txt)}

.lobby-grid{display:grid;grid-template-columns:320px 1fr;gap:48px;flex:1;align-items:start}
.lobby-grid>main{min-width:0}
h2{font-size:15px;text-transform:uppercase;letter-spacing:2px;color:var(--dim);margin-bottom:16px}
h2.mt{margin-top:32px}

/* panel dołączania: QR jest główną drogą, kod tylko awaryjnie */
.joinpanel{background:var(--panel);backdrop-filter:var(--blur);border:1px solid var(--line);
  border-radius:24px;padding:28px;text-align:center;
  box-shadow:0 24px 60px rgba(0,0,0,.45),inset 0 1px 0 rgba(255,255,255,.1);
  position:sticky;top:0}
.qrwrap{background:#fff;border-radius:18px;padding:14px;display:inline-block;line-height:0;
  box-shadow:0 0 50px rgba(77,212,255,.35);animation:oddech 3.4s ease-in-out infinite}
@keyframes oddech{50%{box-shadow:0 0 80px rgba(77,212,255,.6)}}
.qr{width:220px;height:220px;display:block;image-rendering:pixelated}
.qrhint{color:#0a0c18;font-size:12px;font-weight:700;letter-spacing:1px;text-transform:uppercase;line-height:1;padding-top:8px}
.or{color:var(--dim);font-size:13px;margin:18px 0 8px}
.or b{color:var(--txt)}
.joinpanel .codebox{align-items:center}
.joinpanel .code{font-size:40px;letter-spacing:8px}
.players{list-style:none;display:flex;flex-direction:column;gap:10px}
.players li{display:flex;align-items:center;gap:12px;background:var(--panel);backdrop-filter:var(--blur);
  border:1px solid var(--line);padding:12px 18px;border-radius:16px;font-weight:700;font-size:18px;
  animation:wskok .5s cubic-bezier(.2,1.5,.4,1)} /* nowy gracz wskakuje — widać, że ktoś dołączył */
@keyframes wskok{from{opacity:0;transform:translateX(-30px) scale(.9)}to{opacity:1;transform:none}}
.players li.off{opacity:.4}
.players em{margin-left:auto;font-size:12px;color:var(--dim)}

.games{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:18px}
.game-tabs{display:flex;gap:9px;margin:-6px 0 18px}.game-tabs button{padding:9px 16px;border:1px solid var(--line);border-radius:999px;background:rgba(18,22,48,.72);color:var(--dim);font-weight:800}.game-tabs button.active{color:#fff;border-color:var(--acc);background:rgba(108,123,255,.24);box-shadow:0 0 22px rgba(108,123,255,.18)}
.game-room-code{position:fixed;z-index:30;right:76px;top:20px;display:flex;align-items:center;gap:8px;padding:8px 12px;border:1px solid var(--line);border-radius:13px;background:rgba(9,12,27,.72);backdrop-filter:blur(12px);color:var(--dim);font-size:12px}.game-room-code b{color:#fff;font-size:20px;letter-spacing:4px}
.game{background:var(--panel);backdrop-filter:var(--blur);border:1px solid var(--line);border-radius:20px;padding:22px;
  display:flex;flex-direction:column;gap:6px;text-align:left;position:relative;overflow:hidden;
  transition:transform .18s cubic-bezier(.2,.9,.3,1),box-shadow .25s,border-color .2s}

@media(max-width:900px){
  .lobby-grid{grid-template-columns:1fr;gap:24px}
  .joinpanel{position:relative;top:auto;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:18px;padding:18px}
  .joinpanel h2{grid-column:1/-1;margin-bottom:0}.joinpanel .qrwrap{grid-column:2;grid-row:2/4}.joinpanel .or{margin:0;text-align:right}.joinpanel .codebox{justify-content:flex-start}
  .qr{width:160px;height:160px}.joinpanel .code{font-size:34px}
}
.game::before{content:'';position:absolute;inset:0;background:linear-gradient(135deg,rgba(108,123,255,.25),transparent 60%);
  opacity:0;transition:.25s}
.game:hover{border-color:var(--acc);transform:translateY(-6px) scale(1.02);
  box-shadow:0 22px 50px rgba(0,0,0,.5),0 0 40px rgba(108,123,255,.25)}
.game:hover::before{opacity:1}
.game.original{border-color:rgba(255,209,102,.42);background:linear-gradient(145deg,rgba(52,42,20,.94),rgba(15,17,34,.94));box-shadow:inset 0 1px 0 rgba(255,242,173,.12)}
.game.original::before{opacity:.7;background:linear-gradient(120deg,transparent 20%,rgba(255,209,102,.2) 48%,transparent 72%);transform:translateX(-80%);animation:originalCardSweep 4.8s ease-in-out infinite}
.game.original:hover{border-color:#ffd166;box-shadow:0 24px 55px rgba(0,0,0,.55),0 0 42px rgba(255,209,102,.2)}
.original-badge{align-self:flex-start;padding:4px 8px;border:1px solid rgba(255,209,102,.5);border-radius:6px;color:#ffd166;font-size:10px;font-weight:1000;letter-spacing:2px;background:rgba(8,9,20,.65)}
@keyframes originalCardSweep{0%,55%{transform:translateX(-90%)}85%,100%{transform:translateX(90%)}}
.game .emoji{font-size:34px;filter:drop-shadow(0 4px 12px rgba(0,0,0,.5))}
.game b{font-size:19px}
.game small{color:var(--dim);font-size:13px}
.players-req{margin-top:auto;padding-top:8px;color:#5f679a!important}

#scr-game{align-items:center;justify-content:center}
#stage{display:flex;flex-direction:column;align-items:center;gap:16px}
canvas{border-radius:12px;box-shadow:0 20px 60px rgba(0,0,0,.5)}
.hud{display:flex;gap:12px;flex-wrap:wrap;justify-content:center}
.brickfall-wrap{display:flex;flex-direction:column;align-items:center;gap:12px}.brickfall-wrap #bf-cv{border:1px solid rgba(67,232,255,.32);box-shadow:0 0 0 7px rgba(12,19,48,.75),0 25px 80px rgba(0,0,0,.65),0 0 55px rgba(255,77,141,.15)}.bf-title{font-size:clamp(28px,4vw,54px);font-weight:1000;font-style:italic;letter-spacing:-3px;text-shadow:0 0 24px rgba(255,77,141,.45)}.bf-title span{color:#ff4d8d}.bf-title small{display:inline-block;margin-left:18px;padding:5px 13px;border:1px solid rgba(67,232,255,.4);border-radius:999px;color:#43e8ff;font-size:.36em;letter-spacing:1px;font-style:normal;vertical-align:middle;background:rgba(67,232,255,.08)}.brickfall-wrap .chip{border-color:color-mix(in srgb,var(--bf) 55%,transparent);box-shadow:inset 0 0 18px color-mix(in srgb,var(--bf) 10%,transparent)}

.rps{text-align:center;width:min(1000px,90vw)}
.rps h2{font-size:clamp(24px,3vw,38px);color:var(--txt);text-transform:none;letter-spacing:0;font-weight:800}
.rps h2 .hot{color:var(--ok);animation:pulse 1s infinite}
.timer{height:8px;background:var(--panel);border-radius:99px;overflow:hidden;margin:20px 0 40px}
.timer div{height:100%;background:var(--acc);transition:width .2s linear}
.rps-players{display:flex;gap:22px;justify-content:center;flex-wrap:wrap}
.rps-card{background:var(--panel);backdrop-filter:var(--blur);border:2px solid var(--line);border-radius:20px;
  padding:22px 30px;min-width:150px;display:flex;flex-direction:column;gap:8px;align-items:center;
  box-shadow:0 12px 30px rgba(0,0,0,.35);transition:transform .25s,box-shadow .25s,border-color .25s}
.rps-card.ready{border-color:var(--c);box-shadow:0 0 30px color-mix(in srgb,var(--c) 45%,transparent)}
.rps-card .av,.rps-card .av-dot{margin-bottom:2px}
.rps-card .pick{font-size:52px;line-height:1}
.rps-card .pick.flip{animation:pickFlip .5s cubic-bezier(.3,1.4,.5,1)}
@keyframes pickFlip{0%{transform:rotateY(90deg) scale(.6);opacity:.3}100%{transform:none;opacity:1}}
.rps-card.wygral{border-color:var(--win);transform:translateY(-8px) scale(1.06);
  box-shadow:0 0 50px rgba(139,255,107,.6)}
.rps-card.reveal:not(.wygral){opacity:.6}
.rps-card .score{color:var(--dim);font-size:15px}
.rps-card em{color:var(--win);font-style:normal;font-weight:800;margin-left:4px}

/* ---------- AWATARY ---------- */
.av{border-radius:50%;object-fit:cover;border:2px solid;flex:none;background:#0d1020}
.av-dot{border-radius:50%;display:inline-block;flex:none}
.players li .av,.players li .av-dot{margin-right:2px}
.results li .av{box-shadow:0 4px 16px rgba(0,0,0,.4)}

/* kreator awatara (telefon) */
.av-title{font-size:16px;color:var(--txt);text-transform:none;letter-spacing:0;text-align:center;margin-bottom:12px}
.av-stage{position:relative;width:min(280px,72vw);aspect-ratio:1;margin:0 auto;border-radius:20px;
  overflow:hidden;background:#0d1020;border:1px solid var(--line)}
#av-video{width:100%;height:100%;object-fit:cover;transform:scaleX(-1)} /* podgląd jak w lustrze */
#av-canvas{width:100%;height:100%;image-rendering:auto;touch-action:none;cursor:crosshair}
.av-ring{position:absolute;inset:12%;border:3px dashed rgba(255,255,255,.65);border-radius:50%;pointer-events:none}
.av-row{display:flex;gap:12px;justify-content:center;align-items:center;margin-top:16px}
.ghost{border:1px solid var(--line);background:var(--panel);color:var(--dim);padding:14px 20px;border-radius:14px;font-weight:700}

.av-effects{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:16px}
.av-fx{background:var(--panel);border:2px solid var(--line);border-radius:14px;padding:10px 4px;
  display:flex;flex-direction:column;align-items:center;gap:2px}
.av-fx span{font-size:24px}
.av-fx small{font-size:11px;color:var(--dim)}
.av-fx.sel{border-color:var(--acc);background:#232a55}
.av-fx.sel small{color:var(--txt)}

.av-pens{display:flex;gap:10px;justify-content:center;margin-top:14px}
.av-pen{width:34px;height:34px;border-radius:50%;border:3px solid var(--line)}
.av-pen.sel{border-color:var(--ok);transform:scale(1.15)}

.avatar-cta{display:flex;align-items:center;gap:12px;justify-content:center;background:var(--panel);
  border:1px solid var(--line);border-radius:16px;padding:12px 18px;margin:4px auto;font-weight:700}
.my-avatar{width:48px;height:48px;border-radius:50%;object-fit:cover;border:2px solid var(--ok)}

/* ---------- QUIZ (TV) ---------- */
.qz{width:min(1100px,92vw);display:flex;flex-direction:column;gap:20px;transition:filter .3s,opacity .3s}
/* podczas odliczania plansza jest rozmyta i przygaszona — treść pytania zakryta */
.qz.zakryte{filter:blur(22px) brightness(.25);opacity:.18;pointer-events:none}
.qz.zakryte .qz-q,.qz.zakryte .qz-opts{visibility:hidden}
.qz-top{display:flex;justify-content:space-between;color:var(--dim);font-size:14px;
  text-transform:uppercase;letter-spacing:2px;font-weight:700}
/* kropki postępu 1..N */
.qz-dots{display:flex;gap:8px;justify-content:center;margin-bottom:4px}
.qz-dots i{width:10px;height:10px;border-radius:50%;background:rgba(255,255,255,.15);transition:.3s}
.qz-dots i.done{background:var(--win)}
.qz-dots i.now{background:var(--ok);box-shadow:0 0 14px var(--ok);transform:scale(1.5)}
@keyframes firePop{0%{transform:scale(1)}45%{transform:scale(1.6)}100%{transform:scale(1)}}
.qz-q{font-size:clamp(32px,3.4vw,52px);line-height:1.2;text-align:center;color:var(--txt);font-weight:800;
  text-transform:none;letter-spacing:-1px;margin:0;min-height:120px;display:flex;align-items:center;justify-content:center;
  text-shadow:0 8px 30px rgba(0,0,0,.5)}
.qz-opts{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.qz-opt{display:flex;align-items:center;gap:16px;padding:26px 30px;border-radius:20px;
  font-size:clamp(20px,1.8vw,28px);font-weight:800;border:2px solid rgba(255,255,255,.12);
  box-shadow:0 12px 30px rgba(0,0,0,.35),inset 0 1px 0 rgba(255,255,255,.25);
  animation:kafel .5s cubic-bezier(.2,1.2,.3,1) backwards;transition:.35s}
.qz-opt:nth-child(2){animation-delay:.06s}
.qz-opt:nth-child(3){animation-delay:.12s}
.qz-opt:nth-child(4){animation-delay:.18s}
@keyframes kafel{from{opacity:0;transform:translateY(18px) scale(.96)}to{opacity:1;transform:none}}
.qz-opt.a{background:linear-gradient(135deg,#c0304a,#8e2138)}
.qz-opt.b{background:linear-gradient(135deg,#2b6fb5,#1d4d80)}
.qz-opt.c{background:linear-gradient(135deg,#c39428,#8e6a18)}
.qz-opt.d{background:linear-gradient(135deg,#2f9159,#1e6b3f)}
.qz-mark{font-size:20px;opacity:.85;font-weight:800;white-space:nowrap}
.qz-opt.dim{opacity:.25;filter:grayscale(.6)}
.qz-opt.good{border-color:var(--win);box-shadow:0 0 60px rgba(139,255,107,.65);transform:scale(1.04);
  animation:trafiony .6s cubic-bezier(.2,1.6,.4,1)}
@keyframes trafiony{0%{transform:scale(1)}45%{transform:scale(1.12)}100%{transform:scale(1.04)}}

/* słupek głosów — ukryty w trakcie pytania, wjeżdża przy odsłonie */
.qz-votes{position:absolute;left:0;right:0;bottom:0;height:6px;display:flex;align-items:center;
  opacity:0;transition:opacity .3s}
.qz-votes i{display:block;height:100%;width:0;background:rgba(255,255,255,.85);border-radius:0 3px 3px 0;
  transition:width .7s cubic-bezier(.2,.9,.3,1)}
.qz-votes u{position:absolute;right:10px;bottom:10px;font-size:15px;font-weight:800;font-style:normal;
  background:rgba(0,0,0,.35);padding:2px 9px;border-radius:999px}
.qz-opt.reveal .qz-votes{opacity:1}
.qz-opt.reveal{padding-bottom:34px}
.qz-players{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;margin-top:8px}
.qz-p{display:inline-flex;align-items:center;gap:8px;background:var(--panel);border:2px solid var(--line);
  padding:8px 14px;border-radius:999px;font-size:15px;font-weight:600;opacity:.45;transition:.25s}
.qz-p i{width:10px;height:10px;border-radius:50%}
.qz-p.on{opacity:1;border-color:var(--c)}
.qz-p.win{box-shadow:0 0 22px color-mix(in srgb,#8bff6b 45%,transparent)}
.qz-p b{color:var(--ok)}
.qz-p em{color:#8bff6b;font-style:normal;font-weight:800}
.qz-p .fire{font-size:13px}

/* ---------- REFLEKS (TV) ---------- */
.rfx{width:min(1000px,92vw);display:flex;flex-direction:column;align-items:center;gap:28px}
.rfx-prog{color:var(--dim);text-transform:uppercase;letter-spacing:3px;font-size:14px;font-weight:700}
.rfx-signal{font-size:clamp(60px,11vw,150px);font-weight:900;letter-spacing:-2px;text-align:center;
  border-radius:28px;padding:40px 60px;width:100%;transition:.15s}
/* faza czekania: żółty, oddycha, żeby budować napięcie */
.rfx-signal.wait{background:rgba(255,209,102,.12);color:var(--gold);border:2px solid rgba(255,209,102,.3);
  animation:rfxTetno 1.1s ease-in-out infinite}
@keyframes rfxTetno{0%,100%{transform:scale(1);box-shadow:0 0 0 rgba(255,209,102,0)}
  50%{transform:scale(1.03);box-shadow:0 0 60px rgba(255,209,102,.35)}}
.rfx-signal.go{background:var(--win);color:#07091a;box-shadow:0 0 90px rgba(139,255,107,.8);
  animation:goPop .25s cubic-bezier(.2,1.6,.4,1)}
@keyframes goPop{0%{transform:scale(.82)}100%{transform:scale(1)}}
.rfx-signal.result{background:var(--panel);color:var(--txt);border:2px solid var(--line);font-size:clamp(36px,6vw,72px)}
.rfx-signal.result b{color:var(--gold)}

.rfx-players{display:flex;gap:14px;flex-wrap:wrap;justify-content:center;width:100%}
.rfx-p{position:relative;background:var(--panel);border:2px solid var(--line);border-radius:16px;padding:16px 22px;
  display:flex;flex-direction:column;align-items:center;gap:6px;min-width:130px;transition:.25s}
.rfx-p.tap{border-color:var(--ok)} /* zdążył tapnąć */
.rfx-p.best{border-color:var(--win);box-shadow:0 0 36px rgba(139,255,107,.55);transform:translateY(-8px) scale(1.05)}
.rfx-p.fs{border-color:var(--hot);opacity:.65}
.rfx-p.result{animation:rfxWjazd .4s cubic-bezier(.2,.9,.3,1) backwards}
@keyframes rfxWjazd{from{opacity:0;transform:translateY(14px)}to{opacity:1}}
.rfx-medal{position:absolute;top:-14px;font-size:26px;filter:drop-shadow(0 3px 8px rgba(0,0,0,.5))}
.rfx-stat{font-size:20px;font-weight:800;color:var(--ok)}
.rfx-p.fs .rfx-stat{color:var(--hot)}
/* słupek czasu reakcji — szybszy = dłuższy zielony pasek */
.rfx-bar{width:100%;height:6px;background:rgba(255,255,255,.1);border-radius:99px;overflow:hidden}
.rfx-bar i{display:block;height:100%;width:0;border-radius:99px;
  background:linear-gradient(90deg,var(--win),var(--ok));transition:width .7s cubic-bezier(.2,.9,.3,1)}
.rfx-score{font-size:13px;color:var(--dim)}

/* ---------- PAŃSTWA-MIASTA (TV) ---------- */
.pm{width:min(1100px,92vw);display:flex;flex-direction:column;gap:24px}
.pm-top{display:flex;justify-content:space-between;align-items:center}
.pm-round{color:var(--dim);text-transform:uppercase;letter-spacing:3px;font-size:14px;font-weight:700}
.pm-stop{background:#ff4d6d;color:#fff;font-weight:800;padding:8px 18px;border-radius:999px;
  animation:pulse 1s infinite}
@keyframes pulse{50%{transform:scale(1.06)}}
.pm-lead{color:var(--dim);text-align:center;font-size:18px}

.pm-draw{display:flex;flex-direction:column;align-items:center;gap:24px;padding:40px 0}
.reel{font-size:180px;font-weight:800;line-height:1;width:220px;height:240px;
  display:flex;align-items:center;justify-content:center;
  background:linear-gradient(180deg,#1c2350,#11152e);border:2px solid var(--line);border-radius:24px;
  box-shadow:inset 0 0 60px rgba(0,0,0,.6);color:#fff}
.reel.locked{color:var(--ok);border-color:var(--ok);animation:land .5s cubic-bezier(.2,1.6,.4,1);
  box-shadow:0 0 60px rgba(77,212,255,.45)}
@keyframes land{0%{transform:scale(1.35)}100%{transform:scale(1)}}

.pm-write{display:flex;flex-direction:column;align-items:center;gap:20px}
.pm-letter{font-size:120px;font-weight:800;line-height:1;color:var(--ok);
  text-shadow:0 0 50px rgba(77,212,255,.5)}
.timer.wide{width:min(700px,80vw)} /* NIE .big — to klasa przycisku CTA, kolidowałaby */
/* gdy paska zostało mało, zmienia kolor na gorący i pulsuje — sygnał „czas ucieka” */
.timer.pilne div{background:var(--hot)!important;animation:pilnePuls .5s ease-in-out infinite}
@keyframes pilnePuls{50%{opacity:.55}}
.pm-players{display:flex;gap:14px;flex-wrap:wrap;justify-content:center;margin-top:8px}
.pm-p{background:var(--panel);border:2px solid var(--line);border-radius:14px;padding:12px 18px;
  display:flex;flex-direction:column;gap:8px;align-items:center;min-width:120px}
.pm-p.done{border-color:var(--c);box-shadow:0 0 24px color-mix(in srgb,var(--c) 40%,transparent)}
.pips{display:flex;gap:5px}
.pips i{width:9px;height:9px;border-radius:50%;background:#2c3358;display:block;transition:.2s}
.pips i.on{background:var(--c);box-shadow:0 0 8px var(--c)}

.pm-reveal h2{font-size:32px;color:var(--txt);text-transform:none;letter-spacing:0;
  display:flex;align-items:center;gap:14px;justify-content:center;margin-bottom:24px}
.pm-reveal h2 small{color:var(--dim);font-size:16px}
.pm-badge{background:var(--ok);color:#0a0c18;font-weight:800;width:48px;height:48px;border-radius:12px;
  display:inline-flex;align-items:center;justify-content:center;font-size:28px}
.pm-row{display:grid;grid-template-columns:200px 1fr 90px;align-items:center;gap:16px;
  background:var(--panel);border-left:4px solid var(--c);border-radius:12px;padding:14px 20px;margin-bottom:10px;
  opacity:0;animation:slidein .45s ease forwards}
@keyframes slidein{from{opacity:0;transform:translateX(-24px)}to{opacity:1;transform:none}}
.pm-row .who{display:flex;align-items:center;gap:10px;font-weight:700}
.pm-row .who i{width:10px;height:10px;border-radius:50%}
.pm-row .ans{font-size:26px;font-weight:700}
.pm-row .ans.bad{color:#5f679a;text-decoration:line-through}
.pm-row .pts{text-align:right;font-size:24px;font-weight:800;color:#5f679a}
.pm-row .pts.p5{color:#ffd166}.pm-row .pts.p10{color:#8bff6b}
.pm-row .pts.p15{color:#8bff6b;text-shadow:0 0 20px rgba(139,255,107,.6)}

.pm-scores h2{font-size:28px;color:var(--txt);text-transform:none;letter-spacing:0;text-align:center;margin-bottom:24px}
.pm-bar-row{display:grid;grid-template-columns:32px 180px 1fr 60px;align-items:center;gap:14px;margin-bottom:12px}
.pm-bar-row .rank{color:var(--dim);font-weight:800;text-align:center}
.pm-bar-row .who{display:flex;align-items:center;gap:10px;font-weight:700}
.pm-bar-row .who i{width:10px;height:10px;border-radius:50%}
.pm-bar-row .bar{background:var(--panel);border-radius:99px;height:22px;overflow:hidden}
.pm-bar-row .bar b{display:block;height:100%;border-radius:99px;transition:width .8s cubic-bezier(.2,.9,.3,1)}
.pm-bar-row .tot{font-weight:800;font-size:20px;text-align:right}

#scr-results{align-items:center;justify-content:center;gap:20px}
.win-title{font-size:clamp(40px,5vw,68px);font-weight:900;letter-spacing:-2px;
  background:linear-gradient(180deg,#fff,var(--gold));-webkit-background-clip:text;background-clip:text;color:transparent;
  filter:drop-shadow(0 10px 30px rgba(255,209,102,.4))}

/* podium 2–1–3, słupki wyrastają od dołu */
.podium{display:flex;align-items:flex-end;justify-content:center;gap:28px;margin-top:8px}
.pod-col{display:flex;flex-direction:column;align-items:center;gap:10px}
.pod-col .av{box-shadow:0 10px 30px rgba(0,0,0,.55)}
.pod-col.gold .av{box-shadow:0 0 50px rgba(255,209,102,.65);border-color:var(--gold)!important}
.crown{font-size:44px;animation:unos 2.2s ease-in-out infinite}
@keyframes unos{50%{transform:translateY(-10px) rotate(-6deg)}}
.pod-name{font-size:20px;font-weight:800}
.pod-bar{width:150px;height:var(--h);border-radius:16px 16px 0 0;position:relative;
  display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:4px;padding-top:14px;
  border:1px solid var(--line);border-bottom:0;
  transform-origin:bottom;animation:wyrasta .9s cubic-bezier(.2,1.1,.3,1)}
@keyframes wyrasta{from{transform:scaleY(0)}to{transform:scaleY(1)}}
.pod-place{font-size:34px;font-weight:900;text-shadow:0 4px 14px rgba(0,0,0,.6)}
.pod-score{font-size:22px;font-weight:800;font-variant-numeric:tabular-nums;color:#fff}
.pod-col.gold .pod-bar{width:180px}

.results{list-style:none;display:flex;flex-direction:column;gap:10px;min-width:420px;margin-top:8px}
.results li{display:flex;align-items:center;gap:16px;background:var(--panel);backdrop-filter:var(--blur);
  border:1px solid var(--line);padding:12px 20px;border-radius:14px;font-size:18px}
.place{font-weight:800;color:var(--dim);width:24px}
.results .score{margin-left:auto;color:var(--dim);font-size:16px;font-variant-numeric:tabular-nums}

/* ---------- PAD (telefon) ---------- */
.pad .screen{justify-content:center;gap:16px;max-width:480px;margin:0 auto;width:100%}
.pad #scr-join{max-width:none;padding:18px;overflow-y:auto;justify-content:center}
.join-shell{width:min(460px,100%);margin:auto;display:flex;flex-direction:column;gap:15px}
.join-brand{display:flex;align-items:center;justify-content:space-between;padding:0 8px}.join-brand a{display:block;width:210px}.join-brand img{display:block;width:100%}.join-brand>span{font-size:9px;letter-spacing:1.7px;font-weight:900;color:var(--ok);padding:6px 9px;border:1px solid rgba(77,212,255,.25);border-radius:99px;background:rgba(77,212,255,.06)}
.join-card{position:relative;padding:28px 26px 24px;border:1px solid rgba(255,255,255,.13);border-radius:28px;background:linear-gradient(155deg,rgba(29,36,83,.88),rgba(14,18,43,.94));box-shadow:0 30px 80px rgba(0,0,0,.5),inset 0 1px rgba(255,255,255,.08);overflow:hidden}.join-card::before{content:'';position:absolute;width:240px;height:240px;border-radius:50%;background:rgba(108,123,255,.17);filter:blur(55px);right:-110px;top:-130px;pointer-events:none}
.join-avatars{display:flex;margin-bottom:17px}.join-avatars i,.join-avatars b{width:42px;height:42px;display:grid;place-items:center;border-radius:50%;background:#252d68;border:2px solid #11152f;font-style:normal;font-size:21px;margin-left:-8px;box-shadow:0 5px 15px rgba(0,0,0,.3)}.join-avatars i:first-child{margin-left:0}.join-avatars b{font-size:18px;color:var(--ok);background:#171c40}
.join-card h1{font-size:34px;line-height:1.05;letter-spacing:-1.2px;margin-bottom:7px}.join-lead{color:var(--dim);font-size:14px;margin-bottom:20px}
#join-form{display:flex;flex-direction:column;gap:14px}
.join-card #join-form>label:not(.privacy-check)>span{font-size:11px;font-weight:800;letter-spacing:1.4px;color:#bbc1e4}
.join-card input{background:rgba(6,9,26,.52);border-color:rgba(255,255,255,.13);box-shadow:inset 0 2px 12px rgba(0,0,0,.18)}
.join-card #in-code{font-size:32px;padding:15px;border-color:rgba(77,212,255,.27);text-shadow:0 0 18px rgba(77,212,255,.32)}
.join-card input:focus{outline:0;border-color:var(--ok);box-shadow:0 0 0 3px rgba(77,212,255,.12),inset 0 2px 12px rgba(0,0,0,.18)}
.join-submit{width:100%;margin-top:2px;justify-content:space-between;padding-inline:22px}.join-submit>span{font-size:24px}
.join-safe{text-align:center;color:var(--dim);font-size:11px}
.join-card .privacy-check{font-size:11px;color:#aeb5da}.join-card .privacy-check input{flex:0 0 auto}
.join-photo-note{margin:-5px 0 0;text-align:center;color:var(--dim);font-size:13px}.av-row label.big{cursor:pointer;text-align:center}
.privacy-check{display:grid;grid-template-columns:auto 1fr;align-items:start;gap:9px;text-transform:none;letter-spacing:0;line-height:1.35}.privacy-check input{width:20px;height:20px;accent-color:var(--acc)}.privacy-link{color:var(--ok);font-size:13px;text-align:center;text-decoration:underline;text-underline-offset:3px}
label{display:flex;flex-direction:column;gap:6px;color:var(--dim);font-size:13px;
  text-transform:uppercase;letter-spacing:1px}
input{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:16px;
  font-size:20px;color:var(--txt);text-align:center;font-weight:600}
#in-code{letter-spacing:8px;text-transform:uppercase;font-size:28px}
input:focus{outline:2px solid var(--acc)}
@media(max-height:740px){.pad #scr-join{justify-content:flex-start}.join-shell{gap:10px}.join-card{padding:20px 22px 17px}.join-brand a{width:180px}.join-avatars{margin-bottom:10px}.join-avatars i,.join-avatars b{width:34px;height:34px;font-size:17px}.join-card h1{font-size:29px}.join-lead{margin-bottom:13px}#join-form{gap:10px}.join-card input{padding:12px}.join-card #in-code{font-size:27px;padding:11px}.join-photo-note{font-size:11px}.join-safe{font-size:10px}}

.me{display:flex;align-items:center;gap:10px;justify-content:center;font-size:24px;font-weight:700}
.waiting{text-align:center;font-size:18px}
.waiting b{color:var(--ok);letter-spacing:4px}
.roster{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;margin-top:16px}

.pad #scr-play{justify-content:flex-start;padding-top:16px}
.padbar{display:flex;justify-content:space-between;align-items:center;font-weight:700}
.padbar .dot{margin-right:6px}
.padbar .score{color:var(--ok)}
.note{text-align:center;color:var(--dim);min-height:24px;margin:8px 0}

/* d-pad — duże cele dotykowe, bez zoomu przy dwukliku */
.dpad{display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(3,1fr);
  gap:10px;flex:1;max-height:70vh;touch-action:manipulation}
.dpad.dead{opacity:.3;pointer-events:none}
.dbtn{background:var(--panel);border:1px solid var(--line);border-radius:16px;font-size:32px;
  display:flex;align-items:center;justify-content:center;user-select:none;-webkit-user-select:none}
.dbtn:active{background:var(--acc)}
.dbtn.up{grid-area:1/2}.dbtn.left{grid-area:2/1}.dbtn.right{grid-area:2/3}.dbtn.down{grid-area:3/2}

/* formularz (Państwa-Miasta) */
.padletter{background:var(--ok);color:#0a0c18;font-weight:800;width:34px;height:34px;border-radius:9px;
  display:flex;align-items:center;justify-content:center;font-size:20px}
.pad .timer{height:6px;background:var(--panel);border-radius:99px;overflow:hidden;margin:10px 0}
.pad .timer div{height:100%;background:var(--acc);transition:width .3s linear}
.form{display:flex;flex-direction:column;gap:10px}
.f-row{gap:4px;text-transform:none;letter-spacing:0;font-size:12px;color:var(--dim)}
.f-input{text-align:left;font-size:17px;padding:12px 14px}
.f-input:disabled{opacity:.5}
.stop{background:#2b3160;border:2px solid var(--line);color:var(--dim);font-weight:800;font-size:20px;
  padding:18px;border-radius:16px;margin-top:6px;letter-spacing:2px}
.stop.ready{background:linear-gradient(180deg,#ff4d6d,#e03354);border-color:#ff4d6d;color:#fff;
  box-shadow:0 8px 24px rgba(255,77,109,.35);animation:pulse 1.2s infinite}

/* przycisk tap (Refleks) — wypełnia ekran, zmienia kolor po sygnale */
.tap{flex:1;display:flex}
.tap-btn{flex:1;border-radius:24px;font-size:48px;font-weight:900;letter-spacing:2px;
  background:#2b3160;border:3px solid var(--line);color:var(--dim);transition:background .1s,transform .05s;
  user-select:none;-webkit-user-select:none;-webkit-tap-highlight-color:transparent;touch-action:manipulation}
.tap-btn.armed{background:var(--win);color:#07091a;border-color:var(--win);box-shadow:0 0 60px rgba(139,255,107,.6)}
.tap-btn.armed:active{transform:scale(.97)}
.tap-btn.done{background:#1d4d80;color:var(--ok)}
.tap-btn.falstart{background:#5a1e2a;color:var(--hot);border-color:var(--hot)}

/* Kalambury */
.charades{max-width:1000px;margin:0 auto;position:relative}.ch-spotlight{position:absolute;inset:-14vh -20vw auto;height:42vh;background:radial-gradient(ellipse,rgba(199,125,255,.24),transparent 68%);pointer-events:none;filter:blur(8px);animation:chGlow 3s ease-in-out infinite}.char-top{position:relative;display:flex;justify-content:space-between;align-items:center;margin-bottom:14px;color:var(--dim);font-size:18px}.char-top b{color:var(--txt);text-transform:uppercase;letter-spacing:2px}.ch-board-wrap{position:relative;margin:18px 0;border-radius:22px;overflow:hidden;box-shadow:0 24px 60px rgba(0,0,0,.34),0 0 0 1px rgba(199,125,255,.28)}.charades #ch-board{width:100%;max-height:62vh;aspect-ratio:10/7;background:#10142b;display:block;background-image:radial-gradient(rgba(255,255,255,.09) 1px,transparent 1px);background-size:22px 22px}.ch-empty{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;color:var(--dim);font-size:15px;letter-spacing:1px;pointer-events:none;animation:chFloat 2.4s ease-in-out infinite}.ch-empty:first-letter{font-size:58px}.ch-empty b{color:var(--txt);font-size:22px}.charades h2{text-align:center;color:var(--txt);font-size:28px;text-transform:none;letter-spacing:0;margin:10px 0 18px}.charades h2.hot{color:var(--win);font-size:48px;animation:chReveal .55s cubic-bezier(.2,1.3,.3,1)}.ch-players{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}.ch-player{display:flex;align-items:center;gap:7px;padding:8px 12px;border:1px solid var(--line);border-radius:14px;background:rgba(19,24,52,.72);transition:transform .25s,border-color .25s,box-shadow .25s}.ch-player.drawing{border-color:var(--c);box-shadow:0 0 24px color-mix(in srgb,var(--c) 38%,transparent);transform:translateY(-4px)}.ch-player.guessed{border-color:var(--win);box-shadow:0 0 22px rgba(139,255,107,.25)}.ch-player span{color:var(--dim);font-size:12px}.ch-player em{font-style:normal;color:var(--ok);font-weight:800}.charades-pad{display:flex;flex:1;flex-direction:column;gap:12px}.char-word{text-align:center;font-size:18px;color:var(--dim)}.char-word b{color:var(--win);font-size:28px;text-transform:uppercase;margin-left:5px;text-shadow:0 0 22px rgba(139,255,107,.45)}.charades-pad canvas{width:100%;background:#10142b;border:2px solid var(--line);border-radius:16px;touch-action:none;flex:1;box-shadow:inset 0 0 34px rgba(0,0,0,.3),0 10px 30px rgba(0,0,0,.22)}.charades-pad canvas.locked{opacity:.45;pointer-events:none}.char-tools{display:flex;gap:8px;justify-content:center}.char-tools button{border:2px solid var(--line);border-radius:10px;padding:8px;background:#20264c;color:var(--txt);transition:transform .15s,border-color .15s}.char-tools button.sel{border-color:var(--win);transform:translateY(-3px)}.charades-guess{display:flex;flex:1;align-items:center}.charades-guess form{width:100%;display:flex;flex-direction:column;gap:12px}.charades-guess input{font-size:22px;padding:18px;border-radius:14px;border:2px solid var(--line);background:#151a35;color:var(--txt)}.charades-guess button{padding:18px;border:0;border-radius:14px;background:var(--ok);font-weight:900;font-size:20px;box-shadow:0 10px 28px rgba(139,255,107,.25)}@keyframes chGlow{50%{transform:scale(1.12);opacity:.55}}@keyframes chFloat{50%{transform:translateY(-8px);opacity:.72}}@keyframes chReveal{from{transform:scale(.45) rotate(-4deg);opacity:0}to{transform:scale(1);opacity:1}}

.choices{display:flex;flex-direction:column;gap:14px;flex:1;justify-content:center}
.pad #controls.choices:not(.choice-grid):not(.dossier-choices){min-height:0}.pad #controls.choices:not(.choice-grid):not(.dossier-choices) .btn-choice{flex:1;min-height:64px}
.btn-choice{background:var(--panel);border:2px solid var(--line);border-radius:18px;padding:24px;
  display:flex;align-items:center;gap:16px;font-size:20px;font-weight:700}
.btn-choice .emoji{font-size:36px}
.btn-choice.sel{border-color:var(--acc);background:#232a55}
.btn-choice:disabled{opacity:.45}

/* Mobilne dopracowanie Kalamburów: zwarte sterowanie i pełny ekran bez przewijania. */
.char-tools{align-items:center;gap:9px}
.char-tools button{width:42px;height:42px;border-radius:50%;padding:5px;display:grid;place-items:center}
.char-tools button i{display:block;width:25px;height:25px;border-radius:50%;box-shadow:inset 0 0 0 1px rgba(0,0,0,.18)}
.char-tools button.sel{box-shadow:0 6px 16px rgba(139,255,107,.22)}
.char-tools .char-clear{margin-left:6px;border-radius:12px;font-size:25px;color:var(--hot)}
@media (max-width:600px) and (max-height:760px){
  .pad #scr-play{gap:7px;padding-top:9px;padding-bottom:9px}
  .pad #scr-play .note{font-size:12px;min-height:17px;margin:2px 0}
  .pad #scr-play .timer{margin:5px 0}
  .charades-pad{gap:6px;min-height:0}
  .char-word{font-size:14px}.char-word b{font-size:22px}
  .charades-pad canvas{min-height:190px;max-height:38vh}
  .char-tools button{width:38px;height:38px}.char-tools button i{width:23px;height:23px}
  .reactions{gap:5px;margin-top:7px}.react{font-size:24px;padding:6px 0}
}

/* Kontrolery nowych trybów */
.single-input,.telephone-pad,.ranking-pad{display:flex;flex:1;min-height:0;flex-direction:column;justify-content:center}
.single-input form{display:flex;flex-direction:column;gap:14px}.single-input input{font-size:22px}.single-input button,.telephone-pad form button{padding:18px;border-radius:16px;background:linear-gradient(180deg,#ff9f45,#ff4d6d);font-size:18px;font-weight:900;box-shadow:0 12px 34px rgba(255,77,109,.32)}
.active-glow{text-align:center;font-size:86px;animation:bombPhone .6s ease-in-out infinite alternate;filter:drop-shadow(0 0 28px #ff4d6d)}@keyframes bombPhone{to{transform:scale(1.12) rotate(5deg)}}
.phone-wait{margin:auto;text-align:center;display:flex;flex-direction:column;gap:12px;color:var(--dim)}.phone-wait span{font-size:90px;filter:drop-shadow(0 0 30px var(--acc));animation:chFloat 2s ease-in-out infinite}.phone-wait b{font-size:20px;color:var(--txt)}
.rank-item{text-align:center;margin-bottom:14px;min-height:76px}.rank-item small{display:block;color:var(--dim);letter-spacing:2px}.rank-item b{display:block;font-size:28px;color:var(--gold)}.rank-slots{display:flex;flex-direction:column;gap:8px}.rank-slots button{display:flex;align-items:center;gap:12px;border-radius:14px;padding:10px 14px;text-align:left;background:var(--panel);border:1px solid var(--line)}.rank-slots strong{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:#2b3160;color:var(--gold)}.rank-slots span{font-weight:700}.rank-slots .free:not(:disabled){border-color:rgba(255,209,102,.5);box-shadow:0 0 18px rgba(255,209,102,.08)}.rank-slots .filled{opacity:.55}
.telephone-pad{gap:10px}.tel-prompt{text-align:center;padding:12px;border-radius:14px;background:rgba(199,125,255,.12);color:#fff;font-size:20px;font-weight:800}.telephone-pad textarea{width:100%;min-height:130px;background:var(--panel);border:2px solid var(--line);border-radius:16px;padding:14px;color:var(--txt);font:600 18px/1.4 inherit;resize:none}.telephone-pad form{display:flex;flex-direction:column;gap:12px}.telephone-pad canvas{width:100%;min-height:240px;flex:1;background:#10142b;border:2px solid var(--line);border-radius:16px;touch-action:none}.tel-tools{display:flex;gap:7px}.tel-tools button{flex:1;padding:10px;border-radius:11px;background:#252b55;font-weight:900}.tel-tools #tel-submit{flex:2;background:var(--win);color:#07101a}
#tel-reference-pad{min-height:170px;max-height:260px;object-fit:contain}
.bomb-device i{transform:scale(calc(.7 + var(--left)))}
.pad .reactions{grid-template-columns:repeat(8,1fr);gap:4px;margin-top:8px}
.pad .react{font-size:22px;padding:6px 0;border-radius:10px}
.choice-grid{display:grid;grid-template-columns:repeat(2,1fr);align-content:center;gap:9px}
.choice-grid .btn-choice{padding:12px;gap:8px;min-height:62px}
.choice-grid .btn-choice .emoji{font-size:25px}
.dossier-choices{display:grid;grid-template-columns:repeat(2,1fr);align-content:center;gap:9px}
.dossier-choices .btn-choice{min-height:64px;padding:11px 13px;background:linear-gradient(135deg,rgba(68,52,25,.9),rgba(20,23,42,.94));border-color:rgba(255,209,102,.3)}
.dossier-choices .btn-choice .emoji{width:28px;color:#ffd166;font-size:18px}.dossier-choices .btn-choice.sel{border-color:#ffd166;box-shadow:0 0 22px rgba(255,209,102,.24)}

/* IMPREZOWEGRY.PL ORIGINALS — Wasze Akta */
.files-tv{position:relative;width:calc(100vw - 48px);max-width:calc(100vw - 48px);height:calc(100vh - 48px);overflow:hidden;border-radius:28px;padding:20px 28px;display:flex;flex-direction:column;background:radial-gradient(circle at 50% 25%,#40331c,#090b16 68%);border:1px solid rgba(255,209,102,.22);box-shadow:inset 0 0 100px rgba(0,0,0,.38)}
.files-tv::before{content:'';position:absolute;inset:0;opacity:.055;pointer-events:none;background:repeating-linear-gradient(0deg,#fff 0 1px,transparent 1px 5px)}
.files-scan{position:absolute;z-index:2;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,#ffd166,transparent);box-shadow:0 0 22px #ffd166;animation:filesScan 4s linear infinite}
.files-tv header,.files-tv footer{position:relative;z-index:3;display:flex;align-items:center;justify-content:space-between;letter-spacing:3px}.files-original{color:#ffd166;font-size:12px;font-weight:1000}.files-tv header b{color:#b7ad91}.files-tv main{position:relative;z-index:3;flex:1;min-height:0;display:flex;flex-direction:column;justify-content:center;gap:14px}.files-case{text-align:center;max-width:1050px;margin:0 auto}.files-cat{color:#ffd166;font-size:13px;letter-spacing:5px;font-weight:900}.files-case h2{font-size:clamp(28px,3.7vw,52px);line-height:1.06;text-transform:none;letter-spacing:-1px;margin:6px 0}.files-case p{color:#8e876f;letter-spacing:3px;font-weight:800}.files-stamp{position:absolute;right:2vw;top:1vh;color:#ff5c70;border:4px solid currentColor;border-radius:8px;padding:5px 13px;font-weight:1000;letter-spacing:4px;transform:rotate(-8deg);opacity:.72}.files-case.open .files-stamp{color:#8bff6b}.files-verdict{display:inline-flex;gap:10px;padding:7px 16px;border:1px solid rgba(255,209,102,.28);background:rgba(255,209,102,.08);color:#b7ad91;letter-spacing:2px}.files-verdict b{color:#ffd166}.files-suspects{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:8px}.files-suspects article{min-width:0;padding:9px 5px;border:1px solid rgba(255,255,255,.09);border-radius:13px;background:rgba(16,19,35,.82);display:flex;flex-direction:column;align-items:center;gap:4px;opacity:.55;transition:.35s}.files-suspects article.ready{opacity:1;border-color:color-mix(in srgb,var(--c) 55%,transparent)}.files-suspects article.winner{opacity:1;border-color:#ffd166;transform:translateY(-6px);box-shadow:0 0 32px rgba(255,209,102,.22)}.files-suspects article b{white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis}.files-suspects article span,.files-suspects article strong{font-size:10px;color:#8e96b9;letter-spacing:1px}.files-meter{width:82%;height:5px;border-radius:9px;background:#272a3e;overflow:hidden}.files-meter i{display:block;height:100%;background:linear-gradient(90deg,#d99c37,#fff2ad);transition:width .8s}.files-tv footer{color:#8e876f;font-size:12px}.files-tv footer b{color:#ffd166;font-size:18px}.files-final{text-align:center}.files-final>small{color:#ffd166;letter-spacing:5px}.files-final h2{font-size:clamp(38px,5vw,68px);margin:3px 0 20px}.files-profiles{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.files-profiles article{padding:12px;border:1px solid color-mix(in srgb,var(--c) 45%,transparent);border-radius:15px;background:rgba(15,18,34,.86);display:flex;flex-direction:column;align-items:center;gap:3px;animation:rankSlide .5s both;animation-delay:calc(var(--i)*.09s)}.files-profiles strong{color:#ffd166;font-size:12px;letter-spacing:1px}.files-profiles span{color:#8e96b9;font-size:11px}@keyframes filesScan{from{top:8%}to{top:94%}}

/* Finalny fit 16:9 — sceny nie mogą wymagać przewijania na TV. */
.host .pm{height:calc(100vh - 48px);min-height:0;gap:12px}
.host .files-suspects{width:min(100%,1000px);margin:0 auto;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.host .files-suspects article{min-height:86px;padding:10px 8px;justify-content:center}
.host .files-suspects article.winner{transform:translateY(-4px)}
.host .files-suspects article b{font-size:16px}

/* IMPREZOWEGRY.PL ORIGINALS — Jedna Maszyna */
.machine-tv{position:relative;width:calc(100vw - 48px);height:calc(100vh - 48px);overflow:hidden;border-radius:28px;padding:20px 28px;display:flex;flex-direction:column;background:radial-gradient(circle at 50% 47%,#172d36,#080c14 66%);border:1px solid rgba(94,234,212,.26);box-shadow:inset 0 0 110px rgba(0,0,0,.55)}
.machine-grid{position:absolute;inset:0;opacity:.12;background-image:linear-gradient(rgba(94,234,212,.3) 1px,transparent 1px),linear-gradient(90deg,rgba(94,234,212,.3) 1px,transparent 1px);background-size:34px 34px;mask-image:radial-gradient(circle,#000,transparent 72%);animation:machineGrid 12s linear infinite}
.machine-tv header,.machine-tv footer{position:relative;z-index:3;display:flex;align-items:center;justify-content:space-between;letter-spacing:3px}.machine-tv header span{font-size:12px;font-weight:1000;color:#5eead4}.machine-tv header b{color:#8da6ad}.machine-tv main{position:relative;z-index:2;flex:1;min-height:0;display:grid;grid-template-columns:1fr 280px 1fr;align-items:center;gap:18px}.machine-copy small{color:#5eead4;letter-spacing:4px;font-weight:900}.machine-copy h2{font-size:clamp(34px,4.4vw,64px);line-height:1;text-transform:none;letter-spacing:-1px;margin:7px 0}.machine-copy h2 em{font-style:normal;color:#ffd166;font-size:1.4em;text-shadow:0 0 40px rgba(255,209,102,.55)}.machine-copy p{color:#98a8b2;font-size:18px;max-width:540px}.machine-core{width:250px;height:250px;margin:auto;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;border:2px solid #5eead4;background:radial-gradient(circle,rgba(94,234,212,.24),rgba(9,15,25,.92) 68%);box-shadow:0 0 55px rgba(94,234,212,.25),inset 0 0 45px rgba(94,234,212,.16);position:relative}.machine-core i{position:absolute;inset:-13px;border:2px dashed rgba(94,234,212,.45);border-radius:50%;animation:telOrbit 10s linear infinite}.machine-core strong{font-size:58px;line-height:1}.machine-core span{font-size:10px;color:#8da6ad;letter-spacing:3px}.machine-modules{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.machine-modules article{min-width:0;min-height:68px;padding:8px 10px;display:flex;align-items:center;gap:9px;border-radius:12px;border:1px solid rgba(255,255,255,.09);background:rgba(12,18,29,.86);opacity:.55;transition:.3s}.machine-modules article>span{font-size:25px;color:var(--mc);width:32px;text-align:center}.machine-modules article div{display:flex;min-width:0;flex-direction:column}.machine-modules article small{font-size:9px;color:var(--mc);letter-spacing:1px}.machine-modules article b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:13px}.machine-modules article>i{margin-left:auto;width:9px;height:9px;border-radius:50%;background:#39424b}.machine-modules article.ready{opacity:1;border-color:var(--mc);box-shadow:0 0 20px color-mix(in srgb,var(--mc) 20%,transparent)}.machine-modules article.ready>i{background:var(--mc);box-shadow:0 0 12px var(--mc)}.machine-modules article.damaged:not(.ready){animation:machineDamage .35s;background:rgba(80,13,27,.48)}.machine-tv footer{gap:24px}.machine-hull{display:flex;align-items:center;gap:12px;flex:1;color:#8da6ad;font-size:11px}.machine-hull>i{height:8px;max-width:600px;flex:1;border-radius:20px;background:#252d35;overflow:hidden}.machine-hull>i b{display:block;height:100%;background:linear-gradient(90deg,#ff4d6d,#ffd166,#5eead4);transition:width .5s}.machine-hull strong,#machine-clock{color:#5eead4;font-size:18px;font-weight:1000}@keyframes machineGrid{to{background-position:34px 34px}}@keyframes machineDamage{50%{transform:translateX(8px);border-color:#ff4d6d}}
.machine-pad{--mc:#5eead4;display:flex;flex:1;min-height:0;flex-direction:column;gap:10px;padding:10px;border:1px solid color-mix(in srgb,var(--mc) 35%,transparent);border-radius:20px;background:radial-gradient(circle at 50% 20%,color-mix(in srgb,var(--mc) 18%,#101424),#0c1020 70%);overflow:hidden}.machine-role{text-align:center;display:grid;grid-template-columns:1fr auto 1fr;align-items:center}.machine-role small{color:#8e9aa8;letter-spacing:2px;text-align:left}.machine-role span{font-size:34px;color:var(--mc);filter:drop-shadow(0 0 14px var(--mc))}.machine-role b{text-align:right;color:var(--mc);font-size:13px;letter-spacing:2px}.machine-signal{display:flex;flex-direction:column;align-items:center;padding:12px;border:1px dashed color-mix(in srgb,var(--mc) 55%,transparent);border-radius:14px;background:rgba(0,0,0,.2)}.machine-signal small{color:#8995a3;letter-spacing:3px}.machine-signal strong{font-size:24px;color:#fff;text-shadow:0 0 20px var(--mc)}.machine-controls{flex:1;min-height:0;display:grid;grid-template-columns:1fr 1fr;gap:10px}.machine-controls button{border:2px solid color-mix(in srgb,var(--mc) 42%,#273041);border-radius:18px;background:linear-gradient(160deg,color-mix(in srgb,var(--mc) 14%,#1a2030),#111625);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 10px 28px rgba(0,0,0,.28)}.machine-controls button span{font-size:52px;color:var(--mc);filter:drop-shadow(0 0 16px var(--mc))}.machine-controls button b{font-size:15px}.machine-controls button:active{transform:scale(.96);background:color-mix(in srgb,var(--mc) 25%,#121827)}.machine-locked .machine-controls button{opacity:.38;filter:saturate(.3)}.machine-error{animation:machinePhoneError .35s}.machine-error .machine-signal{border-color:#ff4d6d;background:rgba(255,77,109,.18)}@keyframes machinePhoneError{50%{transform:translateX(8px)}}
@media(max-width:600px) and (max-height:700px){.machine-pad{gap:7px;padding:8px}.machine-signal{padding:8px}.machine-signal strong{font-size:20px}.machine-controls button span{font-size:43px}}

/* Dedykowane filmowe przejścia Originals */
.files-cinematic,.machine-cinematic,.heist-cinematic{position:absolute;inset:0;z-index:20;pointer-events:none;display:flex;align-items:center;justify-content:center;flex-direction:column;opacity:0;visibility:hidden}
.files-cinematic{background:#d9c28b;color:#221a0f;transform-origin:center}.files-cinematic i{position:absolute;inset:7%;border:2px solid rgba(34,26,15,.4)}.files-cinematic strong{font-size:clamp(46px,7vw,92px);letter-spacing:6px;border:7px solid currentColor;padding:10px 20px;transform:rotate(-6deg)}.files-cinematic span{margin-top:20px;letter-spacing:8px;font-weight:900}.files-cinematic.play{visibility:visible;animation:filesCut 1.15s ease both}
.machine-cinematic{background:radial-gradient(circle,#133e46,#050a10 68%);color:#5eead4}.machine-cinematic i{position:absolute;width:70vmax;height:70vmax;border:2px solid currentColor;border-radius:50%;box-shadow:0 0 80px currentColor,inset 0 0 80px currentColor}.machine-cinematic strong{font-size:clamp(55px,9vw,120px);letter-spacing:8px;text-shadow:0 0 35px currentColor}.machine-cinematic span{letter-spacing:5px}.machine-cinematic.danger{color:#ff4d6d;background:radial-gradient(circle,#4b101d,#09050a 70%)}.machine-cinematic.play{visibility:visible;animation:machinePulseCut 1.05s ease both}.machine-cinematic.play i{animation:machineRingCut 1.05s ease both}
.heist-cinematic{background:#05070c;color:#ffd166;flex-direction:row;gap:25px}.heist-cinematic i{height:130%;width:3px;background:#ff334f;box-shadow:0 0 28px #ff334f;transform:rotate(22deg)}.heist-cinematic strong{font-size:clamp(50px,8vw,105px);letter-spacing:9px;text-shadow:0 0 35px rgba(255,209,102,.45)}.heist-cinematic.play{visibility:visible;animation:heistCut 1.05s cubic-bezier(.7,0,.3,1) both}
@keyframes filesCut{0%{opacity:0;transform:scale(1.35) rotate(3deg)}18%,68%{opacity:1;transform:scale(1) rotate(0)}100%{opacity:0;transform:scale(.92)}}@keyframes machinePulseCut{0%{opacity:0}18%,66%{opacity:1}100%{opacity:0}}@keyframes machineRingCut{from{transform:scale(.2);opacity:0}45%{opacity:1}to{transform:scale(1.4);opacity:0}}@keyframes heistCut{0%{opacity:0;clip-path:polygon(50% 0,50% 0,50% 100%,50% 100%)}22%,68%{opacity:1;clip-path:polygon(0 0,100% 0,100% 100%,0 100%)}100%{opacity:0;clip-path:polygon(0 48%,100% 48%,100% 52%,0 52%)}}

/* IMPREZOWEGRY.PL ORIGINALS — Napad */
.heist-tv{position:relative;width:calc(100vw - 48px);height:calc(100vh - 48px);overflow:hidden;border-radius:28px;padding:20px 28px;display:flex;flex-direction:column;background:radial-gradient(circle at 52% 44%,#282311,#08090f 66%);border:1px solid rgba(255,209,102,.24);box-shadow:inset 0 0 120px rgba(0,0,0,.62)}.heist-lasers{position:absolute;inset:-20%;opacity:.17;background:repeating-linear-gradient(112deg,transparent 0 90px,#ff334f 91px 93px,transparent 94px 180px);animation:heistLasers 9s linear infinite}.heist-tv header,.heist-tv footer{position:relative;z-index:4;display:flex;align-items:center;justify-content:space-between;letter-spacing:3px}.heist-tv header span{color:#ffd166;font-size:12px;font-weight:1000}.heist-tv header b{color:#a79e7d}.heist-tv main{position:relative;z-index:3;flex:1;min-height:0;display:grid;grid-template-columns:1.1fr 280px 1fr;align-items:center;gap:18px}.heist-mission>small{color:#ffd166;letter-spacing:5px;font-weight:900}.heist-mission h2{font-size:clamp(35px,4.8vw,68px);line-height:.98;text-transform:none;letter-spacing:-1px;margin:8px 0}.heist-mission p{color:#aaa58f;font-size:17px;max-width:530px}.heist-pair{display:flex;align-items:center;gap:8px;margin-top:15px}.heist-pair article{min-width:145px;padding:8px 12px;border-radius:12px;border:1px solid var(--hc);background:rgba(10,12,20,.88);display:grid;grid-template-columns:auto 1fr;column-gap:8px}.heist-pair article small{grid-column:1/-1;color:var(--hc);font-size:9px;letter-spacing:2px}.heist-pair article span{color:var(--hc);font-size:23px}.heist-pair article b{align-self:center}.heist-pair>i{color:#ffd166;font-style:normal}.heist-vault{width:250px;height:250px;margin:auto;border-radius:50%;border:10px double #8d7c44;background:radial-gradient(circle,#3a3217,#0b0c12 65%);box-shadow:0 0 55px rgba(255,209,102,.2),inset 0 0 55px rgba(0,0,0,.7);display:grid;place-items:center;position:relative}.heist-vault>i{position:absolute;inset:13px;border:2px dashed #ffd166;border-radius:50%;animation:telOrbit 14s linear infinite}.heist-vault div{text-align:center;display:flex;flex-direction:column}.heist-vault small{color:#a79e7d;letter-spacing:4px}.heist-vault strong{font-size:32px;color:#ffd166}.heist-vault span{letter-spacing:6px;color:#ffd166}.heist-crew{display:grid;grid-template-columns:repeat(2,1fr);gap:7px}.heist-crew article{min-width:0;padding:7px 9px;border:1px solid color-mix(in srgb,var(--hc) 38%,transparent);border-radius:11px;background:rgba(10,12,20,.83);display:flex;align-items:center;gap:8px}.heist-crew article>span{width:27px;color:var(--hc);font-size:22px;text-align:center}.heist-crew article div{min-width:0;display:flex;flex-direction:column}.heist-crew article small{color:var(--hc);font-size:8px;letter-spacing:1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.heist-crew article b{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.heist-crew article em{margin-left:auto;color:#a79e7d;font-style:normal;font-size:11px}.heist-alarm{flex:1;display:flex;align-items:center;gap:12px;color:#a79e7d;font-size:11px}.heist-alarm>i{height:8px;max-width:600px;flex:1;border-radius:20px;background:#272730;overflow:hidden}.heist-alarm>i b{display:block;height:100%;background:linear-gradient(90deg,#ffd166,#ff334f);transition:width .45s}.heist-alarm strong,#heist-clock{color:#ffd166;font-size:18px}@keyframes heistLasers{to{transform:translate(180px,90px)}}
.heist-pad{--hc:#ffd166;display:flex;flex:1;min-height:0;flex-direction:column;gap:10px;padding:10px;border:1px solid color-mix(in srgb,var(--hc) 40%,transparent);border-radius:20px;background:radial-gradient(circle at 50% 15%,color-mix(in srgb,var(--hc) 14%,#11131d),#090b13 72%);overflow:hidden}.heist-role{display:flex;align-items:center;gap:9px;padding-bottom:8px;border-bottom:1px solid rgba(255,255,255,.08)}.heist-role>span{font-size:32px;color:var(--hc);filter:drop-shadow(0 0 12px var(--hc))}.heist-role div{display:flex;flex-direction:column}.heist-role small{color:#8f927f;font-size:10px;letter-spacing:2px}.heist-role b{color:var(--hc);font-size:13px;letter-spacing:1px}.heist-role em{margin-left:auto;color:#ff5b70;font-style:normal;font-size:11px;font-weight:900}.heist-orders{flex:1;min-height:0;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:auto 1fr 1fr;gap:8px}.heist-orders>small{grid-column:1/-1;text-align:center;color:#969786;letter-spacing:3px}.heist-orders button{display:flex;align-items:center;justify-content:center;gap:8px;border:1px solid rgba(255,209,102,.38);border-radius:15px;background:linear-gradient(145deg,rgba(74,58,22,.62),rgba(15,17,26,.94));font-weight:900}.heist-orders button:last-child{grid-column:1/-1}.heist-orders button span{color:#ffd166;font-size:25px}.heist-secret{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:18px;border:2px dashed var(--hc);border-radius:18px;background:color-mix(in srgb,var(--hc) 10%,transparent)}.heist-secret small{color:var(--hc);letter-spacing:4px}.heist-secret strong{font-size:clamp(22px,7vw,31px);line-height:1.15;margin:14px 0;color:#fff}.heist-secret span{color:#a5a798}.heist-secret span b{color:var(--hc)}.heist-wait{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:12px}.heist-wait span{font-size:88px;color:var(--hc);filter:drop-shadow(0 0 28px var(--hc))}.heist-wait b{font-size:20px}.heist-loot{text-align:center;color:#8f927f;letter-spacing:2px}.heist-loot b{color:#ffd166}.mode-failed{animation:machinePhoneError .35s;background:radial-gradient(circle,#4b101d,#090b13 72%)}.mode-success .heist-wait span{color:#8bff6b}@media(max-width:600px) and (max-height:700px){.heist-pad{gap:7px;padding:8px}.heist-role>span{font-size:27px}.heist-orders{gap:6px}.heist-orders button{font-size:13px}.heist-secret{padding:12px}}
/* ===== IMPREZOWEGRY.PL ORIGINALS: Reżyser Imprezy ===== */
.director-tv{--director:#ffd166;position:relative;width:calc(100vw - 48px);height:calc(100vh - 48px);overflow:hidden;border:1px solid rgba(255,209,102,.38);border-radius:28px;background:radial-gradient(circle at 18% 25%,#392713 0,#12100f 31%,#050608 72%);box-shadow:inset 0 0 100px #000,0 30px 100px rgba(0,0,0,.55);display:grid;grid-template-rows:76px minmax(0,1fr) 54px;padding:0 34px;color:#f8f1df}
.director-tv:before{content:'';position:absolute;inset:0;pointer-events:none;opacity:.16;background:repeating-linear-gradient(0deg,transparent 0 3px,rgba(255,255,255,.08) 4px),linear-gradient(105deg,transparent 42%,rgba(255,209,102,.09) 50%,transparent 58%);mix-blend-mode:screen}
.director-beams{position:absolute;inset:-55% -30%;pointer-events:none;background:conic-gradient(from 248deg at 48% 0,transparent 0 4%,rgba(255,225,156,.12) 8%,transparent 13% 48%,rgba(255,215,125,.1) 54%,transparent 61%);filter:blur(16px);animation:directorBeams 11s ease-in-out infinite alternate;transform-origin:50% 0}
.director-aperture{position:absolute;width:540px;height:540px;right:-230px;top:50%;transform:translateY(-50%);border:1px solid rgba(255,209,102,.15);border-radius:50%;box-shadow:0 0 0 70px rgba(255,209,102,.025),0 0 0 140px rgba(255,209,102,.018);animation:directorLens 22s linear infinite}.director-aperture:before,.director-aperture:after{content:'';position:absolute;inset:80px;border:1px dashed rgba(255,209,102,.17);border-radius:50%}.director-aperture:after{inset:175px;background:radial-gradient(circle,rgba(255,209,102,.16),transparent 65%);box-shadow:0 0 55px rgba(255,209,102,.13)}
.director-tv>header,.director-tv>footer{position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between;border-color:rgba(255,209,102,.18);letter-spacing:3px}.director-tv>header{border-bottom:1px solid rgba(255,209,102,.18)}.director-tv>header span{color:var(--director);font-size:12px;font-weight:900}.director-tv>header b{font-size:20px;letter-spacing:5px}.director-tv>footer{border-top:1px solid rgba(255,209,102,.18);color:#988f7a;font-size:10px}.director-tv>footer b{color:var(--director);font-size:18px}
.director-tv>main{position:relative;z-index:2;min-height:0;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(480px,.95fr);gap:42px;align-items:center;padding:24px 0}.director-copy{min-width:0}.director-copy>small{display:block;color:var(--director);font-weight:900;font-size:12px;letter-spacing:5px;margin-bottom:13px}.director-copy h2{max-width:720px;font-size:clamp(44px,5.4vw,78px);line-height:.92;letter-spacing:-3px;text-wrap:balance;text-shadow:0 8px 44px #000;margin:0}.director-copy p{max-width:650px;margin-top:22px;color:#b7ad98;font-size:clamp(15px,1.55vw,21px);line-height:1.4}.director-next{display:inline-flex;align-items:center;gap:15px;margin-top:27px;padding:12px 17px;border-left:4px solid var(--director);background:linear-gradient(90deg,rgba(255,209,102,.13),transparent);font-size:10px;letter-spacing:3px;color:#9e927a}.director-next b{font-size:17px;color:#fff;letter-spacing:0}
.director-program{display:grid;gap:7px}.director-program article{min-height:49px;display:grid;grid-template-columns:36px minmax(0,1fr) auto;gap:10px;align-items:center;padding:6px 12px;border:1px solid rgba(255,255,255,.07);border-radius:12px;background:rgba(7,8,10,.65);opacity:.48;transition:.35s}.director-program article.next{opacity:1;border-color:rgba(255,209,102,.62);background:linear-gradient(90deg,rgba(255,209,102,.16),rgba(8,8,9,.82));box-shadow:0 0 28px rgba(255,209,102,.08);transform:translateX(-10px)}.director-program article.done{opacity:.67}.director-program article>span{font-size:24px;text-align:center}.director-program article div{min-width:0;display:flex;flex-direction:column}.director-program article small{color:#827966;font-size:8px;letter-spacing:2px}.director-program article b{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.director-program article em{font-style:normal;color:var(--director);font-size:9px;font-weight:900;letter-spacing:2px}
.director-board{display:grid;grid-template-columns:1fr 1fr;gap:5px;margin-top:13px}.director-board article{min-width:0;display:grid;grid-template-columns:24px 28px minmax(0,1fr) auto;align-items:center;gap:7px;padding:5px 8px;border:1px solid color-mix(in srgb,var(--c) 20%,transparent);border-radius:10px;background:rgba(8,9,11,.72)}.director-board article>strong{font-size:11px;color:var(--director);text-align:center}.director-board article>b{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.director-board article>span{font-size:11px;color:var(--director);font-weight:900}
.director-cut{position:absolute;z-index:15;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#050506;transform:translateY(-110%);pointer-events:none}.director-cut i{display:block;width:min(560px,54vw);height:115px;border:3px solid #e9d9b0;border-radius:3px;background:repeating-linear-gradient(135deg,#eee8d8 0 32px,#121212 33px 64px);box-shadow:0 24px 70px #000;transform-origin:0 100%}.director-cut i:after{content:'';display:block;height:75px;margin-top:40px;border:3px solid #e9d9b0;background:#111}.director-cut strong{margin-top:54px;color:var(--director);font-size:clamp(36px,6vw,78px);line-height:1;letter-spacing:7px;text-align:center}.director-cut span{color:#8e8573;font-size:11px;letter-spacing:6px;margin-top:13px}.director-cut.play{animation:directorCut 1.28s cubic-bezier(.7,0,.2,1) both}.director-cut.play i{animation:directorClap .42s .32s both}
@keyframes directorBeams{to{transform:rotate(13deg) scale(1.08)}}@keyframes directorLens{to{transform:translateY(-50%) rotate(360deg)}}@keyframes directorCut{0%{transform:translateY(-110%)}18%,68%{transform:translateY(0)}100%{transform:translateY(110%)}}@keyframes directorClap{0%{transform:rotate(-15deg)}70%{transform:rotate(-15deg)}100%{transform:rotate(0)}}
.director-pad{position:relative;flex:1;min-height:0;overflow:hidden;border:1px solid rgba(255,209,102,.42);border-radius:23px;background:radial-gradient(circle at 50% 12%,#4a3217,#11100f 42%,#070809 76%);display:grid;grid-template-rows:minmax(150px,42%) 1fr;padding:13px;color:#f8f1df}.director-pad:after{content:'';position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(0deg,transparent 0 3px,rgba(255,255,255,.025) 4px)}.director-clap{position:relative;z-index:1;align-self:center;justify-self:center;width:min(230px,75vw);height:128px;border:2px solid #e8d9b5;background:#0b0b0c;display:grid;place-content:center;text-align:center;box-shadow:0 18px 42px #000;transform:rotate(-2deg)}.director-clap i{position:absolute;left:-2px;right:-2px;top:-27px;height:28px;border:2px solid #e8d9b5;background:repeating-linear-gradient(135deg,#e8d9b5 0 20px,#111 21px 40px);transform:rotate(-4deg);transform-origin:left bottom}.director-clap span{font-size:35px}.director-clap small{color:#b2a581;font-size:8px;letter-spacing:3px}.director-clap b{color:#ffd166;font-size:18px;letter-spacing:5px}.director-pad-copy{position:relative;z-index:1;min-height:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.director-pad-copy>small{color:#ffd166;font-size:9px;font-weight:900;letter-spacing:4px}.director-pad-copy>strong{max-width:100%;font-size:clamp(20px,6vw,29px);line-height:1.06;margin:7px 0 13px;text-wrap:balance}.director-pad-copy p{color:#9a907c;font-size:11px;letter-spacing:1px}.director-pad-copy em{color:#ffd166;font-size:clamp(35px,11vw,52px);font-weight:1000;font-style:normal;line-height:1.1;text-shadow:0 0 28px rgba(255,209,102,.3)}.director-pad-copy>span{color:#b7ad98;font-size:11px;text-transform:uppercase;letter-spacing:3px}.director-pad.phase-finale{background:radial-gradient(circle at 50% 35%,#5a3c15,#11100f 55%,#070809)}.director-pad.phase-finale .director-clap{animation:directorPhoneFinale 1.2s ease-in-out infinite alternate}@keyframes directorPhoneFinale{to{transform:rotate(2deg) scale(1.025);box-shadow:0 16px 60px rgba(255,209,102,.22)}}
@media(max-width:600px) and (max-height:700px){.director-pad{grid-template-rows:minmax(125px,39%) 1fr;padding:9px}.director-clap{height:105px;width:min(205px,70vw)}.director-clap i{top:-23px;height:24px}.director-clap span{font-size:29px}.director-pad-copy>strong{margin:5px 0 8px}.director-pad-copy em{font-size:36px}}

/* Gala Wieczoru — sześć automatycznych kadrów finałowych */
.director-tv>main>[class^="gala-"]{grid-column:1/-1;position:relative;width:100%;height:100%;min-height:0;overflow:hidden;animation:galaSceneIn .75s cubic-bezier(.2,1,.25,1) both}.director-tv>main>[class^="gala-"]>small{color:#ffd166;font-weight:900;font-size:11px;letter-spacing:6px}.director-tv>main>[class^="gala-"] h2{margin:0;color:#f7f0df;text-shadow:0 8px 40px #000}
.gala-opening{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.gala-opening h2{font-size:clamp(56px,8vw,112px);line-height:.82;letter-spacing:-5px;margin:16px 0 21px!important}.gala-opening p{font-size:20px;color:#b8ae98}.gala-opening>div{width:min(670px,70vw);display:flex;align-items:center;gap:18px;margin-top:33px;color:#ffd166;font-size:12px;font-weight:900;letter-spacing:6px}.gala-opening>div i{height:1px;flex:1;background:linear-gradient(90deg,transparent,#ffd166)}.gala-opening>div i:last-child{transform:scaleX(-1)}
.gala-highlights{display:flex;flex-direction:column;justify-content:center}.gala-highlights h2{font-size:clamp(38px,4.8vw,68px);letter-spacing:-2px;margin:5px 0 24px!important}.gala-highlights>div{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.gala-highlights article{min-width:0;height:260px;padding:22px 17px;border:1px solid rgba(255,209,102,.13);border-radius:18px;background:linear-gradient(160deg,rgba(255,209,102,.09),rgba(5,6,8,.88));display:flex;flex-direction:column;justify-content:flex-end;filter:grayscale(.8);opacity:.34;transform:scale(.94);transition:.55s}.gala-highlights article.active{filter:none;opacity:1;transform:scale(1) translateY(-10px);border-color:#ffd166;box-shadow:0 20px 65px rgba(255,209,102,.14)}.gala-highlights article.past{filter:none;opacity:.66}.gala-highlights article>span{font-size:58px;margin-bottom:auto}.gala-highlights article small{color:#8e846e;letter-spacing:3px}.gala-highlights article b{font-size:18px}.gala-highlights article strong{color:#ffd166;font-size:25px;margin-top:16px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.gala-award{display:grid;grid-template-columns:160px 1fr;grid-template-rows:auto auto auto auto 1fr;column-gap:28px;align-content:center;padding:25px 10%}.gala-award .gala-award-no{position:absolute;right:4%;top:50%;transform:translateY(-50%);font-size:310px;line-height:1;font-weight:1000;color:rgba(255,209,102,.035)}.gala-award>small{grid-column:2;color:var(--c)!important}.gala-award>.av{grid-row:1/6;align-self:center;width:140px!important;height:140px!important;border:4px solid var(--c);box-shadow:0 0 65px color-mix(in srgb,var(--c) 38%,transparent)}.gala-award>b{grid-column:2;font-size:25px;margin-top:5px}.gala-award h2{grid-column:2;font-size:clamp(50px,6.2vw,88px);line-height:.9;letter-spacing:-3px;color:var(--c)!important;margin:8px 0 16px!important}.gala-award p{grid-column:2;color:#c4baa5;font-size:18px;max-width:690px}.gala-award>span{grid-column:2;color:#ffd166;font-size:13px;font-weight:900;letter-spacing:4px;margin-top:18px}
.gala-podium{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.gala-podium h2{font-size:clamp(42px,5.3vw,75px);line-height:1;margin:4px 0 24px!important}.gala-podium>div{width:min(900px,85vw);height:300px;display:flex;align-items:flex-end;justify-content:center;gap:12px}.gala-podium article{position:relative;width:29%;height:190px;border:1px solid rgba(255,255,255,.13);border-radius:20px 20px 5px 5px;background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(7,8,9,.9));display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;transition:.7s;overflow:hidden}.gala-podium article.place-1{height:280px;order:2;border-color:#ffd166}.gala-podium article.place-2{height:235px;order:1;border-color:#bdc7d5}.gala-podium article.place-3{order:3;border-color:#c98156}.gala-podium article.locked{filter:brightness(.25);transform:scale(.88)}.gala-podium article.show{animation:galaPodium .7s cubic-bezier(.2,1.5,.3,1) both}.gala-podium article>span{position:absolute;left:13px;top:5px;font-size:58px;font-weight:1000;color:rgba(255,255,255,.09)}.gala-podium article>i{font-style:normal;font-size:68px;color:#38352e}.gala-podium article b{font-size:20px}.gala-podium article strong{color:#ffd166}
.gala-winner{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.gala-winner:before{content:'';position:absolute;width:700px;height:700px;border-radius:50%;background:conic-gradient(from 0deg,transparent,rgba(255,209,102,.18),transparent 18%,rgba(255,209,102,.12),transparent 42%);animation:directorLens 12s linear infinite}.gala-winner>*{position:relative}.gala-winner .gala-crown{position:absolute;top:2%;font-size:240px;line-height:1;color:rgba(255,209,102,.05)}.gala-winner>.av{width:130px!important;height:130px!important;border:5px solid var(--c);box-shadow:0 0 85px var(--c);margin:13px}.gala-winner h2{font-size:clamp(58px,7.5vw,105px);line-height:.82;letter-spacing:-4px}.gala-winner>b{font-size:22px;color:#ffd166;letter-spacing:8px;margin-top:15px}.gala-winner p{color:#c4baa5;margin-top:16px;font-size:14px;letter-spacing:3px}
.gala-poster{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.gala-poster h2{font-size:clamp(38px,4.4vw,62px);line-height:1;margin:4px 0 18px!important}.gala-poster>div{width:min(1050px,88vw);display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.gala-poster article{min-width:0;display:grid;grid-template-columns:48px 1fr;grid-template-rows:1fr 1fr;column-gap:8px;text-align:left;align-items:end;padding:7px 9px;border:1px solid color-mix(in srgb,var(--c) 33%,transparent);border-radius:12px;background:rgba(7,8,10,.68);animation:galaCast .5s calc(var(--i)*.08s) both}.gala-poster article>.av{grid-row:1/3;width:43px!important;height:43px!important}.gala-poster article b{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gala-poster article span{align-self:start;color:var(--c);font-size:8px;letter-spacing:1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gala-poster>strong{color:#ffd166;font-size:18px;letter-spacing:5px;margin-top:23px}.gala-poster>p{color:#958b76;margin-top:5px}
.director-ovations{position:absolute;z-index:12;inset:0;pointer-events:none;overflow:hidden}.director-ovations>i{position:absolute;left:var(--x);bottom:-70px;font-style:normal;font-size:54px;filter:drop-shadow(0 7px 14px #000);animation:galaOvation 2.25s ease-out forwards}.director-ovations>i small{display:block;color:#fff;font-size:10px;text-align:center;font-weight:900;text-shadow:0 2px 7px #000}
.director-pad.phase-finale{display:grid;grid-template-rows:minmax(0,1fr) auto;gap:10px;padding:12px}.director-pad-gala{position:relative;z-index:1;min-height:0;border:1px solid rgba(255,209,102,.2);border-radius:18px;background:radial-gradient(circle at 50% 20%,rgba(255,209,102,.14),rgba(0,0,0,.2) 70%);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:18px}.director-pad-gala>small{color:#a99d82;font-size:8px;letter-spacing:3px}.director-pad-gala>b{color:#ffd166;font-size:12px;letter-spacing:4px;margin:7px}.director-pad-gala>strong{font-size:clamp(32px,10vw,48px);line-height:1;color:#fff;text-wrap:balance;text-shadow:0 0 35px rgba(255,209,102,.25)}.director-pad-gala>p{color:#a99f8c;font-size:11px;line-height:1.35;margin-top:13px}.director-reactions{position:relative;z-index:1}.director-reactions>small{display:block;text-align:center;color:#a99d82;font-size:8px;letter-spacing:3px;margin-bottom:7px}.director-reactions>div{display:grid;grid-template-columns:repeat(4,1fr);gap:7px}.director-reactions button{height:72px;border:1px solid rgba(255,209,102,.26);border-radius:15px;background:linear-gradient(160deg,rgba(255,209,102,.12),rgba(9,9,10,.9));font-size:30px;touch-action:manipulation}.director-reactions button:active,.director-reactions button.hit{animation:reactionHit .3s}
@keyframes galaSceneIn{from{opacity:0;transform:scale(1.06);filter:blur(12px)}}@keyframes galaPodium{from{opacity:0;transform:translateY(120px)}}@keyframes galaCast{from{opacity:0;transform:translateY(25px)}}@keyframes galaOvation{15%{opacity:1}100%{transform:translate(var(--drift),-760px) rotate(18deg) scale(1.3);opacity:0}}@keyframes reactionHit{50%{transform:scale(.86);filter:brightness(1.8)}}
@media(max-width:600px) and (max-height:700px){.director-pad.phase-finale{padding:8px;gap:7px}.director-pad-gala{padding:11px}.director-pad-gala>strong{font-size:31px}.director-reactions button{height:60px;font-size:26px}}

.gala-award>.av-dot{width:140px!important;height:140px!important;border:4px solid var(--c);box-shadow:0 0 65px color-mix(in srgb,var(--c) 38%,transparent)}
.gala-podium article>.av-dot{width:58px!important;height:58px!important;border:3px solid rgba(255,255,255,.65);box-shadow:0 0 28px currentColor}.gala-podium article.place-1>.av-dot{width:78px!important;height:78px!important}
.gala-winner>.av-dot{width:130px!important;height:130px!important;border:5px solid var(--c);box-shadow:0 0 85px var(--c);margin:13px}.gala-poster article>.av-dot{width:43px!important;height:43px!important}

/* Monumentalna scenografia ceremonii Originals */
.director-tv:has(.gala-set){background:radial-gradient(ellipse at 50% 42%,#2c1b12 0,#0c0909 48%,#030405 82%)}.director-tv:has(.gala-set)>header{background:linear-gradient(90deg,rgba(80,8,20,.75),transparent 28%,transparent 72%,rgba(80,8,20,.75))}.director-tv:has(.gala-set)>main{perspective:1100px}.director-tv:has(.gala-set)>main h2{font-family:Georgia,'Times New Roman',serif;font-weight:700}.gala-set{position:absolute;z-index:1;inset:76px 0 54px;overflow:hidden;pointer-events:none}.gala-set:after{content:'';position:absolute;left:12%;right:12%;bottom:-22%;height:48%;background:linear-gradient(160deg,rgba(255,209,102,.2),rgba(45,6,12,.88));clip-path:polygon(25% 0,75% 0,100% 100%,0 100%);filter:drop-shadow(0 -3px 16px rgba(255,209,102,.16))}.gala-arch{position:absolute;inset:4% 8% 2%;border:2px solid rgba(255,209,102,.28);border-bottom:0;border-radius:50% 50% 0 0/24% 24% 0 0;box-shadow:0 0 28px rgba(255,209,102,.08),inset 0 0 28px rgba(255,209,102,.05)}.gala-arch i{position:absolute;inset:22px;border:1px solid rgba(255,209,102,.18);border-bottom:0;border-radius:50% 50% 0 0/24% 24% 0 0}.gala-arch i:nth-child(2){inset:48px}.gala-arch i:nth-child(3){inset:74px}.gala-curtain{position:absolute;z-index:3;top:-8%;bottom:-5%;width:25%;background:repeating-linear-gradient(90deg,#26020b 0,#770d25 11%,#35030e 22%);filter:drop-shadow(0 0 20px #000);box-shadow:inset 0 0 45px #160006}.gala-curtain.left{left:-13%;border-radius:0 48% 35% 0}.gala-curtain.right{right:-13%;border-radius:48% 0 0 35%}.gala-set.cue .gala-curtain.left{animation:galaCurtainLeft 1.2s cubic-bezier(.65,0,.2,1) both}.gala-set.cue .gala-curtain.right{animation:galaCurtainRight 1.2s cubic-bezier(.65,0,.2,1) both}.gala-spot{position:absolute;top:-35%;width:14%;height:115%;background:linear-gradient(180deg,rgba(255,237,178,.24),rgba(255,224,143,.03) 72%,transparent);clip-path:polygon(44% 0,56% 0,100% 100%,0 100%);filter:blur(8px);transform-origin:50% 0}.gala-spot.s1{left:20%;animation:galaSpot1 6s ease-in-out infinite alternate}.gala-spot.s2{right:20%;animation:galaSpot2 7s ease-in-out infinite alternate}.gala-audience{position:absolute;z-index:5;left:0;right:0;bottom:-8px;height:48px;background:radial-gradient(circle at 3% 40%,#09090a 0 14px,transparent 15px) 0 0/54px 45px repeat-x,linear-gradient(transparent,#050506 50%)}.gala-flashes{position:absolute;z-index:6;inset:0;background:radial-gradient(circle at 17% 82%,#fff 0 2px,transparent 18px),radial-gradient(circle at 83% 78%,#fff 0 2px,transparent 18px),radial-gradient(circle at 72% 88%,#fff 0 1px,transparent 14px);opacity:0}.gala-set.cue .gala-flashes{animation:galaFlashes 1.5s .55s both}
.gala-redcarpet{position:absolute;left:20%;right:20%;bottom:-4%;height:46%;background:linear-gradient(90deg,#37050e,#aa1735 50%,#37050e);clip-path:polygon(37% 0,63% 0,100% 100%,0 100%);opacity:.48;box-shadow:0 0 40px rgba(168,16,50,.3)}.gala-redcarpet i{position:absolute;top:0;bottom:0;width:2px;background:linear-gradient(#ffd166,transparent)}.gala-redcarpet i:first-child{left:22%;transform:rotate(9deg)}.gala-redcarpet i:last-child{right:22%;transform:rotate(-9deg)}.gala-seal{position:absolute;top:6%;width:82px;height:82px;border:2px solid #ffd166;border-radius:50%;display:grid;place-items:center;font:54px/1 Georgia,serif;color:#ffd166;background:#16070b;box-shadow:0 0 0 8px rgba(255,209,102,.06),0 0 45px rgba(255,209,102,.2)}.gala-opening>*:not(.gala-redcarpet){z-index:2}
.gala-highlights article p{color:#b9ae98;font-size:11px;line-height:1.25;margin-top:6px}.gala-highlights article .gala-nominees{margin-top:7px;padding-top:6px;border-top:1px solid rgba(255,209,102,.16);color:#756d5e;font-size:7px;letter-spacing:1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gala-highlights article.active .gala-nominees{color:#c7b98e}
.gala-envelope{position:absolute;z-index:3;right:5%;bottom:8%;width:230px;height:135px;border:2px solid #e7cf92;background:linear-gradient(145deg,#f4e5ba,#aa8a48);color:#21170b;box-shadow:0 22px 55px #000;display:flex;flex-direction:column;align-items:center;justify-content:center;transform:rotate(-4deg);animation:galaEnvelope 1s .4s cubic-bezier(.2,1.35,.3,1) both}.gala-envelope i{position:absolute;left:-2px;right:-2px;top:-2px;height:70px;background:linear-gradient(145deg,#a78745,#f8edc8);clip-path:polygon(0 0,100% 0,50% 100%);transform-origin:50% 0;animation:galaEnvelopeOpen .65s .9s both}.gala-envelope span,.gala-envelope b{position:relative;z-index:2}.gala-envelope span{font-size:8px;letter-spacing:4px}.gala-envelope b{font:700 20px/1 Georgia,serif;margin-top:8px;text-transform:uppercase}
.gala-trophy{position:absolute!important;left:7%;top:50%;transform:translateY(-50%);width:130px;height:270px;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;filter:drop-shadow(0 20px 25px #000)}.gala-trophy:before{content:'';position:absolute;top:18px;width:82px;height:190px;border-radius:50% 50% 28% 28%;background:linear-gradient(90deg,#8b6928,#ffe7a0 42%,#ae7f28 70%,#5c3e13);clip-path:polygon(40% 0,60% 0,78% 22%,68% 65%,85% 90%,15% 90%,32% 65%,22% 22%)}.gala-trophy i{position:absolute;z-index:2;top:55px;font-style:normal;font-size:35px;color:#fff0b5}.gala-trophy b{position:relative;z-index:3;width:118px;padding:9px;background:#17100a;border:2px solid #d6ad56;color:#ffd166;font-size:9px;letter-spacing:2px}.gala-winner{padding-left:130px}.gala-winner h2{font-style:italic}
@keyframes galaCurtainLeft{0%,35%{transform:translateX(65%) scaleX(1.35)}100%{transform:translateX(0) scaleX(1)}}@keyframes galaCurtainRight{0%,35%{transform:translateX(-65%) scaleX(1.35)}100%{transform:translateX(0) scaleX(1)}}@keyframes galaSpot1{to{transform:rotate(20deg)}}@keyframes galaSpot2{to{transform:rotate(-20deg)}}@keyframes galaFlashes{0%,100%{opacity:0}20%,38%,60%{opacity:1}28%,48%,75%{opacity:0}}@keyframes galaEnvelope{from{opacity:0;transform:translate(180px,80px) rotate(16deg) scale(.5)}}@keyframes galaEnvelopeOpen{to{transform:rotateX(155deg)}}

.gala-opening>.gala-redcarpet{display:block;width:auto;left:20%;right:20%;height:46%;margin:0;gap:0}.gala-opening>.gala-seal{width:82px;height:82px;margin:0;gap:0;display:grid;font:54px/1 Georgia,'Times New Roman',serif}

/* Film Wieczoru — lekki trailer składany na żywo na telewizorze */
.gala-film{isolation:isolate;background:#05070b;border:1px solid rgba(255,255,255,.09);box-shadow:0 24px 90px #000;display:grid;grid-template-rows:48px minmax(0,1fr) 55px;padding:0 22px!important}.gala-film:before{content:'';position:absolute;inset:0;z-index:-3;background:radial-gradient(circle at 28% 50%,var(--film-glow,rgba(255,209,102,.25)),transparent 48%),linear-gradient(120deg,#070911,#10121b 55%,#050609)}.gala-film>header,.gala-film>footer{position:relative;z-index:6;display:flex;align-items:center;justify-content:space-between;font-size:9px;font-weight:900;letter-spacing:3px;color:#81899a}.gala-film>header{border-bottom:1px solid rgba(255,255,255,.12)}.gala-film>header span{color:#fff}.gala-film>header b{color:#ffd166}.gala-film>footer{border-top:1px solid rgba(255,255,255,.12)}.gala-film>footer>strong{color:#ff3854;animation:filmRec .7s steps(2) infinite}.gala-film>footer>div{width:min(780px,72vw);display:grid;grid-template-columns:repeat(4,1fr);gap:5px}.gala-film>footer i{position:relative;height:20px;color:#555d6d;font-style:normal;overflow:hidden}.gala-film>footer i>b{display:block;height:3px;margin-bottom:3px;background:#292d38}.gala-film>footer i.active>b{background:#ffd166;animation:filmProgress 4s linear both}.gala-film>footer i.done>b{background:#fff}.gala-film>footer i span{font-size:7px;letter-spacing:1px}.gala-film>footer i.active{color:#ffd166}.film-frame{position:relative;z-index:2;min-height:0;display:grid;grid-template-columns:minmax(420px,1.05fr) minmax(420px,.95fr);align-items:center;gap:38px;overflow:hidden}.film-copy{position:relative;z-index:5;align-self:center;padding:25px 10px}.film-copy:before{content:'';position:absolute;left:-32px;top:15px;bottom:15px;width:3px;background:linear-gradient(transparent,#ffd166,transparent)}.film-copy small{color:#ffd166;font-size:11px;font-weight:900;letter-spacing:7px}.film-copy h2{font-family:system-ui,sans-serif!important;font-size:clamp(62px,7.3vw,104px);line-height:.82;letter-spacing:-5px;text-transform:uppercase;margin:12px 0 20px!important;text-shadow:0 8px 45px #000}.film-copy p{color:#b9c0d0;font-size:17px;letter-spacing:1px}.film-grain{position:absolute;z-index:8;inset:0;pointer-events:none;opacity:.13;background:repeating-linear-gradient(0deg,transparent 0 3px,rgba(255,255,255,.08) 4px);mix-blend-mode:screen;animation:filmGrain .18s steps(2) infinite}.film-letterbox{position:absolute;z-index:7;left:0;right:0;height:11px;background:#000}.film-letterbox.top{top:0;animation:filmBarTop .7s both}.film-letterbox.bottom{bottom:0;animation:filmBarBottom .7s both}
.film-reflex{position:relative;width:420px;height:420px;margin:auto;display:grid;place-items:center}.film-reflex i{position:absolute;inset:9%;border:3px solid rgba(77,212,255,.42);border-radius:50%;box-shadow:0 0 45px rgba(77,212,255,.16)}.film-reflex i:nth-child(2){inset:20%;border-style:dashed;animation:filmSpin 2.2s linear infinite}.film-reflex i:nth-child(3){inset:32%;border-width:10px;border-color:#4dd4ff;animation:filmReflexPulse .42s ease-in-out infinite alternate}.film-reflex span{position:absolute;font-size:180px;filter:drop-shadow(0 0 45px #4dd4ff);animation:filmImpact .8s both}.film-reflex b{position:absolute;bottom:3%;padding:8px 18px;background:#07131c;border:1px solid #4dd4ff;color:#4dd4ff;font-size:24px;letter-spacing:4px}.film-reflex:after{content:'';position:absolute;inset:-20%;background:repeating-conic-gradient(from 0deg,rgba(77,212,255,.16) 0 1deg,transparent 2deg 13deg);mask:radial-gradient(circle,transparent 0 47%,#000 48%);animation:filmSpin 7s linear infinite reverse}
.film-files{position:relative;width:430px;height:340px;margin:auto;transform:rotate(-3deg);animation:filmFileDrop .8s cubic-bezier(.2,1.3,.3,1) both}.film-files>i{position:absolute;inset:25px 15px 0;background:linear-gradient(145deg,#b5914e,#59401c);clip-path:polygon(0 12%,34% 12%,41% 0,100% 0,100% 100%,0 100%);box-shadow:0 25px 65px #000}.film-files>div{position:absolute;inset:65px 0 20px 35px;padding:52px 30px 20px;background:#e7dfc8;color:#211d18;box-shadow:0 18px 45px #000;display:flex;flex-direction:column}.film-files>div:before{content:'ODTAJNIONE';position:absolute;right:25px;top:23px;padding:4px 9px;border:4px solid #ae2135;color:#ae2135;font-weight:1000;letter-spacing:3px;transform:rotate(9deg);animation:filmStamp .5s .55s both}.film-files small{font-size:9px;letter-spacing:5px;color:#7c7262}.film-files b{font:700 27px/1.05 Georgia,serif;margin:auto 0;color:#211d18}.film-files span{color:#ae2135;font-weight:1000;letter-spacing:3px}
.film-machine{position:relative;width:420px;height:420px;margin:auto;display:grid;place-items:center}.film-machine>i{position:absolute;inset:5%;border:3px solid rgba(77,212,255,.45);border-radius:50%;background:conic-gradient(#4dd4ff var(--h),rgba(77,212,255,.06) 0);mask:radial-gradient(circle,transparent 0 62%,#000 63%);animation:filmSpin 5s linear infinite}.film-machine>i:nth-child(2){inset:17%;border:2px dashed #ffd166;background:none;mask:none;animation:filmSpin 3s linear infinite reverse}.film-machine strong{font-size:94px;line-height:1;color:#fff;text-shadow:0 0 45px #4dd4ff}.film-machine strong small{font-size:25px;color:#4dd4ff}.film-machine>b{position:absolute;bottom:5%;color:#ffd166;font-size:16px;letter-spacing:5px}.film-machine:after{content:'';position:absolute;left:11%;right:11%;height:3px;background:#fff;box-shadow:0 0 24px 8px #4dd4ff;animation:filmScan 1.5s ease-in-out infinite alternate}
.film-heist{position:relative;width:430px;height:430px;margin:auto;display:grid;place-items:center}.film-heist>i{position:absolute;inset:12%;border:18px double #a78842;border-radius:50%;background:radial-gradient(circle,#251c0b,#07080b 65%);box-shadow:0 0 0 35px #11141b,0 0 75px rgba(255,209,102,.28),inset 0 0 55px #000;animation:filmVault .9s 1s cubic-bezier(.2,1.2,.3,1) both}.film-heist>i:after{content:'';position:absolute;inset:28%;border:8px solid #b1914b;border-radius:50%;box-shadow:0 0 0 6px #252119}.film-heist strong,.film-heist>b{position:relative;z-index:3}.film-heist strong{font-size:36px;color:#ffd166;text-shadow:0 5px 20px #000;margin-top:55px}.film-heist>b{position:absolute;bottom:9%;color:#8bff6b;letter-spacing:6px}.film-heist.failed>b{color:#ff4d6d}.film-lasers{position:absolute;inset:5%;background:repeating-linear-gradient(32deg,transparent 0 35px,rgba(255,40,70,.55) 36px 38px,transparent 39px 75px);animation:filmLasers 1.3s linear infinite}.film-heist.failed{animation:machinePhoneError .35s infinite}
.film-score{width:390px;height:390px;margin:auto;border:3px solid #ffd166;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:0 0 65px rgba(255,209,102,.25)}.film-score span{font-size:150px}.film-score b{color:#ffd166;font-size:26px;letter-spacing:4px}
.film-reflex{--film-glow:rgba(77,212,255,.25)}.film-files{--film-glow:rgba(174,33,53,.28)}.film-machine{--film-glow:rgba(77,212,255,.25)}.film-heist{--film-glow:rgba(255,209,102,.25)}
@keyframes filmRec{50%{opacity:.2}}@keyframes filmProgress{from{width:0}}@keyframes filmGrain{50%{transform:translate(2px,-1px)}}@keyframes filmBarTop{from{transform:translateY(-35px)}}@keyframes filmBarBottom{from{transform:translateY(35px)}}@keyframes filmSpin{to{transform:rotate(360deg)}}@keyframes filmReflexPulse{to{transform:scale(1.08);box-shadow:0 0 70px #4dd4ff}}@keyframes filmImpact{from{transform:scale(2.8);opacity:0;filter:blur(20px)}}@keyframes filmFileDrop{from{transform:translateY(-180px) rotate(12deg);opacity:0}}@keyframes filmStamp{from{transform:scale(2.8) rotate(25deg);opacity:0}}@keyframes filmScan{from{top:20%}to{top:78%}}@keyframes filmVault{from{transform:rotate(-160deg) scale(.7);filter:brightness(.3)}}@keyframes filmLasers{to{background-position:80px 40px}}

.gala-film.theme-reflex{--film-glow:rgba(77,212,255,.25)}.gala-film.theme-files{--film-glow:rgba(174,33,53,.28)}.gala-film.theme-machine{--film-glow:rgba(77,212,255,.25)}.gala-film.theme-heist{--film-glow:rgba(255,209,102,.25)}

.host .pm-reveal h2{margin-bottom:10px;font-size:28px}
.host .pm-row{min-height:52px;padding:7px 16px;margin-bottom:5px}
.host .pm-row .ans{font-size:21px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.host .pm-row .pts{font-size:21px}
.host .charades{height:calc(100vh - 48px);min-height:0;max-width:1180px;display:flex;flex-direction:column}
.host .char-top{margin-bottom:7px}
.host .charades>.timer{margin:8px auto 10px}
.host .ch-board-wrap{flex:1;min-height:0;margin:6px auto 8px;width:min(100%,900px)}
.host .charades #ch-board{height:100%;max-height:none;aspect-ratio:auto}
.host .charades h2{margin:3px 0 8px;font-size:24px;line-height:1.1}
.host .charades h2.hot{font-size:36px}
.host .ch-players{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:6px}
.host .ch-player{min-width:0;padding:6px 7px;gap:4px;justify-content:center;flex-wrap:wrap;text-align:center;font-size:13px}
.host .ch-player .av-dot{display:none}
.host .ch-player span{width:100%}
.host .imp{height:calc(100vh - 48px);min-height:0;padding:20px 26px}
.host .imp-title{font-size:clamp(34px,5vw,68px);margin:0 0 1vh}
.host .imp-ring{gap:12px;max-width:1120px}
.host .imp-agent{width:148px;height:148px}
.host .imp-agent .av{width:48px!important;height:48px!important}
.host .imp-verdict{margin-top:8px}
.host .imp-verdict strong{font-size:clamp(38px,5vw,66px)}
.host .imp-verdict em{font-size:18px}
.host .ranktv{height:calc(100vh - 48px);min-height:0;padding:15px 24px}
.host .ranktv-head b{font-size:clamp(20px,2.5vw,32px)}
.host .rank-new{margin:1vh 0}
.host .rank-new strong{font-size:clamp(34px,5vw,62px)}
.host .rank-list{gap:5px}
.host .rank-list>div{min-height:48px}
.host .rank-list b{width:62px;font-size:25px}
.host .rank-list span{font-size:19px}
.host .rank-crowd{margin-top:7px}
.host .tel-tv{height:calc(100vh - 48px);min-height:0;padding:20px 25px}
.host .tel-stage{min-height:0;height:calc(100% - 75px);overflow:hidden;justify-content:center}
.host .tel-reveal{width:max-content;max-width:none;overflow:visible;padding:18px 25px;animation:telPan 18s ease-in-out 2s infinite alternate}
.host .tel-reveal article{flex:0 0 min(500px,42vw);min-height:360px}
@keyframes telPan{from{transform:translateX(0)}to{transform:translateX(calc(-100% + 92vw))}}

/* Czytelność drobnych etykiet na telefonach w trybach Originals. */
.director-clap small,.director-pad-copy>small,.director-pad-gala>small,.director-reactions>small,.heist-role small,.heist-orders>small,.machine-core span,.machine-modules article small{font-size:12px;letter-spacing:1.5px}
.director-pad-copy p,.director-pad-copy>span,.director-pad-gala>p,.heist-secret span{font-size:12px}

/* ===== Pięć widowiskowych scen TV ===== */
.imp,.bomb,.would,.ranktv,.tel-tv{width:100%;min-height:calc(100vh - 48px);position:relative;overflow:hidden}
.imp{display:flex;flex-direction:column;align-items:center;background:radial-gradient(circle at 50% 45%,#36142c,#090b1b 68%);border-radius:28px;padding:28px}.imp-scan{position:absolute;inset:-40%;background:conic-gradient(from 0deg,transparent 0 82%,rgba(255,77,109,.18) 88%,transparent 94%);animation:impScan 4s linear infinite}.imp-head{position:relative;width:100%;display:flex;justify-content:space-between;color:#ff8da1;font-weight:900;letter-spacing:4px}.imp-head #imp-time{font-size:34px}.imp-title{position:relative;font-size:clamp(38px,6vw,82px);font-weight:1000;letter-spacing:5px;text-shadow:0 0 42px rgba(255,77,109,.6);margin:2vh 0}.imp-ring{position:relative;display:flex;flex-wrap:wrap;justify-content:center;gap:18px;max-width:1100px}.imp-agent{width:180px;height:180px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;background:rgba(13,16,37,.88);border:2px solid color-mix(in srgb,var(--c) 55%,#fff);box-shadow:0 0 35px color-mix(in srgb,var(--c) 25%,transparent);transition:.35s}.imp-agent.locked{filter:saturate(.4);opacity:.62}.imp-agent.exposed{border-color:#ff4d6d;transform:scale(1.15);box-shadow:0 0 70px #ff4d6d;animation:impExpose .6s}.imp-agent span{color:var(--dim);font-size:11px;letter-spacing:2px}.imp-verdict{position:relative;text-align:center;margin-top:20px;display:flex;flex-direction:column}.imp-verdict small{color:#ff4d6d;font-weight:900;letter-spacing:5px}.imp-verdict strong{font-size:clamp(42px,7vw,90px);line-height:1}.imp-verdict em{color:var(--ok);font-size:22px;font-style:normal}@keyframes impScan{to{transform:rotate(360deg)}}@keyframes impExpose{from{transform:scale(2);filter:blur(10px)}}
.bomb{display:flex;flex-direction:column;align-items:center;background:radial-gradient(circle,#3a2012,#080a18 68%);border-radius:28px;padding:26px}.bomb-top{width:100%;display:flex;justify-content:space-between;align-items:center;font-weight:900;letter-spacing:3px;color:#ffbd75}.bomb-top span{font-size:clamp(20px,3vw,38px)}.bomb-arena{position:relative;flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center}.bomb-device{position:relative;font-size:clamp(150px,24vw,300px);line-height:1;filter:drop-shadow(0 0 45px #ff4d6d);animation:bombTick .42s ease-in-out infinite alternate}.bomb-device i{position:absolute;inset:10%;border-radius:50%;border:8px solid rgba(255,159,69,.3);transform:scale(calc(.7 + var(--left)*.5))}.bomb-device strong{position:absolute;inset:45% 0 auto;text-align:center;font-size:42px;color:#fff;text-shadow:0 4px 12px #000}.bomb-device.exploded{animation:bombExplode .7s both}.bomb-active{font-size:clamp(22px,3vw,42px);letter-spacing:2px}.bomb-words{height:45px;display:flex;gap:10px}.bomb-words span{padding:7px 14px;border-radius:99px;background:rgba(255,159,69,.14);animation:wordFly .4s}.bomb-players{display:flex;gap:10px;flex-wrap:wrap;justify-content:center}.bomb-p{display:flex;align-items:center;gap:8px;padding:8px 14px;border:1px solid var(--line);border-radius:15px;background:var(--panel)}.bomb-p.active{border-color:var(--c);transform:translateY(-8px);box-shadow:0 0 34px var(--c)}.bomb-p.lost{background:#6b1724;animation:impExpose .5s}.bomb-p span{font-size:22px;font-weight:900;color:var(--gold)}@keyframes bombTick{to{transform:scale(1.045) rotate(1deg)}}@keyframes bombExplode{50%{transform:scale(1.5);filter:brightness(5)}100%{transform:scale(.2);opacity:0}}@keyframes wordFly{from{transform:translateY(30px) rotate(8deg);opacity:0}}
.would{display:flex;flex-direction:column}.would-head{display:flex;justify-content:space-between;padding:10px 24px;font-weight:900;letter-spacing:4px}.would-split{position:relative;flex:1;display:grid;grid-template-columns:1fr 1fr;gap:12px}.would-side{position:relative;border-radius:30px;overflow:hidden;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:5vw;text-align:center;border:2px solid rgba(255,255,255,.12)}.would-side.a{background:linear-gradient(145deg,#171f65,#11152d)}.would-side.b{background:linear-gradient(215deg,#6a1735,#281329)}.would-side small{position:absolute;top:25px;font-size:54px;font-weight:1000;opacity:.35}.would-side strong{position:relative;z-index:2;font-size:clamp(28px,4.5vw,68px);line-height:1.05;text-shadow:0 8px 26px #000}.would-fill{position:absolute;bottom:0;left:0;right:0;height:50%;opacity:.36;transition:height 1.1s cubic-bezier(.2,1,.3,1)}.would-side.a .would-fill{background:#4dd4ff}.would-side.b .would-fill{background:#ff4d6d}.would-side em{position:absolute;bottom:25px;z-index:2;font-size:72px;font-weight:1000;font-style:normal}.would-side.winner{border-color:var(--win);box-shadow:inset 0 0 80px rgba(139,255,107,.24)}.would-vs{position:absolute;z-index:5;left:50%;top:50%;transform:translate(-50%,-50%) rotate(-8deg);font-size:46px;font-weight:1000;background:#fff;color:#090b1b;padding:12px;border-radius:18px;box-shadow:0 0 45px #fff}.would-players{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;padding:14px}.would-players span{display:flex;align-items:center;gap:5px;opacity:.4;padding:5px 9px;border-radius:99px;background:var(--panel)}.would-players span.ready{opacity:1;border:1px solid var(--c)}
.ranktv{display:flex;flex-direction:column;align-items:center;padding:28px;background:radial-gradient(circle at 50% 25%,#433516,#0a0b19 65%);border-radius:28px}.ranktv-head{text-align:center;display:flex;flex-direction:column;color:var(--gold);letter-spacing:4px}.ranktv-head b{font-size:clamp(22px,3vw,40px);color:#fff}.rank-new{margin:3vh 0;text-align:center;animation:rankDrop .55s cubic-bezier(.2,1.4,.3,1)}.rank-new small{display:block;color:var(--dim);letter-spacing:3px}.rank-new strong{font-size:clamp(42px,7vw,90px);text-shadow:0 0 45px rgba(255,209,102,.65)}.rank-list{width:min(850px,88vw);display:flex;flex-direction:column;gap:9px}.rank-list>div{display:flex;align-items:center;min-height:62px;border:1px solid rgba(255,209,102,.23);border-radius:16px;background:linear-gradient(90deg,rgba(255,209,102,.12),rgba(255,255,255,.03));overflow:hidden}.rank-list b{align-self:stretch;width:75px;display:grid;place-items:center;background:rgba(255,209,102,.16);font-size:30px;color:var(--gold)}.rank-list span{padding-left:20px;font-size:22px;font-weight:800}.rank-list .reveal{animation:rankSlide .55s both}.rank-crowd{display:flex;gap:8px;margin-top:18px;flex-wrap:wrap;justify-content:center}.rank-crowd span{display:flex;align-items:center;gap:6px;padding:5px 10px;border-radius:99px;background:var(--panel);opacity:.5}.rank-crowd span.ready{opacity:1;color:var(--win)}@keyframes rankDrop{from{transform:translateY(-80px) scale(1.6);opacity:0}}@keyframes rankSlide{from{transform:translateX(-100px);opacity:0}}
.tel-tv{padding:25px;background:radial-gradient(circle at 50% 40%,#25184e,#080a19 68%);border-radius:28px}.tel-head{display:flex;justify-content:space-between;color:#d5b2ff;letter-spacing:4px}.tel-stage{min-height:65vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.tel-orbit{width:260px;height:260px;border-radius:50%;display:grid;place-items:center;border:2px dashed #c77dff;box-shadow:0 0 60px rgba(199,125,255,.35);animation:telOrbit 6s linear infinite}.tel-orbit span{font-size:110px;animation:telOrbit 6s linear infinite reverse}.tel-stage h2{font-size:clamp(35px,5vw,68px);color:#fff;text-transform:none;letter-spacing:0;margin-top:24px}.tel-stage p{color:var(--dim);font-size:20px}.tel-chain{display:flex;justify-content:center;gap:12px}.tel-chain i{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;border:2px solid var(--line);font-style:normal;font-weight:900}.tel-chain i.done{background:#c77dff;color:#080a19}.tel-chain i.now{border-color:#fff;box-shadow:0 0 26px #c77dff;animation:pulse 1s infinite}.tel-reveal{width:100%;display:flex;gap:18px;overflow-x:auto;padding:28px;scroll-snap-type:x mandatory}.tel-reveal article{flex:0 0 min(520px,72vw);min-height:390px;scroll-snap-align:center;background:rgba(20,25,55,.92);border:1px solid rgba(199,125,255,.35);border-radius:26px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;padding:24px;animation:rankSlide .65s both;box-shadow:0 18px 55px rgba(0,0,0,.35)}.tel-reveal small{color:#c77dff;letter-spacing:3px}.tel-reveal strong{font-size:clamp(26px,3.4vw,46px)}.tel-reveal canvas{max-width:100%;border-radius:17px}@keyframes telOrbit{to{transform:rotate(360deg)}}

/* Kontrolery 2.0 — wspólny poziom premium dla wszystkich gier */
.pad #scr-play{--pad-accent:#6c7bff;isolation:isolate;overflow:hidden;padding:14px 13px max(12px,env(safe-area-inset-bottom));background:radial-gradient(circle at 50% -10%,color-mix(in srgb,var(--pad-accent) 25%,transparent),transparent 44%),linear-gradient(180deg,#0d1027,#070919 72%)}.pad #scr-play:before{content:'';position:absolute;z-index:-1;inset:0;pointer-events:none;background:linear-gradient(115deg,transparent 30%,rgba(255,255,255,.035) 48%,transparent 66%);animation:padSheen 7s ease-in-out infinite}.pad[data-game="quiz"] #scr-play{--pad-accent:#6c7bff}.pad[data-game="rps"] #scr-play{--pad-accent:#ff4d8d}.pad[data-game="brickfall"] #scr-play{--pad-accent:#43e8ff}.pad[data-game="snake"] #scr-play{--pad-accent:#8bff6b}.pad[data-game="panstwa-miasta"] #scr-play{--pad-accent:#4dd4ff}.pad[data-game="refleks"] #scr-play{--pad-accent:#ffd166}.pad[data-game="impostor"] #scr-play{--pad-accent:#ff4d6d}.pad[data-game="co-wolisz"] #scr-play{--pad-accent:#c77dff}.pad[data-game="ranking"] #scr-play{--pad-accent:#ffd166}.padbar{min-height:48px;padding:7px 12px;border:1px solid color-mix(in srgb,var(--pad-accent) 32%,var(--line));border-radius:16px;background:rgba(14,18,43,.78);box-shadow:0 10px 28px rgba(0,0,0,.24),inset 0 1px rgba(255,255,255,.07)}.padbar #pad-name{font-size:15px}.padbar #pad-name:before{content:'●';color:var(--pad-accent);margin-right:7px;text-shadow:0 0 12px var(--pad-accent)}.padbar .score{padding:5px 9px;border-radius:99px;background:color-mix(in srgb,var(--pad-accent) 14%,transparent);color:#fff;font-size:13px}.pad #scr-play>.note{min-height:38px;margin:3px 0 5px;padding:8px 12px;border-radius:12px;background:rgba(255,255,255,.035);color:#c9cdec;font-weight:750;display:grid;place-items:center;line-height:1.2}.pad #controls{min-height:0}.btn-choice{position:relative;overflow:hidden;border-color:color-mix(in srgb,var(--pad-accent) 32%,var(--line));background:linear-gradient(145deg,color-mix(in srgb,var(--pad-accent) 13%,#20264d),#11152f 68%);box-shadow:0 12px 28px rgba(0,0,0,.28),inset 0 1px rgba(255,255,255,.09);transition:transform .12s,border-color .2s,filter .2s}.btn-choice:before{content:'';position:absolute;inset:0;background:linear-gradient(110deg,transparent 20%,rgba(255,255,255,.1) 48%,transparent 76%);transform:translateX(-110%);transition:.35s}.btn-choice:active{transform:scale(.965);filter:brightness(1.25)}.btn-choice:active:before{transform:translateX(110%)}.btn-choice.sel{border-color:var(--pad-accent);background:linear-gradient(145deg,color-mix(in srgb,var(--pad-accent) 45%,#252b56),#171b3b);box-shadow:0 0 34px color-mix(in srgb,var(--pad-accent) 35%,transparent)}.btn-choice:disabled:not(.sel){opacity:.34;filter:grayscale(.55)}.btn-choice .emoji{filter:drop-shadow(0 6px 8px rgba(0,0,0,.35))}.pad[data-game="quiz"] .choices{display:grid;grid-template-columns:1fr 1fr;gap:10px}.pad[data-game="quiz"] .btn-choice{justify-content:center;flex-direction:column;gap:5px;padding:12px;min-height:120px;font-size:35px}.pad[data-game="quiz"] .btn-choice .emoji{font-size:42px}.pad[data-game="quiz"] .btn-choice:nth-child(1){--pad-accent:#ff4d6d}.pad[data-game="quiz"] .btn-choice:nth-child(2){--pad-accent:#4d9dff}.pad[data-game="quiz"] .btn-choice:nth-child(3){--pad-accent:#ffd166}.pad[data-game="quiz"] .btn-choice:nth-child(4){--pad-accent:#62d987}.pad[data-game="rps"] .btn-choice{min-height:120px;justify-content:center}.pad[data-game="rps"] .btn-choice .emoji{font-size:64px}.pad[data-game="brickfall"] .choices{display:grid;grid-template-columns:1fr 1fr;gap:12px}.pad[data-game="brickfall"] .btn-choice{min-height:240px;justify-content:center;flex-direction:column;font-size:22px}.pad[data-game="brickfall"] .btn-choice .emoji{font-size:70px}.dpad{position:relative;padding:8px}.dbtn{border:2px solid color-mix(in srgb,var(--pad-accent) 38%,var(--line));background:linear-gradient(145deg,color-mix(in srgb,var(--pad-accent) 15%,#252b55),#11152e);box-shadow:0 12px 26px rgba(0,0,0,.3),inset 0 1px rgba(255,255,255,.1);font-size:42px}.dbtn:active{background:var(--pad-accent);color:#07101a;transform:scale(.94);box-shadow:0 0 35px var(--pad-accent)}.form{padding:10px;border:1px solid color-mix(in srgb,var(--pad-accent) 25%,var(--line));border-radius:20px;background:rgba(15,19,43,.7);box-shadow:0 18px 38px rgba(0,0,0,.22);overflow:auto}.f-row{font-weight:850;color:#b9bfdc}.f-input{border:1px solid color-mix(in srgb,var(--pad-accent) 24%,var(--line));background:#0f132d;box-shadow:inset 0 2px 8px rgba(0,0,0,.25)}.f-input:focus{border-color:var(--pad-accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--pad-accent) 18%,transparent)}.stop{border-color:color-mix(in srgb,var(--pad-accent) 30%,var(--line));background:linear-gradient(145deg,#252b56,#171b39)}.tap-btn{position:relative;overflow:hidden;border-color:color-mix(in srgb,var(--pad-accent) 45%,var(--line));background:radial-gradient(circle at 50% 42%,color-mix(in srgb,var(--pad-accent) 20%,#303866),#141831 70%);box-shadow:inset 0 0 70px rgba(0,0,0,.28),0 18px 45px rgba(0,0,0,.28)}.tap-btn:before{content:'⚡';display:block;font-size:80px;margin-bottom:16px;filter:grayscale(1);opacity:.3}.tap-btn.armed:before{filter:none;opacity:1;animation:padBolt .45s infinite alternate}.single-input,.ranking-pad,.telephone-pad{padding:12px;border:1px solid color-mix(in srgb,var(--pad-accent) 25%,var(--line));border-radius:21px;background:linear-gradient(160deg,color-mix(in srgb,var(--pad-accent) 10%,#171b3a),#0b0e22);box-shadow:0 18px 42px rgba(0,0,0,.25)}.rank-slots button{min-height:54px;border-color:color-mix(in srgb,var(--pad-accent) 28%,var(--line));box-shadow:0 7px 18px rgba(0,0,0,.2)}.rank-slots .free:not(:disabled):active{transform:scale(.97);background:color-mix(in srgb,var(--pad-accent) 25%,#171b35)}.reactions{padding:5px;border-top:1px solid rgba(255,255,255,.06)}@keyframes padSheen{50%{transform:translateX(35%)}}@keyframes padBolt{to{transform:scale(1.12);filter:drop-shadow(0 0 18px #fff)}}
@media(max-width:380px),(max-height:680px){.padbar{min-height:40px;padding:5px 9px}.pad #scr-play>.note{min-height:30px;padding:5px 8px}.pad[data-game="quiz"] .btn-choice{min-height:90px}.pad[data-game="brickfall"] .btn-choice{min-height:170px}.form{padding:7px}.f-input{padding:9px 11px}.stop{padding:13px}}

/* Tacy Jesteście — widowiskowy show Originals */
.tacy-tv{--pink:#ff4d9d;--cyan:#43e8ff;position:relative;width:calc(100vw - 48px);height:calc(100vh - 48px);overflow:hidden;border-radius:30px;border:1px solid #a92d72;background:radial-gradient(circle at 20% 20%,#46143b,#090a1c 48%,#061422);color:#fff;display:grid;grid-template-rows:70px 1fr 88px;box-shadow:inset 0 0 120px #000,0 30px 90px #000}.tacy-bg{position:absolute;inset:-50%;background:conic-gradient(transparent,rgba(255,77,157,.15),transparent 22%,rgba(67,232,255,.12),transparent 48%);animation:tacySpin 18s linear infinite}.tacy-bg i{position:absolute;width:40vw;height:3px;background:linear-gradient(90deg,transparent,var(--pink),transparent);filter:drop-shadow(0 0 10px var(--pink));animation:tacyLaser 5s ease-in-out infinite alternate}.tacy-bg i:nth-child(2){right:0;top:50%;--pink:var(--cyan)}.tacy-tv>header,.tacy-tv>footer,.tacy-tv>main{position:relative;z-index:2}.tacy-tv>header{display:flex;align-items:center;justify-content:space-between;padding:0 28px;border-bottom:1px solid rgba(255,255,255,.1)}.tacy-tv>header span{color:var(--pink);font-size:11px;font-weight:1000;letter-spacing:4px}.tacy-tv>header b{font-size:22px;font-style:italic;letter-spacing:3px;text-shadow:3px 3px 0 var(--pink)}.tacy-tv>header em{color:var(--cyan);font-style:normal;font-weight:900}.tacy-tv>main{min-height:0;padding:24px;display:grid;place-items:center}.tacy-tv>footer{display:grid;grid-template-columns:250px 1fr;align-items:center;gap:20px;padding:0 28px;border-top:1px solid rgba(255,255,255,.1)}.tacy-tv>footer .timer{margin:0}.tacy-tv>footer .timer div{background:linear-gradient(90deg,var(--pink),var(--cyan))}#tacy-scores{display:flex;gap:8px;justify-content:flex-end;overflow:hidden}#tacy-scores>span{display:flex;align-items:center;gap:5px;padding:5px 9px;border:1px solid var(--c);border-radius:99px;background:#080916;font-size:11px}#tacy-scores em{color:var(--pink);font-style:normal;font-weight:1000}.tacy-intro{text-align:center}.tacy-intro>small,.tacy-reveal>small,.tacy-vote-tv>small{color:var(--cyan);font-weight:1000;letter-spacing:7px}.tacy-intro h1{font-size:clamp(80px,13vw,180px);line-height:.72;font-style:italic;letter-spacing:-8px;text-shadow:8px 8px 0 #60113a,0 0 70px #ff4d9d;transform:rotate(-3deg)}.tacy-intro h1 em{color:var(--pink);font-style:normal}.tacy-intro p{margin:28px;color:#aeb5d5;letter-spacing:5px}.tacy-intro>div{display:flex;justify-content:center}.tacy-intro>div i{width:112px;height:112px;margin-left:-18px;border:4px solid var(--c);border-radius:50%;overflow:hidden;box-shadow:0 0 35px var(--c);animation:tacyFace .6s calc(var(--i)*.1s) both}.tacy-question{width:min(1180px,94vw);display:grid;grid-template-columns:260px 1fr;align-items:center;gap:42px}.tacy-target{display:flex;flex-direction:column;align-items:center;gap:10px}.tacy-target .av{border-width:7px;border-radius:28px;transform:rotate(-4deg);box-shadow:12px 12px 0 var(--c),0 0 60px var(--c)}.tacy-target b{font-size:28px}.tacy-question small{color:var(--pink);font-weight:1000;letter-spacing:6px}.tacy-question h2{font-size:clamp(34px,4.2vw,68px);line-height:1.02;text-transform:none;letter-spacing:-2px}.tacy-question ol{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:22px;list-style:none}.tacy-question li{min-height:60px;display:flex;align-items:center;gap:12px;padding:10px 15px;border:1px solid #4a4d70;border-radius:14px;background:#11142d;font-weight:800}.tacy-question li b{width:38px;height:38px;display:grid;place-items:center;border-radius:10px;background:var(--pink)}.tacy-question p{color:#9fa7c9;margin-top:15px}.tacy-reveal,.tacy-vote-tv{width:min(1220px,96vw);text-align:center}.tacy-reveal h2,.tacy-vote-tv h2{font-size:clamp(25px,3vw,45px);text-transform:none;letter-spacing:-1px;margin:8px 0 18px}.tacy-reveal>div,.tacy-vote-tv>div{display:flex;flex-wrap:wrap;justify-content:center;gap:13px}.tacy-reveal article,.tacy-vote-tv blockquote,.tacy-vote-tv img{flex:1 1 210px;max-width:310px;min-height:150px;padding:16px;border:1px solid #4b4e73;border-radius:20px;background:linear-gradient(145deg,#301530,#0b0e26);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px}.tacy-reveal article>b{font-size:30px;color:var(--cyan)}.tacy-reveal .person{max-width:190px}.tacy-reveal .creation img,.tacy-vote-tv img{width:220px;height:220px;object-fit:cover;padding:0}.tacy-reveal .creation blockquote,.tacy-vote-tv blockquote{font-size:22px;font-weight:900;font-style:italic}.tacy-reveal .creation.winner{border-color:var(--pink);transform:scale(1.07) rotate(-1deg);box-shadow:0 0 50px #ff4d9d}@keyframes tacySpin{to{transform:rotate(360deg)}}@keyframes tacyLaser{to{transform:translate(35vw,20vh) rotate(-20deg)}}@keyframes tacyFace{from{transform:translateY(100px) rotate(20deg);opacity:0}}
.tacy-pad{flex:1;min-height:0;display:flex;flex-direction:column;gap:10px;padding:10px;border-radius:22px;background:radial-gradient(circle at 50% 0,#3c1739,#0b0d21 48%,#080916);overflow:auto}.tacy-pad-head{text-align:center;padding:7px}.tacy-pad-head small{color:#43e8ff;font-size:10px;font-weight:1000;letter-spacing:3px}.tacy-pad-head b{display:block;font-size:clamp(18px,5.5vw,25px);line-height:1.08;margin-top:6px}.tacy-pad-intro,.tacy-pad-done{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.tacy-pad-intro small{color:#43e8ff;letter-spacing:5px}.tacy-pad-intro>b{font-size:clamp(48px,16vw,75px);line-height:.78;font-style:italic;text-shadow:5px 5px 0 #64123e}.tacy-pad-intro em{color:#ff4d9d;font-style:normal}.tacy-pad-intro p,.tacy-pad-done p{color:#9da5c8;margin-top:22px}.tacy-pad-done span{font-size:90px}.tacy-pad-done b{font-size:30px}.tacy-scenario-buttons{display:grid;grid-template-columns:1fr 1fr;gap:9px;flex:1}.tacy-scenario-buttons button{min-height:120px;border:1px solid #4b4e72;border-radius:19px;background:linear-gradient(145deg,#2b1641,#111631);color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;padding:10px}.tacy-scenario-buttons em{width:38px;height:38px;display:grid;place-items:center;border-radius:10px;background:#ff4d9d;font-size:20px;font-weight:1000;font-style:normal}.tacy-scenario-buttons span{font-weight:800}.tacy-people{display:grid;grid-template-columns:repeat(2,1fr);gap:9px}.tacy-people button{min-height:120px;border:2px solid var(--c);border-radius:18px;background:#11152e;color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px}.tacy-people img{width:72px;height:72px;object-fit:cover;border-radius:50%}.tacy-caption-face{display:flex;align-items:center;justify-content:center;gap:12px}.tacy-caption-face img{width:100px;height:100px;object-fit:cover;border:4px solid #ff4d9d;border-radius:22px}#tacy-caption{display:flex;flex-direction:column;gap:10px;flex:1}#tacy-caption textarea{flex:1;min-height:130px;padding:16px;border:1px solid #ff4d9d;border-radius:18px;background:#11152e;color:#fff;font:700 20px system-ui;resize:none}#tacy-caption button,#tacy-send{min-height:62px;border-radius:16px;background:linear-gradient(135deg,#ff4d9d,#a329ff);color:#fff;font-weight:1000}#tacy-canvas{width:min(100%,52vh);aspect-ratio:1;align-self:center;border:3px solid #ff4d9d;border-radius:20px;touch-action:none;background:#171a35}.tacy-tools{display:grid;grid-template-columns:repeat(4,48px) 1fr;gap:7px}.tacy-tools button{min-height:48px;border-radius:12px;background:#161a38;font-size:30px}.tacy-tools #tacy-send{font-size:14px}.tacy-pad-votes{display:grid;grid-template-columns:1fr 1fr;gap:9px}.tacy-pad-votes button{min-height:145px;padding:9px;border:1px solid #ff4d9d;border-radius:17px;background:#11152e;color:#fff;font-weight:800}.tacy-pad-votes img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:12px}.tacy-pad-votes span{font-size:17px;line-height:1.25}

.tacy-pose-ref img{width:min(440px,38vw);aspect-ratio:4/3;object-fit:cover;border:6px solid #ff4d9d;border-radius:25px;box-shadow:14px 14px 0 #43e8ff,0 0 65px rgba(255,77,157,.5);transform:rotate(-2deg)}.tacy-question.pose{grid-template-columns:minmax(320px,480px) 1fr}.tacy-pose-camera{display:grid;grid-template-columns:1fr 1fr;gap:8px}.tacy-pose-camera img,.tacy-pose-camera video{width:100%;aspect-ratio:4/3;object-fit:cover;border:2px solid #ff4d9d;border-radius:16px;background:#080916}.tacy-pose-camera video{transform:scaleX(-1);border-color:#43e8ff}.tacy-pose-camera img{object-position:center}.tacy-pad #tacy-pose-shot{min-height:72px;border-radius:18px;background:linear-gradient(135deg,#ff4d9d,#8b3dff);color:#fff;font-size:18px;font-weight:1000;box-shadow:0 12px 34px rgba(255,77,157,.35)}.tacy-pose-hint{text-align:center;color:#aeb5d5;font-size:12px}

/* Stabilne, bardziej widowiskowe odsłony: Kamień–Papier–Nożyce i Ranking w ciemno */
.rps{width:min(1120px,94vw);position:relative}.rps .timer{margin:18px 0 24px}.rps-verdict{min-height:58px;display:grid;place-items:center;margin-bottom:18px;color:var(--dim);font-size:18px;font-weight:900;letter-spacing:2px;text-transform:uppercase}.rps-verdict strong{font-size:clamp(28px,4vw,52px);color:#fff;text-shadow:0 0 34px rgba(67,232,255,.5);animation:pickFlip .55s cubic-bezier(.3,1.4,.5,1)}.rps-players{gap:18px;align-items:stretch;perspective:900px}.rps-card{background:linear-gradient(155deg,color-mix(in srgb,var(--c) 14%,rgba(20,25,55,.96)),rgba(10,12,31,.94));border-color:color-mix(in srgb,var(--c) 35%,var(--line));border-radius:24px;padding:16px 18px;min-width:160px;min-height:245px;display:grid;grid-template-rows:auto auto 1fr auto;justify-items:center;align-items:center;gap:7px;box-shadow:0 18px 42px rgba(0,0,0,.42),inset 0 1px rgba(255,255,255,.08)}.rps-avatar{height:40px;display:grid;place-items:center}.rps-card .av,.rps-card .av-dot{box-shadow:0 0 20px color-mix(in srgb,var(--c) 45%,transparent)}.rps-card .pick{width:104px;height:104px;display:grid;place-items:center;border-radius:50%;font-size:70px;background:radial-gradient(circle,rgba(255,255,255,.14),rgba(255,255,255,.025) 68%);filter:drop-shadow(0 8px 12px rgba(0,0,0,.5))}.rps-card .pick-label{min-height:18px;color:var(--dim);font-size:12px;font-weight:900;letter-spacing:2px;text-transform:uppercase}.rps-card.wygral{animation:rpsWinner 1.1s ease-in-out infinite alternate;box-shadow:0 0 50px rgba(139,255,107,.6),inset 0 0 34px rgba(139,255,107,.1)}@keyframes rpsWinner{to{box-shadow:0 0 75px rgba(139,255,107,.82),inset 0 0 38px rgba(139,255,107,.16)}}
.rank-player-rankings{width:min(1180px,94vw);display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin-top:20px}.rank-player-rankings article{background:linear-gradient(155deg,color-mix(in srgb,var(--c) 13%,rgba(20,25,55,.95)),rgba(10,12,28,.96));border:1px solid color-mix(in srgb,var(--c) 45%,var(--line));border-radius:18px;padding:12px;box-shadow:0 12px 32px rgba(0,0,0,.32);animation:rankDrop .55s both}.rank-player-rankings header{display:flex;align-items:center;gap:8px;margin-bottom:9px}.rank-player-rankings header b{font-size:16px}.rank-player-rankings header em{margin-left:auto;color:var(--gold);font-style:normal;font-weight:900}.rank-player-rankings ol{list-style:none;display:grid;gap:5px}.rank-player-rankings li{display:grid;grid-template-columns:26px 1fr;align-items:center;text-align:left;background:rgba(255,255,255,.055);border-radius:8px;overflow:hidden}.rank-player-rankings li b{display:grid;place-items:center;align-self:stretch;background:rgba(255,209,102,.13);color:var(--gold)}.rank-player-rankings li span{padding:6px 8px;font-size:13px;font-weight:800;opacity:1;background:none}.rank-player-rankings .av{padding:0}
@media(max-width:850px){.rps-card{min-width:135px;min-height:205px;padding:12px}.rps-card .pick{width:82px;height:82px;font-size:56px}.rps-verdict{margin-bottom:10px}.rank-player-rankings{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}}
.pm-review{min-height:65vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:14px}.pm-review>small{color:var(--gold);font-weight:900;letter-spacing:5px}.pm-review h2{font-size:clamp(24px,3vw,42px)}.pm-review>strong{font-size:clamp(50px,8vw,110px);line-height:1;color:#fff;text-shadow:0 0 42px rgba(77,212,255,.42)}.pm-review p,.pm-review em{color:var(--dim);font-style:normal}.pm-vote-pad{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:12px}.pm-vote-pad>small{color:var(--gold);font-weight:900;letter-spacing:3px}.pm-vote-pad>b{font-size:22px}.pm-vote-pad>strong{font-size:clamp(38px,12vw,62px);line-height:1}.pm-vote-pad p,.pm-vote-pad em{color:var(--dim);font-style:normal}.pm-vote-pad>div{width:100%;display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:18px}.pm-vote-pad button{min-height:130px;border-radius:22px;color:#fff;font-size:18px;font-weight:1000}.pm-vote-pad button:first-child{background:linear-gradient(145deg,#237a4b,#123b2a)}.pm-vote-pad button:last-child{background:linear-gradient(145deg,#922e45,#471927)}
.settings-modal{position:fixed;z-index:100;inset:0;display:grid;place-items:center;padding:20px;background:rgba(3,4,14,.82);backdrop-filter:blur(16px)}.settings-modal.hidden{display:none}.settings-card{width:min(560px,94vw);padding:30px;border:1px solid rgba(255,209,102,.4);border-radius:26px;background:linear-gradient(145deg,#2a2014,#0e1022 65%);box-shadow:0 30px 100px #000}.settings-card>small{color:var(--gold);font-weight:900;letter-spacing:4px}.settings-card h2{margin:8px 0 22px;font-size:clamp(28px,4vw,44px)}.settings-card label{display:grid;gap:7px;margin:13px 0;color:var(--dim);font-weight:800}.settings-card select{width:100%;padding:15px;border:1px solid var(--line);border-radius:13px;background:#13172f;color:#fff;font:inherit}.settings-card p{margin:18px 0;color:var(--dim);line-height:1.45}.settings-card>div{display:grid;grid-template-columns:1fr 2fr;gap:10px}.settings-card button{min-height:58px;border-radius:14px;color:#fff;font-weight:900}.settings-card .secondary{background:rgba(255,255,255,.07)}
