*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}:root{--color-primary: #ff2d78;--color-primary-dark: #e0265a;--color-primary-glow: rgba(255, 45, 120, .2);--color-accent: #00e5ff;--color-accent-glow: rgba(0, 229, 255, .2);--color-neon-pink: #ff2d78;--color-neon-blue: #00e5ff;--color-neon-purple: #b44dff;--color-neon-green: #39ff14;--color-neon-yellow: #ffe600;--color-bg: #0a0a1a;--color-bg-elevated: #12122a;--color-card: #1a1a3e;--color-text: #f0f0ff;--color-text-secondary: #8888bb;--color-border: rgba(255, 255, 255, .08);--color-badge: #39ff14;--color-star: #ffe600;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--shadow-card: 0 2px 16px rgba(0, 0, 0, .4);--shadow-hover: 0 4px 24px rgba(255, 45, 120, .2), 0 4px 24px rgba(0, 229, 255, .15);--glow-pink: 0 0 12px rgba(255, 45, 120, .5), 0 0 24px rgba(255, 45, 120, .2);--glow-blue: 0 0 12px rgba(0, 229, 255, .5), 0 0 24px rgba(0, 229, 255, .2);--glow-purple: 0 0 12px rgba(180, 77, 255, .5), 0 0 24px rgba(180, 77, 255, .2);--scrollbar-track: rgba(255, 255, 255, .04);--scrollbar-track-strong: rgba(255, 255, 255, .06);--scrollbar-thumb-start: rgba(0, 229, 255, .72);--scrollbar-thumb-end: rgba(180, 77, 255, .68);--scrollbar-thumb-hover-start: rgba(0, 229, 255, .92);--scrollbar-thumb-hover-end: rgba(255, 45, 120, .82);--scrollbar-border: rgba(10, 10, 26, .55);--scrollbar-glow: rgba(0, 229, 255, .18);--motion-neon-fast: .22s;--motion-neon-base: .36s;--motion-neon-slow: .56s;--app-height: 100vh;--bottom-nav-offset: 70px;--max-width: 600px}html{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:16px;color:var(--color-text);background:var(--color-bg);-webkit-font-smoothing:antialiased;scrollbar-gutter:stable;scrollbar-width:thin;scrollbar-color:rgba(0,229,255,.38) var(--scrollbar-track-strong)}body{max-width:var(--max-width);margin:0 auto;min-height:100vh;min-height:var(--app-height, 100vh);background:var(--color-bg);background-image:radial-gradient(ellipse 80% 50% at 50% 0%,rgba(255,45,120,.12) 0%,transparent 60%),radial-gradient(ellipse 60% 40% at 30% 0%,rgba(0,229,255,.1) 0%,transparent 50%),radial-gradient(ellipse 60% 40% at 70% 0%,rgba(180,77,255,.08) 0%,transparent 50%);scrollbar-width:thin;scrollbar-color:rgba(0,229,255,.38) var(--scrollbar-track-strong)}html::-webkit-scrollbar,body::-webkit-scrollbar,.neon-scrollbar::-webkit-scrollbar{width:10px;height:10px}html::-webkit-scrollbar-track,body::-webkit-scrollbar-track,.neon-scrollbar::-webkit-scrollbar-track{background:var(--scrollbar-track);border-radius:999px}html::-webkit-scrollbar-thumb,body::-webkit-scrollbar-thumb,.neon-scrollbar::-webkit-scrollbar-thumb{background:linear-gradient(180deg,var(--scrollbar-thumb-start),var(--scrollbar-thumb-end));border-radius:999px;border:2px solid var(--scrollbar-border);box-shadow:0 0 10px var(--scrollbar-glow)}html::-webkit-scrollbar-thumb:hover,body::-webkit-scrollbar-thumb:hover,.neon-scrollbar::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,var(--scrollbar-thumb-hover-start),var(--scrollbar-thumb-hover-end))}.neon-scrollbar{scrollbar-gutter:stable;scrollbar-width:thin;scrollbar-color:rgba(0,229,255,.38) var(--scrollbar-track-strong)}a{text-decoration:none;color:inherit}img{max-width:100%;height:auto;display:block}button{border:none;cursor:pointer;font-family:inherit;background:none}.section{margin-bottom:24px}.section-header{display:flex;justify-content:space-between;align-items:center;padding:16px 16px 8px}.section-title{font-size:18px;font-weight:700;color:var(--color-text);text-shadow:0 0 20px rgba(255,45,120,.3)}.section-subtitle{font-size:12px;color:var(--color-text-secondary);margin-top:2px}.section-action{font-size:14px;color:var(--color-text-secondary);display:flex;align-items:center;gap:4px;transition:color .2s}.section-action:hover{color:var(--color-primary)}.rating-badge{position:absolute;top:8px;left:8px;background:linear-gradient(135deg,var(--color-neon-pink),var(--color-neon-purple));color:#fff;font-size:12px;font-weight:700;padding:3px 8px;border-radius:6px;display:flex;align-items:center;gap:2px;box-shadow:var(--glow-pink)}.rating-badge:before{content:"★";font-size:10px}.player-badge{position:absolute;bottom:8px;right:8px;background:#0000008c;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);color:#fff;font-size:11px;padding:3px 10px;border-radius:10px;display:flex;align-items:center;gap:4px}.player-badge:before{content:"👥";font-size:10px}.tag{display:inline-block;padding:2px 8px;border-radius:6px;font-size:11px;background:#00e5ff1f;color:var(--color-neon-blue);font-weight:500;border:1px solid rgba(0,229,255,.2)}.bottom-nav{position:fixed;bottom:0;left:50%;transform:translate(-50%);width:100%;max-width:var(--max-width);background:#0a0a1ad9;backdrop-filter:blur(20px) saturate(1.4);-webkit-backdrop-filter:blur(20px) saturate(1.4);border-top:1px solid rgba(255,45,120,.15);display:flex;justify-content:space-around;padding:8px 0 env(safe-area-inset-bottom,8px);z-index:100}.nav-item{display:flex;flex-direction:column;align-items:center;gap:2px;font-size:11px;color:var(--color-text-secondary);padding:4px 12px;transition:color .2s,text-shadow .2s}.nav-item.active{color:var(--color-neon-pink);text-shadow:0 0 10px rgba(255,45,120,.6)}.nav-item svg{width:22px;height:22px}.container{padding:0 16px}.pb-nav{padding-bottom:var(--bottom-nav-offset)}.neon-surface{position:relative;overflow:hidden;isolation:isolate;background:linear-gradient(135deg,rgba(0,229,255,.08),transparent 44%),linear-gradient(145deg,rgba(255,45,120,.08),transparent 58%),var(--color-card);border:1px solid rgba(0,229,255,.14);box-shadow:var(--shadow-card),0 0 0 1px #00e5ff14,0 0 24px #00e5ff0f;transition:transform var(--motion-neon-fast) ease,box-shadow var(--motion-neon-fast) ease,border-color var(--motion-neon-fast) ease}.neon-surface:before{content:"";position:absolute;inset:-35% auto auto -12%;width:58%;height:190%;background:radial-gradient(circle,rgba(0,229,255,.18),transparent 62%);opacity:.7;pointer-events:none;transform:rotate(18deg);z-index:-1}.neon-surface:after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:linear-gradient(120deg,transparent 20%,rgba(255,255,255,.1) 50%,transparent 80%);opacity:0;transform:translate(-140%)}.neon-surface:hover{transform:translateY(-2px);border-color:#00e5ff52;box-shadow:0 0 12px #00e5ff29,0 0 26px #b44dff1f}.neon-surface:hover:after{opacity:1;transform:translate(140%);transition:transform var(--motion-neon-slow) ease,opacity var(--motion-neon-fast) ease}.neon-chip{position:relative;overflow:hidden;flex-shrink:0;background:#ffffff08;border:1px solid rgba(180,77,255,.15);box-shadow:0 0 #ff2d7800;transition:transform var(--motion-neon-fast) ease,border-color var(--motion-neon-fast) ease,box-shadow var(--motion-neon-fast) ease,color var(--motion-neon-fast) ease,background var(--motion-neon-fast) ease}.neon-chip:hover{transform:translateY(-1px);border-color:#00e5ff47;box-shadow:0 0 14px #00e5ff1f}.neon-chip.is-active{background:linear-gradient(135deg,var(--color-neon-pink),var(--color-neon-purple));color:#fff;border-color:transparent;box-shadow:var(--glow-pink)}.neon-chip.is-pressed{transform:scale(.96)}.neon-enter{animation:neon-rise-in var(--motion-neon-base) cubic-bezier(.2,.8,.2,1) both;animation-delay:var(--enter-delay, 0ms)}.neon-filter-in{animation:neon-filter-in .32s cubic-bezier(.2,.8,.2,1) both;animation-delay:var(--filter-delay, 0ms)}.neon-filter-out{animation:neon-filter-out var(--motion-neon-fast) cubic-bezier(.4,0,1,1) both;animation-delay:var(--filter-delay, 0ms)}@keyframes neon-rise-in{0%{opacity:0;transform:translateY(18px) scale(.96);filter:blur(8px)}to{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}}@keyframes neon-filter-in{0%{opacity:0;transform:translateY(14px) scale(.97);filter:blur(6px)}to{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}}@keyframes neon-filter-out{0%{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}to{opacity:0;transform:translateY(14px) scale(.94);filter:blur(6px)}}@media(prefers-reduced-motion:reduce){.neon-surface,.neon-surface:after,.neon-chip,.neon-enter,.neon-filter-in,.neon-filter-out{animation:none!important;transition:none!important}}
