:root{color-scheme:dark;--bg:#090f19;--panel:#111c2b;--panel-2:#162336;--panel-3:#1c2d42;--line:#28394c;--ink:#eef5f7;--muted:#91a5b6;--mint:#8ce5bf;--gold:#edce8d;--bad:#ffacac;--radius:.8rem;--shadow:0 1.5rem 4rem #0006;font-family:"Segoe UI",system-ui,sans-serif;font-size:clamp(12px,.9vw,22px)}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);overflow:hidden}button,input,select{font:inherit}button{cursor:pointer;user-select:none;border:1px solid var(--line);border-radius:.5rem;background:var(--panel-2);color:var(--ink);padding:.65rem .95rem;transition:background .15s,border-color .15s,transform .15s}button:hover:not(:disabled){background:var(--panel-3);border-color:#54728a}button:active:not(:disabled){transform:translateY(1px)}button:disabled{opacity:.42;cursor:not-allowed}button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--mint);outline-offset:3px}input,select{width:100%;background:#0c1623;border:1px solid var(--line);border-radius:.5rem;color:var(--ink);padding:.78rem .9rem}input::placeholder{color:#607789}label{display:block;font-size:.85rem;font-weight:600;margin:1rem 0 .45rem}h1,h2,h3,p{margin:0}h2{font-size:1.5rem;font-weight:650;letter-spacing:-.035em}h3{font-size:1.05rem;font-weight:600}p{line-height:1.55}small,.small-text{font-size:.78rem}.hidden{display:none!important}.muted{color:var(--muted)}.eyebrow{color:var(--muted);font-size:.69rem;letter-spacing:.15em;font-weight:700}.primary{background:var(--mint);border-color:var(--mint);color:#103027;font-weight:700}.primary:hover:not(:disabled){background:#b9f1d8;border-color:#b9f1d8}.primary span{float:right}.secondary{background:#182638;font-size:.85rem}.quiet{background:transparent;color:var(--muted);border-color:transparent}.quiet:hover:not(:disabled){color:var(--ink);background:#1c2b3e}.small{font-size:.78rem;padding:.4rem .65rem}.wide{width:100%}.danger{color:var(--bad)}.icon-button{padding:0;width:2.2rem;height:2.2rem;font-size:1.25rem;background:transparent;display:grid;place-items:center}.pill{font-size:.65rem;letter-spacing:.08em;background:#233146;border:1px solid #33445b;border-radius:99px;padding:.3rem .55rem;white-space:nowrap;color:#b2c2d1}.pill.mint{background:#203c37;border-color:#355c4c;color:var(--mint)}kbd{font:600 .68rem "Segoe UI",sans-serif;border:1px solid #45607955;background:#cce7ff09;border-radius:.2rem;padding:.05rem .3rem;color:#a8bccb;vertical-align:middle;line-height:1.5}.emblem{height:2.2rem;width:2.2rem;border:2px solid var(--mint);border-radius:50%;display:block;position:relative;background:linear-gradient(0deg,transparent 46%,var(--mint) 47%,var(--mint) 53%,transparent 54%);flex-shrink:0}.emblem:after{content:"";position:absolute;inset:32%;border-radius:50%;background:var(--bg);border:2px solid var(--mint)}.emblem.large{width:4rem;height:4rem}.brand{display:flex;align-items:center;gap:.85rem;font-size:1.4rem;letter-spacing:.065em;font-weight:450}.brand b{color:var(--mint);font-weight:800}.brand small{display:block;font-size:.47rem;letter-spacing:.24em;margin-top:.25rem;color:var(--muted)}.boot{height:100vh;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:1.5rem}.boot h1{font-size:1.5rem;font-weight:450;letter-spacing:.15em}.boot b{color:var(--mint)}.boot p{color:var(--muted)}.login-screen{height:100dvh;display:grid;grid-template-columns:1.15fr 1fr;background:radial-gradient(ellipse at 10% 20%,#1a3140,transparent 70%),var(--bg);overflow:auto}.login-story{padding:3.5rem 4.5rem;display:flex;flex-direction:column;border-right:1px solid #213243;min-height:48rem}.hero-copy{margin:auto 0 2rem;max-width:36rem;padding-top:3rem}.hero-copy h1{font-size:clamp(3rem,4.8vw,7rem);line-height:1.02;letter-spacing:-.055em;font-weight:550;margin:1.2rem 0 1.4rem}.hero-copy em{font-style:normal;color:var(--mint)}.hero-copy p{color:#b1c0cb;max-width:31rem;font-size:1.03rem}.region-preview{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.region-preview article{border:1px solid #365149;border-radius:.8rem;overflow:hidden;background:#152736;position:relative;height:12.5rem}.region-preview img{width:100%;height:100%;object-fit:cover;image-rendering:pixelated;opacity:.8}.region-preview article>div{position:absolute;inset:auto 0 0;padding:2rem 1rem 1rem;background:linear-gradient(transparent,#07121ded)}.region-preview span{display:block;color:var(--mint);font-size:.65rem;letter-spacing:.17em;margin-bottom:.35rem}.region-preview strong{font-size:1.05rem}.login-foot{margin-top:2rem;display:flex;align-items:center;gap:1rem;font-size:.65rem;color:var(--muted)}.login-side{padding:2.5rem 4.5rem;display:flex;flex-direction:column;gap:1.5rem;max-width:45rem;width:100%;margin:auto;min-height:100vh}.connection-card{border:1px solid var(--line);border-radius:.6rem;display:flex;align-items:center;gap:.8rem;padding:.8rem 1rem;background:#14202ecc}.connection-card strong{font-size:.85rem;font-weight:550}.connection-card small{display:block;color:var(--muted);margin-top:.2rem;font-size:.68rem}.connection-card .icon-button{margin-left:auto}.status-dot{width:.5rem;height:.5rem;border-radius:50%;background:#c89d58;flex-shrink:0;box-shadow:0 0 .75rem #c89d5833}.status-dot.online{background:var(--mint);box-shadow:0 0 .75rem #8ce5bf44}.status-dot.offline{background:var(--bad)}.login-panel{margin:auto 0}.login-panel h2{font-size:2.05rem;margin:.7rem 0 .55rem}.login-panel>.muted{font-size:.88rem;margin-bottom:1.5rem}.segmented{padding:.25rem;background:#0e1826;border:1px solid var(--line);border-radius:.55rem;display:flex;gap:.25rem;margin:1.5rem 0}.segmented button{flex:1;border-color:transparent;background:transparent;color:var(--muted);font-size:.84rem;padding:.6rem}.segmented button.selected{background:#24374a;color:var(--ink)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:.8rem}.starter-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:.35rem}.starter-choice{display:flex;align-items:center;flex-direction:column;padding:.4rem .15rem;font-size:.57rem;background:transparent;border-color:var(--line);gap:.2rem}.starter-choice img{width:2.8rem;height:2.8rem;image-rendering:pixelated}.starter-choice.selected{border-color:var(--mint);background:#213d35;color:var(--mint)}.form-error{color:var(--bad);font-size:.8rem;min-height:1.2rem;margin:.8rem 0}.login-note{font-size:.72rem;color:#8ba0b1;margin:1rem 0}.build-note{padding:1rem;background:#111d2a;border:1px solid var(--line);border-radius:.6rem;display:flex;flex-direction:column;gap:.4rem}.build-note strong{font-size:.78rem;color:var(--gold)}.build-note span{font-size:.7rem;color:var(--muted);line-height:1.55}.game-shell{height:100dvh;display:flex;flex-direction:column}.topbar{height:4.4rem;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 1.6rem;gap:1.5rem;flex-shrink:0;background:#0d1724}.brand.compact{font-size:1.13rem}.brand.compact small{font-size:.43rem}.brand.compact .emblem{width:1.95rem;height:1.95rem}.world-presence,.account-head{display:flex;align-items:center;gap:.8rem;font-size:.78rem}.world-presence{color:#b2c4d2}.account-head{margin-left:auto}.account-head>#latency{color:var(--muted);font-size:.65rem}.account-head>#trainer-name{font-weight:600}.world-layout{display:grid;grid-template-columns:minmax(0,1fr) 21.5rem;gap:1rem;flex:1;min-height:0;padding:1rem 1rem .7rem}.world-column{display:flex;flex-direction:column;min-width:0;min-height:0;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:#0f1a29}.map-toolbar{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;gap:1rem;border-bottom:1px solid var(--line);flex-shrink:0}.map-toolbar h2{font-size:1.1rem;margin-top:.25rem}.map-toolbar .eyebrow{font-size:.57rem;color:var(--mint)}.toolbar-actions{display:flex;align-items:center;gap:.5rem;font-size:.78rem}.toolbar-actions .icon-button{height:1.7rem;width:1.7rem;font-size:1.05rem}.viewport{position:relative;flex:1;min-height:10rem;background:#122c2d;overflow:hidden}canvas#world-canvas{width:100%;height:100%;display:block;image-rendering:pixelated;outline:none}.world-hint{position:absolute;bottom:.8rem;left:.8rem;background:#07141dcc;border:1px solid #284045;border-radius:.35rem;padding:.4rem .7rem;font-size:.6rem;color:#b6c9d0;display:flex;align-items:center;gap:.45rem;pointer-events:none}.world-hint b{color:#4a7373}.key-cluster{border:1px solid #526768;border-radius:.25rem;padding:.12rem .3rem;letter-spacing:.1em;font-size:.55rem}.map-source{position:absolute;right:.8rem;top:.7rem;font-size:.55rem;letter-spacing:.06em;background:#0a172bbf;border:1px solid #34485288;color:#bccdc8;border-radius:.25rem;padding:.35rem .5rem;pointer-events:none}.map-loading{position:absolute;inset:0;background:#0e1c28dd;display:grid;place-items:center;color:var(--mint);font-size:1.3rem;z-index:3}.chat-panel{height:13rem;min-height:10rem;display:flex;flex-direction:column;background:#0d1723;border-top:1px solid var(--line);flex-shrink:0}.chat-header{display:flex;align-items:center;justify-content:space-between;padding:.25rem .6rem;border-bottom:1px solid #243445}.chat-tabs{display:flex;gap:.25rem}.chat-tabs button{border:0;background:transparent;border-radius:.35rem;font-size:.78rem;padding:.4rem .6rem;color:var(--muted)}.chat-tabs button.selected{background:#1e3440;color:var(--mint)}.chat-tabs small{font-size:.45rem;letter-spacing:.12em;opacity:.6;margin-left:.3rem}.chat-caption{font-size:.58rem;color:#697f92;margin-right:.5rem}.chat-messages{flex:1;min-height:0;overflow-y:auto;padding:.6rem 1rem;font-size:.8rem;line-height:1.55;overflow-wrap:anywhere}.chat-line{display:flex;gap:.55rem;align-items:baseline}.chat-line time{font-size:.58rem;color:#587185;white-space:nowrap}.chat-line .chat-name{font-weight:650;color:var(--mint);flex-shrink:0}.chat-line.trade .chat-name{color:var(--gold)}.chat-line.system{color:#8a9dad;font-style:italic}.chat-panel form{display:flex;align-items:center;padding:.5rem .8rem;border-top:1px solid #1b2c3d;gap:.6rem}.chat-panel form>span{font-size:.55rem;letter-spacing:.08em;color:var(--mint)}.chat-panel input{padding:.35rem .5rem;border:0;border-radius:0;background:transparent;font-size:.8rem;min-width:0}.chat-panel input:focus-visible{outline:none}.sidebar{display:flex;flex-direction:column;gap:.8rem;min-height:0;overflow-y:auto}.trainer-card,.party-panel,.action-panel{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius)}.trainer-card{padding:1rem 1.1rem;background:linear-gradient(120deg,#1b3038,#142032 90%)}.trainer-card-head{display:flex;justify-content:space-between;align-items:center}.trainer-card h2{margin:.7rem 0 1rem;font-size:1.3rem}.trainer-card .pill{font-size:.5rem}.trainer-stats{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.trainer-stats span{display:block;color:var(--muted);font-size:.68rem;margin-bottom:.3rem}.trainer-stats strong{font-size:1rem;font-weight:600}.trainer-stats>div:first-child strong{color:var(--gold)}.party-panel{padding:.9rem .8rem}.section-heading{display:flex;justify-content:space-between;align-items:center}.section-heading h3{font-size:.87rem}.section-heading span{font-size:.7rem}.mini-note{font-size:.65rem;color:#7690a1;margin:.45rem 0 .8rem}.party-card{display:flex;align-items:center;gap:.65rem;padding:.48rem .55rem;border:1px solid #2c4054;border-radius:.55rem;background:#162536;margin:.45rem 0;position:relative}.party-card.lead{border-color:#507061;background:linear-gradient(100deg,#203b37,#172938)}.party-icon{width:3rem;height:3rem;image-rendering:pixelated;object-fit:contain;flex-shrink:0}.party-info{flex:1;min-width:0}.party-name{display:flex;justify-content:space-between;font-size:.8rem;gap:.5rem;align-items:center}.party-name strong{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.party-name span{font-size:.65rem;color:#a8bdc9;white-space:nowrap}.party-meta{display:flex;justify-content:space-between;align-items:center;font-size:.57rem;color:#99afbd;margin:.28rem 0}.party-meta .lead-label{font-size:.48rem;letter-spacing:.12em;color:var(--mint)}.hp-track{height:.28rem;border-radius:3px;background:#0b1723;overflow:hidden}.hp-fill{height:100%;background:var(--mint);width:100%;transition:width .25s}.hp-fill.low{background:#ffba87}.hp-fill.critical{background:#f38c8c}.xp-track{height:2px;margin-top:3px;background:#0c1825;overflow:hidden}.xp-fill{height:100%;background:#73bcd5}.party-empty{font-size:.65rem;color:#577083;padding:.7rem;border:1px dashed #283b4e;border-radius:.45rem;margin:.4rem 0;text-align:center}.party-panel>.quiet{font-size:.7rem;margin-top:.4rem}.action-panel{padding:.65rem}.action-grid{display:grid;grid-template-columns:1fr 1fr;gap:.45rem}.action-grid .secondary{font-size:.69rem;padding:.65rem .3rem}.utility-row{display:flex;align-items:center;justify-content:space-between;margin-top:.5rem}.utility-row .small{font-size:.64rem;padding:.4rem .35rem}.alpha-note{margin-top:auto;padding:.5rem .65rem;color:#657c8f}.alpha-note .eyebrow{font-size:.5rem;color:#99a083}.alpha-note p{font-size:.62rem;margin-top:.4rem}.statusbar{display:flex;align-items:center;justify-content:space-between;color:#5d788d;font-size:.53rem;letter-spacing:.06em;gap:1rem;padding:.2rem 1.3rem .65rem;flex-shrink:0}.statusbar>span:first-child{color:#7ba48f}.context-menu{position:fixed;min-width:12rem;max-width:19rem;background:#152537;border:1px solid #456075;border-radius:.65rem;padding:.4rem;box-shadow:var(--shadow);z-index:15}.context-menu .menu-title{padding:.55rem .65rem .65rem;border-bottom:1px solid var(--line);font-size:.83rem;color:var(--mint);margin-bottom:.3rem;overflow-wrap:anywhere}.context-menu button{display:block;width:100%;text-align:left;font-size:.8rem;background:transparent;border:0}.toast-stack{position:fixed;right:1.5rem;top:5rem;z-index:100;display:flex;flex-direction:column;gap:.65rem;width:min(26rem,80vw);pointer-events:none}.toast{background:#1a3240f5;border:1px solid #4d736d;border-left:3px solid var(--mint);box-shadow:0 .5rem 2rem #0005;padding:.9rem 1rem;border-radius:.5rem;font-size:.85rem;line-height:1.45;overflow-wrap:anywhere;animation:appear .2s ease-out}.toast.error{border-color:#865858;border-left-color:var(--bad);background:#3b242dfa}.toast.warn{border-left-color:var(--gold)}@keyframes appear{from{opacity:0;transform:translateY(-.5rem)}to{opacity:1;transform:none}}dialog{background:#101d2c;border:1px solid #3a536a;border-radius:1rem;color:var(--ink);padding:0;width:min(54rem,91vw);max-height:90dvh;box-shadow:0 2rem 7rem #000b;overflow:hidden}dialog::backdrop{background:#020711bb;backdrop-filter:blur(5px)}dialog[open]{display:flex;flex-direction:column}.modal-header{padding:1.25rem 1.5rem;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);gap:1rem;background:#152437;flex-shrink:0}.modal-header h2{margin-top:.4rem;font-size:1.4rem}#modal-body{padding:1.3rem 1.5rem;overflow-y:auto;min-height:0}.modal-actions{display:flex;gap:.6rem;justify-content:flex-end;margin-top:1.2rem;flex-wrap:wrap}.modal-description{color:var(--muted);font-size:.85rem;margin-bottom:1rem;white-space:pre-line}.content-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(10.5rem,1fr));gap:.7rem}.atlas-controls{display:flex;gap:.6rem;margin-bottom:1rem}.atlas-controls input{flex:2;min-width:0}.atlas-controls select{flex:1}.map-card{padding:.75rem;text-align:left;display:flex;flex-direction:column;gap:.4rem;min-height:5.5rem}.map-card .eyebrow{font-size:.55rem}.map-card strong{font-size:.83rem;font-weight:550}.map-card small{font-size:.63rem;color:var(--muted)}.map-card.featured{border-color:#517362;background:#1c3733}.collection-card{display:flex;flex-direction:column;align-items:center;padding:.8rem;border:1px solid var(--line);border-radius:.6rem;background:#162436;gap:.4rem}.collection-card img{height:4.3rem;width:4.3rem;image-rendering:pixelated}.collection-card strong{font-size:.85rem}.collection-card>span{font-size:.7rem;color:var(--muted)}.collection-card .hp-track{width:100%}.collection-card .row{display:flex;gap:.4rem;width:100%}.collection-card button{font-size:.65rem;padding:.4rem;flex:1}.item-row{padding:1rem;background:#182a3a;border:1px solid var(--line);border-radius:.6rem;display:flex;align-items:center;gap:1rem;margin:.6rem 0}.item-row>div:first-child{flex:1}.item-row h3{font-size:.9rem}.item-row p{font-size:.72rem;color:var(--muted);margin-top:.35rem}.item-actions{display:flex;gap:.4rem}.item-actions button{font-size:.72rem;padding:.5rem}.help-grid{display:grid;grid-template-columns:1fr 1fr;gap:.9rem}.help-grid>div{background:#192b3c;padding:1rem;border:1px solid var(--line);border-radius:.5rem}.help-grid h3{margin-bottom:.5rem}.help-grid p{font-size:.8rem;color:var(--muted)}.trade-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.trade-side{padding:1rem;background:#162839;border:1px solid var(--line);border-radius:.7rem}.trade-side h3{font-size:.94rem;margin-bottom:.6rem}.trade-offer{min-height:7rem}.trade-offer .offer-mon{display:flex;gap:.5rem;align-items:center;padding:.25rem;font-size:.8rem}.offer-mon img{height:2.5rem;width:2.5rem;image-rendering:pixelated}.offer-item{font-size:.75rem;color:var(--gold);margin:.35rem 0}.trade-status{border-top:1px solid var(--line);margin-top:.8rem;padding-top:.6rem;font-size:.67rem;color:var(--mint)}.trade-editor{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--line)}.trade-picker{display:grid;grid-template-columns:repeat(auto-fill,minmax(9rem,1fr));gap:.5rem;margin:.6rem 0}.trade-picker label{margin:0;font-size:.72rem;display:flex;gap:.5rem;align-items:center;padding:.5rem;background:#1b2c3d;border-radius:.4rem}.trade-picker input{width:auto}.trade-numbers{display:grid;grid-template-columns:repeat(3,1fr);gap:.6rem}.trade-numbers label{font-size:.68rem;margin:.25rem 0}.trade-numbers input{padding:.45rem;font-size:.8rem}.digest-note{font-size:.6rem;color:#829ba9;margin-top:1rem;overflow-wrap:anywhere}.trade-warning{border:1px solid #665d45;background:#352f22;border-radius:.5rem;color:var(--gold);padding:.75rem;font-size:.75rem;line-height:1.5;margin-bottom:1rem}#battle-dialog{width:min(65rem,94vw);padding:0}#battle-content{overflow-y:auto;min-height:0}.battle-head{padding:1rem 1.5rem;display:flex;align-items:center;justify-content:space-between;background:#182638;border-bottom:1px solid var(--line)}.battle-head h2{font-size:1.05rem;margin-top:.3rem}.battle-head>.pill{color:var(--gold)}.battle-stage{height:23rem;min-height:15rem;position:relative;overflow:hidden;background:radial-gradient(ellipse at 72% 50%,#90ba8b 0%,#3f786855 22%,transparent 50%),linear-gradient(#b5d7b6 0%,#cae2c2 43%,#699d73 44%,#aac391 73%,#547d62 100%)}.battle-stage:before,.battle-stage:after{content:"";position:absolute;border-radius:50%;background:#799769;box-shadow:0 .25rem 0 #56735255}.battle-stage:before{width:34%;height:13%;left:7%;bottom:4%}.battle-stage:after{width:27%;height:10%;right:11%;top:48%}.battle-sprite{position:absolute;width:13rem;height:13rem;object-fit:contain;image-rendering:pixelated;z-index:1}.battle-sprite.you{left:7%;bottom:0;width:15rem;height:15rem}.battle-sprite.enemy{right:13%;top:3%}.combat-card{position:absolute;background:#0b1a29ed;border:1px solid #91b09a99;box-shadow:0 .5rem 1.5rem #10212144;border-radius:.6rem;padding:.9rem 1rem;width:39%;z-index:2}.combat-card.enemy{left:3%;top:8%}.combat-card.you{right:3%;bottom:8%}.combat-card .party-name{font-size:1rem}.combat-card .party-name span{font-size:.8rem}.combat-card .party-meta{font-size:.7rem;margin:.5rem 0}.combat-card .hp-track{height:.38rem}.battle-controls{display:grid;grid-template-columns:1.05fr 1fr;gap:1.1rem;padding:1.2rem 1.4rem;background:#111f2e}.battle-log{font-size:.8rem;color:#b4c5d2;line-height:1.7;max-height:15rem;overflow-y:auto;background:#0a1623;border:1px solid #24394d;border-radius:.5rem;padding:.8rem 1rem}.move-grid{display:grid;grid-template-columns:1fr 1fr;gap:.55rem}.move-button{text-align:left;padding:.75rem;background:#1a3043}.move-button strong{display:block;font-size:.85rem;font-weight:600}.move-button small{display:flex;justify-content:space-between;margin-top:.6rem;color:var(--muted);font-size:.65rem}.battle-options{display:flex;gap:.4rem;flex-wrap:wrap;margin-top:.65rem}.battle-options button,.battle-options select{font-size:.72rem;padding:.5rem .65rem}.battle-options select{flex:1;min-width:6rem;width:auto}.battle-wait{padding:.75rem;background:#213a38;border:1px solid #496b56;border-radius:.5rem;color:var(--mint);font-size:.83rem}.battle-result{font-size:1.2rem;color:var(--mint);margin-bottom:.8rem}.disconnect-overlay{position:fixed;inset:0;z-index:200;background:#020711d9;backdrop-filter:blur(6px);display:grid;place-items:center}.disconnect-card{padding:2rem;border:1px solid #405a70;background:#122234;border-radius:1rem;max-width:31rem;box-shadow:var(--shadow)}.disconnect-card h2{margin:.8rem 0 1rem}.disconnect-card p{font-size:.88rem;margin:1rem 0}.disconnect-card .primary{margin-top:1rem}*{scrollbar-width:thin;scrollbar-color:#39516a #101d2d}
@media(max-width:1150px){.login-story{padding:2.5rem}.login-side{padding:2rem 2.5rem}.world-layout{grid-template-columns:minmax(0,1fr) 19.5rem;gap:.6rem;padding:.6rem}.topbar{padding:0 1rem;gap:.8rem}.world-presence #world-title{display:none}.world-hint{font-size:.53rem}.chat-panel{height:12rem}.region-preview article{height:11rem}.statusbar{font-size:.48rem}.sidebar{gap:.6rem}.alpha-note{display:none}}
@media(max-height:800px){.chat-panel{height:10.5rem;min-height:8rem}.login-story{min-height:42rem}.login-side{padding-top:1.5rem;padding-bottom:1.5rem;gap:1rem}.hero-copy{padding-top:2rem}.login-panel h2{font-size:1.8rem}.build-note{padding:.7rem}.party-card{padding:.3rem .45rem}.party-empty{padding:.45rem}.trainer-card{padding:.8rem}.trainer-card h2{margin:.5rem 0 .7rem}.alpha-note{display:none}.battle-stage{height:19rem}.battle-log{max-height:12rem}}
@media(max-width:850px){.login-screen{grid-template-columns:1fr}.login-story{display:none}.login-side{max-width:38rem}.world-layout{grid-template-columns:minmax(0,1fr) 17rem}.world-hint{display:none}.topbar{height:3.9rem}.world-presence{display:none}.statusbar>span:nth-child(2){display:none}.toolbar-actions #coords{display:none}.help-grid{grid-template-columns:1fr}.battle-controls{grid-template-columns:1fr}.battle-log{max-height:6rem}.trade-grid{gap:.5rem}.battle-stage{height:17rem}.battle-sprite{width:10rem;height:10rem}.battle-sprite.you{width:12rem;height:12rem}}

/* Native-sized controls retain readable labels at high DPI and within battles. */
.sound-entry{display:flex;align-items:center;justify-content:space-between;gap:.7rem;width:100%;padding:.4rem 0;margin:.4rem 0 .8rem;text-align:left;font-size:.75rem}.sound-entry .sound-state{font-size:.62rem;color:var(--muted);font-weight:400}#audio-dialog{width:min(32rem,94vw);max-height:88dvh}.audio-body{padding:1.15rem 1.5rem;overflow-y:auto}.audio-status-row{display:flex;align-items:center;justify-content:space-between;gap:.8rem;margin:.4rem 0 1.3rem;padding:.7rem;border:1px solid var(--line);border-radius:.5rem;background:#162738}.audio-status-row span{font-size:.73rem;color:var(--mint)}.audio-status-row button{font-size:.7rem;white-space:nowrap}.audio-slider{display:grid;grid-template-columns:1fr auto;gap:.4rem .8rem;margin:1rem 0}.audio-slider label{font-size:.82rem;margin:0;color:var(--ink)}.audio-slider output{font-size:.76rem;font-variant-numeric:tabular-nums;color:var(--mint)}.audio-slider input[type=range]{grid-column:1/-1;accent-color:var(--mint);height:1.6rem;padding:0;margin:0;cursor:pointer;border:0;background:transparent}.audio-options{display:flex;flex-direction:column;gap:.65rem;border-top:1px solid var(--line);margin-top:1.1rem;padding-top:1.1rem}.audio-options label{display:flex;align-items:center;gap:.6rem;font-size:.76rem;margin:0;color:var(--ink)}.audio-options input[type=checkbox]{width:1rem;height:1rem;margin:0;accent-color:var(--mint)}#audio-persistence{margin:.95rem 0 .1rem;line-height:1.5}#audio-dialog:focus-visible{outline:2px solid var(--mint)}

/* Adventure journal, field records and Pokémon Center services. */
.pokemon-summary{display:flex;align-items:center;gap:1.5rem;margin-bottom:1.1rem}.pokemon-summary>img{width:7rem;height:7rem;object-fit:contain;image-rendering:pixelated;flex-shrink:0}.pokemon-summary h3{font-size:1.4rem;margin:.35rem 0}.pokemon-summary p{color:var(--muted);font-size:.77rem;margin:.3rem 0}.pokemon-summary+.hp-track{margin-bottom:1.2rem}.growth-panel{border:1px solid #4a6f65;border-radius:.7rem;background:linear-gradient(125deg,#1b3736,#142536);padding:1.15rem;margin-top:1rem}.growth-panel>.eyebrow{color:var(--mint);font-size:.6rem}.growth-panel h3{margin:.55rem 0;font-size:1.05rem}.growth-panel .modal-actions{margin-top:.8rem}.growth-tag{display:block;font-size:.58rem;color:var(--gold);margin-top:.25rem}.evolution-choice{display:flex;align-items:center;gap:1rem}.evolution-choice>img{height:5rem;width:5rem;image-rendering:pixelated;object-fit:contain;flex-shrink:0}.collection-grid{margin-top:.7rem}.empty-state{grid-column:1/-1;text-align:center;padding:2rem 1rem;color:var(--muted);font-size:.85rem;line-height:1.7;border:1px dashed var(--line);border-radius:.7rem;background:#102030}.journal-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:.65rem;margin:1.2rem 0 1.6rem}.journal-summary>div{padding:1.1rem;background:#192e3a;border:1px solid #34504f;border-radius:.65rem;text-align:center}.journal-summary strong{display:block;font-size:1.5rem;color:var(--mint);font-weight:650;font-variant-numeric:tabular-nums}.journal-summary span{display:block;color:var(--muted);font-size:.72rem;margin-top:.35rem}.journal-region{margin:1.25rem 0}.journal-region>.section-heading h3{font-size:1rem}.badge-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.6rem;margin-top:.8rem}.badge-card{display:flex;align-items:center;flex-direction:column;padding:.8rem .3rem;gap:.35rem;border:1px solid var(--line);border-radius:.6rem;background:#142230;text-align:center}.badge-card.earned{background:linear-gradient(130deg,#24362d,#1c3039);border-color:#657757}.badge-symbol{height:2.35rem;width:2.35rem;display:grid;place-items:center;font-size:1rem;font-weight:650;color:#7893a3;border:1px solid #466173;border-radius:50%;background:#112131;margin-bottom:.2rem}.earned .badge-symbol{color:var(--gold);border-color:#ad955b;background:#433b24}.badge-card strong{font-size:.74rem;line-height:1.4}.badge-card>span:not(.badge-symbol){color:var(--muted);font-size:.65rem}.badge-card small{color:#678294;font-size:.5rem;letter-spacing:.1em;margin-top:.2rem}.badge-card.earned small{color:var(--mint)}.next-gym{font-size:.75rem;color:var(--mint);border-left:2px solid #5e9b84;padding:.25rem .65rem;margin:.9rem 0}.journal-heading{padding-top:.8rem;border-top:1px solid var(--line);font-size:1.05rem}.goal-card{padding:1rem;margin:.8rem 0;border:1px solid #395266;border-radius:.65rem;background:#17283a}.goal-card.claimed{background:#142731;border-color:#344d4a}.goal-card .section-heading{gap:.6rem}.goal-card .section-heading h3{font-size:.87rem}.goal-card>p{font-size:.77rem;color:var(--muted);line-height:1.6;margin:.55rem 0}.goal-track{height:.3rem;background:#0b1826;border-radius:1rem;overflow:hidden;margin:.8rem 0}.goal-track>div{height:100%;background:var(--mint);transition:width .25s}.goal-reward{display:flex;align-items:center;justify-content:space-between;gap:.6rem}.goal-reward>span{font-size:.72rem;color:var(--gold);line-height:1.5}.goal-reward button{flex-shrink:0}.dex-summary{grid-template-columns:repeat(2,1fr);max-width:25rem;margin:1rem auto 1.4rem}.dex-grid{grid-template-columns:repeat(auto-fill,minmax(9rem,1fr))}.dex-card{display:flex;align-items:center;flex-direction:column;padding:1rem .6rem;gap:.4rem;background:#172b3b;border:1px solid #334c60;min-height:11rem}.dex-card>img{width:4.5rem;height:4.5rem;image-rendering:pixelated;object-fit:contain}.dex-card>strong{font-size:.85rem}.dex-card>span{font-size:.58rem;letter-spacing:.07em}.dex-card>small{font-size:.64rem;color:var(--muted)}.caught-mark{color:var(--mint)}.nurse-care{display:flex;align-items:center;gap:1rem;padding:1rem;background:#342d3a;border:1px solid #785967;border-radius:.65rem}.care-symbol{display:grid;place-items:center;width:2.5rem;height:2.5rem;flex-shrink:0;color:#f4b0c3;border:1px solid #a36b81;border-radius:50%;font-size:1.4rem}.nurse-care h3{font-size:.9rem;margin-bottom:.4rem}.nurse-care p{font-size:.8rem;color:#d0b9c4;line-height:1.6}
@media(max-width:650px){.badge-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.journal-summary{gap:.35rem}.journal-summary>div{padding:.8rem .35rem}.journal-summary strong{font-size:1.1rem}.journal-summary span{font-size:.6rem}.goal-reward{align-items:flex-start;flex-direction:column}.pokemon-summary{gap:.8rem}.pokemon-summary>img{height:5rem;width:5rem}.pokemon-summary h3{font-size:1.1rem}.modal-header{padding:1rem}#modal-body{padding:1rem}.atlas-controls{flex-direction:column}.atlas-controls select,.atlas-controls input{flex:auto}.evolution-choice{gap:.5rem}.growth-panel{padding:.8rem}.growth-panel .move-grid{grid-template-columns:1fr}.game-shell{height:auto;min-height:100dvh}.world-layout{grid-template-columns:minmax(0,1fr)}.world-column{height:75dvh;min-height:32rem}.sidebar{overflow:visible}.topbar{gap:.5rem;padding:0 .65rem}.account-head{gap:.3rem}.account-head>#latency{display:none}.brand.compact{font-size:.9rem}.brand.compact .emblem{display:none}.account-head>#trainer-name{max-width:7rem;overflow:hidden;text-overflow:ellipsis}.map-toolbar{padding:.7rem}.map-toolbar .toolbar-actions{gap:.25rem}.map-toolbar h2{font-size:.95rem}.map-toolbar #atlas-button{font-size:.67rem;padding:.4rem}.statusbar{padding:.6rem;font-size:.5rem}.party-panel{display:block}}
@media(prefers-reduced-motion:reduce){.goal-track>div,.hp-fill{transition:none}.toast{animation:none}}

/* Level-up planning and explicit recovery of forgotten moves. */
.learnset-panel{margin:1.1rem 0;padding:1rem;border:1px solid var(--line);border-radius:.65rem;background:#132332}.learnset-panel>h3{margin:.35rem 0 .6rem}.next-move{font-size:.92rem;font-weight:600;color:var(--mint)}.learnset-table{width:100%;border-collapse:collapse;font-size:.8rem;text-align:left;margin:.6rem 0}.learnset-table th{color:var(--muted);font-size:.68rem;font-weight:600}.learnset-table th,.learnset-table td{padding:.55rem .3rem;border-bottom:1px solid #28394c88}.learnset-table th:first-child,.learnset-table td:first-child{width:4.8rem;white-space:nowrap}.learnset-table td:nth-child(2){font-weight:600}.learnset-status{font-size:.7rem;color:var(--muted)}.learnset-status.known{color:var(--mint)}.learnset-status.pending{color:var(--gold)}.learnset-panel>.mini-note:last-child{margin-bottom:0}.reminder-choices{margin:1rem 0}.reminder-confirmation{margin-top:1.3rem}.reminder-confirmation h3{margin:.5rem 0}.reminder-choices .move-button{text-align:left;min-height:3rem}
@media(max-width:650px){.learnset-panel{padding:.8rem}.learnset-table{font-size:.74rem}.learnset-table th:first-child,.learnset-table td:first-child{width:3.8rem}.learnset-status{font-size:.64rem}.reminder-choices{grid-template-columns:1fr}}

/* Battle feedback uses the original ROM sprites at native pixel filtering. */
.battle-choice-panel{border:0;padding:0;margin:0;min-width:0}.battle-choice-panel:disabled .move-button{opacity:.58}.battle-presentation-status{color:var(--mint);font-size:.75rem;letter-spacing:.025em;margin:0 0 .7rem}.battle-sprite{will-change:transform;transform-origin:50% 75%}.battle-float{position:absolute;z-index:5;pointer-events:none;display:flex;align-items:center;flex-direction:column;gap:.1rem;padding:.35rem .65rem;border-radius:.55rem;background:#101b26eb;border:1px solid #ffd4bc77;color:#fff0dd;box-shadow:0 .35rem .85rem #09231f44;min-width:4rem;max-width:13rem;text-align:center;text-shadow:0 1px 2px #000;font-variant-numeric:tabular-nums}.battle-float.you{left:12%;bottom:39%}.battle-float.enemy{right:14%;top:14%}.battle-float strong{font-size:1.75rem;line-height:1.15;font-weight:800}.battle-float span{font-size:.7rem;line-height:1.35;font-weight:650}.battle-float.super{color:#ffe4a2;border-color:#f7cd64}.battle-float.resisted,.battle-float.immune{color:#d2e3f6;border-color:#82aaca}.battle-float.recover{color:#a7f3d0;border-color:#83dab8}.battle-float.move-name{background:#102820de;border-color:#8bcfb780;box-shadow:none;padding:.25rem .6rem}.battle-float.move-name.you{bottom:4%;left:18%}.battle-float.move-name.enemy{top:3%;right:17%}.battle-float.move-name strong{font-size:.74rem;font-weight:650}.battle-float.immune strong,.battle-float.recover strong{font-size:1rem}.battle-float.normal strong{font-size:1.55rem}
@media(prefers-reduced-motion:reduce){.battle-sprite,.battle-float{animation:none!important;transition:none!important;will-change:auto}.combat-card .hp-fill{transition:none}}
@media(max-width:650px){.battle-float{max-width:10rem;padding:.3rem .5rem}.battle-float strong{font-size:1.35rem}.battle-float.enemy{right:9%;top:12%}.battle-float.you{left:10%;bottom:36%}}

/* Owner-only HM field progress, matching the adventure panels. */
.field-move-row{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;padding:.8rem 0;border-bottom:1px solid var(--line,#ffffff18)}
.field-move-row p{flex-basis:100%;margin:0;color:var(--muted,#a5b4c6)}
.field-move-note{padding:.9rem 1rem;border-left:3px solid var(--accent,#71dcb2);background:#71dcb20a;border-radius:.4rem;color:var(--muted,#a5b4c6);line-height:1.55}
.cut-tree-button:disabled{opacity:.48;cursor:not-allowed;filter:grayscale(.8);box-shadow:none}

/* Variety identity is cosmetic; bounded images and layout preserve battle usability. */
.battle-sprite.you{transform:scaleX(-1)}
.battle-sprite{object-fit:contain;max-width:42%;max-height:86%;image-rendering:pixelated}
.variety-badge,.dex-variety{display:inline-flex;align-items:center;gap:.25em;color:var(--variety-color,var(--ink));border:1px solid currentColor;border-radius:999px;font-size:.66rem;line-height:1.3;padding:.18rem .48rem;max-width:100%;overflow-wrap:anywhere}
.variety-badge{align-self:center;background:#0c1827}
.dex-varieties{display:flex;flex-wrap:wrap;gap:.3rem;margin-top:.45rem}
.dex-variety{opacity:.72;font-size:.6rem}.dex-variety.owned{opacity:1;background:#152539}
.collection-controls{display:grid;grid-template-columns:minmax(0,1fr) minmax(8rem,.5fr);gap:.6rem;align-items:center}
.collection-controls input,.collection-controls select{min-width:0;width:100%}
.variety-art-note{border-left:3px solid #e1b65b;padding:.6rem .8rem;color:var(--muted);font-size:.78rem;line-height:1.5}
.party-name strong{min-width:0;overflow-wrap:anywhere}.party-name>span{white-space:nowrap}
.combat-card .party-name{gap:.4rem}.combat-card .party-name strong{line-height:1.25}
@media(max-width:520px){.collection-controls{grid-template-columns:1fr}.combat-card .party-name{flex-wrap:wrap}}

.collection-card .variety-badge,.dex-card .dex-variety{color:var(--variety-color,var(--ink))}

.ai-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.65rem;margin-bottom:1rem}.ai-kpis>div{padding:.9rem;border:1px solid var(--line);border-radius:.65rem;background:#132534}.ai-kpis span{display:block;color:var(--muted);font-size:.58rem;letter-spacing:.08em}.ai-kpis strong{display:block;margin-top:.3rem;font-size:1.05rem;color:var(--mint)}.ai-tabs{margin:.6rem 0 1rem}.ai-list{display:grid;gap:.55rem;max-height:60vh;overflow:auto;padding-right:.25rem}.ai-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.85rem 1rem;border:1px solid #314b5d;border-radius:.65rem;background:#142737}.ai-row p{margin:.25rem 0;color:#c5d2dc;font-size:.76rem}.ai-row small{color:var(--muted)}.rating-delta{font-weight:700}.rating-delta.up{color:var(--mint)}.rating-delta.down{color:#f3a7a7}.ladder-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto}.rank-number{font-weight:700;color:var(--gold);min-width:2.7rem}.rating-number{font-variant-numeric:tabular-nums}.menu-meta{padding:.35rem .65rem;color:var(--muted);font-size:.7rem}@media(max-width:650px){.ai-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.ladder-row{grid-template-columns:auto minmax(0,1fr) auto}.ladder-row>.rating-number{display:none}}
.ai-human-pill{display:inline-flex;align-items:center;justify-content:center;min-width:4.2rem;padding:.38rem .62rem;border:1px solid var(--line);border-radius:999px;font-size:.68rem;font-weight:800;letter-spacing:.08em;opacity:.78}

/* Item actions stay within the existing dialog and viewport. No asset sizing changes. */
.bag-items{display:grid;gap:.75rem;margin-top:1rem}.item-row>div:first-child{min-width:0}.item-row p{overflow-wrap:anywhere}.item-actions{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.battle-item-detail{flex:1 1 100%;display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.battle-item-detail .mini-note{flex-basis:100%;margin:.25rem 0}.battle-item-detail:empty{display:none}.battle-item-detail select{max-width:100%;min-width:0}.tera-option{display:flex;align-items:center;gap:.5rem;margin:.5rem 0}.tera-option input{width:auto}.bag-items .pill{white-space:normal}#modal-body>label{display:grid;gap:.5rem;margin:.75rem 0}#modal-body>label select,#modal-body>input{width:100%;max-width:100%}

/* Bag: native item artwork, stable pocket navigation and one clear action area. */
#modal[data-view="bag"] .modal-header{background:linear-gradient(115deg,#1b343d,#152437 65%)}
#modal[data-view="bag"] #modal-body{padding:1.2rem 1.4rem 1.4rem;background:radial-gradient(ellipse at 4% 0%,#17383344,transparent 56%),#101d2c}
.bag-summary{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem}.bag-kicker{color:#8ce5bf;font-size:.57rem;letter-spacing:.15em;margin:0 0 .5rem}.bag-summary-copy>p:last-child{font-size:.83rem;color:#9ab1c1;margin:0}.bag-summary-copy strong{color:#e2edf4;font-weight:600}.bag-wallet{text-align:right}.bag-wallet>span{display:block;font-size:.54rem;letter-spacing:.13em;color:#9bb2c2}.bag-wallet>strong{display:block;font-size:1.3rem;color:#f3d184;font-variant-numeric:tabular-nums;margin-top:.25rem;white-space:nowrap}
.bag-status{display:flex;justify-content:space-between;gap:.5rem 1rem;flex-wrap:wrap;align-items:center;margin:0 0 1.25rem;font-size:.68rem;color:#b1c1ce}.bag-location{display:flex;align-items:center;gap:.5rem}.bag-status-dot{height:.38rem;width:.38rem;border-radius:50%;background:#6d8495}.bag-location.available{color:#a3e7c9}.bag-location.available .bag-status-dot{background:#8ce5bf;box-shadow:0 0 .5rem #8ce5bf33}.bag-repel{color:#c4d0f3;background:#30436155;border:1px solid #51668177;border-radius:999px;padding:.2rem .55rem;font-variant-numeric:tabular-nums}
.bag-pockets{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:.4rem;margin:0 0 1rem}.bag-pocket{display:flex;align-items:center;justify-content:center;gap:.4rem;min-height:3.3rem;padding:.6rem .3rem;background:#152738;border:1px solid #304557;font-size:.72rem;color:#a9bfce;font-weight:500}.bag-pocket.selected{border-color:#74b79a;color:#d1f8e5;background:linear-gradient(120deg,#2b4941,#203d3a);box-shadow:inset 0 1px #b4ffdb12}.bag-pocket-symbol{display:grid;place-items:center;width:1.5rem;height:1.5rem;flex:none;border:1px solid #4f6d7488;border-radius:.45rem;font-size:.63rem;color:#abd6c3;background:#18333a66}.bag-pocket-count{font-variant-numeric:tabular-nums;color:#859fae;font-size:.62rem;margin-left:.1rem}.bag-pocket.selected .bag-pocket-count{color:#a6d5bf}
.bag-toolbar{display:flex;gap:.6rem;align-items:center}.bag-search-wrap{position:relative;flex:1;min-width:9rem;display:flex;align-items:center}.bag-search-wrap input{width:100%;padding:.72rem 3.7rem .72rem 2.2rem;font-size:.78rem;background:#0d1b29;border-color:#354c5f;min-width:0}.bag-search-symbol{position:absolute;left:.75rem;color:#93b0c0;font-size:1.3rem;line-height:1;pointer-events:none}.bag-search-clear{position:absolute;right:.35rem;font-size:.65rem;padding:.3rem;color:#a2bfcd}.bag-search-clear:disabled{visibility:hidden}.bag-toolbar>select{width:auto;max-width:13rem;font-size:.72rem;padding:.73rem .6rem;background:#152738;flex-shrink:0}.bag-modes{display:flex;padding:.25rem;border:1px solid #354b5f;border-radius:.55rem;background:#0d1a28;flex-shrink:0;gap:.2rem}.bag-modes button{white-space:nowrap;padding:.48rem .65rem;background:transparent;border:1px solid transparent;font-size:.72rem;color:#9fb4c2}.bag-modes button.selected{background:#2a4051;border-color:#476070;color:#ecf5fa}
.bag-result-count{font-size:.65rem;color:#a2b8c8;margin:.8rem 0 .65rem;min-height:1em}.bag-workspace{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:1rem;align-items:stretch;min-height:25rem}.bag-list-panel{border:1px solid #314a5d;background:#0c1a27;border-radius:.8rem;overflow:hidden;min-width:0}.bag-list-heading{display:flex;justify-content:space-between;gap:1rem;padding:.72rem 1rem;color:#9bb4c6;font-size:.54rem;letter-spacing:.13em;border-bottom:1px solid #2d4455;background:#152636}.bag-list{display:flex;flex-direction:column;gap:.3rem;overflow-y:auto;max-height:32rem;min-height:12rem;padding:.5rem;scrollbar-gutter:stable}.bag-list-item{position:relative;display:flex;align-items:center;gap:.75rem;width:100%;flex-shrink:0;padding:.68rem .75rem;text-align:left;border:1px solid transparent;border-radius:.55rem;background:transparent;min-height:4.25rem}.bag-list-item:hover{background:#1b3041;border-color:#476170}.bag-list-item.selected{background:linear-gradient(95deg,#23423f,#1b343b);border-color:#639c87;box-shadow:inset .18rem 0 #8ce5bf}.bag-list-copy{flex:1;min-width:0}.bag-list-copy strong{display:block;font-size:.84rem;color:#e9f2f8;font-weight:600;line-height:1.3;overflow-wrap:anywhere}.bag-list-copy small{display:block;font-size:.6rem;color:#94afc0;margin-top:.35rem;line-height:1.4}.bag-list-item.selected .bag-list-copy small{color:#a8cebd}.bag-quantity{min-width:3rem;text-align:right;font-size:.76rem;font-weight:600;color:#b4cbda;font-variant-numeric:tabular-nums;white-space:nowrap}
.bag-icon{display:grid;place-items:center;width:2.8rem;height:2.8rem;flex-shrink:0;border:1px solid #48667966;border-radius:.6rem;background:radial-gradient(circle,#38516388,#23364988);font-size:.8rem;font-weight:700;color:#bed8dd}.bag-icon>img{width:2.4rem;height:2.4rem;object-fit:contain;image-rendering:pixelated}.bag-icon.large{width:5.1rem;height:5.1rem;border-radius:1rem;background:radial-gradient(circle,#41677377,#20374799);border-color:#6e99a155;font-size:1.4rem;box-shadow:inset 0 1px #b6e5e510}.bag-icon.large>img{width:4.5rem;height:4.5rem}.bag-icon.pocket-berries{background:radial-gradient(circle,#435a3e99,#213b34);color:#c3ddac}.bag-icon.pocket-balls{background:radial-gradient(circle,#633b4988,#283543);color:#f1bec4}.bag-icon.pocket-machines{background:radial-gradient(circle,#354a7199,#25334b);color:#bfcaed}.bag-icon.pocket-key{background:radial-gradient(circle,#5f553688,#34392f);color:#e4d59c}
.bag-detail{display:flex;flex-direction:column;align-items:stretch;min-width:0;padding:1.35rem 1.4rem;border:1px solid #3c5669;border-radius:.8rem;background:linear-gradient(145deg,#203848 0%,#182c3d 50%,#172938 100%);box-shadow:inset 0 1px #a3cbd512}.bag-detail-top{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.1rem}.bag-detail-stock{text-align:right;color:#93b1c4}.bag-detail-stock strong{display:block;color:#edf7fd;font-size:2rem;line-height:1.1;font-weight:650;font-variant-numeric:tabular-nums}.bag-detail-stock span{display:block;font-size:.55rem;letter-spacing:.16em;margin-top:.3rem}.bag-item-tags{display:flex;gap:.4rem;flex-wrap:wrap;margin:0 0 .6rem}.bag-item-tags span{display:inline-flex;font-size:.56rem;line-height:1.3;letter-spacing:.035em;color:#aed1c6;border:1px solid #5d887d77;border-radius:999px;padding:.25rem .5rem;background:#162f3288}.bag-detail>h3{font-size:1.55rem;line-height:1.2;letter-spacing:-.025em;font-weight:600;overflow-wrap:anywhere;margin:0 0 .7rem}.bag-item-description{font-size:.82rem;line-height:1.75;color:#c0d2de;margin:0 0 1.15rem;white-space:pre-line}.bag-usage-note{align-self:flex-start;border:1px solid #607c9499;background:#233c5188;color:#c4deed;font-size:.57rem;letter-spacing:.07em;border-radius:.4rem;padding:.5rem .65rem;margin:0 0 .9rem;line-height:1.5}.bag-context-note{font-size:.72rem;line-height:1.65;color:#b0c7d3;border-left:2px solid #729285;padding:.25rem .75rem;margin:0 0 1rem}.bag-detail-actions{display:flex;align-items:stretch;gap:.55rem;margin-top:auto}.bag-detail-actions:empty{display:none}.bag-detail-actions>button{flex:1;min-height:2.9rem;font-size:.77rem;padding:.7rem .8rem}.bag-detail-actions>button:first-child:not(:disabled){border-color:#78b89d;background:#305649;color:#d0f8e2}.bag-value{display:flex;align-items:center;justify-content:space-between;gap:.6rem;border-top:1px solid #49657766;padding-top:.9rem;margin-top:1rem}.bag-value>div>span{display:block;font-size:.5rem;letter-spacing:.1em;color:#9ab4c6}.bag-value strong{font-size:.79rem;font-weight:550;color:#e7d49e;display:block;margin-top:.25rem}.bag-value>button{font-size:.75rem;padding:.5rem .75rem}.bag-no-sale{font-size:.62rem;color:#9eb3c4;margin:1rem 0 0;line-height:1.5}.bag-purchase{border-top:1px solid #49657766;margin-top:1rem;padding-top:1rem}.bag-purchase-heading{display:flex;justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.65rem}.bag-purchase-heading span{font-size:.53rem;letter-spacing:.1em;color:#a5becc}.bag-purchase-heading strong{font-size:.75rem;color:#ecd497;font-weight:550}.bag-buy-controls{display:flex;gap:.7rem;align-items:flex-end}.bag-buy-controls>label{display:flex;flex-direction:column;gap:.3rem;margin:0;color:#acc4d2;font-size:.6rem;width:5.2rem;flex-shrink:0}.bag-buy-controls input{font-size:.83rem;padding:.65rem .55rem;text-align:center;font-variant-numeric:tabular-nums;width:100%;height:2.8rem}.bag-buy-action{flex:1}.bag-buy-action button{width:100%;min-height:2.8rem;font-size:.76rem;padding:.65rem}.bag-purchase>p{font-size:.64rem;color:#adc1ce;margin:.6rem 0 0;line-height:1.5}.bag-list-empty{display:grid;place-items:center;align-content:center;min-height:15rem;padding:1.5rem;text-align:center;gap:.65rem}.bag-list-empty strong{font-size:.88rem;color:#c4d6e1}.bag-list-empty p{font-size:.74rem;line-height:1.6;color:#8faabc}.bag-list-empty button{font-size:.75rem}.bag-detail-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;margin:auto;max-width:22rem;padding:2rem .5rem;gap:1rem}.bag-detail-empty>span{font-size:3rem;color:#80a89e;line-height:1}.bag-detail-empty h3{font-size:1.1rem;color:#cfe1e8;font-weight:550}.bag-detail-empty p{font-size:.78rem;line-height:1.7;color:#a3becc}.bag-move{display:flex;align-items:center;flex-wrap:wrap;gap:.45rem;padding:.85rem;margin:0 0 1rem;background:#11283799;border:1px solid #3f5b72;border-radius:.6rem}.bag-move>strong{font-size:.8rem;flex:1}.bag-move>span{font-size:.57rem;text-transform:uppercase;color:#acd3ee;letter-spacing:.07em}.bag-move>div{display:flex;justify-content:space-between;flex-basis:100%;gap:.5rem;margin-top:.5rem;font-size:.48rem;color:#9fbbc9;letter-spacing:.04em}.bag-move b{font-size:.7rem;color:#ddebf2;display:block;margin-top:.22rem;letter-spacing:0;font-variant-numeric:tabular-nums}
#modal[data-view="bag"] :is(button,input,select):focus-visible{outline:2px solid #c5fbe3;outline-offset:3px}#modal[data-view="bag"] button:disabled{opacity:.43;cursor:not-allowed}.bag-action-intro{display:flex;align-items:center;gap:1rem;padding:1rem;border:1px solid #3a566b;background:#193042;border-radius:.7rem;margin-bottom:1.2rem}.bag-action-intro p{font-size:.8rem;line-height:1.65;color:#bdd1dd;margin:0}.bag-action-intro strong{color:#dcf1e7;font-size:.71rem;display:block;margin-top:.5rem}.item-pending-note{font-size:.73rem;color:#b8e2d0;line-height:1.6;padding:.7rem .9rem;border:1px solid #557f6f;border-radius:.5rem;background:#243f37;margin:.8rem 0}
@media(min-width:1500px){.bag-list{max-height:38rem}}
@media(max-width:1000px){.bag-pockets{gap:.3rem}.bag-pocket{font-size:.66rem;gap:.3rem}.bag-pocket-symbol{display:none}.bag-toolbar{flex-wrap:wrap}.bag-search-wrap{flex:1 1 60%}.bag-toolbar>select{max-width:none;flex:1 1 25%}.bag-modes{margin-left:auto}.bag-detail{padding:1.1rem}.bag-workspace{gap:.75rem}.bag-list-item{padding:.65rem .55rem;gap:.5rem}.bag-list-copy strong{font-size:.77rem}.bag-quantity{min-width:2.5rem;font-size:.7rem}}
@media(max-width:650px){#modal[data-view="bag"] #modal-body{padding:1rem .75rem}.bag-summary{align-items:flex-start}.bag-summary-copy>p:last-child{font-size:.72rem}.bag-summary-copy>p:last-child>span{display:block;margin-top:.3rem}.bag-wallet>strong{font-size:1.1rem}.bag-kicker{font-size:.47rem;letter-spacing:.1em}.bag-status{font-size:.62rem;margin-bottom:1rem}.bag-pockets{grid-template-columns:repeat(3,minmax(0,1fr));gap:.35rem}.bag-pocket{min-height:2.6rem;font-size:.69rem;padding:.5rem .3rem}.bag-pocket-symbol{display:grid;width:1.2rem;height:1.2rem;font-size:.5rem}.bag-toolbar{gap:.5rem}.bag-search-wrap{flex-basis:100%}.bag-toolbar>select{flex:1;max-width:50%;font-size:.67rem}.bag-modes button{font-size:.65rem;padding:.5rem}.bag-workspace{grid-template-columns:minmax(0,1fr);min-height:0}.bag-list{max-height:15rem;min-height:6rem}.bag-list-item{min-height:3.6rem}.bag-list-copy strong{font-size:.82rem}.bag-detail{padding:1.1rem}.bag-detail-top{margin-bottom:.8rem}.bag-detail>h3{font-size:1.35rem}.bag-detail-actions{margin-top:.2rem}.bag-icon.large{width:4.5rem;height:4.5rem}.bag-icon.large>img{width:4rem;height:4rem}.bag-detail-empty{padding:1.4rem .5rem}.bag-list-empty{min-height:8rem;padding:1rem}.bag-icon{width:2.5rem;height:2.5rem}.bag-icon>img{width:2.2rem;height:2.2rem}.bag-result-count{font-size:.6rem}}
@media(forced-colors:active){.bag-pocket.selected,.bag-list-item.selected,.bag-modes button.selected{outline:2px solid Highlight;outline-offset:-2px}.bag-status-dot{background:CanvasText}.bag-icon{border-color:CanvasText}}
.npc-gift{display:flex;align-items:center;gap:.85rem;padding:1rem;margin:.7rem 0;border:1px solid #3b5869;border-radius:.65rem;background:#19313f}.npc-gift>div{flex:1;min-width:0}.npc-gift strong{font-size:.85rem}.npc-gift p{font-size:.73rem;line-height:1.5;color:#a9c3d0;margin:.3rem 0 0}.npc-gift>button{font-size:.75rem}@media(max-width:520px){.npc-gift{flex-wrap:wrap}.npc-gift>button{width:100%}}
.coin-balance{border:1px solid #766c48;background:linear-gradient(120deg,#3d3b2c,#283540);border-radius:.7rem;padding:1.2rem;text-align:center;margin-bottom:1rem}.coin-balance span{display:block;color:#cebd86;font-size:.58rem;letter-spacing:.13em}.coin-balance strong{display:block;color:#f4dda0;font-size:1.65rem;margin-top:.35rem;font-variant-numeric:tabular-nums}.coin-prizes-title{margin:1.6rem 0 .8rem;font-size:1rem}.coin-prize{display:flex;align-items:center;gap:.8rem;padding:.85rem;border:1px solid #3e566a;border-radius:.65rem;margin:.5rem 0;background:#192e3e}.coin-prize>div{flex:1;min-width:0}.coin-prize strong{font-size:.84rem}.coin-prize p{font-size:.73rem;color:#dcc895;margin:.25rem 0}.coin-prize small{font-size:.63rem;color:#a2bccb}.coin-prize button{font-size:.73rem}.coin-pokemon{width:2.8rem;height:2.8rem;object-fit:contain;image-rendering:pixelated}
.bag-icon>img{width:24px;height:24px}.bag-icon.large>img{width:48px;height:48px}.held-mail{margin:1rem 0;padding:1rem 1.1rem;border-left:3px solid #c8b585;background:#3a3b2c55;border-radius:.4rem}.held-mail>span{font-size:.55rem;letter-spacing:.12em;color:#d7c58d}.held-mail>p{font-size:.85rem;line-height:1.75;color:#e1e5d6;white-space:pre-wrap;overflow-wrap:anywhere;margin:.5rem 0 0}.safari-summary{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.8rem 1rem;border:1px solid #648862;background:#29463a;border-radius:.6rem;margin-bottom:.7rem}.safari-summary>span{font-size:.59rem;letter-spacing:.13em;color:#bbe0b6}.safari-summary>strong{font-size:.88rem;color:#e6f5d6}.safari-actions>button{min-height:3rem}.safari-stage .battle-sprite.you,.safari-stage .combat-card.you{display:none}.safari-stage-label{position:absolute;left:8%;bottom:15%;padding:1rem 1.4rem;color:#cae5c4;font-size:.6rem;letter-spacing:.13em;background:#12291ddf;border:1px solid #99c28e88;border-radius:.65rem}.safari-stage-label>strong{font-size:1.2rem;display:block;letter-spacing:0;margin-top:.5rem;color:#e4f8dd}
