/* Karnawał: aksamitny fiolet, złoto i turkus. */
.carnival-decor{display:none;position:fixed;inset:0;overflow:hidden;pointer-events:none;z-index:21}.carnival-theme .carnival-decor{display:block}
.carnival-decor>span{position:absolute;left:var(--x);top:-25px;width:6px;height:12px;background:#edc66b;border-radius:1px;opacity:.4;animation:carnival-confetti var(--duration) linear var(--delay) infinite}
.carnival-decor>span:nth-child(3n){background:#71c8be;border-radius:50%;width:8px;height:8px}.carnival-decor>span:nth-child(3n+1){background:#d49ce3}
.carnival-ribbon{position:absolute;top:155px;width:24px;height:150px;border-radius:50%;border:4px dashed #edc66b;opacity:.3;animation:carnival-sway 7s ease-in-out infinite alternate}.ribbon-left{left:18px;transform:rotate(-12deg)}.ribbon-right{right:18px;border-color:#71c8be;animation-delay:-3s;transform:rotate(15deg)}
.carnival-mask{position:absolute;right:18px;bottom:30px;font-size:44px;opacity:.45;filter:drop-shadow(0 0 14px #edc66b30)}
@keyframes carnival-confetti{0%{transform:translate3d(0,-30px,0) rotate(0deg)}50%{transform:translate3d(30px,50vh,0) rotate(180deg)}100%{transform:translate3d(-15px,calc(100vh + 60px),0) rotate(360deg)}}
@keyframes carnival-sway{to{transform:translateY(15px) rotate(12deg)}}
body.carnival-theme{--ink:#fff5df;--muted:#c9b9d9;--yellow:#edc66b;--paper:#1b1028;--line:#634769;color-scheme:dark;background:radial-gradient(ellipse at 10% 15%,#412051,transparent 55%),#1b1028}
.carnival-theme .header{background:#1b1028ee;border-color:var(--line)}
.carnival-theme .hero,.carnival-theme .join{background:radial-gradient(ellipse at 85% 15%,#633564,transparent 60%),linear-gradient(125deg,#231431,#40213f)}
.carnival-theme .hero-description,.carnival-theme .game-card p{color:#c9b9d9}.carnival-theme h2>span{color:#d4a5da}
.carnival-theme .hero h1 .chaos,.carnival-theme .brand-dot,.carnival-theme .art-spark,.carnival-theme .feature-row span,.carnival-theme .tips-doodle{color:#edc66b}
.carnival-theme .chaos svg{stroke:#edc66b}
.carnival-theme .hero-image-wrap{border-color:#82658c;box-shadow:12px 16px 0 #edc66b20;background:radial-gradient(circle,#684170,#23223e)}
.carnival-theme .hero-image{object-fit:contain;padding:12px 12px 34px}
.carnival-theme ::selection{background:#edc66b;color:#281a32}
.carnival-theme .gallery-item:hover b{color:#281a32}
.carnival-theme .sticker{background:#292044;border-color:#edc66b;box-shadow:4px 4px 0 #397d82}
.carnival-theme .ticker{background:#edc66b;color:#281a32;border-color:#917645}
.carnival-theme .status-dot,.carnival-theme .live-dot{background:#edc66b}
.carnival-theme .mini-faces span{background:#292044;border-color:#82658c}
.carnival-theme .button{background:#edc66b;color:#281a32}.carnival-theme .button:hover{background:#ffe0a1}
.carnival-theme .gameplay,.carnival-theme .character-catalog,.carnival-theme .characters{background:#251733}
.carnival-theme .card-yellow{background:#403044}.carnival-theme .card-lilac{background:#422746}.carnival-theme .card-peach{background:#1e4247}
.carnival-theme .game-card,.carnival-theme .card-tag{border-color:#82658c}
.carnival-theme .catalog-search,.carnival-theme .catalog-character,.carnival-theme .fan-gallery .gallery-item{background:#30203e}
.carnival-theme .catalog-search input::placeholder{color:var(--muted)}
.carnival-theme .catalog-avatar-image,.carnival-theme .style-image-wrap,.carnival-theme .catalog-preview-art{background:radial-gradient(circle,#654270,#233744)}
.carnival-theme .style-card{background:#291a36;border-color:var(--line)}.carnival-theme .style-card:hover{background:#4a2c50;border-color:#edc66b}
.carnival-theme .catalog-navigation button:not(:disabled):hover{color:#281a32}
.carnival-theme .style-rarity{color:#bce4dc}.carnival-theme .style-zoom{background:#292044;color:#fff5df}
.carnival-theme .style-track{scrollbar-color:#a884b4 #30203e}
.carnival-theme .style-track::-webkit-scrollbar-track{background:#30203e}.carnival-theme .style-track::-webkit-scrollbar-thumb{background:#a884b4}
.carnival-theme .character-photo{background:radial-gradient(circle,#684170,#23223e)}
.carnival-theme .character-badge{background:#292044;color:#edc66b}
.carnival-theme .team-style-toolbar{background:#392441;border-color:#82658c}.carnival-theme .team-style-toolbar>p{color:#c9b9d9}
.carnival-theme .team-style-all,.carnival-theme .character-style-button{background:#30203e;color:#fff5df;border-color:#82658c}
.carnival-theme .team-style-all[aria-pressed="true"],.carnival-theme .character-style-button[aria-pressed="true"],.carnival-theme .filter-button.active{background:#edc66b;border-color:#edc66b;color:#281a32}
.carnival-theme .character-copy>.character-style-caption{background:#392441;color:#cbece4}
.carnival-theme .filter-button:hover{background:#4a2c50}.carnival-theme .fan-gallery .gallery-item>.gallery-tag{color:#d4a5da}
.carnival-theme .faq summary>b{background:#4a2c50}.carnival-theme .faq details[open] summary>b{background:#edc66b;color:#281a32}
.carnival-theme dialog{background:#251733;color:#fff5df}.carnival-theme .lightbox-close{background:#292044;color:#fff5df}
.carnival-theme .snow-toggle{opacity:.6;cursor:not-allowed}.carnival-theme #snowfall{display:none}.carnival-theme .snowflake{animation-play-state:paused}
.character-card[data-current-style="carnival"] .character-photo{height:390px;background:radial-gradient(circle at 50% 45%,#684170,#23223e)}
.character-card[data-current-style="carnival"] .character-photo img{width:100%;height:100%;max-height:390px;object-fit:contain;padding:16px;animation:appear .4s ease}
.character-card[data-current-style="carnival"] .character-badge{background:#292044;color:#edc66b}
.fan-gallery .gallery-carnival{grid-column:span 4}.fan-gallery .gallery-carnival img{background:radial-gradient(circle,#684170,#23223e);padding:12px;max-height:420px;object-fit:contain}
.fan-gallery .gallery-carnival>.gallery-tag{color:#9573a1}.filter-button[data-filter="carnival"].active{background:#edc66b;border-color:#edc66b;color:#281a32}
@media(max-width:800px){.carnival-theme .nav nav{background:#1b1028}.fan-gallery .gallery-carnival{grid-column:span 3}.character-card[data-current-style="carnival"] .character-photo{height:340px}.carnival-ribbon{width:15px;height:100px}}
@media(max-width:540px){.fan-gallery .gallery-carnival{grid-column:span 1}.character-card[data-current-style="carnival"] .character-photo{height:350px}.carnival-ribbon,.carnival-mask{display:none}.carnival-decor>span:nth-child(even){display:none}}
@media(prefers-reduced-motion:reduce){.carnival-decor>span{animation:none;top:20%;opacity:.15}.carnival-decor>span:nth-child(3n){top:75%}.carnival-ribbon,.character-card[data-current-style="carnival"] .character-photo img{animation:none}}
