:root{color:#f6f2e7;background:#101817;font-family:Inter,ui-sans-serif,system-ui,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0;background:radial-gradient(circle at 50% -20%,#315b43 0,transparent 42rem),#101817}button{font:inherit}button:focus-visible{outline:3px solid #f6c85f;outline-offset:3px}.game-shell{width:min(100%,88rem);min-height:100dvh;margin:auto;padding:clamp(1rem,3vw,2.5rem)}.topbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1.5rem}.eyebrow{margin:0 0 .3rem;color:#f6c85f;font-size:.75rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}h1,h2,p{margin-top:0}h1{margin-bottom:0;font-size:clamp(1.75rem,4vw,2.75rem);line-height:1}h2{margin-bottom:.5rem}.topbar__status{display:flex;align-items:center;gap:.55rem;color:#d9e5d5;font-size:.9rem;font-weight:700}.status-dot{width:.65rem;height:.65rem;border-radius:999px;background:#79d480;box-shadow:0 0 0 .25rem #79d48024}.starter-panel,.hud-card{border:1px solid #3a5344;background:#14221ef0;box-shadow:0 1.5rem 3rem #0000003d}.starter-panel{max-width:52rem;margin:8vh auto;padding:clamp(1.5rem,5vw,3rem);border-radius:1.25rem;text-align:center}.starter-panel p:not(.eyebrow){max-width:48ch;margin:0 auto 1.5rem;color:#bbcabd;line-height:1.55}.starter-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.starter-choice{min-height:10rem;border:1px solid #55715b;border-radius:.9rem;background:#172b24;color:#f6f2e7;cursor:pointer;touch-action:manipulation;transition:transform .18s ease,background .18s ease}.starter-choice:hover{background:#234233;transform:translateY(-3px)}.starter-choice span{display:block;font-weight:800}.pixel-sprite{image-rendering:pixelated;image-rendering:crisp-edges;object-fit:contain}.game-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(16rem,21rem);gap:1.25rem}.battle-panel{position:relative;aspect-ratio:24 / 13;width:auto;height:100%;max-width:100%;max-height:100%;margin:auto;border-radius:.5rem;overflow:hidden;box-shadow:0 4px 30px #0009;border:1px solid rgba(45,79,51,.4)}.route-banner{display:flex;justify-content:space-between;gap:1rem;padding:.9rem 1.1rem;border-bottom:1px solid #3a5344;background:#172b24;color:#e2ecdd}.route-banner strong,.resource-row strong{color:#f6c85f}.battle-stage{position:relative;display:grid;grid-template-columns:1fr 1fr;min-height:32rem;padding:2rem;overflow:hidden;background:linear-gradient(#a0c9d7 0 44%,#678f57 44% 47%,#3e713c 47%);isolation:isolate}.battle-stage:after{position:absolute;inset:auto 0 0;z-index:-1;height:45%;content:"";opacity:.42;background-image:linear-gradient(90deg,rgb(255 255 255 / .16) 1px,transparent 1px),linear-gradient(rgb(255 255 255 / .12) 1px,transparent 1px);background-size:2rem 2rem}.trainer{position:absolute;inset:3rem auto auto 2rem;display:grid;color:#122014;font-size:.75rem;font-weight:800;text-align:center}.pixel-sprite--trainer{width:72px;height:72px}.creature-card{align-self:end;justify-self:center;width:min(100%,16rem);padding:.8rem;border:1px solid rgb(255 255 255 / .45);border-radius:.75rem;background:#101f19d1;color:#f6f2e7}.creature-card--opponent{align-self:start}.creature-card__identity{display:flex;justify-content:space-between;gap:.5rem;font-size:.85rem}.creature-card__identity strong{color:#f6c85f}.creature-card .pixel-sprite{display:block;width:112px;height:112px;margin:.4rem auto -.8rem}.meter{display:flex;align-items:center;gap:.5rem;color:#d5e2d2;font-size:.72rem;font-variant-numeric:tabular-nums}.meter__track{flex:1;height:.52rem;overflow:hidden;border-radius:999px;background:#293c34}.meter__fill{display:block;height:100%;border-radius:inherit;background:#79d480;transition:width .18s ease}.searching{align-self:center;justify-self:center;padding:.75rem 1rem;border:1px dashed #f1e4ae;border-radius:999px;color:#172b24;font-weight:800}.capture-window{position:absolute;inset:auto 1rem 1rem;display:grid;grid-template-columns:1fr auto;gap:.25rem .7rem;padding:.8rem 1rem;border:1px solid #f6c85f;border-radius:.75rem;background:#172b24;color:#fff5c9}.capture-window span{font-size:1.25rem;font-weight:900}.capture-window small{grid-column:1 / -1;color:#d5e2d2}.side-panel{display:grid;align-content:start;gap:1rem}.hud-card{padding:1rem;border-radius:.9rem}.hud-card>p{margin-bottom:.45rem;color:#a9c7a7;font-size:.72rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.hud-card small{display:block;margin-top:.6rem;color:#bbcabd}.resource-row{display:flex;justify-content:space-between;gap:.5rem;color:#d5e2d2}.resource-row strong{font-variant-numeric:tabular-nums}.secondary-button{width:100%;min-height:44px;margin-top:1rem;border:1px solid #6e9874;border-radius:.55rem;background:transparent;color:#e5efe1;cursor:pointer;touch-action:manipulation}.secondary-button:hover:not(:disabled){background:#294735}.secondary-button:disabled{cursor:not-allowed;opacity:.45}.event-card ol{display:grid;gap:.55rem;padding-left:1.1rem;margin:0;color:#d5e2d2;font-size:.84rem;line-height:1.35}footer{margin-top:1.25rem;color:#9eb39d;font-size:.75rem;line-height:1.5;text-align:center}@media(max-width:760px){.topbar{align-items:flex-start;flex-direction:column}.game-grid{grid-template-columns:1fr}.battle-stage{min-height:26rem;padding:1rem}.trainer{inset:1rem auto auto 1rem}.creature-card{width:100%}.starter-grid{gap:.5rem}.starter-choice{min-height:8rem}.starter-choice .pixel-sprite{width:72px;height:72px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.world-map{position:relative;min-height:34rem;overflow:hidden;background-color:#5a943f;background-image:linear-gradient(30deg,rgb(255 255 255 / .08) 12%,transparent 12.5%,transparent 87%,rgb(0 0 0 / .06) 87.5%),linear-gradient(150deg,rgb(255 255 255 / .06) 12%,transparent 12.5%,transparent 87%,rgb(0 0 0 / .06) 87.5%);background-size:32px 32px}.route-path{position:absolute;inset:0 8%;background:#d7b77b;clip-path:polygon(0 42%,11% 42%,18% 34%,31% 34%,38% 46%,52% 46%,61% 34%,78% 34%,86% 50%,100% 50%,100% 68%,83% 68%,75% 53%,65% 53%,57% 66%,35% 66%,27% 52%,20% 52%,13% 60%,0 60%);box-shadow:inset 0 0 0 4px #75522733}.grass{position:absolute;width:17%;height:21%;border:3px solid rgb(25 84 37 / .25);background:repeating-linear-gradient(90deg,transparent 0 10px,rgb(32 113 46 / .5) 11px 13px,transparent 14px 20px)}.grass--one{top:10%;left:12%}.grass--two{right:9%;bottom:9%}.world-sprite{position:absolute;z-index:3;width:64px;height:64px;object-fit:contain;image-rendering:pixelated;transform:translate(-50%);transition:left .25s linear,transform .15s ease}.world-sprite--trainer{top:47%;z-index:4}.world-sprite--partner{top:56%}.world-sprite--opponent{top:40%;filter:drop-shadow(0 3px 0 rgb(0 0 0 / .25))}.world-map:not(.world-map--encounter) .world-sprite--trainer{animation:walker-bob .5s steps(2,end) infinite}.world-map:not(.world-map--encounter) .world-sprite--partner{animation:walker-bob .5s steps(2,end) infinite reverse}.world-label{position:absolute;z-index:5;top:41%;padding:.2rem .35rem;border-radius:.3rem;background:#0d1e13d1;color:#fff8df;font-size:.7rem;font-weight:800;transform:translate(-50%);transition:left .25s linear}.world-hint{position:absolute;inset:auto 1rem 1rem;z-index:6;padding:.5rem .8rem;border:1px solid rgb(255 255 255 / .45);border-radius:.45rem;background:#0f2514d4;color:#f5f0d3;font-size:.82rem;font-weight:700}.world-map--encounter:after{position:absolute;inset:0;z-index:2;content:"";background:#23100e1f;box-shadow:inset 0 0 0 6px #dd71419e;pointer-events:none}.combat-readout{position:absolute;inset:1rem 1rem auto;z-index:7;display:flex;justify-content:space-between;gap:1rem;pointer-events:none}.combat-readout .creature-card{width:min(45%,13rem)}.combat-readout .creature-card .pixel-sprite{display:none}.capture-window{z-index:8}@keyframes walker-bob{50%{transform:translate(-50%) translateY(-4px)}}@media(max-width:760px){.world-map{min-height:27rem}.combat-readout{inset:.7rem}.combat-readout .creature-card{padding:.5rem}.world-sprite{width:54px;height:54px}}.world-map{background-color:#5a943f;background-image:url(/assets/vks/route1/grass.png);background-repeat:repeat;background-size:32px 32px}.route-path{background:#d8b879f0;box-shadow:inset 0 0 0 4px #7552274d,0 2px #fff4c438}.grass{background:#18592740;border-color:#10481f73}.world-sprite{transition:left .25s linear}.world-map:not(.world-map--encounter) .world-sprite--trainer,.world-map:not(.world-map--encounter) .world-sprite--partner{animation:none}.world-sprite--fainted{opacity:.72;filter:grayscale(1) brightness(.72) drop-shadow(0 3px 0 rgb(0 0 0 / .25));transform:translate(-50%) rotate(82deg) translateY(10px);transform-origin:50% 70%}.razor-leaf-burst{position:absolute;z-index:9;top:55%;left:58%;width:34px;height:34px;pointer-events:none}.razor-leaf-burst img{position:absolute;width:30px;height:30px;image-rendering:pixelated;animation:razor-leaf-flight .72s steps(6,end) both}.razor-leaf-burst img:nth-child(2){animation-delay:80ms;transform:translateY(-15px) rotate(40deg)}.razor-leaf-burst img:nth-child(3){animation-delay:.14s;transform:translateY(14px) rotate(-38deg)}.pokeball-flight{position:absolute;z-index:10;top:56%;left:55%;width:32px;height:32px;image-rendering:pixelated;pointer-events:none;animation:ball-throw 1.15s steps(10,end) both}.pokeball-flight--failed{animation:ball-failed .52s steps(4,end) both}@keyframes razor-leaf-flight{0%{opacity:0;transform:translate(-105px,8px) rotate(-30deg) scale(.55)}16%{opacity:1}82%{opacity:1}to{opacity:0;transform:translate(95px,-18px) rotate(390deg) scale(1.12)}}@keyframes ball-throw{0%{opacity:0;transform:translate(-112px,12px) rotate(0) scale(.7)}10%{opacity:1}55%{transform:translate(-18px,-78px) rotate(420deg) scale(1)}88%{opacity:1;transform:translate(105px,2px) rotate(800deg) scale(.9)}to{opacity:1;transform:translate(105px,2px) rotate(820deg) scale(.9)}}@keyframes ball-failed{0%{transform:translate(105px,2px) rotate(820deg) scale(.9)}45%{transform:translate(105px,-20px) rotate(980deg) scale(.96)}to{transform:translate(105px,10px) rotate(1100deg) scale(.82)}}.world-map{background-position:0 0;animation:terrain-scroll 1.25s linear infinite}.route-path{inset:-10% auto -10% 25%;width:50%;height:120%;clip-path:none;border-inline:4px solid rgb(117 82 39 / .3);box-shadow:inset 0 0 0 3px #fff4c42e}.world-sprite{transition:none}.world-sprite--trainer{top:47%;width:84px;height:84px}.world-sprite--partner{top:50%;width:58px;height:58px}.world-label{top:41%;transition:none}.world-map--encounter{animation-play-state:paused}@keyframes terrain-scroll{0%{background-position:0 0}to{background-position:0 64px}}.world-tree{position:absolute;z-index:2;top:-7rem;width:4rem;height:5rem;image-rendering:pixelated;animation:landmark-scroll 3.6s linear infinite}.world-tree:before{position:absolute;top:.6rem;left:.5rem;width:3rem;height:3.25rem;content:"";background:#2b7338;box-shadow:.5rem -.5rem #478f42,1rem 0 #478f42,-.25rem 1rem #215f33,1.25rem 1rem #215f33,.25rem 1.75rem #1b4d2c}.world-tree:after{position:absolute;bottom:.3rem;left:1.7rem;width:.7rem;height:1.65rem;content:"";background:#6d4828;box-shadow:.25rem 0 #432c1d}.world-tree--one{left:7%;animation-delay:-1.1s}.world-tree--two{right:7%;animation-delay:-2.6s;transform:scale(.82)}.world-tree--three{left:12%;animation-delay:-.1s;transform:scale(.62)}@keyframes landmark-scroll{0%{translate:0 -5rem}to{translate:0 42rem}}.world-map{position:relative;width:100%;height:100%;aspect-ratio:24 / 13;margin:0 auto;overflow:hidden;isolation:isolate;background:#315f35;image-rendering:pixelated;image-rendering:crisp-edges;animation:none}.world-map-shell{position:relative}.world-map canvas{display:block;width:100%!important;height:100%!important;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges}.world-map__canvas-container{position:absolute;inset:0;width:100%;height:100%}.world-map__overlay{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:5;image-rendering:auto}.world-nameplate{position:absolute;left:47.92%;display:flex;flex-direction:column;align-items:center;transform:translate(-50%,-50%);-webkit-user-select:none;user-select:none;pointer-events:none;image-rendering:auto}.world-nameplate--opponent{top:32.7%;gap:3px}.world-nameplate--partner{top:66.8%;gap:3px}.world-nameplate__name{font-family:inherit;font-size:.72rem;font-weight:800;color:#fff;letter-spacing:.02em;text-shadow:0 1px 2px rgba(0,0,0,.95),-1px -1px 0 #17251c,1px -1px 0 #17251c,-1px 1px 0 #17251c,1px 1px 0 #17251c;line-height:1;white-space:nowrap}.world-nameplate__hp-bar{width:56px;height:7px;background:#17251ceb;border-radius:2px;padding:1px;box-sizing:border-box;box-shadow:0 1px 3px #0009}.world-nameplate__hp-fill{height:100%;border-radius:1px;transition:width .2s ease,background-color .2s ease}@media(max-width:760px){.world-nameplate__name{font-size:.65rem}.world-nameplate__hp-bar{width:48px;height:6px}}.world-map:after{position:absolute;inset:0;content:"";background:linear-gradient(90deg,rgb(18 47 28 / .2),transparent 12% 88%,rgb(18 47 28 / .2)),linear-gradient(180deg,rgb(255 235 182 / .035),transparent 24% 78%,rgb(10 30 17 / .12));pointer-events:none}.world-map--loading{display:grid;place-items:center;color:#ecf3df;font-size:.9rem;font-weight:700}.world-map__error{position:absolute;inset:0;display:grid;place-items:center;padding:1.5rem;background:#25482f;color:#fff4dc;text-align:center}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.account-badge{display:inline-flex;align-items:center;gap:.5rem;padding:.25rem .65rem;border-radius:999px;background:#10201499;border:1px solid rgba(80,140,90,.3);font-size:.8rem;color:#d0e8d4}.account-badge__info{display:flex;align-items:center;gap:.35rem}.account-badge__name{font-weight:700;color:#fff}.account-badge__button{border:none;padding:.2rem .55rem;border-radius:4px;font-size:.75rem;font-weight:600;cursor:pointer;transition:all .2s}.account-badge__button--login{background:#357a38;color:#fff}.account-badge__button--login:hover{background:#439647}.account-badge__button--logout{background:#ffffff26;color:#e0e0e0}.account-badge__button--logout:hover{background:#ffffff40;color:#fff}.modal-backdrop{position:fixed;inset:0;background:#000000a6;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:1000;display:flex;align-items:center;justify-content:center;padding:1rem}.auth-modal{background:#16241a;border:1px solid #2d4f33;border-radius:12px;width:100%;max-width:380px;padding:1.25rem 1.5rem;color:#e4efe6;box-shadow:0 12px 40px #000000b3}.auth-modal__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;border-bottom:1px solid rgba(80,140,90,.2);padding-bottom:.5rem}.auth-modal__tabs{display:flex;gap:.5rem}.auth-tab{background:transparent;border:none;border-bottom:2px solid transparent;color:#8fa894;font-size:.95rem;font-weight:600;padding:.35rem .5rem;cursor:pointer}.auth-tab--active{color:#52c41a;border-bottom-color:#52c41a}.auth-modal__close{background:transparent;border:none;color:#8fa894;font-size:1.2rem;cursor:pointer;line-height:1;padding:.2rem .4rem}.auth-modal__close:hover{color:#fff}.auth-error-banner{background:#c81e1e33;border:1px solid #c81e1e;border-radius:6px;padding:.5rem .75rem;margin-bottom:1rem;font-size:.85rem;color:#ffb4b4}.auth-form{display:flex;flex-direction:column;gap:.85rem}.auth-form .form-group{display:flex;flex-direction:column;gap:.3rem}.auth-form label{font-size:.8rem;font-weight:600;color:#b8d2bd}.auth-form input{background:#0c160f;border:1px solid #28442e;border-radius:6px;padding:.55rem .75rem;color:#fff;font-size:.9rem}.auth-form input:focus{outline:none;border-color:#52c41a}.gender-selector{display:flex;gap:.5rem}.gender-choice{flex:1;display:flex;align-items:center;justify-content:center;gap:.4rem;padding:.5rem;background:#0c160f;border:1px solid #28442e;border-radius:6px;color:#b8d2bd;font-size:.85rem;cursor:pointer;transition:all .2s}.gender-choice:hover:not(:disabled){border-color:#52c41a;background:#132218}.gender-choice--active{border-color:#52c41a;background:#1b3822;color:#fff;font-weight:700;box-shadow:0 0 0 1px #52c41a}.gender-choice__icon{font-size:1.1rem}.auth-submit-button{margin-top:.5rem;background:#2e7d32;color:#fff;border:none;border-radius:6px;padding:.65rem;font-size:.95rem;font-weight:700;cursor:pointer;transition:background .2s}.auth-submit-button:hover:not(:disabled){background:#388e3c}.auth-submit-button:disabled{opacity:.6;cursor:not-allowed}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.account-badge__cloud{display:inline-flex;align-items:center;gap:.15rem;background:transparent;border:none;padding:.1rem .25rem;border-radius:4px;cursor:pointer;font-size:.85rem;color:inherit;transition:opacity .2s}.account-badge__cloud:hover{background:#ffffff1a}.account-badge__sync-dot{font-size:.55rem;line-height:1}.account-badge__cloud--syncing{animation:pulse-sync 1.5s infinite}@keyframes pulse-sync{0%,to{opacity:1}50%{opacity:.4}}.conflict-modal{background:#1a1715;border:1px solid #734524;border-radius:12px;width:100%;max-width:480px;padding:1.5rem;color:#f2e9e4}.conflict-modal__header{display:flex;align-items:center;gap:.5rem;margin-bottom:.75rem}.conflict-modal__header h2{margin:0;font-size:1.2rem;color:#ffb86c}.conflict-modal__icon{font-size:1.5rem}.conflict-modal__desc{font-size:.85rem;color:#c4b5a5;line-height:1.4;margin-bottom:1.25rem}.conflict-comparison{display:grid;grid-template-columns:1fr 1fr;gap:.85rem}.conflict-card{background:#12100e;border:1px solid #3d2a1d;border-radius:8px;padding:.85rem;display:flex;flex-direction:column;justify-content:space-between;gap:.75rem}.conflict-card--server{border-color:#52c41a}.conflict-card__badge{font-size:.75rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:#52c41a}.conflict-card--local .conflict-card__badge{color:#f6c85f}.conflict-card__stats{font-size:.8rem;line-height:1.4;color:#dfd3c3;display:flex;flex-direction:column;gap:.25rem}.conflict-btn{width:100%;border:none;border-radius:6px;padding:.55rem;font-size:.8rem;font-weight:700;cursor:pointer;transition:background .2s}.conflict-btn--primary{background:#2e7d32;color:#fff}.conflict-btn--primary:hover{background:#388e3c}.conflict-btn--secondary{background:#ffffff1f;color:#e0e0e0}.conflict-btn--secondary:hover{background:#fff3}.backup-modal{background:#16241a;border:1px solid #2d4f33;border-radius:12px;width:100%;max-width:440px;padding:1.25rem 1.5rem;color:#e4efe6}.backup-modal__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;border-bottom:1px solid rgba(80,140,90,.2);padding-bottom:.5rem}.backup-actions{margin-bottom:1rem}.backup-sync-btn{background:#245229;color:#d0e8d4;border:1px solid #3a7542;border-radius:6px;padding:.45rem .85rem;font-size:.82rem;font-weight:600;cursor:pointer}.backup-sync-btn:hover:not(:disabled){background:#2f6a36;color:#fff}.backup-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.5rem;max-height:240px;overflow-y:auto}.backup-item{display:flex;justify-content:space-between;align-items:center;background:#0c160f;border:1px solid #28442e;border-radius:6px;padding:.6rem .75rem}.backup-item__info{font-size:.82rem}.backup-item__revision{color:#f6c85f;font-weight:700}.backup-item__date{color:#8fa894;font-size:.75rem}.backup-item__rollback{background:#ffffff1a;border:1px solid rgba(255,255,255,.2);color:#fff;border-radius:4px;padding:.3rem .6rem;font-size:.75rem;font-weight:600;cursor:pointer}.backup-item__rollback:hover:not(:disabled){background:#357a38;border-color:#52c41a}.backup-loading,.backup-empty{text-align:center;padding:1rem;color:#8fa894;font-size:.85rem}.skill-bar{display:flex;gap:.55rem;margin-top:.7rem}.skill-slot{position:relative;display:grid;place-items:center;width:48px;height:48px;border:1px solid #8eb08a;border-radius:.6rem;background:#203b2d;color:#fff;font-size:1.25rem}.skill-slot--empty{border-style:dashed;color:#6e9874;background:transparent}.skill-cooldown{position:absolute;inset:0;display:grid;place-items:center;border-radius:.55rem;background:#0e1914bf;color:#fff;font-size:.78rem;font-weight:800}.skill-icon{filter:drop-shadow(0 1px 1px #102016)}.skill-icon{width:36px;height:36px;object-fit:contain;image-rendering:pixelated}.capture-automation-panel__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.6rem}.capture-automation-panel__title-group{display:flex;align-items:center;gap:.5rem}.capture-automation-panel__icon{width:22px;height:22px;object-fit:contain;image-rendering:pixelated}.capture-automation-panel__header p{margin:0;color:#a9c7a7;font-size:.78rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.toggle-switch{display:inline-flex;align-items:center;cursor:pointer}.toggle-switch input{position:absolute;opacity:0;width:0;height:0}.toggle-label{display:inline-block;padding:.15rem .5rem;border-radius:.4rem;font-size:.7rem;font-weight:800;background:#263e32;color:#8ea394;transition:all .18s ease}.toggle-switch input:checked+.toggle-label{background:#4cae5d;color:#0d2612}.capture-automation-panel__options{display:grid;gap:.5rem;font-size:.82rem;color:#d5e2d2}.checkbox-row{display:flex;align-items:center;gap:.5rem;cursor:pointer}.checkbox-row input{accent-color:#4cae5d;width:1rem;height:1rem}.reserve-row{display:flex;justify-content:space-between;align-items:center;gap:.5rem;margin-top:.2rem}.reserve-input{width:3.5rem;padding:.2rem .4rem;border:1px solid #486952;border-radius:.35rem;background:#13241b;color:#f6f2e7;text-align:center;font-weight:700}.capture-overlay{position:absolute;inset:auto 1rem 1rem;z-index:10;display:grid;gap:.5rem;padding:.9rem 1.1rem;border:1px solid #f6c85f;border-radius:.85rem;background:#13241bf0;color:#fff8df;box-shadow:0 4px 16px #0006;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.capture-overlay__header{display:flex;justify-content:space-between;align-items:center;gap:1rem}.capture-overlay__title{font-weight:800;font-size:.95rem;color:#f6c85f}.capture-overlay__timer{font-size:.85rem;font-weight:700;color:#d5e2d2}.capture-overlay__bar{height:.5rem;background:#263e32;border-radius:999px;overflow:hidden}.capture-overlay__bar-fill{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#f6c85f,#79d480);transition:width .15s linear}.capture-overlay__actions{display:flex;justify-content:flex-end}.capture-manual-btn{padding:.45rem 1.1rem;border:1px solid #79d480;border-radius:.5rem;background:#235532;color:#fff;font-weight:800;font-size:.85rem;cursor:pointer;transition:background .15s ease}.capture-manual-btn:hover:not(:disabled){background:#327546}.capture-manual-btn:disabled{opacity:.5;cursor:not-allowed}.roster-card{display:grid;gap:.6rem}.roster-header{display:flex;justify-content:space-between;align-items:center}.roster-list{display:grid;gap:.4rem;max-height:18rem;overflow-y:auto;padding-right:.2rem}.roster-item{display:flex;align-items:center;gap:.6rem;padding:.45rem .6rem;border:1px solid #365040;border-radius:.55rem;background:#13241b;color:#f6f2e7;cursor:pointer;text-align:left;transition:all .15s ease}.roster-item:hover{background:#1d382b;border-color:#557e65}.roster-item--active{border-color:#f6c85f;background:#1e3c2c;box-shadow:0 0 0 1px #f6c85f inset}.roster-item__sprite{width:32px;height:32px;object-fit:contain;image-rendering:pixelated;flex-shrink:0}.roster-item__info{flex:1;min-width:0;display:grid;gap:.2rem}.roster-item__top{display:flex;justify-content:space-between;align-items:baseline;gap:.4rem;font-size:.8rem}.roster-item__top strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.roster-item__level{color:#f6c85f;font-weight:700;font-size:.75rem}.roster-item__hp{height:.35rem;border-radius:999px;background:#263e32;overflow:hidden}.roster-item__hp-bar{display:block;height:100%;border-radius:inherit;background:#79d480}.roster-item__badge{padding:.15rem .4rem;border-radius:.3rem;background:#f6c85f;color:#172b24;font-size:.65rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em;flex-shrink:0}.debug-panel{display:flex;flex-direction:column;gap:.75rem;color:#d5e2d2;font-size:.85rem}.debug-panel__badge-row{display:flex;flex-direction:column;gap:.35rem;padding-bottom:.5rem;border-bottom:1px solid rgba(80,140,90,.25)}.debug-panel__badge{display:inline-block;align-self:flex-start;padding:.2rem .55rem;border:1px solid #b58c42;border-radius:999px;background:#2d231299;color:#f6c85f;font-size:.68rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.debug-panel__note{color:#8fa892;font-size:.75rem;line-height:1.35}.debug-panel__sections{display:flex;flex-direction:column;gap:.75rem}.debug-panel__section{padding:.75rem;border:1px solid #2d4f33;border-radius:6px;background:#0e1a12bf}.debug-panel__section h3{margin:0 0 .5rem;color:#f6f2e7;font-size:.75rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.debug-panel__section h4{margin:.75rem 0 .4rem;color:#a9c7a7;font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.debug-section-header{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.65rem}.debug-section-header h3{margin:0}.debug-pause-button{padding:.35rem .75rem;border:1px solid #52c41a;border-radius:4px;background:#173822;color:#f6f2e7;font-size:.75rem;font-weight:800;cursor:pointer;transition:all .15s ease}.debug-pause-button:hover{background:#245533}.debug-pause-button--paused{border-color:#f6c85f;background:#5c4516;color:#fff3c6}.debug-subsection{margin-top:.6rem}.debug-subsection__label{display:block;font-size:.7rem;font-weight:700;color:#a9c7a7;text-transform:uppercase;letter-spacing:.03em;margin-bottom:.35rem}.debug-speed-row,.debug-step-row{display:flex;gap:.3rem;width:100%}.debug-speed-button,.debug-step-button{flex:1;min-width:0;min-height:32px;padding:.25rem .15rem;border:1px solid #36553d;border-radius:4px;background:#122419;color:#d5e2d2;font-size:.75rem;font-weight:700;cursor:pointer;text-align:center;white-space:nowrap;transition:all .15s ease}.debug-speed-button[aria-pressed=true]{border-color:#f6c85f;background:#5c4516;color:#fff3c6;font-weight:800}.debug-speed-button:hover:not(:disabled),.debug-step-button:hover:not(:disabled){background:#1e3d29;border-color:#52c41a;color:#fff}.debug-step-button:disabled{opacity:.4;cursor:not-allowed}.debug-seed-row{display:flex;align-items:flex-end;gap:.5rem}.debug-seed-field{width:110px;flex-shrink:0;display:flex;flex-direction:column;gap:.25rem;color:#bbcabd;font-size:.72rem;font-weight:700;white-space:nowrap}.debug-seed-field input{width:100%;height:32px;border:1px solid #36553d;border-radius:4px;background:#0d1a12;color:#f6f2e7;padding:.25rem .5rem;font:inherit;font-size:.8rem;font-variant-numeric:tabular-nums;box-sizing:border-box}.debug-reset-btn{flex:1;height:32px;padding:0 .75rem;font-size:.75rem;white-space:nowrap}.debug-diagnostics{display:grid;gap:.35rem;margin:0;font-size:.75rem;font-variant-numeric:tabular-nums}.debug-diagnostics div{display:flex;justify-content:space-between;gap:.5rem;border-bottom:1px solid rgba(80,140,90,.15);padding-bottom:.2rem}.debug-diagnostics dt{color:#92b192}.debug-diagnostics dd{margin:0;color:#f6f2e7;text-align:right;font-weight:600}.debug-events{display:grid;gap:.3rem;max-height:7rem;overflow-y:auto;margin:0;padding-left:1.1rem;font-size:.72rem}.debug-events li{display:flex;justify-content:space-between;gap:.5rem}.debug-events code{color:#f6c85f}.debug-events__empty{margin:0;color:#7b957e;font-size:.75rem}.game-shell--modular{display:flex;flex-direction:column;height:100dvh;max-height:100dvh;padding:0;width:100%;max-width:100%;overflow:hidden;position:relative}.identity-header{display:flex;align-items:center;justify-content:space-between;padding:.5rem 1.25rem;background:#142319;border-bottom:1px solid #2d4f33;box-shadow:0 2px 10px #0006;z-index:100;gap:1rem;min-height:52px}.identity-header__left{display:flex;align-items:center;gap:1.25rem}.identity-header__brand{display:flex;align-items:center;gap:.6rem}.identity-header__logo-icon{font-size:1.35rem}.identity-header__title{font-size:1.15rem;font-weight:800;color:#f6f2e7;line-height:1.1;margin:0}.identity-header__subtitle{font-size:.72rem;color:#f6c85f;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.identity-header__route-badge{display:flex;align-items:center;gap:.5rem;padding:.3rem .75rem;border-radius:6px;background:#1b3323;border:1px solid #3d6345}.identity-header__route-name{font-weight:800;color:#f6f2e7;font-size:.85rem}.identity-header__route-victories{font-size:.78rem;color:#f6c85f;font-weight:700}.identity-header__center{display:flex;align-items:center;justify-content:center}.identity-header__status-indicator{display:flex;align-items:center;gap:.5rem;font-size:.85rem;font-weight:700;color:#c9dac6}.identity-header__right{display:flex;align-items:center;gap:1rem}.identity-header__economy{display:flex;align-items:center;gap:1.1rem;padding:.35rem .85rem;background:#0e1a12;border:1px solid #28442e;border-radius:6px;font-size:.95rem}.identity-header__currency strong{color:#f6c85f;font-variant-numeric:tabular-nums;font-size:1rem}.identity-header__balls{display:inline-flex;align-items:center;gap:.45rem}.identity-header__ball-icon{width:24px;height:24px;object-fit:contain;image-rendering:pixelated;vertical-align:middle;filter:drop-shadow(0 2px 4px rgba(0,0,0,.4))}.identity-header__balls strong{color:#fff;font-variant-numeric:tabular-nums;font-size:1rem}.game-viewport-container{flex:1;position:relative;overflow:hidden;display:flex;justify-content:center;align-items:center;background:#0b130e}.viewport-canvas-wrapper{position:relative;width:100%;height:100%;display:flex;align-items:center;justify-content:center;overflow:hidden;padding:0;box-sizing:border-box}.floating-windows-container{position:fixed;inset:0;pointer-events:none;z-index:500;overflow:hidden}.floating-window{pointer-events:auto;position:absolute;top:0;left:0;background:#13221af2;border:1px solid #3d6345;border-radius:8px;box-shadow:0 10px 30px #000000a6,0 0 0 1px #0006;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);overflow:hidden;display:flex;flex-direction:column;transition:box-shadow .15s ease;will-change:transform}.floating-window--dragging{opacity:.92;box-shadow:0 16px 40px #000c,0 0 0 1px #52c41a;transition:none;cursor:grabbing}.floating-window__header{display:flex;align-items:center;justify-content:space-between;padding:.45rem .75rem;background:#1e3827;border-bottom:1px solid #3d6345;cursor:grab;-webkit-user-select:none;user-select:none;touch-action:none}.floating-window--dragging .floating-window__header{cursor:grabbing}.floating-window__title{font-size:.78rem;font-weight:800;letter-spacing:.06em;color:#e2ecdd;text-transform:uppercase}.floating-window__controls{display:flex;align-items:center;gap:.35rem}.floating-window__btn{background:#00000040;border:1px solid #3d6345;border-radius:4px;color:#c9dac6;width:22px;height:22px;display:grid;place-items:center;font-size:.75rem;font-weight:800;cursor:pointer;line-height:1;padding:0;transition:all .15s}.floating-window__btn:hover{background:#2f593b;color:#fff;border-color:#52c41a}.floating-window__btn--close:hover{background:#a82e2e;border-color:#ff4d4f}.floating-window__body{padding:.85rem;max-height:calc(75vh - 50px);overflow-y:auto}.action-deck--transparent{display:flex;align-items:center;justify-content:flex-start;gap:1.5rem;padding:.55rem 1.5rem;background:#0e1a12b8;border-top:1px solid rgba(61,99,69,.4);box-shadow:0 -4px 16px #0006;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:100;min-height:72px}.action-deck__creature{display:flex;align-items:center;gap:1rem;min-width:360px;max-width:520px}.action-deck__skills{display:flex;align-items:center;padding-left:1.5rem;border-left:1px solid rgba(80,140,90,.35)}.action-deck__skills .skill-bar{margin-top:0}.action-deck__sprite{width:56px;height:56px;image-rendering:pixelated;flex-shrink:0}.action-deck__creature-info{display:flex;flex-direction:column;gap:.25rem;flex:1}.action-deck__name-row{display:flex;align-items:center;gap:.6rem}.action-deck__name{color:#f6f2e7;font-size:.95rem;font-weight:800}.action-deck__level{color:#f6c85f;font-size:.78rem;font-weight:700}.action-deck__badge{padding:.12rem .45rem;border-radius:4px;background:#52c41a33;border:1px solid rgba(82,196,26,.5);color:#79d480;font-size:.65rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.action-deck__meters{display:flex;flex-direction:column;gap:.22rem;width:100%}.meter--compact{font-size:.7rem;display:flex;align-items:center;gap:.5rem}.meter--compact .meter__track{height:.48rem;flex:1;background:#101c13;border-radius:999px;overflow:hidden}.meter--compact .meter__text{font-size:.7rem;color:#d5e2d2;font-variant-numeric:tabular-nums;white-space:nowrap}.meter--xp{font-size:.68rem;display:flex;align-items:center;gap:.5rem}.meter--xp .meter__track{height:.32rem;flex:1;background:#101c13;border-radius:999px;overflow:hidden}.meter--xp .meter__text{font-size:.68rem;color:#9bb8f5;font-variant-numeric:tabular-nums;white-space:nowrap}.meter__fill--hp{background:#52c41a}.meter__fill--xp{background:#3b82f6}.action-deck__empty{font-size:.85rem;color:#8fa894;font-style:italic}.identity-header__nav-tray{display:flex;align-items:center;gap:.35rem}.nav-tray__btn{background:#182c1f;border:1px solid #385a3f;color:#bbcabd;border-radius:6px;padding:.35rem .65rem;font-size:.78rem;font-weight:700;cursor:pointer;transition:all .15s ease;display:flex;align-items:center;gap:.3rem;line-height:1}.nav-tray__btn:hover{background:#234230;border-color:#52c41a;color:#fff}.nav-tray__btn--active{background:#284c34;border-color:#f6c85f}.nav-tray__icon{width:18px;height:18px;object-fit:contain;image-rendering:pixelated}
