/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.invisible{visibility:hidden}.visible{visibility:visible}.fixed{position:fixed}.relative{position:relative}.static{position:static}.start{inset-inline-start:var(--spacing)}.\!end{inset-inline-end:var(--spacing)!important}.end{inset-inline-end:var(--spacing)}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.table{display:table}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.border{border-style:var(--tw-border-style);border-width:1px}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}:root{--ink:#f5f1e8;--muted:#a7a8a6;--red:#ef4d4d;--yellow:#f5c451;--panel:#181b20;--line:#343941;--background:#0e1013;--foreground:var(--ink)}*{box-sizing:border-box}html{background:var(--background);scroll-behavior:smooth}body{background:radial-gradient(circle at 8% 16%, #ef4d4d1f, transparent 26rem), linear-gradient(#ffffff06 1px, transparent 1px), linear-gradient(90deg, #ffffff06 1px, transparent 1px), var(--background);color:var(--foreground);background-size:auto,32px 32px,32px 32px,auto;min-height:100vh;margin:0;font-family:Arial,Helvetica,sans-serif}button,input{font:inherit}.shell{flex-direction:column;min-height:100vh;display:flex}.topbar{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;min-height:78px;padding:0 clamp(22px,5vw,76px);display:flex}.brand{color:var(--ink);letter-spacing:.18em;align-items:center;gap:12px;font-size:14px;font-weight:900;text-decoration:none;display:flex}.brand-mark{background:linear-gradient(var(--red) 0 46%, #111 46% 54%, var(--ink) 54%);border:2px solid var(--ink);border-radius:50%;place-items:center;width:28px;height:28px;display:grid}.brand-mark span{background:var(--ink);border:3px solid #111;border-radius:50%;width:9px;height:9px}.server-status{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:9px;font-size:12px;display:flex}.status-light{background:#71da8b;border-radius:50%;width:7px;height:7px;box-shadow:0 0 12px #71da8bb3}.hero,.profile-layout{flex:1;grid-template-columns:minmax(0,1.1fr) minmax(340px,.75fr);align-items:center;gap:clamp(44px,8vw,128px);padding:clamp(56px,8vw,112px) clamp(22px,7vw,108px);display:grid}.profile-shell{min-height:100vh}.profile-copy h1{font-size:clamp(48px,6.5vw,94px)}.profile-card{width:100%}.eyebrow,.card-kicker{color:var(--yellow);font-family:var(--font-geist-mono), monospace;letter-spacing:.18em;margin:0 0 22px;font-size:11px;font-weight:700}h1{letter-spacing:-.075em;max-width:900px;margin:0;font-size:clamp(52px,7.8vw,112px);font-weight:900;line-height:.85}h1 span{color:var(--red);display:block}.lede{color:var(--muted);max-width:650px;margin:34px 0 30px;font-size:clamp(16px,1.4vw,20px);line-height:1.65}.feature-row{flex-wrap:wrap;gap:9px;display:flex}.feature-row span{border:1px solid var(--line);color:#c9cac7;font-family:var(--font-geist-mono), monospace;letter-spacing:.06em;text-transform:uppercase;padding:8px 10px;font-size:10px}.lobby-card{background:linear-gradient(145deg, #ffffff0a, transparent 60%), var(--panel);border:1px solid #3c414a;padding:clamp(25px,3.5vw,42px);position:relative;box-shadow:13px 13px #070809}.lobby-card:before{background:var(--red);content:"";height:4px;position:absolute;top:-1px;left:-1px;right:-1px}.card-heading{justify-content:space-between;align-items:start;display:flex}.card-kicker{margin-bottom:8px}h2{letter-spacing:-.045em;margin:0;font-size:clamp(25px,2.5vw,34px)}.capacity{border:1px solid var(--line);color:var(--yellow);font-family:var(--font-geist-mono), monospace;background:#242830;padding:7px 9px;font-size:11px}form{margin-top:34px;display:grid}label{color:#c8c9c7;font-family:var(--font-geist-mono), monospace;letter-spacing:.12em;text-transform:uppercase;margin:0 0 8px;font-size:10px}input{border:1px solid var(--line);color:var(--ink);background:#101216;border-radius:0;outline:none;margin-bottom:20px;padding:14px 15px;transition:border-color .18s,box-shadow .18s}input:focus{border-color:var(--yellow);box-shadow:0 0 0 3px #f5c4511a}input::placeholder{color:#646870}.primary-button{background:var(--red);color:#fff;cursor:pointer;font-family:var(--font-geist-mono), monospace;letter-spacing:.08em;border:0;justify-content:space-between;align-items:center;margin-top:3px;padding:16px 18px;font-size:12px;font-weight:900;transition:background .18s,transform .18s;display:flex}.primary-button:hover{background:#ff5b5b;transform:translateY(-2px)}.primary-button:disabled{cursor:not-allowed;filter:grayscale(.55);opacity:.48;transform:none}.primary-button:focus-visible{outline:3px solid var(--yellow);outline-offset:3px}.primary-button span{font-size:20px}.notice{border-left:2px solid var(--yellow);color:#d4d2ca;margin:18px 0 0;padding-left:12px;font-size:12px;line-height:1.5}.player-grid{border-top:1px solid var(--line);grid-template-columns:repeat(4,1fr);gap:13px 10px;margin-top:28px;padding-top:24px;display:grid}.player-slot{align-items:center;gap:7px;min-width:0;display:flex}.player-slot small{color:#737780;text-overflow:ellipsis;font-size:10px;overflow:hidden}.player-dot{background:var(--player-color);opacity:.35;border:1px solid #777d86;width:8px;height:8px}.player-dot.active{box-shadow:0 0 9px var(--player-color);opacity:1}footer{border-top:1px solid var(--line);color:#74777d;font-family:var(--font-geist-mono), monospace;letter-spacing:.08em;justify-content:space-between;align-items:center;padding:18px clamp(22px,5vw,76px);font-size:10px;display:flex}footer p{margin:0}@media (max-width:860px){.hero,.profile-layout{grid-template-columns:1fr;padding-top:64px}.lobby-card{max-width:580px}.server-status{font-size:0}footer{flex-direction:column;align-items:flex-start;gap:8px}}@media (max-width:480px){.topbar{min-height:68px}.hero{padding-bottom:70px}h1{font-size:50px}.lobby-card{padding:24px 20px;box-shadow:8px 8px #070809}.player-grid{grid-template-columns:repeat(2,1fr)}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}.rom-brand-mark{height:32px;image-rendering:pixelated;background-image:url(/rom-assets/general-ui/previews/interface__ball__poke.4bpp.lz.png);background-position:0 0;background-repeat:no-repeat;background-size:32px 96px;flex:0 0 32px;width:32px;display:inline-block}.rom-landscape-shell .topbar,.rom-profile-shell .topbar{z-index:2;position:relative}.rom-landscape-shell .hero,.rom-profile-shell .profile-layout{isolation:isolate;position:relative;overflow:hidden}.rom-landscape-shell .hero:before,.rom-profile-shell .profile-layout:before{content:"";filter:saturate(.78)contrast(1.08);image-rendering:pixelated;opacity:.36;z-index:-2;background-image:linear-gradient(90deg,#0e1013d4,#0e101375 58%,#0e1013e6),url(/rom-assets/world-maps/layouts/layout-082dd4c0.png);background-position:50%;background-repeat:no-repeat;background-size:cover;position:absolute;inset:0}.rom-profile-shell .profile-layout:before{background-image:linear-gradient(90deg,#0e1013db,#0e101380 58%,#0e1013e6),url(/rom-assets/world-maps/layouts/layout-082fe46c.png)}.rom-landscape-shell .hero:after,.rom-profile-shell .profile-layout:after{content:"";pointer-events:none;z-index:-1;background:repeating-linear-gradient(0deg,#ffffff06 0 1px,#0000 1px 4px);position:absolute;inset:0}.chat-form .rom-send-button{align-items:center;gap:7px;display:flex}.rom-send-button i{height:16px;image-rendering:pixelated;background:url(/rom-assets/general-ui/previews/interface__red_arrow.4bpp.lz.png) 50%/16px 16px no-repeat;width:16px;display:block}.rom-trade-symbol{flex-direction:column;gap:1px;width:88px;height:88px}.rom-trade-symbol .rom-brand-mark{transform:scale(.75)}.rom-trade-symbol>span{font-size:20px;line-height:.8}.form-error{color:#faa;background:#ef4d4d1a;border:1px solid #ef4d4d59;margin:16px 0 0;padding:11px 13px;font-size:12px;line-height:1.5}.setup-shell,.game-shell{min-height:100vh}.setup-layout{grid-template-columns:minmax(320px,1fr) minmax(380px,.8fr);gap:clamp(50px,9vw,150px);min-height:calc(100vh - 79px);padding:clamp(54px,7vw,100px) clamp(22px,7vw,108px);display:grid}.room-summary h1{color:var(--yellow);font-family:var(--font-geist-mono), monospace;letter-spacing:.12em}.copy-button,.ghost-button,.room-code-button,.text-button{border:1px solid var(--line);color:var(--ink);cursor:pointer;font-family:var(--font-geist-mono), monospace;letter-spacing:.08em;background:0 0;padding:12px 14px;font-size:10px;font-weight:800}.copy-button:hover,.ghost-button:hover,.room-code-button:hover{border-color:var(--yellow);color:var(--yellow)}.room-roster{border-top:1px solid var(--line);max-width:650px;margin-top:34px}.room-player{border-bottom:1px solid var(--line);color:#666b73;font-family:var(--font-geist-mono), monospace;grid-template-columns:28px 1fr auto;align-items:center;gap:15px;min-height:49px;font-size:11px;display:grid}.room-player.occupied{color:var(--ink)}.room-player>span{color:#5f646d}.room-player.occupied>span{color:var(--red)}.room-player small{color:#71da8b;font-size:9px}.rom-card{background:var(--panel);border:1px solid #3c414a;align-self:center;padding:clamp(28px,4vw,46px);box-shadow:13px 13px #070809}.rom-explainer{color:var(--muted);margin:15px 0 25px;font-size:14px;line-height:1.65}.rom-drop{cursor:pointer;text-align:center;background:#111318;border:1px dashed #505661;flex-direction:column;justify-content:center;align-items:center;min-height:165px;padding:25px;transition:border-color .18s,background .18s;display:flex}.rom-drop:hover{border-color:var(--yellow);background:#151820}.rom-drop input{opacity:0;width:1px;height:1px;position:absolute;overflow:hidden}.rom-drop strong{font-family:var(--font-geist-mono), monospace;letter-spacing:.08em;font-size:11px}.rom-drop small{color:#6f747c;margin-top:8px;font-size:10px}.upload-icon{border:1px solid var(--red);color:var(--red);justify-content:center;align-items:center;width:40px;height:40px;margin-bottom:16px;font-size:22px;display:flex}.rom-result{border:1px solid var(--line);background:#101216;margin:18px 0;padding:4px 15px}.rom-result>div{border-bottom:1px solid #292d34;justify-content:space-between;align-items:center;gap:15px;min-height:42px;font-size:11px;display:flex}.rom-result>div:last-child{border-bottom:0}.rom-result span{color:#777c84;font-family:var(--font-geist-mono), monospace;letter-spacing:.06em;text-transform:uppercase;font-size:9px}.rom-result strong{text-overflow:ellipsis;white-space:nowrap;max-width:70%;overflow:hidden}.hash-row{flex-direction:column;padding:11px 0;align-items:flex-start!important;gap:5px!important}.hash-row code{color:var(--yellow);overflow-wrap:anywhere;font-size:9px}.rom-card .primary-button{width:100%;margin-top:20px}.text-button{color:#777c84;border:0;margin:12px auto 0;padding:8px;text-decoration:underline;display:block}.game-topbar{border-bottom:1px solid var(--line);grid-template-columns:1fr auto 1fr;align-items:center;min-height:72px;padding:0 28px;display:grid}.game-topbar .ghost-button{justify-self:end}.world-topbar-center{align-items:center;gap:10px;display:flex}.room-code-button{color:var(--yellow)}.world-badge{border:1px solid var(--line);color:var(--yellow);font-family:var(--font-geist-mono), monospace;letter-spacing:.08em;text-transform:uppercase;padding:12px 14px;font-size:10px;font-weight:800}.presence-summary{color:#d9ddd8;cursor:default;font-family:var(--font-geist-mono), monospace;letter-spacing:.09em;white-space:nowrap;z-index:90;outline:none;align-items:center;gap:7px;min-height:40px;padding:0 9px;font-size:8px;display:flex;position:relative}.presence-summary>strong{color:#fff;font-size:11px}.presence-summary>i{color:var(--yellow);margin-left:2px;font-style:normal;transition:transform .18s}.presence-summary:hover>i,.presence-summary:focus-within>i{transform:rotate(180deg)}.presence-summary:focus-visible{outline:1px solid var(--yellow);outline-offset:2px}.presence-dropdown{opacity:0;pointer-events:none;visibility:hidden;background:#15181d;border:1px solid #3d434d;min-width:240px;padding:12px 14px;transition:opacity .16s,transform .16s;position:absolute;top:calc(100% - 2px);left:50%;transform:translate(-50%,-5px);box-shadow:8px 8px #030406d1}.presence-summary:hover .presence-dropdown,.presence-summary:focus-within .presence-dropdown{opacity:1;pointer-events:auto;visibility:visible;transform:translate(-50%)}.presence-dropdown header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:2px 0 10px;display:flex}.presence-dropdown header strong{text-transform:uppercase;font-size:9px}.presence-dropdown header small{color:var(--yellow);font-size:8px}.presence-player{border-bottom:1px solid #292e36;grid-template-columns:9px 1fr auto;align-items:center;gap:9px;min-height:36px;display:grid}.presence-player:last-child{border-bottom:0}.presence-player>span:nth-child(2){color:#f4f0e8;letter-spacing:0;font-family:Arial,sans-serif;font-size:11px}.presence-player small{color:var(--yellow);font-size:7px}.presence-dropdown p{color:#747a84;letter-spacing:0;margin:12px 0 2px;font-size:10px}.game-layout{grid-template-columns:minmax(0,1fr) 360px;gap:20px;height:calc(100vh - 72px);padding:20px;display:grid}.emulator-panel{border:1px solid var(--line);background:#050607;min-height:0;overflow:hidden}.emulator-panel iframe{border:0;width:100%;height:100%;display:block}.side-panel{grid-template-rows:auto minmax(260px,1fr);gap:20px;min-height:0;display:grid}.roster-panel{background:var(--panel);border:1px solid var(--line);padding:25px 22px;overflow:auto}.roster-panel h2{font-size:22px}.roster-list{margin-top:24px}.roster-player{border-bottom:1px solid var(--line);grid-template-columns:10px 1fr auto;align-items:center;gap:10px;min-height:43px;font-size:12px;display:grid}.roster-player.empty{color:#5d626a}.roster-player small{color:var(--yellow);font-size:8px}.player-dot.ready{--player-color:#71da8b;background:#71da8b}.sync-note{border-left:2px solid var(--yellow);background:#101216;margin-top:28px;padding:14px}.sync-note strong{font-size:11px}.sync-note p{color:#7f848c;margin:7px 0 0;font-size:10px;line-height:1.55}.save-note{border-left-color:#71da8b}.compact-note{margin-top:18px}.chat-panel{background:var(--panel);border:1px solid var(--line);flex-direction:column;min-height:0;padding:20px;display:flex}.chat-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;padding-bottom:13px;display:flex}.chat-heading .card-kicker{margin-bottom:4px}.chat-heading h2{font-size:22px}.live-pill{color:#71da8b;font-family:var(--font-geist-mono), monospace;letter-spacing:.1em;font-size:8px}.chat-log{scrollbar-color:#4b515b transparent;flex:1;min-height:0;padding:12px 3px 8px 0;overflow-y:auto}.chat-empty{color:#747982;font-size:11px;line-height:1.55}.chat-empty code,.chat-help code{color:var(--yellow);font-family:var(--font-geist-mono), monospace}.chat-message{border-left:2px solid #515761;margin:0 0 10px;padding:0 0 1px 10px}.chat-message.private{border-left-color:#ae78ff}.chat-message.system{border-left-color:var(--yellow)}.chat-message.self{border-left-color:#71da8b}.chat-message>div{align-items:baseline;gap:7px;display:flex}.chat-message strong{color:#f4f0e8;font-size:10px}.chat-message span{color:#c7a7ff;font-family:var(--font-geist-mono), monospace;letter-spacing:.08em;font-size:7px}.chat-message time{color:#666c75;font-family:var(--font-geist-mono), monospace;margin-left:auto;font-size:7px}.chat-message p{color:#bdc0c5;overflow-wrap:anywhere;margin:4px 0;font-size:11px;line-height:1.45}.chat-message.system p{color:#dbd0ad}.chat-form{grid-template-columns:1fr auto;gap:8px;margin:0;display:grid}.chat-form input{min-width:0;margin:0;padding:11px;font-size:11px}.chat-form button{background:var(--red);color:#fff;cursor:pointer;font-family:var(--font-geist-mono), monospace;text-transform:uppercase;border:0;padding:0 13px;font-size:9px;font-weight:800}.chat-form button:disabled{cursor:not-allowed;opacity:.45}.chat-help{color:#6d727b;margin:8px 0 0;font-size:8px;line-height:1.5}.trade-link{color:var(--yellow);cursor:pointer;font-family:var(--font-geist-mono), monospace;background:0 0;border:0;padding:8px 0 8px 8px;font-size:8px}.trade-link:hover{color:#fff0b3;text-decoration:underline}.trade-link:disabled{color:#555b64;cursor:not-allowed;text-decoration:none}.roster-actions{align-items:center;gap:7px;display:flex}.roster-actions .trade-link{padding-left:2px}.world-actions-panel{min-height:0}.world-actions-heading{border-bottom:1px solid #343943;justify-content:space-between;align-items:center;padding:3px 2px 13px;display:flex}.world-actions-heading .card-kicker{margin:0 0 4px}.world-actions-heading h2{font-size:20px}.world-actions-heading>span{color:#69707a;font-family:var(--font-geist-mono), monospace;letter-spacing:.08em;text-transform:uppercase;font-size:7px}.world-action-menu{display:grid}.world-action-item,.world-action-group>summary{color:var(--ink);cursor:pointer;text-align:left;background:0 0;border:0;border-bottom:1px solid #2b3038;grid-template-columns:34px 1fr auto;align-items:center;gap:12px;width:100%;min-height:60px;padding:7px 6px;list-style:none;display:grid}.world-action-group>summary::-webkit-details-marker{display:none}.world-action-item:hover:not(:disabled),.world-action-group>summary:hover{background:#f5c4510b;border-bottom-color:#6b5a31}.world-action-item small,.world-action-group small{color:#777f89;font-family:var(--font-geist-mono), monospace;letter-spacing:.1em;font-size:7px;display:block}.world-action-item strong,.world-action-group strong{margin-top:4px;font-size:11px;display:block}.world-action-item>i,.world-action-group summary>i{color:var(--yellow);font-size:19px;font-style:normal;transition:transform .18s}.world-action-group[open] summary>i{transform:rotate(180deg)}.world-action-icon{color:var(--yellow);border:1px solid #434a55;justify-content:center;align-items:center;width:30px;height:30px;font-family:Georgia,serif;font-size:17px;display:flex}.world-action-item .avatar-preview{image-rendering:pixelated;background-position:0 0;background-repeat:no-repeat;justify-self:center;max-width:48px;max-height:48px}.world-action-targets{background:#0e1014;border-bottom:1px solid #343a43;padding:4px 8px 7px 46px}.world-action-targets button{color:#d7dadd;cursor:pointer;text-align:left;background:0 0;border:0;border-bottom:1px solid #242931;grid-template-columns:8px 1fr auto;align-items:center;gap:8px;width:100%;min-height:34px;padding:0 3px;font-size:10px;display:grid}.world-action-targets button:last-child{border-bottom:0}.world-action-targets button:hover:not(:disabled){color:var(--yellow)}.world-action-targets button:disabled{color:#555b64;cursor:not-allowed}.world-action-targets button small{color:var(--yellow);font-size:7px}.world-action-targets button>span:nth-child(2){min-width:0}.world-action-targets button em{color:#707985;font:6px/1.4 var(--font-geist-mono), monospace;margin-top:2px;display:block}.world-action-targets p{color:#676d76;margin:8px 0;font-size:9px}.battle-wager-input{color:#818a95;font:7px var(--font-geist-mono), monospace;letter-spacing:.08em;border-bottom:1px solid #2d333c;grid-template-columns:1fr 72px;align-items:center;gap:8px;padding:8px 3px;display:grid}.battle-wager-input input{color:var(--yellow);background:#080a0d;border:1px solid #3a424d;width:100%;min-height:28px;padding:4px 7px}.world-action-item.coming-soon{cursor:default;opacity:.42}.market-modal{width:min(1040px,95vw);max-width:1040px;max-height:min(880px,94vh);overflow:auto}.market-heading{grid-template-columns:1fr auto auto;align-items:center;gap:20px;display:grid}.market-balances{gap:10px;display:flex}.market-balances>span{background:#0b0e12;border:1px solid #343a43;min-width:132px;padding:10px 14px}.market-balances small{color:#78828e;font:8px/1.4 var(--font-geist-mono), monospace;letter-spacing:.12em;display:block}.market-balances strong{color:var(--yellow);align-items:center;gap:5px;margin-top:4px;font-size:17px;display:flex}.kanto-stone-icon{height:1.25em;image-rendering:pixelated;object-fit:contain;vertical-align:-.22em;width:1.25em;display:inline-block}.market-top-actions{grid-template-columns:1fr 1fr;gap:10px;margin:20px 0 4px;display:grid}.market-top-actions>button{color:var(--ink);cursor:pointer;text-align:left;background:#0d1015;border:1px solid #39414c;grid-template-columns:32px 1fr;align-items:center;gap:12px;min-height:64px;padding:11px 15px;display:grid}.market-top-actions>button:hover{border-color:var(--yellow);background:#f5c4510b}.market-top-actions>button>span:first-child{color:var(--yellow);text-align:center;font-size:27px;line-height:1}.market-top-actions .kanto-stone-icon{width:30px;height:30px}.market-top-actions small{color:#7d8792;font:8px/1.5 var(--font-geist-mono), monospace;letter-spacing:.1em;display:block}.market-top-actions strong{margin-top:2px;font-size:13px;display:block}.market-dialog-controls{align-items:center;gap:8px;display:flex}.market-back{color:#aeb5be;cursor:pointer;font:700 8px var(--font-geist-mono), monospace;letter-spacing:.08em;text-transform:uppercase;background:0 0;border:1px solid #444b56;height:38px;padding:0 14px}.market-back:hover:not(:disabled){border-color:var(--yellow);color:var(--yellow)}.market-tabs{border-bottom:1px solid #343a43;gap:4px;margin:20px 0;display:flex}.market-tabs button{color:#858e99;cursor:pointer;font:700 11px/1 var(--font-geist-mono), monospace;letter-spacing:.08em;background:0 0;border:0;border-bottom:2px solid #0000;padding:12px 18px}.market-tabs button.active{border-bottom-color:var(--yellow);color:#fff}.market-listings{grid-template-columns:repeat(8,minmax(76px,1fr));gap:6px;padding:1px 4px 180px 1px;display:grid;overflow:visible}.market-card{background:#0d1015;border:1px solid #303741;grid-template-rows:13px 52px auto;place-items:center;gap:4px;min-width:0;padding:6px 5px;display:grid;position:relative}.market-card:hover,.market-card:focus,.market-card:focus-within{border-color:var(--yellow);z-index:20;outline:0}.market-tile-name{color:#f2f3f5;text-align:center;text-overflow:ellipsis;white-space:nowrap;max-width:100%;font:800 8px/13px Courier New,Courier,monospace;display:block;overflow:hidden}.market-asset-icon{background:#080a0d;border:1px solid #343b45;justify-content:center;align-items:center;width:100%;height:52px;display:flex;overflow:hidden}.market-asset-icon>span{color:var(--yellow);font-size:24px}.market-tile-price{color:var(--yellow);align-items:center;gap:3px;font:800 10px/1 Courier New,Courier,monospace;display:flex}.market-card-hover{border:1px solid var(--yellow);z-index:30;background:#0a0d11;min-width:220px;padding:12px;display:none;position:absolute;top:calc(100% + 7px);left:50%;transform:translate(-50%);box-shadow:8px 8px #000c}.market-card:hover .market-card-hover,.market-card:focus .market-card-hover,.market-card:focus-within .market-card-hover{flex-direction:column;gap:6px;display:flex}.market-card-hover:before{border-color:transparent transparent var(--yellow);content:"";border-style:solid;border-width:0 7px 7px;position:absolute;top:-7px;left:calc(50% - 7px)}.market-card-hover>small,.market-card-hover time{color:#7f8994;font:7px/1.4 var(--font-geist-mono),monospace;letter-spacing:.08em}.market-card-hover>strong{color:#fff;font-size:14px}.market-card-hover>span{color:#9da6b0;font-size:9px}.market-card-hover dl{border-top:1px solid #252b33;border-bottom:1px solid #252b33;margin:2px 0;padding:5px 0}.market-card-hover dl div{font:8px/1.6 var(--font-geist-mono),monospace;grid-template-columns:58px 1fr;gap:8px;display:grid}.market-card-hover dt{color:#747e89}.market-card-hover dd{color:#fff;text-align:right;margin:0}.market-card-copy{flex-direction:column;gap:4px;min-width:0;display:flex}.market-card-copy>small,.market-card-copy time{color:#727d89;font:8px/1.4 var(--font-geist-mono), monospace;letter-spacing:.08em}.market-card-copy>strong{color:#fff;font-size:16px}.market-card-copy>span{color:#aab1ba;font-size:11px}.market-card-action{flex-direction:column;align-items:flex-end;gap:7px;display:flex}.market-card-action>strong{color:var(--yellow);font-size:18px}.market-card-action>strong,.market-rate-cards strong{align-items:center;gap:5px;display:flex}.market-card-action button,.market-primary{color:#fff;cursor:pointer;font:700 9px/1 var(--font-geist-mono), monospace;letter-spacing:.08em;text-transform:uppercase;background:#b74646;border:1px solid #d65d5d;padding:10px 14px}.market-card-action button:disabled,.market-primary:disabled{cursor:not-allowed;opacity:.4}.market-card-action>small{color:#7f8994;font-size:9px}.market-bid-control{gap:6px;display:flex}.market-bid-control input{color:#fff;background:#080a0d;border:1px solid #3a424d;width:74px;padding:8px}.market-empty{color:#7e8792;text-align:center;border:1px dashed #343b45;padding:34px}.market-form-grid{grid-template-columns:1fr 1fr;gap:18px;display:grid}.market-form-grid>section,.market-exchange{background:#0d1015;border:1px solid #303741;padding:20px}.market-section-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.market-section-heading .card-kicker{margin:0}.market-section-heading button{color:#87909b;cursor:pointer;font:700 7px var(--font-geist-mono), monospace;letter-spacing:.06em;text-transform:uppercase;background:0 0;border:0;padding:5px}.market-section-heading button:hover{color:var(--yellow)}.market-form-grid label,.market-exchange label{color:#aeb6c0;gap:7px;margin-top:14px;font-size:11px;display:grid}.market-form-grid input,.market-form-grid select,.market-exchange input{color:#fff;background:#080a0d;border:1px solid #3a424d;min-height:40px;padding:9px 11px}.market-form-grid label>span{color:var(--yellow);font:9px var(--font-geist-mono), monospace}.market-kind-switch{grid-template-columns:1fr 1fr;gap:6px;margin:12px 0;display:grid}.market-kind-switch button{color:#858f9b;cursor:pointer;background:#090c10;border:1px solid #343b45;padding:10px}.market-kind-switch button.active{border-color:var(--yellow);color:#fff}.market-kind-switch button:disabled{opacity:.35}.market-asset-picker{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;max-height:350px;padding:1px 3px 1px 1px;display:grid;overflow:auto}.market-asset-picker>button{color:#fff;cursor:pointer;text-align:left;background:#090c10;border:1px solid #343b45;grid-template-columns:52px 1fr;align-items:center;gap:9px;min-width:0;padding:7px;display:grid}.market-asset-picker>button:hover,.market-asset-picker>button.selected{border-color:var(--yellow);background:#f5c4510e}.market-asset-picker>button>span:last-child{min-width:0}.market-asset-picker>button strong{text-overflow:ellipsis;white-space:nowrap;font-size:10px;display:block;overflow:hidden}.market-asset-picker>button small{color:#818b96;font:7px/1.5 var(--font-geist-mono), monospace;margin-top:3px;display:block}.market-picker-empty{color:#8c96a0;text-align:center;border:1px dashed #3a424c;padding:22px}.market-picker-empty strong{color:#fff;font-size:13px;display:block}.market-picker-empty p{max-width:380px;margin:7px auto 0;font-size:10px;line-height:1.6}.item-icon{background:radial-gradient(circle,#f5c45121,#0000 68%);flex:none;justify-content:center;align-items:center;display:inline-flex;overflow:hidden}.item-icon img{height:76%;image-rendering:pixelated;object-fit:contain;width:76%}.item-icon-offer{width:58px;height:58px}.item-icon-picker{width:48px;height:48px}.item-icon-fallback{color:var(--yellow);font-size:24px}.stone-inline{align-items:center;gap:5px;display:flex}.market-primary{width:100%;margin-top:18px}.market-note{color:#828c97;margin:14px 0 0;font-size:10px;line-height:1.6}.market-exchange{grid-template-columns:1.3fr .7fr;gap:18px;display:grid}.market-exchange h3{color:var(--yellow);align-items:center;gap:7px;margin:6px 0;font-size:24px;display:flex}.market-exchange p{color:#8d97a2;line-height:1.55}.market-rate-cards{grid-column:1/-1;grid-template-columns:1fr 1fr;gap:10px;display:grid}.market-rate-cards button{color:#fff;cursor:pointer;text-align:left;background:#090c10;border:1px solid #39414c;gap:6px;padding:18px;display:grid}.market-rate-cards button:hover{border-color:var(--yellow)}.market-rate-cards button:disabled{opacity:.4}.market-rate-cards small{color:#7d8792;font:8px var(--font-geist-mono), monospace;letter-spacing:.12em}.market-rate-cards strong{color:var(--yellow);font-size:21px}.market-rate-cards span{color:#adb5bf;font-size:12px}.market-exchange>.market-note{grid-column:1/-1}.market-success{color:#a9e6c0;background:#4bc2771a;border-left:3px solid #4bc277;margin-top:16px;padding:12px;animation:4.2s both market-notice-life}.tournament-authority-warning{color:#f0b0b0;background:#d249491f;border-left:3px solid #d24949;margin:16px 0;padding:12px 14px}@keyframes market-notice-life{0%,82%{opacity:1}to{opacity:0}}@media (max-width:760px){.market-heading{grid-template-columns:1fr auto}.market-balances{grid-area:2/1/auto/-1}.market-balances>span{flex:1;min-width:0}.market-tabs{overflow-x:auto}.market-listings{grid-template-columns:repeat(4,minmax(68px,1fr));padding-bottom:160px}.market-card{grid-template-rows:13px 48px auto}.market-asset-icon{width:100%;height:48px}.market-card-action{align-items:stretch}.market-form-grid,.market-exchange,.market-rate-cards,.market-top-actions,.market-asset-picker{grid-template-columns:1fr}.market-dialog-controls{grid-area:1/2}}.world-menu-status{color:#555c66;font-family:var(--font-geist-mono), monospace;letter-spacing:.08em;border:0;justify-content:flex-start;align-items:center;gap:15px;margin:0;padding:11px 3px 0;font-size:7px;display:flex}.world-menu-status span:before{content:"";background:#555c66;width:5px;height:5px;margin-right:5px;display:inline-block}.world-menu-status span.ready{color:#9aa19f}.world-menu-status span.ready:before{background:#71da8b;box-shadow:0 0 6px #71da8bb3}.avatar-change-button{color:var(--ink);cursor:pointer;text-align:left;background:#101318;border:1px solid #353b45;grid-template-columns:24px 1fr auto;align-items:center;gap:12px;width:100%;min-height:62px;margin-top:14px;padding:8px 12px;display:grid}.avatar-change-button:hover{border-color:var(--yellow)}.avatar-change-button .avatar-preview{height:48px;image-rendering:pixelated;background-position:0 0;background-repeat:no-repeat;background-size:216px 48px;width:24px}.avatar-change-button small{color:#777f89;font-family:var(--font-geist-mono), monospace;letter-spacing:.08em;font-size:7px;display:block}.avatar-change-button strong{margin-top:4px;font-size:11px;display:block}.avatar-change-button i{color:var(--yellow);font-size:24px;font-style:normal}.trade-toast{border:1px solid var(--yellow);z-index:1200;background:#181b20;align-items:center;gap:18px;max-width:calc(100vw - 32px);padding:13px 15px;font-size:12px;display:flex;position:fixed;bottom:24px;left:50%;transform:translate(-50%);box-shadow:8px 8px #070809}.trade-toast button{color:var(--yellow);cursor:pointer;background:0 0;border:0;padding:0;font-size:20px;line-height:1}.trade-backdrop{z-index:1100;background:#030406db;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.trade-modal{background:#15181d;border:1px solid #464c57;width:100%;max-width:980px;max-height:calc(100vh - 48px);padding:clamp(22px,3vw,36px);overflow:auto;box-shadow:16px 16px #050607}.trade-modal-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:20px;padding-bottom:20px;display:flex}.trade-modal-heading .card-kicker{margin-bottom:7px}.trade-modal-heading h2{font-size:clamp(24px,3vw,36px)}.avatar-modal{max-width:1040px}.avatar-close{color:var(--ink);cursor:pointer;background:0 0;border:1px solid #444b56;width:38px;height:38px;font-size:22px}.avatar-close:hover:not(:disabled){border-color:var(--yellow);color:var(--yellow)}.avatar-description{color:#9aa1aa;margin:18px 0;font-size:12px;line-height:1.6}.avatar-grid{grid-template-columns:repeat(auto-fill,minmax(108px,1fr));gap:10px;display:grid}.avatar-option{color:var(--ink);cursor:pointer;background:#0d0f13;border:1px solid #303640;flex-direction:column;align-items:center;min-height:118px;padding:10px 6px 8px;display:flex}.avatar-option:hover:not(:disabled){border-color:#8d7740;transform:translateY(-1px)}.avatar-option.selected{border-color:var(--yellow);box-shadow:inset 0 -3px var(--yellow)}.avatar-option.locked{background:linear-gradient(145deg,#0d0f13,#15120b)}.avatar-option.locked small{color:var(--yellow)}.avatar-option:disabled{cursor:not-allowed;opacity:.5}.avatar-option.owned:disabled{cursor:wait;opacity:.62}.avatar-option>span{image-rendering:pixelated;background-position:0 0;background-repeat:no-repeat;max-width:64px;max-height:64px}.avatar-option strong{margin-top:7px;font-size:10px}.avatar-option small{color:#737b85;font-family:var(--font-geist-mono), monospace;margin-top:3px;font-size:7px}.avatar-status{color:var(--yellow);font-family:var(--font-geist-mono), monospace;text-align:center;margin:18px 0 0;font-size:9px}.trade-safe-badge{color:#71da8b;font-family:var(--font-geist-mono), monospace;letter-spacing:.1em;white-space:nowrap;border:1px solid #71da8b;padding:8px 10px;font-size:8px}.rom-trade-resource-bar{background:#101319;border-bottom:1px solid #343a44;align-items:center;gap:12px;min-height:56px;margin:0 -1px;padding:4px 10px;display:flex;overflow:hidden}.rom-trade-resource-bar>span:last-child{color:#7f8994;font-family:var(--font-geist-mono), monospace;letter-spacing:.08em;text-align:right;margin-left:auto;font-size:7px}.rom-trade-control-strip{height:48px;image-rendering:pixelated;background-position:0 0;background-repeat:no-repeat;background-size:208px 48px;flex:0 0 208px;width:208px}.rom-trade-icon-strip{height:32px;image-rendering:pixelated;background-position:0 0;background-repeat:no-repeat;background-size:32px 64px;flex:0 0 32px;width:32px}.trade-request-view,.trade-complete-view{text-align:center;flex-direction:column;align-items:center;padding:clamp(38px,6vw,70px) 20px 20px;display:flex}.trade-symbol{border:1px solid var(--yellow);color:var(--yellow);justify-content:center;align-items:center;width:76px;height:76px;margin-bottom:24px;font-size:38px;display:flex}.trade-request-view h3,.trade-complete-view h3{margin:0;font-size:clamp(22px,3vw,34px)}.trade-request-view p,.trade-complete-view p{color:var(--muted);max-width:600px;margin:14px 0 0;line-height:1.65}.economy-cost{align-items:center;gap:7px;display:flex;color:var(--yellow)!important}.economy-cost .kanto-stone-icon{width:18px;height:18px}.battle-wager-card{background:#0b0e12;border:1px solid #3b424c;align-items:center;gap:6px;min-width:min(430px,100%);margin-top:18px;padding:14px 18px;display:grid}.battle-wager-card>span{color:var(--yellow);font:8px var(--font-geist-mono), monospace;letter-spacing:.12em;justify-content:center;align-items:center;gap:6px;display:flex}.battle-wager-card .kanto-stone-icon,.battle-wager-strip .kanto-stone-icon{width:18px;height:18px}.onboarding-shell{background:linear-gradient(90deg,#07080ae6,#07080a9e,#07080ae6),url(/rom-assets/world-maps/layouts/layout-082dd4c0.png) 50%/cover no-repeat;place-items:center;min-height:100vh;padding:24px;display:grid}.onboarding-card{background:linear-gradient(145deg,#ffffff0b,#0000 55%),#15181d;border:1px solid #454b55;width:100%;max-width:760px;padding:clamp(30px,6vw,64px);box-shadow:14px 14px #050607}.onboarding-card h1{font-size:clamp(42px,7vw,78px);line-height:.92}.onboarding-card>p:not(.card-kicker){color:#b4bac3;margin:28px 0 36px;font-size:clamp(15px,2vw,19px);line-height:1.7}.onboarding-progress{grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:38px;display:grid}.onboarding-progress span{background:#31363e;height:5px}.onboarding-progress span.active{background:var(--yellow);box-shadow:0 0 10px #f5c45159}.onboarding-actions{justify-content:flex-end;gap:12px;display:flex}.onboarding-actions .primary-button{min-width:210px;margin:0}.onboarding-actions .ghost-button:disabled{cursor:not-allowed;opacity:.35}@media (max-width:520px){.onboarding-shell{padding:12px}.onboarding-card{padding:28px 20px;box-shadow:7px 7px #050607}.onboarding-actions{flex-direction:column-reverse;align-items:stretch}.onboarding-actions .primary-button,.onboarding-actions .ghost-button{justify-content:center;width:100%}}.battle-wager-card strong{color:#fff;font-size:17px}.battle-wager-card small{color:#828c97}.battle-wager-card button,.battle-wager-strip button{color:var(--yellow);cursor:pointer;font:700 8px var(--font-geist-mono), monospace;background:0 0;border:1px solid #4a515b;padding:8px 12px}.battle-wager-strip{background:#f5c4510f;border:1px solid #f5c4514d;grid-template-columns:20px 1fr auto auto;align-items:center;gap:8px;margin-bottom:12px;padding:9px 12px;display:grid}.battle-wager-strip span{color:#929ba6;font:8px var(--font-geist-mono), monospace;letter-spacing:.08em}.battle-wager-strip strong{color:var(--yellow);font-size:10px}.trade-actions{justify-content:center;gap:12px;margin-top:30px;display:flex}.trade-actions .primary-button,.trade-complete-view .primary-button{margin:0}.trade-selecting-view{padding-top:24px}.trade-offer-board{grid-template-columns:1fr auto 1fr;align-items:stretch;gap:16px;display:grid}.trade-offer{background:#0f1115;border:1px dashed #4d535d;flex-direction:column;min-height:122px;padding:18px;display:flex}.trade-offer.ready{border-style:solid;border-color:var(--yellow);box-shadow:inset 3px 0 var(--yellow)}.trade-offer small{color:#747a84;font-family:var(--font-geist-mono), monospace;letter-spacing:.1em;font-size:8px}.trade-offer-pokemon{align-items:center;gap:15px;margin-top:auto;padding-top:14px;display:flex}.trade-offer-pokemon>div{min-width:0}.trade-offer-pokemon strong{overflow-wrap:anywhere;font-size:20px;display:block}.trade-offer-pokemon>div>span{color:var(--muted);margin-top:5px;font-size:10px;display:block}.trade-arrows{color:var(--yellow);flex-direction:column;justify-content:center;align-items:center;gap:2px;font-size:24px;display:flex}.rom-communication-selector{height:32px;image-rendering:pixelated;background-position:0 0;background-repeat:no-repeat;background-size:32px 64px;width:32px;animation:.7s steps(2,end) infinite rom-communication-selector;display:block}.trade-picker{border-top:1px solid var(--line);margin-top:24px;padding-top:22px}.trade-picker-heading{justify-content:space-between;align-items:baseline;gap:18px;display:flex}.trade-picker-heading h3{margin:0;font-size:18px}.trade-picker-heading span{color:#767c85;font-family:var(--font-geist-mono), monospace;font-size:8px}.rom-storage-reference{align-self:center;align-items:center;gap:4px;margin-left:auto;display:flex}.rom-storage-menu-sheet{height:72px;image-rendering:pixelated;background-position:0 0;background-repeat:no-repeat;background-size:128px 72px;width:128px;display:block}.rom-storage-arrow{height:16px;image-rendering:pixelated;background-position:0 0;background-repeat:no-repeat;background-size:16px 64px;width:16px;animation:.8s steps(4,end) infinite rom-storage-arrow;display:block}.trade-pokemon-grid{scrollbar-color:#4b515b transparent;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;max-height:286px;margin-top:15px;padding-right:5px;display:grid;overflow-y:auto}.trade-pokemon{border:1px solid var(--line);color:var(--ink);cursor:pointer;text-align:left;background:#101216;grid-template-columns:58px minmax(0,1fr);align-items:center;column-gap:11px;min-height:88px;padding:10px;display:grid;position:relative}.trade-pokemon:hover{border-color:#777f8c}.trade-pokemon.selected{border-color:var(--yellow);background:#f5c45114}.trade-pokemon:disabled{cursor:not-allowed;filter:grayscale(.8);opacity:.55}.trade-pokemon>.pokemon-icon{grid-row:1/4}.rom-storage-cursor{height:24px;image-rendering:pixelated;pointer-events:none;z-index:2;background-position:0 0;background-repeat:no-repeat;background-size:24px 96px;width:24px;animation:.72s steps(4,end) infinite rom-storage-cursor;display:block;position:absolute;top:1px;left:1px}.trade-pokemon>span{color:var(--yellow);font-family:var(--font-geist-mono), monospace;letter-spacing:.08em;align-self:end;font-size:7px}.trade-pokemon strong{overflow-wrap:anywhere;font-size:13px}.trade-pokemon small{color:#838892;margin-top:4px;font-size:9px}.trade-empty{border-left:2px solid var(--yellow);color:var(--muted);background:#101216;margin:15px 0 0;padding:16px;font-size:11px;line-height:1.6}.trade-safety-note{color:#91b69a;border-left:2px solid #71da8b;margin:14px 0 0;padding:4px 0 4px 11px;font-size:10px;line-height:1.5}.trade-safety-note.blocked{color:#faa;border-left-color:#ef6767}.trade-error{color:#faa;background:#ef4d4d1a;border:1px solid #ef4d4d59;margin:16px 0 0;padding:11px 13px;font-size:11px}.trade-confirm-row{border-top:1px solid var(--line);grid-template-columns:auto 1fr auto;align-items:center;gap:18px;margin-top:24px;padding-top:20px;display:grid}.trade-confirm-row p{color:#858a92;text-align:center;margin:0;font-size:10px}.trade-confirm-row .primary-button{margin:0}.trade-complete-mark{color:#08110a;background:#71da8b;justify-content:center;align-items:center;width:70px;height:70px;margin-bottom:24px;font-size:34px;font-weight:900;display:flex}.trade-complete-offers{gap:8px;width:min(100%,520px);margin:26px 0;display:grid}.trade-complete-offers>span{border:1px solid var(--line);background:#101216;align-items:center;gap:12px;padding:8px 12px;font-size:11px;display:flex}.trade-complete-offers>span>span{flex:1;justify-content:space-between;display:flex}.trade-processing-view{text-align:center;flex-direction:column;align-items:center;padding:clamp(54px,8vw,96px) 20px 40px;display:flex}.trade-processing-view h3{margin:24px 0 0;font-size:clamp(22px,3vw,34px)}.trade-processing-view p{color:var(--muted);max-width:580px;margin:14px 0 22px;line-height:1.65}.trade-processing-view strong,.trade-receipt{color:var(--yellow);font-family:var(--font-geist-mono), monospace;letter-spacing:.1em;font-size:10px}.trade-processing-spinner{border:4px solid #3e444e;border-right-color:var(--yellow);width:58px;height:58px;animation:1s steps(8,end) infinite trade-spin}.trade-receipt{margin:-10px 0 24px!important}@keyframes trade-spin{to{transform:rotate(360deg)}}@keyframes rom-storage-cursor{to{background-position:0 -96px}}@keyframes rom-storage-arrow{to{background-position:0 -64px}}@keyframes rom-communication-selector{to{background-position:0 -64px}}.pokemon-icon{background:radial-gradient(circle,#f5c45121,#0000 68%);flex:none;justify-content:center;align-items:center;display:inline-flex;overflow:hidden}.pokemon-icon img{height:200%;image-rendering:pixelated;object-fit:fill;flex:none;align-self:flex-start;width:100%;display:block}.pokemon-icon-picker{width:58px;height:58px}.pokemon-icon-offer{width:50px;height:50px}.pokemon-icon-complete{width:48px;height:48px}.pokemon-icon-fallback{color:#6e7580;border:1px solid #4e5561;border-radius:50%;justify-content:center;align-items:center;width:62%;height:62%;font-size:24px;display:flex}.battle-toast{border-color:#ae78ff}.battle-toast button{color:#ae78ff}.battle-backdrop{background:#040308e6}.battle-modal{border-color:#695197;max-width:1040px}.battle-modal:has(.battle-active-view){padding:8px;overflow-x:hidden}.battle-modal-active{background:#07090c;border-color:#303640;max-width:1000px;box-shadow:8px 8px #020304}.battle-safe-badge,.battle-symbol{color:#c6a3ff;border-color:#ae78ff}.battle-versus-board .trade-offer.ready{border-color:#ae78ff;box-shadow:inset 3px 0 #ae78ff}.battle-versus{color:#c6a3ff;font-family:var(--font-geist-mono), monospace;align-items:center;font-size:24px;font-weight:900;display:flex}.battle-pokemon.selected{background:#ae78ff17;border-color:#ae78ff}.battle-active-view{padding-top:0}.battle-rom-toolbar{border-bottom:1px solid #242a31;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;margin:8px 4px 0;padding:0 2px 7px;display:grid}.battle-rom-toolbar>span{color:#c6a3ff;font-family:var(--font-geist-mono), monospace;letter-spacing:.1em;font-size:9px;font-weight:900}.battle-rom-toolbar strong{color:#9ba3ad;font-family:var(--font-geist-mono), monospace;text-align:center;text-transform:uppercase;font-size:8px;font-weight:700}.battle-rom-toolbar small{color:#7f848c;font-family:var(--font-geist-mono), monospace;font-size:7px}.battle-turn-tools{flex-direction:column;align-items:flex-end;gap:5px;display:flex}.battle-turn-tools button{color:#a8afb9;cursor:pointer;font-family:var(--font-geist-mono), monospace;background:0 0;border:1px solid #4b5260;padding:4px 6px;font-size:7px}.battle-arena{aspect-ratio:3/2;box-sizing:content-box;image-rendering:pixelated;image-rendering:crisp-edges;background:#111722;border:4px solid #222933;width:min(960px,100% - 8px);margin:0 auto;position:relative;overflow:hidden;box-shadow:0 0 0 2px #080a0d,7px 8px #00000059;container-type:inline-size}.battle-arena-rom{color:#202520;font-family:var(--font-geist-mono), monospace;animation:.8s steps(8,end) both gba-arena-arrive}.battle-arena-rom:before{content:"";pointer-events:none;transform-origin:50%;z-index:50;background:repeating-linear-gradient(135deg,#080b0d 0 5cqw,#f5f1de 5cqw 5.8cqw,#080b0d 5.8cqw 10.8cqw);animation:.72s steps(8,end) forwards gba-battle-curtain;position:absolute;inset:0}.battle-arena-rom:after{content:none}.gba-battle-scene{background:#dceff1 url(/battle-ui/dragon-gym-field.png) 0 0/100% 100% no-repeat;height:65%;position:relative;overflow:hidden}.battle-mon{transform-origin:50% 88%;z-index:3;justify-content:center;align-items:flex-end;display:flex;position:absolute}.battle-mon img{height:100%;image-rendering:pixelated;object-fit:contain;pointer-events:none;-webkit-user-select:none;user-select:none;width:100%;animation:.42s steps(4,end) gba-mon-materialize}.battle-mon-front{width:26.667cqw;height:26.667cqw;top:3.333cqw;right:8.333cqw}.battle-mon-back{width:26.667cqw;height:26.667cqw;bottom:0;left:9.167cqw}.battle-mon-fallback{color:#34473a;font-size:10cqw}.battle-mon.is-attacking{animation:.38s step-end gba-attack-own}.battle-mon-front.is-attacking{animation-name:gba-attack-opponent}.battle-mon.is-hit{animation:.38s step-end .16s both gba-hit}.battle-mon.is-entering{animation:.62s steps(6,end) gba-enter}.battle-mon.is-fainting{animation:.85s steps(8,end) both gba-faint;overflow:hidden}.battle-rom-status{color:#1f2821;z-index:4;background:0 0/100% 100% no-repeat;border:0;width:53.333cqw;min-width:0;height:13.333cqw;padding:0;position:absolute}.battle-rom-status.opponent{background-image:url(/battle-ui/healthbox-opponent.png?v=rom-hud-1);animation:.52s steps(6,end) .45s both gba-healthbox-opponent;top:5.833cqw;left:5cqw}.battle-rom-status.own{background-image:url(/battle-ui/healthbox-player.png?v=rom-hud-1);animation:.52s steps(6,end) .45s both gba-healthbox-own;top:30cqw;left:52.5cqw}.battle-rom-status>div:first-child{position:absolute;inset:0}.battle-rom-status strong{letter-spacing:0;text-transform:uppercase;white-space:nowrap;max-width:23.333cqw;font-size:3.333cqw;line-height:1;position:absolute;top:1.25cqw;left:3.333cqw;overflow:hidden}.battle-rom-status>div:first-child>span{white-space:nowrap;font-size:3.333cqw;font-weight:800;line-height:1;position:absolute;top:3.333cqw;left:29.167cqw}.battle-rom-status>small{color:#384239;justify-content:flex-end;align-items:center;gap:.833cqw;height:2.5cqw;font-size:2.5cqw;font-weight:800;line-height:1;display:flex;position:absolute;bottom:1.25cqw;right:13.333cqw}.battle-rom-status.opponent>small{bottom:1cqw;left:3.2cqw;right:auto}.battle-rom-hp{grid-template-columns:3.333cqw minmax(0,1fr);align-items:center;gap:.417cqw;width:25cqw;display:grid;position:absolute;top:6.25cqw;left:13.333cqw}.battle-rom-hp b{background:#374238;border-radius:.9cqw 0 0 .9cqw;align-items:center;height:1.55cqw;padding-left:.25cqw;font-size:2.5cqw;display:flex}.battle-rom-hp>i{background:#303a31;border:.25cqw solid #303a31;border-radius:1cqw;height:1.5cqw;display:block;overflow:hidden}.battle-rom-hp em{background:#55c96a;height:100%;transition:width .48s steps(12,end),background .2s;display:block}.battle-rom-hp em.warning{background:#e5c242}.battle-rom-hp em.critical{background:#e05252;animation:.65s steps(2,end) infinite battle-critical}.battle-pixel-text{font-size:inherit;image-rendering:pixelated;vertical-align:middle;flex-wrap:wrap;align-items:flex-start;max-width:100%;line-height:1;display:inline-flex}.battle-glyph{background-image:url(/battle-ui/battle-font.png?v=lance-arena-1);background-position:var(--glyph-x) var(--glyph-y);height:1em;image-rendering:pixelated;background-repeat:no-repeat;background-size:16em 32em;flex:0 0 .56em;width:.56em;display:inline-block;overflow:hidden}.battle-glyph.is-space{background-image:none}.battle-pixel-text.tone-dark .battle-glyph{filter:brightness(0)saturate()}.battle-pixel-text.tone-light .battle-glyph{filter:drop-shadow(.11em .11em #263c43)}.battle-pixel-text.tone-gold .battle-glyph{filter:brightness(0)saturate()invert(82%)sepia(77%)saturate(744%)hue-rotate(349deg)brightness(101%)contrast(91%)}.battle-status-icon{background:url(/battle-ui/status-icons.png?v=rom-hud-1) var(--status-offset) 0 / 106.667cqw 3.333cqw no-repeat;height:3.333cqw;image-rendering:pixelated;transform-origin:0;flex:0 0 13.333cqw;width:13.333cqw;display:inline-block;transform:scale(.72)}.battle-type-icons{z-index:2;gap:.35cqw;display:grid;position:absolute;top:2.7cqw}.battle-rom-status.opponent .battle-type-icons{right:-1.3cqw}.battle-rom-status.own .battle-type-icons{left:-1.3cqw}.battle-type-icons i{color:#fff;letter-spacing:-.05em;text-shadow:.15cqw .15cqw #26302c;border:.2cqw solid #f7f5e8;justify-content:center;align-items:center;width:3.1cqw;height:3.1cqw;font-size:1.35cqw;font-style:normal;font-weight:900;display:flex;box-shadow:0 0 0 .25cqw #3d4542}.battle-type-icons .type-normal{background:#8f9488}.battle-type-icons .type-fire{background:#d95736}.battle-type-icons .type-water{background:#3d83cb}.battle-type-icons .type-electric{background:#d3b52f}.battle-type-icons .type-grass{background:#55a64c}.battle-type-icons .type-ice{background:#5ab8bd}.battle-type-icons .type-fighting{background:#a83e35}.battle-type-icons .type-poison{background:#8c4599}.battle-type-icons .type-ground{background:#b99043}.battle-type-icons .type-flying{background:#7289bd}.battle-type-icons .type-psychic{background:#cf537f}.battle-type-icons .type-bug{background:#839a2e}.battle-type-icons .type-rock{background:#97803c}.battle-type-icons .type-ghost{background:#5b4f87}.battle-type-icons .type-dragon{background:#5140ac}.battle-type-icons .type-dark{background:#504843}.battle-type-icons .type-steel{background:#7d8994}.battle-type-icons .type-fairy{background:#c7749d}.gba-field-tags{display:none}.gba-field-tags span{color:#303a31;text-transform:uppercase;white-space:nowrap;background:#f8f7dee0;border:.28cqw solid #526153;padding:.28cqw .55cqw;font-size:1.1cqw;font-weight:900}.battle-rom-effect,.battle-rom-weather{pointer-events:none;z-index:7;position:absolute;inset:0}.battle-rom-weather{z-index:8;overflow:hidden}.rom-bytecode-background-layer{pointer-events:none;z-index:2;position:absolute;inset:0;overflow:hidden}.rom-bytecode-background{image-rendering:pixelated;background-position:0 0;background-repeat:no-repeat;background-size:106.667cqw 106.667cqw;animation:.16s steps(5,end) both rr-rom-background-in;position:absolute;inset:0}.rom-bytecode-layer{pointer-events:none;z-index:7;position:absolute;inset:0;overflow:hidden}.rom-bytecode-sprite{image-rendering:pixelated;background-repeat:no-repeat;position:absolute}.rom-bytecode-state-layer{pointer-events:none;z-index:9;position:absolute;inset:0}.rom-scene-marker{pointer-events:none;width:1px;height:1px;position:absolute;top:0;left:0}:is(.gba-battle-scene:has(.rom-scene-marker.hide-own) .battle-mon-back,.gba-battle-scene:has(.rom-scene-marker.hide-opponent) .battle-mon-front){visibility:hidden}.rom-motion-marker{pointer-events:none;width:1px;height:1px;position:absolute;top:0;left:0}.rom-motion-marker.motion-flash{mix-blend-mode:screen;opacity:.6;background:#fff;width:auto;height:auto;animation:.28s steps(3,end) both rr-rom-flash;inset:0}.gba-battle-scene:has(.motion-own.motion-lunge) .battle-mon-back{animation:.3s steps(6,end) rr-rom-lunge-own}.gba-battle-scene:has(.motion-opponent.motion-lunge) .battle-mon-front{animation:.3s steps(6,end) rr-rom-lunge-opponent}:is(.gba-battle-scene:has(.motion-own.motion-dip) .battle-mon-back,.gba-battle-scene:has(.motion-own.motion-bow) .battle-mon-back,.gba-battle-scene:has(.motion-opponent.motion-dip) .battle-mon-front,.gba-battle-scene:has(.motion-opponent.motion-bow) .battle-mon-front){animation:.24s steps(6,end) rr-rom-dip}.gba-battle-scene:has(.motion-own.motion-slide-forward) .battle-mon-back{animation:.32s steps(8,end) both rr-rom-slide-own}.gba-battle-scene:has(.motion-opponent.motion-slide-forward) .battle-mon-front{animation:.32s steps(8,end) both rr-rom-slide-opponent}:is(.gba-battle-scene:has(.motion-own.motion-slide-back) .battle-mon-back,.gba-battle-scene:has(.motion-own.motion-slide-up) .battle-mon-back){animation:.25s steps(6,end) rr-rom-slide-back-own}:is(.gba-battle-scene:has(.motion-opponent.motion-slide-back) .battle-mon-front,.gba-battle-scene:has(.motion-opponent.motion-slide-up) .battle-mon-front){animation:.25s steps(6,end) rr-rom-slide-back-opponent}:is(.gba-battle-scene:has(.motion-own.motion-slide-down) .battle-mon-back,.gba-battle-scene:has(.motion-opponent.motion-slide-down) .battle-mon-front){animation:.25s steps(6,end) rr-rom-dip}:is(.gba-battle-scene:has(.motion-own.motion-shake) .battle-mon-back,.gba-battle-scene:has(.motion-opponent.motion-shake) .battle-mon-front){animation:.18s steps(6,end) infinite rr-rom-shake}.gba-battle-scene:has(.motion-screen.motion-screen-shake){animation:.16s steps(4,end) infinite rr-rom-screen-shake}.gba-battle-scene:has(.motion-screen.motion-background-scroll) .rom-bytecode-background{animation:.16s steps(5,end) both rr-rom-background-in,.9s steps(12,end) infinite rr-rom-background-scroll}.rom-effect-sprite{animation:rom-effect-sheet .56s steps(var(--rom-effect-steps),end) both;background-image:var(--rom-effect-sheet);background-position:0 0;background-repeat:no-repeat;background-size:100% var(--rom-effect-sheet-height);image-rendering:pixelated;position:absolute}.battle-rom-effect .effect-main,.battle-rom-effect .effect-copy{width:12cqw;height:12cqw}.battle-rom-effect .effect-main{animation:rom-effect-sheet .56s steps(var(--rom-effect-steps),end) both, rom-effect-pop .56s steps(5,end) both}.battle-rom-effect .effect-copy{animation:rom-effect-sheet .48s steps(var(--rom-effect-steps),end) 80ms both, rom-effect-pop .48s steps(4,end) 80ms both;opacity:.88;width:7cqw;height:7cqw}.battle-rom-effect .effect-copy-b{animation-delay:.16s,.16s}.battle-rom-effect .effect-impact{animation:rom-effect-sheet .3s steps(var(--rom-effect-steps),end) .22s both, rom-effect-impact .3s steps(4,end) .22s both;width:9cqw;height:9cqw}.battle-rom-effect.attack-own .effect-main,.battle-rom-effect.attack-own .effect-impact{top:19%;right:17%}.battle-rom-effect.attack-own .effect-copy-a{top:17%;right:28%}.battle-rom-effect.attack-own .effect-copy-b{top:34%;right:13%}.battle-rom-effect.attack-opponent .effect-main,.battle-rom-effect.attack-opponent .effect-impact{bottom:9%;left:18%}.battle-rom-effect.attack-opponent .effect-copy-a{bottom:24%;left:11%}.battle-rom-effect.attack-opponent .effect-copy-b{bottom:7%;left:31%}.battle-rom-effect.family-poison .effect-main,.battle-rom-effect.family-dark .effect-main,.battle-rom-effect.family-dragon .effect-main,.battle-rom-effect.family-grass .effect-main{width:8cqw;height:8cqw}.battle-rom-effect.family-rock .effect-copy,.battle-rom-effect.family-ground .effect-copy{width:10cqw;height:10cqw}.battle-rom-effect.switch-own:before,.battle-rom-effect.switch-opponent:before{content:"";height:6.667cqw;image-rendering:pixelated;z-index:2;background:url(/battle-ui/poke-ball.png?v=rom-hud-1) 0 0/100% 300% no-repeat;width:6.667cqw;animation:.75s steps(3,end) both gba-ball-release;position:absolute}.battle-rom-effect.switch-own:before{bottom:17%;left:19%}.battle-rom-effect.switch-opponent:before{top:25%;right:19%}.battle-rom-effect.heal-own .effect-main,.battle-rom-effect.status-own .effect-main{bottom:8%;left:17%}.battle-rom-effect.heal-own .effect-copy-a,.battle-rom-effect.status-own .effect-copy-a{bottom:20%;left:12%}.battle-rom-effect.heal-own .effect-copy-b,.battle-rom-effect.status-own .effect-copy-b{bottom:10%;left:31%}.battle-rom-effect.heal-opponent .effect-main,.battle-rom-effect.status-opponent .effect-main{top:18%;right:17%}.battle-rom-effect.heal-opponent .effect-copy-a,.battle-rom-effect.status-opponent .effect-copy-a{top:16%;right:29%}.battle-rom-effect.heal-opponent .effect-copy-b,.battle-rom-effect.status-opponent .effect-copy-b{top:34%;right:13%}.battle-rom-weather .weather-particle{animation-iteration-count:infinite,infinite;animation-timing-function:steps(var(--rom-effect-steps),end),linear;top:-10cqw}.battle-rom-weather .particle-1{left:2%}.battle-rom-weather .particle-2{left:12%}.battle-rom-weather .particle-3{left:23%}.battle-rom-weather .particle-4{left:34%}.battle-rom-weather .particle-5{left:44%}.battle-rom-weather .particle-6{left:55%}.battle-rom-weather .particle-7{left:65%}.battle-rom-weather .particle-8{left:76%}.battle-rom-weather .particle-9{left:87%}.battle-rom-weather .particle-10{left:96%}.battle-rom-weather .particle-11{left:18%}.battle-rom-weather .particle-12{left:70%}.weather-family-rain .weather-particle{animation-name:rom-effect-sheet,rom-weather-rain;animation-duration:.52s,.82s;animation-delay:calc(var(--particle-index) * -.08s);width:5cqw;height:5cqw}.weather-family-hail .weather-particle{animation-name:rom-effect-sheet,rom-weather-hail;animation-duration:.1s,1.45s;animation-delay:calc(var(--particle-index) * -.13s);width:4.5cqw;height:4.5cqw}.weather-family-sand .weather-particle{animation-name:rom-effect-sheet,rom-weather-sand;animation-duration:.1s,1.55s;animation-delay:calc(var(--particle-index) * -.12s);width:6cqw;height:6cqw}.weather-family-sun .weather-particle{width:15cqw;height:15cqw;animation:.1s step-end both rom-effect-sheet,1.1s steps(4,end) infinite rom-weather-sun;top:-2cqw}.weather-family-sun .particle-1{left:8%}.weather-family-sun .particle-2{left:43%}.weather-family-sun .particle-3{left:78%}.gba-command-window{z-index:10;background:#fff url(/battle-ui/command-moves.png) 0 0/100% 100% no-repeat;grid-template-columns:2fr 1fr;height:35%;display:grid;position:relative}.gba-command-window.message-mode{background-image:url(/battle-ui/command-message.png);display:block}.gba-command-window.action-mode{background-image:url(/battle-ui/command-action.png);grid-template-columns:1fr 1fr}.gba-action-prompt{color:#f8f8e8;text-shadow:.417cqw .417cqw #1f2d31;align-items:flex-start;padding:1.667cqw 3.333cqw;display:flex}.gba-action-prompt p{letter-spacing:0;margin:0;font-size:4.167cqw;font-weight:800;line-height:1}.gba-action-prompt strong{color:#fff;font-size:inherit;text-transform:uppercase}.gba-action-menu{grid-template-rows:repeat(2,minmax(0,1fr));grid-template-columns:repeat(2,minmax(0,1fr));align-content:stretch;padding:1.667cqw 1.667cqw 1.667cqw 3.333cqw;display:grid}.gba-action-menu button{color:#242c2a;cursor:pointer;text-align:left;white-space:nowrap;background:0 0;border:0;align-items:center;min-width:0;padding:0 .5cqw 0 3.5cqw;font-family:inherit;font-size:clamp(14px,2.8cqw,28px);font-weight:900;display:flex;position:relative;overflow:hidden}.gba-menu-cursor{opacity:0;font-size:4.167cqw;position:absolute;top:0;left:0}.gba-action-menu>button:first-child .gba-menu-cursor,.gba-move-panel>.battle-move:first-child .gba-menu-cursor{opacity:1}.gba-action-menu:has(button:hover)>button:first-child:not(:hover) .gba-menu-cursor{opacity:0}.gba-move-panel:has(.battle-move:hover)>.battle-move:first-child:not(:hover) .gba-menu-cursor{opacity:0}.gba-action-menu button:hover .gba-menu-cursor,.gba-move-panel .battle-move:hover .gba-menu-cursor{opacity:1}.gba-action-menu button:focus-visible .gba-menu-cursor{opacity:1}.gba-move-panel .battle-move:focus-visible .gba-menu-cursor{opacity:1}:is(.gba-action-menu button:hover,.gba-action-menu button:focus-visible){background:#c6cde14d;outline:0}.gba-action-menu button[aria-disabled=true]{color:#7a7d78}.gba-action-menu button[aria-disabled=true] .gba-menu-cursor{filter:grayscale()}.gba-message-panel{height:100%;padding:3.333cqw;position:relative}.gba-message-panel p{color:#28302f;letter-spacing:0;text-shadow:.417cqw .417cqw #c6c7ae;margin:0;font-size:4.167cqw;font-weight:800;line-height:1}.gba-move-panel{grid-template-rows:repeat(2,minmax(0,1fr));grid-template-columns:repeat(2,minmax(0,1fr));align-content:stretch;gap:.35cqw 1cqw;min-height:0;padding:1.25cqw 1.25cqw 1.25cqw 2.5cqw;display:grid;overflow:hidden}.gba-move-panel .battle-move{color:#242c2a;text-align:left;white-space:nowrap;background:0 0;border:0;align-items:center;min-width:0;min-height:0;padding:0 .4cqw 0 3.25cqw;display:flex;position:relative;overflow:hidden}:is(.gba-move-panel .battle-move:hover:not(:disabled),.gba-move-panel .battle-move:focus-visible:not(:disabled)){background:#c6cde152;border-color:#0000;outline:0;transform:none}.gba-move-panel .battle-move strong{letter-spacing:0;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;font-size:clamp(11px,2.1cqw,21px);line-height:1;display:block;overflow:hidden}.gba-move-panel .battle-move .battle-pixel-text,.gba-move-panel .battle-move .battle-glyph{color:inherit;font-family:inherit;font-size:inherit}.gba-move-panel .gba-menu-cursor{left:0}.gba-move-info{background:0 0;grid-template-rows:repeat(5,minmax(0,1fr));grid-template-columns:auto minmax(0,1fr);align-content:stretch;min-height:0;padding:.65cqw 1.2cqw;display:grid;overflow:hidden}.gba-move-info>span{color:#59615b;align-self:center;font-size:clamp(10px,1.8cqw,18px);font-weight:900;line-height:1}.gba-move-info>b,.gba-move-info>strong{color:#252d29;text-align:right;align-self:center;min-width:0;font-size:clamp(10px,1.8cqw,18px);line-height:1}.gba-move-info>strong{text-overflow:ellipsis;overflow:hidden}.gba-move-info .effect-strong{color:#299442}.gba-move-info .effect-weak{color:#b68122}.gba-move-info .effect-none{color:#b33d3d}.gba-move-info button{color:#3e4247;cursor:pointer;text-align:right;background:#c6cde138;border:0;grid-column:1/-1;align-self:center;min-height:0;margin:0;padding:.35cqw .6cqw;font-family:inherit;font-size:clamp(10px,1.65cqw,16px);font-weight:900;line-height:1}.gba-move-info button:disabled{opacity:.45}.gba-move-info .gba-special-row{grid-column:1/-1;align-items:center;gap:.25cqw;min-width:0;display:flex}.gba-move-info .gba-special-row button{color:#f5f1e8;text-align:center;background:#303336;border:.16cqw solid #f5f1e8;flex:auto;min-width:0;padding:.32cqw .2cqw;font-size:clamp(8px,1.1cqw,12px)}.gba-move-info .gba-special-row button.active{color:#fff;background:#b33d3d;box-shadow:inset 0 0 0 .15cqw #f3c84f}.gba-battle-scene:has(.battle-mon.is-hit){animation:.22s steps(2,end) gba-screen-hit}.gba-party-overlay{z-index:20;background:linear-gradient(135deg,#79bda0 0 50%,#91cdb0 50%);padding:2.5cqw 3.333cqw 3.333cqw;position:absolute;inset:0}.gba-party-overlay:before{content:"";pointer-events:none;background:repeating-linear-gradient(135deg,#0000 0 3cqw,#ffffff14 3cqw 4cqw);position:absolute;inset:0}.gba-party-overlay header{z-index:1;justify-content:space-between;align-items:center;height:9%;display:flex;position:relative}.gba-party-overlay header strong{color:#fffbe7;text-shadow:.25cqw .25cqw #326d5d;font-size:3.333cqw;line-height:1}.gba-party-overlay header button{color:#293d37;cursor:pointer;background-color:#f4eee0;background-image:linear-gradient(135deg,#ffffff61 25%,#0000 25% 75%,#5f6f651f 75%);background-size:1.667cqw 1.667cqw;border:.417cqw solid #3e6259;padding:.833cqw 1.25cqw;font-family:inherit;font-size:2.5cqw;font-weight:900;box-shadow:inset 0 0 0 .208cqw #fffbed}.gba-party-grid{z-index:1;grid-template-rows:repeat(5,minmax(0,1fr));grid-template-columns:42% minmax(0,1fr);gap:.833cqw;height:86%;margin-top:1.25cqw;display:grid;position:relative}.gba-party-grid>button{color:#26332e;cursor:pointer;text-align:left;background-color:#f5f3de;background-image:linear-gradient(90deg,#45685b14 .208cqw,#0000 .208cqw),linear-gradient(#45685b14 .208cqw,#0000 .208cqw),repeating-linear-gradient(135deg,#ffffff2e 0 .833cqw,#e6e5cd2e .833cqw 1.667cqw);background-size:1.667cqw 1.667cqw,1.667cqw 1.667cqw,3.333cqw 3.333cqw;border:.417cqw solid #42675d;border-radius:.833cqw;grid-column:2;grid-template-rows:repeat(2,minmax(0,1fr));grid-template-columns:5.833cqw minmax(0,1fr) 11.667cqw;align-items:center;gap:.208cqw .833cqw;min-height:0;padding:.417cqw .833cqw;display:grid;box-shadow:inset 0 0 0 .208cqw #ffffffb8,inset 0 -.833cqw #36534814}.gba-party-grid>button:first-child{text-align:center;background-image:linear-gradient(90deg,#386a581a .417cqw,#0000 .417cqw),linear-gradient(#386a581a .417cqw,#0000 .417cqw),repeating-linear-gradient(135deg,#fff3 0 1.667cqw,#bfd5c024 1.667cqw 3.333cqw);background-size:3.333cqw 3.333cqw,3.333cqw 3.333cqw,6.667cqw 6.667cqw;grid-area:1/1/6;grid-template-rows:15cqw auto 1.667cqw auto;grid-template-columns:1fr;align-content:center;justify-items:center;padding:2.5cqw}.gba-party-grid>button.active{background-color:#d9e4cf;background-image:linear-gradient(90deg,#3e715b1f .208cqw,#0000 .208cqw),linear-gradient(#3e715b1f .208cqw,#0000 .208cqw),repeating-linear-gradient(135deg,#ffffff40 0 .833cqw,#bad3bc38 .833cqw 1.667cqw);border-color:#f4ce55;box-shadow:inset 0 0 0 .208cqw #fff3a9,inset 0 -.833cqw #3653481a,0 0 0 .208cqw #345b4c59}:is(.gba-party-grid>button:not(:disabled):hover,.gba-party-grid>button:not(:disabled):focus-visible){filter:brightness(1.025);border-color:#f4ce55;outline:0}.gba-party-grid>button.fainted{filter:grayscale();opacity:.55}.gba-party-grid>button:disabled{cursor:default}.gba-party-grid .pokemon-icon{grid-area:1/1/3;width:5cqw;height:5cqw}.gba-party-grid>button:first-child .pokemon-icon{grid-area:1/1;width:15cqw;height:15cqw}.gba-party-grid>button>span{grid-area:1/2/3;min-width:0}.gba-party-grid>button>span strong{text-overflow:ellipsis;white-space:nowrap;font-size:2.5cqw;display:block;overflow:hidden}.gba-party-grid>button>span small{margin-top:.417cqw;font-size:2.083cqw;display:block}.gba-party-grid>button>i{background:#303a31;border-radius:1cqw;grid-area:1/3;align-self:end;width:11.667cqw;height:1.25cqw;display:block;overflow:hidden}.gba-party-grid>button>i b{background:#55c96a;height:100%;display:block}.gba-party-grid>button>em{text-align:right;grid-area:2/3;align-self:start;font-size:2.083cqw;font-style:normal;line-height:1}.gba-party-grid>button:first-child>span{grid-area:2/1}.gba-party-grid>button:first-child>span strong{font-size:3.333cqw}.gba-party-grid>button:first-child>span small{font-size:2.5cqw}.gba-party-grid>button:first-child>i{grid-area:3/1;align-self:center;width:28.333cqw}.gba-party-grid>button:first-child>em{grid-area:4/1;align-self:center;font-size:2.5cqw}.battle-active-meta{justify-content:space-between;gap:12px;margin-top:7px;display:flex}.battle-active-meta span{color:#89919c;font-family:var(--font-geist-mono), monospace;max-width:48%;font-size:7px}.battle-fighter{align-items:center;gap:18px;display:flex}.battle-fighter.opponent{text-align:right;justify-content:flex-end}.battle-fighter-copy{width:min(100%,260px);min-width:0}.battle-fighter-copy>span{color:#9a76d2;font-family:var(--font-geist-mono), monospace;letter-spacing:.1em;text-transform:uppercase;font-size:8px;display:block}.battle-fighter-copy strong{overflow-wrap:anywhere;margin-top:6px;font-size:15px;display:block}.battle-fighter-copy small{color:#8b9098;font-family:var(--font-geist-mono), monospace;margin-top:5px;font-size:8px;display:block}.battle-traits{flex-wrap:wrap;align-items:center;gap:6px;margin-top:7px;display:flex}.battle-fighter.opponent .battle-traits{justify-content:flex-end}.battle-traits span,.battle-traits b{color:#b8bec7;font-family:var(--font-geist-mono), monospace;letter-spacing:.04em;text-transform:uppercase;border:1px solid #444b56;padding:4px 6px;font-size:7px;font-weight:700}.battle-traits b{color:#f0c65e;border-color:#d9aa3b}.battle-fighter-copy .battle-loadout{color:#a890ca;line-height:1.4}.battle-hp{background:#252a31;width:100%;height:8px;margin-top:12px;overflow:hidden}.battle-hp i{background:#71da8b;height:100%;transition:width .35s;display:block}.battle-divider{color:#676e79;font-family:var(--font-geist-mono), monospace;align-items:center;font-size:14px;font-weight:900;display:flex}.battle-arena .pokemon-icon-complete{width:96px;height:96px}.battle-command-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:16px;display:grid}.battle-move{color:var(--ink);cursor:pointer;text-align:left;background:#101216;border:1px solid #404650;gap:5px;min-height:78px;padding:12px 14px;display:grid}.battle-move:hover:not(:disabled){border-color:#ae78ff;transform:translateY(-1px)}.battle-move:disabled{cursor:not-allowed;filter:grayscale(.65);opacity:.5}.battle-move strong{font-size:13px}.battle-move span{color:#c6a3ff;font-family:var(--font-geist-mono), monospace;text-transform:uppercase;font-size:8px}.battle-move small{color:#888e97;font-size:8px}.battle-log{background:#0d0f13;border-left:2px solid #ae78ff;max-height:154px;margin-top:16px;padding:10px 14px;overflow-y:auto}.battle-log p{color:#aeb2b9;margin:3px 0;font-size:10px;line-height:1.55}.battle-log p>span{color:#c6a3ff;font-family:var(--font-geist-mono), monospace;margin-right:7px;font-size:8px}.battle-forfeit{margin:16px 0 0 auto;display:block}.battle-result-mark{color:#0d0715;background:#ae78ff}.battle-result-stats{flex-wrap:wrap;justify-content:center;gap:8px;margin-top:22px;display:flex}.battle-result-stats span{color:#aeb2b9;font-family:var(--font-geist-mono), monospace;text-transform:uppercase;border:1px solid #3d424b;padding:8px 10px;font-size:8px}.battle-field-state{flex-wrap:wrap;justify-content:center;gap:8px;margin:-4px 0 14px;display:flex}.battle-field-state span{color:#c6a3ff;font-family:var(--font-geist-mono), monospace;text-transform:uppercase;background:#ae78ff14;border:1px solid #624e83;padding:6px 9px;font-size:8px}.battle-team-board{grid-template-columns:1fr 1fr;gap:12px;margin:14px 0;display:grid}.battle-team-board>section{background:#0d0f13;border:1px solid #30353e;min-width:0;padding:10px}.battle-team-board>section>small{color:#7f848c;font-family:var(--font-geist-mono), monospace;letter-spacing:.08em;margin-bottom:8px;font-size:7px;display:block}.battle-team-strip{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;display:grid}.battle-team-member{color:#aeb2b9;background:#11141a;border:1px solid #353b45;place-items:center;gap:3px;min-width:0;padding:6px 4px;display:grid}button.battle-team-member{cursor:pointer}button.battle-team-member:hover:not(:disabled){border-color:#ae78ff}.battle-team-member.active{border-color:#ae78ff;box-shadow:inset 0 -2px #ae78ff}.battle-team-member.fainted{filter:grayscale();opacity:.38}.battle-team-member:disabled{cursor:default}.battle-team-member .pokemon-icon{width:32px;height:32px}.battle-team-member>span{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:7px;overflow:hidden}.battle-team-member>i{background:#252a31;width:90%;height:3px;display:block;overflow:hidden}.battle-team-member>i>b{background:#71da8b;height:100%;display:block}.battle-move[class*=type-]{border-left-width:5px}.battle-move.type-fire{border-left-color:#ef6a4c}.battle-move.type-water{border-left-color:#4f8fe9}.battle-move.type-grass{border-left-color:#63bd58}.battle-move.type-electric{border-left-color:#efca45}.battle-move.type-psychic{border-left-color:#e46b9a}.battle-move.type-ice{border-left-color:#70d1d3}.battle-move.type-fighting{border-left-color:#bd5046}.battle-move.type-poison{border-left-color:#a45ab2}.battle-move.type-ground{border-left-color:#d4ad5e}.battle-move.type-flying{border-left-color:#8fa5dc}.battle-move.type-bug{border-left-color:#9eb43a}.battle-move.type-rock{border-left-color:#b49d56}.battle-move.type-ghost{border-left-color:#7367a5}.battle-move.type-dragon{border-left-color:#6c57ca}.battle-move.type-dark{border-left-color:#655852}.battle-move.type-steel{border-left-color:#9aa5b1}.battle-move.type-fairy{border-left-color:#df8db5}.battle-move.type-normal{border-left-color:#9b9b8c}.gba-move-panel .battle-move[class*=type-]{border-left:0}.battle-transcript{margin-top:13px}.battle-transcript summary{color:#8f96a0;cursor:pointer;font-family:var(--font-geist-mono), monospace;text-align:center;font-size:8px}.battle-transcript .battle-log{margin-top:9px}@keyframes gba-attack-own{0%,15%,to{transform:translate(0)}16%,34%{transform:translate(-.42cqw,.42cqw)}35%,58%{transform:translate(.84cqw,-.42cqw)}59%,78%{transform:translate(.42cqw)}}@keyframes gba-attack-opponent{0%,15%,to{transform:translate(0)}16%,34%{transform:translate(.42cqw,-.42cqw)}35%,58%{transform:translate(-.84cqw,.42cqw)}59%,78%{transform:translate(-.42cqw)}}@keyframes gba-hit{0%,18%,38%,58%,to{filter:none;opacity:1;transform:translate(0)}19%,37%{filter:brightness(2.7)contrast(1.3);opacity:.15;transform:translate(-.42cqw)}39%,57%{filter:brightness(2.7)contrast(1.3);opacity:.35;transform:translate(.42cqw)}}@keyframes gba-enter{0%{filter:brightness(4);opacity:0;transform:scale(.08)}70%{filter:brightness(1.8);opacity:1;transform:scale(1.08)}to{filter:none;opacity:1;transform:scale(1)}}@keyframes gba-faint{0%,18%{filter:none;opacity:1;transform:translateY(0)}35%{filter:brightness(2.5);transform:translateY(1.2cqw)}to{filter:brightness(2.5);opacity:0;transform:translateY(22cqw)}}@keyframes gba-mon-materialize{0%{filter:brightness(4);opacity:0;transform:scale(.2)}50%{filter:brightness(2);opacity:.7;transform:scale(.72)}to{filter:none;opacity:1;transform:scale(1)}}@keyframes gba-arena-arrive{0%{filter:brightness(.2)}to{filter:none}}@keyframes gba-battle-curtain{0%{opacity:1;transform:scale(1.4)}75%{opacity:1;transform:scale(.08)}to{opacity:0;visibility:hidden;transform:scale(0)}}@keyframes gba-healthbox-opponent{0%{transform:translate(-58cqw)}to{transform:translate(0)}}@keyframes gba-healthbox-own{0%{transform:translate(58cqw)}to{transform:translate(0)}}@keyframes gba-ball-release{0%{opacity:1;background-position-y:0;transform:translateY(-5cqw)rotate(-120deg)}45%{background-position-y:-6.667cqw;transform:translateY(0)rotate(0)}75%{filter:brightness(3);opacity:1;background-position-y:-13.333cqw}to{filter:brightness(4);opacity:0;background-position-y:-13.333cqw;transform:scale(1.8)}}@keyframes gba-screen-hit{0%,to{transform:translate(0)}33%{transform:translate(-.42cqw)}66%{transform:translate(.42cqw)}}@keyframes rom-effect-sheet{0%{background-position:0 0}to{background-position:0 100%}}@keyframes rom-effect-pop{0%{opacity:0;transform:scale(.35)}20%,72%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.8)}}@keyframes rom-effect-impact{0%{opacity:0;transform:scale(.35)}45%{opacity:1;transform:scale(1.15)}to{opacity:0;transform:scale(.7)}}@keyframes rom-weather-rain{0%{transform:translate(4cqw,-4cqw)}to{transform:translate(-16cqw,58cqw)}}@keyframes rom-weather-hail{0%{opacity:0;transform:translateY(-4cqw)}12%{opacity:1}82%{opacity:1;transform:translate(-9cqw,57cqw)}to{opacity:0;transform:translate(-8cqw,53cqw)}}@keyframes rom-weather-sand{0%{opacity:0;transform:translate(-18cqw,8cqw)}18%,78%{opacity:1}to{opacity:0;transform:translate(24cqw,47cqw)}}@keyframes rom-weather-sun{0%,to{opacity:.35;transform:scale(.75)}50%{opacity:.9;transform:scale(1)}}@keyframes battle-critical{50%{filter:brightness(1.7)}}@keyframes rr-rom-lunge-own{0%,to{transform:translate(0)}55%{transform:translate(20cqw,-8cqw)}}@keyframes rr-rom-lunge-opponent{0%,to{transform:translate(0)}55%{transform:translate(-20cqw,8cqw)}}@keyframes rr-rom-dip{0%,to{transform:translateY(0)scaleY(1)}45%{transform:translateY(3cqw)scaleY(.84)}}@keyframes rr-rom-slide-own{0%{transform:translate(0)}to{transform:translate(20cqw,-8cqw)}}@keyframes rr-rom-slide-opponent{0%{transform:translate(0)}to{transform:translate(-20cqw,8cqw)}}@keyframes rr-rom-slide-back-own{0%{transform:translate(20cqw,-8cqw)}to{transform:translate(0)}}@keyframes rr-rom-slide-back-opponent{0%{transform:translate(-20cqw,8cqw)}to{transform:translate(0)}}@keyframes rr-rom-shake{0%,to{translate:0}25%{translate:-1.25cqw}75%{translate:1.25cqw}}@keyframes rr-rom-screen-shake{0%,to{transform:translate(0)}25%{transform:translate(-.8cqw)}75%{transform:translate(.8cqw)}}@keyframes rr-rom-flash{0%,to{opacity:0}40%{opacity:.62}}@keyframes rr-rom-background-in{0%{opacity:0}to{opacity:1}}@keyframes rr-rom-background-scroll{0%{background-position:0 0}to{background-position:-6.667cqw 3.333cqw}}.result-log{text-align:left;width:100%;max-width:650px;margin-bottom:24px}.server-status.offline .status-light,.server-status.error .status-light{background:var(--red);box-shadow:0 0 12px #ef4d4db3}@media (min-width:601px){.battle-modal:has(.battle-active-view){overflow-y:hidden}}@media (max-width:900px){.setup-layout{grid-template-columns:1fr}.game-layout{grid-template-columns:1fr;height:auto}.emulator-panel{min-height:62vh}.side-panel{grid-template-rows:auto minmax(420px,60vh)}.roster-panel{max-height:none}}.weekly-pool-note{color:#aeb7c3;border-left:3px solid #f8c64d;margin:12px 0 18px;padding:10px 14px}.tournament-menu-item .tournament-icon{color:#f8c64d;font-size:24px}.tournament-modal{max-width:1320px}.tournament-heading{grid-template-columns:1fr auto auto}.tournament-prize{border:1px solid #343b45;flex-direction:column;align-items:flex-start;gap:6px;padding:12px 18px;display:flex}.tournament-prize small,.tournament-summary small{color:#8993a0;font-family:var(--font-mono), monospace;letter-spacing:.14em;font-size:10px}.tournament-prize strong{align-items:center;gap:8px;display:flex}.tournament-summary{border-top:1px solid #343b45;border-bottom:1px solid #343b45;grid-template-columns:repeat(3,1fr);margin:22px 0;display:grid}.tournament-summary span{flex-direction:column;align-items:center;gap:6px;padding:16px;display:flex}.tournament-summary span+span{border-left:1px solid #343b45}.tournament-summary strong{color:#f8c64d;font-size:24px}.tournament-roster{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.tournament-roster article{background:#0b0f14;border:1px solid #303742;grid-template-columns:48px 1fr auto;align-items:center;gap:12px;min-height:76px;padding:10px 14px;display:grid}.tournament-roster article.eligible{border-left:3px solid #55db91}.tournament-roster article.pending{opacity:.7}.tournament-roster article span:not(.tournament-avatar){flex-direction:column;gap:4px;display:flex}.tournament-roster article small{color:#8e99a7}.tournament-roster article em{color:#f8c64d;font-family:var(--font-mono), monospace;font-size:10px;font-style:normal}.tournament-avatar{image-rendering:pixelated;background-position:0 0;background-repeat:no-repeat;justify-self:center}.tournament-start{grid-column:1/-1;justify-content:center;margin-top:14px}.tournament-roster>p{color:#8e99a7;text-align:center;grid-column:1/-1}.tournament-bracket{gap:18px;padding:4px 2px 18px;display:flex;overflow-x:auto}.tournament-bracket>section{flex-direction:column;flex:1 0 260px;justify-content:space-around;gap:12px;display:flex}.tournament-bracket h3{color:#f8c64d;font-family:var(--font-mono), monospace;letter-spacing:.14em;text-align:center;font-size:12px}.tournament-match{background:linear-gradient(135deg,#0b0f14,#151b24);border:1px solid #343b45;grid-template-columns:1fr auto 1fr;gap:5px;min-height:112px;padding:14px;display:grid}.tournament-match span{text-align:center;justify-content:center;align-items:center;font-weight:700;display:flex}.tournament-match span.winner{color:#55db91}.tournament-match b{color:#f8c64d;align-self:center}.tournament-match small,.tournament-match button{text-align:center;grid-column:1/-1}.tournament-match small{color:#8e99a7}.tournament-match button{color:#fff;font-family:var(--font-mono), monospace;background:#a13f42;border:0;padding:10px;font-weight:700}.tournament-claim{border-top:1px solid #343b45;margin-top:20px;padding-top:20px}.tournament-claim>p:not(.card-kicker){color:#9ba6b4}.tournament-claim .trade-pokemon-grid button{color:#f5f1e8;background:#0b0f14;border:1px solid #343b45}.tournament-champion{background:#15120a;border:1px solid #f8c64d;justify-content:center;align-items:center;gap:18px;margin-top:20px;padding:22px;display:flex}.tournament-champion>span{color:#f8c64d;font-size:42px}.tournament-champion p{flex-direction:column;margin:0;display:flex}.tournament-champion strong{font-size:28px}.battle-wager-strip.official{border-color:#f8c64d}@media (max-width:600px){.game-topbar{grid-template-columns:1fr auto auto;gap:5px;padding:0 10px}.game-topbar .brand{font-size:11px}.world-badge{display:none}.presence-summary{padding:0 5px}.presence-summary>span:not(.player-dot){display:none}.presence-dropdown{left:auto;right:0;transform:translateY(-5px)}.presence-summary:hover .presence-dropdown,.presence-summary:focus-within .presence-dropdown{transform:translate(0)}.game-topbar .room-code-button{grid-area:2/1/auto/-1;margin-bottom:12px}.game-topbar .ghost-button{grid-area:1/3}.game-layout{padding:10px}.emulator-panel{min-height:70vh}.trade-backdrop{padding:10px}.trade-modal{max-height:calc(100vh - 20px);padding:20px 15px;box-shadow:8px 8px #050607}.trade-modal-heading{flex-direction:column;align-items:flex-start}.rom-trade-resource-bar{gap:8px;min-height:38px}.rom-trade-resource-bar>span:last-child{display:none}.rom-trade-control-strip{background-size:156px 36px;flex-basis:156px;width:156px;height:36px}.rom-trade-icon-strip{margin-left:auto}.trade-offer-board{grid-template-columns:1fr}.trade-arrows{justify-content:center;transform:rotate(90deg)}.trade-picker-heading{flex-wrap:wrap;align-items:center}.rom-storage-reference{width:100%;margin-left:0}.trade-pokemon-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.trade-confirm-row{grid-template-columns:1fr}.trade-confirm-row .ghost-button,.trade-confirm-row .primary-button{width:100%}.trade-actions{flex-direction:column;align-items:stretch;width:100%}.battle-rom-toolbar{grid-template-columns:auto 1fr auto}.battle-turn-tools{align-items:center}.battle-arena{min-height:0}.battle-modal:has(.battle-active-view){padding:12px 10px}.battle-active-meta{flex-direction:column}.battle-active-meta span{max-width:100%}.battle-fighter,.battle-fighter.opponent{text-align:left;justify-content:center}.battle-divider{justify-content:center}.battle-command-grid,.battle-team-board{grid-template-columns:1fr}.tournament-heading{grid-template-columns:1fr auto}.tournament-prize{grid-column:1/-1;padding:10px 12px}.tournament-prize strong{font-size:14px}.tournament-summary span{padding:12px 6px}.tournament-summary strong{font-size:20px}.tournament-summary small{text-align:center;font-size:7px}.tournament-roster{grid-template-columns:1fr}.tournament-roster article{grid-template-columns:40px minmax(0,1fr) auto;gap:9px;min-height:68px;padding:9px 10px}}.admin-shell,.admin-login-shell{min-height:100vh}.admin-login-shell{place-items:center;padding:24px;display:grid}.admin-login-card{background:#15191f;border:1px solid #39414c;flex-direction:column;gap:17px;width:100%;max-width:500px;padding:clamp(28px,6vw,58px);display:flex;box-shadow:16px 16px #00000059}.admin-login-card h1{letter-spacing:-.055em;margin:6px 0 -8px;font-size:clamp(38px,7vw,68px);font-weight:400}.admin-login-card p{color:#9aa5b4;margin:0;line-height:1.55}.admin-login-card label,.admin-modal label,.admin-toolbox label{color:#8e99a7;font-family:var(--font-geist-mono), monospace;letter-spacing:.14em;flex-direction:column;gap:8px;font-size:10px;display:flex}.admin-login-card input,.admin-modal input,.admin-modal select,.admin-toolbox input,.admin-toolbox select,.admin-action-card input,.admin-security input{color:#f5f1e8;background:#090d12;border:1px solid #343c48;outline:0;width:100%;min-height:46px;padding:0 14px}.admin-login-card input:focus,.admin-modal input:focus,.admin-modal select:focus,.admin-toolbox input:focus,.admin-toolbox select:focus,.admin-action-card input:focus,.admin-security input:focus{border-color:#f5c451}.admin-primary{color:#fff;font-family:var(--font-geist-mono), monospace;letter-spacing:.1em;background:#b64448;border:0;min-height:48px;padding:0 20px;font-size:11px;font-weight:900}.admin-primary:hover:not(:disabled){background:#cf4e52}.admin-primary:disabled,.admin-shell button:disabled{cursor:not-allowed;opacity:.45}.admin-login-card>a{color:#aeb8c6;text-align:center;font-size:13px}.admin-eyebrow{color:#f5c451;font-family:var(--font-geist-mono), monospace;letter-spacing:.18em;text-transform:uppercase;font-size:11px;font-weight:800}.admin-alert{border-left:3px solid;padding:12px 14px}.admin-alert.error,.admin-toast.error{color:#ffb7b7;background:#2b1418;border-color:#ef4d4d}.admin-topbar{z-index:20;background:#0b0e12eb;border-bottom:1px solid #303741;grid-template-columns:1fr auto auto;align-items:center;gap:20px;min-height:74px;padding:0 clamp(18px,3vw,44px);display:grid;position:sticky;top:0}.admin-topbar>span{color:#939eac;font-size:12px}.admin-topbar>button{color:#f5f1e8;background:0 0;border:1px solid #39414c;min-height:38px;padding:0 16px}.admin-workspace{grid-template-columns:300px minmax(0,1fr);min-height:calc(100vh - 74px);display:grid}.admin-sidebar{background:#101318;border-right:1px solid #303741;padding:24px 16px}.admin-sidebar-heading{justify-content:space-between;align-items:center;padding:0 8px 18px;display:flex}.admin-sidebar-heading div{flex-direction:column;gap:5px;display:flex}.admin-sidebar-heading small{color:#f5c451;font-family:var(--font-geist-mono), monospace;letter-spacing:.16em;font-size:9px}.admin-sidebar-heading strong{font-size:20px}.admin-sidebar-heading button{color:#fff;background:#a83e43;border:0;width:42px;height:42px;font-size:24px}.admin-search{color:#fff;background:#090c10;border:1px solid #303741;width:100%;min-height:42px;margin-bottom:14px;padding:0 13px}.admin-account-list{flex-direction:column;gap:5px;max-height:calc(100vh - 210px);display:flex;overflow-y:auto}.admin-account-list>button{color:#dfe3e9;text-align:left;background:0 0;border:1px solid #0000;grid-template-columns:9px 1fr auto;align-items:center;gap:10px;width:100%;min-height:64px;padding:9px 11px;display:grid}.admin-account-list>button:hover,.admin-account-list>button.selected{background:#191e25;border-color:#353e49}.admin-account-list>button.selected{border-left:3px solid #f5c451}.admin-account-list>button span:nth-child(2){flex-direction:column;gap:4px;min-width:0;display:flex}.admin-account-list strong{text-overflow:ellipsis;overflow:hidden}.admin-account-list small{color:#808b99;font-size:10px}.admin-account-list b{color:#f5c451;font-size:11px}.admin-online{background:#555e6a;border-radius:50%;width:7px;height:7px}.admin-online.online{background:#5ee394;box-shadow:0 0 10px #5ee394}.admin-content{min-width:0;padding:clamp(26px,4vw,58px);position:relative}.admin-profile-heading{justify-content:space-between;align-items:flex-start;display:flex}.admin-profile-heading h1{letter-spacing:-.06em;margin:10px 0 12px;font-size:clamp(42px,6vw,74px);font-weight:400;line-height:1}.admin-profile-heading p{color:#8995a3;margin:0}.admin-profile-status{color:#8c96a3;font-family:var(--font-geist-mono), monospace;letter-spacing:.12em;border:1px solid #3a424d;padding:12px 14px;font-size:10px}.admin-profile-status.online{color:#67e89d;border-color:#4aca80}.admin-tabs{border-bottom:1px solid #343b45;margin:36px 0 28px;display:flex;overflow-x:auto}.admin-tabs button{color:#8993a0;font-family:var(--font-geist-mono), monospace;letter-spacing:.1em;text-transform:uppercase;background:0 0;border:0;border-bottom:3px solid #0000;padding:14px 20px;font-size:11px;font-weight:800}.admin-tabs button.active{color:#f5f1e8;border-bottom-color:#f5c451}.admin-stat-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.admin-stat-grid article{background:linear-gradient(145deg,#181d24,#11151a);border:1px solid #343b45;flex-direction:column;min-height:148px;padding:21px;display:flex}.admin-stat-grid small{color:#85909e;font-family:var(--font-geist-mono), monospace;letter-spacing:.14em;font-size:9px}.admin-stat-grid strong{color:#f5c451;margin:auto 0 5px;font-size:clamp(28px,3vw,42px);font-weight:500}.admin-stat-grid span{color:#8f9aa7;font-size:12px}.admin-section{margin-top:38px}.admin-section>div:first-child>h2,.admin-section>h2,.admin-toolbox h2{margin:8px 0;font-size:30px;font-weight:500}.admin-section>div:first-child>p,.admin-section>p,.admin-toolbox>p{color:#8f9aa8;line-height:1.5}.admin-action-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:20px;display:grid}.admin-action-card{background:#101419;border:1px solid #343b45;flex-direction:column;min-height:210px;padding:19px;display:flex}.admin-action-card>small{color:#f5c451;font-family:var(--font-geist-mono), monospace;letter-spacing:.15em;font-size:9px}.admin-action-card h3{margin:12px 0 5px;font-size:20px}.admin-action-card p{color:#8893a0;font-size:13px;line-height:1.5}.admin-action-card>div{grid-template-columns:1fr auto;gap:8px;margin-top:auto;display:grid}.admin-action-card button,.admin-security button,.admin-pokemon-card button,.admin-item-list button{color:#fff;font-family:var(--font-geist-mono), monospace;background:#272e38;border:1px solid #3d4653;padding:0 12px;font-size:9px;font-weight:800}.admin-two-column{grid-template-columns:minmax(0,1fr) 300px;gap:28px;display:grid}.admin-two-column>.admin-section{margin-top:0}.admin-toolbox{background:#13181e;border:1px solid #343b45;flex-direction:column;align-self:start;gap:16px;padding:24px;display:flex;position:sticky;top:100px}.admin-check{align-items:center;flex-direction:row!important}.admin-check input{width:auto;min-height:0}.admin-pokemon-list,.admin-item-list,.admin-audit-list{flex-direction:column;gap:8px;margin-top:22px;display:flex}.admin-pokemon-card{background:#101419;border:1px solid #343b45;grid-template-columns:58px 1fr auto;align-items:center;gap:14px;min-height:86px;padding:10px 14px;display:grid}.admin-pokemon-card>img{image-rendering:pixelated;width:54px}.admin-pokemon-card>div:nth-child(2){flex-direction:column;gap:4px;display:flex}.admin-pokemon-card span,.admin-pokemon-card small{color:#8f9aa8}.admin-pokemon-card span{font-size:12px}.admin-pokemon-card small{font-family:var(--font-geist-mono), monospace;font-size:9px}.admin-pokemon-card>div:last-child{gap:7px;display:flex}.admin-pokemon-card button{min-height:34px}.admin-pokemon-card button.danger,.admin-item-list button.danger{color:#ff9b9b;border-color:#75373a}.admin-inventory-search{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;margin-top:22px;display:grid}.admin-inventory-search input,.admin-item-remove input{color:#f5f1e8;background:#090d12;border:1px solid #343c48;outline:0;width:100%;min-height:40px;padding:0 12px}.admin-inventory-search input:focus,.admin-item-remove input:focus{border-color:#f5c451}.admin-inventory-search small{color:#818c9a;font-family:var(--font-geist-mono), monospace;white-space:nowrap;font-size:9px}.admin-item-list{margin-top:12px}.admin-item-list article{background:#101419;border:1px solid #343b45;grid-template-columns:44px minmax(0,1fr) auto minmax(138px,auto);align-items:center;gap:12px;min-height:68px;padding:8px 12px;display:grid}.admin-item-list img{image-rendering:pixelated;max-width:38px;max-height:38px}.admin-item-list article>span{flex-direction:column;gap:4px;display:flex}.admin-item-list small{color:#818c9a;font-size:10px}.admin-item-list b{color:#f5c451}.admin-item-list button{min-height:34px}.admin-item-remove{grid-template-columns:58px auto;gap:7px;display:grid}.admin-item-remove input{min-height:34px;padding:0 7px}.admin-security article{background:#11151a;border:1px solid #343b45;grid-template-columns:1fr minmax(300px,.6fr);align-items:center;gap:28px;margin-top:14px;padding:24px;display:grid}.admin-security article h3{margin:0 0 6px}.admin-security article p{color:#8994a2;margin:0;font-size:13px;line-height:1.5}.admin-security form{grid-template-columns:1fr auto;gap:8px;display:grid}.admin-security button{min-height:44px}.admin-security .danger-zone{border-color:#663033}.admin-security .danger-zone>button{background:#792f33;border-color:#a54247}.admin-security .admin-tournament-control{border-color:#5e522f}.admin-security .admin-tournament-control>button.enable{color:#8df0ba;background:#173c2a;border-color:#32895c}.admin-security .admin-tournament-control>button.danger{color:#ffd36b;border-color:#755a29}.admin-security .admin-delete-modal{grid-template-columns:none;display:flex}.admin-security .admin-delete-modal>button.admin-primary.danger{color:#fff;background:#792f33;border-color:#a54247}.admin-audit-list article{background:#101419;border:1px solid #343b45;grid-template-columns:54px minmax(180px,.4fr) 1fr;align-items:center;gap:14px;padding:13px;display:grid}.admin-audit-list article>span{color:#f5c451;font-family:var(--font-geist-mono), monospace;font-size:11px}.admin-audit-list article>div{flex-direction:column;gap:4px;display:flex}.admin-audit-list strong{text-transform:capitalize}.admin-audit-list small{color:#85909d;font-size:10px}.admin-audit-list code{color:#7f8995;text-overflow:ellipsis;white-space:nowrap;font-size:9px;overflow:hidden}.admin-empty{color:#8d98a6;text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:70vh;display:flex}.admin-empty>span{color:#f5c451;font-size:48px}.admin-empty h2{color:#f5f1e8}.admin-toast{border-left:3px solid;justify-content:space-between;align-items:center;margin-bottom:18px;padding:13px 16px;display:flex}.admin-toast.success{color:#a9f3c8;background:#11251c;border-color:#57df91}.admin-toast button{color:currentColor;background:0 0;border:0;font-size:22px}.admin-modal-backdrop{z-index:100;background:#030508d1;justify-content:center;align-items:center;padding:22px;display:flex;position:fixed;inset:0}.admin-modal{background:#171b21;border:1px solid #404957;flex-direction:column;gap:16px;width:100%;max-width:560px;max-height:calc(100vh - 44px);padding:32px;display:flex;position:relative;overflow-y:auto;box-shadow:14px 14px #050608}.admin-modal h2{margin:0;font-size:34px}.admin-modal p{color:#8e99a6;font-size:13px;line-height:1.5}.admin-close{color:#fff;background:0 0;border:1px solid #414a56;width:42px;height:42px;font-size:24px;position:absolute;top:20px;right:20px}.admin-muted{color:#87929f}@media (max-width:1100px){.admin-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-action-grid,.admin-two-column{grid-template-columns:1fr}.admin-toolbox{position:static}}@media (max-width:720px){.admin-topbar{grid-template-columns:1fr auto}.admin-topbar>span{display:none}.admin-workspace{grid-template-columns:1fr}.admin-sidebar{border-bottom:1px solid #303741;border-right:0}.admin-account-list{max-height:250px}.admin-content{padding:24px 16px}.admin-profile-heading{gap:16px}.admin-profile-heading h1{font-size:44px}.admin-stat-grid{grid-template-columns:1fr 1fr}.admin-pokemon-card{grid-template-columns:48px 1fr}.admin-pokemon-card>div:last-child{grid-column:1/-1}.admin-inventory-search{grid-template-columns:1fr}.admin-item-list article{grid-template-columns:40px 1fr auto}.admin-item-remove{grid-column:1/-1}.admin-security article{grid-template-columns:1fr}.admin-audit-list article{grid-template-columns:42px 1fr}.admin-audit-list code{grid-column:1/-1}}.battle-preview-page{color:#eef2f8;background:radial-gradient(circle at 15% 5%,#4474b42e,#0000 32rem),#101318;min-height:100vh;padding:28px}.battle-preview-header{justify-content:space-between;align-items:flex-end;gap:24px;width:min(1180px,100%);margin:0 auto 18px;display:flex}.battle-preview-header span,.battle-preview-note{color:#9ca9b8;font:700 11px/1.4 var(--font-mono,monospace);letter-spacing:.14em}.battle-preview-header h1{letter-spacing:-.04em;margin:5px 0 0;font-size:clamp(28px,4vw,50px)}.battle-preview-header nav{gap:8px;display:flex}.battle-preview-header a{color:#eef2f8;font:800 11px/1 var(--font-mono,monospace);border:1px solid #52606f;padding:9px 13px;text-decoration:none}.battle-preview-note{letter-spacing:.02em;width:min(1180px,100%);margin:16px auto 0}@media (max-width:720px){.battle-preview-page{padding:12px}.battle-preview-header{flex-direction:column;align-items:flex-start}}.battle-modal-active:has(.ps-battle-client){background:#17191c;max-width:1180px;padding:20px;overflow-y:auto}.ps-battle-client{color:#222;width:100%;max-width:1040px;margin:0 auto;font:14px Verdana,Arial,sans-serif}.ps-battle-frame{background:#d9dde1;border:1px solid #7c8389;overflow:hidden;box-shadow:0 2px 12px #00000073}.ps-battle-stage.gba-battle-scene{aspect-ratio:16/9;isolation:isolate;background:#cfd5da;width:100%;height:auto;position:relative;overflow:hidden;container-type:inline-size}.ps-battle-backdrop{filter:saturate(.86)brightness(1.06);opacity:.92;background:#aebdc3 url(/showdown/bg-gen4.png) 50%/cover no-repeat;position:absolute;inset:0}.ps-field-overlay{opacity:.2;pointer-events:none;z-index:1;position:absolute;inset:0}.ps-field-overlay.weather-raindance,.ps-field-overlay.weather-primordialsea{background:linear-gradient(115deg,#2867d266,#d2ebff1a)}.ps-field-overlay.weather-sandstorm{background:#b99d556b}.ps-field-overlay.weather-sunnyday,.ps-field-overlay.weather-desolateland{background:#ffd54852}.ps-field-overlay.weather-hail,.ps-field-overlay.weather-snow{background:#d2f5ff52}.ps-trainer-bar{color:#555;z-index:6;flex-direction:column;justify-content:flex-end;align-items:center;gap:.6cqw;width:11.8cqw;padding-bottom:1.4cqw;font-size:clamp(8px,1.4cqw,13px);display:flex;position:absolute;top:0;bottom:0}.ps-trainer-bar.far{background:#ffffff6b;border-left:1px solid #ffffff80;right:0}.ps-trainer-bar.near{background:#ffffff6b;border-right:1px solid #ffffff80;left:0}.ps-trainer-bar>strong{text-overflow:ellipsis;white-space:nowrap;max-width:90%;overflow:hidden}.ps-trainer-bar>div{grid-template-columns:repeat(2,1fr);width:86%;display:grid}.ps-team-icon{justify-content:center;align-items:center;width:3.2cqw;min-width:18px;height:3.2cqw;min-height:18px;display:flex}.ps-team-icon img{height:100%;image-rendering:pixelated;object-fit:contain;width:100%}.ps-team-icon.fainted{filter:grayscale();opacity:.35}.ps-statbar{color:#222;z-index:9;width:28cqw;min-height:5.6cqw;position:absolute}.ps-statbar.far{top:5.5cqw;left:14.4cqw}.ps-statbar.near{bottom:7.2cqw;right:14.4cqw}.ps-statbar>strong{text-align:center;text-overflow:ellipsis;text-shadow:-1px -1px #fff,1px -1px #fff,-1px 1px #fff,1px 1px #fff;white-space:nowrap;padding:0 1.4cqw .45cqw;font-size:clamp(11px,1.8cqw,18px);display:block;overflow:hidden}.ps-statbar>strong small{font-size:.76em;font-weight:400}.ps-hpbar{background:#fcfeff;border:1px solid #777;border-radius:6px;height:1.6cqw;min-height:9px;padding:.2cqw;position:relative;overflow:visible;box-shadow:0 1px 2px #00000040}.ps-hpbar>i{border-radius:4px;height:100%;transition:width .35s;display:block}.ps-hpbar>i.hp-green,.ps-switch-grid i b.hp-green{background:linear-gradient(#00dd60 0 25%,#00bb51 25% 75%,#007734 75%)}.ps-hpbar>i.hp-yellow,.ps-switch-grid i b.hp-yellow{background:linear-gradient(#f8e379 0 25%,#f5d538 25% 75%,#be9f0a 75%)}.ps-hpbar>i.hp-red,.ps-switch-grid i b.hp-red{background:linear-gradient(#f37f67 0 25%,#ee4928 25% 75%,#a3260d 75%)}.ps-hpbar>span{color:#fff;text-shadow:0 1px #000;white-space:nowrap;background:#686868;border-radius:0 5px 5px 0;height:calc(100% + 2px);min-height:11px;padding:0 .5cqw;font-size:clamp(7px,1cqw,10px);line-height:1.6cqw;position:absolute;top:-1px;left:100%}.ps-stat-meta{align-items:center;gap:.35cqw;margin-top:.55cqw;display:flex}.ps-statbar.near .ps-stat-meta{justify-content:flex-end}.ps-stat-meta b,.ps-stat-meta em,.type-chip{color:#fff;text-shadow:0 1px #00000080;border-radius:3px;padding:.38cqw .55cqw;font-size:clamp(7px,.85cqw,10px);font-style:normal;font-weight:700;line-height:1}.ps-stat-meta b.status-brn{background:#e53}.ps-stat-meta b.status-psn,.ps-stat-meta b.status-tox{background:#a4009a}.ps-stat-meta b.status-par{background:#9aa400}.ps-stat-meta b.status-slp{background:#a7a}.ps-stat-meta b.status-frz{background:#009aa4}.ps-battle-pokemon{transform-origin:50% 88%;z-index:5;justify-content:center;align-items:flex-end;display:flex;position:absolute}.ps-battle-pokemon img{height:100%;image-rendering:pixelated;object-fit:contain;width:100%}.ps-battle-pokemon.is-attacking.near{animation:.36s ease-in-out ps-lunge-near}.ps-battle-pokemon.is-attacking.far{animation:.36s ease-in-out ps-lunge-far}.ps-battle-pokemon.is-hit{animation:.42s steps(2,end) ps-hit}.ps-battle-pokemon.is-entering{animation:.45s ease-out ps-enter}.ps-battle-pokemon.is-fainting{animation:.72s ease-in both ps-faint}.ps-battle-sprite-fallback{font-size:8cqw}.ps-turn-badge{color:#432;z-index:10;background:#fcfaf2;border:2px solid #432;border-radius:7px;padding:.55cqw 1cqw;font-size:clamp(9px,1.4cqw,15px);font-weight:700;position:absolute;top:1.4cqw;left:14cqw}.ps-field-tags{z-index:10;flex-direction:column;align-items:flex-end;gap:.35cqw;display:flex;position:absolute;top:1.2cqw;right:12.8cqw}.ps-field-tags span{color:#fff;text-transform:capitalize;background:#222222c7;border-radius:3px;padding:.35cqw .6cqw;font-size:clamp(7px,.86cqw,10px)}.ps-battle-message{color:#fff;z-index:12;background:#141414d1;border-radius:6px;max-width:72cqw;padding:.8cqw 1.1cqw;position:absolute;bottom:1.2cqw;left:14cqw}.ps-battle-message strong{font-size:clamp(9px,1.2cqw,13px)}.ps-battle-controls{color:#333;background:#eef2f5;border-top:1px solid #9aa1a7;min-height:300px}.ps-battle-controls>header{background:linear-gradient(#f8f9fa,#dde2e6);border-bottom:1px solid #abb2b8;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;min-height:48px;padding:6px 12px;display:grid}.ps-battle-controls>header>div{gap:4px;display:flex}.ps-battle-controls>header button{color:#333;cursor:pointer;background:#e5e8eb;border:1px solid #a8afb5;border-radius:4px;min-height:32px;padding:0 14px;font:700 12px Verdana,Arial,sans-serif}.ps-battle-controls>header button.active{background:#fff;border-color:#777;box-shadow:inset 0 -3px #6a8fc6}.ps-battle-controls>header button:disabled{cursor:default;opacity:.4}.ps-battle-controls>header>span{color:#6b737a;text-align:center;font-size:11px}.ps-battle-controls>header .ps-sound-button{padding:0 10px;font-size:10px;font-weight:400}.ps-move-layout{grid-template-columns:minmax(0,1fr) 300px;min-height:188px;display:grid}.ps-move-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-content:center;gap:8px;padding:14px;display:grid}.ps-move-button{color:#fff;cursor:pointer;text-align:left;text-shadow:0 1px #00000073;border:1px solid #00000052;border-radius:5px;grid-template-columns:1fr auto;gap:2px;min-height:72px;padding:9px 12px;display:grid;position:relative;box-shadow:inset 0 1px #ffffff59,0 1px 2px #00000029}:is(.ps-move-button:hover:not(:disabled),.ps-move-button:focus-visible:not(:disabled)){filter:brightness(1.12);outline-offset:1px;outline:2px solid #4d79b7}.ps-move-button:disabled{cursor:default;filter:grayscale(.45);opacity:.5}.ps-move-button strong{text-overflow:ellipsis;white-space:nowrap;grid-column:1/-1;font-size:14px;overflow:hidden}.ps-move-button small{text-transform:uppercase;font-size:10px}.ps-move-button>span{justify-self:end;font-size:10px}.ps-move-button>i{text-transform:uppercase;background:#0000003d;border-radius:3px;padding:2px 5px;font-size:8px;font-style:normal;position:absolute;bottom:5px;right:7px}.ps-move-button>i.strong{color:#d8ffad}.ps-move-button>i.weak{color:#ffe2a1}.ps-move-button>i.immune{color:#ffc1c1}.ps-move-button.empty{color:#879098;text-shadow:none;background:#d8dde1;justify-content:center;align-items:center;display:flex}.ps-move-details{background:#f8f9fa;border-left:1px solid #b3bac0;padding:14px}.ps-move-details>div:first-child{justify-content:space-between;align-items:center;display:flex}.ps-move-details>div:first-child>strong{font-size:17px}.ps-move-details dl{gap:0;margin:12px 0;display:grid}.ps-move-details dl>div{border-bottom:1px solid #dde1e4;grid-template-columns:1fr auto;padding:6px 2px;display:grid}.ps-move-details dt{color:#717981;text-transform:uppercase;font-size:10px}.ps-move-details dd{margin:0;font-size:11px;font-weight:700}.ps-mechanics{flex-wrap:wrap;gap:5px;margin-top:10px;display:flex}.ps-mechanics button{color:#363b40;cursor:pointer;background:#e7e9ec;border:1px solid #a7adb3;border-radius:4px;flex:90px;min-height:30px;font-size:10px}.ps-mechanics button.active{color:#fff;background:#ce4a70;border-color:#9d2447;box-shadow:inset 0 0 0 1px #f78bac}.ps-switch-menu{min-height:188px;padding:12px 14px 14px}.ps-switch-heading{justify-content:space-between;align-items:baseline;margin-bottom:9px;display:flex}.ps-switch-heading strong{font-size:14px}.ps-switch-heading span{color:#747c84;font-size:10px}.ps-switch-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.ps-switch-grid>button{color:#333;cursor:pointer;text-align:left;background:linear-gradient(#fff,#e6eaed);border:1px solid #aab1b7;border-radius:5px;grid-template-rows:auto 7px;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:2px 8px;min-height:72px;padding:8px;display:grid}.ps-switch-grid>button:hover:not(:disabled){border-color:#587eae;box-shadow:0 0 0 2px #4e7eb833}.ps-switch-grid>button.active{background:#dce4ec;border-color:#7b8791}.ps-switch-grid>button.fainted{filter:grayscale();opacity:.48}.ps-switch-grid>button:disabled{cursor:default}.ps-switch-grid .ps-team-icon{grid-row:1/3;width:42px;height:42px}.ps-switch-grid>button>span{min-width:0}.ps-switch-grid>button>span strong,.ps-switch-grid>button>span small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.ps-switch-grid>button>span strong{font-size:12px}.ps-switch-grid>button>span small{color:#727981;margin-top:4px;font-size:9px}.ps-switch-grid>button>i{background:#c6cbd0;border:1px solid #777;border-radius:4px;grid-column:2;height:6px;display:block;overflow:hidden}.ps-switch-grid>button>i b{height:100%;display:block}.ps-switch-grid>button>em{grid-area:2/3;font-size:9px;font-style:normal}.ps-battle-controls>footer{background:#e0e5e8;border-top:1px solid #b4bbc1;grid-template-columns:1fr auto;align-items:center;gap:12px;min-height:55px;padding:8px 12px;display:grid}.ps-compact-log p{color:#525960;margin:0;font-size:10px;line-height:1.35}.ps-compact-log p+p{margin-top:3px}.ps-forfeit-button{color:#8d3030;cursor:pointer;background:#f2f3f4;border:1px solid #9da4aa;border-radius:4px;min-height:32px;padding:0 12px;font:700 10px Verdana,Arial,sans-serif}.ps-battle-error{margin:10px 0 0}.ps-battle-transcript{color:#c7ccd2;font-family:var(--font-geist-mono),monospace;margin-top:10px;font-size:10px}.ps-battle-transcript summary{cursor:pointer;text-align:center}.ps-battle-transcript>div{background:#0d1014;border:1px solid #343a42;max-height:150px;margin-top:8px;padding:10px 12px;overflow:auto}.ps-battle-transcript p{margin:3px 0}.ps-battle-transcript p span{color:#9eb8dd;margin-right:8px}.type-normal{background:#8a8a7b}.type-fire{background:#d64c32}.type-water{background:#397fca}.type-electric{background:#d6b42a}.type-grass{background:#4d9b45}.type-ice{background:#55afb3}.type-fighting{background:#a83c34}.type-poison{background:#91459d}.type-ground{background:#b48a3e}.type-flying{background:#7389bd}.type-psychic{background:#ce527c}.type-bug{background:#84992d}.type-rock{background:#94803e}.type-ghost{background:#5e5388}.type-dragon{background:#5742ae}.type-dark{background:#514844}.type-steel{background:#798895}.type-fairy{background:#c5749d}@keyframes ps-lunge-near{50%{transform:translate(16cqw,-5cqw)}}@keyframes ps-lunge-far{50%{transform:translate(-16cqw,5cqw)}}@keyframes ps-hit{0%,to{filter:none;opacity:1}25%,75%{filter:brightness(2);opacity:.25}}@keyframes ps-enter{0%{filter:brightness(3);opacity:0;transform:scale(.2)}to{filter:none;opacity:1;transform:scale(1)}}@keyframes ps-faint{to{filter:brightness(2);opacity:0;transform:translateY(18cqw)}}@media (max-width:780px){.battle-modal-active:has(.ps-battle-client){padding:8px}.ps-battle-controls>header{grid-template-columns:1fr auto}.ps-battle-controls>header>span{display:none}.ps-move-layout{grid-template-columns:1fr}.ps-move-details{border-top:1px solid #b3bac0;border-left:0}.ps-switch-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:480px){.ps-move-grid,.ps-switch-grid{grid-template-columns:1fr}.ps-switch-heading span{display:none}}.ps-trainer-bar,.ps-trainer-bar.far,.ps-trainer-bar.near{color:#fff;background:#1e262ed1;border:1px solid #ffffff73;border-radius:5px;flex-direction:row;justify-content:flex-start;align-items:center;gap:6px;width:auto;height:auto;padding:4px 7px;top:auto;bottom:auto}.ps-trainer-bar.far{top:2.2%;right:1.8%}.ps-trainer-bar.near{bottom:2.2%;left:1.8%}.ps-trainer-bar>div{width:auto;display:flex}.ps-trainer-bar .ps-team-icon{width:clamp(17px,2.6cqw,28px);height:clamp(17px,2.6cqw,28px)}.ps-statbar.far{width:31%;top:14%;left:19%}.ps-statbar.near{width:31%;bottom:12%;right:26%}.ps-battle-pokemon.far{width:25%;height:32%;top:14%;right:25%}.ps-battle-pokemon.near{width:28%;height:38%;bottom:16.5%;left:19%}.ps-turn-badge{top:2.2%;left:2%}.ps-field-tags{top:13%;right:2%}.ps-statbar{box-sizing:border-box;background:linear-gradient(#fffffffa,#e2e8edfa);border:2px solid #41484e;border-radius:8px;flex-direction:column;gap:clamp(3px,.45cqw,6px);min-height:0;padding:clamp(5px,.7cqw,9px);display:flex;box-shadow:0 3px #181f246b}.ps-statbar>header{grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:clamp(4px,.7cqw,9px);min-width:0;display:grid}.ps-statbar>header strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:clamp(10px,1.55cqw,17px);line-height:1.1;overflow:hidden}.ps-statbar>header small{color:#3e464d;white-space:nowrap;font-size:clamp(7px,.95cqw,11px)}.ps-hp-row{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:clamp(3px,.45cqw,6px);min-width:0;display:grid}.ps-hp-row>b{color:#5a5338;font-size:clamp(7px,.9cqw,10px)}.ps-statbar .ps-hpbar{box-sizing:border-box;width:100%;height:clamp(9px,1.25cqw,14px);min-height:0;padding:2px;overflow:hidden}.ps-hp-numbers{color:#222a30;text-align:right;white-space:nowrap;font-size:clamp(7px,.9cqw,10px);font-weight:700;line-height:1}.ps-statbar .ps-stat-meta{flex-wrap:wrap;min-height:0;margin-top:0}.ps-team-icon{flex:none;align-items:flex-start;overflow:hidden}.ps-team-icon img{object-fit:fill;object-position:top;width:100%;height:200%;max-height:none}.ps-battle-pokemon{z-index:4}.ps-battle-pokemon.far img,.ps-battle-pokemon.near img{transform-origin:50% 100%;transform:scale(1)}.ps-trainer-bar.near{z-index:10}.ps-statbar{z-index:8}.ps-turn-badge,.ps-field-tags{z-index:11}.ps-battle-stage .rom-bytecode-background-layer{z-index:2}.ps-battle-stage .rom-bytecode-layer{z-index:7}.ps-battle-stage .rom-bytecode-state-layer{z-index:9}.battle-preview-header button{color:#eef2f8;cursor:pointer;font:800 11px/1 var(--font-mono,monospace);background:0 0;border:1px solid #52606f;padding:9px 13px}@media (max-width:600px){.battle-preview-header nav{flex-wrap:wrap}.ps-statbar.far{width:38%;top:16%;left:13%}.ps-statbar.near{width:38%;bottom:14%;right:19%}.ps-trainer-bar>strong{display:none}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
