:root{font-family:Courier New,Courier,monospace;color:#e8e8e8;background:#030303;color-scheme:dark;font-synthesis:none;--line: #555859;--muted: #9b9e9f;--panel: #121415;--active: #d3d6d6}*{box-sizing:border-box}body{margin:0;min-width:320px;background-image:linear-gradient(#c7d9df04 1px,transparent 1px),linear-gradient(90deg,#c7d9df04 1px,transparent 1px);background-size:32px 32px}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{color:inherit;background:none;border:0;cursor:pointer}a{color:inherit}button:disabled{cursor:wait;opacity:.4}button:focus-visible,a:focus-visible,select:focus-visible,input:focus-visible,summary:focus-visible{outline:2px solid #d4e2e6;outline-offset:4px}svg{width:18px;height:18px;flex-shrink:0}.topbar{max-width:1120px;margin:28px auto 22px;padding:0 24px}.app-link{display:inline-flex;align-items:center;gap:14px;padding:11px 16px;border:1px solid #acb1b2;outline:1px solid #414445;outline-offset:3px;background:linear-gradient(#ffffff05 50%,transparent 50%),#141617;background-size:100% 4px;text-decoration:none}.app-link:hover{background-color:#25292b}.app-link h1{font-size:17px;font-weight:400;letter-spacing:2px;margin:0}.app-link>span{color:#999f9f;font-size:12px;margin-left:17px}.app-pixel{width:22px;height:22px;image-rendering:pixelated}main{max-width:1120px;margin:auto;padding:0 24px 28px}.workshop{display:grid;grid-template-columns:1.03fr 1fr;gap:18px;align-items:start}.catalog,.builder{border:1px solid #838788;outline:1px solid #242728;outline-offset:3px;background:var(--panel);padding:18px;min-width:0;box-shadow:inset 0 0 0 3px #030303}.search{display:flex;gap:10px;align-items:center;border:1px solid var(--line);background:#090b0c;padding:11px 12px}.search svg{color:#afb4b5;width:16px;height:16px}.search input{width:100%;border:0;outline:none;background:none;font-size:12px;color:#e8e8e8}.search input::placeholder{color:#8d9497}.search button{padding:0;display:flex}.catalog-tabs{display:flex;gap:18px;padding:16px 0;font-size:11px}.catalog-tabs button{padding:0 0 5px;border-bottom:1px solid transparent;color:#a0a5a7}.catalog-tabs button[aria-pressed=true]{color:#eceeee;border-color:#eceeee}.pokemon-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;max-height:527px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#656b6d #111;padding:2px}.pokemon{border:1px solid #393f41;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:end;height:104px;padding:12px 3px 10px;background:#0a0c0d}.pokemon:hover{background:#252b2e;border-color:#969fa3}.pokemon.selected{background:#2d3539;border-color:#c8d3d8;box-shadow:inset 0 0 0 2px #080a0b}.dex{position:absolute;top:7px;left:7px;font-size:9px;color:#929ca1}.pokemon img{image-rendering:pixelated;width:44px;height:44px;object-fit:contain;margin-bottom:9px}.portrait-placeholder{font-size:31px;color:#79878c;margin-bottom:7px}.pokemon-name{font-size:10px;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.selected-dot{position:absolute;width:4px;height:4px;background:#d9e3e6;right:7px;top:8px}.empty{grid-column:1/-1;text-align:center;padding:36px 12px;font-size:12px;line-height:1.8;color:#b4bdc1}.load-more{width:100%;margin-top:15px;font-size:12px;padding:8px;border:1px solid var(--line)}.pet-title{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);margin:-8px -8px 14px;padding:9px 10px 10px;background:linear-gradient(#ffffff04 50%,transparent 50%),#0a0c0d;background-size:100% 4px}.pet-title h2{font:inherit;font-size:15px;letter-spacing:1.5px;margin:0}.pet-title h2>span{font-size:10px;letter-spacing:0;margin-left:12px;color:#9ca7ac}.stage{height:285px;border:1px solid #3e464a;background-color:#0b0d0e;background-image:linear-gradient(45deg,#171b1d 25%,transparent 25%),linear-gradient(-45deg,#171b1d 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#171b1d 75%),linear-gradient(-45deg,transparent 75%,#171b1d 75%);background-size:16px 16px;background-position:0 0,0 8px,8px -8px,-8px 0;display:flex;flex-direction:column;position:relative;overflow:hidden}.stage:after{content:"";position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(transparent 0px,transparent 3px,#00000014 3px,#00000014 4px)}.stage-top{display:flex;align-items:center;justify-content:space-between;padding:12px;font-size:10px;color:#bdc6ca;z-index:1}.stage-top>span{display:flex;gap:7px;align-items:center}.stage-top i{height:4px;width:4px;background:#aebdc4}.stage-top button{padding:3px;display:flex}.stage-top svg{width:14px;height:14px}.stage-center{flex:1;min-height:0;display:flex;flex-direction:column;align-items:center;justify-content:center;padding-bottom:32px;position:relative}.sprite{width:172px;height:172px;image-rendering:pixelated;position:relative;z-index:1}.pet-shadow{height:5px;width:76px;background:#0008;margin-top:10px}.loading{display:flex;flex-direction:column;align-items:center;gap:15px;font-size:11px;color:#bcc6cc}.loading>span{font-size:24px}.build-error{text-align:center;padding:20px;font-size:12px;line-height:1.7}.build-error button{border-bottom:1px solid;padding:2px}.state-tabs{display:flex;flex-wrap:wrap;gap:5px;margin:13px 0 18px}.state-tabs button{font-size:10px;padding:6px 7px;color:#aab5ba;border:1px solid #444e53}.state-tabs button[aria-pressed=true]{background:#c0cbd0;color:#090c0e;border-color:#dbe2e6}.selectors{display:grid;grid-template-columns:1fr 1fr;gap:12px}.selectors label{font-size:10px;letter-spacing:.5px;color:#b2bcc1;display:flex;flex-direction:column;gap:7px}.selectors select{font-size:12px;min-width:0;width:100%;border:1px solid #555f64;border-radius:0;padding:10px 8px;background:#0a0d0f;color:#e2e7eb}.actions{display:flex;gap:9px;margin-top:21px}.primary{flex:1;display:flex;align-items:center;justify-content:center;gap:10px;background:#c8ced1;color:#080a0b;border:1px solid #f2f2f2;box-shadow:inset 0 0 0 2px #acb5ba;padding:12px 10px;font-size:11px;text-decoration:none}.primary:hover{background:#edf1f2}.primary svg{width:15px;height:15px}.download{display:flex;align-items:center;justify-content:center;gap:8px;border:1px solid #69777f;padding:11px 10px;font-size:11px;text-decoration:none;white-space:nowrap}.download:hover{background:#263137}.download svg{width:14px;height:14px}.disabled{pointer-events:none;opacity:.4}.credits{margin-top:17px;font-size:10px;color:#aeb8bd;line-height:1.8}.credits summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;color:#cbd3d7}.credits summary::-webkit-details-marker{display:none}.credits summary>span{color:#828f97}.credits p{margin-bottom:0}.modal-backdrop{position:fixed;inset:0;background:#000a;z-index:10}.modal{color:#e8e8e8;background:#131719;border:1px solid #b7c1c6;outline:1px solid #69767e;outline-offset:3px;padding:30px;width:calc(100% - 40px);max-width:520px;max-height:calc(100% - 40px);box-shadow:inset 0 0 0 3px #080a0b}.modal::backdrop{background:#000b}.modal h2{font-size:19px;font-weight:400;letter-spacing:1px;margin:0 0 20px}.modal p{font-size:12px;line-height:1.8;color:#b7c1c6}.modal ol{font-size:12px;padding-left:18px}.modal li{padding-left:6px;margin:22px 0}.modal code{font-size:11px;color:#e2e6e8;background:#252e34;padding:2px 4px;overflow-wrap:anywhere;-webkit-user-select:all;user-select:all}.modal-close{position:absolute;right:13px;top:13px;display:flex;padding:3px;border:1px solid #69777f}@media(max-width:900px){.workshop{grid-template-columns:1fr 1fr;gap:14px}.catalog,.builder{padding:14px}.pokemon-grid{grid-template-columns:repeat(3,minmax(0,1fr));max-height:578px}.actions{flex-direction:column}.state-tabs{gap:4px}.state-tabs button{font-size:9px;padding:6px}}@media(max-width:650px){.topbar{margin:22px auto 20px;padding:0 18px}main{padding:0 18px 24px}.workshop{grid-template-columns:1fr;gap:20px}.pokemon-grid{grid-template-columns:repeat(4,minmax(0,1fr));max-height:218px}.pokemon{height:101px}.catalog-tabs{padding:14px 0}.stage{height:275px}.actions{flex-direction:row}.primary,.download{font-size:10px;padding:11px 9px}.app-link h1{font-size:15px}.app-link{padding:9px 12px}.modal{padding:27px 22px}.credits{font-size:10px}}
