@charset "UTF-8";.count-up-number{display:inline-block;font-variant-numeric:tabular-nums;transition:color .3s ease}.count-up-number.animating{text-shadow:0 0 8px linear-gradient(135deg,#007AFF,#0051D8);color:#007aff;animation:countUpPulse .6s ease-out}@keyframes countUpPulse{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}@media (max-width: 768px){.count-up-number{font-size:inherit;line-height:1.2}}@media (prefers-contrast: high){.count-up-number.animating{text-shadow:none;font-weight:700}}@media (prefers-reduced-motion: reduce){.count-up-number.animating{animation:none;text-shadow:none}}.global-stats-section{padding:2rem 0;display:flex;justify-content:center;align-items:center}.global-stats-widget{background:linear-gradient(135deg,#1a1a1a 0%,#2d2d2d 100%);border-radius:16px;padding:2rem;box-shadow:0 8px 32px #0000004d;border:1px solid rgba(255,255,255,.1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);max-width:900px;width:100%;transition:transform .3s ease,box-shadow .3s ease}.global-stats-widget:hover{transform:translateY(-4px);box-shadow:0 12px 40px #0006}.stats-header{display:flex;align-items:center;margin-bottom:2rem;gap:1rem}.stats-header .stats-icon{width:48px;height:48px;background:linear-gradient(135deg,#007AFF,#0051D8);border-radius:12px;display:flex;align-items:center;justify-content:center;color:#fff}.stats-header .stats-icon svg{width:24px;height:24px}.stats-header .stats-title h3{color:#fff;font-size:1.5rem;font-weight:600;margin:0;text-transform:capitalize}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;margin-bottom:2rem}.stat-card{background:rgba(255,255,255,.05);border-radius:12px;padding:1.5rem;display:flex;align-items:center;gap:1rem;transition:all .3s ease;border:1px solid rgba(255,255,255,.1);position:relative}.stat-card:hover{background:rgba(255,255,255,.08);transform:translateY(-2px);box-shadow:0 4px 16px #0003}.stat-card.stats-pulse-update{animation:statsUpdatePulse 2s ease-out;background:rgba(99,102,241,.15);border-color:#6366f166;box-shadow:0 0 20px #6366f14d;transform:scale(1.02)}.stat-card.stats-animating .stat-number{animation:numberGlow 2.5s ease-out}.stat-card.stats-animating .stat-icon{animation:iconBounce 2.5s ease-out}.stat-card .stat-icon{width:40px;height:40px;background:linear-gradient(135deg,#007AFF,#0051D8);border-radius:8px;display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0}.stat-card .stat-icon svg{width:20px;height:20px}.stat-card .stat-number{color:#fff;font-size:1.75rem;font-weight:700;line-height:1.2;margin-bottom:.25rem;font-variant-numeric:tabular-nums}.stat-card .stat-label{color:#9ca3af;font-size:.875rem;font-weight:500;text-transform:uppercase;letter-spacing:.05em}.stat-card .stat-update-indicator{position:absolute;top:-10px;right:-10px;background:linear-gradient(135deg,#007AFF,#0051D8);color:#fff;padding:.25rem .5rem;border-radius:20px;font-size:.75rem;font-weight:600;animation:updateIndicatorFloat 3s ease-out;box-shadow:0 2px 8px #007aff66}.stat-card .stat-update-indicator span{display:flex;align-items:center;gap:.25rem}.stats-footer{display:flex;justify-content:space-between;align-items:center;padding-top:1.5rem;border-top:1px solid rgba(255,255,255,.1)}.stats-footer .live-indicator{display:flex;align-items:center;gap:.5rem;color:#007aff;font-size:.875rem;font-weight:500}.stats-footer .live-indicator .pulse-dot{width:8px;height:8px;background:#007AFF;border-radius:50%;animation:pulse 2s infinite}.stats-footer .last-updated{color:#9ca3af;font-size:.875rem;font-weight:400}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(1.2)}}@keyframes statsUpdatePulse{0%{transform:scale(1);box-shadow:0 0 #6366f166}25%{transform:scale(1.05);box-shadow:0 0 20px #6366f199}50%{transform:scale(1.02);box-shadow:0 0 30px #6366f166}to{transform:scale(1);box-shadow:0 0 5px #6366f133}}@keyframes numberGlow{0%,to{text-shadow:none}25%{text-shadow:0 0 10px rgba(99,102,241,.6)}50%{text-shadow:0 0 20px rgba(99,102,241,.8);transform:scale(1.05)}75%{text-shadow:0 0 15px rgba(99,102,241,.6)}}@keyframes iconBounce{0%,to{transform:scale(1) rotate(0)}25%{transform:scale(1.1) rotate(5deg)}50%{transform:scale(1.2) rotate(-5deg)}75%{transform:scale(1.05) rotate(2deg)}}@keyframes updateIndicatorFloat{0%{transform:translateY(-20px) scale(0);opacity:0}20%{transform:translateY(-15px) scale(1.1);opacity:1}80%{transform:translateY(-5px) scale(1);opacity:1}to{transform:translateY(-20px) scale(.8);opacity:0}}@media (max-width: 768px){.global-stats-widget{margin:0 1rem;padding:1.5rem}.stats-grid{grid-template-columns:1fr;gap:1rem}.stat-card{padding:1rem}.stat-card .stat-number{font-size:1.5rem}.stats-header .stats-title h3{font-size:1.25rem}.stats-footer{flex-direction:row;gap:.75rem;align-items:flex-start}}.image-wrapper{position:relative;display:inline-block;width:100%;height:100%}.image-wrapper .image-component{width:100%;height:100%;display:block;transition:opacity .3s ease}.image-wrapper .image-component.loading{opacity:.7}.image-wrapper .image-component.error{opacity:.5;filter:grayscale(100%)}.image-wrapper .image-loading-overlay{position:absolute;top:0;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.8);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.image-wrapper .image-loading-overlay .loading-spinner{width:32px;height:32px;border:3px solid #f3f3f3;border-top:3px solid #007bff;border-radius:50%;animation:spin 1s linear infinite}.image-wrapper .image-error-overlay{position:absolute;top:0;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.9);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.image-wrapper .image-error-overlay .error-content{text-align:center;padding:16px}.image-wrapper .image-error-overlay .error-content .error-text{display:block;color:#dc3545;font-size:14px;margin-bottom:8px}.image-wrapper .image-error-overlay .error-content .retry-button{background:#007bff;color:#fff;border:none;border-radius:4px;padding:8px 16px;font-size:12px;cursor:pointer;transition:background .2s ease}.image-wrapper .image-error-overlay .error-content .retry-button:hover{background:#0056b3}.image-wrapper .image-error-overlay .error-content .retry-button:active{transform:translateY(1px)}.image-responsive{width:100%;height:auto}.image-cover{width:100%;height:100%;object-fit:cover}.image-contain{width:100%;height:100%;object-fit:contain}.collections-carousel-wrapper{width:100%;margin:0 auto;padding:7rem 0;overflow:hidden;position:relative}.collections-carousel-wrapper .carousel-header{text-align:center;margin-bottom:3rem;padding:0 2rem}.collections-carousel-wrapper .carousel-header .carousel-title{font-size:clamp(2.5rem,5vw,3.5rem);font-weight:800;margin:0 0 1rem;background:linear-gradient(135deg,#007AFF 0%,#0051D8 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1.1;letter-spacing:-.02em}.collections-carousel-wrapper .carousel-header .carousel-subtitle{font-size:1.125rem;color:#94a3b8;font-weight:400;line-height:1.6;margin:0}.collections-carousel-wrapper .carousel-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:6rem 2rem;color:#64748b}.collections-carousel-wrapper .carousel-loading .loading-spinner{width:48px;height:48px;border:3px solid rgba(0,122,255,.1);border-radius:50%;border-top-color:#007aff;animation:spin 1.2s ease-in-out infinite;margin-bottom:1.5rem}.collections-carousel-wrapper .carousel-loading p{font-size:1.125rem;font-weight:500;margin:0}.collections-carousel{display:flex;flex-direction:column;gap:1.5rem;gap:50px;width:100%;position:relative}.collections-carousel.paused .carousel-track{animation-play-state:paused}.carousel-track{display:flex;gap:1.5rem;width:max-content;position:relative}.carousel-track.carousel-track-right{animation:scrollRight 30s linear infinite}.carousel-track.carousel-track-left{animation:scrollLeft 30s linear infinite}.carousel-card{position:relative;width:200px;flex-shrink:0;text-decoration:none;cursor:pointer;transition:all .4s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column;align-items:center;gap:1rem}.carousel-card:hover{transform:scale(1.05) translateY(-8px);z-index:10}.carousel-card:hover .card-image-container{box-shadow:0 20px 40px #0000004d,0 8px 16px #007aff4d;border-color:#007aff80}.carousel-card:hover .card-image{transform:scale(1.05)}.carousel-card:hover .collection-name{color:#007aff}.carousel-card:hover .vote-counter{transform:scale(1.05)}.carousel-card.vote-pulse{animation:cardVotePulse 2s cubic-bezier(.4,0,.2,1)}.carousel-card.vote-pulse .vote-counter{animation:voteCounterGlow 2s cubic-bezier(.4,0,.2,1)}.carousel-card.vote-pulse .card-image-container{animation:imageRingGlow 2s cubic-bezier(.4,0,.2,1)}.carousel-card.vote-pulse .card-image-container:after{content:"";position:absolute;top:-5px;right:-5px;bottom:-5px;left:-5px;border-radius:50%;background:linear-gradient(135deg,rgba(0,122,255,.4),rgba(0,81,216,.4));filter:blur(15px);opacity:0;animation:glowPulse 2s cubic-bezier(.4,0,.2,1);z-index:-1}.carousel-card.vote-pulse .collection-name{animation:textShine 2s cubic-bezier(.4,0,.2,1)}.carousel-card .card-image-wrapper{width:100%;display:flex;justify-content:center}.carousel-card .card-image-container{position:relative;width:180px;height:180px;border-radius:50%;overflow:hidden;border:3px solid rgba(148,163,184,.2);transition:all .4s cubic-bezier(.4,0,.2,1);box-shadow:0 8px 25px #00000026,0 2px 8px #0000001a}.carousel-card .card-image{width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.4,0,.2,1)}.carousel-card .card-info{display:flex;flex-direction:column;align-items:center;gap:.5rem;width:100%}.carousel-card .collection-name{font-size:1.125rem;font-weight:700;color:#f8fafc;margin:0;text-align:center;line-height:1.3;transition:color .3s ease;text-shadow:0 1px 3px rgba(0,0,0,.2)}.carousel-card .vote-counter{display:flex;align-items:baseline;gap:.375rem;transition:all .4s cubic-bezier(.4,0,.2,1)}.carousel-card .vote-counter.animating{animation:voteCounterPulse 1.5s ease-out}.carousel-card .vote-counter .vote-count{font-size:1.5rem;font-weight:800;background:linear-gradient(135deg,#007AFF 0%,#0051D8 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-variant-numeric:tabular-nums;letter-spacing:-.01em;line-height:1}.carousel-card .vote-counter .vote-label{font-size:.875rem;font-weight:600;color:#94a3b8;text-transform:capitalize;line-height:1}.carousel-cta{display:flex;justify-content:center;padding:3rem 2rem 0}.carousel-cta .view-all-button{display:inline-flex;align-items:center;gap:.75rem;padding:1rem 2.5rem;background:linear-gradient(135deg,#007AFF 0%,#0051D8 100%);color:#fff;border-radius:16px;font-size:1rem;font-weight:700;text-decoration:none;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 16px #007aff4d;position:relative;overflow:hidden}.carousel-cta .view-all-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s ease}.carousel-cta .view-all-button:hover{transform:translateY(-2px) scale(1.02);box-shadow:0 8px 25px #007aff66}.carousel-cta .view-all-button:hover:before{left:100%}.carousel-cta .view-all-button:hover .cta-arrow{transform:translate(4px)}.carousel-cta .view-all-button:active{transform:translateY(0) scale(.98)}.carousel-cta .view-all-button span{position:relative;z-index:1}.carousel-cta .view-all-button .cta-arrow{width:18px;height:18px;transition:transform .3s cubic-bezier(.4,0,.2,1);position:relative;z-index:1}@keyframes scrollRight{0%{transform:translate(0)}to{transform:translate(-33.333%)}}@keyframes scrollLeft{0%{transform:translate(-33.333%)}to{transform:translate(0)}}@keyframes cardVotePulse{0%{transform:scale(1)}15%{transform:scale(1.08) translateY(-5px)}30%{transform:scale(1.05) translateY(-3px)}45%{transform:scale(1.03)}to{transform:scale(1)}}@keyframes imageRingGlow{0%,to{border-color:#94a3b833;box-shadow:0 8px 25px #00000026,0 2px 8px #0000001a}20%{border-color:#007aff;box-shadow:0 15px 45px #007aff80,0 5px 20px #007aff66,0 0 30px #007aff99,inset 0 0 20px #007aff33}50%{border-color:#007affb3;box-shadow:0 12px 35px #007aff66,0 4px 16px #007aff4d,0 0 25px #007aff80}}@keyframes glowPulse{0%{opacity:0;transform:scale(.8)}20%{opacity:1;transform:scale(1.1)}50%{opacity:.8;transform:scale(1.2)}to{opacity:0;transform:scale(1.4)}}@keyframes voteCounterGlow{0%,to{filter:brightness(1);transform:scale(1)}20%{filter:brightness(1.5) drop-shadow(0 0 10px rgba(0,122,255,.8));transform:scale(1.15)}50%{filter:brightness(1.3) drop-shadow(0 0 8px rgba(0,122,255,.6));transform:scale(1.08)}}@keyframes voteCounterPulse{0%{transform:scale(1)}30%{transform:scale(1.15)}to{transform:scale(1)}}@keyframes textShine{0%{filter:brightness(1)}20%{filter:brightness(1.4) drop-shadow(0 0 8px rgba(255,255,255,.5));transform:scale(1.02)}40%{filter:brightness(1.2);transform:scale(1.01)}to{filter:brightness(1);transform:scale(1)}}@media (max-width: 1024px){.carousel-card{width:180px}.carousel-card .card-image-container{width:160px;height:160px}.carousel-track{gap:1.25rem}}@media (max-width: 768px){.collections-carousel-wrapper{padding:3rem 0}.collections-carousel-wrapper .carousel-header{margin-bottom:2rem}.collections-carousel-wrapper .carousel-header .carousel-title{font-size:2.25rem}.collections-carousel-wrapper .carousel-header .carousel-subtitle{font-size:1rem}.carousel-card{width:160px}.carousel-card .card-image-container{width:140px;height:140px;border-width:2px}.carousel-card .collection-name{font-size:1rem}.carousel-card .vote-counter .vote-count{font-size:1.25rem}.carousel-card .vote-counter .vote-label{font-size:.75rem}.carousel-track{gap:1rem}.carousel-cta{padding-top:2rem}.carousel-cta .view-all-button{padding:.875rem 2rem;font-size:.9375rem}}@media (max-width: 480px){.collections-carousel-wrapper{padding:2rem 0}.carousel-card{width:140px}.carousel-card .card-image-container{width:120px;height:120px;border-width:2px}.carousel-card .collection-name{font-size:.875rem}.carousel-card .vote-counter .vote-count{font-size:1.125rem}.carousel-card .vote-counter .vote-label{font-size:.6875rem}}.rankings-carousel-section{width:100%;max-width:1280px;margin:80px auto 60px;padding:0 24px}@media (max-width: 768px){.rankings-carousel-section{margin:60px auto 40px;padding:0 16px}}.rankings-carousel-header{text-align:center;margin-bottom:48px}@media (max-width: 768px){.rankings-carousel-header{margin-bottom:32px}}.rankings-title{font-size:2.5rem;font-weight:700;color:var(--text-primary);margin:0 0 12px;letter-spacing:-.02em}@media (max-width: 768px){.rankings-title{font-size:2rem}}.rankings-subtitle{font-size:1.125rem;color:var(--text-secondary);margin:0;font-weight:400}@media (max-width: 768px){.rankings-subtitle{font-size:1rem}}.carousel-container{position:relative;width:100%;border-radius:24px;overflow:hidden}@media (max-width: 1280px){.carousel-container{padding:40px 0}}@media (max-width: 1024px){.carousel-container{padding:40px 0}}@media (max-width: 768px){.carousel-container{padding:32px 0;border-radius:16px}}@media (max-width: 480px){.carousel-container{padding:24px 0}}.carousel-nav-button{position:absolute;top:15%;transform:translateY(-50%);z-index:10;width:48px;height:48px;border-radius:50%;border:none;background:var(--background);box-shadow:0 4px 16px #00000026;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s cubic-bezier(.4,0,.2,1)}.carousel-nav-button svg{width:24px;height:24px;color:var(--text-primary);transition:transform .3s ease}.carousel-nav-button:hover:not(:disabled){background:var(--primary);box-shadow:0 6px 24px #5865f24d}.carousel-nav-button:hover:not(:disabled) svg{color:#fff;transform:scale(1.1)}.carousel-nav-button:active:not(:disabled){transform:translateY(-50%) scale(.95)}.carousel-nav-button:disabled{opacity:.5;cursor:not-allowed}.carousel-nav-button.prev{left:0}.carousel-nav-button.next{right:0;z-index:100}@media (max-width: 768px){.carousel-nav-button{width:40px;height:40px}.carousel-nav-button svg{width:20px;height:20px}}.carousel-slides-wrapper{width:100%;overflow:hidden}.carousel-slides{display:flex;width:100%;transition:transform .5s cubic-bezier(.4,0,.2,1)}.collection-slide{min-width:33.3333333333%;display:flex;flex-direction:column;gap:32px;padding:0 12px;opacity:1;transition:opacity .5s cubic-bezier(.4,0,.2,1)}.collection-slide.active{opacity:1}@media (max-width: 1024px){.collection-slide{min-width:50%}}@media (max-width: 768px){.collection-slide{min-width:100%;gap:24px}}.collection-slide-header{display:flex;flex-direction:column;align-items:center;gap:10px;margin-bottom:8px}@media (max-width: 768px){.collection-slide-header{flex-direction:column;text-align:center;gap:16px}}.collection-slide-header.clickable-header{cursor:pointer}.collection-slide-header.clickable-header:focus-visible{outline:2px solid var(--primary);outline-offset:4px}.collection-icon-wrapper{width:64px;height:64px;border-radius:16px;overflow:hidden;flex-shrink:0;background:var(--background);padding:0;box-shadow:0 4px 12px #0000001a}@media (max-width: 768px){.collection-icon-wrapper{width:56px;height:56px}}.collection-icon{width:100%;height:100%;object-fit:cover;border-radius:12px}.collection-info{flex:1}@media (max-width: 768px){.collection-info{text-align:center}}.collection-name{font-size:1.75rem;font-weight:700;color:var(--text-primary);margin:0;letter-spacing:-.01em}@media (max-width: 768px){.collection-name{font-size:1.5rem}}.nft-cards-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;width:100%}@media (max-width: 768px){.nft-cards-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width: 480px){.nft-cards-grid{grid-template-columns:repeat(3,1fr)}}.ranking-nft-card{border-radius:3px;overflow:hidden;transition:all .3s cubic-bezier(.4,0,.2,1);animation:fadeInUp .6s cubic-bezier(.4,0,.2,1) backwards;cursor:pointer}.ranking-nft-card:hover{transform:translateY(-8px);box-shadow:0 12px 32px #00000026}.ranking-nft-card:hover .nft-card-image{transform:scale(1.05)}.ranking-nft-card:focus{outline:2px solid var(--primary);outline-offset:2px}.ranking-nft-card:active{transform:translateY(-4px)}.nft-card-image-wrapper{width:100%;aspect-ratio:1;overflow:hidden;background:var(--surface);position:relative}.nft-card-image{width:100%;height:100%;object-fit:cover;transition:transform .4s cubic-bezier(.4,0,.2,1)}.nft-card-rating{display:flex;justify-content:center;margin-top:4px;align-items:center;gap:4px;padding:0;background-color:none}@media (max-width: 768px){.nft-card-rating{padding:12px}}.rating-icon{width:18px;height:18px;color:#ffc107;flex-shrink:0}.rating-value{font-size:.875rem;font-weight:600;color:var(--text-primary);letter-spacing:.01em}.carousel-indicators{display:flex;justify-content:center;gap:8px;margin-top:35px;padding-bottom:10px}@media (max-width: 768px){.carousel-indicators{margin-top:24px}}.carousel-indicator{width:8px;height:8px;border-radius:50%;border:none;background:var(--text-tertiary);cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);padding:0}.carousel-indicator:hover{background:var(--text-secondary);transform:scale(1.2)}.carousel-indicator.active{background:var(--primary);width:24px;border-radius:4px}.rankings-carousel-footer{display:flex;justify-content:center;margin-top:48px}@media (max-width: 768px){.rankings-carousel-footer{margin-top:32px}}.view-all-rankings-button{display:flex;align-items:center;gap:12px;padding:18px 48px;background:var(--primary);color:#fff;border:none;border-radius:12px;font-size:1.125rem;font-weight:600;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 16px #5865f24d}.view-all-rankings-button span{line-height:1}.view-all-rankings-button .button-arrow{width:20px;height:20px;transition:transform .3s cubic-bezier(.4,0,.2,1)}.view-all-rankings-button:hover{background:var(--primary-hover);box-shadow:0 6px 24px #5865f266;transform:translateY(-2px)}.view-all-rankings-button:hover .button-arrow{transform:translate(4px)}.view-all-rankings-button:active{transform:translateY(0);box-shadow:0 2px 12px #5865f24d}@media (max-width: 768px){.view-all-rankings-button{padding:16px 40px;font-size:1rem}.view-all-rankings-button .button-arrow{width:18px;height:18px}}@media (max-width: 480px){.view-all-rankings-button{width:100%;justify-content:center}}.rankings-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 24px;gap:16px}.rankings-loading .loading-spinner{width:48px;height:48px;border:4px solid var(--surface);border-top-color:var(--primary);border-radius:50%;animation:spin 1s linear infinite}.rankings-loading p{color:var(--text-secondary);font-size:1rem;margin:0}.landing-section{min-height:100vh;background:linear-gradient(135deg,#0f0f0f 0%,#1a1a1a 50%,#2d2d2d 100%);color:#fff}.landing-section.active{display:block}.landing-container{max-width:1200px;margin:0 auto;padding:0 1rem}.hero-section{text-align:center;padding:4rem 0 2rem;position:relative}.hero-section .hero-badge{display:inline-flex;align-items:center;gap:.75rem;padding:.75rem 1.5rem;border-radius:2rem;text-decoration:none;color:#fff;font-size:.875rem;font-weight:600;margin-bottom:3rem;transition:all .3s ease;border:1px solid rgba(255,255,255,.2)}.hero-section .hero-badge:hover{transform:translateY(-2px);box-shadow:0 8px 25px #007aff4d}.hero-section .hero-badge .apu-logo{width:24px;height:24px;border-radius:50%}.hero-section .hero-title{font-size:clamp(2.5rem,5vw,4rem);font-weight:800;line-height:1.2;margin:0 0 2rem;color:#fff}.hero-section .hero-title .gradient-text{background:linear-gradient(135deg,#007AFF,#0051D8);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.hero-section .hero-description{font-size:1.25rem;line-height:1.6;color:#9ca3af;max-width:600px;margin:0 auto 3rem}.homepage-footer{padding:3rem 0 2rem;margin-top:4rem;border-top:1px solid rgba(255,255,255,.1)}.homepage-footer .footer-content{display:flex;justify-content:space-between;align-items:center;max-width:1200px;margin:0 auto;padding:0 1rem}.homepage-footer .footer-copyright{color:#9ca3af;font-size:.875rem}.homepage-footer .footer-copyright p{margin:0}.homepage-footer .footer--social-links{display:flex;gap:1rem}.homepage-footer .footer--social-links .social-link{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:rgba(255,255,255,.1);border-radius:50%;color:#9ca3af;text-decoration:none;transition:all .3s ease;border:1px solid rgba(255,255,255,.1)}.homepage-footer .footer--social-links .social-link:hover{background:rgba(255,255,255,.2);color:#fff;transform:translateY(-2px);box-shadow:0 4px 12px #0000004d}.homepage-footer .footer--social-links .social-link.twitter-link:hover{background:#1da1f2;border-color:#1da1f2}.homepage-footer .footer--social-links .social-link.telegram-link:hover{background:#0088cc;border-color:#08c}.homepage-footer .footer--social-links .social-link .social-icon{width:20px;height:20px}@media (max-width: 768px){.hero-section{padding:2rem 0 1rem}.hero-section .hero-badge{margin-bottom:2rem;padding:.5rem 1rem;font-size:.8rem;gap:.5rem}.hero-section .hero-badge .apu-logo{width:20px;height:20px}.hero-section .hero-title{margin-bottom:1.5rem}.hero-section .hero-description{font-size:1.125rem;margin-bottom:2rem}.homepage-footer{padding:2rem 0 1rem;margin-top:2rem}.homepage-footer .footer-content{flex-direction:column;gap:1.5rem;text-align:center}.homepage-footer .footer--social-links{justify-content:center}.landing-container{padding:0 .75rem}}@media (max-width: 480px){.hero-section .hero-title{line-height:1.3}.hero-section .hero-description{font-size:1rem}.homepage-footer .footer--social-links .social-link{width:36px;height:36px}.homepage-footer .footer--social-links .social-link .social-icon{width:18px;height:18px}}.mode-sidebar{position:fixed;left:16px;top:50%;transform:translateY(-50%);z-index:1000}.mode-sidebar .mode-sidebar-content{display:flex;flex-direction:column;gap:12px;padding:12px 10px;background:rgba(15,15,15,.95);border:1px solid rgba(255,255,255,.1);border-radius:16px;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);box-shadow:0 8px 32px #0006,0 0 0 1px #ffffff0d}.mode-sidebar .mode-button-container{position:relative}.mode-sidebar .mode-button-container .mode-button{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:10px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.mode-sidebar .mode-button-container .mode-button svg{position:relative;z-index:2;pointer-events:none;display:inline-block!important;width:24px!important;height:24px!important;flex-shrink:0}.mode-sidebar .mode-button-container .mode-button:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;background:linear-gradient(135deg,rgba(99,102,241,.1) 0%,rgba(139,92,246,.1) 100%);opacity:0;transition:opacity .3s ease;z-index:0}.mode-sidebar .mode-button-container .mode-button:hover{transform:translateY(-2px);background:rgba(255,255,255,.1);border-color:#fff3;box-shadow:0 8px 25px #0000004d,0 0 0 1px #ffffff1a}.mode-sidebar .mode-button-container .mode-button:hover:before{opacity:1}.mode-sidebar .mode-button-container .mode-button:hover+.mode-tooltip{opacity:1;visibility:visible;transform:translate(0)}.mode-sidebar .mode-button-container .mode-button.active{background:linear-gradient(135deg,rgba(99,102,241,.3) 0%,rgba(139,92,246,.3) 100%);border-color:#6366f199;box-shadow:0 0 20px #6366f166,0 4px 12px #0003}.mode-sidebar .mode-button-container .mode-button.active:before{opacity:1;background:linear-gradient(135deg,rgba(99,102,241,.2) 0%,rgba(139,92,246,.2) 100%)}.mode-sidebar .mode-button-container .mode-button.active:hover{transform:translateY(-2px) scale(1.05);background:linear-gradient(135deg,rgba(99,102,241,.4) 0%,rgba(139,92,246,.4) 100%);border-color:#6366f1cc;box-shadow:0 0 25px #6366f199,0 6px 16px #0000004d}.mode-sidebar .mode-button-container .mode-button:active{transform:translateY(0) scale(.95)}.mode-sidebar .mode-button-container .mode-tooltip{position:absolute;left:calc(100% + 16px);top:50%;transform:translateY(-50%) translate(-8px);background:rgba(0,0,0,.9);color:#fff;padding:8px 12px;border-radius:8px;font-size:14px;font-weight:500;white-space:nowrap;opacity:0;visibility:hidden;transition:all .3s cubic-bezier(.4,0,.2,1);pointer-events:none;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1)}.mode-sidebar .mode-button-container .mode-tooltip:before{content:"";position:absolute;right:100%;top:50%;transform:translateY(-50%);border:6px solid transparent;border-right-color:#000000e6}.mode-sidebar .mode-button-container .mode-tooltip span{position:relative;z-index:1}@media (max-width: 1275px){.mode-sidebar{top:75%;position:fixed}}@media (max-width: 768px){.mode-sidebar{position:relative;left:auto;top:auto;bottom:auto;transform:none;display:flex;justify-content:center;width:100%;margin:40px 0 0;z-index:100}.mode-sidebar .mode-sidebar-content{display:flex;flex-direction:row;justify-content:center;align-items:center;padding:8px 16px;gap:16px;width:auto;margin:auto;max-width:calc((100vw - 32px)*.9)}.mode-sidebar .mode-button-container .mode-button{width:44px;height:44px}.mode-sidebar .mode-button-container .mode-button svg{width:24px!important;height:24px!important;position:relative;z-index:2;pointer-events:none;display:inline-block!important;flex-shrink:0;opacity:1!important;animation:none!important}.mode-sidebar .mode-button-container .mode-button svg *{animation:none!important}.mode-sidebar .mode-button-container .mode-button svg{transition:transform .2s ease,opacity .2s ease!important}.mode-sidebar .mode-button-container .mode-tooltip{display:none}.mode-sidebar.mobile-only{display:block!important}.mode-sidebar.desktop-only{display:none!important}}@media (min-width: 769px){.mode-sidebar.mobile-only{display:none}.mode-sidebar.desktop-only{display:block}}@keyframes glow{0%,to{box-shadow:0 0 20px #6366f14d}50%{box-shadow:0 0 30px #6366f180}}.mode-button.active:hover{animation:none}@keyframes trait-twist{0%,to{transform:scaleY(1.05) rotate(0);opacity:1}50%{transform:scaleY(1.1) rotate(5deg);opacity:.9}}@keyframes trait-pulse{0%,to{opacity:.6;stroke-width:1.5px}50%{opacity:1;stroke-width:2px}}@keyframes trait-node-pulse{0%,to{opacity:0;transform:scale(0)}25%{opacity:.3;transform:scale(.5)}50%{opacity:.6;transform:scale(1)}75%{opacity:.3;transform:scale(.5)}}@keyframes shuffle-draw{0%,to{stroke-dashoffset:24}50%{stroke-dashoffset:0}}@keyframes shuffle-draw-reverse{0%,to{stroke-dashoffset:-24}50%{stroke-dashoffset:0}}@keyframes shuffle-arrow-pulse{0%,to{opacity:.8;transform:scale(1)}50%{opacity:1;transform:scale(1.1)}}@keyframes shuffle-center-pulse{0%,to{opacity:.6;transform:scale(1)}50%{opacity:1;transform:scale(1.2)}}@keyframes shuffle-collection-dot{0%,80%,to{opacity:0;transform:scale(0)}10%,70%{opacity:1;transform:scale(1.5)}}@keyframes speed-pulse{0%,to{filter:brightness(1);transform:scale(1.1)}50%{filter:brightness(1.3);transform:scale(1.15)}}@keyframes speed-line{0%{opacity:0;transform:translate(-10px)}50%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(10px)}}@keyframes speed-line-reverse{0%{opacity:0;transform:translate(10px)}50%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(-10px)}}@keyframes speed-particle{0%,to{opacity:0;transform:scale(0) translate(0)}25%{opacity:1;transform:scale(1) translate(-5px,-5px)}50%{opacity:.8;transform:scale(1.2) translate(3px,3px)}75%{opacity:.6;transform:scale(.8) translate(8px,-3px)}}@keyframes speed-particle-small{0%,to{opacity:0;transform:scale(0) rotate(0)}50%{opacity:1;transform:scale(2) rotate(180deg)}}@keyframes share-pulse{0%,to{transform:scale(1);opacity:.8}50%{transform:scale(1.05);opacity:1}}@keyframes share-line{0%,to{opacity:0;stroke-dasharray:0,10}50%{opacity:.6;stroke-dasharray:5,5}}@keyframes share-special-pulse{0%,to{transform:scale(1);opacity:.8}50%{transform:scale(1.08);opacity:1}}@keyframes share-shimmer-show{0%,to{opacity:0}25%{opacity:.4}50%{opacity:.7}75%{opacity:.3}}@keyframes share-default-glow{0%,to{filter:drop-shadow(0 0 4px rgba(59,130,246,.8)) drop-shadow(0 0 8px rgba(139,92,246,.8));transform:scale(1)}25%{filter:drop-shadow(0 0 12px rgba(59,130,246,.9)) drop-shadow(0 0 16px rgba(139,92,246,.6)) drop-shadow(0 0 20px rgba(6,182,212,.4));transform:scale(1.05)}75%{filter:drop-shadow(0 0 8px rgba(139,92,246,.8)) drop-shadow(0 0 12px rgba(6,182,212,.8));transform:scale(1.03)}}@keyframes share-default-breathe{0%,to{opacity:.85;transform:scale(1)}33%{opacity:1;transform:scale(1.06)}66%{opacity:.95;transform:scale(1.04)}}@keyframes share-button-glow{0%,to{box-shadow:0 0 5px #3b82f64d}50%{box-shadow:0 0 20px #3b82f699,0 0 30px #8b5cf666}}@keyframes share-button-default-glow{0%,to{box-shadow:0 0 8px #3b82f666,0 0 12px #8b5cf64d;transform:translateY(0) scale(1)}33%{box-shadow:0 0 15px #3b82f699,0 0 20px #8b5cf680,0 0 25px #06b6d44d;transform:translateY(-1px) scale(1.02)}66%{box-shadow:0 0 12px #8b5cf680,0 0 16px #06b6d466;transform:translateY(0) scale(1.01)}}@keyframes share-border-default-pulse{0%,to{opacity:.15}50%{opacity:.3}}.mode-button-container:first-child .mode-button{background:linear-gradient(135deg,rgba(59,130,246,.2),rgba(139,92,246,.18),rgba(6,182,212,.15));border:1px solid rgba(255,255,255,.1);background-clip:padding-box;position:relative;animation:share-button-default-glow 2.5s ease-in-out infinite}.mode-button-container:first-child .mode-button svg{position:relative;z-index:2;pointer-events:none;display:inline-block!important;width:24px!important;height:24px!important;flex-shrink:0;opacity:1!important}.mode-button-container:first-child .mode-button:before{content:"";position:absolute;top:-2px;left:-2px;right:-2px;bottom:-2px;border-radius:inherit;background:linear-gradient(135deg,#3b82f6,#8b5cf6,#06b6d4);z-index:-1;opacity:.15;transition:opacity .3s ease;animation:share-border-default-pulse 3.5s ease-in-out infinite}.mode-button-container:first-child .mode-button:hover:not(:disabled){background:linear-gradient(135deg,rgba(59,130,246,.2),rgba(139,92,246,.2));animation:share-button-glow 2s ease-in-out infinite}.mode-button-container:first-child .mode-button:hover:not(:disabled):before{opacity:1}.mode-button-container:first-child .mode-button:hover:not(:disabled) path{fill:#fff;opacity:1}.mode-button-container:first-child .mode-button:active:not(:disabled){transform:translateY(-1px) scale(1.02)}.mode-button-container:first-child .mode-button.active{background:linear-gradient(135deg,rgba(59,130,246,.3),rgba(139,92,246,.3))}.mode-button-container:first-child .mode-button.active:before{opacity:1;animation:share-special-pulse 2s ease-in-out infinite}.mode-button-container:first-child .mode-tooltip span{background:linear-gradient(135deg,#3b82f6,#8b5cf6);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-weight:600;text-shadow:0 0 10px rgba(59,130,246,.5)}.reactions-container{display:flex;flex-direction:column;gap:.5rem;padding:1rem;background:rgba(255,255,255,.03);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:.5px solid rgba(255,255,255,.08);border-radius:16px;margin-top:1rem;transition:all .3s cubic-bezier(.25,.46,.45,.94)}.reactions-container:hover{background:rgba(255,255,255,.05);border-color:#ffffff1f;transform:translateY(-1px)}.reactions-container.compact{padding:.75rem;margin-top:.75rem;border-radius:12px}.reactions-container.compact .emoji-button{min-width:36px;height:36px;font-size:1.2rem}.reactions-container.compact .emoji-button .emoji-count{font-size:.7rem;min-width:14px;height:14px}.reactions-container.loading{pointer-events:none;opacity:.7}.reactions-container .reactions-list{display:flex;align-items:center;justify-content:center;gap:.75rem;flex-wrap:wrap}.reactions-container .emoji-button{position:relative;display:flex;align-items:center;justify-content:center;min-width:44px;height:44px;padding:.5rem;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:12px;cursor:pointer;transition:all .2s cubic-bezier(.25,.46,.45,.94);font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,sans-serif;user-select:none;-webkit-user-select:none;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.reactions-container .emoji-button:focus{outline:none;box-shadow:0 0 0 2px #ffd70080}.reactions-container .emoji-button:disabled{cursor:not-allowed;opacity:.6}.reactions-container .emoji-button.no-count{opacity:.8;transform:scale(.95)}.reactions-container .emoji-button.no-count .emoji-symbol{filter:grayscale(.3) brightness(.8);opacity:.7}.reactions-container .emoji-button.no-count:hover:not(:disabled){opacity:.7;transform:scale(1);background:rgba(255,255,255,.08);border-color:#ffffff26}.reactions-container .emoji-button.no-count:hover:not(:disabled) .emoji-symbol{filter:grayscale(.1) brightness(.9);opacity:.9}.reactions-container .emoji-button.active{background:rgba(255,215,0,.15);border-color:#ffd7004d;transform:scale(1.05);box-shadow:0 2px 8px #ffd70033,inset 0 1px #ffffff1a}.reactions-container .emoji-button.active .emoji-symbol{filter:none;opacity:1;transform:scale(1.1)}.reactions-container .emoji-button.active:hover:not(:disabled){background:rgba(255,215,0,.2);border-color:#ffd70066;transform:scale(1.1);box-shadow:0 4px 12px #ffd7004d,inset 0 1px #ffffff26}.reactions-container .emoji-button.has-count:not(.active){opacity:1;transform:scale(1);background:rgba(255,255,255,.08);border-color:#ffffff26}.reactions-container .emoji-button.has-count:not(.active) .emoji-symbol{filter:none;opacity:1}.reactions-container .emoji-button.has-count:not(.active):hover:not(:disabled){background:rgba(255,255,255,.12);border-color:#fff3;transform:scale(1.05);box-shadow:0 2px 8px #0003,inset 0 1px #ffffff1a}.reactions-container .emoji-button:active:not(:disabled){transform:scale(.95)}.reactions-container .emoji-button .emoji-symbol{font-size:1.4rem;line-height:1;transition:all .2s cubic-bezier(.25,.46,.45,.94)}.reactions-container .emoji-button .emoji-count{position:absolute;top:-6px;right:-6px;min-width:18px;height:18px;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:700;color:#1d1d1f;background:rgba(255,255,255,.95);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:.5px solid rgba(0,0,0,.08);border-radius:50%;box-shadow:0 2px 6px #00000026,inset 0 1px #fff3;transition:all .2s cubic-bezier(.25,.46,.45,.94);z-index:2}.reactions-container .emoji-button[aria-label*=Fire].active{background:rgba(255,107,53,.15);border-color:#ff6b354d;box-shadow:0 2px 8px #ff6b3533,inset 0 1px #ffffff1a}.reactions-container .emoji-button[aria-label*=Fire].active:hover:not(:disabled){background:rgba(255,107,53,.2);border-color:#ff6b3566}.reactions-container .emoji-button[aria-label*=Diamond].active{background:rgba(77,171,247,.15);border-color:#4dabf74d;box-shadow:0 2px 8px #4dabf733,inset 0 1px #ffffff1a}.reactions-container .emoji-button[aria-label*=Diamond].active:hover:not(:disabled){background:rgba(77,171,247,.2);border-color:#4dabf766}.reactions-container .emoji-button[aria-label*=Crown].active{background:rgba(255,212,59,.15);border-color:#ffd43b4d;box-shadow:0 2px 8px #ffd43b33,inset 0 1px #ffffff1a}.reactions-container .emoji-button[aria-label*=Crown].active:hover:not(:disabled){background:rgba(255,212,59,.2);border-color:#ffd43b66}.reactions-container .emoji-button[aria-label*=Laugh].active{background:rgba(81,207,102,.15);border-color:#51cf664d;box-shadow:0 2px 8px #51cf6633,inset 0 1px #ffffff1a}.reactions-container .emoji-button[aria-label*=Laugh].active:hover:not(:disabled){background:rgba(81,207,102,.2);border-color:#51cf6666}.reactions-container .emoji-button[aria-label*=Cry].active{background:rgba(116,143,252,.15);border-color:#748ffc4d;box-shadow:0 2px 8px #748ffc33,inset 0 1px #ffffff1a}.reactions-container .emoji-button[aria-label*=Cry].active:hover:not(:disabled){background:rgba(116,143,252,.2);border-color:#748ffc66}.reactions-container .reactions-skeleton{display:flex;align-items:center;justify-content:center;gap:.75rem}.reactions-container .reactions-skeleton .emoji-button.skeleton{background:rgba(255,255,255,.05);border-color:#ffffff14;animation:skeleton-pulse 1.5s ease-in-out infinite;cursor:default}.reactions-container .reactions-skeleton .emoji-button.skeleton:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.08),transparent);animation:skeleton-shimmer 2s ease-in-out infinite;border-radius:inherit}@media (max-width: 768px){.reactions-container{padding:.75rem;margin-top:.75rem}.reactions-container .reactions-list{gap:.5rem}.reactions-container .emoji-button{min-width:40px;height:40px;font-size:1.3rem}.reactions-container .emoji-button .emoji-symbol{font-size:1.2rem}.reactions-container .emoji-button .emoji-count{min-width:16px;height:16px;font-size:.7rem;top:-4px;right:-4px}.reactions-container.compact{padding:.5rem}.reactions-container.compact .emoji-button{min-width:32px;height:32px}.reactions-container.compact .emoji-button .emoji-symbol{font-size:1rem}.reactions-container.compact .emoji-button .emoji-count{min-width:12px;height:12px;font-size:.6rem}}@keyframes skeleton-pulse{0%,to{opacity:.4}50%{opacity:.6}}@keyframes skeleton-shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.shared-traits{position:relative;margin:16px auto;max-width:600px;z-index:10}.shared-traits__container{background:rgba(15,15,15,.95);border:1px solid rgba(99,102,241,.3);border-radius:16px;padding:16px 20px;margin-top:50px;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);box-shadow:0 8px 32px #6366f11a,0 0 0 1px #6366f10d;transition:all .3s cubic-bezier(.4,0,.2,1)}.shared-traits__container:hover{border-color:#6366f180;box-shadow:0 12px 40px #6366f126,0 0 0 1px #6366f11a}.shared-traits__header{display:flex;align-items:center;justify-content:center;gap:12px;margin-bottom:12px}.shared-traits__icon{width:24px;height:24px}.shared-traits__icon .dna-icon{width:100%;height:100%;color:#6366f1;animation:dna-pulse 2s ease-in-out infinite}.shared-traits__title{font-size:14px;font-weight:600;color:#6366f1;text-transform:uppercase;letter-spacing:.5px}.shared-traits__badges{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-bottom:8px}.shared-traits__badge{position:relative;display:inline-flex;align-items:center;padding:6px 12px;background:linear-gradient(135deg,rgba(99,102,241,.15) 0%,rgba(139,92,246,.15) 100%);border:1px solid rgba(99,102,241,.3);border-radius:20px;font-size:12px;font-weight:500;color:#fff;transition:all .3s ease;overflow:hidden}.shared-traits__badge .trait-text{position:relative;z-index:2}.shared-traits__badge .trait-pulse{position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,rgba(99,102,241,.3) 0%,rgba(139,92,246,.3) 100%);border-radius:20px;opacity:0;animation:trait-badge-pulse 1.5s ease-in-out infinite}.shared-traits__badge:hover{transform:translateY(-1px);border-color:#6366f180;background:linear-gradient(135deg,rgba(99,102,241,.25) 0%,rgba(139,92,246,.25) 100%)}.shared-traits__count{font-size:11px;color:#ffffffb3;text-align:center;font-weight:500}@keyframes dna-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(1.05)}}@keyframes trait-badge-pulse{0%,to{opacity:0;transform:scale(1)}50%{opacity:1;transform:scale(1.02)}}@media (max-width: 768px){.shared-traits{margin:12px auto;max-width:calc((100vw - 32px)*.9)}.shared-traits__container{padding:12px 16px}.shared-traits__badges{gap:6px}.shared-traits__badge{padding:4px 10px;font-size:11px}}.shared-traits[data-trait-mode=true] .shared-traits__container{border-color:#6366f199;box-shadow:0 12px 40px #6366f133,0 0 20px #6366f11a,0 0 0 1px #6366f126;animation:trait-mode-glow 3s ease-in-out infinite}.shared-traits[data-trait-mode=true] .shared-traits__title{animation:trait-mode-text-pulse 2s ease-in-out infinite}@keyframes trait-mode-glow{0%,to{box-shadow:0 12px 40px #6366f133,0 0 20px #6366f11a,0 0 0 1px #6366f126}50%{box-shadow:0 16px 48px #6366f14d,0 0 30px #6366f133,0 0 0 1px #6366f140}}@keyframes trait-mode-text-pulse{0%,to{color:#6366f1}50%{color:#8b5cf6;text-shadow:0 0 8px rgba(139,92,246,.5)}}.shared-traits{transition:all .4s cubic-bezier(.4,0,.2,1)}.shared-traits.fade-out{opacity:0;transform:translateY(10px) scale(.95)}.shared-traits.hidden{opacity:0;transform:translateY(20px) scale(.9);pointer-events:none}.shared-traits.fade-in{opacity:1;transform:translateY(0) scale(1);animation:shared-traits-fade-in .5s ease-out}@keyframes shared-traits-fade-in{0%{opacity:0;transform:translateY(20px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}.shared-battle-status{margin:20px auto 0;width:fit-content;max-width:100%}.shared-battle-status .status-container{background:linear-gradient(135deg,#1e293b 0%,#0f172a 100%);border:2px solid #fbbf24;border-radius:16px;padding:12px 20px;min-width:240px;text-align:center;box-shadow:0 8px 32px #0006,0 0 20px #fbbf2433;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);animation:statusSlideIn .5s ease-out}.shared-battle-status .status-header{display:flex;align-items:center;justify-content:center;gap:8px;margin-bottom:8px}.shared-battle-status .status-header .battle-icon{font-size:16px}.shared-battle-status .status-header .battle-title{font-weight:700;font-size:14px;color:#fbbf24;text-transform:uppercase;letter-spacing:.5px}.shared-battle-status .vote-progress{margin-bottom:8px}.shared-battle-status .vote-progress .vote-counter{display:flex;align-items:baseline;justify-content:center;gap:2px;margin-bottom:6px}.shared-battle-status .vote-progress .vote-counter .current-votes{font-size:20px;font-weight:800;color:#10b981}.shared-battle-status .vote-progress .vote-counter .separator{font-size:16px;color:#6b7280;margin:0 2px}.shared-battle-status .vote-progress .vote-counter .max-votes{font-size:16px;font-weight:600;color:#9ca3af}.shared-battle-status .vote-progress .vote-counter .label{font-size:12px;color:#6b7280;margin-left:4px;text-transform:lowercase}.shared-battle-status .vote-progress .progress-bar{width:100%;height:6px;background:#374151;border-radius:3px;overflow:hidden}.shared-battle-status .vote-progress .progress-bar .progress-fill{height:100%;background:linear-gradient(90deg,#10b981 0%,#059669 100%);border-radius:3px;transition:width .3s ease-out}.shared-battle-status .status-message{font-size:12px;font-weight:500}.shared-battle-status .status-message .active-message{color:#60a5fa}.shared-battle-status .status-message .complete-message{color:#fbbf24;font-weight:600}.shared-battle-status.complete .status-container{border-color:#10b981;box-shadow:0 8px 32px #0006,0 0 20px #10b9814d}.shared-battle-status.complete .battle-title{color:#10b981}.shared-battle-status.complete .progress-fill{background:linear-gradient(90deg,#fbbf24 0%,#f59e0b 100%)}@keyframes statusSlideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 768px){.shared-battle-status{margin:15px 10px 0;width:calc(100% - 20px)}.shared-battle-status .status-container{min-width:unset;width:100%;padding:10px 16px}}.championship-overlay{position:fixed;top:0;left:0;right:0;bottom:0;z-index:9999;display:flex;flex-direction:column;align-items:center;justify-content:center;pointer-events:none;opacity:0;transform:scale(.8)}.championship-overlay.entering{opacity:1;transform:scale(1);transition:all .8s cubic-bezier(.34,1.56,.64,1);pointer-events:auto}.championship-overlay.entering .championship-content{animation:championshipEnter .8s cubic-bezier(.34,1.56,.64,1) forwards;opacity:1;transform:translateY(0)}.championship-overlay.entering .sparkle-container .sparkle{animation:sparkleEnter .6s ease-out forwards;animation-delay:calc(var(--sparkle-delay, 0) * .1s)}.championship-overlay.displaying{opacity:1;transform:scale(1);pointer-events:auto}.championship-overlay.displaying .championship-content{opacity:1;transform:translateY(0)}.championship-overlay.displaying .championship-trophy .trophy-glow{animation:trophyPulse 2s ease-in-out infinite}.championship-overlay.displaying .sparkle-container .sparkle{opacity:1;animation-timing-function:ease-in-out;animation-iteration-count:infinite;animation-delay:calc(var(--sparkle-delay, 0) * .15s)}.championship-overlay.displaying .sparkle-container .sparkle.sparkle-1{animation:sparkleFloat 3.2s ease-in-out infinite}.championship-overlay.displaying .sparkle-container .sparkle.sparkle-2{animation:sparkleGlow 2.8s ease-in-out infinite}.championship-overlay.displaying .sparkle-container .sparkle.sparkle-3{animation:sparkleTwinkle 3.5s ease-in-out infinite}.championship-overlay.displaying .sparkle-container .sparkle.sparkle-4{animation:sparkleOrbit 4s ease-in-out infinite}.championship-overlay.displaying .sparkle-container .sparkle.sparkle-5{animation:sparkleBreath 2.5s ease-in-out infinite}.championship-overlay.displaying .sparkle-container .sparkle.sparkle-6{animation:sparkleWave 3.8s ease-in-out infinite}.championship-overlay.displaying .sparkle-container .sparkle.sparkle-7{animation:sparkleDrift 3.2s ease-in-out infinite}.championship-overlay.displaying .sparkle-container .sparkle.sparkle-8{animation:sparkleShimmer 2.7s ease-in-out infinite}.championship-overlay.displaying .sparkle-container .sparkle.sparkle-9{animation:sparkleFloat 3.1s ease-in-out infinite}.championship-overlay.displaying .sparkle-container .sparkle.sparkle-10{animation:sparkleGlow 3.4s ease-in-out infinite}.championship-overlay.displaying .sparkle-container .sparkle.sparkle-11{animation:sparkleTwinkle 2.9s ease-in-out infinite}.championship-overlay.displaying .sparkle-container .sparkle.sparkle-12{animation:sparkleBreath 3.6s ease-in-out infinite}.championship-overlay.exiting{opacity:0;transform:scale(1.1);transition:all 1s cubic-bezier(.25,.46,.45,.94)}.championship-overlay.exiting .championship-content{animation:championshipExit 1s cubic-bezier(.25,.46,.45,.94) forwards}.championship-overlay.hidden{opacity:0;transform:scale(.8);pointer-events:none}.championship-backdrop{position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at center,rgba(255,215,0,.15) 0%,rgba(255,165,0,.1) 30%,rgba(0,0,0,.8) 70%,rgba(0,0,0,.95) 100%);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.championship-content{position:relative;text-align:center;z-index:2;max-width:600px;padding:40px 20px;transform:translateY(50px);opacity:0}.championship-trophy{margin-bottom:30px}.championship-trophy .trophy-glow{font-size:120px;line-height:1;display:inline-block;filter:drop-shadow(0 0 30px rgba(255,215,0,.8));position:relative}.championship-trophy .trophy-glow:before{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:180px;height:180px;background:radial-gradient(circle,rgba(255,215,0,.2) 0%,rgba(255,215,0,.1) 50%,transparent 70%);border-radius:50%;z-index:-1}.championship-title{font-size:64px;font-weight:900;color:gold;margin:0 0 20px;text-shadow:0 0 20px rgba(255,215,0,.8),0 0 40px rgba(255,215,0,.6),0 4px 8px rgba(0,0,0,.3);background:linear-gradient(135deg,#FFD700 0%,#FFA500 50%,#FFD700 100%);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-size:200% 200%;animation:championshipShimmer 3s ease-in-out infinite}.championship-subtitle{font-size:24px;font-weight:600;color:#fff;margin:0 0 40px;text-shadow:0 2px 4px rgba(0,0,0,.5);opacity:.9}.championship-progress{margin-bottom:30px}.championship-progress .progress-text{font-size:18px;font-weight:600;color:#fff;margin-bottom:15px;opacity:.8}.championship-progress .progress-text .highlight{color:gold;font-weight:800;text-shadow:0 0 10px rgba(255,215,0,.6)}.championship-progress .progress-bar{width:300px;height:8px;background:rgba(255,255,255,.2);border-radius:4px;margin:0 auto;overflow:hidden;box-shadow:inset 0 2px 4px #0000004d}.championship-progress .progress-bar .progress-fill{height:100%;background:linear-gradient(90deg,#FFD700 0%,#FFA500 50%,#FFD700 100%);border-radius:4px;transition:width 1s cubic-bezier(.34,1.56,.64,1);box-shadow:0 0 10px #ffd70080;position:relative}.championship-progress .progress-bar .progress-fill:after{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.4) 50%,transparent 100%);animation:progressShimmer 2s ease-in-out infinite}.sparkle-container{position:absolute;top:0;left:0;right:0;bottom:0;pointer-events:none;overflow:hidden}.sparkle-container .sparkle{position:absolute;font-size:24px;color:gold;filter:drop-shadow(0 0 10px rgba(255,215,0,.8));opacity:0}.sparkle-container .sparkle.sparkle-1{top:10%;left:15%;--sparkle-delay: 1}.sparkle-container .sparkle.sparkle-2{top:20%;right:20%;--sparkle-delay: 3}.sparkle-container .sparkle.sparkle-3{top:30%;left:10%;--sparkle-delay: 2}.sparkle-container .sparkle.sparkle-4{top:40%;right:15%;--sparkle-delay: 4}.sparkle-container .sparkle.sparkle-5{top:60%;left:20%;--sparkle-delay: 1}.sparkle-container .sparkle.sparkle-6{top:70%;right:25%;--sparkle-delay: 3}.sparkle-container .sparkle.sparkle-7{top:80%;left:25%;--sparkle-delay: 2}.sparkle-container .sparkle.sparkle-8{top:15%;left:50%;--sparkle-delay: 4}.sparkle-container .sparkle.sparkle-9{top:85%;right:10%;--sparkle-delay: 1}.sparkle-container .sparkle.sparkle-10{top:25%;right:45%;--sparkle-delay: 3}.sparkle-container .sparkle.sparkle-11{top:75%;left:45%;--sparkle-delay: 2}.sparkle-container .sparkle.sparkle-12{top:55%;right:5%;--sparkle-delay: 4}.championship-continue{position:absolute;bottom:60px;left:50%;transform:translate(-50%);z-index:3}.championship-continue .continue-text{font-size:16px;font-weight:500;color:#ffffffb3;animation:continueFlash 2s ease-in-out infinite}@keyframes championshipEnter{0%{transform:translateY(50px) scale(.8);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}@keyframes championshipExit{0%{transform:translateY(0) scale(1);opacity:1}to{transform:translateY(-30px) scale(1.1);opacity:0}}@keyframes championshipShimmer{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}@keyframes trophyPulse{0%,to{transform:scale(1);filter:drop-shadow(0 0 30px rgba(255,215,0,.8))}50%{transform:scale(1.05);filter:drop-shadow(0 0 40px rgb(255,215,0))}}@keyframes sparkleEnter{0%{opacity:0;transform:scale(0) translateY(10px)}to{opacity:.8;transform:scale(1) translateY(0)}}@keyframes sparkleFloat{0%,to{transform:translateY(0) scale(1) rotate(0);opacity:.8}50%{transform:translateY(-8px) scale(1.05) rotate(15deg);opacity:1}}@keyframes sparkleGlow{0%,to{transform:scale(1);opacity:.7;filter:drop-shadow(0 0 8px rgba(255,215,0,.6))}50%{transform:scale(1.15);opacity:1;filter:drop-shadow(0 0 15px rgba(255,215,0,.9))}}@keyframes sparkleTwinkle{0%,to{opacity:.5;transform:scale(.9)}25%{opacity:1;transform:scale(1.1)}50%{opacity:.3;transform:scale(.8)}75%{opacity:.9;transform:scale(1.05)}}@keyframes sparkleOrbit{0%{transform:rotate(0) translate(4px) rotate(0) scale(1);opacity:.8}50%{transform:rotate(180deg) translate(6px) rotate(-180deg) scale(1.1);opacity:.6}to{transform:rotate(360deg) translate(4px) rotate(-360deg) scale(1);opacity:.8}}@keyframes sparkleBreath{0%,to{transform:scale(1);opacity:.6}50%{transform:scale(1.2);opacity:1}}@keyframes sparkleWave{0%{transform:translate(0) translateY(0);opacity:.7}33%{transform:translate(3px) translateY(-4px);opacity:1}66%{transform:translate(-2px) translateY(-3px);opacity:.5}to{transform:translate(0) translateY(0);opacity:.7}}@keyframes sparkleDrift{0%{transform:translateY(0) translate(0) scale(1);opacity:.8}50%{transform:translateY(-6px) translate(2px) scale(1.05);opacity:.9}to{transform:translateY(0) translate(0) scale(1);opacity:.8}}@keyframes sparkleShimmer{0%,to{opacity:.6;filter:brightness(1);transform:scale(1)}33%{opacity:1;filter:brightness(1.2);transform:scale(1.08)}66%{opacity:.4;filter:brightness(.9);transform:scale(.95)}}@keyframes progressShimmer{0%{left:-100%}50%{left:100%}to{left:100%}}@keyframes continueFlash{0%,to{opacity:.7}50%{opacity:1}}@media (max-width: 768px){.championship-content{max-width:90%;padding:30px 15px}.championship-trophy .trophy-glow{font-size:80px}.championship-trophy .trophy-glow:before{width:120px;height:120px}.championship-title{font-size:42px}.championship-subtitle{font-size:18px}.championship-progress .progress-bar{width:250px}.sparkle-container .sparkle{font-size:18px}}@media (max-width: 480px){.championship-trophy .trophy-glow{font-size:60px}.championship-trophy .trophy-glow:before{width:100px;height:100px}.championship-title{font-size:32px}.championship-subtitle{font-size:16px}.championship-progress .progress-bar{width:200px}.sparkle-container .sparkle{font-size:16px}}.antibot-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.9);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:10000;animation:fadeIn .3s ease}.antibot-challenge{background:var(--surface);border-radius:24px;padding:48px;max-width:500px;width:90%;box-shadow:0 24px 48px #00000080;animation:slideIn .4s cubic-bezier(.4,0,.2,1)}@media (max-width: 768px){.antibot-challenge{padding:32px 24px}}.challenge-header{text-align:center;margin-bottom:40px}.challenge-header h3{font-size:1.75rem;font-weight:700;color:var(--text-primary);margin:0 0 12px}.challenge-header p{font-size:1rem;color:var(--text-secondary);margin:0}.challenge-area{position:relative;margin-bottom:32px;min-height:280px;width:100%}@media (max-width: 480px){.challenge-area{min-height:240px}}.hold-button{position:relative;width:170px;height:170px;border-radius:50%;border:none;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff;font-size:1.125rem;font-weight:600;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 8px 24px #667eea4d;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}.hold-button:active{transform:scale(.95)}.hold-button:disabled{cursor:not-allowed;opacity:.7}.hold-button.holding{background:linear-gradient(135deg,#4f46e5 0%,#7c3aed 100%);box-shadow:0 12px 32px #4f46e580;transform:scale(1.05)}.hold-button.success{background:linear-gradient(135deg,#10b981 0%,#059669 100%);box-shadow:0 12px 32px #10b98180}.hold-button.success .button-text{font-size:1.5rem}.hold-button.failed{background:linear-gradient(135deg,#ef4444 0%,#dc2626 100%);box-shadow:0 12px 32px #ef444480;animation:shake .5s ease}.hold-button .button-text{position:relative;z-index:2;display:block;pointer-events:none}.hold-button .progress-ring{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.hold-button .progress-ring-svg{transform:rotate(-90deg);position:absolute;top:0;left:0}.hold-button .progress-ring-circle{fill:none;stroke:#ffffff4d;stroke-width:4;transition:stroke-dashoffset .05s linear}.challenge-instructions{text-align:center}.challenge-instructions p{font-size:.9375rem;color:var(--text-secondary);margin:0 0 8px}.challenge-instructions p:last-child{margin:0}.challenge-instructions .challenge-hint{font-size:.875rem;color:var(--text-tertiary);font-style:italic}.challenge-signin-prompt{margin-top:20px;padding-top:20px;border-top:1px solid rgba(255,255,255,.1);text-align:center;animation:fadeIn .4s ease .3s both}.signin-prompt-text{font-size:.875rem;color:var(--text-secondary);margin:0 0 12px;font-weight:500}.signin-prompt-button{padding:10px 24px;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff;border:none;border-radius:8px;font-size:.9375rem;font-weight:600;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 12px #667eea4d}.signin-prompt-button:hover{transform:translateY(-2px);box-shadow:0 6px 16px #667eea66}.signin-prompt-button:active{transform:translateY(0)}.challenge-error{margin-top:24px;padding:16px;background:rgba(239,68,68,.1);border:1px solid rgba(239,68,68,.3);border-radius:12px;color:#ef4444;text-align:center;font-size:.9375rem;font-weight:500;animation:slideIn .3s ease}@keyframes slideIn{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes shake{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-8px)}20%,40%,60%,80%{transform:translate(8px)}}@media (max-width: 480px){.antibot-challenge{padding:24px 16px}.challenge-header{margin-bottom:32px}.challenge-header h3{font-size:1.5rem}.challenge-header p{font-size:.9375rem}.hold-button{width:150px;height:150px;font-size:1rem}.hold-button .progress-ring-svg{width:150px;height:150px}.hold-button .progress-ring-circle{cx:75;cy:75;r:65}.challenge-signin-prompt{margin-top:16px;padding-top:16px}.signin-prompt-text{font-size:.8125rem}.signin-prompt-button{padding:8px 20px;font-size:.875rem}}@media (prefers-color-scheme: dark){.antibot-overlay{background:rgba(0,0,0,.95)}}.antibot-cooldown-screen{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--background);z-index:1000;overflow-y:auto;overflow-x:hidden;display:flex;flex-direction:column;min-height:100%}.cooldown-content{max-width:600px;width:100%;text-align:center;animation:fadeInUp .5s cubic-bezier(.4,0,.2,1);margin:auto;padding:24px}@media (max-width: 768px){.cooldown-content{padding:16px}}.cooldown-icon{width:120px;height:120px;margin:0 auto 32px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,rgba(239,68,68,.1) 0%,rgba(220,38,38,.1) 100%);border-radius:50%;border:3px solid rgba(239,68,68,.3)}.cooldown-icon svg{width:60px;height:60px;color:#ef4444}@media (max-width: 768px){.cooldown-icon{width:100px;height:100px;margin-bottom:24px}.cooldown-icon svg{width:50px;height:50px}}.cooldown-title{font-size:2rem;font-weight:700;color:var(--text-primary);margin:0 0 16px;letter-spacing:-.02em}@media (max-width: 768px){.cooldown-title{font-size:1.75rem}}.cooldown-message{font-size:1.125rem;line-height:1.6;color:var(--text-secondary);max-width:500px;margin:0 auto 40px}@media (max-width: 768px){.cooldown-message{font-size:1rem;margin-bottom:32px}}.cooldown-timer{background:var(--surface);border-radius:16px;padding:32px;margin-bottom:40px;box-shadow:0 4px 16px #0000001a}@media (max-width: 768px){.cooldown-timer{padding:24px;margin-bottom:32px}}.timer-display{margin-bottom:24px;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center}.timer-value{display:block;font-size:4rem;font-weight:700;color:#ef4444;line-height:1;margin-bottom:8px;font-variant-numeric:tabular-nums}@media (max-width: 768px){.timer-value{font-size:3rem}}.timer-label{display:block;font-size:.9375rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;font-weight:500}.timer-progress{width:100%;height:8px;background:rgba(239,68,68,.1);border-radius:4px;overflow:hidden}.timer-progress-bar{height:100%;background:linear-gradient(90deg,#ef4444 0%,#dc2626 100%);border-radius:4px;transition:width .3s ease}.timer-signin{margin-top:24px;padding-top:24px;border-top:1px solid rgba(255,255,255,.1);text-align:center}.signin-text{font-size:1rem;color:var(--text-secondary);margin:0 0 16px;font-weight:500}.signin-button{width:100%;padding:16px 24px;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff;border:none;border-radius:12px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 16px #667eea4d}.signin-button:hover{transform:translateY(-2px);box-shadow:0 6px 24px #667eea66}.signin-button:active{transform:translateY(0)}@media (max-width: 768px){.signin-button{padding:14px 20px;font-size:.9375rem}}.signin-benefit{font-size:.875rem;color:var(--text-tertiary);margin:12px 0 0;font-style:italic}.cooldown-info{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:32px;text-align:left}@media (max-width: 768px){.cooldown-info{grid-template-columns:1fr;gap:16px;margin-bottom:24px}}.info-box{background:var(--surface);border-radius:12px;padding:24px;border:1px solid rgba(255,255,255,.05)}@media (max-width: 768px){.info-box{padding:20px}}.info-box h3{font-size:1rem;font-weight:600;color:var(--text-primary);margin:0 0 12px}.info-box p{font-size:.9375rem;line-height:1.6;color:var(--text-secondary);margin:0}.info-box ul{margin:0;padding-left:20px}.info-box ul li{font-size:.9375rem;line-height:1.8;color:var(--text-secondary);margin-bottom:4px}.info-box ul li:last-child{margin-bottom:0}.cooldown-footer{padding-top:24px;border-top:1px solid rgba(255,255,255,.05)}.footer-note{font-size:.875rem;color:var(--text-tertiary);font-style:italic;margin:0}@keyframes fadeInUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.timer-value{animation:pulse 2s ease-in-out infinite}.twitter-connect{background:rgba(28,28,30,.95);backdrop-filter:blur(40px);-webkit-backdrop-filter:blur(40px);border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:2rem;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,sans-serif}.twitter-connect__header{display:flex;align-items:flex-start;gap:1rem;margin-bottom:1.5rem}.twitter-connect__icon{width:48px;height:48px;border-radius:12px;background:linear-gradient(135deg,#1d9bf0,#1a8cd8);display:flex;align-items:center;justify-content:center;flex-shrink:0}.twitter-connect__icon svg{width:24px;height:24px;color:#fff}.twitter-connect__title{flex:1}.twitter-connect__title h3{color:#fff;font-size:1.25rem;font-weight:700;margin:0 0 .5rem;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,sans-serif}.twitter-connect__title p{color:#8e8e93;font-size:.875rem;font-weight:500;margin:0;line-height:1.4}.twitter-connect__form{margin-bottom:1.5rem}.twitter-connect__input-group{display:flex;flex-direction:column;gap:1rem}@media (min-width: 768px){.twitter-connect__input-group{flex-direction:row;align-items:flex-start}}.twitter-connect__input-wrapper{position:relative;flex:1;max-width:300px}.twitter-connect__prefix{position:absolute;left:1rem;top:50%;transform:translateY(-50%);color:#8e8e93;font-size:1rem;font-weight:600;pointer-events:none;z-index:1}.twitter-connect__input{width:100%;padding:.75rem 1rem .75rem 2rem;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:12px;color:#fff;font-size:1rem;font-weight:500;transition:all .2s cubic-bezier(.25,.46,.45,.94);font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,sans-serif}.twitter-connect__input::placeholder{color:#636366}.twitter-connect__input:focus{outline:none;background:rgba(255,255,255,.08);border-color:#1d9bf0;box-shadow:0 0 0 3px #1d9bf01a}.twitter-connect__input:disabled{opacity:.6;cursor:not-allowed}.twitter-connect__actions{display:flex;gap:.5rem;align-items:flex-start}.twitter-connect__save-button,.twitter-connect__clear-button{padding:.75rem 1.5rem;border-radius:12px;font-size:.875rem;font-weight:600;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,sans-serif;cursor:pointer;transition:all .2s cubic-bezier(.25,.46,.45,.94);display:flex;align-items:center;gap:.5rem;white-space:nowrap}.twitter-connect__save-button{background:linear-gradient(135deg,#1d9bf0,#1a8cd8);border:1px solid rgba(29,155,240,.3);color:#fff}.twitter-connect__save-button:hover:not(:disabled){background:linear-gradient(135deg,#1a8cd8,#1976c2);transform:translateY(-1px);box-shadow:0 8px 24px #1d9bf040}.twitter-connect__save-button:active:not(:disabled){transform:translateY(0)}.twitter-connect__save-button:disabled{opacity:.6;cursor:not-allowed;transform:none!important}.twitter-connect__save-button .spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top:2px solid #ffffff;border-radius:50%;animation:spin 1s linear infinite}.twitter-connect__clear-button{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);color:#8e8e93}.twitter-connect__clear-button:hover:not(:disabled){background:rgba(255,255,255,.1);border-color:#fff3;color:#fff;transform:translateY(-1px)}.twitter-connect__clear-button:active:not(:disabled){transform:translateY(0)}.twitter-connect__clear-button:disabled{opacity:.6;cursor:not-allowed;transform:none!important}.twitter-connect__message{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;border-radius:12px;font-size:.875rem;font-weight:500;margin-top:1rem}.twitter-connect__message svg{width:16px;height:16px;flex-shrink:0}.twitter-connect__message--error{background:rgba(255,69,58,.1);border:1px solid rgba(255,69,58,.2);color:#ff453a}.twitter-connect__message--success{background:rgba(52,199,89,.1);border:1px solid rgba(52,199,89,.2);color:#32d74b}.twitter-connect__info{background:rgba(255,255,255,.02);border:1px solid rgba(255,255,255,.05);border-radius:12px;padding:1.5rem}.twitter-connect__info h4{color:#fff;font-size:.875rem;font-weight:600;margin:0 0 .75rem;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,sans-serif}.twitter-connect__info ul{margin:0;padding-left:1.25rem;color:#8e8e93;font-size:.8125rem;line-height:1.5}.twitter-connect__info ul li{margin-bottom:.375rem}.twitter-connect__info ul li:last-child{margin-bottom:0}@media (max-width: 767px){.twitter-connect{padding:1.5rem}.twitter-connect__header{margin-bottom:1rem}.twitter-connect__input-group{gap:.75rem}.twitter-connect__input-wrapper{max-width:none}.twitter-connect__actions{flex-wrap:wrap}.twitter-connect__save-button,.twitter-connect__clear-button{padding:.625rem 1.25rem;font-size:.8125rem}}.public-profile-toggle{background:rgba(28,28,30,.95);backdrop-filter:blur(40px);-webkit-backdrop-filter:blur(40px);border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:2rem;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,sans-serif}.public-profile-toggle__header{display:flex;align-items:center;gap:1rem;margin-bottom:1.5rem}.public-profile-toggle__icon{width:48px;height:48px;border-radius:12px;background:linear-gradient(135deg,#007aff,#0056cc);display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .3s cubic-bezier(.25,.46,.45,.94)}.public-profile-toggle__icon svg{width:24px;height:24px;color:#fff;transition:all .2s ease}.public-profile-toggle__content{flex:1;display:flex;align-items:center;justify-content:space-between;gap:1rem}.public-profile-toggle__info{flex:1}.public-profile-toggle__info h3{color:#fff;font-size:1.25rem;font-weight:700;margin:0 0 .5rem;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,sans-serif}.public-profile-toggle__info p{color:#8e8e93;font-size:.875rem;font-weight:500;margin:0;line-height:1.4}.public-profile-toggle__switch{position:relative;display:inline-block;width:56px;height:32px;cursor:pointer}.public-profile-toggle__switch input{opacity:0;width:0;height:0;position:absolute}.public-profile-toggle__switch input:checked+.public-profile-toggle__slider{background:linear-gradient(135deg,#34c759,#2db653)}.public-profile-toggle__switch input:checked+.public-profile-toggle__slider .public-profile-toggle__slider-thumb{transform:translate(24px)}.public-profile-toggle__switch input:disabled+.public-profile-toggle__slider{opacity:.6;cursor:not-allowed}.public-profile-toggle__slider{position:absolute;top:0;left:0;right:0;bottom:0;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.15);border-radius:16px;transition:all .3s cubic-bezier(.25,.46,.45,.94);cursor:pointer}.public-profile-toggle__slider-thumb{position:absolute;content:"";height:24px;width:24px;left:4px;top:3px;background:#ffffff;border-radius:50%;transition:all .3s cubic-bezier(.25,.46,.45,.94);box-shadow:0 2px 8px #0003}.public-profile-toggle__preview{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;background:rgba(255,255,255,.02);border:1px solid rgba(255,255,255,.05);border-radius:12px;margin-bottom:1.5rem}.public-profile-toggle__preview-label{color:#8e8e93;font-size:.875rem;font-weight:500}.public-profile-toggle__preview-name{color:#fff;font-size:1rem;font-weight:600;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,sans-serif;padding:.25rem .75rem;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:8px}.public-profile-toggle__message{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;border-radius:12px;font-size:.875rem;font-weight:500;margin-bottom:1.5rem}.public-profile-toggle__message svg{width:16px;height:16px;flex-shrink:0}.public-profile-toggle__message--error{background:rgba(255,69,58,.1);border:1px solid rgba(255,69,58,.2);color:#ff453a}.public-profile-toggle__message--success{background:rgba(52,199,89,.1);border:1px solid rgba(52,199,89,.2);color:#32d74b}.public-profile-toggle__details{display:flex;flex-direction:column;gap:1rem}.public-profile-toggle__option{display:flex;align-items:center;gap:1rem;padding:1rem;background:rgba(255,255,255,.02);border:1px solid rgba(255,255,255,.05);border-radius:12px}.public-profile-toggle__option-icon{width:32px;height:32px;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.public-profile-toggle__option-icon svg{width:16px;height:16px}.public-profile-toggle__option-icon--public{background:rgba(52,199,89,.1);color:#32d74b}.public-profile-toggle__option-icon--private{background:rgba(255,159,10,.1);color:#ff9f0a}.public-profile-toggle__option-content{color:#8e8e93;font-size:.8125rem;line-height:1.4}.public-profile-toggle__option-content strong{color:#fff;font-weight:600}@media (max-width: 767px){.public-profile-toggle{padding:1.5rem}.public-profile-toggle__header{margin-bottom:1rem}.public-profile-toggle__content{flex-direction:column;align-items:flex-start;gap:1rem}.public-profile-toggle__info h3{font-size:1.125rem}.public-profile-toggle__info p{font-size:.8125rem}.public-profile-toggle__preview{flex-direction:column;align-items:flex-start;gap:.5rem;padding:1rem}.public-profile-toggle__preview-name{align-self:stretch;text-align:center}.public-profile-toggle__option{padding:.75rem}.public-profile-toggle__option-content{font-size:.75rem}}@media (prefers-reduced-motion: reduce){.public-profile-toggle__icon,.public-profile-toggle__slider,.public-profile-toggle__slider-thumb{transition:none}}@media (prefers-contrast: high){.public-profile-toggle{border-color:#ffffff4d}.public-profile-toggle__slider{border-color:#fff6}}.profile-page{min-height:100vh;background:linear-gradient(135deg,#1a1a1c 0%,#2c2c2e 100%);padding:2rem 1rem;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,sans-serif}.profile-page__container{max-width:800px;margin:0 auto}.profile-page__loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:1rem}.profile-page__loading .spinner{width:32px;height:32px;border:3px solid rgba(255,255,255,.1);border-top:3px solid #007aff;border-radius:50%;animation:spin 1s linear infinite}.profile-page__loading p{color:#8e8e93;font-size:1rem;font-weight:500}.profile-page__error{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;text-align:center;gap:1rem}.profile-page__error-icon{width:64px;height:64px;border-radius:50%;background:rgba(255,69,58,.1);display:flex;align-items:center;justify-content:center}.profile-page__error-icon svg{width:32px;height:32px;color:#ff453a}.profile-page__error h2{color:#fff;font-size:1.5rem;font-weight:700;margin:0;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,sans-serif}.profile-page__error p{color:#8e8e93;font-size:1rem;font-weight:500;margin:0;max-width:400px;line-height:1.5}.profile-page__home-link{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:linear-gradient(135deg,#007aff,#0056cc);border:1px solid rgba(0,122,255,.3);border-radius:12px;color:#fff;text-decoration:none;font-size:.875rem;font-weight:600;transition:all .2s cubic-bezier(.25,.46,.45,.94)}.profile-page__home-link:hover{background:linear-gradient(135deg,#0056cc,#004bb8);transform:translateY(-1px);box-shadow:0 8px 24px #007aff40}.profile-page__header{margin-bottom:2rem}.profile-page__breadcrumb{display:flex;align-items:center;gap:.5rem;margin-bottom:1rem;font-size:.875rem}.profile-page__breadcrumb-link{display:flex;align-items:center;gap:.375rem;color:#8e8e93;text-decoration:none;font-weight:500;transition:color .2s ease}.profile-page__breadcrumb-link svg{width:14px;height:14px}.profile-page__breadcrumb-link:hover{color:#007aff}.profile-page__breadcrumb-separator{color:#636366;font-weight:300}.profile-page__breadcrumb-current{color:#fff;font-weight:600}.profile-page__title-section h1{color:#fff;font-size:2rem;font-weight:800;margin:0 0 .5rem;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,sans-serif}.profile-page__title-section p{color:#8e8e93;font-size:1rem;font-weight:500;margin:0;line-height:1.5}.profile-page__user-card{display:flex;align-items:center;gap:1.5rem;padding:2rem;background:rgba(28,28,30,.95);backdrop-filter:blur(40px);-webkit-backdrop-filter:blur(40px);border:1px solid rgba(255,255,255,.1);border-radius:16px;margin-bottom:2rem}.profile-page__user-info{flex:1;min-width:0}.profile-page__user-name{color:#fff;font-size:1.25rem;font-weight:700;margin-bottom:.25rem;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,sans-serif;word-break:break-word}.profile-page__user-email{color:#8e8e93;font-size:.875rem;font-weight:500;margin-bottom:.5rem;word-break:break-word}.profile-page__user-meta{color:#636366;font-size:.8125rem;font-weight:500}.profile-page__user-stats{display:flex;gap:2rem;align-items:center}.profile-page__stat{text-align:center}.profile-page__stat-value{color:#fff;font-size:1.5rem;font-weight:700;line-height:1;margin-bottom:.25rem;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,sans-serif}.profile-page__stat-label{color:#8e8e93;font-size:.75rem;font-weight:500;text-transform:uppercase;letter-spacing:.05em}.profile-page__sections{display:flex;flex-direction:column;gap:2rem}.profile-page__info-card{background:rgba(28,28,30,.95);backdrop-filter:blur(40px);-webkit-backdrop-filter:blur(40px);border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:2rem}.profile-page__info-header{display:flex;align-items:center;gap:1rem;margin-bottom:1.5rem}.profile-page__info-icon{width:48px;height:48px;border-radius:12px;background:linear-gradient(135deg,#ff9f0a,#e68900);display:flex;align-items:center;justify-content:center;flex-shrink:0}.profile-page__info-icon svg{width:24px;height:24px;color:#fff}.profile-page__info-header h3{color:#fff;font-size:1.25rem;font-weight:700;margin:0;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,sans-serif}.profile-page__info-content p{color:#8e8e93;font-size:.875rem;font-weight:500;line-height:1.6;margin:0 0 1rem}.profile-page__info-content ul{margin:0;padding-left:1.25rem;color:#8e8e93;font-size:.8125rem;line-height:1.5}.profile-page__info-content ul li{margin-bottom:.375rem}.profile-page__info-content ul li:last-child{margin-bottom:0}@media (max-width: 767px){.profile-page{padding:1rem}.profile-page__user-card{flex-direction:column;text-align:center;padding:1.5rem}.profile-page__user-stats{justify-content:center;gap:1.5rem}.profile-page__title-section h1{font-size:1.75rem}.profile-page__sections{gap:1.5rem}}@media (max-width: 480px){.profile-page__breadcrumb{font-size:.8125rem}.profile-page__title-section h1{font-size:1.5rem}.profile-page__user-avatar{width:56px;height:56px;border-radius:14px}.profile-page__avatar-text{font-size:24px}.profile-page__user-name{font-size:1.125rem}}.history-header{background:rgba(28,28,30,.95);backdrop-filter:blur(40px);-webkit-backdrop-filter:blur(40px);border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:2rem;margin-bottom:2rem;position:relative;overflow:hidden;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,sans-serif}.history-header:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent 0%,rgba(0,122,255,.3) 50%,transparent 100%)}.history-header__main{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem;gap:2rem}.history-header__title-section{flex:1;min-width:0}.history-header__title{color:#fff;font-size:2.25rem;font-weight:800;margin:0 0 .75rem;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,sans-serif;background:linear-gradient(135deg,#ffffff 0%,#f2f2f7 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.history-header__subtitle{color:#8e8e93;font-size:1.125rem;font-weight:500;margin:0;line-height:1.5;max-width:500px}.history-header__actions{display:flex;align-items:center;gap:1rem;flex-shrink:0}.history-header__refresh-btn{display:flex;align-items:center;gap:.5rem;padding:.875rem 1.25rem;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:12px;color:#fff;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s cubic-bezier(.25,.46,.45,.94)}.history-header__refresh-btn svg{width:16px;height:16px;flex-shrink:0;transition:transform .5s ease}.history-header__refresh-btn svg.spinning{animation:spin 1s linear infinite}.history-header__refresh-btn:hover:not(:disabled){background:rgba(255,255,255,.1);border-color:#fff3;transform:translateY(-1px)}.history-header__refresh-btn:active:not(:disabled){transform:translateY(0)}.history-header__refresh-btn:disabled{opacity:.5;cursor:not-allowed;background:rgba(255,255,255,.03)}.history-header__stats{margin-bottom:1.5rem}.history-header__divider{position:absolute;bottom:0;left:2rem;right:2rem;height:1px;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.1) 20%,rgba(255,255,255,.1) 80%,transparent 100%)}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem}.stat-item{display:flex;align-items:center;gap:1rem;padding:1.5rem;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.08);border-radius:12px;transition:all .3s cubic-bezier(.25,.46,.45,.94);position:relative;overflow:hidden}.stat-item:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.1),transparent);opacity:0;transition:opacity .3s ease}.stat-item:hover{background:rgba(255,255,255,.05);border-color:#ffffff26;transform:translateY(-1px)}.stat-item:hover:before{opacity:1}.stat-item.primary{background:linear-gradient(135deg,rgba(0,122,255,.1),rgba(0,122,255,.05));border-color:#007aff33}.stat-item.primary:before{background:linear-gradient(90deg,transparent,rgba(0,122,255,.4),transparent)}.stat-item.primary:hover{background:linear-gradient(135deg,rgba(0,122,255,.15),rgba(0,122,255,.08));border-color:#007aff4d}.stat-item.primary .stat-icon{background:linear-gradient(135deg,#007aff,#0056cc);color:#fff}.stat-item.primary .stat-value{color:#007aff}.stat-icon{width:48px;height:48px;border-radius:12px;background:rgba(255,255,255,.1);display:flex;align-items:center;justify-content:center;flex-shrink:0;color:#8e8e93}.stat-icon svg{width:24px;height:24px}.stat-content{flex:1;min-width:0}.stat-value{color:#fff;font-size:1.5rem;font-weight:700;line-height:1.2;margin-bottom:.25rem;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,sans-serif}.stat-label{color:#8e8e93;font-size:.875rem;font-weight:500;text-transform:uppercase;letter-spacing:.05em}@media (max-width: 768px){.history-header{padding:1.5rem}.history-header__main{flex-direction:column;align-items:stretch;margin-bottom:1.5rem;gap:1.5rem}.history-header__title{font-size:1.875rem}.history-header__subtitle{font-size:1rem}.history-header__actions{justify-content:flex-end}.history-header__divider{left:1.5rem;right:1.5rem}.stats-grid{grid-template-columns:1fr 1fr;gap:1rem}.stat-item{padding:1.25rem;gap:.875rem}.stat-icon{width:44px;height:44px}.stat-icon svg{width:22px;height:22px}.stat-value{font-size:1.375rem}.stat-label{font-size:.8125rem}}@media (max-width: 480px){.history-header{padding:1.25rem}.history-header__main{margin-bottom:1.25rem}.history-header__title{font-size:1.625rem}.history-header__subtitle{font-size:.9375rem}.history-header__refresh-btn{padding:.75rem 1rem;font-size:.8125rem}.history-header__refresh-btn svg{width:14px;height:14px}.history-header__divider{left:1.25rem;right:1.25rem}.stats-grid{grid-template-columns:1fr;gap:.875rem}.stat-item{padding:1rem;gap:.75rem}.stat-icon{width:40px;height:40px;border-radius:10px}.stat-icon svg{width:20px;height:20px}.stat-value{font-size:1.25rem}.stat-label{font-size:.75rem}}@media (prefers-reduced-motion: reduce){.history-header__refresh-btn svg.spinning{animation:none}.stat-item{transition:none}.stat-item:hover{transform:none}}@media (prefers-contrast: high){.history-header__title{background:none;-webkit-text-fill-color:#ffffff;color:#fff}.stat-item{border-width:2px}.stat-item.primary{background:rgba(0,122,255,.2);border-color:#007aff}}.vote-item{background:rgba(28,28,30,.95);backdrop-filter:blur(40px);-webkit-backdrop-filter:blur(40px);border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:1.5rem;margin-bottom:1rem;transition:all .3s cubic-bezier(.25,.46,.45,.94);position:relative;overflow:hidden;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,sans-serif}.vote-item:hover{transform:translateY(-2px);border-color:#fff3;box-shadow:0 12px 32px #0000004d}.vote-item:last-child{margin-bottom:0}.vote-item__header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1.25rem;padding-bottom:.75rem;border-bottom:1px solid rgba(255,255,255,.08)}.vote-item__collection{flex:1;min-width:0}.vote-item__collection .collection-name{display:block;color:#fff;font-size:1rem;font-weight:700;margin-bottom:.25rem;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,sans-serif}.vote-item__collection .collection-id{color:#8e8e93;font-size:.8125rem;font-weight:500;opacity:.8}.vote-item__timestamp{flex-shrink:0;text-align:right}.vote-item__timestamp span{color:#8e8e93;font-size:.875rem;font-weight:500;padding:.375rem .75rem;background:rgba(255,255,255,.05);border-radius:8px;border:1px solid rgba(255,255,255,.1)}.vote-item__battle{display:flex;align-items:center;justify-content:center;gap:1.5rem;margin-bottom:10px}.vote-item__footer{padding-top:.75rem;border-top:1px solid rgba(255,255,255,.08)}.vote-item__choice{display:flex;align-items:center;gap:.75rem}.vote-item__choice .choice-label{color:#8e8e93;font-size:.875rem;font-weight:500}.vote-item__choice .choice-value{font-size:.875rem;font-weight:600;padding:.375rem .75rem;border-radius:8px;border:1px solid transparent}.vote-item__choice .choice-value.left{background:linear-gradient(135deg,#34c759,#30d158);color:#fff}.vote-item__choice .choice-value.right{background:linear-gradient(135deg,#007aff,#0056cc);color:#fff}.vote-item .nft-card{flex:1;display:flex;flex-direction:row;align-items:center;justify-content:center;text-align:center;padding:10px;border-radius:12px;border:2px solid transparent;position:relative;overflow:hidden;gap:1rem}.vote-item .nft-card.clickable{cursor:pointer}.vote-item .nft-card.clickable:hover{transform:translateY(-2px);box-shadow:0 8px 32px #0000004d;border-color:#ffffff4d}.vote-item .nft-card.clickable:active{transform:translateY(0);transition-duration:.1s}.vote-item .nft-card.clickable.winner:hover{background:linear-gradient(135deg,rgba(52,199,89,.2),rgba(48,209,88,.12));border-color:#34c759b3}.vote-item .nft-card.clickable.loser:hover{background:rgba(255,255,255,.08);border-color:#ffffff40;opacity:.9}.vote-item .nft-card.winner{background:linear-gradient(135deg,rgba(52,199,89,.1),rgba(48,209,88,.05));border-color:#34c7594d}.vote-item .nft-card.winner:hover{background:linear-gradient(135deg,rgba(52,199,89,.15),rgba(48,209,88,.08));border-color:#34c75980}.vote-item .nft-card.loser{background:rgba(255,255,255,.02);border-color:#ffffff1a;opacity:.7}.vote-item .nft-card.loser:hover{background:rgba(255,255,255,.04);border-color:#ffffff26;opacity:.8}.vote-item .nft-card__image-container{position:relative;width:100px;height:100px;flex-shrink:0}.vote-item .nft-card__image-container img{width:100%;height:100%;object-fit:cover;border-radius:10px;border:1px solid rgba(255,255,255,.1);transition:transform .3s ease,box-shadow .3s ease}.vote-item .nft-card__image-container img:hover{transform:scale(1.05);box-shadow:0 8px 24px #0000004d}.vote-item .nft-card__info{flex:0 0 auto;min-width:0;text-align:center}.vote-item .nft-card__title{color:#fff;font-size:1rem;font-weight:700;margin:0 0 .25rem;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,sans-serif}.vote-item .nft-card__label{color:#8e8e93;font-size:.75rem;font-weight:500;margin:0;text-transform:uppercase;letter-spacing:.05em}.winner .vote-item .nft-card__title,.winner .vote-item .nft-card__label{color:#34c759}.winner-badge{position:absolute;top:-5px;right:-5px;width:24px;height:24px;background:linear-gradient(135deg,#34c759,#30d158);border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px #34c75966;z-index:2}.winner-badge svg{width:14px;height:14px;color:#fff}.battle-separator{display:flex;flex-direction:column;align-items:center;gap:.5rem;flex-shrink:0;position:relative}.vs-badge{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;position:relative;z-index:2}.vs-badge span{color:#fff;font-size:.75rem;font-weight:800;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,sans-serif}.vs-badge .vs-logo{width:24px;height:24px;object-fit:contain;filter:brightness(1.2)}@media (max-width: 768px){.vote-item{padding:1rem;margin-bottom:.75rem}.vote-item__header{margin-bottom:1rem}.vote-item__battle{flex-direction:column;gap:1rem}.vote-item__collection .collection-name{font-size:.9375rem}.vote-item .nft-card{padding:.75rem;max-width:250px;width:100%;gap:.75rem;justify-content:center}.vote-item .nft-card__image-container{width:60px;height:60px}.battle-separator{flex-direction:row;width:100%;justify-content:center}.battle-separator .vs-badge{width:36px;height:36px}.battle-separator .vs-badge span{font-size:.6875rem}.battle-separator .vs-badge .vs-logo{width:20px;height:20px}}@media (max-width: 480px){.vote-item{padding:.875rem}.vote-item__header{flex-direction:column;gap:.75rem;align-items:flex-start}.vote-item__timestamp{align-self:flex-end}.vote-item__timestamp span{font-size:.8125rem;padding:.25rem .5rem}.vote-item__choice{flex-direction:column;align-items:flex-start;gap:.5rem}.vote-item .nft-card{gap:.625rem;max-width:100%;justify-content:center}.vote-item .nft-card__image-container{width:80px;height:80px}.vote-item .nft-card__title{font-size:.9375rem}.vote-item .nft-card__label{font-size:.6875rem}}.voting-history-list{position:relative;min-height:400px;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,sans-serif}.voting-history-list__content{display:flex;flex-direction:column;gap:0}.voting-history-list__loading,.voting-history-list__error,.voting-history-list__empty{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;padding:3rem 2rem;text-align:center;background:rgba(28,28,30,.95);backdrop-filter:blur(40px);-webkit-backdrop-filter:blur(40px);border:1px solid rgba(255,255,255,.1);border-radius:16px}.voting-history-list__loading{gap:1.5rem}.voting-history-list__loading h3{color:#fff;font-size:1.5rem;font-weight:700;margin:0;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,sans-serif}.voting-history-list__loading p{color:#8e8e93;font-size:1rem;font-weight:500;margin:0;max-width:400px;line-height:1.5}.voting-history-list__error{gap:1.5rem}.voting-history-list__error h3{color:#fff;font-size:1.5rem;font-weight:700;margin:0;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,sans-serif}.voting-history-list__error p{color:#8e8e93;font-size:1rem;font-weight:500;margin:0;max-width:400px;line-height:1.5}.voting-history-list__empty{gap:2rem}.voting-history-list__empty h3{color:#fff;font-size:1.75rem;font-weight:800;margin:0;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,sans-serif}.voting-history-list__empty p{color:#8e8e93;font-size:1.125rem;font-weight:500;margin:0;max-width:450px;line-height:1.6}.voting-history-list__loading-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:rgba(28,28,30,.8);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;border-radius:16px;z-index:10}.loading-spinner{display:flex;align-items:center;justify-content:center}.loading-spinner .spinner{width:40px;height:40px;border:3px solid rgba(255,255,255,.1);border-top:3px solid #007aff;border-radius:50%;animation:spin 1s linear infinite}.loading-spinner .spinner.small{width:24px;height:24px;border-width:2px}.error-icon{width:80px;height:80px;border-radius:50%;background:rgba(255,69,58,.1);display:flex;align-items:center;justify-content:center;margin-bottom:.5rem}.error-icon svg{width:40px;height:40px;color:#ff453a}.empty-icon{width:120px;height:120px;border-radius:24px;background:linear-gradient(135deg,rgba(0,122,255,.1),rgba(88,86,214,.05));display:flex;align-items:center;justify-content:center;margin-bottom:1rem;position:relative;overflow:hidden}.empty-icon:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(45deg,rgba(0,122,255,.1) 0%,rgba(88,86,214,.1) 50%,rgba(255,159,10,.1) 100%);animation:shimmer 3s ease-in-out infinite;border-radius:24px}.empty-icon svg{width:56px;height:56px;color:#007aff;position:relative;z-index:1}.retry-button{display:flex;align-items:center;gap:.5rem;padding:.875rem 1.5rem;background:linear-gradient(135deg,#007aff,#0056cc);border:1px solid rgba(0,122,255,.3);border-radius:12px;color:#fff;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s cubic-bezier(.25,.46,.45,.94);text-decoration:none}.retry-button svg{width:16px;height:16px;flex-shrink:0}.retry-button:hover{background:linear-gradient(135deg,#0056cc,#004bb8);transform:translateY(-1px);box-shadow:0 8px 24px #007aff40}.retry-button:active{transform:translateY(0)}.start-voting-button{display:flex;align-items:center;gap:.75rem;padding:1rem 2rem;background:linear-gradient(135deg,#34c759,#30d158);border:1px solid rgba(52,199,89,.3);border-radius:16px;color:#fff;font-size:1rem;font-weight:700;cursor:pointer;transition:all .3s cubic-bezier(.25,.46,.45,.94);text-decoration:none;position:relative;overflow:hidden}.start-voting-button svg{width:20px;height:20px;flex-shrink:0}.start-voting-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s ease}.start-voting-button:hover{background:linear-gradient(135deg,#30d158,#28cd4f);transform:translateY(-2px);box-shadow:0 12px 32px #34c7594d}.start-voting-button:hover:before{left:100%}.start-voting-button:active{transform:translateY(-1px)}@media (max-width: 768px){.voting-history-list__loading,.voting-history-list__error,.voting-history-list__empty{min-height:350px;padding:2rem 1.5rem}.voting-history-list__loading h3,.voting-history-list__error h3{font-size:1.25rem}.voting-history-list__loading p,.voting-history-list__error p{font-size:.9375rem}.voting-history-list__empty h3{font-size:1.5rem}.voting-history-list__empty p{font-size:1rem}.empty-icon{width:100px;height:100px;border-radius:20px}.empty-icon svg{width:48px;height:48px}.error-icon{width:70px;height:70px}.error-icon svg{width:36px;height:36px}.start-voting-button{padding:.875rem 1.5rem;font-size:.9375rem}.start-voting-button svg{width:18px;height:18px}.retry-button{padding:.75rem 1.25rem;font-size:.8125rem}}@media (max-width: 480px){.voting-history-list__loading,.voting-history-list__error,.voting-history-list__empty{min-height:300px;padding:1.5rem 1rem}.voting-history-list__loading,.voting-history-list__error{gap:1.25rem}.voting-history-list__loading h3,.voting-history-list__error h3{font-size:1.125rem}.voting-history-list__loading p,.voting-history-list__error p{font-size:.875rem}.voting-history-list__empty{gap:1.5rem}.voting-history-list__empty h3{font-size:1.375rem}.voting-history-list__empty p{font-size:.9375rem}.empty-icon{width:80px;height:80px;border-radius:16px;margin-bottom:.75rem}.empty-icon svg{width:40px;height:40px}.loading-spinner .spinner{width:32px;height:32px}}@media (prefers-reduced-motion: reduce){.loading-spinner .spinner{animation:none;border-top-color:#8e8e93}.empty-icon:before{animation:none}.start-voting-button,.retry-button{transition:none}.start-voting-button:hover,.retry-button:hover{transform:none}}.history-pagination{display:flex;flex-direction:column;gap:1.5rem;padding:2rem;background:rgba(28,28,30,.95);backdrop-filter:blur(40px);-webkit-backdrop-filter:blur(40px);border:1px solid rgba(255,255,255,.1);border-radius:16px;margin-top:2rem;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,sans-serif}.history-pagination .pagination-info{text-align:center}.history-pagination .pagination-info .pagination-stats{color:#8e8e93;font-size:.875rem;font-weight:500}.history-pagination .pagination-info .pagination-stats .highlight{color:#fff;font-weight:700}.history-pagination .pagination-controls{display:flex;align-items:center;justify-content:center;gap:1rem;flex-wrap:wrap}.history-pagination .pagination-btn{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:12px;color:#fff;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s cubic-bezier(.25,.46,.45,.94);white-space:nowrap}.history-pagination .pagination-btn svg{width:16px;height:16px;flex-shrink:0}.history-pagination .pagination-btn:hover:not(:disabled){background:rgba(255,255,255,.1);border-color:#fff3;transform:translateY(-1px)}.history-pagination .pagination-btn:active:not(:disabled){transform:translateY(0)}.history-pagination .pagination-btn:disabled{opacity:.4;cursor:not-allowed;background:rgba(255,255,255,.02);border-color:#ffffff0d}.history-pagination .pagination-btn--prev svg{order:-1}.history-pagination .pagination-btn--next svg{order:1}.history-pagination .pagination-pages{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;justify-content:center}.history-pagination .pagination-page{width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:10px;color:#fff;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s cubic-bezier(.25,.46,.45,.94)}.history-pagination .pagination-page:hover:not(:disabled):not(.active){background:rgba(255,255,255,.1);border-color:#fff3;transform:translateY(-1px)}.history-pagination .pagination-page:active:not(:disabled){transform:translateY(0)}.history-pagination .pagination-page.active{background:linear-gradient(135deg,#007aff,#0056cc);border-color:#007aff4d;color:#fff;cursor:default;box-shadow:0 4px 16px #007aff40}.history-pagination .pagination-page:disabled{opacity:.4;cursor:not-allowed}.history-pagination .pagination-ellipsis{display:flex;align-items:center;justify-content:center;width:40px;height:40px;color:#8e8e93;font-size:1.25rem;font-weight:700;-webkit-user-select:none;user-select:none}.history-pagination .pagination-jump{display:flex;align-items:center;justify-content:center;gap:.75rem;padding-top:1rem;border-top:1px solid rgba(255,255,255,.08)}.history-pagination .pagination-jump .jump-label,.history-pagination .pagination-jump .jump-total{color:#8e8e93;font-size:.875rem;font-weight:500}.history-pagination .pagination-jump .jump-input{width:60px;height:36px;padding:0 .75rem;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:8px;color:#fff;font-size:.875rem;font-weight:600;text-align:center;transition:all .2s ease}.history-pagination .pagination-jump .jump-input:focus{outline:none;background:rgba(255,255,255,.08);border-color:#007aff80;box-shadow:0 0 0 3px #007aff1a}.history-pagination .pagination-jump .jump-input:disabled{opacity:.5;cursor:not-allowed}.history-pagination .pagination-jump .jump-input::-webkit-outer-spin-button,.history-pagination .pagination-jump .jump-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.history-pagination .pagination-jump .jump-input[type=number]{-moz-appearance:textfield}@media (max-width: 768px){.history-pagination{padding:1.5rem;gap:1.25rem}.history-pagination .pagination-controls{flex-direction:column;gap:1.25rem}.history-pagination .pagination-btn{width:100%;justify-content:center;padding:1rem}.history-pagination .pagination-btn span{font-size:1rem}.history-pagination .pagination-pages{order:-1;width:100%;justify-content:center;max-width:100%;overflow-x:auto;padding:.5rem 0;scrollbar-width:none;-ms-overflow-style:none}.history-pagination .pagination-pages::-webkit-scrollbar{display:none}.history-pagination .pagination-jump{padding-top:.75rem;flex-wrap:wrap;text-align:center}}@media (max-width: 480px){.history-pagination{padding:1rem}.history-pagination .pagination-info .pagination-stats{font-size:.8125rem}.history-pagination .pagination-page{width:36px;height:36px;font-size:.8125rem}.history-pagination .pagination-ellipsis{width:36px;height:36px;font-size:1.125rem}.history-pagination .pagination-btn{padding:.875rem 1rem;font-size:.875rem}.history-pagination .pagination-btn svg{width:14px;height:14px}.history-pagination .pagination-jump .jump-label,.history-pagination .pagination-jump .jump-total{font-size:.8125rem}.history-pagination .pagination-jump .jump-input{width:50px;height:32px;font-size:.8125rem}}@media (prefers-color-scheme: dark){.history-pagination .pagination-btn:hover:not(:disabled){background:rgba(255,255,255,.12);border-color:#ffffff40}.history-pagination .pagination-page:hover:not(:disabled):not(.active){background:rgba(255,255,255,.12);border-color:#ffffff40}.history-pagination .jump-input:focus{background:rgba(255,255,255,.1)}}@media (prefers-reduced-motion: reduce){.history-pagination .pagination-btn,.history-pagination .pagination-page,.history-pagination .jump-input{transition:none}}.voting-history-page{min-height:100vh;background:linear-gradient(135deg,#1a1a1c 0%,#2c2c2e 100%);font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,sans-serif;position:relative}.voting-history-page:before{content:"";position:fixed;top:0;left:0;right:0;bottom:0;background:radial-gradient(600px circle at 20% 30%,rgba(0,122,255,.05),transparent 40%),radial-gradient(400px circle at 80% 70%,rgba(88,86,214,.05),transparent 40%),radial-gradient(800px circle at 40% 80%,rgba(255,159,10,.03),transparent 40%);pointer-events:none;z-index:0}.voting-history-page__container{position:relative;z-index:1;max-width:1200px;margin:0 auto;padding:2rem 1rem;min-height:100vh;display:flex;flex-direction:column}.voting-history-page__loading,.voting-history-page__auth-required{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;text-align:center;gap:2rem;padding:3rem 2rem}.voting-history-page__loading h2,.voting-history-page__auth-required h2{color:#fff;font-size:2rem;font-weight:700;margin:0;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,sans-serif}.voting-history-page__loading p,.voting-history-page__auth-required p{color:#8e8e93;font-size:1.125rem;font-weight:500;margin:0;max-width:500px;line-height:1.6}.voting-history-page__loading .loading-spinner{margin-bottom:1rem}.voting-history-page__loading .loading-spinner .spinner{width:48px;height:48px;border:4px solid rgba(255,255,255,.1);border-top:4px solid #007aff;border-radius:50%;animation:spin 1s linear infinite}.voting-history-page__breadcrumb{display:flex;align-items:center;gap:.75rem;margin-bottom:2rem;font-size:.875rem;padding:0 .5rem}.voting-history-page__breadcrumb .breadcrumb-link{display:flex;align-items:center;gap:.5rem;color:#8e8e93;text-decoration:none;font-weight:500;transition:color .2s ease}.voting-history-page__breadcrumb .breadcrumb-link svg{width:16px;height:16px;flex-shrink:0}.voting-history-page__breadcrumb .breadcrumb-link:hover{color:#007aff}.voting-history-page__breadcrumb .breadcrumb-separator{color:#636366;font-weight:300;-webkit-user-select:none;user-select:none}.voting-history-page__breadcrumb .breadcrumb-current{color:#fff;font-weight:600}.voting-history-page__main{flex:1}.voting-history-page__footer{margin-top:4rem;padding-top:2rem;border-top:1px solid rgba(255,255,255,.1)}.voting-history-page__footer .footer-content{background:rgba(28,28,30,.95);backdrop-filter:blur(40px);-webkit-backdrop-filter:blur(40px);border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:2rem;display:flex;gap:3rem;align-items:flex-start}.voting-history-page__footer .footer-info{flex:1}.voting-history-page__footer .footer-info h3{color:#fff;font-size:1.25rem;font-weight:700;margin:0 0 1rem;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,sans-serif}.voting-history-page__footer .footer-info p{color:#8e8e93;font-size:.9375rem;font-weight:500;margin:0;line-height:1.6;max-width:500px}.voting-history-page__footer .footer-links{display:flex;flex-direction:column;gap:1rem;flex-shrink:0}.voting-history-page__footer .footer-link{display:flex;align-items:center;gap:.75rem;padding:.875rem 1.25rem;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:12px;color:#fff;text-decoration:none;font-size:.875rem;font-weight:600;transition:all .2s cubic-bezier(.25,.46,.45,.94);white-space:nowrap}.voting-history-page__footer .footer-link svg{width:16px;height:16px;flex-shrink:0}.voting-history-page__footer .footer-link:hover{background:rgba(255,255,255,.1);border-color:#fff3;transform:translateY(-1px)}.voting-history-page__footer .footer-link:active{transform:translateY(0)}.auth-icon{width:120px;height:120px;border-radius:24px;background:linear-gradient(135deg,rgba(255,69,58,.1),rgba(255,69,58,.05));display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.auth-icon:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(45deg,rgba(255,69,58,.1) 0%,rgba(255,159,10,.1) 50%,rgba(0,122,255,.1) 100%);animation:shimmer 3s ease-in-out infinite;border-radius:24px}.auth-icon svg{width:56px;height:56px;color:#ff453a;position:relative;z-index:1}.sign-in-button{display:flex;align-items:center;gap:.75rem;padding:1.25rem 2rem;background:linear-gradient(135deg,#007aff,#0056cc);border:1px solid rgba(0,122,255,.3);border-radius:16px;color:#fff;font-size:1.125rem;font-weight:700;cursor:pointer;transition:all .3s cubic-bezier(.25,.46,.45,.94);text-decoration:none;position:relative;overflow:hidden}.sign-in-button svg{width:20px;height:20px;flex-shrink:0}.sign-in-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s ease}.sign-in-button:hover{background:linear-gradient(135deg,#0056cc,#004bb8);transform:translateY(-2px);box-shadow:0 12px 32px #007aff4d}.sign-in-button:hover:before{left:100%}.sign-in-button:active{transform:translateY(-1px)}@keyframes shimmer{0%,to{opacity:.5}50%{opacity:1}}@media (max-width: 768px){.voting-history-page__container{padding:1.5rem 1rem}.voting-history-page__breadcrumb{margin-bottom:1.5rem;font-size:.8125rem}.voting-history-page__breadcrumb .breadcrumb-link svg{width:14px;height:14px}.voting-history-page__loading,.voting-history-page__auth-required{min-height:50vh;padding:2rem 1.5rem}.voting-history-page__loading h2,.voting-history-page__auth-required h2{font-size:1.625rem}.voting-history-page__loading p,.voting-history-page__auth-required p{font-size:1rem}.voting-history-page__footer{margin-top:3rem}.voting-history-page__footer .footer-content{flex-direction:column;gap:2rem;padding:1.5rem}.voting-history-page__footer .footer-links{flex-direction:row;flex-wrap:wrap;justify-content:center}.voting-history-page__footer .footer-link{flex:1;min-width:140px;justify-content:center}.auth-icon{width:100px;height:100px;border-radius:20px}.auth-icon svg{width:48px;height:48px}.sign-in-button{padding:1rem 1.75rem;font-size:1rem}.sign-in-button svg{width:18px;height:18px}}@media (max-width: 480px){.voting-history-page__container{padding:1rem}.voting-history-page__breadcrumb{flex-wrap:wrap;gap:.5rem}.voting-history-page__loading,.voting-history-page__auth-required{min-height:40vh;padding:1.5rem 1rem}.voting-history-page__loading h2,.voting-history-page__auth-required h2{font-size:1.5rem}.voting-history-page__loading p,.voting-history-page__auth-required p{font-size:.9375rem}.voting-history-page__footer{margin-top:2rem}.voting-history-page__footer .footer-content{padding:1.25rem}.voting-history-page__footer .footer-info h3{font-size:1.125rem}.voting-history-page__footer .footer-info p{font-size:.875rem}.voting-history-page__footer .footer-links{gap:.75rem}.voting-history-page__footer .footer-link{padding:.75rem 1rem;font-size:.8125rem;min-width:120px}.voting-history-page__footer .footer-link svg{width:14px;height:14px}.auth-icon{width:80px;height:80px;border-radius:16px}.auth-icon svg{width:40px;height:40px}.sign-in-button{padding:.875rem 1.5rem;font-size:.9375rem;border-radius:12px}.sign-in-button svg{width:16px;height:16px}}@media (prefers-reduced-motion: reduce){.voting-history-page:before{animation:none}.voting-history-page__loading .spinner{animation:none;border-top-color:#8e8e93}.auth-icon:before{animation:none}.sign-in-button,.footer-link,.breadcrumb-link{transition:none}.sign-in-button:hover,.footer-link:hover,.breadcrumb-link:hover{transform:none}}.ranking-chart{background:linear-gradient(135deg,rgba(15,15,15,.95) 0%,rgba(25,25,25,.95) 100%);border-radius:16px;padding:2rem;margin:2rem 0;border:1px solid rgba(255,215,0,.2);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 8px 32px #0000004d,0 0 0 1px #ffd7001a,inset 0 1px #ffffff0d;position:relative;overflow:hidden}.ranking-chart:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,215,0,.03),transparent);animation:shimmer 3s infinite;z-index:0}.ranking-chart .chart-header{position:relative;z-index:1;margin-bottom:2rem;text-align:center}.ranking-chart .chart-header h3{font-size:1.8rem;font-weight:700;margin-bottom:.5rem;letter-spacing:-.02em}.ranking-chart .chart-header .top-tier-header{background:linear-gradient(45deg,#ffd700,#ffed4e);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.ranking-chart .chart-header .standard-header{color:#fff}.ranking-chart .chart-header p{color:#b0b0b0;font-size:1rem;margin:0;line-height:1.4}.ranking-chart .chart-header p .rank-summary{color:gold;font-weight:600;font-size:.95rem;display:inline-block;margin-top:.25rem;padding:.25rem .5rem;background:rgba(255,215,0,.1);border-radius:4px;border:1px solid rgba(255,215,0,.2)}.ranking-chart .chart-container{position:relative;z-index:1;height:400px;margin:1.5rem 0;padding:1rem;background:rgba(0,0,0,.2);border-radius:12px;border:1px solid rgba(255,255,255,.05)}@media (max-width: 768px){.ranking-chart .chart-container{height:300px;padding:.5rem}}@media (max-width: 480px){.ranking-chart .chart-container{height:250px}}.ranking-chart .chart-legend{position:relative;z-index:1;display:flex;justify-content:center;align-items:center;gap:2rem;margin-top:1rem;flex-wrap:wrap}.ranking-chart .chart-legend .legend-item{display:flex;align-items:center;gap:.5rem;color:#b0b0b0;font-size:.9rem}.ranking-chart .chart-legend .legend-item .legend-dot{width:12px;height:12px;border-radius:50%;border:2px solid #ffffff}.ranking-chart .chart-legend .legend-item .legend-dot.win{background:#ffd700;transform:scale(1.2);box-shadow:0 0 8px #ffd70080}.ranking-chart .chart-legend .legend-item .legend-dot.loss{background:#ffd700;opacity:.7}@media (max-width: 480px){.ranking-chart .chart-legend{gap:1rem}.ranking-chart .chart-legend .legend-item{font-size:.8rem}.ranking-chart .chart-legend .legend-item .legend-dot{width:10px;height:10px}}.ranking-chart .chart-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;height:400px;text-align:center}.ranking-chart .chart-loading .loading-spinner{width:50px;height:50px;border:4px solid rgba(255,215,0,.3);border-top:4px solid #ffd700;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1.5rem}.ranking-chart .chart-loading p{color:#b0b0b0;font-size:1.1rem;margin:0}@media (max-width: 768px){.ranking-chart .chart-loading{height:300px}}.ranking-chart .chart-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;height:400px;text-align:center}.ranking-chart .chart-empty .empty-chart-icon{font-size:4rem;margin-bottom:1rem;opacity:.7}.ranking-chart .chart-empty h3{font-size:1.5rem;color:#fff;margin-bottom:.5rem}.ranking-chart .chart-empty p{color:#b0b0b0;font-size:1rem;max-width:300px;line-height:1.5;margin:0}@media (max-width: 768px){.ranking-chart .chart-empty{height:300px}.ranking-chart .chart-empty .empty-chart-icon{font-size:3rem}.ranking-chart .chart-empty h3{font-size:1.3rem}.ranking-chart .chart-empty p{font-size:.9rem;max-width:250px}}@media (max-width: 768px){.ranking-chart{padding:1.5rem;margin:1.5rem 0}.ranking-chart .chart-header h3{font-size:1.5rem}.ranking-chart .chart-header p{font-size:.9rem}}@media (max-width: 480px){.ranking-chart{padding:1rem;margin:1rem 0;border-radius:12px}.ranking-chart .chart-header h3{font-size:1.3rem}.ranking-chart .chart-header p{font-size:.8rem}}.ranking-chart:hover{border-color:#ffd70066;box-shadow:0 12px 40px #0006,0 0 0 1px #ffd70033,inset 0 1px #ffffff1a;transform:translateY(-2px);transition:all .3s ease}.ranking-chart{animation:fadeInUp .6s ease-out}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.nft-details-page{min-height:100vh;background:linear-gradient(135deg,#0a0a0a 0%,#1a1a2e 50%,#16213e 100%);color:#fff;padding:2rem 0}.nft-details-page .nft-details-container{max-width:1200px;margin:0 auto;padding:0 1.5rem}.nft-details-page .nft-details-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;text-align:center}.nft-details-page .nft-details-loading .loading-spinner{width:50px;height:50px;border:4px solid rgba(255,215,0,.3);border-top:4px solid #ffd700;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1.5rem}.nft-details-page .nft-details-loading h2{font-size:1.8rem;margin-bottom:.5rem;background:linear-gradient(45deg,#ffd700,#ffed4e);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.nft-details-page .nft-details-loading p{color:#b0b0b0;font-size:1rem}.nft-details-page .nft-details-error{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;text-align:center}.nft-details-page .nft-details-error h1{font-size:2.5rem;margin-bottom:1rem;color:#ff6b6b}.nft-details-page .nft-details-error p{font-size:1.2rem;color:#b0b0b0;margin-bottom:2rem}.nft-details-page .nft-details-error .error-actions{display:flex;gap:1rem;flex-wrap:wrap;justify-content:center}.nft-details-page .nft-header{display:grid;grid-template-columns:1fr 1.5fr;gap:3rem;margin-bottom:3rem;align-items:start}@media (max-width: 768px){.nft-details-page .nft-header{grid-template-columns:1fr;gap:2rem}}.nft-details-page .nft-image-section{display:flex;flex-direction:column;align-items:center}.nft-details-page .nft-image-section .nft-image-container{position:relative;width:100%;max-width:400px;aspect-ratio:1;border-radius:16px;overflow:hidden;margin-bottom:2rem;transition:transform .3s ease,box-shadow .3s ease}.nft-details-page .nft-image-section .nft-image-container:hover{transform:translateY(-5px);box-shadow:0 20px 40px #ffd7004d}.nft-details-page .nft-image-section .nft-image-container.loading .image-placeholder{display:flex;align-items:center;justify-content:center;width:100%;height:100%;background:linear-gradient(45deg,#2a2a3e,#3a3a5e)}.nft-details-page .nft-image-section .nft-image-container.loading .image-placeholder .loading-spinner{width:40px;height:40px;border:3px solid rgba(255,215,0,.3);border-top:3px solid #ffd700;border-radius:50%;animation:spin 1s linear infinite}.nft-details-page .nft-image-section .nft-image-container.loaded .image-placeholder{display:none}.nft-details-page .nft-image-section .nft-image-container .nft-image{width:100%;height:100%;object-fit:cover;border-radius:16px;border:3px solid transparent;background:linear-gradient(45deg,#ffd700,#ffed4e) padding-box,linear-gradient(45deg,#ffd700,#ffed4e) border-box}.nft-details-page .nft-image-section .nft-image-container .trending-indicator{position:absolute;top:12px;left:12px;display:flex;align-items:center;gap:.4rem;padding:.4rem .8rem;border-radius:20px;font-size:.8rem;font-weight:600;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:3;transition:all .3s ease}.nft-details-page .nft-image-section .nft-image-container .trending-indicator .trending-icon{font-size:.9rem}.nft-details-page .nft-image-section .nft-image-container .trending-indicator .trending-text{font-size:.75rem;letter-spacing:.01em}.nft-details-page .nft-image-section .nft-image-container .trending-indicator.trending-up{background:rgba(34,197,94,.9);color:#fff;border:1px solid rgba(34,197,94,.6)}.nft-details-page .nft-image-section .nft-image-container .trending-indicator.trending-down{background:rgba(239,68,68,.9);color:#fff;border:1px solid rgba(239,68,68,.6)}.nft-details-page .nft-image-section .nft-image-container .trending-indicator.trending-stable{background:rgba(107,114,128,.9);color:#fff;border:1px solid rgba(107,114,128,.6)}@media (max-width: 768px){.nft-details-page .nft-image-section .nft-image-container .trending-indicator{top:8px;left:8px;padding:.3rem .6rem;font-size:.7rem;gap:.3rem}.nft-details-page .nft-image-section .nft-image-container .trending-indicator .trending-icon{font-size:.8rem}.nft-details-page .nft-image-section .nft-image-container .trending-indicator .trending-text{font-size:.65rem}}.nft-details-page .nft-image-section .share-section{width:100%;max-width:400px}.nft-details-page .nft-image-section .nft-details-reactions{margin-top:0;max-width:400px;background:rgba(255,215,0,.03);border:.5px solid rgba(255,215,0,.1)}.nft-details-page .nft-image-section .nft-details-reactions:hover{background:rgba(255,215,0,.05);border-color:#ffd70026}.nft-details-page .nft-image-section .nft-image-container{margin-bottom:0}.nft-details-page .nft-info-section .nft-title{display:flex;align-items:center;gap:1rem;margin-bottom:1.5rem;flex-wrap:wrap}.nft-details-page .nft-info-section .nft-title h1{font-size:2.5rem;font-weight:800;background:linear-gradient(45deg,#ffd700,#ffed4e);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin:0;line-height:1.2}@media (max-width: 768px){.nft-details-page .nft-info-section .nft-title h1{font-size:2rem}}.nft-details-page .nft-info-section .nft-quick-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:1.5rem;margin-bottom:2rem}.nft-details-page .nft-info-section .nft-quick-stats .quick-stat{background:rgba(255,255,255,.05);border:1px solid rgba(255,215,0,.3);border-radius:12px;padding:1rem;text-align:center;transition:all .3s ease}.nft-details-page .nft-info-section .nft-quick-stats .quick-stat:hover{background:rgba(255,215,0,.1);border-color:#ffd70080;transform:translateY(-2px)}.nft-details-page .nft-info-section .nft-quick-stats .quick-stat .stat-label{display:block;font-size:.9rem;color:#b0b0b0;margin-bottom:.5rem;text-transform:uppercase;font-weight:600;letter-spacing:.5px}.nft-details-page .nft-info-section .nft-quick-stats .quick-stat .stat-value{display:block;font-size:1.5rem;font-weight:800;color:gold;line-height:1}.nft-details-page .nft-info-section .nft-quick-stats .quick-stat .stat-value .stat-total{font-size:.9rem;color:#888;font-weight:400}.nft-details-page .nft-info-section .external-links{display:flex;gap:1rem;flex-wrap:wrap;min-height:50px}.nft-details-page .nft-info-section .external-links .external-link{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;border-radius:8px;text-decoration:none;color:#fff;font-weight:600;transition:all .3s ease;border:none;cursor:pointer;font-size:.95rem}.nft-details-page .nft-info-section .external-links .external-link.opensea-link{background:linear-gradient(45deg,#2081e2,#1868b7)}.nft-details-page .nft-info-section .external-links .external-link.opensea-link:hover{background:linear-gradient(45deg,#1868b7,#2081e2);transform:translateY(-2px);box-shadow:0 8px 20px #2081e266}.nft-details-page .nft-info-section .external-links .external-link.vote-link{background:linear-gradient(45deg,#ff6b6b,#ee5a52)}.nft-details-page .nft-info-section .external-links .external-link.vote-link:hover{background:linear-gradient(45deg,#ee5a52,#ff6b6b);transform:translateY(-2px);box-shadow:0 8px 20px #ff6b6b66}.nft-details-page .nft-info-section .external-links .external-link.share-link.twitter-share{background:linear-gradient(45deg,#1da1f2,#0d8bd9);display:flex!important;visibility:visible!important;opacity:1!important}.nft-details-page .nft-info-section .external-links .external-link.share-link.twitter-share:hover{background:linear-gradient(45deg,#0d8bd9,#1da1f2);transform:translateY(-2px);box-shadow:0 8px 20px #1da1f266}.nft-details-page .nft-info-section .external-links .external-link.share-link.copy-link{background:linear-gradient(45deg,#666,#888)}.nft-details-page .nft-info-section .external-links .external-link.share-link.copy-link:hover{background:linear-gradient(45deg,#888,#666);transform:translateY(-2px);box-shadow:0 8px 20px #8886}.nft-details-page .nft-info-section .external-links .external-link.share-link:active{transform:translateY(0)}.nft-details-page .nft-info-section .external-links .external-link .link-icon{font-size:1.2rem}.nft-details-page .stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;margin-bottom:3rem}.nft-details-page .traits-section{margin-bottom:3rem}.nft-details-page .traits-section h2{font-size:1.8rem;margin-bottom:1.5rem;color:gold;font-weight:700}.nft-details-page .traits-section .traits-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem}.nft-details-page .traits-section .traits-grid .trait-item{background:rgba(255,255,255,.05);border:1px solid rgba(255,215,0,.2);border-radius:8px;padding:1rem;transition:all .3s ease}.nft-details-page .traits-section .traits-grid .trait-item:hover{background:rgba(255,215,0,.1);border-color:#ffd70066}.nft-details-page .traits-section .traits-grid .trait-item .trait-type{display:block;font-size:.8rem;color:#b0b0b0;text-transform:uppercase;font-weight:600;margin-bottom:.25rem;letter-spacing:.5px}.nft-details-page .traits-section .traits-grid .trait-item .trait-value{display:block;font-size:1.1rem;color:#fff;font-weight:600}.nft-details-page .battles-section{margin-bottom:3rem}.nft-details-page .battles-section h2{font-size:1.8rem;margin-bottom:1.5rem;color:gold;font-weight:700}.nft-details-page .top-tier-header{color:gold;font-weight:700;background:linear-gradient(45deg,#ffd700,#ffed4e);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.nft-details-page .standard-header{color:#fff;font-weight:700}.nft-details-page .peak-rank-container{background:linear-gradient(135deg,rgba(15,15,15,.95) 0%,rgba(25,25,25,.95) 100%);border-radius:16px;padding:2rem;margin:2rem 0;border:1px solid rgba(255,215,0,.2);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 8px 32px #0000004d,0 0 0 1px #ffd7001a,inset 0 1px #ffffff0d;text-align:center;position:relative;overflow:hidden}.nft-details-page .peak-rank-container:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,215,0,.02),transparent);animation:shimmer 4s infinite;z-index:0}.nft-details-page .peak-rank-container h3{position:relative;z-index:1;font-size:1.4rem;margin-bottom:1rem}.nft-details-page .peak-rank-container .peak-rank-content{position:relative;z-index:1}.nft-details-page .peak-rank-container .peak-rank-content .peak-rank-value{font-size:2.5rem;font-weight:800;color:gold;text-shadow:0 2px 4px rgba(0,0,0,.5);margin-bottom:.5rem;letter-spacing:-.02em}.nft-details-page .peak-rank-container .peak-rank-content .peak-rank-date{font-size:1rem;color:#b0b0b0;font-weight:500}.nft-details-page .peak-rank-container .peak-rank-content .highest-rank-info{margin-top:2rem;padding-top:2rem;border-top:1px solid rgba(255,215,0,.2);text-align:center}.nft-details-page .peak-rank-container .peak-rank-content .highest-rank-info .highest-rank-label{font-size:1.1rem;color:#b0b0b0;font-weight:600;text-transform:uppercase;letter-spacing:.5px;margin-bottom:.75rem}.nft-details-page .peak-rank-container .peak-rank-content .highest-rank-info .highest-rank-value{font-size:2rem;font-weight:700;color:gold;margin-bottom:.5rem;text-shadow:0 2px 4px rgba(0,0,0,.5)}.nft-details-page .peak-rank-container .peak-rank-content .highest-rank-info .highest-rank-date{font-size:1rem;color:#b0b0b0;font-weight:500}@media (max-width: 768px){.nft-details-page .peak-rank-container{padding:1.5rem;margin:1.5rem 0}.nft-details-page .peak-rank-container .peak-rank-content .peak-rank-value{font-size:2rem}.nft-details-page .peak-rank-container .peak-rank-content .highest-rank-info{margin-top:1.5rem;padding-top:1.5rem}.nft-details-page .peak-rank-container .peak-rank-content .highest-rank-info .highest-rank-value{font-size:1.8rem}}@media (max-width: 480px){.nft-details-page .peak-rank-container{padding:1rem;margin:1rem 0}.nft-details-page .peak-rank-container .peak-rank-content .peak-rank-value{font-size:1.8rem}}.nft-details-page .nft-ranking-chart{margin:3rem 0}@media (max-width: 768px){.nft-details-page .nft-ranking-chart{margin:2rem 0}}@media (max-width: 480px){.nft-details-page .nft-ranking-chart{margin:1.5rem 0}}.nft-details-page .collection-context{background:rgba(255,255,255,.05);border:1px solid rgba(255,215,0,.2);border-radius:12px;padding:2rem}.nft-details-page .collection-context h3{font-size:1.5rem;margin-bottom:1.5rem;color:gold;font-weight:700}.nft-details-page .collection-context .collection-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:2rem}.nft-details-page .collection-context .collection-stats .stat-item{border:0!important;background:none!important;padding:0!important}.nft-details-page .collection-context .collection-stats .collection-stat{text-align:center}.nft-details-page .collection-context .collection-stats .collection-stat .stat-value{display:block;font-size:2rem;font-weight:800;color:gold;margin-bottom:.25rem}.nft-details-page .collection-context .collection-stats .collection-stat .stat-label{display:block;font-size:.9rem;color:#b0b0b0;text-transform:uppercase;font-weight:600;letter-spacing:.5px}.nft-details-page .collection-context .collection-vote-section{display:flex;justify-content:center;margin-top:2rem;padding-top:2rem;border-top:1px solid rgba(255,215,0,.2)}@media (max-width: 768px){.nft-details-page .collection-context .collection-vote-section{margin-top:1.5rem;padding-top:1.5rem}}.nft-details-page .collection-context .collection-vote-button{display:flex;align-items:center;gap:.75rem;padding:1rem 2rem;background:linear-gradient(45deg,#ff6b6b,#ff5252);color:#fff;border:none;border-radius:12px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #ff6b6b4d;position:relative;overflow:hidden}.nft-details-page .collection-context .collection-vote-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s ease}.nft-details-page .collection-context .collection-vote-button:hover{transform:translateY(-2px);box-shadow:0 6px 20px #ff6b6b66;background:linear-gradient(45deg,#ff5252,#e53e3e)}.nft-details-page .collection-context .collection-vote-button:hover:before{left:100%}.nft-details-page .collection-context .collection-vote-button:active{transform:translateY(0)}.nft-details-page .collection-context .collection-vote-button .vote-icon{font-size:1.2rem}@media (max-width: 768px){.nft-details-page .collection-context .collection-vote-button{padding:.875rem 1.5rem;font-size:1rem;gap:.5rem}.nft-details-page .collection-context .collection-vote-button .vote-icon{font-size:1.1rem}}@media (max-width: 480px){.nft-details-page .collection-context .collection-vote-button{padding:.75rem 1.25rem;font-size:.9rem}}.nft-details-page .basic-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;margin:2rem 0}.nft-details-page .basic-stats .stat-card{background:linear-gradient(135deg,rgba(15,15,15,.95) 0%,rgba(25,25,25,.95) 100%);border:1px solid rgba(255,215,0,.2);border-radius:16px;padding:1.5rem;display:flex;flex-direction:column;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 8px 32px #0000004d,0 0 0 1px #ffd7001a,inset 0 1px #ffffff0d}.nft-details-page .basic-stats .stat-card h3{color:gold;margin-bottom:1rem;font-size:1.2rem;font-weight:700}.nft-details-page .basic-stats .stat-card .stat-grid{display:grid;gap:.75rem;width:100%}.nft-details-page .basic-stats .stat-card .stat-grid .stat-item{display:flex;justify-content:space-between;align-items:center;padding:.5rem 1rem;border-bottom:1px solid rgba(255,255,255,.08)}.nft-details-page .basic-stats .stat-card .stat-grid .stat-item:last-child{border-bottom:none}.nft-details-page .basic-stats .stat-card .stat-grid .stat-item .stat-label{color:#ffffffb3;font-size:.9rem}.nft-details-page .basic-stats .stat-card .stat-grid .stat-item .stat-value{color:#fff;font-weight:700;font-size:1.1rem}.nft-details-page .basic-stats .stat-card .stat-grid .stat-item.ranking-highlight{background:linear-gradient(135deg,rgba(255,215,0,.15) 0%,rgba(255,193,7,.1) 100%);border:1px solid rgba(255,215,0,.3);border-radius:8px;padding:.75rem;position:relative;overflow:hidden;margin:.5rem 0}.nft-details-page .basic-stats .stat-card .stat-grid .stat-item.ranking-highlight:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,rgba(255,215,0,.5) 0%,rgba(255,215,0,.8) 50%,rgba(255,215,0,.5) 100%)}.nft-details-page .basic-stats .stat-card .stat-grid .stat-item.ranking-highlight .stat-label{color:gold!important;font-weight:600}.nft-details-page .basic-stats .stat-card .stat-grid .stat-item.ranking-highlight .stat-value{color:#fff!important;text-shadow:0 0 10px rgba(255,215,0,.3);font-weight:800}.nft-details-page .battles-section{margin:2rem 0;background:linear-gradient(135deg,rgba(15,15,15,.95) 0%,rgba(25,25,25,.95) 100%);border-radius:16px;padding:1.5rem;border:1px solid rgba(255,215,0,.2);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 8px 32px #0000004d,0 0 0 1px #ffd7001a,inset 0 1px #ffffff0d}.nft-details-page .battles-section h2{color:gold;margin-bottom:1rem;font-size:1.4rem;font-weight:700;text-shadow:0 0 20px rgba(255,215,0,.3)}.nft-details-page .battles-section .battles-list{display:flex;flex-direction:column;gap:.75rem}.nft-details-page .battles-section .battles-list .battle-item{display:grid;grid-template-columns:1fr auto 1fr auto;align-items:center;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:.75rem 1rem;transition:all .3s ease;position:relative;overflow:hidden;min-height:60px}.nft-details-page .battles-section .battles-list .battle-item:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.2) 50%,transparent 100%)}.nft-details-page .battles-section .battles-list .battle-item.won{border-color:#4caf5066;background:linear-gradient(135deg,rgba(76,175,80,.08) 0%,rgba(76,175,80,.03) 100%)}.nft-details-page .battles-section .battles-list .battle-item.won:before{background:linear-gradient(90deg,rgba(76,175,80,.2) 0%,rgba(76,175,80,.8) 50%,rgba(76,175,80,.2) 100%)}.nft-details-page .battles-section .battles-list .battle-item.lost{border-color:#f4433666;background:linear-gradient(135deg,rgba(244,67,54,.08) 0%,rgba(244,67,54,.03) 100%)}.nft-details-page .battles-section .battles-list .battle-item.lost:before{background:linear-gradient(90deg,rgba(244,67,54,.2) 0%,rgba(244,67,54,.8) 50%,rgba(244,67,54,.2) 100%)}.nft-details-page .battles-section .battles-list .battle-item:hover{transform:translateY(-1px);box-shadow:0 4px 12px #0003}.nft-details-page .battles-section .battles-list .battle-item:hover.won{border-color:#4caf5099;box-shadow:0 4px 12px #4caf5033}.nft-details-page .battles-section .battles-list .battle-item:hover.lost{border-color:#f4433699;box-shadow:0 4px 12px #f4433633}.nft-details-page .battles-section .battle-nft{display:flex;align-items:center;gap:.75rem}.nft-details-page .battles-section .battle-nft.clickable-nft{cursor:pointer;transition:all .2s ease;border-radius:8px;padding:.25rem;margin:-.25rem}.nft-details-page .battles-section .battle-nft.clickable-nft:hover{background:rgba(255,255,255,.05);transform:scale(1.02)}.nft-details-page .battles-section .battle-nft.clickable-nft:hover .nft-name{text-decoration:underline}.nft-details-page .battles-section .battle-nft.clickable-nft:hover .nft-image-container{border-color:#ffd70066!important;box-shadow:0 0 15px #ffd70033!important}.nft-details-page .battles-section .battle-nft .nft-image-container{position:relative;width:50px;height:50px;border-radius:8px;overflow:hidden;border:1px solid rgba(255,255,255,.2);transition:all .3s ease;flex-shrink:0}.nft-details-page .battles-section .battle-nft .nft-image-container:hover{border-color:#fff6;transform:scale(1.02);box-shadow:0 0 15px #ffffff1a}.nft-details-page .battles-section .battle-nft .nft-image-container .battle-nft-image{width:100%;height:100%;object-fit:cover;transition:all .3s ease}.nft-details-page .battles-section .battle-nft .nft-image-container .battle-overlay{position:absolute;top:-1px;right:-1px;width:18px;height:18px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:10px;border:1px solid;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.nft-details-page .battles-section .battle-nft .nft-image-container .battle-overlay.winner{background:rgba(255,215,0,.9);border-color:gold;box-shadow:0 0 10px #ffd70080}.nft-details-page .battles-section .battle-nft .nft-image-container .battle-overlay.loser{background:rgba(128,128,128,.9);border-color:gray;box-shadow:0 0 10px #8080804d}.nft-details-page .battles-section .battle-nft .nft-info{display:flex;flex-direction:column;gap:.1rem;min-width:0;flex:1}.nft-details-page .battles-section .battle-nft .nft-info .nft-name{color:#fff;font-weight:600;font-size:.85rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nft-details-page .battles-section .battle-nft .nft-info .nft-rating{color:#fff9;font-size:.75rem}.nft-details-page .battles-section .battle-nft.current-nft .nft-info .nft-name{color:gold}.nft-details-page .battles-section .battle-nft.opponent-nft{flex-direction:row-reverse;text-align:right}.nft-details-page .battles-section .battle-nft.opponent-nft .nft-info{align-items:flex-end}.nft-details-page .battles-section .battle-vs{display:flex;align-items:center;justify-content:center;margin:0 .5rem}.nft-details-page .battles-section .battle-vs .vs-circle{position:relative;width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .3s ease}.nft-details-page .battles-section .battle-vs .vs-circle:hover{transform:scale(1.1);box-shadow:0 4px 12px #0006,0 0 25px #667eea80}.nft-details-page .battles-section .battle-vs .vs-circle .vs-text{color:#fff;font-weight:800;font-size:.6rem;letter-spacing:.5px}.nft-details-page .battles-section .battle-vs .vs-circle .vs-image{width:20px;height:20px;object-fit:contain}.nft-details-page .battles-section .battle-vs .vs-circle .battle-result-badge{position:absolute;top:-6px;right:-6px;width:16px;height:16px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.6rem;font-weight:800;border:1px solid}.nft-details-page .battles-section .battle-vs .vs-circle .battle-result-badge.won{background:#4caf50;border-color:#66bb6a;color:#fff;box-shadow:0 0 8px #4caf5080}.nft-details-page .battles-section .battle-vs .vs-circle .battle-result-badge.lost{background:#f44336;border-color:#ef5350;color:#fff;box-shadow:0 0 8px #f4433680}.nft-details-page .battles-section .battle-metadata{display:flex;align-items:center;justify-content:flex-end;min-width:100px}.nft-details-page .battles-section .battle-metadata .battle-date{color:#ffffff80;font-size:.7rem;text-align:right;font-weight:400;white-space:nowrap}.nft-details-page .battles-section .no-battles{text-align:center;padding:3rem 2rem;color:#fff9;font-style:italic;background:rgba(255,255,255,.02);border:1px dashed rgba(255,255,255,.1);border-radius:12px;margin-top:1rem}.nft-details-page .battles-section .no-battles p{margin:0;font-size:1rem}@media (max-width: 768px){.nft-details-page .battles-section{padding:1.25rem}.nft-details-page .battles-section .battles-list{gap:1rem}.nft-details-page .battles-section .battles-list .battle-item{grid-template-columns:1fr;grid-template-rows:auto auto auto;gap:.875rem;padding:1rem;min-height:auto}.nft-details-page .battles-section .battles-list .battle-item .battle-nft.current-nft{justify-content:flex-start;grid-row:1}.nft-details-page .battles-section .battles-list .battle-item .battle-nft.current-nft .nft-image-container{width:56px;height:56px}.nft-details-page .battles-section .battles-list .battle-item .battle-nft.current-nft .nft-info{text-align:left;align-items:flex-start;flex:1;min-width:0}.nft-details-page .battles-section .battles-list .battle-item .battle-nft.current-nft .nft-info .nft-name{font-size:.9375rem;max-width:100%}.nft-details-page .battles-section .battles-list .battle-item .battle-nft.current-nft .nft-info .nft-rating{font-size:.8125rem}.nft-details-page .battles-section .battles-list .battle-item .battle-vs{grid-row:2;margin:0;justify-content:space-between;align-items:center;padding:.5rem 0}.nft-details-page .battles-section .battles-list .battle-item .battle-vs .vs-circle{width:44px;height:44px}.nft-details-page .battles-section .battles-list .battle-item .battle-vs .vs-circle .vs-text{font-size:.6875rem}.nft-details-page .battles-section .battles-list .battle-item .battle-vs .vs-circle .vs-image{width:24px;height:24px}.nft-details-page .battles-section .battles-list .battle-item .battle-vs .vs-circle .battle-result-badge{width:22px;height:22px;font-size:.75rem;top:-6px;right:-6px}.nft-details-page .battles-section .battles-list .battle-item .battle-metadata{grid-row:2;min-width:auto;justify-content:flex-end}.nft-details-page .battles-section .battles-list .battle-item .battle-metadata .battle-date{font-size:.75rem;opacity:.8}.nft-details-page .battles-section .battles-list .battle-item .battle-nft.opponent-nft{grid-row:3;justify-content:flex-start;flex-direction:row;text-align:left}.nft-details-page .battles-section .battles-list .battle-item .battle-nft.opponent-nft.clickable-nft{padding:.5rem;margin:-.5rem;border-radius:10px}.nft-details-page .battles-section .battles-list .battle-item .battle-nft.opponent-nft.clickable-nft:hover{transform:scale(1.01)}.nft-details-page .battles-section .battles-list .battle-item .battle-nft.opponent-nft .nft-image-container{width:56px;height:56px}.nft-details-page .battles-section .battles-list .battle-item .battle-nft.opponent-nft .nft-info{text-align:left;align-items:flex-start;flex:1;min-width:0}.nft-details-page .battles-section .battles-list .battle-item .battle-nft.opponent-nft .nft-info .nft-name{font-size:.9375rem;max-width:100%}.nft-details-page .battles-section .battles-list .battle-item .battle-nft.opponent-nft .nft-info .nft-rating{font-size:.8125rem}}@media (max-width: 480px){.nft-details-page .battles-section{padding:1rem}.nft-details-page .battles-section .battles-list{gap:.875rem}.nft-details-page .battles-section .battles-list .battle-item{padding:.875rem;gap:.75rem}.nft-details-page .battles-section .battles-list .battle-item .battle-nft.current-nft .nft-image-container,.nft-details-page .battles-section .battles-list .battle-item .battle-nft.opponent-nft .nft-image-container{width:52px;height:52px}.nft-details-page .battles-section .battles-list .battle-item .battle-nft.current-nft .nft-info .nft-name,.nft-details-page .battles-section .battles-list .battle-item .battle-nft.opponent-nft .nft-info .nft-name{font-size:.875rem}.nft-details-page .battles-section .battles-list .battle-item .battle-nft.current-nft .nft-info .nft-rating,.nft-details-page .battles-section .battles-list .battle-item .battle-nft.opponent-nft .nft-info .nft-rating{font-size:.75rem}.nft-details-page .battles-section .battles-list .battle-item .battle-vs .vs-circle{width:40px;height:40px}.nft-details-page .battles-section .battles-list .battle-item .battle-vs .vs-circle .vs-image{width:22px;height:22px}.nft-details-page .battles-section .battles-list .battle-item .battle-vs .vs-circle .battle-result-badge{width:20px;height:20px;font-size:.6875rem}.nft-details-page .battles-section .battles-list .battle-item .battle-metadata .battle-date{font-size:.6875rem}.nft-details-page .battles-section .no-battles{padding:2.5rem 1.5rem}.nft-details-page .battles-section .no-battles p{font-size:.9375rem}}@media (max-width: 360px){.nft-details-page .battles-section{padding:.875rem}.nft-details-page .battles-section .battles-list .battle-item{padding:.75rem}.nft-details-page .battles-section .battles-list .battle-item .battle-nft.current-nft .nft-image-container,.nft-details-page .battles-section .battles-list .battle-item .battle-nft.opponent-nft .nft-image-container{width:48px;height:48px}.nft-details-page .battles-section .battles-list .battle-item .battle-nft.current-nft .nft-info .nft-name,.nft-details-page .battles-section .battles-list .battle-item .battle-nft.opponent-nft .nft-info .nft-name{font-size:.8125rem}.nft-details-page .battles-section .battles-list .battle-item .battle-nft.current-nft .nft-info .nft-rating,.nft-details-page .battles-section .battles-list .battle-item .battle-nft.opponent-nft .nft-info .nft-rating{font-size:.6875rem}.nft-details-page .battles-section .battles-list .battle-item .battle-vs .vs-circle{width:36px;height:36px}.nft-details-page .battles-section .battles-list .battle-item .battle-vs .vs-circle .vs-image{width:20px;height:20px}}.nft-details-page .btn{padding:.75rem 1.5rem;border-radius:8px;font-weight:600;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s ease;border:none;font-size:.95rem}.nft-details-page .btn.btn-primary{background:linear-gradient(45deg,#ffd700,#ffed4e);color:#000}.nft-details-page .btn.btn-primary:hover{background:linear-gradient(45deg,#ffed4e,#ffd700);transform:translateY(-2px);box-shadow:0 8px 20px #ffd70066}.nft-details-page .btn.btn-secondary{background:rgba(255,255,255,.1);color:#fff;border:1px solid rgba(255,255,255,.3)}.nft-details-page .btn.btn-secondary:hover{background:rgba(255,255,255,.2);border-color:#ffffff80;transform:translateY(-2px)}@keyframes shimmer{0%{transform:translate(-100%) translateY(-100%) rotate(45deg)}to{transform:translate(100%) translateY(100%) rotate(45deg)}}.admin-page{min-height:100vh;background:var(--background);padding:2rem}@media (max-width: 768px){.admin-page{padding:1rem}}.admin-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:3rem;padding-bottom:1.5rem;border-bottom:2px solid rgba(var(--primary-rgb),.2)}@media (max-width: 768px){.admin-header{flex-direction:column;gap:1rem;align-items:flex-start}}.admin-header .header-content h1{font-size:2.5rem;font-weight:700;color:var(--text-primary);margin:0 0 .5rem}.admin-header .header-content .subtitle{color:var(--text-secondary);font-size:1rem;margin:0}.admin-header .header-actions{display:flex;gap:1rem}@media (max-width: 768px){.admin-header .header-actions{width:100%}}.admin-header .header-actions button{padding:.75rem 1.5rem;border-radius:8px;border:none;font-weight:600;cursor:pointer;transition:all .2s ease}.admin-header .header-actions button.refresh-button{background:var(--primary);color:#fff}.admin-header .header-actions button.refresh-button:hover:not(:disabled){background:var(--primary-dark);transform:translateY(-1px)}.admin-header .header-actions button.refresh-button:disabled{opacity:.6;cursor:not-allowed}.admin-header .header-actions button.back-button{background:var(--surface);color:var(--text-primary)}.admin-header .header-actions button.back-button:hover{background:var(--surface-hover)}.admin-loading,.admin-error{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;text-align:center}.admin-loading .loading-spinner,.admin-error .loading-spinner{width:60px;height:60px;border:4px solid rgba(var(--primary-rgb),.1);border-top-color:var(--primary);border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1.5rem}.admin-loading p,.admin-error p{color:var(--text-secondary);font-size:1.125rem}.admin-loading .loading-hint,.admin-error .loading-hint{font-size:.9375rem;opacity:.7;margin-top:.5rem}.admin-loading h2,.admin-error h2{color:var(--text-primary);margin-bottom:1rem}.admin-content{max-width:1400px;margin:0 auto}.stats-section{margin-bottom:3rem}.stats-section h2{font-size:1.75rem;font-weight:700;color:var(--text-primary);margin:0 0 1.5rem}.stats-section h3{font-size:1.125rem;font-weight:600;color:var(--text-primary);margin:0 0 1rem}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem}.stats-grid.secondary-stats{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.stat-card{background:var(--surface);border-radius:16px;padding:1.5rem;display:flex;align-items:center;gap:1.5rem;transition:all .3s ease}.stat-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.stat-card.primary{background:linear-gradient(135deg,rgba(var(--primary-rgb),.1) 0%,rgba(var(--primary-rgb),.05) 100%);border:1px solid rgba(var(--primary-rgb),.2)}.stat-card.secondary{background:linear-gradient(135deg,rgba(239,68,68,.1) 0%,rgba(239,68,68,.05) 100%);border:1px solid rgba(239,68,68,.2)}.stat-card.tertiary{background:linear-gradient(135deg,rgba(34,197,94,.1) 0%,rgba(34,197,94,.05) 100%);border:1px solid rgba(34,197,94,.2)}.stat-card.quaternary{background:linear-gradient(135deg,rgba(249,115,22,.1) 0%,rgba(249,115,22,.05) 100%);border:1px solid rgba(249,115,22,.2)}.stat-card .stat-icon{font-size:3rem;line-height:1}.stat-card .stat-content{flex:1}.stat-card .stat-content .stat-value{font-size:2.5rem;font-weight:700;color:var(--text-primary);line-height:1;margin-bottom:.25rem}.stat-card .stat-content .stat-label{font-size:.875rem;color:var(--text-secondary);font-weight:500}.stat-card.secondary-stats{flex-direction:column;align-items:flex-start;gap:.5rem}.stat-card.secondary-stats .stat-label{order:1;font-size:.875rem}.stat-card.secondary-stats .stat-value{order:2;font-size:2rem}.trends-container{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:2rem}@media (max-width: 768px){.trends-container{grid-template-columns:1fr}}.trend-chart{background:var(--surface);border-radius:16px;padding:1.5rem}.trend-chart .chart-bars{display:flex;align-items:flex-end;justify-content:space-between;gap:.5rem;height:200px;margin-top:1rem}.trend-chart .chart-bar-wrapper{flex:1;display:flex;flex-direction:column;align-items:center;height:100%;justify-content:flex-end}.trend-chart .chart-bar{width:100%;background:linear-gradient(180deg,var(--primary) 0%,rgba(var(--primary-rgb),.6) 100%);border-radius:8px 8px 0 0;position:relative;min-height:10px;display:flex;align-items:flex-end;justify-content:center;padding-bottom:.25rem;transition:all .3s ease}.trend-chart .chart-bar:hover{filter:brightness(1.1)}.trend-chart .chart-bar.reactions{background:linear-gradient(180deg,#ef4444 0%,rgba(239,68,68,.6) 100%)}.trend-chart .chart-bar .bar-value{color:#fff;font-size:.75rem;font-weight:600}.trend-chart .bar-label{margin-top:.5rem;font-size:.75rem;color:var(--text-secondary);text-align:center}.collection-tables{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:2rem}@media (max-width: 768px){.collection-tables{grid-template-columns:1fr}}.collection-table{background:var(--surface);border-radius:16px;padding:1.5rem}.collection-table table{width:100%;border-collapse:collapse}.collection-table table thead tr{border-bottom:2px solid rgba(var(--primary-rgb),.1)}.collection-table table thead tr th{text-align:left;padding:.75rem;font-weight:600;color:var(--text-secondary);font-size:.875rem;text-transform:uppercase;letter-spacing:.5px}.collection-table table tbody tr{border-bottom:1px solid rgba(var(--primary-rgb),.05);transition:background .2s ease}.collection-table table tbody tr:hover{background:rgba(var(--primary-rgb),.03)}.collection-table table tbody tr:last-child{border-bottom:none}.collection-table table tbody tr td{padding:1rem .75rem;color:var(--text-primary)}.collection-table table tbody tr td.collection-name{font-weight:500;text-transform:capitalize}.collection-table table tbody tr td.votes,.collection-table table tbody tr td.reactions{font-weight:600;color:var(--primary)}.collection-table table tbody tr td.users{color:var(--text-secondary);font-size:.875rem}.production-note{background:linear-gradient(135deg,rgba(var(--primary-rgb),.05) 0%,rgba(var(--primary-rgb),.02) 100%);border:1px solid rgba(var(--primary-rgb),.2);border-radius:16px;padding:2rem}.production-note h3{margin:0 0 1rem;color:var(--text-primary)}.production-note p{color:var(--text-secondary);margin:.5rem 0;line-height:1.6}.production-note p strong{color:var(--text-primary);font-weight:600}.production-note p code{background:rgba(0,0,0,.3);padding:.2rem .5rem;border-radius:4px;font-family:Monaco,Menlo,monospace;font-size:.875rem;color:var(--primary)}.production-note .code-block{background:rgba(0,0,0,.3);border:1px solid rgba(var(--primary-rgb),.2);border-radius:8px;padding:1rem;margin:1rem 0;overflow-x:auto;font-family:Monaco,Menlo,monospace;font-size:.875rem;color:var(--text-primary);line-height:1.5}.production-note .note-hint{font-size:.875rem;opacity:.8}.section-header-with-tabs{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.section-header-with-tabs h2{margin-bottom:0}.section-header-with-tabs .trend-tabs{display:flex;gap:.5rem;background:var(--background-secondary);padding:.25rem;border-radius:8px}.section-header-with-tabs .trend-tabs .trend-tab{padding:.5rem 1rem;background:transparent;border:none;color:var(--text-secondary);font-size:.875rem;font-weight:500;cursor:pointer;border-radius:6px;transition:all .2s ease}.section-header-with-tabs .trend-tabs .trend-tab:hover{background:var(--background-tertiary);color:var(--text-primary)}.section-header-with-tabs .trend-tabs .trend-tab.active{background:var(--primary);color:#fff}@media (max-width: 768px){.section-header-with-tabs{flex-direction:column;align-items:flex-start;gap:1rem}.section-header-with-tabs .trend-tabs{width:100%;justify-content:space-between}}.chart-empty{text-align:center;padding:3rem;color:var(--text-secondary);font-size:.875rem}.stat-card.shared-battles .stat-icon{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%)}.stat-card.antibot .stat-icon{background:linear-gradient(135deg,#f093fb 0%,#f5576c 100%)}.stat-card.magic-links .stat-icon{background:linear-gradient(135deg,#4facfe 0%,#00f2fe 100%)}.stat-card .stat-sublabel{font-size:.75rem;color:var(--text-secondary);margin-top:.25rem;opacity:.8}.chart-bar.shared{background:linear-gradient(180deg,#667eea 0%,#764ba2 100%);box-shadow:0 4px 15px #667eea4d}.chart-bar.antibot{background:linear-gradient(180deg,#f093fb 0%,#f5576c 100%);box-shadow:0 4px 15px #f093fb4d}.chart-bar.magic{background:linear-gradient(180deg,#4facfe 0%,#00f2fe 100%);box-shadow:0 4px 15px #4facfe4d}.stat-card.clickable{cursor:pointer;transition:all .2s ease}.stat-card.clickable:hover{transform:translateY(-2px);box-shadow:0 8px 24px #00000026}.stat-card.clickable:active{transform:translateY(0)}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.7);display:flex;align-items:center;justify-content:center;z-index:1000;padding:2rem;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fadeIn .2s ease}.modal-content{background:var(--surface);border-radius:16px;max-width:900px;width:100%;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 20px 60px #0000004d;animation:slideUp .3s ease}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.5rem 2rem;border-bottom:1px solid var(--border)}.modal-header h2{margin:0;font-size:1.5rem;color:var(--text-primary)}.modal-close{background:none;border:none;font-size:1.5rem;color:var(--text-secondary);cursor:pointer;padding:.5rem;line-height:1;transition:color .2s ease}.modal-close:hover{color:var(--text-primary)}.modal-body{padding:2rem;overflow-y:auto}.empty-state{text-align:center;padding:3rem;color:var(--text-secondary);font-size:1rem}.battles-list{display:flex;flex-direction:column;gap:1rem}.battle-item{background:var(--background);border:1px solid var(--border);border-radius:12px;padding:1.25rem;transition:all .2s ease}.battle-item:hover{border-color:var(--primary);box-shadow:0 4px 12px #0000001a}.battle-info{margin-bottom:1rem}.battle-collection{font-weight:600;font-size:1rem;color:var(--text-primary);text-transform:capitalize;margin-bottom:.5rem}.battle-meta{display:flex;gap:1rem;flex-wrap:wrap;font-size:.875rem;color:var(--text-secondary)}.battle-status{padding:.25rem .75rem;border-radius:12px;font-weight:500;text-transform:capitalize}.battle-status.active{background:rgba(52,211,153,.1);color:#34d399}.battle-status.voted{background:rgba(59,130,246,.1);color:#3b82f6}.battle-status.expired{background:rgba(156,163,175,.1);color:#9ca3af}.battle-votes{font-weight:500}.battle-url{display:flex;gap:.75rem;align-items:center}.battle-url input{flex:1;background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:.75rem 1rem;color:var(--text-primary);font-size:.875rem;font-family:SF Mono,Monaco,Cascadia Code,monospace;transition:all .2s ease}.battle-url input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px rgba(var(--primary-rgb),.1)}.copy-button{background:var(--primary);border:none;border-radius:8px;padding:.75rem 1rem;font-size:1.25rem;cursor:pointer;transition:all .2s ease;flex-shrink:0}.copy-button:hover{transform:scale(1.05);box-shadow:0 4px 12px rgba(var(--primary-rgb),.3)}.copy-button:active{transform:scale(.95)}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.stats-grid.platform-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}@media (max-width: 768px){.stats-grid.platform-stats{grid-template-columns:1fr}}@media (max-width: 768px){.modal-overlay{padding:1rem}.modal-content{max-height:90vh}.modal-header{padding:1rem 1.5rem}.modal-header h2{font-size:1.25rem}.modal-body{padding:1.5rem}.battle-item{padding:1rem}.battle-meta{gap:.75rem;font-size:.8125rem}.battle-url{flex-direction:column;gap:.5rem}.battle-url input,.battle-url .copy-button{width:100%}}.collections-selection-page{min-height:calc(100vh - 80px);width:100%;max-width:1400px;margin:0 auto;padding:2rem;display:flex;flex-direction:column;position:relative}.collections-selection-page:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(ellipse at top left,rgba(0,122,255,.05),transparent 50%),radial-gradient(ellipse at bottom right,rgba(99,102,241,.03),transparent 50%);pointer-events:none;z-index:-1}.collections-selection-page .section-header{text-align:center;margin-bottom:3rem;max-width:800px;margin-left:auto;margin-right:auto}.collections-selection-page .section-header .page-title{font-size:clamp(2.5rem,5vw,4rem);font-weight:900;margin:0 0 1rem;background:linear-gradient(135deg,#007AFF 0%,#0051D8 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1.1;letter-spacing:-.02em}.collections-selection-page .section-header .page-subtitle{font-size:1.25rem;color:var(--text-secondary);font-weight:400;line-height:1.6;margin:0}.collections-selection-page .collections-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:2rem;flex:1}@media (min-width: 1200px){.collections-selection-page .collections-grid{grid-template-columns:repeat(3,1fr);max-width:1200px;margin:0 auto}}@media (max-width: 768px){.collections-selection-page .collections-grid{grid-template-columns:1fr;gap:1.5rem}}.collections-selection-page .collections-loading{grid-column:1/-1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:6rem 2rem;color:var(--text-secondary)}.collections-selection-page .collections-loading .loading-spinner{width:48px;height:48px;border:3px solid rgba(var(--accent-primary-rgb),.1);border-radius:50%;border-top-color:var(--accent-primary);animation:spin 1.2s ease-in-out infinite;margin-bottom:1.5rem}.collections-selection-page .collections-loading p{font-size:1.125rem;font-weight:500;margin:0}.vote-collection-card{background:linear-gradient(145deg,rgba(15,23,42,.8),rgba(30,41,59,.6));-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(148,163,184,.1);border-radius:24px;padding:0;text-decoration:none;color:inherit;transition:all .4s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;box-shadow:0 4px 20px #0000001a,0 1px 3px #0000000d}.vote-collection-card:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,rgba(148,163,184,.1),rgba(58,58,60,.05));opacity:0;transition:opacity .4s ease;z-index:0}.vote-collection-card.vote-animating{animation:collectionVotePulse 2.5s ease-out;border-color:#007aff66;box-shadow:0 25px 50px #00000040,0 15px 35px #007aff33}.vote-collection-card.vote-animating:before{opacity:.7}.vote-collection-card.vote-animating .vote-increment-indicator{animation:voteIncrementFloat 2.5s ease-out}.vote-collection-card.vote-animating .stat-animating .stat-number{animation:collectionStatGlow 2.5s ease-out}.vote-collection-card:hover{transform:translateY(-12px) scale(1.02);box-shadow:0 25px 50px #00000040,0 15px 35px #007aff26;border-color:#007aff4d}.vote-collection-card:hover:before{opacity:1}.vote-collection-card:hover .collection-img{transform:scale(1.1)}.vote-collection-card:hover .start-voting-button{background:linear-gradient(135deg,#007AFF,#0051D8);transform:translateY(-2px);box-shadow:0 8px 25px #007aff66}.vote-collection-card:hover .start-voting-button .cta-arrow{transform:translate(4px)}.vote-collection-card.featured{border-color:#007aff33}.vote-collection-card.featured:before{opacity:.5}.vote-collection-card .collection-content{display:flex;flex-direction:column;height:100%;position:relative;z-index:1}.vote-collection-card .collection-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1.5rem}.vote-collection-card .collection-header .status-badge{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border-radius:50px;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:1px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:absolute;left:15px;top:15px;z-index:4}.vote-collection-card .collection-header .status-badge.live{background:linear-gradient(135deg,rgba(34,197,94,.2),rgba(16,185,129,.2));color:#10b981;border:1px solid rgba(16,185,129,.3);box-shadow:0 4px 12px #10b98133}.vote-collection-card .collection-header .status-badge .badge-dot{width:8px;height:8px;border-radius:50%;background:currentColor;animation:pulse 2s infinite;box-shadow:0 0 10px currentColor}.vote-collection-card .collection-header .vote-increment-indicator{position:absolute;top:15px;right:15px;background:linear-gradient(135deg,#007AFF,#0051D8);color:#fff;padding:.375rem .75rem;border-radius:20px;font-size:.75rem;font-weight:600;z-index:3;transform:translateY(-20px) scale(0);opacity:0;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 4px 16px #007aff66}.vote-collection-card .collection-header .vote-increment-indicator.animating{animation:voteIncrementFloat 2.5s ease-out}.vote-collection-card .collection-header .collection-img{border-radius:16px;object-fit:cover;border:2px solid rgba(148,163,184,.2);transition:all .4s cubic-bezier(.4,0,.2,1);box-shadow:0 8px 25px #0003}.vote-collection-card .collection-info{margin-bottom:2rem}.vote-collection-card .collection-info .collection-name{font-size:1.5rem;font-weight:800;color:#f8fafc;margin:0;line-height:1.3;letter-spacing:-.01em;text-shadow:0 2px 4px rgba(0,0,0,.3)}.vote-collection-card .collection-stats{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.vote-collection-card .collection-stats .stat-item{display:flex;flex-direction:column;align-items:center;text-align:center;flex:1;gap:7px}.vote-collection-card .collection-stats .stat-item .stat-number{font-size:1.5rem;font-weight:800;background:linear-gradient(135deg,#007AFF,#0051D8);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1;margin-bottom:0;font-variant-numeric:tabular-nums}.vote-collection-card .collection-stats .stat-item .stat-label{font-size:.75rem;color:#94a3b8;text-transform:uppercase;letter-spacing:1px;font-weight:600}.vote-collection-card .collection-stats .stat-separator{width:1px;height:40px;background:linear-gradient(to bottom,transparent,rgba(148,163,184,.3),transparent);margin:0 .5rem}.vote-collection-card .start-voting-button{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;font-family:inherit;font-weight:600;text-decoration:none;border:none;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);-webkit-user-select:none;user-select:none;width:100%;padding:1rem 1.5rem;background:linear-gradient(135deg,var(--accent-primary) 0%,var(--accent-secondary) 100%);color:#fff;border-radius:12px;font-size:1rem;margin-top:auto;box-shadow:0 4px 12px rgba(var(--accent-primary-rgb),.3)}.vote-collection-card .start-voting-button:hover:not(:disabled){background:var(--accent-hover);transform:translate3d(0,-2px,0);box-shadow:0 8px 25px rgba(var(--accent-primary-rgb),.4)}.vote-collection-card .start-voting-button:active:not(:disabled){transform:translateZ(0)}.vote-collection-card .start-voting-button:disabled{opacity:.6;cursor:not-allowed;transform:none!important}.vote-collection-card .start-voting-button .cta-arrow{width:16px;height:16px;transition:transform .3s cubic-bezier(.4,0,.2,1)}.vote-collection-card .start-voting-button:hover .cta-arrow{transform:translate(2px)}.vote-collection-card .start-voting-button span{position:relative;z-index:1}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.1)}}@keyframes collectionVotePulse{0%{transform:scale(1);box-shadow:0 4px 20px #0000001a}25%{transform:scale(1.03);box-shadow:0 15px 35px #6366f14d}50%{transform:scale(1.01);box-shadow:0 25px 50px #6366f133}to{transform:scale(1);box-shadow:0 4px 20px #0000001a}}@keyframes voteIncrementFloat{0%{transform:translateY(-20px) scale(0);opacity:0}15%{transform:translateY(-10px) scale(1.1);opacity:1}85%{transform:translateY(-5px) scale(1);opacity:1}to{transform:translateY(-20px) scale(.8);opacity:0}}@keyframes collectionStatGlow{0%,to{text-shadow:none;color:#fff}25%{text-shadow:0 0 10px rgba(99,102,241,.6);color:#6366f1}50%{text-shadow:0 0 20px rgba(99,102,241,.8);color:#6366f1;transform:scale(1.05)}75%{text-shadow:0 0 15px rgba(99,102,241,.6);color:#6366f1}}@keyframes spin{to{transform:rotate(360deg)}}@media (max-width: 768px){.collections-selection-page{padding:1.5rem 1rem}.collections-selection-page .section-header{margin-bottom:2rem}.collections-selection-page .section-header .page-title{font-size:2.5rem}.collections-selection-page .section-header .page-subtitle{font-size:1.125rem}.vote-collection-card .collection-content{padding:1.5rem}.vote-collection-card .collection-header .collection-img{width:100px;height:100px}.vote-collection-card .collection-stats{padding:1.25rem}.vote-collection-card .collection-stats .stat-item .stat-number{font-size:1.25rem}}@media (max-width: 480px){.collections-selection-page{padding:1rem .75rem}.vote-collection-card .collection-stats{flex-direction:column;gap:1rem}.vote-collection-card .collection-stats .stat-separator{display:none}.vote-collection-card .collection-stats .stat-item{width:100%;flex-direction:row;justify-content:space-between;padding:.75rem;background:rgba(var(--surface-rgb),.3);border-radius:12px}.vote-collection-card .collection-stats .stat-item .stat-number{margin-bottom:0}}.App{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.App.dark-mode{background-color:#0f0f0f;color:#fff}.App .main-content{display:flex;flex-direction:column}*{box-sizing:border-box}body{margin:0;padding:0;background-color:#0f0f0f;color:#fff;overflow-x:hidden}h1,h2,h3,h4,h5,h6{margin:0;font-weight:600;line-height:1.3}p{margin:0;line-height:1.6}a{color:inherit;text-decoration:none}button{border:none;background:none;cursor:pointer;font-family:inherit}img{max-width:100%;height:auto}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:#1a1a1a}::-webkit-scrollbar-thumb{background:#404040;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#555555}*:focus{outline:2px solid #007AFF;outline-offset:2px}.loading-spinner{width:40px;height:40px;border:3px solid rgba(255,255,255,.1);border-radius:50%;border-top-color:#007aff;animation:spin 1s linear infinite}.navbar{position:relative;top:0;left:0;right:0;z-index:100;-webkit-backdrop-filter:blur(24px) saturate(180%);backdrop-filter:blur(24px) saturate(180%);background:#F5F5F7;border:.5px solid rgba(0,0,0,.05);background:var(--background);border:.5px solid var(--border-secondary);border-bottom:.5px solid rgba(0,0,0,.04);transition:all .3s ease-out}.navbar .nav-container{max-width:1200px;margin:0 auto;padding:0 2rem;height:60px;display:flex;align-items:center;justify-content:space-between}.navbar .nav-logo{cursor:pointer;transition:all .15s ease-out;display:flex;text-decoration:none}.navbar .nav-logo:hover{transform:translateY(-1px)}.navbar .nav-logo .logo-svg{height:28px;width:auto;margin-right:5px;transition:all .15s ease-out}.navbar .nav-logo .logo-svg:hover{transform:scale(1.05)}.navbar .nav-logo h1{font-size:1.25rem;letter-spacing:-.02em;color:var(--text-primary);transition:color .15s ease-out}.navbar .nav-controls{display:flex;align-items:center;gap:1.5rem}.navbar .nav-link{display:flex;align-items:center;gap:.25rem;padding:.5rem 1rem;border:none;background:transparent;color:var(--text-secondary);font-size:.875rem;border-radius:8px;cursor:pointer;text-decoration:none;transition:all .15s ease-out}.navbar .nav-link:hover{background:rgba(0,122,255,.08);color:#007aff;transform:translateY(-1px)}.navbar .nav-link svg{transition:transform .15s ease-out}.navbar .nav-link .nav-icon{width:16px;height:16px;margin-right:3px;transition:transform .15s ease-out}.navbar .nav-link:hover svg{transform:translate(1px)}.navbar .nav-link:hover .nav-icon{transform:translate(1px)}.navbar .nav-status{display:flex;align-items:center;gap:.5rem}.navbar .nav-status .status-indicator{width:6px;height:6px;border-radius:50%;background:#34C759;animation:pulse 2s ease-in-out infinite}.navbar .nav-status .status-indicator.online{background:#34C759}.navbar .nav-status .status-text{font-size:.875rem;color:var(--text-secondary)}.back-button,.rankings-button{padding:1rem 2rem;border:none;border-radius:16px;font-size:1rem;cursor:pointer;transition:all .3s ease-out;display:flex;align-items:center;justify-content:center;gap:.5rem;position:relative;overflow:hidden;will-change:transform,box-shadow;background:#E8E8ED;color:#aeaeb2;border:1px solid #D2D2D7}.back-button:hover:not(:disabled),.rankings-button:hover:not(:disabled){background:#D2D2D7;transform:translateY(-1px)}.back-button:disabled,.rankings-button:disabled{cursor:not-allowed;opacity:.5;transform:none!important}.back-button,.rankings-button{padding:1rem 1.5rem}.back-button:hover,.rankings-button:hover{background:#E8E8ED;transform:translateY(-1px)}.continue-voting-button{padding:1rem 2rem;border:none;border-radius:16px;font-size:1rem;cursor:pointer;transition:all .3s ease-out;display:flex;align-items:center;justify-content:center;gap:.5rem;position:relative;overflow:hidden;will-change:transform,box-shadow;background:linear-gradient(135deg,#007AFF 0%,#5856D6 100%);color:#fff;box-shadow:0 4px 20px #007aff4d;border:1px solid rgba(255,255,255,.1)}.continue-voting-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 30px #007aff66}.continue-voting-button:active:not(:disabled){transform:translateY(0);transition-duration:.1s}.continue-voting-button:disabled{cursor:not-allowed;opacity:.5;transform:none!important}.continue-voting-button:hover{background:#0051D8;transform:translateY(-1px)}.desktop-nav{display:flex;align-items:center;gap:1.5rem}.mobile-nav{display:none;align-items:center;gap:1rem}.mobile-menu-button{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid #343434!important;background:none!important;cursor:pointer;border-radius:8px;transition:all .15s ease-out;outline:none}.mobile-menu-button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.mobile-menu-button:hover{background:rgba(0,122,255,.08);transform:translateY(-1px)}.mobile-menu-button:active{transform:translateY(0)}.mobile-menu-button.active .hamburger-icon .hamburger-line:nth-child(1),.mobile-menu-button.menu-expanded .hamburger-icon .hamburger-line:nth-child(1){transform:rotate(45deg) translate(3px,4px);background:var(--text-primary)}.mobile-menu-button.active .hamburger-icon .hamburger-line:nth-child(2),.mobile-menu-button.menu-expanded .hamburger-icon .hamburger-line:nth-child(2){opacity:0;transform:scaleX(0)}.mobile-menu-button.active .hamburger-icon .hamburger-line:nth-child(3),.mobile-menu-button.menu-expanded .hamburger-icon .hamburger-line:nth-child(3){transform:rotate(-45deg) translate(3px,-4px);background:var(--text-primary)}.mobile-menu-button.menu-expanded{position:relative;right:-15px}.hamburger-icon{display:flex;flex-direction:column;justify-content:center;width:20px;height:16px;position:relative;gap:2px}.hamburger-line{width:100%;height:2px;background:var(--text-primary);border-radius:1px;transition:all .3s cubic-bezier(.25,.1,.25,1);transform-origin:center}.mobile-dropdown{position:absolute;top:100%;left:0;right:0;background:var(--surface);border:1px solid var(--border);border-top:none;border-radius:0 0 16px 16px;box-shadow:0 8px 32px #00000026;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);opacity:0;visibility:hidden;transform:translateY(-10px);transition:all .3s cubic-bezier(.25,.1,.25,1);z-index:95;max-height:calc(100vh - 80px);overflow-y:auto}.mobile-dropdown.active{opacity:1;visibility:visible;transform:translateY(0)}.mobile-dropdown-content{padding:1.5rem;display:flex;flex-direction:column;gap:1.5rem}.mobile-menu-header h3{font-size:1.125rem;color:var(--text-primary);margin:0;text-align:center;letter-spacing:-.02em}.mobile-menu-items{display:flex;flex-direction:column;gap:.25rem}.mobile-menu-item{display:flex;align-items:center;gap:1rem;padding:1rem 1.5rem;border:none;background:transparent;color:var(--text-primary);text-decoration:none;border-radius:12px;cursor:pointer;transition:all .15s ease-out;position:relative;overflow:hidden}.mobile-menu-item:hover{background:rgba(0,122,255,.08);transform:translate(4px)}.mobile-menu-item:active{transform:translate(2px);background:rgba(0,122,255,.12)}.mobile-menu-item:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(0,122,255,.1),transparent);transition:left .5s ease;z-index:1}.mobile-menu-item:hover:before{left:100%}.mobile-menu-item>*{position:relative;z-index:2}.menu-item-icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:rgba(0,122,255,.1);border:1px solid rgba(0,122,255,.2);border-radius:10px;flex-shrink:0}.menu-item-icon svg{color:#007aff;transition:transform .15s ease-out}.menu-item-icon .nav-icon{width:20px;height:20px}.mobile-menu-item:hover .menu-item-icon{background:rgba(0,122,255,.15);border-color:#007aff4d;transform:scale(1.05)}.mobile-menu-item:hover .menu-item-icon svg{transform:scale(1.1)}.menu-item-content{display:flex;flex-direction:column;gap:.25rem;text-align:left;flex:1}.menu-item-title{color:var(--text-primary);line-height:1.2}.menu-item-description{font-size:.875rem;color:var(--text-secondary);line-height:1.3}.mobile-menu-footer{border-top:1px solid var(--border);padding-top:8px}.mobile-user-section{display:flex;flex-direction:column;gap:1rem;padding-bottom:1rem;border-bottom:1px solid var(--border);margin-bottom:1rem}.mobile-user-info{display:flex;align-items:center;gap:1rem;padding:1rem;background:rgba(0,122,255,.05);border:1px solid rgba(0,122,255,.1);border-radius:12px}.mobile-user-avatar{display:flex;align-items:center;justify-content:center;width:48px;height:48px;background:rgba(0,122,255,.1);border:2px solid rgba(0,122,255,.2);border-radius:50%;flex-shrink:0}.mobile-user-avatar .avatar-text{font-size:1.125rem;line-height:1}.mobile-user-details{flex:1;display:flex;flex-direction:column;gap:.25rem}.mobile-user-name{color:var(--text-primary);line-height:1.2}.mobile-user-email{font-size:.875rem;color:var(--text-secondary);line-height:1.3}.collection-info{text-align:center}.collection-badge{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;margin-bottom:20px;border-radius:20px;font-size:.875rem;color:var(--text-secondary)}.collection-avatar{width:20px;height:20px;border-radius:50%;object-fit:cover}.mobile-menu-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:rgba(0,0,0,.5);opacity:0;visibility:hidden;transition:all .3s cubic-bezier(.25,.1,.25,1);z-index:85;pointer-events:none}.mobile-menu-overlay.active{opacity:1;visibility:visible;pointer-events:auto}@media (max-width: 768px){.navbar .nav-container{display:flex;justify-content:space-between;align-items:center;padding:0 1rem;position:relative}.navbar .nav-logo{order:1}.navbar .desktop-nav,.navbar .auth-controls{display:none}.navbar .mobile-nav{display:flex;align-items:center;order:2;margin-left:auto}.mobile-login-item,.mobile-logout-item,.mobile-update-profile-item,.mobile-voting-history-item{display:flex}.mobile-dropdown{border-radius:0 0 12px 12px}.mobile-dropdown-content{padding:1rem;gap:1rem}.mobile-menu-item{padding:.5rem 1rem}.mobile-menu-item .menu-item-icon{width:36px;height:36px}.mobile-menu-item .menu-item-icon .nav-icon{width:18px;height:18px}.mobile-menu-item .menu-item-title{font-size:.875rem}.mobile-menu-item .menu-item-description{font-size:.75rem}}@media (max-width: 480px){.navbar .nav-container{padding:0 .5rem}.mobile-dropdown-content{padding:.5rem}.collection-badge{font-size:.75rem;padding:.25rem .5rem}.collection-badge .collection-avatar{width:16px;height:16px}}.gpu-accelerated{will-change:transform,opacity;transform:translateZ(0);backface-visibility:hidden;perspective:1000px}.smooth-transition{will-change:transform,opacity;transform:translateZ(0);backface-visibility:hidden;perspective:1000px;transition-timing-function:cubic-bezier(.4,0,.2,1)}.performance-critical{will-change:transform,opacity;transform:translateZ(0);backface-visibility:hidden;perspective:1000px;contain:layout style paint;content-visibility:auto}.optimized-hover{will-change:transform,opacity;transform:translateZ(0);backface-visibility:hidden;perspective:1000px;transition:transform .2s ease,box-shadow .2s ease}.optimized-hover:hover{transform:translateZ(0) translateY(-2px);box-shadow:none}.optimized-hover:active{transform:translateZ(0) scale(.98);transition-duration:.1s}.smooth-scroll{scroll-behavior:smooth;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.above-fold{contain:layout style;content-visibility:visible}.below-fold{content-visibility:auto;contain-intrinsic-size:0 500px}@media (prefers-reduced-motion: reduce){.respect-motion{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.perf-debug:before{content:"PERF: DEBUG";position:absolute;top:-20px;left:0;font-size:10px;color:red;z-index:9999}@media not all and (min-width: 0){.perf-debug:before{display:none}}.btn,.back-to-search-button,.select-result-button,.mobile-menu-button,.magic-link-button,.profile-button,.login-button,.search-share-button,.search-back-button,.search-button{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;font-family:inherit;text-decoration:none;white-space:nowrap;border:none;cursor:pointer;-webkit-user-select:none;user-select:none;transition:all .15s ease-out;will-change:transform,box-shadow;transform:translateZ(0)}.btn:focus-visible,.back-to-search-button:focus-visible,.select-result-button:focus-visible,.mobile-menu-button:focus-visible,.magic-link-button:focus-visible,.profile-button:focus-visible,.login-button:focus-visible,.search-share-button:focus-visible,.search-back-button:focus-visible,.search-button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.btn:disabled,.back-to-search-button:disabled,.select-result-button:disabled,.mobile-menu-button:disabled,.magic-link-button:disabled,.profile-button:disabled,.login-button:disabled,.search-share-button:disabled,.search-back-button:disabled,.search-button:disabled,.btn[aria-disabled=true],[aria-disabled=true].back-to-search-button,[aria-disabled=true].select-result-button,[aria-disabled=true].mobile-menu-button,[aria-disabled=true].magic-link-button,[aria-disabled=true].profile-button,[aria-disabled=true].login-button,[aria-disabled=true].search-share-button,[aria-disabled=true].search-back-button,[aria-disabled=true].search-button{opacity:.5;cursor:not-allowed;transform:none!important;box-shadow:none!important}.btn.btn--loading,.btn--loading.back-to-search-button,.btn--loading.select-result-button,.btn--loading.mobile-menu-button,.btn--loading.magic-link-button,.btn--loading.profile-button,.btn--loading.login-button,.btn--loading.search-share-button,.btn--loading.search-back-button,.btn--loading.search-button{position:relative;color:transparent!important}.btn.btn--loading:after,.btn--loading.back-to-search-button:after,.btn--loading.select-result-button:after,.btn--loading.mobile-menu-button:after,.btn--loading.magic-link-button:after,.btn--loading.profile-button:after,.btn--loading.login-button:after,.btn--loading.search-share-button:after,.btn--loading.search-back-button:after,.btn--loading.search-button:after{content:"";position:absolute;width:16px;height:16px;border:2px solid currentColor;border-top:2px solid transparent;border-radius:50%;animation:spin 1s linear infinite}.btn--primary,.select-result-button,.magic-link-button,.login-button,.search-button{padding:1rem 1.5rem;background:linear-gradient(135deg,var(--accent-primary) 0%,var(--accent-secondary) 100%);color:#fff;border-radius:12px;font-size:1rem;font-weight:600;box-shadow:0 4px 12px rgba(var(--accent-primary-rgb),.3)}.btn--primary:hover:not(:disabled),.select-result-button:hover:not(:disabled),.magic-link-button:hover:not(:disabled),.login-button:hover:not(:disabled),.search-button:hover:not(:disabled){background:var(--accent-hover);transform:translate3d(0,-2px,0);box-shadow:0 8px 25px rgba(var(--accent-primary-rgb),.4)}.btn--primary:active:not(:disabled),.select-result-button:active:not(:disabled),.magic-link-button:active:not(:disabled),.login-button:active:not(:disabled),.search-button:active:not(:disabled){transform:translateZ(0)}.btn--secondary,.profile-button,.search-back-button{padding:.75rem 1rem;background:var(--surface);color:var(--text-primary);border:1px solid var(--border);border-radius:8px;font-size:.875rem;font-weight:500}.btn--secondary:hover:not(:disabled),.profile-button:hover:not(:disabled),.search-back-button:hover:not(:disabled){background:var(--surface-hover);border-color:var(--border-hover);transform:translate3d(0,-1px,0)}.btn--ghost,.back-to-search-button{padding:.75rem 1rem;background:transparent;color:var(--text-secondary);border:none;border-radius:8px}.btn--ghost:hover:not(:disabled),.back-to-search-button:hover:not(:disabled){background:rgba(var(--surface-rgb),.5);color:var(--text-primary)}.btn--icon,.mobile-menu-button,.search-share-button{padding:.75rem;background:var(--surface-elevated);border:1px solid var(--border);border-radius:8px}.btn--icon:hover:not(:disabled),.mobile-menu-button:hover:not(:disabled),.search-share-button:hover:not(:disabled){background:var(--surface-hover);transform:translate3d(0,-1px,0)}.btn--small,.profile-button,.login-button{padding:.5rem .75rem;font-size:.875rem}.btn--small.btn--icon,.btn--small.mobile-menu-button,.btn--icon.profile-button,.profile-button.mobile-menu-button,.btn--icon.login-button,.login-button.mobile-menu-button,.btn--small.search-share-button,.search-share-button.profile-button,.search-share-button.login-button{padding:.5rem}.btn--large,.magic-link-button{padding:1.125rem 2rem;font-size:1.125rem;font-weight:700;border-radius:16px}.btn--large.btn--icon,.btn--large.mobile-menu-button,.btn--icon.magic-link-button,.magic-link-button.mobile-menu-button,.btn--large.search-share-button,.search-share-button.magic-link-button{padding:1rem}.select-result-button{width:100%}.collection-tabs{margin-bottom:2rem}.collection-tabs .tabs-container{display:flex;flex-wrap:wrap;gap:.5rem;background:rgba(255,255,255,.02);border-radius:16px;padding:.5rem;border:1px solid rgba(255,255,255,.08);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.collection-tabs .collection-tab{position:relative;background:transparent;border:none;padding:.75rem 1.25rem;border-radius:12px;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);font-family:inherit;font-size:.9rem;font-weight:500;color:#94a3b8;white-space:nowrap;-webkit-user-select:none;user-select:none;z-index:1}.collection-tabs .collection-tab:hover:not(.active){color:#fff;background:rgba(255,255,255,.05);transform:translateY(-1px)}.collection-tabs .collection-tab.active{color:#fff;background:rgba(79,70,229,.15);border:1px solid rgba(79,70,229,.3);font-weight:600;transform:translateY(-1px);box-shadow:0 4px 12px #4f46e526,0 2px 6px #4f46e51a}.collection-tabs .collection-tab:active{transform:scale(.98) translateY(0)}.collection-tabs .collection-tab:focus-visible{outline:2px solid #4f46e5;outline-offset:2px}.collection-tabs.loading .collection-tabs-skeleton{display:flex;flex-wrap:wrap;gap:.5rem;background:rgba(255,255,255,.02);border-radius:16px;padding:.5rem;border:1px solid rgba(255,255,255,.08)}.collection-tabs.loading .tab-skeleton{height:42px;width:120px;background:rgba(255,255,255,.05);border-radius:12px;animation:skeleton-pulse 1.5s ease-in-out infinite}.collection-tabs.loading .tab-skeleton:nth-child(2n){width:140px}.collection-tabs.loading .tab-skeleton:nth-child(3n){width:100px}@media (max-width: 768px){.collection-tabs .tabs-container{gap:.375rem;padding:.375rem}.collection-tabs .collection-tab{padding:.625rem 1rem;font-size:.85rem}}@media (max-width: 480px){.collection-tabs .tabs-container{gap:.25rem;padding:.25rem}.collection-tabs .collection-tab{padding:.5rem .75rem;font-size:.8rem}}@keyframes skeleton-pulse{0%{opacity:.4}50%{opacity:.7}to{opacity:.4}}.search-result-card{background:#2d2f3a;border-radius:12px;overflow:hidden;cursor:pointer;transition:all .3s ease;border:1px solid rgba(255,255,255,.1);position:relative}.search-result-card:hover{transform:translateY(-4px);box-shadow:0 12px 32px #0006;border-color:#fff3}.search-result-card:focus{outline:none;border-color:#4f46e5;box-shadow:0 0 0 3px #4f46e533}.search-result-card:active{transform:translateY(-2px)}.search-result-card .stat-item{display:flex;flex-direction:column;gap:5px;padding:10px;justify-content:center}.search-result-card .card-header{display:flex;justify-content:space-between;align-items:center;padding:1rem;background:rgba(255,255,255,.05);border-bottom:1px solid rgba(255,255,255,.1)}.search-result-card .card-header .collection-name{font-size:.9rem;font-weight:600;color:#e2e8f0;margin:0;flex:1;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.search-result-card .card-header .collection-rank{display:flex;align-items:center;gap:.25rem;font-size:.85rem;font-weight:600;color:#94a3b8;background:rgba(255,255,255,.1);padding:.25rem .5rem;border-radius:6px;white-space:nowrap}.search-result-card .card-header .collection-rank .provisional-badge{color:#fbbf24;font-size:1.1em}.search-result-card .card-image-container{position:relative;width:100%;aspect-ratio:1;overflow:hidden}.search-result-card .card-image-container .card-image{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s ease}.search-result-card .card-image-container .provisional-overlay{position:absolute;top:.5rem;right:.5rem;background:rgba(251,191,36,.9);color:#1f2937;padding:.25rem .5rem;border-radius:4px;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.search-result-card:hover .card-image{transform:scale(1.05)}.search-result-card .card-details{padding:1rem;background:#2d2f3a}.search-result-card .card-details .nft-name{font-size:1rem;font-weight:600;color:#fff;margin:0 0 .75rem;text-align:center;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.search-result-card .card-details .nft-stats{display:flex;justify-content:space-between;gap:1rem;margin-bottom:.75rem}.search-result-card .card-details .nft-stats .stat-item{flex:1;text-align:center}.search-result-card .card-details .nft-stats .stat-item .stat-label{font-size:.7rem;font-weight:500;color:#94a3b8;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.25rem}.search-result-card .card-details .nft-stats .stat-item .stat-value{font-size:1rem;font-weight:600;color:#fff}.search-result-card .card-details .additional-stats{display:flex;justify-content:space-between;gap:.5rem;padding-top:.5rem;border-top:1px solid rgba(255,255,255,.05)}.search-result-card .card-details .additional-stats .stat-small{display:flex;flex-direction:column;align-items:center;flex:1}.search-result-card .card-details .additional-stats .stat-small .stat-small-label{font-size:.65rem;color:#64748b;margin-bottom:.1rem}.search-result-card .card-details .additional-stats .stat-small .stat-small-value{font-size:.8rem;font-weight:500;color:#cbd5e1}@media (max-width: 768px){.search-result-card .card-header{padding:.75rem}.search-result-card .card-header .collection-name{font-size:.85rem}.search-result-card .card-header .collection-rank{font-size:.8rem;padding:.2rem .4rem}.search-result-card .card-details{padding:.75rem}.search-result-card .card-details .nft-name{font-size:.9rem;margin-bottom:.5rem}.search-result-card .card-details .nft-stats{gap:.5rem;margin-bottom:.5rem}.search-result-card .card-details .nft-stats .stat-item .stat-label{font-size:.65rem}.search-result-card .card-details .nft-stats .stat-item .stat-value{font-size:.9rem}.search-result-card .card-details .additional-stats .stat-small .stat-small-label{font-size:.6rem}.search-result-card .card-details .additional-stats .stat-small .stat-small-value{font-size:.75rem}}@media (max-width: 480px){.search-result-card .card-header{padding:.5rem}.search-result-card .card-header .collection-name{font-size:.8rem}.search-result-card .card-header .collection-rank{font-size:.75rem}.search-result-card .card-details{padding:.5rem}.search-result-card .card-details .nft-name{font-size:.85rem}.search-result-card .card-details .nft-stats .stat-item .stat-label{font-size:.6rem}.search-result-card .card-details .nft-stats .stat-item .stat-value{font-size:.85rem}}.search-results{margin-top:2rem}.search-results .search-results-header{text-align:center;margin-bottom:2rem}.search-results .search-results-header .results-title{font-size:1.5rem;font-weight:600;color:#fff;margin-bottom:.5rem}@media (max-width: 768px){.search-results .search-results-header .results-title{font-size:1.25rem}}@media (max-width: 480px){.search-results .search-results-header .results-title{font-size:1.125rem}}.search-results .search-results-header .results-subtitle{font-size:1rem;color:#94a3b8;line-height:1.5;max-width:600px;margin:0 auto}@media (max-width: 768px){.search-results .search-results-header .results-subtitle{font-size:.9rem}}.search-results .search-results-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem;margin-bottom:2rem}@media (max-width: 768px){.search-results .search-results-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1rem}}@media (max-width: 480px){.search-results .search-results-grid{grid-template-columns:1fr;gap:1rem}}.search-results .results-summary{background:rgba(255,255,255,.02);border-radius:12px;border:1px solid rgba(255,255,255,.05);padding:1.5rem}.search-results .results-summary .summary-stats{display:flex;justify-content:center;gap:2rem}@media (max-width: 768px){.search-results .results-summary .summary-stats{flex-direction:column;gap:1rem;text-align:center}}.search-results .results-summary .summary-stats .summary-item{display:flex;flex-direction:column;align-items:center;gap:.25rem}@media (max-width: 768px){.search-results .results-summary .summary-stats .summary-item{flex-direction:row;justify-content:center;gap:.5rem}}.search-results .results-summary .summary-stats .summary-item .summary-label{font-size:.8rem;color:#64748b;text-transform:uppercase;letter-spacing:.05em;font-weight:500}.search-results .results-summary .summary-stats .summary-item .summary-value{font-size:1.1rem;color:#fff;font-weight:600}.search-results.error .search-results-header .results-title{color:#ef4444}.search-results.error .search-results-header .results-subtitle{color:#fca5a5}.search-results.error .error-state{text-align:center;padding:3rem 1rem}.search-results.error .error-state .error-icon{margin-bottom:1.5rem;color:#ef4444}.search-results.error .error-state .error-icon svg{width:64px;height:64px}.search-results.error .error-state .error-message{font-size:1rem;color:#fca5a5;margin:0}.search-results.empty .empty-state{text-align:center;padding:3rem 1rem}.search-results.empty .empty-state .empty-icon{margin-bottom:1.5rem;color:#64748b;opacity:.6}.search-results.empty .empty-state .empty-icon svg{width:64px;height:64px}.search-results.empty .empty-state .empty-message{font-size:1rem;color:#64748b;max-width:400px;margin:0 auto}.search-results-loading{margin-top:2rem}.search-results-loading .loading-header{text-align:center;margin-bottom:2rem}.search-results-loading .loading-header .loading-title{font-size:1.5rem;font-weight:600;color:#94a3b8;margin-bottom:.5rem}.search-results-loading .loading-header .loading-subtitle{font-size:1rem;color:#64748b}.search-results-loading .loading-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem}.search-results-loading .loading-grid .loading-card{background:#2d2f3a;border-radius:12px;overflow:hidden;border:1px solid rgba(255,255,255,.1)}.search-results-loading .loading-grid .loading-card .loading-header{height:60px;background:rgba(255,255,255,.05);animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.search-results-loading .loading-grid .loading-card .loading-image{height:280px;background:rgba(255,255,255,.03);animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite;animation-delay:.2s}.search-results-loading .loading-grid .loading-card .loading-details{padding:1rem}.search-results-loading .loading-grid .loading-card .loading-details .loading-name{height:24px;background:rgba(255,255,255,.05);border-radius:4px;margin-bottom:.75rem;animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite;animation-delay:.4s}.search-results-loading .loading-grid .loading-card .loading-details .loading-stats{display:flex;gap:1rem}.search-results-loading .loading-grid .loading-card .loading-details .loading-stats .loading-stat{flex:1;height:40px;background:rgba(255,255,255,.03);border-radius:4px;animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite;animation-delay:.6s}.nft-ranking-card{background:rgba(28,28,30,.8);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:.5px solid rgba(255,255,255,.1);border-radius:16px;padding:16px;display:flex;align-items:center;gap:16px;position:relative;cursor:pointer;transition:all .3s cubic-bezier(.25,.46,.45,.94);box-shadow:0 1px 3px #0000004d,inset 0 1px #ffffff0d}.nft-ranking-card:hover{background:rgba(44,44,46,.8);transform:scale(1.01);box-shadow:0 2px 8px #0006,inset 0 1px #ffffff14}.nft-ranking-card:first-child .rank-badge{background:rgba(255,204,0,.9);color:#1d1d1f;font-weight:800;border:.5px solid rgba(255,204,0,.3);box-shadow:0 2px 8px #ffcc004d,inset 0 1px #ffffff4d}.nft-ranking-card:nth-child(2) .rank-badge{background:rgba(174,174,178,.9);color:#1d1d1f;font-weight:700;border:.5px solid rgba(174,174,178,.3);box-shadow:0 2px 8px #aeaeb24d,inset 0 1px #ffffff4d}.nft-ranking-card:nth-child(3) .rank-badge{background:rgba(205,127,50,.9);color:#fff;font-weight:700;border:.5px solid rgba(205,127,50,.3);box-shadow:0 2px 8px #cd7f324d,inset 0 1px #ffffff4d}.nft-ranking-card .rank-badge{position:absolute;top:-8px;left:-8px;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700;color:#f5f5f7;min-width:28px;height:28px;background:rgba(28,28,30,.95);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:.5px solid rgba(255,255,255,.12);border-radius:50%;z-index:2;box-shadow:0 2px 8px #0006,inset 0 1px #ffffff1a;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,sans-serif}.nft-ranking-card .rank-badge .rank-number{display:block}.nft-ranking-card .nft-image-container{position:relative;width:56px;height:56px;border-radius:12px;overflow:hidden;flex-shrink:0;background:#2c2c2e;border:.5px solid rgba(255,255,255,.08);box-shadow:0 1px 3px #0000004d,inset 0 1px #ffffff0d;transition:all .2s cubic-bezier(.25,.46,.45,.94)}.nft-ranking-card .nft-image-container .nft-image{width:100%;height:100%;object-fit:cover;transition:transform .2s ease}.nft-ranking-card .nft-image-container .provisional-badge{position:absolute;top:4px;right:4px;background:rgba(10,132,255,.2);color:#0a84ff;padding:4px 8px;border-radius:8px;font-weight:600;font-size:13px;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,sans-serif}.nft-ranking-card:hover .nft-image-container{box-shadow:0 2px 8px #0006,inset 0 1px #ffffff14}.nft-ranking-card:hover .nft-image-container .nft-image{transform:scale(1.02)}.nft-ranking-card .nft-details{flex:1;min-width:0;display:flex;flex-direction:column;justify-content:center}.nft-ranking-card .nft-details .nft-name{font-size:17px;font-weight:600;color:#f5f5f7;margin-bottom:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.2;text-align:left;letter-spacing:-.022em;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,sans-serif}.nft-ranking-card .nft-details .nft-stats{display:flex;gap:12px;align-items:center;font-size:15px}.nft-ranking-card .nft-details .nft-stats .nft-rating{display:flex;align-items:center;gap:4px;color:#ff9500;font-weight:600;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,sans-serif}.nft-ranking-card .nft-details .nft-stats .nft-rating:before{content:"⭐";font-size:16px}.nft-ranking-card .nft-details .nft-stats .nft-record{color:#8e8e93;font-weight:500;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,sans-serif}.nft-ranking-card .nft-details .nft-stats .nft-provisional{background:rgba(10,132,255,.2);color:#0a84ff;padding:4px 8px;border-radius:8px;font-weight:600;font-size:13px;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,sans-serif}.nft-ranking-card .opensea-link{margin-left:auto;flex-shrink:0}.nft-ranking-card .opensea-link .opensea-button{display:flex;align-items:center;justify-content:center;padding:8px 12px;background:linear-gradient(135deg,#2081E2 0%,#1c73d1 100%);color:#fff;text-decoration:none;border-radius:8px;font-size:13px;font-weight:600;transition:all .2s cubic-bezier(.25,.46,.45,.94);border:.5px solid rgba(13,110,253,.2);font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,sans-serif;white-space:nowrap}.nft-ranking-card .opensea-link .opensea-button:hover{background:rgba(13,110,253,.25);border-color:#0d6efd66;transform:translateY(-1px);box-shadow:0 2px 8px #0d6efd33,inset 0 1px #ffffff1a}.nft-ranking-card .opensea-link .opensea-button:active{transform:translateY(0)}.nft-ranking-card .ranking-card-reactions{margin-top:0;padding:.5rem;background:rgba(255,255,255,.02);border:.5px solid rgba(255,255,255,.04);border-radius:10px;min-width:180px;flex-shrink:0}.nft-ranking-card .ranking-card-reactions .reactions-list{gap:.4rem;justify-content:flex-start}.nft-ranking-card .ranking-card-reactions .emoji-button{min-width:28px;height:28px}.nft-ranking-card .ranking-card-reactions .emoji-button .emoji-symbol{font-size:1rem}.nft-ranking-card .ranking-card-reactions .emoji-button .emoji-count{min-width:12px;height:12px;font-size:.6rem;top:-3px;right:-3px}.nft-ranking-card .ranking-card-reactions .reactions-status{padding:.25rem .4rem;font-size:.65rem}@media (max-width: 768px){.nft-ranking-card{padding:14px;gap:14px;border-radius:14px}.nft-ranking-card .rank-badge{top:-7px;left:-7px;min-width:30px;height:30px;font-size:13px;font-weight:700}.nft-ranking-card .nft-image-container{width:64px;height:64px;border-radius:12px}.nft-ranking-card .nft-details{flex:1;min-width:0}.nft-ranking-card .nft-details .nft-name{font-size:16px;margin-bottom:6px;line-height:1.3}.nft-ranking-card .nft-details .nft-stats{font-size:14px;gap:12px;flex-wrap:wrap}.nft-ranking-card .nft-details .nft-stats .nft-rating:before{font-size:14px}.nft-ranking-card .nft-details .nft-stats .stat-group{white-space:nowrap}.nft-ranking-card .nft-traits{flex-shrink:0;gap:6px}.nft-ranking-card .nft-traits .trait-badge{width:32px;height:32px;font-size:16px}.nft-ranking-card .nft-actions{flex-shrink:0}.nft-ranking-card .nft-actions .opensea-button{padding:10px 16px;font-size:13px;border-radius:10px;white-space:nowrap}}@media (max-width: 480px){.nft-ranking-card{padding:12px;gap:12px;border-radius:12px;flex-wrap:wrap}.nft-ranking-card .rank-badge{top:-6px;left:-6px;min-width:28px;height:28px;font-size:12px;font-weight:700}.nft-ranking-card .nft-image-container{width:72px;height:72px;border-radius:12px;flex-shrink:0}.nft-ranking-card .nft-details{flex:1;min-width:0}.nft-ranking-card .nft-details .nft-name{font-size:15px;margin-bottom:6px;line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nft-ranking-card .nft-details .nft-stats{font-size:13px;gap:10px;flex-wrap:wrap}.nft-ranking-card .nft-details .nft-stats .nft-rating{font-size:15px;font-weight:700}.nft-ranking-card .nft-details .nft-stats .nft-rating:before{font-size:13px;margin-right:4px}.nft-ranking-card .nft-details .nft-stats .stat-group{display:flex;align-items:center;gap:8px;white-space:nowrap}.nft-ranking-card .nft-details .nft-stats .stat-group:not(:last-child):after{content:"•";color:#ffffff4d;margin-left:2px}.nft-ranking-card .nft-details .nft-stats .nft-provisional{padding:3px 8px;font-size:10px;border-radius:6px;font-weight:600;letter-spacing:.02em}.nft-ranking-card .nft-traits,.nft-ranking-card .nft-actions{width:100%;justify-content:center;margin-top:8px}.nft-ranking-card .nft-traits{gap:8px;order:2}.nft-ranking-card .nft-traits .trait-badge{width:36px;height:36px;font-size:18px;border-radius:10px}.nft-ranking-card .nft-traits .trait-badge:hover{transform:scale(1.1)}.nft-ranking-card .nft-actions{order:3}.nft-ranking-card .nft-actions .opensea-button{width:100%;padding:12px 20px;font-size:14px;border-radius:10px;font-weight:600;justify-content:center}.nft-ranking-card .nft-actions .opensea-button svg{width:16px;height:16px}}.rankings-grid{margin-top:2rem}.rankings-grid .rankings-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;padding:1.5rem;background:rgba(255,255,255,.02);border-radius:16px;border:1px solid rgba(255,255,255,.05);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}@media (max-width: 768px){.rankings-grid .rankings-header{flex-direction:column;gap:1.5rem;padding:1rem}}@media (max-width: 480px){.rankings-grid .rankings-header{padding:.875rem;gap:1.25rem;margin-bottom:1.5rem}}.rankings-grid .rankings-header .view-toggle{display:flex;align-self:center;gap:.5rem;background:rgba(255,255,255,.05);border-radius:12px;padding:.5rem;border:1px solid rgba(255,255,255,.1)}.rankings-grid .rankings-header .view-toggle .toggle-button{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:transparent;border:none;border-radius:8px;color:#9ca3af;font-weight:500;font-size:.9rem;cursor:pointer;transition:all .3s ease;white-space:nowrap}.rankings-grid .rankings-header .view-toggle .toggle-button .toggle-icon{font-size:1.1rem}.rankings-grid .rankings-header .view-toggle .toggle-button:hover:not(.active){background:rgba(255,255,255,.05);color:#fff}.rankings-grid .rankings-header .view-toggle .toggle-button.active{background:linear-gradient(135deg,#4f46e5 0%,#7c3aed 100%);color:#fff;transform:translateY(-1px);box-shadow:0 4px 12px #4f46e54d}@media (max-width: 480px){.rankings-grid .rankings-header .view-toggle .toggle-button{padding:.6rem 1rem;font-size:.85rem}}.rankings-grid .rankings-header .collection-stats{display:flex;gap:2rem}@media (max-width: 768px){.rankings-grid .rankings-header .collection-stats{gap:1.5rem}}@media (max-width: 480px){.rankings-grid .rankings-header .collection-stats{gap:.875rem;justify-content:space-around;flex-wrap:wrap}}.rankings-grid .rankings-header .collection-stats .stat-item{text-align:center}.rankings-grid .rankings-header .collection-stats .stat-item .stat-value{display:block;font-size:1.5rem;font-weight:700;color:#fff;line-height:1}@media (max-width: 768px){.rankings-grid .rankings-header .collection-stats .stat-item .stat-value{font-size:1.25rem}}@media (max-width: 480px){.rankings-grid .rankings-header .collection-stats .stat-item .stat-value{font-size:1.125rem}}.rankings-grid .rankings-header .collection-stats .stat-item .stat-label{display:block;font-size:.75rem;color:#9ca3af;text-transform:uppercase;letter-spacing:.05em;margin-top:.25rem;font-weight:500}@media (max-width: 480px){.rankings-grid .rankings-header .collection-stats .stat-item .stat-label{font-size:.6875rem}}.rankings-grid .rankings-list{display:flex;flex-direction:column;gap:1rem;margin-bottom:2rem}@media (max-width: 768px){.rankings-grid .rankings-list{gap:.875rem;margin-bottom:1.5rem}}@media (max-width: 480px){.rankings-grid .rankings-list{gap:.75rem;margin-bottom:1.5rem}}.rankings-grid .rankings-list .nft-image-container{width:120px;height:120px}.rankings-grid .pagination{display:flex;flex-direction:column;gap:1rem;align-items:center;padding:2rem 1rem;background:rgba(255,255,255,.02);border-radius:16px;border:1px solid rgba(255,255,255,.05)}.rankings-grid .pagination .pagination-info{font-size:.9rem;color:#9ca3af;text-align:center}.rankings-grid .pagination .pagination-controls{display:flex;align-items:center;gap:1rem}@media (max-width: 768px){.rankings-grid .pagination .pagination-controls{flex-wrap:wrap;justify-content:center;gap:.5rem}}.rankings-grid .pagination .pagination-controls .page-button{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:8px;color:#fff;font-weight:500;cursor:pointer;transition:all .3s ease}.rankings-grid .pagination .pagination-controls .page-button svg{width:16px;height:16px}.rankings-grid .pagination .pagination-controls .page-button:hover:not(:disabled){background:rgba(255,255,255,.1);border-color:#fff3;transform:translateY(-1px)}.rankings-grid .pagination .pagination-controls .page-button:disabled{opacity:.5;cursor:not-allowed;transform:none}@media (max-width: 480px){.rankings-grid .pagination .pagination-controls .page-button{padding:.6rem 1rem;font-size:.85rem}.rankings-grid .pagination .pagination-controls .page-button svg{width:14px;height:14px}}.rankings-grid .pagination .pagination-controls .page-numbers{display:flex;align-items:center;gap:.25rem}.rankings-grid .pagination .pagination-controls .page-numbers .page-number{width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:8px;color:#fff;font-weight:500;cursor:pointer;transition:all .3s ease}.rankings-grid .pagination .pagination-controls .page-numbers .page-number:hover:not(.active){background:rgba(255,255,255,.1);border-color:#fff3}.rankings-grid .pagination .pagination-controls .page-numbers .page-number.active{background:linear-gradient(135deg,#4f46e5 0%,#7c3aed 100%);border-color:#4f46e5;color:#fff;transform:translateY(-1px);box-shadow:0 4px 12px #4f46e54d}@media (max-width: 480px){.rankings-grid .pagination .pagination-controls .page-numbers .page-number{width:36px;height:36px;font-size:.85rem}}.rankings-grid .pagination .pagination-controls .page-numbers .ellipsis{padding:0 .5rem;color:#9ca3af;font-weight:500}.rankings-grid .cache-status{display:flex;align-items:center;justify-content:center;gap:.5rem;margin-top:1rem;font-size:.8rem;color:#9ca3af}.rankings-grid .cache-status .cache-indicator{font-size:.7rem}.rankings-grid.loading .rankings-header .toggle-skeleton{width:200px;height:40px;background:rgba(255,255,255,.05);border-radius:8px;animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.rankings-grid.loading .rankings-header .stats-skeleton{width:300px;height:60px;background:rgba(255,255,255,.05);border-radius:8px;animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite;animation-delay:.2s}.rankings-grid.loading .rankings-list .ranking-card-skeleton{height:120px;background:rgba(255,255,255,.05);border-radius:16px;animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.rankings-grid.loading .rankings-list .ranking-card-skeleton:nth-child(2){animation-delay:.1s}.rankings-grid.loading .rankings-list .ranking-card-skeleton:nth-child(3){animation-delay:.2s}.rankings-grid.loading .rankings-list .ranking-card-skeleton:nth-child(4){animation-delay:.3s}.rankings-grid.loading .rankings-list .ranking-card-skeleton:nth-child(5){animation-delay:.4s}.rankings-grid.empty .empty-state{text-align:center;padding:4rem 2rem}.rankings-grid.empty .empty-state .empty-icon{margin-bottom:1.5rem;color:#6b7280}.rankings-grid.empty .empty-state .empty-icon svg{width:64px;height:64px}.rankings-grid.empty .empty-state h3{font-size:1.5rem;font-weight:600;color:#fff;margin-bottom:.5rem}.rankings-grid.empty .empty-state p{color:#9ca3af;font-size:1rem;max-width:400px;margin:0 auto}.all-collections-grid{width:100%;max-width:1400px;margin:0 auto;padding:2rem 1rem}.all-collections-grid .collection-header{display:flex;flex-direction:column;align-items:center!important}.all-collections-grid .all-collections-header{text-align:center;margin-bottom:2rem}.all-collections-grid .all-collections-header h2{font-size:2rem;font-weight:700;color:var(--color-text-primary);margin-bottom:.5rem}.all-collections-grid .all-collections-header p{font-size:1rem;color:var(--color-text-secondary)}.all-collections-grid .all-collections-loading,.all-collections-grid .all-collections-error,.all-collections-grid .all-collections-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;text-align:center}.all-collections-grid .all-collections-loading .loading-spinner,.all-collections-grid .all-collections-error .loading-spinner,.all-collections-grid .all-collections-empty .loading-spinner{width:48px;height:48px;border:4px solid var(--color-border);border-top:4px solid var(--color-primary);border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1rem}.all-collections-grid .all-collections-loading .error-icon,.all-collections-grid .all-collections-error .error-icon,.all-collections-grid .all-collections-empty .error-icon{width:64px;height:64px;color:var(--color-error);margin-bottom:1rem}.all-collections-grid .all-collections-loading h3,.all-collections-grid .all-collections-error h3,.all-collections-grid .all-collections-empty h3{font-size:1.5rem;font-weight:600;color:var(--color-text-primary);margin-bottom:.5rem}.all-collections-grid .all-collections-loading p,.all-collections-grid .all-collections-error p,.all-collections-grid .all-collections-empty p{font-size:1rem;color:var(--color-text-secondary)}.all-collections-grid .collections-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem}@media (min-width: 768px){.all-collections-grid .collections-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width: 1200px){.all-collections-grid .collections-grid{grid-template-columns:repeat(3,1fr)}}.collection-card{background:rgba(28,28,30,.8);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:.5px solid rgba(255,255,255,.2);border-radius:20px;padding:24px;transition:all .3s cubic-bezier(.25,.46,.45,.94);box-shadow:0 4px 20px #00000014,0 1px 3px #0000000d,inset 0 1px #ffffff1a;position:relative;overflow:hidden}.collection-card:hover{transform:translateY(-2px);box-shadow:0 8px 30px #0000001f,0 2px 8px #00000014,inset 0 1px #ffffff26;border-color:#007aff4d}.collection-card .collection-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:20px}.collection-card .collection-header .collection-name{font-size:22px;font-weight:700;color:#fff;cursor:pointer;transition:color .2s ease;margin:0;line-height:1.2;letter-spacing:-.022em;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,sans-serif}.collection-card .collection-header .collection-name:hover{color:#007aff}.collection-card .collection-header .collection-count{font-size:13px;font-weight:500;color:#8e8e93;background:rgba(142,142,147,.12);padding:6px 12px;border-radius:12px;white-space:nowrap;margin-top:15px;margin-bottom:10px;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,sans-serif}.collection-card .collection-nfts{display:flex;flex-direction:column;gap:8px;margin-bottom:20px}.collection-card .nft-item{display:flex;align-items:center;gap:16px;padding:16px;background:rgba(255,255,255,.05);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:.5px solid rgba(255,255,255,.06);border-radius:16px;transition:all .2s cubic-bezier(.25,.46,.45,.94);position:relative;cursor:pointer;box-shadow:0 1px 3px #0000004d,inset 0 1px #ffffff0d}.collection-card .nft-item:hover{background:rgba(255,255,255,.15);transform:scale(1.01);box-shadow:0 2px 8px #0006,inset 0 1px #ffffff14}.collection-card .nft-item .nft-rank{position:absolute;top:-8px;left:-8px;font-size:13px;font-weight:700;color:#1d1d1f;min-width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.95);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:.5px solid rgba(0,0,0,.08);border-radius:50%;box-shadow:0 2px 8px #0000001f,inset 0 1px #fff3;z-index:2;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,sans-serif}.collection-card .nft-item .nft-image-wrapper{width:64px;height:64px;border-radius:12px;overflow:hidden;background:#f2f2f7;flex-shrink:0;border:.5px solid rgba(0,0,0,.06);box-shadow:0 1px 3px #00000014,inset 0 1px #ffffff1a;transition:all .2s cubic-bezier(.25,.46,.45,.94)}.collection-card .nft-item .nft-image-wrapper .nft-image{width:100%;height:100%;object-fit:cover;transition:transform .2s ease}.collection-card .nft-item:hover .nft-image-wrapper{box-shadow:0 2px 8px #0000001f,inset 0 1px #ffffff26}.collection-card .nft-item:hover .nft-image-wrapper .nft-image{transform:scale(1.02)}.collection-card .nft-item .nft-details{flex:1;min-width:0;display:flex;flex-direction:column;padding:0;justify-content:center}.collection-card .nft-item .nft-details .nft-name{font-size:17px;font-weight:600;color:#fff;font-weight:500;margin-bottom:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.2;text-align:left;letter-spacing:-.022em;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,sans-serif}.collection-card .nft-item .nft-details .nft-stats{display:flex;gap:12px;align-items:center;font-size:15px}.collection-card .nft-item .nft-details .nft-stats .nft-rating{color:#ff9500;font-weight:600;display:flex;align-items:center;gap:4px;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,sans-serif}.collection-card .nft-item .nft-details .nft-stats .nft-rating:before{content:"★";font-size:16px}.collection-card .nft-item .nft-details .nft-stats .nft-record{color:#8e8e93;font-weight:500;white-space:nowrap;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,sans-serif}.collection-card .nft-item .nft-details .nft-stats .nft-provisional{background:rgba(0,122,255,.15);color:#007aff;padding:4px 8px;border-radius:8px;font-weight:600;font-size:13px;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,sans-serif}.collection-card .nft-item:first-child .nft-rank{background:rgba(255,204,0,.9);color:#1d1d1f;font-weight:800;border:.5px solid rgba(255,204,0,.3);box-shadow:0 2px 8px #ffcc004d,inset 0 1px #ffffff4d}.collection-card .nft-item:nth-child(2) .nft-rank{background:rgba(174,174,178,.9);color:#1d1d1f;font-weight:700;border:.5px solid rgba(174,174,178,.3);box-shadow:0 2px 8px #aeaeb24d,inset 0 1px #ffffff4d}.collection-card .nft-item:nth-child(3) .nft-rank{background:rgba(205,127,50,.9);color:#fff;font-weight:700;border:.5px solid rgba(205,127,50,.3);box-shadow:0 2px 8px #cd7f324d,inset 0 1px #ffffff4d}.collection-card .collection-footer .view-all-button{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;font-family:inherit;font-weight:600;text-decoration:none;border:none;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);-webkit-user-select:none;user-select:none;width:100%;padding:1rem 1.5rem;background:linear-gradient(135deg,var(--accent-primary) 0%,var(--accent-secondary) 100%);color:#fff;border-radius:12px;font-size:1rem;box-shadow:0 4px 12px rgba(var(--accent-primary-rgb),.3)}.collection-card .collection-footer .view-all-button:hover:not(:disabled){background:var(--accent-hover);transform:translate3d(0,-2px,0);box-shadow:0 8px 25px rgba(var(--accent-primary-rgb),.4)}.collection-card .collection-footer .view-all-button:active:not(:disabled){transform:translateZ(0)}.collection-card .collection-footer .view-all-button:disabled{opacity:.6;cursor:not-allowed;transform:none!important}.voter-card{background:rgba(28,28,30,.8);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:.5px solid rgba(255,255,255,.1);border-radius:16px;padding:16px;display:flex;align-items:center;gap:16px;position:relative;cursor:pointer;transition:all .3s cubic-bezier(.25,.46,.45,.94);box-shadow:0 1px 3px #0000004d,inset 0 1px #ffffff0d}.voter-card:hover{background:rgba(44,44,46,.8);transform:scale(1.01);box-shadow:0 2px 8px #0006,inset 0 1px #ffffff14}.voter-card:first-child .rank-badge{background:rgba(255,204,0,.9);color:#1d1d1f;font-weight:800;border:.5px solid rgba(255,204,0,.3);box-shadow:0 2px 8px #ffcc004d,inset 0 1px #ffffff4d}.voter-card:nth-child(2) .rank-badge{background:rgba(174,174,178,.9);color:#1d1d1f;font-weight:700;border:.5px solid rgba(174,174,178,.3);box-shadow:0 2px 8px #aeaeb24d,inset 0 1px #ffffff4d}.voter-card:nth-child(3) .rank-badge{background:rgba(205,127,50,.9);color:#fff;font-weight:700;border:.5px solid rgba(205,127,50,.3);box-shadow:0 2px 8px #cd7f324d,inset 0 1px #ffffff4d}.voter-card .rank-badge{position:absolute;top:-8px;left:-8px;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700;color:#f5f5f7;min-width:28px;height:28px;background:rgba(28,28,30,.95);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:.5px solid rgba(255,255,255,.12);border-radius:50%;z-index:2;box-shadow:0 2px 8px #0006,inset 0 1px #ffffff1a;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,sans-serif}.voter-card .rank-badge .rank-number{display:block}.voter-card .streak-badge{position:absolute;top:8px;right:8px;background:rgba(255,149,0,.9);color:#1d1d1f;padding:2px 6px;border-radius:10px;font-size:11px;font-weight:700;border:.5px solid rgba(255,149,0,.3);box-shadow:0 1px 4px #ff95004d,inset 0 1px #ffffff4d;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,sans-serif}.voter-card .voter-details{flex:1;min-width:0;display:flex;flex-direction:column;justify-content:center}.voter-card .voter-details .voter-name{font-size:17px;font-weight:600;color:#f5f5f7;margin-bottom:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.2;text-align:left;letter-spacing:-.022em;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,sans-serif;text-decoration:none}.voter-card .voter-details .voter-name.voter-x-link{color:#1d9bf0;cursor:pointer;transition:color .2s ease}.voter-card .voter-details .voter-name.voter-x-link:hover{color:#1a8cd8;text-decoration:underline}.voter-card .voter-details .voter-stats{display:flex;gap:12px;align-items:center;font-size:15px;justify-content:space-between;width:100%}.voter-card .voter-details .voter-stats .vote-count{display:flex;align-items:center;gap:4px;color:#ff9500;font-weight:600;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,sans-serif}.voter-card .voter-details .voter-stats .vote-count:before{content:"⭐";font-size:16px}.voter-card .voter-details .voter-stats .streak-count{color:#ff453a;font-weight:500;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,sans-serif}.voter-card .voter-details .voter-stats .streak-count.days-voted-right{margin-left:auto;color:#8e8e93;font-weight:500}.voter-card .voter-details .voter-stats .collections-count{color:#0a84ff;font-weight:500;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,sans-serif}.voter-card .voter-details .voter-stats .collections-count:before{content:"📂";margin-right:4px}@media (max-width: 768px){.voter-card{padding:12px;gap:12px}.voter-card .rank-badge{top:-6px;left:-6px;min-width:24px;height:24px;font-size:12px}.voter-card .streak-badge{font-size:10px;padding:1px 4px}.voter-card .voter-details .voter-name{font-size:16px;margin-bottom:6px}.voter-card .voter-details .voter-stats{font-size:14px;gap:10px}.voter-card .voter-details .voter-stats .vote-count:before{font-size:14px}}@media (max-width: 480px){.voter-card{padding:10px;gap:10px}.voter-card .rank-badge{top:-4px;left:-4px;min-width:20px;height:20px;font-size:11px}.voter-card .streak-badge{font-size:9px;padding:1px 3px}.voter-card .voter-details .voter-name{font-size:15px;margin-bottom:4px}.voter-card .voter-details .voter-stats{font-size:13px;gap:8px}.voter-card .voter-details .voter-stats .vote-count:before{font-size:13px}}.voters-grid{margin-top:2rem}.voters-grid .voters-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;background:rgba(255,255,255,.02);border-radius:16px;padding:20px 30px!important;border:1px solid rgba(255,255,255,.05);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}@media (max-width: 768px){.voters-grid .voters-header{flex-direction:column;gap:1.5rem}}.voters-grid .voters-header .stats-bar{display:flex;gap:2rem}@media (max-width: 768px){.voters-grid .voters-header .stats-bar{gap:1rem;justify-content:center;flex-wrap:wrap}}.voters-grid .voters-header .stats-bar .stats-item{display:flex;flex-direction:column;align-items:center;text-align:center}.voters-grid .voters-header .stats-bar .stats-item .stats-value{font-size:1.5rem;font-weight:700;color:#fff;line-height:1.2;margin-bottom:.25rem}.voters-grid .voters-header .stats-bar .stats-item .stats-label{font-size:.75rem;color:#9ca3af;text-transform:uppercase;letter-spacing:.05em;font-weight:500}@media (max-width: 480px){.voters-grid .voters-header .stats-bar .stats-item .stats-value{font-size:1.25rem}.voters-grid .voters-header .stats-bar .stats-item .stats-label{font-size:.7rem}}.voters-grid .voters-header .cache-status{display:flex;align-items:center;gap:.5rem;font-size:.8rem;color:#9ca3af}.voters-grid .voters-header .cache-status .cache-indicator{width:8px;height:8px;border-radius:50%;background:#10b981}.voters-grid .voters-header .cache-status .cache-indicator.active{animation:pulse 2s infinite}.voters-grid .voters-header .cache-status .cache-text{font-weight:500}@media (max-width: 768px){.voters-grid .voters-header .cache-status{font-size:.75rem}}.voters-grid .voters-list{display:flex;flex-direction:column;gap:1rem;margin-bottom:2rem}@media (max-width: 768px){.voters-grid .voters-list{gap:.75rem}}.voters-grid .loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;text-align:center}.voters-grid .loading-state .loading-spinner{width:40px;height:40px;border:3px solid rgba(255,255,255,.1);border-top:3px solid #4f46e5;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1rem}.voters-grid .loading-state p{color:#9ca3af;font-size:1rem;font-weight:500}.voters-grid .empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;text-align:center}.voters-grid .empty-state .empty-icon{font-size:4rem;margin-bottom:1rem;opacity:.6}.voters-grid .empty-state h3{color:#fff;font-size:1.5rem;font-weight:600;margin-bottom:.5rem}.voters-grid .empty-state p{color:#9ca3af;font-size:1rem;max-width:400px}.voters-grid .voters-info{margin-top:2rem;padding:1.5rem;background:rgba(255,255,255,.02);border-radius:16px;border:1px solid rgba(255,255,255,.05)}.voters-grid .voters-info .info-content{display:flex;align-items:center;gap:1rem}.voters-grid .voters-info .info-content .info-icon{font-size:2rem;opacity:.8}.voters-grid .voters-info .info-content .info-text h4{color:#fff;font-size:1.125rem;font-weight:600;margin-bottom:.25rem}.voters-grid .voters-info .info-content .info-text p{color:#9ca3af;font-size:.875rem;line-height:1.5}@media (max-width: 768px){.voters-grid .voters-info .info-content{flex-direction:column;text-align:center;gap:.75rem}.voters-grid .voters-info .info-content .info-text h4{font-size:1rem}.voters-grid .voters-info .info-content .info-text p{font-size:.8125rem}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.all-voters-grid-container .all-voters-header{text-align:center;margin-bottom:2rem}.all-voters-grid-container .all-voters-header h2{color:#fff;font-size:2rem;font-weight:700;margin-bottom:.5rem;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,sans-serif}.all-voters-grid-container .all-voters-header p{color:#9ca3af;font-size:1.125rem;font-weight:500}.all-voters-grid-container .collections-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:24px}@media (max-width: 1200px){.all-voters-grid-container .collections-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width: 900px){.all-voters-grid-container .collections-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 600px){.all-voters-grid-container .collections-grid{grid-template-columns:1fr;gap:16px}}.all-voters-grid-container .collection-card{background:rgba(255,255,255,.03);border:.5px solid rgba(255,255,255,.1);border-radius:16px;padding:24px;transition:all .2s ease;overflow:hidden}.all-voters-grid-container .collection-card:hover{background:rgba(255,255,255,.05);border-color:#ffffff26;transform:translateY(-2px)}.all-voters-grid-container .collection-card .collection-header{display:flex;flex-direction:column;justify-content:space-between;align-items:center;margin-bottom:20px}.all-voters-grid-container .collection-card .collection-header .collection-name{font-size:20px;font-weight:600;color:#fffffff2;cursor:pointer;transition:color .2s ease;margin:0;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,sans-serif}.all-voters-grid-container .collection-card .collection-header .collection-name:hover{color:#007affe6}.all-voters-grid-container .collection-card .collection-header .collection-count{font-size:13px;margin-top:15px;font-weight:500;color:#fff9;background:rgba(255,255,255,.06);padding:6px 12px;border-radius:8px;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,sans-serif}.all-voters-grid-container .collection-card .collection-voters{display:flex;flex-direction:column;gap:1px;margin-bottom:24px;background:rgba(255,255,255,.04);border-radius:12px;overflow:hidden}.all-voters-grid-container .collection-card .voter-item{background:rgb(28,28,30);border:none;border-radius:0;padding:0;transition:all .2s ease;overflow:hidden}.all-voters-grid-container .collection-card .voter-item:first-child{border-top-left-radius:12px;border-top-right-radius:12px}.all-voters-grid-container .collection-card .voter-item:last-child{border-bottom-left-radius:12px;border-bottom-right-radius:12px}.all-voters-grid-container .collection-card .voter-item:hover{background:rgba(255,255,255,.08)}.all-voters-grid-container .collection-card .voter-item .voter-content{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;min-height:64px}.all-voters-grid-container .collection-card .voter-item .voter-content .voter-main{display:flex;align-items:center;gap:16px;flex:1;min-width:0}.all-voters-grid-container .collection-card .voter-item .voter-content .voter-main .voter-rank{display:flex;align-items:center;justify-content:center;width:24px;height:24px;font-size:13px;font-weight:600;color:#fff9;background:rgba(255,255,255,.08);border-radius:6px;flex-shrink:0;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,sans-serif}.all-voters-grid-container .collection-card .voter-item .voter-content .voter-main .voter-name{font-size:16px;font-weight:500;color:#fffffff2;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,sans-serif;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-decoration:none}.all-voters-grid-container .collection-card .voter-item .voter-content .voter-main .voter-name.voter-x-link{color:#1d9bf0;cursor:pointer;transition:color .2s ease}.all-voters-grid-container .collection-card .voter-item .voter-content .voter-main .voter-name.voter-x-link:hover{color:#1a8cd8;text-decoration:underline}.all-voters-grid-container .collection-card .voter-item .voter-content .voter-stats{display:flex;align-items:center;gap:16px;flex-shrink:0}.all-voters-grid-container .collection-card .voter-item .voter-content .voter-stats .stat{display:flex;align-items:center;gap:4px;font-size:14px;font-weight:500;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,sans-serif}.all-voters-grid-container .collection-card .voter-item .voter-content .voter-stats .stat.votes{color:#ff9500e6}.all-voters-grid-container .collection-card .voter-item .voter-content .voter-stats .stat.streak{color:#ff453ae6}.all-voters-grid-container .collection-card .voter-item .voter-content .voter-stats .stat .icon{font-size:13px;opacity:.8}.all-voters-grid-container .collection-card .voter-item .voter-content .voter-stats .stat .value{font-weight:600;color:#ffffffe6}.all-voters-grid-container .collection-card .voter-item.rank-1 .voter-main .voter-rank{background:rgba(255,204,0,.2);color:#fc0;font-weight:700}.all-voters-grid-container .collection-card .voter-item.rank-2 .voter-main .voter-rank{background:rgba(174,174,178,.2);color:#aeaeb2;font-weight:700}.all-voters-grid-container .collection-card .voter-item.rank-3 .voter-main .voter-rank{background:rgba(205,127,50,.2);color:#cd7f32;font-weight:700}.all-voters-grid-container .collection-card .collection-footer{position:relative;z-index:10}.all-voters-grid-container .collection-card .collection-footer .view-all-button{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;font-family:inherit;font-weight:600;text-decoration:none;border:none;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);-webkit-user-select:none;user-select:none;position:relative;z-index:20;pointer-events:auto!important;width:100%;padding:1rem 1.5rem;background:linear-gradient(135deg,var(--accent-primary) 0%,var(--accent-secondary) 100%);color:#fff;border-radius:12px;font-size:1rem;box-shadow:0 4px 12px rgba(var(--accent-primary-rgb),.3)}.all-voters-grid-container .collection-card .collection-footer .view-all-button:hover:not(:disabled){background:var(--accent-hover);transform:translate3d(0,-2px,0);box-shadow:0 8px 25px rgba(var(--accent-primary-rgb),.4)}.all-voters-grid-container .collection-card .collection-footer .view-all-button:active:not(:disabled){transform:translateZ(0)}.all-voters-grid-container .collection-card .collection-footer .view-all-button:disabled{opacity:.6;cursor:not-allowed;transform:none!important}.all-voters-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem}.all-voters-loading .spinner{width:40px;height:40px;border:3px solid rgba(255,255,255,.1);border-top:3px solid #4f46e5;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1rem}.all-voters-loading p{color:#9ca3af;font-size:1rem;font-weight:500}.all-voters-error{display:flex;align-items:center;justify-content:center;padding:4rem 2rem}.all-voters-error p{color:#ff453a;font-size:1rem;font-weight:500}.all-voters-empty{display:flex;align-items:center;justify-content:center;padding:4rem 2rem}.all-voters-empty p{color:#9ca3af;font-size:1rem;font-weight:500}.search-page{min-height:calc(100vh - 60px);background:var(--background);color:var(--text-primary);display:flex;flex-direction:column}.search-page .search-container{flex:1;max-width:1000px;margin:0 auto;padding:3rem 2rem}@media (max-width: 768px){.search-page .search-container{padding:2rem 1rem}}.search-page .search-header{text-align:center;margin-bottom:3rem}.search-page .search-header .search-subtitle{font-size:1.125rem;color:var(--text-secondary);line-height:1.6;max-width:700px;margin:0 auto}@media (max-width: 768px){.search-page .search-header .search-subtitle{font-size:1rem}}.search-page .search-tabs{margin-bottom:2.5rem}.search-page .search-input-section{text-align:center;margin-bottom:3rem}.search-page .search-input-section .search-input-container{display:flex;align-items:center;justify-content:center;gap:1rem;margin-bottom:1rem;max-width:600px;margin-left:auto;margin-right:auto}@media (max-width: 768px){.search-page .search-input-section .search-input-container{flex-direction:column;gap:.75rem;max-width:100%}}.search-page .search-input-section .search-input-wrapper{position:relative;flex:1;min-width:0}@media (max-width: 768px){.search-page .search-input-section .search-input-wrapper{width:100%}}.search-page .search-input-section .search-input{width:100%;padding:1rem 3rem 1rem 1.5rem;background:rgba(255,255,255,.05);border:2px solid rgba(255,255,255,.1);border-radius:12px;color:var(--text-primary);font-size:1rem;font-family:inherit;transition:all .3s ease}.search-page .search-input-section .search-input::placeholder{color:var(--text-tertiary)}.search-page .search-input-section .search-input:focus{outline:none;border-color:#4f46e5;background:rgba(255,255,255,.08);box-shadow:0 0 0 3px #4f46e51a}.search-page .search-input-section .search-input:disabled{opacity:.6;cursor:not-allowed}.search-page .search-input-section .search-input.invalid{border-color:#ef4444;background:rgba(239,68,68,.05)}.search-page .search-input-section .search-input.invalid:focus{border-color:#ef4444;box-shadow:0 0 0 3px #ef44441a}.search-page .search-input-section .clear-input-button{position:absolute;right:.75rem;top:50%;transform:translateY(-50%);background:none;border:none;color:var(--text-tertiary);cursor:pointer;padding:.25rem;border-radius:4px;transition:all .2s ease}.search-page .search-input-section .clear-input-button svg{width:18px;height:18px}.search-page .search-input-section .clear-input-button:hover{color:var(--text-secondary);background:rgba(255,255,255,.05)}.search-page .search-input-section .clear-input-button:focus{outline:none;color:#4f46e5}.search-page .search-input-section .search-button{padding:1rem 2rem;background:linear-gradient(135deg,#4f46e5 0%,#7c3aed 100%);border:none;border-radius:12px;color:#fff;font-size:1rem;font-weight:600;font-family:inherit;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:.5rem;white-space:nowrap}.search-page .search-input-section .search-button svg{width:20px;height:20px}.search-page .search-input-section .search-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 25px #4f46e566}.search-page .search-input-section .search-button:active:not(:disabled){transform:translateY(0)}.search-page .search-input-section .search-button:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none}@media (max-width: 768px){.search-page .search-input-section .search-button{width:100%;justify-content:center}}.search-page .search-input-section .search-help{margin-top:1rem}.search-page .search-input-section .search-help .search-help-text{font-size:.9rem;color:var(--text-secondary);margin:0}.search-page .search-input-section .search-help .search-error-text{font-size:.85rem;color:#ef4444;margin:.5rem 0 0;font-weight:500}.search-page .search-results-section .search-actions{text-align:center;margin-top:2rem}.search-page .search-results-section .search-actions .clear-results-button{padding:.75rem 1.5rem;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:8px;color:var(--text-secondary);font-size:.9rem;font-family:inherit;cursor:pointer;transition:all .3s ease}.search-page .search-results-section .search-actions .clear-results-button:hover{background:rgba(255,255,255,.08);color:var(--text-primary);border-color:#fff3}.search-page .search-results-section .search-actions .clear-results-button:focus{outline:none;border-color:#4f46e5;box-shadow:0 0 0 2px #4f46e533}.rankings-page{min-height:calc(100vh - 60px);background:var(--background);color:var(--text-primary);display:flex;flex-direction:column}.rankings-page .rankings-container{flex:1;max-width:1200px;margin:0 auto;padding:3rem 2rem}@media (max-width: 768px){.rankings-page .rankings-container{padding:1.5rem 1rem}}@media (max-width: 480px){.rankings-page .rankings-container{padding:1rem .75rem}}.rankings-page .rankings-header{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:3rem}@media (max-width: 768px){.rankings-page .rankings-header{flex-direction:column;align-items:center;gap:1.5rem;text-align:center;margin-bottom:2rem}}@media (max-width: 480px){.rankings-page .rankings-header{margin-bottom:1.5rem;gap:1rem}}.rankings-page .rankings-header .header-content{flex:1;display:flex;flex-direction:column;justify-content:center;text-align:center;align-items:center}.rankings-page .rankings-header .header-content .rankings-subtitle{font-size:1.125rem;color:var(--text-secondary);line-height:1.6;max-width:600px;text-align:center}@media (max-width: 768px){.rankings-page .rankings-header .header-content .rankings-subtitle{font-size:1rem;max-width:none}}@media (max-width: 480px){.rankings-page .rankings-header .header-content .rankings-subtitle{font-size:.9375rem;line-height:1.5;padding:0 .5rem}}.rankings-page .rankings-header .refresh-button{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:8px;color:var(--text-secondary);font-size:.9rem;font-family:inherit;cursor:pointer;transition:all .3s ease}.rankings-page .rankings-header .refresh-button svg{width:16px;height:16px}.rankings-page .rankings-header .refresh-button svg.spinning{animation:spin 1s linear infinite}.rankings-page .rankings-header .refresh-button:hover:not(:disabled){background:rgba(255,255,255,.08);color:var(--text-primary);border-color:#fff3;transform:translateY(-1px)}.rankings-page .rankings-header .refresh-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.rankings-page .rankings-tabs{margin-bottom:2.5rem}@media (max-width: 768px){.rankings-page .rankings-tabs{margin-bottom:2rem}}@media (max-width: 480px){.rankings-page .rankings-tabs{margin-bottom:1.5rem}}.rankings-page .error-state{display:flex;justify-content:center;align-items:center;min-height:400px}.rankings-page .error-state .error-content{text-align:center;max-width:400px}.rankings-page .error-state .error-content .error-icon{margin-bottom:1.5rem;color:#ef4444}.rankings-page .error-state .error-content .error-icon svg{width:64px;height:64px}.rankings-page .error-state .error-content h3{font-size:1.5rem;font-weight:600;color:#fff;margin-bottom:.5rem}.rankings-page .error-state .error-content p{color:#fca5a5;margin-bottom:2rem;line-height:1.5}.rankings-page .error-state .error-content .retry-button{padding:.75rem 2rem;background:linear-gradient(135deg,#ef4444 0%,#dc2626 100%);border:none;border-radius:8px;color:#fff;font-weight:600;cursor:pointer;transition:all .3s ease}.rankings-page .error-state .error-content .retry-button:hover{background:linear-gradient(135deg,#dc2626 0%,#b91c1c 100%);transform:translateY(-1px)}.rankings-page .collection-prompt{display:flex;justify-content:center;align-items:center;min-height:400px}.rankings-page .collection-prompt .prompt-content{text-align:center;max-width:500px}.rankings-page .collection-prompt .prompt-content .prompt-icon{margin-bottom:1.5rem;color:#4f46e5}.rankings-page .collection-prompt .prompt-content .prompt-icon svg{width:64px;height:64px}.rankings-page .collection-prompt .prompt-content h2{font-size:1.75rem;font-weight:600;color:#fff;margin-bottom:1rem}.rankings-page .collection-prompt .prompt-content p{color:var(--text-secondary);font-size:1.1rem;line-height:1.6}.rankings-page .rankings-info{background:rgba(255,255,255,.02);border-top:1px solid rgba(255,255,255,.05);padding:4rem 2rem}.rankings-page .rankings-info .rankings-info-content{max-width:1000px;margin:0 auto;text-align:center}.rankings-page .rankings-info .rankings-info-content .rankings-info-icon{margin-bottom:1.5rem;color:#4f46e5}.rankings-page .rankings-info .rankings-info-content .rankings-info-icon svg{width:64px;height:64px}.rankings-page .rankings-info .rankings-info-content .rankings-info-title{font-size:1.75rem;font-weight:600;color:var(--text-primary);margin-bottom:1rem}@media (max-width: 768px){.rankings-page .rankings-info .rankings-info-content .rankings-info-title{font-size:1.5rem}}.rankings-page .rankings-info .rankings-info-content .rankings-info-description{font-size:1.1rem;color:var(--text-secondary);line-height:1.6;margin-bottom:3rem;max-width:700px;margin-left:auto;margin-right:auto}@media (max-width: 768px){.rankings-page .rankings-info .rankings-info-content .rankings-info-description{font-size:1rem;margin-bottom:2.5rem}}.rankings-page .rankings-info .rankings-info-content .rankings-features{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem}@media (max-width: 768px){.rankings-page .rankings-info .rankings-info-content .rankings-features{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem}}@media (max-width: 480px){.rankings-page .rankings-info .rankings-info-content .rankings-features{grid-template-columns:1fr;gap:1.5rem}}.rankings-page .rankings-info .rankings-info-content .rankings-features .feature-item{display:flex;flex-direction:column;align-items:center;text-align:center;padding:2rem 1.5rem;background:rgba(255,255,255,.02);border-radius:16px;border:1px solid rgba(255,255,255,.05);transition:all .3s ease}.rankings-page .rankings-info .rankings-info-content .rankings-features .feature-item:hover{background:rgba(255,255,255,.05);border-color:#ffffff1a;transform:translateY(-4px)}.rankings-page .rankings-info .rankings-info-content .rankings-features .feature-item .feature-icon{font-size:2rem;margin-bottom:1rem}.rankings-page .rankings-info .rankings-info-content .rankings-features .feature-item .feature-content h4{font-size:1.1rem;font-weight:600;color:#fff;margin-bottom:.5rem}.rankings-page .rankings-info .rankings-info-content .rankings-features .feature-item .feature-content p{font-size:.9rem;color:var(--text-secondary);line-height:1.5}@media (max-width: 768px){.rankings-page .rankings-info{padding:3rem 1rem}}.top-voters-page{min-height:100vh;background:#131315;padding:2rem 0;justify-content:center;align-items:center;display:flex;text-align:center}.top-voters-page .voters-container{max-width:1200px;margin:0 auto;padding:0 1rem;height:100vh}@media (max-width: 768px){.top-voters-page .voters-container{padding:0 .75rem}}.top-voters-page .voters-header{display:flex;justify-content:center;align-items:center;margin-bottom:3rem}@media (max-width: 768px){.top-voters-page .voters-header{flex-direction:column;align-items:center;text-align:center;gap:1.5rem;margin-bottom:2rem;padding-bottom:1.5rem}}.top-voters-page .voters-header .header-content .voters-subtitle{font-size:1.25rem;color:#9ca3af;font-weight:500;max-width:600px;line-height:1.4}@media (max-width: 768px){.top-voters-page .voters-header .header-content .voters-subtitle{font-size:1.125rem;max-width:none}}@media (max-width: 480px){.top-voters-page .voters-header .header-content .voters-subtitle{font-size:1rem}}.top-voters-page .voters-header .refresh-button{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:12px;color:#fff;font-weight:600;font-size:.875rem;cursor:pointer;transition:all .3s ease}.top-voters-page .voters-header .refresh-button svg{width:16px;height:16px;transition:transform .3s ease}.top-voters-page .voters-header .refresh-button svg.spinning{animation:spin 1s linear infinite}.top-voters-page .voters-header .refresh-button:hover:not(:disabled){background:rgba(255,255,255,.1);border-color:#fff3;transform:translateY(-1px)}.top-voters-page .voters-header .refresh-button:disabled{opacity:.6;cursor:not-allowed;transform:none}@media (max-width: 768px){.top-voters-page .voters-header .refresh-button{padding:.625rem 1.25rem;font-size:.8125rem}}.top-voters-page .voters-tabs{margin-bottom:2rem}.top-voters-page .error-state{display:flex;justify-content:center;align-items:center;padding:4rem 2rem}.top-voters-page .error-state .error-content{text-align:center;max-width:400px}.top-voters-page .error-state .error-content .error-icon{width:64px;height:64px;margin:0 auto 1.5rem;color:#ff453a}.top-voters-page .error-state .error-content .error-icon svg{width:100%;height:100%}.top-voters-page .error-state .error-content h3{color:#fff;font-size:1.5rem;font-weight:600;margin-bottom:.5rem}.top-voters-page .error-state .error-content p{color:#9ca3af;font-size:1rem;margin-bottom:2rem;line-height:1.5}.top-voters-page .error-state .error-content .retry-button{padding:.75rem 1.5rem;background:#ff453a;color:#fff;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease}.top-voters-page .error-state .error-content .retry-button:hover{background:#ff3b30;transform:translateY(-1px)}.top-voters-page .collection-prompt{display:flex;justify-content:center;align-items:center;padding:4rem 2rem}.top-voters-page .collection-prompt .prompt-content{text-align:center;max-width:400px}.top-voters-page .collection-prompt .prompt-content .prompt-icon{width:64px;height:64px;margin:0 auto 1.5rem;color:#4f46e5}.top-voters-page .collection-prompt .prompt-content .prompt-icon svg{width:100%;height:100%}.top-voters-page .collection-prompt .prompt-content h2{color:#fff;font-size:1.5rem;font-weight:600;margin-bottom:.5rem}.top-voters-page .collection-prompt .prompt-content p{color:#9ca3af;font-size:1rem;line-height:1.5}.top-voters-page .voters-info{margin-top:4rem;padding:3rem 2rem;background:rgba(255,255,255,.02);border-radius:24px;border:1px solid rgba(255,255,255,.05)}.top-voters-page .voters-info .voters-info-content{max-width:800px;margin:0 auto;text-align:center}.top-voters-page .voters-info .voters-info-content .voters-info-icon{width:64px;height:64px;margin:0 auto 2rem;color:#4f46e5}.top-voters-page .voters-info .voters-info-content .voters-info-icon svg{width:100%;height:100%}.top-voters-page .voters-info .voters-info-content .voters-info-title{color:#fff;font-size:2rem;font-weight:700;margin-bottom:1rem;line-height:1.2}@media (max-width: 768px){.top-voters-page .voters-info .voters-info-content .voters-info-title{font-size:1.75rem}}.top-voters-page .voters-info .voters-info-content .voters-info-description{color:#9ca3af;font-size:1.125rem;line-height:1.6;margin-bottom:3rem}@media (max-width: 768px){.top-voters-page .voters-info .voters-info-content .voters-info-description{font-size:1rem;margin-bottom:2rem}}.top-voters-page .voters-info .voters-info-content .voters-features{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:2rem;text-align:left}@media (max-width: 768px){.top-voters-page .voters-info .voters-info-content .voters-features{grid-template-columns:1fr;gap:1.5rem}}.top-voters-page .voters-info .voters-info-content .voters-features .feature-item{display:flex;align-items:flex-start;gap:1rem}.top-voters-page .voters-info .voters-info-content .voters-features .feature-item .feature-icon{font-size:1.5rem;margin-top:.25rem;flex-shrink:0}.top-voters-page .voters-info .voters-info-content .voters-features .feature-item .feature-content h4{color:#fff;font-size:1.125rem;font-weight:600;margin-bottom:.5rem}.top-voters-page .voters-info .voters-info-content .voters-features .feature-item .feature-content p{color:#9ca3af;font-size:.875rem;line-height:1.4}.magic-link-form{max-width:480px;width:100%}@media (max-width: 768px){.magic-link-form{max-width:none}}.magic-link-form .form-logo{text-align:center;margin-bottom:1.5rem}@media (max-width: 480px){.magic-link-form .form-logo{margin-bottom:1.25rem}}.magic-link-form .form-logo .logo-icon{width:80px;height:80px;margin:0 auto;display:flex;align-items:center;justify-content:center}@media (max-width: 480px){.magic-link-form .form-logo .logo-icon{width:72px;height:72px}}.magic-link-form .form-logo .logo-icon .nft-ranker-logo{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 4px 20px rgba(0,0,0,.3))}.magic-link-form .form-logo .logo-icon svg{width:32px;height:32px;color:#fff}@media (max-width: 480px){.magic-link-form .form-logo .logo-icon svg{width:28px;height:28px}}.magic-link-form .form-header{text-align:center;margin-bottom:2rem}@media (max-width: 480px){.magic-link-form .form-header{margin-bottom:1.75rem}}.magic-link-form .form-header h2{color:#fff;font-size:2rem;font-weight:700;margin-bottom:1rem;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,sans-serif;letter-spacing:-.025em}@media (max-width: 480px){.magic-link-form .form-header h2{font-size:1.75rem;margin-bottom:.75rem}}.magic-link-form .form-header .form-subtitle{color:#9ca3af;font-size:1.125rem;font-weight:500;line-height:1.6;max-width:400px;margin:0 auto;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,sans-serif}@media (max-width: 480px){.magic-link-form .form-header .form-subtitle{font-size:1rem;line-height:1.5;padding:0 .5rem}}.magic-link-form .form-benefits{margin-bottom:2.5rem}@media (max-width: 480px){.magic-link-form .form-benefits{margin-bottom:2rem}}.magic-link-form .form-benefits .benefit-item{display:flex;align-items:flex-start;gap:1rem;margin-bottom:1.5rem;padding:1rem 0}@media (max-width: 480px){.magic-link-form .form-benefits .benefit-item{gap:.75rem;margin-bottom:1.25rem;padding:.75rem 0}}.magic-link-form .form-benefits .benefit-item:last-child{margin-bottom:0}.magic-link-form .form-benefits .benefit-item .benefit-icon{width:40px;height:40px;background:linear-gradient(135deg,#4F46E5 0%,#7C3AED 100%);border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:0 4px 12px #4f46e540}.magic-link-form .form-benefits .benefit-item .benefit-icon svg{width:20px;height:20px;color:#fff}.magic-link-form .form-benefits .benefit-item .benefit-text{color:#e5e7eb;font-size:1rem;font-weight:500;line-height:1.5;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,sans-serif;padding-top:.125rem}.magic-link-form .magic-link-form-content .form-group{margin-bottom:2rem}@media (max-width: 480px){.magic-link-form .magic-link-form-content .form-group{margin-bottom:1.5rem}}.magic-link-form .magic-link-form-content .form-group .form-label{display:block;color:#f5f5f7;font-size:.875rem;font-weight:600;margin-bottom:.75rem;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,sans-serif}.magic-link-form .magic-link-form-content .form-group .input-wrapper{position:relative;display:flex;align-items:center}.magic-link-form .magic-link-form-content .form-group .input-wrapper .form-input{width:100%;padding:1rem 1rem 1rem 3rem;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:12px;color:#fff;font-size:1rem;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,sans-serif;transition:all .2s cubic-bezier(.25,.46,.45,.94);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.magic-link-form .magic-link-form-content .form-group .input-wrapper .form-input::placeholder{color:#8e8e93}.magic-link-form .magic-link-form-content .form-group .input-wrapper .form-input:focus{outline:none;border-color:#4f46e5;background:rgba(255,255,255,.08);box-shadow:0 0 0 3px #4f46e51a}.magic-link-form .magic-link-form-content .form-group .input-wrapper .form-input.error{border-color:#ff453a;background:rgba(255,69,58,.05)}.magic-link-form .magic-link-form-content .form-group .input-wrapper .form-input:disabled{opacity:.6;cursor:not-allowed}.magic-link-form .magic-link-form-content .form-group .input-wrapper .input-icon{position:absolute;left:1rem;top:50%;transform:translateY(-50%);pointer-events:none;z-index:1}.magic-link-form .magic-link-form-content .form-group .input-wrapper .input-icon svg{width:20px;height:20px;color:#8e8e93;transition:color .2s ease}.magic-link-form .magic-link-form-content .form-group .input-wrapper:focus-within .input-icon svg{color:#4f46e5}.magic-link-form .magic-link-form-content .form-group .form-error{display:flex;align-items:center;gap:.5rem;color:#ff453a;font-size:.875rem;font-weight:500;margin-top:.75rem;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,sans-serif}.magic-link-form .magic-link-form-content .form-group .form-error svg{width:16px;height:16px;flex-shrink:0}.magic-link-form .magic-link-button{width:100%;display:flex;align-items:center;justify-content:center;gap:.75rem;padding:1rem 1.5rem;background:linear-gradient(135deg,#4F46E5 0%,#7C3AED 100%);border:none;border-radius:12px;color:#fff;font-size:1rem;font-weight:600;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,sans-serif;cursor:pointer;transition:all .2s cubic-bezier(.25,.46,.45,.94);text-decoration:none;-webkit-user-select:none;user-select:none;box-shadow:0 4px 14px #4f46e566,0 2px 6px #4f46e533;margin-bottom:1.5rem;min-height:48px}@media (max-width: 480px){.magic-link-form .magic-link-button{padding:.875rem 1.25rem;font-size:.9375rem;margin-bottom:1.25rem;min-height:44px}}.magic-link-form .magic-link-button .button-icon{width:20px;height:20px;flex-shrink:0}.magic-link-form .magic-link-button .button-spinner{width:20px;height:20px;border:2px solid rgba(255,255,255,.3);border-top:2px solid white;border-radius:50%;animation:spin 1s linear infinite}.magic-link-form .magic-link-button:hover:not(:disabled){background:linear-gradient(135deg,#3730A3 0%,#6B21A8 100%);transform:translateY(-2px);box-shadow:0 8px 25px #4f46e580,0 4px 10px #4f46e54d}.magic-link-form .magic-link-button:active:not(:disabled){transform:translateY(-1px);box-shadow:0 6px 20px #4f46e566,0 3px 8px #4f46e540}.magic-link-form .magic-link-button:disabled{opacity:.6;cursor:not-allowed;transform:none!important;box-shadow:0 4px 14px #4f46e533,0 2px 6px #4f46e51a}.magic-link-form .form-footer .privacy-notice{display:flex;align-items:flex-start;gap:.75rem;padding:1rem;background:rgba(34,197,94,.1);border:1px solid rgba(34,197,94,.2);border-radius:12px;margin-bottom:0}.magic-link-form .form-footer .privacy-notice svg{width:20px;height:20px;color:#22c55e;flex-shrink:0;margin-top:.125rem}.magic-link-form .form-footer .privacy-notice span{color:#d1d5db;font-size:.875rem;line-height:1.5;font-weight:500;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,sans-serif}.magic-link-form.success-state{text-align:center}.magic-link-form.success-state .success-icon{width:64px;height:64px;margin:0 auto 1.5rem;background:linear-gradient(135deg,#30d158 0%,#28a745 100%);border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 20px #30d1584d}.magic-link-form.success-state .success-icon svg{width:32px;height:32px;color:#fff}.magic-link-form.success-state h3{color:#fff;font-size:1.5rem;font-weight:700;margin-bottom:1rem;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,sans-serif}.magic-link-form.success-state p{color:#f5f5f7;font-size:1rem;line-height:1.5;margin-bottom:.5rem;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,sans-serif}.magic-link-form.success-state p strong{color:#007aff;font-weight:600}.magic-link-form.success-state .help-text{color:#8e8e93;font-size:.875rem;margin-bottom:2rem}.magic-link-form.success-state .form-actions{justify-content:center;margin-bottom:0}@media (max-width: 480px){.magic-link-form .form-header h3{font-size:1.5rem}.magic-link-form .form-actions{flex-direction:column}.magic-link-form .form-actions .button{width:100%}.magic-link-form.success-state .success-icon{width:56px;height:56px}.magic-link-form.success-state .success-icon svg{width:28px;height:28px}.magic-link-form.success-state h3{font-size:1.25rem}}.auth-modal-overlay{position:fixed;width:100vw;height:100vh;min-height:100vh;background:rgba(0,0,0,.85);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);display:flex;align-items:center;justify-content:center;padding:2rem;z-index:99999;animation:fadeIn .2s ease-out;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;top:0;right:0;bottom:0;left:0;overscroll-behavior:contain}@media (max-width: 768px){.auth-modal-overlay{padding:2rem 1rem;align-items:flex-start;min-height:100dvh}}@media (max-width: 480px){.auth-modal-overlay{padding:1.5rem .75rem}}.auth-modal{position:relative;background:rgba(28,28,30,.95);backdrop-filter:blur(40px);-webkit-backdrop-filter:blur(40px);border:1px solid rgba(255,255,255,.1);border-radius:20px;padding:2rem;max-width:500px;width:100%;max-height:calc(100vh - 4rem);margin:auto;box-shadow:0 20px 60px #00000080,0 8px 32px #0000004d,inset 0 1px #ffffff1a;animation:slideIn .3s cubic-bezier(.25,.46,.45,.94);flex-shrink:0;overflow-y:auto}@media (max-width: 768px){.auth-modal{padding:1.5rem;border-radius:16px;max-width:calc(100vw - 2rem);width:calc(100% - 2rem);max-height:calc(100dvh - 4rem);margin:2rem auto}}@media (max-width: 480px){.auth-modal{padding:1.25rem;width:calc(100vw - 1.5rem);max-width:calc(100vw - 1.5rem);border-radius:12px;max-height:calc(100dvh - 3rem);margin:1.5rem auto}}.auth-modal .auth-modal-close{position:absolute;top:1rem;right:1rem;width:40px;height:40px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s cubic-bezier(.25,.46,.45,.94);z-index:1}.auth-modal .auth-modal-close svg{width:20px;height:20px;color:#8e8e93;transition:color .2s ease}.auth-modal .auth-modal-close:hover{background:rgba(255,255,255,.1);border-color:#fff3;transform:scale(1.05)}.auth-modal .auth-modal-close:hover svg{color:#fff}.auth-modal .auth-modal-close:active{transform:scale(.95)}@media (max-width: 480px){.auth-modal .auth-modal-close{width:36px;height:36px;top:.75rem;right:.75rem}.auth-modal .auth-modal-close svg{width:18px;height:18px}}.auth-modal .auth-modal-content{padding-top:1rem}@media (max-width: 480px){.auth-modal .auth-modal-content{padding-top:.5rem}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideIn{0%{opacity:0;transform:translateY(20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}@supports (height: 100dvh){.auth-modal-overlay{height:100dvh;min-height:100dvh}}.auth-modal{scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.2) transparent}.auth-modal::-webkit-scrollbar{width:6px}.auth-modal::-webkit-scrollbar-track{background:transparent}.auth-modal::-webkit-scrollbar-thumb{background:rgba(255,255,255,.2);border-radius:3px}.auth-modal::-webkit-scrollbar-thumb:hover{background:rgba(255,255,255,.3)}.user-profile{position:relative}.user-profile .user-profile-trigger{display:flex;align-items:center;gap:.75rem;padding:.5rem 1rem;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:12px;color:#fff;cursor:pointer;transition:all .2s cubic-bezier(.25,.46,.45,.94);font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,sans-serif}.user-profile .user-profile-trigger:hover{background:rgba(255,255,255,.1);border-color:#fff3;transform:translateY(-1px)}.user-profile .user-profile-trigger .user-name{font-size:.875rem;font-weight:600;white-space:nowrap;max-width:120px;overflow:hidden;text-overflow:ellipsis}@media (max-width: 768px){.user-profile .user-profile-trigger .user-name{display:none}}.user-profile .user-profile-trigger .dropdown-arrow{width:16px;height:16px;color:#8e8e93;transition:transform .2s ease;flex-shrink:0}.user-profile .user-profile-trigger .dropdown-arrow.open{transform:rotate(180deg)}.user-profile .user-profile-dropdown{position:absolute;top:calc(100% + .5rem);right:0;width:320px;background:rgba(28,28,30,.95);backdrop-filter:blur(40px);-webkit-backdrop-filter:blur(40px);border:1px solid rgba(255,255,255,.1);border-radius:16px;box-shadow:0 20px 60px #00000080,0 8px 32px #0000004d,inset 0 1px #ffffff1a;z-index:1000;animation:dropdownSlideIn .2s cubic-bezier(.25,.46,.45,.94)}@media (max-width: 480px){.user-profile .user-profile-dropdown{width:280px;right:-1rem}}.user-profile .user-profile-dropdown .dropdown-header{padding:1.5rem;border-bottom:1px solid rgba(255,255,255,.1)}.user-profile .user-profile-dropdown .dropdown-header .user-info{display:flex;align-items:center;gap:1rem}.user-profile .user-profile-dropdown .dropdown-header .user-info .user-details{flex:1;min-width:0}.user-profile .user-profile-dropdown .dropdown-header .user-info .user-details .user-name-large{color:#fff;font-size:1.125rem;font-weight:600;margin-bottom:.25rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,sans-serif}.user-profile .user-profile-dropdown .dropdown-header .user-info .user-details .user-email{color:#8e8e93;font-size:.875rem;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,sans-serif}.user-profile .user-profile-dropdown .dropdown-stats{display:flex;padding:1rem 1.5rem;gap:1rem;border-bottom:1px solid rgba(255,255,255,.1)}.user-profile .user-profile-dropdown .dropdown-stats .stat-item{display:flex;flex-direction:column;margin-bottom:0;flex:1;gap:5px;text-align:center}.user-profile .user-profile-dropdown .dropdown-stats .stat-item .stat-value{display:block;color:#fff;font-size:1.25rem;font-weight:700;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,sans-serif}.user-profile .user-profile-dropdown .dropdown-stats .stat-item .stat-label{color:#8e8e93;margin-top:0;font-size:.75rem;font-weight:500;text-transform:uppercase;letter-spacing:.05em;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,sans-serif}.user-profile .user-profile-dropdown .dropdown-info{padding:1rem 1.5rem;border-bottom:1px solid rgba(255,255,255,.1)}.user-profile .user-profile-dropdown .dropdown-info .info-item{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.user-profile .user-profile-dropdown .dropdown-info .info-item:last-child{margin-bottom:0}.user-profile .user-profile-dropdown .dropdown-info .info-item .info-label{color:#8e8e93;font-size:.875rem;font-weight:500;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,sans-serif}.user-profile .user-profile-dropdown .dropdown-info .info-item .info-value{color:#fff;font-size:.875rem;font-weight:600;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,sans-serif}.user-profile .user-profile-dropdown .dropdown-info .info-item .info-link{color:#007aff;font-size:.875rem;font-weight:600;text-decoration:none;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,sans-serif;transition:color .2s ease}.user-profile .user-profile-dropdown .dropdown-info .info-item .info-link:hover{color:#0056cc;text-decoration:underline}.user-profile .user-profile-dropdown .dropdown-actions{padding:1rem 1.5rem}.user-profile .user-profile-dropdown .dropdown-actions .profile-action-button{width:100%;display:flex;align-items:center;justify-content:flex-start;gap:.75rem;padding:.75rem 1rem;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:12px;color:#fff;font-size:.875rem;font-weight:600;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,sans-serif;cursor:pointer;transition:all .2s cubic-bezier(.25,.46,.45,.94);text-decoration:none;margin-bottom:.5rem}.user-profile .user-profile-dropdown .dropdown-actions .profile-action-button svg{width:16px;height:16px;flex-shrink:0}.user-profile .user-profile-dropdown .dropdown-actions .profile-action-button:hover{background:rgba(255,255,255,.1);border-color:#fff3;transform:translateY(-1px)}.user-profile .user-profile-dropdown .dropdown-actions .profile-action-button:active{transform:translateY(0)}.user-profile .user-profile-dropdown .dropdown-actions .profile-action-button:last-of-type{margin-bottom:1rem}.user-profile .user-profile-dropdown .dropdown-actions .logout-button{width:100%;display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1rem;background:rgba(255,69,58,.1);border:1px solid rgba(255,69,58,.2);border-radius:12px;color:#ff453a;font-size:.875rem;font-weight:600;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,sans-serif;cursor:pointer;transition:all .2s cubic-bezier(.25,.46,.45,.94)}.user-profile .user-profile-dropdown .dropdown-actions .logout-button svg{width:16px;height:16px}.user-profile .user-profile-dropdown .dropdown-actions .logout-button .button-spinner{width:16px;height:16px;border:2px solid rgba(255,69,58,.3);border-top:2px solid #ff453a;border-radius:50%;animation:spin 1s linear infinite}.user-profile .user-profile-dropdown .dropdown-actions .logout-button:hover:not(:disabled){background:rgba(255,69,58,.15);border-color:#ff453a4d;transform:translateY(-1px)}.user-profile .user-profile-dropdown .dropdown-actions .logout-button:active:not(:disabled){transform:translateY(0)}.user-profile .user-profile-dropdown .dropdown-actions .logout-button:disabled{opacity:.6;cursor:not-allowed;transform:none!important}@keyframes dropdownSlideIn{0%{opacity:0;transform:translateY(-10px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.sticky-footer{position:fixed;bottom:0;background:#0f0f0f!important;left:0;right:0;width:100%;display:none;-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);z-index:50;transition:all .4s cubic-bezier(.4,0,.2,1)}body.voting-active .sticky-footer{display:flex;align-items:center;opacity:1;transform:translateY(0)}@media (min-width: 769px){.sticky-footer{flex-direction:row;justify-content:space-between;align-items:flex-end;padding:0 24px;gap:24px;min-height:100px}.sticky-footer .total-vote-counter{flex-shrink:0}}@media (max-width: 768px){.sticky-footer{flex-direction:row;justify-content:space-between;align-items:center;padding:12px 16px;gap:12px;min-height:110px}.sticky-footer .total-vote-counter{flex:0 0 auto}.sticky-footer .total-vote-counter .counter-content{padding:0}.sticky-footer .total-vote-counter .vote-number{font-size:18px}.sticky-footer .total-vote-counter .counter-label{font-size:10px}}@media (max-width: 480px){.sticky-footer{padding:10px 12px;gap:8px;min-height:100px}.sticky-footer .total-vote-counter{padding:0}.sticky-footer .total-vote-counter .vote-number{font-size:16px}.sticky-footer .total-vote-counter .counter-label{font-size:9px}}.total-vote-counter{position:relative;display:flex;align-items:center;z-index:50}body:not(.voting-active) .sticky-footer{display:none!important}.next-up-preview{position:relative;z-index:50;flex:0 0 auto;display:flex;align-items:center;min-width:160px;padding:8px 12px;opacity:0;transform:translateY(20px);transition:all .4s cubic-bezier(.25,.8,.25,1)}.next-up-preview.visible{opacity:1;transform:translateY(0)}.next-up-preview.loading .preview-images .preview-image{background:var(--surface-secondary);border:1px solid rgba(var(--border-rgb),.2);animation:pulse 2s ease-in-out infinite}.next-up-preview.loading .preview-images .vs-badge{opacity:.5}.next-up-preview.updating .preview-images{animation:previewFadeIn .5s ease-out}.next-up-preview .preview-content{padding:10px 40px;min-width:160px;transition:all .3s ease;cursor:pointer}.next-up-preview .preview-content:hover .preview-images .preview-image{transform:scale(1.05);opacity:1}.next-up-preview .preview-content:hover .preview-images .vs-badge{transform:scale(1.1);background:var(--accent);color:var(--surface)}.next-up-preview .preview-label{display:block;font-size:11px;font-weight:500;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px;text-align:center}.next-up-preview .preview-images{display:flex;align-items:center;gap:8px;justify-content:center}.next-up-preview .preview-images .preview-image{width:60px;height:60px;border-radius:6px;object-fit:cover;opacity:.8;transition:all .3s ease;border:1px solid rgba(var(--border-rgb),.2)}.next-up-preview .preview-images .preview-image.left{animation-delay:.1s}.next-up-preview .preview-images .preview-image.right{animation-delay:.2s}.next-up-preview .preview-images .preview-image-skeleton{width:60px;height:60px;border-radius:6px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);position:relative;overflow:hidden}.next-up-preview .preview-images .preview-image-skeleton .skeleton-shimmer{position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.15),transparent);animation:shimmer 1.5s ease-in-out infinite}.next-up-preview .preview-images .preview-image-skeleton .skeleton-pulse{position:absolute;top:50%;left:50%;width:8px;height:8px;background:rgba(255,255,255,.3);border-radius:50%;transform:translate(-50%,-50%);animation:pulse 1s ease-in-out infinite}.next-up-preview .preview-images .preview-image-skeleton.left .skeleton-shimmer{animation-delay:0s}.next-up-preview .preview-images .preview-image-skeleton.right .skeleton-shimmer{animation-delay:.5s}.next-up-preview .preview-images .vs-badge{font-size:8px;font-weight:700;color:var(--text-secondary);border-radius:4px;transition:all .3s ease;letter-spacing:.2px}@media (min-width: 1024px){.next-up-preview{max-width:280px;flex-shrink:0}}@media (max-width: 1023px) and (min-width: 769px){.next-up-preview{flex:0 0 auto;min-width:120px;max-width:200px}}@media (max-width: 768px){.next-up-preview{flex:0 0 auto;order:3;max-width:140px;min-width:120px;min-width:0}.next-up-preview .preview-content{padding:6px 8px;min-width:120px}.next-up-preview .preview-label{font-size:10px;margin-bottom:4px;font-weight:600}.next-up-preview .preview-images{gap:6px}.next-up-preview .preview-images .preview-image,.next-up-preview .preview-images .preview-image-skeleton{width:32px;height:32px;border-radius:4px}.next-up-preview .preview-images .preview-image-skeleton .skeleton-pulse{width:6px;height:6px}.next-up-preview .preview-images .vs-badge{font-size:9px;padding:2px 5px;margin:0 4px;font-weight:600}}@media (max-width: 480px){.next-up-preview{padding:0}.next-up-preview .preview-content{padding:0;min-width:80px}.next-up-preview .preview-label{font-size:9px;margin-bottom:3px}.next-up-preview .preview-images{gap:4px;width:40px;margin:auto}.next-up-preview .preview-images .preview-image,.next-up-preview .preview-images .preview-image-skeleton{width:28px;height:28px}.next-up-preview .preview-images .preview-image-skeleton .skeleton-pulse{width:5px;height:5px}.next-up-preview .preview-images .vs-badge{font-size:8px;padding:0;margin:0}}@keyframes previewFadeIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes pulse{0%,to{opacity:.6}50%{opacity:.8}}@keyframes shimmer{0%{left:-100%}to{left:100%}}.boss-battle-container{position:relative;z-index:40;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;flex:1 1 auto;max-width:400px;pointer-events:none}.boss-battle-container .boss-trophy,.boss-battle-container .boss-battle-progress{pointer-events:auto}.boss-battle-progress{position:relative;min-width:250px;padding:16px 20px;overflow:hidden;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);display:none;transform:translateY(100%);opacity:0;transition:all .4s cubic-bezier(.4,0,.2,1)}.boss-battle-progress:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent 0%,rgba(var(--text-primary-rgb),.02) 50%,transparent 100%);animation:backgroundShimmer 4s linear infinite;pointer-events:none}.boss-battle-progress.visible{display:block!important;visibility:visible!important;transform:translateY(0);opacity:1}.boss-battle-progress.slide-out{animation:progressSlideOut .3s cubic-bezier(.4,0,.2,1) forwards}.boss-battle-progress.fade-in{display:block;visibility:hidden;opacity:0;animation:progressFadeIn .6s cubic-bezier(.4,0,.2,1) forwards}.boss-battle-progress.fade-out{display:block;visibility:visible;opacity:1;animation:progressFadeOut .6s cubic-bezier(.4,0,.2,1) forwards}.boss-battle-progress.hidden{display:none;visibility:hidden;opacity:0}.boss-battle-progress.active{display:block!important;visibility:visible!important;opacity:1}.boss-battle-progress.boss-battle-mode{display:block;border-color:#ffd70066;box-shadow:0 8px 32px #ffd70026,0 4px 12px #ffd7001a,inset 0 1px #fff3;background:rgba(var(--surface-rgb),.98)}.boss-battle-progress.boss-battle-mode .progress-track{background:linear-gradient(90deg,rgba(255,215,0,.08) 0%,rgba(255,165,0,.08) 100%);border:1px solid rgba(255,215,0,.2)}.boss-battle-progress.boss-battle-mode:before{background:linear-gradient(90deg,transparent 0%,rgba(255,215,0,.06) 50%,transparent 100%)}.boss-battle-progress .progress-header{z-index:2}.boss-battle-progress .progress-header .championship-section{display:flex;align-items:center;justify-content:center;flex-direction:row;gap:4px;text-align:center}.boss-battle-progress .progress-header .championship-section .progress-text{font-size:11px;font-weight:600;color:var(--text-primary);text-transform:uppercase;letter-spacing:.8px}.boss-battle-progress .progress-header .championship-section .progress-text .tier-info{display:flex;align-items:center;gap:4px}.boss-battle-progress .progress-header .championship-section .progress-text .tier-info .tier-icon{font-size:14px}.boss-battle-progress .progress-header .championship-section .progress-text .tier-info .tier-name{font-size:11px;font-weight:600;color:var(--text-primary)}.boss-battle-progress .progress-header .championship-section .progress-counter{display:flex;align-items:center;gap:4px;font-size:11px;font-weight:600;color:var(--text-secondary)}.boss-battle-progress .progress-header .championship-section .progress-counter .vote-count{color:var(--accent-primary);font-weight:700;font-size:12px}.boss-battle-progress .progress-header .championship-section .progress-counter .counter-divider{color:var(--text-tertiary);font-weight:500;font-size:10px}.boss-battle-progress .progress-header .championship-section .progress-counter .vote-total{color:var(--text-secondary);font-weight:600;font-size:11px}.boss-battle-progress .progress-header .championship-section .progress-counter .championship-text{color:gold;font-weight:800;font-size:12px;text-shadow:0 0 10px rgba(255,215,0,.6);animation:championshipTextGlow 2s ease-in-out infinite}.boss-battle-progress .progress-track{width:100%;height:8px;background:rgba(var(--text-secondary-rgb),.15);border-radius:6px;overflow:hidden;position:relative;margin-bottom:12px;box-shadow:inset 0 1px 3px #0000001a}.boss-battle-progress .progress-fill{height:100%;background:linear-gradient(90deg,var(--accent-primary) 0%,var(--accent-secondary) 100%);border-radius:6px;width:0%;transition:width .8s cubic-bezier(.34,1.56,.64,1);position:relative}.boss-battle-progress .progress-footer{display:flex;align-items:center;justify-content:center;position:relative;z-index:2}.boss-battle-progress .progress-footer .apu-branding{display:flex;align-items:center;gap:6px;text-decoration:none;color:var(--text-tertiary);font-size:10px;font-weight:500;letter-spacing:.4px;transition:all .3s ease}.boss-battle-progress .progress-footer .apu-branding:hover{color:var(--text-secondary);transform:translateY(-1px)}.boss-battle-progress .progress-footer .apu-branding:hover .apu-logo-footer{transform:scale(1.1)}.boss-battle-progress .progress-footer .apu-branding .apu-logo-footer{width:16px;height:16px;border-radius:50%;transition:transform .3s ease}.boss-battle-progress .progress-footer .apu-branding .apu-text{text-transform:uppercase}@media (max-width: 768px){.boss-battle-progress{min-width:200px;padding:12px 16px}.boss-battle-progress .progress-header .championship-section{flex-direction:column;gap:2px}.boss-battle-progress .progress-header .championship-section .progress-text{font-size:10px;letter-spacing:.6px}.boss-battle-progress .progress-header .championship-section .progress-counter{font-size:10px}.boss-battle-progress .progress-header .championship-section .progress-counter .vote-count{font-size:11px}.boss-battle-progress .progress-footer .apu-branding{font-size:9px;gap:4px}.boss-battle-progress .progress-footer .apu-branding .apu-logo-footer{width:14px;height:14px}}@media (max-width: 480px){.boss-battle-progress{display:none!important;min-width:160px;padding:8px 12px}.boss-battle-progress .progress-header .championship-section .progress-text,.boss-battle-progress .progress-header .championship-section .progress-counter{font-size:9px}.boss-battle-progress .progress-header .championship-section .progress-counter .vote-count{font-size:10px}.boss-battle-progress .progress-footer .apu-branding{font-size:8px;gap:3px}.boss-battle-progress .progress-footer .apu-branding .apu-logo-footer{width:12px;height:12px}}@keyframes championshipTextGlow{0%,to{text-shadow:0 0 10px rgba(255,215,0,.6);transform:scale(1)}50%{text-shadow:0 0 20px rgba(255,215,0,.9);transform:scale(1.05)}}.sticky-footer{position:fixed;left:0;right:0;z-index:1000}.sticky-footer.visible{display:flex;opacity:1;transform:translateY(0)}.sticky-footer .next-up-preview.visible{opacity:1;transform:translateY(0)}.sticky-footer .next-up-preview .preview-images .preview-image.left,.sticky-footer .next-up-preview .preview-images .preview-image.right{opacity:.8;transition:all .3s ease}.sticky-footer .next-up-preview .preview-images .preview-image.left:hover,.sticky-footer .next-up-preview .preview-images .preview-image.right:hover{opacity:1;transform:scale(1.05)}.sticky-footer .next-up-preview .preview-images .preview-image-skeleton{position:relative;overflow:hidden}.sticky-footer .next-up-preview .preview-images .preview-image-skeleton .skeleton-shimmer{position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(90deg,rgba(255,255,255,.05) 0%,rgba(255,255,255,.1) 50%,rgba(255,255,255,.05) 100%);animation:shimmer 1.5s infinite}.sticky-footer .next-up-preview .preview-images .preview-image-skeleton .skeleton-pulse{position:absolute;top:50%;left:50%;width:20px;height:20px;background:rgba(255,255,255,.1);border-radius:50%;transform:translate(-50%,-50%);animation:pulse 1s infinite alternate}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}@keyframes pulse{0%{opacity:.3;transform:translate(-50%,-50%) scale(.8)}to{opacity:.7;transform:translate(-50%,-50%) scale(1.2)}}.shuffle-mode-message{display:flex;align-items:center;justify-content:center;padding:20px;margin:0 20px}@media (max-width: 768px){.shuffle-mode-message{padding:12px 8px;margin:0 8px;min-width:120px}}@media (max-width: 480px){.shuffle-mode-message{margin:0;min-width:80px}}.shuffle-mode-message .shuffle-message-content{display:flex;flex-direction:column;align-items:center;gap:12px}@media (max-width: 768px){.shuffle-mode-message .shuffle-message-content{gap:8px}}@media (max-width: 480px){.shuffle-mode-message .shuffle-message-content{gap:6px;width:60px}}.shuffle-mode-message .shuffle-message-content .hashtag{font-size:18px;font-weight:700;background:linear-gradient(135deg,#6f42c1,#9333ea);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-shadow:0 2px 4px rgba(111,66,193,.3);letter-spacing:.5px;animation:shuffle-glow 2s ease-in-out infinite alternate}@media (max-width: 768px){.shuffle-mode-message .shuffle-message-content .hashtag{font-size:14px;letter-spacing:.3px}}@media (max-width: 480px){.shuffle-mode-message .shuffle-message-content .hashtag{font-size:12px;letter-spacing:.2px}}.shuffle-mode-message .shuffle-message-content .shuffle-indicator{display:flex;align-items:center;gap:8px;color:#fffc;font-size:14px}@media (max-width: 768px){.shuffle-mode-message .shuffle-message-content .shuffle-indicator{gap:6px;font-size:12px}}@media (max-width: 480px){.shuffle-mode-message .shuffle-message-content .shuffle-indicator{gap:4px;font-size:10px}}.shuffle-mode-message .shuffle-message-content .shuffle-indicator .shuffle-icon{font-size:16px;animation:shuffle-rotate 2s linear infinite}@media (max-width: 768px){.shuffle-mode-message .shuffle-message-content .shuffle-indicator .shuffle-icon{font-size:14px}}@media (max-width: 480px){.shuffle-mode-message .shuffle-message-content .shuffle-indicator .shuffle-icon{font-size:12px}}.shuffle-mode-message .shuffle-message-content .shuffle-indicator .shuffle-text{font-weight:500;opacity:.9}@keyframes shuffle-glow{0%{text-shadow:0 2px 4px rgba(111,66,193,.3);transform:scale(1)}to{text-shadow:0 4px 8px rgba(111,66,193,.6),0 0 20px rgba(147,51,234,.4);transform:scale(1.02)}}@keyframes shuffle-rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.voting-interface .no-pair-message{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;color:#fffc}.voting-interface .no-pair-message p{font-size:18px;margin-bottom:20px}.voting-interface .no-pair-message .shuffle-transition{display:flex;flex-direction:column;align-items:center;gap:15px}.voting-interface .no-pair-message .shuffle-transition .shuffle-spinner{width:40px;height:40px;border:3px solid rgba(111,66,193,.3);border-top:3px solid #6f42c1;border-radius:50%;animation:shuffle-spin 1s linear infinite}.voting-interface .no-pair-message .shuffle-transition .shuffle-hint{font-size:14px;color:#6f42c1cc;margin:0}.voting-interface .voting-card{transition:all .4s cubic-bezier(.25,.8,.25,1)}.voting-interface .voting-card.animate-winner-to-center-from-left,.voting-interface .voting-card.animate-winner-to-center-from-right{z-index:10;animation:move-to-absolute-center .6s ease-out forwards}.voting-interface .voting-card.animate-loser-exit{opacity:0;transform:translateY(20px) scale(.9);animation:card-exit .6s ease-out forwards}.voting-interface .voting-card.winner .voting-card-image-container{box-shadow:0 8px 32px #ffd70066;animation:winner-glow 2s ease-in-out infinite alternate;position:relative}.voting-interface .voting-card.winner .voting-card-image-container .voting-winner-badge{position:absolute;top:12px;right:12px;display:flex;align-items:center;gap:6px;background:rgba(0,0,0,.85);-webkit-backdrop-filter:blur(20px) saturate(180%);backdrop-filter:blur(20px) saturate(180%);border:1px solid rgba(255,255,255,.2);border-radius:20px;padding:6px 12px 6px 8px;z-index:5}.voting-interface .voting-card.winner .voting-card-image-container .voting-winner-badge .voting-winner-checkmark{width:16px;height:16px;stroke:#30d158;stroke-width:2.5;background:rgba(48,209,88,.2);border-radius:8px;padding:2px;flex-shrink:0}.voting-interface .voting-card.winner .voting-card-image-container .voting-winner-badge .voting-winner-text{font-size:11px;font-weight:600;color:#30d158;letter-spacing:.2px;text-transform:uppercase}.voting-interface .voting-card.winner .voting-card-info.winner-info{background:rgba(0,0,0,.85);-webkit-backdrop-filter:blur(20px) saturate(180%);backdrop-filter:blur(20px) saturate(180%);border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:20px;text-align:left;position:relative;overflow:hidden}.voting-interface .voting-card.winner .voting-card-info.winner-info:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent)}.voting-interface .voting-card.winner .voting-card-info.winner-info .card-title.winner-title{color:#fff;margin-bottom:20px;margin-top:0;font-size:22px;font-weight:700;letter-spacing:-.5px;line-height:1.2}.voting-interface .voting-card.winner .voting-card-info.winner-info .winner-stats{display:flex;flex-direction:column;gap:12px}.voting-interface .voting-card.winner .voting-card-info.winner-info .winner-stats .stat-item{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.08)}.voting-interface .voting-card.winner .voting-card-info.winner-info .winner-stats .stat-item .stat-label,.voting-interface .voting-card.winner .voting-card-info.winner-info .winner-stats .stat-item .stat-value{padding:0 15px}.voting-interface .voting-card.winner .voting-card-info.winner-info .winner-stats .stat-item:last-child{border-bottom:none;padding-bottom:0}.voting-interface .voting-card.winner .voting-card-info.winner-info .winner-stats .stat-item .stat-label{font-size:15px;color:#ffffffb3;font-weight:400;letter-spacing:.2px;text-transform:uppercase}.voting-interface .voting-card.winner .voting-card-info.winner-info .winner-stats .stat-item .stat-value{font-size:17px;color:#fff;font-weight:600;letter-spacing:-.2px;font-feature-settings:"tnum"}.voting-interface .voting-interface .winner-solo-container{display:flex;flex-direction:column;align-items:center;justify-content:center}.voting-interface .voting-interface .winner-solo-container .voting-card{transform:scale(1.1);margin-bottom:1rem}.voting-interface .voting-interface .winner-solo-container .voting-card.animate-winner-center{animation:winner-center-pulse .8s ease-out}.voting-interface .voting-interface .winner-solo-container .voting-card.animate-winner-fading{animation:winner-fade-out .6s ease-out forwards}@keyframes winner-entrance{0%{opacity:0;transform:translateY(30px) scale(.75)}to{opacity:1;transform:translateY(0) scale(.8)}}@keyframes move-to-absolute-center{0%{transform:translate(0) translateY(0) scale(1)}to{transform:translate(0) translateY(-10px) scale(1.05)}}@keyframes card-exit{0%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(20px) scale(.9)}}@keyframes card-enter{0%{opacity:0;transform:translateY(-20px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes winner-center-pulse{0%{transform:scale(1.1)}50%{transform:scale(1.15)}to{transform:scale(1.1)}}@keyframes winner-fade-out{0%{opacity:1;transform:scale(1.1)}to{opacity:.3;transform:scale(1.05)}}@keyframes winner-glow{0%{box-shadow:0 8px 32px #ffd70066}to{box-shadow:0 12px 48px #ffd700b3,0 0 20px #ffd7004d}}@keyframes shuffle-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.voting-reactions{position:relative;width:100%;margin-top:-1rem;z-index:10;transition:all .3s ease}.voting-reactions.fade-out{opacity:0;transform:translateY(-10px)}.voting-reactions.fade-in{opacity:1;transform:translateY(0)}.voting-reactions .reactions-pair{display:flex;justify-content:center;align-items:flex-start;gap:2rem;max-width:1000px;margin:0 auto}.voting-reactions .reactions-pair .reaction-section{flex:1;display:flex;justify-content:center;max-width:400px}.voting-reactions .reactions-pair .reaction-section.left{justify-content:flex-end}.voting-reactions .reactions-pair .reaction-section.right{justify-content:flex-start}.voting-reactions .reactions-pair .reaction-section .voting-reaction-container{width:100%;max-width:300px;margin:0;background:rgba(255,255,255,.02);border:.5px solid rgba(255,255,255,.06)}.voting-reactions .reactions-pair .reaction-section .voting-reaction-container:before{content:"";position:absolute;top:-10px;left:50%;transform:translate(-50%);width:2px;height:10px;background:linear-gradient(to bottom,rgba(255,255,255,.1),transparent)}@media (max-width: 768px){.voting-reactions{margin-top:-.5rem}.voting-reactions .reactions-pair{gap:1rem;flex-direction:column;align-items:center}.voting-reactions .reactions-pair .reaction-section{max-width:100%;justify-content:center!important}.voting-reactions .reactions-pair .reaction-section .voting-reaction-container{max-width:280px}}.winner-reactions{position:relative;width:100%;margin-top:-1rem;z-index:10;display:flex;justify-content:center;transition:all .3s ease}.winner-reactions.fade-out{opacity:0;transform:translateY(-10px)}.winner-reactions.fade-in{opacity:1;transform:translateY(0)}.winner-reactions .winner-reaction-container{width:100%;max-width:400px;margin:0;background:rgba(255,215,0,.05);border:.5px solid rgba(255,215,0,.1)}.winner-reactions .winner-reaction-container:before{content:"";position:absolute;top:-10px;left:50%;transform:translate(-50%);width:3px;height:10px;background:linear-gradient(to bottom,rgba(255,215,0,.3),transparent)}.winner-reactions .winner-reaction-container:hover{background:rgba(255,215,0,.08);border-color:#ffd70026}@media (max-width: 768px){.winner-reactions{margin-top:-.5rem}.winner-reactions .winner-reaction-container{max-width:300px}}.voting-card .voting-card-reactions{padding:.75rem}.voting-card .voting-card-reactions:hover{background:rgba(255,255,255,.05);border-color:#ffffff1a}.voting-card .voting-card-reactions .reactions-list{gap:.5rem;justify-content:center}.voting-card .voting-card-reactions .emoji-button{min-width:32px;height:32px}.voting-card .voting-card-reactions .emoji-button .emoji-symbol{font-size:1.1rem}.voting-card .voting-card-reactions .emoji-button .emoji-count{min-width:14px;height:14px;font-size:.65rem;top:-4px;right:-4px}.voting-card .voting-card-reactions .reactions-status{padding:.3rem .5rem;font-size:.7rem}.voting-card.left .voting-card-reactions{border-left:2px solid rgba(59,130,246,.3)}.voting-card.right .voting-card-reactions{border-right:2px solid rgba(239,68,68,.3)}.voting-card.winner .voting-card-reactions{background:rgba(255,215,0,.05);border-color:#ffd70033}.voting-card.winner .voting-card-reactions:hover{background:rgba(255,215,0,.08);border-color:#ffd7004d}@media (max-width: 768px){.voting-card .voting-card-reactions{margin-top:.75rem;padding:.5rem}.voting-card .voting-card-reactions .emoji-button{min-width:28px;height:28px}.voting-card .voting-card-reactions .emoji-button .emoji-symbol{font-size:1rem}.voting-card .voting-card-reactions .emoji-button .emoji-count{min-width:12px;height:12px;font-size:.6rem}}.nft-comparison{display:flex;justify-content:center;align-items:center;gap:2rem;position:relative;min-height:600px;max-width:1100px;margin:0 auto;transition:all .3s ease,opacity .6s ease-out,transform .6s ease-out}.nft-comparison.voting{pointer-events:none}.nft-comparison.transition-out{opacity:0;transform:translateY(20px) scale(.95);pointer-events:none}.nft-comparison.transition-in{animation:cardsEntranceAnimation .6s cubic-bezier(.34,1.56,.64,1) forwards}.nft-comparison.phase-idle .voting-card{opacity:1;transform:translateY(0)}.nft-comparison.phase-cards-exiting .vs-divider{opacity:0;transform:scale(.8)}.nft-comparison.phase-cards-exiting .voting-card.animate-winner-to-center-from-left,.nft-comparison.phase-cards-exiting .voting-card.animate-winner-to-center-from-right{opacity:1;z-index:10}.nft-comparison.phase-winner-center{justify-content:center}.nft-comparison.phase-winner-center .winner-solo-container{display:flex;flex-direction:column;align-items:center;animation:winner-entrance .6s ease-out;position:relative}.nft-comparison.phase-winner-center .winner-solo-container:before{content:"";position:absolute;top:-20px;right:-20px;bottom:-20px;left:-20px;background:radial-gradient(circle at center,rgba(111,66,193,.15) 0%,transparent 70%);pointer-events:none;animation:spotlight-pulse 2s ease-in-out infinite;z-index:-1}.nft-comparison.phase-winner-fading{justify-content:center}.nft-comparison.phase-winner-fading .winner-solo-container{display:flex;flex-direction:column;align-items:center;animation:winner-fadeout .6s ease-out forwards}@media (max-width: 1200px){.nft-comparison{gap:1.5rem;min-height:fit-content}}@media (max-width: 1024px){.nft-comparison{gap:1.5rem;min-height:500px}}@media (max-width: 768px){.nft-comparison{min-height:450px;gap:1rem}}@media (max-width: 600px){.nft-comparison{display:flex;flex-direction:column;min-height:fit-content}}.winner-solo-container{height:fit-content;top:0;right:0;bottom:0;left:0;display:flex;justify-content:center;align-items:center;z-index:100}.vs-divider{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;z-index:50;flex-shrink:0;transition:all .4s ease}.vs-divider.fade-out{opacity:0;transform:scale(.8);animation:dividerFadeOut .4s ease-out forwards}.vs-divider.fade-in{animation:dividerFadeIn .6s ease-out forwards}.vs-divider .vs-text{background:var(--surface);color:var(--accent);font-size:1.5rem;font-weight:900;width:60px;height:60px;display:flex;align-items:center;justify-content:center;border-radius:50%;box-shadow:0 8px 25px #00000026;border:3px solid var(--accent);transition:all .3s ease}.vs-divider .vs-text:hover{transform:scale(1.05);box-shadow:0 10px 30px #00000040}.vs-divider .vs-logo{width:60px;height:auto;max-height:60px;object-fit:contain}.vs-divider .voting-actions{display:flex;justify-content:center}@media (max-width: 1024px){.vs-divider{order:2;margin:1rem 0}.vs-divider .vs-text{font-size:1.5rem;padding:.75rem 1rem}}@keyframes cardsEntranceAnimation{0%{opacity:0;transform:translateY(30px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes winner-entrance{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes winner-fadeout{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.95)}}@keyframes spotlight-pulse{0%,to{opacity:.6;transform:scale(1)}50%{opacity:1;transform:scale(1.05)}}.mobile-user-info{display:flex;align-items:center;gap:1rem;padding:1rem 1.5rem;border:1px solid rgba(255,255,255,.1);border-radius:12px;background:rgba(255,255,255,.05)}.mobile-user-info .mobile-user-avatar{width:40px;height:40px;border-radius:50%;background:#2c2c2e;border:1px solid rgba(255,255,255,.1);display:flex;align-items:center;justify-content:center;flex-shrink:0}.mobile-user-info .mobile-user-avatar .avatar-text{font-size:20px}.mobile-user-info .mobile-user-details{flex:1;min-width:0}.mobile-user-info .mobile-user-details .mobile-user-name{color:#fff;font-size:1rem;font-weight:600;margin-bottom:.25rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,sans-serif}.mobile-user-info .mobile-user-details .mobile-user-email{color:#8e8e93;font-size:.875rem;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,sans-serif}.navbar{position:fixed!important;top:0;left:0;right:0;z-index:1000}.nav-cta-button{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1.25rem;background:linear-gradient(135deg,#4F46E5 0%,#7C3AED 100%);border:none;border-radius:8px;color:#fff;font-size:.875rem;font-weight:600;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,sans-serif;cursor:pointer;transition:all .2s cubic-bezier(.25,.46,.45,.94);text-decoration:none;-webkit-user-select:none;user-select:none;box-shadow:0 2px 8px #4f46e54d,0 1px 3px #4f46e533;white-space:nowrap}.nav-cta-button .button-icon{width:16px;height:16px;flex-shrink:0}.nav-cta-button .button-spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top:2px solid white;border-radius:50%;animation:spin 1s linear infinite;flex-shrink:0}.nav-cta-button:hover:not(:disabled){background:linear-gradient(135deg,#4338CA 0%,#6D28D9 100%);box-shadow:0 4px 12px #4f46e566,0 2px 6px #4f46e54d;transform:translateY(-1px)}.nav-cta-button:active:not(:disabled){transform:translateY(0);box-shadow:0 2px 6px #4f46e54d,0 1px 3px #4f46e533}.nav-cta-button:disabled{opacity:.6;cursor:not-allowed;transform:none}@media (max-width: 768px){.nav-cta-button{padding:.625rem 1rem;font-size:.8125rem}.nav-cta-button .button-icon{width:14px;height:14px}}*{margin:0;padding:0;box-sizing:border-box;-webkit-tap-highlight-color:transparent}html{scroll-behavior:smooth}body{font-family:-apple-system,BlinkMacSystemFont,Inter,SF Pro Display,system-ui,sans-serif;font-size:16px;line-height:1.5;color:#f8f8f8;background:#0f0f0f;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden;transition:background-color .3s ease,color .3s ease;padding-top:60px}:root{--primary: #007AFF;--primary-hover: #0051D8;--accent: #007AFF;--accent-hover: #0051D8;--accent-alpha: rgba(0, 122, 255, .15);--text-primary: #F8F8F8;--text-secondary: #AEAEB2;--text-tertiary: #8E8E93;--background: #131315;--surface: #3A3A3C;--surface-elevated: #48484A;--surface-secondary: #48484A;--surface-tertiary: #636366;--surface-hover: #48484A;--background-secondary: #48484A;--border: #636366;--border-hover: #8E8E93;--border-primary: rgba(255, 255, 255, .1);--border-secondary: rgba(255, 255, 255, .05);--overlay: rgba(0, 0, 0, .9);--input-bg: var(--surface);--text-placeholder: #8E8E93;--text-on-accent: #ffffff;--accent-dark: #0051D8;--danger: #FF453A;--error: #FF453A;--error-rgb: 255, 69, 58;--green: #34C759;--red: #FF453A;--orange: #FF9500;--success: #34C759;--accent-primary: #007AFF;--accent-secondary: #5856D6;--gradient-primary: linear-gradient(135deg, #007AFF 0%, #0051D8 100%);--background-rgb: 19, 19, 21;--text-primary-rgb: 248, 248, 248;--text-secondary-rgb: 174, 174, 178;--surface-rgb: 58, 58, 60;--border-rgb: 255, 255, 255;--accent-rgb: 0, 122, 255;--accent-primary-rgb: 10, 132, 255;--accent-secondary-rgb: 94, 92, 230;--danger-rgb: 255, 69, 58;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .3);--shadow-md: 0 4px 6px rgba(0, 0, 0, .2);--shadow-lg: 0 10px 15px rgba(0, 0, 0, .3);--shadow-xl: 0 20px 25px rgba(0, 0, 0, .4);--navbar-height: 80px}@media (max-width: 768px){body.voting-active .sticky-footer{position:relative}}@media (max-height: 900px){body.voting-active .sticky-footer{position:relative}}body.voting-active .voting-section{display:block}body.championship{background:radial-gradient(circle at center,rgba(255,215,0,.08) 0%,transparent 70%);background:#0f0f0f}body.championship .voting-interface{background:radial-gradient(circle at center,rgba(255,215,0,.15) 0%,transparent 70%);border-radius:20px;padding:20px}body.championship .voting-header h3{color:gold;text-shadow:0 0 20px rgba(255,215,0,.8);animation:championshipGlow 2s ease-in-out infinite alternate}body.championship .voting-card{border:3px solid rgba(255,215,0,.7);box-shadow:0 0 30px #ffd70066,0 8px 20px #0000004d;position:relative}body.championship .voting-card:before{content:"🏆";position:absolute;top:-10px;right:-10px;background:linear-gradient(135deg,#FFD700,#FFA500);width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:16px;z-index:10;border:2px solid rgba(255,255,255,.9);box-shadow:0 0 15px #ffd700cc;animation:trophyPulse 2s ease-in-out infinite}body.championship .voting-card:hover{border-color:gold;box-shadow:0 0 40px #ffd70099,0 12px 30px #0006;transform:translateY(-5px) scale(1.02)}body.championship .sticky-footer{background:linear-gradient(135deg,rgba(25,25,27,.95),rgba(255,215,0,.05));border-top:2px solid rgba(255,215,0,.3)}body.championship .progress-fill{position:relative;transition:all .5s ease}body.championship .progress-fill.tier-discovery{background:linear-gradient(90deg,#4A90E2 0%,#357ABD 100%);box-shadow:0 0 10px #4a90e266}body.championship .progress-fill.tier-bottom{background:linear-gradient(90deg,#E74C3C 0%,#C0392B 100%);box-shadow:0 0 10px #e74c3c66}body.championship .progress-fill.tier-rising{background:linear-gradient(90deg,#E67E22 0%,#D35400 100%);box-shadow:0 0 10px #e67e2266}body.championship .progress-fill.tier-elite{background:linear-gradient(90deg,#9B59B6 0%,#8E44AD 100%);box-shadow:0 0 10px #9b59b666}body.championship .progress-fill.tier-championship{background:linear-gradient(90deg,#FFD700 0%,#FFA500 50%,#FFD700 100%);box-shadow:0 0 15px #ffd70099,inset 0 1px #ffffff4d,inset 0 -1px #0003}body.championship .progress-fill.tier-championship:after{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.4) 50%,transparent 100%);animation:championshipShimmer 2s ease-in-out infinite}body.championship .progress-track{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);box-shadow:0 0 5px #0003,inset 0 1px 3px #0000004d}.tier-championship body.championship .progress-track{background:rgba(255,215,0,.1);border:1px solid rgba(255,215,0,.3);box-shadow:0 0 10px #ffd70033,inset 0 1px 3px #0000004d}body.championship .tier-championship{color:gold;text-shadow:0 0 10px rgba(255,215,0,.8);font-weight:700}body.championship .championship-section .tier-icon{animation:championshipBounce 2s ease-in-out infinite}@keyframes championshipGlow{0%{text-shadow:0 0 10px rgba(255,215,0,.6)}to{text-shadow:0 0 25px rgba(255,215,0,.9)}}@keyframes trophyPulse{0%,to{transform:scale(1)}50%{transform:scale(1.15)}}@keyframes championshipShimmer{0%{left:-100%}50%{left:100%}to{left:100%}}@keyframes championshipBounce{0%,to{transform:translateY(0) scale(1)}25%{transform:translateY(-2px) scale(1.1)}75%{transform:translateY(1px) scale(.95)}}.voting-section{position:relative}.voting-section .voting-container{max-width:1300px;margin:0 auto;padding:0 2rem;display:flex;flex-direction:column;align-items:center;justify-content:center}@media (max-width: 768px){.voting-section .voting-container{padding:0 16px}}@media (min-width: 768px){.voting-section .voting-container{padding-bottom:85px}}.voting-section .voting-interface{width:100%;max-width:1200px;margin:0 auto;position:relative}.voting-section .voting-interface.vote-sequence-1 .nft-comparison .vs-divider{animation:vsDividerFadeOut .4s ease-out forwards;animation-delay:.2s}.voting-section .voting-interface.vote-sequence-2 .nft-comparison .vs-divider{opacity:0;pointer-events:none}.voting-section .voting-interface.vote-sequence-3 .vs-divider{animation:vsDividerFadeIn .6s ease-out forwards;animation-delay:.4s}.voting-section .voting-header{display:flex;justify-content:center;margin-bottom:2rem}.voting-section .voting-header .voting-prompt{text-align:center}.voting-section .voting-header .voting-prompt h3{font-size:1.5rem;font-weight:700;letter-spacing:-.02em;margin-bottom:.5rem;color:var(--text-primary)}@media (max-width: 768px){.voting-section .voting-header .voting-prompt h3{font-size:1.25rem}}.voting-section .voting-header .voting-prompt p{color:var(--text-secondary);font-size:1rem;margin:0}@media (max-width: 768px){.voting-section .voting-header .voting-prompt p{font-size:.875rem;padding:0 16px}}.voting-card{background:linear-gradient(145deg,#2a2d3a,#1e212b);border-radius:20px;padding:0;cursor:pointer;transition:all .4s cubic-bezier(.25,.8,.25,1);position:relative;overflow:hidden;border:2px solid transparent;max-width:500px;width:100%}@media (max-width: 768px){.voting-card{margin:0 auto;max-width:calc((100vw - 32px)*.9)}}.voting-card{animation:cardEntrance .6s cubic-bezier(.34,1.56,.64,1) both}.voting-card.left{animation-delay:.1s}@media (max-width: 1024px){.voting-card.left{order:1}}.voting-card.right{animation-delay:.2s}@media (max-width: 1024px){.voting-card.right{order:3}}.voting-card:hover:not(.disabled){transform:translateY(-12px) scale(1.05);border-color:#10b981!important;box-shadow:0 0 0 3px #10b98166,0 25px 80px #10b9814d,0 10px 40px #0006;z-index:20}.voting-card:hover:not(.disabled) .voting-card-image{filter:brightness(1.15) contrast(1.1) saturate(1.3)}.voting-card:hover:not(.disabled):before{opacity:.8;background:radial-gradient(circle at center,rgba(16,185,129,.2) 0%,rgba(16,185,129,.05) 50%,transparent 80%);transform:scale(1.2)}.voting-card.disabled{opacity:.6;cursor:not-allowed;pointer-events:none}.voting-card.winner{border-color:#10b981;transform:translateY(-12px) scale(1.05);box-shadow:0 0 0 3px #10b9814d,0 0 0 6px #10b98126,0 25px 80px #10b98140,0 10px 40px #0000004d;animation:winnerGlow 2s ease-in-out infinite;z-index:10}.voting-card.winner .winner-overlay-deprecated{opacity:1;transform:scale(1)}.voting-card.winner .winner-stats{opacity:1;transform:translateY(0)}.voting-card.winner .winner-checkmark{opacity:1;transform:scale(1) rotate(0)}.voting-card.winner:before{opacity:1}.voting-card.animate-loser-exit{animation:loserExit .6s ease-in-out forwards;z-index:1}.voting-card.animate-loser-exit.left{animation-name:loserExitLeft}.voting-card.animate-loser-exit.right{animation-name:loserExitRight}.voting-card.animate-winner-to-center{animation:winnerToCenter .6s cubic-bezier(.34,1.56,.64,1) forwards;z-index:50}.voting-card.animate-winner-center{position:relative;z-index:100;max-width:400px;opacity:1;animation:winnerCelebration 2s ease-in-out infinite}.voting-card.animate-winner-center .winner-overlay-deprecated{opacity:1;transform:scale(1)}.voting-card.animate-winner-center .winner-stats{opacity:1;transform:translateY(0)}.voting-card.animate-winner-center .winner-checkmark{opacity:1;transform:scale(1) rotate(0)}.voting-card.animate-winner-center:before{opacity:1;background:radial-gradient(circle at center,rgba(16,185,129,.3) 0%,rgba(16,185,129,.1) 50%,transparent 80%);transform:scale(1.5)}.voting-card.animate-winner-fading{animation:winnerFadeOut .6s ease-out forwards;z-index:100}.voting-card.animate-entering{animation:cardEntrance .8s cubic-bezier(.34,1.56,.64,1) both}.voting-card.animate-entering.left{animation-delay:.1s}.voting-card.animate-entering.right{animation-delay:.2s}.voting-card:before{content:"";position:absolute;top:-20px;right:-20px;bottom:-20px;left:-20px;background:radial-gradient(circle at center,rgba(16,185,129,.15) 0%,rgba(16,185,129,.05) 40%,transparent 70%);border-radius:50%;opacity:0;transition:opacity .6s ease;z-index:-1}.voting-card-image-container{position:relative;width:100%;aspect-ratio:1;border-radius:16px 16px 0 0;margin-bottom:-10px;background:#000;display:flex;justify-content:center;align-items:center}.voting-card-image{width:100%;object-fit:cover;transition:all .4s ease}.voting-card-info{padding:30px 20px 1px;margin-bottom:0;border-radius:0 0 20px 20px;position:relative}.voting-card-info .card-title{color:#f8fafc;font-size:18px;font-weight:600;margin:0 0 8px;line-height:1.3}.voting-card-info .card-subtitle{color:#94a3b8;font-size:14px;font-weight:500;margin:0}.winner-overlay-deprecated{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:20px;display:flex;flex-direction:column;align-items:center;justify-content:center;opacity:0;transform:scale(.8);transition:all .5s cubic-bezier(.34,1.56,.64,1);z-index:5;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.winner-checkmark{width:80px;height:80px;background:rgba(255,255,255,.2);border-radius:50%;display:flex;align-items:center;justify-content:center;margin-bottom:20px;opacity:0;transform:scale(.5) rotate(-90deg);transition:all .6s cubic-bezier(.34,1.56,.64,1);border:3px solid rgba(255,255,255,.4)}.winner-checkmark svg{width:40px;height:40px;stroke:#fff;stroke-width:3;fill:none}.winner-stats{text-align:center;color:#fff;opacity:0;transform:translateY(20px);transition:all .6s ease .2s}.winner-stats .winner-title{font-size:24px;font-weight:700;margin:0 0 8px;text-shadow:0 2px 4px rgba(0,0,0,.3)}.winner-stats .winner-subtitle{font-size:16px;font-weight:500;margin:0 0 12px;opacity:.9}.winner-stats .winner-record{font-size:14px;font-weight:600;opacity:.8;background:rgba(255,255,255,.15);padding:6px 12px;border-radius:12px;display:inline-block}@keyframes cardEntrance{0%{opacity:0;transform:translateY(40px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes winnerGlow{0%,to{box-shadow:0 0 0 3px #10b9814d,0 0 0 6px #10b98126,0 25px 80px #10b98140,0 10px 40px #0000004d}50%{box-shadow:0 0 0 4px #10b98166,0 0 0 8px #10b98133,0 30px 100px #10b9814d,0 15px 50px #0006}}.glow-effect{position:absolute;top:-30px;right:-30px;bottom:-30px;left:-30px;background:radial-gradient(circle at 30% 20%,rgba(52,199,89,.15) 0%,transparent 40%),radial-gradient(circle at 70% 80%,rgba(0,122,255,.12) 0%,transparent 40%),radial-gradient(circle at center,rgba(94,92,230,.08) 0%,transparent 60%);opacity:0;transition:all .6s ease-out;z-index:-2;pointer-events:none;border-radius:50%;filter:blur(20px);will-change:opacity,transform}.background-particles{position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;pointer-events:none;overflow:hidden}.background-particles:before,.background-particles:after{content:"";position:absolute;background:rgba(255,255,255,.1);border-radius:50%;animation:floatParticles 15s infinite ease-in-out}.background-particles:before{width:10px;height:10px;top:10%;left:20%;animation-delay:0s}.background-particles:after{width:15px;height:15px;top:80%;left:70%;animation-delay:7s}.nft-image-wrapper{position:relative;width:100%;aspect-ratio:1;border-radius:20px 20px 0 0;overflow:hidden}.nft-image{width:100%;height:100%;object-fit:cover;display:block;transition:all .3s cubic-bezier(.4,0,.2,1);will-change:transform,filter}.nft-overlay{position:absolute;top:1rem;right:1rem;width:48px;height:48px;background:linear-gradient(135deg,rgba(52,199,89,.95) 0%,rgba(52,199,89,.85) 100%);border-radius:50%;display:flex;align-items:center;justify-content:center;opacity:0;transform:scale(0) rotate(-90deg);transition:all .5s cubic-bezier(.34,1.56,.64,1);-webkit-backdrop-filter:blur(12px) saturate(200%);backdrop-filter:blur(12px) saturate(200%);border:2px solid rgba(255,255,255,.3);box-shadow:0 4px 20px #34c75966,0 2px 8px #0003,inset 0 1px #fff6;z-index:3}.vote-checkmark{display:flex;transform:scale(.9);transition:all .3s cubic-bezier(.34,1.56,.64,1)}.vote-checkmark svg{filter:drop-shadow(0 2px 4px rgba(0,0,0,.2))}.nft-details{padding:1.5rem;text-align:center;border-radius:0 0 24px 24px}.nft-details .nft-title{font-size:1rem;font-weight:600;color:var(--text-primary);margin:0;line-height:1.4}.nft-details .nft-id{font-size:.875rem;color:var(--text-secondary);margin-top:.25rem;text-transform:uppercase;letter-spacing:.5px;font-weight:500}.nft-details .opensea-link{display:inline-flex;align-items:center;gap:.5rem;background:var(--accent);color:var(--text-on-accent);border:none;border-radius:8px;padding:.5rem 1rem;font-size:.875rem;font-weight:500;cursor:pointer;transition:background .2s ease;text-decoration:none;margin-top:1rem}.nft-details .opensea-link:hover{background:var(--accent-hover)}.nft-details .opensea-link svg{width:16px;height:16px}.sticky-footer{position:fixed;bottom:-1px;left:0;right:0;background:rgba(var(--background-rgb),.95);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-top:1px solid rgba(var(--border-rgb),.1);color:var(--text-primary);padding:0 2rem;display:flex;flex-direction:row;justify-content:space-between;align-items:center;gap:2rem;transition:transform .3s ease;z-index:100;min-height:100px}.sticky-footer.hidden{transform:translateY(100%)}.sticky-footer .next-up-preview{flex:0 0 auto;display:flex;align-items:center}.sticky-footer .boss-battle-container{flex:1 1 auto;justify-content:center;max-width:400px}@media (max-width: 768px){.sticky-footer{padding:12px 16px;gap:12px;min-height:110px;flex-direction:row;justify-content:space-between;align-items:center}.sticky-footer .next-up-preview{flex:0 0 auto;min-width:0}.sticky-footer .boss-battle-container{flex:1 1 auto;max-width:200px;margin:0 8px}}@media (max-width: 480px){.sticky-footer{padding:10px 12px;gap:8px;min-height:100px}.sticky-footer .vote-number{font-size:1.2rem!important}.sticky-footer .boss-battle-container{padding:0;margin:0 5px}.sticky-footer .counter-label{line-height:1.2!important}}.vote-counter .total-votes{display:flex;align-items:center;gap:.5rem}.vote-counter .total-votes .vote-label{font-weight:500;opacity:.8}.vote-counter .total-votes .vote-number{font-size:1.5rem;font-weight:700;color:#22c55e;transition:transform .5s ease}.vote-counter .total-votes .vote-number.updating{animation:countUpdate .5s ease}.championship-progress .progress-info{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem;font-size:.875rem}.championship-progress .progress-info .championship-ready{font-weight:700;color:#fbbf24;font-size:1rem}.championship-progress .progress-info .progress-label{opacity:.9}.championship-progress .progress-info .session-count{opacity:.7}.championship-progress .progress-bar{height:8px;background:rgba(255,255,255,.2);border-radius:4px;overflow:hidden}.championship-progress .progress-bar .progress-fill{height:100%;background:linear-gradient(90deg,#22c55e,#16a34a);transition:width .5s ease}.voting-loading{display:flex;flex-direction:column;align-items:center;gap:1rem;color:#fff}.voting-loading .loading-spinner{width:60px;height:60px;border:4px solid rgba(255,255,255,.3);border-top:4px solid white;border-radius:50%;animation:spin 1s linear infinite}.voting-loading p{font-size:1.1rem;opacity:.9}.no-pair-message{text-align:center;color:#fff}.no-pair-message p{font-size:1.25rem;opacity:.9}@keyframes countUpdate{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes pulse-glow{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.05);opacity:.8}}@keyframes cardSelectedPop{0%{transform:translateY(0) scale(1)}50%{transform:translateY(-8px) scale(1.05)}to{transform:translateY(-6px) scale(1.03)}}@keyframes elegantCheckmarkPulse{0%{transform:scale(.9);opacity:.8}30%{transform:scale(1.2);opacity:1}60%{transform:scale(1.05);opacity:1}to{transform:scale(1.1);opacity:1}}@keyframes selectedGlowPulse{0%,to{opacity:.7;transform:scale(1)}50%{opacity:.9;transform:scale(1.02)}}@keyframes winnerPulse{0%,to{transform:scale(1)}50%{transform:scale(1.08)}}@keyframes winnerImageGlow{0%{filter:brightness(1) contrast(1) saturate(1);box-shadow:0 0 #34c75900}to{filter:brightness(1.1) contrast(1.05) saturate(1.2);box-shadow:0 0 30px #34c75966,0 0 60px #34c75933,inset 0 0 20px #ffffff1a}}@keyframes winnerGlowPulse{0%{opacity:0;transform:scale(1);filter:blur(20px)}to{opacity:1;transform:scale(1.3);filter:blur(30px)}}@keyframes floatParticles{0%,to{transform:translateY(0) translate(0) scale(1);opacity:.8}25%{transform:translateY(-10px) translate(5px) scale(1.1);opacity:1}50%{transform:translateY(0) translate(0) scale(1);opacity:.8}75%{transform:translateY(10px) translate(-5px) scale(.9);opacity:.7}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes loserExitLeft{0%{opacity:1;transform:translate(0) scale(1)}to{opacity:0;transform:translate(-200px) scale(.8)}}@keyframes loserExitRight{0%{opacity:1;transform:translate(0) scale(1)}to{opacity:0;transform:translate(200px) scale(.8)}}@keyframes winnerToCenter{0%{transform:translate(0) scale(1)}to{transform:translate(0) scale(1.1)}}@keyframes winnerCelebration{0%,to{transform:scale(1.1) rotate(0)}25%{transform:scale(1.15) rotate(-1deg)}75%{transform:scale(1.15) rotate(1deg)}}@keyframes winnerFadeOut{0%{opacity:1;transform:scale(1.1)}to{opacity:0;transform:scale(.9)}}@keyframes dividerFadeOut{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.8)}}@keyframes dividerFadeIn{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.total-vote-counter{position:relative;z-index:50;min-width:120px;padding:12px 16px;flex:0 0 auto;display:flex;align-items:center;opacity:0;transform:translateY(20px);transition:all .4s cubic-bezier(.25,.8,.25,1)}.total-vote-counter.visible{opacity:1;transform:translateY(0)}.total-vote-counter .counter-content{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);padding:16px 20px;text-align:center;transition:all .3s ease;cursor:pointer}.total-vote-counter .counter-content:hover{transform:translateY(-2px);box-shadow:0 12px 32px #0000001f,0 6px 12px #0000000f,inset 0 1px #ffffff26}.total-vote-counter .vote-number{font-size:32px;font-weight:800;color:var(--text-primary);line-height:1;margin-bottom:4px;font-variant-numeric:tabular-nums;background:linear-gradient(135deg,var(--accent-primary) 0%,var(--accent-secondary) 50%,var(--accent) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;transition:all .3s cubic-bezier(.34,1.56,.64,1)}.total-vote-counter .vote-number.updating{animation:totalCounterBounce .6s ease-out}.total-vote-counter .vote-number.milestone{animation:milestoneGlow 1.2s ease-out}.total-vote-counter .counter-label{font-size:11px;font-weight:500;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;line-height:1.2;opacity:.8}@media (max-width: 768px){.total-vote-counter{min-width:auto;padding:8px 12px}.total-vote-counter .counter-content{padding:8px 12px}.total-vote-counter .vote-number{font-size:18px}.total-vote-counter .counter-label{font-size:10px;line-height:1.3}}@media (max-width: 480px){.total-vote-counter,.total-vote-counter .counter-content{padding:6px 10px}.total-vote-counter .vote-number{font-size:16px}.total-vote-counter .counter-label{font-size:9px}}@keyframes totalCounterBounce{0%{transform:scale(1);filter:brightness(1)}50%{transform:scale(1.1);filter:brightness(1.2)}to{transform:scale(1);filter:brightness(1)}}@keyframes milestoneGlow{0%{text-shadow:0 0 0 rgba(0,122,255,0)}50%{text-shadow:0 0 20px rgba(0,122,255,.8),0 0 40px rgba(88,86,214,.6)}to{text-shadow:0 0 0 rgba(0,122,255,0)}}@media (max-width: 460px){.sticky-footer{padding-top:0;padding-bottom:0}}.hidden{display:none!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}button:focus-visible,.nft-card:focus-visible{outline:2px solid #007AFF;outline-offset:2px}@media (max-width: 768px){.voting-section .voting-container{padding:0 1rem;padding-bottom:110px}.nft-comparison{gap:.25rem}.vs-divider .vs-text{font-size:1.5rem;padding:.75rem 1rem}.nft-card{margin:0 auto}}.page-placeholder{display:flex;align-items:center;justify-content:center;height:calc(100vh - 64px);background:var(--background);color:var(--text-primary);font-size:1.5rem;font-weight:600}.page-title{font-size:2.5rem;font-weight:700;color:#4f46e5;margin-bottom:1rem;letter-spacing:-.02em;line-height:1.2}@media (max-width: 768px){.page-title{font-size:2rem}}@media (max-width: 480px){.page-title{font-size:1.8rem}}
