@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/fef07dbb0973bf53-s.3p2_lha1f2xer.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/8a480f0b521d4e75-s.1qq4vpdcun5oj.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/53b9e256198e5412-s.390ncx5urfkfu.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7178b3e590c64307-s.21jp631_3pja2.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/caa3a2e1cccd8315-s.p.0wgildi0cnwt9.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Fallback;src:local(Arial);ascent-override:95.94%;descent-override:28.16%;line-gap-override:0.0%;size-adjust:104.76%}.geist_a71539c9-module__T19VSG__className{font-family:Geist,Geist Fallback;font-style:normal}.geist_a71539c9-module__T19VSG__variable{--font-geist-sans:"Geist", "Geist Fallback"}
@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/5ce348bf30bf5439-s.31988l_ccedte.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/4fa387ec64143e14-s.2tuy5pz7dlieh.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/6306c77e7c8268e4-s.2dbetqa9o8jxf.woff2)format("woff2");unicode-range:U+2000-2001,U+2004-2008,U+200A,U+23B8-23BD,U+2500-259F}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7d817b4c03b0c5f1-s.1uyisp29ctx0d.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/bbc41e54d2fcbd21-s.1rgnod-3esatf.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/797e433ab948586e-s.p.0r6juujl39pe6.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Mono Fallback;src:local(Arial);ascent-override:74.67%;descent-override:21.92%;line-gap-override:0.0%;size-adjust:134.59%}.geist_mono_8d43a2aa-module__8Li5zG__className{font-family:Geist Mono,Geist Mono Fallback;font-style:normal}.geist_mono_8d43a2aa-module__8Li5zG__variable{--font-geist-mono:"Geist Mono", "Geist Mono Fallback"}
@layer theme{:root,:host{--font-mono:"Geist Mono","Geist Mono Fallback",ui-monospace,monospace;--default-font-family:"Geist","Geist Fallback",ui-sans-serif,system-ui,sans-serif;--default-mono-font-family:"Geist Mono","Geist Mono Fallback",ui-monospace,monospace}}@layer base{*,:after,:before,::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]){appearance:button}::file-selector-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{.visible{visibility:visible}.hidden{display:none}.table{display:table}}:root{--ink:#282b31;--muted:#6b6f79;--paper:#fff8db;--paper-deep:#e8dfbd;--green:#35a96f;--green-dark:#155f43;--red:#c52e32;--red-dark:#711c25;--orange:#ef7d3c;--gold:#f2c94c;--blue:#31586e;--line:#20242b;--frame:#343b4c;--highlight:#fffbe8}*{box-sizing:border-box}html{background:#1b2430;min-height:100%}body{min-height:100vh;color:var(--ink);font-family:var(--font-mono),monospace;background:radial-gradient(circle at 50% 0,#5a3034 0,#283544 42%,#171f2a 100%);margin:0}button{color:inherit;font:inherit}button:not(:disabled){cursor:pointer}button:focus-visible{outline:4px solid var(--gold);outline-offset:2px}.access-gate{place-items:center;min-height:100vh;padding:20px;display:grid}.access-card{text-align:center;border:5px solid var(--line);background:var(--paper);width:min(540px,100%);box-shadow:inset 0 0 0 4px var(--highlight),8px 8px 0 #0e1d1e99;border-radius:9px;padding:clamp(28px,6vw,48px)}.access-card .eyebrow{color:var(--red);margin-top:18px}.access-card h1{letter-spacing:-.06em;margin:8px 0 12px;font-size:clamp(34px,8vw,58px)}.access-card>p:not(.eyebrow){max-width:430px;color:var(--muted);margin:0 auto;font-size:12px;line-height:1.75}.access-ball{background:linear-gradient(#e94a43 0 43%,#283233 43% 58%,#f8f5df 58%);border:7px solid #fff;border-radius:50%;width:74px;height:74px;margin:0 auto;box-shadow:0 0 0 5px #1a2b29}.access-button{color:#fff8df;background:linear-gradient(#df553e,#ae252f);border:4px solid #572027;place-items:center;min-height:54px;margin-top:26px;padding:10px 16px;font-size:11px;font-weight:950;text-decoration:none;transition:filter .12s,transform 80ms;display:grid;box-shadow:inset 0 0 0 2px #ff9a68}.access-button:hover{filter:brightness(1.12)}.access-button:active{transform:translate(2px,2px)}.access-button:focus-visible{outline:4px solid var(--gold);outline-offset:3px}.access-card small{color:var(--muted);margin-top:16px;font-size:8px;display:block}.access-error{color:#fff8df;background:var(--red-dark);border:3px solid #572027;margin-top:24px;padding:14px;font-size:10px;display:block}.game-shell{width:min(1480px,100%);min-height:100vh;margin:0 auto;padding:18px clamp(12px,2.5vw,32px) 40px}.topbar{color:#fff8df;background:linear-gradient(#db4a3e,#a8222b);border:4px solid #241b20;border-radius:10px 10px 2px 2px;justify-content:space-between;align-items:center;gap:20px;min-height:68px;padding:10px 18px;display:flex;box-shadow:inset 0 0 0 3px #ff9a68,0 6px #101923}.brand{letter-spacing:.08em;text-shadow:2px 2px var(--red-dark);align-items:center;gap:10px;font-size:clamp(16px,2vw,24px);font-weight:950;display:flex}.brand small{color:#342419;text-shadow:none;background:var(--gold);border:2px solid #572027;padding:5px 7px;font-size:9px}.brand .cloud-state{color:#dce9ef;text-shadow:none;background:#263d4e;border:2px solid #fff5;padding:4px 6px;font-size:7px}.brand .cloud-state.online{color:#e7ffce;background:#276347}.brand .cloud-state.local,.brand .cloud-state.error{color:#ffe1ac;background:#754438}.brand-ball{background:linear-gradient(#e94a43 0 43%,#283233 43% 58%,#f8f5df 58%);border:4px solid #fff;border-radius:50%;width:28px;height:28px;box-shadow:0 0 0 3px #1a2b29}.trainer-stats{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.trainer-stats span{color:#20322e;background:#f5f0d6;border:3px solid #1a302b;gap:1px;min-width:94px;padding:6px 10px;display:grid;box-shadow:inset 2px 2px #fff}.trainer-stats small{color:#697068;letter-spacing:.08em;font-size:6px;font-weight:900}.trainer-stats b{font-size:12px}.tabs{grid-template-columns:repeat(6,1fr);gap:8px;padding:15px 4px 12px;display:grid}.tabs button{color:#edf0e8;background:#35445a;border:3px solid #171e29;border-radius:5px;min-height:45px;font-size:12px;font-weight:900;transition:filter .12s,transform .12s;position:relative;box-shadow:inset 0 -4px #222d3e}.tabs button:not(.active):hover{filter:brightness(1.18);transform:translateY(-1px)}.tabs button.active{color:#fff8df;background:linear-gradient(#db5540,#bd2930);border-color:#4c161d;transform:translateY(2px);box-shadow:inset 0 -4px #7d2028}.notification{color:#fff;background:var(--red);border:2px solid #fff0c9;border-radius:50%;place-items:center;width:21px;height:21px;display:grid;position:absolute;top:-9px;right:-6px}.pixel-panel{border:4px solid var(--line);background:var(--paper);box-shadow:inset 0 0 0 3px var(--highlight),5px 5px 0 #0e1d1e66;border-radius:7px}.eyebrow{color:var(--green-dark);letter-spacing:.1em;margin:0 0 10px;font-size:10px;font-weight:950}.adventure-layout{grid-template-columns:270px minmax(380px,1fr) 230px;gap:14px;display:grid}.route-panel,.progress-panel{align-self:start;padding:15px}.kanto-map{background:#85b9ef;border:4px solid #304360;height:190px;position:relative;overflow:hidden}.kanto-map img,.route-preview img{image-rendering:pixelated}.kanto-map img{object-fit:contain}.route-preview img{object-fit:cover}.kanto-map:after{content:"";z-index:1;pointer-events:none;position:absolute;inset:0;box-shadow:inset 0 0 0 2px #a9b8e8}.map-pin{z-index:2;color:#fff;filter:drop-shadow(0 2px #b52828)drop-shadow(0 0 3px #fff);font-size:20px;animation:1s steps(2,end) infinite pin-bounce;position:absolute;left:20%}.pin-route-1{top:79%}.pin-viridian-forest{top:35%}.pin-route-2{top:48%}.pin-pewter-city,.pin-pewter-gym{top:23%;left:18%}.pin-route-3{top:22%;left:27%}.pin-mt-moon-1f,.pin-mt-moon-b1f,.pin-mt-moon-b2f{top:20%;left:35%}.pin-cerulean-city,.pin-cerulean-gym{top:22%;left:45%}.pin-kanto-expedition{top:42%;left:55%}.route-preview{background:#b8d791;border:3px solid #293a37;height:92px;margin-top:8px;position:relative;overflow:hidden}.route-preview img{object-fit:cover;object-position:center}@keyframes pin-bounce{50%{transform:translateY(-5px)}}.zone-list{gap:7px;margin-top:12px;display:grid}.zone-list button{text-align:left;background:#ece6c8;border:3px solid #58645e;justify-content:space-between;align-items:center;min-height:48px;padding:7px 9px;transition:filter .12s,transform .12s;display:flex}.zone-list button:not(:disabled):not(.selected):hover{filter:brightness(1.06);transform:translate(2px)}.zone-list button.selected{color:#fff;background:linear-gradient(#db513e,#aa2730);border-color:#611b24}.zone-list button:disabled{opacity:.5;filter:grayscale();cursor:not-allowed}.zone-list small{font-size:8px;display:block}.zone-list button.boss-zone{background:#f0d367;border-color:#8c5a1f}.zone-list button.boss-zone.selected{color:#fff;background:linear-gradient(#a76537,#78372e);border-color:#4e2721}.pokemon-center{color:#22362e;background:#dcefe4;border:3px solid #31586e;gap:8px;margin-top:12px;padding:10px;display:grid;box-shadow:inset 2px 2px #fff}.pokemon-center div{gap:3px;display:grid}.pokemon-center b{color:#b52d37;font-size:9px}.pokemon-center small{font-size:7px}.pokemon-center button{color:#fff;background:#3d8e63;border:3px solid #283532;min-height:38px;padding:6px;font-size:7px;font-weight:900}.pokemon-center button:disabled{color:#625f54;cursor:not-allowed;background:#c7c0a5}.battle-column{gap:14px;display:grid}.battlefield{min-height:490px;image-rendering:pixelated;isolation:isolate;background:#e8f2e9 url(/assets/ui/frlg-grass-battle.png) top/100% calc(100% - 66px) no-repeat;position:relative;overflow:hidden}.attack-surface{z-index:1;touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:0 0;border:0;width:100%;position:absolute;inset:0}.attack-surface:focus-visible{outline:6px solid var(--gold);outline-offset:-10px}.attack-surface:active{background:#fff2aa25}.battle-sky,.cloud{display:none}.enemy-card{pointer-events:none;z-index:2;background:#fbf7d9;border:3px solid #4d5364;border-radius:10px 3px;outline:2px solid #f8f5e2;width:min(360px,52%);padding:12px 15px;position:absolute;top:28px;left:25px;box-shadow:inset -5px -5px #d8d1aa,4px 4px #8994a0}.battle-name{justify-content:space-between;gap:8px;font-size:clamp(12px,2vw,17px);display:flex}.frlg-text{align-items:center;min-height:32px;display:inline-flex}.frlg-text i{width:24px;height:32px;image-rendering:pixelated;background-image:url(/assets/ui/frlg-battle-font.png);background-repeat:no-repeat;background-size:1228px 592px;flex:0 0 24px;display:block}.frlg-text.move-name{transform-origin:50%;justify-content:center;min-height:24px;margin:-4px -12%;transform:scale(.75)}.type-list{gap:4px;margin-top:7px;display:flex}.type-list span{color:#fff;text-shadow:1px 1px #333;background:#888;border:1px solid #30343a;border-radius:8px;padding:3px 6px;font-size:7px}.type-list [data-type=Normal]{background:#9a9585}.type-list [data-type=Vol]{background:#738dc3}.type-list [data-type=Insecte]{background:#82952b}.type-list [data-type=Poison]{background:#8c4d9f}.type-list [data-type=Électrik]{color:#342e1a;text-shadow:none;background:#e8c43e}.type-list [data-type=Plante]{background:#4f9b51}.type-list [data-type=Feu]{background:#d95936}.type-list [data-type=Eau]{background:#3c7db8}.type-list [data-type=Roche]{background:#9b7d37}.type-list [data-type=Sol]{color:#3a2d1b;text-shadow:none;background:#c9a660}.hp-row{color:#e6c658;grid-template-columns:auto 1fr auto;align-items:center;gap:8px;margin-top:9px;display:grid}.hp-row>span{background:#293535;border-radius:7px;height:12px;padding:2px}.hp-row i{background:var(--green);border-radius:4px;height:100%;transition:width .16s steps(4,end);display:block}.hp-row small{color:#4b5050;white-space:nowrap;font-size:8px}.enemy-sprite{pointer-events:none;z-index:2;place-items:center;width:170px;height:170px;display:grid;position:absolute;top:27%;right:11%}.enemy-sprite img{object-fit:contain;width:150px;height:150px;image-rendering:pixelated;z-index:2;animation:1.8s steps(2,end) infinite enemy-idle}.enemy-sprite img.manual-hit{animation:.18s steps(2,end) enemy-hit,1.8s steps(2,end) .18s infinite enemy-idle}@keyframes enemy-idle{50%{transform:translateY(-5px)}}@keyframes enemy-hit{35%{filter:brightness(1.8)saturate(.25);transform:translate(9px)}70%{transform:translate(-5px)}}.battle-shadow{background:#487c4f70;border-radius:50%;width:150px;height:28px;position:absolute;bottom:12px}.boss-battle{outline:4px solid #b8893d}.boss-trainer{pointer-events:none;z-index:4;color:#fff;background:#493b35dd;border:3px solid #f5d56a;align-items:center;gap:7px;padding:5px 9px 5px 4px;display:flex;position:absolute;top:24px;right:20px;box-shadow:3px 3px #28242a}.boss-trainer img{object-fit:contain;width:48px;height:48px;image-rendering:pixelated}.boss-trainer span{gap:1px;display:grid}.boss-trainer small{color:#f5d56a;font-size:6px}.boss-trainer b{text-transform:uppercase;font-size:12px}.boss-trainer em{color:#e7dac4;font-size:6px;font-style:normal}.team-strip{pointer-events:none;z-index:2;align-items:flex-end;gap:5px;max-width:68%;display:flex;position:absolute;bottom:78px;left:4%}.team-fighter{text-align:center;position:relative}.team-fighter img{object-fit:contain;width:100%;height:100%;image-rendering:pixelated;filter:drop-shadow(0 5px #496f49aa)}.team-fighter small{color:#fff;white-space:nowrap;background:#263b35;padding:3px 5px;font-size:8px;position:absolute;bottom:-4px;left:50%;transform:translate(-50%)}.active-fighter{width:150px;height:150px}.reserve-fighter{opacity:.88;width:42px;height:42px;margin-bottom:3px}.reserve-fighter small{font-size:6px}.attack-hint{z-index:4;color:#fff8df;background:linear-gradient(#df553e,#ae252f);border:3px solid #572027;justify-items:center;min-width:220px;padding:8px 12px;transition:filter .12s,transform 80ms;display:grid;position:absolute;bottom:82px;right:15px;box-shadow:inset 0 0 0 2px #ff9a68,3px 3px #34343b80}.attack-hint:hover{filter:brightness(1.12)}.attack-hint:active{transform:translate(2px,2px);box-shadow:inset 0 0 0 2px #ff9a68,1px 1px #34343b80}.attack-hint span{font-size:8px;font-weight:900}.attack-hint small{color:#ffe578;margin-top:3px;font-size:8px}.attack-hint.super{background:linear-gradient(#3da769,#1d7048);border-color:#125937;box-shadow:inset 0 0 0 2px #91dfa8,3px 3px #34343b80}.attack-hint.super small{color:#eaff8a}.attack-hint.resisted{filter:saturate(.45);background:linear-gradient(#777b84,#4d515a)}@keyframes attack-hint-pulse{50%{filter:brightness(1.08);transform:translateY(-2px)}}.damage-pop{pointer-events:none;z-index:5;color:#fff;text-shadow:2px 2px #a21f29,-1px -1px #a21f29;font-size:22px;font-weight:950;animation:.55s ease-out both damage-rise;position:absolute;top:27%;right:23%}@keyframes damage-rise{0%{opacity:1;transform:translateY(10px)scale(.75)}to{opacity:0;transform:translateY(-35px)scale(1.2)}}.battle-message{pointer-events:none;z-index:3;color:#f8f8f8;letter-spacing:.02em;text-shadow:2px 2px #44535f;background:#31586e;border:4px solid #f7eed0;outline:4px solid #343b4c;align-items:center;min-height:57px;padding:10px 16px;font-family:Courier New,monospace;font-size:12px;font-weight:900;display:flex;position:absolute;inset:auto 10px 10px}.controls{grid-template-columns:1.1fr .7fr 1.2fr 1.2fr;gap:9px;padding:10px;display:grid}.controls>div,.controls button{min-height:62px}.controls>div{background:var(--paper-deep);border:3px solid #817c69;flex-direction:column;justify-content:center;padding:7px 12px;display:flex}.controls span{color:var(--muted);font-size:8px;font-weight:900}.controls strong{font-size:20px}.controls small{margin-top:2px;font-size:7px}.controls .dps-stat{color:#fff;border-color:var(--frame);background:var(--blue)}.controls .dps-stat span{color:#f5dc62}.controls .dps-stat strong{font-size:26px;line-height:1.05}.controls button{background:#d7d0ad;border:3px solid #283532;flex-direction:column;justify-content:center;align-items:center;gap:4px;padding:7px 9px;font-weight:900;transition:filter .12s,transform 80ms;display:flex}.controls button:hover{filter:brightness(1.08)}.controls button:active{transform:translate(2px,2px)}.controls button span{color:inherit}.controls button b{font-size:11px}.controls .toggle{color:#fff;background:#9a4242}.controls .toggle.on{background:#3d8e63}.controls .shop-button{color:#3d3318;background:#f0d367}.log-panel{min-height:150px;padding:14px 16px}.log-panel p:not(.eyebrow){color:#64706b;margin:5px 0;font-size:11px}.log-panel p.latest{color:#1b4f39;font-weight:900}.progress-panel{text-align:center}.level-orb{color:#fff;background:linear-gradient(135deg,#52b57a,#1d7051);border:6px double #fff4c8;border-radius:50%;outline:4px solid #17382c;place-items:center;width:82px;height:82px;margin:10px auto;font-size:35px;font-weight:950;display:grid;box-shadow:4px 4px #9f976e}.xp-bar{background:#b9b596;border:2px solid #34423d;height:13px;margin:12px 0 5px;padding:2px}.xp-bar i{background:var(--blue);height:100%;display:block}.progress-panel>small{font-size:9px}.progress-panel hr{background:#c7bea0;border:0;height:3px;margin:20px 0}.mini-stat{justify-content:space-between;margin:10px 0;font-size:11px;display:flex}.tip{color:var(--red);font-size:9px;font-weight:950}.legacy-panel{text-align:left;background:#e8d29a;border:3px solid #6c5330;gap:6px;margin-top:18px;padding:10px;display:grid}.legacy-panel span{color:#6d3f28;font-size:8px;font-weight:950}.legacy-panel small{font-size:7px}.legacy-panel>div{background:#b8ab86;border:1px solid #554832;height:8px}.legacy-panel i{background:#ca713b;height:100%;display:block}.legacy-panel button{color:#fff;background:#a84a35;border:2px solid #4d2d26;min-height:34px;font-size:7px;font-weight:900}.legacy-panel button:disabled{color:#716b5c;cursor:not-allowed;background:#c8bfa4}.collection-page,.talent-page{min-height:650px;padding:clamp(15px,3vw,30px)}.section-title{justify-content:space-between;align-items:center;gap:20px;margin-bottom:24px;display:flex}.section-title h1{margin:0;font-size:clamp(20px,3vw,32px)}.section-title>b{color:#fff;background:#368861;border:3px solid #18372d;padding:10px 14px}.synergy-panel{color:#fff;background:#31586e;border:3px solid #263c4b;justify-content:space-between;align-items:center;gap:16px;margin:-10px 0 18px;padding:12px 14px;display:flex;box-shadow:inset 2px 2px #6d8ca0}.synergy-panel div{gap:4px;display:grid}.synergy-panel span{color:#f5dc62;font-size:8px;font-weight:900}.synergy-panel strong{font-size:10px}.synergy-panel small{color:#dce9ef;text-align:right;font-size:8px}.pokemon-grid{grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:12px;display:grid}.pokemon-card{text-align:center;background:#e9e4c9;border:3px solid #6b756b;min-height:350px;padding:16px;position:relative;box-shadow:inset 3px 3px #fff9df}.pokemon-card.in-team{background:#d9efcb;border-color:#1b6545;box-shadow:inset 0 0 0 4px #78bd79}.pokemon-card.evolution-ready{border-color:#d39b24;box-shadow:inset 0 0 0 4px #f4d462,0 0 16px #ffd95f99}.pokemon-card img{width:96px;height:96px;image-rendering:pixelated;object-fit:contain}.pokemon-card h2{margin:3px 0;font-size:15px}.pokemon-card p{color:var(--muted);margin:4px 0;font-size:10px}.pokemon-card>small{color:#296044;min-height:30px;margin-top:7px;font-size:9px;display:block}.pokemon-xp{background:#b9b596;border:1px solid #34423d;height:9px;margin:9px 8px 2px;padding:1px}.pokemon-xp i{background:var(--blue);height:100%;display:block}.pokemon-card .pokemon-xp-label{margin:0;font-size:7px}.pokemon-card .evolution-note{color:#766e58;min-height:24px;margin:7px 0;font-size:8px}.pokemon-card .evolution-note.ready{color:#9a421d;font-weight:950;animation:1.4s steps(2,end) infinite attack-hint-pulse}.dex-number{color:#68746b;font-size:10px;position:absolute;top:9px;left:9px}.card-actions{grid-template-columns:1fr auto;gap:6px;margin-top:8px;display:grid}.card-actions button{background:#f5d56a;border:2px solid #263d36;min-height:34px;font-size:9px;font-weight:900}.card-actions button:disabled{opacity:.4}.card-actions .evolve-button{color:#fff9df;background:linear-gradient(#dd513e,#ad2630);border-color:#6c2026;grid-column:1/-1}.role-badge{color:#fff;background:#4c6d60;border:1px solid #263b35;padding:3px 5px;font-size:7px;font-weight:900;position:absolute;top:8px;right:8px}.pokemon-grid.compact{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.pokemon-grid.compact .pokemon-card{min-height:220px}.pokemon-grid.compact .pokemon-card img{width:80px;height:80px}.pokemon-card.unknown img{filter:brightness(0);opacity:.2}.pokemon-card.caught{background:#edf0cf}.collection-dashboard{grid-template-columns:150px 150px 1fr;gap:10px;margin:-10px 0 20px;display:grid}.collection-dashboard>div{color:#fff;background:#31586e;border:3px solid #34434c;gap:4px;padding:10px 12px;display:grid}.collection-dashboard span{color:#f5dc62;font-size:7px;font-weight:900}.collection-dashboard strong{font-size:18px}.collection-dashboard .achievement-list{color:#777;background:#e3ddc0;flex-wrap:wrap;align-items:center;gap:6px;display:flex}.achievement-list span{color:#756f60;background:#c9c2a7;border:1px solid #8f8975;padding:4px 6px}.achievement-list span.unlocked{color:#fff;background:#ae7c2f;border-color:#856329}.rarity-badge{color:#fff;background:#66736a;border:1px solid #353d39;padding:3px 5px;font-size:6px;position:absolute;top:8px;right:8px}.pokemon-card.shiny{background:#fff1b8;border-color:#c48c21;box-shadow:inset 0 0 0 4px #f5cd54,0 0 14px #f5cd5488}.shiny-label{color:#a55e18;margin:5px 0;font-size:7px;display:block}.specialization-grid{grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:66px;display:grid}.specialization-grid button{text-align:left;background:#ded8b8;border:4px solid #4a5552;gap:7px;min-height:112px;padding:13px;display:grid;box-shadow:inset 3px 3px #fff8db}.specialization-grid button:not(:disabled):hover{border-color:#9a4a38;transform:translateY(-2px)}.specialization-grid button.selected{color:#fff;background:linear-gradient(#c34b3b,#8f2d34);border-color:#64272a}.specialization-grid strong{font-size:12px}.specialization-grid span{font-size:8px}.specialization-grid small{color:#8a4931;font-size:7px;font-weight:900}.specialization-grid button.selected small{color:#ffe273}.talent-tree{grid-template-columns:repeat(3,1fr);gap:90px 30px;padding:40px 3vw;display:grid;position:relative}.talent-tree:before{content:"";background:#9a916d;height:5px;position:absolute;top:91px;left:16%;right:16%}.talent-node{z-index:1;text-align:center;background:#e5dfbd;border:4px solid #44554d;padding:25px 18px 18px;position:relative;box-shadow:inset 4px 4px #fff8db}.talent-icon{color:#fff;background:#398462;border:5px double #fff1bd;border-radius:50%;outline:4px solid #253d35;place-items:center;width:76px;height:76px;margin:-65px auto 16px;font-size:34px;display:grid}.talent-node h2{font-size:16px}.talent-node p{min-height:38px;color:var(--muted);font-size:10px}.talent-ranks{grid-template-columns:repeat(10,1fr);gap:3px;margin:18px 0;display:grid}.talent-ranks i{background:#b8b59a;border:1px solid #525e55;height:9px}.talent-ranks i.filled{background:#edc84c}.talent-node button{background:#f1d164;border:3px solid #243b33;width:100%;min-height:44px;font-size:9px;font-weight:900}.talent-node button:disabled{opacity:.45;filter:grayscale()}.prestige-overlay{z-index:30;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#101b21df;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.prestige-modal{text-align:center;width:min(560px,100%);padding:28px}.prestige-modal h2{margin:5px 0 12px}.prestige-modal p:not(.eyebrow){color:#666b68;font-size:11px;line-height:1.6}.prestige-modal>strong{color:#9a472f;margin:18px 0;display:block}.prestige-modal>div{grid-template-columns:1fr 1fr;gap:8px;display:grid}.prestige-modal button{background:#d1c9aa;border:3px solid #343c39;min-height:44px;font-weight:900}.prestige-modal button.confirm{color:#fff;background:#a84835}.starter-overlay{z-index:20;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#102321dd;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.starter-modal{text-align:center;width:min(850px,100%);padding:clamp(20px,4vw,42px)}.starter-modal h1{margin:8px 0;font-size:clamp(24px,5vw,42px)}.starter-modal>p:not(.eyebrow){color:var(--muted)}.starter-grid{grid-template-columns:repeat(3,1fr);gap:13px;margin-top:28px;display:grid}.starter-grid button{background:#ece6c6;border:4px solid #3c5048;flex-direction:column;align-items:center;gap:7px;min-height:215px;padding:16px 8px;display:flex;box-shadow:inset 4px 4px #fff9de,inset -4px -4px #bcb698}.starter-grid button:hover{background:#e0f0c4;border-color:#21724f;transform:translateY(-5px)}.starter-grid img{width:112px;height:112px;image-rendering:pixelated;object-fit:contain}.starter-grid strong{font-size:14px}.starter-grid small{color:#2f654a;font-size:9px}.boot-screen{color:#fff;place-items:center;min-height:100vh;display:grid}@media (max-width:1050px){.adventure-layout{grid-template-columns:230px 1fr}.progress-panel{text-align:left;grid-column:1/-1;grid-template-columns:auto repeat(3,1fr);align-items:center;gap:12px;display:grid}.progress-panel .eyebrow,.progress-panel hr,.progress-panel .tip,.progress-panel>strong:last-child{display:none}.level-orb{width:58px;height:58px;margin:0;font-size:24px}.progress-panel .xp-bar,.progress-panel>small{display:none}.mini-stat{margin:0;display:grid}}@media (max-width:720px){.game-shell{padding:8px 7px 28px}.topbar{min-height:58px;padding:8px 10px}.brand small{display:none}.brand-ball{width:22px;height:22px}.trainer-stats{gap:3px}.trainer-stats span{border-width:2px;min-width:0;padding:6px;font-size:9px}.trainer-stats small{display:none}.trainer-stats b{font-size:9px}.tabs{gap:3px;padding:10px 0 8px}.tabs button{border-width:2px;min-height:39px;font-size:8px}.adventure-layout{grid-template-columns:1fr}.route-panel{order:2}.kanto-map{height:210px}.route-preview{height:120px}.battle-column{order:1}.progress-panel{order:3;grid-template-columns:auto repeat(3,1fr);padding:10px}.progress-panel>strong{display:none}.battlefield{min-height:430px}.enemy-card{border-width:3px;width:68%;padding:8px;top:17px;left:12px}.boss-trainer{padding:3px 6px 3px 2px;top:98px;right:8px}.boss-trainer img{width:38px;height:38px}.enemy-sprite{width:130px;height:130px;top:29%;right:3%}.enemy-sprite img{width:120px;height:120px}.team-strip{gap:2px;max-width:76%;bottom:73px;left:2%}.active-fighter{width:120px;height:120px}.reserve-fighter{width:30px;height:30px}.team-fighter small{font-size:6px}.reserve-fighter small{display:none}.attack-hint{width:62%;min-width:0;padding:6px 8px;inset:160px auto auto 14px}.attack-hint span{font-size:7px}.damage-pop{top:30%;right:17%}.battle-message{min-height:52px;font-size:10px}.controls{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.controls>div{border-width:3px;min-width:0}.controls .dps-stat{grid-column:auto}.log-panel{min-height:130px}.synergy-panel{display:grid}.synergy-panel small{text-align:left}.pokemon-grid,.pokemon-grid.compact{grid-template-columns:repeat(2,1fr);gap:7px}.pokemon-card{min-height:340px;padding:12px 6px}.pokemon-grid.compact .pokemon-card{min-height:232px}.pokemon-card h2{font-size:12px}.talent-tree{grid-template-columns:1fr;gap:70px}.talent-tree:before{display:none}.talent-page{padding-bottom:60px}.starter-grid{grid-template-columns:1fr;max-height:62vh;overflow-y:auto}.starter-grid button{text-align:left;grid-template-columns:100px 1fr;min-height:145px;display:grid}.starter-grid button img{grid-row:1/3}.collection-dashboard{grid-template-columns:1fr 1fr}.collection-dashboard .achievement-list{grid-column:1/-1}.specialization-grid{grid-template-columns:1fr;margin-bottom:68px}.legacy-panel{grid-column:1/-1}.talent-tree{row-gap:80px}}@media (min-width:721px) and (max-width:1050px){.legacy-panel{grid-column:1/-1;width:100%}.progress-panel{grid-template-columns:auto repeat(3,1fr)}}.type-list [data-type=Glace]{background:#68aeb4}.type-list [data-type=Combat]{background:#a84136}.type-list [data-type=Psy]{background:#c84d77}.type-list [data-type=Spectre]{background:#665682}.type-list [data-type=Dragon]{background:#5b4ca4}.type-list [data-type=Ténèbres]{background:#4e423d}.type-list [data-type=Acier]{color:#273136;text-shadow:none;background:#a9b0bd}.challenge-live{color:#fff;background:linear-gradient(135deg,#552c66,#263d68);border-color:#462248;grid-template-columns:1fr 1fr auto;align-items:center;gap:16px;margin-top:10px;padding:12px 16px;display:grid}.challenge-live div{gap:3px;display:grid}.challenge-live span{color:#f7da62;font-size:8px;font-weight:950}.challenge-live strong{font-size:20px}.challenge-live small{color:#d7d9ee;max-width:270px;font-size:8px}.held-item-select{color:#6c5330;text-align:left;gap:4px;margin:8px 0;font-size:7px;font-weight:950;display:grid}.held-item-select select{width:100%;min-height:32px;font:inherit;background:#fff9dc;border:2px solid #5f6558;padding:5px}.card-actions .unequip-button{color:#fff;background:#55666d;grid-column:1/-1}.bag-page,.mission-page{min-height:700px}.fossil-choice{color:#fff;background:linear-gradient(135deg,#654834,#252d42);border:4px solid #432b38;grid-template-columns:1fr 210px 210px;align-items:stretch;gap:10px;margin:-8px 0 22px;padding:16px;display:grid;box-shadow:inset 3px 3px #a87b51}.fossil-choice span{color:#f2cb57;font-size:8px;font-weight:950}.fossil-choice h2{margin:7px 0;font-size:16px}.fossil-choice p{color:#e4d8c3;margin:0;font-size:8px}.fossil-choice button{color:#382b20;background:#ecd982;border:3px solid #382f2c;place-items:center;gap:5px;min-height:76px;font-size:10px;font-weight:950;display:grid}.fossil-choice button small{font-size:7px}.item-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:10px;display:grid}.item-card{opacity:.48;background:#d8d2b7;border:3px solid #77766a;grid-template-columns:50px 1fr auto;align-items:center;gap:10px;min-height:104px;padding:12px;display:grid}.item-card.owned{opacity:1;background:#edf0cf;border-color:#4c634f;box-shadow:inset 3px 3px #fffbe4}.item-card h2{margin:3px 0;font-size:12px}.item-card p{color:#6d7067;margin:0;font-size:8px}.item-card small{color:#8a552c;font-size:6px;font-weight:950}.item-card>b{color:#fff;background:#31586e;align-self:start;padding:5px}.item-card button{color:#fff;background:#bd3d38;border:2px solid #4e2528;grid-column:2/-1;min-height:30px;font-size:8px;font-weight:950}.item-icon{width:44px;height:44px;image-rendering:pixelated;background-color:#fff6d1;background-image:url(/assets/ui/frlg-items.png);background-size:721px 525px;border:3px solid #4b5149}.mission-layout{grid-template-columns:1fr 1fr;gap:14px;display:grid}.quest-board{background:#dfe6c6;border:4px solid #344c42}.quest-board.weekly{background:#e5d9e7;border-color:#4c385b}.quest-board>header{color:#fff;background:#2f7254;justify-content:space-between;gap:8px;padding:11px 13px;display:flex}.quest-board.weekly>header{background:#644b77}.quest-board header span{font-size:9px;font-weight:950}.quest-board header small{font-size:7px}.quest-board article{border-top:2px solid #b2b99c;grid-template-columns:1fr auto;align-items:center;gap:12px;padding:13px;display:grid}.quest-board h2{margin:0 0 5px;font-size:11px}.quest-board p{color:#63675e;margin:0 0 7px;font-size:8px}.quest-board i{background:#aaa991;border:1px solid #465049;height:9px;padding:1px;display:block}.quest-board i span{background:#3ca66a;height:100%;display:block}.quest-board button{color:#fff;background:#37845f;border:2px solid #283c36;min-width:105px;min-height:38px;font-size:7px;font-weight:950}.quest-board button:disabled{color:#777;background:#c1bda7}.elite-challenge{color:#fff;background:linear-gradient(135deg,#432d5b,#243e5f);border:4px solid #241d34;grid-template-columns:1.2fr 260px 260px;align-items:center;gap:18px;margin-top:18px;padding:20px;display:grid;box-shadow:inset 3px 3px #795b91}.elite-challenge h2{margin:6px 0;font-size:20px}.elite-challenge p:not(.eyebrow){color:#d9d9eb;font-size:9px;line-height:1.5}.challenge-score{text-align:center;gap:7px;display:grid}.challenge-score span{color:#f5d65b;font-size:8px;font-weight:950}.challenge-score strong{font-size:28px}.challenge-score button{color:#342113;background:#f0cb56;border:3px solid #312b2b;min-height:43px;font-size:8px;font-weight:950}.challenge-score button:disabled{opacity:.55}.elite-challenge ol{margin:0;padding:0;list-style:none}.elite-challenge li{border-bottom:1px solid #fff3;justify-content:space-between;gap:10px;padding:7px;font-size:8px;display:flex}.elite-challenge li span{color:#f5d65b}@media (max-width:900px){.tabs{grid-template-columns:repeat(3,1fr)}.mission-layout{grid-template-columns:1fr}.elite-challenge{grid-template-columns:1fr 1fr}.elite-challenge ol{grid-column:1/-1}.fossil-choice{grid-template-columns:1fr 1fr}.fossil-choice>div{grid-column:1/-1}}@media (max-width:720px){.tabs{grid-template-columns:repeat(3,1fr)}.tabs button{font-size:7px}.challenge-live{grid-template-columns:1fr 1fr}.challenge-live small{grid-column:1/-1}.fossil-choice{grid-template-columns:1fr}.fossil-choice>div{grid-column:auto}.item-grid,.elite-challenge{grid-template-columns:1fr}.elite-challenge ol{grid-column:auto}.quest-board article{grid-template-columns:1fr}.quest-board button{width:100%}}.item-tenu{background-position:-242px -165px}.item-pierre{background-position:-342px -141px}.item-fossile{background-position:-281px -165px}
