:root{font-family:Verdana,Arial,sans-serif;color:#2d4438;background:#f1ede2;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-width:315px;background:radial-gradient(ellipse at 20% 4%,#fff8e9 0%,transparent 40%),#f1ede2}button{font:inherit;cursor:pointer;touch-action:manipulation}button:focus-visible{outline:3px solid #e1a344;outline-offset:2px}.shell{max-width:1410px;margin:auto;padding:0 22px}.topbar{display:flex;align-items:center;gap:22px;min-height:102px;border-bottom:1px solid #d5d7c7}.brand{display:flex;align-items:center;gap:14px}.brand-name{font-size:32px;font-weight:1000;letter-spacing:-2px;line-height:.95;color:#254f43;text-shadow:0 2px #f6fbef}.brand-name span{color:#ca8254}.brand p{font-size:9px;font-weight:900;letter-spacing:1.8px;margin:7px 0 0;color:#72907c}.emblem{width:51px;height:51px;background:#295746;border:3px solid #1c4236;border-radius:14px;box-shadow:inset 0 0 0 3px #e7c88a,3px 4px #d7d0b6;display:grid;place-items:center}.emblem span{display:block;width:27px;height:27px;border:5px solid #e8e5cb;border-top-color:#d76e5d;border-radius:50%;position:relative}.emblem span:after{content:'';position:absolute;inset:6px;background:#f5dcac;border-radius:50%}.header-meta{font-size:10px;letter-spacing:1.3px;color:#537563;font-weight:900;margin-left:auto;white-space:nowrap}.live-dot,.toolbar-dot{display:inline-block;width:8px;height:8px;background:#68a97a;border-radius:50%;margin-right:4px;box-shadow:0 0 0 3px #d4e7cf}.version{padding:6px 9px;border-radius:5px;background:#e4e5d2;margin-left:10px;color:#47725e}.top-actions{display:flex;gap:6px}.small-btn{border:1px solid #d2d9c8;background:#fffdf4;color:#4f6e5a;border-radius:8px;padding:11px;font-size:10px;font-weight:900;letter-spacing:.5px}.small-btn:hover{background:#e8f0df}.layout{display:grid;grid-template-columns:minmax(0,1fr) 325px;gap:20px;margin-top:23px}.left-column{min-width:0}.game-frame{background:#2b493d;border:7px solid #2d5547;border-radius:16px;box-shadow:0 12px 0 #d4d4bd,0 22px 34px #4f655528;overflow:hidden}.frame-top{height:60px;display:flex;align-items:center;justify-content:space-between;padding:7px 15px;color:#f1ead5;background:#365f4f}.region-chip{display:flex;align-items:center;gap:9px}.region-icon{width:34px;height:34px;display:grid;place-items:center;font-size:23px;color:#e9bc6d;background:#294c40;border-radius:8px}.region-chip strong{font-size:12px;display:block;letter-spacing:.4px}.region-chip small{display:block;margin-top:4px;color:#c1d7c3;font-size:10px}.frame-top-right{font-family:monospace;font-size:10px;color:#c6d6ba;display:flex;gap:12px;white-space:nowrap}#saveState{color:#b8eeb0}.canvas-shell{position:relative;overflow:hidden;background:#8eb673;line-height:0}.canvas-shell canvas{width:100%;height:auto;display:block;aspect-ratio:5/3;image-rendering:pixelated;image-rendering:crisp-edges;cursor:crosshair;touch-action:manipulation}.map-tag{position:absolute;top:13px;left:13px;background:#263f35e9;border:1px solid #7a9a74;border-radius:5px;font-size:9px;font-weight:900;letter-spacing:.5px;padding:9px 11px;color:#f7e7ca;line-height:1}.watermark{position:absolute;right:12px;bottom:12px;background:#263c38ab;border-radius:3px;padding:6px;color:#d9dbb7;font-family:monospace;font-size:9px}.game-toolbar{height:35px;display:flex;align-items:center;justify-content:space-between;background:#25483d;color:#c7e5c8;font-size:9px;font-weight:900;letter-spacing:1px;padding:0 17px}.game-toolbar .toolbar-dot{width:6px;height:6px;box-shadow:none}.toast{position:absolute;bottom:37px;left:50%;transform:translate(-50%,10px);white-space:normal;min-width:160px;max-width:90%;background:#273f36ee;border:2px solid #e7c77e;color:#fff6de;font:700 12px/1.5 Verdana;text-align:center;padding:10px 13px;border-radius:7px;opacity:0;transition:all .2s;pointer-events:none}.toast.visible{opacity:1;transform:translate(-50%,0)}.controls-hint{display:flex;justify-content:center;flex-wrap:wrap;gap:15px;color:#748270;font:800 10px/1.4 Verdana;padding:30px 8px}.controls-hint>span{display:flex;align-items:center;gap:5px}kbd{border:1px solid #cccfbf;box-shadow:0 2px #cccbbb;border-radius:5px;background:#fffdf5;color:#587261;padding:5px 7px;font-size:9px}.mobile-actions{display:none}.sidebar{display:flex;flex-direction:column;gap:13px}.panel{border:1px solid #d6ddca;background:#fffdf6;border-radius:11px;padding:15px;box-shadow:0 4px 0 #dfe1d0}.panel-caption{color:#66806c;font-weight:1000;letter-spacing:1px;font-size:10px;display:flex;align-items:center;justify-content:space-between;margin-bottom:15px}.panel-caption>span{font-size:9px;color:#849c87}.sparkle{font-size:18px!important;color:#bfaa72!important}.trainer-row{display:flex;align-items:center;gap:12px}.trainer-icon{width:49px;height:49px;display:grid;place-items:center;font-size:25px;background:#deeadb;border:2px solid #d0dfcb;border-radius:10px}.trainer-detail strong{font-size:13px}.subline{color:#8a987c;font:700 10px monospace;margin-top:7px}.progress-rail{background:#e4e9dd;height:7px;border-radius:8px;overflow:hidden;margin-top:9px}.progress-fill{height:100%;width:0%;transition:width .24s}.xp-fill,.poke-xp-fill{background:#6ab5cf}.currency-row{display:grid;grid-template-columns:repeat(3,1fr);margin-top:16px;padding-top:14px;border-top:1px dashed #dfdfd2}.currency-row>div{color:#55735e;display:flex;align-items:center;gap:3px;flex-wrap:wrap;font-weight:bold;font-size:16px}.currency-row small{font-size:8px;width:100%;color:#93a08b;letter-spacing:.5px}.active-head{display:flex;align-items:center;gap:14px;margin-top:-5px}.active-head canvas{background:#e8f0dc;border-radius:11px;border:2px solid #cfe0c8;image-rendering:pixelated;flex-shrink:0}.active-head strong{display:block;font-size:18px;letter-spacing:-.7px}.active-head small{display:block;color:#7e9b7c;font-size:9px;font-weight:900;margin:8px 0}.active-level{display:inline-block;background:#edf0d9;color:#56876d;padding:5px 8px;font-size:10px;border-radius:5px;font-weight:900}.inline-badge{background:#e1f1d7;color:#4f9a65!important;padding:4px 6px;border-radius:5px}.inline-badge.disabled{background:#e9e7e0;color:#949494!important}.bar-title{display:flex;justify-content:space-between;font-family:monospace;font-size:10px;font-weight:900;color:#8a9b8c;margin-top:13px}.hp-rail{height:10px}.hp-fill{background:#73b97a;width:100%}.hp-fill.low{background:#dca45c}.hp-fill.critical{background:#d46766}.move-line{margin-top:13px;border-top:1px dashed #e4e4d5;padding-top:11px;color:#839282;font-size:9px;letter-spacing:.3px}.move-line strong{color:#435e4b}.party-list{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.party-slot{border:1px solid #dde3d2;border-radius:8px;background:#f2f5e8;padding:5px;min-height:94px;text-align:center;color:#4f6a56;display:flex;flex-direction:column;align-items:center;transition:all .15s}.party-slot:hover{border-color:#8bbba0}.party-slot.selected{background:#e2f0de;border:2px solid #6b9d78;padding:4px}.party-slot:disabled{opacity:.4;cursor:default}.party-slot canvas{image-rendering:pixelated;max-width:100%}.party-slot strong{font-size:9px;line-height:1.1;width:100%;overflow:hidden;text-overflow:ellipsis}.party-slot small{color:#7c987e;font-size:9px;margin-top:3px}.party-footer{font:10px/1.5 Verdana;color:#7d927b;padding-top:12px}.party-footer strong{color:#385b45}.minimap-holder{background:#8cae83;border:3px solid #d4dfc5;border-radius:8px;overflow:hidden}.minimap-holder canvas{width:100%;display:block;image-rendering:pixelated}.map-key{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.map-key span{font-size:8px;color:#738775;font-weight:900}.map-key i{display:inline-block;width:8px;height:8px;margin-right:3px}.log-lines{max-height:115px;overflow:auto;display:flex;flex-direction:column;gap:6px;color:#758778;font-size:10px;line-height:1.5}.log-lines>div{border-bottom:1px solid #f0f0e9;padding-bottom:4px}.log-lines>div:first-child{color:#476b51}.text-danger{background:transparent;border:none;font-weight:900;font-size:9px;color:#be7d70}.footer{border-top:1px solid #daddd0;text-align:center;margin:28px 0 0;padding:21px 0;color:#9aa595;font-size:9px;font-weight:900;letter-spacing:1px}.overlay{position:fixed;inset:0;z-index:10;display:grid;place-items:center;padding:20px;background:rgba(22,43,34,.77);backdrop-filter:blur(4px)}.overlay.hidden{display:none}.modal{position:relative;background:#fffcf1;border:6px solid #e4d5aa;box-shadow:0 0 0 3px #466e56,0 20px 70px #0d1d18a0;border-radius:19px;text-align:center;padding:33px;max-height:94vh;overflow-y:auto}.starter-modal{width:min(690px,100%)}.welcome-kicker{color:#b18b4c;font-size:11px;font-weight:1000;letter-spacing:2px}.modal h1{font-size:38px;line-height:1.1;letter-spacing:-1px;color:#294f41;margin:15px 0}.modal h1 em{font-style:normal;color:#d48258}.modal h2{font-size:27px;color:#2b5948;margin:13px 0}.modal-copy{font-size:12px;color:#85917c;line-height:1.7;max-width:440px;margin:0 auto 23px}.starter-choices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.starter-option{background:#f4f3e8;border:2px solid #e4e2d2;border-radius:13px;display:flex;flex-direction:column;align-items:center;gap:6px;padding:14px 6px;color:#335749;transition:all .15s}.starter-option:hover{transform:translateY(-3px);background:#eaf1de;border-color:#86ad89}.starter-option canvas{image-rendering:pixelated;width:95px;height:95px}.starter-option strong{font-size:14px}.starter-option small{font-size:9px;font-weight:900;color:#889c7f;letter-spacing:1px}.starter-option span{font-size:9px;margin-top:5px;background:#dbe4d3;color:#557359;padding:8px 12px;border-radius:6px;font-weight:900}.modal-note{font-size:9px;color:#9aa38f;margin:22px 0 0}.compact-modal{width:min(490px,100%);text-align:left;padding:30px}.compact-modal h2{margin-top:10px}.compact-modal .modal-copy{margin-left:0}.modal-x{position:absolute;top:13px;right:13px;border:0;background:#e9e8d9;border-radius:8px;padding:8px 11px;color:#5d6d60}.shop-list{display:flex;flex-direction:column;gap:12px}.shop-list>div{border:1px solid #dce3d4;background:#f3f5ea;border-radius:8px;padding:12px;display:flex;align-items:center;gap:12px}.shop-icon{width:38px;height:38px;background:#e0e8d8;border-radius:8px;display:grid;place-items:center;font-size:24px;color:#c37561}.shop-list>div>div{flex:1}.shop-list strong,.shop-list small{display:block}.shop-list strong{font-size:13px}.shop-list small{font-size:10px;color:#8b9787;margin-top:5px}.shop-list button{border:0;background:#477b60;color:#fff;border-radius:6px;font-size:11px;font-weight:900;padding:11px}.shop-list button:hover{background:#345d48}.shop-balance{font-size:12px;text-align:right;color:#6e806f}.help-text p{color:#576b5a;font-size:12px;line-height:1.7;margin:10px 0}
@media(max-width:1100px){.layout{grid-template-columns:minmax(0,1fr) 285px}.shell{padding:0 13px}.topbar{gap:8px}.header-meta{font-size:9px}.small-btn{padding:9px 7px}.panel{padding:12px}.currency-row>div{font-size:13px}}
@media(max-width:830px){.layout{display:block}.sidebar{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:14px}.controls-hint{display:none}.mobile-actions{display:flex;gap:15px;justify-content:space-around;align-items:center;background:#e0e7d4;border:1px solid #cad8c8;border-radius:12px;padding:13px 10px;margin:12px 0}.pad{display:grid;grid-template-columns:repeat(3,41px);grid-template-rows:repeat(3,41px);gap:3px;flex-shrink:0}.direction,.pad-center{border:0;border-radius:9px;background:#426c57;box-shadow:0 3px #2b4d3c;color:#f3efd7;font-size:19px;display:grid;place-items:center;user-select:none;-webkit-user-select:none;touch-action:none}.direction:active,.direction.is-pressed{background:#a8a06a;transform:translateY(2px);box-shadow:0 1px #68714a}.pad .up{grid-area:1/2}.pad .left{grid-area:2/1}.pad .right{grid-area:2/3}.pad .down{grid-area:3/2}.pad-center{grid-area:2/2;background:#bfd0b5;color:#668368;box-shadow:none}.action-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;flex:1;max-width:400px}.act{border:1px solid #d6e0ce;color:#456750;background:#fffdf3;border-radius:9px;min-height:52px;padding:6px 3px;font-size:17px;font-weight:900}.act span{display:block;font-size:8px;margin-top:5px}.act:active{background:#c9e2c2}.act.attack{background:#cd795d;color:#fff;border-color:#b26854}.act.catch{background:#f0d189;color:#755b41}.topbar{min-height:83px}.header-meta{display:none}}
@media(max-width:540px){.shell{padding:0 7px}.topbar{min-height:74px;gap:5px}.brand{gap:7px}.emblem{width:38px;height:38px;border-radius:10px}.emblem span{width:22px;height:22px;border-width:4px}.emblem span:after{inset:4px}.brand-name{font-size:26px}.brand p{letter-spacing:.7px;font-size:7px;margin-top:5px}.top-actions{margin-left:auto}.small-btn{font-size:9px;padding:8px}.top-actions #fullBtn{display:none}.layout{margin-top:10px}.game-frame{border-width:4px;border-radius:10px}.frame-top{padding:6px 8px;height:50px}.region-icon{display:none}.region-chip strong{font-size:11px}.region-chip small{font-size:9px}.frame-top-right{font-size:8px;gap:5px}.canvas-shell canvas{aspect-ratio:5/3}.map-tag{top:5px;left:5px;padding:5px;font-size:8px}.watermark{font-size:7px;bottom:5px;right:5px}.game-toolbar{height:30px;padding:0 7px;font-size:7px;letter-spacing:.3px}.mobile-actions{gap:8px;padding:9px 5px;margin:9px 0}.pad{grid-template-columns:repeat(3,34px);grid-template-rows:repeat(3,34px);gap:2px}.direction{font-size:15px}.action-grid{gap:4px}.act{font-size:16px;min-height:46px;padding:3px 0}.act span{font-size:7px}.sidebar{gap:9px}.panel{padding:10px}.panel-caption{font-size:8px;letter-spacing:.2px;margin-bottom:10px}.trainer-icon{width:35px;height:35px;font-size:20px}.trainer-row{gap:7px}.trainer-detail strong{font-size:11px}.subline{font-size:8px}.currency-row{gap:3px}.currency-row>div{font-size:12px}.currency-row small{font-size:7px}.active-head{gap:7px}.active-head canvas{width:60px;height:60px}.active-head strong{font-size:13px}.active-head small{font-size:8px;margin:4px 0}.active-level{font-size:8px;padding:3px}.party-list{grid-template-columns:repeat(2,1fr)}.party-slot{min-height:85px}.party-slot canvas{width:39px;height:39px}.party-slot strong{font-size:8px}.party-footer{font-size:9px}.map-panel,.log-panel{grid-column:span 2}.minimap-holder{max-width:300px;margin:auto}.map-key{justify-content:center}.footer{font-size:7px;line-height:1.8}.modal{padding:20px 12px;border-width:4px}.modal h1{font-size:27px}.modal-copy{font-size:11px}.starter-choices{gap:5px}.starter-option{padding:8px 2px}.starter-option canvas{width:67px;height:67px}.starter-option strong{font-size:10px}.starter-option small{font-size:8px}.starter-option span{font-size:7px;padding:5px}.welcome-kicker{font-size:9px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important}}
