.pokemon-fight-sim-module__uE6rjG__fightSim{flex-direction:column;gap:.75rem;display:flex}.pokemon-fight-sim-module__uE6rjG__title{font-size:.625rem;font-family:var(--font-pixel);color:var(--text-primary);text-transform:uppercase;letter-spacing:.1em;margin-bottom:.25rem}.pokemon-fight-sim-module__uE6rjG__battleBox{border:3px solid var(--card-border);background:var(--surface);min-height:380px;box-shadow:0 0 0 1px var(--card-border), inset 0 0 0 1px var(--surface);border-radius:4px;flex-direction:column;display:flex;position:relative;overflow:visible}.pokemon-fight-sim-module__uE6rjG__battleBox:before{content:"";border:2px solid var(--text-muted);pointer-events:none;opacity:.15;z-index:1;border-radius:2px;position:absolute;inset:0}.pokemon-fight-sim-module__uE6rjG__battleScreen{background-color:var(--surface);border-bottom:2px solid var(--card-border);flex-shrink:0;min-height:160px;position:relative;overflow:hidden}.pokemon-fight-sim-module__uE6rjG__battleScreen:after{content:"";opacity:.2;pointer-events:none;z-index:0;background:url(/battle-background.jpg) 50%/cover no-repeat;transition:opacity .4s;position:absolute;inset:0}.pokemon-fight-sim-module__uE6rjG__battleScreen.pokemon-fight-sim-module__uE6rjG__active:after{opacity:.55}.pokemon-fight-sim-module__uE6rjG__battleEmpty{min-height:160px;color:var(--text-muted);z-index:1;flex-direction:column;justify-content:center;align-items:center;gap:.75rem;display:flex;position:relative}.pokemon-fight-sim-module__uE6rjG__battleEmptyIcon{opacity:.5;font-size:1.5rem}.pokemon-fight-sim-module__uE6rjG__battleEmptyText{font-size:.5rem;font-family:var(--font-pixel);text-align:center;padding:0 1rem;line-height:1.6}.pokemon-fight-sim-module__uE6rjG__battleActive{z-index:1;min-height:160px;padding:.75rem;position:relative}.pokemon-fight-sim-module__uE6rjG__opponentArea{z-index:1;align-items:flex-start;gap:.5rem;display:flex;position:absolute;top:.5rem;right:.75rem}.pokemon-fight-sim-module__uE6rjG__opponentSprite{object-fit:contain;width:64px;height:64px;image-rendering:pixelated;filter:drop-shadow(0 2px 6px #0000004d)}.pokemon-fight-sim-module__uE6rjG__opponentInfo{flex-direction:column;gap:.25rem;min-width:0;padding-top:.25rem;display:flex}.pokemon-fight-sim-module__uE6rjG__opponentName{font-size:.6rem;font-family:var(--font-pixel);text-transform:capitalize;color:#fff;white-space:nowrap;text-overflow:ellipsis;text-shadow:1px 1px 3px #0009;max-width:140px;font-weight:700;overflow:hidden}.pokemon-fight-sim-module__uE6rjG__opponentTypes{flex-wrap:wrap;gap:.25rem;display:flex}.pokemon-fight-sim-module__uE6rjG__playerArea{z-index:1;align-items:flex-end;gap:.5rem;display:flex;position:absolute;bottom:.5rem;left:.75rem}.pokemon-fight-sim-module__uE6rjG__playerSprite{object-fit:contain;width:80px;height:80px;image-rendering:pixelated;filter:drop-shadow(0 2px 8px #00000059)}.pokemon-fight-sim-module__uE6rjG__playerInfo{flex-direction:column;flex:1;gap:.25rem;min-width:0;padding-bottom:.25rem;display:flex}.pokemon-fight-sim-module__uE6rjG__playerName{font-size:.6rem;font-family:var(--font-pixel);text-transform:capitalize;color:#fff;white-space:nowrap;text-overflow:ellipsis;text-shadow:1px 1px 3px #0009;max-width:160px;font-weight:700;overflow:hidden}.pokemon-fight-sim-module__uE6rjG__playerTypes{flex-wrap:wrap;gap:.25rem;display:flex}.pokemon-fight-sim-module__uE6rjG__vsBadge{font-size:.75rem;font-family:var(--font-pixel);color:#fff;text-shadow:0 0 8px var(--accent), 1px 1px 0 #00000080;letter-spacing:.15em;z-index:2;font-weight:700;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.pokemon-fight-sim-module__uE6rjG__textBox{flex-direction:column;flex:1;gap:.5rem;padding:.625rem;display:flex}.pokemon-fight-sim-module__uE6rjG__selectorArea{position:relative}.pokemon-fight-sim-module__uE6rjG__selectorTrigger{background:var(--surface-hover);border:1.5px solid var(--card-border);cursor:pointer;width:100%;font-family:var(--font-pixel);color:var(--text-primary);touch-action:manipulation;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;border-radius:4px;justify-content:space-between;align-items:center;padding:.5rem .625rem;font-size:.55rem;transition:all .15s;display:flex}.pokemon-fight-sim-module__uE6rjG__selectorTrigger:hover{border-color:var(--text-secondary);background:var(--surface)}.pokemon-fight-sim-module__uE6rjG__selectorSelected{align-items:center;gap:.5rem;display:flex}.pokemon-fight-sim-module__uE6rjG__selectorSprite{object-fit:contain;width:20px;height:20px;image-rendering:pixelated}.pokemon-fight-sim-module__uE6rjG__selectorName{text-transform:capitalize}.pokemon-fight-sim-module__uE6rjG__selectorPlaceholder{color:var(--text-muted)}.pokemon-fight-sim-module__uE6rjG__selectorChevron{width:12px;height:12px;color:var(--text-muted);flex-shrink:0}.pokemon-fight-sim-module__uE6rjG__selectorDropdown{z-index:50;background:var(--surface);border:2px solid var(--card-border);border-radius:4px;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow:hidden;box-shadow:0 8px 24px #0003}@media (max-width:640px){.pokemon-fight-sim-module__uE6rjG__selectorDropdown{z-index:60;max-height:70vh;position:fixed;top:50%;left:1rem;right:1rem;transform:translateY(-50%)}}.pokemon-fight-sim-module__uE6rjG__selectorSearch{border-bottom:1.5px solid var(--card-border);background:var(--surface-hover);align-items:center;gap:.375rem;padding:.5rem .625rem;display:flex}.pokemon-fight-sim-module__uE6rjG__searchIcon{width:12px;height:12px;color:var(--text-muted);flex-shrink:0}.pokemon-fight-sim-module__uE6rjG__searchInput{color:var(--text-primary);font-size:.55rem;font-family:var(--font-mono);background:0 0;border:none;outline:none;flex:1;padding:0}.pokemon-fight-sim-module__uE6rjG__searchInput::placeholder{color:var(--text-muted)}.pokemon-fight-sim-module__uE6rjG__searchClear{width:16px;height:16px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:2px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.pokemon-fight-sim-module__uE6rjG__searchClear:hover{color:var(--text-primary);background:var(--surface)}.pokemon-fight-sim-module__uE6rjG__selectorList{max-height:200px;padding:.25rem;overflow-y:auto}.pokemon-fight-sim-module__uE6rjG__selectorList::-webkit-scrollbar{width:4px}.pokemon-fight-sim-module__uE6rjG__selectorList::-webkit-scrollbar-track{background:0 0}.pokemon-fight-sim-module__uE6rjG__selectorList::-webkit-scrollbar-thumb{background:var(--card-border);border-radius:2px}.pokemon-fight-sim-module__uE6rjG__selectorListItem{cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;background:0 0;border:1px solid #0000;border-radius:4px;align-items:center;gap:.5rem;width:100%;padding:.4rem .5rem;transition:all .15s;display:flex}.pokemon-fight-sim-module__uE6rjG__selectorListItem:hover{border-color:var(--accent);background:var(--surface-hover)}.pokemon-fight-sim-module__uE6rjG__listSprite{object-fit:contain;width:32px;height:32px;image-rendering:pixelated;flex-shrink:0}.pokemon-fight-sim-module__uE6rjG__listName{font-size:.6rem;font-family:var(--font-mono);color:var(--text-primary);text-transform:capitalize;white-space:nowrap;text-overflow:ellipsis;text-align:left;flex:1;overflow:hidden}.pokemon-fight-sim-module__uE6rjG__listTypes{flex-shrink:0;gap:.25rem;display:flex}.pokemon-fight-sim-module__uE6rjG__selectorEmpty{text-align:center;color:var(--text-muted);font-size:.5rem;font-family:var(--font-pixel);padding:1rem}.pokemon-fight-sim-module__uE6rjG__statsSection{flex-direction:column;gap:.35rem;padding:.25rem 0;display:flex}.pokemon-fight-sim-module__uE6rjG__statRow{align-items:center;gap:.3rem;display:flex}.pokemon-fight-sim-module__uE6rjG__statValue{text-align:right;flex-shrink:0;width:26px;font-family:ui-monospace,monospace;font-size:.6rem}.pokemon-fight-sim-module__uE6rjG__statValueWin{color:#22c55e;font-weight:700}.pokemon-fight-sim-module__uE6rjG__statValueLose{color:var(--text-secondary)}.pokemon-fight-sim-module__uE6rjG__statBarOuter{background:var(--surface-hover);border-radius:2px;flex:1;height:4px;overflow:hidden}.pokemon-fight-sim-module__uE6rjG__statBarInner{border-radius:2px;height:100%;transition:width .5s ease-out}.pokemon-fight-sim-module__uE6rjG__statLabel{text-align:center;width:32px;color:var(--text-muted);font-size:.5rem;font-family:var(--font-pixel);flex-shrink:0}.pokemon-fight-sim-module__uE6rjG__typeEffSection{border-top:1px solid var(--card-border);justify-content:center;gap:.75rem;margin-top:.125rem;padding:.375rem 0;display:flex}.pokemon-fight-sim-module__uE6rjG__typeEffRow{align-items:center;gap:.3rem;display:flex}.pokemon-fight-sim-module__uE6rjG__typeEffLabel{color:var(--text-muted);font-size:.55rem;font-family:var(--font-mono)}.pokemon-fight-sim-module__uE6rjG__typeEffValue{border-radius:2px;padding:.1rem .3rem;font-family:ui-monospace,monospace;font-size:.6rem;font-weight:700}.pokemon-fight-sim-module__uE6rjG__typeEffValueGood{color:#fff;background:#166534}.pokemon-fight-sim-module__uE6rjG__typeEffValueBad{color:#fff;background:#8b1a1a}.pokemon-fight-sim-module__uE6rjG__typeEffValueNeutral{background:var(--surface-hover);color:var(--text-muted)}.pokemon-fight-sim-module__uE6rjG__changeBtn{background:var(--surface-hover);border:1.5px solid var(--card-border);cursor:pointer;width:100%;font-family:var(--font-pixel);color:var(--text-muted);border-radius:4px;margin-top:.25rem;padding:.45rem;font-size:.5rem;transition:all .15s}.pokemon-fight-sim-module__uE6rjG__changeBtn:hover{border-color:var(--accent);color:var(--text-primary)}.pokemon-fight-sim-module__uE6rjG__recSection{padding:.25rem 0}.pokemon-fight-sim-module__uE6rjG__recTitle{font-size:.6rem;font-family:var(--font-pixel);color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;margin-bottom:.5rem}.pokemon-fight-sim-module__uE6rjG__recList{flex-direction:column;gap:.35rem;display:flex}.pokemon-fight-sim-module__uE6rjG__recItem{background:var(--surface-hover);border:1px solid var(--card-border);border-radius:4px;align-items:center;gap:.5rem;padding:.45rem .5rem;display:flex}.pokemon-fight-sim-module__uE6rjG__recIcon{flex-shrink:0;font-size:.85rem;line-height:1}.pokemon-fight-sim-module__uE6rjG__recIconGood{color:#22c55e}.pokemon-fight-sim-module__uE6rjG__recIconBad{color:#ef4444}.pokemon-fight-sim-module__uE6rjG__recIconNeutral{color:var(--text-muted)}.pokemon-fight-sim-module__uE6rjG__recText{color:var(--text-primary);font-family:var(--font-mono);font-size:.7rem;line-height:1.5}@media (max-width:1023px){.pokemon-fight-sim-module__uE6rjG__battleScreen,.pokemon-fight-sim-module__uE6rjG__battleEmpty,.pokemon-fight-sim-module__uE6rjG__battleActive{min-height:140px}.pokemon-fight-sim-module__uE6rjG__playerSprite{width:64px;height:64px}.pokemon-fight-sim-module__uE6rjG__opponentSprite{width:56px;height:56px}.pokemon-fight-sim-module__uE6rjG__opponentName{max-width:90px}.pokemon-fight-sim-module__uE6rjG__playerName{max-width:100px}}@media (max-width:640px){.pokemon-fight-sim-module__uE6rjG__battleBox{min-height:320px}.pokemon-fight-sim-module__uE6rjG__battleScreen,.pokemon-fight-sim-module__uE6rjG__battleEmpty{min-height:120px}.pokemon-fight-sim-module__uE6rjG__battleActive{min-height:120px;padding:.5rem}.pokemon-fight-sim-module__uE6rjG__playerSprite{width:52px;height:52px}.pokemon-fight-sim-module__uE6rjG__opponentSprite{width:44px;height:44px}.pokemon-fight-sim-module__uE6rjG__opponentName{max-width:70px;font-size:.4rem}.pokemon-fight-sim-module__uE6rjG__playerName{max-width:80px;font-size:.4rem}.pokemon-fight-sim-module__uE6rjG__vsBadge{font-size:.6rem}.pokemon-fight-sim-module__uE6rjG__selectorList{max-height:160px}.pokemon-fight-sim-module__uE6rjG__listSprite{width:24px;height:24px}.pokemon-fight-sim-module__uE6rjG__listName{font-size:.5rem}.pokemon-fight-sim-module__uE6rjG__statValue{width:18px;font-size:.45rem}.pokemon-fight-sim-module__uE6rjG__statLabel{width:24px;font-size:.4rem}.pokemon-fight-sim-module__uE6rjG__typeEffLabel{font-size:.4rem}.pokemon-fight-sim-module__uE6rjG__typeEffValue{font-size:.45rem}.pokemon-fight-sim-module__uE6rjG__recItem{padding:.25rem .375rem;font-size:.5rem}.pokemon-fight-sim-module__uE6rjG__recText{font-size:.5rem}}
