@font-face{font-family:Silkscreen;src:url('/assets/fonts/Silkscreen-Regular.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}
html.site-pixel-text body,html.site-pixel-text :is(button,input,select,textarea,.button,.rail nav button,.nav-heading){font-family:Silkscreen,'Segoe UI',sans-serif!important;letter-spacing:0!important}
html.site-pixel-text :is(p,li,label,small,button,input,select,textarea){line-height:1.65}
html.site-pixel-text h1{font-size:clamp(24px,3vw,32px)}
/* The supplied frame is sliced, so corners retain their proportions. */
.rail nav button,.rail-footer>button[data-tab]{border:7px solid transparent!important;border-image:var(--art-controls-side-button-webp,url('/assets/ui/controls/side-button.webp')) 160 / 7px stretch!important;border-radius:0!important;padding:6px 7px!important;margin-block:3px;min-height:48px;background-clip:padding-box}
.rail nav button.active{background:color-mix(in srgb,var(--accent) 25%,var(--surface));box-shadow:inset 0 0 15px #ba53ec33!important}
.rail nav button:hover{filter:brightness(1.15)}
.nav-heading{border-bottom:0!important;padding-bottom:15px!important;position:relative}
.nav-heading:after{content:'';position:absolute;left:0;right:0;bottom:0;height:5px;background:var(--art-controls-bar-webp,url('/assets/ui/controls/bar.webp')) center/100% 100% no-repeat;image-rendering:pixelated}
select:not([multiple]):not([size]),input:is([type=search],#handleSearch,#query,#goDexSearch),.trainer-lookup{border:7px solid transparent!important;border-image:var(--art-controls-side-button-webp,url('/assets/ui/controls/side-button.webp')) 160 / 7px stretch!important;border-radius:0!important;background-clip:padding-box;min-height:46px}
select:not([multiple]):not([size]){appearance:none;padding:7px 38px 7px 10px!important;background-image:var(--art-controls-arrow-svg,url('/assets/ui/controls/arrow.svg'))!important;background-position:right 7px center!important;background-size:20px 20px!important;background-repeat:no-repeat!important}
select option{background:var(--surface,#172333);color:var(--ink,#e6edf5)}
.trainer-lookup{padding:0 5px 0 3px!important;gap:5px}.trainer-lookup #handleSearch{border:0!important;border-image:none!important;padding:6px!important;min-height:34px;min-width:0;background:transparent}.trainer-lookup>span{font-size:0;width:22px;height:22px;flex:none;background:var(--art-controls-search-svg,url('/assets/ui/controls/search.svg')) center/contain no-repeat}.trainer-lookup button{flex:none}
.account-controls .icon-button{position:relative;isolation:isolate;width:48px;height:48px;border:0!important;background:transparent!important;padding:10px!important;border-radius:50%;flex:none}
.account-controls .icon-button:after{content:'';position:absolute;inset:0;background:var(--art-controls-circle-webp,url('/assets/ui/controls/circle.webp')) center/100% 100% no-repeat;image-rendering:pixelated;pointer-events:none;z-index:1}
.account-controls .icon-button img{width:100%;height:100%;object-fit:contain;border:0!important}.account-controls .icon-button img.account-avatar{border-radius:50%}
.avatar,.switch-avatar,.trainer-result-avatar{border:5px solid transparent!important;border-image:none!important;outline:2px solid #9b3bca;outline-offset:1px;border-radius:50%;object-fit:cover}
.pokemon-types{display:inline-flex;gap:7px;align-items:center}.pokemon-types img{box-sizing:content-box;width:21px!important;height:21px!important;object-fit:contain!important;padding:4px;border:0!important;border-radius:50%;background:var(--surface);outline:2px solid #a447cf;outline-offset:0;box-shadow:0 0 0 4px #300c46;margin:4px;vertical-align:middle}
.site-toggle{display:flex;align-items:center;gap:10px;font-size:14px}.site-toggle input{width:20px;height:20px;flex:none}#appearanceSaved{display:inline-block;margin:10px;color:var(--ink)}#adminUserFilter{display:block;width:min(100%,420px);margin:10px 0 18px}#adminUserList [hidden]{display:none!important}
@media(max-width:760px){.account-controls .icon-button{width:44px;height:44px}.rail nav button{min-height:44px}html.site-pixel-text .grid{grid-template-columns:repeat(auto-fill,minmax(135px,1fr))}.site-toggle{align-items:flex-start}select{max-width:100%}.trainer-lookup{width:100%}}

@media(max-width:760px){main>header{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:14px!important}.top-controls{width:100%!important;flex:none!important}.trainer-lookup{flex:1 1 100%!important}.account-controls{align-self:flex-end}}
.pokemon-types img{background-image:var(--art-controls-circle-webp,url('/assets/ui/controls/circle.webp'));background-size:100% 100%;background-repeat:no-repeat;outline:0;box-shadow:none;padding:5px}

input:is([placeholder^="Search"],[aria-label^="Search"]):not(#handleSearch){border:7px solid transparent!important;border-image:var(--art-controls-side-button-webp,url('/assets/ui/controls/side-button.webp')) 160 / 7px stretch!important;border-radius:0!important;padding:8px 12px 8px 37px;background-image:var(--art-controls-search-svg,url('/assets/ui/controls/search.svg'));background-size:21px 21px;background-position:7px center;background-repeat:no-repeat;background-clip:padding-box}
/* Compact rail; leave larger touch targets on mobile. */
@media(min-width:761px){.rail nav button,.rail-footer>button[data-tab]{min-height:37px!important;padding:2px 6px!important;border-width:5px!important;border-image-width:5px!important;margin-block:1px;font-size:11px!important;line-height:1.4!important}.rail .supplied-pixel-icon,.rail .nav-art-icon{width:23px!important;height:23px!important;margin-right:7px}.rail .nav-group{margin-bottom:10px}.rail .nav-heading{padding-top:4px!important;padding-bottom:10px!important;margin-bottom:5px}.rail .brand{margin-bottom:12px}.rail-footer{padding-top:8px!important}}
/* Filled nine-slice artwork for actions, without framing Pokémon/name links. */
:is(button,.button,input[type=submit]):not(:where(.poke,.caught-tile,.icon-button,.pokemon-name-link,.trainer-name-link,.go-pokemon-name,.trainer-card,[data-trainer-card],[data-open-pokemon],[data-open-trainer],.rail nav button,.rail-footer>[data-tab],.game-page-grid>button,.pokemon-option,.pokemon-picker-option,.map-hotspot)){
 border:7px solid transparent!important;border-image:var(--art-controls-button-filled-webp,url('/assets/ui/controls/button-filled.webp')) 140 fill / 7px stretch!important;border-radius:0!important;background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 70%,#241430),color-mix(in srgb,var(--accent) 35%,#170a23))!important;color:#fff6de!important;padding:7px 12px;min-height:38px;line-height:1.45;box-shadow:none;transition:filter .15s,transform .15s}
:is(button,.button,input[type=submit]):not(:disabled):hover{filter:brightness(1.16)}
:is(button,.button,input[type=submit]):not(:disabled):active{transform:translateY(1px)}
.trainer-lookup button{padding:3px 7px!important;min-height:32px;font-size:10px}
button:disabled,.button[aria-disabled=true]{filter:grayscale(.5);opacity:.5}
:is(button,.button,input,select,textarea,summary):focus-visible{outline:2px solid #f8e9a7!important;outline-offset:3px}
input[type=checkbox]{appearance:none!important;display:inline-block!important;width:23px!important;height:23px!important;min-width:23px!important;flex:0 0 23px!important;padding:0!important;border:0!important;border-image:none!important;border-radius:0!important;background:transparent var(--art-controls-checkbox-empty-webp,url('/assets/ui/controls/checkbox-empty.webp')) center/contain no-repeat!important;vertical-align:middle;cursor:pointer;margin:0 7px 0 0!important;image-rendering:pixelated}
input[type=checkbox]:checked{background-image:var(--art-controls-checkbox-checked-webp,url('/assets/ui/controls/checkbox-checked.webp'))!important}
input[type=checkbox]:indeterminate{background-image:var(--art-controls-checkbox-checked-webp,url('/assets/ui/controls/checkbox-checked.webp'))!important;opacity:.65}
input[type=checkbox]:disabled{cursor:default;filter:grayscale(1);opacity:.5}
input[type=radio]{accent-color:#b352e1;width:18px;height:18px}
input[type=range]{accent-color:#b352e1}
/* Native scrollbars retain wheel, keyboard and drag behaviour. */
*{scrollbar-color:#b66aeb #280938;scrollbar-width:auto}
@supports selector(::-webkit-scrollbar){
 *{scrollbar-color:auto!important;scrollbar-width:auto!important}
 ::-webkit-scrollbar{width:17px;height:17px;background:#260836}
 ::-webkit-scrollbar-track{background:#270936;border:4px solid transparent;border-image:var(--art-controls-scroll-track-webp,url('/assets/ui/controls/scroll-track.webp')) 65 35 fill / 4px stretch}
 ::-webkit-scrollbar-thumb{background:#b66aeb;border:4px solid transparent;border-image:var(--art-controls-scroll-thumb-webp,url('/assets/ui/controls/scroll-thumb.webp')) 200 100 fill / 4px stretch;min-height:45px;min-width:45px}
 ::-webkit-scrollbar-thumb:hover{filter:brightness(1.15);background:#d693ff}
 ::-webkit-scrollbar-button:single-button{display:block;width:17px;height:17px;background:#38094d center/contain no-repeat}
 ::-webkit-scrollbar-button:single-button:vertical:decrement{background-image:var(--art-controls-scroll-up-webp,url('/assets/ui/controls/scroll-up.webp'))}
 ::-webkit-scrollbar-button:single-button:vertical:increment{background-image:var(--art-controls-scroll-down-webp,url('/assets/ui/controls/scroll-down.webp'))}
 ::-webkit-scrollbar-button:horizontal{display:none}
 ::-webkit-scrollbar-corner{background:#270936}
}
@media(max-width:760px){input[type=checkbox]{width:25px!important;height:25px!important;min-width:25px!important;flex-basis:25px!important}:is(button,.button){overflow-wrap:anywhere}::-webkit-scrollbar{width:13px;height:13px}}
@media(forced-colors:active){input[type=checkbox]{appearance:auto!important;background:none!important}*{scrollbar-color:auto!important}button,.button{border-image:none!important;border:1px solid ButtonText!important;background:ButtonFace!important;color:ButtonText!important}}
@media(prefers-reduced-motion:reduce){button,.button{transition:none!important}}

.facts>div{border:8px solid transparent!important;border-image:var(--art-controls-solid-bar-webp,url('/assets/ui/controls/solid-bar.webp')) 65 fill / 8px stretch!important;border-radius:0!important;background:color-mix(in srgb,var(--accent) 60%,#29183c)!important;padding:10px 12px;min-width:0}.facts small,.facts strong{color:#fff5ff}.availability-generation{margin:12px 0;border-bottom:1px solid var(--line);padding-bottom:12px}.availability-generation summary{cursor:pointer;padding:8px 0;font-weight:600}.availability-generation summary small{margin-left:10px;letter-spacing:0}.availability-generation>div{display:flex;flex-wrap:wrap;gap:12px 16px;padding:12px 0}html[data-sprite-style^="bw2"] .pokemon-sprite{image-rendering:pixelated!important}

.optional-pixel-icon{display:inline-block;object-fit:contain;image-rendering:pixelated;vertical-align:middle;margin-right:7px;flex:none}.optional-pixel-icon[hidden]{display:none!important}.pixel-icon-settings{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 18px}.pixel-icon-settings>p{grid-column:1/-1}.pixel-icon-settings label{display:flex;align-items:center;gap:6px;margin:4px 0;line-height:1.5}.stat-bars .optional-pixel-icon{width:20px;height:20px;margin-right:4px}.progress-badge .optional-pixel-icon{width:25px;height:25px}.caught-tile small:has(.optional-pixel-icon){letter-spacing:0}.pixel-icon-settings legend{padding-inline:8px}@media(max-width:550px){.pixel-icon-settings{grid-template-columns:1fr}.stat-bars>div{grid-template-columns:110px 25px 1fr}}
.pokemon-types,.type-tags .pokemon-types{display:flex!important;align-items:center!important;justify-content:center!important;gap:8px;width:100%;margin:8px 0;flex-wrap:wrap}
.pokemon-types img,.type-tags img[src*="type-icon"],.type-tags img[data-pixel-kind=types]{display:block;width:30px!important;height:30px!important;max-width:none!important;object-fit:contain!important;object-position:center!important;padding:0!important;margin:0!important;border:0!important;background:none!important;box-shadow:none!important;outline:0!important;flex:none}
.availability-generation>div{padding:8px 0}.availability-game{display:inline-flex;align-items:center;gap:7px}.availability-generation .map-link{font-size:10px;padding:2px 5px;min-height:28px}.map-controls label{flex:1 1 190px;min-width:0}.map-controls select,.map-controls input{width:100%;min-width:0}.map-layout{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(260px,1fr);gap:20px;align-items:start}.area-map{display:grid;grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:14px;padding:18px;background:linear-gradient(90deg,transparent 49%,color-mix(in srgb,var(--accent) 9%,transparent) 50%,transparent 51%),linear-gradient(0deg,transparent 49%,color-mix(in srgb,var(--accent) 9%,transparent) 50%,transparent 51%),var(--surface);background-size:32px 32px;min-height:250px;border:1px solid var(--line)}.map-node{display:flex;flex-direction:column;gap:8px;align-items:center;text-align:center;min-width:0;white-space:normal}.map-node small{letter-spacing:0;color:inherit}.map-node.selected{outline:3px solid var(--accent);outline-offset:3px}.map-node-dot{width:12px;height:12px;background:#fff6de;box-shadow:0 0 0 3px var(--accent)}.map-details{padding:16px;background:var(--surface);border:1px solid var(--line);max-height:75vh;overflow:auto}.map-pokemon-list article{border-bottom:1px solid var(--line);padding:10px 0}.map-species{display:flex;align-items:center;gap:10px;width:100%}.map-empty{grid-column:1/-1}.map-link{white-space:nowrap}#mapGameHeading .game-label{font-size:18px}#mapGameHeading img{width:38px;height:38px}@media(max-width:900px){.map-layout{grid-template-columns:1fr}.map-details{max-height:none}.area-map{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));padding:12px}}

.specimen-sheet{margin-bottom:24px}.specimen-sheet .compact-controls{margin-block:18px}.specimen-sheet input[type=number]{width:100%;min-width:65px;max-width:120px}.ribbon-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:8px;max-height:350px;overflow:auto;padding:10px;margin-top:12px}.ribbon-grid label{display:flex;align-items:center;gap:7px;margin:0;padding:8px;border:1px solid var(--line)}.ribbon-grid small{display:block;letter-spacing:0;font-size:10px}.ribbon-grid [hidden]{display:none!important}.catch-editor-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:10px 16px}.catch-editor-fields label{min-width:0}.specimen-summary{margin-block:20px}.map-page .map-node{overflow-wrap:anywhere}

.avatar,.switch-avatar,.trainer-result-avatar{outline-color:var(--accent)}

.geographic-layout{display:grid;grid-template-columns:minmax(0,2fr) minmax(260px,1fr);gap:20px;align-items:start}.geographic-scroll{overflow:auto;max-height:75vh;border:2px solid var(--accent);background:#163349;min-width:0;overscroll-behavior:contain}.geographic-map{position:relative;min-width:100%;background:#163349;isolation:isolate}.regional-map-image{display:block;width:100%;height:100%;object-fit:contain;image-rendering:auto;user-select:none}.map-hotspot{position:absolute!important;transform:translate(-50%,-50%)!important;border:0!important;border-image:none!important;padding:0!important;margin:0!important;min-height:0!important;width:14px!important;height:14px!important;background:transparent!important;box-shadow:none!important;border-radius:50%!important;z-index:2;overflow:visible!important;color:#fff!important}.hotspot-dot{display:block;width:12px;height:12px;border-radius:50%;background:#ffe16b;border:2px solid #292630;box-shadow:0 1px 3px #000b}.map-hotspot.no-records .hotspot-dot{background:#dce3de;opacity:.7}.map-hotspot.selected .hotspot-dot{background:#fff;outline:3px solid var(--accent);outline-offset:2px}.map-hotspot:hover,.map-hotspot:focus-visible{z-index:5}.map-hotspot:hover .hotspot-dot{background:#fff}.hotspot-label{display:none;position:absolute;bottom:17px;left:50%;transform:translateX(-50%);white-space:nowrap;background:#111d2bee;color:#fff;padding:5px 7px;border:1px solid #d9e3ef;font:12px/1.4 'Segoe UI',sans-serif;border-radius:3px;pointer-events:none}.map-hotspot:hover .hotspot-label,.map-hotspot:focus-visible .hotspot-label,.show-labels .hotspot-label{display:block}.show-labels .hotspot-label{font-size:10px;padding:2px 4px;bottom:13px}.map-zoom-controls{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.map-zoom-controls label{display:flex;align-items:center;gap:6px;margin:0 10px}.map-area-shortcuts button{font-size:11px;margin:5px}.map-details article{padding:10px 0;border-bottom:1px solid var(--line)}.map-details h4{margin:20px 0 10px}@media(max-width:1050px){.geographic-layout{grid-template-columns:1fr}.geographic-scroll{max-height:70vh}.map-hotspot{width:12px!important;height:12px!important}.hotspot-dot{width:10px;height:10px}}

.geographic-layout>div{min-width:0}.map-controls select{max-width:100%}
