:root{--bg:#101014;--panel:#1b1b23;--line:#303039;--muted:#b2b1c0;--body:'Space Grotesk',sans-serif;--violet:#b79bff}
body{background:radial-gradient(ellipse at 90% 8%,#6b39ab0d,transparent 35%),var(--bg)}
header{height:94px;background:#101014e8;position:relative;z-index:4;border-color:#ffffff10}
.brand{font-size:29px;font-weight:700;letter-spacing:-1.8px;gap:10px}.brand>span:not(.pokeball){margin-left:-10px}.brand .pokeball{width:28px;height:28px;margin-right:3px}.pokeball:before{top:11px}.pokeball:after{top:7px;left:7px}nav{font-size:12px}nav a{position:relative}nav .active{border-bottom-color:transparent}nav .active:after{content:'';position:absolute;bottom:20px;left:calc(50% - 3px);width:6px;height:6px;border-radius:50%;background:var(--lime);box-shadow:0 0 12px #d4ff5877}.profile{border-color:#ffffff20;background:#ffffff04}.avatar{box-shadow:0 0 20px #d4ff5820}
.hero{min-height:680px;position:relative;grid-template-columns:1.05fr 1fr;background-image:radial-gradient(#ffffff12 .7px,transparent .7px);background-size:23px 23px;background-position:15px 15px}.hero:after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,#101014 5%,transparent 60%);z-index:0}.hero-copy{padding-top:49px;padding-bottom:44px;position:relative;z-index:2}.hero .eyebrow{font-size:9px;color:#cfccd9;letter-spacing:2px}.hero h1{font-size:clamp(80px,8.6vw,132px);line-height:.86;letter-spacing:-1px;margin:29px 0 25px;font-weight:800}.hero h1 em{font-style:normal;color:transparent;-webkit-text-stroke:1.5px #c6b2f2}.hero h1 span{color:var(--lime);text-shadow:0 0 45px #d4ff580c}.hero p{font-size:13px;line-height:1.8}.hero-actions{margin-top:25px;gap:25px}.btn{border-radius:9px;min-height:46px;letter-spacing:.1px}.btn.lime{box-shadow:0 4px 24px #d4ff5810}.btn.lime:hover{box-shadow:0 6px 32px #d4ff5830}.hero-actions .text-link{border-bottom:1px solid #777084;padding:8px 0;font-size:12px}.hero-stats{margin-top:34px;gap:30px}.hero-stats>div{padding-right:27px;border-color:#ffffff18}.hero-stats b{font-size:25px}.hero-stats small{font-size:8px;color:#9c99af;letter-spacing:.8px}.hero-art{z-index:1;margin-right:5%;overflow:visible}.pokeball-stage{background:radial-gradient(ellipse at 50% 44%,#8452d54a,transparent 62%)}
.hero-pokeball{height:560px;position:relative;top:26px;filter:drop-shadow(12px 30px 34px #0007);animation:ballSpin 20s linear infinite;transform-origin:center}.hero-ball-word{top:142px;left:0;font-size:180px;letter-spacing:8px;-webkit-text-stroke:1px #d9c8ff21;transform:rotate(-9deg)}.pokeball-stage .orbit-one{width:400px;height:400px;top:94px;border-color:#b79bff25;transform:translateX(-50%) rotate(-15deg)}.pokeball-stage .orbit-two{width:520px;height:520px;top:34px;border-color:#b79bff20}.orbit-one:after{content:'✦';font-size:17px;color:#c9b7ff}.pokeball-stage .floating-tag{top:45px;right:9%;background:#231c33a6;border-color:#b79bff44;backdrop-filter:blur(10px);font-size:8px;letter-spacing:1.3px}.pokeball-stage .art-footer{bottom:49px;left:7%;right:4%;gap:15px}.pokeball-stage .art-footer h2{font-size:26px;margin-top:10px}.pokeball-stage .art-footer small{color:#b5a6c9;font-size:8px}.ball-edition{border-color:#b79bff44;background:#b79bff0d;color:#d4bfff;font-size:7px}.pokeball-stage .coordinate{bottom:25px;color:#8c819f;font-size:7px}
.orbit-card{position:absolute;display:flex;align-items:center;gap:8px;padding:9px 12px 9px 5px;border:1px solid #e0caff38;background:linear-gradient(130deg,#2e253be8,#201e29e8);border-radius:13px;backdrop-filter:blur(15px);box-shadow:0 16px 45px #0005;z-index:2;min-width:166px}.orbit-card img{width:55px;height:55px;object-fit:contain;filter:drop-shadow(0 5px 4px #0006)}.orbit-card b{font-family:var(--display);font-size:20px;letter-spacing:1px}.orbit-card small{display:block;font-size:6px;color:#b6a8c7;letter-spacing:1px;margin-top:3px}.orbit-card>span{color:var(--lime);font-size:14px;margin-left:9px}.orbit-card-pika{top:132px;left:-14px;transform:rotate(-10deg);animation:miniFloat 9s ease-in-out infinite}.orbit-card-gengar{bottom:156px;right:-8px;transform:rotate(8deg);animation:miniFloat 10s ease-in-out infinite reverse}.hero-spark{position:absolute;z-index:2;color:#c9aeff;pointer-events:none}.spark-one{font-size:35px;top:100px;right:45px}.spark-two{font-size:24px;bottom:210px;left:30px;color:var(--lime)}
.ticker{height:51px;background:#d4ff58;position:relative;z-index:3;box-shadow:0 -6px 30px #0003;font-size:21px}.section{padding-top:85px;padding-bottom:85px}.section>.section-heading>.eyebrow,.section-heading .eyebrow{color:#b69be7}.section h2{font-size:54px;letter-spacing:.3px}.section h2 span{color:#aaa1bc}.section-intro p,.section-heading p{font-size:13px}.cards{gap:24px}.nft-card{border-radius:18px;padding:15px;background:radial-gradient(ellipse at 45% 30%,var(--glow),transparent 70%),linear-gradient(140deg,var(--tint),#15131e 75%);box-shadow:inset 0 0 20px #ffffff03,0 15px 30px #0002}.nft-card:before{background:linear-gradient(120deg,transparent 10%,#ffffff0d 25%,transparent 45%,#bfa4ff0e 65%,transparent 85%);background-size:200% 200%;animation:holo 12s ease-in-out infinite}.nft-card:hover{transform:translateY(-10px) rotate(-1deg);box-shadow:0 20px 45px #0008,inset 0 0 30px #ffffff06}.card-art{height:235px}.card-art img{transition:transform .4s}.nft-card:hover .card-art img{transform:scale(1.07) translateY(-4px)}.card-top{font-size:10px}.card-top .rarity{font-size:8px;padding:5px 8px;background:#ffffff08}.card-name h3{font-size:30px}.card-stats{font-size:10px;padding:15px 0}.card-stats b{font-size:13px}.collect-btn{font-size:11px;min-height:43px;border-radius:8px;background:#ffffff08}.type-badge{font-size:9px;padding:6px 8px}.collection-note{font-size:11px;color:#9990ab}.collection-note>span:first-child{color:#c4b4de}
.catalog-section{background:linear-gradient(160deg,#1d1a26,#17171d);border-color:#ffffff10}.catalog-total{color:#b6afc3;font-size:12px}.search{background:#111017;border-color:#ffffff20;border-radius:10px;padding:0 17px}.search input{font-size:13px;padding:17px 0}.search>span{color:#bca5e3}select{background:#272230;border-color:#ffffff20;color:#ddd4eb;font-size:12px;min-height:46px;border-radius:10px}.type-filter{border-color:#ffffff20;font-size:11px;padding:10px 15px;color:#c9bfd7}.type-filter:hover{border-color:#b79bff66;background:#b79bff10}.type-filter.active{background:var(--lime)}.results-line{font-size:11px;color:#b0a6bf}.reset{color:#c5b9d5;font-size:11px}.pokemon-grid{gap:16px}.pokemon-tile{background:linear-gradient(150deg,#262130,#1c1b23);border-color:#ffffff14;border-radius:12px;padding:15px}.pokemon-tile:hover{background:linear-gradient(150deg,#393048,#24212c);border-color:#b79bff77;box-shadow:0 10px 25px #0003}.tile-top{font-size:10px;color:#ac9cbd}.pokemon-tile img{height:130px;transition:transform .25s}.pokemon-tile:hover img{transform:scale(1.08)}.pokemon-tile h3{font-size:13px}.pokemon-tile .type-badge{font-size:8px;background:#ffffff08}.load-more{border-color:#6c5a86;color:#d1c2e4}.collection-section{background:radial-gradient(ellipse at 0 50%,#6f45a211,transparent 65%)}.arena-section{background:radial-gradient(ellipse at 95% 15%,#b79bff26,transparent 65%),linear-gradient(130deg,#24202e,#15171a);border-color:#b79bff44;border-radius:22px;padding:45px;margin-bottom:65px}.arena-heading .eyebrow{color:#c1b1d9}.arena-heading h2{font-size:67px}.arena-heading p{font-size:13px}.arena-label{border-color:#b79bff55;color:#d6c7ea}.arena-label small{color:#b0a1c4}.battle-panel{border-color:#ffffff18;gap:35px}.fighter-label{color:#c2b7d2;font-size:10px}.fighter-label select{font-size:12px;min-height:38px}.fighter>small{font-size:11px;color:#cabfda}.fighter>img{height:205px}.fighter-name{font-size:31px}.hp-track{height:8px;background:#3b3545}.battle-center .vs{color:#9e8caf}.battle-center p{color:#c2b5cf;font-size:12px}.round{font-size:10px}.battle-log{font-size:12px;color:#c4b3d6}.arena-section .surrender{border:0;background:transparent;color:#b9a9cc;font-size:10px;text-decoration:underline}.battle-log summary{padding:10px 0}.arena-label{border-radius:6px}.section-intro .text-link{border-bottom:1px solid #d4ff5866;padding-bottom:6px}.profile:hover{border-color:#b79bff77}.fighter-label>span{color:#c8abff}footer{background:#0d0d11;border-color:#ffffff10}footer small{font-size:10px;color:#a69bb6}footer p{font-size:12px;color:#c6bbd3}dialog{background:radial-gradient(ellipse at 50% 0,#67419440,transparent 65%),#1c1824;border-color:#8a69b6;border-radius:22px}#detail-content>p{color:#bcb0cd;font-size:12px}.stat-row{color:#d1c6df;font-size:12px}.stat-row .bar{background:#3c304c}.stat-row .bar>span{background:linear-gradient(90deg,var(--violet),var(--lime))}
@keyframes miniFloat{50%{translate:0 -12px}}@keyframes holo{50%{background-position:100% 100%}}
@media(max-width:1100px) and (min-width:761px){.hero h1{font-size:103px}.hero-pokeball{height:530px}.orbit-card{min-width:145px;padding:7px}.orbit-card img{width:42px;height:42px}.orbit-card b{font-size:17px}.orbit-card-pika{left:-10px;top:160px}.orbit-card-gengar{bottom:178px;right:0}.hero-stats{gap:18px}.hero-stats>div{padding-right:18px}.pokeball-stage .art-footer{bottom:60px}.card-art{height:180px}.card-name h3{font-size:25px}.section h2{font-size:47px}}
@media(max-width:760px){header{height:73px}.brand{font-size:26px}.brand .pokeball{width:26px;height:26px}nav{font-size:10px;gap:8px;background:#101014}nav .active:after{bottom:6px}.hero{margin-top:44px;min-height:0;grid-template-columns:1fr;background-size:22px 22px}.hero:after{background:linear-gradient(180deg,#10101433,transparent)}.hero-copy{padding:35px 6% 0}.hero h1{font-size:clamp(76px,20.2vw,126px);line-height:.88;letter-spacing:-.5px;margin:26px 0 23px}.hero .eyebrow{font-size:8px;letter-spacing:1.3px}.hero p{font-size:12px;line-height:1.9}.hero-actions{gap:24px;margin-top:23px}.hero-actions .btn{font-size:12px;padding:14px 18px}.hero-stats{justify-content:space-between;gap:12px;margin-top:30px}.hero-stats>div{padding-right:14px;flex:1}.hero-stats small{font-size:8px;line-height:1.6;letter-spacing:.3px}.hero-stats b{font-size:25px}.hero-art{height:445px;margin:8px 0 0}.hero-pokeball{height:365px;max-width:440px;top:11px}.hero-ball-word{font-size:150px;top:80px}.pokeball-stage .orbit-one{top:49px;width:280px;height:280px}.pokeball-stage .orbit-two{top:7px;width:360px;height:360px}.pokeball-stage .floating-tag{top:20px;right:6%;font-size:7px}.orbit-card{min-width:126px;padding:7px 8px 7px 3px;gap:4px;border-radius:10px}.orbit-card img{height:38px;width:38px}.orbit-card b{font-size:17px}.orbit-card small{font-size:6px;letter-spacing:.3px}.orbit-card>span{font-size:11px;margin-left:3px}.orbit-card-pika{top:90px;left:5%}.orbit-card-gengar{bottom:115px;right:5%}.spark-one{top:66px;right:28px;font-size:25px}.spark-two{bottom:150px;left:27px;font-size:18px}.pokeball-stage .art-footer{bottom:38px;left:6%;right:6%;display:flex}.pokeball-stage .art-footer h2{font-size:22px;max-width:220px}.pokeball-stage .art-footer small{font-size:7px;letter-spacing:.8px}.pokeball-stage .coordinate{bottom:17px;left:6%;font-size:7px;letter-spacing:1.1px}.ball-edition{font-size:7px;padding:8px;display:block}.ticker{font-size:18px;height:44px}.section{padding:53px 5%}.section h2{font-size:40px}.section-heading p,.section-intro p{font-size:12px;line-height:1.8}.cards{gap:12px}.nft-card{padding:11px;border-radius:14px}.card-art{height:167px}.card-top{font-size:8px;gap:4px}.card-top .rarity{font-size:6px;padding:4px}.card-name h3{font-size:24px}.card-name .type-badge{font-size:7px;padding:5px}.card-stats{font-size:8px;padding:13px 0}.card-stats b{font-size:11px}.collect-btn{font-size:10px;min-height:43px;padding:8px}.collection-note{font-size:10px;line-height:1.7}.catalog-total{font-size:12px}.catalog-controls{gap:9px}.catalog-controls select{font-size:11px;min-height:44px;min-width:0}.search input{font-size:12px}.type-filter{font-size:11px;padding:10px 13px}.results-line{font-size:10px}.pokemon-grid,.collection-section .pokemon-grid{grid-template-columns:repeat(2,1fr);gap:12px}.pokemon-tile{padding:13px}.pokemon-tile img{height:125px}.pokemon-tile h3{font-size:13px}.pokemon-tile .type-badge{font-size:9px;padding:5px}.tile-top{font-size:10px}.arena-section{padding:28px 18px;margin-bottom:45px;border-radius:18px}.arena-heading h2{font-size:49px}.arena-heading p{font-size:12px}.battle-panel{gap:18px}.fighter-label{font-size:9px}.fighter-label select{font-size:11px;min-height:40px}.fighter>img{height:150px}.fighter-name{font-size:25px}.fighter>small{font-size:10px}.battle-center .vs{font-size:35px}.battle-center p{font-size:11px}.round{font-size:9px}#battle-actions .btn{font-size:12px;min-height:44px;padding:10px 13px}.arena-section .surrender{flex-basis:100%;min-height:36px}.battle-log{font-size:12px}footer{padding:30px 5%}footer p{font-size:11px}footer small{font-size:10px}#detail-content h2{font-size:39px}.stat-row{font-size:12px}}
@media(max-width:360px){.hero h1{font-size:21vw}.hero-actions{gap:16px}.hero-actions .text-link{font-size:11px}.hero-stats small{font-size:7px}.hero-stats>div{padding-right:10px}.hero-stats b{font-size:23px}.card-top{font-size:7px}.card-top .rarity{font-size:5px}.card-name h3{font-size:21px}.orbit-card{min-width:114px}.orbit-card img{width:32px;height:32px}.orbit-card b{font-size:15px}.pokeball-stage .art-footer h2{font-size:20px}.ball-edition{display:none}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}

@keyframes ballSpin{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}
