:root{--bg:#07110d;--panel:#0c1813;--panel-2:#111f19;--line:#203229;--text:#f2f6f3;--muted:#82958b;--green:#9be66e;--yellow:#e9cf59;--danger:#e36e61;--electric:#e0cf54;--accent:#bce768;font-family:Manrope,system-ui,sans-serif;color:var(--text);background:var(--bg);font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:radial-gradient(circle at 60% 10%,#15241b 0,transparent 28%),var(--bg);overflow-x:hidden}.noise{position:fixed;inset:0;opacity:.025;pointer-events:none;z-index:30;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}.topbar{height:70px;display:grid;grid-template-columns:280px 1fr 280px;align-items:center;border-bottom:1px solid var(--line);background:rgba(7,17,13,.94);position:sticky;top:0;z-index:20;padding:0 24px}.brand{display:flex;gap:11px;align-items:center;color:#fff;text-decoration:none;font-size:14px;letter-spacing:2px;font-weight:800}.brand strong{color:var(--green)}.brand-mark{width:28px;height:28px;border:2px solid var(--green);border-radius:50%;display:grid;place-items:center;box-shadow:0 0 20px #9be66e33}.brand-mark:before,.brand-mark:after{content:"";position:absolute}.brand-mark:before{width:24px;height:2px;background:var(--green)}.brand-mark i{width:7px;height:7px;border:2px solid var(--green);border-radius:50%;background:var(--bg);z-index:1}.main-nav{display:flex;align-self:stretch;justify-content:center;gap:25px}.nav-item{font:600 13px Manrope;color:var(--muted);border:0;background:none;padding:0 8px;position:relative;cursor:pointer}.nav-item.active{color:var(--text)}.nav-item.active:after{content:"";position:absolute;height:2px;left:8px;right:8px;bottom:0;background:var(--green);box-shadow:0 -3px 12px var(--green)}.nav-item span:not([data-i18n]):not(.map-nav-icon){background:#21372b;color:var(--green);font-size:9px;border-radius:10px;padding:2px 5px;margin-left:3px}.player-bar{display:flex;justify-content:flex-end;align-items:center;gap:22px}.currency{font:500 12px DM Mono;color:#d9e3dc}.currency span{color:#f4cd56}.profile{display:flex;align-items:center;gap:9px;text-align:right}.profile div{display:grid}.profile b{font-size:11px}.profile small{font-size:9px;color:var(--muted)}.avatar{width:33px;height:33px;border-radius:50%;background:linear-gradient(135deg,#8fba63,#355b43);display:grid;place-items:center;font-size:12px;font-weight:800;border:1px solid #b4e77e66}.view{display:none}.view.active{display:grid}.app-shell{grid-template-columns:270px minmax(480px,1fr) 300px;min-height:calc(100vh - 70px)}.panel{background:rgba(10,24,18,.9)}.routes-panel{border-right:1px solid var(--line);padding:25px 18px}.panel-heading{display:flex;justify-content:space-between;align-items:center}.eyebrow{display:block;font:500 9px DM Mono;letter-spacing:1.6px;text-transform:uppercase;color:var(--green);margin-bottom:5px}h2{font-size:17px;margin:0}.icon-button,.sound-button{border:1px solid var(--line);background:#13231b;color:var(--muted);border-radius:7px;width:29px;height:29px;cursor:pointer}.range-switch{display:flex;gap:4px;margin:22px 0 13px;overflow-x:auto;scrollbar-width:none}.range-switch button{border:1px solid transparent;background:#111f19;color:#64786d;border-radius:5px;padding:7px 8px;font:500 9px DM Mono;white-space:nowrap;cursor:pointer}.range-switch button.active{border-color:#91d66655;color:var(--green);background:#1b3022}.search-box{height:34px;border:1px solid var(--line);display:flex;align-items:center;border-radius:6px;padding:0 10px;color:var(--muted);margin-bottom:10px}.search-box input{width:100%;border:0;outline:0;color:#cbd7cf;background:none;padding-left:8px;font:500 11px Manrope}.route-list{display:grid;gap:5px;max-height:calc(100vh - 245px);overflow:auto;padding-right:4px}.route-list::-webkit-scrollbar{width:4px}.route-list::-webkit-scrollbar-thumb{background:#263a30;border-radius:3px}.route-button{display:grid;grid-template-columns:34px 1fr auto;align-items:center;text-align:left;border:1px solid transparent;background:transparent;color:#dce6df;border-radius:7px;padding:8px;cursor:pointer;transition:.2s}.route-button:hover{background:#122219}.route-button.active{background:linear-gradient(90deg,#1d3425,#132219);border-color:#87cc5a3d}.type-icon{width:29px;height:29px;border-radius:7px;display:grid;place-items:center;color:#08120d;font-size:13px;font-weight:800}.route-button b{display:block;font-size:11px;text-transform:capitalize}.route-button small{display:block;font:400 8px DM Mono;color:var(--muted);margin-top:2px}.route-button em{font:500 8px DM Mono;color:#819288}.battle-stage{min-width:0;display:flex;flex-direction:column;background:#09130f}.stage-topline{height:44px;display:flex;align-items:center;justify-content:space-between;padding:0 18px;font:500 9px DM Mono;color:#8fa197;letter-spacing:1px}.live-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--green);box-shadow:0 0 9px var(--green);margin-right:8px}.environment{height:clamp(420px,61vh,600px);position:relative;overflow:hidden;background:linear-gradient(#263e35 0%,#496653 42%,#1a2b20 43%,#0f1c16 100%);border-block:1px solid #31483c}.environment:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 70% 27%,#e4e29d40 0 3%,transparent 4%),linear-gradient(110deg,transparent 20%,#dceaa40c 45%,transparent 65%)}.environment-electric{--route-glow:#e0cf54}.mountain{position:absolute;left:-10%;right:-10%;bottom:39%;height:45%;clip-path:polygon(0 100%,0 65%,12% 32%,23% 76%,36% 22%,49% 70%,62% 14%,74% 65%,86% 30%,100% 70%,100% 100%)}.mountain-back{background:#1c312a;opacity:.55;transform:translateY(-35px) scale(1.1)}.mountain-front{background:#223d30}.battle-ground{position:absolute;left:0;right:0;bottom:0;height:42%;background:radial-gradient(ellipse at 52% 48%,#66805555 0 16%,transparent 17%),linear-gradient(170deg,#1d3526,#0d1a13)}.battle-ground:after{content:"";position:absolute;inset:0;opacity:.13;background-image:radial-gradient(#cbd6af 1px,transparent 1px);background-size:18px 17px}.mist{position:absolute;width:70%;height:14%;background:#cfe0c71a;filter:blur(16px);border-radius:50%}.mist-one{top:37%;left:-20%}.mist-two{top:25%;right:-30%}.combatant{position:absolute;z-index:3}.enemy-unit{right:13%;top:20%;width:190px}.player-unit{left:12%;bottom:15%;width:210px}.sprite-aura{display:grid;place-items:center;position:relative}.sprite-aura:after{content:"";position:absolute;z-index:-1;width:85%;height:35%;bottom:5%;border-radius:50%;background:#02070455;filter:blur(5px)}.sprite-aura img{width:145px;height:145px;object-fit:contain;image-rendering:auto;filter:drop-shadow(0 12px 10px #0008);transition:.2s}.enemy-aura img{transform:scaleX(-1)}.attacking .player-aura img{animation:attack .35s ease}.hit .enemy-aura img{animation:hit .35s ease}.nameplate{background:#09130eea;border:1px solid #35493d;border-radius:6px;padding:7px 9px;display:flex;justify-content:space-between;align-items:center;box-shadow:0 8px 20px #0004}.nameplate b{display:block;font-size:11px}.nameplate span{display:block;font:500 7px DM Mono;color:var(--route-glow);margin-top:2px}.nameplate em{font:500 9px DM Mono;color:#dbe5de;font-style:normal}.hp-bar{height:4px;background:#0a100d;border:1px solid #304238;border-radius:5px;margin:4px 8px 0;overflow:hidden}.hp-bar i{display:block;height:100%;width:100%;background:linear-gradient(90deg,#55af60,#a6df68);transition:width .25s}.player-hp i{background:#6fc67c}.damage-number{position:absolute;z-index:8;right:22%;top:44%;font:800 20px DM Mono;color:#f8e9b2;text-shadow:0 2px 5px #000;opacity:0}.damage-number.show{animation:damage .7s ease}.battle-status{position:absolute;z-index:5;left:50%;bottom:6%;transform:translateX(-50%);width:220px;text-align:center}.battle-status span{font:600 8px DM Mono;color:#d6e0d9;letter-spacing:1.5px}.battle-status small{display:block;color:#71857a;font-size:8px;margin-top:5px}.battle-progress{height:3px;background:#1a2b22;margin-top:5px;border-radius:4px;overflow:hidden}.battle-progress i{display:block;height:100%;background:var(--route-glow);box-shadow:0 0 10px var(--route-glow);width:0}.battle-log{margin:13px 15px 16px;border:1px solid var(--line);border-radius:7px;flex:1;min-height:100px;padding:11px 14px;overflow:hidden}.log-heading{display:flex;justify-content:space-between;font-size:9px;color:#819489;text-transform:uppercase;letter-spacing:1px}.log-heading button{border:0;background:0;color:#61746a;font:500 8px DM Mono;cursor:pointer}.log-entries{font:400 9px/1.7 DM Mono;margin-top:8px;color:#9caf9f;max-height:76px;overflow:auto}.log-entry span{color:#53675c;margin-right:9px}.log-entry strong{color:var(--green);font-weight:500}.controls-panel{border-left:1px solid var(--line);padding:25px 19px}.controls-panel>h2{margin-bottom:19px}.control-card{background:#101f18;border:1px solid var(--line);border-radius:8px;padding:12px;margin-bottom:9px}.active-card{border-color:#8fd05b44}.control-title{display:grid;grid-template-columns:32px 1fr auto;gap:9px;align-items:center}.control-icon{width:31px;height:31px;border-radius:7px;background:#223b29;color:var(--green);display:grid;place-items:center}.control-icon.capture{color:#ebb865}.control-title b{display:block;font-size:10px}.control-title small{display:block;color:#71847a;font-size:8px;margin-top:2px}.switch input{display:none}.switch span{display:block;width:29px;height:16px;background:#28382f;border-radius:20px;position:relative;cursor:pointer;transition:.2s}.switch span:after{content:"";position:absolute;width:10px;height:10px;border-radius:50%;background:#74847b;left:3px;top:3px;transition:.2s}.switch input:checked+span{background:#3d693e}.switch input:checked+span:after{left:16px;background:#a9eb79}.capture-options{opacity:.35;pointer-events:none;border-top:1px solid var(--line);margin-top:11px;padding-top:10px}.capture-options.enabled{opacity:1;pointer-events:auto}.capture-options>label{font-size:8px;color:#75887d}.select-like{display:flex;gap:5px;margin-top:7px}.select-like button{flex:1;border:1px solid var(--line);background:#0b1711;color:#87998f;border-radius:5px;padding:6px 4px;font:500 8px Manrope;cursor:pointer}.select-like button.selected{border-color:#83c45566;color:#dce8df}.select-like em{font:500 7px DM Mono;color:#5f7469;display:block}.ball{display:inline-block;width:9px;height:9px;border-radius:50%;margin-right:4px;background:linear-gradient(#df5d53 0 45%,#222 46% 55%,#eee 56%)}.ball.great{background:linear-gradient(#508cd1 0 45%,#222 46% 55%,#eee 56%)}.vip-card{background:linear-gradient(140deg,#18201b,#171d16);border-color:#927d3540}.vip-heading{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:7px}.vip-heading>span{font:600 7px DM Mono;color:#f3d46b;border:1px solid #f3d46b55;padding:3px;border-radius:3px}.vip-heading b{font-size:10px}.vip-card p{font-size:8px;line-height:1.5;color:#829288}.vip-choices{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;margin:9px 0}.vip-choice{position:relative;border:1px solid #29382f;background:#0d1712;border-radius:5px;padding:3px;opacity:.4;cursor:pointer}.vip-choice.enabled{opacity:1}.vip-choice.selected{border-color:#d8ba4e}.vip-choice img{display:block;width:100%;height:40px;object-fit:contain}.vip-choice small{display:block;text-align:center;font-size:6px;overflow:hidden;text-overflow:ellipsis}.vip-note{font-size:7px;color:#b49b52}.journey-stats{display:grid;grid-template-columns:1fr 1fr;margin:15px 2px;border-block:1px solid var(--line)}.journey-stats div{padding:10px 5px}.journey-stats span{display:block;color:#71847a;font-size:7px;text-transform:uppercase}.journey-stats b{font:500 12px DM Mono;color:#dce7df}.leave-route{width:100%;border:1px solid #8b554c;background:#241814;color:#d89180;border-radius:6px;padding:10px;font:600 9px Manrope;text-transform:uppercase;letter-spacing:.8px;cursor:pointer}.simple-view{min-height:calc(100vh - 70px);padding:55px max(7vw,30px);display:none!important}.simple-view.active{display:block!important}.simple-header h1,.city-card h1{font-size:36px;margin:0 0 8px}.simple-header p,.city-card p{color:var(--muted);font-size:13px}.collection-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:13px;margin-top:35px}.pokemon-card{background:#101e18;border:1px solid var(--line);border-radius:12px;padding:16px;position:relative;overflow:hidden}.pokemon-card:after{content:"";position:absolute;width:100px;height:100px;border-radius:50%;right:-45px;top:-40px;background:var(--rarity);opacity:.12;filter:blur(10px)}.pokemon-card img{width:100%;height:115px;object-fit:contain}.pokemon-card h3{font-size:14px;margin:7px 0 2px}.pokemon-card>.rarity{font:500 8px DM Mono;color:var(--rarity);text-transform:uppercase}.iv-total{font:600 10px DM Mono;color:#bdc9c1;float:right}.iv-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;margin-top:10px}.iv-grid span{font:500 7px DM Mono;color:#6f8478;background:#0a1510;padding:5px;border-radius:4px}.empty-collection{grid-column:1/-1;border:1px dashed #2b4034;border-radius:10px;padding:50px;text-align:center;color:#6e8177}.city-card{max-width:850px;margin:40px auto;text-align:center}.coming-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:35px 0}.coming-grid article{background:#101e18;border:1px solid var(--line);padding:25px 10px;border-radius:10px;display:grid;gap:6px}.coming-grid article>span{font-size:25px;color:var(--green)}.coming-grid b{font-size:11px}.coming-grid small{color:var(--muted);font-size:8px}.city-card>em{font:500 9px DM Mono;color:#ddbf5c;font-style:normal}.starter-modal{position:fixed;inset:0;z-index:50;background:radial-gradient(circle at 50% 50%,#193024 0,#07100ceF 56%);display:grid;place-items:center;padding:25px}.starter-modal.hidden{display:none}.starter-content{text-align:center;max-width:800px}.starter-content h1{font-size:38px;margin:8px 0}.starter-content>p{color:var(--muted);font-size:12px}.starter-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:30px 0 20px}.starter-grid button{position:relative;border:1px solid #294035;background:linear-gradient(145deg,#14231b,#0d1913);color:#fff;border-radius:14px;padding:20px;cursor:pointer;transition:.25s}.starter-grid button:hover{transform:translateY(-5px);border-color:var(--accent);box-shadow:0 12px 40px #0008}.starter-grid img{display:block;width:150px;height:150px;object-fit:contain;margin:auto;filter:drop-shadow(0 10px 8px #0007)}.starter-grid b{display:block;font-size:16px}.starter-grid small{font:500 8px DM Mono;color:#84978b}.starter-number{position:absolute;left:14px;top:12px;font:500 9px DM Mono;color:#52675b}.save-note{font:400 8px DM Mono;color:#596d62}.toast{position:fixed;z-index:60;left:50%;bottom:25px;transform:translate(-50%,20px);background:#ecf5ee;color:#122019;padding:10px 16px;border-radius:6px;font-size:10px;font-weight:700;opacity:0;pointer-events:none;transition:.25s}.toast.show{opacity:1;transform:translate(-50%,0)}@keyframes attack{50%{transform:translate(45px,-12px) rotate(5deg)}}@keyframes hit{30%{filter:brightness(2) drop-shadow(0 0 12px #fff);transform:scaleX(-1) translateX(-8px)}}@keyframes damage{0%{opacity:0;transform:translateY(8px)}30%{opacity:1}100%{opacity:0;transform:translateY(-30px)}}@media(max-width:1050px){.app-shell{grid-template-columns:220px 1fr}.controls-panel{grid-column:1/-1;border-left:0;border-top:1px solid var(--line);display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.controls-panel>.eyebrow,.controls-panel>h2{grid-column:1/-1}.journey-stats{margin:0}.topbar{grid-template-columns:200px 1fr 190px}}@media(max-width:720px){.topbar{grid-template-columns:1fr auto;height:60px;padding:0 13px}.main-nav{position:fixed;z-index:40;bottom:0;left:0;right:0;height:55px;background:#0b1712;border-top:1px solid var(--line)}.player-bar{display:none}.app-shell{display:block!important;padding-bottom:55px}.routes-panel{border-right:0}.route-list{max-height:245px;grid-template-columns:1fr 1fr}.battle-stage{min-height:630px}.controls-panel{display:block}.environment{height:430px}.enemy-unit{right:6%}.player-unit{left:5%}.starter-grid{grid-template-columns:1fr}.starter-grid img{height:100px}.starter-content{overflow:auto;max-height:95vh}.starter-content h1{font-size:27px}.coming-grid{grid-template-columns:1fr 1fr}.simple-view{padding:35px 20px 80px}}
