/* Розыгрыш MON — баннер над каталогом. Фон — зацикленное видео из Blender, всё остальное — CSS. */
.gw{--gw-gold:#ffb347;--gw-text:#f6eef7;--gw-mute:#b4a9bb;--gw-dim:#8b8794;position:relative;isolation:isolate;overflow:hidden;margin:20px 0 28px;border-radius:22px;
 border:1px solid #ffffff17;background:#120c16;color:var(--gw-text);font-family:"Golos Text",system-ui,sans-serif;
 container:gw/inline-size;box-shadow:0 24px 60px -30px #000;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}
.gw img,.gw video{-webkit-user-drag:none;pointer-events:none}
/* раскладка зависит от ширины самого баннера, а не окна */
.gw-body{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.08fr);min-height:340px}
.gw-scene{position:absolute;inset:0;z-index:-2}
.gw-scene video,.gw-scene img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:70% 45%}
.gw-scene video{opacity:0;transition:opacity .8s}
.gw-scene.playing video{opacity:1}
.gw-body::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;
 background:linear-gradient(90deg,#0d0811f2 0%,#0d0811d9 30%,#0d081166 52%,transparent 70%),linear-gradient(0deg,#0d081199,transparent 35%)}
.gw-left{position:relative;padding:26px 18px 24px 30px;display:flex;flex-direction:column;min-width:0}
.gw-tag{position:relative;align-self:flex-start;display:flex;align-items:center;gap:9px;height:40px;padding:0 30px 0 26px;margin-left:-8px;
 background:url(/anime/giveaway/tag.webp) center/100% 100% no-repeat;color:#ffc27a;font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;white-space:nowrap}
.gw-tag img{width:20px;height:20px;object-fit:contain;animation:gwBob 2.8s ease-in-out infinite}
.gw h2{margin:14px 0 8px;font-size:38px;line-height:1.02;font-weight:800;letter-spacing:-.015em;text-shadow:0 2px 18px #0009}
.gw h2 b{display:block;white-space:nowrap;background:linear-gradient(92deg,#ffe08a 0%,#ffb347 45%,#ff7a2e 100%);-webkit-background-clip:text;background-clip:text;color:transparent;
 text-shadow:none}
.gw-sub{margin:0;max-width:400px;color:var(--gw-mute);font-size:13.5px;line-height:1.5}
.gw-timer{display:flex;align-items:center;gap:12px;margin-top:16px}
.gw-clock{display:flex;gap:6px}
.gw-clock span{min-width:50px;padding:8px 6px 6px;border-radius:12px;background:#180c10e6;border:1px solid #ffffff14;text-align:center;font-variant-numeric:tabular-nums}
.gw-clock b{display:block;font-size:21px;font-weight:700;line-height:1}
.gw-clock em{display:block;margin-top:4px;font-style:normal;font-size:10px;color:var(--gw-dim);text-transform:uppercase;letter-spacing:.06em}
.gw-timer small{color:var(--gw-dim);font-size:12px;line-height:1.35}
.gw-rules{display:flex;flex-direction:column;gap:10px;margin-top:auto;padding-top:18px;max-width:420px}
.gw-rule{display:grid;grid-template-columns:22px minmax(0,1fr) auto;align-items:center;column-gap:10px;row-gap:7px;font-size:13.5px;color:#e1d3d8}
.gw-rule .ic{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;background:#ffffff12;color:var(--gw-dim);font-size:12px;font-weight:700}
.gw-rule .ic svg{width:12px;height:12px}
.gw-rule.ok .ic{background:#22c55e2e;color:#4ade80}
.gw-rule .val{font-size:12.5px;color:var(--gw-dim);font-variant-numeric:tabular-nums}
.gw-rule.ok .val{color:#4ade80}
.gw-rule a{color:#ff9ac2;font-weight:600;text-decoration:none}
.gw-rule a:hover{text-decoration:underline}
.gw-bar{grid-column:2/4;height:6px;border-radius:9px;background:#ffffff14;overflow:hidden}
.gw-bar i{display:block;height:100%;width:0;border-radius:inherit;background:linear-gradient(90deg,#c93670,#ff9a3c);box-shadow:0 0 12px #ff9a3c80;transition:width 1.2s cubic-bezier(.2,.8,.2,1)}

/* пьедестал */
.gw-pod{position:relative;display:flex;align-items:flex-end;justify-content:center;min-width:0;padding:22px 60px 34px 6px}
.gw-place{position:relative;container-type:inline-size;flex:0 1 auto;width:31%;max-width:174px;aspect-ratio:453/523;margin:0 -1.6%;animation:gwRise .9s cubic-bezier(.2,.9,.25,1.15) both,gwHover 5s 1.3s ease-in-out infinite}
.gw-place.p1{width:39%;max-width:226px;aspect-ratio:547/600;z-index:2;animation-delay:.12s,1.1s}
.gw-place.p2{animation-delay:.26s,2.4s}.gw-place.p3{animation-delay:.38s,3.6s;aspect-ratio:443/523}
.gw-place>.frame{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:1}

.gw-place::before{content:"";position:absolute;left:12%;right:12%;bottom:6%;height:30%;border-radius:50%;z-index:0;opacity:.55;background:radial-gradient(closest-side,var(--gw-glow),transparent);will-change:opacity;animation:gwGlow 3.2s ease-in-out infinite}
.gw-place.p1::before{--gw-glow:#ff9a3c}.gw-place.p2::before{--gw-glow:#c93670;animation-delay:-1s}.gw-place.p3::before{--gw-glow:#ec4899;animation-delay:-2s}
.gw-in{position:absolute;left:18%;right:18%;top:25%;bottom:22%;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}
.gw-place.p1 .gw-in{top:27%}
.gw-coin{position:relative;width:24cqw;height:24cqw;animation:gwBob 3.4s ease-in-out infinite;will-change:transform}
.gw-place.p1 .gw-coin{width:25cqw;height:25cqw}
.gw-place.p2 .gw-coin{animation-delay:-1.1s}.gw-place.p3 .gw-coin{animation-delay:-2.2s}
.gw-coin svg{width:100%;height:100%}
.gw-coin svg{position:relative;z-index:0;filter:drop-shadow(0 4px 8px #ffb34755)}
.gw-coin i{position:absolute;inset:0;border-radius:50%;overflow:hidden;pointer-events:none}
.gw-coin i::after{content:"";position:absolute;inset:0;background:linear-gradient(115deg,transparent 32%,#fff6 47%,#fffc 50%,#fff6 53%,transparent 68%);transform:translateX(-140%);animation:gwShine 4.5s ease-in-out infinite}
.gw-place.p2 .gw-coin i::after{animation-delay:-1.5s}.gw-place.p3 .gw-coin i::after{animation-delay:-3s}
.gw-sum{margin-top:5cqw;font-size:12.6cqw;font-weight:800;line-height:1;font-variant-numeric:tabular-nums;text-shadow:0 2px 10px #000a}
.gw-place.p1 .gw-sum{font-size:12.8cqw;color:#fff3dc}
.gw-cur{margin-top:2cqw;font-size:max(9px,6.3cqw);font-weight:600;color:var(--gw-mute);letter-spacing:.12em}
.gw-label{position:absolute;left:50%;bottom:-3%;z-index:3;width:76%;transform:translateX(-50%);pointer-events:none}
.gw-place.p1 .gw-label{width:66%}
.gw-who{display:flex;flex-direction:column;align-items:center;gap:6px;max-width:100%}
.gw-who .user-avatar,.gw-who>img{width:30cqw;height:30cqw}
.gw-place.p1 .gw-who .user-avatar,.gw-place.p1 .gw-who>img{width:28cqw;height:28cqw}
.gw-who b{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:max(10px,7.4cqw)}
.gw-who a{color:inherit;text-decoration:none;max-width:100%}
.gw-place .gw-sum-s{margin-top:2cqw;font-size:max(10px,6.8cqw);color:#ffd18a;font-weight:700;font-variant-numeric:tabular-nums}

/* призраки */
.gw-ghost{position:absolute;z-index:3;width:96px;pointer-events:none;will-change:transform;animation:gwDrift 9s ease-in-out infinite}
.gw-ghost video,.gw-ghost img{display:block;width:100%;height:auto}
.gw-ghost.g1{left:-6px;top:6%}
.gw-ghost.g2{right:-6px;top:30%;width:74px;z-index:3;animation-duration:11s;animation-delay:-4s}
.gw-ghost.g2>*{transform:scaleX(-1)}

@keyframes gwBob{50%{transform:translateY(-5px)}}
@keyframes gwHover{50%{transform:translateY(-4px)}}
@keyframes gwGlow{50%{opacity:.95}}
@keyframes gwShine{0%,62%{transform:translateX(-140%)}86%,100%{transform:translateX(140%)}}
@keyframes gwRise{from{opacity:0;transform:translateY(26px) scale(.96)}}
@keyframes gwDrift{0%,100%{transform:translate(0,0) rotate(0)}30%{transform:translate(8px,-12px) rotate(3deg)}65%{transform:translate(-6px,6px) rotate(-2deg)}}

@container gw (max-width:900px){.gw h2{font-size:33px}}
@container gw (max-width:700px){
 .gw-body{grid-template-columns:1fr;min-height:0}
 .gw-scene video,.gw-scene img{object-position:84% 0}
 .gw-body::before{background:linear-gradient(180deg,#0d0811e6 0%,#0d0811b3 34%,#0d081166 58%,#0d0811e6 100%)}
 .gw-left{display:contents}
 .gw-head{padding:20px 16px 0}
 .gw-pod{order:2;padding:18px 8px 26px}
 .gw-rules{order:3;padding:6px 16px 18px;max-width:none}
 .gw h2{font-size:28px}
 .gw-place{max-width:150px;margin:0 -1.5%}.gw-place.p1{width:38%;max-width:196px}
 .gw-ghost{width:64px}.gw-ghost.g1{left:-10px;top:0}.gw-ghost.g2{right:-14px;top:-4%;width:52px}
}
@media (max-width:700px){.gw{border-radius:18px}}
/* баннер за экраном или вкладка скрыта: анимации стоят */
.gw.gw-paused *,.gw.gw-paused *::before,.gw.gw-paused *::after{animation-play-state:paused!important}
@media (prefers-reduced-motion:reduce){.gw *,.gw *::before,.gw *::after{animation:none!important}.gw-scene video{display:none}}
