@charset "utf-8";
@import url("/static/game/base.41f2c345720c.css");
:root{--bg:#0e171d;--panel:#17232a;--panel2:#1d2c34;--line:#2b3b43;--muted:#93a6ab;--white:#edf1e9;--gold:#eec477;--green:#89c899;--red:#d67977;--font:'Segoe UI',system-ui,sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--white);font:15px var(--font)}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.45}button,a,input,select{outline-offset:4px}button:focus-visible,a:focus-visible{outline:2px solid var(--gold)}button{color:inherit}a{color:var(--gold)}.loading{padding:20vh;text-align:center}h1,h2,h3,p{margin:0}h1{font-size:46px;letter-spacing:-1.7px;line-height:1.12}h2{font-size:24px;letter-spacing:-.5px}h3{font-size:17px}.eyebrow{font:11px ui-monospace,monospace;letter-spacing:2px;color:var(--gold);text-transform:uppercase}.muted{color:var(--muted)}.small{font-size:12px}.mono{font-family:ui-monospace,monospace}.gold{color:var(--gold)}.green{color:var(--green)}.pill{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--line);border-radius:30px;padding:7px 12px;font-size:11px;letter-spacing:.5px;background:#14242aa8}.dot{height:6px;width:6px;background:var(--green);border-radius:50%}.btn{border:1px solid var(--line);background:var(--panel2);border-radius:7px;padding:12px 18px;font-weight:600;transition:.2s}.btn:hover{border-color:#849389;background:#293a43}.btn.primary{background:var(--gold);color:#26312c;border-color:var(--gold)}.btn.primary:hover{background:#ffda94}.btn.ghost{background:transparent}.btn.danger{color:#edaaa0;border-color:#805453}.btn.full{width:100%}.row{display:flex;align-items:center;gap:12px}.between{justify-content:space-between}.stack{display:flex;flex-direction:column;gap:18px}.spacer{flex:1}.brand{font-weight:800;letter-spacing:2.5px;font-size:17px;display:flex;align-items:center;gap:12px}.brand small{font-size:9px;letter-spacing:2px;color:var(--muted);display:block;margin-top:3px}.ball-logo{height:29px;width:29px;border:2px solid var(--gold);border-radius:50%;position:relative}.ball-logo:before{content:'';position:absolute;top:11px;left:0;right:0;border-top:2px solid var(--gold)}.ball-logo:after{content:'';position:absolute;left:8px;top:8px;width:7px;height:7px;border:2px solid var(--gold);border-radius:50%;background:var(--bg)}.topbar{height:86px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding:0 38px}.shell{display:grid;grid-template-columns:222px 1fr;min-height:100vh}.rail{background:#111d24;border-right:1px solid var(--line);padding:29px 20px;display:flex;flex-direction:column;gap:42px;position:sticky;top:0;height:100vh}.rail .brand{font-size:13px;letter-spacing:1.5px;gap:9px}.rail nav{display:flex;flex-direction:column;gap:8px}.navbtn{background:none;border:0;text-align:left;padding:13px 14px;color:var(--muted);border-radius:6px;display:flex;align-items:center;gap:13px;font-size:13px}.navbtn.active{color:var(--gold);background:#d5b06a12;border:1px solid #e5c27c23}.navbtn:hover{background:var(--panel2);color:var(--white)}.navicon{font-size:18px;display:inline-block;width:23px}.rail-bottom{margin-top:auto;border-top:1px solid var(--line);padding-top:20px;font-size:11px;line-height:1.8;color:var(--muted)}.main{padding:30px 36px;max-width:1450px;width:100%;margin:auto}.pagehead{margin-bottom:26px}.pagehead h1{font-size:29px;letter-spacing:-.8px}.pagehead .eyebrow{margin-bottom:9px}.avatar{display:grid;place-items:center;width:32px;height:32px;background:#314237;border:1px solid #64866c;color:var(--gold);border-radius:50%;font-weight:700}.dashboard{display:grid;grid-template-columns:minmax(0,1fr) 258px;gap:22px}.panel{background:var(--panel);border:1px solid var(--line);border-radius:10px;overflow:hidden}.panel-pad{padding:22px}.panel-title{font-size:11px;font-weight:600;letter-spacing:1.3px;text-transform:uppercase;color:var(--muted);margin-bottom:18px}.scene{height:302px;background:#3e6855 url("/static/game/forest.80e52e138ba6.svg") center/cover;position:relative;overflow:hidden;border-radius:10px}.scene:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#0b211de0,transparent 50%,#0e202630);pointer-events:none}.scene-top{position:absolute;z-index:2;top:19px;left:22px;right:22px}.scene-bottom{position:absolute;z-index:2;bottom:22px;left:24px;right:24px}.scene h2{font-size:27px}.scene-desc{color:#d1dfcf;font-size:12px;margin-top:8px}.scene .pixel{position:absolute;width:160px;height:160px;object-fit:contain;bottom:53px;right:15%;filter:drop-shadow(0 12px 5px #102e2a60);z-index:1;animation:bob 3s infinite ease-in-out}.pixel{image-rendering:pixelated;object-fit:contain}.type{font-size:9px;border-radius:3px;padding:4px 6px;text-transform:uppercase;letter-spacing:.6px;background:#426557;color:#e5f0dc}.type.fire{background:#915c42}.type.water,.type.ice{background:#386477}.type.poison,.type.ghost,.type.psychic{background:#655378}.type.electric{background:#8b763e}.type.rock,.type.ground{background:#79694f}.type.normal{background:#5b686b}.journey{display:flex;align-items:center;gap:9px;padding:16px 4px}.journey-node{border:1px solid var(--line);border-radius:50%;width:26px;height:26px;display:grid;place-items:center;font-size:10px;color:var(--muted)}.journey-node.done{background:#294838;color:var(--green);border-color:#49765a}.journey-node.current{border-color:var(--gold);color:var(--gold);box-shadow:0 0 15px #eec47720}.journey-line{height:1px;background:var(--line);flex:1}.sectionheading{margin:20px 0 15px}.sectionheading h2{font-size:17px}.routes{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.route-card{background:var(--panel);border:1px solid var(--line);border-radius:8px;text-align:left;padding:17px;transition:.2s;position:relative;min-height:220px}.route-card:hover{transform:translateY(-3px);border-color:#718777;background:#1c2e31}.route-card .pixel{width:96px;height:96px;display:block;margin:2px auto}.route-card .route-number{font:10px ui-monospace,monospace;color:var(--muted)}.route-card h3{margin:8px 0}.route-card .route-bottom{border-top:1px solid var(--line);padding-top:12px;margin-top:12px;font-size:11px;color:var(--muted)}.route-card.elite{border-color:#a78b56}.route-card.locked{opacity:.65}.team-list{display:flex;flex-direction:column;gap:5px}.member{display:flex;align-items:center;gap:8px;padding:9px 6px;border-bottom:1px solid #ffffff08;position:relative}.member .pixel{width:49px;height:49px;flex-shrink:0}.member .slot{font:9px monospace;color:#667d84}.member .info{flex:1;min-width:0}.member h3{font-size:12px}.member .hp{margin-top:7px}.hp{height:5px;background:#0d181d;border-radius:5px;overflow:hidden}.hp>span{display:block;height:100%;background:#80be89;transition:width .25s}.hp.low>span{background:var(--red)}.member.empty{height:66px;opacity:.45}.member.fainted{opacity:.45}.tiny-btn{border:0;background:transparent;color:var(--muted);padding:4px;font-size:12px}.tiny-btn:hover{color:var(--gold)}.statrow{padding:14px 0;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;font-size:12px}.statrow:last-child{border:0}.side-note{font-size:11px;line-height:1.8;color:var(--muted);padding:17px;border:1px dashed var(--line);border-radius:8px}.lab{padding:15px;background:#29233b;border:1px solid #685780;border-radius:8px;margin-bottom:20px}.lab label{font-size:12px}.lab select{background:#171624;color:#eee;padding:7px;border:1px solid #695482;border-radius:4px}.landing{max-width:1200px;margin:auto;padding:65px 38px 25px}.landing-grid{display:grid;grid-template-columns:1.25fr .8fr;gap:80px;align-items:center}.landing h1{font-size:64px;margin:23px 0}.landing h1 em{font-family:Georgia,serif;font-weight:400;color:var(--gold)}.landing .intro{max-width:480px;line-height:1.9;color:var(--muted)}.landing-art{height:245px;margin-top:35px;background:url("/static/game/forest.80e52e138ba6.svg") center/cover;border-radius:10px;position:relative;border:1px solid #7fa87840;overflow:hidden}.landing-art img{position:absolute;width:150px;bottom:18px;image-rendering:pixelated;filter:drop-shadow(0 10px 5px #0005)}.landing-art img:nth-child(1){left:13%;transform:rotate(-5deg)}.landing-art img:nth-child(2){left:36%;bottom:35px}.landing-art img:nth-child(3){left:60%;transform:rotate(5deg)}.landing-footer{border-top:1px solid var(--line);margin-top:45px;padding-top:20px;display:flex;justify-content:space-between;font-size:11px;color:var(--muted)}.auth-card{padding:32px;background:linear-gradient(145deg,#1e2e36,#152129);border:1px solid #3b4b50;border-radius:12px;box-shadow:0 20px 80px #0003}.auth-tabs{display:flex;border-bottom:1px solid var(--line);margin:26px 0}.auth-tabs button{flex:1;background:none;border:0;color:var(--muted);padding:12px 0}.auth-tabs .active{border-bottom:2px solid var(--gold);color:var(--gold)}label.field{display:block;font-size:12px;color:#b7c7c9;margin-bottom:17px}.field input{display:block;width:100%;background:#101b22;border:1px solid #3c4c53;border-radius:6px;padding:12px;color:var(--white);margin-top:8px}.field input:focus{border-color:var(--gold)}.form-error{color:#f0a59b;font-size:12px;min-height:20px;margin-bottom:12px}.starter-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:25px}.starter{padding:28px;text-align:center;background:linear-gradient(#1f3332,#17232a);border:1px solid var(--line);border-radius:12px;transition:.2s}.starter:hover{border-color:var(--gold);transform:translateY(-5px)}.starter img{width:180px;max-width:100%}.starter h2{margin-bottom:10px}.starter .btn{margin-top:25px}.battle-field{display:flex;align-items:center;justify-content:space-around;min-height:280px;background:url("/static/game/forest.80e52e138ba6.svg") center/cover;position:relative}.fighter{z-index:1;width:40%;text-align:center}.fighter img{width:160px;height:150px;filter:drop-shadow(0 8px 5px #0008)}.fighter .nameplate{background:#11231fed;border:1px solid #68837380;padding:10px;border-radius:6px}.fighter h3{font-size:14px}.vs{font:18px monospace;color:#ffe6ac}.battle-log{background:#101c23;min-height:132px;padding:18px;color:#b9c9c9;font:12px/1.8 ui-monospace,monospace}.battle-log p:last-child{color:var(--gold)}.raid-line{display:flex;justify-content:center;flex-wrap:wrap}.raid-line img{width:68px;height:70px}.outcome{padding:45px;text-align:center}.outcome img{width:130px}.outcome h1{font-size:34px;margin:20px 0}.outcome p{line-height:1.8;color:var(--muted);max-width:500px;margin:0 auto 25px}.overlay{position:fixed;inset:0;background:#051015bd;backdrop-filter:blur(7px);z-index:10;display:flex;align-items:center;justify-content:center;padding:25px}.modal{width:min(920px,100%);max-height:90vh;overflow:auto;background:#16242b;border:1px solid #42534f;border-radius:13px;box-shadow:0 30px 100px #0009}.modal-head{padding:22px 27px;border-bottom:1px solid var(--line);position:sticky;top:0;background:#16242b;z-index:2}.modal-body{padding:25px}.capture-layout{display:grid;grid-template-columns:1fr 1fr;gap:30px}.wheel-area{text-align:center;border-right:1px solid var(--line);padding-right:28px}.wheel-wrap{position:relative;width:230px;height:230px;margin:22px auto}.wheel{width:100%;height:100%;border-radius:50%;background:conic-gradient(var(--green) 0 72deg,#815655 72deg 360deg);border:7px solid #31423f;box-shadow:0 0 0 1px #9ba38a,0 12px 40px #0006;transition:background .2s;position:relative}.wheel:after{content:'';position:absolute;inset:25px;background:#17272b;border:1px solid #ffffff22;border-radius:50%}.wheel-center{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;pointer-events:none}.wheel-center strong{font:42px ui-monospace,monospace;color:var(--gold)}.pointer{position:absolute;top:-8px;left:calc(50% - 9px);width:0;height:0;border-left:9px solid transparent;border-right:9px solid transparent;border-top:22px solid #f7e6b5;z-index:2;filter:drop-shadow(0 2px 2px #0008)}.investment{display:flex;flex-wrap:wrap;gap:7px;margin:12px 0 20px}.investment button{padding:8px 10px;font-size:12px}.investment .selected{border-color:var(--gold);color:var(--gold);background:#c9aa6515}.sacrifices{max-height:150px;overflow:auto;margin:12px 0}.sacrifice{display:flex;align-items:center;gap:8px;font-size:12px;padding:5px;border-bottom:1px solid var(--line)}.sacrifice img{width:35px;height:35px}.capture-target{padding:8px;background:#101d23;border:1px solid var(--line);border-radius:5px;color:white;width:100%}.shop-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.shop-item{padding:17px;border:1px solid var(--line);border-radius:8px;background:#1b2c32;display:flex;flex-direction:column;gap:10px;justify-content:space-between}.shop-item .item-icon{font-size:27px;color:var(--gold)}.shop-item h3{font-size:13px}.shop-item p{font-size:11px;color:var(--muted)}.collection{display:grid;grid-template-columns:repeat(6,1fr);gap:12px}.dex-entry{text-align:center;background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:10px;font-size:11px}.dex-entry img{width:80px;height:80px;max-width:100%}.dex-entry.unknown img{filter:brightness(0) opacity(.22)}.banner{padding:14px 18px;border:1px solid #71907b55;background:#68937815;border-radius:7px;margin-bottom:20px;line-height:1.6;font-size:12px}.tabs{display:flex;gap:8px;margin-bottom:20px;flex-wrap:wrap}.tabs button{padding:8px 14px}.detail-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:15px 0}.detail-cell{padding:12px;background:#101c23;border-radius:5px;font-size:12px}#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);z-index:30;background:#e4d2aa;color:#17252a;padding:14px 22px;border-radius:7px;box-shadow:0 8px 30px #0005;max-width:90vw;display:none}#toast.show{display:block}.pulse{animation:impact .3s}.empty-state{padding:50px;text-align:center;color:var(--muted);line-height:1.8}@keyframes bob{50%{transform:translateY(-8px)}}@keyframes impact{50%{filter:brightness(1.8);transform:translateX(4px)}}
@media(min-width:1550px){.main{padding:40px}.scene{height:360px}.route-card{min-height:245px}}@media(max-width:1100px){.shell{grid-template-columns:180px 1fr}.rail{padding:25px 12px}.rail .brand{font-size:11px}.main{padding:24px}.dashboard{grid-template-columns:minmax(0,1fr) 220px}.route-card{padding:12px}.landing-grid{gap:35px}.landing h1{font-size:49px}}@media(max-width:850px){.shell{display:block}.rail{height:auto;position:relative;padding:17px 20px;flex-direction:row;align-items:center;gap:20px;border-right:0;border-bottom:1px solid var(--line)}.rail nav{flex-direction:row;gap:2px;margin-left:auto}.rail-bottom,.rail .navlabel,.rail nav .disabled-nav{display:none}.navbtn{padding:8px}.dashboard{grid-template-columns:1fr}.sidebar{display:grid;grid-template-columns:1fr 1fr;gap:16px}.team-list{display:grid;grid-template-columns:1fr 1fr}.sidebar .side-note{display:none}.topbar{padding:0 22px}.landing{padding:35px 23px}.landing-grid{grid-template-columns:1fr}.landing-art{display:none}.landing h1{font-size:45px}.landing .intro{max-width:none}.landing-footer{gap:20px}.collection{grid-template-columns:repeat(4,1fr)}}@media(max-width:540px){.main{padding:20px 14px}.pagehead .pill{display:none}.pagehead h1{font-size:24px}.routes{gap:7px}.route-card{padding:10px 8px;min-height:190px}.route-card h3{font-size:12px}.route-card .pixel{width:75px;height:80px}.route-card .route-bottom{font-size:9px}.scene{height:260px}.scene .pixel{right:5%;width:130px}.scene h2{font-size:23px}.sidebar{display:block}.sidebar>.panel{margin-top:12px}.starter-grid{gap:8px}.starter{padding:14px 7px}.starter h2{font-size:16px}.starter .btn{padding:10px 6px;font-size:12px}.capture-layout{grid-template-columns:1fr}.wheel-area{border:0;padding:0}.overlay{padding:10px}.modal-body{padding:18px}.wheel-wrap{width:180px;height:180px}.shop-grid{grid-template-columns:1fr 1fr}.collection{grid-template-columns:repeat(3,1fr)}.row{gap:8px}.fighter img{width:120px}.topbar .pill{display:none}.landing h1{font-size:41px}.auth-card{padding:25px}.rail .brand small{display:none}}

/* Pixel-art interface: hard edges, tile-like surfaces and readable game controls. */
:root{--bg:#111848;--panel:#172458;--panel2:#203370;--line:#708bd2;--muted:#b8c5e7;--white:#fffbed;--gold:#ffdc52;--green:#76dc76;--red:#ff6b67;--font:'Courier New',ui-monospace,monospace}
body{background:#101743;color:var(--white);font-weight:700;image-rendering:pixelated}
button,input,select{font-family:inherit;font-weight:700}.btn,.panel,.modal,.starter,.auth-card,.banner,.capture-target,.shop-item,.dex-entry,.detail-cell{border-radius:0!important;box-shadow:4px 4px 0 #080c2b}.btn{border:2px solid #e7edff;background:#1c2860;text-transform:uppercase;font-size:12px;letter-spacing:.3px;padding:11px 15px}.btn:hover{transform:translate(-1px,-1px);box-shadow:3px 3px 0 #050821;background:#2a3c83}.btn.primary{background:#f7ce46;border-color:#fff3a4;color:#271c39}.pill{border-radius:2px;border-width:2px}.pixel{image-rendering:pixelated}
.brand{color:#fff}.brand small{color:#8ee5ff}.ball-logo{border-color:#ffdb4d;border-radius:0;transform:rotate(45deg);width:24px;height:24px}.ball-logo:before{border-color:#ffdb4d;top:9px}.ball-logo:after{border-radius:0;border-color:#ffdb4d;background:#111848;left:6px;top:6px}

.home-screen{min-height:100vh;min-height:100svh;position:relative;overflow:auto;display:grid;place-items:center;padding:34px 16px 48px;background:#120f22 url("/static/game/world/home_page.2b98d4b686f5.png") center/cover fixed no-repeat;isolation:isolate}
.home-screen:before{content:'';position:absolute;inset:0;background:radial-gradient(circle at center,#100c1d33 0 20%,#100b1f99 72%,#070610e8 100%),linear-gradient(180deg,#08061166,#08061122 58%,#080611aa);z-index:-1}.home-screen:after{content:'';position:absolute;inset:0;background:linear-gradient(135deg,transparent 75%,#ffffff08 75%) 0 0/6px 6px;mix-blend-mode:soft-light;pointer-events:none;z-index:-1}
.home-window{text-align:center;width:min(650px,94vw);padding:32px 48px 26px;background:linear-gradient(180deg,#15172eea,#0d1028f2);border:4px solid #f4e8bb;box-shadow:10px 10px 0 #05040c,0 0 0 4px #5d345f;z-index:2;position:relative}.home-window:before,.home-window:after{content:'';position:absolute;width:10px;height:10px;background:#ffd94a;box-shadow:2px 2px 0 #5d351f;top:10px}.home-window:before{left:10px}.home-window:after{right:10px}
.home-wordmark{position:relative;display:inline-block;margin:0 auto 5px;font-family:Impact,'Arial Black',sans-serif;font-size:52px;line-height:.95;letter-spacing:1px;color:#ffdf47;-webkit-text-stroke:3px #40182e;text-shadow:0 4px 0 #f18421,0 8px 0 #7b2d25,5px 11px 0 #05040c;transform:scaleX(1.04)}.home-wordmark:after{content:attr(data-text);position:absolute;inset:0;color:transparent;-webkit-text-stroke:1px #fff0a6;transform:translateY(-2px);pointer-events:none}.home-tagline{font-size:10px;color:#8ce7ff;letter-spacing:5px;text-transform:uppercase;margin-top:8px}.home-version{font-size:8px;color:#f5be54;margin-top:8px;letter-spacing:2px}.home-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:23px auto 19px;width:100%;max-width:520px}.home-menu-card{--menu-accent:#79d8ec;position:relative;min-height:76px;display:grid;grid-template-columns:53px 1fr 18px;align-items:center;gap:12px;padding:10px 12px;text-align:left;color:#fff8da;background:linear-gradient(135deg,#17295c,#111736);border:3px solid #8299dc;box-shadow:4px 4px 0 #05040c;overflow:hidden;font:700 10px var(--font);text-transform:uppercase}.home-menu-card:before{content:'';position:absolute;left:0;top:0;width:8px;height:8px;background:var(--menu-accent);box-shadow:calc(100% - 8px) 0 0 var(--menu-accent)}.home-menu-card:hover:not(:disabled){transform:translate(-2px,-2px);filter:brightness(1.15);box-shadow:6px 6px 0 #05040c}.home-menu-card.wide{grid-column:1/-1;min-height:82px}.home-menu-icon{width:49px;height:49px;display:grid;place-items:center;background:#090e29;border:2px solid var(--menu-accent);box-shadow:3px 3px 0 #05040c}.home-menu-icon .item-sprite{width:40px;height:40px;filter:drop-shadow(2px 3px 0 #0008)}.home-menu-copy strong{display:block;color:#fff8da;font-size:11px;letter-spacing:.5px}.home-menu-copy small{display:block;color:#b8c7ec;font-size:7px;line-height:1.45;margin-top:5px;text-transform:none}.home-menu-arrow{color:var(--menu-accent);font-size:24px}.home-menu-card.journey-card{--menu-accent:#ffd84f;background:linear-gradient(135deg,#4c3b54,#1a204d);border-color:#ffe77c}.home-menu-card.dex-card{--menu-accent:#74dcf2;background:linear-gradient(135deg,#173a63,#14204b)}.home-menu-card.hall-card{--menu-accent:#ffc456;background:linear-gradient(135deg,#553458,#211b45)}.home-menu-card.vault-card{--menu-accent:#f286dc;background:linear-gradient(135deg,#512c68,#241b4d)}.home-menu-card.trade-card{--menu-accent:#72d6b2;background:linear-gradient(135deg,#244b5a,#182342)}.home-menu-card.account-card{--menu-accent:#78d4ff;background:linear-gradient(135deg,#174c69,#182451)}.home-menu-card:disabled{filter:grayscale(.55);opacity:.48}.guest-actions .home-menu-card:nth-last-child(-n+2){min-height:70px}
.home-premise{border-top:2px solid #674f77;border-bottom:2px solid #674f77;padding:14px 4px;margin-top:10px}.home-premise strong{display:block;color:#ffdc52;font-size:9px;letter-spacing:1.5px;margin-bottom:7px}.home-premise p{color:#c5cae5;font-size:9px;line-height:1.75;letter-spacing:0}.home-account{display:flex;justify-content:center;gap:14px;margin-top:16px;font-size:9px;color:#abb9e4}.home-account button,.back-home,.home-back,.home-recovery{background:none;border:0;color:#ffdc52;text-decoration:underline;font:inherit;cursor:pointer}.home-credit{position:absolute;bottom:16px;left:0;right:0;text-align:center;color:#eee5bd;font-size:8px;letter-spacing:2px;text-shadow:2px 2px #000}
.home-auth{margin:20px auto 8px;text-align:left;width:min(360px,100%)}.home-auth .eyebrow{display:block;text-align:center}.home-auth h2{text-align:center;font-size:17px;margin:9px 0 4px;color:#fff6d8}.home-back{display:block;margin:0 auto 15px;font-size:8px}.home-auth .auth-tabs{margin:17px 0}.home-auth .auth-tabs button{font-size:9px}.home-auth .field{font-size:9px;margin-bottom:12px}.home-auth .field input{border:2px solid #6576a8;border-radius:0;background:#090d20;padding:10px;font-size:10px;box-shadow:3px 3px 0 #05040c}.home-auth .form-error{font-size:9px;min-height:16px}.home-recovery{display:block;margin:14px auto 0;font-size:8px}.auth-spacer{height:14px}.home-window.auth-active .home-premise{display:none}

.menu-page{min-height:100vh;background:linear-gradient(#172057,#101743)}.menu-top{height:76px;padding:0 28px;display:flex;align-items:center;justify-content:space-between;border-bottom:4px solid #8197d2;background:#111947}.menu-page .main{max-width:1100px;padding-top:42px}.starter-intro{text-align:center;margin:0 auto 28px}.starter-intro h1{font-size:28px;letter-spacing:1px;margin:12px 0}.starter-intro p{color:var(--muted);font-size:12px}.starter{border:3px solid #7388c3;background:#19265b;padding:24px;box-shadow:6px 6px 0 #080b2b}.starter:hover{transform:translate(-2px,-2px);box-shadow:8px 8px 0 #080b2b}.starter img{image-rendering:pixelated}.starter h2{font-size:18px;margin:8px 0}.starter .btn{margin-top:19px}

.game-shell{display:grid;grid-template-columns:265px minmax(0,1fr);min-height:100vh;background:#101743}.team-rail{height:100vh;position:sticky;top:0;padding:22px 16px;background:#121c4c;border-right:4px solid #6b84c9;display:flex;flex-direction:column}.team-rail .brand{font-size:12px;margin-bottom:12px}.team-rail .panel-title{color:#91dcff;margin:22px 0 9px;font-size:9px}.back-home{text-align:left;padding:7px 0;font-size:10px}.team-rail .team-list{gap:7px}.team-rail .member{min-height:69px;background:#1b2b61;border:2px solid #4e67a9;padding:6px;box-shadow:3px 3px 0 #090d2d;cursor:grab}.team-rail .member:active{cursor:grabbing}.member.dragging{opacity:.35}.member.drop-target{border-color:#ffdc52;background:#2d4285;transform:translateX(3px)}.member .drag-grip{color:#91a9df;font-size:12px}.member .pixel{width:44px;height:44px}.member .slot{color:#ffdc52}.member h3{font-size:11px}.empty-ball{width:42px;text-align:center;color:#7285ba}.drag-help{font-size:9px;line-height:1.5;color:#a8b7df;margin:13px 2px}.abandon-btn{margin-top:auto;background:#8c2f48;border:3px solid #ff9a8b;color:white;padding:13px 9px;box-shadow:4px 4px 0 #3c102a;font:700 11px var(--font);cursor:pointer}.abandon-btn:hover{background:#bd3d51;transform:translate(-1px,-1px)}
.game-topbar{height:76px;border-bottom:4px solid #6982ca;background:#151f53;padding:0 28px;display:flex;align-items:center;justify-content:space-between}.game-topbar>div:first-child{display:flex;flex-direction:column;gap:4px}.speed-control{display:flex;align-items:center;border:2px solid #8099da;background:#0e1744;padding:5px;box-shadow:3px 3px 0 #070a28}.speed-control>span{font-size:9px;color:#a8b8e2;padding:0 10px}.speed-chip{border:0;border-left:1px solid #5c70ad;background:#1b285f;color:#c4d0ed;padding:7px 9px;font:700 10px var(--font);cursor:pointer}.speed-chip.active{background:#ffda4f;color:#261a3c}.speed-chip:hover{background:#72cce8;color:#101743}.game-main{padding:26px;max-width:1320px;margin:auto}.run-layout{display:grid;grid-template-columns:minmax(500px,1fr) 305px;gap:22px}.run-main{min-width:0}.biome-bar{display:flex;justify-content:space-between;align-items:center;padding:14px 18px;border:3px solid #89a0dd;background:#18285f;box-shadow:5px 5px 0 #070b2b}.biome-bar h2{font-size:18px;margin-top:5px}.node-counter{background:#263a7a;border:2px solid #a9b9e8;padding:9px;font-size:10px;color:#ffdc52}

.route-map{height:620px;margin-top:18px;position:relative;overflow:hidden;border:4px solid #d5e7a1;background-color:#78bf6c;background-image:linear-gradient(45deg,#ffffff0d 25%,transparent 25%),linear-gradient(-45deg,#ffffff0d 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#22543c22 75%),linear-gradient(-45deg,transparent 75%,#22543c22 75%);background-size:16px 16px;background-position:0 0,0 8px,8px -8px,-8px 0;box-shadow:7px 7px 0 #080c2b}.route-map:before,.route-map:after{content:'';position:absolute;top:0;bottom:0;width:34px;background:repeating-linear-gradient(#174b38 0 22px,#2f7045 22px 44px);border-right:6px solid #0e382d}.route-map:before{left:0}.route-map:after{right:0;transform:scaleX(-1)}.map-caption{margin-top:22px;display:flex;align-items:end;justify-content:space-between}.map-caption span{color:#ffdc52;font-size:13px}.map-caption small{color:#bac8e8;font-size:9px}.map-path{position:absolute;left:50%;bottom:65px;width:2px;height:390px;background:repeating-linear-gradient(#2c7145 0 6px,transparent 6px 12px);transform-origin:bottom;z-index:0}.map-path.p1{transform:rotate(32deg)}.map-path.p2{transform:rotate(-32deg)}.map-node{position:absolute;width:180px;min-height:175px;padding:10px;background:#143d3b;border:3px solid #f5f1c2;color:#fff;box-shadow:5px 5px 0 #173a34;text-align:center;z-index:2;cursor:pointer;font-family:var(--font)}.map-node:hover{filter:brightness(1.16);transform:translate(-2px,-2px)}.map-node.n1{left:9%;top:90px}.map-node.n2{left:calc(50% - 90px);top:250px}.map-node.n3{right:9%;top:90px}.route-number{display:block;color:#9eeaff;font-size:8px;text-align:left}.encounter-visual{height:92px;position:relative}.silhouette{position:absolute;width:68px;height:68px;right:20px;top:7px;filter:brightness(0) drop-shadow(2px 2px 0 #6fa687);opacity:.92}.pixel-bush{position:absolute;left:20px;bottom:12px;width:59px;height:40px;background:#276b3e;border:6px solid #16482f;box-shadow:11px -10px 0 #3d8a4b,27px -5px 0 #276b3e,38px 4px 0 #16482f}.pixel-bush i{position:absolute;left:17px;top:-11px;width:10px;height:10px;background:#7bc45d;box-shadow:20px 8px 0 #5cac4f}.bush-node>strong,.event-node>strong{font-size:11px;display:block;margin:3px 0 8px}.route-values{display:grid;grid-template-columns:1fr 1fr;border-top:2px dashed #578b75;padding-top:8px;gap:5px}.route-values span{font-size:8px;color:#a9d5c5}.route-values b{display:block;color:#ffe05b;font-size:11px;margin-top:3px}.bush-node.elite{background:#493b6f;border-color:#ffd75a}.event-node{display:flex;flex-direction:column;align-items:center;justify-content:center;background:#253e70}.pixel-building{display:grid;place-items:center;width:72px;height:64px;background:#f0eee0;border:5px solid #294f86;color:#d23b4c;font-size:22px;box-shadow:8px -12px 0 #d95b60,8px 0 0 #294f86;margin:14px}.shop-node .pixel-building{background:#ffe09a;color:#68421f;border-color:#8e5729;box-shadow:8px -12px 0 #e24e3e,8px 0 0 #8e5729}.event-node small{font-size:8px;color:#d5def5}.trainer-node{position:absolute;bottom:22px;left:calc(50% - 30px);width:60px;text-align:center;color:#ffe456;font-size:28px}.trainer-node small{display:block;font-size:8px;color:#173b34;background:#fff4ca;padding:3px}

.inventory-panel{background:#c6b17d;border:4px solid #6d4e31;box-shadow:7px 7px 0 #080c2b;padding:10px;align-self:start;color:#38291e}.bag-head{display:flex;align-items:center;gap:8px;background:#815e3d;color:#fff8cf;border:3px solid #4c3528;padding:9px}.bag-head>div{flex:1}.bag-head small{display:block;font-size:7px;color:#f3d69d;margin-top:3px}.bag-head .gold{color:#ffe056;font-size:11px}.bag-icon{font-size:21px}.bag-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:5px;padding:10px 0}.bag-slot{aspect-ratio:1;background:#e6ddb9;border:3px solid #8b7652;box-shadow:inset 3px 3px 0 #fff4d1,inset -3px -3px 0 #a9966b;display:flex;align-items:center;justify-content:center;flex-direction:column;overflow:hidden;position:relative}.bag-slot.filled{background:#f5ecca}.bag-slot .pixel{width:47px;height:47px}.bag-slot small{font-size:6px;max-width:90%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.slot-num{font-size:8px;color:#a18e68}.item-pixel{font-size:22px;color:#326096}.bag-stats{display:flex;justify-content:space-between;background:#6e5238;color:#fff5c8;padding:9px;font-size:8px;border:3px solid #4b382b}.bag-stats strong{color:#ffe052}.inventory-panel>p{color:#594832;margin-top:9px;font-size:8px}
.pixel-dialog{margin-top:20px;min-height:360px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:17px;border:4px solid #d8e2ff;background:#17265f;box-shadow:7px 7px 0 #070b2d;padding:40px}.pixel-dialog p{max-width:560px;color:#c2cee9;line-height:1.7;font-size:12px}.dialog-icon{display:grid;place-items:center;width:72px;height:72px;background:#f3d34d;color:#1a2658;border:4px solid #fff0a0;box-shadow:5px 5px 0 #805b30;font-size:30px}.event-dialog .row{justify-content:center}.lab{border-radius:0;border-width:3px;box-shadow:5px 5px 0 #080c2b}.battle-field{border:3px solid #d6e4a0;image-rendering:pixelated}.fighter .nameplate{border-radius:0;border:3px solid #d5def2;box-shadow:4px 4px 0 #08102d}.battle-log{border-top:3px solid #8195c8;border-bottom:3px solid #8195c8}.hp{border-radius:0;height:7px;border:1px solid #08102b}.modal{border:4px solid #d8e2ff}.modal-head{border-bottom:4px solid #768dca}.shop-item{border:3px solid #6b83c4}.shop-item-desc{color:#dfe6f5;font-size:11px;line-height:1.5;font-weight:600}.wheel,.wheel:after{border-radius:50%!important}.shop-exit{text-align:center;margin-top:20px}

@media(max-width:1100px){.game-shell{grid-template-columns:210px minmax(0,1fr)}.run-layout{grid-template-columns:minmax(400px,1fr) 240px;gap:14px}.game-main{padding:14px}.map-node{width:150px}.map-node.n2{left:calc(50% - 75px)}.inventory-panel{padding:7px}.bag-grid{gap:3px}.team-rail{padding:18px 10px}}
@media(max-width:820px){.game-shell{display:block}.team-rail{height:auto;position:relative;border-right:0;border-bottom:4px solid #6b84c9}.team-rail .team-list{display:grid;grid-template-columns:repeat(3,1fr)}.team-rail .member{min-width:0}.team-rail .member .info{display:none}.team-rail .drag-help{display:none}.abandon-btn{margin-top:12px}.run-layout{grid-template-columns:1fr}.inventory-panel{order:-1}.bag-grid{grid-template-columns:repeat(10,1fr)}.bag-slot{min-width:44px}.inventory-panel>p{display:none}.route-map{height:600px}.map-node.n1{left:6%}.map-node.n3{right:6%}.game-topbar{padding:0 15px}}
@media(max-width:560px){.home-window{padding:25px 18px}.home-window h1{font-size:31px}.team-rail .team-list{grid-template-columns:repeat(2,1fr)}.speed-control>span{display:none}.game-main{padding:12px}.run-layout{display:block}.inventory-panel{margin-bottom:16px}.bag-grid{grid-template-columns:repeat(5,1fr)}.route-map{height:690px}.map-node{width:145px;min-height:160px}.map-node.n1{left:9%;top:50px}.map-node.n2{left:auto;right:8%;top:250px}.map-node.n3{left:12%;right:auto;top:450px}.map-path{display:none}.map-caption small{display:none}.starter-grid{grid-template-columns:1fr}.collection{grid-template-columns:repeat(3,1fr)}}

/* Catch Upgrader: resources, probability and selected defeated Pokémon. */
.modal:has(.upgrader-layout){width:1240px;max-width:100%;max-height:94vh}.modal:has(.upgrader-layout) .modal-body{padding:16px;background:#0e152c}.upgrader-layout{display:grid;grid-template-columns:1fr .82fr 1fr;gap:12px;min-height:570px}.upgrade-side,.upgrade-center{border:3px solid #6477a9;background:#171e35;box-shadow:4px 4px 0 #050817;padding:16px}.upgrade-side header{border-bottom:2px solid #4b5a83;padding-bottom:13px;margin-bottom:13px}.upgrade-side header h3{font-size:13px;margin:7px 0}.upgrade-side header p{font-size:9px;color:#9faaca;line-height:1.5}.capture-items{display:grid;grid-template-columns:1fr 1fr;gap:7px}.capture-item{min-height:92px;position:relative;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;gap:5px;border:2px solid #47547a;background:#11182d;padding:8px;color:#abb5d2;cursor:default}.capture-item.active,.capture-item.selected{border-color:#e8d64a;background:#2b2940;color:#fff}.capture-item .item-pixel{font-size:23px;color:#f1d849}.capture-item strong{font-size:8px;line-height:1.35}.capture-item small{font-size:6px;color:#9eda75;line-height:1.4}.capture-item input{position:absolute;top:7px;right:7px;accent-color:#f2d948}.empty-upgrade{grid-column:1/-1;border:2px dashed #495575;padding:25px;text-align:center;color:#8591b2;font-size:9px}.resource-block{margin-top:14px;padding-top:13px;border-top:2px solid #414e73}.resource-block h3{font-size:10px}.resource-block .investment{margin-bottom:10px}.resource-block .investment .btn{font-size:8px;padding:7px}.resource-block .sacrifices{max-height:126px}.resource-block .sacrifice{background:#10172b;border:1px solid #3d496c;margin-bottom:4px}.resource-block .sacrifice small{display:block;font-size:6px;color:#8391b4;margin-top:3px}
.upgrade-center{display:flex;flex-direction:column;align-items:center;text-align:center;background:radial-gradient(circle at center,#232d43,#11182b 72%);border-color:#94a1c7}.upgrade-center>.eyebrow{margin-top:4px}.upgrade-center .wheel-wrap{width:245px;height:245px;margin:38px auto 20px}.upgrade-center .wheel{border:8px solid #222a3b;box-shadow:0 0 0 3px #64728f,0 0 0 7px #101625,5px 5px 0 #050817}.upgrade-center .wheel:after{background:#171e30;border:2px solid #3d4760}.upgrade-center .wheel-center span,.upgrade-center .wheel-center small{font-size:8px;color:#a8b3d0;letter-spacing:1px}.upgrade-center .wheel-center strong{font-size:34px;color:#d7f34f}.attempt-rule{font-size:8px;line-height:1.6;color:#b7c1da;background:#1d2740;border:2px solid #465679;padding:10px;margin:14px 0;width:100%}.upgrade-center>.btn{margin-top:auto}.skip-link{border:0;background:transparent;color:#9faaca;text-decoration:underline;font:700 8px var(--font);padding:12px;cursor:pointer}
.capture-targets{display:flex;flex-direction:column;gap:7px;max-height:420px;overflow:auto;padding:2px}.capture-pokemon{display:grid;grid-template-columns:23px 68px 1fr;align-items:center;min-height:88px;border:2px solid #465376;background:#10172a;padding:7px;cursor:pointer;position:relative}.capture-pokemon:hover{border-color:#8da0d6}.capture-pokemon.selected{border-color:#e7d340;background:#29283d;box-shadow:3px 3px 0 #78671d}.capture-pokemon input{position:absolute;opacity:0}.capture-pokemon .target-check{display:grid;place-items:center;width:19px;height:19px;border:2px solid #7380a4;color:transparent}.capture-pokemon.selected .target-check{background:#f0d541;border-color:#fff2a1;color:#20182c}.capture-pokemon>.pixel{width:62px;height:62px}.capture-pokemon>div{text-align:left;min-width:0}.capture-pokemon strong{display:block;font-size:11px;color:#fff}.capture-pokemon small{display:block;font-size:7px;color:#9da9c7;margin:5px 0}.capture-pokemon small .type{font-size:6px;padding:2px 3px}.capture-pokemon b{font-size:8px;color:#d9ee54}.selected-summary{margin-top:14px;display:flex;align-items:center;justify-content:space-between;background:#0e1428;border:2px solid #4b587c;padding:10px;font-size:8px}button.select-all-targets{display:block;width:fit-content;margin:0 0 8px auto;font-size:9px;padding:5px 9px;min-height:0}.selected-summary strong{display:grid;place-items:center;width:28px;height:28px;background:#ead23e;color:#20182e;font-size:14px}.target-side>p{margin-top:12px;line-height:1.6;font-size:8px}
@media(max-width:920px){.upgrader-layout{grid-template-columns:1fr 1fr}.upgrade-center{grid-row:1/3;grid-column:2}.target-side{grid-column:1}.capture-targets{max-height:300px}}
@media(max-width:650px){.modal:has(.upgrader-layout) .modal-body{padding:9px}.upgrader-layout{display:flex;flex-direction:column}.upgrade-center{order:-1}.upgrade-center .wheel-wrap{width:190px;height:190px;margin:20px auto}.capture-items{grid-template-columns:repeat(2,1fr)}}

/* PokeSprite inventory artwork. Keep nearest-neighbor scaling for the 32px sources. */
.item-sprite{display:block;width:32px;height:32px;object-fit:contain;image-rendering:pixelated}
.bag-slot .item-sprite{width:39px;height:39px;filter:drop-shadow(2px 2px 0 #7a64438c)}
.shop-item .item-icon{width:54px;height:54px;align-self:center;filter:drop-shadow(4px 4px 0 #070b18)}
.capture-item .item-sprite{width:45px;height:45px;filter:drop-shadow(3px 3px 0 #050817)}

/* Expanded biome maps and event art supplied by the game's own item set. */
.route-map{background-color:#294f3f;background-image:var(--biome-bg);background-size:cover;background-position:center;border-color:#d9e7a9;isolation:isolate}
.route-map .map-shade{position:absolute;inset:0;z-index:0;background:linear-gradient(180deg,#09152a44,#0a173077 45%,#08112899);box-shadow:inset 0 0 80px #050b1f99;pointer-events:none}
.route-map .map-path,.route-map .map-node,.route-map .trainer-node{z-index:1}
.route-map .map-path{border-color:#f8e892aa;filter:drop-shadow(0 2px 0 #15203c)}
.route-types{display:flex;gap:3px;justify-content:center;flex-wrap:wrap}.route-types .type{font-size:6px;padding:3px 4px;border:1px solid #ffffff55}
.bush-node{background:#102139e8;border-color:#dce9ba;backdrop-filter:blur(2px)}.bush-node:hover{background:#182c49}.bush-node .guaranteed{display:block;color:#f5dd5a;font-size:6px;letter-spacing:.7px;margin:2px 0 8px}.bush-node .route-types{position:absolute;top:9px;right:8px;max-width:92px;justify-content:flex-end}
.event-node{background:#1b2b55e8;backdrop-filter:blur(2px)}
.event-art{display:grid;place-items:center;width:76px;height:70px;margin:12px;background:#0b1230;border:3px solid #f5eab9;box-shadow:4px 4px 0 #090f25;position:relative}.event-art:before{content:'';position:absolute;inset:5px;border:2px solid #6076bb}.event-art .item-sprite{width:52px;height:52px;filter:drop-shadow(3px 4px 0 #050817)}.center-art{background:linear-gradient(135deg,#283e73,#15214a)}.shop-art{background:linear-gradient(135deg,#624130,#2c2144);border-color:#ffe07a}.shop-art:before{border-color:#c78142}
.biome-options .biome-option{padding:0;overflow:hidden;min-height:270px}.biome-option-art{height:168px;background-size:cover;background-position:center;position:relative;border-bottom:3px solid #7185ba}.biome-option-art .route-number{position:absolute;top:10px;left:10px;background:#0b1227dd;padding:6px;color:#ffe257}.biome-option-art .route-types{position:absolute;bottom:10px;left:10px;right:10px}.biome-option h3,.biome-option p,.biome-option .route-bottom{margin-left:14px;margin-right:14px}.biome-option h3{margin-top:13px}.biome-option.locked .biome-option-art{filter:grayscale(.7) brightness(.55)}

/* Auto-battle presentation inspired by the readable two-sided Pokémon Showdown field. */
.showdown-battle{background:#10182f;border-color:#8ea4dc}.battle-commandbar{padding:15px 18px;background:#172244;border-bottom:3px solid #8199d5}.battle-commandbar h2{font-size:15px;margin-top:6px}.battle-mode{background:#f2d34c;color:#192247;border:2px solid #fff09b;padding:8px 10px;font-size:8px;letter-spacing:1px}.showdown-battle .battle-field{height:500px;min-height:500px;display:grid;grid-template-columns:1fr 1fr;align-items:center;padding:34px 28px;background-color:#314f45;background-image:var(--battle-bg);background-size:cover;background-position:center;overflow:hidden;isolation:isolate}
.battle-overlay{position:absolute;inset:0;background:linear-gradient(180deg,#07112644,#07112618 46%,#07112699);box-shadow:inset 0 0 90px #060b1ccc;z-index:0}.showdown-battle .fighter{width:100%;z-index:2;display:flex;flex-direction:column;align-items:center;position:relative}.showdown-battle .ally-fighter{align-self:end;grid-column:1}.showdown-battle .enemy-fighter{align-self:start;grid-column:2}.showdown-battle .fighter>.pixel{width:190px;height:180px;filter:drop-shadow(0 12px 4px #06101dbb)}.showdown-battle .fighter>.ally-sprite{transform:scaleX(-1)}
.showdown-battle .nameplate{width:min(310px,94%);background:#f2f0d8;color:#152039;border:3px solid #fff9d6;box-shadow:6px 6px 0 #090f28;padding:11px;text-align:left}.showdown-battle .enemy-fighter .nameplate{order:-1;margin-bottom:4px}.showdown-battle .nameplate h3{font-size:12px}.showdown-battle .nameplate .row>span{font-size:9px}.showdown-battle .status-line{min-height:20px;margin-top:4px}.showdown-battle .status-line .type{font-size:6px;padding:2px 4px}.condition{float:right;background:#d95d62;color:#fff;padding:3px 5px;font-size:6px}.showdown-battle .hp{height:12px;border:3px solid #15203b;background:#252d3b;margin-top:3px!important}.showdown-battle .hp>span{background:#54b968}.showdown-battle .hp.low>span{background:#e85c56}.hp-numbers{display:flex;justify-content:space-between;align-items:center;margin-top:5px;font-size:8px}.hp-numbers strong{font-size:10px}.hp-numbers span{color:#526070}
.battle-roster{position:absolute;z-index:3;display:flex;gap:5px;padding:7px 9px;background:#0b1328cc;border:2px solid #879bd0}.enemy-roster{top:14px;right:16px}.ally-roster{bottom:14px;left:16px}.party-ball{width:17px;height:17px;border:2px solid #f5f0cf;border-radius:50%;background:linear-gradient(#d94c52 0 43%,#222 44% 57%,#eee 58%);box-shadow:2px 2px 0 #050a19}.party-ball.fainted{filter:grayscale(1);opacity:.35}.battle-event{position:absolute;z-index:2;top:50%;left:50%;transform:translate(-50%,-50%);padding:7px 10px;background:#111a34d9;border:2px solid #d9e2ff;color:#f4dd56;font-size:7px;letter-spacing:1px}.raid-line{min-height:155px;align-items:center}.raid-line img{width:78px;height:78px;filter:drop-shadow(0 6px 3px #081020aa)}
.battle-console{display:grid;grid-template-columns:1fr 160px;background:#0a1124;border-top:3px solid #8299d2;border-bottom:3px solid #8299d2}.showdown-battle .battle-log{min-height:145px;border:0;padding:15px 18px;background:#0d1730;font-size:9px}.showdown-battle .battle-log p{opacity:.55;padding:2px 0}.showdown-battle .battle-log p.current{opacity:1;color:#f4df65}.showdown-battle .battle-log p.ability,.showdown-battle .battle-log p.weather{color:#8bd7ff}.battle-progress{border-left:2px solid #425681;padding:16px 12px;display:flex;flex-direction:column;justify-content:space-between;color:#9fb0d7;font-size:8px}.battle-progress span:last-child{color:#f4dd58;font-size:10px}.battle-actions{padding:13px 18px;font-size:8px;color:#91a2c8}

/* Roulette paint separation prevents browsers from collapsing start and finish. */
.wheel-wrap.spinning .pointer{animation:pointer-tick .12s steps(2) infinite}.wheel.capture-win{filter:drop-shadow(0 0 16px #8ee56f)}.wheel.capture-loss{filter:grayscale(.45) drop-shadow(0 0 13px #d46868)}
@keyframes pointer-tick{50%{transform:rotate(-12deg) translateY(4px);transform-origin:50% 0}}
@media(max-width:650px){.showdown-battle .battle-field{height:410px;min-height:410px;padding:24px 8px}.showdown-battle .fighter>.pixel{width:120px;height:120px}.showdown-battle .nameplate{padding:7px}.battle-console{grid-template-columns:1fr}.battle-progress{display:none}}

@media(max-width:560px){.home-screen{padding:18px 10px 42px;background-attachment:scroll}.home-window{padding:25px 18px 20px}.home-wordmark{font-size:39px;-webkit-text-stroke-width:2px;text-shadow:0 3px 0 #f18421,0 6px 0 #7b2d25,3px 8px 0 #05040c}.home-tagline{font-size:8px;letter-spacing:3px}.home-actions{grid-template-columns:1fr;margin:18px auto 15px}.home-menu-card,.home-menu-card.wide{grid-column:1;min-height:70px}.home-premise{padding:12px 2px}.home-credit{font-size:6px;bottom:12px}}

/* Supplied interface art and richer home shortcuts. */
.ui-sprite{display:block;image-rendering:pixelated;object-fit:contain}.home-menu-card.login-card{--menu-accent:#72d9ff;background:linear-gradient(135deg,#164462,#182452)}.home-menu-card.account-card{--menu-accent:#83e4a2;background:linear-gradient(135deg,#1b513f,#18264c)}.journey-card .home-menu-icon>.item-sprite{filter:hue-rotate(325deg) saturate(2.4) brightness(1.08) drop-shadow(2px 3px 0 #0008)}.home-menu-icon{overflow:hidden;position:relative}.home-ui-icon{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);max-width:none}.home-ui-icon.pokedex{width:160px;height:120px;mix-blend-mode:multiply}.home-ui-icon.hall_of_fame{width:72px;height:72px;mix-blend-mode:multiply}.home-glyph{display:block;width:31px;height:31px;position:relative;color:var(--menu-accent)}.home-glyph.login{border:3px solid currentColor;border-left:0;width:23px;margin-left:8px}.home-glyph.login:before{content:'';position:absolute;left:-12px;top:11px;width:21px;height:4px;background:currentColor;box-shadow:0 0 0 2px #090e29}.home-glyph.login:after{content:'';position:absolute;left:-13px;top:6px;width:10px;height:10px;border-top:4px solid currentColor;border-left:4px solid currentColor;transform:rotate(-45deg)}.home-glyph.account:before{content:'';position:absolute;left:9px;top:1px;width:12px;height:12px;background:currentColor;border:3px solid #090e29;border-radius:50%}.home-glyph.account:after{content:'';position:absolute;left:3px;bottom:0;width:25px;height:13px;background:currentColor;border:3px solid #090e29;border-bottom:0}.guest-actions .home-menu-card,.guest-session-actions .home-menu-card{min-height:70px}

/* Open backpack with clear, persistent sections. */
.bag-head{min-height:70px}.bag-icon{width:52px;height:48px;overflow:hidden;background:#d7c394;border:2px solid #4c3528;display:grid;place-items:center}.bag-icon .ui-sprite{width:58px;height:58px;object-fit:cover;mix-blend-mode:multiply}.bag-gold{display:flex;align-items:center;gap:4px;background:#4d3828;border:2px solid #d2a13a;color:#ffe25b;padding:5px 7px;font-size:10px}.bag-gold-icon,.mini-gold{width:22px;height:22px;object-fit:contain;mix-blend-mode:normal;border-radius:0;filter:drop-shadow(0 1px 1px #000a)}.bag-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;padding-top:9px}.bag-tabs button{min-width:0;padding:8px 3px;background:#aa8b59;border:2px solid #6d5334;color:#4b3625;font:700 7px var(--font);box-shadow:2px 2px 0 #6a4d31}.bag-tabs button.active{background:#fff0a8;border-color:#4e3a28;color:#7d3f29;transform:translateY(2px);box-shadow:none}.bag-tabs small{display:block;margin-top:3px;color:inherit}.bag-help{color:#594832;margin-top:9px;font-size:8px;line-height:1.5}.resource-gold{display:flex;align-items:center;gap:4px}

/* Individual map sprites replace the retired tilesets. */
.event-art{width:104px;height:88px;margin:7px;background:#f3f0de;border-color:#ffe36e;overflow:hidden}.event-art:before{display:none}.event-art .event-sprite{width:94px;height:82px;object-fit:contain;filter:drop-shadow(2px 3px 0 #10142755)}.event-art .shop-event-sprite{width:116px;height:74px;object-fit:cover;mix-blend-mode:multiply}.grass-art{position:absolute;left:8px;bottom:4px;width:82px;height:76px;display:grid;place-items:end center}.grass-art .event-sprite{width:82px;height:82px;filter:drop-shadow(3px 4px 0 #071827aa)}.trainer-node{bottom:13px;font-size:inherit}.current-location{display:grid;place-items:center;width:48px;height:48px;margin:auto;background:#16254b;border:4px solid #ffe13f;box-shadow:0 0 0 3px #573721,0 0 16px #ffe13fcc;animation:current-node 1.4s steps(2) infinite}.current-location .item-sprite{width:37px;height:37px;filter:hue-rotate(325deg) saturate(2.4)}.trainer-node small{margin-top:5px;background:#fff0a5;border:2px solid #5c4723;color:#2a3428}.map-node:hover{outline:3px solid #ffe13f;outline-offset:3px}@keyframes current-node{50%{box-shadow:0 0 0 3px #573721,0 0 25px #ffe13f}}

/* The supplied global platform is used in every normal and Raid battle. */
.showdown-battle .battle-field{background-image:var(--battle-bg);background-position:center center;background-size:cover}.showdown-battle .battle-overlay{background:linear-gradient(180deg,#06091c28,#080c2020 52%,#090b1f6b);box-shadow:inset 0 0 65px #05081677}.showdown-battle .fighter>.pixel{filter:drop-shadow(0 12px 5px #15182388)}

/* Catch Upgrader gauge: red at the starting edge, green as the exact chance rises. */
.upgrade-center{background:radial-gradient(circle at 50% 39%,#25293a,#10131e 69%);border-color:#707887}.upgrade-center .wheel-wrap{width:280px;height:280px;margin:30px auto 18px}.upgrade-center .wheel{border:10px solid #161923;box-shadow:0 0 0 3px #4f5667,0 0 0 8px #090b12,0 18px 36px #0009}.upgrade-center .wheel:after{inset:36px;background:radial-gradient(circle,#1b1e27,#101218);border:2px solid #343946;box-shadow:inset 0 0 30px #0009}.upgrade-center .pointer{top:auto;bottom:-13px;border-top:0;border-left:11px solid transparent;border-right:11px solid transparent;border-bottom:28px solid #ffda2d;filter:drop-shadow(0 0 5px #ff8a22)}.upgrade-center .wheel-center strong{font-size:38px;text-shadow:0 0 12px currentColor}.upgrade-center>.btn{background:#ffd51f;border-color:#fff080;color:#211b15;box-shadow:0 0 18px #ffc51b88,5px 5px 0 #08090e;font-size:11px;padding:15px}.target-values{display:flex;flex-wrap:wrap;gap:4px;margin-top:7px}.target-values em{font-style:normal;font-size:6px;color:#c9d4ef;border:1px solid #46577e;background:#0a1125;padding:3px 4px}

@media(max-width:650px){.upgrade-center .wheel-wrap{width:215px;height:215px}.bag-tabs button{font-size:6px}.home-ui-icon.pokedex{width:145px;height:109px}}
.home-menu-icon:has(.home-ui-icon){background:#eee9d7}.home-ui-icon.pokedex,.home-ui-icon.hall_of_fame{mix-blend-mode:normal;z-index:2}

/* Bright expedition interface: compact team, connected map and run HUD. */
.game-shell{grid-template-columns:190px minmax(0,1fr);color:#3e392f;background:linear-gradient(#8ecbf3 0 64%,#eef6ff 64% 67%,#83a976 67%);position:relative;isolation:isolate}.game-shell:before{content:'';position:fixed;inset:90px 0 auto 0;height:170px;z-index:-1;opacity:.72;background:radial-gradient(ellipse at 10% 58%,#fff 0 6%,transparent 6.5%),radial-gradient(ellipse at 17% 50%,#fff 0 9%,transparent 9.5%),radial-gradient(ellipse at 25% 62%,#fff 0 7%,transparent 7.5%),radial-gradient(ellipse at 76% 48%,#fff 0 8%,transparent 8.5%),radial-gradient(ellipse at 84% 61%,#fff 0 11%,transparent 11.5%)}.game-shell>div{min-width:0}.team-rail{height:calc(100vh - 28px);top:14px;margin:14px 0 14px 14px;padding:13px 9px;background:#ece8d9;border:3px solid #28271f;box-shadow:4px 4px 0 #4d5149;color:#4a453b}.back-home{color:#4e4a40;font-weight:800;border-bottom:2px solid #aaa38f}.team-heading{display:flex;justify-content:space-between;align-items:end;padding:13px 5px 8px;border-bottom:2px solid #aaa38f}.team-heading strong{font-size:17px;letter-spacing:2px}.team-heading small{font-size:8px}.team-rail .team-list{gap:6px;margin-top:8px}.team-rail .member{min-height:73px;gap:3px;padding:5px 3px;background:#f5f1e4;border:2px solid #2d2b24;box-shadow:3px 3px 0 #77766e;color:#4b463d;overflow:hidden}.team-rail .member>.pixel{width:34px;height:34px}.team-rail .member .info{min-width:0}.team-rail .member.empty{background:#dedacb;border-style:dashed;opacity:.58}.team-rail .member .slot{color:#9a7620;font-size:7px}.team-rail .member h3{color:#3a352e;font-size:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.team-rail .member .small{font-size:7px}.team-rail .member .muted{color:#777165}.team-rail .drag-grip{color:#958f81;font-size:8px}.team-rail .hp{border-color:#292a23;background:#cbc8ba}.team-rail .hp>span{background:#48bd5c}.drag-help{color:#6f695e;text-align:center}.abandon-btn{background:#9d4b4f;border-color:#3d2422;box-shadow:3px 3px 0 #482829;font-size:9px}
.game-topbar{height:70px;margin:0 14px;background:transparent;border:0;padding:10px 5px;color:#433f37}.game-topbar .eyebrow{color:#795f1d}.speed-control{background:#eeeadd;border:3px solid #2b2a23;box-shadow:3px 3px 0 #6d7169}.speed-control>span{color:#5d584e}.speed-chip{background:#f8f4e7;color:#464139;border-left-color:#8f897b}.speed-chip.active{background:#f0ca3a;color:#372d17}.game-main{max-width:1220px;padding:4px 14px 28px}.run-layout{grid-template-columns:minmax(470px,690px) 230px;gap:14px;justify-content:center}.biome-bar{background:#efecdf;border:3px solid #292820;box-shadow:4px 4px 0 #5d625b;color:#484238;padding:11px 15px}.biome-bar .eyebrow{color:#816410}.biome-bar h2{font-size:15px}.node-counter{background:#f6f2e5;border:2px solid #343229;color:#6b5420;box-shadow:2px 2px 0 #8b897f}.map-caption{margin:10px 0 7px;padding:9px 12px;background:#eeeadd;border:3px solid #292820;box-shadow:3px 3px 0 #5e625a;align-items:center}.map-caption span{color:#4a443a;font-size:11px}.map-caption small{color:#6d685f;max-width:65%;text-align:right}
.node-board{height:830px;margin-top:0;border:4px solid #292820;box-shadow:5px 5px 0 #50564e;background-position:center;background-size:cover}.node-board:before,.node-board:after{width:26px;border-color:#193729;opacity:.88}.node-board .map-shade{background:linear-gradient(180deg,#d5f0d61c,#28463733);box-shadow:inset 0 0 65px #15382a55}.finish-gate{position:absolute;z-index:4;top:8px;left:50%;transform:translateX(-50%);padding:7px 14px;background:#eeeadd;border:3px solid #292820;box-shadow:3px 3px 0 #5d625b;font-size:8px;font-weight:800;color:#4a443a}.node-links{position:absolute;z-index:1;inset:34px 38px 48px;width:calc(100% - 76px);height:calc(100% - 82px);overflow:visible}.node-links line{stroke:#25352d;stroke-width:2;stroke-dasharray:7 7;vector-effect:non-scaling-stroke;opacity:.72}.node-grid{position:absolute;z-index:2;inset:45px 34px 53px;display:grid;grid-template-rows:repeat(8,1fr)}.node-row{display:grid;grid-template-columns:25px repeat(3,1fr);align-items:center;justify-items:center;position:relative}.row-label{font-size:7px;color:#385646;background:#e9e6d6bd;border:1px solid #5c6c60;padding:3px}.node-token{font:800 11px var(--font);image-rendering:pixelated}.future-node,.empty-node,.visited-node{display:grid;place-items:center;width:43px;height:43px;border-radius:50%;background:#ece8d9;border:3px solid #333129;box-shadow:3px 3px 0 #45554a;color:#777268}.future-node{opacity:.75}.empty-node{width:11px;height:11px;border-width:2px;background:#496c56;box-shadow:none;opacity:.5}.current-choice{width:138px;min-height:84px;padding:4px 5px;display:grid;grid-template-columns:53px 1fr;align-items:center;background:#efecdf;border:3px solid #2e2c24;box-shadow:4px 4px 0 #3f5548;color:#403b33;cursor:pointer;transition:.15s}.current-choice:hover{transform:translate(-2px,-2px);border-color:#f7d93d;box-shadow:6px 6px 0 #3f5548}.node-grass,.node-event-art{position:relative;display:grid;place-items:center;width:50px;height:50px;overflow:hidden}.node-grass>.ui-sprite{width:53px;height:53px;object-fit:contain}.node-grass>.pixel{position:absolute;width:34px;height:34px;right:0;top:1px}.node-grass>.silhouette{filter:brightness(0) drop-shadow(1px 1px 0 #fff9);opacity:.9}.node-event-art{background:#e6e1d2;border:2px solid #777164}.node-event-art>.ui-sprite{width:58px;height:58px;object-fit:contain;mix-blend-mode:multiply}.node-event-art.shop>.ui-sprite{width:67px;object-fit:cover}.node-card{text-align:left;min-width:0}.node-card strong{display:block;font-size:7px;line-height:1.25;margin-bottom:4px}.node-card small{display:block;font-size:6px;color:#745c20;margin-top:4px;white-space:nowrap}.node-card .type{font-size:5px;padding:2px 3px}.visited-node{position:relative;background:#efecdf;overflow:hidden}.visited-node .node-grass,.visited-node .node-event-art{width:36px;height:36px;border:0}.visited-node .ui-sprite,.visited-node .pixel{max-width:38px;max-height:38px}.player-position{outline:4px solid #ffdb32;outline-offset:4px;animation:node-current 1.1s steps(2) infinite}.map-start{position:absolute;z-index:4;bottom:6px;left:50%;transform:translateX(-50%);width:47px;height:47px;display:grid;place-items:center;background:#eeeadd;border:3px solid #2e2c24;box-shadow:3px 3px 0 #425148}.map-start .item-sprite{width:32px;height:32px;filter:hue-rotate(325deg) saturate(2.4)}.map-start small{position:absolute;top:43px;font-size:6px;background:#eeeadd;padding:2px 5px;border:1px solid #333129}.map-start.player-position{transform:translateX(-50%)}@keyframes node-current{50%{outline-color:#fff3a0;filter:brightness(1.18)}}
.type{display:inline-flex;align-items:center;gap:3px;border:1px solid #ffffffaa;font-weight:800;box-shadow:1px 1px 0 #2d2b2466}.type-sprite{display:grid;place-items:center;width:11px;height:11px;background:#ffffff35;border:1px solid #ffffff55;font-style:normal;font-size:7px;line-height:1}.type.flying{background:#6d91b5}.type.fighting{background:#9d483b}.type.steel{background:#697c83}.type.fairy{background:#a95f91}
.hud-resource{margin:8px 0;display:flex;justify-content:space-between;align-items:center;background:#efecdf;border:3px solid #2d2b24;box-shadow:3px 3px 0 #77766e;padding:8px;font-size:8px}.hud-resource strong{display:flex;align-items:center;gap:5px;color:#9a6e00;font-size:12px}.run-location{display:flex;flex-direction:column;gap:4px;background:#efecdf;border:3px solid #2d2b24;box-shadow:3px 3px 0 #77766e;padding:9px;margin-bottom:8px}.run-location span,.run-location small{font-size:7px;color:#726c60}.run-location strong{font-size:9px}.bag-head{background:#efecdf;color:#403b33;border-color:#2d2b24}.bag-head small{color:#746e62}.inventory-panel{background:transparent;border:0;box-shadow:none;padding:0}.bag-icon{background:#dfdac9;border-color:#2d2b24}.bag-tabs button{border-color:#2d2b24;box-shadow:2px 2px 0 #77766e}.bag-grid{background:#bea978;border:3px solid #6d4e31;padding:7px}.bag-help{background:#efecdf;border:2px solid #5f5a4f;padding:7px}
.biome-picker{background:#efecdf;border:4px solid #292820;box-shadow:6px 6px 0 #585d56;padding:22px}.biome-picker>header{text-align:center;margin-bottom:20px}.biome-picker h1{font-size:24px;margin:9px 0;color:#454037}.biome-picker header p{font-size:10px;color:#6c675d}.biome-options{display:grid;grid-template-columns:repeat(3,1fr);gap:11px}.biome-picker-card{position:relative;padding:0;background:#ded9ca;border:3px solid #302e26;box-shadow:4px 4px 0 #77766d;text-align:left;color:#423d35;overflow:hidden;cursor:pointer}.biome-picker-card:hover:not(:disabled){transform:translate(-2px,-2px);border-color:#d6ad20;box-shadow:6px 6px 0 #77766d}.biome-picker-card.locked{filter:grayscale(.75);opacity:.62}.biome-number{position:absolute;z-index:2;top:7px;left:7px;background:#282720;color:#f1d443;padding:4px 6px;font-size:8px}.biome-photo{height:175px;background-size:cover;background-position:center;position:relative}.biome-photo .route-types{position:absolute;left:8px;right:8px;bottom:8px}.biome-copy{padding:12px;min-height:105px;display:flex;flex-direction:column;gap:7px}.biome-copy strong{font-size:11px;line-height:1.3}.biome-copy small{font-size:7px;color:#44704c}.biome-copy span{font-size:6px;color:#776d5f;border-top:1px solid #999283;padding-top:7px}.biome-picker footer{font-size:8px;color:#6c675d;text-align:center;margin-top:18px;padding-top:13px;border-top:2px solid #aaa390}.pixel-dialog{background:#efecdf;color:#413c34;border-color:#292820;box-shadow:5px 5px 0 #555b53}.pixel-dialog p{color:#6c665c}.dialog-icon{border-color:#292820;box-shadow:3px 3px 0 #676b64}
.showdown-battle{border-color:#292820;box-shadow:5px 5px 0 #51564f}.battle-commandbar{background:#efecdf;border-bottom-color:#292820;color:#454037}.battle-commandbar .eyebrow{color:#7e6212}.battle-console{border-color:#292820}.battle-actions{background:#efecdf;color:#5d574d}.showdown-battle .nameplate{background:#efecdf;color:#302d27;border-color:#292820;box-shadow:5px 5px 0 #474d47}.menu-page{background:linear-gradient(#8ecbf3 0 68%,#84aa77 68%);color:#423d35}.menu-top{background:#efecdf;border-color:#292820}.menu-page .brand{color:#403b33}.starter-intro p{color:#5f5a51}.starter{background:#efecdf;border-color:#292820;box-shadow:5px 5px 0 #5c615a;color:#403b33}.starter:hover{box-shadow:7px 7px 0 #5c615a}.menu-page .dex-entry,.menu-page .panel{background:#efecdf;border-color:#292820;color:#403b33}.menu-page .muted{color:#716b61}
@media(max-width:1100px){.game-shell{grid-template-columns:165px minmax(0,1fr)}.team-rail{margin-left:8px}.run-layout{grid-template-columns:minmax(420px,1fr) 210px;gap:10px}.game-main{padding:4px 8px 24px}.node-board{height:790px}.current-choice{width:118px;grid-template-columns:45px 1fr}.node-grass,.node-event-art{width:43px;height:43px}.node-card small{font-size:5px}.biome-photo{height:140px}}
@media(max-width:820px){.game-shell{display:block}.team-rail{height:auto;margin:0;border-width:0 0 3px;box-shadow:none}.team-heading{padding:7px}.team-rail .team-list{grid-template-columns:repeat(6,1fr)}.team-rail .member{min-height:62px}.run-layout{grid-template-columns:1fr}.inventory-panel{order:-1;display:grid;grid-template-columns:1fr 1fr;gap:7px}.bag-head,.hud-resource,.run-location{margin:0}.bag-tabs,.bag-grid,.bag-stats,.bag-help{grid-column:1/-1}.bag-grid{grid-template-columns:repeat(10,1fr)}.node-board{height:760px}.biome-options{grid-template-columns:repeat(3,1fr)}}
@media(max-width:560px){.team-rail .team-list{grid-template-columns:repeat(3,1fr)}.inventory-panel{display:block}.hud-resource,.run-location{margin:7px 0}.bag-grid{grid-template-columns:repeat(5,1fr)}.biome-options{grid-template-columns:1fr}.biome-photo{height:165px}.node-board{height:720px}.node-grid{left:25px;right:25px}.current-choice{width:94px;display:flex;flex-direction:column;min-height:78px}.current-choice .node-card small,.current-choice .node-card .type-sprite{display:none}.node-card{text-align:center}.node-card strong{font-size:6px}.node-grass,.node-event-art{width:36px;height:36px}.node-grass>.ui-sprite{width:40px;height:40px}.node-grass>.pixel{width:27px;height:27px}.map-caption small{display:none}}

/* 2026-09-14 HUD refinement: visible route plan and balanced sprite scale. */
.game-shell{grid-template-columns:160px minmax(0,1fr);background:linear-gradient(#d9eef65c,#7791a65c),url("/static/game/world/background.d0bc3c19fb13.png") center/cover fixed no-repeat}.game-shell:before{display:none}.menu-page{background:linear-gradient(#d9eef67d,#7791a67d),url("/static/game/world/background.d0bc3c19fb13.png") center/cover fixed no-repeat}
.team-rail{height:auto;max-height:calc(100vh - 28px);align-self:start;overflow:auto}.team-rail .team-list{gap:4px}.team-rail .member{min-height:56px;padding:4px 3px}.team-rail .member>.pixel{width:30px;height:30px}.team-heading{padding:8px 4px 6px}.team-heading strong{font-size:14px}.drag-help{margin:9px 1px;font-size:7px}.abandon-btn{margin-top:10px;padding:9px 5px}
.game-main{max-width:1280px}.run-layout{grid-template-columns:minmax(520px,760px) 230px}.biome-bar{min-height:66px}.boss-distance{max-width:150px;padding:7px 9px;background:#463d2e;color:#ffe273;border:2px solid #27251f;box-shadow:3px 3px 0 #858176;text-align:center;font-size:8px;line-height:1.4}
.inventory-panel{background:#c6b17d;border:4px solid #4c3929;box-shadow:5px 5px 0 #34362f;padding:8px}.bag-head{min-height:58px;padding:6px;background:#efe8d5;border:0;border-bottom:3px solid #6d4e31;color:#3e3429}.bag-head>strong{font-size:12px;letter-spacing:1px}.bag-icon{width:45px;height:45px;background:#d8cda9}.bag-icon .ui-sprite{width:39px;height:39px;object-fit:contain;mix-blend-mode:normal}.bag-head-gold{margin-left:auto;display:flex;align-items:center;gap:4px;padding:6px;background:#4d3828;border:2px solid #d2a13a;color:#ffe25b;font-size:10px}.bag-head-gold .bag-gold-icon{mix-blend-mode:normal}.bag-tabs{padding-top:7px}.bag-grid{padding:7px;margin-top:5px}.bag-help{margin-top:7px}
.node-board{height:calc(100vh - 210px);min-height:680px;max-height:780px;border:4px solid #292820;background-position:center;background-size:cover}.node-board:before,.node-board:after{display:none}.node-board .map-shade{background:linear-gradient(180deg,#eefad50d,#1e382322);box-shadow:inset 0 0 38px #16332245}.node-links{inset:28px 24px 72px;width:calc(100% - 48px);height:calc(100% - 100px)}.node-links line{stroke:#20352a;stroke-width:2.2;stroke-dasharray:6 5;opacity:.82}.node-grid{inset:28px 20px 77px}.node-row{grid-template-columns:20px repeat(var(--nodes),minmax(0,1fr));gap:2px}.row-label{position:relative;z-index:3;padding:2px;font-size:6px}.map-preview{display:grid;place-items:center;width:56px;height:56px;background:#eee9d9;border:3px solid #343229;box-shadow:3px 3px 0 #4b5a4f;overflow:hidden}.future-row .map-preview{opacity:1}.past-row .map-preview.missed{opacity:.48;filter:grayscale(.55)}.past-row .map-preview.selected{opacity:1}.current-choice{width:calc(100% - 6px);max-width:128px;min-width:0;min-height:74px;padding:3px;display:flex;flex-direction:column;justify-content:center;gap:1px}.node-grass{width:62px;height:54px;overflow:visible}.node-grass>.ui-sprite{position:absolute;left:1px;bottom:0;width:34px;height:34px;object-fit:contain;z-index:1}.node-grass>.pixel{position:absolute;right:-1px;top:-3px;width:53px;height:53px;z-index:2}.node-grass>.silhouette{filter:brightness(0) drop-shadow(2px 2px 0 #fffbd8);opacity:.94}.node-event-art{width:52px;height:52px;border:0;background:transparent}.node-event-art>.ui-sprite{width:52px;height:52px;mix-blend-mode:normal}.node-event-art.shop>.ui-sprite{width:60px;height:50px;object-fit:contain}.node-card{text-align:center}.node-card strong{font-size:6px;margin:1px 0}.node-card small{font-size:5px;margin-top:1px}.node-card .route-types{justify-content:center;gap:1px}.node-card .type{font-size:4px;padding:1px 2px}.node-card .type-sprite{width:8px;height:8px;font-size:5px}.map-start{bottom:7px;width:60px;height:61px;padding:3px;display:flex;flex-direction:column;justify-content:center;gap:1px}.map-start .item-sprite{width:32px;height:32px}.map-start small{position:static;padding:1px 3px;font-size:5px;line-height:1}.player-position{outline-width:4px;outline-offset:2px}
.home-menu-icon{width:46px;height:46px}.home-menu-icon .item-sprite{width:34px;height:34px}.home-ui-icon.pokedex{width:82px;height:62px}.home-ui-icon.hall_of_fame{width:50px;height:50px}.home-menu-card{grid-template-columns:48px 1fr 18px;min-height:70px}.home-menu-card.wide{min-height:74px}
@media(max-width:1100px){.game-shell{grid-template-columns:145px minmax(0,1fr)}.team-rail{margin-left:7px}.run-layout{grid-template-columns:minmax(430px,1fr) 205px}.current-choice{max-width:105px}.map-preview{width:50px;height:50px}.node-grass{width:54px;height:52px}.node-grass>.pixel{width:49px;height:49px}.node-grass>.ui-sprite{width:32px;height:32px}}
@media(max-width:820px){.team-rail{max-height:none}.inventory-panel{display:block}.node-board{height:780px}.run-layout{grid-template-columns:1fr}.bag-grid{grid-template-columns:repeat(10,1fr)}}
@media(max-width:560px){.node-grid{left:10px;right:10px}.node-row{grid-template-columns:15px repeat(var(--nodes),minmax(0,1fr))}.map-preview{width:40px;height:40px}.current-choice{max-width:72px;min-height:74px}.node-grass{width:42px;height:40px}.node-grass>.pixel{width:38px;height:38px}.node-grass>.ui-sprite{width:26px;height:26px}.node-event-art,.node-event-art>.ui-sprite{width:40px;height:40px}.node-card small{white-space:normal}.home-menu-icon{width:40px;height:40px}.home-menu-card{grid-template-columns:42px 1fr 14px}}

/* PokéSprite type language and redesigned starter selection. */
.type{padding:3px 6px 3px 4px;gap:4px;line-height:1}.type-sprite{display:block;width:15px;height:15px;object-fit:contain;background:transparent;border:0;filter:drop-shadow(1px 1px 0 #0005)}
.type-logo{display:inline-grid;grid-template-columns:33px auto;align-items:center;gap:5px;min-height:38px;padding:2px 9px 2px 3px;background:#f8f4e7;border:2px solid #3b382f;box-shadow:2px 2px 0 #8d897c;color:#403b33}.type-logo img{display:block!important;width:33px!important;height:33px!important;object-fit:contain}.type-logo strong{font-size:8px;letter-spacing:.7px;text-transform:uppercase}.type-logo.grass{border-bottom-color:#4fbd52}.type-logo.poison{border-bottom-color:#9b69cf}.type-logo.fire{border-bottom-color:#ef7938}.type-logo.water{border-bottom-color:#4291d9}.type-logo.electric{border-bottom-color:#e8c236}.type-logo.ice{border-bottom-color:#5fc6c9}.type-logo.flying{border-bottom-color:#7f9bd6}.type-logo.psychic{border-bottom-color:#e26188}.type-logo.bug{border-bottom-color:#91ad1b}.type-logo.rock{border-bottom-color:#a8943a}.type-logo.ground{border-bottom-color:#c99848}.type-logo.ghost{border-bottom-color:#665b9a}.type-logo.dragon{border-bottom-color:#6b55bf}.type-logo.fighting{border-bottom-color:#c54d3c}.type-logo.normal{border-bottom-color:#96958a}.type-logo.fairy{border-bottom-color:#d781ad}.type-logo.steel{border-bottom-color:#7792a0}.type-logo.dark{border-bottom-color:#4c4a52}
.brand-home-style{gap:11px}.brand-home-style .ball-logo{flex:0 0 24px}.brand-home-style>div{display:flex;flex-direction:column;align-items:flex-start}.brand-wordmark{position:relative;display:inline-block;font-family:Impact,'Arial Black',sans-serif;font-size:25px;line-height:.9;letter-spacing:.8px;color:#ffdc3e;-webkit-text-stroke:1.5px #40182e;text-shadow:0 2px 0 #f18421,0 4px 0 #7b2d25,2px 5px 0 #d5d0be;transform:scaleX(1.04);transform-origin:left center}.brand-wordmark:after{content:attr(data-text);position:absolute;inset:0;color:transparent;-webkit-text-stroke:.6px #fff0a6;transform:translateY(-1px);pointer-events:none}.brand-home-style small{margin-top:7px;color:#287c99!important;font-size:7px!important;letter-spacing:2.3px!important}
.menu-page .main{max-width:1120px;padding-top:31px}.starter-intro{margin-bottom:21px}.starter-intro h1{font-size:29px;margin:9px 0}.starter-intro p{max-width:640px;margin:auto;line-height:1.55}.starter-grid{gap:22px;margin:19px auto 0;max-width:1020px}.starter{--starter-accent:#8b8b82;position:relative;min-height:386px;padding:15px 17px 17px;display:grid;grid-template-rows:auto 170px 1fr auto;gap:8px;overflow:hidden;background:linear-gradient(180deg,#faf7eb 0,#efecdf 69%,#e0dccd 100%);border:3px solid #292820;box-shadow:6px 6px 0 #5c615a;text-align:left}.starter:before{content:'';position:absolute;left:0;right:0;top:0;height:7px;background:var(--starter-accent);border-bottom:2px solid #292820}.starter:after{content:'';position:absolute;width:155px;height:155px;right:-53px;top:52px;border:20px solid color-mix(in srgb,var(--starter-accent) 16%,transparent);border-radius:50%;pointer-events:none}.starter-grass{--starter-accent:#4db653}.starter-fire{--starter-accent:#ed7736}.starter-water{--starter-accent:#3b8fd1}.starter-top{display:flex;justify-content:space-between;align-items:center;margin-top:5px}.starter-number{font-size:8px;letter-spacing:1.2px;color:#756f62}.starter-level{padding:5px 7px;background:#343129;color:#fff4c8;border:2px solid #1e1d18;box-shadow:2px 2px 0 var(--starter-accent);font-size:8px}.starter-portrait{position:relative;z-index:1;display:grid;place-items:center;border-bottom:2px dashed #aaa394}.starter-portrait .pixel{width:148px;height:148px;max-width:none;filter:drop-shadow(5px 7px 0 #2e302724)}.starter-info{display:grid;align-content:start;gap:8px;text-align:left}.starter-info h2{font-size:23px;line-height:1;margin:1px 0 0}.starter-types{display:flex;flex-wrap:wrap;gap:6px;min-height:38px}.starter-info p{font-size:7px;letter-spacing:1.5px;color:#766f61}.starter .btn{position:relative;z-index:1;margin-top:1px;padding:13px 8px;background:var(--starter-accent);border:3px solid #292820;box-shadow:4px 4px 0 #555850;color:#fff;font-size:8px;text-shadow:1px 1px 0 #0007}.starter .btn:hover{filter:brightness(1.08);transform:translate(-1px,-1px);box-shadow:5px 5px 0 #555850}.starter:hover{border-color:#292820;transform:translate(-2px,-2px);box-shadow:8px 8px 0 var(--starter-accent)}
@media(max-width:760px){.menu-page .main{padding-top:22px}.starter-grid{grid-template-columns:1fr;max-width:430px}.starter{min-height:330px;grid-template-rows:auto 135px 1fr auto}.starter-portrait .pixel{width:124px;height:124px}.starter-intro h1{font-size:23px}.brand-wordmark{font-size:21px}.menu-top{padding:0 17px}}
@media(max-width:560px){.type{font-size:7px}.type-sprite{width:13px;height:13px}.type-logo{grid-template-columns:29px auto;min-height:34px}.type-logo img{width:29px!important;height:29px!important}.starter{padding:13px 14px 15px}.starter-info h2{font-size:20px}.starter .btn{font-size:7px}.brand-home-style .ball-logo{width:18px;height:18px}.brand-home-style small{font-size:6px!important;letter-spacing:1.6px!important}}

/* Homepage menu: text-first, evenly distributed and free of decorative icons. */
.home-window:not(.auth-active){width:min(570px,94vw);padding:31px 42px 25px}.home-window:not(.auth-active) .home-wordmark{font-size:49px}.home-window:not(.auth-active) .home-actions{display:grid;grid-template-columns:1fr;gap:8px;width:100%;max-width:455px;margin:22px auto 18px}.home-window:not(.auth-active) .home-menu-card,.home-window:not(.auth-active) .home-menu-card.wide{grid-column:1;min-height:57px;display:block;padding:10px 17px 10px 20px;text-align:left;border-width:2px;box-shadow:4px 4px 0 #05040c}.home-window:not(.auth-active) .home-menu-card:before{left:0;top:0;bottom:0;width:6px;height:auto;background:var(--menu-accent);box-shadow:none}.home-window:not(.auth-active) .home-menu-copy{display:grid;grid-template-columns:minmax(150px,.72fr) 1fr;align-items:center;gap:15px}.home-window:not(.auth-active) .home-menu-copy strong{font-size:10px;line-height:1.25}.home-window:not(.auth-active) .home-menu-copy small{margin:0;padding-left:15px;border-left:1px solid #aab7df66;font-size:7px;line-height:1.5}.home-window:not(.auth-active) .home-menu-card.journey-card{min-height:64px}.home-window:not(.auth-active) .home-menu-card.journey-card .home-menu-copy strong{color:#ffe66a}.home-window:not(.auth-active) .home-premise{max-width:455px;margin:12px auto 0;padding:12px 5px}.home-window:not(.auth-active) .home-premise p{font-size:8px;line-height:1.65}.home-window:not(.auth-active) .home-account{margin-top:13px;padding-top:0}
@media(max-width:560px){.home-window:not(.auth-active){padding:26px 18px 22px}.home-window:not(.auth-active) .home-wordmark{font-size:39px}.home-window:not(.auth-active) .home-actions{gap:7px;margin-top:18px}.home-window:not(.auth-active) .home-menu-card,.home-window:not(.auth-active) .home-menu-card.wide{min-height:60px;padding:10px 15px 10px 17px}.home-window:not(.auth-active) .home-menu-copy{grid-template-columns:1fr;gap:4px}.home-window:not(.auth-active) .home-menu-copy small{padding:0;border:0}.home-window:not(.auth-active) .home-premise p{font-size:7px}}

/* 125%-equivalent readability without relying on browser zoom. */
body{font-size:17px}.eyebrow{font-size:13px}.small{font-size:14px}.btn{font-size:14px;padding:13px 18px}
.home-window:not(.auth-active){width:min(650px,94vw);padding:36px 48px 30px}.home-window:not(.auth-active) .home-wordmark{font-size:56px}.home-tagline{font-size:12px}.home-version{font-size:10px}.home-window:not(.auth-active) .home-actions{max-width:530px;gap:10px;margin:26px auto 22px}.home-window:not(.auth-active) .home-menu-card,.home-window:not(.auth-active) .home-menu-card.wide{min-height:70px;padding:13px 20px 13px 24px}.home-window:not(.auth-active) .home-menu-copy{grid-template-columns:minmax(185px,.8fr) 1fr;gap:18px}.home-window:not(.auth-active) .home-menu-copy strong{font-size:13px}.home-window:not(.auth-active) .home-menu-copy small{font-size:10px;line-height:1.55}.home-window:not(.auth-active) .home-premise{max-width:530px;padding:15px 7px}.home-window:not(.auth-active) .home-premise strong{font-size:11px}.home-window:not(.auth-active) .home-premise p{font-size:11px;line-height:1.65}.home-window:not(.auth-active) .home-account{font-size:11px}.home-credit{font-size:10px}.home-auth{width:min(440px,100%)}.home-auth h2{font-size:22px}.home-auth .eyebrow,.home-auth .auth-tabs button,.home-auth .field,.home-auth .field input{font-size:12px}.home-back,.home-recovery{font-size:11px}
.menu-top{height:88px}.menu-page .main{max-width:1280px;padding:38px 34px}.brand-wordmark{font-size:29px}.brand-home-style small{font-size:9px!important}.starter-intro h1{font-size:35px}.starter-intro p{font-size:15px}.starter-grid{max-width:1120px;gap:26px}.starter{min-height:440px;grid-template-rows:auto 195px 1fr auto;padding:18px 20px 20px}.starter-number,.starter-level{font-size:11px}.starter-portrait .pixel{width:172px;height:172px}.starter-info h2{font-size:27px}.starter-info p{font-size:10px}.type-logo strong{font-size:11px}.type-logo{grid-template-columns:39px auto;min-height:44px}.type-logo img{width:39px!important;height:39px!important}.starter .btn{font-size:11px;padding:15px 9px}
.pagehead h1{font-size:36px}.panel-title{font-size:14px}.collection{grid-template-columns:repeat(auto-fill,minmax(145px,1fr));gap:16px}.dex-entry{padding:14px;font-size:14px}.dex-entry img{width:108px;height:108px}.shop-grid{gap:16px}.shop-item{padding:20px}.shop-item h3{font-size:16px}.shop-item p{font-size:14px;line-height:1.55}.banner,.detail-cell,.statrow,.side-note{font-size:14px}
.game-shell{grid-template-columns:205px minmax(0,1fr)}.game-topbar{height:84px}.game-topbar .eyebrow{font-size:12px}.speed-control>span{font-size:10px}.speed-chip{font-size:12px;padding:9px}.game-main{max-width:1420px;padding:8px 18px 34px}.run-layout{grid-template-columns:minmax(600px,820px) 270px;gap:18px}.biome-bar{min-height:78px;padding:14px 18px}.biome-bar h2{font-size:20px}.boss-distance{max-width:190px;font-size:11px;padding:9px 12px}.map-caption{padding:12px 15px}.map-caption span{font-size:14px}.map-caption small{font-size:10px;line-height:1.5}.row-label{font-size:9px;padding:3px 4px}.node-card strong{font-size:9px}.node-card small{font-size:8px}.node-card .type{font-size:7px;padding:2px 4px}.node-card .type-sprite{width:11px;height:11px}.current-choice{max-width:150px;min-height:91px;padding:5px}.map-preview{width:65px;height:65px}.node-grass{width:70px;height:64px}.node-grass>.pixel{width:61px;height:61px}.node-grass>.ui-sprite{width:39px;height:39px}.node-event-art,.node-event-art>.ui-sprite{width:61px;height:61px}.map-start{width:68px;height:69px}.map-start .item-sprite{width:38px;height:38px}.map-start small{font-size:8px}.finish-gate{font-size:10px}
.team-rail{padding:15px 11px}.back-home{font-size:12px}.team-heading strong{font-size:18px}.team-heading small{font-size:11px}.team-rail .member{min-height:70px;padding:6px 5px}.team-rail .member>.pixel{width:41px;height:41px}.team-rail .member h3{font-size:11px}.team-rail .member .small,.team-rail .member .slot,.team-rail .drag-grip,.drag-help{font-size:9px}.abandon-btn{font-size:11px;padding:12px 7px}
.inventory-panel{padding:10px}.bag-head{min-height:70px;padding:8px}.bag-head>strong{font-size:15px}.bag-icon{width:54px;height:54px}.bag-icon .ui-sprite{width:47px;height:47px}.bag-head-gold{font-size:13px;padding:8px}.bag-tabs button{font-size:10px;padding:10px 5px}.bag-tabs button small{font-size:9px}.bag-slot small,.slot-num{font-size:8px}.bag-stats,.bag-help{font-size:10px;line-height:1.55}
.biome-picker{padding:29px}.biome-picker h1{font-size:31px}.biome-picker header p{font-size:14px}.biome-number{font-size:11px}.biome-photo{height:210px}.biome-copy{padding:15px;min-height:135px}.biome-copy strong{font-size:15px}.biome-copy small{font-size:10px}.biome-copy span{font-size:9px}.biome-picker footer{font-size:11px;line-height:1.55}.pixel-dialog p{font-size:15px;line-height:1.65}
.battle-commandbar h2{font-size:22px}.battle-commandbar .eyebrow{font-size:11px}.battle-mode,.battle-event{font-size:12px}.showdown-battle .nameplate h3{font-size:15px}.showdown-battle .nameplate,.hp-numbers,.battle-actions{font-size:12px}.battle-log{font-size:14px;line-height:1.7}.type{font-size:11px}.type-sprite{width:18px;height:18px}
.modal{width:min(1120px,96vw)}.modal-head h2{font-size:27px}.modal-body{font-size:16px}.upgrade-side header p,.resource-block p,.attempt-rule,.selected-summary,.capture-pokemon small,.sacrifice,.target-values em{font-size:11px}.upgrade-side h3,.resource-block h3{font-size:15px}.capture-item strong,.capture-pokemon strong{font-size:13px}.investment button{font-size:13px}.upgrade-center>.btn{font-size:14px}.wheel-center span,.wheel-center small{font-size:10px}.skip-link{font-size:11px}
@media(max-width:1180px) and (min-width:901px){.game-shell{display:block}.team-rail{position:relative;top:auto;height:auto;max-height:none;margin:10px;overflow:visible;display:grid;grid-template-columns:72px 78px minmax(0,1fr) 135px;align-items:center;gap:10px;border:3px solid #28271f}.back-home{border:0}.team-heading{padding:8px;border:0}.team-rail .team-list{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:7px;margin:0}.team-rail .member{min-height:61px}.team-rail .member>.pixel{width:34px;height:34px}.drag-help{display:none}.abandon-btn{margin:0}.game-main{max-width:1160px;margin:auto}.run-layout{grid-template-columns:minmax(0,1fr) 270px}.node-board{height:780px}}
@media(max-width:900px){.game-shell{display:block}.team-rail{position:relative;top:auto;height:auto;max-height:none;margin:8px;overflow:visible}.team-rail .team-list{display:grid;grid-template-columns:repeat(6,minmax(0,1fr))}.run-layout{grid-template-columns:1fr}.inventory-panel{order:-1;display:grid;grid-template-columns:1fr 1fr;gap:9px}.bag-head{grid-column:1/-1}.bag-tabs,.bag-grid,.bag-stats,.bag-help{grid-column:1/-1}.bag-grid{grid-template-columns:repeat(10,1fr)}.node-board{height:820px}.biome-options{grid-template-columns:repeat(3,1fr)}}
@media(max-width:620px){.home-window:not(.auth-active){padding:29px 20px 25px}.home-window:not(.auth-active) .home-wordmark{font-size:44px}.home-window:not(.auth-active) .home-menu-copy{grid-template-columns:1fr;gap:5px}.home-window:not(.auth-active) .home-menu-copy small{padding:0;border:0;font-size:10px}.home-window:not(.auth-active) .home-premise p{font-size:10px}.team-rail .team-list{grid-template-columns:repeat(3,1fr)}.bag-grid{grid-template-columns:repeat(5,1fr)}.biome-options{grid-template-columns:1fr}.starter{min-height:365px;grid-template-rows:auto 150px 1fr auto}.starter-portrait .pixel{width:137px;height:137px}.node-board{height:760px}.map-caption small{display:block;max-width:58%}.node-card strong{font-size:8px}.node-card small{font-size:7px}.current-choice{max-width:95px;min-height:88px}}

/* Final legibility floor for secondary information. */
.home-window:not(.auth-active) .home-menu-copy strong{font-size:14px}.home-window:not(.auth-active) .home-menu-copy small{font-size:12px}.home-window:not(.auth-active) .home-premise strong{font-size:12px}.home-window:not(.auth-active) .home-premise p,.home-window:not(.auth-active) .home-account{font-size:12px}.home-credit{font-size:11px}.biome-photo .type{font-size:10px;padding:4px 6px}.biome-photo .type-sprite{width:16px;height:16px}.bag-tabs button{font-size:11px}.bag-slot small,.slot-num{font-size:9px}.bag-stats,.bag-help{font-size:11px}.node-card strong{font-size:10px}.node-card small{font-size:9px}.battle-log{font-size:15px}.upgrade-side header p,.resource-block p,.attempt-rule,.selected-summary,.capture-pokemon small,.sacrifice,.target-values em{font-size:12px}
@media(max-width:1180px) and (min-width:901px){.team-rail{grid-template-columns:62px 62px minmax(0,1fr) 120px}.team-rail .member.empty .info{display:none}.team-rail .member.empty{justify-content:center}.team-rail .member.empty .empty-ball{width:auto}.team-rail .member h3{font-size:10px}}
@media(max-width:620px){.home-window:not(.auth-active) .home-menu-copy small,.home-window:not(.auth-active) .home-premise p{font-size:11px}.biome-photo .type{font-size:9px}.node-card strong{font-size:9px}.node-card small{font-size:8px}}

/* Internal wordmark and journey outcome. */
.menu-page .brand-home-style{gap:0}.menu-page .brand-wordmark{font-size:31px;text-shadow:0 2px 0 #f18421,0 4px 0 #7b2d25,2px 5px 0 #d5d0be}
.menu-page .main:has(.outcome){max-width:1080px;padding-top:48px}.outcome{--outcome-accent:#d28a37;position:relative;max-width:960px;margin:0 auto;padding:0!important;text-align:left!important;overflow:hidden;background:#efecdf!important;border:4px solid #292820!important;box-shadow:8px 8px 0 #555b53!important;color:#403b33}.outcome:before{content:'';position:absolute;z-index:2;left:0;right:0;top:0;height:9px;background:var(--outcome-accent);border-bottom:3px solid #292820}.outcome-win{--outcome-accent:#60ad63}.outcome-escaped{--outcome-accent:#ca6857}.outcome-hero{display:grid;grid-template-columns:230px minmax(0,1fr);align-items:center;gap:34px;padding:48px 46px 38px}.outcome-portrait{position:relative;height:210px;display:grid;place-items:center;background:linear-gradient(145deg,#283364,#121837);border:4px solid #292820;box-shadow:6px 6px 0 color-mix(in srgb,var(--outcome-accent) 72%,#37372f);overflow:hidden}.outcome-portrait:before,.outcome-portrait:after{content:'';position:absolute;width:125px;height:125px;border:3px solid #ffffff18;transform:rotate(45deg)}.outcome-portrait:after{width:75px;height:75px;border-color:#ffffff25}.outcome-portrait .pixel{position:relative;z-index:2;width:175px!important;height:175px!important;filter:drop-shadow(6px 9px 0 #080a1660)}.outcome-spark{position:absolute;z-index:3;right:14px;top:11px;color:#ffe36b;font-size:25px;text-shadow:0 0 8px #fff08c}.outcome-copy .eyebrow{display:inline-block;padding:7px 10px;background:#37342d;color:#ffe26a;border-left:6px solid var(--outcome-accent);font-size:11px}.outcome h1{margin:19px 0 15px!important;color:#302c27;font-size:40px!important;line-height:1.12;letter-spacing:-1px}.outcome-copy p{max-width:590px!important;margin:0!important;color:#5c574e!important;font-size:16px;line-height:1.75;font-weight:600}.outcome-summary{display:grid;grid-template-columns:1fr 1fr 1.35fr;border-top:4px solid #292820;border-bottom:4px solid #292820;background:#d9d3c3}.outcome-stat{min-height:110px;display:flex;flex-direction:column;justify-content:center;padding:20px 27px;border-right:3px solid #8f8878}.outcome-stat:last-child{border-right:0}.outcome-stat>span{font-size:10px;letter-spacing:1.6px;color:#736a5a}.outcome-stat>strong{margin:8px 0 5px;color:#343029;font-size:24px}.outcome-stat>small{color:#70695e;font-size:11px}.outcome-result>strong{color:var(--outcome-accent);font-size:18px}.outcome-next{display:flex;align-items:center;justify-content:space-between;gap:28px;padding:28px 38px 31px}.outcome-next>div{display:flex;flex-direction:column;gap:7px}.outcome-next>div>strong{font-size:12px;color:#403a31;letter-spacing:1px}.outcome-next>div>small{font-size:12px;color:#6b6458;line-height:1.45}.outcome-next .btn{flex:0 0 auto;min-width:265px;padding:16px 20px;font-size:13px;box-shadow:5px 5px 0 #555850}
@media(max-width:760px){.menu-page .main:has(.outcome){padding:26px 16px}.outcome-hero{grid-template-columns:1fr;padding:34px 24px 27px;gap:24px}.outcome-portrait{width:min(250px,100%);height:185px;margin:auto}.outcome-portrait .pixel{width:150px!important;height:150px!important}.outcome-copy{text-align:center}.outcome h1{font-size:31px!important}.outcome-copy p{font-size:14px}.outcome-summary{grid-template-columns:1fr 1fr}.outcome-result{grid-column:1/-1;border-top:3px solid #8f8878}.outcome-stat:nth-child(2){border-right:0}.outcome-stat{min-height:95px;padding:17px}.outcome-next{flex-direction:column;text-align:center;padding:24px}.outcome-next .btn{width:100%;min-width:0}.menu-page .brand-wordmark{font-size:26px}}

/* Horizontal party HUD and inventory hierarchy. */
.game-shell{display:flex;flex-direction:column;min-height:100vh}
.game-topbar{width:calc(100% - 28px);max-width:1420px;height:auto;min-height:76px;margin:12px auto 0;padding:9px 13px;display:flex;align-items:center;justify-content:space-between;gap:18px;background:#efecdf;border:3px solid #292820;box-shadow:4px 4px 0 #5d625b;color:#433f37}
.expedition-id{display:flex;flex-direction:column;gap:4px;min-width:145px}.game-top-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px}.run-nav{display:flex;gap:7px}.run-nav button{min-height:42px;padding:8px 12px;background:#f8f4e7;color:#464139;border:2px solid #343229;box-shadow:3px 3px 0 #77766e;font:700 10px var(--font)}.run-nav button:hover{background:#fff5c7;transform:translate(-1px,-1px)}.run-nav button.danger{background:#984b4f;color:#fff3df;border-color:#452727;box-shadow:3px 3px 0 #482829}
.team-rail{position:relative;top:auto;width:calc(100% - 28px);max-width:1420px;height:auto;max-height:none;min-height:94px;margin:11px auto 4px;padding:9px 11px;overflow:visible;display:flex;flex-direction:row;align-items:stretch;gap:12px;background:#ded8c6;border:3px solid #292820;box-shadow:4px 4px 0 #5d625b;color:#403b33}
.team-heading{flex:0 0 145px;padding:8px 12px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:4px;border:0;border-right:3px solid #aaa38f}.team-heading strong{font-size:15px;letter-spacing:1px;white-space:nowrap}.team-heading span{color:#8b6a19;font-size:13px}.team-heading small{font-size:8px;line-height:1.3;color:#736c60;white-space:nowrap}
.team-rail .team-list{min-width:0;flex:1;display:flex;flex-direction:row;align-items:center;gap:10px;margin:0;overflow-x:auto;padding:2px 4px 5px}.team-rail .member{flex:1 0 150px;max-width:190px;width:auto;height:69px;min-height:69px;margin-left:17px;padding:7px 8px 6px 37px;gap:7px;overflow:visible;background:#f4f0e3;border:3px solid #302e27;box-shadow:3px 3px 0 #77766e;color:#433e36}.team-rail .member:hover{background:#fff7dd}.team-rail .member.fainted{filter:grayscale(.7);opacity:.65}.team-rail .team-portrait{position:absolute;left:-25px;top:7px;width:52px;height:52px;display:grid;place-items:center;background:#bd3e3f;border:3px solid #292820;border-radius:50%;box-shadow:2px 2px 0 #77766e;overflow:hidden}.team-rail .team-portrait:after{content:'';position:absolute;left:0;right:0;top:23px;border-top:3px solid #292820}.team-rail .team-portrait .pixel{position:relative;z-index:1;width:47px;height:47px;filter:drop-shadow(1px 2px 0 #fff8)}.team-rail .member .slot{position:absolute;right:5px;top:4px;color:#9a7620;font-size:8px}.team-rail .drag-grip{position:absolute;right:5px;bottom:3px;color:#958f81;font-size:9px}.team-rail .member .info{min-width:0;width:100%}.member-title,.member-health{display:flex;align-items:center;justify-content:space-between;gap:6px}.team-rail .member h3{max-width:88px;color:#343029;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.member-title>strong{color:#6d675d;font-size:8px;white-space:nowrap}.member-health{margin-top:7px;font-size:8px;color:#8b332f}.member-health>strong{font-size:9px}.team-rail .hp{height:7px;margin-top:3px;border:2px solid #292a23;background:#cbc8ba}.team-rail .hp>span{background:#48bd5c}
.team-rail .member.add-member{flex:0 0 76px;width:76px;margin-left:0;padding:6px;display:flex;flex-direction:column;justify-content:center;gap:4px;background:#eee9d9;border:3px dashed #777164;box-shadow:none;opacity:1;color:#6b665c}.team-rail .member.add-member:hover{border-color:#b28b21;color:#8d6711;background:#fff5c7}.add-member .empty-ball{font-size:27px;line-height:1;color:#b28b21}.add-member small{font-size:8px}
.game-main{width:100%;margin:0 auto}.run-layout{width:100%}
.bag-head{min-height:60px;padding:10px 9px}.bag-head>strong{font-size:15px;letter-spacing:1.2px}.bag-head-gold{margin-left:auto;min-width:76px;justify-content:center;font-size:14px}.bag-head-gold .bag-gold-icon,.mini-gold{width:24px;height:24px;object-fit:contain;mix-blend-mode:normal;border-radius:0}.bag-tabs{grid-template-columns:repeat(2,1fr)}.bag-stats{justify-content:flex-start}.active-passives{margin-top:8px;background:#31473d;border:3px solid #26372f;box-shadow:3px 3px 0 #6a5137;color:#f8edc8}.active-passives header{display:flex;align-items:center;justify-content:space-between;padding:8px 9px;border-bottom:2px solid #769072;font-size:10px;letter-spacing:.7px}.active-passives header small{display:grid;place-items:center;min-width:20px;height:20px;background:#f0ca3a;color:#3d321e;border:2px solid #292820}.passive-list{min-height:59px;padding:7px;display:flex;align-items:center;gap:7px;overflow-x:auto}.passive-item{flex:0 0 47px;min-height:45px;padding:4px 2px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;background:#e9e1c8;color:#4b4033;border:2px solid #a28f65;box-shadow:2px 2px 0 #15231d}.passive-item .item-sprite{width:27px;height:27px}.passive-item small{max-width:42px;font-size:6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.passive-empty{padding:8px;color:#c0ccb5;font-size:9px}.bag-help{margin-top:9px}
@media(max-width:900px){.game-topbar{align-items:flex-start}.game-top-actions{align-items:flex-end;flex-direction:column-reverse}.team-rail{flex-direction:column}.team-heading{flex:0 0 auto;min-height:52px;display:grid;grid-template-columns:auto auto 1fr;align-items:center;gap:10px;border-right:0;border-bottom:3px solid #aaa38f}.team-heading small{text-align:right}.team-rail .team-list{width:100%}.inventory-panel{display:block}.bag-tabs,.bag-grid,.bag-stats,.active-passives,.bag-help{grid-column:auto}}
@media(max-width:620px){.game-topbar{width:calc(100% - 16px);margin-top:8px;flex-direction:column}.game-top-actions{width:100%;align-items:stretch}.run-nav{justify-content:space-between}.speed-control{align-self:flex-end}.team-rail{width:calc(100% - 16px);margin-top:8px}.team-rail .member{flex-basis:162px}.team-heading{grid-template-columns:1fr auto}.team-heading small{grid-column:1/-1;text-align:left}.active-passives header{font-size:9px}}

/* Desktop composition: vertical party rail and aligned journey panels. */
.game-shell{display:grid;grid-template-columns:220px minmax(0,1fr);align-items:start}.game-stage{min-width:0}
.game-topbar,.game-main{width:calc(100% - 28px);max-width:1144px;margin-left:auto;margin-right:auto}.game-topbar{margin-top:12px}.game-main{padding:8px 0 34px}
.team-rail{position:sticky;top:12px;width:auto;max-width:none;min-height:0;max-height:calc(100vh - 24px);margin:12px 0 12px 14px;padding:10px;overflow:auto;display:flex;flex-direction:column;align-items:stretch;gap:9px}
.team-heading{flex:0 0 auto;min-height:80px;padding:11px 8px;display:flex;flex-direction:column;align-items:flex-start;gap:5px;border:0;border-bottom:3px solid #aaa38f}.team-heading strong{font-size:15px}.team-heading small{white-space:normal}
.team-rail .team-list{width:100%;display:flex;flex-direction:column;align-items:stretch;gap:10px;margin:0;overflow:visible;padding:3px 3px 6px 17px}.team-rail .member{flex:0 0 69px;width:calc(100% - 17px);max-width:none;margin-left:0}.team-rail .member h3{max-width:72px;font-size:9px}.team-rail .member-title>strong{font-size:7px}.team-rail .member.add-member{flex:0 0 65px;width:76px;align-self:center;margin:1px 0 0 -17px}

/* Inventory: quieter frame, clearer title and compact Pokédollar display. */
.inventory-panel{padding:8px;background:#bda66f;border:3px solid #49362a;box-shadow:4px 4px 0 #34362f}
.bag-head{position:relative;min-height:56px;padding:8px 9px 8px 12px;gap:8px;background:#40352c;color:#fff2ca;border:3px solid #292820;box-shadow:3px 3px 0 #806b46}.bag-head:before{content:'';position:absolute;left:0;top:0;bottom:0;width:5px;background:#e7bf3b}.bag-title{display:flex;flex:1;min-width:0;flex-direction:column;align-items:center;text-align:center;gap:4px}.bag-title small{font-size:7px;letter-spacing:1.2px;color:#cdbd8e}.bag-title strong{font-size:13px;letter-spacing:1px;color:#fff6d7}
.bag-head-gold{min-width:58px;margin-left:auto;padding:4px 6px;gap:5px;background:#292a25;border:2px solid #b48c20;box-shadow:2px 2px 0 #171713;color:#f4d349;font-size:11px}.bag-head-gold .bag-gold-icon{width:22px;height:22px}
.bag-tabs{gap:6px;padding-top:9px}.bag-tabs button{min-height:48px;padding:8px 5px;background:#9d8357;border:2px solid #4b3a2d;box-shadow:2px 2px 0 #5e4933;color:#3d3026}.bag-tabs button.active{background:#f3dda0;border-color:#5b432d;color:#6d3e22;box-shadow:inset 0 4px 0 #e3b42f}.bag-tabs button small{margin-top:4px}
.bag-grid{margin-top:7px;padding:7px;background:#8e774e;border:3px solid #4b382a;gap:5px}.bag-slot{background:#ded3ae;border-color:#73613f;box-shadow:inset 3px 3px 0 #f8edc9,inset -3px -3px 0 #a18c62}.bag-slot.filled{background:#f5e8bd}.bag-stats{margin-top:7px;padding:8px 9px;background:#4c3a2d;border:2px solid #292820}.active-passives{margin-top:7px;box-shadow:2px 2px 0 #6a5137}.bag-help{margin-top:8px;padding:8px;background:#f0ead9;border:2px solid #5b5347;color:#574b3e}

@media(max-width:900px){.game-shell{display:block}.game-topbar,.game-main{width:calc(100% - 16px)}.team-rail{position:relative;top:auto;width:calc(100% - 16px);max-height:none;margin:8px auto;overflow:visible;flex-direction:row}.team-heading{flex:0 0 145px;min-height:0;border-bottom:0;border-right:3px solid #aaa38f}.team-heading small{white-space:nowrap}.team-rail .team-list{width:auto;flex:1;flex-direction:row;align-items:center;overflow-x:auto;padding-left:20px}.team-rail .member{flex:1 0 150px;width:auto;max-width:190px}.team-rail .member h3{max-width:88px;font-size:11px}.team-rail .member-title>strong{font-size:8px}.team-rail .member.add-member{flex:0 0 76px;width:76px;margin-left:0}.game-top-actions{align-items:flex-end;flex-direction:column-reverse}}
@media(max-width:620px){.game-topbar{flex-direction:column}.team-rail{flex-direction:column}.team-heading{display:grid;grid-template-columns:1fr auto;flex-basis:auto;border-right:0;border-bottom:3px solid #aaa38f}.team-heading small{grid-column:1/-1}.team-rail .team-list{width:100%}}

/* Center the complete expedition HUD as one unit on wide displays. */
.game-shell{width:calc(100% - 28px);max-width:1366px;margin:0 auto;grid-template-columns:230px minmax(0,1fr)}
.game-topbar,.game-main{width:calc(100% - 28px);max-width:1108px}.game-topbar{min-height:72px}.game-main{padding-top:8px}

/* Larger party labels with a subdued dark-gray depth treatment. */
.team-rail .member{height:78px;min-height:78px;flex-basis:78px;padding:8px 8px 7px 42px;box-shadow:4px 4px 0 #555955}.team-rail .team-portrait{left:-28px;top:7px;width:58px;height:58px;box-shadow:3px 3px 0 #555955}.team-rail .team-portrait:after{top:26px}.team-rail .team-portrait .pixel{width:53px;height:53px;filter:drop-shadow(2px 3px 0 #474a47)}.team-rail .member h3{max-width:80px;font-size:10px}.team-rail .member-title>strong{font-size:8px}.member-health{font-size:9px}.member-health>strong{font-size:10px}.team-rail .member .slot,.team-rail .drag-grip{font-size:8px}.team-rail .hp{height:8px}.team-rail .member.add-member{height:68px;min-height:68px;flex-basis:68px;box-shadow:none}

/* Compact inventory header and empty slots without ordinal labels. */
.bag-head{min-height:48px;padding:6px 7px 6px 11px}.bag-title{gap:0}.bag-title strong{font-size:12px}.bag-head-gold{min-width:44px;padding:3px 5px;gap:2px;font-size:9px;box-shadow:1px 1px 0 #171713}.bag-head-gold .bag-gold-icon{width:18px;height:18px}.bag-slot:empty:after{content:'';width:5px;height:5px;background:#b5a77c;opacity:.38}.bag-help{display:none}

@media(max-width:900px){.game-shell{width:100%;max-width:none}.game-topbar,.game-main{width:calc(100% - 16px)}.team-rail .member{height:74px;min-height:74px;flex-basis:160px}.team-rail .member.add-member{flex-basis:76px}}

/* The expedition backdrop fills the viewport beyond the centered HUD. */
body:has(.game-shell){background:linear-gradient(#d9eef65c,#7791a65c),url("/static/game/world/background.d0bc3c19fb13.png") center/cover fixed no-repeat}.game-shell{max-width:1396px;grid-template-columns:260px minmax(0,1fr);background:transparent}

/* Use the available party rail space for a larger, clearer status card. */
.team-heading{min-height:88px;padding:13px 10px}.team-heading strong{font-size:17px}.team-heading span{font-size:14px}.team-heading small{font-size:9px}
.team-rail .team-list{gap:12px;padding-left:21px}.team-rail .member{height:88px;min-height:88px;flex-basis:88px;padding:10px 10px 8px 48px}.team-rail .team-portrait{left:-32px;top:8px;width:66px;height:66px}.team-rail .team-portrait:after{top:30px}.team-rail .team-portrait .pixel{width:60px;height:60px}.team-rail .member h3{max-width:108px;font-size:12px}.team-rail .member-title>strong{font-size:9px}.member-health{margin-top:9px;font-size:10px}.member-health>strong{font-size:11px}.team-rail .member .slot,.team-rail .drag-grip{font-size:9px}.team-rail .member.add-member{width:88px;height:76px;min-height:76px;flex-basis:76px;margin-left:-21px}.add-member .empty-ball{font-size:31px}.add-member small{font-size:9px}

@media(max-width:900px){.game-shell{max-width:none;grid-template-columns:none}.team-heading{min-height:0}.team-rail .team-list{padding-left:22px}.team-rail .member{height:78px;min-height:78px;flex-basis:170px;padding:8px 8px 7px 42px}.team-rail .team-portrait{left:-28px;top:7px;width:58px;height:58px}.team-rail .team-portrait:after{top:26px}.team-rail .team-portrait .pixel{width:53px;height:53px}.team-rail .member h3{max-width:88px;font-size:11px}.team-rail .member.add-member{flex-basis:76px;width:76px;height:68px;min-height:68px;margin-left:0}}

/* CV and IV remain compact while exposing their exact integer totals. */
.member-health em{margin-left:auto;padding:2px 4px;background:#4c3a2d;color:#ffe052;border:1px solid #292820;font:700 8px var(--font);font-style:normal;white-space:nowrap}.bag-stats{justify-content:space-between;gap:8px}.bag-stats>span{display:flex;align-items:center;gap:5px;white-space:nowrap}.bag-stats strong{font-size:11px}
@media(max-width:900px){.member-health em{font-size:7px;padding:1px 3px}}

/* Explained inventory totals and compact partner dossier. */
.bag-stats>span{width:100%;justify-content:flex-start}.bag-stats>span strong{margin-left:auto}.stat-help{position:relative;display:inline-grid;place-items:center;width:16px;height:16px;border:1px solid #e2bd3b;border-radius:50%;background:#292a25;color:#f5d64f;font:700 10px/1 var(--font);cursor:help;outline-offset:2px}.stat-help:after{content:attr(data-tooltip);position:absolute;z-index:20;right:-5px;bottom:calc(100% + 8px);width:210px;padding:8px 9px;background:#171713;color:#fff4cf;border:2px solid #b28a24;box-shadow:3px 3px 0 #292820;font:700 9px/1.5 var(--font);white-space:normal;opacity:0;transform:translateY(4px);pointer-events:none;transition:.12s}.stat-help:hover:after,.stat-help:focus:after{opacity:1;transform:translateY(0)}
.partner-modal{width:min(780px,calc(100vw - 24px));max-height:calc(100vh - 24px);border:3px solid #7588bb;border-radius:0;background:#172934;box-shadow:5px 5px 0 #080d20}.partner-modal .modal-head{padding:13px 17px;background:#142630;border-bottom:3px solid #7588bb}.partner-modal .modal-head h2{margin-top:5px!important;font-size:21px}.partner-modal .modal-head .btn{width:42px;height:42px;padding:0;border:2px solid #ccd5eb;border-radius:0;box-shadow:3px 3px 0 #080d20}.partner-modal .modal-body{padding:14px}.partner-sheet{display:grid;grid-template-columns:205px minmax(0,1fr);gap:12px}.partner-summary,.partner-data{border:2px solid #334b58;background:#10202a;box-shadow:3px 3px 0 #0a1022}.partner-summary{position:relative;padding:13px;display:flex;flex-direction:column;align-items:center}.partner-number{position:absolute;right:10px;top:9px;color:#e3c547;font-size:9px}.partner-art{width:130px;height:122px;display:grid;place-items:center;background:linear-gradient(145deg,#273e47,#132530);border-bottom:3px solid #526b76}.partner-art .pixel{width:112px;height:112px;filter:drop-shadow(4px 5px 0 #090d16a8)}.partner-identity{width:100%;padding-top:10px}.partner-identity h2{font-size:20px}.partner-identity p{margin:4px 0 7px;color:#aab6c4;font-size:11px}.partner-types .type{font-size:8px;padding:3px 5px}.partner-hp{width:100%;margin-top:auto;padding-top:12px}.partner-hp>span{display:flex;justify-content:space-between;font-size:9px}.partner-hp .hp{height:8px;margin-top:5px;border:1px solid #779184;border-radius:0}.partner-data{padding:11px}.partner-traits{display:grid;grid-template-columns:1fr 1fr;gap:7px}.partner-traits>div,.partner-values>div{padding:8px 9px;background:#192d37;border-left:4px solid #7588bb}.partner-traits span,.partner-values span{display:block;color:#95a7b2;font-size:8px;letter-spacing:.7px}.partner-traits strong,.partner-values strong{display:block;margin-top:5px;color:#f2eee0;font-size:11px}.partner-values{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:7px}.partner-values>div:nth-child(2){border-left-color:#d6b834}.partner-values>div:nth-child(3){border-left-color:#86b76e}.partner-values .mini-gold{width:14px;height:14px;vertical-align:middle}.partner-stat-grid{grid-template-columns:repeat(2,1fr);gap:7px;margin:8px 0 0}.partner-stat-grid .detail-cell{padding:8px 9px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:3px;border:1px solid #2c414c;border-radius:0;background:#0d1a23}.partner-stat-grid .detail-cell>span{color:#aab7c1;font-size:9px}.partner-stat-grid .detail-cell>strong{color:#f4f0e2;font-size:15px}.partner-stat-grid .detail-cell>small{grid-column:1/-1;color:#90a0ae;font-size:8px}.partner-note{margin-top:9px;padding:8px 10px;background:#2a3040;border-left:4px solid #d3b83f;color:#cad1db;font-size:9px;line-height:1.45}
@media(max-width:620px){.partner-modal{width:calc(100vw - 16px)}.partner-sheet{grid-template-columns:1fr}.partner-summary{display:grid;grid-template-columns:105px 1fr;gap:9px;align-items:center}.partner-art{grid-row:1/3;width:100px;height:100px}.partner-art .pixel{width:92px;height:92px}.partner-hp{grid-column:1/-1;padding-top:3px}.partner-values{grid-template-columns:1fr}.partner-stat-grid{grid-template-columns:1fr 1fr}.partner-modal .modal-body{padding:9px}}

/* Pokédollar notation is always the supplied symbol followed by the amount. */
.money{display:inline-flex;align-items:center;justify-content:center;gap:3px;white-space:nowrap}.money-icon{display:block;width:18px;height:18px;object-fit:contain;image-rendering:pixelated;filter:drop-shadow(0 1px 1px #00000080)}.bag-head-gold .money-icon{width:15px;height:15px}.inline-money{margin-left:8px}.button-money .money-icon{width:13px;height:13px}.node-card small{display:flex;align-items:center;justify-content:center;gap:4px}.node-money-separator{opacity:.55}.node-money .money-icon{width:12px;height:12px}.partner-money .money-icon{width:15px;height:15px}.target-money .money-icon,.cost-money .money-icon{width:14px;height:14px}.capture-cost-line{display:flex;align-items:center;gap:5px}

/* The partner summary uses one compact row, eliminating the unused tall column. */
.partner-modal{width:min(740px,calc(100vw - 24px))}.partner-sheet{grid-template-columns:1fr}.partner-summary{display:grid;grid-template-columns:94px minmax(0,1fr) minmax(165px,.8fr);align-items:center;gap:13px;padding:10px 13px}.partner-art{width:88px;height:82px;border:0;border-right:3px solid #526b76}.partner-art .pixel{width:78px;height:78px}.partner-identity{padding:0}.partner-identity h2{font-size:18px}.partner-identity p{margin:3px 0 6px}.partner-hp{margin:0;padding:8px 0 8px 13px;border-left:2px solid #334b58}.partner-data{padding:9px}.partner-traits>div,.partner-values>div{padding:7px 8px}.partner-stat-grid .detail-cell{padding:7px 8px}.partner-number{right:auto;left:8px;top:7px;z-index:2}.partner-note{margin-top:8px}

/* Team members can be dropped into the inventory and reserve Pokémon back into the team. */
.inventory-panel.drop-target{outline:4px solid #f0d84d;outline-offset:4px;background:#d2ba78}.inventory-panel.drop-target .bag-head:after{content:'SOLTE PARA GUARDAR';position:absolute;z-index:4;inset:0;display:grid;place-items:center;background:#292820e8;color:#ffe65a;font-size:10px;letter-spacing:1px}.dragging{opacity:.45}

/* Battle sprites, labels and party markers occupy fixed sides of the arena. */
.showdown-battle .battle-field{display:block;padding:0}.showdown-battle .fighter{position:absolute;width:46%;height:100%;display:block}.showdown-battle .ally-fighter{left:0;bottom:0}.showdown-battle .enemy-fighter{right:0;top:0}.showdown-battle .fighter>.pixel{position:absolute;width:145px;height:145px}.showdown-battle .ally-fighter>.pixel{left:43%;bottom:112px;transform:translateX(-50%) scaleX(-1)}.showdown-battle .enemy-fighter>.pixel{right:40%;top:118px;transform:translateX(50%)}.showdown-battle .nameplate{position:absolute;width:min(285px,92%);padding:9px}.showdown-battle .ally-fighter .nameplate{left:15px;bottom:15px}.showdown-battle .enemy-fighter .nameplate{right:15px;top:15px;margin:0;order:initial}.showdown-battle .status-line{display:flex;align-items:center;gap:4px;min-height:18px}.showdown-battle .status-line .type{display:inline-flex;align-items:center;gap:3px;padding:2px 4px;font-size:7px}.showdown-battle .status-line .type-sprite{width:13px!important;height:13px!important;object-fit:contain!important;filter:none!important}.battle-roster{gap:3px;padding:5px 7px}.party-ball{width:20px;height:20px;border:0;border-radius:0;background:none;box-shadow:none}.party-ball .battle-ball{width:20px;height:20px;filter:none;image-rendering:pixelated}.party-ball.fainted{filter:grayscale(1);opacity:.32}.showdown-battle .raid-line{position:absolute;left:12px;right:12px;bottom:112px;display:flex;flex-wrap:wrap;justify-content:center}.showdown-battle .raid-line img{position:static;width:70px;height:70px}.battle-event{top:48%}

/* Pixel-stepped roulette: the scale stays still while its pointer rotates. */
.upgrade-center{background:#11182b;background-image:linear-gradient(90deg,#ffffff08 1px,transparent 1px),linear-gradient(#ffffff08 1px,transparent 1px);background-size:8px 8px}.upgrade-center .wheel-wrap{isolation:isolate}.upgrade-center .wheel{border-radius:50%!important;clip-path:none;box-shadow:0 0 0 3px #4f5667,0 0 0 8px #090b12,0 18px 36px #0009}.upgrade-center .wheel:after{border-radius:50%!important;clip-path:none}.pointer{position:absolute;z-index:6;inset:-10px;width:auto;height:auto;border:0;pointer-events:none;transform-origin:50% 50%;filter:none}.pointer i{position:absolute;left:calc(50% - 9px);bottom:-4px;width:18px;height:24px;background:#ffe049;clip-path:polygon(50% 0,100% 100%,0 100%);filter:drop-shadow(2px 2px 0 #6e4519)}.wheel-wrap.spinning .pointer{animation:none}.wheel-wrap.spinning .pointer i{animation:pointer-tick .1s steps(2) infinite}.skip-link{max-width:100%;border:2px solid #53658f;background:#0d1428;text-decoration:none;line-height:1.45}.modal:has(.upgrader-layout),.modal:has(.upgrader-layout) .modal-head,.modal:has(.upgrader-layout) .modal-body{border-radius:0}.capture-item,.resource-block .sacrifice,.attempt-rule,.selected-summary,.capture-pokemon,.investment .btn{border-radius:0}
@keyframes pointer-tick{50%{transform:translateY(3px)}}
@media(max-width:650px){.partner-summary{grid-template-columns:82px 1fr}.partner-art{grid-row:auto;width:78px;height:74px}.partner-art .pixel{width:70px;height:70px}.partner-hp{grid-column:1/-1;border-left:0;border-top:2px solid #334b58;padding:8px 0 0}.partner-values{grid-template-columns:1fr}.showdown-battle .fighter>.pixel{width:105px;height:105px}.showdown-battle .ally-fighter>.pixel{bottom:100px}.showdown-battle .enemy-fighter>.pixel{top:105px}.showdown-battle .nameplate{width:94%}}

/* Final gauge and roster corrections. */
.upgrade-center .wheel-wrap>.pointer{position:absolute;z-index:6;inset:-10px;width:auto;height:auto;border:0;background:transparent;pointer-events:none;transform-origin:50% 50%;filter:none}
.upgrade-center .wheel-wrap>.pointer>i{position:absolute;left:calc(50% - 9px);bottom:-4px;width:18px;height:24px;background:#ffe049;clip-path:polygon(50% 0,100% 100%,0 100%);filter:drop-shadow(2px 2px 0 #6e4519)}
.party-ball.fainted{filter:none;opacity:.4}
@media(min-width:621px){.partner-summary{grid-template-columns:108px minmax(0,1fr) minmax(165px,.8fr)}.partner-art{width:102px;height:88px}.partner-art .pixel{width:94px;height:86px}}

/* Detail alignment, thinner Upgrader gauge and unobstructed battle HUD. */
.partner-identity .partner-number{position:static;color:#e3c547;font-size:10px;vertical-align:middle}
.partner-values>div:nth-child(3)>strong{display:flex;align-items:center;min-height:18px}
.partner-values .partner-money{display:inline-flex;align-items:center;gap:4px;white-space:nowrap}
.upgrade-center .wheel{border-width:5px}
.upgrade-center .wheel:after{inset:20px}
.upgrade-center .wheel-center{inset:0;text-align:center}
.wheel-wrap.spinning .pointer i{animation:none}
.showdown-battle .ally-fighter>.pixel{bottom:148px}
.showdown-battle .enemy-fighter>.pixel{top:168px}
.showdown-battle .ally-fighter .nameplate{bottom:52px}
.showdown-battle .enemy-fighter .nameplate{top:54px}
.party-ball .battle-ball{filter:saturate(1.5) brightness(.96)!important}
.party-ball.fainted{filter:none;opacity:.55}
.outcome-ended .pikachu-dance{animation:pikachu-dance .72s steps(2,end) infinite;transform-origin:50% 82%}
@keyframes pikachu-dance{0%{transform:translate(-7px,1px) rotate(-5deg)}50%{transform:translate(7px,-8px) rotate(5deg)}100%{transform:translate(-7px,1px) rotate(-5deg)}}
@media(max-width:650px){.showdown-battle .ally-fighter>.pixel{bottom:135px}.showdown-battle .enemy-fighter>.pixel{top:145px}.showdown-battle .ally-fighter .nameplate{bottom:48px}.showdown-battle .enemy-fighter .nameplate{top:50px}}

/* Symmetric level gauge, inventory item picker and real frame-based outcome sprite. */
.upgrade-center .wheel{border-width:4px}
.upgrade-center .wheel:after{inset:14px}
.upgrade-center .wheel-center{left:50%;top:50%;right:auto;bottom:auto;width:calc(100% - 48px);height:calc(100% - 48px);transform:translate(-50%,-50%);text-align:center}
.upgrade-center .wheel-wrap>.pointer>i{left:50%;transform:translateX(-50%)}
.roulette-skip-toggle{width:100%;margin:12px 0 0;padding:10px 12px;display:flex;align-items:center;justify-content:center;gap:9px;border:2px solid #53658f;background:#0d1428;color:#d8e0f4;font:700 10px var(--font);cursor:pointer}
.roulette-skip-toggle input{width:16px;height:16px;margin:0;accent-color:#ffd51f}
.bag-slot[role=button]{cursor:pointer}
.bag-slot[role=button]:hover,.bag-slot[role=button]:focus-visible{outline:3px solid #f0cf39;outline-offset:1px;filter:brightness(1.08)}
.item-use-modal{width:min(610px,calc(100vw - 24px));border:3px solid #7588bb;border-radius:0;background:#172934;box-shadow:5px 5px 0 #080d20}
.item-use-modal .modal-head{background:#142630;border-bottom:3px solid #7588bb}
.item-use-head{display:flex;align-items:center;gap:18px;padding:14px;border:2px solid #465679;background:#10202a;box-shadow:3px 3px 0 #080d20}
.item-use-head .item-icon{width:58px;height:58px;image-rendering:pixelated}
.item-use-head h3{margin:4px 0;font-size:17px}.item-use-head p{color:#b7c1da;font-size:11px}
.item-target-list{display:grid;gap:9px;margin:14px 0}
.item-target-card{display:grid;grid-template-columns:58px minmax(0,1fr) auto;align-items:center;gap:12px;padding:9px 11px;border:2px solid #465679;background:#ede9d8;color:#22252a;box-shadow:3px 3px 0 #080d20}.item-target-card.ineligible{opacity:.42;filter:grayscale(.4)}
.item-target-card>.pixel{width:54px;height:54px}.item-target-copy{display:flex;flex-direction:column;gap:3px}.item-target-copy strong{font-size:14px}.item-target-copy span,.item-target-copy small{font-size:9px;color:#58606b}.item-target-card .btn{min-width:90px;border-radius:0;background:#315f9d;color:white;border-color:#173760}
.outcome-ended .pikachu-dance{animation:none;image-rendering:pixelated}
@media(max-width:520px){.item-target-card{grid-template-columns:48px minmax(0,1fr)}.item-target-card>.pixel{width:44px;height:44px}.item-target-card .btn{grid-column:1/-1;width:100%}}

/* Catch Upgrader outcome sectors and clearer selection controls. */
.capture-pokemon{grid-template-columns:32px 70px minmax(0,1fr);min-height:102px;padding:9px;gap:5px}
.capture-pokemon .target-check{width:26px;height:26px;border:3px solid #8290b9;background:#0b1122;box-shadow:2px 2px 0 #050817;color:transparent;font-size:16px;font-weight:900}
.capture-pokemon.selected .target-check{background:#f2d83d;border-color:#fff3a4;color:#171a25;box-shadow:2px 2px 0 #75631c}
.capture-pokemon:hover .target-check{border-color:#d8e0ff}.capture-pokemon:focus-within{outline:2px solid #68a9ff;outline-offset:2px}
.capture-pokemon>.pixel{width:66px;height:66px}.capture-pokemon strong{font-size:14px}.capture-pokemon small{font-size:10px;line-height:1.5}.capture-pokemon b{display:block;margin-top:3px;font-size:10px}
.sacrifice-block>p{line-height:1.5;margin-top:4px}
.sacrifice-tabs{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin:11px 0 8px}
.sacrifice-tabs button{display:flex;align-items:center;justify-content:center;gap:8px;min-height:34px;border:2px solid #465679;background:#0d1428;color:#aab7d7;font:700 10px var(--font);cursor:pointer}
.sacrifice-tabs button strong{display:grid;place-items:center;min-width:20px;height:20px;padding:0 4px;background:#283450;color:#dbe4ff}
.sacrifice-tabs button.active{border-color:#e6d13f;background:#2b2940;color:#fff}.sacrifice-tabs button.active strong{background:#f0d541;color:#211b2c}
.resource-block.sacrifice-block .sacrifices{max-height:185px;margin:0;overflow:auto}
.resource-block .sacrifice{display:grid;grid-template-columns:24px 48px minmax(0,1fr) auto;align-items:center;gap:8px;min-height:64px;margin-bottom:6px;padding:7px 8px;border:2px solid #465679;background:#0d1428;cursor:pointer}
.resource-block .sacrifice:hover{border-color:#8da0d6}.resource-block .sacrifice.selected{border-color:#e5d13e;background:#29283d;box-shadow:2px 2px 0 #74631d}
.resource-block .sacrifice>input{position:absolute;opacity:0}.sacrifice-check{display:grid;place-items:center;width:22px;height:22px;border:2px solid #8290b9;background:#090f20;color:transparent;font-size:13px;font-weight:900}.sacrifice.selected .sacrifice-check{background:#f0d541;border-color:#fff2a1;color:#1b1c27}
.resource-block .sacrifice>.pixel{width:46px;height:46px}.sacrifice-copy{display:flex;min-width:0;flex-direction:column;gap:3px}.sacrifice-copy>strong{font-size:12px;color:#f4f2e6}.resource-block .sacrifice .sacrifice-copy small{margin:0;font-size:9px;color:#aab6d4}.sacrifice-copy em{font:normal 8px var(--font);color:#7888ad}.resource-block .sacrifice>b{color:#ffe34e;font-size:11px;white-space:nowrap}
.empty-sacrifices{padding:18px 10px;border:2px dashed #465679;color:#96a4c6;text-align:center;font-size:10px;line-height:1.5}
.sacrifice-summary{display:flex;justify-content:space-between;align-items:center;margin-top:7px;padding:7px 9px;border:2px solid #39486e;background:#10172b;color:#aebbd9;font-size:9px}.sacrifice-summary span{display:flex;align-items:center;gap:6px}.sacrifice-summary span b{display:grid;place-items:center;width:19px;height:19px;background:#e6d13f;color:#20192b}.sacrifice-summary>strong{color:#ffe34e;font-size:11px}
.capture-formula{margin-top:14px;padding:11px;border:2px solid #465679;background:#10172b}.capture-formula h3{margin-bottom:8px;color:#ffe34e;font-size:11px}.capture-formula dl{display:grid;gap:7px;margin:0}.capture-formula dl>div{display:grid;grid-template-columns:82px 1fr;gap:8px;align-items:start}.capture-formula dt{color:#eef2ff;font-size:9px;font-weight:800}.capture-formula dd{margin:0;color:#aebbd9;font-size:9px;line-height:1.45}.capture-formula>p{margin-top:9px;padding-top:8px;border-top:1px solid #465679;color:#d6ddf1;font-size:9px;line-height:1.5}
.upgrade-center>.btn{margin-top:auto}.upgrade-center>.btn+.skip-link{margin-top:12px}
.skip-link{width:100%;min-height:44px;display:flex;align-items:center;justify-content:center;gap:8px;border-color:#d4a936;background:#392819;color:#ffe36b;box-shadow:3px 3px 0 #070914;text-decoration:none}
.skip-link:hover{background:#51351b;border-color:#ffe36b;color:#fff0a1}.skip-money-icon{width:18px;height:18px;image-rendering:pixelated}
@media(max-width:650px){.capture-formula dl>div{grid-template-columns:70px 1fr}.resource-block.sacrifice-block .sacrifices{max-height:240px}}

/* Clear feedback, balanced party cards and a more compact journey result. */
#toast.toast{--toast-accent:#6ea7e8;position:fixed;left:50%;bottom:24px;z-index:30;width:min(390px,calc(100vw - 28px));max-width:none;min-height:56px;padding:8px 11px;display:none;grid-template-columns:36px minmax(0,1fr);align-items:center;gap:10px;transform:translateX(-50%);border:2px solid #292820;border-left:7px solid var(--toast-accent);border-radius:0;background:#efecdf;color:#332f29;box-shadow:4px 4px 0 #31352f,0 10px 28px #0007}#toast.toast .toast-copy strong{font-size:11px}#toast.toast .toast-copy small{font-size:10px;line-height:1.3}
#toast.toast.show{display:grid;animation:toast-arrive .2s steps(3,end)}#toast.toast.success{--toast-accent:#63b865}#toast.toast.gold{--toast-accent:#e0b52e}#toast.toast.danger{--toast-accent:#cc5e59}
.toast-icon{display:grid;place-items:center;width:36px;height:36px;background:var(--toast-accent);border:2px solid #292820;color:#fff7d7;font-size:18px;font-weight:900;text-shadow:2px 2px 0 #292820}.toast-copy{display:flex;min-width:0;flex-direction:column;gap:6px}.toast-copy strong{color:#39342d;font-size:12px;letter-spacing:1px}.toast-copy small{color:#625c51;font-size:11px;line-height:1.5;font-weight:700}@keyframes toast-arrive{from{transform:translate(-50%,20px);opacity:0}to{transform:translate(-50%,0);opacity:1}}
@media(min-width:901px){.team-rail .team-list{align-items:center;padding:3px 0 6px}.team-rail .member{width:calc(100% - 44px);margin-left:28px;align-self:center}.team-rail .member.add-member{margin-left:0;align-self:center}}
.biome-picker>header>.eyebrow{display:inline-block;padding:6px 10px;background:#3a3730;border-left:5px solid #d28a37;color:#ffe36b;text-shadow:1px 1px 0 #171713;font-size:11px;font-weight:900}
.menu-page .main:has(.outcome){max-width:920px;padding-top:26px}.outcome{max-width:840px}.outcome-hero{grid-template-columns:170px minmax(0,1fr);gap:26px;padding:31px 34px 25px}.outcome-portrait{height:155px}.outcome-portrait:before{width:95px;height:95px}.outcome-portrait:after{width:58px;height:58px}.outcome-portrait .pixel{width:132px!important;height:132px!important}.outcome-copy .eyebrow{padding:5px 8px;font-size:9px}.outcome h1{margin:13px 0 10px!important;font-size:31px!important}.outcome-copy p{font-size:13px;line-height:1.6}.outcome-stat{min-height:82px;padding:13px 21px}.outcome-stat>strong{margin:5px 0 3px;font-size:20px}.outcome-next{padding:18px 27px 21px}.outcome-next .btn{min-width:220px;padding:12px 17px;font-size:11px}

/* Battle Pokémon reveal their individual data on hover. */
.battle-pokemon-tooltip{position:absolute;z-index:12;width:230px;padding:10px;border:3px solid #292820;background:#efecdf;color:#373229;box-shadow:5px 5px 0 #090f28;opacity:0;visibility:hidden;transform:translateY(5px);transition:.12s;pointer-events:none;text-align:left}.fighter>.pixel:hover+.battle-pokemon-tooltip{opacity:1;visibility:visible;transform:translateY(0)}
.ally-fighter .battle-pokemon-tooltip{left:50%;bottom:285px}.enemy-fighter .battle-pokemon-tooltip{right:50%;top:112px}.battle-pokemon-tooltip header{display:flex;align-items:center;justify-content:space-between;gap:8px;border-bottom:2px solid #8b8372;padding-bottom:6px}.battle-pokemon-tooltip header strong{font-size:11px}.battle-pokemon-tooltip header span,.battle-pokemon-tooltip footer{color:#8d6514;font-size:9px;font-weight:900}.battle-pokemon-tooltip p{margin:6px 0;color:#665f54;font-size:8px}.battle-pokemon-tooltip>div{display:grid;grid-template-columns:repeat(3,1fr);gap:4px}.battle-pokemon-tooltip>div span{display:flex;flex-direction:column;padding:4px;background:#d9d3c3;border:1px solid #8b8372}.battle-pokemon-tooltip small{font-size:7px;color:#696156}.battle-pokemon-tooltip b{margin-top:2px;font-size:9px}.battle-pokemon-tooltip footer{margin-top:6px;text-align:right}

/* Catch Upgrader: three guided steps with details available on demand. */
.modal:has(.upgrader-layout) .modal-body{padding:12px}.upgrader-layout{grid-template-columns:minmax(300px,1.03fr) minmax(270px,.84fr) minmax(300px,1fr);gap:10px;min-height:540px}.upgrade-side,.upgrade-center{padding:13px}.upgrader-step-head{display:grid!important;grid-template-columns:42px minmax(0,1fr);align-items:start;gap:10px;padding-bottom:11px!important;margin-bottom:10px!important}.step-number{display:grid;place-items:center;width:38px;height:38px;background:#f0d541;border:3px solid #fff1a0;box-shadow:3px 3px 0 #070914;color:#1e1c27;font-size:13px;font-weight:900}.upgrader-step-head .eyebrow{font-size:9px}.upgrader-step-head h3{margin:4px 0!important;font-size:13px!important}.upgrader-step-head p{font-size:10px!important;line-height:1.45!important}.resource-block.resource-first{margin-top:0;padding-top:0;border-top:0}.resource-title{display:flex;align-items:center;gap:7px}.resource-title h3{margin:0}.resource-title .stat-help{flex:0 0 auto;width:17px;height:17px}.capture-items{margin-top:8px}.capture-item{min-height:74px;padding:6px}.capture-item .item-sprite{width:32px;height:32px}.gold-block>p{margin-top:7px}.gold-block .investment{display:grid;grid-template-columns:repeat(4,1fr);gap:5px;margin:9px 0}.gold-block .investment .btn{min-width:0;padding:7px 3px}.capture-cost-line{justify-content:space-between;margin:0;padding:7px 9px;background:#0d1428;border:2px solid #3f4e76}.upgrade-center-title{margin-top:7px;color:#eef2ff;font-size:13px}.upgrade-center .wheel-wrap{width:250px;height:250px;margin:20px auto 13px}.upgrade-center>.btn{margin-top:12px}.capture-help{margin-top:10px;border:2px solid #465679;background:#10172b}.capture-help summary{display:flex;align-items:center;gap:8px;padding:9px 10px;color:#ffe34e;font-size:10px;font-weight:900;cursor:pointer;list-style:none}.capture-help summary::-webkit-details-marker{display:none}.capture-help summary>span{display:grid;place-items:center;width:20px;height:20px;background:#f0d541;color:#1c1b26}.capture-help[open] summary{border-bottom:2px solid #465679}.capture-help .capture-formula{margin:0;border:0;background:transparent}.capture-formula dl>div{grid-template-columns:74px 1fr}.capture-formula dd{font-size:8px}.target-side .capture-targets{max-height:330px;overflow:auto}.target-side .selected-summary{margin-top:8px}

/* In-game confirmation replaces the browser's generic abandon prompt. */
.abandon-modal{width:min(520px,calc(100vw - 24px));border:4px solid #d8e2ff;border-radius:0;background:#172934;box-shadow:7px 7px 0 #080d20}.abandon-modal .modal-head{padding:15px 18px;background:#142630;border-bottom:4px solid #7588bb}.abandon-modal .modal-body{padding:18px}.abandon-sheet{display:flex;flex-direction:column;align-items:center;text-align:center;padding:12px 18px 4px}.abandon-flag{display:grid;place-items:center;width:64px;height:64px;background:#974a4e;border:4px solid #f2c3b4;box-shadow:4px 4px 0 #080d20;color:#fff5df;font-size:30px}.abandon-sheet h3{margin-top:17px;color:#fff2d1;font-size:18px}.abandon-sheet p{max-width:410px;margin-top:10px;color:#bcc8df;font-size:11px;line-height:1.65}.abandon-actions{width:100%;display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:20px}.abandon-actions .btn{border-radius:0;min-height:46px}.abandon-actions .danger{background:#974a4e;border:2px solid #f2c3b4;color:#fff5df;box-shadow:3px 3px 0 #080d20}.abandon-actions .danger:hover{background:#b75759}
@media(max-width:920px){.upgrader-layout{grid-template-columns:1fr 1fr}.upgrade-center{grid-row:1/3;grid-column:2}.target-side{grid-column:1}.battle-pokemon-tooltip{width:205px}.outcome{max-width:calc(100vw - 32px)}}
@media(max-width:650px){#toast.toast{grid-template-columns:42px 1fr;bottom:12px}.toast-icon{width:38px;height:38px}.upgrader-layout{display:flex}.upgrade-center .wheel-wrap{width:215px;height:215px}.gold-block .investment{grid-template-columns:repeat(2,1fr)}.battle-pokemon-tooltip{display:none}.abandon-actions{grid-template-columns:1fr}.outcome-hero{grid-template-columns:1fr;padding:25px 20px 20px}.outcome-portrait{width:180px;height:135px}.outcome-portrait .pixel{width:115px!important;height:115px!important}.outcome h1{font-size:27px!important}}

/* Wordmark pokeball icons (menu top bar + home title). */
.brand-home-style .ball-logo{width:24px;height:24px;object-fit:contain;filter:drop-shadow(2px 2px 0 #0007)}.home-title-row{display:flex;align-items:center;justify-content:center;gap:12px}.home-title-row .home-title-ball{width:40px;height:40px;object-fit:contain;filter:drop-shadow(2px 3px 0 #0008)}@media(max-width:560px){.home-title-row .home-title-ball{width:30px;height:30px}}

/* Catch Upgrader simplification: gold-first flow, collapsible optional sacrifice offer, single-target summary card. */
.sacrifice-block{cursor:default}.sacrifice-block>summary{display:flex;align-items:center;justify-content:space-between;gap:8px;cursor:pointer;list-style:none}.sacrifice-block>summary::-webkit-details-marker{display:none}.sacrifice-block>summary:after{content:'▾';margin-left:auto;color:#8591b2;font-size:11px;transition:transform .15s}.sacrifice-block[open]>summary:after{transform:rotate(180deg)}.optional-tag{margin-left:7px;padding:2px 5px;background:#2b3455;border:1px solid #4b587c;color:#9faaca;font-size:7px;letter-spacing:.5px;vertical-align:middle}.sacrifice-peek{flex:0 0 auto;color:#e7d340;font-size:8px;white-space:nowrap}.sacrifice-block>p,.sacrifice-block>.sacrifice-tabs,.sacrifice-block>.sacrifices,.sacrifice-block>.sacrifice-summary{margin-top:9px}.capture-pokemon.single{grid-template-columns:70px minmax(0,1fr);cursor:default}.capture-pokemon.single:hover{border-color:#465376}

/* Free-form gold slider replacing fixed presets, and the new coin pokedollar icon. */
.gold-slider-row{display:flex;align-items:center;gap:10px;margin:10px 0}.gold-slider-row input[type=range]{flex:1;accent-color:#f0d541;height:6px;cursor:pointer;background:transparent}.gold-slider-row input[type=range]:disabled{opacity:.4;cursor:not-allowed}.gold-slider-value{flex:0 0 auto;min-width:70px;display:flex;align-items:center;justify-content:center;background:#0d1428;border:2px solid #3f4e76;padding:6px 8px;color:#ffe34e;font-size:11px}

/* Phone-first composition (modal/battle rules). */
.modal:has(.upgrader-layout) .modal-body{padding:9px}.upgrader-layout{display:flex;flex-direction:column}.upgrade-center{order:-1}.upgrade-center .wheel-wrap{width:190px;height:190px;margin:20px auto}.capture-items{grid-template-columns:repeat(2,1fr)}
.showdown-battle .battle-field{height:410px;min-height:410px;padding:24px 8px}.showdown-battle .fighter>.pixel{width:120px;height:120px}.showdown-battle .nameplate{padding:7px}.battle-console{grid-template-columns:1fr}.battle-progress{display:none}
.upgrade-center .wheel-wrap{width:215px;height:215px}.bag-tabs button{font-size:6px}.home-ui-icon.pokedex{width:145px;height:109px}
.partner-summary{grid-template-columns:82px 1fr}.partner-art{grid-row:auto;width:78px;height:74px}.partner-art .pixel{width:70px;height:70px}.partner-hp{grid-column:1/-1;border-left:0;border-top:2px solid #334b58;padding:8px 0 0}.partner-values{grid-template-columns:1fr}.showdown-battle .fighter>.pixel{width:105px;height:105px}.showdown-battle .ally-fighter>.pixel{bottom:100px}.showdown-battle .enemy-fighter>.pixel{top:105px}.showdown-battle .nameplate{width:94%}
.showdown-battle .ally-fighter>.pixel{bottom:135px}.showdown-battle .enemy-fighter>.pixel{top:145px}.showdown-battle .ally-fighter .nameplate{bottom:48px}.showdown-battle .enemy-fighter .nameplate{top:50px}
.capture-formula dl>div{grid-template-columns:70px 1fr}.resource-block.sacrifice-block .sacrifices{max-height:240px}
#toast.toast{grid-template-columns:42px 1fr;bottom:12px}.toast-icon{width:38px;height:38px}.upgrader-layout{display:flex}.upgrade-center .wheel-wrap{width:215px;height:215px}.gold-block .investment{grid-template-columns:repeat(2,1fr)}.battle-pokemon-tooltip{display:none}.abandon-actions{grid-template-columns:1fr}.outcome-hero{grid-template-columns:1fr;padding:25px 20px 20px}.outcome-portrait{width:180px;height:135px}.outcome-portrait .pixel{width:115px!important;height:115px!important}.outcome h1{font-size:27px!important}
.home-window{padding:25px 18px}.home-window h1{font-size:31px}.team-rail .team-list{grid-template-columns:repeat(2,1fr)}.speed-control>span{display:none}.game-main{padding:12px}.run-layout{display:block}.inventory-panel{margin-bottom:16px}.bag-grid{grid-template-columns:repeat(5,1fr)}.route-map{height:690px}.map-node{width:145px;min-height:160px}.map-node.n1{left:9%;top:50px}.map-node.n2{left:auto;right:8%;top:250px}.map-node.n3{left:12%;right:auto;top:450px}.map-path{display:none}.map-caption small{display:none}.starter-grid{grid-template-columns:1fr}.collection{grid-template-columns:repeat(3,1fr)}
.home-screen{padding:18px 10px 42px;background-attachment:scroll}.home-window{padding:25px 18px 20px}.home-wordmark{font-size:39px;-webkit-text-stroke-width:2px;text-shadow:0 3px 0 #f18421,0 6px 0 #7b2d25,3px 8px 0 #05040c}.home-tagline{font-size:8px;letter-spacing:3px}.home-actions{grid-template-columns:1fr;margin:18px auto 15px}.home-menu-card,.home-menu-card.wide{grid-column:1;min-height:70px}.home-premise{padding:12px 2px}.home-credit{font-size:6px;bottom:12px}
.team-rail .team-list{grid-template-columns:repeat(3,1fr)}.inventory-panel{display:block}.hud-resource,.run-location{margin:7px 0}.bag-grid{grid-template-columns:repeat(5,1fr)}.biome-options{grid-template-columns:1fr}.biome-photo{height:165px}.node-board{height:720px}.node-grid{left:25px;right:25px}.current-choice{width:94px;display:flex;flex-direction:column;min-height:78px}.current-choice .node-card small,.current-choice .node-card .type-sprite{display:none}.node-card{text-align:center}.node-card strong{font-size:6px}.node-grass,.node-event-art{width:36px;height:36px}.node-grass>.ui-sprite{width:40px;height:40px}.node-grass>.pixel{width:27px;height:27px}.map-caption small{display:none}
.node-grid{left:10px;right:10px}.node-row{grid-template-columns:15px repeat(var(--nodes),minmax(0,1fr))}.map-preview{width:40px;height:40px}.current-choice{max-width:72px;min-height:74px}.node-grass{width:42px;height:40px}.node-grass>.pixel{width:38px;height:38px}.node-grass>.ui-sprite{width:26px;height:26px}.node-event-art,.node-event-art>.ui-sprite{width:40px;height:40px}.node-card small{white-space:normal}.home-menu-icon{width:40px;height:40px}.home-menu-card{grid-template-columns:42px 1fr 14px}
.type{font-size:7px}.type-sprite{width:13px;height:13px}.type-logo{grid-template-columns:29px auto;min-height:34px}.type-logo img{width:29px!important;height:29px!important}.starter{padding:13px 14px 15px}.starter-info h2{font-size:20px}.starter .btn{font-size:7px}.brand-home-style .ball-logo{width:18px;height:18px}.brand-home-style small{font-size:6px!important;letter-spacing:1.6px!important}
.home-window:not(.auth-active){padding:26px 18px 22px}.home-window:not(.auth-active) .home-wordmark{font-size:39px}.home-window:not(.auth-active) .home-actions{gap:7px;margin-top:18px}.home-window:not(.auth-active) .home-menu-card,.home-window:not(.auth-active) .home-menu-card.wide{min-height:60px;padding:10px 15px 10px 17px}.home-window:not(.auth-active) .home-menu-copy{grid-template-columns:1fr;gap:4px}.home-window:not(.auth-active) .home-menu-copy small{padding:0;border:0}.home-window:not(.auth-active) .home-premise p{font-size:7px}
.home-title-row .home-title-ball{width:30px;height:30px}

/* Readability pass for the pinned phone layout (home + capture modal). */
.home-premise p{font-size:11px}
.home-premise strong{font-size:12px}
.home-window:not(.auth-active) .home-menu-copy small{font-size:10px}
.home-window:not(.auth-active) .home-menu-copy strong{font-size:13px}
.home-account,.home-credit{font-size:10px}
.upgrade-side header p,.resource-block p,.selected-summary,.capture-pokemon small,.sacrifice,.target-values em{font-size:11px}
.capture-item small{font-size:9px}
.sacrifice-peek,.optional-tag{font-size:10px}
.skip-link{font-size:11px}
.wheel-center span,.wheel-center small{font-size:10px}

/* Final readability pass: must match the specificity of the lifted phone rules to win. */
.home-window:not(.auth-active) .home-premise p{font-size:11px;line-height:1.7}
.home-window:not(.auth-active) .home-premise strong{font-size:12px}
.home-window:not(.auth-active) .home-menu-copy strong{font-size:13px}
.home-window:not(.auth-active) .home-menu-copy small{font-size:10px;line-height:1.5}
.home-window:not(.auth-active) .home-account{font-size:10px}
.home-tagline{font-size:11px}
.home-version{font-size:10px}

.evolution-fx .btn{padding:9px 12px;font-size:11px}
.biome-copy .biome-rarity{display:inline-flex;align-items:center;gap:4px}
.biome-copy .biome-rarity .rarity-dot{margin:0}
.biome-unlock-items{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:8px}
.biome-unlock-items span{display:flex;flex-direction:column;align-items:center;gap:3px;font-size:8px;color:#8d8874}
.biome-unlock-items img{width:22px;height:22px}
.modal.evolution-modal{width:min(320px,calc(100% - 20px))}.evolution-modal .modal-head{padding:12px 14px}.evolution-modal .modal-head h2{font-size:15px;margin-top:4px!important}.evolution-modal .eyebrow{font-size:9px}.evolution-modal .modal-body{padding:0}
.evolution-fx{display:flex;flex-direction:column;align-items:center;gap:12px;padding:18px 16px;text-align:center;background:radial-gradient(circle at 50% 42%,#132a49 0%,#081428 70%)}
.evolution-stage{position:relative;width:88px;height:88px;display:grid;place-items:center;overflow:visible}
.evolution-sprite{width:68px;height:68px;object-fit:contain;position:relative;z-index:2;image-rendering:pixelated}
.evolution-stage.evo-charging .evolution-sprite{animation:evo-strobe .22s steps(1,end) infinite}
.evolution-stage.evo-flashing .evolution-sprite{opacity:0}
.evolution-stage.evo-flashing:before{content:'';position:absolute;inset:-20px;background:radial-gradient(circle,#fff 0%,#fff 38%,#ffe8a3b0 58%,transparent 74%);border-radius:50%;animation:evo-flash-pop .55s ease-out forwards;z-index:3}
.evolution-sprite.evo-reveal{animation:evo-reveal-pop .5s ease-out}
.evolution-sparkles{position:absolute;inset:0;pointer-events:none;z-index:4}
.evolution-sparkles i{position:absolute;top:50%;left:50%;width:5px;height:5px;background:#fff8d6;box-shadow:0 0 6px 2px #ffe9a3;opacity:0;transform:translate(-50%,-50%)}
.evolution-stage.evo-reveal .evolution-sparkles i{animation:evo-sparkle .75s ease-out forwards}
.evolution-sparkles i:nth-child(1){--a:0deg}.evolution-sparkles i:nth-child(2){--a:30deg}.evolution-sparkles i:nth-child(3){--a:60deg}.evolution-sparkles i:nth-child(4){--a:90deg}.evolution-sparkles i:nth-child(5){--a:120deg}.evolution-sparkles i:nth-child(6){--a:150deg}.evolution-sparkles i:nth-child(7){--a:180deg}.evolution-sparkles i:nth-child(8){--a:210deg}.evolution-sparkles i:nth-child(9){--a:240deg}.evolution-sparkles i:nth-child(10){--a:270deg}.evolution-sparkles i:nth-child(11){--a:300deg}.evolution-sparkles i:nth-child(12){--a:330deg}
.evolution-sparkles i:nth-child(even){animation-delay:.06s!important}
.evolution-title{font-size:12px;color:#ffe58c;font-weight:900;line-height:1.4}
@keyframes evo-strobe{0%,49%{filter:brightness(0) invert(1) drop-shadow(0 0 6px #fff)}50%,100%{filter:brightness(1.5) saturate(1.4)}}
@keyframes evo-flash-pop{0%{opacity:0;transform:scale(.2)}25%{opacity:1;transform:scale(1)}55%{opacity:1;transform:scale(1.5)}100%{opacity:0;transform:scale(2.4)}}
@keyframes evo-reveal-pop{0%{transform:scale(.5);filter:brightness(2.4)}55%{transform:scale(1.12);filter:brightness(1.3)}100%{transform:scale(1);filter:brightness(1)}}
@keyframes evo-sparkle{0%{opacity:1;transform:translate(-50%,-50%) rotate(var(--a)) translateY(0) scale(1)}100%{opacity:0;transform:translate(-50%,-50%) rotate(var(--a)) translateY(-38px) scale(.2)}}
@media(prefers-reduced-motion:reduce){.evolution-stage.evo-charging .evolution-sprite,.evolution-sprite.evo-reveal,.evolution-stage.evo-flashing:before,.evolution-stage.evo-reveal .evolution-sparkles i{animation:none}}

.modal:has(.shop-grid){width:min(760px,calc(100% - 20px))}
.shop-tabs{margin-bottom:10px}
.shop-grid{grid-template-columns:repeat(4,1fr);gap:8px}
.shop-item{padding:9px;gap:5px}
.shop-item .item-sprite{width:24px;height:24px}
.shop-item h3{font-size:10px;line-height:1.25}
.shop-item-desc{font-size:8px;line-height:1.35}
.shop-item p{font-size:8px;line-height:1.3}
.shop-item .btn{font-size:9px;padding:6px 3px}
@media(max-width:650px){.modal:has(.shop-grid){width:calc(100% - 16px)}.shop-grid{grid-template-columns:repeat(2,1fr)}}
.shop-balance-banner{display:flex;justify-content:flex-end;padding:8px 14px;font-size:13px}
.member-item-badge{position:absolute;right:-3px;bottom:-3px;width:16px;height:16px;background:#0d1428;border:2px solid #f0d541;border-radius:50%;display:grid;place-items:center;z-index:2;overflow:hidden}.member-item-badge img{width:11px;height:11px;object-fit:contain}
.partner-traits .btn{margin-top:6px;padding:5px 9px;font-size:8px}

.dex-tabs{margin-bottom:14px}
.shiny-collection .dex-entry.owned{border-color:#e8c44a;box-shadow:0 0 12px #e8c44a44;background:linear-gradient(#26314a,#171f33)}
.shiny-collection .dex-entry.owned strong{color:#ffe58c}
.shiny-collection .dex-entry.unknown img{filter:none;opacity:.5}.shiny-collection .dex-entry.unknown strong{color:#8fa3bd}
