:root{--battle-bp-wide:1100px;--battle-bp-stack:840px;--battle-bp-narrow:760px;--battle-bp-phone:520px;--battle-bp-short:720px;--battle-bp-tight:640px;--battle-safe-x:max(8px,env(safe-area-inset-left,0px),env(safe-area-inset-right,0px));--battle-safe-bottom:max(8px,env(safe-area-inset-bottom,0px))}.game-main:has(.battle-layout){height:100dvh;max-height:100dvh;min-height:0;overflow:hidden}.battle-game-panel,.battle-layout,.battle-trainer-intro--redesign,.battle-vs-wrap{overflow-x:clip;max-width:100vw}.battle-arena-lobby{overflow:visible;max-width:100%}.battle-layout:has(.battle-arena-lobby),.game-main:has(.battle-arena-lobby){overflow:visible}.battle-layout>*{flex:1 1 auto;min-height:0;min-width:0}.battle-layout:has(.battle-arena-lobby)>.battle-arena-lobby{min-width:0;overflow:visible}.battle-arena-lobby{gap:clamp(6px,1.2vh,12px);padding:clamp(8px,1.8vw,16px)}.battle-select-screen{display:grid;grid-template-rows:auto minmax(0,1fr) auto;height:100%;max-height:100dvh;min-height:0;overflow:hidden}.battle-select-layout{container-type:size;container-name:battle-select}.battle-roster-grid,.battle-select-layout,.battle-team-editor-panel{min-height:0;overflow:hidden}.battle-roster-card{padding:clamp(5px,1.2vw,8px);gap:3px}.battle-roster-card strong{font-size:clamp(.68rem,2.4vw,.82rem);line-height:1.15;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.battle-roster-card .creature-stage-sm{width:clamp(44px,9vw,64px);height:clamp(44px,9vw,64px)}.battle-team-editor-slot .creature-stage-sm{width:clamp(44px,10vw,68px);height:clamp(44px,10vw,68px)}.battle-team-editor-slot span,.battle-team-editor-slot strong{font-size:clamp(.65rem,2.4vw,.78rem)}.battle-trainer-intro--redesign,.battle-trainer-intro--redesign.battle-vs-wrap{height:100dvh;max-height:100dvh;min-height:0;overflow:hidden}.battle-trainer-intro--redesign .battle-trainer-row--intro.battle-intro-layout{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);grid-template-rows:minmax(0,1fr);grid-template-areas:none;align-items:end;justify-items:stretch;flex:1 1;min-height:0;width:100%;max-width:1400px;margin-inline:auto;max-height:100%;padding-top:clamp(52px,9vh,96px)}.battle-trainer-intro--redesign .battle-trainer-side--player{grid-column:1;justify-self:stretch;align-self:end}.battle-trainer-intro--redesign .battle-trainer-side--cpu{grid-column:3;justify-self:stretch;align-self:end}.battle-trainer-intro--redesign .battle-vs-reveal{grid-column:2;justify-self:center;align-self:center}.battle-intro-slots,.battle-intro-slots--player,.battle-intro-slots--rival{justify-content:center}.battle-intro-slots{display:flex;flex-wrap:nowrap;align-items:flex-end;gap:clamp(3px,.9vw,10px);width:100%;max-width:100%;overflow:hidden}.battle-intro-slot{flex:1 1;min-width:0;width:auto;max-width:clamp(72px,18vw,158px)}.battle-intro-slot-frame{min-height:0;height:100%}.battle-intro-slot-sprite{height:clamp(52px,11svh,102px);margin-bottom:clamp(20px,4svh,34px)}.battle-combat-shell{height:100%;max-height:100dvh;grid-template-rows:minmax(0,1fr)}.battle-combat-shell,.battle-combat-ui{min-height:0;overflow:hidden}.battle-arena-host{overflow:hidden}.battle-combat-hud{flex-shrink:0;max-height:min(46svh,420px);overflow:hidden}.battle-move-dock{min-height:0;max-height:100%;overflow:visible}.battle-narration-feed{flex-shrink:0}.battle-narration-line{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.battle-move-grid{min-height:0}.battle-switch-modal{max-height:min(92dvh,calc(100dvh - 24px));overflow:hidden}.battle-switch-stats{overflow:hidden}@media (max-width:840px){.battle-switch-modal{grid-template-areas:"countdown" "team" "preview";grid-template-columns:1fr;grid-template-rows:auto auto minmax(0,1fr);width:min(100%,calc(100vw - 20px));max-height:min(94dvh,calc(100dvh - 16px));padding:clamp(44px,10vw,52px) clamp(12px,3vw,16px) clamp(12px,3vw,16px)}.battle-switch-team{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,auto))}.battle-switch-preview{max-height:min(48dvh,100%)}}@media (min-width:841px){.battle-switch-team{grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:auto}}@media (max-width:840px) and (min-width:560px){.battle-switch-team{grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:auto}}@media (max-height:520px){.battle-switch-modal{padding-top:40px;gap:8px}.battle-switch-team .battle-switch-card .creature-stage-sm{width:clamp(40px,9vh,52px);height:clamp(40px,9vh,52px)}.battle-switch-preview .creature-stage-lg{width:clamp(64px,12vh,96px);height:clamp(64px,12vh,96px)}.battle-switch-preview{gap:6px}.battle-selected-move{padding:5px 6px}}.battle-combat-shell,.battle-game-panel,.battle-select-screen{padding-left:max(clamp(8px,1.6vw,14px),var(--battle-safe-x));padding-right:max(clamp(8px,1.6vw,14px),var(--battle-safe-x))}.battle-combat-shell{padding-bottom:max(clamp(8px,1.6vw,14px),var(--battle-safe-bottom))}.battle-mode-card{min-height:clamp(168px,28vw,230px);padding:clamp(14px,2.5vw,22px)}.battle-lane{min-height:clamp(108px,18svh,145px)}.battle-row--ally .battle-lane,.battle-row--foe .battle-lane{min-height:clamp(96px,17svh,180px)}.battle-move-dock .battle-command-stage{gap:clamp(5px,1.2vw,8px)}.battle-move-btn{min-height:clamp(48px,8svh,62px);grid-template-columns:clamp(40px,9vw,52px) minmax(0,1fr) clamp(22px,5vw,28px);font-size:clamp(.76rem,2.2vw,.88rem)}.battle-move-type .move-type-icon-img--battle-medallion{width:clamp(32px,7vw,40px)!important;height:clamp(32px,7vw,40px)!important}.battle-intro-slot{width:clamp(92px,13vw,158px)}.battle-intro-slot-frame{min-height:clamp(118px,18svh,148px)}.battle-trainer-intro--redesign .battle-trainer-row--intro{min-height:0}@media (max-width:1100px){.battle-mode-grid{gap:clamp(12px,2.5vw,20px)}.battle-select-layout{grid-template-columns:minmax(200px,.92fr) minmax(260px,1.08fr)}.battle-roster-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.battle-trainer-intro--redesign .battle-intro-layout{max-width:100%;padding-inline:clamp(4px,1.5vw,16px)}.battle-intro-slots{gap:clamp(8px,1.5vw,14px)}}@media (max-width:840px){.battle-game-panel{padding:clamp(14px,3vw,22px) max(12px,var(--battle-safe-x));height:100%;max-height:100dvh}.battle-panel-title{margin-bottom:clamp(12px,2.5vw,18px)}.battle-panel-title h2{font-size:clamp(1.65rem,7vw,2.6rem)}.battle-lobby-fighter,.battle-mode-grid,.battle-post-trainers,.battle-select-layout,.battle-switch-modal{grid-template-columns:1fr}.battle-mode-card-wrap{width:100%}.battle-trainer-intro:not(.battle-trainer-intro--redesign) .battle-trainer-row,.battle-trainer-intro:not(.battle-trainer-intro--redesign) .battle-trainer-row--intro{grid-template-columns:1fr;justify-items:center}.battle-trainer-intro--redesign .battle-trainer-row--intro.battle-intro-layout{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);grid-template-areas:none;align-items:end;grid-gap:clamp(6px,2vw,16px);gap:clamp(6px,2vw,16px)}.battle-trainer-intro--redesign .battle-trainer-side--player{grid-column:1}.battle-trainer-intro--redesign .battle-trainer-side--cpu{grid-column:3}.battle-trainer-intro--redesign .battle-vs-reveal{grid-column:2}.battle-lobby-fighter{grid-template-columns:1fr;justify-items:stretch;text-align:center;gap:12px}.battle-lobby-fighter-actions{justify-content:center;flex-wrap:wrap}.battle-team-strip{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(6px,2vw,10px)}.battle-lobby-team{display:flex;flex-direction:column;gap:clamp(12px,3vw,16px)}.battle-lobby-fighter-actions{flex-direction:column;align-items:stretch;width:100%}.battle-lobby-fighter-actions .battle-arcade-button{width:100%;justify-content:center}.battle-team-editor-slot,.battle-team-slot{padding:clamp(6px,1.5vw,9px)}.battle-roster-grid,.battle-selected-moves,.battle-switch-stats{grid-template-columns:1fr}.battle-select-screen{height:100%;max-height:100dvh;grid-template-rows:auto minmax(0,1fr) auto}.battle-select-layout{min-height:0;grid-template-columns:1fr;grid-template-rows:minmax(0,.9fr) minmax(0,1.1fr)}.battle-roster-grid{grid-template-columns:repeat(auto-fill,minmax(76px,1fr));max-height:100%}.battle-selected-preview{grid-template-rows:minmax(100px,28vh) auto auto;padding:clamp(12px,3vw,18px)}.battle-selected-stage .creature-stage-lg{width:clamp(108px,28vw,180px);height:clamp(108px,28vw,180px)}.battle-terminal-exit{min-width:72px;font-size:.82rem}.battle-intro-banner-row{padding-inline:max(4px,var(--battle-safe-x))}.battle-intro-banner-inner{padding:clamp(8px,2vw,12px) clamp(16px,4vw,28px) clamp(10px,2vw,14px)}.battle-trainer-intro--redesign .battle-trainer-avatar{width:clamp(88px,22vw,150px)}.battle-intro-side{padding-top:clamp(28px,5vh,48px)}.battle-vs-reveal{width:clamp(140px,22vw,260px);height:clamp(110px,18vw,220px)}.battle-combat-ui{gap:clamp(6px,1.5vw,10px)}}@media (max-width:760px){.battle-combat-shell{height:100dvh;min-height:0;gap:6px;padding:6px max(6px,var(--battle-safe-x)) max(6px,var(--battle-safe-bottom))}.battle-combat-ui{grid-template-rows:minmax(0,1fr) auto;gap:6px}.battle-arena{padding:clamp(6px,1.5vw,8px);gap:6px}.battle-arena,.battle-phase-bg{border-radius:clamp(14px,3vw,20px)}.battle-phase-bg{inset:clamp(4px,1vw,8px)}.battle-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(4px,1.2vw,6px)}.battle-row--ally .battle-lane,.battle-row--foe .battle-lane{min-height:clamp(96px,16svh,132px)}.battle-lane{--battle-lane-radius:clamp(12px,2.5vw,18px);padding-top:clamp(18px,3vh,24px);border-radius:var(--battle-lane-radius)}.battle-lane .creature-stage-md{width:min(100%,clamp(72px,14svh,120px));height:clamp(68px,13svh,110px)}.battle-hpblock{padding:4px 6px 5px;font-size:clamp(.62rem,2.8vw,.72rem)}.battle-move-dock .battle-move-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:3px}.battle-move-dock{padding:4px 0}.battle-keyboard-hint{display:none}.battle-surrender-confirm{padding-inline:10px}.battle-move-btn{min-height:50px;grid-template-columns:40px minmax(0,1fr) 22px;font-size:.76rem}.battle-move-name{font-size:clamp(.72rem,3.2vw,.84rem)}.battle-move-meta{font-size:clamp(.62rem,2.6vw,.72rem)}.battle-mode-grid{grid-template-columns:1fr}.battle-mode-card{min-height:clamp(150px,38vw,200px)}.battle-team-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.battle-lobby-fighter,.battle-lobby-team{margin-top:clamp(12px,3vw,18px);padding:clamp(10px,2.5vw,14px)}.battle-arcade-button{width:100%;max-width:100%}.battle-select-layout{grid-template-columns:1fr}.battle-roster-grid{grid-template-columns:repeat(auto-fill,minmax(68px,1fr));max-height:100%}.battle-team-editor-panel{max-height:none}.battle-trainer-intro--redesign .battle-trainer-row--intro.battle-intro-layout{grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:auto minmax(0,1fr);grid-template-areas:"vs vs" "player rival";gap:clamp(6px,1.5vw,12px);min-height:0;align-items:end}.battle-trainer-intro--redesign .battle-vs-reveal{grid-area:vs;grid-column:auto;justify-self:center;margin:0 auto;order:unset}.battle-trainer-intro--redesign .battle-trainer-side--player{grid-area:player;grid-column:auto;justify-self:stretch}.battle-trainer-intro--redesign .battle-trainer-side--cpu{grid-area:rival;grid-column:auto;justify-self:stretch}.battle-intro-slots{overflow:hidden}.battle-intro-slot{max-width:clamp(64px,20vw,110px)}.battle-intro-slot-sprite{height:clamp(72px,14svh,96px);margin-bottom:clamp(26px,5vw,34px)}.battle-intro-banner-row{grid-template-columns:1fr 1fr;top:clamp(8px,1.5vh,16px);padding-inline:max(2px,var(--battle-safe-x))}.battle-trainer-intro--redesign .battle-trainer-avatar{width:clamp(72px,20vw,110px)}}@media (max-width:520px){.battle-panel-title p{font-size:clamp(.78rem,3.4vw,.9rem);padding-inline:4px}.battle-mode-desc{font-size:clamp(.78rem,3.2vw,.88rem)}.battle-mode-icon{width:clamp(64px,18vw,76px);height:clamp(64px,18vw,76px);font-size:1.6rem}.battle-move-dock .battle-move-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.battle-combat-hud{max-height:min(44svh,360px)}.battle-row--ally .battle-lane,.battle-row--foe .battle-lane{min-height:clamp(88px,14svh,118px)}.battle-trainer-intro--redesign .battle-trainer-row--intro.battle-intro-layout{grid-template-columns:1fr;grid-template-areas:"vs" "player" "rival";justify-items:center}.battle-trainer-intro--redesign .battle-trainer-side--cpu,.battle-trainer-intro--redesign .battle-trainer-side--player{grid-column:auto;width:100%;max-width:min(100%,320px)}.battle-intro-slots{flex-wrap:nowrap;overflow:hidden}.battle-intro-slot{max-width:clamp(58px,22vw,96px)}.battle-intro-trainer-name{font-size:clamp(.62rem,3vw,.78rem)}.arena-solo-panel{width:min(100vw - 24px,360px);margin-inline:auto}}@media (max-height:720px){.battle-combat-shell{gap:5px;padding-top:5px}.battle-arena{gap:5px;padding:6px}.battle-row--ally .battle-lane,.battle-row--foe .battle-lane{min-height:clamp(84px,15svh,120px)}.battle-lane .creature-stage-md{height:clamp(64px,12svh,100px);width:min(100%,clamp(80px,14svh,120px))}.battle-move-dock{padding:6px;gap:5px}.battle-move-btn{min-height:42px}.battle-command-attack{min-height:56px;padding-bottom:12px}.battle-keyboard-hint{display:none}.battle-trainer-intro--redesign .battle-trainer-row--intro{min-height:0;padding-top:clamp(48px,8vh,64px)}.battle-intro-slot-frame{min-height:clamp(100px,16svh,128px)}.battle-game-panel{padding-block:clamp(10px,2vh,16px)}.battle-mode-card{min-height:clamp(140px,24vh,180px)}}@media (max-height:640px){.battle-combat-ui{grid-template-rows:minmax(0,1fr) auto}.battle-combat-hud{gap:4px}.battle-dock-topline,.battle-narration-feed{font-size:.78rem}.battle-trainer-intro--redesign .battle-intro-side{padding-top:clamp(20px,4vh,32px)}.battle-vs-reveal{width:clamp(120px,20vw,200px);height:clamp(96px,16vw,160px)}}@media (max-width:900px) and (max-height:500px){.battle-trainer-intro--redesign .battle-trainer-row--intro.battle-intro-layout{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);grid-template-rows:minmax(0,1fr);grid-template-areas:none;min-height:0;padding-top:clamp(40px,10vh,52px)}.battle-trainer-intro--redesign .battle-trainer-side--player{grid-area:auto;grid-column:1}.battle-trainer-intro--redesign .battle-trainer-side--cpu{grid-area:auto;grid-column:3}.battle-trainer-intro--redesign .battle-vs-reveal{grid-area:auto;grid-column:2}.battle-intro-slots{overflow:hidden}.battle-intro-slot{max-width:clamp(56px,12vw,88px)}.battle-intro-slot-frame{min-height:96px}.battle-trainer-intro--redesign .battle-trainer-avatar{display:none}}@media (max-height:780px){.battle-panel-title p,.battle-team-editor-hint{display:none}.battle-panel-title h2{margin:6px 0 4px;font-size:clamp(1.35rem,5vw,2rem)}.battle-mode-card{min-height:0}.battle-combat-hud{max-height:min(48svh,380px)}}@container battle-select (max-height: 380px){.battle-roster-card .creature-stage-sm{width:36px;height:36px}.battle-roster-card small,.battle-roster-card span,.battle-roster-card strong{font-size:.62rem}.battle-select-hp{height:6px}}@container battle-select (max-height: 520px){.battle-roster-grid{grid-template-columns:repeat(auto-fill,minmax(64px,1fr));gap:4px}}@media (min-width:600px) and (max-width:840px){.battle-team-strip{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (hover:none) and (pointer:coarse){.battle-arcade-button,.battle-mode-card,.battle-move-btn,.battle-roster-card,.battle-team-slot{min-height:44px}.battle-command-attack{min-height:52px}}.game-main:has(.market-layout){height:100dvh;max-height:100dvh;min-height:0;overflow:hidden}.market-layout{display:flex;flex-direction:column;background:radial-gradient(circle at 14% 10%,rgba(255,243,168,.34),transparent 22%),radial-gradient(circle at 88% 18%,rgba(255,180,120,.28),transparent 20%),linear-gradient(145deg,#7a4b12,#d4a017 38%,#52a85a)}.market-game-panel,.market-layout{height:100%;max-height:100dvh;min-height:0;overflow:hidden}.market-game-panel{position:relative;flex:1 1;display:grid;grid-template-rows:auto minmax(0,1fr);grid-gap:clamp(8px,1.4vw,14px);gap:clamp(8px,1.4vw,14px);padding:clamp(12px,2.2vw,22px)}.market-game-panel--in-screen .market-panel-title h1{margin:6px 0 4px;font-size:clamp(1.35rem,3.4vw,2.1rem)}.market-game-panel--in-screen .market-panel-title>p:not(.market-wallet){display:none}.market-game-panel--in-screen .market-panel-title{margin-bottom:0}.market-game-panel:before{content:"";position:absolute;inset:12px;border-radius:24px;pointer-events:none;border:2px dashed rgba(255,255,255,.3)}.market-terminal-exit{position:absolute;top:clamp(14px,2vw,22px);right:clamp(14px,2vw,22px);z-index:5;min-width:82px}.market-panel-title{position:relative;z-index:1;text-align:center;margin-bottom:8px;text-shadow:0 3px 12px rgba(0,0,0,.24)}.market-panel-title span{display:inline-flex;padding:5px 12px;border-radius:999px;background:rgba(30,32,54,.28);border:1px solid rgba(255,255,255,.26);font-size:.78rem;font-weight:950;letter-spacing:.12em;text-transform:uppercase}.market-panel-title h1{margin:10px 0 6px;font-family:var(--font-display),fantasy,system-ui;font-size:clamp(2rem,5vw,3.6rem);line-height:.95;text-transform:uppercase;color:#fff}.market-panel-title p{margin:0 auto;max-width:640px;font-weight:800;color:rgba(255,255,255,.88)}.market-wallet{position:relative;z-index:1;justify-self:center;display:inline-flex;align-items:center;gap:8px;padding:8px 16px;border-radius:999px;background:rgba(30,32,54,.36);border:2px solid rgba(255,243,168,.55);color:#fff8df;font-weight:900}.market-mode-grid{position:relative;z-index:1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:clamp(14px,3vw,24px);gap:clamp(14px,3vw,24px);max-width:920px;width:100%;margin:0 auto;align-self:center}.market-mode-card{min-height:220px;display:grid;place-items:center;align-content:center;grid-gap:10px;gap:10px;padding:22px;border-radius:28px;border:4px solid rgba(255,255,255,.64);color:#fff;background:radial-gradient(circle at 50% 20%,rgba(255,255,255,.42),transparent 28%),linear-gradient(180deg,rgba(255,255,255,.22),rgba(30,32,54,.22));box-shadow:0 10px 0 rgba(30,32,54,.24),0 18px 36px rgba(30,32,54,.18);cursor:pointer;font:inherit}.market-mode-card strong{font-family:var(--font-display),fantasy,system-ui;font-size:clamp(1.5rem,4vw,2.2rem);text-transform:uppercase}.market-mode-card small{max-width:18rem;text-align:center;font-weight:800;color:rgba(255,255,255,.86)}.market-mode-card--sell{background:radial-gradient(circle at 50% 20%,rgba(255,255,255,.42),transparent 28%),linear-gradient(180deg,#6dd16a,#1f8a42)}.market-mode-card--buy.market-mode-card--disabled{cursor:not-allowed;opacity:.72;filter:grayscale(.25)}.market-screen{position:relative;z-index:1;flex-direction:column;gap:clamp(8px,1.2vw,12px);max-height:100%;max-width:1100px;width:100%;margin:0 auto;align-self:stretch}.market-screen,.market-screen-body{display:flex;min-height:0;overflow:hidden}.market-screen-body{flex:1 1 auto;flex-direction:column}.market-screen-body>.market-detail-copy,.market-screen-body>.market-detail-layout,.market-screen-body>.market-roster{flex:1 1 auto;min-height:0}.market-detail-copy--auction{max-width:560px;width:100%;margin:0 auto;align-self:center}.market-screen-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px}.market-disabled-banner{padding:14px 18px;border-radius:18px;background:rgba(30,32,54,.42);border:2px solid rgba(255,255,255,.28);color:#fff8df;font-weight:800;text-align:center}.market-roster{flex:1 1 auto;min-height:0}.market-action-row--embedded{width:100%;justify-content:stretch}.market-action-row--embedded .market-action-btn{flex:1 1 160px}.market-detail-layout{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.15fr);grid-gap:clamp(10px,1.6vw,14px);gap:clamp(10px,1.6vw,14px);flex:1 1 auto;min-height:0;overflow:hidden;align-items:stretch}.market-detail-stage{display:grid;place-items:center;padding:clamp(8px,1.4vw,12px);min-height:0;border-radius:22px;background:rgba(255,255,255,.16);border:3px solid rgba(255,255,255,.28)}.market-detail-stage img{width:clamp(96px,16vw,168px);height:clamp(96px,16vw,168px);object-fit:contain}.market-detail-copy{display:flex;flex-direction:column;gap:clamp(8px,1.2vw,10px);padding:clamp(10px,1.6vw,14px);min-height:0;border-radius:22px;background:rgba(30,32,54,.36);border:3px solid rgba(255,255,255,.24);color:#fff;overflow:hidden}.market-detail-head{flex-shrink:0}.market-detail-stats{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding-right:2px}.market-detail-copy h2,.market-detail-head h2{margin:0;font-family:var(--font-display),fantasy,system-ui;font-size:clamp(1.1rem,2.4vw,1.55rem);line-height:1.05;text-transform:uppercase}.market-detail-copy p,.market-detail-head p{margin:0;font-size:clamp(.72rem,1.6vw,.84rem);font-weight:800;color:rgba(255,255,255,.86)}.market-stat-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:6px;gap:6px}.market-stat-cell{padding:5px 7px;border-radius:10px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.16)}.market-stat-cell strong{display:block;font-size:.58rem;letter-spacing:.05em;text-transform:uppercase;color:#fff3a8}.market-stat-cell span{font-size:.88rem;font-weight:900}.market-action-row{display:flex;flex-wrap:wrap;gap:8px}.market-action-row--pinned{flex-shrink:0;margin-top:auto;padding-top:4px}.market-action-btn{flex:1 1 140px;min-height:42px;padding:10px 14px;font-size:.82rem;border-radius:999px;border:3px solid rgba(255,255,255,.55);font-weight:1000;letter-spacing:.04em;text-transform:uppercase;cursor:pointer;font:inherit}.market-action-btn--quick{background:linear-gradient(180deg,#ffd86a,#d4a017);color:#3b2a00;box-shadow:0 8px 0 rgba(90,58,8,.42)}.market-action-btn--auction{background:linear-gradient(180deg,#9f8cff,#5a46d6);color:#fff;box-shadow:0 8px 0 rgba(43,47,85,.42)}.market-action-btn:disabled{opacity:.65;cursor:not-allowed}.market-auction-panel{display:grid;grid-gap:12px;gap:12px;padding:16px;border-radius:20px;background:rgba(255,255,255,.14);border:2px solid rgba(255,255,255,.26)}.market-auction-panel label{display:grid;grid-gap:6px;gap:6px;font-weight:900;font-size:.82rem;text-transform:uppercase;letter-spacing:.05em}.market-auction-panel input,.market-auction-panel select{padding:10px 12px;border-radius:12px;border:2px solid rgba(43,47,85,.35);font-weight:800}.market-auction-rules{margin:0;padding-left:1.1rem;font-size:.82rem;font-weight:750;color:rgba(255,255,255,.88);line-height:1.4}.market-active-list{display:grid;grid-gap:8px;gap:8px;flex-shrink:0;max-height:min(18vh,120px);overflow-y:auto;overscroll-behavior:contain}.market-active-card{padding:12px 14px;border-radius:16px;background:rgba(255,248,196,.2);border:2px solid rgba(255,243,168,.45);color:#fff;font-weight:800}.market-toast{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);z-index:30;padding:12px 18px;border-radius:999px;background:rgba(30,32,54,.92);border:2px solid #fff3a8;color:#fff;font-weight:900;box-shadow:0 12px 32px rgba(30,32,54,.35)}@media (max-width:840px){.market-mode-grid{grid-template-columns:1fr}.market-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:520px){.market-action-row--pinned .market-action-btn{flex:1 1 100%}.market-action-row--pinned .market-back-btn{width:100%;text-align:center}}@media (min-width:900px){.market-stat-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}.market-confirm-backdrop{position:fixed;inset:0;z-index:50;display:grid;place-items:center;padding:20px;background:rgba(20,24,42,.62);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.market-confirm-panel{width:min(420px,100%);display:grid;grid-gap:12px;gap:12px;padding:20px 22px;border-radius:22px;background:#fff8df;border:3px solid #2b2f55;color:#2b2f55;box-shadow:0 14px 0 rgba(43,47,85,.28)}.market-confirm-panel h3{margin:0;font-family:var(--font-display),fantasy,system-ui;font-size:1.45rem;text-transform:uppercase}.market-confirm-panel p{margin:0;font-weight:800;line-height:1.35}.market-confirm-panel ul{margin:0;padding-left:1.2rem;font-weight:800;line-height:1.4}.market-confirm-actions{display:flex;flex-wrap:wrap;gap:10px}.market-confirm-actions .market-action-btn,.market-confirm-actions .market-back-btn{flex:1 1 140px}.market-farewell-overlay{position:fixed;inset:0;z-index:45;display:grid;place-items:center;align-content:center;grid-gap:18px;gap:18px;padding:24px;pointer-events:none;background:radial-gradient(circle at 50% 42%,rgba(255,255,255,.2),transparent 38%),rgba(20,24,42,.45)}.market-farewell-speech{max-width:22rem;padding:14px 18px;border-radius:18px;background:#fff8df;border:3px solid #2b2f55;color:#2b2f55;text-align:center;box-shadow:0 10px 0 rgba(43,47,85,.24);animation:marketFarewellSpeech .45s cubic-bezier(.22,1,.36,1) both}.market-farewell-speech span,.market-farewell-speech strong{display:block}.market-farewell-speech strong{margin-bottom:6px;font-family:var(--font-display),fantasy,system-ui;font-size:1.2rem;text-transform:uppercase}.market-farewell-speech span{font-weight:800;line-height:1.35}.market-farewell-sprite{width:clamp(140px,28vw,220px);height:auto;object-fit:contain;filter:drop-shadow(0 12px 28px rgba(30,32,54,.45))}.market-detail-stage--farewell img,.market-farewell-sprite--vanish,.market-sell-sprite--vanish{animation:marketFarewellVanish 1.35s cubic-bezier(.4,0,.2,1) forwards}@keyframes marketFarewellSpeech{0%{opacity:0;transform:translateY(12px) scale(.94)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes marketFarewellVanish{0%{opacity:1;transform:scale(1) translateY(0);filter:brightness(1) blur(0)}55%{opacity:.75;transform:scale(1.04) translateY(-6px);filter:brightness(1.25) blur(0)}to{opacity:0;transform:scale(.72) translateY(18px);filter:brightness(1.5) blur(2px)}}.race-track{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));grid-gap:12px;gap:12px}.race-segment{border-radius:16px;padding:10px;min-height:120px;background:linear-gradient(180deg,rgba(255,255,255,.55),rgba(255,255,255,.2));box-shadow:inset 0 0 0 1px rgba(255,255,255,.45);transition:transform .2s ease,box-shadow .2s ease}.race-segment-active{transform:translateY(-2px);box-shadow:0 8px 22px rgba(40,80,120,.18)}.race-segment-header{display:flex;justify-content:space-between;font-size:11px;text-transform:uppercase;letter-spacing:.04em;opacity:.75;margin-bottom:6px}.race-segment-body{display:grid;place-items:center;grid-gap:6px;gap:6px;position:relative}.race-creature-wrap{width:100%;display:grid;place-items:center}.race-obstacle{font-size:11px;opacity:.7}.terrain-grass{background:linear-gradient(180deg,#d8f6cf,#bfe8b0)}.terrain-mud{background:linear-gradient(180deg,#d8c4a8,#b89972)}.terrain-water{background:linear-gradient(180deg,#c9ecff,#8fd4ff)}.terrain-wind{background:linear-gradient(180deg,#eef6ff,#cfe6ff)}.terrain-rock{background:linear-gradient(180deg,#e6e2dc,#c9c2b8)}.terrain-final_sprint{background:linear-gradient(180deg,#ffecc7,#ffd48a)}.race-run.race-animate-on .creature-sprite{animation:raceRun .9s ease-in-out infinite}.race-swim.race-animate-on .creature-sprite{animation:raceSwim 1.1s ease-in-out infinite}.race-jump.race-animate-on .creature-sprite{animation:raceJump .85s ease-in-out infinite}.race-fly.race-animate-on .creature-sprite{animation:raceFly 1.2s ease-in-out infinite}.race-roll.race-animate-on .creature-sprite{animation:raceRoll .95s linear infinite}.race-slide.race-animate-on .creature-sprite{animation:raceSlide .8s ease-in-out infinite}@keyframes raceRun{0%,to{transform:translateX(0) translateY(0)}50%{transform:translateX(calc(6px + var(--race-p, 0) * 10px)) translateY(-4px)}}@keyframes raceSwim{0%,to{transform:translateY(0) rotate(-3deg)}50%{transform:translateY(-6px) rotate(3deg)}}@keyframes raceJump{0%,to{transform:translateY(0) scale(1)}40%{transform:translateY(-22px) scale(.95,1.06)}}@keyframes raceFly{0%,to{transform:translateY(-4px) translateX(0)}50%{transform:translateY(-14px) translateX(8px)}}@keyframes raceRoll{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes raceSlide{0%,to{transform:skewX(0deg) translateX(0)}50%{transform:skewX(-6deg) translateX(10px)}}.race-segment-active .race-segment-body:after{content:"";position:absolute;inset:auto 10% 8px 10%;height:10px;border-radius:999px;background:rgba(0,0,0,.12);filter:blur(4px)}.showcase-stage{position:relative;min-height:360px;border-radius:28px;overflow:hidden;display:grid;place-items:center;background:radial-gradient(circle at 50% 20%,rgba(255,255,255,.75),transparent 45%),linear-gradient(180deg,#2b2148,#151028 60%,#3a2458)}.showcase-curtain{position:absolute;inset:0;background:linear-gradient(90deg,rgba(40,20,60,.55),transparent 35%,transparent 65%,rgba(40,20,60,.55));pointer-events:none}.showcase-floor{position:absolute;bottom:0;left:0;right:0;height:32%;background:linear-gradient(180deg,transparent,rgba(0,0,0,.35))}.showcase-creature-slot{position:relative;z-index:2;display:grid;place-items:center}.fx-spotlight{position:absolute;width:55%;height:70%;top:8%;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.45),transparent 62%);filter:blur(4px);opacity:.35;transition:opacity .4s ease;pointer-events:none}.fx-spotlight-on{opacity:.85;animation:spotlightSweep 3.6s ease-in-out infinite}@keyframes spotlightSweep{0%,to{transform:translateX(-12%)}50%{transform:translateX(12%)}}.fx-sparkles{position:absolute;inset:0;pointer-events:none;background-image:radial-gradient(circle at 20% 30%,rgba(255,255,255,.9) 0 2px,transparent 3px),radial-gradient(circle at 70% 25%,rgba(255,220,255,.95) 0 2px,transparent 3px),radial-gradient(circle at 55% 60%,rgba(200,240,255,.85) 0 2px,transparent 3px),radial-gradient(circle at 35% 75%,rgba(255,255,200,.8) 0 2px,transparent 3px);opacity:.25}.fx-sparkles-on{opacity:.75;animation:sparkleTwinkle 1.8s ease-in-out infinite}@keyframes sparkleTwinkle{0%,to{filter:brightness(1);transform:scale(1)}50%{filter:brightness(1.35);transform:scale(1.02)}}.showcase-pose{position:absolute;inset:10%;border-radius:999px;box-shadow:0 0 0 0 rgba(255,200,255,.35);pointer-events:none}.showcase-pose-on{animation:showcasePose 2.4s ease-in-out infinite}@keyframes showcasePose{0%,to{box-shadow:0 0 0 0 rgba(255,200,255,.25);transform:scale(1)}50%{box-shadow:0 0 40px 12px rgba(180,220,255,.35);transform:scale(1.03)}}.showcase-hud{position:absolute;bottom:14px;left:14px;right:14px;display:flex;justify-content:space-between;color:#f6f2ff;font-size:14px;z-index:3}.showcase-phase{opacity:.9}.showcase-score{font-weight:600}