/* VAULTED trainer club — stadium light, collector display, clear game controls. */
:root{--paper:#f3f6fa;--surface:#fff;--ink:#172b42;--muted:#657489;--line:#dce3ec;--red:#eb403c;--blue:#2269d1;--shadow:0 8px 26px #1933540c;--radius:24px}
body{background:var(--paper);color:var(--ink)}
.site-body{background:radial-gradient(ellipse at 92% 0,#e5ecff 0,transparent 35%),var(--paper);overflow-x:clip}
.site-body:before{background:linear-gradient(125deg,transparent 68%,#dce6fa40 68%,#dce6fa40 69%,transparent 69%);mask-image:none;inset:0}.site-body:after{display:none}
.topbar{height:86px;background:#fffffff2;border-bottom:1px solid #e0e7ef;padding:0 38px}.wordmark{font-weight:800;letter-spacing:-1.5px}.season{color:#66768b;letter-spacing:.16em}.wallet-button{background:#172c44;border:0;box-shadow:0 5px 15px #19334b16}
.preview-strip{background:#eaf0f7;border-color:#dce5f0;color:#52677f;padding-top:9px;padding-bottom:9px}.preview-strip b{color:#be3230}.eyebrow.red{color:#c83736}.red{color:var(--red)}
main{padding-top:31px;padding-bottom:46px}h1,h2,h3{font-weight:700;letter-spacing:-.02em}.page-head{margin-bottom:30px}.page-head h1{font-size:60px;line-height:1.04}.page-head p{font-size:16px;line-height:1.6;margin-top:15px}.page-head em{color:var(--red)}
.button{border:1px solid #d5deea;border-radius:12px;background:#fff;box-shadow:0 3px 8px #203a5b09;min-height:51px;font-size:14px;padding:14px 22px;transition:transform .18s,box-shadow .18s,background .18s}
.button:hover{transform:translateY(-2px);box-shadow:0 8px 18px #203a5b19}.button:active{transform:translateY(0)}.button.primary{background:linear-gradient(125deg,#f14e47,#df3034);border-color:#ef554c;box-shadow:0 7px 16px #df303426;color:white}.button.primary:hover{box-shadow:0 9px 24px #e3353940}.button.blue{background:linear-gradient(125deg,#3586f1,#225fc2);border-color:#4c8be4}.button:disabled{box-shadow:none;transform:none}.text-button{font-size:14px}
.club-welcome,.arena-heading{display:flex;align-items:center;justify-content:space-between;gap:22px;margin-bottom:26px}.club-welcome .eyebrow,.arena-heading .eyebrow{font-size:10px;letter-spacing:.15em;margin-bottom:10px}.club-welcome h1,.arena-heading h1{font-size:47px;line-height:1}.mode-pill{display:inline-flex;align-items:center;gap:9px;background:#fff;border:1px solid #dce5ef;padding:9px 13px;border-radius:30px;font-size:12px;color:#556b84;white-space:nowrap}.mode-pill i{height:6px;width:6px;background:#387fe1;box-shadow:0 0 0 4px #387fe10e;border-radius:50%}
.home-grid{grid-template-columns:minmax(0,1.9fr) minmax(290px,1fr);gap:24px}.club-hero{min-height:580px;padding:35px;border:0;background:radial-gradient(ellipse at 90% 8%,#ff936333,transparent 45%),linear-gradient(122deg,#ea3e37 0%,#c12e3e 49%,#182b54 100%);box-shadow:0 14px 32px #94253225;border-radius:25px;color:white;isolation:isolate}
.club-hero:before{display:none}.club-hero:after{background:repeating-linear-gradient(-36deg,transparent 0 11px,#ffffff06 11px 12px);opacity:1;z-index:-1}.hero-emblem{position:absolute;border:46px solid #ffffff0b;width:580px;height:580px;border-radius:50%;right:-190px;top:-120px;z-index:-1}.hero-emblem:after{content:"";position:absolute;inset:148px;border-radius:50%;border:20px solid #ffffff0a}
.club-hero-copy{position:relative;z-index:3;max-width:350px;pointer-events:none}.club-hero-copy a{pointer-events:auto}.hero-label{display:inline-flex;align-items:center;gap:8px;font-size:10px;letter-spacing:.12em;font-weight:700;padding:7px 10px;background:#ffffff13;border:1px solid #ffffff27;border-radius:6px;color:#f2f7ff}.club-hero h2{font-size:clamp(68px,5.6vw,92px);line-height:.88;font-weight:800;letter-spacing:-.025em;margin:30px 0 21px}.club-hero h2 em{color:#fff1da}.club-hero p{font-size:16px;line-height:1.55;color:#fff1ee;max-width:270px}.club-hero .hero-actions{margin-top:25px;gap:14px}.club-hero .button.primary{background:#fff;color:#b82c36;border:0;box-shadow:0 8px 20px #70102c25;gap:28px}.club-hero .text-button{color:#fff5ef;font-size:13px}.hero-pokemon{position:absolute;right:0;top:35px;width:345px;z-index:1;filter:drop-shadow(0 16px 24px #1d183133);animation:clubFloat 7s ease-in-out infinite}
.club-hero .hero-fan{width:335px;right:4px;bottom:48px;height:290px;transform:scale(.96);z-index:2}.club-hero .hero-fan .game-card{width:153px;border:0;border-radius:8px}.club-hero .hero-fan .game-card:nth-child(1){left:4px;transform:rotate(-17deg);bottom:0}.club-hero .hero-fan .game-card:nth-child(2){left:88px;bottom:25px;transform:rotate(5deg)}.club-hero .hero-fan .game-card:nth-child(3){left:188px;bottom:-5px;transform:rotate(19deg)}.club-hero .hero-fan .slab-stage{padding:3px;background:#b2c0d8}
.hero-bottom{position:absolute;bottom:0;left:0;right:0;border-top:1px solid #ffffff1f;display:flex;align-items:center;justify-content:space-between;padding:15px 28px;font-size:9px;letter-spacing:.1em;background:#19244022;color:#ffe5e1;z-index:4}.hero-bottom span:first-child{display:flex;gap:8px;align-items:center}.hero-bottom i{width:5px;height:5px;background:#ffd6c5;border-radius:50%;box-shadow:0 0 8px #ffcdc5}
.side-stack{gap:24px;grid-template-rows:1.04fr 1fr}.passport,.gacha-teaser{border:1px solid #dce4ee;box-shadow:0 8px 26px #19335407;border-radius:24px;padding:25px}.panel-kicker{display:flex;align-items:center;justify-content:space-between;gap:12px}.panel-kicker .eyebrow{font-size:10px;color:#6a7a90;letter-spacing:.13em}.level-pill{font-size:10px;font-weight:700;background:#edf3ff;color:#2d63b6;padding:5px 8px;border-radius:6px}.passport-title{gap:15px;margin:21px 0}.trainer-avatar{position:relative;box-shadow:none;transform:rotate(-5deg);border:0;border-radius:17px;background:linear-gradient(140deg,#ff6656,#e42f39);width:64px;height:67px;font-size:43px;font-weight:700}.trainer-avatar span{position:absolute;font-size:22px;right:0;top:-4px;color:#ffd9a6}.passport-title h2{font-size:34px;line-height:.96}.passport-title small{text-transform:none;letter-spacing:0;font-size:11px;color:#7b899b}.progress{height:5px;background:#e9eef5;border-radius:20px}.progress>span{background:linear-gradient(90deg,#e73d3a,#ff9274);border-radius:20px}.progress-copy{font-size:11px;color:#7c899b}.passport-bottom{margin-top:17px;font-size:12px;color:#7d8ba0;gap:17px}.passport-bottom b{color:#253f60}.passport-bottom button{font-size:12px;color:#d13c3c}
.gacha-teaser{background:radial-gradient(ellipse at 95% 75%,#bee0ff 0,transparent 65%),linear-gradient(135deg,#eaf5ff,#e0edff);overflow:hidden;border-color:#ccdef7}.gacha-teaser:before{content:"";position:absolute;width:240px;height:240px;right:-60px;bottom:-80px;border:22px solid #fff6;border-radius:50%;pointer-events:none}.gacha-teaser .eyebrow{font-size:10px;color:#386bab}.gacha-teaser h2{font-size:40px;line-height:1;margin:23px 0;color:#173658;position:relative;z-index:2}.gacha-teaser img{width:190px;right:-6px;bottom:-20px;filter:drop-shadow(0 10px 10px #24547720)}.round-link{color:#2b568f;gap:11px;font-size:12px;position:relative;z-index:2}.round-link b{background:#fff;color:#2b568f;width:39px;height:39px;border-radius:12px;font-size:23px;box-shadow:0 4px 10px #517da81a}
.quick-paths{gap:16px;background:none;border:0;overflow:visible;margin:26px 0 34px}.quick-paths a{border:1px solid #dce5ef;border-radius:17px;background:#fff;padding:20px;gap:15px;box-shadow:0 5px 15px #19335404;transition:transform .2s,box-shadow .2s}.quick-paths a+a{border-left:1px solid #dce5ef}.quick-paths a:hover{background:#fff;transform:translateY(-3px);box-shadow:0 10px 24px #1933540f}.quick-paths .path-icon{--glyph-paper:#fff;--glyph-red:#e95549;--glyph-ink:#25466b;--glyph-blue:#c4e0ef;background:#eff3fa;transform:none;width:52px;height:54px;border-radius:15px}.quick-paths .nav-glyph{width:33px;height:33px}.quick-paths strong{font-family:"Barlow Condensed";font-size:26px;line-height:1.2}.quick-paths small{font-size:9px;color:#8a97a8}.quick-paths p{font-size:12px;margin-top:5px}.path-arrow{font-size:21px;color:#7290b0}
.section-heading{margin-top:34px}.section-heading .eyebrow{font-size:10px}.section-heading h2{font-size:37px}.section-heading a{font-size:13px;color:#3562a0}.lineup a{border:1px solid #dbe4ef;background:#fff;border-radius:16px;padding:15px 20px;gap:17px;box-shadow:0 4px 14px #142f4805}.lineup img{height:82px;width:54px;filter:drop-shadow(0 4px 3px #18283a20)}.lineup strong{font-size:14px}.lineup small{font-size:12px;color:#75839a}.slot-index{color:#a2b1c6;font-size:11px}.lineup-arrow{margin-left:auto;color:#7290b0;font-size:22px}
/* The arena is a place to play, with a lit stage and an immediately usable team. */
.arena-hub{display:grid;grid-template-columns:minmax(0,1.85fr) minmax(320px,1fr);gap:24px;align-items:stretch}.stadium-hero{position:relative;isolation:isolate;overflow:hidden;border-radius:26px;background:radial-gradient(ellipse at 77% 57%,#425a9c70,transparent 47%),linear-gradient(128deg,#122843,#182e52 50%,#161d3c);min-height:478px;color:white;box-shadow:0 14px 28px #152e5524;border:1px solid #233f64;padding:33px}
.stadium-lines{position:absolute;inset:0;z-index:-1;background:repeating-linear-gradient(125deg,transparent 0 60px,#9db3ff06 60px 61px),linear-gradient(100deg,transparent 45%,#5e82da06 45% 70%,transparent 70%)}.stadium-orbit{position:absolute;width:420px;height:420px;border-radius:50%;right:-35px;top:3px;border:1px solid #769de732;box-shadow:0 0 0 30px #86a3e804,0 0 0 31px #87a7e90e,0 0 0 65px #87a7e903,0 0 0 66px #87a7e90d;z-index:-1}.stadium-orbit:before{content:"";position:absolute;inset:28px;border:2px dashed #92b5ff22;border-radius:50%;animation:spin 90s linear infinite}
.stadium-copy{position:relative;z-index:3;max-width:330px}.stadium-copy h2{font-size:76px;line-height:.91;letter-spacing:-.025em;margin:27px 0 20px;font-weight:800}.stadium-copy h2 em{color:#ff6158}.stadium-copy p{color:#afc1dd;font-size:16px;line-height:1.55}.live-dot{width:5px;height:5px;background:#ffa17f;box-shadow:0 0 8px #ff8e75;border-radius:50%}.battle-start{margin-top:25px;min-width:207px;justify-content:space-between;font-size:16px;min-height:57px}.battle-subnote{display:block;color:#8ca4c5;font-size:11px;margin-top:13px}
.rival-art{position:absolute;right:7px;bottom:74px;width:43%;height:320px;z-index:2;text-align:center}.rival-art img{position:absolute;width:100%;height:280px;object-fit:contain;bottom:15px;left:0;filter:drop-shadow(0 22px 22px #090d2990);animation:clubFloat 6s ease-in-out infinite}.rival-label{position:absolute;left:0;right:0;top:0;color:#8ba5d0;letter-spacing:.16em;font-size:8px;font-weight:700}.rival-name{position:absolute;bottom:-14px;left:0;right:0;font-family:"Barlow Condensed";font-weight:700;font-size:29px;letter-spacing:.13em;color:#dce6ff;line-height:1}.rival-name span{display:block;font-family:"DM Sans";font-size:8px;letter-spacing:.22em;margin-top:7px;color:#8fa7d0}
.stadium-floor{position:absolute;bottom:51px;right:-45px;width:480px;height:128px;transform:rotate(-7deg);border:2px solid #e24e6f55;border-radius:50%;box-shadow:0 0 25px #f1487220,inset 0 0 25px #bf42701a;z-index:1;background:radial-gradient(ellipse,#cf4c7520,transparent 67%)}.stadium-floor:after{content:"";position:absolute;inset:20px 60px;border:1px solid #ffaac129;border-radius:50%}.stadium-footer{position:absolute;left:0;right:0;bottom:0;padding:17px 29px;background:#0b1e3590;border-top:1px solid #6683ab30;display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:9px;letter-spacing:.1em;color:#90aaca;z-index:4}.stadium-footer a{color:#d1e5ff;letter-spacing:0;font-size:12px}
.squad-panel{background:#fff;border:1px solid #dce4ed;border-radius:26px;padding:28px 24px;display:flex;flex-direction:column;box-shadow:0 8px 22px #1f3b5e05}.squad-count{font-size:12px;color:#d24a42;border-radius:6px;background:#fff0ed;padding:4px 8px;font-weight:700}.squad-panel h2{font-size:42px;line-height:.96;margin:20px 0 24px}.squad-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:23px}.squad-card{display:flex;flex-direction:column;align-items:center;position:relative;min-width:0;background:linear-gradient(#f5f8fc,#edf2f9);border:1px solid #e0e7f0;border-radius:12px;padding:21px 5px 11px;transition:transform .2s,border-color .2s}.squad-card:hover{transform:translateY(-5px);border-color:#849fbf}.squad-number{position:absolute;top:5px;left:8px;font-size:8px;color:#8799ae}.squad-card img{width:100%;height:143px;object-fit:contain;filter:drop-shadow(0 5px 3px #253b541f)}.squad-card strong{font-size:10px;text-align:center;line-height:1.3;margin-top:11px;overflow-wrap:anywhere}.squad-card small{font-size:9px;color:#7d8da2;margin-top:4px}.squad-empty{height:143px;display:grid;place-items:center;font-size:30px;color:#9eafc4}.squad-edit{margin-top:auto;justify-content:space-between;background:#eff4fc;border-color:#dce5f1;box-shadow:none;color:#365980}.squad-panel>p{text-align:center;font-size:10px;color:#8a97a8;margin-top:12px}
.arena-bottom{display:grid;grid-template-columns:1.85fr 1fr;gap:24px;margin-top:24px}.move-primer{background:#fff;border:1px solid #dce4ee;border-radius:21px;padding:23px 27px}.move-primer .eyebrow{font-size:9px}.move-primer h2{font-size:29px;margin-top:10px}.move-chips{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:22px}.move-chips>span{display:flex;gap:10px;align-items:center}.move-chips b{display:grid;place-items:center;width:37px;height:40px;border-radius:10px;background:#fff0ed;color:#d74b41;font-size:22px}.move-chips>span:nth-child(2) b{background:#eaf2ff;color:#3473cd}.move-chips>span:nth-child(3) b{background:#eef0fa;color:#777bac}.move-chips strong{font-size:13px;line-height:1.4}.move-chips small{display:block;color:#8391a4;font-size:10px;font-weight:400;white-space:nowrap}
.ranked-teaser{border-radius:21px;background:linear-gradient(125deg,#e5edfa,#ebeff9);border:1px solid #d7e2f1;padding:23px 25px;display:flex;align-items:center;gap:15px}.ranked-teaser .eyebrow{font-size:9px;color:#6b83a6}.ranked-teaser h2{font-size:29px;margin:10px 0}.ranked-teaser p{font-size:12px;line-height:1.65;color:#7486a0}.ranked-teaser .button{font-size:11px;white-space:nowrap;min-height:39px;padding:9px 12px;background:#fff8;border-color:#c7d5e8;align-self:flex-end}
/* Battle surfaces use actual card scans on opposing red / blue podiums. */
.battle-top{margin-bottom:22px;color:#607592;font-size:13px}.battle-top .tag{background:#fff;border:1px solid #dce4ed;color:#315581;padding:7px 13px;border-radius:20px;font-size:10px}.battle-stage{position:relative;isolation:isolate;overflow:hidden;padding:28px 35px 24px;border:1px solid #2b4669;border-radius:25px;background:radial-gradient(ellipse at 22% 53%,#982f4b37,transparent 43%),radial-gradient(ellipse at 80% 48%,#2867ba44,transparent 44%),linear-gradient(125deg,#122840,#142b4b);box-shadow:0 14px 30px #102a4b20;color:white;grid-template-columns:1fr 62px 1fr;gap:12px}
.battle-stage:before{content:"";position:absolute;inset:0;z-index:-1;background:repeating-linear-gradient(120deg,transparent 0 45px,#aac4ff06 45px 46px)}.battle-stage:after{content:"";position:absolute;inset:70px -70px -290px;border:2px solid #8eb3ef13;border-radius:50%;box-shadow:0 0 0 55px #81a6e803,0 0 0 56px #81a6e810;z-index:-1}.fighter{position:relative;min-width:0}.fighter-tag{display:inline-block;background:#fc716218;color:#ffa393;border:1px solid #d967602f;border-radius:20px;padding:6px 11px;font-size:9px;letter-spacing:.1em}.fighter:last-of-type .fighter-tag{color:#8bc6ff;background:#63aaff15;border-color:#669ad536}.fighter h2{font-size:31px;line-height:1.1;height:35px;margin:13px 0 16px;color:#f1f5fc;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fighter>img{height:270px;width:auto;max-width:90%;filter:drop-shadow(0 17px 14px #030e2570);padding:0;animation:cardArrival .55s ease-out}.hp-copy{max-width:290px;margin:22px auto 10px;color:#a3b7d3;font-size:11px}.hp-bar{height:6px;max-width:290px;margin:0 auto;border:0;background:#ffffff18;border-radius:10px;overflow:hidden}.hp-bar>span{background:linear-gradient(90deg,#f45860,#ffae87);box-shadow:0 0 12px #f0787877;border-radius:10px;transition:width .35s}.fighter:last-of-type .hp-bar>span{background:linear-gradient(90deg,#408beb,#80c7ff)}.bench{justify-content:center;gap:12px;margin-top:20px}.bench button{border:1px solid #6785ac35;background:#ffffff08;width:65px;padding:6px;border-radius:10px;color:#b5c6dd;font-size:9px}.bench button.current{border:1px solid #ef9c85;background:#df6a5420;box-shadow:0 0 15px #f286671a}.bench img{height:62px;margin-bottom:4px;filter:drop-shadow(0 3px 2px #09122255)}.bench button:not(:disabled):hover{background:#739aca2e;border-color:#b3c9e4}.versus{background:#223755;border:1px solid #6f88ab4a;width:53px;height:53px;border-radius:16px;transform:rotate(-7deg);box-shadow:0 7px 0 #102139;font-size:30px;color:#edf4ff}
.battle-controls{gap:17px;margin-top:22px}.battle-controls .button{min-height:79px;padding:17px 24px;box-shadow:0 5px 13px #18395e0b}.battle-controls .button strong{font-size:18px}.battle-controls .button small{font-size:12px;opacity:.85}.battle-controls .button:not(.primary):not(.blue){background:#fff;border-color:#cfdbe9;color:#405977}.battle-log{border:1px solid #dce5ef;background:#fff;border-radius:17px;padding:16px 21px;font-size:13px}.battle-log p{border-color:#edf1f6;color:#677e99}.battle-result{background:#10243deF;backdrop-filter:blur(8px);color:white}.battle-result h2{font-size:76px}.battle-result p{color:#bdcce0}.battle-result .eyebrow{color:#ff9d88}.battle-stage.resolved .fighter>img{animation:cardImpact .4s ease}.battle-stage.resolved:after{animation:arenaFlash .4s ease}
/* Collection, gachas and guide carry the same brighter club materials. */
main[data-route=collection] .page-head{min-height:200px;border-bottom:0;background:linear-gradient(110deg,#fff,#edf3ff);border:1px solid #dce6f2;border-radius:23px;padding:26px 29px;margin-bottom:18px;overflow:hidden}main[data-route=collection] .page-head h1{font-size:56px}.collection-art{margin-right:15px}.art-ball:before{background:#eef4ff}.collection-status{color:#637b97}.tabs{background:#e4ebf5;border-color:#dce5f1;border-radius:11px}.tabs button[aria-selected=true]{border-bottom:0;border-radius:8px;background:#fff;color:#244777;box-shadow:0 3px 8px #203b6420}.search{border:1px solid #d7e1ee;border-radius:10px;background:#fff;color:#284666}.slab-card{border:1px solid #d3dfeb;box-shadow:0 6px 20px #1c3e6510;border-radius:17px;background:#fff}.slab-stage{background:radial-gradient(ellipse at 50% 30%,#f4f8fc,#d7e4f1);padding:19px 20px;border-bottom:1px solid #dce6f1}.slab-stage:after{border:0;background:linear-gradient(125deg,#fff4,transparent 40%);pointer-events:none}.slab-stage img{filter:drop-shadow(0 9px 7px #24395135)}.slab-caption{padding:17px}.slab-heading h3{font-size:26px}.grade-badge{border-color:#d5e3f1;background:#eff5fc;color:#376189;border-radius:5px}.slab-caption p{color:#7d8ea1}.source-label{color:#57799e}.card-select{border:1px solid #d0ddeb;background:#fff;border-radius:10px;color:#43617e;box-shadow:none;font-size:12px;min-height:46px;margin-top:10px}.card-select[aria-pressed=true]{background:#243e60;border-color:#3b5c84;box-shadow:0 4px 10px #19365518;color:white}.card-select:hover{background:#eff5fd;border-color:#809dbe}.team-panel{border:1px solid #d6e1ee!important;background:#fff;border-radius:19px;box-shadow:0 7px 22px #18354e0a}.team-panel .eyebrow{font-size:10px;color:#cc423a}.team-panel h2{font-size:35px}.team-slot{border:1px solid #e0e7f0;border-radius:11px;background:#f5f8fd;box-shadow:none}.team-slot strong{font-size:12px}.team-slot small{color:#778ba4}.team-panel .button{margin-top:2px}.empty-state{border-color:#dce5ef;background:#ffffffb0;border-radius:20px}
.machine{border:1px solid #d7e1ee;border-radius:25px;box-shadow:0 12px 30px #1938540b}.machine-art{background:radial-gradient(ellipse at 70% 40%,#ffca9550,transparent 60%),linear-gradient(135deg,#ed5044,#bc304a);height:330px;color:#fff;padding:29px}.machine:nth-child(2) .machine-art{background:radial-gradient(ellipse at 70% 40%,#85cafb45,transparent 60%),linear-gradient(135deg,#307bd4,#244e94)}.machine-art:before{border-color:#ffffff13;border-width:30px;width:340px;height:340px;right:-10px;bottom:-150px}.machine-art .eyebrow{color:#fff5ee;font-size:10px}.machine-art h2{font-size:80px;font-weight:800;margin:35px 0 14px;color:white}.machine-art p{color:#ffded4;font-size:17px}.machine:nth-child(2) .machine-art p{color:#cee9ff}.machine-art img{width:305px;right:-7px;bottom:-27px;filter:drop-shadow(0 10px 15px #25254130)}.machine-price{background:#fff;border:0;border-radius:17px;transform:rotate(7deg);box-shadow:0 6px 17px #182c4730;color:#e3433c;width:78px;height:79px}.machine:nth-child(2) .machine-price{color:#2269c6}.machine-body{padding:27px}.machine-odds{background:#f1f6fc;border-color:#dbe6f1;border-radius:12px}.machine-odds div+div{border-color:#dbe6f1}.machine-odds strong{color:#36577b}.machine-odds small{color:#7b8da1;font-size:11px}.machine-info{font-size:12px;color:#748aa3}.machine-info b{font-size:14px;color:#274564}.machine-note{font-size:12px;color:#77899f}.machine-body .button{margin-top:20px}.vault-address{color:#8395ab!important}.flywheel{background:#e8eff9;border:1px solid #d9e4f1;border-radius:18px;color:#345579}.flywheel p{color:#7087a1}.guide-nav a{border-radius:12px;color:#7086a0}.guide-nav a.active{background:#213e61;color:white}.guide-article{border-color:#dce5ef;border-radius:22px;padding:35px;box-shadow:0 8px 25px #1a365507}.guide-article p{color:#61758f;line-height:1.8}.guide-article table{background:#f5f8fc;border-radius:12px;overflow:hidden}.guide-article th,.guide-article td{border-color:#dfe7f1;color:#526d8c}.guide-article h3{color:#2a496e}.guide-article details{border-color:#e3eaf3}.guide-article a{color:#3169b4}footer{border-top:1px solid #dce5ef;color:#7a8da6}footer>span{color:#304e72}.footer-tag{color:#7a8da6}
dialog{border:1px solid #d5dfeb;background:#fff;border-radius:23px;box-shadow:0 24px 90px #0d213655}dialog::backdrop{background:#0e264b88;backdrop-filter:blur(7px)}.inspect-visual{background:radial-gradient(ellipse,#eef5fc,#dce7f4);border-color:#cbdcea;border-radius:17px}.inspect-copy dl{border-color:#dce5f1}.inspect-copy dl>div{border-color:#dce5f1}.inspect-copy .button{font-size:13px}.inspect-copy>p{color:#7086a0}.stat-row>div{background:#edf3fc;border-radius:13px}.tag{background:#edf4fc;border-color:#d4e2f2;color:#527293}.notice{border:1px solid #d9e4f1;border-radius:15px;background:#edf4fc;color:#5b7799;padding:17px 21px;margin-top:23px}
.entry{background:radial-gradient(ellipse at 55% 30%,#fff 0,#eef4ff 58%,#dae8f8)}.entry:before{border-color:#c3d8f44d}.target-ring{border-color:#e65146}.target-label{background:#f1f6ff;color:#b94946}.entry-copy .eyebrow{color:#5782b3}.entry-copy p{color:#6c809b}.entry-copy h1{font-weight:800;color:#1b3b60}.pokeball{box-shadow:0 10px 20px #36517226}.throw-control small{color:#7d92ad}.entry-corner{color:#7489a3}
@keyframes clubFloat{0%,100%{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-10px) rotate(1deg)}}@keyframes cardArrival{from{opacity:0;transform:translateY(15px) scale(.96)}to{opacity:1;transform:none}}@keyframes cardImpact{35%{transform:translateY(-4px) scale(1.03);filter:drop-shadow(0 0 22px #8fb9ff88)}100%{transform:none}}@keyframes arenaFlash{50%{border-color:#f8c3ba5e}}
@media(min-width:1500px){.club-hero{min-height:606px;padding:38px}.club-hero h2{font-size:88px}.club-hero-copy{max-width:410px}.hero-pokemon{width:380px;right:17px;top:18px}.club-hero .hero-fan{transform:scale(1.1);right:38px;bottom:49px}.stadium-hero{min-height:505px;padding:37px}.stadium-copy h2{font-size:86px}.rival-art{width:43%;height:365px;bottom:74px}.rival-art img{height:325px}.rival-label{font-size:9px}.squad-card img{height:170px}.squad-card strong{font-size:12px}.squad-card small{font-size:10px}}
@media(max-width:1150px){.topbar{padding:0 26px}.club-hero{padding:28px;min-height:555px}.club-hero h2{font-size:75px;max-width:330px}.club-hero-copy{max-width:290px}.club-hero p{font-size:15px;max-width:220px}.hero-pokemon{width:245px;right:-18px;top:135px;opacity:.94}.club-hero .hero-fan{transform:scale(.77);right:-45px;bottom:37px}.hero-bottom{padding:15px 23px}.hero-bottom span:last-child{display:none}.passport,.gacha-teaser{padding:22px}.passport-title h2{font-size:32px}.trainer-avatar{width:49px;height:56px;font-size:34px}.gacha-teaser h2{font-size:36px}.gacha-teaser img{width:161px}.quick-paths a{padding:17px;gap:11px}.quick-paths .path-icon{width:43px;height:47px}.quick-paths strong{font-size:23px}.quick-paths p{font-size:11px}.arena-hub{grid-template-columns:minmax(0,1.55fr) minmax(295px,1fr);gap:20px}.stadium-hero{padding:28px;min-height:490px}.stadium-copy h2{font-size:64px}.stadium-copy{max-width:260px}.stadium-copy p{font-size:15px;max-width:220px}.rival-art{right:-32px;width:47%;bottom:88px;height:280px}.rival-art img{height:242px}.rival-label{display:none}.rival-name{font-size:22px}.stadium-footer{padding:16px 22px;font-size:8px}.stadium-footer a{font-size:11px}.squad-panel{padding:24px 18px}.squad-panel h2{font-size:39px}.squad-cards{gap:6px}.squad-card{padding-left:3px;padding-right:3px}.squad-card img{height:139px}.squad-card strong{font-size:10px}.squad-card small{font-size:8px}.arena-bottom{grid-template-columns:1fr}.move-primer{display:flex;justify-content:space-between;align-items:center;gap:25px}.move-chips{margin:0;gap:15px}.move-primer h2{font-size:26px}.ranked-teaser{padding:19px 24px;justify-content:space-between}.ranked-teaser p{max-width:510px}.ranked-teaser .button{align-self:center}.ranked-teaser h2{font-size:28px}.machine-art img{width:265px;right:-18px}.machine-art h2{font-size:74px}.machine-art p{max-width:145px}}
@media(max-width:900px){.topbar{height:78px}.home-grid{grid-template-columns:1fr}.club-hero{min-height:547px;padding:33px}.club-hero h2{font-size:87px}.club-hero-copy{max-width:330px}.hero-pokemon{width:310px;right:5px;top:55px}.club-hero .hero-fan{transform:scale(.95);right:0;bottom:47px}.side-stack{grid-template-columns:1fr 1fr;grid-template-rows:auto}.passport,.gacha-teaser{min-height:273px}.gacha-teaser h2{font-size:39px}.quick-paths .path-icon{display:none}.quick-paths a{padding:19px}.quick-paths strong{font-size:26px}.quick-paths p{font-size:11px}.arena-hub{grid-template-columns:1fr}.stadium-hero{min-height:450px;padding:31px}.stadium-copy h2{font-size:76px}.stadium-copy{max-width:330px}.rival-art{right:0;width:42%;bottom:77px;height:325px}.rival-art img{height:280px}.rival-label{display:block}.rival-name{font-size:28px}.squad-panel{display:grid;grid-template-columns:1fr 1.3fr;gap:12px 20px;padding:26px}.squad-panel .panel-kicker{grid-column:1}.squad-panel h2{grid-column:1;margin:0;align-self:center}.squad-panel .squad-cards{grid-column:2;grid-row:1/5;margin:0;align-self:center}.squad-panel .squad-edit{grid-column:1;align-self:end;margin:9px 0 0}.squad-panel>p{grid-column:1;margin:0;font-size:9px;text-align:left}.squad-card img{height:140px}.move-primer{display:block}.move-chips{margin-top:19px;gap:14px}.move-primer h2{font-size:29px}.fighter>img{height:240px}.fighter h2{font-size:26px}.bench{gap:8px}.bench button{width:60px}.battle-stage{padding:25px 22px;grid-template-columns:1fr 43px 1fr;gap:5px}.versus{width:42px;height:42px;font-size:27px;border-radius:12px}.machine-art{height:302px}.machine-art h2{font-size:65px;margin-top:48px}.machine-art img{width:233px;right:-30px}.machine-art p{font-size:15px;max-width:114px}.machine-price{width:66px;height:69px}.machine-body{padding:21px}}
@media(max-width:620px){.topbar{padding:0 19px;height:77px}.wordmark{font-size:25px}.wallet-button{font-size:11px;padding:11px 13px;min-height:41px}.preview-strip{font-size:10px;padding:9px 19px}.preview-strip b{font-size:9px}main{padding:24px 17px 30px}.club-welcome,.arena-heading{align-items:flex-start;margin-bottom:23px;gap:10px}.club-welcome h1,.arena-heading h1{font-size:39px}.club-welcome .eyebrow,.arena-heading .eyebrow{font-size:9px;margin-bottom:9px}.club-welcome .mode-pill{display:none}.arena-heading .mode-pill{max-width:119px;white-space:normal;font-size:9px;padding:7px 10px;line-height:1.5;gap:7px}.mode-pill i{flex-shrink:0;width:5px;height:5px}
.club-hero{min-height:720px;padding:26px 24px;border-radius:23px}.club-hero .hero-label{font-size:8px;padding:6px 8px}.club-hero h2{font-size:clamp(49px,15.5vw,66px);line-height:.93;margin:25px 0 18px}.club-hero-copy{max-width:100%}.club-hero p{font-size:14px;max-width:250px}.club-hero .hero-actions{flex-direction:row;align-items:center;gap:15px;margin-top:20px}.club-hero .button.primary{font-size:12px;min-height:47px;padding:12px 13px;gap:12px}.club-hero .text-button{font-size:10px;max-width:85px;line-height:1.5}.hero-pokemon{top:auto;bottom:205px;width:158px;right:-4px;opacity:1;z-index:1}.club-hero .hero-fan{transform:scale(.8);right:16px;bottom:38px;height:274px;width:335px;z-index:2}.club-hero .hero-fan .game-card{width:153px}.hero-bottom{padding:14px 22px;font-size:8px}.side-stack{gap:14px}.passport,.gacha-teaser{padding:17px;min-height:251px;border-radius:19px}.passport .panel-kicker .eyebrow{font-size:8px;letter-spacing:.04em}.level-pill{font-size:8px;padding:3px 5px}.passport-title{display:block;margin:18px 0}.passport-title .trainer-avatar{display:none}.passport-title h2{font-size:30px;margin-bottom:9px}.passport-title small{font-size:10px;line-height:1.3}.progress-copy{font-size:9px}.passport-bottom{font-size:10px;gap:9px;margin-top:15px}.passport-bottom button{font-size:10px}.gacha-teaser .eyebrow{font-size:8px;letter-spacing:.07em}.gacha-teaser h2{font-size:33px;margin-top:21px;max-width:130px}.gacha-teaser img{width:125px;right:-19px;bottom:-3px}.round-link b{width:33px;height:33px;font-size:20px}.gacha-teaser .round-link span{display:none}.quick-paths{grid-template-columns:1fr;gap:11px;margin:23px 0 28px}.quick-paths a{padding:16px 18px;gap:16px;border-radius:15px}.quick-paths a+a{border-top:1px solid #dce5ef}.quick-paths .path-icon{display:grid;width:45px;height:49px;border-radius:12px}.quick-paths strong{font-size:26px}.quick-paths p{font-size:12px}.section-heading h2{font-size:33px}.section-heading .eyebrow{font-size:9px}.section-heading a{font-size:11px;max-width:90px}.lineup a{padding:13px 18px}.lineup img{height:77px;width:49px}.lineup strong{font-size:13px}.lineup small{font-size:11px}.lineup-arrow{font-size:20px}
.stadium-hero{min-height:650px;padding:27px 24px;border-radius:23px}.stadium-copy{max-width:285px}.stadium-copy h2{font-size:68px;line-height:.91;margin:26px 0 17px}.stadium-copy p{font-size:15px;max-width:210px}.stadium-copy .hero-label{font-size:8px}.battle-start{min-width:177px;font-size:14px;min-height:51px;margin-top:20px;padding:13px 18px}.battle-subnote{font-size:10px;max-width:142px;margin-top:10px}.rival-art{width:226px;right:-3px;bottom:58px;height:247px}.rival-art img{height:215px;bottom:20px}.rival-label{display:none}.rival-name{font-size:23px;bottom:0}.rival-name span{font-size:7px}.stadium-orbit{right:-150px;top:145px;width:360px;height:360px}.stadium-floor{width:330px;right:-50px;bottom:44px;height:85px}.stadium-footer{padding:16px 20px;font-size:8px;gap:8px}.stadium-footer span:nth-child(2){display:none}.stadium-footer a{font-size:11px}.squad-panel{display:flex;gap:0;padding:23px 21px;border-radius:21px}.squad-panel h2{align-self:flex-start;font-size:39px;margin:18px 0 20px}.squad-panel h2 br{display:none}.squad-panel .squad-cards{width:100%;gap:9px;margin:0 0 20px}.squad-card img{height:145px}.squad-card strong{font-size:11px}.squad-card small{font-size:9px}.squad-panel .squad-edit{align-self:stretch;margin:0;min-height:48px}.squad-panel>p{font-size:10px;margin-top:12px;text-align:center}.arena-bottom{gap:17px;margin-top:20px}.move-primer{padding:22px 21px}.move-primer h2{font-size:29px;max-width:250px}.move-chips{gap:12px;grid-template-columns:1fr}.move-chips>span{gap:13px}.move-chips strong{font-size:14px}.move-chips small{display:inline;margin-left:12px;font-size:11px}.move-chips b{width:33px;height:35px}.ranked-teaser{padding:22px 21px;gap:14px}.ranked-teaser p{font-size:11px}.ranked-teaser h2{font-size:27px}.ranked-teaser .button{font-size:10px;padding:8px 10px;align-self:flex-end}.arena-heading{margin-bottom:21px}
.battle-top{gap:8px;font-size:11px;margin-bottom:18px}.battle-top .tag{font-size:8px;padding:5px 8px;letter-spacing:0}.battle-top .text-button{font-size:11px}.battle-stage{padding:20px 10px 19px;grid-template-columns:minmax(0,1fr) 27px minmax(0,1fr);gap:4px;border-radius:20px}.fighter-tag{font-size:7px;letter-spacing:.04em;padding:5px 6px;white-space:nowrap}.fighter h2{font-size:21px;white-space:normal;height:44px;line-height:1.02;margin:12px 0 14px}.fighter>img{height:185px;max-width:100%}.hp-copy{font-size:8px;gap:3px;margin:18px 0 7px}.hp-bar{height:5px}.versus{width:27px;height:31px;border-radius:9px;font-size:20px;box-shadow:0 4px 0 #102139}.bench{gap:4px;margin-top:15px}.bench button{width:35px;padding:3px;border-radius:6px;font-size:7px}.bench img{height:43px;margin-bottom:3px}.battle-controls{gap:8px;margin-top:17px}.battle-controls .button{min-height:80px;padding:12px 10px;border-radius:10px;gap:3px;align-items:center;justify-content:center}.battle-controls .button strong{font-size:15px}.battle-controls .button small{font-size:9px;line-height:1.5}.battle-result{padding:24px 15px}.battle-result h2{font-size:48px}.battle-result p{font-size:13px}.battle-log{padding:14px 17px;font-size:12px}
main[data-route=collection] .page-head{padding:24px 20px;min-height:190px;border-radius:20px}main[data-route=collection] .page-head h1{font-size:44px;max-width:270px}.page-head p{font-size:14px;max-width:250px}.collection-art{margin:0;right:4px;top:26px;opacity:.24}.collection-status{font-size:10px;padding-left:2px}.toolbar{margin:19px 0 22px}.slab-stage{padding:10px}.slab-card{border-radius:13px}.slab-caption{padding:12px 10px}.slab-heading h3{font-size:22px}.grade-badge{font-size:10px}.slab-caption p{font-size:10px}.source-label{font-size:9px}.card-select{font-size:11px;min-height:44px}.team-panel h2{font-size:34px}.team-panel{border-radius:19px}.team-slots{margin:18px 0}.team-slot strong{font-size:10px}.team-slot img{height:65px;width:42px}.page-head h1{font-size:46px}.page-head{margin-bottom:25px}.machine-art{height:303px;padding:25px}.machine-art h2{font-size:74px;margin-top:27px}.machine-art p{font-size:16px;max-width:130px}.machine-art img{width:250px;right:-28px;bottom:-25px}.machine-price{width:66px;height:68px;border-radius:14px;right:20px;top:20px}.machine-price strong{font-size:30px}.machine-body{padding:23px}.machine-note{font-size:11px}.machine-odds small{font-size:10px}.machine-info b{font-size:12px}.machine-info span{font-size:10px}.flywheel{padding:21px 17px;gap:15px}.flywheel strong{font-size:25px}.flywheel p{font-size:11px}.guide-nav a{font-size:12px;background:#e6eef9}.guide-article{padding:25px 21px}.guide-article h2{font-size:35px}.guide-article p{font-size:15px}footer{margin-bottom:78px}.entry-copy h1{font-size:65px}.entry{padding:20px}.entry-copy .eyebrow{font-size:9px}.entry-copy p{font-size:13px}dialog{padding:26px 22px}.inspect-visual>img{height:315px}}
@media(prefers-reduced-motion:reduce){.hero-pokemon,.rival-art img,.stadium-orbit:before,.fighter>img,.battle-stage.resolved .fighter>img,.battle-stage.resolved:after{animation:none}.button,.quick-paths a,.squad-card,.hp-bar>span{transition:none}}
