@charset "utf-8";
/* Starter selection uses the same viewport budget as the expedition. */
html:has(.starter-grid){height:100%;overflow:hidden}
body:has(.starter-grid){height:100vh;height:100dvh;overflow:hidden}
.menu-page:has(.starter-grid){display:flex;flex-direction:column;justify-content:center;gap:8px;height:100vh;height:100dvh;min-height:0;padding:12px 0;overflow:hidden}
.menu-page:has(.starter-grid) .menu-top{flex:none;width:calc(100% - 24px);max-width:660px;height:54px;margin:0 auto;padding:6px 14px;border:2px solid #292820;box-shadow:3px 3px #51564f}
.menu-page:has(.starter-grid) .menu-top .brand-wordmark{font-size:25px}
.menu-page:has(.starter-grid) .menu-top .btn{min-height:34px;padding:8px 12px;font-size:10px}
.menu-page:has(.starter-grid) .main{flex:1;display:flex;flex-direction:column;gap:8px;min-height:0;max-height:570px;width:calc(100% - 24px);max-width:660px;margin:0 auto;padding:12px 14px 14px;background:#f3f0e5ed;border:2px solid #292820;box-shadow:3px 3px #51564f}
.menu-page:has(.starter-grid) .starter-intro{flex:none;margin:0}
.menu-page:has(.starter-grid) .starter-intro .eyebrow{font-size:9px;color:#78571a;letter-spacing:1px}
.menu-page:has(.starter-grid) .starter-intro h1{font-size:21px;line-height:1.2;letter-spacing:0;margin:7px 0}
.menu-page:has(.starter-grid) .starter-intro p{font-size:11px;line-height:1.5;max-width:580px}
.menu-page:has(.starter-grid) .main>.banner{flex:none;min-height:30px;margin:0;padding:6px 9px;gap:8px;font-size:9px;line-height:1.3;border:1px solid #a9a18b;box-shadow:none;background:#e5dfce}
.menu-page:has(.starter-grid) .starter-grid{flex:1;display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:repeat(3,minmax(0,1fr));gap:8px;min-height:0;width:100%;max-width:none;margin:0}
.menu-page:has(.starter-grid) .starter{display:grid;grid-template-columns:104px minmax(0,1fr) 145px;grid-template-rows:20px minmax(0,1fr);gap:4px 10px;min-height:0;height:100%;padding:9px 10px 8px;border-width:2px;box-shadow:3px 3px #5c615a}
.menu-page:has(.starter-grid) .starter:hover{transform:none;box-shadow:3px 3px var(--starter-accent)}
.menu-page:has(.starter-grid) .starter:before{height:5px}
.menu-page:has(.starter-grid) .starter:after{width:100px;height:100px;left:-15px;right:auto;top:50%;transform:translateY(-50%);border-width:14px}
.menu-page:has(.starter-grid) .starter-top{grid-column:2/4;grid-row:1;margin:0;min-height:0}
.menu-page:has(.starter-grid) .starter-number{font-size:9px}
.menu-page:has(.starter-grid) .starter-level{font-size:8px;padding:3px 5px;border-width:1px}
.menu-page:has(.starter-grid) .starter-portrait{grid-column:1;grid-row:1/3;height:100%;min-height:0;border-bottom:0;border-right:1px dashed #aaa394}
.menu-page:has(.starter-grid) .starter-portrait .pixel{width:130px;height:100%;max-width:100%;max-height:155px;min-height:0;object-fit:contain}
.menu-page:has(.starter-grid) .starter-info{grid-column:2;grid-row:2;align-self:center;min-width:0;gap:5px}
.menu-page:has(.starter-grid) .starter-info h2{font-size:20px;margin:0}
.menu-page:has(.starter-grid) .starter-info p{font-size:7px;letter-spacing:1px}
.menu-page:has(.starter-grid) .starter-types{min-height:0;gap:4px}
.menu-page:has(.starter-grid) .type-logo{grid-template-columns:22px auto;min-height:27px;padding:2px 5px;gap:4px}
.menu-page:has(.starter-grid) .type-logo img{width:22px!important;height:22px!important}
.menu-page:has(.starter-grid) .type-logo strong{font-size:8px}
.menu-page:has(.starter-grid) .starter>.btn{grid-column:3;grid-row:2;align-self:center;margin:0;min-height:38px;padding:8px 5px;font-size:9px;line-height:1.4;border-width:2px;box-shadow:2px 2px #555850}
@media(max-width:520px){
 .menu-page:has(.starter-grid){gap:6px;padding:7px 0}
 .menu-page:has(.starter-grid) .menu-top{width:calc(100% - 14px);height:50px;padding:5px 10px}
 .menu-page:has(.starter-grid) .menu-top .brand-wordmark{font-size:22px}
 .menu-page:has(.starter-grid) .main{width:calc(100% - 14px);padding:10px;gap:8px}
 .menu-page:has(.starter-grid) .starter-intro .eyebrow{font-size:8px;letter-spacing:0}
 .menu-page:has(.starter-grid) .starter-intro h1{font-size:17px;margin:6px 0}
 .menu-page:has(.starter-grid) .starter-intro p{font-size:9px;line-height:1.5}
 .menu-page:has(.starter-grid) .main>.banner{font-size:8px;min-height:28px;padding:5px}
 .menu-page:has(.starter-grid) .starter{grid-template-columns:82px minmax(0,1fr);grid-template-rows:17px minmax(0,1fr) 42px;padding:9px 8px 8px;gap:4px 9px}
 .menu-page:has(.starter-grid) .starter-top{grid-column:2;grid-row:1}
 .menu-page:has(.starter-grid) .starter-number{font-size:8px;letter-spacing:.5px}
 .menu-page:has(.starter-grid) .starter-level{font-size:7px;padding:2px 4px}
 .menu-page:has(.starter-grid) .starter-portrait{grid-row:1/4}
 .menu-page:has(.starter-grid) .starter-info{gap:4px}
 .menu-page:has(.starter-grid) .starter-info h2{font-size:16px}
 .menu-page:has(.starter-grid) .starter-info p{display:none}
 .menu-page:has(.starter-grid) .type-logo{grid-template-columns:16px auto;min-height:21px;padding:1px 3px;gap:3px}
 .menu-page:has(.starter-grid) .type-logo img{width:16px!important;height:16px!important}
 .menu-page:has(.starter-grid) .type-logo strong{font-size:7px}
 .menu-page:has(.starter-grid) .starter>.btn{grid-column:2;grid-row:3;min-height:42px;padding:5px 3px;font-size:8px}
}
@media(max-height:620px) and (max-width:520px){
 .menu-page:has(.starter-grid) .starter-intro h1{font-size:15px}
 .menu-page:has(.starter-grid) .starter{grid-template-rows:13px minmax(0,1fr) 32px;padding:7px 8px 6px;gap:3px 9px}
 .menu-page:has(.starter-grid) .starter-info{gap:2px}
 .menu-page:has(.starter-grid) .starter-info h2{font-size:14px}
 .menu-page:has(.starter-grid) .type-logo{grid-template-columns:12px auto;min-height:16px;padding:1px 3px}
 .menu-page:has(.starter-grid) .type-logo img{width:12px!important;height:12px!important}
 .menu-page:has(.starter-grid) .type-logo strong{font-size:6px}
 .menu-page:has(.starter-grid) .starter>.btn{min-height:32px}
}
@media(max-height:600px) and (min-width:521px){
 .menu-page:has(.starter-grid){padding:6px 0;gap:6px}
 .menu-page:has(.starter-grid) .menu-top{height:44px}
 .menu-page:has(.starter-grid) .main{padding:8px 12px;gap:6px}
 .menu-page:has(.starter-grid) .starter-intro h1{font-size:17px;margin:3px 0}
 .menu-page:has(.starter-grid) .starter-intro p{font-size:9px}
 .menu-page:has(.starter-grid) .starter-intro .eyebrow{font-size:8px}
 .menu-page:has(.starter-grid) .starter-grid{gap:6px}
 .menu-page:has(.starter-grid) .starter{grid-template-columns:80px minmax(0,1fr) 150px;grid-template-rows:16px minmax(0,1fr);padding:7px 8px;gap:2px 8px}
 .menu-page:has(.starter-grid) .starter-info{display:flex;align-items:center;gap:9px}
 .menu-page:has(.starter-grid) .starter-info h2{font-size:15px}
 .menu-page:has(.starter-grid) .starter-info p{display:none}
 .menu-page:has(.starter-grid) .type-logo{grid-template-columns:14px auto;min-height:18px;padding:1px 3px}
 .menu-page:has(.starter-grid) .type-logo img{width:14px!important;height:14px!important}
 .menu-page:has(.starter-grid) .type-logo strong{font-size:7px}
 .menu-page:has(.starter-grid) .starter>.btn{min-height:30px;font-size:8px;padding:5px}
}
/* A single, centred play surface. The page never needs a vertical scroll. */
html:has(.compact-shell){height:100%;overflow:hidden}
body:has(.compact-shell){display:flow-root;margin:0;height:100vh;height:100dvh;overflow:hidden;background:#050c23}
.slots-shell.compact-shell{--dock-height:176px;display:flex;flex-direction:column;align-items:stretch;gap:8px;width:calc(100% - 28px);max-width:720px;height:calc(100vh - 24px);height:calc(100dvh - 24px);min-height:0;max-height:1040px;margin:12px auto;padding:0;overflow:visible}
.compact-shell>*{min-width:0;flex-shrink:0;order:initial}
.compact-shell:before{opacity:.6}
.compact-shell.night:before{display:none}
.compact-shell:after{background:linear-gradient(90deg,#030b2022,transparent 30% 70%,#030b2022)}
.compact-shell .night-scene{position:fixed;inset:0;z-index:-2;overflow:hidden;pointer-events:none;background:#050b23 url("/static/game/world/starry-meadow-v1.c43ba0fc187a.png") center/cover no-repeat;image-rendering:pixelated}
.night-scene:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,transparent,#030e2620 35% 65%,transparent)}
.meadow-breeze{position:absolute;inset:-3px;background:url("/static/game/world/starry-meadow-v1.c43ba0fc187a.png") center/cover no-repeat;image-rendering:pixelated;mask-image:linear-gradient(transparent 69%,#000 82%);transform-origin:50% 100%;animation:meadow-breeze 8s ease-in-out infinite alternate;will-change:transform}
.meadow-stars{position:absolute;inset:0}.meadow-stars i{position:absolute;left:var(--x);top:var(--y);height:3px;width:3px;background:#d3eeff;box-shadow:0 0 7px #8ad0fa;animation:meadow-twinkle var(--duration) steps(4,end) var(--delay) infinite alternate}
@keyframes meadow-breeze{from{transform:skewX(-.45deg) translateX(-2px) scaleX(1.018)}to{transform:skewX(.45deg) translateX(2px) scaleX(1.018)}}
@keyframes meadow-twinkle{from{opacity:.05}to{opacity:.85}}
.compact-shell .game-topbar{order:0;flex:none;display:grid;grid-template-columns:auto 1fr auto;grid-template-rows:1fr;height:64px;min-height:0;gap:10px;padding:8px 12px;width:100%;margin:0;border-width:2px;outline-width:1px;box-shadow:inset 0 0 0 2px #071426,inset 0 0 0 3px #547293,0 3px #020e22aa}
.compact-shell .expedition-brand{margin:0;padding:0}.compact-shell .expedition-brand strong{font-size:26px;letter-spacing:.3px}
.compact-shell .expedition-id{display:grid;grid-column:auto;grid-row:auto;gap:5px;border:0;padding:0;text-align:center;align-self:center}
.compact-shell .expedition-id strong{font-size:12px;letter-spacing:.6px}.compact-shell .expedition-id span{font-size:9px;letter-spacing:2px}
.compact-shell .game-top-actions{display:flex;flex-direction:column;align-items:flex-end;justify-content:center;gap:4px;margin:0;flex-wrap:nowrap}
.compact-shell .run-nav{display:flex;gap:5px;order:0}.compact-shell .run-nav button{font-size:9px;padding:5px 7px;min-height:26px;box-shadow:none}.compact-shell .run-nav .danger{padding:5px 7px}
.compact-shell .speed-control{display:flex;order:1;margin:0;padding:0;border:0;background:none;gap:2px;min-height:0}.compact-shell .speed-control>span{display:block;font-size:7px;margin-right:5px;align-self:center}.compact-shell .speed-chip{font-size:9px;padding:2px 6px;min-width:25px;line-height:14px}
.compact-shell .game-stage{order:1;display:flex;flex-direction:column;flex:1 1 0;min-height:0;width:100%;gap:8px;overflow:visible}
.compact-shell .expedition-progress{order:0;display:grid;grid-template-columns:190px 1fr;align-items:center;gap:10px;flex:none;height:54px;min-height:0;width:100%;padding:0;margin:0;background:#04142bb3;border:1px solid #6686a457}
.compact-shell .biome-identity{min-width:0;max-width:none;gap:8px;padding-left:5px}.compact-shell .biome-identity>img{width:42px;height:42px;flex:none;border-width:2px;outline:0;box-shadow:none}.compact-shell .biome-identity>div{padding:0;gap:4px}.compact-shell .biome-identity small{font-size:8px;letter-spacing:1px}.compact-shell .biome-identity strong{font-size:12px;line-height:1.15}
.compact-shell .journey-track{order:0;flex-basis:auto;min-width:0;gap:5px;margin:0 6px 0 0;padding:4px;height:40px;box-shadow:none;border:0;background:none;overflow:visible}.compact-shell .journey-track:before{left:11px;right:11px}.compact-shell .journey-track:after{left:11px;max-width:calc(100% - 22px)}.compact-shell .track-stop{height:29px;width:29px;max-width:29px;aspect-ratio:1;flex:0 1 29px;border-width:1px;font-size:11px;padding:1px}.compact-shell .track-stop-mark{font-size:11px}.compact-shell .track-stop.caught:after{width:5px;height:5px;top:-2px;right:-2px}
.compact-shell .game-main{order:1;display:flex;flex-direction:column;flex:1 1 0;min-height:0;margin:0;padding:0;max-width:none;width:100%}.compact-shell .run-layout{display:flex;flex-direction:column;flex:1 1 0;min-height:0;height:100%;gap:0;width:100%;margin:0}.compact-shell .run-main{display:flex;flex-direction:column;flex:1 1 0;min-height:0;height:100%;width:100%}
.compact-shell .lab{flex:none;height:34px;min-height:0;padding:4px 8px;margin:0 0 5px;font-size:9px;gap:5px}.compact-shell .lab p{display:none}.compact-shell .lab .btn{font-size:9px;padding:4px}.compact-shell .lab select{padding:2px;font-size:9px}
.compact-shell .slot-machine{flex:1 1 0;display:flex;flex-direction:column;min-height:0;height:100%;padding:10px;gap:7px;border-width:2px;outline-width:1px;box-shadow:inset 0 0 0 2px #041225,inset 0 0 0 4px #466586,0 4px #07112099;background:linear-gradient(145deg,#173b61f5,#05172ff7 45%,#102e4eea)}
.compact-shell .machine-title{flex:none;height:65px;min-height:0;padding:6px 8px;box-shadow:inset 0 0 0 2px #07142b,0 2px #020c20;gap:7px}.compact-shell .machine-title h1{font-size:18px;line-height:1.15;margin:4px 0}.compact-shell .machine-title small{font-size:9px;letter-spacing:1.2px}.compact-shell .machine-title p{font-size:11px}.compact-shell .machine-title>.item-sprite{width:26px;height:26px}
.compact-shell .machine-lights{flex:none;height:7px;padding:1px 14px;align-items:center}.compact-shell .machine-lights i{width:4px;height:4px}
.compact-shell .encounter-reels{flex:1 1 0;min-height:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:6px;margin:0;overflow:visible}.compact-shell .encounter-reel{min-height:0;display:flex;flex-direction:column;gap:7px;container-type:size}.compact-shell .reel-window{flex:1 1 0;min-height:0;height:auto;border-width:3px}.compact-shell .reel-battle{flex:none;min-height:31px;margin:0;padding:7px 2px;font-size:12px;line-height:1.1;border-width:1px}.compact-shell .reel-battle:disabled{font-size:9px}
.compact-shell .reel-focus{inset:19% 0 15%;gap:7px;justify-content:center}.compact-shell .reel-pokemon{flex:1 1 0;min-height:0;height:auto;max-height:175px;width:100%}.compact-shell .reel-pokemon .pixel{width:min(170px,100%);height:100%;max-width:100%;min-height:0;object-fit:contain}.compact-shell .reel-name{flex:none;font-size:17px;line-height:1.1;margin:0}.compact-shell .reel-types{flex:none;gap:3px;min-height:18px}.compact-shell .reel-types .type{font-size:9px!important;padding:2px 5px;line-height:12px}.compact-shell .reel-types .type-sprite{width:11px;height:11px}.compact-shell .reel-details{flex:none;font-size:10px;gap:5px;min-height:15px}.compact-shell .reel-archetype{flex:none;font-size:8px}.compact-shell .reel-support{flex:none;font-size:9px}.compact-shell .reel-ghost .pixel{width:90px;height:90px}.compact-shell .reel-ghost.above{top:-48px}.compact-shell .reel-ghost.below{bottom:-50px}.compact-shell .reel-spark{font-size:13px;top:12px;right:9px}.compact-shell .reel-elite{font-size:8px;padding:2px;top:-12px}
.compact-shell .machine-controls{flex:none;display:grid;grid-template-columns:32px minmax(0,1fr) 30px;align-items:center;gap:14px;padding:2px 6px;margin:0;height:58px}.compact-shell .encounter-spin{padding:9px 5px;height:52px;min-height:0;font-size:20px;gap:12px;border-width:2px;box-shadow:inset 0 0 0 1px #c18b21,0 3px #81601f,0 0 12px #ffc84233}.compact-shell .encounter-spin small{font-size:8px;letter-spacing:1px;margin-top:4px}.compact-shell .encounter-spin:disabled{font-size:16px}.compact-shell .spin-emblem .item-sprite{width:32px;height:32px}.compact-shell .machine-lever{height:58px;transform:scale(.8);transform-origin:center center}
.compact-shell .machine-status{flex:none;padding:5px 3px;margin:0;min-height:22px;font-size:10px;line-height:1.2;display:flex;align-items:center;justify-content:center;border-top-color:#486c8c}.compact-shell .machine-status.rarity-legend{gap:9px;flex-wrap:wrap}.compact-shell .machine-status.rarity-legend span{display:inline-flex;align-items:center;gap:4px;color:#a8c6e6;white-space:nowrap}.compact-shell .machine-status.rarity-legend .rarity-dot{margin:0}.compact-shell .center-stop{flex:none;height:45px;min-height:0;padding:4px 7px;gap:7px;margin:0;border-width:1px}.compact-shell .center-stop .ui-sprite{height:32px;width:32px}.compact-shell .center-stop span{gap:2px}.compact-shell .center-stop strong{font-size:11px}.compact-shell .center-stop small{font-size:9px;line-height:1.15}.compact-shell .center-stop b{font-size:10px}
/* One bottom panel at a time; every original inventory slot remains available. */
.compact-shell .expedition-dock{order:2;flex:none;height:var(--dock-height);display:flex;flex-direction:column;gap:6px;padding:7px 9px;background:linear-gradient(145deg,#092440f2,#041329f5);border:2px solid #bb9950;box-shadow:inset 0 0 0 2px #153959,0 3px #020b19a0;color:#dcefff;min-height:0;overflow:visible}.compact-shell .expedition-dock.battle-dock{height:auto;padding:4px 9px}.compact-shell .expedition-dock.battle-dock .dock-footer{border-top:0}
.dock-header{display:flex;align-items:center;gap:8px;flex:none;min-height:30px}.dock-tabs{display:flex;gap:5px;align-items:stretch}.dock-tabs button,.dock-manage{font-size:10px;font-weight:800;background:#0c2946;color:#a9c8e5;border:1px solid #406686;padding:6px 9px;line-height:16px;min-height:30px;white-space:nowrap}.dock-tabs small{font-size:9px;display:inline-block;margin-left:5px;opacity:.85}.dock-tabs button[aria-selected=true]{background:#eec963;border-color:#ffe6a1;color:#102239}.dock-manage{font-size:9px;padding:5px 7px;margin-left:auto}.dock-balance{font-size:14px;font-weight:800;color:#ffda76;white-space:nowrap}.dock-balance .money{gap:4px}.dock-balance .money-icon{width:10px;height:14px}
.dock-content{flex:1 1 0;min-height:0;position:relative}.dock-content>[role=tabpanel]{height:100%;min-height:0}.dock-content>[hidden]{display:none!important}
.compact-shell .dock-tips{flex:none;display:flex;align-items:center;justify-content:center;gap:10px;max-width:none;width:100%;height:22px;min-height:0;padding:3px 16px 3px 5px;border:0;border-top:1px solid #355373;background:none;color:#a8c6e6;line-height:1.2;text-align:center;text-shadow:none;white-space:normal}.compact-shell .dock-tips strong{font-size:10px;flex:none;color:#efd682}.compact-shell .dock-tips small{font-size:10px;display:inline;white-space:normal}.compact-shell .dock-tips .tv-live{width:4px;height:4px;right:3px;top:8px}
.compact-shell .expedition-dock .team-rail{display:block;position:static;width:100%;height:100%;min-height:0;max-height:none;padding:0;margin:0;background:none;border:0;outline:0;box-shadow:none;overflow:visible}.compact-shell .expedition-dock .team-heading{display:none}.compact-shell .expedition-dock .team-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));height:100%;gap:5px;padding:0;margin:0}
.compact-shell .expedition-dock .member{display:flex;flex-direction:row;align-items:center;min-width:0;min-height:0;height:100%;padding:3px 6px 3px 1px;gap:3px;flex-basis:auto;margin:0;border-width:1px;box-shadow:inset 0 0 0 1px #03172e}.compact-shell .expedition-dock .member .team-portrait{position:static;display:grid;place-items:center;width:40px;min-width:40px;height:32px;max-height:46px;padding:0;transform:none;background:none;overflow:visible}.compact-shell .expedition-dock .member .team-portrait .pixel{width:48px;height:48px;max-width:48px;object-fit:contain;transform:none}.compact-shell .expedition-dock .member .info{display:grid;grid-template-columns:1fr auto;gap:3px;width:auto;min-width:0;flex:1;margin:0;padding:0}.compact-shell .expedition-dock .member-title{display:flex;align-items:center;gap:4px;grid-column:1/-1;margin:0}.compact-shell .expedition-dock .member-title h3{font-size:11px;line-height:1.1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.compact-shell .expedition-dock .member-title>strong{font-size:8px;white-space:nowrap;margin:0 0 0 auto}.compact-shell .expedition-dock .member-health{grid-column:2;grid-row:2;margin:0;font-size:8px;gap:0;line-height:8px}.compact-shell .expedition-dock .member-health>span,.compact-shell .expedition-dock .member-health em{display:none}.compact-shell .expedition-dock .member-health>strong{font-size:8px}.compact-shell .expedition-dock .member .hp{grid-column:1;grid-row:2;align-self:center;height:5px;margin:0}.compact-shell .expedition-dock .member .slot,.compact-shell .expedition-dock .member .drag-grip{display:none}.compact-shell .expedition-dock .member.empty{height:100%;min-height:0;gap:6px;justify-content:center;flex-direction:row;padding:4px;background:#071b3090}.compact-shell .expedition-dock .member.empty .empty-ball{font-size:18px;line-height:18px}.compact-shell .expedition-dock .member.empty small{font-size:8px;line-height:1.1}
.compact-shell .expedition-dock .inventory-panel{display:grid;grid-template-columns:88px minmax(0,1fr);grid-template-rows:1fr;align-items:stretch;gap:7px;height:100%;width:100%;position:static;padding:0;margin:0;min-height:0;background:none;border:0;outline:0;box-shadow:none;overflow:visible}.compact-shell .expedition-dock .bag-head{display:none}.compact-shell .expedition-dock .bag-tabs{grid-column:1;grid-row:1;display:flex;flex-direction:column;align-self:start;gap:5px;margin:0;padding:0}.compact-shell .expedition-dock .bag-tabs button{height:27px;min-height:0;padding:4px;font-size:9px;line-height:15px}.compact-shell .expedition-dock .bag-tabs small{display:inline;margin:0 0 0 6px;font-size:9px}.compact-shell .expedition-dock .bag-grid{grid-column:2;grid-row:1;display:grid;grid-template-columns:repeat(10,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));min-height:0;height:100%;width:100%;gap:4px;padding:3px;margin:0;align-items:stretch}.compact-shell .expedition-dock .bag-slot{height:100%;width:100%;min-height:0;min-width:0;max-width:none;aspect-ratio:auto;padding:1px;display:grid;place-items:center;overflow:hidden}.compact-shell .expedition-dock .bag-slot .pixel,.compact-shell .expedition-dock .bag-slot .item-sprite{height:100%;width:100%;max-width:48px;max-height:48px;object-fit:contain}.compact-shell .expedition-dock .bag-slot small{display:none}.compact-shell .expedition-dock .bag-stats{grid-column:1;grid-row:1;align-self:end;margin:0;padding:3px 2px;font-size:8px;background:none;border:0}.compact-shell .expedition-dock .bag-stats>span{display:flex;gap:3px;align-items:center}.compact-shell .expedition-dock .bag-stats .stat-help{width:11px;height:11px;font-size:8px;line-height:10px}
.compact-shell .expedition-dock .active-passives{height:100%;min-height:0;display:flex;flex-direction:column;background:none;border:0;box-shadow:none;padding:0;margin:0;overflow:visible}.compact-shell .expedition-dock .active-passives>header{display:flex;align-items:center;gap:6px;flex:none;height:22px;min-height:0;padding:2px 5px;border:0;background:none}.compact-shell .expedition-dock .active-passives>header strong{font-size:10px}.compact-shell .expedition-dock .active-passives>header small{margin-left:auto}.compact-shell .expedition-dock .passive-list{flex:1;min-height:0;display:flex;flex-wrap:wrap;align-content:center;gap:5px;padding:2px 5px;overflow:auto}.compact-shell .expedition-dock .passive-item{display:flex;align-items:center;gap:4px;padding:3px 6px;min-height:26px}.compact-shell .expedition-dock .passive-item .item-sprite{height:22px;width:22px}.compact-shell .expedition-dock .passive-item small{font-size:9px}.compact-shell .expedition-dock .passive-empty{font-size:11px;text-align:center;width:100%}
/* Selection and battle use the same remaining viewport height. */
.compact-shell .biome-picker{flex:1 1 0;min-height:0;display:flex;flex-direction:column;gap:10px;padding:14px;background:#051b34eb}.compact-shell .biome-picker header{flex:none;padding:12px 5px;text-align:center}.compact-shell .biome-picker header h1{font-size:22px;margin:10px 0}.compact-shell .biome-picker header .eyebrow{font-size:10px;padding:5px 8px}.compact-shell .biome-picker header p{font-size:12px;line-height:1.35}.compact-shell .biome-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;flex:1 1 0;min-height:0;align-items:stretch}.compact-shell .biome-picker-card{display:flex;flex-direction:column;height:100%;min-height:0;padding:0;overflow:hidden}.compact-shell .biome-photo{flex:1 1 0;height:auto;min-height:0;background-position:center;background-size:cover}.compact-shell .biome-photo .route-types{display:flex;flex-wrap:wrap;justify-content:center;gap:4px;padding:6px;bottom:0}.compact-shell .biome-photo .type{font-size:8px;padding:3px}.compact-shell .biome-copy{height:auto;min-height:94px;flex:none;padding:10px 7px;display:flex;flex-direction:column;justify-content:center;gap:8px}.compact-shell .biome-copy strong{font-size:13px;line-height:1.4}.compact-shell .biome-copy small{font-size:9px}.compact-shell .biome-copy>span{font-size:8px;line-height:1.4}.compact-shell .biome-picker footer{flex:none;padding:7px 4px;font-size:11px;line-height:1.3}
.compact-shell .showdown-battle{display:flex;flex-direction:column;flex:1 1 0;min-height:0;height:100%;overflow:visible}.compact-shell .battle-commandbar{flex:none;padding:8px;height:48px;min-height:0}.compact-shell .battle-commandbar .eyebrow{font-size:10px;letter-spacing:1px}.compact-shell .battle-commandbar h2{font-size:13px}.compact-shell .battle-commandbar .btn{padding:6px 8px;min-height:28px;font-size:9px}.compact-shell .battle-mode{font-size:9px;padding:5px}.compact-shell .battle-field{flex:1 1 0;min-height:0;height:auto}.compact-shell .battle-console{display:flex;flex:none;height:68px;min-height:0;overflow:hidden}.compact-shell .battle-log{flex:1;min-width:0;min-height:0;height:100%;padding:7px;font-size:9px;overflow:auto}.compact-shell .battle-progress{flex:none;padding:8px;font-size:8px;min-width:110px}.compact-shell .battle-actions{flex:none;min-height:44px;padding:6px 8px;gap:8px;font-size:9px}.compact-shell .battle-actions .btn{padding:8px 10px;font-size:11px;min-height:30px}.compact-shell .battle-field .fighter>.pixel{width:116px;height:116px;object-fit:contain}.compact-shell .battle-field .nameplate{width:200px;padding:7px}.compact-shell .battle-field .nameplate h3{font-size:12px}.compact-shell .battle-field .nameplate .hp-numbers{font-size:10px}.compact-shell .battle-field .nameplate .type{font-size:8px}.compact-shell .battle-field .ally-fighter{left:3%;bottom:5%;width:43%;height:64%}.compact-shell .battle-field .enemy-fighter{right:3%;top:5%;width:43%;height:64%}.compact-shell .battle-field .nameplate .hp{height:8px}.compact-shell .battle-roster{padding:3px;gap:3px}.compact-shell .battle-roster .party-ball{height:18px;width:18px}.compact-shell .battle-roster .battle-ball{height:18px;width:18px}
.compact-shell .slot-service{display:flex;align-items:center;text-align:center;min-height:0;height:100%;padding:12px}.compact-shell .slot-service .machine-title{width:100%}.compact-shell .slot-shop-art{flex:1 1 0;min-height:0;margin:8px 0;display:grid;place-items:center}.compact-shell .slot-shop-art .ui-sprite{height:100%;max-height:150px;min-height:0;width:150px;object-fit:contain}.compact-shell .slot-service h2{font-size:21px}.compact-shell .slot-service p{font-size:12px;line-height:1.4;margin:8px 0;max-width:340px}.compact-shell .slot-service footer{margin:10px 0 0;font-size:10px}.compact-shell .pixel-dialog{flex:1 1 0;min-height:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:20px;overflow:auto}.compact-shell .pixel-dialog h2{font-size:22px}.compact-shell .pixel-dialog p{font-size:13px;line-height:1.5;margin:0}.compact-shell .pixel-dialog .dialog-icon{font-size:36px;margin:0}
@media(max-width:520px){
 .slots-shell.compact-shell{--dock-height:172px;width:calc(100% - 14px);height:calc(100vh - 14px);height:calc(100dvh - 14px);margin:7px auto;gap:6px}
 .compact-shell .game-topbar{height:62px;padding:4px 8px;grid-template-columns:1fr auto;grid-template-rows:24px 18px;align-content:center;gap:2px 6px}.compact-shell .expedition-brand strong{font-size:23px}.compact-shell .expedition-id{grid-column:1;grid-row:2;display:flex;flex-direction:row;align-items:center;justify-content:flex-start;gap:6px;padding:0;white-space:nowrap}.compact-shell .expedition-id strong{font-size:7px;letter-spacing:0}.compact-shell .expedition-id span{font-size:7px;letter-spacing:0}.compact-shell .game-top-actions{grid-column:2;grid-row:1/3}.compact-shell .run-nav button{font-size:8px;padding:4px 5px}.compact-shell .speed-control>span{display:none}.compact-shell .speed-chip{font-size:9px;padding:2px 7px;min-width:25px}
 .compact-shell .game-stage{gap:6px}.compact-shell .expedition-progress{height:68px;display:flex;flex-direction:column;align-items:stretch;gap:3px;padding:3px 6px}.compact-shell .biome-identity{padding:0;gap:6px}.compact-shell .biome-identity>img{height:25px;width:29px;border-width:1px}.compact-shell .biome-identity>div{display:flex;align-items:center;gap:7px;flex:1;min-width:0}.compact-shell .biome-identity small{font-size:8px;white-space:nowrap}.compact-shell .biome-identity strong{font-size:11px;line-height:1.2}.compact-shell .journey-track{height:29px;min-height:29px;flex:none;width:100%;padding:0 5px;margin:0;gap:6px}.compact-shell .track-stop{height:25px;width:25px;max-width:25px;flex-basis:25px}.compact-shell .track-stop-mark{font-size:10px}
 .compact-shell .slot-machine{padding:7px;gap:5px}.compact-shell .machine-title{height:55px;padding:5px;gap:4px}.compact-shell .machine-title h1{font-size:14px;letter-spacing:0;margin:3px 0}.compact-shell .machine-title small{font-size:8px;letter-spacing:.7px}.compact-shell .machine-title p{font-size:9px}.compact-shell .machine-title>.item-sprite{width:20px;height:20px}.compact-shell .machine-lights{height:5px;padding:0 8px}.compact-shell .encounter-reels{padding:4px;gap:5px}.compact-shell .encounter-reel{gap:5px}.compact-shell .reel-window{border-width:2px}.compact-shell .reel-focus{inset:15% 0 12%;gap:5px}.compact-shell .reel-pokemon{max-height:130px}.compact-shell .reel-pokemon .pixel{max-width:100%;width:115px}.compact-shell .reel-name{font-size:13px}.compact-shell .reel-types{gap:2px;min-height:14px}.compact-shell .reel-types .type{font-size:7px!important;line-height:10px;padding:2px}.compact-shell .reel-types .type-sprite{width:8px;height:8px}.compact-shell .reel-details{font-size:8px;min-height:13px;gap:3px}.compact-shell .reel-ghost .pixel{width:65px;height:65px}.compact-shell .reel-ghost.above{top:-38px}.compact-shell .reel-ghost.below{bottom:-36px}.compact-shell .reel-support{font-size:8px}.compact-shell .reel-battle{font-size:10px;min-height:28px;padding:6px 1px}.compact-shell .reel-battle:disabled{font-size:7px}.compact-shell .reel-number{font-size:8px;left:4px;top:4px}
 .compact-shell .machine-controls{height:48px;grid-template-columns:23px 1fr 23px;gap:8px;padding:1px 2px}.compact-shell .encounter-spin{height:42px;font-size:16px;padding:5px;gap:9px}.compact-shell .encounter-spin small{font-size:7px;letter-spacing:.5px;margin-top:3px}.compact-shell .encounter-spin:disabled{font-size:13px}.compact-shell .spin-emblem .item-sprite{height:24px;width:24px}.compact-shell .machine-lever{transform:scale(.65);height:49px}.compact-shell .machine-status{min-height:17px;padding:3px 2px;font-size:8px}.compact-shell .center-stop{height:35px;padding:3px 5px;gap:5px}.compact-shell .center-stop .ui-sprite{width:25px;height:25px}.compact-shell .center-stop strong{font-size:9px}.compact-shell .center-stop small{font-size:8px}.compact-shell .center-stop b{font-size:8px}
 .compact-shell .expedition-dock{padding:5px 6px;gap:5px}.dock-header{gap:4px;min-height:27px;flex-wrap:nowrap}.dock-tabs{gap:3px}.dock-tabs button{font-size:9px;padding:4px 5px;min-height:27px;line-height:17px}.dock-tabs small{font-size:8px;margin-left:3px}.dock-manage{font-size:0;min-height:27px;width:26px;padding:0}.dock-manage:after{content:'⇄';font-size:18px}.dock-balance{font-size:12px}.dock-balance .money-icon{width:8px;height:12px}.compact-shell .dock-tips{height:24px;gap:5px;padding:3px 8px 3px 0}.compact-shell .dock-tips strong{font-size:8px}.compact-shell .dock-tips small{font-size:8px;line-height:1.25}.compact-shell .dock-tips .tv-live{display:none}
 .compact-shell .expedition-dock .team-list{gap:4px}.compact-shell .expedition-dock .member{padding:2px;gap:1px}.compact-shell .expedition-dock .member .team-portrait{width:28px;min-width:28px;max-height:42px}.compact-shell .expedition-dock .member .team-portrait .pixel{height:37px;width:37px;max-width:37px}.compact-shell .expedition-dock .member-title{display:block}.compact-shell .expedition-dock .member-title h3{font-size:9px;max-width:65px}.compact-shell .expedition-dock .member-title>strong{font-size:7px;margin-top:3px}.compact-shell .expedition-dock .member .info{gap:3px 2px}.compact-shell .expedition-dock .member-health>strong{font-size:7px}.compact-shell .expedition-dock .member.empty{gap:4px}.compact-shell .expedition-dock .member.empty small{font-size:7px}.compact-shell .expedition-dock .member.empty .empty-ball{font-size:16px}
 .compact-shell .expedition-dock .inventory-panel{grid-template-columns:71px 1fr;gap:5px}.compact-shell .expedition-dock .bag-grid{grid-template-columns:repeat(5,minmax(0,1fr));grid-template-rows:repeat(4,minmax(0,1fr));gap:2px;padding:2px}.compact-shell .expedition-dock .bag-tabs button{font-size:8px;height:25px}.compact-shell .expedition-dock .bag-stats{font-size:7px;padding:2px 0}.compact-shell .expedition-dock .bag-stats .stat-help{width:9px;height:9px;font-size:7px;line-height:8px}.compact-shell .expedition-dock .passive-item{padding:2px 4px;min-height:23px}.compact-shell .expedition-dock .passive-item small{font-size:8px}.compact-shell .expedition-dock .passive-item .item-sprite{width:19px;height:19px}
 .compact-shell .biome-picker{padding:8px;gap:7px}.compact-shell .biome-picker header{padding:10px 2px}.compact-shell .biome-picker header h1{font-size:18px;line-height:1.25;margin:8px 0}.compact-shell .biome-picker header p{font-size:10px}.compact-shell .biome-picker header .eyebrow{font-size:9px}.compact-shell .biome-options{gap:6px}.compact-shell .biome-copy{padding:8px 4px;min-height:105px;gap:7px}.compact-shell .biome-copy strong{font-size:11px;line-height:1.4}.compact-shell .biome-copy small{font-size:8px}.compact-shell .biome-copy>span{font-size:7px}.compact-shell .biome-photo .route-types{padding:3px;gap:2px}.compact-shell .biome-photo .type{font-size:7px;padding:2px}.compact-shell .biome-picker footer{font-size:10px;padding:5px 1px}.compact-shell .biome-number{font-size:10px}
 .compact-shell .battle-commandbar{height:40px;padding:5px}.compact-shell .battle-commandbar .eyebrow{font-size:8px}.compact-shell .battle-mode{display:none}.compact-shell .battle-commandbar .btn{font-size:8px;min-height:26px;padding:5px}.compact-shell .battle-field .fighter>.pixel{width:90px;height:90px}.compact-shell .battle-field .nameplate{width:145px;padding:5px}.compact-shell .battle-field .nameplate h3{font-size:10px}.compact-shell .battle-field .nameplate .hp-numbers{font-size:8px}.compact-shell .battle-field .nameplate .type{font-size:6px}.compact-shell .battle-field .nameplate .hp{height:6px}.compact-shell .battle-console{height:48px}.compact-shell .battle-progress{min-width:70px;padding:5px;font-size:7px}.compact-shell .battle-log{font-size:7px;padding:5px}.compact-shell .battle-actions{min-height:38px;padding:4px 6px}.compact-shell .battle-actions>span{font-size:8px;max-width:180px;line-height:1.3}.compact-shell .battle-actions .btn{font-size:9px;padding:6px;min-height:27px}.compact-shell .battle-field .ally-fighter{width:46%;left:2%;height:67%}.compact-shell .battle-field .enemy-fighter{width:46%;right:2%;height:67%}.compact-shell .slot-service h2{font-size:18px}.compact-shell .slot-service p{font-size:11px}.compact-shell .slot-shop-art .ui-sprite{max-height:100px;width:100px}
}
@media(max-height:730px){.slots-shell.compact-shell{--dock-height:176px;gap:5px;margin-top:6px;height:calc(100vh - 12px);height:calc(100dvh - 12px)}.compact-shell .game-topbar{height:54px;padding:3px 10px}.compact-shell .game-top-actions{gap:3px}.compact-shell .run-nav button{min-height:24px;padding:4px 7px}.compact-shell .speed-chip{padding:1px 6px;line-height:12px;min-height:0}.compact-shell .expedition-progress{height:48px}.compact-shell .machine-title{height:47px}.compact-shell .machine-title h1{font-size:15px}.compact-shell .machine-title p{display:none}.compact-shell .machine-controls{height:44px}.compact-shell .encounter-spin{height:39px;font-size:16px}.compact-shell .machine-status{display:none}.compact-shell .reel-focus{inset:10% 0 8%;gap:4px}.compact-shell .reel-ghost{opacity:.16}.compact-shell .biome-picker header{padding:5px 0}.compact-shell .biome-picker header h1{font-size:18px;margin:6px 0}.compact-shell .biome-picker header p{font-size:10px}.compact-shell .biome-copy{min-height:82px}.compact-shell .battle-console{height:40px}.compact-shell .battle-field .fighter>.pixel{height:82px;width:82px}.compact-shell .dock-tips{height:20px}}
@media(max-width:520px) and (max-height:730px){.compact-shell .expedition-progress{height:63px}.compact-shell .biome-identity>img{height:21px;width:25px}.compact-shell .biome-identity strong{font-size:10px}.compact-shell .reel-name{font-size:12px}.compact-shell .reel-types .type{font-size:6px!important}.compact-shell .reel-details{font-size:7px}.compact-shell .reel-focus{gap:3px}.compact-shell .reel-pokemon .pixel{max-height:87px}.compact-shell .expedition-dock .member .team-portrait .pixel{height:33px;width:33px}.compact-shell .expedition-dock .member-title>strong{display:none}.compact-shell .biome-copy strong{font-size:10px}.compact-shell .biome-copy>span{display:none}}
@media(max-height:560px) and (min-width:600px){.slots-shell.compact-shell{max-width:960px;--dock-height:116px}.compact-shell .game-topbar{height:44px}.compact-shell .expedition-id{display:flex;gap:8px}.compact-shell .game-top-actions{flex-direction:row;align-items:center}.compact-shell .expedition-progress{height:37px}.compact-shell .biome-identity>img{height:30px;width:30px}.compact-shell .journey-track{height:31px}.compact-shell .track-stop{height:24px;width:24px}.compact-shell .slot-machine{display:grid;grid-template-columns:minmax(0,1fr) 190px;grid-template-rows:38px 1fr 35px;gap:5px;padding:7px}.compact-shell .machine-title{grid-column:1/-1;height:38px}.compact-shell .machine-title>div{display:flex;align-items:center;gap:14px}.compact-shell .machine-title h1{font-size:14px}.compact-shell .machine-lights{display:none}.compact-shell .encounter-reels{grid-column:1;grid-row:2/4}.compact-shell .machine-controls{grid-column:2;grid-row:2;align-self:center;display:block;height:auto}.compact-shell .spin-emblem,.compact-shell .machine-lever{display:none}.compact-shell .encounter-spin{width:100%;font-size:15px;height:54px}.compact-shell .center-stop{grid-column:2;grid-row:3;height:32px}.compact-shell .center-stop small{display:none}.compact-shell .reel-focus{inset:0;flex-direction:row;flex-wrap:wrap;gap:2px;padding:4px;align-content:center}.compact-shell .reel-pokemon{flex:none;width:48%;height:65%;max-height:82px}.compact-shell .reel-name{font-size:12px;max-width:45%}.compact-shell .reel-types{display:none}.compact-shell .reel-details{width:100%;font-size:9px}.compact-shell .reel-battle{min-height:24px;padding:4px}.compact-shell .reel-ghost{display:none}.compact-shell .expedition-dock .team-list{grid-template-columns:repeat(6,1fr);grid-template-rows:1fr}.compact-shell .dock-tips{height:18px}.compact-shell .expedition-dock .bag-grid{grid-template-columns:repeat(20,minmax(0,1fr));grid-template-rows:1fr}.compact-shell .expedition-dock .bag-tabs{flex-direction:row}.compact-shell .expedition-dock .inventory-panel{grid-template-columns:135px 1fr}.compact-shell .expedition-dock .bag-tabs button{font-size:8px}.compact-shell .biome-picker{gap:5px;padding:7px}.compact-shell .biome-picker header{padding:0}.compact-shell .biome-picker header h1{font-size:15px;margin:4px}.compact-shell .biome-picker header p,.compact-shell .biome-picker footer{display:none}.compact-shell .biome-picker-card{display:grid;grid-template-columns:45% 1fr}.compact-shell .biome-copy{min-height:0;padding:4px}.compact-shell .biome-photo{height:100%}.compact-shell .biome-copy>span{display:none}.compact-shell .biome-copy strong{font-size:12px}.compact-shell .biome-copy small{font-size:8px}.compact-shell .battle-console{display:none}}
@media(prefers-reduced-motion:reduce){.compact-shell .meadow-breeze,.compact-shell .meadow-stars i{animation:none;will-change:auto}}

/* Shared visual language for the expedition, menus, collections and dialogs. */
.site-theme{--font:'Trebuchet MS','Segoe UI',sans-serif;--ui-panel:#071d38;--ui-raised:#123454;--ui-line:#496b8c;--ui-gold:#ffe28a;--ui-border:#ba9849;--ui-text:#edf4ff;--ui-muted:#abc5df;--ui-frame:inset 0 0 0 2px #06162e,inset 0 0 0 3px #416583,0 3px #020c1ed9;font-family:var(--font);color:var(--ui-text);--muted:var(--ui-muted);--gold:var(--ui-gold)}
.site-theme button,.site-theme input,.site-theme select{font-family:inherit}
.site-theme{font-size:14px}
.site-theme .night-scene{position:fixed;inset:0;z-index:-2;overflow:hidden;pointer-events:none;background:#050b23 url("/static/game/world/starry-meadow-v1.c43ba0fc187a.png") center/cover no-repeat;image-rendering:pixelated}
.site-theme .eyebrow{font-family:inherit;color:var(--ui-gold);font-weight:800}
.site-theme .muted,.site-theme .small.muted{color:var(--ui-muted)}
.site-theme .btn,.site-theme .run-nav button,.site-theme .home-back{border:1px solid var(--ui-line);background:#123454;color:var(--ui-text);border-radius:0;box-shadow:2px 3px #020d20;text-shadow:none}
.site-theme .btn:hover,.site-theme .run-nav button:hover,.site-theme .home-back:hover{background:#1b456b;border-color:var(--ui-gold)}
.site-theme .btn.primary{background:linear-gradient(#ffe48b,#eaba39);border:2px solid #ffedaa;color:#09213c;box-shadow:2px 3px #70551d}
.site-theme .btn.primary:hover{background:#ffe598}
.site-theme .btn.danger,.site-theme .run-nav .danger{background:#4c2434;border-color:#b8646d;color:#ffc0bc}
.site-theme :is(button,a,input,select):focus-visible{outline:2px solid #fff0aa;outline-offset:2px}
.site-theme .pill{background:#123454;color:var(--ui-gold);border:1px solid var(--ui-line);border-radius:0;font-family:inherit;font-size:11px}
.site-theme.menu-page{position:relative;isolation:isolate;background:none;color:var(--ui-text)}
.site-theme.menu-page .menu-top,.site-theme.menu-page:has(.starter-grid) .menu-top{background:linear-gradient(#103153,#06162e);border:2px solid var(--ui-border);box-shadow:var(--ui-frame);color:var(--ui-text);width:calc(100% - 24px);max-width:660px;height:54px;min-height:54px;flex:none;margin:0 auto;padding:7px 12px}
.site-theme .expedition-brand strong{font-family:Impact,'Arial Black',sans-serif;color:var(--ui-gold);text-shadow:2px 3px #8a561c,3px 4px #000;letter-spacing:.5px}
.site-theme.menu-page .expedition-brand strong{font-size:26px}
.site-theme.menu-page .menu-top .btn{font-size:10px;min-height:30px;padding:7px 10px;box-shadow:none}
.site-theme.menu-page h2{color:var(--ui-gold)}
.site-theme.menu-page:has(.starter-grid) .main{background:linear-gradient(145deg,#123354f5,#071b34f5);border-color:var(--ui-border);box-shadow:var(--ui-frame)}
.site-theme.menu-page:has(.starter-grid) .starter-intro .eyebrow{color:var(--ui-gold)}
.site-theme.menu-page:has(.starter-grid) .starter-intro h1{color:var(--ui-gold);font-size:23px;text-shadow:1px 2px #020b1b}
.site-theme.menu-page:has(.starter-grid) .starter-intro p{color:var(--ui-muted);font-size:12px}
.site-theme.menu-page:has(.starter-grid) .main>.banner{background:#0a2039;border-color:var(--ui-line);color:var(--ui-muted);font-size:10px}
.site-theme.menu-page:has(.starter-grid) .starter{background:linear-gradient(110deg,#123855,#071a32);color:var(--ui-text);border-color:var(--ui-line);box-shadow:2px 3px #020d20}
.site-theme.menu-page:has(.starter-grid) .starter:hover{border-color:var(--starter-accent);box-shadow:2px 3px #020d20}
.site-theme.menu-page:has(.starter-grid) .starter:before{border-bottom-color:#07182d}
.site-theme.menu-page:has(.starter-grid) .starter:after{border-color:color-mix(in srgb,var(--starter-accent) 20%,transparent)}
.site-theme.menu-page:has(.starter-grid) .starter-portrait{border-right-color:#496b8c}
.site-theme.menu-page:has(.starter-grid) .starter-info h2{color:var(--ui-text)}
.site-theme.menu-page:has(.starter-grid) .starter-info p,.site-theme.menu-page:has(.starter-grid) .starter-number{color:var(--ui-muted)}
.site-theme.menu-page:has(.starter-grid) .starter-level{background:#07182d;border-color:var(--ui-line);color:var(--ui-gold);box-shadow:1px 2px var(--starter-accent)}
.site-theme.menu-page:has(.starter-grid) .type-logo{background:#07182d;border-color:#496b8c;color:var(--ui-text);box-shadow:1px 2px #020d20}
.site-theme.menu-page:has(.starter-grid) .starter>.btn{background:linear-gradient(#ffe48b,#eaba39);border-color:#ffedaa;color:#09213c;text-shadow:none;box-shadow:2px 3px #70551d;font-size:11px}

/* Outcome uses the same compact frame and night scene as the encounter machine. */
html:has(.site-theme .outcome),body:has(.site-theme .outcome){height:100%;overflow:hidden}
.site-theme.menu-page:has(.outcome){display:flex;flex-direction:column;justify-content:center;gap:8px;height:100vh;height:100dvh;min-height:0;padding:12px 0}
.site-theme.menu-page .main:has(.outcome){flex:none;width:calc(100% - 24px);max-width:660px;margin:0 auto;padding:0;min-height:0}
.site-theme .outcome{width:100%;max-width:none;margin:0;background:linear-gradient(145deg,#123354f5,#071b34f5)!important;border:2px solid var(--ui-border)!important;box-shadow:var(--ui-frame)!important;color:var(--ui-text)}
.site-theme .outcome:before{height:5px;border-bottom:1px solid #06162e;background:var(--ui-gold)}
.site-theme .outcome-hero{display:grid;grid-template-columns:112px minmax(0,1fr);gap:18px;align-items:center;padding:24px 20px 20px}
.site-theme .outcome-portrait{width:112px;height:112px;margin:0;border:2px solid var(--ui-line);background:radial-gradient(#245276,#07182f);box-shadow:3px 3px #020d20}
.site-theme .outcome-portrait .pixel{width:104px!important;height:104px!important}
.site-theme .outcome-spark{right:8px;top:5px;font-size:19px}
.site-theme .outcome-copy{text-align:left}
.site-theme .outcome-copy .eyebrow{background:#0a2039;color:var(--ui-gold);font-size:9px;letter-spacing:1px;border-left:3px solid var(--outcome-accent);padding:5px 7px}
.site-theme .outcome h1{color:var(--ui-gold);font-size:26px!important;letter-spacing:0;line-height:1.15;margin:10px 0!important}
.site-theme .outcome-copy p{font-size:13px;line-height:1.5;color:var(--ui-muted)!important}
.site-theme .outcome-summary{grid-template-columns:1fr 1fr 1.35fr;background:#06172b;border-top:1px solid var(--ui-line);border-bottom:1px solid var(--ui-line)}
.site-theme .outcome-stat{min-height:77px;padding:12px 16px;border-right:1px solid var(--ui-line)}
.site-theme .outcome-stat:last-child{border-right:0}
.site-theme .outcome-stat>span{color:var(--ui-muted);font-size:9px;letter-spacing:1px}
.site-theme .outcome-stat>strong{color:var(--ui-gold);font-size:20px;margin:4px 0}
.site-theme .outcome-stat>small{color:var(--ui-muted);font-size:10px}
.site-theme .outcome-result{grid-column:auto;border-top:0}
.site-theme .outcome-result>strong{font-size:14px}
.site-theme .outcome-next{display:flex;flex-direction:row;gap:16px;text-align:left;padding:17px 20px;align-items:center}
.site-theme .outcome-next>div>strong{color:var(--ui-gold);font-size:11px}
.site-theme .outcome-next>div>small{color:var(--ui-muted);font-size:11px}
.site-theme .outcome-next .btn{min-width:190px;width:auto;padding:11px 12px;font-size:11px}

/* Collection pages share one header and keep large collections inside their panel. */
.site-theme.menu-page:not(:has(.starter-grid)):not(:has(.outcome)){display:flex;flex-direction:column;gap:8px;height:100vh;height:100dvh;min-height:0;padding:12px 0;overflow:hidden}
.site-theme.menu-page:not(:has(.starter-grid)):not(:has(.outcome)) .main{flex:1;min-height:0;overflow:auto;width:calc(100% - 24px);max-width:660px;margin:0 auto;padding:18px;background:#071d38ed;border:2px solid var(--ui-border);box-shadow:var(--ui-frame);}
.site-theme.menu-page .sectionheading{margin:0 0 16px;gap:12px}
.site-theme.menu-page .sectionheading h2{font-size:21px}
.site-theme.menu-page .collection{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}
.site-theme.menu-page .dex-entry,.site-theme.menu-page .panel:not(.outcome){background:linear-gradient(#123454,#091d35);border:1px solid var(--ui-line);box-shadow:2px 3px #020d20;color:var(--ui-text)}
.site-theme.menu-page .dex-entry{padding:10px 5px;min-width:0}
.site-theme.menu-page .dex-entry .pixel{width:64px;height:64px;max-width:100%}
.site-theme.menu-page .dex-entry strong{font-size:11px}
.site-theme.menu-page .empty-state{padding:32px 22px;color:var(--ui-muted);line-height:1.6}
.site-theme.menu-page:not(:has(.starter-grid)):not(:has(.outcome)):has(.empty-state){justify-content:center}
.site-theme.menu-page:not(:has(.starter-grid)):not(:has(.outcome)):has(.empty-state) .main{flex:none}

/* Home and account menus retain their actions with the same palette and typography. */
.site-theme.home-screen{height:100vh;height:100dvh;min-height:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;background:none;padding:12px;overflow:hidden}
.site-theme.home-screen:before{background:linear-gradient(#04112618,#04112655)}
.site-theme .home-window{width:100%;max-width:660px;max-height:calc(100vh - 44px);max-height:calc(100dvh - 44px);overflow:auto;padding:22px 24px;background:linear-gradient(145deg,#123354f5,#071b34f5);border:2px solid var(--ui-border);box-shadow:var(--ui-frame);}
.site-theme .home-window:before,.site-theme .home-window:after{width:6px;height:6px;top:8px;background:var(--ui-gold);box-shadow:none}
.site-theme .home-wordmark{font-family:Impact,'Arial Black',sans-serif;font-size:44px;line-height:1;letter-spacing:1px;color:var(--ui-gold);-webkit-text-stroke:0;text-shadow:2px 3px #8a561c,3px 4px #000;transform:none}
.site-theme .home-wordmark:before,.site-theme .home-wordmark:after{display:none}
.site-theme .home-tagline{color:var(--ui-muted);font-size:10px;letter-spacing:3px;margin-top:8px}
.site-theme .home-version{font-size:9px;color:var(--ui-gold);margin-top:7px}
.site-theme .home-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:18px 0 14px}
.site-theme .home-menu-card,.site-theme .home-menu-card.wide{display:grid;grid-template-columns:1fr;min-height:68px;gap:0;padding:11px 14px;border:1px solid var(--ui-line);background:linear-gradient(110deg,#123855,#071a32);box-shadow:2px 3px #020d20;color:var(--ui-text);font-family:inherit}
.site-theme .home-menu-card.wide{grid-column:1/-1}
.site-theme .home-menu-card:hover{border-color:var(--ui-gold);background:#173c60;transform:none}
.site-theme .home-menu-card.journey-card{border-color:var(--ui-border);background:linear-gradient(#ffe48b,#eaba39);color:#09213c}
.site-theme .home-menu-copy{display:grid;grid-template-columns:1fr;gap:5px;width:100%;text-align:left}
.site-theme .home-menu-copy strong{font-size:14px;letter-spacing:.3px;color:inherit}
.site-theme .home-menu-copy small{font-size:11px;line-height:1.3;color:var(--ui-muted);border:0;padding:0;text-transform:none}
.site-theme .journey-card .home-menu-copy small{color:#21445c}
.site-theme .home-window:not(.auth-active) .home-menu-card.journey-card .home-menu-copy strong{color:#09213c;text-shadow:none}
.site-theme .home-premise{border-color:var(--ui-line);padding:12px 0;margin-top:10px}
.site-theme .home-premise strong{font-size:12px;color:var(--ui-gold)}
.site-theme .home-premise p{font-size:12px;line-height:1.5;color:var(--ui-muted)}
.site-theme .home-account{font-size:10px;color:var(--ui-muted);margin-top:12px}
.site-theme .home-account button,.site-theme .home-recovery{color:var(--ui-gold)}
.site-theme .home-credit{position:static;color:var(--ui-muted);font-size:8px;letter-spacing:1px;text-shadow:1px 1px #020d20}
.site-theme .home-auth{width:100%;max-width:400px;margin:15px auto 8px}
.site-theme .home-auth h2{color:var(--ui-gold);font-size:20px}
.site-theme .home-back{font-size:10px;padding:7px 10px}
.site-theme .auth-tabs{margin:14px 0;border-bottom-color:var(--ui-line)}
.site-theme .auth-tabs button{color:var(--ui-muted);font-size:12px}
.site-theme .auth-tabs .active{color:var(--ui-gold);border-bottom-color:var(--ui-gold)}
.site-theme .field{color:var(--ui-muted);font-size:11px;margin-bottom:12px}
.site-theme .field input,.site-theme select{background:#06172b;border-color:var(--ui-line);color:var(--ui-text);border-radius:0}
.site-theme .field input{font-size:14px;padding:10px}

/* Shop, inventory, confirmation and capture retain their individual mechanics. */
.site-theme.overlay{background:#020a1ccb;backdrop-filter:blur(5px)}
.site-theme .modal{background:var(--ui-panel);color:var(--ui-text);border:2px solid var(--ui-border);box-shadow:var(--ui-frame);}
.site-theme .modal-head{background:linear-gradient(#103153,#06162e);border-bottom:2px solid var(--ui-border);padding:14px 17px}
.site-theme .modal-head h2{font-size:23px;color:var(--ui-gold)}
.site-theme .modal-head .eyebrow{font-size:9px;letter-spacing:1px}
.site-theme .modal-body{font-size:14px}
.site-theme .modal-body .banner,.site-theme .shop-item,.site-theme .item-use-head,.site-theme .item-target-card,.site-theme .partner-summary,.site-theme .partner-data{background:#0b2742;border-color:var(--ui-line);color:var(--ui-text);box-shadow:2px 3px #020d20}
.site-theme .shop-item h3,.site-theme .item-use-head h3{color:var(--ui-text)}
.site-theme .shop-item p,.site-theme .item-target-copy>span,.site-theme .item-use-head p{color:var(--ui-muted)}
.site-theme .partner-art{background:radial-gradient(#245276,#07182f);border-color:var(--ui-line)}
.site-theme .partner-traits>div,.site-theme .partner-values>div{background:#123454;border-left-color:var(--ui-border)}
.site-theme .partner-stat-grid .detail-cell{background:#06172b;border-color:var(--ui-line)}
.site-theme .upgrade-side,.site-theme .upgrade-center{background:#0b203a;border-color:var(--ui-line)}
.site-theme .resource-block,.site-theme .upgrade-side header{border-color:var(--ui-line)}
.site-theme .upgrade-side h3,.site-theme .resource-block h3{color:var(--ui-gold)}
.site-theme .capture-pokemon,.site-theme .sacrifice{background:#06172b;border-color:var(--ui-line)}
.site-theme .capture-pokemon.selected,.site-theme .sacrifice.selected{background:#163653;border-color:var(--ui-gold)}
@media(max-width:520px){
 .site-theme.menu-page .menu-top,.site-theme.menu-page:has(.starter-grid) .menu-top{width:calc(100% - 14px);height:50px;min-height:50px;padding:5px 10px}
 .site-theme.menu-page .expedition-brand strong{font-size:23px}
 .site-theme.menu-page:has(.starter-grid) .starter-intro h1{font-size:18px}
 .site-theme.menu-page:has(.starter-grid) .starter-intro p{font-size:10px}
 .site-theme.menu-page:has(.starter-grid) .starter>.btn{font-size:10px}
 .site-theme.menu-page:has(.outcome){padding:7px 0;gap:6px}
 .site-theme.menu-page .main:has(.outcome){width:calc(100% - 14px)}
 .site-theme .outcome-hero{grid-template-columns:78px minmax(0,1fr);gap:12px;padding:19px 12px 15px}
 .site-theme .outcome-portrait{width:78px;height:88px}
 .site-theme .outcome-portrait .pixel{width:80px!important;height:80px!important}
 .site-theme .outcome-copy .eyebrow{font-size:8px;letter-spacing:.5px;padding:4px 5px}
 .site-theme .outcome h1{font-size:21px!important;margin:8px 0!important}
 .site-theme .outcome-copy p{font-size:12px;line-height:1.4}
 .site-theme .outcome-stat{padding:10px 9px;min-height:72px}
 .site-theme .outcome-stat>span{font-size:8px;letter-spacing:.5px}
 .site-theme .outcome-stat>strong{font-size:18px}
 .site-theme .outcome-result>strong{font-size:12px}
 .site-theme .outcome-stat>small{font-size:9px}
 .site-theme .outcome-next{flex-direction:column;align-items:stretch;gap:12px;padding:14px 12px}
 .site-theme .outcome-next .btn{width:100%;min-height:40px}
 .site-theme.menu-page:not(:has(.starter-grid)):not(:has(.outcome)){padding:7px 0;gap:6px}
 .site-theme.menu-page:not(:has(.starter-grid)):not(:has(.outcome)) .main{width:calc(100% - 14px);padding:12px}
 .site-theme.menu-page .sectionheading{align-items:flex-start;flex-direction:column;gap:8px}
 .site-theme.menu-page .sectionheading h2{font-size:20px}
 .site-theme.menu-page .collection{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
 .site-theme.home-screen{padding:7px;gap:6px}
 .site-theme .home-window{padding:18px 14px;max-height:calc(100vh - 32px);max-height:calc(100dvh - 32px)}
 .site-theme .home-wordmark{font-size:38px}
 .site-theme .home-menu-card,.site-theme .home-menu-card.wide{padding:9px 10px;min-height:64px}
 .site-theme .home-actions{gap:6px;margin:14px 0 10px}
 .site-theme .home-menu-copy strong{font-size:12px}
 .site-theme .home-menu-copy small{font-size:10px}
 .site-theme .home-premise p{font-size:11px;line-height:1.4}
 .site-theme .home-tagline{font-size:9px}
 .site-theme .home-credit{font-size:7px}
}
@media(max-height:620px) and (max-width:520px){
 .site-theme.menu-page:has(.starter-grid) .starter-intro h1{font-size:16px}
 .site-theme.menu-page:has(.starter-grid) .starter-intro p{font-size:9px}
 .site-theme .outcome-hero{padding-top:14px;padding-bottom:12px}
 .site-theme .outcome h1{font-size:19px!important}
 .site-theme .outcome-copy p{font-size:11px}
}
@media(prefers-reduced-motion:reduce){.site-theme .meadow-breeze,.site-theme .meadow-stars i{animation:none;will-change:auto}}
/* Encounter journey: a lit route with a clear current stop and recorded results. */
.compact-shell .expedition-progress{height:66px;grid-template-columns:190px minmax(0,1fr);gap:15px;padding:5px 7px}
.journey-route{min-width:0;width:100%}.track-caption{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:9px;color:#adc9e8;margin:0 3px 4px;letter-spacing:.6px}.track-caption strong{color:#ffe28a;font-size:9px}.track-caption span{letter-spacing:0}
.compact-shell .journey-track{height:34px;min-height:0;gap:4px;padding:0 3px;position:relative;background:none;border:0;box-shadow:none}
.compact-shell .journey-track:before,.compact-shell .journey-track:after{top:50%;left:16px;right:16px;height:5px;transform:translateY(-50%);border:0;box-shadow:0 1px #000,inset 0 1px #476789}
.compact-shell .journey-track:before{background:#10283f}.compact-shell .journey-track:after{right:auto;max-width:calc(100% - 32px);width:calc((100% - 32px)*var(--progress));background:linear-gradient(90deg,#26bba8,#82edb0);box-shadow:0 0 8px #53dfac55}
.compact-shell .track-stop{height:30px;width:30px;max-width:30px;flex:0 0 30px;border:1px solid #537192;border-radius:9px;background:linear-gradient(135deg,#1d4265,#0a1c33);box-shadow:inset 0 0 0 2px #071b32,0 2px #020d1c;padding:3px;color:#9ab4d0}
.compact-shell .track-stop-tile{border-radius:5px}.compact-shell .track-stop-mark{font:700 10px var(--font)}
.compact-shell .track-stop.current{color:#fff1b0;border:2px solid #ffe494;background:linear-gradient(#b48625,#5e461e);box-shadow:0 0 0 2px #091a31,0 0 12px #f6cd6366;animation:route-beacon 2.4s ease-in-out infinite;transform:translateY(-1px)}
.compact-shell .track-stop.current:before{content:'';position:absolute;top:-6px;left:calc(50% - 3px);width:6px;height:6px;background:#ffe494;transform:rotate(45deg)}
.compact-shell .track-stop.caught,.compact-shell .track-stop.event,.compact-shell .track-stop.completed{border-color:#6edcb7;background:#123b42;box-shadow:inset 0 0 0 1px #216053,0 2px #020d1c}
.compact-shell .track-stop.missed{border-color:#738399;background:#1c2b40}.compact-shell .track-stop-tile img{width:28px;height:28px;max-width:none}.compact-shell .track-stop.current .item-sprite{width:21px;height:21px}
@keyframes route-beacon{50%{box-shadow:0 0 0 2px #091a31,0 0 18px #f6cd6399}}
/* Animation speed lives beside the tips, leaving navigation uncluttered. */
.dock-footer{display:flex;align-items:center;gap:10px;flex:none;height:25px;border-top:1px solid #355373}
.compact-shell .dock-footer .dock-tips{flex:1;min-width:0;width:auto;border:0;padding:2px 8px 2px 2px;text-align:left;justify-content:flex-start;overflow:hidden}
.compact-shell .dock-footer .dock-tips strong{display:none}.compact-shell .dock-footer .dock-tips small{font-size:9px}
.compact-shell .dock-footer .speed-control{flex:none;display:flex;align-items:center;gap:2px;padding:0;border:0;box-shadow:none;background:none;height:23px;margin:0}
.compact-shell .dock-footer .speed-control>span{font-size:8px;margin-right:5px;color:#a9c8e5}.compact-shell .dock-footer .speed-chip{height:22px;min-width:25px;padding:2px 4px;border:1px solid #426488;box-shadow:none;background:#0c2744;color:#abc5df;font-size:10px}.compact-shell .dock-footer .speed-chip.active{background:#f0cd72;color:#09213c;border-color:#ffe6a1}
/* Mew floats beside a lever whose stem and grip share one pivot. */
.compact-shell .machine-controls{grid-template-columns:48px minmax(0,1fr) 42px;gap:9px;padding:2px 4px;height:62px}
.compact-shell .spin-emblem.mew-companion{position:relative;display:grid;place-items:center;overflow:visible;height:56px;width:48px;background:none;border:0;box-shadow:none;filter:none}
.mew-companion>.pixel{position:relative;z-index:1;width:62px;height:62px;max-width:none;object-fit:contain;filter:drop-shadow(0 0 6px #edb6f64d);animation:mew-hover 3.8s ease-in-out infinite}
.mew-companion>i{position:absolute;bottom:0;width:24px;height:5px;background:#020d2480;border-radius:50%;animation:mew-shadow 3.8s ease-in-out infinite}
.compact-shell button.machine-lever{position:relative;display:block;width:42px;height:56px;padding:0;margin:0;border:0;background:none;box-shadow:none;transform:none;cursor:pointer;overflow:visible}
.compact-shell .machine-lever:before{display:none}.compact-shell .machine-lever .lever-base{position:absolute;left:5px;bottom:0;width:32px;height:15px;border:2px solid #668aa9;background:linear-gradient(#244b70,#0c2542);box-shadow:inset 0 2px #9cbad0,0 3px #020d1c;z-index:3}
.compact-shell .machine-lever .lever-base:after{content:'';position:absolute;left:8px;top:3px;width:12px;height:5px;background:#06182c;border:1px solid #456883}
.compact-shell .machine-lever .lever-arm{position:absolute;inset:0;display:block;transform-origin:21px 45px;transition:transform .2s;z-index:2}
.compact-shell .machine-lever .lever-arm i{position:absolute;left:17px;bottom:9px;top:auto;width:8px;height:33px;transform:none;border:1px solid #07182d;background:linear-gradient(90deg,#5c7894 15%,#e3f4ff 38%,#a3c4dc 68%,#4d7394 70%)}
.compact-shell .machine-lever .lever-arm b{position:absolute;left:8px;top:0;width:26px;height:26px;border:2px solid #591630;border-radius:8px;background:linear-gradient(135deg,#ffb0b9 0 8%,#f85a79 10% 48%,#bd244b 50% 78%,#861a40 80%);box-shadow:inset -2px -3px #8c1c40,1px 2px #04132a}
.compact-shell .machine-lever .lever-arm b:after{content:'';position:absolute;top:4px;left:4px;width:6px;height:4px;background:#ffc5ca}
.compact-shell .machine-lever:hover:not(:disabled) .lever-arm{transform:rotate(8deg)}.compact-shell .machine-lever:disabled{cursor:default;opacity:.55}.compact-shell .rolling .machine-lever .lever-arm{animation:slot-lever-pull .6s ease-in-out}
@keyframes slot-lever-pull{0%,100%{transform:rotate(0)}45%{transform:rotate(28deg)}}@keyframes mew-hover{0%,100%{transform:translateY(1px) rotate(-4deg)}50%{transform:translateY(-6px) rotate(4deg)}}@keyframes mew-shadow{50%{transform:scaleX(.7);opacity:.55}}
.compact-shell .center-reel .reel-window{background:radial-gradient(ellipse,#f4fff4 25%,#d2ecd8 70%,#7ba39a);border-color:#76c7a1}.compact-shell .reel-pokemon>.ui-sprite{height:100%;width:100%;max-width:170px;object-fit:contain;image-rendering:pixelated}.compact-shell .center-reel .reel-name{font-size:15px}.service-badge{display:inline-block;background:#225746;color:#f0fff6;border:1px solid #6fba90;padding:3px 7px;font-size:10px;font-weight:800}.compact-shell .center-reel .reel-battle{border-color:#72cfab;color:#baf1cb;background:linear-gradient(#184d49,#0a2d37)}
/* Capture workbench: offer / wheel and investment / target, within the viewport. */
.site-theme .modal.capture-modal{width:min(1120px,calc(100vw - 32px));max-width:none;height:min(680px,calc(100dvh - 32px));max-height:calc(100vh - 32px);max-height:calc(100dvh - 32px);display:flex;flex-direction:column;overflow:hidden}
.site-theme .capture-modal .modal-head{flex:none;padding:10px 16px;min-height:58px}.site-theme .capture-modal .modal-head h2{font-size:20px;margin-top:3px!important}.site-theme .capture-modal .modal-head .eyebrow{font-size:8px}.site-theme .capture-modal .modal-head .btn{padding:6px 11px;min-height:30px}
.site-theme .capture-modal .modal-body{flex:1;min-height:0;padding:10px;overflow:hidden;background:#05172c}
.capture-modal .upgrader-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,1.12fr) minmax(0,1fr);grid-template-rows:minmax(0,1fr);height:100%;min-height:0;gap:10px}
.capture-modal .upgrade-side,.capture-modal .upgrade-center{grid-row:auto;grid-column:auto;order:0;min-width:0;min-height:0;margin:0;padding:12px;display:flex;flex-direction:column;gap:10px;border:1px solid #42698d;box-shadow:inset 0 1px #214a6b;background:linear-gradient(145deg,#102e4c,#081c34);overflow:hidden}
.capture-modal .upgrade-center{border-color:#bc994d;background:radial-gradient(ellipse at 50% 30%,#183c55,#081c34 70%);gap:7px;text-align:center;align-items:stretch;justify-content:center}
.capture-modal .upgrader-step-head{flex:none;margin:0;padding:0 0 10px;gap:8px;border-bottom:1px solid #375a79}.capture-modal .upgrader-step-head .step-number{font-size:12px;width:27px;height:27px;min-width:27px;line-height:25px}.capture-modal .upgrader-step-head h3{font-size:13px;line-height:1.3;color:#ffe28a}.capture-modal .upgrader-step-head p{font-size:11px;line-height:1.4;margin-top:5px}.capture-modal .eyebrow{font-size:9px;letter-spacing:1px}.capture-modal .upgrade-center-title{margin:0;font-size:12px}
.capture-modal .upgrade-center .wheel-wrap{flex:none;width:clamp(150px,26vh,222px);height:clamp(150px,26vh,222px);margin:8px auto 16px}.capture-modal .wheel-center strong{font-size:38px}.capture-modal .wheel-center span,.capture-modal .wheel-center small{font-size:8px;letter-spacing:.4px}
.capture-modal #chance-detail{flex:none;margin:0;min-height:24px;line-height:1.35;font-size:10px;color:#c7daee;display:flex;align-items:center;justify-content:center}
.capture-modal .resource-block{padding:0;margin:0;border:0;min-height:0}.capture-modal .resource-title h3{font-size:11px;color:#ffe28a;line-height:1.3}.capture-modal .optional-tag{font-size:8px}.capture-modal .small{font-size:10px;line-height:1.4}.capture-modal .resource-title{gap:5px}.capture-modal .stat-help{width:14px;height:14px;line-height:12px;font-size:9px}
.capture-modal .gold-block{flex:none;width:100%;padding:9px 10px;background:#06162c;border:1px solid #385b7b;text-align:left}.capture-modal .gold-block>p.muted{display:none}.capture-modal .gold-block .resource-gold{font-size:11px}.capture-modal .gold-slider-row{gap:7px;margin:7px 0}.capture-modal .gold-slider-row input{min-width:0;width:100%;height:14px;margin:0}.capture-modal .gold-slider-value{min-width:49px;padding:3px 5px;border-width:1px;font-size:11px}.capture-modal .capture-cost-line{font-size:9px;padding:5px 0 0;margin:0;border:0;border-top:1px solid #25415e;background:none}
.capture-modal .master-choice{display:flex;align-items:center;justify-content:center;gap:6px;flex:none;padding:7px;background:#271f43;border:1px solid #8c71b4;text-align:left;cursor:pointer}.capture-modal .master-choice.selected,.capture-modal .master-choice:has(input:checked){border-color:#e0bdff;background:#3c2958}.capture-modal .master-choice:has(input:disabled){opacity:.55}.capture-modal .master-choice input{accent-color:#d5a5f4;margin:0}.capture-modal .master-choice .item-sprite{width:27px;height:27px}.capture-modal .master-choice span{display:flex;flex-direction:column;gap:3px}.capture-modal .master-choice strong{font-size:10px;color:#e6c6ff}.capture-modal .master-choice small{font-size:9px;color:#c9b7df}
.capture-modal .roulette-skip-toggle{flex:none;width:100%;padding:4px 2px;min-height:24px;margin:0;background:none;border:0;box-shadow:none;gap:5px;font-size:9px}.capture-modal .upgrade-center>.btn{flex:none;margin:0;padding:10px 5px;min-height:37px;width:100%;font-size:13px;box-shadow:0 2px #71551f}.capture-modal .upgrade-center>.btn+.skip-link{flex:none;margin:3px 0 0;padding:8px 6px;min-height:36px;font-size:9px;line-height:1.35;border-width:1px;gap:5px;box-shadow:none}.capture-modal .skip-money-icon{width:14px;height:17px}
.capture-modal .sacrifice-block{flex:1;display:flex;flex-direction:column;gap:8px;min-height:0}.capture-modal .sacrifice-block>.resource-title{display:none}.capture-modal .sacrifice-block>p{margin:0;font-size:10px}.capture-modal .sacrifice-tabs{flex:none;margin:0;gap:5px}.capture-modal .sacrifice-tabs button{padding:6px;font-size:10px;min-height:30px}.capture-modal .sacrifice-block .sacrifices{flex:1;min-height:0;max-height:none;margin:0;overflow:auto;display:flex;flex-direction:column;gap:6px;}
.capture-modal .sacrifice{position:relative;flex:none;display:grid;grid-template-columns:16px 46px minmax(0,1fr);grid-template-rows:auto auto;align-items:center;gap:3px 5px;padding:8px 6px;min-height:72px;margin:0;border:1px solid #496b8c}.capture-modal .sacrifice input{grid-row:1/3;grid-column:1;width:14px;height:14px;margin:0;opacity:1;position:static;accent-color:#f5d575}.capture-modal .sacrifice-check{display:none}.capture-modal .sacrifice>.pixel{grid-column:2;grid-row:1/3;width:46px;height:46px}.capture-modal .sacrifice-copy{grid-column:3;grid-row:1;min-width:0}.capture-modal .sacrifice-copy strong{font-size:12px;line-height:1.2}.capture-modal .sacrifice-copy small{font-size:9px}.capture-modal .sacrifice-copy em{display:none}.capture-modal .sacrifice>b{grid-column:3;grid-row:2;font-size:11px;justify-self:start}.capture-modal .sacrifice-summary{flex:none;margin:0;font-size:9px;padding:7px 5px;border-width:1px}.capture-modal .empty-sacrifices{font-size:11px;padding:18px 8px}
.capture-modal .capture-items{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px}.capture-modal .capture-item{flex:1;min-width:50px;padding:5px 3px;display:flex;flex-direction:column;gap:4px;border-width:1px}.capture-modal .capture-item .item-sprite{width:24px;height:24px}.capture-modal .capture-item strong{font-size:9px}.capture-modal .capture-item small{font-size:8px}
.capture-modal .target-side .capture-targets{flex:1;min-height:0;max-height:none;overflow:auto;gap:8px;}.capture-modal .capture-pokemon{position:relative;display:flex;align-items:center;flex-wrap:wrap;justify-content:center;gap:5px;min-height:112px;padding:10px 7px;margin:0;border:1px solid #496b8c}.capture-modal .capture-pokemon input{position:absolute;left:7px;top:8px;opacity:1;accent-color:#f5d575;width:15px;height:15px;margin:0}.capture-modal .target-check{display:none}.capture-modal .capture-pokemon>.pixel{width:75px;height:75px;object-fit:contain}.capture-modal .capture-pokemon>div{flex:1;min-width:95px;text-align:left}.capture-modal .capture-pokemon strong{font-size:14px;line-height:1.25}.capture-modal .capture-pokemon small{font-size:9px;line-height:1.7}.capture-modal .capture-pokemon b{font-size:11px;margin-top:5px}.capture-modal .capture-pokemon .type{font-size:8px!important;padding:2px 3px}.capture-modal .target-values{gap:4px;margin-top:7px}.capture-modal .target-values em{font-size:9px;padding:4px}.capture-modal .capture-pokemon.single{flex-direction:column;min-height:230px;justify-content:center}.capture-modal .capture-pokemon.single>.pixel{width:112px;height:112px}.capture-modal .capture-pokemon.single>div{flex:0;width:100%;text-align:center}.capture-modal .capture-pokemon.single .target-values{justify-content:center}.capture-modal .selected-summary{flex:none;margin:0;font-size:10px;padding:6px;border-width:1px}.capture-modal .capture-help{flex:none;max-height:150px;overflow:auto;margin:0;padding:7px;border-width:1px}.capture-modal .capture-help summary{font-size:9px}.capture-modal .capture-formula{font-size:10px}.capture-modal .capture-formula dt,.capture-modal .capture-formula dd{font-size:9px;line-height:1.5}
@media(max-width:760px){
 .site-theme .modal.capture-modal{width:calc(100vw - 16px);height:calc(100vh - 16px);height:calc(100dvh - 16px);max-height:none}.site-theme .capture-modal .modal-body{padding:6px}.site-theme .capture-modal .modal-head{min-height:45px;padding:6px 10px}.site-theme .capture-modal .modal-head h2{font-size:17px}.site-theme .capture-modal .modal-head .eyebrow{display:none}
 .capture-modal .upgrader-layout{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:auto minmax(0,1fr);gap:6px}.capture-modal .upgrade-center{grid-column:1/-1;grid-row:1;padding:8px 12px;gap:5px}.capture-modal .bag-side{grid-column:1;grid-row:2}.capture-modal .target-side{grid-column:2;grid-row:2}.capture-modal .upgrade-side{padding:7px;gap:7px}.capture-modal .upgrade-center>.eyebrow,.capture-modal .upgrade-center-title{display:none}.capture-modal .upgrade-center .wheel-wrap{width:148px;height:148px;margin:3px auto 12px}.capture-modal .wheel-center strong{font-size:29px}.capture-modal .wheel-center span,.capture-modal .wheel-center small{font-size:6px}.capture-modal #chance-detail{min-height:15px;font-size:9px}.capture-modal .gold-block{padding:6px 8px}.capture-modal .gold-block .row{min-height:16px}.capture-modal .gold-slider-row{margin:5px 0}.capture-modal .capture-cost-line{padding-top:3px;font-size:8px}.capture-modal .master-choice{padding:4px}.capture-modal .master-choice .item-sprite{width:21px;height:21px}.capture-modal .roulette-skip-toggle{min-height:20px;padding:0}.capture-modal .upgrade-center>.btn{min-height:31px;padding:7px;font-size:11px}.capture-modal .upgrade-center>.btn+.skip-link{min-height:29px;padding:5px;font-size:8px;margin:0}
 .capture-modal .upgrader-step-head{padding-bottom:6px;gap:4px;align-items:center}.capture-modal .upgrader-step-head .step-number{display:none}.capture-modal .upgrader-step-head .eyebrow{font-size:8px}.capture-modal .upgrader-step-head h3{font-size:10px}.capture-modal .upgrader-step-head p,.capture-modal .sacrifice-block>p{display:none}.capture-modal .sacrifice-tabs button{padding:4px 2px;font-size:8px;min-height:25px}.capture-modal .sacrifice-tabs strong{font-size:9px}.capture-modal .sacrifice{grid-template-columns:13px 30px minmax(0,1fr);gap:3px;padding:5px 3px;min-height:62px}.capture-modal .sacrifice>.pixel{width:30px;height:38px}.capture-modal .sacrifice input{width:12px;height:12px}.capture-modal .sacrifice-copy strong{font-size:10px}.capture-modal .sacrifice-copy small{font-size:7px}.capture-modal .sacrifice>b{font-size:9px}.capture-modal .sacrifice-summary{font-size:7px;padding:4px}.capture-modal .capture-pokemon,.capture-modal .capture-pokemon.single{min-height:125px;gap:3px;padding:5px;flex-direction:column}.capture-modal .capture-pokemon>.pixel,.capture-modal .capture-pokemon.single>.pixel{width:52px;height:52px}.capture-modal .capture-pokemon>div,.capture-modal .capture-pokemon.single>div{min-width:0;width:100%;text-align:center;flex:none}.capture-modal .capture-pokemon strong{font-size:11px}.capture-modal .capture-pokemon small{font-size:8px}.capture-modal .capture-pokemon b{font-size:9px;margin-top:3px}.capture-modal .target-values{margin-top:3px;justify-content:center}.capture-modal .target-values em{font-size:7px;padding:2px}.capture-modal .capture-help{padding:4px;max-height:90px}.capture-modal .capture-help summary{font-size:7px}.capture-modal .selected-summary{font-size:8px;padding:4px}.capture-modal .capture-items{gap:3px;margin-top:4px}.capture-modal .capture-item{min-width:30px;padding:3px 1px}.capture-modal .capture-item strong{display:none}.capture-modal .capture-item small{font-size:6px}.capture-modal .capture-item .item-sprite{width:20px;height:20px}.capture-modal .resource-title h3{font-size:9px}
}
@media(max-width:520px){
 .compact-shell .expedition-progress{height:78px;gap:4px;padding:2px 4px}.compact-shell .journey-route{width:100%}.compact-shell .journey-track{height:30px}.track-caption,.track-caption strong{font-size:8px}.compact-shell .track-stop{height:25px;width:25px;max-width:25px;flex-basis:25px;padding:1px;border-radius:7px}.compact-shell .track-stop-tile img{width:23px;height:23px}.compact-shell .track-stop.current .item-sprite{width:18px;height:18px}
 .compact-shell .machine-controls{grid-template-columns:36px minmax(0,1fr) 32px;gap:5px;height:49px;padding:0}.compact-shell .spin-emblem.mew-companion{width:36px;height:42px}.mew-companion>.pixel{width:46px;height:46px}.compact-shell button.machine-lever{transform:scale(.78);transform-origin:center center;width:32px;height:49px}.compact-shell .dock-footer{gap:5px}.compact-shell .dock-footer .speed-control>span{display:none}.compact-shell .dock-footer .speed-chip{min-width:23px;font-size:9px}.compact-shell .dock-footer .dock-tips small{font-size:8px}
}
@media(max-height:730px) and (min-width:761px){.capture-modal .upgrade-center .wheel-wrap{width:170px;height:170px;margin:4px auto 12px}.capture-modal .upgrade-side,.capture-modal .upgrade-center{padding:9px;gap:6px}.capture-modal .upgrader-step-head p{display:none}.capture-modal .upgrade-center>.eyebrow{display:none}.capture-modal .gold-block{padding:6px 8px}.capture-modal .master-choice{padding:4px}.capture-modal .upgrade-center>.btn{min-height:32px;padding:7px}}
@media(max-height:650px) and (max-width:760px){.capture-modal .upgrade-center .wheel-wrap{width:104px;height:104px;margin:0 auto 10px}.capture-modal .wheel-center strong{font-size:23px}.capture-modal .wheel-center span{display:none}.capture-modal .wheel-center small{font-size:5px;letter-spacing:0}.capture-modal .upgrade-center{gap:3px;padding:5px 9px}.capture-modal .gold-block{padding:4px 6px}.capture-modal .master-choice small{font-size:8px}.capture-modal .master-choice strong{font-size:9px}.capture-modal .capture-pokemon,.capture-modal .capture-pokemon.single{min-height:112px}.capture-modal .capture-pokemon>.pixel,.capture-modal .capture-pokemon.single>.pixel{width:40px;height:40px}.capture-modal .upgrade-side{gap:4px;padding:5px}.capture-modal .upgrader-step-head .eyebrow{display:none}.capture-modal .sacrifice-block{gap:5px}}
@media(max-height:560px) and (min-width:761px){.site-theme .modal.capture-modal{height:calc(100vh - 12px);height:calc(100dvh - 12px);max-height:none}.site-theme .capture-modal .modal-head{min-height:38px;padding:4px 10px}.site-theme .capture-modal .modal-head .eyebrow{display:none}.capture-modal .upgrade-center .wheel-wrap{width:112px;height:112px;margin:0 auto 9px}.capture-modal .wheel-center strong{font-size:24px}.capture-modal .wheel-center small,.capture-modal .wheel-center span{font-size:5px}.capture-modal .upgrade-center-title{display:none}.capture-modal .upgrade-center{gap:3px}.capture-modal .gold-block{padding:4px 6px}.capture-modal .master-choice{padding:2px}.capture-modal .master-choice small{display:none}.capture-modal .upgrade-center>.btn{min-height:28px;padding:5px;font-size:11px}.capture-modal .upgrade-center>.btn+.skip-link{min-height:27px;padding:4px;font-size:8px}.capture-modal .roulette-skip-toggle{min-height:20px;padding:0}}
@media(prefers-reduced-motion:reduce){.compact-shell .track-stop.current,.mew-companion>.pixel,.mew-companion>i,.compact-shell .rolling .machine-lever .lever-arm{animation:none}.compact-shell .machine-lever .lever-arm{transition:none}}
.capture-modal .upgrader-step-head{grid-template-columns:27px minmax(0,1fr);margin:0!important;padding-bottom:10px!important}
.capture-modal .capture-pokemon{flex:none;flex-wrap:nowrap}
@media(max-width:760px){
 .capture-modal .upgrader-step-head{grid-template-columns:minmax(0,1fr);padding-bottom:6px!important}.capture-modal .upgrader-step-head h3{font-size:10px!important;margin:2px 0!important}
 .capture-modal .bag-side>.resource-block:last-child:not(.sacrifice-block) .resource-title{display:none}.capture-modal .capture-items{margin:0}.capture-modal .capture-item{flex-direction:row;justify-content:center;align-items:center;gap:2px}.capture-modal .capture-item small{font-size:6px;max-width:31px}.capture-modal .capture-pokemon small .type{font-size:7px!important}
 .capture-modal .capture-item{min-height:28px;height:28px}.capture-modal .capture-item small{font-size:8px;white-space:nowrap}.capture-modal .capture-item small span{display:none}.capture-modal .sacrifice-tabs button{line-height:14px}.capture-modal .sacrifice-summary{min-height:0;height:23px}.capture-modal .sacrifice-summary b{padding:2px 4px}
}
@media(max-width:760px) and (max-height:600px){.capture-modal .upgrade-center .wheel-wrap{width:86px;height:86px}.capture-modal .bag-side>.resource-block:last-child:not(.sacrifice-block){display:none}.capture-modal .gold-block .resource-title h3{font-size:8px}.capture-modal .gold-slider-row{margin:3px 0}.capture-modal .roulette-skip-toggle{font-size:8px}.capture-modal .capture-pokemon small .type-sprite{display:none}}
@media(max-width:760px){.capture-modal .capture-help summary{display:flex;align-items:center;gap:5px;min-height:14px;padding:0;line-height:14px}.capture-modal .capture-help summary>span{width:13px;height:13px;min-width:13px;padding:0;font-size:8px;line-height:13px}.capture-modal .capture-help{padding:4px;max-height:100px}}
.compact-shell .reel-pokemon>.ui-sprite{position:absolute;inset:0;width:100%;height:100%;max-width:none;min-height:0;object-fit:contain}
@media(max-width:520px){.compact-shell .expedition-progress{display:flex;flex-direction:column;align-items:stretch;justify-content:center;gap:3px;height:78px}.compact-shell .expedition-progress .biome-identity{flex:none;height:24px;min-height:0;width:100%}.compact-shell .expedition-progress .biome-identity>img{height:23px;width:27px}.compact-shell .expedition-progress .journey-route{flex:none;min-width:0;width:100%}.compact-shell .journey-track{width:100%;min-width:0;justify-content:space-between}.compact-shell .track-caption{margin-bottom:2px}}
/* Pixel frames and centered artwork keep every sprite inside its own slot. */
@media(min-height:561px){.slots-shell.compact-shell{--dock-height:188px}}
.compact-shell .track-stop,.compact-shell .track-stop-tile{border-radius:0}
.compact-shell .track-stop-tile{position:absolute;inset:1px;width:auto;height:auto;min-width:0;min-height:0}
.compact-shell .track-stop-tile img{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:100%;height:100%;max-width:100%;object-fit:contain;filter:none}
.compact-shell .expedition-dock .member{padding:4px 7px;gap:6px}
.compact-shell .expedition-dock .member .team-portrait{position:relative;inset:auto;flex:0 0 44px;width:44px;min-width:44px;height:100%;max-height:none;min-height:0;overflow:visible}
.compact-shell .expedition-dock .member .team-portrait .pixel{position:absolute;left:50%;top:50%;width:52px;height:52px;max-width:none;transform:translate(-50%,-50%);object-fit:contain}
.compact-shell .machine-controls{grid-template-columns:64px minmax(0,1fr) 42px}
.compact-shell .spin-emblem.mew-companion{width:64px;height:56px}
.mew-companion>.pixel{position:absolute;left:50%;top:50%;width:96px;height:96px;margin:-48px 0 0 -48px}
.mew-companion>i{width:34px;bottom:0}
/* Capture targets use a compact six-place roster, with the same card anatomy. */
.capture-modal .target-side .target-roster{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:max-content;align-content:start;gap:7px;padding:1px;overflow:auto}
.capture-modal .target-roster .target-card{position:relative;display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:42px 16px 14px 15px 20px;align-items:center;justify-items:center;gap:2px;min-height:0;width:100%;height:auto;margin:0;padding:6px;background:linear-gradient(150deg,#10334c,#06182e);border:1px solid #486c8c;box-shadow:inset 0 1px #ffffff0a;overflow:hidden;color:#e5f0ff;text-align:center}
.capture-modal .target-roster .target-card.selected{border-color:#eac867;background:linear-gradient(150deg,#193f4b,#0a2236);box-shadow:inset 0 0 0 1px #c8a45022}
.capture-modal .target-roster .target-card:has(input:focus-visible){outline:2px solid #ffdc70;outline-offset:-3px}
.capture-modal .target-roster .target-card:hover{border-color:#ffe28a}
.capture-modal .target-roster .target-card input{z-index:2;left:7px;top:7px;width:14px;height:14px;cursor:pointer}
.capture-modal .target-roster .target-number{position:absolute;top:8px;right:7px;color:#8ca8c4;font:700 8px var(--font);letter-spacing:1px}
.capture-modal .target-roster .target-card>div{flex:none;min-width:0;width:100%;margin:0;text-align:center}
.capture-modal .target-roster .target-portrait{position:relative;height:42px;grid-row:1;overflow:visible;background:radial-gradient(ellipse at center,#7ebadc20,transparent 68%)}
.capture-modal .target-roster .target-portrait .pixel{position:absolute;left:50%;top:50%;width:56px;height:56px;max-width:none;transform:translate(-50%,-50%);object-fit:contain}
.capture-modal .target-roster .target-identity{grid-row:2;display:flex;align-items:center;justify-content:center;gap:5px}
.capture-modal .target-roster .target-identity strong{font-size:12px;line-height:16px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#eef6ff}
.capture-modal .target-roster .target-identity small{font-size:8px;line-height:12px;white-space:nowrap;color:#9dbad7}
.capture-modal .target-roster .target-types{grid-row:3;display:flex;align-items:center;justify-content:center;gap:3px}
.capture-modal .target-roster .target-types .type{font-size:7px!important;line-height:11px;padding:1px 3px;gap:2px;white-space:nowrap}.capture-modal .target-roster .target-types .type-sprite{width:9px;height:9px}
.capture-modal .target-roster .target-chance{grid-row:4;margin:0;padding:1px 0;width:100%;font-size:9px;line-height:12px;letter-spacing:0;color:#a9bbc9;border-top:1px solid #385770}
.capture-modal .target-roster .selected .target-chance{color:#a9ee9f}
.capture-modal .target-roster .target-values{grid-row:5;display:flex;align-items:center;justify-content:space-between;gap:3px;margin:0!important;min-width:0}
.capture-modal .target-roster .target-values em{font-size:8px;line-height:10px;padding:3px;border:0;background:#04152988;white-space:normal}
.capture-modal .target-roster .target-values em:first-child{flex:1}.capture-modal .target-roster .target-values .money-icon{width:10px;height:11px}.capture-modal .target-roster .target-values .money{gap:2px}
.capture-modal .target-roster .target-card.single{grid-column:1/-1;grid-template-columns:78px minmax(0,1fr);grid-template-rows:22px 20px 20px 23px;gap:3px 8px;min-height:0;padding:12px 9px}
.capture-modal .target-roster .single .target-portrait{grid-column:1;grid-row:1/-1;height:100%;min-height:78px}.capture-modal .target-roster .single .target-portrait .pixel{width:100px;height:100px}
.capture-modal .target-roster .single .target-identity{grid-column:2;grid-row:1;justify-content:flex-start}.capture-modal .target-roster .single .target-identity strong{font-size:15px}.capture-modal .target-roster .single .target-types{grid-column:2;grid-row:2;justify-content:flex-start}
.capture-modal .target-roster .single .target-chance{grid-column:2;grid-row:3;text-align:left;font-size:10px}.capture-modal .target-roster .single .target-values{grid-column:2;grid-row:4;justify-content:flex-start}.capture-modal .target-roster .single .target-values em:first-child{flex:none}.capture-modal .target-roster .single .target-number{display:none}
.capture-modal .target-side .capture-help{padding:7px;max-height:145px}.capture-modal .target-side .capture-help summary{display:flex;align-items:center;min-height:16px;line-height:16px;gap:6px;padding:0}.capture-modal .target-side .capture-help summary>span{width:16px;height:16px;min-width:16px;line-height:16px;font-size:9px;padding:0}
@media(max-width:520px){
 .compact-shell .expedition-dock .member{padding:4px;gap:3px}.compact-shell .expedition-dock .member .team-portrait{flex-basis:34px;width:34px;min-width:34px}.compact-shell .expedition-dock .member .team-portrait .pixel{width:40px;height:40px}
 .compact-shell .machine-controls{grid-template-columns:46px minmax(0,1fr) 32px}.compact-shell .spin-emblem.mew-companion{width:46px;height:44px}.mew-companion>.pixel{width:80px;height:80px;margin:-40px 0 0 -40px}.mew-companion>i{width:28px}
}
@media(max-width:760px){
 .capture-modal .target-side .target-roster{grid-template-columns:minmax(0,1fr);gap:5px}.capture-modal .target-roster .target-card,.capture-modal .target-roster .target-card.single{grid-column:auto;grid-template-columns:32px minmax(0,1fr);grid-template-rows:17px 15px 16px 22px;padding:6px 4px;gap:2px 3px}
 .capture-modal .target-roster .target-card .target-portrait{grid-row:1/4;grid-column:1;min-height:0;height:100%}.capture-modal .target-roster .target-card .target-portrait .pixel{width:52px;height:52px}.capture-modal .target-roster .target-card .target-identity{grid-column:2;grid-row:1;justify-content:flex-start;gap:3px}.capture-modal .target-roster .target-card .target-identity strong{font-size:10px}.capture-modal .target-roster .target-identity small{font-size:7px}
 .capture-modal .target-roster .target-card .target-types{grid-column:2;grid-row:2;justify-content:flex-start;gap:2px}.capture-modal .target-roster .target-types .type{font-size:6px!important;padding:1px 2px}.capture-modal .target-roster .target-types .type-sprite{display:none}
 .capture-modal .target-roster .target-card .target-chance{grid-column:2;grid-row:3;text-align:left;font-size:8px;padding:1px 0}.capture-modal .target-roster .target-card .target-values{grid-column:1/-1;grid-row:4;justify-content:space-between}.capture-modal .target-roster .target-values em{font-size:7px;padding:2px}.capture-modal .target-roster .target-card .target-values em:first-child{flex:1}
 .capture-modal .target-roster .target-number{display:none}.capture-modal .target-roster .target-card input{left:4px;top:4px;width:11px;height:11px}.capture-modal .target-side .capture-help{padding:4px;max-height:100px}.capture-modal .target-side .capture-help summary{font-size:7px;min-height:13px;line-height:13px}.capture-modal .target-side .capture-help summary>span{width:13px;height:13px;min-width:13px;line-height:13px;font-size:8px}
}
.compact-shell .encounter-heading{height:68px;position:relative;padding:6px 8px}
.compact-shell .encounter-heading .machine-heading-copy{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:3px;width:100%;height:100%;text-align:center}
.compact-shell .encounter-heading .machine-heading-copy>small{display:block;min-height:0;padding:0;text-align:center;font-size:8px;line-height:11px}
.compact-shell .encounter-heading h1{width:100%;margin:0}
.compact-shell .encounter-heading p{margin:0}
.compact-shell .encounter-heading>.speed-control{position:absolute;right:8px;top:5px}
.compact-shell .encounter-heading .speed-control,.compact-shell .battle-playback .speed-control{display:flex;align-items:center;gap:2px;height:22px;margin:0;padding:0;border:0;box-shadow:none;background:none}
.compact-shell .encounter-heading .speed-control>span,.compact-shell .battle-playback .speed-control>span{font-size:7px;color:#a9c8e5;margin-right:4px}
.compact-shell .encounter-heading .speed-chip,.compact-shell .battle-playback .speed-chip{min-width:24px;height:21px;padding:2px 4px;border:1px solid #426488;box-shadow:none;background:#0c2744;color:#c6ddf3;font-size:9px;line-height:14px}
.compact-shell .encounter-heading .speed-chip.active,.compact-shell .battle-playback .speed-chip.active{background:#f0cd72;color:#09213c;border-color:#ffe6a1}
.compact-shell .card-battle .battle-playback{display:flex;align-items:center;gap:10px}
.compact-shell .card-battle .battle-playback .speed-control{order:0}
.compact-shell .card-battle .battle-field{display:grid;grid-template-columns:minmax(0,1fr) 28px minmax(0,1fr);align-items:stretch;gap:8px;padding:14px;min-height:0;border:1px solid #6989a6}
.compact-shell .card-battle .battle-overlay{background:linear-gradient(180deg,#06142bbd,#06142b66 50%,#06142ba6);box-shadow:inset 0 0 45px #020b20a6}
.battle-column{position:relative;z-index:1;display:flex;flex-direction:column;min-width:0;min-height:0;gap:8px}
.battle-column-title{display:flex;align-items:center;justify-content:space-between;gap:5px;flex:none;font-size:9px;letter-spacing:1px;color:#f7d778;text-shadow:1px 1px #031021}
.battle-column-title>span{color:#c2dcf6;font-size:9px;letter-spacing:0}
.battle-card-list{display:flex;flex-direction:column;justify-content:safe center;flex:1;min-height:0;gap:6px;overflow:auto;padding:2px;}
.battle-card{position:relative;display:flex;align-items:center;gap:8px;flex:0 0 56px;min-width:0;min-height:0;padding:5px 8px 5px 3px;border:1px solid #567894;border-radius:0;background:linear-gradient(110deg,#143657f5,#061b32f5);box-shadow:inset 0 0 0 1px #03172e;color:#e0edff;text-align:left}
.battle-card.in-field{border-color:#94b9d4}
.battle-card.fainted{background:#111f2ee8;border-color:#384d60;color:#8d9bad}
.battle-card.fainted .battle-card-portrait{filter:grayscale(.85);opacity:.55}
.battle-card.fainted .battle-card-types{opacity:.55}
.battle-card-portrait{position:relative;display:block;flex:0 0 46px;width:46px;height:44px;overflow:hidden}
.battle-card-portrait>.pixel{position:absolute;left:50%;top:50%;width:68px;height:68px;max-width:none;object-fit:contain;transform:translate(-50%,-50%);filter:none}
.battle-card-info{display:flex;flex-direction:column;justify-content:center;min-width:0;flex:1;gap:5px}
.battle-card-title{display:flex;align-items:baseline;gap:5px;min-width:0}
.battle-card-title h3{font:700 12px/1.1 'Trebuchet MS','Segoe UI',sans-serif;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;color:inherit}
.battle-card-title>span{flex:none;margin-left:auto;white-space:nowrap;font-size:8px;color:#a7c2db;font-weight:700}
.battle-card-health{display:flex;align-items:center;gap:5px}
.compact-shell .battle-card .hp{position:relative;flex:1;height:5px;min-width:0;margin:0;border:1px solid #91afc3;border-radius:0;background:#061528}
.compact-shell .battle-card .hp>span{background:#12cf8d}
.compact-shell .battle-card .hp.low>span{background:#f16a6e}
.battle-card-health>strong{font-size:8px;line-height:1;color:#c2d9ed;white-space:nowrap;font-variant-numeric:tabular-nums}
.battle-card-meta{display:flex;align-items:center;justify-content:space-between;gap:3px;min-width:0}
.battle-card-meta>small{font-size:6px;letter-spacing:.4px;color:#aac4dc;white-space:nowrap}
.battle-card-types{display:flex;gap:2px;min-width:0}
.compact-shell .battle-card-types .type{font-size:6px!important;line-height:8px;letter-spacing:0;padding:1px 2px;gap:2px;border-radius:0}
.compact-shell .battle-card-types .type-sprite{width:8px!important;height:8px!important;filter:none}
.battle-card.legend-card{border-color:#d5b55b;box-shadow:inset 0 0 0 1px #40371f;background:linear-gradient(110deg,#243c55f5,#0b1e35f5)}
.battle-card.legend-card .hp:after{content:'';position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent 0 calc(25% - 1px),#061528 calc(25% - 1px) 25%);pointer-events:none}
.battle-card.legend-card .battle-card-meta>small{color:#f4d479}
.battle-versus{align-self:center;position:relative;z-index:1;text-align:center;font-size:11px;font-weight:900;color:#f4d479;text-shadow:2px 2px #04132b}
.battle-card.taking-hit{animation:battle-hit-red calc(.55s/var(--spd,1)) ease-out calc(.15s/var(--spd,1)) forwards}
@keyframes battle-hit-red{0%{filter:sepia(1) saturate(9) hue-rotate(-50deg) brightness(1.25);transform:translateX(-4px);box-shadow:inset 0 0 22px #ff2b2bcc}18%{transform:translateX(4px)}36%{transform:translateX(-3px)}54%{transform:translateX(2px);filter:sepia(1) saturate(6) hue-rotate(-50deg)}100%{filter:none;transform:none;box-shadow:inset 0 0 0 1px #03172e}}
@media(max-height:730px){
 .compact-shell .encounter-heading{height:53px;padding:4px 8px}
 .compact-shell[data-phase="battle"]{--dock-height:128px}.compact-shell[data-phase="battle"] .dock-footer{display:none}.compact-shell[data-phase="battle"] .expedition-dock .member{padding:3px;gap:4px}.compact-shell[data-phase="battle"] .expedition-dock .member .team-portrait .pixel{width:43px;height:43px}
 .compact-shell .card-battle .battle-field{padding:8px;gap:6px}.battle-column{gap:5px}.battle-card-list{gap:4px}.battle-card{flex-basis:40px;padding:3px 6px 3px 2px;gap:5px}.battle-card-portrait{height:32px;flex-basis:40px;width:40px}.battle-card-portrait>.pixel{width:55px;height:55px}.battle-card-info{gap:2px}.battle-card-title h3{font-size:11px}.battle-card-meta{height:10px}
}
@media(max-width:520px){
 .compact-shell .encounter-heading{height:76px;padding:25px 5px 5px}.compact-shell .encounter-heading>.speed-control{right:5px;top:4px}.compact-shell .encounter-heading .speed-control>span{display:none}.compact-shell .encounter-heading .machine-heading-copy>small{font-size:7px;letter-spacing:.5px}.compact-shell .encounter-heading h1{font-size:13px}
 .compact-shell .card-battle .battle-commandbar{height:49px;gap:4px}.compact-shell .card-battle .battle-commandbar h2{font-size:10px;max-width:145px;margin-top:3px}.compact-shell .card-battle .battle-commandbar .eyebrow{font-size:7px;letter-spacing:.4px}.compact-shell .card-battle .battle-playback{flex-direction:column;gap:3px;align-items:flex-end}.compact-shell .card-battle .battle-playback .speed-control>span{display:none}.compact-shell .card-battle .battle-playback .speed-chip{height:19px;font-size:8px;min-width:23px;padding:1px 3px}.compact-shell .card-battle .battle-playback>.btn{height:19px;min-height:19px;padding:2px 5px;font-size:7px}
 .compact-shell .card-battle .battle-field{grid-template-columns:minmax(0,1fr) 12px minmax(0,1fr);padding:6px;gap:3px}.battle-column{gap:4px}.battle-column-title{font-size:7px;letter-spacing:.3px}.battle-column-title>span{font-size:7px}.battle-versus{font-size:8px}.battle-card-list{gap:4px;padding:1px}.battle-card{flex-basis:46px;gap:3px;padding:3px}.battle-card-portrait{flex-basis:28px;width:28px;height:34px}.battle-card-portrait>.pixel{width:49px;height:49px}.battle-card-info{gap:4px}.battle-card-title{gap:2px}.battle-card-title h3{font-size:9px}.battle-card-title>span{font-size:6px}.battle-card-health{gap:3px}.battle-card-health>strong{font-size:6px}.battle-card-meta>small{font-size:5px;letter-spacing:0}.compact-shell .battle-card-types .type{font-size:5px!important;padding:1px;gap:1px}.compact-shell .battle-card-types .type-sprite{width:6px!important;height:6px!important}
}
@media(max-width:520px) and (max-height:730px){
 .compact-shell .card-battle .battle-card{flex-basis:30px}.compact-shell .card-battle .battle-card-meta{display:none}.compact-shell .card-battle .battle-card-portrait{height:23px}.compact-shell .card-battle .battle-card-portrait>.pixel{width:42px;height:42px}.compact-shell .card-battle .battle-card-title h3{font-size:8px}.compact-shell .card-battle .battle-card-info{gap:3px}.compact-shell .card-battle .battle-field{padding:4px}.compact-shell .card-battle .battle-card-list{gap:3px}
}
@media(prefers-reduced-motion:reduce){.battle-card.taking-hit{animation:none}.battle-card .hp>span{transition:none!important}}
.battle-card[role=button]{cursor:pointer}.battle-card[role=button]:hover{border-color:#eacb78}.battle-card[role=button]:focus-visible{outline:2px solid #f9d975;outline-offset:-2px}
.compact-shell .encounter-heading h1{position:relative;padding:0 24px}
.encounter-help{position:absolute;left:0;top:50%;transform:translateY(-50%);display:grid;place-items:center;width:19px;height:19px;padding:0;border:1px solid #f0cd72;background:#0b2744;color:#f8db83;font-size:11px;font-weight:900;box-shadow:inset 0 0 0 2px #04162b}
.encounter-help:hover{background:#153d60;border-color:#fff0b2}
.site-theme .encounter-help-modal{width:min(470px,calc(100vw - 24px));max-height:calc(100vh - 24px);max-height:calc(100dvh - 24px)}
.site-theme .encounter-help-modal .modal-head{padding:13px 16px}.site-theme .encounter-help-modal .modal-head h2{font-size:19px;margin-top:5px!important}.site-theme .encounter-help-modal .modal-body{padding:16px}
.encounter-rate-sheet{display:grid;gap:14px;color:#c5dbef;font-size:12px;line-height:1.5}.rate-intro{font-size:16px;font-weight:700;color:#f7d777}.rate-intro small{display:block;font-size:10px;color:#a8c5df;font-weight:400;margin-top:3px}
.encounter-rate-table{width:100%;border-collapse:collapse;background:#061b31;font-size:12px}.encounter-rate-table th,.encounter-rate-table td{padding:9px 10px;border-bottom:1px solid #34516d;text-align:left}.encounter-rate-table thead{background:#15334f;color:#a9c8e5;font-size:8px;letter-spacing:.8px}.encounter-rate-table tbody th{font-weight:600}.encounter-rate-table td:nth-child(2){color:#f6d778;font-weight:800;font-variant-numeric:tabular-nums}.encounter-rate-table td:last-child{font-size:10px;color:#bad0e4}
.rarity-dot{display:inline-block;vertical-align:middle;width:7px;height:7px;margin-right:7px;background:#a2b8ca}.rarity-1{background:#53d9ac}.rarity-2{background:#57b9f0}.rarity-3{background:#c398f8}.rarity-4{background:#ffcf69}
.shiny-rate{display:flex;align-items:center;justify-content:space-between;gap:8px;border:1px solid #a08c4d;background:#3a341b44;padding:10px;color:#ffdf80;font-weight:700}.shiny-rate small{font-size:10px;font-weight:400;color:#c4d9ea}.rate-note{border-top:1px solid #38536d;padding-top:12px;font-size:10px;color:#8faec8}
.site-theme .music-toggle{display:inline-grid;place-items:center;flex:none;width:29px;height:28px;min-height:0;padding:2px;border:1px solid #557793;border-radius:0;background:#102e4b;color:#87a7c5;box-shadow:inset 0 0 0 1px #04162c;font-size:17px;line-height:1}
.site-theme .music-toggle.music-on{color:#f6d778;border-color:#d3b565;background:#21394b}.site-theme .music-toggle:hover{color:#ffdf8c;border-color:#f6d778}
.menu-header-actions{display:flex;align-items:center;gap:8px}.home-window{position:relative}.site-theme .home-music{position:absolute;top:15px;right:15px}
@media(max-width:520px){.compact-shell .run-nav .music-toggle{width:24px;height:24px;padding:2px;font-size:15px}.site-theme .home-music{top:9px;right:9px}}

/* Frame the supplied transparent artwork beside the home title. */
.site-theme .home-masthead{display:grid;grid-template-columns:105px minmax(0,1fr) 105px;align-items:center;gap:8px;width:100%;max-width:520px;min-height:96px;margin:0 auto}
.site-theme .home-masthead-copy{min-width:0;text-align:center}
.site-theme .home-masthead .home-wordmark{margin:0;white-space:nowrap;font-size:39px}
.site-theme .home-mascot{position:relative;display:block;width:105px;height:96px;overflow:hidden;pointer-events:none;user-select:none}
.site-theme .home-mascot img{position:absolute;left:50%;top:50%;width:220px;height:auto;max-width:none;transform:translate(-50%,-50%)}
.site-theme .home-mascot-meow img{width:112px;margin-left:-5px}
@media(max-width:520px){
 .site-theme .home-masthead{grid-template-columns:60px minmax(0,1fr) 60px;gap:4px;min-height:80px;padding-top:8px}
 .site-theme .home-masthead .home-wordmark{font-size:28px;letter-spacing:.5px}
 .site-theme .home-masthead .home-tagline{font-size:8px;letter-spacing:1.5px;margin-top:6px}
 .site-theme .home-masthead .home-version{font-size:8px;margin-top:5px}
 .site-theme .home-mascot{width:60px;height:60px}
 .site-theme .home-mascot img{width:128px}
 .site-theme .home-mascot-meow img{width:66px;margin-left:-3px}
}
@media(max-width:360px){.site-theme .home-masthead{grid-template-columns:52px minmax(0,1fr) 52px}.site-theme .home-mascot{width:52px;height:54px}.site-theme .home-mascot img{width:112px}.site-theme .home-mascot-meow img{width:59px}.site-theme .home-masthead .home-wordmark{font-size:27px}}
@media(max-width:520px) and (max-height:720px){
 .site-theme .home-window .home-actions{margin:10px 0 14px;gap:6px}
 .site-theme .home-window:not(.auth-active) .home-menu-card{min-height:54px;padding-top:7px;padding-bottom:7px}
 .site-theme .home-window .home-premise{padding-top:10px;padding-bottom:10px}
}

/* Scale by the sprite's visible pixel bounds, so large species fit and small ones remain legible. */
.compact-shell .card-battle .battle-card-portrait>.pixel{width:68px;height:68px;max-width:none;max-height:none;object-fit:contain}
.compact-shell .card-battle .battle-card-portrait>.pixel.portrait-medium{width:56px;height:56px}
.compact-shell .card-battle .battle-card-portrait>.pixel.portrait-large{width:44px;height:44px}
.compact-shell .expedition-dock .member .team-portrait{overflow:hidden}
.compact-shell .expedition-dock .member .team-portrait .pixel{width:52px;height:52px;max-width:none;max-height:none;object-fit:contain}
.compact-shell .expedition-dock .member .team-portrait .pixel.portrait-large{width:39px;height:39px}
@media(max-height:730px){
 .compact-shell .card-battle .battle-card-portrait>.pixel{width:44px;height:44px}
 .compact-shell .card-battle .battle-card-portrait>.pixel.portrait-medium{width:40px;height:40px}
 .compact-shell .card-battle .battle-card-portrait>.pixel.portrait-large{width:32px;height:32px}
 .compact-shell[data-phase="battle"] .expedition-dock .member .team-portrait .pixel{width:43px;height:43px}
 .compact-shell[data-phase="battle"] .expedition-dock .member .team-portrait .pixel.portrait-large{width:34px;height:34px}
}
@media(max-width:520px){
 .compact-shell .card-battle .battle-card-portrait>.pixel{width:42px;height:42px}
 .compact-shell .card-battle .battle-card-portrait>.pixel.portrait-medium{width:34px;height:34px}
 .compact-shell .card-battle .battle-card-portrait>.pixel.portrait-large{width:28px;height:28px}
 .compact-shell .expedition-dock .member .team-portrait .pixel{width:40px;height:40px}
 .compact-shell .expedition-dock .member .team-portrait .pixel.portrait-medium{width:36px;height:36px}
 .compact-shell .expedition-dock .member .team-portrait .pixel.portrait-large{width:30px;height:30px}
 .compact-shell[data-phase="battle"] .expedition-dock .member .team-portrait .pixel{width:40px;height:40px}
 .compact-shell[data-phase="battle"] .expedition-dock .member .team-portrait .pixel.portrait-medium{width:36px;height:36px}
 .compact-shell[data-phase="battle"] .expedition-dock .member .team-portrait .pixel.portrait-large{width:30px;height:30px}
}
@media(max-width:520px) and (max-height:730px){
 .compact-shell .card-battle .battle-card-portrait>.pixel{width:32px;height:32px}
 .compact-shell .card-battle .battle-card-portrait>.pixel.portrait-medium{width:26px;height:26px}
 .compact-shell .card-battle .battle-card-portrait>.pixel.portrait-large{width:22px;height:22px}
}
@media(max-width:520px){.site-theme .encounter-help-modal .modal-body{padding:12px}.encounter-rate-sheet{font-size:11px;gap:10px;line-height:1.45}.encounter-rate-table th,.encounter-rate-table td{padding:8px}.site-theme .encounter-help-modal .modal-head{padding:10px 12px}.rate-note{padding-top:8px}}

/* Elite emphasis: roulette badge/aura, battle card marker, drop toast icon */
.reel-elite,.compact-shell .reel-elite{position:absolute;left:50%;top:6px;right:auto;transform:translateX(-50%);z-index:6;font-size:8px;font-weight:900;letter-spacing:.6px;padding:2px 7px;color:#4a2300;background:linear-gradient(#fff3b0,#ffc61a);border:1px solid #fff8d0;box-shadow:0 1px 0 #7a4a00,0 0 8px #ffcf4dcc;white-space:nowrap;animation:elite-badge 1.2s ease-in-out infinite}
.encounter-reel.elite .reel-pokemon:before{content:'';position:absolute;left:50%;top:50%;width:110px;height:110px;margin:-55px 0 0 -55px;background:radial-gradient(circle,#ffd95aee 0,#ffb62b77 38%,transparent 68%);animation:elite-glow 1.7s ease-in-out infinite;z-index:0;pointer-events:none}
.encounter-reel.elite .reel-pokemon .pixel{position:relative;z-index:1;filter:drop-shadow(0 0 6px #ffcf4d) drop-shadow(0 0 12px #ff9d1aa0)}
.encounter-reel.elite .reel-number{color:#b47a00}
.battle-card.elite-card{border-color:#ffcf4d!important;background-image:linear-gradient(90deg,#ffcf4d30,transparent 75%);box-shadow:inset 0 0 0 2px #4a2f04,0 0 0 2px #ffcf4d,0 0 16px 3px #ffcf4d80;animation:elite-aura 1.7s ease-in-out infinite}
.battle-card.elite-card .battle-card-portrait img{filter:drop-shadow(0 0 5px #ffcf4d) drop-shadow(0 0 10px #ff9d1aa0)}
.battle-elite-tag{font-size:8px;font-weight:900;letter-spacing:.6px;padding:2px 6px;color:#4a2300;background:linear-gradient(#fff3b0,#ffc61a);border:1px solid #fff8d0;margin:0 6px;white-space:nowrap}
.toast-icon .item-sprite{width:26px;height:26px}
@keyframes elite-badge{50%{transform:translateX(-50%) scale(1.07);filter:brightness(1.15)}}
@keyframes elite-glow{0%,100%{opacity:.65;transform:scale(.94)}50%{opacity:1;transform:scale(1.06)}}
@media(prefers-reduced-motion:reduce){.reel-elite,.encounter-reel.elite .reel-pokemon:before,.battle-card.elite-card{animation:none}}

.encounter-reel.shiny .reel-window{border-color:#7fe6ff;box-shadow:inset 0 0 0 2px #0a3a4d,0 0 0 2px #7fe6ff,0 0 14px 2px #7fe6ff88}
.encounter-reel.shiny .reel-pokemon .pixel{filter:drop-shadow(0 0 5px #8fefff) drop-shadow(0 0 10px #6fd2ff99)}
.reel-shiny{flex:none;font-size:8px;font-weight:900;letter-spacing:.8px;padding:2px 7px;color:#053447;background:linear-gradient(#e9fdff,#7fe6ff);border:1px solid #d6fbff;box-shadow:0 0 8px #7fe6ffaa;white-space:nowrap;animation:shiny-tag 1.4s ease-in-out infinite}
@keyframes shiny-tag{50%{filter:brightness(1.18);box-shadow:0 0 13px #7fe6ff}}

/* ---- TESTE SUA SORTE (pixel button) ---- */
.lucky-cta{position:relative;display:block;width:100%;max-width:310px;margin:14px auto 6px;padding:0;border:0;background:none;cursor:pointer;color:#ffe100;font:inherit;filter:drop-shadow(3px 0px 0 #7a3f00),drop-shadow(-3px 0px 0 #7a3f00),drop-shadow(0px 3px 0 #7a3f00),drop-shadow(0px -3px 0 #7a3f00),drop-shadow(3px 3px 0 #7a3f00),drop-shadow(-3px 3px 0 #7a3f00),drop-shadow(3px -3px 0 #7a3f00),drop-shadow(-3px -3px 0 #7a3f00) drop-shadow(0 0 10px #ffd23f99);animation:lucky-pulse 1.8s ease-in-out infinite;transition:transform .12s}
.lucky-cta:hover{transform:translateY(-2px)}
.lucky-cta:active{transform:translateY(3px)}
.lucky-body{display:block;padding:3px 3px 9px;background:linear-gradient(#ffe7a0,#b8730a);clip-path:polygon(8px 0,calc(100% - 8px) 0,calc(100% - 8px) 4px,calc(100% - 4px) 4px,calc(100% - 4px) 8px,100% 8px,100% calc(100% - 8px),calc(100% - 4px) calc(100% - 8px),calc(100% - 4px) calc(100% - 4px),calc(100% - 8px) calc(100% - 4px),calc(100% - 8px) 100%,8px 100%,8px calc(100% - 4px),4px calc(100% - 4px),4px calc(100% - 8px),0 calc(100% - 8px),0 8px,4px 8px,4px 4px,8px 4px)}
.lucky-face{position:relative;display:block;padding:9px 16px 11px;border:3px solid #fff;background:linear-gradient(100deg,#ffd23f 0%,#ff8ad8 25%,#7fe6ff 50%,#ff8ad8 75%,#ffd23f 100%);background-size:200% 100%;animation:lucky-flow 6s linear infinite;clip-path:polygon(6px 0,calc(100% - 6px) 0,calc(100% - 6px) 3px,calc(100% - 3px) 3px,calc(100% - 3px) 6px,100% 6px,100% calc(100% - 6px),calc(100% - 3px) calc(100% - 6px),calc(100% - 3px) calc(100% - 3px),calc(100% - 6px) calc(100% - 3px),calc(100% - 6px) 100%,6px 100%,6px calc(100% - 3px),3px calc(100% - 3px),3px calc(100% - 6px),0 calc(100% - 6px),0 6px,3px 6px,3px 3px,6px 3px);overflow:hidden;text-align:center;box-shadow:inset 0 3px 0 #ffffff40,inset 0 -3px 0 #00000040}
.lucky-face:before{content:'';position:absolute;top:0;bottom:0;left:-40%;width:26%;background:linear-gradient(100deg,transparent,#ffffffb0,transparent);transform:skewX(-20deg);animation:lucky-shine 2.8s ease-in-out infinite;pointer-events:none;z-index:3}
.lucky-cta strong{position:relative;z-index:2;display:block;font-size:17px;line-height:1.15;letter-spacing:2px;font-weight:900;color:#3b1d00;text-shadow:0 2px 0 #ffffffa0}
.lucky-cta small,.lucky-cta em{position:relative;z-index:2;display:block;font-style:normal;font-size:6.5px;font-weight:900;letter-spacing:1.2px;color:#5a2d00}
.lucky-cta small{margin-bottom:3px}.lucky-cta em{margin-top:4px}
.lucky-cta .spark{position:absolute;z-index:4;color:#fff6a8;font-style:normal;font-size:10px;text-shadow:0 0 5px #fff,0 0 8px #ffd23f;animation:lucky-twinkle 1.5s ease-in-out infinite;pointer-events:none}
.lucky-cta .s1{left:9px;top:5px}.lucky-cta .s2{left:22%;bottom:3px;animation-delay:.4s}.lucky-cta .s3{left:47%;top:2px;animation-delay:.9s}.lucky-cta .s4{right:24%;bottom:4px;animation-delay:.2s}.lucky-cta .s5{right:10px;top:6px;animation-delay:.7s}.lucky-cta .s6{right:7px;bottom:4px;animation-delay:1.1s}
@keyframes lucky-flow{to{background-position:200% 0}}
@keyframes lucky-pulse{50%{filter:drop-shadow(3px 0px 0 #7a3f00),drop-shadow(-3px 0px 0 #7a3f00),drop-shadow(0px 3px 0 #7a3f00),drop-shadow(0px -3px 0 #7a3f00),drop-shadow(3px 3px 0 #7a3f00),drop-shadow(-3px 3px 0 #7a3f00),drop-shadow(3px -3px 0 #7a3f00),drop-shadow(-3px -3px 0 #7a3f00) drop-shadow(0 0 20px #ffe27add)}}
@keyframes lucky-shine{0%{left:-40%}55%,100%{left:130%}}
@keyframes lucky-twinkle{0%,100%{opacity:.25;transform:scale(.6) rotate(0)}50%{opacity:1;transform:scale(1.3) rotate(25deg)}}
.modal.lucky-modal{width:min(390px,calc(100vw - 20px))}
.lucky-modal .modal-body{padding:0}
.lucky-modal .lucky-center{margin:0;border:0;padding:16px 18px 18px;gap:6px;min-height:0;display:flex;flex-direction:column;align-items:center;text-align:center}
.lucky-prize{position:relative;width:110px;height:110px;display:grid;place-items:center}
.lucky-prize-glow{position:absolute;inset:-14px;background:radial-gradient(circle,#fff6a8dd 0,#ffd23f66 42%,transparent 70%);animation:elite-glow 1.9s ease-in-out infinite}
.lucky-prize .lucky-sprite{position:relative;z-index:1;width:96px;height:96px;filter:drop-shadow(0 0 6px #8fefff) drop-shadow(0 0 12px #ffd23f99);animation:lucky-float 2.4s ease-in-out infinite}
@keyframes lucky-float{50%{transform:translateY(-5px)}}
.lucky-name{font-size:17px;color:#ffe58c;margin:2px 0 0}
.lucky-timer{font-size:9px;letter-spacing:1px;color:#9fb6d4;margin:0 0 4px}.lucky-timer b{color:#fff6c2;font-size:11px;letter-spacing:1.5px}
.lucky-modal .wheel-wrap{width:190px;height:190px;margin:10px auto 14px}
.lucky-modal .wheel-center strong{font-size:26px}
.lucky-modal .wheel-center span,.lucky-modal .wheel-center small{font-size:6px}
.lucky-modal .btn.lucky-go{font-size:12px;padding:12px;margin-top:2px;box-shadow:0 0 16px #ffc51b88,4px 4px 0 #08090e}
.lucky-note{font-size:10px;line-height:1.5;color:#c6d6ec;margin:4px 0 8px}.lucky-note.used{color:#ffe58c}
.lucky-auth{display:flex;gap:8px;width:100%}.lucky-auth .btn{flex:1;font-size:11px;padding:10px}
.toast-icon .pixel{width:32px;height:32px}
@media(prefers-reduced-motion:reduce){.lucky-cta,.lucky-face,.lucky-face:before,.lucky-cta .spark,.lucky-prize-glow,.lucky-prize .lucky-sprite,.wheel-wrap.lucky-win,.wheel-wrap.lucky-win:after,.lucky-reveal *{animation:none!important}.lucky-reveal .lr-flash,.lucky-reveal .lr-rays,.lucky-reveal .lr-ring,.lucky-reveal .lr-star{display:none}}

/* ---- TESTE SUA SORTE: comemoração da vitória ---- */
.wheel-wrap.lucky-win{animation:lucky-shake .8s steps(2) 2}
.wheel-wrap.lucky-win:after{content:'';position:absolute;inset:-14px;border:6px solid #ffd23f;border-radius:50%;box-shadow:0 0 22px #ffe27a,inset 0 0 22px #ffe27a80;pointer-events:none;animation:lucky-win-ring 1.5s ease-out 3 both}
.wheel-wrap.lucky-win .wheel{animation:lucky-wheel-glow .8s ease-in-out 6}
@keyframes lucky-shake{25%{transform:translate(-3px,1px)}75%{transform:translate(3px,-1px)}}
@keyframes lucky-win-ring{0%{transform:scale(.9);opacity:1}100%{transform:scale(1.35);opacity:0}}
@keyframes lucky-wheel-glow{50%{filter:brightness(1.5) saturate(1.3)}}
.lucky-reveal{position:fixed;inset:0;z-index:20;pointer-events:none;display:grid;place-items:center;overflow:hidden;animation:lr-life 5.2s ease-out both}
.lucky-reveal .lr-flash{position:absolute;inset:0;background:radial-gradient(circle at 50% 50%,#fffbe0 0,#ffd23fa0 30%,#ffd23f30 55%,transparent 75%);animation:lr-flash 1.8s ease-out both}
.lucky-reveal .lr-rays{position:absolute;left:50%;top:50%;width:170vmax;height:170vmax;margin:-85vmax 0 0 -85vmax;background:repeating-conic-gradient(from 0deg,#ffe27a66 0 7deg,transparent 7deg 20deg);-webkit-mask:radial-gradient(circle,#000 0,transparent 45%);mask:radial-gradient(circle,#000 0,transparent 45%);animation:lr-rays 5.2s ease-out both}
.lucky-reveal .lr-ring{position:absolute;left:50%;top:50%;width:80px;height:80px;margin:-40px 0 0 -40px;border:6px solid #ffd23f;border-radius:50%;box-shadow:0 0 20px #ffe27a,inset 0 0 20px #ffe27a;animation:lr-ring 2.4s ease-out both}
.lucky-reveal .lr-ring.r2{border-color:#7fe6ff;box-shadow:0 0 20px #7fe6ff,inset 0 0 20px #7fe6ff;animation-delay:.45s}
.lucky-reveal .lr-star{position:absolute;left:50%;top:50%;color:#fff6a8;font-style:normal;font-size:24px;line-height:1;text-shadow:0 0 6px #fff,0 0 12px #ffd23f;animation:lr-star 2.9s ease-out both;animation-delay:var(--dl)}
.lucky-reveal .lr-card{position:relative;display:grid;justify-items:center;gap:6px;margin-top:-70px;animation:lr-card 5.2s cubic-bezier(.2,1.3,.4,1) both}
.lucky-reveal .lr-sprite{width:170px!important;height:170px!important;max-width:none;object-fit:contain;image-rendering:pixelated;filter:drop-shadow(0 0 12px #fff36f) drop-shadow(0 0 28px #ffd23f) drop-shadow(0 4px 0 #7a3f00)}
.lucky-reveal strong{padding:6px 14px;background:#06183aeb;border:2px solid #ffd23f;font-size:20px;font-weight:900;letter-spacing:3px;color:#ffe100;text-align:center;text-shadow:-2px 0 #7a3f00,2px 0 #7a3f00,0 -2px #7a3f00,0 2px #7a3f00,-2px -2px #7a3f00,2px -2px #7a3f00,-2px 2px #7a3f00,2px 2px #7a3f00,0 0 14px #ffd23f}
.lucky-reveal em{padding:3px 12px;background:#06183aeb;border:2px solid #7fe6ff;font-style:normal;font-size:15px;font-weight:900;letter-spacing:2px;color:#fff;text-transform:uppercase;text-shadow:-1px 0 #06183a,1px 0 #06183a,0 -1px #06183a,0 1px #06183a,0 0 10px #7fe6ff}
@keyframes lr-life{0%,82%{opacity:1}100%{opacity:0}}
@keyframes lr-flash{0%{opacity:0}12%{opacity:1}100%{opacity:0}}
@keyframes lr-rays{0%{opacity:0;transform:rotate(0) scale(.4)}20%{opacity:1}100%{opacity:.85;transform:rotate(50deg) scale(1)}}
@keyframes lr-ring{0%{transform:scale(.2);opacity:1}100%{transform:scale(11);opacity:0}}
@keyframes lr-star{0%{opacity:0;transform:translate(-50%,-50%) rotate(var(--a)) translateY(0) scale(.4)}20%{opacity:1}100%{opacity:0;transform:translate(-50%,-50%) rotate(var(--a)) translateY(calc(var(--d)*-1)) scale(1.5)}}
@keyframes lr-card{0%{opacity:0;transform:scale(.15) rotate(-12deg)}16%{opacity:1;transform:scale(1.2) rotate(3deg)}26%{transform:scale(1) rotate(0)}84%{opacity:1;transform:scale(1)}100%{opacity:0;transform:scale(1.08)}}
@media(max-width:520px){.lucky-reveal .lr-sprite{width:130px!important;height:130px!important}.lucky-reveal strong{font-size:15px;letter-spacing:2px}}

/* ---- botão de efeitos sonoros (par do botão de música) ---- */
.site-theme .sfx-toggle{display:inline-grid;place-items:center;flex:none;width:29px;height:28px;min-height:0;padding:2px;border:1px solid #557793;border-radius:0;background:#102e4b;color:#87a7c5;box-shadow:inset 0 0 0 1px #04162c;line-height:1;cursor:pointer}
.site-theme .sfx-toggle svg{display:block;pointer-events:none}
.site-theme .sfx-toggle.music-on{color:#f6d778;border-color:#d3b565;background:#21394b}
.site-theme .sfx-toggle:hover{color:#ffdf8c;border-color:#f6d778}
.sfx-toggle .sfx-waves{display:none}.sfx-toggle.music-on .sfx-waves{display:inline}
.sfx-toggle .sfx-off{display:inline}.sfx-toggle.music-on .sfx-off{display:none}
.site-theme .home-sfx{position:absolute;top:15px;right:50px}
@media(max-width:520px){.compact-shell .run-nav .sfx-toggle{width:24px;height:24px;padding:2px}.compact-shell .run-nav .sfx-toggle svg{width:15px;height:15px}.site-theme .home-sfx{top:9px;right:40px}}

/* ---- log de combate: rola sozinho até o último evento; sem barra de rolagem visível (a roda do mouse continua funcionando) ---- */
.battle-log{scrollbar-width:none;-ms-overflow-style:none}
.battle-log::-webkit-scrollbar{display:none}

/* ---- log de combate: habilidades, natures, clima e resumo ---- */
.showdown-battle .battle-log p.ability{color:#8bd7ff}
.showdown-battle .battle-log p.ability:before{content:'✦ '}
.showdown-battle .battle-log p.nature{color:#d7a8ff}
.showdown-battle .battle-log p.nature:before{content:'◈ '}
.showdown-battle .battle-log p.info{color:#a9c1d6}
.showdown-battle .battle-log p.item{color:#ffd38a}

/* ---- Pokémon que usa uma habilidade/nature brilha ---- */
.battle-card.ability-pop{animation:ability-pop 1.1s ease-out}
@keyframes ability-pop{0%{box-shadow:0 0 0 0 #7fe6ffcc,0 0 0 #7fe6ff}55%{box-shadow:0 0 0 8px #7fe6ff22,0 0 24px #7fe6ffaa}100%{box-shadow:0 0 0 0 #7fe6ff00,0 0 0 #7fe6ff00}}

/* ---- clima no campo de batalha (areia, chuva, sol, granizo) ---- */
.weather-fx{position:absolute;inset:0;z-index:2;pointer-events:none;overflow:hidden}
.weather-fx>i{position:absolute;display:block}
.weather-tag{position:absolute;left:50%;bottom:6px;transform:translateX(-50%);padding:2px 9px;font-size:8px;font-weight:900;letter-spacing:1.2px;white-space:nowrap;color:#fff;background:#06183ad9;border:1px solid var(--wx,#8bd7ff);text-shadow:0 1px 0 #000;animation:wx-tag-in .5s ease-out both}
@keyframes wx-tag-in{from{opacity:0;transform:translate(-50%,8px)}}
.weather-rain{--wx:#8fd0ff;background:linear-gradient(180deg,#0a2d6a4d,#0a2d6a1f)}
.weather-rain>i{left:var(--x);top:-14%;width:2px;height:26px;background:linear-gradient(#bfe6ff00,#bfe6ffcc);transform:rotate(12deg);animation:wx-rain var(--d) linear infinite;animation-delay:var(--w)}
@keyframes wx-rain{to{transform:translate(-9vw,120vh) rotate(12deg)}}
.weather-hail{--wx:#d6f3ff;background:linear-gradient(180deg,#9fd8ff2b,#9fd8ff12)}
.weather-hail>i{left:var(--x);top:-6%;width:5px;height:5px;border-radius:50%;background:#fff;box-shadow:0 0 5px #d6f3ff;animation:wx-hail calc(var(--d)*1.8) linear infinite;animation-delay:var(--w)}
@keyframes wx-hail{50%{transform:translate(-14px,60vh)}to{transform:translate(8px,120vh)}}
.weather-sand{--wx:#e6c46f;background:linear-gradient(90deg,#c99a4a4d,#a8793326 60%,#c99a4a42)}
.weather-sand:after{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 20% 85%,#d8b06466,#0000 62%),radial-gradient(ellipse at 85% 20%,#d8b06444,#0000 60%);animation:wx-haze 4s ease-in-out infinite}
.weather-sand>i{left:-14%;top:var(--y);width:58px;height:2px;background:linear-gradient(90deg,#f0d28f00,#f0d28fd6);animation:wx-sand calc(var(--d)*2.4) linear infinite;animation-delay:var(--w)}
@keyframes wx-sand{to{transform:translateX(125vw)}}
@keyframes wx-haze{50%{opacity:.55}}
.weather-sun{--wx:#ffd54a;background:linear-gradient(180deg,#ffb52a33,#ff8a0014)}
.weather-sun .sun-core{position:absolute;right:-70px;top:-70px;width:280px;height:280px;border-radius:50%;background:radial-gradient(circle,#fffbd0 0,#ffe066b0 28%,#ffb52a55 52%,#ffb52a00 72%);animation:wx-pulse 3s ease-in-out infinite}
.weather-sun .sun-rays{position:absolute;right:-190px;top:-190px;width:520px;height:520px;background:repeating-conic-gradient(#ffe27a3d 0 7deg,transparent 7deg 22deg);-webkit-mask:radial-gradient(circle,#000 0,transparent 62%);mask:radial-gradient(circle,#000 0,transparent 62%);animation:wx-spin 30s linear infinite}
@keyframes wx-pulse{50%{transform:scale(1.12);opacity:.85}}
@keyframes wx-spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.weather-fx *,.weather-fx:after,.battle-card.ability-pop{animation:none!important}}

/* ---- ao fim da batalha o log cresce para o resumo caber inteiro ---- */

/* ---- gênero ---- */
.gender{display:inline-block;margin-left:2px;font-weight:900}
.gender.male{color:#7fb8ff}
.gender.female{color:#ff8fc7}

/* ================= tooltip do Pokémon (roleta de encontros) ================= */
.poke-tip{position:fixed;z-index:60;display:none;grid-template-columns:minmax(210px,235px) minmax(190px,215px);gap:0;max-width:calc(100vw - 16px);color:#dfe9f7;font-size:10px;line-height:1.35;background:#08152b;border:2px solid #d3b565;box-shadow:0 0 0 2px #03102a,0 14px 34px #000c;pointer-events:none}
.poke-tip.show{display:grid;animation:tip-in .12s ease-out}
@keyframes tip-in{from{opacity:0;transform:translateY(4px)}}
.poke-tip .tip-main{padding:9px 12px 10px;text-align:center;background:linear-gradient(#10264a,#0a1834);border-right:2px solid #24405f}
.poke-tip .tip-main>header{display:flex;justify-content:space-between;align-items:center;font-size:8px;font-weight:900;letter-spacing:1px}
.poke-tip .tip-tag{padding:1px 6px;color:#0a1834;background:#f6d778}
.poke-tip .tip-rarity{display:inline-flex;align-items:center;gap:5px;color:#a9c1d6}
.poke-tip .tip-portrait{display:grid;place-items:center;height:96px;margin:4px 0 2px;background:radial-gradient(circle,#1e4a80 0,transparent 68%)}
.poke-tip .tip-sprite{width:84px;height:84px;max-width:none;object-fit:contain;image-rendering:pixelated}
.poke-tip h3{margin:0;font-size:14px;color:#f6d778;letter-spacing:.7px}
.poke-tip .tip-level{margin:1px 0 5px;color:#a9c1d6;font-size:9px;letter-spacing:.8px}
.poke-tip .tip-types{display:flex;justify-content:center;gap:5px;margin-bottom:8px}
.tip-type{display:inline-block;padding:1px 7px;font-size:9px;font-weight:900;letter-spacing:.6px;color:#fff;text-shadow:0 1px 0 #0009;border:1px solid #0007;box-shadow:inset 0 -2px 0 #0004;background:#68778a}
.tip-type.normal{background:#8b8d7e}.tip-type.fire{background:#e2571e}.tip-type.water{background:#3f87e8}.tip-type.electric{background:#d8a90d;color:#1d1600;text-shadow:none}.tip-type.grass{background:#4ca23a}.tip-type.ice{background:#5cbfc9}.tip-type.fighting{background:#b03a35}.tip-type.poison{background:#96409b}.tip-type.ground{background:#b58f3f}.tip-type.flying{background:#7d92e0}.tip-type.psychic{background:#e0487f}.tip-type.bug{background:#8ea01a}.tip-type.rock{background:#9d8632}.tip-type.ghost{background:#5f4a8e}.tip-type.dragon{background:#5a3de0}.tip-type.dark{background:#5a463a}.tip-type.steel{background:#8f8fa6}.tip-type.fairy{background:#e58bb3}
.poke-tip .tip-stats{list-style:none;margin:0 0 6px;padding:0;display:grid;gap:4px}
.poke-tip .tip-stats li{display:grid;grid-template-columns:44px 1fr 26px;align-items:center;gap:6px;text-align:left}
.poke-tip .tip-stats small{font-size:8px;font-weight:900;color:#8fa8cf;letter-spacing:.4px}
.poke-tip .tip-stats span{height:6px;background:#122544;border:1px solid #24405f}
.poke-tip .tip-stats i{display:block;height:100%;background:linear-gradient(90deg,#4bd67a,#a6f07a)}
.poke-tip .tip-stats b{text-align:right;font-size:10px;color:#fff}
.poke-tip .tip-hp{height:9px;margin-top:2px;background:#122544;border:1px solid #0a1834;box-shadow:inset 0 0 0 1px #24405f}
.poke-tip .tip-hp span{display:block;height:100%;background:linear-gradient(#5be07d,#2ea655)}
.poke-tip .tip-hp-text{display:block;margin:3px 0 8px;font-size:8px;color:#8fa8cf}
.poke-tip .tip-move{padding:7px 8px;border:1px solid #33557a;background:#0b1c3a;display:grid;gap:4px}
.poke-tip .tip-move strong{font-size:11px;color:#fff;letter-spacing:.4px}
.poke-tip .tip-move em{font-style:normal;justify-self:center;padding:0 8px;font-size:8px;font-weight:900;color:#0a1834;background:#f6d778}
.poke-tip .tip-move div{display:flex;flex-wrap:wrap;justify-content:center;gap:4px}
.tip-chip{display:inline-block;padding:1px 6px;font-size:9px;font-weight:900;letter-spacing:.5px;color:#dfe9f7;background:#33557a;border:1px solid #0007}
.tip-chip.phys{background:#b84a2f}.tip-chip.spec{background:#4a5fd0}
.poke-tip .tip-abilities{display:flex;flex-wrap:wrap;justify-content:center;gap:4px;margin-top:7px}
.poke-tip .tip-abilities span{padding:1px 6px;font-size:8px;font-weight:900;letter-spacing:.4px;color:#8bd7ff;border:1px solid #24405f;background:#0b1c3a}
.poke-tip .tip-archetype{display:grid;gap:2px;margin:7px 0 0;padding:6px;border:1px solid #476982;background:#0b263c;color:#bed4e4;font-size:8px;line-height:1.35}.poke-tip .tip-archetype strong{color:#ffe17a;font-size:8px;letter-spacing:.6px}.poke-tip .tip-allies{margin:6px 0 0;font-size:8px;color:#a9c1d6}
.poke-tip .tip-main footer{margin-top:8px;padding-top:6px;border-top:1px dashed #33557a;font-size:9px;font-weight:900;letter-spacing:.5px;color:#f6d778}
.poke-tip .tip-charts{padding:9px 12px;background:#0d1e3d;overflow:hidden}
.poke-tip .tip-charts h4{margin:0 0 5px;font-size:11px;font-weight:900;letter-spacing:1.4px;color:#f6d778;padding-bottom:3px;border-bottom:1px solid #24405f}
.poke-tip .tip-charts h4:not(:first-child){margin-top:10px}
.poke-tip .tip-def{margin:0 0 6px;display:flex;align-items:center;flex-wrap:wrap;gap:5px;font-size:9px;color:#8fa8cf}
.poke-tip .tip-charts ul{list-style:none;margin:0;padding:0;display:grid;gap:3px}
.poke-tip .tip-charts li{display:grid;grid-template-columns:78px 1fr auto;align-items:center;gap:6px}
.poke-tip .tip-charts li span{font-size:9px;color:#a9c1d6}
.poke-tip .tip-charts li b{font-size:10px}
.poke-tip .tip-charts li.bad b{color:#ff6b6b}.poke-tip .tip-charts li.good b{color:#6df08b}
@media(max-width:640px){.poke-tip{grid-template-columns:minmax(0,236px)}.poke-tip .tip-charts{display:none}}

/* ================= espera do Raid Boss ================= */
.raid-wait{position:relative;isolation:isolate;overflow:hidden;display:flex;flex-direction:column;align-items:center;gap:12px;padding:26px 18px 22px;text-align:center;border:2px solid #d3b565;background:linear-gradient(#050a18e6,#0a1226d9),var(--raid-bg) center/cover;box-shadow:inset 0 0 0 2px #03102a,0 0 0 2px #03102a}
.raid-wait>*{position:relative;z-index:1}
.raid-rays{position:absolute!important;z-index:0!important;left:50%;top:-30%;width:150vmax;height:150vmax;margin-left:-75vmax;background:repeating-conic-gradient(#ffd23f1f 0 6deg,transparent 6deg 18deg);-webkit-mask:radial-gradient(circle,#000 0,transparent 50%);mask:radial-gradient(circle,#000 0,transparent 50%);animation:wx-spin 60s linear infinite}
.raid-embers{position:absolute!important;inset:0;z-index:0!important;overflow:hidden;pointer-events:none}
.raid-embers i{position:absolute;bottom:-10px;left:calc(var(--n,1)*6%);width:4px;height:4px;background:#ffb33d;box-shadow:0 0 8px #ff8a1d;animation:ember 5s linear infinite}
.raid-embers i:nth-child(1){left:4%;animation-delay:0s}.raid-embers i:nth-child(2){left:11%;animation-delay:1.1s}.raid-embers i:nth-child(3){left:18%;animation-delay:2.3s}.raid-embers i:nth-child(4){left:26%;animation-delay:.6s}.raid-embers i:nth-child(5){left:33%;animation-delay:3.1s}.raid-embers i:nth-child(6){left:41%;animation-delay:1.7s}.raid-embers i:nth-child(7){left:48%;animation-delay:2.8s}.raid-embers i:nth-child(8){left:55%;animation-delay:.3s}.raid-embers i:nth-child(9){left:62%;animation-delay:3.6s}.raid-embers i:nth-child(10){left:69%;animation-delay:1.4s}.raid-embers i:nth-child(11){left:76%;animation-delay:2.5s}.raid-embers i:nth-child(12){left:83%;animation-delay:.9s}.raid-embers i:nth-child(13){left:89%;animation-delay:3.3s}.raid-embers i:nth-child(14){left:94%;animation-delay:1.9s}.raid-embers i:nth-child(15){left:8%;animation-delay:4.2s}.raid-embers i:nth-child(16){left:58%;animation-delay:4.6s}
@keyframes ember{0%{transform:translateY(0) scale(1);opacity:0}15%{opacity:1}100%{transform:translateY(-110vh) translateX(28px) scale(.3);opacity:0}}
.raid-wait header h1{margin:6px 0;font-size:clamp(22px,4vw,34px);letter-spacing:4px;color:#ffe100;text-shadow:-3px 0 #7a3f00,3px 0 #7a3f00,0 -3px #7a3f00,0 3px #7a3f00,0 0 22px #ffd23f;animation:raid-title 2.4s ease-in-out infinite}
@keyframes raid-title{50%{text-shadow:-3px 0 #7a3f00,3px 0 #7a3f00,0 -3px #7a3f00,0 3px #7a3f00,0 0 38px #ffe27a}}
.raid-wait header p{margin:0 auto;max-width:560px;font-size:11px;color:#c7d7ea}
.raid-silhouettes{display:flex;justify-content:center;flex-wrap:wrap;gap:16px}
.raid-silhouette{position:relative;margin:0;display:grid;justify-items:center;gap:4px}
.raid-silhouette .sil-aura{position:absolute;left:50%;top:44%;width:120px;height:120px;margin:-60px 0 0 -60px;border-radius:50%;background:radial-gradient(circle,#ffd23f66,transparent 68%);animation:wx-pulse 2.6s ease-in-out infinite}
.raid-silhouette .sil-img{position:relative;width:96px;height:96px;object-fit:contain;filter:brightness(0) drop-shadow(0 0 6px #ffd23f) drop-shadow(0 0 14px #ffb33d);animation:sil-float 3.2s ease-in-out infinite}
.raid-silhouette:nth-child(2) .sil-img{animation-delay:.5s}.raid-silhouette:nth-child(3) .sil-img{animation-delay:1s}.raid-silhouette:nth-child(4) .sil-img{animation-delay:1.5s}.raid-silhouette:nth-child(5) .sil-img{animation-delay:2s}
@keyframes sil-float{50%{transform:translateY(-8px)}}
.raid-silhouette figcaption{position:relative;font-size:9px;font-weight:900;letter-spacing:1.6px;color:#f6d778}
.raid-hint{margin:0;font-size:10px;color:#a9c1d6}
.raid-team{display:grid;grid-template-columns:repeat(auto-fit,minmax(88px,1fr));gap:8px;width:100%;max-width:760px}
.raid-member{display:grid;justify-items:center;gap:2px;padding:6px 4px;background:#08152bcc;border:1px solid #33557a}
.raid-member-sprite img{width:52px;height:52px;object-fit:contain;image-rendering:pixelated}
.raid-member strong{font-size:10px;color:#fff}.raid-member small{font-size:8px;color:#8fa8cf}
.raid-member .hp{width:100%;height:6px}
.raid-rules{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:8px;width:100%;max-width:760px}
.raid-rules article{padding:8px 10px;text-align:left;background:#061a36d9;border-left:3px solid #f6d778}
.raid-rules b{display:block;font-size:10px;letter-spacing:1px;color:#f6d778}.raid-rules span{font-size:9px;color:#c7d7ea}
.raid-go{min-width:min(340px,100%);animation:raid-pulse 1.6s ease-in-out infinite}
@keyframes raid-pulse{50%{box-shadow:0 0 22px #ffd23f99}}

/* ================= Hall da Fama ================= */
.hall-page{display:grid;gap:14px}
.hall-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:14px}
.hall-head h2{margin:2px 0}.hall-head p{margin:0;color:#a9c1d6;font-size:11px}
.hall-stats{display:flex;gap:8px}
.hall-stats span{display:grid;justify-items:center;min-width:92px;padding:7px 12px;background:#0a1e3d;border:1px solid #557793}
.hall-stats b{font-size:20px;color:#f6d778}.hall-stats small{font-size:8px;font-weight:900;letter-spacing:1px;color:#8fa8cf}
.hall-soon{display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding:8px 12px;font-size:10px;color:#c7d7ea;background:repeating-linear-gradient(135deg,#0d1e3d 0 10px,#0a1834 10px 20px);border:1px dashed #d3b565}
.hall-soon b{color:#f6d778;letter-spacing:1.2px}
.hall-list{display:grid;gap:14px}
.hall-card{display:grid;gap:12px;padding:14px;background:linear-gradient(#0e2245,#08152b);border:2px solid #557793;box-shadow:inset 0 0 0 2px #03102a}
.hall-card:first-child{border-color:#d3b565}
.hall-card>header{display:flex;flex-wrap:wrap;align-items:center;gap:12px;justify-content:space-between}
.hall-title{display:flex;align-items:center;gap:10px}
.hall-trophy{display:grid;place-items:center;width:38px;height:38px;font-size:24px;color:#ffe100;background:#3a2c07;border:2px solid #d3b565;text-shadow:0 0 10px #ffd23f}
.hall-title strong{display:block;font-size:14px;letter-spacing:1.4px;color:#f6d778}.hall-title small{color:#8fa8cf;font-size:10px}
.hall-badges{display:flex;gap:6px}
.hall-boss{display:flex;align-items:center;gap:8px;padding:4px 10px;background:#0a1834;border:1px solid #33557a}
.hall-boss-sprite{width:52px;height:52px;object-fit:contain;image-rendering:pixelated}
.hall-boss small{display:block;font-size:8px;font-weight:900;letter-spacing:1px;color:#8fa8cf}.hall-boss strong{font-size:13px;color:#fff}
.hall-team{display:grid;grid-template-columns:repeat(auto-fit,minmax(118px,1fr));gap:8px}
.hall-member{display:grid;justify-items:center;gap:3px;padding:8px 6px;text-align:center;background:#091a36;border:1px solid #24405f}
.hall-member.shiny{border-color:#7fe6ff;box-shadow:0 0 12px #7fe6ff44}
.hall-member.empty{opacity:.35;place-content:center;min-height:96px}
.hall-portrait{position:relative}.hall-portrait img.pixel{width:64px;height:64px;object-fit:contain;image-rendering:pixelated}
.hall-member strong{font-size:12px;color:#fff;word-break:break-word}.hall-member small{font-size:9px;color:#8fa8cf}
.hall-ability{font-size:8px!important}.hall-member em{font-style:normal;font-size:9px;font-weight:900;color:#f6d778}
.hall-types{display:flex;gap:3px}
.hall-name-input{width:100%;padding:4px 6px;font:inherit;font-size:11px;text-align:center;color:#fff;background:#03102a;border:1px solid #d3b565;outline:0}
.hall-name-input:focus{box-shadow:0 0 0 2px #f6d77855}
.hall-card>footer{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.hall-card>footer small{color:#8fa8cf;font-size:9px}
.outcome-naming{display:grid;gap:10px;margin:14px 0;padding:14px;background:#0a1e3d;border:2px solid #d3b565;box-shadow:inset 0 0 0 2px #03102a}
.outcome-naming strong{display:block;font-size:13px;letter-spacing:1.4px;color:#f6d778}.outcome-naming small{color:#a9c1d6;font-size:10px}
.outcome-naming-actions{display:flex;flex-wrap:wrap;gap:8px}

/* corrige células do Hall: o campo de apelido não pode esticar a grade */
.hall-team{grid-template-columns:repeat(auto-fit,minmax(122px,1fr))}
.hall-member{min-width:0;overflow:hidden}
.hall-member>*{max-width:100%}
.hall-name-input{box-sizing:border-box;width:100%;min-width:0;max-width:100%}
.hall-types{flex-wrap:wrap;justify-content:center}
.hall-member{grid-template-columns:minmax(0,1fr)}
.hall-member .tip-type{font-size:8px;padding:1px 5px}

/* ================= cartas de bioma ================= */
.card-table{container-type:inline-size;position:relative;overflow:hidden;--ch:clamp(150px,30vh,260px);--cw:min(calc(var(--ch)/1.42),calc((100cqw - 2*var(--gap) - 24px)/3.5));--gap:clamp(10px,2.4vw,26px);--rise:120px}
.card-table header h1{margin-bottom:4px}
.card-row{display:flex;justify-content:center;align-items:flex-start;gap:var(--gap);perspective:1200px;padding:12px 0 8px}
.card-slot{flex:none;width:var(--cw);height:calc(var(--cw)*1.42)}
.card-row.dealing .card-slot{animation:card-deal .78s cubic-bezier(.2,.85,.25,1.08) backwards;animation-delay:calc(.2s + var(--i)*.28s)}
@keyframes card-deal{0%{opacity:0;transform:translate(calc((var(--mid) - var(--i))*(var(--cw) + var(--gap))),calc(var(--rise)*-1)) rotate(-16deg) scale(.32)}22%{opacity:1}100%{opacity:1;transform:none}}
.play-card{position:relative;display:block;width:100%;height:100%;padding:0;border:0;background:none;color:inherit;font:inherit;cursor:pointer;transition:transform .18s ease-out,filter .2s}
.play-card:not(.flipped):hover,.play-card:not(.flipped):focus-visible{transform:translateY(-12px) rotate(-1.2deg);filter:drop-shadow(0 0 14px #f6d778aa);outline:0}
.play-card.flipped{cursor:default}
.play-card.picked{filter:drop-shadow(0 0 20px #ffd23f)}
.card-inner{position:absolute;inset:0;transform-style:preserve-3d;transition:transform .95s cubic-bezier(.3,.75,.2,1)}
.play-card.flipped .card-inner{transform:rotateY(180deg)}
.card-back,.card-face{position:absolute;inset:0;overflow:hidden;backface-visibility:hidden;-webkit-backface-visibility:hidden;border:3px solid #f6d778;box-shadow:inset 0 0 0 2px #03102a,0 8px 16px #000a}
.card-face{transform:rotateY(180deg);display:flex;flex-direction:column;text-align:left;background:#061a36}
.card-art{position:relative;flex:1 1 62%;min-height:0;background:#0a1730 center/cover no-repeat}
.card-copy .route-types{display:flex;flex-wrap:nowrap;gap:3px;min-width:0;margin:1px 0 2px}
.card-copy .route-types .type{flex:0 1 auto;min-width:0;padding:2px 5px;font-size:7px;gap:3px}
.card-copy .route-types .type-sprite{width:11px;height:11px}
.card-crest{position:absolute;left:0;right:0;bottom:8px;text-align:center;font-size:12px;font-weight:900;letter-spacing:2px;color:#ffe100;text-shadow:-2px 0 #7a3f00,2px 0 #7a3f00,0 -2px #7a3f00,0 2px #7a3f00,0 0 12px #ffd23f}
.card-copy{display:grid;gap:2px;padding:7px 8px 8px;background:linear-gradient(#0a1e3d,#061a36);border-top:2px solid #f6d778}
.card-copy strong{font-size:clamp(10px,1.7vh,13px);letter-spacing:.5px;color:#f6d778;line-height:1.15}
.card-copy small{font-size:8px;font-weight:900;letter-spacing:.7px;color:#8fa8cf}
.card-lock{position:absolute;inset:0;display:grid;place-content:center;justify-items:center;gap:6px;text-align:center;background:#03102ac4;color:#ffb3b3}
.card-lock img{width:34px;height:34px;image-rendering:pixelated;filter:grayscale(1) brightness(1.4)}
.card-lock b{font-size:9px;letter-spacing:1px}
.play-card.locked .card-art{filter:grayscale(.85) brightness(.7)}
.card-scan{position:absolute;inset:6px;display:grid;grid-template-rows:auto 1fr auto auto;padding:6px;border:1px solid #7fe6ff;background:#031a2ad0;color:#7fe6ff;text-align:center;overflow:hidden}
.card-scan i{position:absolute;inset:0;background:center/cover;opacity:.55;filter:saturate(.7) hue-rotate(150deg)}
.card-scan b{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:4px;font-size:8px;letter-spacing:2px}
.card-scan b img{width:14px;height:14px;image-rendering:pixelated}
.card-scan strong{position:relative;grid-row:3;font-size:clamp(9px,1.5vh,12px);color:#fff;text-shadow:0 1px 0 #000;line-height:1.15}
.card-scan small{position:relative;grid-row:4;font-size:8px;font-weight:900;color:#ffb3b3}
.card-scan:after{content:'';position:absolute;left:0;right:0;height:24%;background:linear-gradient(transparent,#7fe6ff66,transparent);animation:scan-sweep 2.2s linear infinite}
@keyframes scan-sweep{from{top:-28%}to{top:112%}}
.card-prompt{min-height:22px;margin:4px 0 0;text-align:center;font-size:clamp(11px,1.9vh,15px);font-weight:900;letter-spacing:2px;color:#f6d778;animation:prompt-pulse 1.5s ease-in-out infinite}
@keyframes prompt-pulse{50%{opacity:.55}}
.card-actions{display:flex;justify-content:center;min-height:6px;padding:4px 0}
.card-scanner-hint{display:flex;align-items:center;justify-content:center;gap:6px;margin:8px 0 0;font-size:9px;color:#a9c1d6}
.card-scanner-hint img{width:22px;height:22px;image-rendering:pixelated}
.raid-gate .play-card.picked{filter:drop-shadow(0 0 26px #ffd23f)}
@media(max-width:640px){.card-table{--ch:clamp(120px,24vh,190px);--gap:8px}.card-copy strong{font-size:10px}}
@media(prefers-reduced-motion:reduce){.card-table *,.raid-wait *{animation:none!important}.card-inner{transition:none}}

/* cartas: cabem em telas baixas e não apagam quando viradas */
.card-table{--ch:clamp(124px,calc(100dvh - 500px),270px);--rise:90px}
.card-row{padding:6px 0 4px}
.card-prompt{margin:2px 0 0}
.play-card:disabled{opacity:1!important;cursor:default}
.play-card.picked:disabled{filter:drop-shadow(0 0 20px #ffd23f)}
.card-table.has-pick footer{display:none}
@media(max-height:700px){.card-table header p{display:none}.card-copy small{display:none}}
.card-table{--ch:clamp(124px,calc(100dvh - 545px),270px);padding-bottom:14px!important}
.card-actions{padding:6px 0 2px}

/* ---- verso da carta: arte fornecida ---- */
.card-back{display:block;border:0;border-radius:6px;background:url("/static/game/ui/card_back.81f95cac9283.png?v=20260919") center/100% 100% no-repeat;box-shadow:0 8px 16px #000a}
.card-face{border-radius:6px}
.play-card:not(.flipped):hover .card-back,.play-card:not(.flipped):focus-visible .card-back{box-shadow:0 12px 22px #000b,0 0 22px #ffd23f99}
.card-table{--rise:70px}
.card-scan{border-radius:4px}

/* ---- faixa da etapa ---- */
.stage-ribbon{position:relative;display:inline-flex;align-items:center;gap:0;height:30px;margin-bottom:6px;font-size:10px;font-weight:900;letter-spacing:1.6px;color:#0b213a;filter:drop-shadow(0 3px 0 #03102a)}
.stage-ribbon em{display:grid;place-items:center;height:100%;padding:0 12px 0 14px;font-style:normal;color:#f6d778;background:linear-gradient(#123a70,#0a2247);clip-path:polygon(0 0,calc(100% - 8px) 0,100% 50%,calc(100% - 8px) 100%,0 100%,8px 50%)}
.stage-ribbon .stage-label{display:grid;place-items:center;height:100%;padding:0 20px 0 22px;margin-left:-8px;white-space:nowrap;background:linear-gradient(#ffe7a0,#f6c945 55%,#d99a26);clip-path:polygon(8px 0,100% 0,100% 100%,8px 100%,0 50%);text-shadow:0 1px 0 #ffffffa0}
.stage-ribbon .stage-label strong{font-size:15px;color:#7a3f00;margin:0 3px}
.stage-ribbon .stage-pips{display:flex;align-items:center;gap:5px;height:100%;padding:0 14px 0 20px;margin-left:-8px;background:linear-gradient(#123a70,#0a2247);clip-path:polygon(8px 0,100% 0,100% 100%,8px 100%,0 50%)}
.stage-pips i{width:9px;height:9px;transform:rotate(45deg);border:1px solid #f6d77899;background:#061733}
.stage-pips i.on{background:#f6d778;border-color:#fff3c0;box-shadow:0 0 6px #ffd23f}
.stage-pips i.now{background:#fff;animation:pip-now 1.4s ease-in-out infinite}
@keyframes pip-now{50%{transform:rotate(45deg) scale(1.35);box-shadow:0 0 12px #fff}}
.stage-ribbon.final .stage-label{background:linear-gradient(#ffd0a0,#ff9a3d 55%,#d4611a)}
.stage-ribbon.final .stage-label{color:#3b1300}

/* ---- botão IR PARA ---- */

/* ---- dica do Scanner, acima do botão ---- */
.card-actions{flex-direction:column;align-items:center;gap:8px}
.card-scanner-hint{display:flex;align-items:center;gap:10px;max-width:min(540px,100%);margin:0;padding:6px 12px;text-align:left;font-size:10px;line-height:1.4;color:#c7d7ea;background:linear-gradient(90deg,#0b2a4f,#061a36);border:1px solid #7fe6ff88;border-left:3px solid #7fe6ff;box-shadow:0 0 12px #7fe6ff22}
.card-scanner-hint img{flex:none;width:30px;height:30px;image-rendering:pixelated;filter:drop-shadow(0 0 6px #7fe6ffaa)}
.card-scanner-hint b{color:#7fe6ff;letter-spacing:.8px}
.card-table{--ch:clamp(124px,calc(100dvh - 520px),280px)}
.stage-ribbon .stage-label{display:flex;align-items:center;justify-content:center;gap:5px}
.stage-ribbon .stage-label strong{margin:0}
.card-back{box-shadow:0 6px 12px #0007}
.play-card:not(.flipped):hover,.play-card:not(.flipped):focus-visible{filter:none}
.play-card:not(.flipped):hover .card-back,.play-card:not(.flipped):focus-visible .card-back{box-shadow:0 0 26px 2px #ffd23fcc}

/* ---- player de música ---- */
.music-player{display:flex;align-items:center;gap:4px}
.site-theme .mp-btn{display:inline-grid;place-items:center;flex:none;width:26px;height:28px;min-height:0;padding:2px;border:1px solid #557793;border-radius:0;background:#102e4b;color:#87a7c5;box-shadow:inset 0 0 0 1px #04162c;font-size:12px;line-height:1;cursor:pointer}
.site-theme .mp-btn:hover{color:#ffdf8c;border-color:#f6d778}
.site-theme .music-player .music-toggle span{font-size:11px;letter-spacing:-1px}
.mp-info{display:grid;gap:2px;min-width:0;max-width:200px;margin-left:8px;text-align:left}
.mp-title{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:900;letter-spacing:.6px;color:#f6d778;text-shadow:0 1px 0 #000}
.mp-meta{display:flex;align-items:center;gap:5px;font-size:8px;font-weight:700;letter-spacing:.8px;color:#8fa8cf;white-space:nowrap}
.mp-eq{display:inline-flex;align-items:flex-end;gap:1px;height:8px;font-style:normal}
.mp-eq u{display:block;width:2px;height:3px;text-decoration:none;background:#557793}
.music-player.playing .mp-eq u{background:#f6d778;animation:mp-bar .8s ease-in-out infinite}
.music-player.playing .mp-eq u:nth-child(2){animation-delay:.25s}.music-player.playing .mp-eq u:nth-child(3){animation-delay:.5s}
@keyframes mp-bar{0%,100%{height:2px}50%{height:8px}}
.music-player.compact .mp-info{display:none}
.top-player{display:flex!important;justify-content:center;align-items:center}
.site-theme .home-sfx{right:126px}
@media(max-width:520px){.site-theme .home-sfx{right:100px}.mp-info{max-width:120px}.site-theme .mp-btn{width:22px;height:24px}}
@media(prefers-reduced-motion:reduce){.music-player .mp-eq u{animation:none!important}}

/* ---- cartas: contorno discreto, carta escolhida em destaque ---- */
.card-face{border:1px solid #f6d77840;box-shadow:0 6px 14px #0009}
.play-card.picked{filter:drop-shadow(0 0 9px #ffd23f88)}
.play-card.picked:disabled{filter:drop-shadow(0 0 9px #ffd23f88)}
.card-slot{transition:transform .8s cubic-bezier(.3,.85,.25,1)}
.card-slot.zoom{z-index:3}
.card-slot.chosen{z-index:2}
.card-table.has-pick .card-row{align-items:center}
.card-table.has-pick .card-slot.chosen{width:calc(var(--cw)*1.1);height:calc(var(--cw)*1.562);transform:none}
.card-table.has-pick .card-slot.unchosen{width:calc(var(--cw)*.9);height:calc(var(--cw)*1.278);transform:none}
.card-slot.unchosen .play-card{filter:brightness(.8) saturate(.85) blur(1.4px)}

/* ---- botão IR PARA (estilo dos botões quadrados, versão calma do botão shiny) ---- */
.card-go{position:relative;display:block;width:fit-content;min-width:min(250px,100%);max-width:100%;padding:0;margin:0 auto;border:0;background:none;cursor:pointer;font:inherit;text-align:left;color:#102239;filter:drop-shadow(2px 0 0 #03102a) drop-shadow(-2px 0 0 #03102a) drop-shadow(0 2px 0 #03102a) drop-shadow(0 -2px 0 #03102a);transition:transform .12s,filter .15s}
.card-go .go-body{display:block;padding:2px 2px 5px;background:linear-gradient(#ffe7a0,#9a5f08);clip-path:polygon(6px 0,calc(100% - 6px) 0,calc(100% - 6px) 3px,calc(100% - 3px) 3px,calc(100% - 3px) 6px,100% 6px,100% calc(100% - 6px),calc(100% - 3px) calc(100% - 6px),calc(100% - 3px) calc(100% - 3px),calc(100% - 6px) calc(100% - 3px),calc(100% - 6px) 100%,6px 100%,6px calc(100% - 3px),3px calc(100% - 3px),3px calc(100% - 6px),0 calc(100% - 6px),0 6px,3px 6px,3px 3px,6px 3px)}
.card-go .go-face{position:relative;display:flex;align-items:center;gap:14px;padding:6px 7px 6px 15px;overflow:hidden;background:linear-gradient(#ffe9a6,#f6c945 55%,#dba22a);box-shadow:inset 0 2px 0 #ffffff66,inset 0 -3px 0 #00000026;clip-path:polygon(4px 0,calc(100% - 4px) 0,calc(100% - 4px) 2px,calc(100% - 2px) 2px,calc(100% - 2px) 4px,100% 4px,100% calc(100% - 4px),calc(100% - 2px) calc(100% - 4px),calc(100% - 2px) calc(100% - 2px),calc(100% - 4px) calc(100% - 2px),calc(100% - 4px) 100%,4px 100%,4px calc(100% - 2px),2px calc(100% - 2px),2px calc(100% - 4px),0 calc(100% - 4px),0 4px,2px 4px,2px 2px,4px 2px)}
.card-go .go-face:before{display:none;content:'';position:absolute;top:0;bottom:0;left:-35%;width:22%;background:linear-gradient(100deg,transparent,#ffffff90,transparent);transform:skewX(-20deg);transition:left .55s ease;pointer-events:none}
.card-go .go-text{flex:1;display:grid;gap:2px;min-width:0}
.card-go small{font-size:7px;font-weight:900;letter-spacing:2.6px;color:#5d3a00}
.card-go strong{font-size:clamp(12px,2vh,14px);font-weight:900;letter-spacing:1px;color:#102239;text-shadow:none;line-height:1.15}
.card-go:hover{transform:translateY(-2px);filter:drop-shadow(2px 0 0 #03102a) drop-shadow(-2px 0 0 #03102a) drop-shadow(0 2px 0 #03102a) drop-shadow(0 -2px 0 #03102a) brightness(1.06)}
.card-go:active{transform:translateY(3px)}
.card-go:focus-visible{outline:2px solid #fff;outline-offset:4px}
.ic-play{display:block;width:0;height:0;margin-left:2px;border-left:9px solid currentColor;border-top:6px solid transparent;border-bottom:6px solid transparent}
.ic-pause{display:block;width:11px;height:12px;box-sizing:border-box;border-left:3px solid currentColor;border-right:3px solid currentColor}

/* ---- página inicial: faixa de som (música + efeitos) ---- */
.home-audio{position:relative;z-index:3;display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 12px;padding:6px 10px;background:linear-gradient(90deg,#0b2450,#07173a);border:1px solid #33557a;box-shadow:inset 0 0 0 1px #04162c}
.home-audio .music-player{flex:1;min-width:0}
.home-audio .mp-info{flex:1;max-width:none;margin-left:10px}
.home-audio .mp-title{font-size:12px}
.site-theme .sfx-toggle.home-sfx-btn{display:inline-flex;align-items:center;gap:7px;width:auto;height:28px;padding:2px 11px 2px 9px;margin-left:auto;font-size:9px;font-weight:900;letter-spacing:1.3px}
.home-sfx-btn .sfx-label{line-height:1}
@media(max-width:520px){.home-audio{gap:8px;padding:5px 7px}.home-audio .mp-meta{display:none}.home-audio .mp-info{margin-left:6px}.site-theme .sfx-toggle.home-sfx-btn{padding:2px 7px}.home-sfx-btn .sfx-label{display:none}}

/* depois da escolha a carta é desenhada plana (sem 3D), para o zoom não borrar a arte */
.card-table.has-pick .card-inner{transform:none;transform-style:flat;transition:none}
.card-table.has-pick .card-face{transform:none;backface-visibility:visible;-webkit-backface-visibility:visible}
.card-table.has-pick .card-back{display:none}


/* ================= botões pixel (mesma família do IR PARA e do TESTE SUA SORTE) ================= */
:root{--px-o:polygon(6px 0,calc(100% - 6px) 0,calc(100% - 6px) 3px,calc(100% - 3px) 3px,calc(100% - 3px) 6px,100% 6px,100% calc(100% - 6px),calc(100% - 3px) calc(100% - 6px),calc(100% - 3px) calc(100% - 3px),calc(100% - 6px) calc(100% - 3px),calc(100% - 6px) 100%,6px 100%,6px calc(100% - 3px),3px calc(100% - 3px),3px calc(100% - 6px),0 calc(100% - 6px),0 6px,3px 6px,3px 3px,6px 3px);--px-in:polygon(4px 0,calc(100% - 4px) 0,calc(100% - 4px) 2px,calc(100% - 2px) 2px,calc(100% - 2px) 4px,100% 4px,100% calc(100% - 4px),calc(100% - 2px) calc(100% - 4px),calc(100% - 2px) calc(100% - 2px),calc(100% - 4px) calc(100% - 2px),calc(100% - 4px) 100%,4px 100%,4px calc(100% - 2px),2px calc(100% - 2px),2px calc(100% - 4px),0 calc(100% - 4px),0 4px,2px 4px,2px 2px,4px 2px)}
.btn,.run-nav button,.home-back,.encounter-spin,.reel-battle,.skip-link,.home-menu-card,.home-account button{--line:#03102a;--lip-a:#5b93c4;--lip-b:#0e2f52;--face-a:#2d6299;--face-b:#15395f;--ink:#f0f7ff;position:relative;isolation:isolate;border:0!important;border-bottom:3px solid transparent!important;border-radius:0!important;outline:0;background:var(--line)!important;box-shadow:none!important;color:var(--ink)!important;text-shadow:0 1px 0 #0009!important;clip-path:var(--px-o);transition:transform .12s,filter .15s}
.btn:before,.run-nav button:before,.home-back:before,.encounter-spin:before,.reel-battle:before,.skip-link:before,.home-menu-card:before,.home-account button:before{content:'';position:absolute;z-index:-2;left:2px;right:2px;top:2px;bottom:-1px;background:linear-gradient(var(--lip-a),var(--lip-b));clip-path:var(--px-in);pointer-events:none}
.btn:after,.run-nav button:after,.home-back:after,.encounter-spin:after,.reel-battle:after,.skip-link:after,.home-menu-card:after,.home-account button:after{content:'';position:absolute;z-index:-1;inset:3px;background:linear-gradient(var(--face-a),var(--face-b));box-shadow:inset 0 2px 0 #ffffff3a,inset 0 -2px 0 #0000002e;clip-path:var(--px-in);transition:background-position .6s ease;pointer-events:none}
.btn:hover:not(:disabled),.run-nav button:hover:not(:disabled),.home-back:hover:not(:disabled),.encounter-spin:hover:not(:disabled),.reel-battle:hover:not(:disabled),.skip-link:hover:not(:disabled),.home-menu-card:hover:not(:disabled),.home-account button:hover:not(:disabled){transform:translateY(-1px);filter:brightness(1.08)}
.btn:active:not(:disabled),.run-nav button:active:not(:disabled),.home-back:active:not(:disabled),.encounter-spin:active:not(:disabled),.reel-battle:active:not(:disabled),.skip-link:active:not(:disabled),.home-menu-card:active:not(:disabled),.home-account button:active:not(:disabled){transform:translateY(2px);filter:none}
.btn:focus-visible:after,.run-nav button:focus-visible:after,.home-back:focus-visible:after,.encounter-spin:focus-visible:after,.reel-battle:focus-visible:after,.skip-link:focus-visible:after,.home-menu-card:focus-visible:after,.home-account button:focus-visible:after{box-shadow:inset 0 0 0 2px #fff}
.btn:disabled,.run-nav button:disabled{filter:saturate(.5)}
.btn.primary,.reel-battle{--lip-a:#ffe7a0;--lip-b:#9a5f08;--face-a:#ffe9a6;--face-b:#dba22a;--ink:#102239;text-shadow:none!important}
.btn.ghost,.home-back,.run-nav button{--lip-a:#4b7399;--lip-b:#0b2138;--face-a:#1d456e;--face-b:#0f2c4b;--ink:#d6e7f8}
.btn.danger,.run-nav .danger{--lip-a:#e08a92;--lip-b:#5a1a2b;--face-a:#b04357;--face-b:#722639;--ink:#ffe6e3}

/* BATALHAR: amarelo, com brilho que passa de tempos em tempos */
.reel-battle{font-weight:900;letter-spacing:1.4px}
.reel-battle:after{background:linear-gradient(var(--face-a),var(--face-b))}
.reel-battle:hover:not(:disabled):after{background-position:0 0}
.reel-battle:disabled{--lip-a:#d8c77a;--lip-b:#4d3f12;--face-a:#b9a453;--face-b:#8d7930;--ink:#40340c;opacity:.85}
.compact-shell .center-reel .reel-battle{--lip-a:#9be7bf;--lip-b:#0d4636;--face-a:#37b085;--face-b:#146250;--ink:#f0fff7;text-shadow:0 1px 0 #06322a!important}

/* converter em ouro: âmbar com moeda girando */
.skip-link{--lip-a:#f4c95a;--lip-b:#7a4a0a;--face-a:#6a4515;--face-b:#3c250a;--ink:#ffe27a;font-weight:900;letter-spacing:.6px}
.skip-link:hover:not(:disabled){--face-a:#815619;--face-b:#4a2d0c;--ink:#fff0a8}
.skip-money-icon{filter:drop-shadow(0 0 4px #ffcf4d);animation:coin-flip 2.6s ease-in-out infinite}
.skip-link:hover .skip-money-icon{animation-duration:.9s}
@keyframes coin-flip{0%,55%,100%{transform:rotateY(0)}78%{transform:rotateY(180deg)}}

/* ================= GIRAR ENCONTROS: roxo, gradiente vivo, brilho e estrelas ================= */
.encounter-spin{--lip-a:#ff9df5;--lip-b:#4c1d95;--ink:#fff;text-shadow:0 2px 0 #2b0a5c,0 0 10px #e9b6ff!important;font-weight:900;letter-spacing:1px}
.encounter-spin:before{background:linear-gradient(90deg,#ff9df5,#a78bfa,#6ee7f9,#a78bfa,#ff9df5) 0 0/300% 100% repeat-x;animation:px-rim 3.2s linear infinite}
.encounter-spin:after{background:linear-gradient(105deg,transparent 42%,#ffffffc8 50%,transparent 58%) no-repeat -70% 0/40% 100%,radial-gradient(circle,#fff 0 1px,transparent 1.7px) 0 0/43px 29px,radial-gradient(circle,#ffe9ff 0 1px,transparent 1.5px) 15px 9px/61px 37px,linear-gradient(#ffffff3d,transparent 46%,#0000003a),linear-gradient(100deg,#5b21b6,#a21caf,#7c3aed,#c026d3,#6d28d9,#a21caf,#5b21b6) 0 0/300% 100% repeat-x;animation:px-purple 5s linear infinite}
.encounter-spin>span[aria-hidden]{color:#fff;font-size:1.05em;text-shadow:0 0 6px #fff,0 0 12px #e879f9!important;animation:lucky-twinkle 1.6s ease-in-out infinite}
.encounter-spin>span[aria-hidden]:last-child{animation-delay:.8s}
.encounter-spin small{color:#f3d9ff;text-shadow:0 1px 0 #2b0a5c!important}
.machine-controls:has(.encounter-spin:not(:disabled)){animation:px-glow 2s ease-in-out infinite}
/* girando */
.rolling .encounter-spin{filter:brightness(1.15) saturate(1.2);animation:px-jitter .16s steps(2) infinite}
.rolling .encounter-spin:before{animation-duration:.8s}
.rolling .encounter-spin:after{animation-duration:.9s}
.rolling .machine-controls{animation:px-glow .55s ease-in-out infinite}
/* revelados: mais calmo, mesma cor */
.encounter-spin:disabled:not(:hover){filter:saturate(.75) brightness(.88)}
.rolling .encounter-spin:disabled{filter:brightness(1.15) saturate(1.2)}
.encounter-spin:disabled:after{animation-duration:14s}
.encounter-spin:disabled:before{animation-duration:9s}
.rolling .encounter-spin:disabled:after{animation-duration:.9s}
.rolling .encounter-spin:disabled:before{animation-duration:.8s}

/* ================= GIRAR ROLETA (upgrader): pegando fogo ================= */
.upgrade-center>.fire-btn{position:relative;flex:none;width:100%;margin:12px 0 0;animation:fire-glow 1.3s ease-in-out infinite}
.fire-btn>.btn{position:relative;z-index:1;width:100%;min-height:42px;padding:11px 6px;font-size:15px;letter-spacing:2.5px;--lip-a:#ffe27a;--lip-b:#a51a00;--ink:#fff;text-shadow:0 2px 0 #7a1000,0 0 10px #ffcc33!important}
.fire-btn>.btn:after{background:radial-gradient(ellipse 50% 90% at 50% 125%,#fff3a0dd,#ffb52acc 45%,transparent 75%) 0 0/38px 100% repeat-x,radial-gradient(ellipse 50% 75% at 50% 125%,#ffe98acc,#ff7a00aa 45%,transparent 75%) 12px 0/29px 100% repeat-x,linear-gradient(0deg,#d61f00,#ff6a00 55%,#ffa61a);animation:px-fire 2.4s linear infinite}
.fire-btn>.btn:before{background:linear-gradient(#ffe27a,#a51a00)}
.fire-btn>.btn:not(:disabled){animation:fire-flick 1.1s steps(1) infinite}
.fire-btn>.btn:disabled{--lip-a:#7f6a6a;--lip-b:#2e1f1f;--ink:#e8d8d0}
.fire-btn>.btn:disabled:after{animation:none;background:linear-gradient(#5a3c3c,#382626)}
.flames{position:absolute;left:1%;right:1%;bottom:calc(100% - 9px);height:38px;pointer-events:none;z-index:0}
.flames i{position:absolute;bottom:0;left:calc(var(--i)*9%);width:11%;height:var(--h,22px);background:linear-gradient(0deg,#ffe98a 0,#ffb62b 32%,#ff6a00 66%,#e02500 100%);clip-path:polygon(50% 0,62% 22%,76% 22%,88% 48%,100% 48%,100% 100%,0 100%,0 48%,12% 48%,24% 22%,38% 22%);transform-origin:50% 100%;animation:flame .9s ease-in-out infinite;animation-delay:calc(var(--i)*-.13s)}
.flames i:after{content:'';position:absolute;left:26%;right:26%;bottom:0;height:58%;background:linear-gradient(0deg,#fffbe0,#ffe066);clip-path:polygon(50% 0,100% 55%,100% 100%,0 100%,0 55%)}
.flames i:nth-child(odd){--h:28px}.flames i:nth-child(3n){--h:20px}.flames i:nth-child(4n){--h:35px}.flames i:nth-child(5n+2){--h:24px}
.flames b{position:absolute;bottom:8px;left:calc(var(--i)*11% + 4%);width:3px;height:3px;background:#ffd26a;box-shadow:0 0 5px #ff8a00;opacity:0;animation:ember 1.7s ease-out infinite;animation-delay:calc(var(--i)*-.41s)}
.flames b:nth-child(3n){width:2px;height:2px}
.fire-btn:hover .flames i{animation-duration:.55s}
.fire-btn:has(.btn:disabled){animation:none}
.fire-btn:has(.btn:disabled) .flames{display:none}
.or-sep{flex:none;display:flex;align-items:center;gap:10px;width:100%;margin:6px 0 0;color:#a9c8e5;font-size:10px;font-weight:900;letter-spacing:3px}
.or-sep:before,.or-sep:after{content:'';flex:1;height:2px;background:linear-gradient(90deg,transparent,#406686 55%,#406686)}
.or-sep:after{background:linear-gradient(270deg,transparent,#406686 55%,#406686)}
.or-sep span{padding:2px 9px;background:#0c2946;border:1px solid #406686}
.capture-modal .or-sep+.skip-link,.upgrade-center>.or-sep+.skip-link{flex:none;width:100%;margin:6px 0 0;min-height:36px;padding:9px 8px;font-size:10px;line-height:1.35;gap:8px}

/* ================= vitória do upgrader ================= */
.capture-modal{position:relative}
.capture-win-fx{position:absolute;inset:-46px;pointer-events:none;z-index:8}
.capture-win-fx>*{position:absolute}
.cw-flash{inset:8%;border-radius:50%;background:radial-gradient(circle,#fff 0,#fff7b0 32%,transparent 70%);opacity:0}
.cw-rays{inset:-60%;border-radius:50%;background:repeating-conic-gradient(from 0deg,#fff6b0d0 0 5deg,transparent 5deg 15deg);-webkit-mask:radial-gradient(circle,#000 10%,transparent 62%);mask:radial-gradient(circle,#000 10%,transparent 62%);opacity:0}
.cw-rays.r2{background:repeating-conic-gradient(from 7deg,#8df3ffb8 0 4deg,transparent 4deg 22deg)}
.cw-ring{left:50%;top:50%;width:72%;height:72%;margin:-36% 0 0 -36%;border:4px solid var(--c);border-radius:50%;box-shadow:0 0 14px var(--c),inset 0 0 14px var(--c);opacity:0}
.cw-p{left:50%;top:50%;opacity:0;font-style:normal}
.cw-p.conf{width:var(--s);height:calc(var(--s)*.55);background:var(--c)}
.cw-p.coin{width:calc(var(--s)*1.7);height:calc(var(--s)*1.7);border-radius:50%;background:radial-gradient(circle at 35% 30%,#fff7b0,#ffcf3a 48%,#b87400);border:1px solid #7a4a00;box-shadow:0 0 8px #ffd23f}
.cw-p.star{font-size:calc(var(--s)*2.4);line-height:1;color:var(--c);text-shadow:0 0 8px var(--c)}
.cw-tw{font-style:normal;color:#fff;font-size:calc(8px + 12px*var(--u,1));line-height:1;text-shadow:0 0 8px #fff,0 0 14px #ffd23f;opacity:0}
.cw-stack{left:50%;top:50%;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;gap:calc(3px + 6px*var(--u,1));z-index:4;opacity:0;width:max-content}
.cw-mon{position:relative;width:max(58px,calc(120px*var(--u,1)));height:max(58px,calc(120px*var(--u,1)));display:grid;place-items:center}
.cw-mon:before{content:'';position:absolute;inset:-32%;border-radius:50%;background:radial-gradient(circle,#fffbd0dd 0,#ffd23f77 38%,transparent 68%);animation:cw-pulse .5s ease-in-out infinite alternate}
.cw-mon .pixel{position:relative;width:100%;height:100%;object-fit:contain;image-rendering:pixelated;transform:scale(1.4);filter:drop-shadow(0 0 6px #fff) drop-shadow(0 3px 0 #0008)}
.cw-plate{filter:drop-shadow(0 0 12px #ffd23f) drop-shadow(0 3px 0 #000b)}
.cw-banner{display:flex;padding:.16em .55em .2em;font-size:var(--fs,24px);background:linear-gradient(#3a25a0,#160b4c 55%,#2a1a78);clip-path:var(--px-o);box-shadow:inset 0 0 0 2px #ffd23f,inset 0 0 0 4px #7a4a00}
.cw-banner b{display:inline-block;font-size:1em;font-weight:900;letter-spacing:.04em;line-height:1.1;color:#fff6b8;text-shadow:.05em 0 0 #4a2400,-.05em 0 0 #4a2400,0 .05em 0 #4a2400,0 -.05em 0 #4a2400,.05em .05em 0 #4a2400,-.05em .05em 0 #4a2400,0 .1em 0 #b36b00,0 0 .4em #ffd23f}
.cw-sub{padding:.35em .9em;font-size:max(8px,calc(13px*var(--u,1)));font-weight:900;letter-spacing:2px;white-space:nowrap;color:#eaffdc;background:linear-gradient(#0f5a2a,#083a1a);clip-path:var(--px-in);box-shadow:inset 0 0 0 1px #8df358;text-shadow:0 1px 0 #032510;opacity:0}
.wheel-wrap.celebrating{animation:cw-bounce .6s cubic-bezier(.3,1.6,.5,1)}
.wheel-wrap.celebrating .wheel{animation:cw-glow .55s ease-in-out 6}
.wheel-wrap.celebrating .wheel-center{opacity:.1}
.wheel-wrap.celebrating .cw-flash{animation:cw-flash .8s ease-out both}
.wheel-wrap.celebrating .cw-rays{animation:cw-rays 3s ease-out both}
.wheel-wrap.celebrating .cw-rays.r2{animation:cw-rays2 3s ease-out .15s both}
.wheel-wrap.celebrating .cw-ring{animation:cw-ring 1.1s ease-out var(--dl) both}
.wheel-wrap.celebrating .cw-p{animation:cw-burst var(--du) cubic-bezier(.12,.7,.3,1) var(--dl) both}
.wheel-wrap.celebrating .cw-tw{animation:cw-tw 1.1s ease-in-out var(--dl) 2}
.wheel-wrap.celebrating .cw-stack{animation:cw-stack 3.3s linear both}
.wheel-wrap.celebrating .cw-mon{animation:cw-mon-pop .9s cubic-bezier(.3,1.5,.5,1) .1s both}
.wheel-wrap.celebrating .cw-plate{animation:cw-plate .6s cubic-bezier(.3,1.6,.5,1) .25s both}
.wheel-wrap.celebrating .cw-banner b{animation:cw-letter .6s cubic-bezier(.3,1.7,.5,1) calc(.35s + var(--k)*.05s) both,cw-hop .7s ease-in-out calc(1.4s + var(--k)*.06s) 2}
.wheel-wrap.celebrating .cw-sub{animation:cw-sub .5s ease-out 1s both}
.cw-rain{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:30}
.cw-rain i{position:absolute;top:-16px;left:var(--l);width:var(--w);height:calc(var(--w)*.55);background:var(--c);animation:cw-fall var(--du) linear var(--dl) both}
.cw-screenflash{position:absolute;inset:0;background:#fff;opacity:0;animation:cw-screenflash .55s ease-out}
.capture-modal.cw-shake{animation:cw-shake .6s linear}
@keyframes cw-flash{0%{opacity:0;transform:scale(.3)}25%{opacity:1}100%{opacity:0;transform:scale(1.6)}}
@keyframes cw-rays{0%{opacity:0;transform:rotate(0) scale(.5)}15%{opacity:.95}100%{opacity:0;transform:rotate(90deg) scale(1.15)}}
@keyframes cw-rays2{0%{opacity:0;transform:rotate(0) scale(.5)}15%{opacity:.8}100%{opacity:0;transform:rotate(-70deg) scale(1.1)}}
@keyframes cw-ring{0%{opacity:1;transform:scale(.4)}100%{opacity:0;transform:scale(1.7)}}
@keyframes cw-burst{0%{opacity:0;transform:translate(-50%,-50%) scale(.2) rotate(0)}10%{opacity:1}75%{opacity:1}100%{opacity:0;transform:translate(calc(-50% + var(--x)*var(--u,1)*1px),calc(-50% + var(--y)*var(--u,1)*1px + 60px*var(--u,1))) scale(1) rotate(420deg)}}
@keyframes cw-tw{0%,100%{opacity:0;transform:scale(.3)}50%{opacity:1;transform:scale(1.2) rotate(30deg)}}
@keyframes cw-stack{0%{opacity:0}4%{opacity:1}90%{opacity:1}100%{opacity:0}}
@keyframes cw-mon-pop{0%{transform:scale(0) rotate(-30deg)}45%{transform:scale(1.4) rotate(8deg)}65%{transform:scale(.9) rotate(-3deg)}100%{transform:scale(1) rotate(0)}}
@keyframes cw-plate{0%{transform:scale(.2)}60%{transform:scale(1.15)}100%{transform:scale(1)}}
@keyframes cw-letter{0%{opacity:0;transform:translateY(-1.4em) scale(2.4) rotate(-14deg)}100%{opacity:1;transform:none}}
@keyframes cw-hop{50%{transform:translateY(-.22em) scale(1.12)}}
@keyframes cw-sub{0%{opacity:0;transform:translateY(10px)}100%{opacity:1;transform:none}}
@keyframes cw-pulse{to{transform:scale(1.12);opacity:.85}}
@keyframes cw-bounce{0%{transform:scale(1)}40%{transform:scale(1.09)}100%{transform:scale(1)}}
@keyframes cw-glow{50%{filter:drop-shadow(0 0 22px #8ee56f) brightness(1.35)}}
@keyframes cw-fall{0%{opacity:1;transform:translate(0,0) rotate(0)}100%{opacity:.9;transform:translate(var(--sw),105vh) rotate(var(--rot))}}
@keyframes cw-screenflash{0%{opacity:.7}100%{opacity:0}}
@keyframes cw-shake{0%,100%{transform:translate(0,0)}12%{transform:translate(-5px,3px)}25%{transform:translate(5px,-3px)}38%{transform:translate(-4px,-2px)}52%{transform:translate(4px,3px)}66%{transform:translate(-2px,2px)}80%{transform:translate(2px,-1px)}}

/* toque longo na carta do encontro não abre menu nem seleciona */
.encounter-reel .reel-window{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}

/* ================= animações compartilhadas ================= */
@keyframes px-sweep{0%{background-position:-70% 0,0 0}55%,100%{background-position:170% 0,0 0}}
@keyframes px-purple{0%{background-position:-70% 0,0 0,15px 9px,0 0,0% 0}45%{background-position:170% 0,-19px 13px,42px -8px,0 0,67% 0}100%{background-position:170% 0,-43px 29px,76px -28px,0 0,150% 0}}
@keyframes px-rim{0%{background-position:0 0}100%{background-position:150% 0}}
@keyframes px-fire{0%{background-position:0 0,12px 0,0 0}100%{background-position:76px 0,-46px 0,0 0}}
@keyframes px-glow{0%,100%{filter:drop-shadow(0 0 5px #b455ff77)}50%{filter:drop-shadow(0 0 15px #d17bffdd)}}
@keyframes px-jitter{0%{transform:translate(-1px,0)}100%{transform:translate(1px,1px)}}
@keyframes fire-glow{0%,100%{filter:drop-shadow(0 0 6px #ff6a0088)}50%{filter:drop-shadow(0 0 16px #ffae1acc)}}
@keyframes fire-flick{0%,100%{filter:brightness(1)}20%{filter:brightness(1.12)}40%{filter:brightness(.97)}60%{filter:brightness(1.18)}80%{filter:brightness(1.03)}}
@keyframes flame{0%,100%{transform:scaleY(.8) skewX(-3deg)}35%{transform:scaleY(1.15) skewX(4deg)}70%{transform:scaleY(.92) skewX(-2deg)}}
@keyframes ember{0%{opacity:0;transform:translate(0,0)}15%{opacity:1}100%{opacity:0;transform:translate(calc((var(--i) - 4)*5px),-48px)}}
@media(prefers-reduced-motion:reduce){.btn:after,.run-nav button:after,.home-back:after,.encounter-spin:after,.reel-battle:after,.skip-link:after,.btn:before,.run-nav button:before,.home-back:before,.encounter-spin:before,.reel-battle:before,.skip-link:before,.encounter-spin>span[aria-hidden],.machine-controls,.fire-btn,.fire-btn>.btn,.flames i,.flames b,.skip-money-icon,.rolling .encounter-spin{animation:none!important}.capture-win-fx .cw-p,.capture-win-fx .cw-ring,.capture-win-fx .cw-rays,.capture-win-fx .cw-flash{display:none}.wheel-wrap.celebrating .cw-banner{animation:none;opacity:1;transform:translate(-50%,-50%) scale(1)}}
@media(prefers-reduced-motion:reduce){.cw-rain,.capture-win-fx .cw-p,.capture-win-fx .cw-ring,.capture-win-fx .cw-rays,.capture-win-fx .cw-flash,.capture-win-fx .cw-tw{display:none}.capture-modal.cw-shake{animation:none}.wheel-wrap.celebrating .cw-stack{animation:none;opacity:1}.wheel-wrap.celebrating .cw-mon,.wheel-wrap.celebrating .cw-plate,.wheel-wrap.celebrating .cw-banner b,.wheel-wrap.celebrating .cw-sub{animation:none;opacity:1}}
/* cartas estreitas: os tipos viram só o ícone */
@media(max-width:640px){.card-copy .route-types .type{font-size:0;gap:0;padding:3px}.card-copy .route-types .type .type-sprite{margin:0;width:13px;height:13px}}
.capture-modal .upgrade-center{gap:5px;padding-top:8px;padding-bottom:8px}
@media(min-width:761px){.capture-modal .upgrade-center .wheel-wrap{margin-top:4px;margin-bottom:10px}}

/* ================= menu inicial ================= */
.home-menu-card{--accent:var(--menu-accent,#5fd4ff);--glow:#ffffff1c;--lip-a:var(--accent);--lip-b:#0a2a48;--face-a:#1b4c75;--face-b:#0d2a4a;--ink:#eef6ff;text-align:left;font-family:inherit}
.home-menu-card:after{background:radial-gradient(ellipse 50% 90% at 50% 50%,var(--glow),transparent 72%) no-repeat -30% 0/60% 100%,linear-gradient(var(--face-a),var(--face-b));animation:px-drift 9s ease-in-out infinite alternate}
.home-menu-card:hover:not(:disabled):after{--glow:#ffffff30}
.home-menu-card .home-menu-copy strong{color:var(--ink);text-shadow:0 1px 0 #0009}
.home-menu-card .home-menu-copy small{color:#a9c8e5}
.home-menu-card.dex-card{--accent:#5fd4ff;--lip-b:#0b3a58}
.home-menu-card.hall-card{--accent:#ffbf47;--lip-b:#6b4308;--face-a:#3f4a63;--face-b:#1f2c48}
.home-menu-card.vault-card{--accent:#ff8ad8;--lip-b:#5f1a52;--face-a:#4a3b7a;--face-b:#241b4c}
.home-menu-card.login-card{--accent:#72d9ff}
.home-menu-card.account-card{--accent:#83e4a2;--lip-b:#0f4a34;--face-a:#1f6a55;--face-b:#123a3a}
.home-menu-card.trade-card{--accent:#7e8ea3;--lip-a:#7e8ea3;--lip-b:#26313f;--face-a:#31435a;--face-b:#1b2839;animation:none}
.home-menu-card.trade-card:after{animation:none}
.home-menu-card.journey-card{--lip-a:#ffe7a0;--lip-b:#9a5f08;--face-a:#ffe9a6;--face-b:#dba22a;--ink:#09213c;--glow:#ffffff66}
.home-menu-card.journey-card:hover:not(:disabled):after{--glow:#ffffff88}
.home-menu-card.journey-card .home-menu-copy strong{text-shadow:none;letter-spacing:1px}
.home-menu-card.journey-card .home-menu-copy small{color:#21445c}
.home-account button{padding:4px 12px;font-size:9px;font-weight:900;letter-spacing:1px;--lip-a:#4b7399;--lip-b:#0b2138;--face-a:#1d456e;--face-b:#0f2c4b;--ink:#ffda76}
.home-window .home-menu-card:before,.home-window:not(.auth-active) .home-menu-card:before{left:2px;right:2px;top:2px;bottom:-1px;width:auto;height:auto;background:linear-gradient(var(--lip-a),var(--lip-b));box-shadow:none}
@keyframes px-drift{0%{background-position:-30% 0,0 0}100%{background-position:130% 0,0 0}}
@media(prefers-reduced-motion:reduce){.home-menu-card:after{animation:none}}

/* Pikachu anjinho e capetinha ao lado da roleta do upgrader */
.wheel-wrap>.wheel-mascot{position:absolute;z-index:2;top:50%;height:36%;display:block;translate:0 -50%;pointer-events:none;user-select:none;animation:mascot-float 2.6s ease-in-out infinite}
.wheel-mascot img{display:block;height:100%;width:auto;transform-origin:50% 90%;filter:drop-shadow(0 3px 0 #0007)}
.wheel-mascot.angel{right:calc(100% - 4px)}
.wheel-mascot.devil{left:calc(100% - 4px);height:32%;animation-delay:-1.3s}
.wheel.capture-win~.wheel-mascot.angel img{animation:angel-win 3.3s ease-in-out both}
.wheel.capture-win~.wheel-mascot.devil img{animation:devil-cower 3.3s ease-in-out both}
.wheel.capture-loss~.wheel-mascot.devil img{animation:devil-lose 2.3s ease-in-out both}
.wheel.capture-loss~.wheel-mascot.angel img{animation:angel-sad 2.3s ease-in-out both}
@keyframes mascot-float{0%,100%{translate:0 -50%}50%{translate:0 calc(-50% - 4px)}}
@keyframes angel-win{0%{transform:none}8%{transform:scale(1.14,.86)}22%{transform:translateY(-28px) scale(.92,1.14);filter:drop-shadow(0 0 12px #fff6a8) drop-shadow(0 3px 0 #0007)}34%{transform:translateY(-16px) rotate(-6deg) scale(1.06)}48%{transform:translateY(-20px) rotate(6deg) scale(1.08);filter:drop-shadow(0 0 16px #fff6a8) drop-shadow(0 3px 0 #0007)}62%{transform:translateY(-16px) rotate(-5deg) scale(1.06)}76%{transform:translateY(-20px) rotate(5deg) scale(1.08);filter:drop-shadow(0 0 16px #fff6a8) drop-shadow(0 3px 0 #0007)}90%{transform:translateY(-12px) scale(1.04)}100%{transform:none}}
@keyframes devil-cower{0%{transform:none}15%{transform:scale(.72) rotate(-10deg) translateY(6px);opacity:.6}85%{transform:scale(.72) rotate(-10deg) translateY(6px);opacity:.6}100%{transform:none;opacity:1}}
@keyframes devil-lose{0%{transform:none}10%{transform:scale(1.4) rotate(-8deg);filter:drop-shadow(0 0 14px #ff3b3b) drop-shadow(0 3px 0 #0007)}22%{transform:scale(1.35) rotate(9deg)}34%{transform:scale(1.4) rotate(-9deg)}46%{transform:scale(1.35) rotate(9deg)}58%{transform:scale(1.4) rotate(-8deg)}70%{transform:scale(1.35) rotate(8deg)}86%{transform:scale(1.3) rotate(0);filter:drop-shadow(0 0 12px #ff3b3b) drop-shadow(0 3px 0 #0007)}100%{transform:none}}
@keyframes angel-sad{0%{transform:none}14%{transform:translateY(8px) rotate(-8deg) scale(.9);filter:brightness(.7) drop-shadow(0 3px 0 #0007)}86%{transform:translateY(8px) rotate(-8deg) scale(.9);filter:brightness(.7) drop-shadow(0 3px 0 #0007)}100%{transform:none}}
@media(prefers-reduced-motion:reduce){.wheel-wrap>.wheel-mascot,.wheel-mascot img{animation:none!important}}

/* itens como sprite (nome fica na dica ao passar o mouse) */
.item-tag{display:inline-flex;align-items:center;justify-content:center;vertical-align:middle;line-height:1}
.item-tag .item-sprite{width:22px;height:22px;image-rendering:pixelated;object-fit:contain}
.item-tag.big .item-sprite{width:34px;height:34px}
.item-tag.prompt-item .item-sprite{width:24px;height:24px;margin:-6px 3px}
.card-copy small .item-tag .item-sprite{width:14px;height:14px;margin:-3px 0 -3px 2px}
.card-scan small .item-tag .item-sprite{width:14px;height:14px}
.biome-unlock-items{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}
.biome-unlock-items .unlock-item{padding:5px;background:#0c2946;border:1px solid #406686;box-shadow:inset 0 0 0 1px #04162c}
.biome-unlock-items .unlock-item .item-sprite{width:30px;height:30px}
.held-swap{display:flex!important;align-items:center;gap:6px}
.held-swap b{color:#f6d778;font-size:12px}
.held-swap .held-none{font-style:normal;font-size:8px;font-weight:900;letter-spacing:1px;color:#7f9bb8;padding:5px 6px;border:1px dashed #406686}
.held-swap .item-tag{padding:3px;background:#0c2946;border:1px solid #406686;box-shadow:inset 0 0 0 1px #04162c}
.held-item-slot{display:flex;align-items:center;gap:8px}
.partner-traits strong.held-item-slot{display:flex;min-height:0;padding:0;border:0;background:none;box-shadow:none}
.held-item-slot .item-tag{padding:4px;background:#0c2946;border:1px solid #406686;box-shadow:inset 0 0 0 1px #04162c}
.held-item-slot .item-tag .item-sprite{width:34px;height:34px}
.btn .item-sprite{display:inline-block;width:18px;height:18px;margin:-4px 5px -4px 0;vertical-align:middle;image-rendering:pixelated}
.passive-item .item-sprite,.bag-slot .item-sprite{width:30px;height:30px}
.battle-card-list{overflow-x:hidden}
.card-table .card-prompt{margin:10px 0 2px}
.card-table .card-actions{padding:6px 0 2px}

/* dica ao passar o mouse nos itens: nome + explicação */
.item-tip{position:fixed;z-index:70;display:none;max-width:min(270px,calc(100vw - 16px));padding:8px 11px 9px;color:#dfe9f7;font-size:10px;line-height:1.4;background:#08152b;border:2px solid #d3b565;box-shadow:0 0 0 2px #03102a,0 12px 28px #000c;pointer-events:none}
.item-tip.show{display:block;animation:tip-in .12s ease-out}
.item-tip header{display:flex;align-items:center;gap:7px;margin-bottom:5px}
.item-tip header .item-sprite{width:26px;height:26px;image-rendering:pixelated}
.item-tip header strong{font-size:11px;letter-spacing:.5px;color:#f6d778}
.item-tip p{margin:0;color:#b9d0e8}
[data-item-tip]{cursor:help}
[data-item-tip]:focus-visible{outline:2px solid #f6d778;outline-offset:2px}

/* ---- loja: saldo compacto na linha das abas, preço no canto do card ---- */
.shop-tabs{display:flex;align-items:center;flex-wrap:wrap;gap:6px}
.shop-balance{margin-left:auto;display:inline-flex;align-items:center;font-size:14px;font-weight:800;color:#ffda76}
.shop-item{position:relative}
.shop-price{position:absolute;top:8px;right:8px;display:inline-flex;align-items:center;font-size:11px;font-weight:900;color:#ffda76;padding:2px 6px;background:#0c2946;border:1px solid #406686;box-shadow:inset 0 0 0 1px #04162c}
.shop-preview-note{margin:0 0 10px;padding:7px 10px;font-size:10px;font-weight:800;letter-spacing:.6px;color:#a9d8ff;background:#0c2946;border:1px dashed #406686}
button.track-stop{padding:0;font:inherit;cursor:pointer;background:none;border:0}
.track-stop.shop-stop:hover .track-stop-tile,.track-stop.shop-stop:focus-visible .track-stop-tile{filter:brightness(1.25) drop-shadow(0 0 6px #ffd23f)}
.item-tip .tip-only{margin:0;font-weight:900;letter-spacing:.8px;color:#f6d778}

/* ---- Folha de Prata / Shiny Gem ---- */
.gift-note{display:flex;align-items:center;gap:10px;margin-top:12px;padding:8px 12px;background:#0c2946;border:1px solid #f6d778;box-shadow:inset 0 0 0 1px #04162c}
.gift-note>span{font-size:9px;font-weight:900;letter-spacing:2px;color:#f6d778}
.gift-note strong{display:block;font-size:12px;color:#fff}
.gift-note small{display:block;font-size:10px;color:#a9c8e5;line-height:1.35}
.gift-note .item-tag .item-sprite{width:34px;height:34px}
.gem-choice{display:grid;justify-items:center;gap:10px;text-align:center}
.gem-choice-art{position:relative;display:grid;place-items:center;width:150px;height:130px}
.gem-choice-art i{position:absolute;inset:0;background:radial-gradient(circle,#fff8c0cc,#7fe6ff55 45%,transparent 70%);animation:cw-pulse .8s ease-in-out infinite alternate}
.gem-choice-art .pixel{position:relative;width:120px;height:120px;object-fit:contain;filter:drop-shadow(0 0 8px #8fefff)}
.gem-choice h3{margin:0;color:#f6d778;letter-spacing:2px}
.gem-choice p{margin:0;font-size:12px;color:#c7dcf2}
.gem-choice-actions{display:grid;gap:8px;width:100%}
.gem-choice small{font-size:10px;color:#8fa8cf}

/* ---- telas de evento (loja, Pokémon Center, captura) ---- */
.evc-card{position:relative;display:grid;grid-template-columns:minmax(180px,.8fr) minmax(0,1.2fr);gap:0;align-items:stretch;margin-top:20px;min-height:340px;overflow:hidden;background:#061d38ef;border:2px solid #bf9b48;box-shadow:inset 0 0 0 3px #153b60}
.evc-art{position:relative;display:grid;place-items:center;overflow:hidden;background:radial-gradient(circle at 50% 55%,var(--ev-a,#1f5a92),var(--ev-b,#0a2447) 72%);border-right:2px solid #bf9b48}
.evc-card.shop{--ev-a:#7a5a14;--ev-b:#241a06}
.evc-card.center{--ev-a:#8a2a52;--ev-b:#2a0c1e}
.evc-card.capture{--ev-a:#1f7a4a;--ev-b:#082418}
.evc-glow{position:absolute;left:50%;top:52%;width:70%;aspect-ratio:1;translate:-50% -50%;border-radius:50%;background:radial-gradient(circle,#ffffff55,transparent 70%);animation:cw-pulse 1.8s ease-in-out infinite alternate}
.evc-art-img{position:relative;z-index:1;width:min(210px,78%);height:auto;image-rendering:pixelated;filter:drop-shadow(0 6px 0 #0007);animation:event-bob 3.2s ease-in-out infinite}
.evc-spark{position:absolute;z-index:2;color:#fff6a8;font-size:16px;text-shadow:0 0 8px #ffd23f;animation:lucky-twinkle 1.9s ease-in-out infinite}
.evc-spark.s1{left:16%;top:18%}.evc-spark.s2{right:18%;top:28%;animation-delay:.6s}.evc-spark.s3{left:24%;bottom:16%;animation-delay:1.1s}
.evc-body{display:flex;flex-direction:column;justify-content:center;gap:10px;padding:26px 28px;text-align:left}
.evc-body .eyebrow{color:#f6d778}
.evc-body h2{margin:0;font-size:26px;color:#fff}
.evc-body>p{margin:0;font-size:13px;line-height:1.5;color:#c7dcf2}
.evc-perks{display:grid;gap:7px;padding:10px 12px;background:#0a2447;border:1px solid #33557a}
.evc-perks-title{font-size:9px;font-weight:900;letter-spacing:2px;color:#8fc5ff}
.evc-perk-row,.evc-team{display:flex;flex-wrap:wrap;gap:8px}
.evc-perk{display:inline-flex;align-items:center;gap:6px;padding:4px 8px;background:#0c2946;border:1px solid #406686}
.evc-perk .item-sprite{width:26px;height:26px;image-rendering:pixelated}
.evc-perk b{font-size:11px;color:#ffda76}
.evc-mon{display:grid;justify-items:center;gap:3px;width:54px}
.evc-mon .pixel{width:48px;height:48px;object-fit:contain}
.evc-mon .hp{display:block;width:100%;height:5px;background:#06182c;border:1px solid #406686}
.evc-mon .hp span{display:block;height:100%;background:#12cf8d}
.evc-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:4px}
@keyframes event-bob{50%{transform:translateY(-8px)}}
@media(max-width:640px){.evc-card{grid-template-columns:1fr}.evc-art{min-height:160px;border-right:0;border-bottom:2px solid #bf9b48}.evc-body{padding:18px}.evc-body h2{font-size:21px}}
@media(prefers-reduced-motion:reduce){.evc-art-img,.evc-glow,.evc-spark{animation:none}}

/* ================= abas, chips e controles no estilo pixel ================= */
.dock-tabs button,.dock-manage,.speed-chip,.bag-tabs button,.sacrifice-tabs button,.auth-tabs button,.mp-btn,.music-toggle,.dex-chip{--line:#03102a;--lip-a:#4b7399;--lip-b:#0b2138;--face-a:#1d456e;--face-b:#0f2c4b;--ink:#d6e7f8;position:relative;isolation:isolate;border:0!important;border-bottom:3px solid transparent!important;border-radius:0!important;outline:0;background:var(--line)!important;box-shadow:none!important;color:var(--ink)!important;text-shadow:0 1px 0 #0009!important;clip-path:var(--px-o);transition:transform .12s,filter .15s}
.dock-tabs button:before,.dock-manage:before,.speed-chip:before,.bag-tabs button:before,.sacrifice-tabs button:before,.auth-tabs button:before,.mp-btn:before,.music-toggle:before,.dex-chip:before{content:'';position:absolute;z-index:-2;left:2px;right:2px;top:2px;bottom:-1px;background:linear-gradient(var(--lip-a),var(--lip-b));clip-path:var(--px-in);pointer-events:none}
.dock-tabs button:after,.dock-manage:after,.speed-chip:after,.bag-tabs button:after,.sacrifice-tabs button:after,.auth-tabs button:after,.mp-btn:after,.music-toggle:after,.dex-chip:after{content:'';position:absolute;z-index:-1;inset:3px;background:linear-gradient(var(--face-a),var(--face-b));box-shadow:inset 0 2px 0 #ffffff3a,inset 0 -2px 0 #0000002e;clip-path:var(--px-in);pointer-events:none}
.dock-tabs button:hover:not(:disabled),.dock-manage:hover:not(:disabled),.speed-chip:hover:not(:disabled),.bag-tabs button:hover:not(:disabled),.sacrifice-tabs button:hover:not(:disabled),.auth-tabs button:hover:not(:disabled),.mp-btn:hover:not(:disabled),.music-toggle:hover:not(:disabled),.dex-chip:hover:not(:disabled){transform:translateY(-1px);filter:brightness(1.1)}
.dock-tabs button:active:not(:disabled),.dock-manage:active:not(:disabled),.speed-chip:active:not(:disabled),.bag-tabs button:active:not(:disabled),.sacrifice-tabs button:active:not(:disabled),.auth-tabs button:active:not(:disabled),.mp-btn:active:not(:disabled),.music-toggle:active:not(:disabled),.dex-chip:active:not(:disabled){transform:translateY(2px);filter:none}
.dock-tabs button:focus-visible:after,.dock-manage:focus-visible:after,.speed-chip:focus-visible:after,.bag-tabs button:focus-visible:after,.sacrifice-tabs button:focus-visible:after,.auth-tabs button:focus-visible:after,.mp-btn:focus-visible:after,.music-toggle:focus-visible:after,.dex-chip:focus-visible:after{box-shadow:inset 0 0 0 2px #fff}
.dock-tabs button[aria-selected=true],.bag-tabs button.active,.bag-tabs button[aria-selected=true],.sacrifice-tabs button.active,.sacrifice-tabs button[aria-selected=true],.auth-tabs button.active,.speed-chip.active,.speed-chip[aria-pressed=true],.dex-chip.active{--lip-a:#ffe7a0;--lip-b:#9a5f08;--face-a:#ffe9a6;--face-b:#dba22a;--ink:#102239;text-shadow:none!important}
.music-toggle.music-on,.sfx-toggle.music-on{--ink:#ffda76}
.dock-tabs button,.bag-tabs button{padding-top:6px;padding-bottom:6px}
.speed-chip{min-height:24px}
.mp-btn,.music-toggle{min-height:28px}

/* ================= escolha do inicial ================= */
.menu-page:has(.pk-grid) .main{width:min(1000px,calc(100% - 24px))!important;max-width:1000px!important;margin:0 auto;padding:18px;display:flex;flex-direction:column;gap:14px;background:linear-gradient(145deg,#123354f5,#071b34f5);border:2px solid var(--ui-border);box-shadow:var(--ui-frame)}
.site-theme.menu-page:has(.pk-grid) .menu-top{width:min(1000px,calc(100% - 24px))!important;max-width:1000px!important}
.pk-intro{text-align:center}
.pk-intro .eyebrow{color:#f6d778}
.pk-intro h1{margin:6px 0;font-size:26px;letter-spacing:1px;color:#fff}
.pk-intro p{margin:0;font-size:13px;color:#a9c8e5}
.pk-lab{padding:8px 10px}
.gift-banner{justify-content:center}
.pk-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.pk-card{position:relative;overflow:hidden;display:flex;flex-direction:column;align-items:center;gap:10px;padding:14px 16px 18px;border:2px solid var(--pk-edge);background:linear-gradient(180deg,var(--pk-a),var(--pk-b));box-shadow:inset 0 0 0 2px #03102a,0 12px 26px #0009;transition:transform .2s,box-shadow .2s}
.pk-card:hover{transform:translateY(-5px);box-shadow:inset 0 0 0 2px #03102a,0 18px 32px #000a,0 0 22px var(--pk-glow)}
.pk-grass{--pk-a:#1e6a3a;--pk-b:#0a2418;--pk-edge:#6fd07a;--pk-glow:#8df35880}
.pk-fire{--pk-a:#8a3414;--pk-b:#2a0d06;--pk-edge:#ff9a4a;--pk-glow:#ffb54a80}
.pk-water{--pk-a:#1c58a0;--pk-b:#081b3c;--pk-edge:#6fb8ff;--pk-glow:#7fe6ff80}
.pk-scene{position:absolute;inset:0;pointer-events:none;overflow:hidden}
.pk-scene i{position:absolute;bottom:-14px;left:calc(var(--i)*11% + 3%);width:6px;height:6px;opacity:0;animation:pk-rise calc(3.4s + var(--i)*.35s) linear infinite;animation-delay:calc(var(--i)*-.7s)}
.pk-grass .pk-scene i{width:9px;height:9px;border-radius:0 100% 0 100%;background:#8df358;--sway:14px}
.pk-fire .pk-scene i{background:#ffb54a;box-shadow:0 0 8px #ff7a00;--sway:6px}
.pk-water .pk-scene i{width:9px;height:9px;border-radius:50%;border:2px solid #bfe9ff;background:#ffffff22;--sway:10px}
.pk-top{position:relative;z-index:1;display:flex;justify-content:space-between;align-self:stretch;font-size:10px;font-weight:900;letter-spacing:1.5px;color:#ffffffb0}
.pk-top b{padding:1px 6px;color:#102239;background:var(--pk-edge)}
.pk-portrait{position:relative;z-index:1;display:grid;place-items:center;width:100%;height:150px}
.pk-halo{position:absolute;left:50%;top:50%;width:150px;height:150px;translate:-50% -50%;border-radius:50%;background:radial-gradient(circle,var(--pk-glow),transparent 70%);animation:cw-pulse 2s ease-in-out infinite alternate}
.pk-anim{position:relative;width:128px;height:auto;image-rendering:pixelated;filter:drop-shadow(0 4px 0 #0008);animation:pk-hop 2.4s ease-in-out infinite}
.pk-shadow{position:absolute;left:50%;bottom:6px;width:90px;height:14px;translate:-50% 0;border-radius:50%;background:#0007}
.pk-card:hover .pk-anim{animation-duration:.8s}
.pk-info{position:relative;z-index:1;display:grid;gap:8px;justify-items:center;align-self:stretch}
.pk-info h2{margin:0;font-size:22px;color:#fff;text-shadow:0 2px 0 #000a}
.pk-types{display:flex;flex-wrap:wrap;justify-content:center;gap:5px}
.pk-stats{display:grid;gap:4px;width:100%;align-self:stretch;padding:8px;background:#03102a99;border:1px solid #ffffff22}
.pk-stats span{display:grid;grid-template-columns:38px 1fr;align-items:center;gap:6px}
.pk-stats small{font-size:8px;font-weight:900;letter-spacing:1px;color:#ffffffb8}
.pk-stats i{display:block;height:6px;background:#03102a;border:1px solid #ffffff30}
.pk-stats b{display:block;height:100%;background:var(--pk-edge)}
.pk-card>.btn{position:relative;z-index:1;margin-top:auto}
@keyframes pk-rise{0%{opacity:0;transform:translate(0,0)}12%{opacity:.9}100%{opacity:0;transform:translate(var(--sway,8px),-330px)}}
@keyframes pk-hop{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
@media(max-width:760px){.pk-grid{grid-template-columns:1fr}.pk-portrait{height:130px}}
@media(prefers-reduced-motion:reduce){.pk-scene i,.pk-halo,.pk-anim{animation:none}}

/* ================= login e cadastro ================= */
.auth-card{width:100%;max-width:430px;margin:12px auto 6px;padding:16px 18px 14px;background:linear-gradient(180deg,#0f2f52,#071a36);border:2px solid #bf9b48;box-shadow:inset 0 0 0 3px #153b60,0 12px 28px #0008}
.auth-hero{display:flex;align-items:center;gap:12px;margin:6px 0 12px}
.auth-ball{display:grid;place-items:center;flex:none;width:58px;height:58px;background:radial-gradient(circle,#2d6299,#0a2447);border:2px solid #f6d778;box-shadow:inset 0 0 0 2px #03102a}
.auth-ball .item-sprite{width:38px;height:38px;image-rendering:pixelated;animation:pk-hop 2s ease-in-out infinite}
.auth-hero .eyebrow{display:block;text-align:left;color:#f6d778}
.auth-hero h2{margin:2px 0 3px;text-align:left;font-size:19px;color:#fff}
.auth-lead{margin:0;font-size:11px;line-height:1.4;color:#a9c8e5}
.auth-card .auth-tabs{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:0 0 14px;border:0}
.auth-card .field{display:grid;gap:5px;margin-bottom:12px;font-size:10px;font-weight:900;letter-spacing:1.5px;color:#8fc5ff}
.auth-card .field input{width:100%;padding:11px 12px;font-size:14px;font-weight:700;letter-spacing:0;color:#fff;background:#04132a;border:2px solid #33557a;border-radius:0;box-shadow:inset 0 2px 0 #00000066;transition:border-color .15s,box-shadow .15s}
.auth-card .field input::placeholder{color:#5f7f9f}
.auth-card .field input:focus{outline:0;border-color:#f6d778;box-shadow:inset 0 2px 0 #00000066,0 0 0 2px #f6d77855}
.pass-wrap{position:relative;display:block}
.pass-wrap input{padding-right:74px!important}
.pass-toggle{position:absolute;right:6px;top:50%;translate:0 -50%;padding:5px 8px;font-size:9px;font-weight:900;letter-spacing:1px;color:#f6d778;background:#0c2946;border:1px solid #406686;cursor:pointer}
.pass-meter{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;margin-top:2px}
.pass-meter i{height:5px;background:#0c2946;border:1px solid #33557a}
.pass-meter[data-level="1"] i:nth-child(-n+1){background:#e74747}
.pass-meter[data-level="2"] i:nth-child(-n+2){background:#ff9d2d}
.pass-meter[data-level="3"] i:nth-child(-n+3){background:#ffe22d}
.pass-meter[data-level="4"] i{background:#8df358}
.auth-card .form-error{min-height:16px;margin-bottom:6px}
.auth-perks{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:14px 0 0;padding:0;list-style:none}
.auth-perks li{display:grid;justify-items:center;gap:4px;padding:8px 4px;text-align:center;font-size:9px;font-weight:900;letter-spacing:.6px;color:#c7dcf2;background:#0a2447;border:1px solid #33557a}
.auth-perks img{width:34px;height:34px;object-fit:contain;image-rendering:pixelated}
.auth-alt{display:grid;gap:8px;margin-top:12px;text-align:center}
.auth-or{display:flex;align-items:center;gap:10px;font-size:10px;font-weight:900;letter-spacing:3px;color:#a9c8e5}
.auth-or:before,.auth-or:after{content:'';flex:1;height:2px;background:#33557a}

/* ================= Pokédex e Shiny Dex ================= */
.dex-page{display:grid;gap:14px}
.dex-head{display:flex;flex-wrap:wrap;align-items:flex-end;gap:12px 20px}
.dex-head h2{margin:2px 0 0;font-size:24px;color:#fff}
.dex-head .eyebrow{color:#f6d778}
.dex-progress{flex:1;min-width:200px;display:grid;gap:5px;font-size:11px;font-weight:800;color:#c7dcf2}
.dex-bar{height:12px;background:#04132a;border:2px solid #33557a}
.dex-bar i{display:block;height:100%;background:linear-gradient(90deg,#2d9b6a,#8df358);transition:width .4s}
.is-shiny .dex-bar i{background:linear-gradient(90deg,#7fe6ff,#ff9be8,#ffe647)}
.dex-gems{display:inline-flex;align-items:center;gap:8px;padding:6px 12px;background:#0c2946;border:1px solid #7fe6ff;box-shadow:inset 0 0 0 1px #04162c}
.dex-gems .item-sprite{width:28px;height:28px;image-rendering:pixelated}
.dex-gems b{font-size:18px;color:#8fefff}
.dex-gems small{font-size:8px;font-weight:900;letter-spacing:1.5px;color:#a9c8e5}
.dex-tools{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.dex-tools input,.dex-tools select{padding:8px 10px;font-size:12px;color:#fff;background:#04132a;border:2px solid #33557a;border-radius:0}
.dex-tools input{flex:1;min-width:180px}
.dex-chips{display:flex;gap:6px}
.dex-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(112px,1fr));gap:10px}
.dex-card{position:relative;display:grid;justify-items:center;gap:3px;padding:8px 4px 8px;color:#dfe9f7;background:linear-gradient(#123456,#0a2038);border:1px solid #33557a;box-shadow:inset 0 0 0 1px #04162c;cursor:pointer;transition:transform .12s,border-color .12s}
.dex-card:hover{transform:translateY(-2px);border-color:#f6d778}
.dex-card .pixel{width:64px;height:64px;object-fit:contain}
.dex-card.unknown .pixel{filter:brightness(0) opacity(.45)}
.dex-card.unknown{color:#7f9bb8}
.dex-card.shiny.own{border-color:#7fe6ff;background:linear-gradient(#153a63,#0a2038)}
.dex-no{font-size:9px;font-weight:900;color:#8fa8cf}
.dex-card strong{font-size:11px}
.dex-types{display:flex;gap:3px}
.dex-type{display:block;width:10px;height:10px;border:1px solid #03102a;background:#8b8d7e}
.dex-type.fire{background:#e2571e}.dex-type.water{background:#3f87e8}.dex-type.electric{background:#d8a90d}.dex-type.grass{background:#4ca23a}.dex-type.ice{background:#5cbfc9}.dex-type.fighting{background:#b03a35}.dex-type.poison{background:#96409d}.dex-type.ground{background:#b08b45}.dex-type.flying{background:#8ba0e6}.dex-type.psychic{background:#e5567f}.dex-type.bug{background:#8fa31e}.dex-type.rock{background:#a99a58}.dex-type.ghost{background:#6a5a9b}.dex-type.dragon{background:#5a3fd0}.dex-type.dark{background:#5b4b40}.dex-type.steel{background:#8ba0ad}.dex-type.fairy{background:#e58fc3}
.dex-stack{position:absolute;top:4px;left:4px;padding:1px 5px;font-size:10px;font-weight:900;color:#102239;background:#8fefff}
.dex-star{position:absolute;top:3px;right:6px;font-style:normal;color:#8fefff;text-shadow:0 0 6px #7fe6ff}
.dex-empty{grid-column:1/-1;padding:24px;text-align:center;color:#8fa8cf}
.dex-detail{display:grid;grid-template-columns:150px 1fr;gap:16px;align-items:center}
.dex-detail-art{position:relative;display:grid;place-items:center;height:150px;background:radial-gradient(circle,#2d6299,#0a2447);border:2px solid #33557a}
.dex-detail-art .pixel{position:relative;width:120px;height:120px;object-fit:contain}
.dex-detail.unknown .pixel{filter:brightness(0) opacity(.5)}
.dex-detail-info h2{margin:2px 0 6px;color:#fff}
.dex-detail-types{display:flex;gap:6px;margin-bottom:8px}
.dex-stats{display:grid;gap:4px;margin-bottom:8px}
.dex-stats span{display:grid;grid-template-columns:42px 1fr 30px;align-items:center;gap:6px}
.dex-stats small{font-size:9px;font-weight:900;color:#8fa8cf}
.dex-stats i{display:block;height:7px;background:#04132a;border:1px solid #33557a}
.dex-stats b{display:block;height:100%;background:#8df358}
.dex-stats em{font-style:normal;font-size:11px;font-weight:800;color:#fff;text-align:right}
.dex-found{margin:4px 0 0;font-size:11px;color:#a9c8e5}
@media(max-width:560px){.dex-detail{grid-template-columns:1fr}.dex-grid{grid-template-columns:repeat(auto-fill,minmax(92px,1fr))}}

/* ================= menu de simulação ================= */
.sim-page{display:grid;gap:16px}
.sim-page h2{margin:2px 0 4px;color:#fff}
.sim-page header p{margin:0;font-size:12px;color:#a9c8e5}
.sim-page .eyebrow{color:#f6d778}
.sim-group h3{margin:0 0 8px;font-size:11px;letter-spacing:2px;color:#8fc5ff}
.sim-list{display:flex;flex-wrap:wrap;gap:8px}
.home-menu-card.sim-card{--accent:#c084fc;--lip-b:#3b1a66;--face-a:#4a2f80;--face-b:#231246}
.menu-page:has(.pk-grid) .main{flex:0 0 auto;height:auto;min-height:0}
.dex-chip{padding:8px 12px;font-size:10px;font-weight:900;letter-spacing:1px;cursor:pointer}
.dex-card .pixel{width:72px!important;height:72px!important;max-width:none}
.menu-page:has(.dex-page) .main,.menu-page:has(.sim-page) .main{width:min(940px,calc(100% - 24px))!important;max-width:940px!important;margin:0 auto}
.site-theme.menu-page:has(.dex-page) .menu-top,.site-theme.menu-page:has(.sim-page) .menu-top{width:min(940px,calc(100% - 24px))!important;max-width:940px!important}
.run-main>.evc-card{margin:auto 0}

/* ================= v72: captura sem planta, drop do elite, upgrader, inicial, fim de expedição ================= */

/* --- captura disponível: só os Pokémon encontrados --- */
.evc-card.capture .evc-art{display:flex;flex-wrap:wrap;align-content:center;justify-content:center;gap:8px 4px;padding:18px 10px}
.evc-foe{position:relative;z-index:1;display:grid;justify-items:center;gap:4px;margin:0;flex:0 1 46%;animation:event-bob 3.2s ease-in-out calc(var(--i)*-.7s) infinite}
.evc-foes.n1 .evc-foe{flex-basis:100%}
.evc-foe .evc-foe-img{width:112px!important;height:112px!important;max-width:100%;object-fit:contain;image-rendering:pixelated;filter:drop-shadow(0 5px 0 #0008)}
.evc-foes.n1 .evc-foe-img{width:170px!important;height:170px!important}
.evc-foes.n3 .evc-foe-img{width:92px!important;height:92px!important}
.evc-foe figcaption{display:grid;justify-items:center;gap:1px;padding:2px 9px;background:#04122ccc;border:1px solid #ffffff2b}
.evc-foe figcaption strong{font-size:11px;color:#fff}
.evc-foe figcaption small{font-size:9px;font-weight:900;letter-spacing:1px;color:#a9d8ff}

/* --- drop do elite dentro do upgrader --- */
.elite-drop{flex:0 1 auto;display:flex;align-items:center;gap:9px;max-width:min(470px,54%);margin:0 14px 0 auto;padding:3px 10px 3px 9px;background:linear-gradient(90deg,#3d2703,#7a4d08 50%,#3d2703);border:2px solid #ffcf4d;box-shadow:inset 0 0 0 2px #2b1a02,0 0 16px #ffb52a66;animation:ed-in .55s cubic-bezier(.3,1.5,.5,1) both,ed-glow 2.2s ease-in-out .6s infinite}
.elite-drop .ed-star{color:#ffe27a;font-size:18px;text-shadow:0 0 8px #ffb52a;animation:lucky-twinkle 1.6s ease-in-out infinite}
.elite-drop .ed-item{width:32px;height:32px;image-rendering:pixelated;object-fit:contain;filter:drop-shadow(0 2px 0 #0009)}
.elite-drop>div{display:grid;gap:1px;flex:1;min-width:0;text-align:left}
.elite-drop small{font-size:9px;font-weight:900;letter-spacing:1.5px;color:#ffe9a3}
.elite-drop strong{font-size:13px;color:#fff;text-shadow:0 1px 0 #000a}
.elite-drop em{font-style:normal;font-size:9px;font-weight:900;letter-spacing:1.5px;padding:4px 8px;color:#4a2300;background:linear-gradient(#fff3b0,#ffc61a)}
@keyframes ed-in{0%{opacity:0;transform:translateY(-16px) scale(.85)}100%{opacity:1;transform:none}}
@keyframes ed-glow{50%{box-shadow:inset 0 0 0 2px #2b1a02,0 0 26px #ffcf4dcc}}

/* --- roleta do upgrader: textura, brilho e órbita --- */
.capture-modal .wheel-wrap{--wheel-glow:#8df358}
.capture-modal .wheel-wrap:before{content:'';position:absolute;inset:-14px;z-index:-1;border-radius:50%;pointer-events:none;background:radial-gradient(circle,transparent 60%,color-mix(in srgb,var(--wheel-glow) 55%,transparent) 68%,transparent 76%);animation:wheel-halo 2.6s ease-in-out infinite}
.capture-modal .wheel{box-shadow:0 0 0 3px #4f5667,0 0 0 8px #090b12,0 18px 36px #0009,inset 0 0 0 2px #ffffff40,inset 0 0 16px #000a}
.capture-modal .wheel:before{content:'';position:absolute;inset:0;border-radius:50%;pointer-events:none;mix-blend-mode:overlay;background:radial-gradient(circle at 28% 20%,#ffffffb0,transparent 38%),repeating-conic-gradient(from 0deg,#ffffff5c 0 .8deg,transparent .8deg 7.5deg),repeating-linear-gradient(118deg,#ffffff1c 0 2px,transparent 2px 6px),radial-gradient(circle at 50% 50%,transparent 58%,#00000066 100%)}
.wheel-orbit{position:absolute;inset:-13px;z-index:1;pointer-events:none;animation:wheel-orbit 14s linear infinite}
.wheel-orbit i{position:absolute;inset:0;transform:rotate(var(--a))}
.wheel-orbit i:before{content:'';position:absolute;left:50%;top:0;width:6px;height:6px;margin-left:-3px;background:#fff6a8;box-shadow:0 0 8px #ffd23f,0 0 14px #ffd23f88;animation:lucky-twinkle 1.8s ease-in-out infinite}
.wheel-orbit i:nth-child(2n):before{width:4px;height:4px;margin-left:-2px;background:#bff3ff;box-shadow:0 0 8px #7fe6ff;animation-delay:.6s}
.wheel-wrap.spinning .wheel-orbit{animation-duration:2.4s}
@keyframes wheel-orbit{to{transform:rotate(360deg)}}
@keyframes wheel-halo{0%,100%{opacity:.55;transform:scale(.97)}50%{opacity:1;transform:scale(1.04)}}
.lucky-reveal.in-modal{position:absolute;inset:0;z-index:60;background:radial-gradient(circle,#03102acc,#020a1eee)}
.site-theme .modal.capture-modal{position:relative}

/* --- botão do santuário --- */
.raid-go-wrap{position:relative;display:inline-block;max-width:100%;margin-top:6px;animation:raid-glow 1.8s ease-in-out infinite}
.raid-go-wrap:before,.raid-go-wrap:after{content:'✦';position:absolute;top:50%;z-index:3;color:#fff6a8;font-size:16px;text-shadow:0 0 8px #ffd23f;pointer-events:none;animation:lucky-twinkle 1.7s ease-in-out infinite}
.raid-go-wrap:before{left:-20px;translate:0 -50%}.raid-go-wrap:after{right:-20px;translate:0 -50%;animation-delay:.8s}
.btn.raid-go{--lip-a:#fff1a8;--lip-b:#a34a00;--ink:#3a1700;display:inline-flex;align-items:center;justify-content:center;gap:12px;min-width:min(400px,100%);min-height:52px;padding:14px 26px;font-size:14px;font-weight:900;letter-spacing:2.4px;text-shadow:0 1px 0 #fff8c8!important;animation:none;color:#3a1700!important}
.btn.raid-go:before{background:linear-gradient(90deg,#fff6b8,#ffb52a,#ff7a1a,#ffb52a,#fff6b8) 0 0/300% 100% repeat-x;animation:px-rim 2.6s linear infinite}
.btn.raid-go:after{background:linear-gradient(105deg,transparent 42%,#ffffffd0 50%,transparent 58%) no-repeat -70% 0/40% 100%,radial-gradient(circle,#fff 0 1px,transparent 1.7px) 0 0/43px 29px,radial-gradient(circle,#fff8d0 0 1px,transparent 1.5px) 15px 9px/61px 37px,linear-gradient(#ffffff55,transparent 46%,#0000002e),linear-gradient(100deg,#ffd23f,#ffef8a,#ffb52a,#ffe65a,#ff9d1a,#ffef8a,#ffd23f) 0 0/300% 100% repeat-x;animation:px-purple 4.2s linear infinite}
.btn.raid-go .rg-star{font-size:1.1em;color:#fff;text-shadow:0 0 6px #fff,0 0 12px #ff9d1a!important;animation:lucky-twinkle 1.6s ease-in-out infinite}
.btn.raid-go .rg-label{position:relative}
.btn.raid-go .rg-chev{display:inline-flex;gap:2px}
.btn.raid-go .rg-chev i{display:block;width:8px;height:14px;background:#7a2f00;clip-path:polygon(0 0,60% 0,100% 50%,60% 100%,0 100%,40% 50%);animation:rg-chev 1.1s ease-in-out infinite}
.btn.raid-go .rg-chev i:nth-child(2){animation-delay:.15s}.btn.raid-go .rg-chev i:nth-child(3){animation-delay:.3s}
.btn.raid-go:hover:not(:disabled) .rg-chev i{animation-duration:.55s}
@keyframes rg-chev{0%,100%{opacity:.35;transform:translateX(-2px)}50%{opacity:1;transform:translateX(3px)}}
@keyframes raid-glow{0%,100%{filter:drop-shadow(0 0 8px #ffb52a88)}50%{filter:drop-shadow(0 0 22px #ffd23fdd)}}

/* --- escolha do inicial: partículas e botões temáticos --- */
.pk-scene i{left:calc(var(--i)*6.6% + 2%);bottom:-16px;animation-duration:calc(3.2s + var(--z)*.55s)}
.pk-scene i:nth-child(3n){width:4px;height:4px}
.pk-grass .pk-scene i:nth-child(3n){width:12px;height:12px}
.pk-fire .pk-scene i:nth-child(2n){width:4px;height:4px;box-shadow:0 0 6px #ffcf4d}
.pk-water .pk-scene i:nth-child(3n){width:14px;height:14px;border-width:2px}
.pk-scene b{position:absolute;left:var(--x);top:var(--y);width:9px;height:9px;background:var(--pk-edge);clip-path:polygon(50% 0,62% 38%,100% 50%,62% 62%,50% 100%,38% 62%,0 50%,38% 38%);opacity:0;animation:pk-glint 2.6s ease-in-out var(--dl) infinite}
.pk-scene:before{content:'';position:absolute;left:0;right:0;bottom:0;height:46%;background:linear-gradient(transparent,var(--pk-glow));opacity:.55;animation:pk-breathe 3.4s ease-in-out infinite alternate}
.pk-scene:after{content:'';position:absolute;top:-20%;left:-60%;width:40%;height:140%;background:linear-gradient(100deg,transparent,#ffffff26,transparent);transform:skewX(-14deg);animation:pk-beam 6s ease-in-out infinite}
.pk-fire .pk-scene:before{background:linear-gradient(transparent,#ff7a1a99);animation-duration:1.6s}
.pk-water .pk-scene:before{background:repeating-linear-gradient(0deg,#7fe6ff30 0 3px,transparent 3px 9px),linear-gradient(transparent,#3d9bff66)}
@keyframes pk-glint{0%,100%{opacity:0;transform:scale(.3) rotate(0)}50%{opacity:1;transform:scale(1.25) rotate(45deg)}}
@keyframes pk-breathe{to{opacity:.95;transform:translateY(-4px)}}
@keyframes pk-beam{0%,55%{left:-60%}100%{left:130%}}
.pk-card:hover .pk-halo{width:190px;height:190px}
.pk-go-wrap{position:relative;align-self:stretch;margin-top:auto;z-index:1;animation:pk-go-glow 2.4s ease-in-out infinite}
.pk-go-wrap .btn.pk-go{width:100%;margin:0}
.pk-grass{--g1:#2fae4e;--g2:#7be26a;--g3:#1a8a3a;--rim1:#d8ffa0;--rim2:#3fc257}
.pk-fire{--g1:#e8541a;--g2:#ffb13d;--g3:#b82a08;--rim1:#fff0a0;--rim2:#ff7a1a}
.pk-water{--g1:#2a7fe0;--g2:#5ed0ff;--g3:#1a4fb0;--rim1:#e0fbff;--rim2:#4aa8ff}
.btn.pk-go{--lip-a:var(--rim1);--lip-b:var(--g3);--ink:#fff;display:flex;align-items:center;justify-content:center;gap:10px;min-height:46px;font-size:12px;font-weight:900;letter-spacing:1.6px;text-shadow:0 2px 0 #00000088!important}
.btn.pk-go:before{background:linear-gradient(90deg,var(--rim1),var(--rim2),var(--rim1),var(--rim2),var(--rim1)) 0 0/300% 100% repeat-x;animation:px-rim 3s linear infinite}
.btn.pk-go:after{background:linear-gradient(105deg,transparent 42%,#ffffffc0 50%,transparent 58%) no-repeat -70% 0/40% 100%,radial-gradient(circle,#fff 0 1px,transparent 1.7px) 0 0/43px 29px,radial-gradient(circle,#ffffffcc 0 1px,transparent 1.5px) 15px 9px/61px 37px,linear-gradient(#ffffff3d,transparent 46%,#0000003a),linear-gradient(100deg,var(--g1),var(--g2),var(--g3),var(--g2),var(--g1),var(--g3),var(--g1)) 0 0/300% 100% repeat-x;animation:px-purple 5s linear infinite}
.btn.pk-go .pk-go-spark{color:#fff;text-shadow:0 0 6px #fff,0 0 12px var(--rim2)!important;animation:lucky-twinkle 1.6s ease-in-out infinite}
.btn.pk-go .pk-go-arrow{font-size:.85em;transition:transform .18s}
.btn.pk-go:hover:not(:disabled) .pk-go-arrow{transform:translateX(5px)}
.pk-fizz{position:absolute;z-index:3;color:#fff;font-size:14px;text-shadow:0 0 8px var(--pk-edge);opacity:0;pointer-events:none}
.pk-fizz.f1{left:6%;top:-8px}.pk-fizz.f2{right:8%;top:-10px}.pk-fizz.f3{left:46%;top:-14px}
.pk-card:hover .pk-fizz{animation:pk-fizz 1s ease-out infinite}
.pk-card:hover .pk-fizz.f2{animation-delay:.3s}.pk-card:hover .pk-fizz.f3{animation-delay:.6s}
@keyframes pk-fizz{0%{opacity:0;transform:translateY(8px) scale(.5)}40%{opacity:1}100%{opacity:0;transform:translateY(-22px) scale(1.2) rotate(40deg)}}
@keyframes pk-go-glow{0%,100%{filter:drop-shadow(0 0 4px var(--pk-glow))}50%{filter:drop-shadow(0 0 14px var(--pk-glow))}}
@media(prefers-reduced-motion:reduce){.pk-scene b,.pk-scene:before,.pk-scene:after,.pk-go-wrap,.raid-go-wrap,.raid-go-wrap:before,.raid-go-wrap:after,.rg-chev i,.wheel-orbit,.wheel-orbit i:before,.capture-modal .wheel-wrap:before,.elite-drop,.evc-foe{animation:none!important}}

/* --- fim da expedição --- */
.site-theme.menu-page .main:has(.oc){max-width:760px;overflow-y:auto;overflow-x:hidden;max-height:calc(100dvh - 76px);border:0}
.site-theme .outcome.oc{--oc-a:#7fb8ff;--oc-b:#8a6bff;--oc-bg:#2a3f8c;position:relative;overflow:hidden;text-align:center!important;background:radial-gradient(ellipse at 50% 0,var(--oc-bg) 0,#0a2646 46%,#051429 100%)!important;border:2px solid var(--oc-a)!important;box-shadow:inset 0 0 0 3px #0a2a4a,0 0 0 1px #03102a,0 0 30px color-mix(in srgb,var(--oc-a) 40%,transparent)!important;animation:oc-frame 2.8s ease-in-out infinite}
.site-theme .outcome.oc:before{height:5px;background:linear-gradient(90deg,var(--oc-b),var(--oc-a),var(--oc-b))}
.site-theme .outcome.oc.oc-win{--oc-a:#ffd23f;--oc-b:#ff9d1a;--oc-bg:#4a5a12}
.site-theme .outcome.oc.oc-escaped{--oc-a:#ff8a5c;--oc-b:#d13b2a;--oc-bg:#6a2a1a}
.site-theme .outcome.oc.oc-ended{--oc-a:#7fb8ff;--oc-b:#8a6bff;--oc-bg:#2a3f8c}
@keyframes oc-frame{50%{box-shadow:inset 0 0 0 3px #0a2a4a,0 0 0 1px #03102a,0 0 46px color-mix(in srgb,var(--oc-a) 65%,transparent)}}
.oc-fx{position:absolute;inset:0;z-index:1;overflow:hidden;pointer-events:none}
.oc-tw{position:absolute;color:#fff6a8;font-style:normal;font-size:var(--sz);text-shadow:0 0 8px var(--oc-a);animation:lucky-twinkle 2.2s ease-in-out var(--dl) infinite}
.oc-pt{position:absolute;bottom:-10px;left:var(--x);width:4px;height:4px;background:var(--oc-a);box-shadow:0 0 8px var(--oc-a);opacity:0;animation:oc-rise var(--du) linear var(--dl) infinite}
@keyframes oc-rise{0%{opacity:0;transform:translate(0,0)}12%{opacity:.9}100%{opacity:0;transform:translate(var(--sw),-620px)}}
.oc-hero{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;gap:8px;padding:24px 24px 14px}
.oc-stage{position:relative;display:grid;place-items:center;width:190px;height:150px;margin-bottom:4px}
.oc-halo{position:absolute;left:50%;top:50%;width:180px;height:180px;translate:-50% -50%;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--oc-a) 65%,transparent),transparent 68%);animation:cw-pulse 1.8s ease-in-out infinite alternate}
.oc-rays{position:absolute;left:50%;top:50%;width:460px;height:460px;margin:-230px 0 0 -230px;background:repeating-conic-gradient(color-mix(in srgb,var(--oc-a) 34%,transparent) 0 7deg,transparent 7deg 20deg);-webkit-mask:radial-gradient(circle,#000 0,transparent 66%);mask:radial-gradient(circle,#000 0,transparent 66%);animation:oc-spin 30s linear infinite}
.oc-ring{position:absolute;left:50%;top:50%;width:96px;height:96px;margin:-48px 0 0 -48px;border:3px solid var(--oc-a);border-radius:50%;opacity:0;animation:oc-ring 2.8s ease-out infinite}
.oc-ring.r2{animation-delay:1.4s}
.oc-orbit{position:absolute;left:50%;top:50%;width:176px;height:176px;margin:-88px 0 0 -88px;pointer-events:none;animation:oc-spin 10s linear infinite}
.oc-orbit i{position:absolute;inset:0;transform:rotate(var(--a))}
.oc-orbit i:before{content:'✦';position:absolute;left:50%;top:-4px;margin-left:-7px;font-size:14px;line-height:1;color:#fff6a8;text-shadow:0 0 8px var(--oc-a);animation:lucky-twinkle 1.6s ease-in-out infinite}
.oc-orbit i:nth-child(2n):before{content:'✧';font-size:12px;animation-delay:.5s}
.oc-shadow{position:absolute;left:50%;bottom:8px;width:96px;height:14px;translate:-50% 0;border-radius:50%;background:#0008}
.site-theme .outcome.oc .oc-mon{position:relative;z-index:2;width:128px!important;height:128px!important;object-fit:contain;image-rendering:pixelated;filter:drop-shadow(0 4px 0 #000a) drop-shadow(0 0 14px color-mix(in srgb,var(--oc-a) 70%,transparent));animation:oc-pop .7s cubic-bezier(.3,1.6,.5,1) .1s both}
.oc-win .oc-mon,.oc-escaped .oc-mon{animation:oc-pop .7s cubic-bezier(.3,1.6,.5,1) .1s both,oc-hop 2.2s ease-in-out .9s infinite}
.oc-escaped .oc-mon{filter:drop-shadow(0 4px 0 #000a) drop-shadow(0 0 14px #ff5a3a99) saturate(.85)}
.oc-ended .pikachu-dance{animation:oc-pop .7s cubic-bezier(.3,1.6,.5,1) .1s both,pikachu-dance .72s steps(2,end) .8s infinite;transform-origin:50% 82%}
.oc-eyebrow{display:inline-block;padding:5px 14px;font-size:10px;font-weight:900;letter-spacing:2px;color:#0a2039;background:linear-gradient(var(--oc-a),var(--oc-b));clip-path:var(--px-o);animation:oc-pop .5s cubic-bezier(.3,1.6,.5,1) .2s both}
.site-theme .outcome.oc .oc-title{margin:4px 0 0!important;font-size:clamp(24px,4.6vw,38px)!important;line-height:1.12;letter-spacing:1px;color:#fff;text-shadow:none}
.oc-word{display:inline-block;white-space:nowrap}
.oc-title b{display:inline-block;font-weight:900;color:transparent;background:linear-gradient(#fffbd0,var(--oc-a) 55%,var(--oc-b));-webkit-background-clip:text;background-clip:text;filter:drop-shadow(0 3px 0 #000b);animation:oc-letter .55s cubic-bezier(.3,1.7,.5,1) calc(.3s + var(--k)*.035s) both}
.oc-win .oc-title b{animation:oc-letter .55s cubic-bezier(.3,1.7,.5,1) calc(.3s + var(--k)*.035s) both,oc-hop 1.6s ease-in-out calc(1.6s + var(--k)*.05s) infinite}
.site-theme .outcome.oc .oc-msg{max-width:520px;margin:2px auto 0!important;font-size:13px;line-height:1.55;color:#c9def3!important;animation:oc-pop .5s ease-out .6s both}
.oc-gift{position:relative;width:100%;max-width:470px;margin-top:12px;padding:18px 14px 12px;background:linear-gradient(#123c62,#0a2543);border:2px solid #f6d778;box-shadow:inset 0 0 0 2px #04162c,0 0 22px #ffd23f55;animation:oc-pop .6s cubic-bezier(.3,1.6,.5,1) .9s both,oc-glow 2.2s ease-in-out 1.6s infinite}
.oc-gift-tag{position:absolute;left:50%;top:-11px;translate:-50% 0;padding:3px 12px;font-size:9px;font-weight:900;letter-spacing:2px;white-space:nowrap;color:#4a2300;background:linear-gradient(#fff3b0,#ffc61a)}
.oc-gift-body{display:flex;align-items:center;justify-content:center;gap:14px;text-align:left}
.oc-gift .item-tag.big .item-sprite{width:46px;height:46px;margin:0;filter:drop-shadow(0 0 8px #d9f2ff);animation:oc-float 2.2s ease-in-out infinite}
.oc-gift strong{display:block;font-size:14px;color:#fff}
.oc-gift small{display:block;max-width:290px;font-size:10px;line-height:1.4;color:#a9c8e5}
@keyframes oc-glow{50%{box-shadow:inset 0 0 0 2px #04162c,0 0 34px #ffd23fbb}}
.oc-stats{position:relative;z-index:2;display:grid;grid-template-columns:1fr 1fr 1.4fr;gap:10px;padding:8px 22px 14px}
.oc-stat{position:relative;overflow:hidden;display:grid;align-content:center;gap:3px;justify-items:center;min-height:82px;padding:10px 8px;background:linear-gradient(#0f3357,#082140);border:2px solid #33628f;box-shadow:inset 0 0 0 2px #04162c;animation:oc-pop .5s cubic-bezier(.3,1.6,.5,1) calc(1s + var(--n,0)*.14s) both}
.oc-stat>span{font-size:9px;font-weight:900;letter-spacing:2px;color:#9fc4e8}
.oc-stat>strong{font-size:26px;line-height:1.1;color:#fff;text-shadow:0 2px 0 #000a}
.oc-stat>small{font-size:10px;color:#9fc4e8}
.oc-result{border-color:var(--oc-a)}
.oc-result>strong{font-size:14px;letter-spacing:1px;color:var(--oc-a)}
.oc-result:after{content:'';position:absolute;top:0;bottom:0;left:-60%;width:40%;background:linear-gradient(100deg,transparent,#ffffff40,transparent);transform:skewX(-16deg);animation:pk-beam 3.6s ease-in-out 1.6s infinite}
.oc .outcome-naming{position:relative;z-index:2;margin:0 22px 12px;text-align:left}
.oc-next{position:relative;z-index:2;display:grid;justify-items:center;gap:10px;padding:14px 22px 22px;border-top:1px solid #ffffff1f;background:linear-gradient(transparent,#03102a80)}
.site-theme .outcome.oc .oc-next p{margin:0!important;max-width:none;font-size:11px;line-height:1.4;color:#a9c8e5!important}
.oc-cta{animation:oc-pop .5s cubic-bezier(.3,1.6,.5,1) 1.5s both,raid-glow 1.9s ease-in-out 2s infinite}
.oc-cta .btn{min-width:min(340px,100%);min-height:46px;font-size:12px;letter-spacing:1.6px}
.oc-cta .btn>span[aria-hidden]{display:inline-block;animation:lucky-twinkle 1.6s ease-in-out infinite}
.oc-cta .btn>span[aria-hidden]:last-child{animation-delay:.8s}
@keyframes oc-letter{0%{opacity:0;transform:translateY(26px) scale(.3) rotate(-14deg)}100%{opacity:1;transform:none}}
@keyframes oc-pop{0%{opacity:0;transform:scale(.4)}100%{opacity:1;transform:none}}
@keyframes oc-hop{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}
@keyframes oc-float{50%{transform:translateY(-4px) rotate(4deg)}}
@keyframes oc-spin{to{transform:rotate(360deg)}}
@keyframes oc-ring{0%{opacity:.9;transform:scale(.4)}100%{opacity:0;transform:scale(2.7)}}
@media(max-width:560px){.oc-stats{grid-template-columns:1fr 1fr;padding:6px 12px 12px}.oc-result{grid-column:1/-1}.oc-hero{padding:18px 12px 10px}.oc-stage{width:150px;height:126px}.site-theme .outcome.oc .oc-mon{width:104px!important;height:104px!important}.oc-gift-body{flex-direction:column;text-align:center}.oc-next{padding:12px 12px 18px}.oc .outcome-naming{margin:0 12px 10px}}
@media(prefers-reduced-motion:reduce){.oc,.oc *{animation:none!important}}

@media(max-width:760px){.elite-drop{max-width:60%;margin:0 8px 0 auto;padding:2px 6px}.elite-drop em,.elite-drop .ed-star{display:none}.elite-drop small{font-size:7px;letter-spacing:.5px}.elite-drop strong{font-size:11px}.elite-drop .ed-item{width:24px;height:24px}}

/* ================= v73: botões sem reflexo e efeitos mais lentos; CTA azul cósmico ================= */
.btn.pk-go{text-shadow:0 1px 0 #0006!important}
.btn.pk-go:before{animation-duration:6s}
.btn.pk-go:after{background:linear-gradient(#0000,#0000) no-repeat 0 0/1px 1px,radial-gradient(circle,#fff 0 1px,transparent 1.7px) 0 0/43px 29px,radial-gradient(circle,#ffffffcc 0 1px,transparent 1.5px) 15px 9px/61px 37px,linear-gradient(#0000,#0000002e),linear-gradient(100deg,var(--g1),var(--g2),var(--g3),var(--g2),var(--g1),var(--g3),var(--g1)) 0 0/300% 100% repeat-x;box-shadow:inset 0 -2px 0 #0000002e;animation-duration:11s}
.btn.pk-go .pk-go-spark{animation-duration:3s}
.pk-go-wrap{animation-duration:4s}
.btn.raid-go{text-shadow:none!important}
.btn.raid-go:before{animation-duration:5.5s}
.btn.raid-go:after{background:linear-gradient(#0000,#0000) no-repeat 0 0/1px 1px,radial-gradient(circle,#fff 0 1px,transparent 1.7px) 0 0/43px 29px,radial-gradient(circle,#fff8d0 0 1px,transparent 1.5px) 15px 9px/61px 37px,linear-gradient(#0000,#0000002e),linear-gradient(100deg,#ffd23f,#ffef8a,#ffb52a,#ffe65a,#ff9d1a,#ffef8a,#ffd23f) 0 0/300% 100% repeat-x;box-shadow:inset 0 -2px 0 #0000002e;animation-duration:10s}
.btn.raid-go .rg-star{animation-duration:3s}
.btn.raid-go .rg-chev i{animation-duration:2s}
.btn.raid-go:hover:not(:disabled) .rg-chev i{animation-duration:1.1s}
.raid-go-wrap{animation-duration:3.6s}
.raid-go-wrap:before,.raid-go-wrap:after{animation-duration:3.2s}
/* botão final: azul cósmico, sem brilho de reflexo */
.site-theme .oc-cta .btn.primary{--lip-a:#93a9ff;--lip-b:#121a58;--face-a:#3b49bb;--face-b:#161d69;--ink:#eef2ff;color:#eef2ff!important;text-shadow:0 1px 0 #070b33!important}
.site-theme .oc-cta .btn.primary:before{background:linear-gradient(#93a9ff,#121a58);animation:none}
.site-theme .oc-cta .btn.primary:after{background:radial-gradient(circle,#ffffffa0 0 1px,transparent 1.6px) 0 0/41px 27px,radial-gradient(circle,#c9d4ff88 0 1px,transparent 1.4px) 17px 11px/59px 35px,linear-gradient(#0000,#00000030),linear-gradient(115deg,#2c3aa8,#4a3fb8 45%,#2a4fc4 70%,#1a2170);box-shadow:inset 0 -2px 0 #0000003a;animation:none}
.oc-cta{animation:oc-pop .5s cubic-bezier(.3,1.6,.5,1) 1.5s both,cta-glow 3.6s ease-in-out 2s infinite}
.oc-cta .btn>span[aria-hidden]{animation-duration:3s}
@keyframes cta-glow{0%,100%{filter:drop-shadow(0 0 8px #5b6cffaa)}50%{filter:drop-shadow(0 0 20px #8fa6ffdd)}}

/* ================= v74: cards do inicial sem reflexo; sombra atrás do Pokémon ================= */
.pk-scene:after{display:none}
.pk-halo{z-index:0}
.pk-shadow{z-index:0}
.pk-anim{z-index:1}

/* ================= v75: filtros da Dex, Desafio, dicas do inicial ================= */

/* --- filtros da Pokédex e da Shiny Dex --- */
.dex-tools{display:flex;flex-wrap:wrap;align-items:flex-end;gap:10px 16px;padding:12px 14px 14px;background:linear-gradient(#0d2c4d,#071c36);border:2px solid #33628f;box-shadow:inset 0 0 0 2px #04162c,0 6px 14px #0006}
.dex-field{display:grid;gap:5px;margin:0;min-width:0}
.dex-field>span{font-size:9px;font-weight:900;letter-spacing:2px;color:#8fc5ff}
.dex-find{flex:1 1 210px}
.dex-tools .dex-field input,.dex-tools .dex-field select{width:100%;height:38px;padding:0 12px;font-weight:800;font-size:12px;font-family:inherit;color:#fff;background-color:#04132a;border:2px solid #33557a;border-radius:0;outline:0;box-shadow:inset 0 3px 0 #00000070,inset 0 -1px 0 #ffffff14;transition:border-color .15s,box-shadow .15s}
.dex-tools .dex-field input{padding-left:36px;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'><path d='M6 1h4v1h2v2h1v4h-1v2h-2v1H6v-1H4V8H3V4h1V2h2z' fill='none' stroke='%23f6d778' stroke-width='1.6'/><path d='M10 10l4 4' stroke='%23f6d778' stroke-width='2'/></svg>");background-repeat:no-repeat;background-position:11px 50%}
.dex-tools .dex-field select{min-width:150px;padding-right:34px;cursor:pointer;-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'><path d='M1 1l5 5 5-5' fill='none' stroke='%23f6d778' stroke-width='2'/></svg>"),linear-gradient(90deg,#04132a,#0a2444);background-repeat:no-repeat;background-position:right 12px center,0 0}
.dex-tools .dex-field input::placeholder{color:#7f9dbd;font-weight:700}
.dex-tools .dex-field input:hover,.dex-tools .dex-field select:hover{border-color:#5f8fc2}
.dex-tools .dex-field input:focus,.dex-tools .dex-field select:focus{border-color:#f6d778;box-shadow:inset 0 3px 0 #00000070,0 0 0 2px #f6d77840}
.dex-tools select option{background:#071c36;color:#fff}
.dex-tools .dex-chips{display:flex;flex-wrap:wrap;gap:6px}
.dex-tools .dex-chip{min-height:38px}
.dex-clear{--lip-a:#ff9c8a;--lip-b:#6b1d15;--face-a:#a8352a;--face-b:#651a13;--ink:#fff;align-self:flex-end}
@media(max-width:760px){.dex-tools{gap:10px}.dex-find,.dex-show{flex:1 1 100%}.dex-tools .dex-field select{min-width:0}.dex-tools label.dex-field:not(.dex-find){flex:1 1 130px}}

/* --- Desafio e dicas, abaixo dos parceiros --- */
.pk-extra{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:16px;margin-top:16px}
.pk-challenge{--pk-a:#4b1a7a;--pk-b:#150826;--pk-edge:#c58bff;--pk-glow:#c58bff88;--g1:#7c3aed;--g2:#c084fc;--g3:#4c1d95;--rim1:#f0dcff;--rim2:#a855f7;position:relative;overflow:hidden;display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-areas:'art copy' 'art go';gap:6px 16px;align-items:center;padding:14px 18px;background:linear-gradient(135deg,var(--pk-a),var(--pk-b));border:2px solid var(--pk-edge);box-shadow:inset 0 0 0 2px #03102a,0 12px 26px #0009}
.pk-challenge:before{content:'';position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 12% 50%,#c58bff44,transparent 55%),repeating-linear-gradient(135deg,#ffffff08 0 8px,transparent 8px 16px)}
.pkc-art{grid-area:art;position:relative;display:grid;place-items:center;width:96px;height:96px}
.pkc-ball{position:relative;z-index:1;width:76px;height:76px;image-rendering:pixelated;filter:drop-shadow(0 4px 0 #0008);animation:pkc-wobble 3.6s ease-in-out infinite}
.pkc-art b{position:absolute;z-index:2;right:2px;bottom:6px;display:grid;place-items:center;width:28px;height:28px;font-size:18px;color:#2b0a5c;background:linear-gradient(#fff3b0,#ffc61a);border:2px solid #4a2300;box-shadow:2px 2px 0 #000a}
.pkc-s{position:absolute;font-style:normal;color:#fff;text-shadow:0 0 8px #c58bff;animation:lucky-twinkle 3s ease-in-out infinite}
.pkc-s.s1{left:0;top:6px}.pkc-s.s2{right:0;top:0;animation-delay:1s}.pkc-s.s3{left:6px;bottom:0;animation-delay:2s}
.pkc-copy{grid-area:copy;position:relative;z-index:1;display:grid;gap:3px}
.pkc-copy .eyebrow{color:#e2c4ff}
.pkc-copy h2{margin:0;font-size:24px;letter-spacing:3px;color:#fff;text-shadow:0 2px 0 #000a}
.pkc-copy p{margin:0;font-size:12px;line-height:1.45;color:#d9c6f2}
.pkc-copy strong{color:#ffd23f}
.pk-challenge .pkc-go{grid-area:go;position:relative;z-index:1;margin:6px 0 0;align-self:end}
@keyframes pkc-wobble{0%,100%{transform:rotate(0)}10%{transform:rotate(-9deg)}20%{transform:rotate(8deg)}30%{transform:rotate(-5deg)}40%,100%{transform:rotate(0)}}
.pk-tips{position:relative;display:flex;flex-direction:column;gap:8px;padding:14px 16px;background:linear-gradient(#0d2c4d,#071c36);border:2px solid #33628f;box-shadow:inset 0 0 0 2px #04162c,0 12px 26px #0009}
.pk-tips header{display:flex;align-items:center;justify-content:space-between;gap:10px}
.pk-tips .eyebrow{color:#f6d778}
.pkt-next{padding:4px 8px;font-size:9px;font-weight:900;letter-spacing:1.5px;color:#9fc4e8;background:transparent;border:1px solid #33628f;cursor:pointer}
.pkt-next:hover{color:#fff;border-color:#f6d778}
.pkt-body{flex:1;display:flex;flex-direction:column;justify-content:space-between;gap:10px;padding:10px 12px;background:#04132a;border-left:3px solid #f6d778}
.pkt-body p{margin:0;font-size:13px;line-height:1.55;color:#dcebfa}
.pkt-dots{display:flex;flex-wrap:wrap;gap:4px}
.pkt-dots i{width:6px;height:6px;background:#1d456e}
.pkt-dots i.on{background:#f6d778;box-shadow:0 0 6px #f6d778}
@media(max-width:860px){.pk-extra{grid-template-columns:1fr}}
@media(max-width:520px){.pk-challenge{grid-template-columns:1fr;grid-template-areas:'art' 'copy' 'go';justify-items:center;text-align:center}}
@media(prefers-reduced-motion:reduce){.pkc-ball,.pkc-s{animation:none!important}}
.challenge-tag{display:inline-block;margin:4px 0 2px;padding:3px 8px;font-size:9px;font-weight:900;letter-spacing:1.5px;color:#2b0a5c;background:linear-gradient(#f0dcff,#a855f7)}

/* --- revelação do Desafio --- */
.cr-overlay{position:fixed;inset:0;z-index:300;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;cursor:pointer;overflow:hidden;background:radial-gradient(ellipse at 50% 42%,#12295a 0,#060f2a 62%,#02060f 100%);animation:cr-in .35s ease-out both}
.cr-overlay.leaving{opacity:0;transition:opacity .35s}
.cr-overlay.shiny{background:radial-gradient(ellipse at 50% 42%,#3a2c66 0,#0d0a2e 62%,#03030f 100%)}
@keyframes cr-in{from{opacity:0}}
.cr-flash{position:absolute;inset:0;z-index:5;pointer-events:none;background:#fff;opacity:0;animation:cr-flash .9s ease-out 1.3s both}
.shiny .cr-flash{background:radial-gradient(circle,#fff 0,#ffe27a 45%,#ffb52a 100%);animation-duration:1.3s}
@keyframes cr-flash{0%{opacity:0}12%{opacity:.85}100%{opacity:0}}
.cr-stage{position:relative;flex:none;width:340px;height:290px}
.cr-rays{position:absolute;left:50%;top:60%;width:640px;height:640px;margin:-320px 0 0 -320px;opacity:0;background:repeating-conic-gradient(#9fd0ff40 0 6deg,transparent 6deg 18deg);-webkit-mask:radial-gradient(circle,#000 0,transparent 62%);mask:radial-gradient(circle,#000 0,transparent 62%);animation:cr-rays-in 1.2s ease-out 1.4s both,cr-spin 30s linear infinite}
.cr-rays.r2{background:repeating-conic-gradient(#ffffff2a 0 3deg,transparent 3deg 12deg);animation:cr-rays-in 1.2s ease-out 1.5s both,cr-spin 22s linear reverse infinite}
.shiny .cr-rays{background:repeating-conic-gradient(#ffd23f66 0 6deg,#ff7ad966 6deg 12deg,#7fe6ff66 12deg 18deg,transparent 18deg 24deg);animation:cr-rays-in 1.2s ease-out 1.4s both,cr-spin 14s linear infinite}
.shiny .cr-rays.r2{background:repeating-conic-gradient(#fff8 0 2deg,transparent 2deg 10deg);animation:cr-rays-in 1.2s ease-out 1.5s both,cr-spin 10s linear reverse infinite}
@keyframes cr-rays-in{from{opacity:0}to{opacity:1}}
@keyframes cr-spin{to{transform:rotate(360deg)}}
.cr-beam{position:absolute;left:50%;bottom:46px;width:110px;height:260px;margin-left:-55px;opacity:0;background:linear-gradient(transparent,#bfe4ff88 45%,#fff);clip-path:polygon(38% 100%,62% 100%,100% 0,0 0);animation:cr-beam 1.6s ease-out 1.3s both}
.shiny .cr-beam{background:linear-gradient(transparent,#ffe27a99 45%,#fff)}
@keyframes cr-beam{0%{opacity:0;transform:scaleY(.2);transform-origin:50% 100%}25%{opacity:.95;transform:scaleY(1)}100%{opacity:0;transform:scaleY(1.05)}}
.cr-ring{position:absolute;left:50%;bottom:40px;width:90px;height:90px;margin-left:-45px;border:4px solid #bfe4ff;border-radius:50%;opacity:0;animation:cr-ring 1.4s ease-out 1.35s both}
.cr-ring.r2{border-color:#ffe27a;animation-delay:1.6s}.cr-ring.r3{border-color:#ff9be8;animation-delay:1.85s}
@keyframes cr-ring{0%{opacity:.95;transform:scale(.3)}100%{opacity:0;transform:scale(3.4)}}
.cr-ball{position:absolute;left:50%;bottom:40px;width:96px;height:96px;margin-left:-48px;animation:cr-drop .55s cubic-bezier(.4,0,.6,1) both,cr-wobble .7s ease-in-out .55s 1,cr-fade .3s ease-out 1.5s forwards}
.cr-half{position:absolute;inset:0}
.cr-half img{width:96px;height:96px;image-rendering:pixelated;filter:drop-shadow(0 4px 0 #0008)}
.cr-half.top{clip-path:inset(0 0 50% 0);animation:cr-top .55s cubic-bezier(.3,1.4,.5,1) 1.3s both}
.cr-half.bot{clip-path:inset(50% 0 0 0);animation:cr-bot .55s ease-out 1.3s both}
@keyframes cr-drop{0%{transform:translateY(-320px);opacity:0}70%{transform:translateY(0);opacity:1}82%{transform:translateY(-22px)}100%{transform:translateY(0)}}
@keyframes cr-wobble{0%,100%{transform:rotate(0)}20%{transform:rotate(-14deg)}40%{transform:rotate(12deg)}60%{transform:rotate(-8deg)}80%{transform:rotate(5deg)}}
@keyframes cr-fade{to{opacity:0}}
@keyframes cr-top{to{transform:translate(-16px,-40px) rotate(-38deg)}}
@keyframes cr-bot{to{transform:translateY(12px)}}
.cr-mon{position:absolute;left:50%;bottom:58px;z-index:3;translate:-50% 0;opacity:0;animation:cr-rise 1.3s cubic-bezier(.2,1.3,.4,1) 1.35s both,cr-float 2.6s ease-in-out 2.7s infinite}
.cr-mon .cr-sprite{display:block;width:164px!important;height:164px!important;max-width:none;object-fit:contain;image-rendering:pixelated;animation:cr-reveal 1.1s ease-out 1.4s both}
.shiny .cr-mon .cr-sprite{animation:cr-reveal 1.1s ease-out 1.4s both,cr-shine 1.8s ease-in-out 2.6s infinite}
@keyframes cr-rise{0%{opacity:0;transform:translateY(70px) scale(.15)}25%{opacity:1}100%{opacity:1;transform:translateY(-50px) scale(1)}}
@keyframes cr-float{0%,100%{transform:translateY(-50px)}50%{transform:translateY(-58px)}}
@keyframes cr-reveal{0%{filter:brightness(6) saturate(0) drop-shadow(0 0 14px #fff)}100%{filter:brightness(1) saturate(1) drop-shadow(0 4px 0 #0008)}}
@keyframes cr-shine{0%,100%{filter:brightness(1) saturate(1) drop-shadow(0 0 6px #ffd23f)}50%{filter:brightness(1.25) saturate(1.3) drop-shadow(0 0 20px #ffe27a)}}
.cr-p{position:absolute;left:50%;bottom:110px;width:var(--s);height:var(--s);margin:0 0 0 calc(var(--s)/-2);background:#fff;box-shadow:0 0 8px #bfe4ff;opacity:0;animation:cr-burst 1.5s ease-out var(--dl) both}
.shiny .cr-p{background:#fff6a8;box-shadow:0 0 10px #ffd23f;clip-path:polygon(50% 0,62% 38%,100% 50%,62% 62%,50% 100%,38% 62%,0 50%,38% 38%)}
.shiny .cr-p:nth-of-type(3n){background:#ff9be8;box-shadow:0 0 10px #ff7ad9}.shiny .cr-p:nth-of-type(3n+1){background:#7fe6ff;box-shadow:0 0 10px #4ad0ff}
@keyframes cr-burst{0%{opacity:1;transform:rotate(var(--a)) translateY(0) scale(1)}100%{opacity:0;transform:rotate(var(--a)) translateY(calc(var(--d)*-1)) scale(.2)}}
.cr-plate{position:relative;z-index:4;display:grid;justify-items:center;gap:6px;padding:12px 30px 12px;background:#06183aeb;border:2px solid #7fb8ff;box-shadow:inset 0 0 0 2px #03102a,0 0 24px #4a90ff55;opacity:0;animation:cr-plate .6s cubic-bezier(.3,1.5,.5,1) 2.3s both}
.shiny .cr-plate{border-color:#ffd23f;box-shadow:inset 0 0 0 2px #03102a,0 0 30px #ffd23f88}
@keyframes cr-plate{from{opacity:0;transform:translateY(24px) scale(.85)}to{opacity:1;transform:none}}
.cr-eyebrow{font-size:10px;font-weight:900;letter-spacing:3px;color:#9fd0ff}
.shiny .cr-eyebrow{font-size:13px;color:#ffe100;text-shadow:0 0 10px #ffd23f}
.cr-plate h2{margin:0;font-size:30px;letter-spacing:2px;color:#fff;text-shadow:0 3px 0 #000a}
.shiny .cr-plate h2{color:#fff6a8;text-shadow:0 3px 0 #7a3f00,0 0 16px #ffd23f}
.cr-types{display:flex;gap:6px}
.cr-plate small{font-size:10px;font-weight:900;letter-spacing:1.5px;color:#c9def3}
.cr-hint{position:relative;z-index:4;margin-top:6px;font-size:9px;font-weight:900;letter-spacing:2px;color:#7f9dbd;opacity:0;animation:cr-hint 3s ease-in-out 3.2s infinite}
@keyframes cr-hint{0%,100%{opacity:0}50%{opacity:1}}
.shiny.cr-overlay{animation:cr-in .35s ease-out both,cr-shake .5s linear 1.35s 2}
@keyframes cr-shake{25%{transform:translate(4px,-3px)}75%{transform:translate(-4px,3px)}}
@media(max-width:520px){.cr-stage{transform:scale(.8);margin:-24px 0}.cr-plate h2{font-size:24px}}
@media(prefers-reduced-motion:reduce){.cr-overlay *,.cr-overlay{animation:none!important}.cr-ball,.cr-flash,.cr-beam,.cr-ring,.cr-rays,.cr-p{display:none}.cr-mon,.cr-plate,.cr-hint{opacity:1}.cr-mon{transform:none}}

/* v75b: Desafio e dicas compactos para caber na área livre abaixo dos parceiros */
.pk-extra{gap:12px;margin-top:12px}
.pk-challenge{grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:'art copy go';gap:14px;padding:10px 16px}
.pk-challenge .pkc-go{margin:0;width:190px}
.pkc-art{width:78px;height:78px}
.pkc-ball{width:62px;height:62px}
.pkc-art b{width:24px;height:24px;font-size:15px}
.pkc-copy .eyebrow{display:none}
.pkc-copy h2{font-size:20px}
.pkc-copy p{font-size:11px;line-height:1.4}
.pk-tips{gap:6px;padding:10px 14px}
.pkt-body{padding:8px 10px;gap:6px}
.pkt-body p{font-size:12px;line-height:1.45}
@media(max-width:860px){.pk-challenge{grid-template-columns:auto minmax(0,1fr);grid-template-areas:'art copy' 'go go'}.pk-challenge .pkc-go{width:100%}}
@media(max-width:520px){.pk-challenge{grid-template-columns:1fr;grid-template-areas:'art' 'copy' 'go'}}
.menu-page:has(.pk-grid) .main{gap:10px}
.pk-portrait{height:138px}
.pk-halo{width:136px;height:136px}
.pk-anim{width:120px}
.gift-banner{padding:6px 12px}
.cr-overlay{font-family:'Trebuchet MS','Segoe UI',sans-serif;color:#edf4ff}
.dex-find{flex:1 1 150px;min-width:150px}
.dex-tools .dex-field select{min-width:124px}
.dex-tools{gap:10px 12px}
.dex-tools .dex-chips{gap:4px}
.dex-tools .dex-chip{padding:8px 9px}

/* ================= v80: roleta vívida, botões sem efeitos, evolução, batalha, avisos ================= */

/* --- roleta do upgrader (e do Teste sua sorte): cores vívidas e o mesmo acabamento --- */
.capture-modal .wheel,.lucky-modal .wheel{filter:saturate(1.5) brightness(1.08);box-shadow:0 0 0 3px #4f5667,0 0 0 8px #090b12,0 18px 36px #0009,inset 0 0 0 2px #ffffff55,inset 0 0 12px #0008}
.capture-modal .wheel:before,.lucky-modal .wheel:before{content:'';position:absolute;inset:0;border-radius:50%;pointer-events:none;mix-blend-mode:overlay;background:radial-gradient(circle at 28% 20%,#ffffffb0,transparent 36%),repeating-conic-gradient(from 0deg,#ffffff50 0 .8deg,transparent .8deg 7.5deg),repeating-linear-gradient(118deg,#ffffff18 0 2px,transparent 2px 6px)}
.lucky-modal .wheel-wrap{--wheel-glow:#ff5a5a}
.lucky-modal .wheel-wrap:before{content:'';position:absolute;inset:-14px;z-index:-1;border-radius:50%;pointer-events:none;background:radial-gradient(circle,transparent 60%,color-mix(in srgb,var(--wheel-glow) 55%,transparent) 68%,transparent 76%);animation:wheel-halo 2.6s ease-in-out infinite}
.lucky-modal .wheel-wrap{width:200px;height:200px;margin:14px auto 18px}

/* --- escolha do inicial: botões parados --- */
.pk-anim{animation:none!important}
.pk-go-wrap{animation:none!important;filter:none!important}
.pk-fizz{display:none!important}
.btn.pk-go:before{background:linear-gradient(var(--rim1),var(--rim2))!important;animation:none!important}
.btn.pk-go:after{background:linear-gradient(var(--g2),var(--g1) 55%,var(--g3))!important;box-shadow:inset 0 2px 0 #ffffff3a,inset 0 -2px 0 #0000002e!important;animation:none!important}
.btn.pk-go .pk-go-spark,.btn.pk-go .pk-go-arrow{animation:none!important;transition:none!important}
.btn.pk-go:hover:not(:disabled) .pk-go-arrow{transform:none!important}

/* --- botão final: amarelo simples, sem efeitos --- */
.oc-cta{animation:none!important;filter:none!important}
.site-theme .oc-cta .btn.primary{--lip-a:#ffe7a0;--lip-b:#9a5f08;--face-a:#ffe9a6;--face-b:#dba22a;--ink:#102239;color:#102239!important;text-shadow:none!important}
.site-theme .oc-cta .btn.primary:before{background:linear-gradient(var(--lip-a),var(--lip-b))!important;animation:none!important}
.site-theme .oc-cta .btn.primary:after{background:linear-gradient(var(--face-a),var(--face-b))!important;box-shadow:inset 0 2px 0 #ffffff3a,inset 0 -2px 0 #0000002e!important;animation:none!important}

/* --- botão do santuário: só a seta apontando --- */
.raid-go-wrap{animation:none!important;filter:none!important}
.raid-go-wrap:before,.raid-go-wrap:after{display:none!important}
.btn.raid-go{--lip-a:#ffe7a0;--lip-b:#9a5f08;--face-a:#ffe9a6;--face-b:#dba22a;--ink:#102239;color:#102239!important;text-shadow:none!important;letter-spacing:2px}
.btn.raid-go:before{background:linear-gradient(var(--lip-a),var(--lip-b))!important;animation:none!important}
.btn.raid-go:after{background:linear-gradient(var(--face-a),var(--face-b))!important;box-shadow:inset 0 2px 0 #ffffff3a,inset 0 -2px 0 #0000002e!important;animation:none!important}
.btn.raid-go .rg-star{display:none}
.btn.raid-go .rg-chev i{animation-duration:1.4s}

/* --- silhuetas dos lendários: brilho de cada ave --- */
.raid-silhouette{--sil:#ffd23f;--sil2:#ffb33d}
.raid-silhouette.sil-144{--sil:#4fb3ff;--sil2:#1f7bff}
.raid-silhouette.sil-145{--sil:#ffe100;--sil2:#ffb800}
.raid-silhouette.sil-146{--sil:#ff8a1d;--sil2:#ff4a00}
.raid-silhouette.sil-150{--sil:#c58bff;--sil2:#8a5cff}
.raid-silhouette.sil-151{--sil:#ff9be8;--sil2:#ff5fcf}
.raid-silhouette .sil-aura{background:radial-gradient(circle,color-mix(in srgb,var(--sil) 55%,transparent),transparent 68%)}
.raid-silhouette .sil-img{filter:brightness(0) drop-shadow(0 0 6px var(--sil)) drop-shadow(0 0 14px var(--sil2))}

/* --- captura disponível: fundo azul em vez de verde --- */
.evc-card.capture{--ev-a:#245a96;--ev-b:#08162e}

/* --- login e cadastro --- */
.auth-ball{display:none}
.auth-perks li{padding:10px 6px;font-size:10px}
.auth-perks li:before{content:'✦';display:block;margin-bottom:3px;font-size:11px;color:#f6d778}
.auth-perks img{display:none}

/* --- revelação do Desafio: ajuste de posições --- */
.cr-stage{height:300px}
.cr-floor{position:absolute;left:50%;bottom:12px;width:140px;height:22px;margin-left:-70px;border-radius:50%;background:radial-gradient(#000b,transparent 70%);animation:cr-in .5s ease-out both}
.cr-ball{bottom:26px}
.cr-rays{top:130px}
.cr-beam{bottom:70px;width:96px;height:230px;margin-left:-48px;clip-path:none;background:linear-gradient(to top,#eaf6ff,#bfe4ff88 45%,transparent);-webkit-mask:linear-gradient(90deg,transparent,#000 28%,#000 72%,transparent);mask:linear-gradient(90deg,transparent,#000 28%,#000 72%,transparent)}
.shiny .cr-beam{background:linear-gradient(to top,#fff6c8,#ffe27a99 45%,transparent)}
.cr-ring{bottom:29px}
.cr-mon{top:130px;bottom:auto;translate:-50% -50%}
.cr-p{bottom:74px}
@keyframes cr-rise{0%{opacity:0;transform:translateY(96px) scale(.15)}22%{opacity:1}100%{opacity:1;transform:translateY(0) scale(1)}}
@keyframes cr-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
.cr-mon{animation:cr-rise 1.3s cubic-bezier(.2,1.3,.4,1) 1.35s both,cr-float 2.6s ease-in-out 2.7s infinite}

/* --- evolução: mais lenta e com build-up --- */
.modal.evolution-modal{width:min(470px,calc(100% - 20px))}
.evolution-modal .modal-head h2{font-size:16px}
.evolution-fx{position:relative;overflow:hidden;gap:10px;padding:26px 22px 22px;background:radial-gradient(circle at 50% 38%,#1b3f73 0,#081428 74%)}
.evolution-fx.shiny{background:radial-gradient(circle at 50% 38%,#4a3a12 0,#0d0a1e 74%)}
.evolution-fx>*{position:relative;z-index:2}
.evolution-fx>.evo-flash{position:absolute;inset:0;z-index:9;background:#fff;opacity:0;pointer-events:none}
.evolution-fx.evo-flashing>.evo-flash{animation:evo2-flash 1.2s ease-in-out both}
@keyframes evo2-flash{0%{opacity:0}35%,65%{opacity:1}100%{opacity:0}}
.evolution-fx>.evo-rays{position:absolute;left:50%;top:38%;z-index:1;width:760px;height:760px;margin:-380px 0 0 -380px;opacity:0;background:repeating-conic-gradient(#ffe58c33 0 6deg,transparent 6deg 18deg);-webkit-mask:radial-gradient(circle,#000 0,transparent 62%);mask:radial-gradient(circle,#000 0,transparent 62%);animation:oc-spin 40s linear infinite;transition:opacity 2s}
.evolution-fx.shiny>.evo-rays{background:repeating-conic-gradient(#ffd23f55 0 6deg,#ff7ad955 6deg 12deg,#7fe6ff55 12deg 18deg,transparent 18deg 24deg)}
.evolution-fx.evo-charging>.evo-rays{opacity:.4}
.evolution-fx.evo-hyper>.evo-rays{opacity:.85;animation-duration:9s}
.evolution-fx.evo-reveal>.evo-rays{opacity:1;animation-duration:20s}
.evo-eyebrow{min-height:14px;font-size:11px;font-weight:900;letter-spacing:3px;color:#9fd0ff}
.evolution-fx.shiny .evo-eyebrow{color:#ffe27a}
.evolution-stage{width:220px;height:220px}
.evolution-sprite{width:140px;height:140px}
.evo-aura{position:absolute;left:50%;top:50%;z-index:1;width:160px;height:160px;translate:-50% -50%;border-radius:50%;background:radial-gradient(circle,#ffffffaa,#8fc5ff55 50%,transparent 72%);opacity:0}
.evolution-stage.evo-charging .evo-aura{opacity:.7;animation:evo2-aura 1.4s ease-in-out infinite}
.evolution-stage.evo-hyper .evo-aura{opacity:1;animation-duration:.5s}
@keyframes evo2-aura{0%,100%{transform:scale(.8)}50%{transform:scale(1.25)}}
.evo-in{position:absolute;inset:0;z-index:3;pointer-events:none}
.evo-in b{position:absolute;left:50%;top:50%;width:7px;height:7px;margin:-3px;background:#fff8d6;box-shadow:0 0 8px #ffe9a3;opacity:0}
.evolution-stage.evo-charging .evo-in b{animation:evo2-suck 1.6s ease-in var(--dl) infinite}
.evolution-stage.evo-hyper .evo-in b{animation-duration:.6s}
@keyframes evo2-suck{0%{opacity:0;transform:rotate(var(--a)) translateY(-120px) scale(1)}20%{opacity:1}100%{opacity:0;transform:rotate(var(--a)) translateY(-8px) scale(.3)}}
.evo-rings i{position:absolute;left:50%;top:50%;z-index:3;width:100px;height:100px;margin:-50px;border:4px solid #ffe58c;border-radius:50%;opacity:0}
.evolution-stage.evo-reveal .evo-rings i{animation:evo2-ring 1.8s ease-out both}
.evo-rings i:nth-child(2){animation-delay:.35s!important;border-color:#8fd0ff}.evo-rings i:nth-child(3){animation-delay:.7s!important}
@keyframes evo2-ring{0%{opacity:1;transform:scale(.3)}100%{opacity:0;transform:scale(3.6)}}
.evolution-sparkles i{width:7px;height:7px}
.evolution-stage.evo-reveal .evolution-sparkles i{animation:evo2-sparkle 1.7s ease-out .75s both}
@keyframes evo2-sparkle{0%{opacity:1;transform:translate(-50%,-50%) rotate(var(--a)) translateY(0) scale(1.2)}100%{opacity:0;transform:translate(-50%,-50%) rotate(var(--a)) translateY(calc(var(--d)*-1)) scale(.2)}}
.evolution-stage.evo-charging .evolution-sprite{animation:evo2-slow 1.3s steps(1,end) infinite,evo2-pulse 1.3s ease-in-out infinite}
@keyframes evo2-slow{0%,60%{filter:none}61%,100%{filter:brightness(0) invert(1) drop-shadow(0 0 12px #fff)}}
@keyframes evo2-pulse{0%,100%{scale:1}50%{scale:1.08}}
.evolution-stage.evo-hyper .evolution-sprite{animation:evo2-fast .32s steps(1,end) infinite,evo2-shake .1s linear infinite,evo2-grow 2.4s ease-in forwards}
@keyframes evo2-fast{0%,49%{filter:brightness(0) invert(1) drop-shadow(0 0 14px #fff)}50%,100%{filter:brightness(1.6) saturate(1.4)}}
@keyframes evo2-shake{25%{translate:2px -1px}75%{translate:-2px 1px}}
@keyframes evo2-grow{to{scale:1.3}}
.evolution-stage.evo-reveal .evolution-sprite{animation:evo2-reveal 1.4s cubic-bezier(.2,1.4,.4,1) .75s both}
@keyframes evo2-reveal{0%{transform:scale(.4);filter:brightness(6) saturate(0)}45%{transform:scale(1.25);filter:brightness(2.2) saturate(.4)}100%{transform:scale(1);filter:brightness(1) saturate(1)}}
.evolution-fx.evo-hyper .evolution-stage{animation:evo2-shake .12s linear infinite}
.evolution-title{font-size:17px;letter-spacing:.5px;line-height:1.3}
.evolution-fx.evo-done .evolution-title{animation:oc-pop .6s cubic-bezier(.3,1.6,.5,1) both}
.evo-sub{margin:0;min-height:14px;font-size:11px;color:#a9c8e5}
@media(prefers-reduced-motion:reduce){.evolution-fx,.evolution-fx *{animation:none!important;transition:none!important}}

/* --- batalha: status e shiny --- */
.battle-card{position:relative}
.battle-shiny-tag{margin-left:4px;padding:2px 6px;font-size:8px;font-weight:900;letter-spacing:.6px;color:#3a2600;background:linear-gradient(#fff6a8,#ffd23f);border:1px solid #fff8d0}
.battle-card.shiny-card{border-color:#ffd23f!important;box-shadow:inset 0 0 0 2px #4a3a04,0 0 12px #ffd23f66}
.battle-card.shiny-card .battle-card-portrait img{animation:bs-shiny 2.6s ease-in-out infinite}
@keyframes bs-shiny{0%,100%{filter:drop-shadow(0 0 3px #ffd23f)}50%{filter:drop-shadow(0 0 10px #ffe27a)}}
.status-badge{margin-left:4px;padding:2px 6px;font-size:8px;font-weight:900;letter-spacing:.6px;color:#101a33;border:1px solid #fff8}
.status-badge.sleep{background:#7fb8ff}.status-badge.paralysis{background:#ffe100}.status-badge.burn{background:#ff8a3d}.status-badge.poison{background:#c58bff}.status-badge.freeze{background:#8fe3ff}
.battle-card-portrait{position:relative}
.battle-card[data-status=sleep] .battle-card-portrait:after{content:'Zz';position:absolute;right:-4px;top:-8px;font-size:13px;font-weight:900;color:#bfe0ff;text-shadow:0 0 6px #4a90ff;animation:bs-zzz 1.8s ease-in-out infinite}
@keyframes bs-zzz{0%{opacity:0;transform:translate(0,6px)}30%{opacity:1}100%{opacity:0;transform:translate(6px,-10px)}}
.battle-card[data-status=paralysis] .battle-card-portrait img{animation:bs-para .3s steps(2) infinite}
@keyframes bs-para{0%{transform:translateX(-1px);filter:drop-shadow(0 0 5px #ffe100)}100%{transform:translateX(1px);filter:drop-shadow(0 0 2px #ffe100) brightness(1.2)}}
.battle-card[data-status=burn] .battle-card-portrait img{filter:drop-shadow(0 0 6px #ff7a1a)}
.battle-card[data-status=poison] .battle-card-portrait img{filter:drop-shadow(0 0 6px #b06bff)}
.battle-card[data-status=freeze] .battle-card-portrait img{filter:saturate(.6) brightness(1.1) drop-shadow(0 0 6px #8fe3ff)}
.battle-status-pop{position:absolute;z-index:40;pointer-events:none;translate:-50% -50%;display:grid;justify-items:center;gap:3px;padding:7px 14px 8px;text-align:center;background:#06183af2;border:2px solid var(--c);box-shadow:0 0 18px var(--c),inset 0 0 0 2px #03102a;animation:bsp 2.6s ease-out both}
.battle-status-pop strong{font-size:15px;letter-spacing:2px;color:var(--c);text-shadow:0 2px 0 #000a}
.battle-status-pop small{max-width:220px;font-size:9px;line-height:1.35;color:#dcebfa}
.bsp-glyph{position:absolute;inset:-12px;border:3px solid var(--c);opacity:0;animation:bsp-ring 1.3s ease-out both}
@keyframes bsp{0%{opacity:0;transform:translateY(14px) scale(.6)}10%{opacity:1;transform:translateY(0) scale(1.1)}20%{transform:scale(1)}80%{opacity:1;transform:translateY(-14px)}100%{opacity:0;transform:translateY(-26px)}}
@keyframes bsp-ring{0%{opacity:.9;transform:scale(.7)}100%{opacity:0;transform:scale(1.5)}}
@media(prefers-reduced-motion:reduce){.battle-card.shiny-card .battle-card-portrait img,.battle-card .battle-card-portrait img,.battle-card .battle-card-portrait:after,.battle-status-pop,.bsp-glyph{animation:none!important}}

/* --- avisos (toast) no design atual --- */
#toast.toast{--toast-accent:#5aa9ff;position:fixed;left:50%;bottom:26px;z-index:400;width:min(430px,calc(100vw - 28px));min-height:0;padding:0;display:none;grid-template-columns:54px minmax(0,1fr);align-items:stretch;gap:0;transform:translateX(-50%);overflow:hidden;background:linear-gradient(#123454,#071d38);color:#edf4ff;border:2px solid var(--toast-accent);border-radius:0;box-shadow:inset 0 0 0 2px #06162e,0 8px 22px #000b;clip-path:polygon(6px 0,calc(100% - 6px) 0,100% 6px,100% calc(100% - 6px),calc(100% - 6px) 100%,6px 100%,0 calc(100% - 6px),0 6px)}
#toast.toast.show{display:grid;animation:toast-in .4s cubic-bezier(.3,1.5,.5,1) both}
#toast.toast.success{--toast-accent:#45d97a}
#toast.toast.gold{--toast-accent:#ffcf3f}
#toast.toast.danger{--toast-accent:#ff5a5a}
#toast .toast-icon{display:grid;place-items:center;width:auto;height:auto;min-height:56px;background:linear-gradient(var(--toast-accent),color-mix(in srgb,var(--toast-accent) 62%,#03102a));border:0;border-right:2px solid #06162e;color:#04122c;font-size:24px;font-weight:900;text-shadow:none}
#toast .toast-copy{display:flex;min-width:0;flex-direction:column;justify-content:center;gap:4px;padding:10px 14px 12px}
#toast .toast-copy strong{font-size:11px;letter-spacing:2px;color:var(--toast-accent)}
#toast .toast-copy small{font-size:12px;line-height:1.4;font-weight:700;color:#dcebfa}
#toast .toast-bar{position:absolute;left:0;bottom:0;width:100%;height:3px;background:var(--toast-accent);transform-origin:left;animation:toast-bar var(--ms,3s) linear forwards}
@keyframes toast-in{0%{opacity:0;transform:translate(-50%,28px) scale(.9)}100%{opacity:1;transform:translate(-50%,0) scale(1)}}
@keyframes toast-bar{to{transform:scaleX(0)}}
@media(prefers-reduced-motion:reduce){#toast.toast.show{animation:none}#toast .toast-bar{animation:none;display:none}}
.auth-card .form-error{min-height:0;margin:0}
.form-error:empty{display:none}
.form-error:not(:empty){display:flex;align-items:center;gap:9px;margin:2px 0 8px;padding:8px 10px;font-size:11px;font-weight:800;line-height:1.35;color:#ffd9d6;background:#3a0f16;border:2px solid #ff5a5a;box-shadow:inset 0 0 0 2px #1d070b;animation:oc-pop .25s ease-out both}
.form-error:not(:empty):before{content:'!';flex:none;display:grid;place-items:center;width:20px;height:20px;font-size:13px;font-weight:900;color:#3a0f16;background:#ff5a5a}
.battle-status-pop{translate:-50% -100%}
.evolution-stage{width:270px;height:250px}
.evolution-sprite{width:200px;height:200px}
.evo-aura{width:200px;height:200px}
.lucky-modal .modal-body{overflow-x:hidden}
.cr-mon{top:150px}
.cr-rays{top:150px}
.cr-floor{bottom:38px}
@keyframes cr-rise{0%{opacity:0;transform:translateY(80px) scale(.15)}22%{opacity:1}100%{opacity:1;transform:translateY(0) scale(1)}}

/* ================= v84: evolução rápida com zoom, sprites de status, sorteio lendário, avisos, Desafio ================= */

/* --- evolução: sem luz girando, zoom in/out com partículas brancas --- */
.evolution-fx>.evo-rays{display:none}
.evolution-fx.evo-flashing>.evo-flash{animation:evo2-flash .9s ease-in-out both}
.evolution-stage.evo-charging .evolution-sprite{animation:evo2-slow 1.1s steps(1,end) infinite,evo3-zoom 1.1s ease-in-out infinite}
.evolution-stage.evo-hyper .evolution-sprite{animation:evo2-fast .28s steps(1,end) infinite,evo3-zoom-fast .5s ease-in-out infinite,evo2-shake .1s linear infinite}
.evolution-stage.evo-reveal .evolution-sprite{animation:evo2-reveal 1.3s cubic-bezier(.2,1.4,.4,1) .6s both}
.evolution-stage.evo-reveal .evolution-sparkles i{animation:evo2-sparkle 1.5s ease-out .6s both}
@keyframes evo3-zoom{0%,100%{scale:.94}50%{scale:1.16}}
@keyframes evo3-zoom-fast{0%,100%{scale:.85}50%{scale:1.34}}

/* --- sprites em batalha: status nunca mexem no posicionamento --- */
.battle-card[data-status=paralysis] .battle-card-portrait>.pixel{animation:bs-para2 .3s steps(2) infinite}
@keyframes bs-para2{0%{translate:-1px 0;filter:drop-shadow(0 0 5px #ffe100)}100%{translate:1px 0;filter:drop-shadow(0 0 2px #ffe100) brightness(1.2)}}
.battle-card[data-status=sleep] .battle-card-portrait:after{content:none}
.battle-card[data-status=sleep]:after{content:'Zz';position:absolute;right:8px;top:1px;font-size:12px;font-weight:900;color:#bfe0ff;text-shadow:0 0 6px #4a90ff;animation:bs-zzz 1.8s ease-in-out infinite}
.battle-card.has-status[data-status=sleep]{border-color:#7fb8ff}.battle-card.has-status[data-status=paralysis]{border-color:#ffe100}.battle-card.has-status[data-status=burn]{border-color:#ff8a3d}.battle-card.has-status[data-status=poison]{border-color:#c58bff}.battle-card.has-status[data-status=freeze]{border-color:#8fe3ff}

/* --- sorteio do shiny lendário --- */
.lucky-modal .lucky-center{padding:14px 16px 18px;gap:8px}
.lucky-stage{position:relative;width:100%;display:grid;justify-items:center;gap:5px;padding:12px 10px 12px;overflow:hidden;background:radial-gradient(ellipse at 50% 42%,color-mix(in srgb,var(--lc) 40%,#0b2040) 0,#0b2040 70%);border:2px solid var(--lc);box-shadow:inset 0 0 0 2px #03102a,0 0 22px color-mix(in srgb,var(--lc) 45%,transparent)}
.lucky-kicker{font-size:10px;font-weight:900;letter-spacing:3px;color:var(--lc);text-shadow:0 0 10px var(--lc)}
.lucky-center .lucky-prize{position:relative;display:grid;place-items:center;width:100%;height:176px}
.lp-glow{position:absolute;left:50%;top:48%;width:210px;height:210px;translate:-50% -50%;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--lc) 70%,transparent),transparent 68%);animation:cw-pulse 2s ease-in-out infinite alternate}
.lp-parts b{position:absolute;bottom:14px;left:var(--x);width:5px;height:5px;background:var(--lc);box-shadow:0 0 8px var(--lc);opacity:0;animation:lp-rise var(--du) linear var(--dl) infinite}
@keyframes lp-rise{0%{opacity:0;transform:translateY(0)}15%{opacity:1}100%{opacity:0;transform:translateY(-150px)}}
.lucky-center .lucky-prize .lucky-sprite{position:relative;z-index:2;width:152px;height:152px;object-fit:contain;image-rendering:pixelated;filter:drop-shadow(0 0 12px var(--lc)) drop-shadow(0 4px 0 #000a);animation:oc-hop 2.6s ease-in-out infinite}
.lp-floor{position:absolute;left:50%;bottom:6px;width:130px;height:16px;margin-left:-65px;border-radius:50%;background:radial-gradient(#000b,transparent 70%)}
.lucky-center .lucky-name{margin:0;font-size:28px;letter-spacing:5px;color:#fff;text-shadow:0 3px 0 #000a,0 0 18px var(--lc)}
.lucky-sub{margin:0;font-size:12px;font-weight:900;letter-spacing:1px;color:var(--lc)}
.lucky-center .lucky-timer{margin:2px 0 0;padding:4px 10px;background:#04122c;border:1px solid #33628f}
.lucky-note.used{margin:6px 0 0;padding:8px 12px;font-size:11px;line-height:1.5;color:#ffe58c;background:#0a2447;border-left:3px solid #ffd23f}
@media(prefers-reduced-motion:reduce){.lp-glow,.lp-parts b,.lucky-center .lucky-prize .lucky-sprite{animation:none!important}}

/* --- Desafio: organização harmônica --- */
.pk-challenge{grid-template-columns:auto minmax(0,1fr);grid-template-areas:'art copy' 'go go';gap:8px 16px;padding:12px 16px}
.pk-challenge .pkc-go{width:100%;justify-self:stretch;margin:0}
.pkc-copy p{max-width:none}
@media(max-width:520px){.pk-challenge{grid-template-columns:1fr;grid-template-areas:'art' 'copy' 'go'}}

/* --- avisos: cartões de notificação --- */
#toast{display:none!important}
#toasts{position:fixed;left:50%;bottom:22px;z-index:400;display:flex;flex-direction:column;gap:10px;width:min(470px,calc(100vw - 24px));translate:-50% 0;pointer-events:none}
.toast-card{--ta:#5aa9ff;position:relative;pointer-events:auto;cursor:pointer;display:grid;grid-template-columns:60px minmax(0,1fr) 26px;align-items:center;gap:12px;padding:12px 10px 15px 12px;overflow:hidden;background:linear-gradient(100deg,color-mix(in srgb,var(--ta) 26%,#0d2c4d),#071c36 64%);border:2px solid var(--ta);box-shadow:inset 0 0 0 2px #04162c;clip-path:polygon(8px 0,calc(100% - 8px) 0,100% 8px,100% calc(100% - 8px),calc(100% - 8px) 100%,8px 100%,0 calc(100% - 8px),0 8px);animation:tc-in .5s cubic-bezier(.3,1.5,.5,1) both}
.toast-card.success{--ta:#45d97a}.toast-card.gold{--ta:#ffcf3f}.toast-card.danger{--ta:#ff5a5a;animation:tc-in .5s cubic-bezier(.3,1.5,.5,1) both,tc-shake .4s linear .35s 1}
.toast-card.leaving{animation:tc-out .28s ease-in both}
.tc-medal{position:relative;display:grid;place-items:center;width:58px;height:58px}
.tc-medal b{position:relative;z-index:2;display:grid;place-items:center;width:50px;height:50px;font-size:26px;font-weight:900;color:#04122c;background:linear-gradient(var(--ta),color-mix(in srgb,var(--ta) 58%,#04122c));clip-path:polygon(30% 0,70% 0,100% 30%,100% 70%,70% 100%,30% 100%,0 70%,0 30%);animation:tc-icon .6s cubic-bezier(.3,1.7,.5,1) .15s both}
.tc-medal b .item-sprite,.tc-medal b .pixel{width:34px;height:34px;object-fit:contain}
.toast-card.gold .tc-medal b{animation:tc-icon .6s cubic-bezier(.3,1.7,.5,1) .15s both,tc-coin 2s ease-in-out .9s infinite}
.toast-card.info .tc-medal b{animation:tc-icon .6s cubic-bezier(.3,1.7,.5,1) .15s both,tc-bob 1.6s ease-in-out .9s infinite}
.toast-card.success .tc-medal b{animation:tc-icon .6s cubic-bezier(.3,1.7,.5,1) .15s both,tc-beat 1.4s ease-in-out .9s infinite}
.tc-ring{position:absolute;inset:0;border:3px solid var(--ta);border-radius:50%;opacity:0;animation:tc-ring .9s ease-out .2s both}
.tc-p{position:absolute;left:50%;top:50%;width:5px;height:5px;margin:-2px;background:var(--ta);opacity:0;animation:tc-burst .8s ease-out .2s both}
.tc-copy{display:grid;gap:3px;min-width:0}
.tc-copy em{font-style:normal;font-size:9px;font-weight:900;letter-spacing:2.5px;color:var(--ta)}
.tc-copy strong{font-size:14px;letter-spacing:.5px;color:#fff;text-shadow:0 2px 0 #000a}
.tc-copy small{font-size:12px;line-height:1.45;font-weight:700;color:#cfe2f5}
.tc-close{align-self:start;justify-self:end;width:24px;height:24px;font-size:16px;line-height:1;color:#9fc4e8;background:transparent;border:1px solid #33628f;cursor:pointer}
.tc-close:hover{color:#fff;border-color:var(--ta)}
.tc-bar{position:absolute;left:0;bottom:0;width:100%;height:4px;background:var(--ta);transform-origin:left;animation:tc-bar var(--ms,3.8s) linear forwards}
.toast-card:hover .tc-bar{animation-play-state:paused}
@keyframes tc-in{0%{opacity:0;transform:translateY(30px) scale(.9)}100%{opacity:1;transform:none}}
@keyframes tc-out{to{opacity:0;transform:translateX(40px) scale(.95)}}
@keyframes tc-icon{0%{transform:scale(.2) rotate(-40deg)}100%{transform:none}}
@keyframes tc-ring{0%{opacity:.9;transform:scale(.5)}100%{opacity:0;transform:scale(1.9)}}
@keyframes tc-burst{0%{opacity:1;transform:rotate(var(--a)) translateY(-22px)}100%{opacity:0;transform:rotate(var(--a)) translateY(-46px)}}
@keyframes tc-bar{to{transform:scaleX(0)}}
@keyframes tc-shake{25%{translate:-5px 0}75%{translate:5px 0}}
@keyframes tc-coin{0%,60%,100%{transform:rotateY(0)}80%{transform:rotateY(180deg)}}
@keyframes tc-bob{50%{transform:translateY(-3px)}}
@keyframes tc-beat{50%{transform:scale(1.1)}}
@media(prefers-reduced-motion:reduce){.toast-card,.toast-card *{animation:none!important}.tc-bar{display:none}}

/* --- Desafio: nova revelação (sem raios giratórios) --- */
.cr-rays,.cr-beam,.cr-ring{display:none!important}
.cr-flash{animation:cr-flash2 .9s ease-out 1.3s both}
@keyframes cr-flash2{0%{opacity:0}14%{opacity:.4}100%{opacity:0}}
.cr-glow{position:absolute;left:50%;top:170px;width:380px;height:380px;margin:-190px 0 0 -190px;border-radius:50%;background:radial-gradient(circle,#7fb8ff66,transparent 62%);opacity:0;animation:cr-glow-in 1.2s ease-out 1.4s both,cr-glow-pulse 2.6s ease-in-out 2.6s infinite alternate}
.shiny .cr-glow{background:radial-gradient(circle,#ffd23f77,transparent 62%)}
@keyframes cr-glow-in{to{opacity:1}}
@keyframes cr-glow-pulse{to{transform:scale(1.12)}}
.cr-pillar{position:absolute;left:50%;bottom:64px;width:78px;height:250px;margin-left:-39px;opacity:0;background:linear-gradient(to top,#eaf6ff,#a9d6ff77 50%,transparent);-webkit-mask:linear-gradient(90deg,transparent,#000 30%,#000 70%,transparent);mask:linear-gradient(90deg,transparent,#000 30%,#000 70%,transparent);transform-origin:50% 100%;animation:cr-pillar 1.3s ease-out 1.3s both}
.shiny .cr-pillar{background:linear-gradient(to top,#fff6c8,#ffd23f77 50%,transparent)}
@keyframes cr-pillar{0%{opacity:0;transform:scaleY(.1)}25%{opacity:.95;transform:scaleY(1)}100%{opacity:0;transform:scaleY(1.05)}}
.cr-shock i{position:absolute;left:50%;top:226px;width:70px;height:70px;margin:-35px 0 0 -35px;border:4px solid #bfe4ff;opacity:0;animation:cr-shock 1.2s ease-out 1.3s both}
.cr-shock i:nth-child(2){animation-delay:1.5s;border-color:#8fc5ff}.cr-shock i:nth-child(3){animation-delay:1.7s;border-color:#ffffff}
.shiny .cr-shock i{border-color:#ffe27a}.shiny .cr-shock i:nth-child(2){border-color:#ff9be8}.shiny .cr-shock i:nth-child(3){border-color:#7fe6ff}
@keyframes cr-shock{0%{opacity:.95;transform:rotate(45deg) scale(.2)}100%{opacity:0;transform:rotate(45deg) scale(4.4)}}
.cr-mon{z-index:3}
.cr-ball{z-index:4;animation:cr-drop .55s cubic-bezier(.4,0,.6,1) both,cr-wobble .7s ease-in-out .55s 1,cr-fade .45s ease-out 2.3s forwards}
.cr-p{z-index:5;animation:cr-up 1.7s ease-out var(--dl) both}
@keyframes cr-up{0%{opacity:1;transform:translate(0,0) scale(1)}100%{opacity:0;transform:translate(var(--dx),calc(var(--d)*-1)) scale(.3)}}
@keyframes cr-rise{0%{opacity:0;transform:translateY(76px) scale(.3)}22%{opacity:1}100%{opacity:1;transform:translateY(0) scale(1)}}
.cr-rain{position:absolute;top:-14px;left:var(--l);z-index:1;width:8px;height:12px;background:var(--c);opacity:0;animation:cr-fall var(--du) linear var(--dl) both}
@keyframes cr-fall{0%{opacity:1;transform:translateY(0) rotate(0)}100%{opacity:.9;transform:translateY(105vh) rotate(540deg)}}
@media(prefers-reduced-motion:reduce){.cr-rain,.cr-glow,.cr-pillar,.cr-shock i{display:none}}
#toasts{font-family:'Trebuchet MS','Segoe UI',sans-serif;color:#edf4ff}
.tc-close{font-family:inherit}
.cr-p{z-index:2!important;width:calc(var(--s)*.8);height:calc(var(--s)*.8)}
/* partículas e ondas só existem depois que a Pokébola assentou e abriu (antes ficavam visíveis no atraso) */
.cr-p,.cr-shock i,.cr-rain{animation-fill-mode:forwards!important;opacity:0}
@keyframes cr-up{0%{opacity:0;transform:translate(0,0) scale(1)}8%{opacity:1}100%{opacity:0;transform:translate(var(--dx),calc(var(--d)*-1)) scale(.3)}}
@keyframes cr-shock{0%{opacity:0;transform:rotate(45deg) scale(.2)}6%{opacity:.95}100%{opacity:0;transform:rotate(45deg) scale(4.4)}}
@keyframes cr-fall{0%{opacity:0;transform:translateY(0) rotate(0)}6%{opacity:1}100%{opacity:.9;transform:translateY(105vh) rotate(540deg)}}

/* --- sorteio lendário: sem quadro, sem barra de rolagem, timer no fim --- */
.lucky-modal .modal-body{overflow-x:hidden;overflow-y:auto;scrollbar-width:none;-ms-overflow-style:none}
.lucky-modal .modal-body::-webkit-scrollbar{display:none}
.lucky-modal .lucky-center{padding:12px 20px 14px;gap:8px;justify-content:center}
.lucky-stage{overflow:visible;gap:2px;padding:0;background:none;border:0;box-shadow:none}
.lucky-kicker{font-size:11px;letter-spacing:4px}
.lucky-center .lucky-prize{height:150px;margin-top:2px}
.lp-glow{width:190px;height:190px}
.lucky-center .lucky-prize .lucky-sprite{width:132px;height:132px}
@keyframes lp-rise{0%{opacity:0;transform:translateY(0)}15%{opacity:1}100%{opacity:0;transform:translateY(-110px)}}
.lucky-center .lucky-name{font-size:26px;margin-top:2px}
.lucky-modal .wheel-wrap{width:190px;height:190px;margin:12px auto 12px}
.lucky-note.used,.lucky-note{margin:2px 0 0;width:100%}
.lucky-center .lucky-timer{margin:4px 0 0}
.lucky-modal .lucky-center{padding:8px 20px 8px}
.lucky-modal .wheel-wrap{margin:10px auto 10px}

/* --- Desafio: o Pokémon aparece por cima da Ultra Ball --- */
.cr-mon{z-index:6}

/* --- botão de girar do Teste sua sorte: único, com partículas --- */
.lucky-go-wrap{position:relative;width:100%;margin-top:20px;animation:lg-glow 2.4s ease-in-out infinite}
.lg-p{position:absolute;z-index:3;left:var(--x);bottom:46%;width:6px;height:6px;background:var(--c);box-shadow:0 0 8px var(--c);clip-path:polygon(50% 0,62% 38%,100% 50%,62% 62%,50% 100%,38% 62%,0 50%,38% 38%);pointer-events:none;opacity:0;animation:lg-rise var(--du) ease-out var(--dl) infinite}
.lg-p:nth-child(3n){width:9px;height:9px}
@keyframes lg-rise{0%{opacity:0;transform:translate(0,0) scale(.5)}18%{opacity:1}100%{opacity:0;transform:translate(var(--dx),-52px) scale(1.2)}}
@keyframes lg-glow{0%,100%{filter:drop-shadow(0 0 6px #ffd23f88)}50%{filter:drop-shadow(0 0 16px #ff8ad8cc)}}
.btn.lucky-go{--lip-a:#fff3b0;--lip-b:#b3369a;--ink:#3a0f4a;display:flex;align-items:center;justify-content:center;gap:12px;min-height:50px;font-size:13px;font-weight:900;letter-spacing:2px;color:#3a0f4a!important;text-shadow:none!important}
.btn.lucky-go:before{background:linear-gradient(90deg,#ff9df5,#ffe27a,#7fe6ff,#ff9df5,#ffe27a) 0 0/300% 100% repeat-x!important;animation:px-rim 3s linear infinite!important}
.btn.lucky-go:after{background:linear-gradient(#0000,#0000) no-repeat 0 0/1px 1px,radial-gradient(circle,#fff 0 1px,transparent 1.7px) 0 0/43px 29px,radial-gradient(circle,#fffbe0 0 1px,transparent 1.5px) 15px 9px/61px 37px,linear-gradient(#0000,#0000002e),linear-gradient(100deg,#ffd23f,#ffb52a,#ff8ad8,#ffd23f,#ff9d1a,#ff8ad8,#ffd23f) 0 0/300% 100% repeat-x!important;animation:px-purple 5s linear infinite!important}
.btn.lucky-go>span[aria-hidden]{color:#fff;font-size:1.1em;text-shadow:0 0 6px #ff6ad5,0 0 12px #fff!important;animation:lucky-twinkle 1.6s ease-in-out infinite}
.btn.lucky-go>span[aria-hidden]:last-child{animation-delay:.8s}
.btn.lucky-go:disabled{animation:none!important}
@media(prefers-reduced-motion:reduce){.lucky-go-wrap,.lg-p,.btn.lucky-go>span[aria-hidden]{animation:none!important}.lg-p{display:none}}
.lucky-modal .wheel-wrap{margin:10px auto 6px}
.lucky-center .lucky-prize{height:140px}
.lucky-modal,.lucky-modal *{scrollbar-width:none;-ms-overflow-style:none}
.lucky-modal::-webkit-scrollbar,.lucky-modal *::-webkit-scrollbar{display:none}

/* sorteio lendário: sem glow no Pokémon, só partículas brancas */
.lp-glow{display:none}
.lucky-center .lucky-prize .lucky-sprite{filter:drop-shadow(0 4px 0 #000a)}
.lp-parts b{background:#fff;box-shadow:0 0 5px #fff}

/* ================= biomas míticos: Laboratório do Mewtwo e Portal Ancestral do Mew ================= */
.raid-wait.mythic{background:linear-gradient(#050a18a3,#0a1226b8),var(--raid-bg) center/cover}
.raid-wait.both{border-color:#c9b4ff}
.raid-wait.mew{border-color:#5be3a0}
.raid-wait.mewtwo{border-color:#c58bff}
.raid-wait>.raid-split{position:absolute!important;inset:0;z-index:0!important;display:flex;background:#050a18}
.raid-split i{flex:1;background:var(--a) center/cover no-repeat}
.raid-wait>.raid-split:after{content:'';position:absolute;inset:0;background:linear-gradient(#050a18a3,#0a1226b8),linear-gradient(90deg,transparent 47%,#ffffff3d 50%,transparent 53%)}
.raid-wait.mew header h1{color:#8dffc6;text-shadow:-3px 0 #0b4a34,3px 0 #0b4a34,0 -3px #0b4a34,0 3px #0b4a34,0 0 22px #3dff9a}
.raid-wait.mewtwo header h1{color:#e2c4ff;text-shadow:-3px 0 #3d1a6b,3px 0 #3d1a6b,0 -3px #3d1a6b,0 3px #3d1a6b,0 0 22px #c58bff}
.raid-wait.both header h1{color:#f2ddff;text-shadow:-3px 0 #33206b,3px 0 #33206b,0 -3px #33206b,0 3px #33206b,0 0 22px #9ff0ff}
.raid-wait.mew .raid-embers i{background:#7dffc0;box-shadow:0 0 8px #3dff9a}
.raid-wait.mewtwo .raid-embers i{background:#e2c4ff;box-shadow:0 0 8px #c58bff}
.raid-wait.mythic .eyebrow{color:#e2d0ff}
.card-art.raid-split{display:flex;overflow:hidden}
.card-art.raid-split i{flex:1;background-position:center;background-size:cover;background-repeat:no-repeat}
.card-art.raid-split i:nth-child(1){background-image:var(--a)}
.card-art.raid-split i:nth-child(2){background-image:var(--b)}
.card-art.raid-split:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#050a18d9 0,transparent 62%),linear-gradient(90deg,transparent 47%,#ffffff40 50%,transparent 53%);pointer-events:none}
.card-art.raid-split .card-crest{z-index:2}

.stage-pips i.boss{border-color:#c58bff99;background:#1d0f3a}
.stage-pips i.boss.on{border-color:#c58bff}
.stage-pips i.boss.now{background:#c58bff;border-color:#f0dcff;box-shadow:0 0 10px #c58bff}

/* v99 · seletor de idioma, Trainer Card e trocas de shiny */


.trades-page{display:grid;gap:12px;max-width:860px;margin:0 auto;padding-bottom:22px}
.trades-intro{margin:0;font-size:12px;line-height:1.5}
.trade-rules{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.tr-rule{display:grid;gap:3px;padding:9px 10px;border:1px solid #33557a;background:linear-gradient(110deg,#123855,#071a32)}
.tr-rule b{font-size:17px;color:#ffda76}
.tr-rule span{font-size:9px;letter-spacing:.8px;color:var(--ui-muted);text-transform:uppercase}
.tr-rule small{font-size:9px;color:#ffb0a8}
.trade-warning{margin:0;padding:12px 14px;border:1px solid #b8646d;background:#3a1a2b;color:#ffc0bc;font-size:12px;line-height:1.5}
.trade-compose,.trade-list{padding:12px 14px;border:1px solid #33557a;background:#08203c}
.trade-compose h3,.trade-list h3{margin:0 0 10px;font-size:11px;letter-spacing:1.6px;color:#ffda76}
.trade-search{display:flex;flex-wrap:wrap;gap:8px}
.trade-search input{flex:1;min-width:160px;padding:9px 10px;border:1px solid #557793;background:#04162c;color:#fff;font:inherit;font-size:13px}
.trade-search input:focus{outline:2px solid #f6d778;outline-offset:1px}
.trade-columns{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:12px}
.trade-col h4{margin:0 0 8px;font-size:10px;letter-spacing:1.4px;color:var(--ui-text)}
.trade-partner{margin-left:6px;color:#8af0ff}
.trade-grid{display:grid;gap:6px;max-height:340px;overflow:auto;padding-right:2px}
.trade-chip{display:block;width:100%;padding:6px 8px;text-align:left;border:1px solid #33557a;background:#0c2a49;color:inherit;font:inherit;cursor:pointer}
.trade-chip:hover:not(:disabled){border-color:#8af0ff}
.trade-chip.chosen{border-color:#ffda76;background:#21394b;box-shadow:inset 0 0 0 1px #ffda76}
.trade-chip:disabled{opacity:.5;cursor:not-allowed}
.tr-mon{display:flex;align-items:center;gap:8px;min-width:0}
.tr-mon img{flex:none;width:46px;height:46px;object-fit:contain;image-rendering:pixelated}
.tr-mon b{display:block;font-size:12px}
.tr-mon small{display:block;font-size:10px;color:var(--ui-muted)}
.tr-mon .tr-lock{color:#ffb0a8}
.tr-tag{display:inline-block;margin-top:2px;padding:1px 5px;background:#ffd23f;color:#3a2400;font-size:8px;font-style:normal;font-weight:900;letter-spacing:1px}
.tr-lucky-note{margin:10px 0 0;font-size:10px;line-height:1.5;color:var(--ui-muted)}
.trade-send{margin-top:12px}
.trade-row{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;margin-top:6px;padding:8px 10px;border:1px solid #2a4a6c;background:#0a2440}
.trade-row.declined,.trade-row.cancelled,.trade-row.expired,.trade-row.failed{opacity:.7}
.tr-who{font-size:10px;letter-spacing:.8px;text-transform:uppercase;color:var(--ui-muted)}
.tr-who b{color:#8af0ff;text-transform:none}
.tr-swap{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:10px}
.tr-side small{display:block;margin-bottom:2px;font-size:8px;letter-spacing:1px;text-transform:uppercase;color:var(--ui-muted)}
.tr-arrow{font-size:18px;font-style:normal;color:#ffda76}
.tr-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}
.tr-status{padding:3px 8px;border:1px solid #557793;font-size:10px;font-weight:900;letter-spacing:1px}
.tr-status.accepted{color:#8dffb0;border-color:#4fb672}
.tr-status.declined,.tr-status.cancelled{color:#ffb0a8;border-color:#b8646d}
.tr-status.expired,.tr-status.failed{color:#9fb4c9}
@media(max-width:640px){.trade-rules{grid-template-columns:1fr 1fr}.trade-columns{grid-template-columns:1fr}.trade-row{grid-template-columns:1fr}.tr-actions{justify-content:flex-start}}
.home-menu-card.trade-card.on{--accent:#59d8ff;--lip-a:#5fd3f0;--lip-b:#0f3a52;--face-a:#1d6a8f;--face-b:#0f3f5f}
.home-menu-card.trade-card.has-offers small{color:#ffda76;font-weight:900}
.trade-row{grid-template-columns:1fr auto;grid-template-areas:"who actions" "swap swap"}
.tr-who{grid-area:who}.tr-actions{grid-area:actions}
.tr-swap{grid-area:swap;flex-wrap:nowrap;justify-content:flex-start}
.tr-swap .tr-side{flex:1 1 0;min-width:0}
@media(max-width:640px){.trade-row{grid-template-columns:1fr;grid-template-areas:"who" "swap" "actions"}.tr-swap{flex-wrap:wrap}}

/* v100 · seletor de idioma em menu suspenso e Trainer Card no desenho do site */
.lang-dd{position:relative;flex:none;display:inline-flex}
.lang-btn{display:inline-flex;align-items:center;gap:7px;height:28px;padding:0 9px;border:1px solid #557793;background:#102e4b;color:#d6e7f8;box-shadow:inset 0 0 0 1px #04162c;font-family:inherit;font-size:10px;font-weight:900;letter-spacing:1px;line-height:1;cursor:pointer}
.lang-btn:hover,.lang-dd.open .lang-btn{border-color:#f6d778;color:#ffe28a}
.lang-btn:focus-visible{outline:2px solid #fff;outline-offset:1px}
.lang-caret{width:0;height:0;margin-left:1px;border:4px solid transparent;border-top:5px solid currentColor;border-bottom:0;transition:transform .15s}
.lang-dd.open .lang-caret{transform:rotate(180deg)}
.flag{position:relative;display:inline-block;flex:none;width:20px;height:14px;overflow:hidden;box-shadow:0 0 0 1px #03102a,1px 2px 0 1px #020d20}
.flag-pt{background:#1fa04a}
.flag-pt:before{content:'';position:absolute;inset:2px 1px;background:#ffd23f;clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%)}
.flag-pt:after{content:'';position:absolute;left:7px;top:4px;width:6px;height:6px;border-radius:50%;background:#20449c}
.flag-en{background:repeating-linear-gradient(#c9343f 0 2px,#f5f5f5 2px 4px)}
.flag-en:before{content:'';position:absolute;left:0;top:0;width:9px;height:8px;background:#26428b}
.flag-es{background:linear-gradient(#c9343f 0 25%,#ffc61e 25% 75%,#c9343f 75%)}
.lang-menu{position:absolute;z-index:90;top:calc(100% + 7px);right:0;min-width:158px;padding:5px;background:linear-gradient(#123556,#071b34);border:2px solid #ba9849;box-shadow:3px 4px #020d20,inset 0 0 0 1px #04162c}
.lang-menu[hidden]{display:none}
.lang-menu:before{content:'';position:absolute;top:-7px;right:14px;width:10px;height:10px;background:#123556;border:solid #ba9849;border-width:2px 0 0 2px;transform:translateY(3px) rotate(45deg)}
.lang-opt{display:flex;align-items:center;gap:10px;padding:8px 9px;border:1px solid transparent;color:#d6e7f8;font-size:12px;font-weight:800;letter-spacing:.3px;cursor:pointer;text-transform:none}
.lang-opt:hover,.lang-opt:focus-visible{background:#1b456b;border-color:#f6d778;outline:0}
.lang-opt[aria-selected=true]{color:#ffe28a}
.lang-opt[aria-selected=true]:after{content:'';margin-left:auto;width:7px;height:7px;background:#ffe28a;clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%)}
.home-audio .lang-dd{margin-left:8px}
.compact-shell .run-nav .lang-btn{padding:5px 7px;min-height:26px;height:auto;font-size:9px}
@media(max-width:520px){.lang-btn{gap:5px;padding:0 7px}.lang-menu{min-width:148px}}

@media(max-width:520px){.menu-header-actions{gap:5px}.menu-header-actions .lang-code,.run-nav .lang-code{display:none}.menu-header-actions .lang-btn,.run-nav .lang-btn{padding:0 6px}}

/* v101 · Trainer Card como identidade do jogador, escolha de foto e barra da conta */
.av-emotions{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:10px}
.av-emotions>span{font-size:9px;font-weight:800;letter-spacing:1.4px;color:var(--ui-muted)}
.av-emotions>div{display:flex;flex-wrap:wrap;gap:6px}
.av-emo,.av-cell{border:1px solid #33557a;background:#0b2340;cursor:pointer;font:inherit}
.av-emo{padding:3px;line-height:0}
.av-emo img{width:40px;height:40px;image-rendering:pixelated}
.av-emo:hover,.av-cell:hover{border-color:#8af0ff}
.av-emo.on,.av-cell.on{border-color:var(--ui-gold);background:#21394b;box-shadow:inset 0 0 0 1px var(--ui-gold)}
.av-search{width:100%;box-sizing:border-box;margin-bottom:10px;padding:8px 10px;border:1px solid #557793;background:#04162c;color:#fff;font:inherit;font-size:13px}
.av-search:focus{outline:2px solid #f6d778;outline-offset:1px}
.av-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(62px,1fr));gap:6px;max-height:300px;overflow:auto;padding-right:2px;}
.av-cell{display:grid;justify-items:center;gap:2px;padding:4px 2px;color:var(--ui-muted)}
.av-cell img{width:40px;height:40px;image-rendering:pixelated}
.av-cell small{font-size:9px}
.av-empty{grid-column:1/-1;margin:6px 0}

/* v102 · Trainer Card alinhado, barra da conta com Gerenciar/Sair e mercado global de shinies */


.tr-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}
.tr-tab{position:relative;display:flex;align-items:center;justify-content:center;gap:7px;min-height:38px;padding:8px 6px;background:linear-gradient(#123855,#0a2440);border:1px solid var(--ui-line);box-shadow:2px 3px #020d20;color:var(--ui-muted);font:inherit;font-size:10px;font-weight:900;letter-spacing:1.2px;cursor:pointer}
.tr-tab:hover{border-color:#8af0ff;color:#fff}
.tr-tab.on{background:linear-gradient(#f2c94c,#c99a2e);border-color:#7a5a12;box-shadow:inset 0 2px 0 #ffffff55,2px 3px #020d20;color:#2b1c00}
.tr-badge{min-width:18px;padding:1px 5px;border:1px solid #4a1122;background:#d94a5e;color:#fff;font-size:10px;font-style:normal;line-height:1.4}
.tr-body{display:grid;gap:12px}
.trade-rules .tr-rule{padding:7px 10px}
.trade-rules .tr-rule b{font-size:15px}
.trade-warning.soft{border-color:#b89a49;background:#3a3218;color:#ffe28a}
.mon-card{display:flex;align-items:center;gap:10px;min-width:0;text-align:left}
.mc-art{flex:none;display:grid;place-items:center;width:64px;height:64px;background:radial-gradient(circle,#245a8c,#0a2140 75%);border:1px solid #33557a}
.mon-card.lucky .mc-art{border-color:#ffd23f;background:radial-gradient(circle,#6a4c14,#0a2140 75%)}
.mc-art img{width:56px;height:56px;object-fit:contain;image-rendering:pixelated}
.mc-info{display:grid;gap:2px;min-width:0;justify-items:start}
.mc-info b{font-size:14px;color:#fff}
.mc-info small{font-size:10px;color:var(--ui-muted)}
.mc-iv{display:flex;align-items:center;gap:8px}
.mc-iv em{font-size:10px;font-style:normal;font-weight:900;color:var(--ui-gold)}
.ivbars{display:inline-flex;align-items:flex-end;gap:2px;height:14px}
.ivbars i{display:block;width:5px;height:calc(2px + 12px * var(--v));background:linear-gradient(#8af0ff,#2a8fd0);border:1px solid #04162c}
.tr-tag.market{margin-left:8px;background:#8af0ff;color:#04162c}
.trade-chip{padding:6px}
.mk-bar{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.mk-bar input{flex:1;min-width:180px;padding:9px 10px;border:1px solid #557793;background:#04162c;color:#fff;font:inherit;font-size:13px}
.mk-bar input:focus{outline:2px solid #f6d778;outline-offset:1px}
.chip{padding:9px 12px;border:1px solid #557793;background:#102e4b;color:#d6e7f8;font:inherit;font-size:10px;font-weight:900;letter-spacing:1px;cursor:pointer}
.chip:hover{border-color:#8af0ff}
.chip.on{border-color:var(--ui-gold);background:#21394b;color:var(--ui-gold)}
.mk-count{margin:12px 0 0;font-size:11px;color:var(--ui-muted)}
.mk-count b{font-size:15px;color:var(--ui-gold)}
.mk-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:8px}
.mk-card{display:flex;flex-direction:column;gap:8px;padding:10px;background:linear-gradient(145deg,#123354,#08203c);border:1px solid var(--ui-line);box-shadow:2px 3px #020d20}
.mk-card.mine{border-color:var(--ui-gold)}
.mk-card.opened{grid-column:1/-1;border-color:#8af0ff}
.mk-card header{display:flex;align-items:center;justify-content:space-between;gap:8px}
.mk-owner{font-size:9px;font-weight:800;letter-spacing:1.3px;text-transform:uppercase;color:var(--ui-muted)}
.mk-owner b{font-size:12px;letter-spacing:.3px;text-transform:none;color:#8af0ff}
.mk-card header small{font-size:9px;color:var(--ui-muted)}
.mk-wants{display:grid;gap:5px;padding:7px 8px;background:#06162e;border:1px solid #1f3f60}
.mk-label{font-size:8px;font-weight:800;letter-spacing:1.4px;color:var(--ui-gold)}
.mk-wants>div,.mk-wants-inline{display:flex;flex-wrap:wrap;gap:5px}
.want{display:inline-flex;align-items:center;gap:4px;padding:2px 8px 2px 2px;border:1px solid #33557a;background:#0b2340;color:var(--ui-text);font:inherit;font-size:11px}
.want img{width:28px;height:28px;object-fit:contain;image-rendering:pixelated}
button.want{cursor:pointer}
button.want i{font-style:normal;font-size:10px;color:var(--ui-muted)}
.want-open{padding:5px 9px;border:1px solid #4fb672;background:#1b3a2f;color:#8dffb0;font-size:9px;font-style:normal;font-weight:900;letter-spacing:1px}
.mk-card footer{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px;margin-top:auto}
.mk-offer{display:grid;gap:8px;padding-top:8px;border-top:1px dashed #33557a}
.mk-offer h4{margin:0;font-size:10px;letter-spacing:1.4px;color:var(--ui-text)}
.mk-offer .btn{justify-self:start}
.mk-pager{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:10px;font-size:11px;color:var(--ui-muted)}
.tr-empty{display:grid;justify-items:center;gap:8px;padding:26px 12px;text-align:center;border:1px dashed #33557a;background:#06162e}
.tr-empty p{margin:0;font-size:12px;color:var(--ui-muted)}
.post-panel{display:grid;gap:10px;padding:14px;border:1px solid #33557a;background:#08203c}
.post-panel h3{display:flex;align-items:center;gap:8px;margin:8px 0 0;font-size:11px;letter-spacing:1.5px;color:var(--ui-gold)}
.post-panel h3:first-child{margin-top:0}
.post-panel h3 span{display:grid;place-items:center;width:20px;height:20px;background:var(--ui-gold);color:#2b1c00;font-size:11px;clip-path:var(--px-in)}
.post-note{margin:0;font-size:11px;line-height:1.5}
.seg{display:grid;grid-template-columns:1fr 1fr}
.seg button{padding:10px 8px;border:1px solid #557793;background:#102e4b;color:#d6e7f8;font:inherit;font-size:10px;font-weight:900;letter-spacing:1px;cursor:pointer}
.seg button.on{border-color:var(--ui-gold);background:#21394b;box-shadow:inset 0 0 0 1px var(--ui-gold);color:var(--ui-gold)}
.post-chosen{display:flex;flex-wrap:wrap;align-items:center;gap:6px;min-height:36px}
.post-chosen p{margin:0}
.post-count{margin-left:auto;font-size:11px;color:var(--ui-muted)}
.want-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(74px,1fr));gap:6px;max-height:280px;overflow:auto;}
.want-tile{display:grid;justify-items:center;gap:2px;padding:4px 2px;border:1px solid #33557a;background:#0b2340;color:var(--ui-muted);font:inherit;font-size:9px;cursor:pointer}
.want-tile:hover{border-color:#8af0ff}
.want-tile img{width:44px;height:44px;object-fit:contain;image-rendering:pixelated}
.want-tile.on{border-color:var(--ui-gold);background:#21394b;color:var(--ui-gold)}
.post-send{justify-self:start}
@media(max-width:640px){.tr-tabs{grid-template-columns:1fr 1fr}.mk-grid{grid-template-columns:1fr}.mon-card{gap:8px}.mc-art{width:56px;height:56px}.mc-art img{width:48px;height:48px}}
.tr-who small{display:block;margin-top:2px;font-size:9px;letter-spacing:.4px;text-transform:none}
.tr-actions{align-items:center}
.mc-info small{margin:0;font-size:10px;letter-spacing:0;text-transform:none}
.mc-info b{text-transform:none}
.tr-side .mon-card{margin-top:2px}

/* v102 · Trainer Card alinhado, barra da conta com Gerenciar/Sair e mercado global de shinies */
.trainer-card{position:relative;max-width:660px;margin:10px auto 8px;overflow:hidden;color:var(--ui-text);background:linear-gradient(145deg,#123354,#071b34);border:2px solid var(--ui-border);box-shadow:var(--ui-frame),3px 5px #020d20}
.trainer-card:before,.trainer-card:after{content:'';position:absolute;top:9px;width:6px;height:6px;background:var(--ui-gold)}
.trainer-card:before{left:9px}.trainer-card:after{right:9px}
.tc-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:14px 16px 0;padding:9px 20px 11px;background:linear-gradient(#c4485d,#7d2439);border-bottom:3px solid #4a1122;box-shadow:inset 0 2px 0 #ffffff3a,inset 0 -2px 0 #0000002e;clip-path:var(--px-in)}
.tc-head h2{margin:0;font-size:15px;font-weight:900;letter-spacing:3px;color:#fff3ec;text-shadow:0 2px 0 #4a1122}
.tc-role,.tc-region{padding:3px 8px;border:1px solid #04162c;font-size:9px;font-weight:900;letter-spacing:1.3px}
.tc-role{background:#ffd23f;color:#3a2400}
.tc-region{background:#0005;border-color:#ffffff40;color:#ffe9dc}
.tc-body{display:grid;grid-template-columns:176px minmax(0,1fr);gap:16px;align-items:stretch;padding:16px}
.tc-side{display:grid;gap:8px;align-content:start}
.tc-photo{position:relative;display:grid;place-items:center;width:176px;height:176px;background:radial-gradient(circle at 50% 35%,#245a8c,#0a2140 72%);border:2px solid var(--ui-border);box-shadow:inset 0 0 0 2px #06162e,2px 3px #020d20}
.tc-photo img{width:160px;height:160px;object-fit:contain;image-rendering:pixelated}
.tc-c{position:absolute;width:10px;height:10px;border:0 solid var(--ui-gold);pointer-events:none}
.tc-c.a{top:5px;left:5px;border-width:2px 0 0 2px}.tc-c.b{top:5px;right:5px;border-width:2px 2px 0 0}
.tc-c.c{bottom:5px;left:5px;border-width:0 0 2px 2px}.tc-c.d{bottom:5px;right:5px;border-width:0 2px 2px 0}
.tc-edit{display:flex;align-items:center;justify-content:center;height:30px;border:1px solid #557793;background:#102e4b;color:#d6e7f8;box-shadow:inset 0 0 0 1px #04162c;font:inherit;font-size:10px;font-weight:900;letter-spacing:1.4px;cursor:pointer}
.tc-edit:hover,.tc-edit.on{border-color:var(--ui-gold);color:var(--ui-gold)}
.tc-edit:focus-visible,.av-cell:focus-visible,.av-emo:focus-visible,.avp-close:focus-visible,.ab-btn:focus-visible{outline:2px solid #fff;outline-offset:1px}
.tc-rows{display:grid;grid-template-rows:repeat(3,minmax(0,1fr));gap:8px}
.tc-pair{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.tc-row{position:relative;display:grid;gap:3px;align-content:center;padding:8px 12px 8px 18px;background:linear-gradient(110deg,#123855,#071a32);border:1px solid var(--ui-line);box-shadow:2px 3px #020d20}
.tc-row:before{content:'';position:absolute;left:0;top:0;bottom:0;width:5px;background:#c2485a}
.tc-idn:before{background:#8a7bff}.tc-gems:before{background:#49c8f5}.tc-date:before{background:var(--ui-gold)}
.tc-row span{font-size:9px;font-weight:800;letter-spacing:1.6px;color:var(--ui-gold)}
.tc-row b{display:flex;align-items:center;gap:8px;font-size:17px;font-weight:900;color:#fff;overflow-wrap:anywhere}
.tc-name b{font-size:24px;letter-spacing:.5px}
.tc-idn b{letter-spacing:2px;font-variant-numeric:tabular-nums}
.tc-gems b{color:#a8ecff}
.tc-gem{flex:none}
.tc-picker{margin:0 16px 12px;padding:12px;background:linear-gradient(#06162e,#081f3b);border:1px solid var(--ui-line);box-shadow:inset 0 0 0 2px #04162c}
.tc-picker header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}
.tc-picker h3{margin:0;font-size:10px;font-weight:800;letter-spacing:1.6px;color:var(--ui-gold)}
.avp-close{width:26px;height:24px;border:1px solid #557793;background:#102e4b;color:#d6e7f8;font:inherit;font-size:11px;cursor:pointer}
.avp-close:hover{border-color:var(--ui-gold);color:var(--ui-gold)}
.tc-badges{margin:0 16px 16px;padding:12px;background:linear-gradient(#06162e,#081f3b);border:1px solid var(--ui-line);box-shadow:inset 0 0 0 2px #04162c}
.tc-badges-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}
.tc-badges-head span{font-size:10px;font-weight:800;letter-spacing:1.6px;color:var(--ui-text)}
.tc-badges-head em{padding:3px 9px;border:1px solid var(--ui-border);background:#21394b;color:var(--ui-gold);font-size:9px;font-style:normal;font-weight:900;letter-spacing:1.2px}
@media(max-width:560px){.tc-body{grid-template-columns:96px minmax(0,1fr);gap:8px;padding:12px}.tc-side{grid-row:1/3;gap:6px}.tc-photo{width:96px;height:96px}.tc-photo img{width:80px;height:80px}.tc-c.a,.tc-c.b{top:3px}.tc-c.c,.tc-c.d{bottom:3px}.tc-edit{height:28px;font-size:9px;letter-spacing:.8px}
 .tc-rows,.tc-pair{display:contents}.tc-name{grid-column:2;grid-row:1}.tc-idn{grid-column:2;grid-row:2}.tc-date,.tc-gems{grid-column:1/-1}.tc-name b{font-size:19px}.tc-row{padding:7px 10px 7px 16px}
 .tc-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.tc-head{margin:12px 12px 0;padding:9px 14px 11px}.tc-picker{margin:0 12px 12px}.tc-badges{margin:0 12px 12px}}

.account-bar{position:relative;z-index:2;display:flex;align-items:center;gap:10px;margin:0 0 24px;padding:6px;background:linear-gradient(90deg,#0b2450,#07173a);border:1px solid #33557a;box-shadow:inset 0 0 0 1px #04162c}
.ab-photo{flex:none;display:grid;place-items:center;width:42px;height:42px;background:radial-gradient(circle,#245a8c,#0a2140);border:2px solid var(--ui-border);box-shadow:inset 0 0 0 1px #06162e}
.ab-photo img{width:36px;height:36px;image-rendering:pixelated}
.ab-text{display:grid;flex:1;gap:1px;min-width:0}
.ab-text small{font-size:8px;font-weight:800;letter-spacing:1.6px;color:var(--ui-gold)}
.ab-text b{font-size:14px;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ab-actions{display:flex;flex:none;gap:6px}
.ab-btn{display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 11px;border:1px solid #557793;background:#102e4b;color:#d6e7f8;box-shadow:inset 0 0 0 1px #04162c;font:inherit;font-size:9px;font-weight:900;letter-spacing:1.1px;cursor:pointer}
.ab-btn:hover{border-color:var(--ui-gold);color:var(--ui-gold)}
.ab-btn.out{border-color:#b8646d;background:linear-gradient(#5a2436,#3a1a2b);color:#ffc0bc}
.ab-btn.out:hover{background:linear-gradient(#7a2f45,#4c2434);border-color:#ffc0bc;color:#fff}
.account-bar.guest .ab-photo img{width:32px;height:32px}
.account-bar.guest .ab-text b{font-size:10px;font-weight:800;letter-spacing:.8px;line-height:1.4;color:var(--ui-muted);white-space:normal}
@media(max-width:420px){.ab-btn span{display:none}.ab-btn{padding:0 10px}.account-bar{margin-bottom:20px}}


/* v103 · avisos menores, barras de rolagem em pixel art e botões do topo da home alinhados */
#toasts{bottom:16px;gap:7px;width:min(350px,calc(100vw - 24px))}
.toast-card{grid-template-columns:40px minmax(0,1fr) 20px;gap:9px;padding:8px 7px 11px 9px;border-width:2px;clip-path:polygon(6px 0,calc(100% - 6px) 0,100% 6px,100% calc(100% - 6px),calc(100% - 6px) 100%,6px 100%,0 calc(100% - 6px),0 6px)}
.tc-medal{width:40px;height:40px}
.tc-medal b{width:34px;height:34px;font-size:18px}
.tc-medal b .item-sprite,.tc-medal b .pixel{width:24px;height:24px}
.tc-ring{border-width:2px}
.tc-p{width:4px;height:4px}
.tc-copy{gap:1px}
.tc-copy em{font-size:8px;letter-spacing:2px}
.tc-copy strong{font-size:12px}
.tc-copy small{font-size:11px;line-height:1.35}
.tc-close{width:20px;height:20px;font-size:13px}
.tc-bar{height:3px}
@media(max-width:520px){#toasts{width:min(320px,calc(100vw - 20px))}}

::-webkit-scrollbar{width:14px;height:14px;background:#03102a}
::-webkit-scrollbar-track{background-color:#071a33;background-image:linear-gradient(90deg,#03102a 0 2px,transparent 2px calc(100% - 2px),#03102a calc(100% - 2px)),repeating-linear-gradient(0deg,#0b2340 0 2px,transparent 2px 4px)}
::-webkit-scrollbar-track:horizontal{background-image:linear-gradient(0deg,#03102a 0 2px,transparent 2px calc(100% - 2px),#03102a calc(100% - 2px)),repeating-linear-gradient(90deg,#0b2340 0 2px,transparent 2px 4px)}
::-webkit-scrollbar-thumb{min-height:34px;min-width:34px;background:#4f86b8;border:2px solid #03102a;box-shadow:inset 2px 2px 0 #9cd0f5,inset -2px -2px 0 #2c5f8f}
::-webkit-scrollbar-thumb:hover,::-webkit-scrollbar-thumb:active{background:#e6b93f;box-shadow:inset 2px 2px 0 #fff0a8,inset -2px -2px 0 #a97d14}
::-webkit-scrollbar-corner{background:#03102a}
::-webkit-scrollbar-button:single-button{display:block;width:14px;height:14px;background-color:#0b2a4c;background-repeat:no-repeat;background-position:center;background-size:10px 10px;border:2px solid #03102a;box-shadow:inset 2px 2px 0 #2c5f8f,inset -2px -2px 0 #06162e}
::-webkit-scrollbar-button:single-button:hover{background-color:#123f6b}
::-webkit-scrollbar-button:single-button:vertical:decrement{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 10' shape-rendering='crispEdges' fill='%23d6e7f8'%3E%3Crect x='4' y='2' width='2' height='2'/%3E%3Crect x='2' y='4' width='6' height='2'/%3E%3Crect x='0' y='6' width='10' height='2'/%3E%3C/svg%3E")}
::-webkit-scrollbar-button:single-button:vertical:increment{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 10' shape-rendering='crispEdges' fill='%23d6e7f8'%3E%3Crect x='0' y='2' width='10' height='2'/%3E%3Crect x='2' y='4' width='6' height='2'/%3E%3Crect x='4' y='6' width='2' height='2'/%3E%3C/svg%3E")}
::-webkit-scrollbar-button:single-button:horizontal:decrement{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 10' shape-rendering='crispEdges' fill='%23d6e7f8'%3E%3Crect x='2' y='4' width='2' height='2'/%3E%3Crect x='4' y='2' width='2' height='6'/%3E%3Crect x='6' y='0' width='2' height='10'/%3E%3C/svg%3E")}
::-webkit-scrollbar-button:single-button:horizontal:increment{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 10' shape-rendering='crispEdges' fill='%23d6e7f8'%3E%3Crect x='2' y='0' width='2' height='10'/%3E%3Crect x='4' y='2' width='2' height='6'/%3E%3Crect x='6' y='4' width='2' height='2'/%3E%3C/svg%3E")}
@supports not selector(::-webkit-scrollbar){*{scrollbar-width:thin;scrollbar-color:#4f86b8 #071a33}}

.site-theme .home-audio,.account-bar{gap:6px;padding:6px}
.site-theme .home-audio .sfx-toggle.home-sfx-btn,.site-theme .home-audio .lang-btn,.ab-btn{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;gap:7px;height:32px;margin:0;padding:0 10px;font-family:inherit;font-size:9px;font-weight:900;letter-spacing:1.2px;line-height:1}
.site-theme .home-audio .sfx-toggle.home-sfx-btn,.ab-btn:not(.out){width:104px}
.site-theme .home-audio .lang-btn,.ab-btn.out{width:76px}
.site-theme .home-audio .sfx-toggle.home-sfx-btn svg{width:14px;height:14px}
.home-audio .lang-dd{margin-left:0}
@media(max-width:520px){.site-theme .home-audio .sfx-toggle.home-sfx-btn,.site-theme .home-audio .lang-btn,.ab-btn,.ab-btn.out,.ab-btn:not(.out){width:44px;padding:0}
 .home-audio .lang-code,.ab-btn span{display:none}.site-theme .home-audio .sfx-toggle .sfx-label{display:none}}
.ab-text{justify-items:start;text-align:left}

/* v104 · barra de som no rodapé da home e seta de movimento nos cartões do menu */
.site-theme .home-window .home-audio{margin:14px 0 0}
.home-audio .lang-menu{top:auto;bottom:calc(100% + 7px)}
.home-audio .lang-menu:before{top:auto;bottom:-7px;background:#071b34;border-width:0 2px 2px 0;transform:translateY(-3px) rotate(45deg)}

/* v105 · a seta do botão "Seguir para o santuário" (três divisas em movimento) vira a seta de todos os botões */
.chev{display:inline-flex;flex:none;align-items:center;gap:2px;margin-left:8px;vertical-align:middle}
.chev i{display:block;width:7px;height:12px;background:currentColor;clip-path:polygon(0 0,60% 0,100% 50%,60% 100%,0 100%,40% 50%);animation:rg-chev 1.4s ease-in-out infinite}
.chev i:nth-child(2){animation-delay:.15s}.chev i:nth-child(3){animation-delay:.3s}
.chev.back{margin:0 8px 0 0;transform:scaleX(-1)}
button:hover:not(:disabled) .chev i,.btn:hover:not(:disabled) .chev i{animation-duration:.7s}
.card-go .chev{margin-left:0}.card-go .chev i{width:8px;height:14px;background:#7a2f00}
.pkt-next .chev{margin-left:6px}
.pkt-next .chev i{width:6px;height:10px}
@media(prefers-reduced-motion:reduce){.chev i{animation:none;opacity:1}}

/* home: Pokédex e Shiny Dex lado a lado (style.css deixava o menu em uma coluna) */
.site-theme .home-window:not(.auth-active) .home-actions{grid-template-columns:repeat(2,minmax(0,1fr))}
.site-theme .home-window:not(.auth-active) .home-menu-card:not(.wide){min-height:62px;padding:9px 12px}
.site-theme .home-window:not(.auth-active) .home-menu-card:not(.wide) .home-menu-copy small{font-size:9px;line-height:1.3}
.site-theme .home-window:not(.auth-active) .home-menu-card{grid-column:auto}
.site-theme .home-window:not(.auth-active) .home-menu-card.wide{grid-column:1/-1}

/* v106 · escolha do inicial mais compacta e proporcional */
.site-theme.menu-page:has(.pk-grid) .main{padding-top:12px;padding-bottom:14px}
.pk-intro .eyebrow{font-size:8px;letter-spacing:2.4px}
.pk-intro h1{margin:2px 0 1px;font-size:19px;letter-spacing:.8px}
.pk-intro p{font-size:11px}
.gift-banner{margin-top:8px;padding:3px 10px;gap:8px}
.gift-banner .item-tag.big .item-sprite{width:24px;height:24px}
.gift-banner>span:first-child{font-size:8px;letter-spacing:1.6px}
.gift-banner strong{font-size:11px}
.gift-banner small{font-size:9px;line-height:1.2}
.pk-lab{padding:5px 8px;font-size:10px}
.pk-grid{gap:12px;margin-top:10px}
.pk-card{gap:5px;padding:8px 12px 11px}
.pk-top{font-size:9px}
.pk-portrait{height:100px}
.pk-halo{width:104px;height:104px}
.pk-card:hover .pk-halo{width:128px;height:128px}
.pk-anim{width:88px}
.pk-shadow{width:62px;height:9px;bottom:4px}
.pk-info{gap:5px}
.pk-info h2{font-size:17px}
.pk-types{gap:4px}
.pk-types .type-logo{min-height:22px;padding:1px 6px;gap:4px;font-size:9px}
.pk-types .type-logo img,.pk-types .type-logo svg{width:14px;height:14px}
.pk-stats{gap:2px;padding:5px 7px}
.pk-stats span{grid-template-columns:32px 1fr;gap:5px}
.pk-stats small{font-size:7px}
.pk-stats i{height:4px}
.pk-go-wrap .btn.pk-go{min-height:34px;padding:6px 10px;font-size:11px}
.pk-extra{gap:12px;margin-top:12px}
.pk-challenge{gap:4px 12px;padding:9px 14px}
.pkc-art{width:64px;height:64px}
.pkc-ball{width:50px;height:50px}
.pkc-art b{right:0;bottom:2px;width:22px;height:22px;font-size:14px}
.pkc-copy h2{font-size:17px;letter-spacing:2px}
.pkc-copy p{font-size:11px;line-height:1.35}
.pk-challenge .pkc-go{margin:2px 0 0}
.pk-tips{gap:6px;padding:9px 12px}
.pkt-body{gap:6px;padding:7px 10px}
.pkt-body p{font-size:11px;line-height:1.4}
.pk-grid{margin-top:8px}
.pk-portrait{height:94px}
.pk-extra{margin-top:10px}
.pk-challenge{padding:8px 14px}
.pkc-copy{gap:1px}
.pkc-go .btn.pk-go{min-height:30px}

/* v107 · insígnias dos lendários no Trainer Card e notas de habilidade na tabela de tipos */
.tc-bdgs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}
.bdg{display:grid;justify-items:center;gap:5px;padding:8px 4px 7px;background:linear-gradient(#0b2340,#071a33);border:1px solid #33557a}
.bdg img{width:64px;height:64px;object-fit:contain;filter:grayscale(1) brightness(.32) contrast(1.15);opacity:.8}
.bdg b{font-size:8px;font-weight:900;letter-spacing:1.2px;color:#5f7d9c}
.bdg.got{border-color:var(--ui-border);background:linear-gradient(#123c63,#0a2544);box-shadow:inset 0 0 0 1px #04162c}
.bdg.got img{filter:drop-shadow(0 2px 0 #0008);opacity:1}
.bdg.got b{color:var(--ui-gold)}
@media(max-width:520px){.bdg{padding:6px 2px 5px}.bdg img{width:44px;height:44px}.bdg b{font-size:6.5px;letter-spacing:.6px}.tc-bdgs{gap:5px}}
.tip-note{margin:6px 0 0;font-size:10px;line-height:1.35;color:#9fc4e8}

/* insígnias em tamanho de insígnia */
.tc-bdgs{display:flex;flex-wrap:wrap;gap:8px}
.bdg{width:54px;gap:3px;padding:5px 2px 4px}
.bdg img{width:34px;height:34px}
.bdg b{font-size:6.5px;letter-spacing:.8px}
@media(max-width:520px){.tc-bdgs{gap:6px}.bdg{width:48px;padding:4px 1px 3px}.bdg img{width:30px;height:30px}.bdg b{font-size:6px;letter-spacing:.4px}}
.tip-charts li.none{justify-content:center;color:#7d9ab8}

/* v108 · aviso de convidado: só o texto, menor e centralizado */
.site-theme .account-bar.guest{width:fit-content;max-width:100%;margin:0 auto 16px;padding:6px 14px;justify-content:center;text-align:center}
.account-bar.guest .ab-text{flex:none;justify-items:center;text-align:center}
.account-bar.guest .ab-text b{font-size:9px;font-weight:700;letter-spacing:.3px;line-height:1.5;text-align:center;text-transform:none}
@media(max-width:420px){.site-theme .account-bar.guest{margin-bottom:14px;padding:6px 10px}.account-bar.guest .ab-text b{font-size:8.5px}}

/* v109 · tela do parceiro inicial no mesmo tamanho dos outros menus (660px de largura, altura natural) */
.menu-page:has(.pk-grid) .main,.site-theme.menu-page:has(.pk-grid) .menu-top{width:calc(100% - 24px)!important;max-width:660px!important}
.site-theme.menu-page:has(.pk-grid) .main{flex:0 0 auto!important;height:auto!important;min-height:0!important;padding:12px 12px 14px;gap:8px}
.pk-grid{gap:8px;margin-top:6px}
.pk-card{gap:4px;padding:8px 8px 10px}
.pk-top{font-size:8px}
.pk-portrait{height:92px}
.pk-halo{width:96px;height:96px}
.pk-anim{width:80px}
.pk-info h2{font-size:15px}
.pk-types .type-logo{padding:1px 4px;gap:3px}
.pk-types .type-logo strong{font-size:8px}
.pk-go-wrap .btn.pk-go{min-height:32px;padding:6px 4px;font-size:9px;letter-spacing:.6px;gap:5px}
.pk-extra{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:8px;margin-top:8px}
.pk-tips{padding:9px 10px}
@media(max-width:760px){.pk-portrait{height:110px}.pk-anim{width:92px}}

/* v110 · ícones de tipo proporcionais ao cartão do parceiro (a regra base usa !important no tamanho) */
.pk-types .type-logo{grid-template-columns:18px auto;min-height:24px;height:auto;padding:2px 7px 2px 3px;gap:4px;box-shadow:1px 1px 0 #8d897c}
.pk-types .type-logo img{width:18px!important;height:18px!important}
.pk-types .type-logo strong{font-size:8px;letter-spacing:.3px}

/* v111 · selos de tipo do cartão do parceiro mais discretos; marca de simulação */
.pk-types .type-logo{grid-template-columns:14px auto;min-height:20px;padding:2px 6px 2px 3px;gap:3px}
.pk-types .type-logo img{width:14px!important;height:14px!important}
.pk-types .type-logo strong{font-size:7px;letter-spacing:.2px}
.pill.sim{color:#2b0a5c;background:linear-gradient(#f0dcff,#a855f7);border-color:#c58bff}
.sim-note{text-align:center;letter-spacing:1px}

/* v112 · Trainer Card no formato de identidade (cartão pequeno, ~430px) */
.trainer-card{max-width:430px;margin:12px auto 8px;box-shadow:var(--ui-frame),2px 3px #020d20}
.trainer-card:before,.trainer-card:after{top:6px;width:4px;height:4px}
.trainer-card:before{left:6px}.trainer-card:after{right:6px}
.tc-head{margin:8px 8px 0;padding:6px 12px 7px;border-bottom-width:2px}
.tc-head h2{font-size:11px;letter-spacing:2.2px}
.tc-role,.tc-region{padding:2px 6px;font-size:7px;letter-spacing:1px}
.tc-body{grid-template-columns:96px minmax(0,1fr);gap:10px;padding:10px 8px}
.tc-side{grid-row:auto;gap:5px}
.tc-photo{width:96px;height:96px;box-shadow:inset 0 0 0 2px #06162e,1px 2px #020d20}
.tc-photo img{width:84px;height:84px}
.tc-c{width:7px;height:7px}
.tc-c.a,.tc-c.b{top:3px}.tc-c.c,.tc-c.d{bottom:3px}.tc-c.a,.tc-c.c{left:3px}.tc-c.b,.tc-c.d{right:3px}
.tc-edit{height:22px;font-size:8px;letter-spacing:1px}
.tc-rows{display:grid;grid-template-rows:none;grid-auto-rows:minmax(0,auto);gap:6px;align-content:space-between}
.tc-pair{display:grid;grid-template-columns:1fr 1fr;gap:6px}
.tc-name,.tc-idn,.tc-date,.tc-gems{grid-column:auto;grid-row:auto}
.tc-row{gap:1px;padding:4px 8px 4px 13px;box-shadow:1px 2px #020d20}
.tc-row:before{width:4px}
.tc-row span{font-size:7px;letter-spacing:1.2px}
.tc-row b{gap:6px;font-size:12px}
.tc-name b{font-size:17px;letter-spacing:.3px}
.tc-idn b{letter-spacing:1.4px}
.tc-gem{width:16px;height:16px}
.tc-picker{margin:0 8px 8px;padding:8px}
.tc-badges{margin:0 8px 8px;padding:7px 9px 8px}
.tc-badges-head{margin-bottom:7px}
.tc-badges-head span{font-size:8px;letter-spacing:1.3px}
.tc-badges-head em{padding:2px 7px;font-size:8px}
.tc-bdgs{gap:6px}
.bdg{width:44px;padding:4px 1px 3px}
.bdg img{width:28px;height:28px}
.bdg b{font-size:5.5px;letter-spacing:.4px}
@media(max-width:560px){.trainer-card{max-width:calc(100% - 4px)}.tc-body{grid-template-columns:88px minmax(0,1fr);gap:8px;padding:8px}.tc-side{grid-row:auto}.tc-photo{width:88px;height:88px}.tc-photo img{width:76px;height:76px}.tc-rows{display:grid}.tc-pair{display:grid}.tc-head{margin:8px 8px 0;padding:6px 10px 7px}.tc-picker,.tc-badges{margin:0 8px 8px}.tc-name b{font-size:15px}.tc-row{padding:4px 6px 4px 12px}.tc-edit{height:22px;font-size:7.5px;letter-spacing:.6px}}

/* v113 · etiqueta do tipo de golpe (físico / especial) ao lado do movimento */
.mv-tag{display:inline-block;margin-left:7px;padding:1px 5px;vertical-align:middle;font-size:8px;font-style:normal;font-weight:900;letter-spacing:.6px;line-height:1.3;color:#fff;border:1px solid #0007;text-shadow:0 1px 0 #0006}
.mv-tag.phys{background:#b84a2f}.mv-tag.spec{background:#4a5fd0}

/* v114 · aposta 1 de 2 no Upgrader */
.bet-round{display:inline-block;align-self:center;margin:0 0 6px;padding:3px 10px;font-size:8px;font-weight:900;letter-spacing:1.2px;color:#0a2a12;background:linear-gradient(#b8f5a0,#5fd06a);border:1px solid #04162c}
.bet-round.last{color:#3a2400;background:linear-gradient(#ffe28a,#f0a92e)}
.capture-pokemon.target-card.captured{opacity:.6;filter:grayscale(.5)}
.capture-pokemon.target-card.captured .target-chance{color:#87ef42}

/* v115 · Hall da Fama com os seis Pokémon lado a lado */
.hall-team{grid-template-columns:repeat(6,minmax(0,1fr));gap:5px}
.hall-member{padding:7px 3px 6px;gap:2px}
.hall-portrait img.pixel{width:52px;height:52px}
.hall-member strong{font-size:10px}
.hall-member small{font-size:8px}
.hall-ability{font-size:7px!important;line-height:1.3}
.hall-member em{font-size:8px}
.hall-member .tip-type{font-size:6.5px;padding:1px 3px}
.hall-types{gap:2px}
@media(max-width:560px){.hall-team{grid-template-columns:repeat(3,minmax(0,1fr))}.hall-portrait img.pixel{width:56px;height:56px}}

/* v115 · página de trocas: cabeçalho, abas, filtro e botões no mesmo desenho e tamanho */
.tr-head{display:grid;gap:3px;margin:0 0 12px;padding:0 0 10px;border-bottom:1px solid var(--ui-line)}
.tr-head h2{margin:0;font-size:20px;letter-spacing:2.5px;color:var(--ui-gold)}
.tr-head p{margin:0;font-size:11px;font-weight:700;letter-spacing:.4px;color:var(--ui-muted)}
.trades-page{display:grid;gap:10px;align-content:start}
.trades-page .trade-rules{gap:8px;margin:0}
.trades-page .btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:38px;height:38px;padding:0 16px;font-size:10px;font-weight:900;letter-spacing:1.2px;line-height:1;white-space:nowrap}
.trades-page .btn.tr-tab{width:100%;padding:0 6px;background:none;box-shadow:none}
.tr-tabs{gap:8px}
.tr-tab .tr-badge{position:relative;z-index:2}
.mk-bar{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:stretch;gap:8px}
.mk-bar input{min-width:0;height:38px;padding:0 12px;font-size:12px;font-weight:700;border:2px solid #33557a;box-shadow:inset 0 2px 0 #00000055}
.trades-page .btn.tr-chip{background:none;box-shadow:none}
.tr-chip i{position:relative;z-index:2;display:grid;place-items:center;flex:none;width:14px;height:14px;font-style:normal;font-size:11px;font-weight:900;line-height:1;color:#09213c;background:#04162c;border:2px solid #7f9cba}
.tr-chip.on i{background:#fff6cf;border-color:#09213c}
.mk-count{margin:2px 0 0;font-size:10px;font-weight:800;letter-spacing:1px;text-transform:uppercase}
.mk-grid{margin-top:6px}
.mk-card{gap:10px;padding:12px}
.mk-card footer{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);justify-content:stretch;gap:8px}
.mk-card footer .btn,.mk-offer .btn{width:100%}
.mk-offer .btn{justify-self:stretch}
.tr-actions{gap:8px}
.tr-actions .btn{min-width:0}
.tr-empty{gap:10px;padding:32px 14px 30px;border:2px dashed #33557a;background:linear-gradient(#061a35,#04122a)}
.tr-empty b{font-size:14px;letter-spacing:.5px;color:#fff}
.tr-empty-icon{display:grid;place-items:center;width:44px;height:44px;font-size:24px;color:#ffe28a;background:radial-gradient(circle,#4a3a10,#0a2140 75%);border:2px solid var(--ui-gold);box-shadow:inset 0 0 0 2px #04162c}
.tr-empty .btn{margin-top:4px;min-width:180px}
.seg{gap:8px}
.seg button{min-height:38px;padding:0 10px;border:2px solid #33557a}
.seg button.on{border-color:var(--ui-gold)}
.post-panel{gap:12px;padding:16px}
.post-send{justify-self:stretch}
.trade-search{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}
.trade-search input{min-width:0;height:38px}
@media(max-width:640px){.mk-bar{grid-template-columns:1fr 1fr}.mk-bar input{grid-column:1/-1}.trades-page .btn{padding:0 10px}.tr-tabs{grid-template-columns:1fr 1fr}}
.capture-modal .upgrade-center>.bet-round{flex:none;margin:8px auto 2px;padding:4px 10px;line-height:1.4}

/* v116 · Hall: cabeçalho sem troféu, botões menores, contadores; mochila com todos os Pokémon */
.hall-stats{flex-wrap:wrap;gap:6px}
.hall-stats span{min-width:0;padding:6px 10px;text-align:center}
.hall-stats b{font-size:17px}
.hall-stats small{font-size:7px;letter-spacing:.8px}
.hall-boss{padding:6px 12px;background:none;border:0;border-left:3px solid var(--ui-gold)}
.hall-boss span{font-size:12px;font-weight:700;color:var(--ui-muted)}
.hall-boss strong{display:inline;font-size:13px;color:#fff}
.hall-card>footer .btn{min-height:28px;height:28px;padding:0 12px;font-size:9px;letter-spacing:.8px}
.hall-card>footer{gap:6px}
.compact-shell .expedition-dock .bag-grid{overflow-y:auto;overflow-x:hidden;grid-template-rows:none;grid-auto-rows:calc(50% - 2px)}
@media(max-width:760px){.compact-shell .expedition-dock .bag-grid{grid-auto-rows:calc(25% - 2px)}}

/* v117 · Organizar equipe (arrastar sprites entre o time e a mochila) */
.organize-modal{width:min(780px,calc(100vw - 24px));max-height:calc(100dvh - 24px)}
.organize-modal .modal-body{overflow-y:auto}
.org{display:grid;gap:12px}
.org-help{margin:0;padding:8px 12px;font-size:11px;font-weight:700;line-height:1.5;color:#a9c8e5;background:#06162e;border:1px dashed #33557a}
.org-panel{display:grid;gap:10px;padding:12px;background:linear-gradient(#0e2b4a,#08203c);border:1px solid var(--ui-line);box-shadow:inset 0 0 0 2px #04162c}
.org-panel>header{display:flex;align-items:center;justify-content:space-between;gap:10px}
.org-panel h3{margin:0;font-size:11px;letter-spacing:2px;color:var(--ui-gold)}
.org-panel>header span{padding:2px 9px;font-size:9px;font-weight:900;letter-spacing:1px;color:var(--ui-gold);background:#21394b;border:1px solid var(--ui-border)}
.org-team{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}
.org-slot{position:relative;display:grid;align-content:stretch;min-height:132px;background:#06162e;border:2px dashed #33557a}
.org-slot.filled{border-style:solid;border-color:#33557a}
.org-slot.empty{place-items:center;cursor:pointer}
.org-slot.empty:hover{border-color:#8af0ff}
.org-num{position:absolute;z-index:2;top:3px;left:4px;font-style:normal;font-size:9px;font-weight:900;color:#8fa8cf}
.org-empty{font-size:8px;font-weight:900;letter-spacing:1.2px;color:#557793}
.org-mon{position:relative;display:grid;justify-items:center;align-content:center;gap:2px;min-width:0;padding:8px 4px 7px;text-align:center;cursor:grab;background:linear-gradient(#0d2c4d,#071c36);border:1px solid #33557a;user-select:none;-webkit-user-drag:element}
.org-slot .org-mon{border:0;height:100%}
.org-mon:hover{border-color:#8af0ff}
.org-mon:active{cursor:grabbing}
.org-mon img.pixel{width:56px;height:56px;object-fit:contain;image-rendering:pixelated;pointer-events:none}
.org-mon strong{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px;color:#fff}
.org-mon small{font-size:8px;font-weight:800;color:#8fa8cf}
.org-mon.shiny{box-shadow:inset 0 0 0 1px #7fe6ff66}
.org-mon.ko{filter:grayscale(.8)}
.org-hp{display:block;width:80%;height:5px;background:#03102a;border:1px solid #ffffff30}
.org-hp b{display:block;height:100%;background:#59d58a}
.org-hp.low b{background:#e5534b}
.org-cv{font-style:normal;font-size:8px;font-weight:900;color:var(--ui-gold)}
.org-mon.selected{border-color:var(--ui-gold);box-shadow:0 0 0 2px var(--ui-gold),0 0 14px #ffd23f66;background:linear-gradient(#3a3210,#1d1a08)}
.org-slot:has(.org-mon.selected){border-color:var(--ui-gold)}
.org-mon.dragging{opacity:.35}
.org .drop-target{outline:2px dashed #8af0ff;outline-offset:1px;background:#0b3550}
.org.has-selection .org-slot,.org.has-selection .org-bag{cursor:pointer}
.org-bag-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:8px;max-height:280px;overflow-y:auto;padding:2px}
.org-bag-empty{margin:0;padding:22px 10px;text-align:center;font-size:11px;line-height:1.5;color:var(--ui-muted);border:1px dashed #33557a;background:#06162e}
.org.locked .org-mon{cursor:not-allowed;opacity:.7}
@media(max-width:620px){.org-team{grid-template-columns:repeat(3,minmax(0,1fr))}.org-bag-grid{grid-template-columns:repeat(auto-fill,minmax(84px,1fr))}}

/* v117 · Menu de simulação organizado (abas, busca e grade de botões iguais) */
.sim-page{gap:12px}
.sim-head{display:grid;grid-template-columns:minmax(0,1fr) 240px;align-items:end;gap:14px}
.sim-head input{height:38px;padding:0 12px;font:inherit;font-size:12px;font-weight:700;color:#fff;background:#04162c;border:2px solid #33557a;box-shadow:inset 0 2px 0 #00000055}
.sim-head input:focus{outline:2px solid #f6d778;outline-offset:1px}
.sim-tabs{display:flex;flex-wrap:wrap;gap:6px;padding-bottom:12px;border-bottom:1px solid var(--ui-line)}
.sim-tab{display:inline-flex;align-items:center;gap:7px;height:32px;padding:0 12px;font:inherit;font-size:10px;font-weight:900;letter-spacing:.8px;color:var(--ui-muted);background:#0b2340;border:1px solid #33557a;cursor:pointer}
.sim-tab small{padding:1px 6px;font-size:9px;color:#8fc5ff;background:#04162c}
.sim-tab:hover{border-color:#8af0ff;color:#fff}
.sim-tab.on{color:var(--ui-gold);background:#21394b;border-color:var(--ui-gold)}
.sim-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.sim-btn{display:flex!important;flex-direction:column;align-items:flex-start!important;justify-content:center;gap:2px;height:auto!important;min-height:46px;padding:8px 12px!important;text-align:left;white-space:normal!important;font-size:10px!important;line-height:1.3!important}
.sim-btn small{font-size:8px;font-weight:800;letter-spacing:.8px;color:#8fc5ff}
.sim-none{grid-column:1/-1;margin:8px 0}
@media(max-width:760px){.sim-head{grid-template-columns:1fr}.sim-list{grid-template-columns:1fr 1fr}}
@media(max-width:460px){.sim-list{grid-template-columns:1fr}}

/* v118 · Passivos ativos no visual do site (a versão compacta do dock continua só com os ícones) */
.pi-copy,.passive-empty small{display:none}
.modal .active-passives{margin:12px 0 0;padding:0;background:linear-gradient(#0e2b4a,#08203c);border:1px solid var(--ui-line);box-shadow:inset 0 0 0 2px #04162c;color:var(--ui-text)}
.modal .active-passives>header{display:flex;align-items:center;gap:10px;padding:10px 12px;background:none;border:0;border-bottom:1px solid var(--ui-line)}
.modal .active-passives>header strong{font-size:11px;font-weight:800;letter-spacing:2px;color:var(--ui-gold)}
.modal .active-passives>header .stat-help{margin-right:auto}
.modal .active-passives>header small{min-width:22px;padding:2px 8px;text-align:center;font-size:10px;font-weight:900;color:var(--ui-gold);background:#21394b;border:1px solid var(--ui-border)}
.modal .passive-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:8px;padding:12px}
.modal .passive-item{display:flex!important;flex-direction:row!important;align-items:center;justify-content:flex-start!important;gap:10px;padding:8px 10px;text-align:left;background:#06162e;border:1px solid #33557a}
.modal .passive-item:hover,.modal .passive-item:focus-visible{border-color:#8af0ff}
.modal .passive-item .item-sprite{flex:none;width:32px;height:32px}
.modal .pi-copy{display:grid;gap:1px;min-width:0}
.modal .pi-copy b{font-size:11px;color:#fff}
.modal .pi-copy em{font-style:normal;font-size:9px;font-weight:700;line-height:1.3;color:var(--ui-muted)}
.modal .passive-empty{grid-column:1/-1;display:grid;gap:4px;justify-items:center;padding:16px 12px;text-align:center;font-size:11px;font-weight:800;color:var(--ui-text);background:#06162e;border:1px dashed #33557a}
.modal .passive-empty small{display:block;max-width:420px;font-size:10px;font-weight:700;line-height:1.5;color:var(--ui-muted)}

/* v119 · Upgrader: uma roleta por alvo e lista só com o que ainda pode ser capturado */
.shiny-rate.elite-rate{margin-bottom:6px;color:#ffb0a8;background:linear-gradient(90deg,#3a1420,#1c0a14);border-color:#b8646d}
.shiny-rate.elite-rate span{color:#ff9a8f}
.shiny-rate.elite-rate strong{color:#ffd0c8}
.caught-strip{display:grid;gap:4px;padding:8px 10px;background:#0d3a24;border:1px solid #4fb672}
.caught-strip b{font-size:8px;font-weight:900;letter-spacing:1.4px;color:#8dffb0}
.caught-strip span{display:flex;flex-wrap:wrap;gap:6px}
.caught-strip img.pixel{width:28px;height:28px;object-fit:contain;vertical-align:middle}
.caught-strip em{display:inline-flex;align-items:center;gap:4px;padding:2px 8px 2px 2px;font-style:normal;font-size:10px;font-weight:800;color:#fff;background:#06162e;border:1px solid #33557a}
.capture-pokemon.target-card.spinning-now{outline:2px solid #ffe28a;outline-offset:1px;box-shadow:0 0 14px #ffd23f88}
.capture-pokemon.target-card.won{border-color:#4fb672;background:linear-gradient(#123d28,#0a2418)}
.capture-pokemon.target-card.won .target-chance{color:#8dffb0}
.capture-pokemon.target-card.lost{filter:grayscale(.6);opacity:.75}
.capture-pokemon.target-card.lost .target-chance{color:#ff9a8f}

/* v120 · explicação do Pokémon Elite na folha de chances */
.encounter-rate-sheet .elite-note{padding:9px 12px;font-size:12px;line-height:1.55;color:#f3d9d4;background:#2a1220;border-left:3px solid #b8646d}
.encounter-rate-sheet .elite-note b{color:#ffb0a8}

/* v121 · Dificuldade do chefe no menu de simulação */
.diff-panel{display:grid;gap:12px}
.diff-intro{margin:0;padding:10px 12px;font-size:11px;font-weight:700;line-height:1.6;color:#a9c8e5;background:#06162e;border:1px dashed #33557a}
.diff-intro b{color:#fff}
.diff-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.diff-card{display:grid;gap:10px;padding:14px;background:linear-gradient(145deg,#123354,#08203c);border:1px solid var(--ui-line);box-shadow:2px 3px #020d20}
.diff-card.on{border-color:var(--ui-gold);box-shadow:0 0 0 1px var(--ui-gold),2px 3px #020d20}
.diff-card header{display:flex;align-items:center;justify-content:space-between;gap:8px}
.diff-card h3{margin:0;font-size:15px;letter-spacing:1.5px;color:#fff}
.diff-card header em{padding:2px 8px;font-style:normal;font-size:8px;font-weight:900;letter-spacing:1.2px;color:#0a2a12;background:linear-gradient(#b8f5a0,#5fd06a)}
.diff-stats{display:grid;gap:4px;margin:0;padding:0;list-style:none;font-size:11px;font-weight:700;color:var(--ui-muted)}
.diff-stats b{color:var(--ui-gold)}
.diff-win{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}
.diff-win span{display:grid;justify-items:center;gap:2px;padding:6px 4px;font-size:8px;font-weight:900;letter-spacing:1px;color:var(--ui-muted);background:#06162e;border:1px solid #33557a}
.diff-win b{font-size:18px;letter-spacing:0;color:#fff}
.diff-card .btn{width:100%}
@media(max-width:760px){.diff-grid{grid-template-columns:1fr}}
